@deephaven/embed-widget 0.85.6 → 0.85.8

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 (28) hide show
  1. package/build/assets/{App-53ac8961.js → App-76b709f1.js} +2 -2
  2. package/build/assets/{App-53ac8961.js.map → App-76b709f1.js.map} +1 -1
  3. package/build/assets/{Chart-acea61bf.js → Chart-423dd7a2.js} +2 -2
  4. package/build/assets/{Chart-acea61bf.js.map → Chart-423dd7a2.js.map} +1 -1
  5. package/build/assets/IrisGrid-1be99b54.js +5 -0
  6. package/build/assets/IrisGrid-1be99b54.js.map +1 -0
  7. package/build/assets/{IrisGridThemeProvider-febceda5.js → IrisGridThemeProvider-39852375.js} +2 -2
  8. package/build/assets/{IrisGridThemeProvider-febceda5.js.map → IrisGridThemeProvider-39852375.js.map} +1 -1
  9. package/build/assets/{LocalWorkspaceStorage-841776f8.js → LocalWorkspaceStorage-5f29639d.js} +2 -2
  10. package/build/assets/{LocalWorkspaceStorage-841776f8.js.map → LocalWorkspaceStorage-5f29639d.js.map} +1 -1
  11. package/build/assets/{LogPanel-68cae5f8.js → LogPanel-891b65b4.js} +2 -2
  12. package/build/assets/{LogPanel-68cae5f8.js.map → LogPanel-891b65b4.js.map} +1 -1
  13. package/build/assets/{MarkdownEditor-b3c8d486.js → MarkdownEditor-d3a2b4a1.js} +2 -2
  14. package/build/assets/{MarkdownEditor-b3c8d486.js.map → MarkdownEditor-d3a2b4a1.js.map} +1 -1
  15. package/build/assets/{MarkdownNotebook-5f572c0f.js → MarkdownNotebook-9c342756.js} +2 -2
  16. package/build/assets/{MarkdownNotebook-5f572c0f.js.map → MarkdownNotebook-9c342756.js.map} +1 -1
  17. package/build/assets/index-536568e6.js +4 -0
  18. package/build/assets/{index-969d8327.js.map → index-536568e6.js.map} +1 -1
  19. package/build/assets/{index-3ce5df9c.js → index-56ae04ab.js} +9 -9
  20. package/build/assets/index-56ae04ab.js.map +1 -0
  21. package/build/assets/{index-b36b7467.js → index-78e71855.js} +2 -2
  22. package/build/assets/{index-b36b7467.js.map → index-78e71855.js.map} +1 -1
  23. package/build/index.html +2 -2
  24. package/package.json +9 -9
  25. package/build/assets/IrisGrid-79f0f74b.js +0 -5
  26. package/build/assets/IrisGrid-79f0f74b.js.map +0 -1
  27. package/build/assets/index-3ce5df9c.js.map +0 -1
  28. package/build/assets/index-969d8327.js +0 -4
@@ -1,13 +1,13 @@
1
- import{r as D,J as f,M as Re,L as is,O as Le,b7 as as,N as Ie,ae as et,_ as Hr,b8 as xa,ab as ht,aa as Ge,b9 as ls,ba as ss,bb as B,bc as ei,bd as os,be as us,bf as ds,b6 as ti,bg as Ar,ac as W,bh as yt,I as We,aI as hs,aH as ri,R as cs,Q as _a,S as vs}from"./vendor-2f94bc96.js";import{b2 as ja,B as fs,a4 as $t,a5 as xe,a0 as ps,b3 as Xe,b4 as sn,a1 as kr,a2 as ms,a3 as gs,E as ee,b5 as Mr,aT as Pt,c as ni,b6 as ut,b7 as bs,b8 as ie,as as $,az as Va,w as Ye,b9 as Wt,aP as Et,ba as Ot,y as X,bb as $a,bc as Dn,bd as Se,be as Gr,aI as Ha,bf as On,bg as Ur,bh as Br,bi as Wr,bj as zr,N as hr,bk as Fn,bl as Ga,bm as Cs,aw as Ss,bn as Ua,J as ys,P as Oe,aG as Es,bo as ws,aU as $e,bp as oe,bq as xr,G as pn,T as mn,D as Ba,br as Ts,x as ii,bs as Ps,bt as Ns,bu as Wa,bv as ai,aV as Ds,u as zt,$ as Os,bw as za,a8 as wt,aD as qt,at as ge,a_ as Ir,bx as Fs,ay as Ms,b0 as qa,b1 as Ka,a$ as Ya,a6 as Xa,aj as Is,ah as Rs,a7 as Ls,aE as As,by as ks,bz as xs,bA as _s}from"./LogPanel-68cae5f8.js";import{L as Z,Z as js,_ as Qa,T as Vs,$ as $s,a0 as Hs,l as R,a1 as Gs,a as Kt,a2 as It,e as Us,a3 as Bs,a4 as Mn,a5 as Za,a6 as Ws,a7 as Ja,v as qr,a8 as el,a9 as li,aa as si,ab as zs,ac as qs,M as Ks,s as Ys,b as Xs,ad as Qs,ae as Zs,af as Js,ag as eo,ah as to,c as oi,ai as ro,aj as no,ak as io,al as ao,am as lo,an as so}from"./index-b36b7467.js";function In(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=oo(n,e);t.forEach(r=>{n[r]=n[r].bind(n)})}function oo(n,e){for(var t=new Set,r=n,i=0;r!=null&&r!==Object.prototype&&(i<=1||e);){for(var a of Object.getOwnPropertyNames(r)){var l;a!=="constructor"&&typeof((l=Object.getOwnPropertyDescriptor(r,a))===null||l===void 0?void 0:l.value)=="function"&&t.add(a)}r=Object.getPrototypeOf(r),i+=1}return[...t.keys()]}var uo=3500,ho=Z.module("useCopyToClipboard");function co(){var[n,e]=D.useState(!1),t=D.useRef(null),r=D.useCallback(i=>{ja(i).then(()=>{e(!0)}).catch(a=>ho.error("Unable to copy ".concat(i),`
2
- `,a))},[]);return D.useEffect(()=>(t.current&&clearTimeout(t.current),n&&(t.current=setTimeout(()=>{e(!1)},uo)),()=>{t.current&&clearTimeout(t.current)}),[n]),[n,r]}function Rn(n){var{className:e,isFlipped:t,children:r,"data-testid":i}=n,a=u=>{if(r.length!==2)throw new Error("CardFlip requires 2 children to function");return r[u]},l=D.useRef(null),s=D.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=D.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return D.useEffect(function(){if(!l.current)throw Error("ref undefined");l.current.addEventListener("transitionstart",s);var d=l.current;return function(){if(d!=null)return d.removeEventListener("transitionstart",s)}},[s]),f.jsxs("div",{className:Re(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[f.jsx("div",{className:"card-flip--back",children:a(0)}),f.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}function vo(n){var{copy:e,kind:t="ghost",tooltip:r="Copy",className:i,style:a,"data-testid":l,children:s}=n,[o,u]=co();return f.jsx(fs,{kind:t,className:i,style:a,"data-testid":l,icon:o?js:Qa,tooltip:o?"Copied":r,onClick:()=>{u(typeof e=="function"?e():e)},children:s})}var fo=["className","timeout"];function ui(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function po(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ui(Object(t),!0).forEach(function(r){mo(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ui(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function mo(n,e,t){return e=go(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function go(n){var e=bo(n,"string");return typeof e=="symbol"?e:String(e)}function bo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Co(n,e){if(n==null)return{};var t=So(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function So(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function gn(n){var{className:e,timeout:t=Vs.transitionMs}=n,r=Co(n,fo);return f.jsx(is,po({timeout:t,classNames:Re("fade",e)},r))}var Ln=Le.forwardRef((n,e)=>{var{children:t,className:r,disabled:i,id:a,isLinked:l,isLinkedSource:s,isInvalid:o,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,"data-testid":v}=n,{UNSAFE_className:g}=as({},"button");return f.jsxs("button",{ref:e,type:"button",className:Re("btn-socketed",{"btn-socketed-linked":l!==void 0&&l||s},{"btn-socketed-linked-source":s},{"is-invalid":o},r,g),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,disabled:i,"data-testid":v,children:[t,f.jsx(Ie,{icon:$s,className:"linked btn-socketed-icon",transform:"down-1"}),f.jsx(Ie,{icon:Hs,className:"is-invalid btn-socketed-icon"})]})});Ln.displayName="SocketedButton";Ln.defaultProps={children:void 0,className:"",disabled:!1,id:void 0,isLinked:!1,isLinkedSource:!1,isInvalid:!1,onClick:void 0,onMouseEnter:void 0,onMouseLeave:void 0,style:void 0,"data-testid":void 0};const tl=Ln;class yo extends $t{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}const Eo=yo;class wo extends $t{format(e){return String.fromCharCode(e)}}const To=wo;class Po extends $t{format(e){return"".concat(e)}}const No=Po;class Do extends $t{format(e){return e}}function di(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function hi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?di(Object(t),!0).forEach(function(r){An(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):di(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function An(n,e,t){return e=Oo(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Oo(n){var e=Fo(n,"string");return typeof e=="symbol"?e:String(e)}function Fo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Mo=/\s*(\d{4})([-./](\d{1,2}|[a-z]+))?([-./](\d{1,2}))?([tT\s](\d{2})([:](\d{2}))?([:](\d{2}))?([.](\d{1,9}))?)?(.*)/;class se{static makeDateWrapper(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:0,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:0,u=arguments.length>8&&arguments[8]!==void 0?arguments[8]:0;if(!t)throw new Error("No timezone provided");var d="".concat(r).padStart(4,"0"),h="".concat(i+1).padStart(2,"0"),c="".concat(a).padStart(2,"0"),v="".concat(l).padStart(2,"0"),g="".concat(s).padStart(2,"0"),p="".concat(o).padStart(2,"0"),m="".concat(u).padStart(9,"0"),b="".concat(d,"-").concat(h,"-").concat(c," ").concat(v,":").concat(g,":").concat(p,".").concat(m);return e.i18n.DateTimeFormat.parse(se.FULL_DATE_FORMAT,b,e.i18n.TimeZone.getTimeZone(t))}static getNextNanos(e){var t=parseInt(e,10),r="0".repeat(9-e.length),i="".concat(t+1).concat(r);return parseInt(i,10)}static getNextDate(e,t,r,i){var{year:a,month:l,date:s,hours:o,minutes:u,seconds:d,nanos:h}=r;if(t.nanos!=null){if(t.nanos.length===9)return null;h=se.getNextNanos(t.nanos),h>999999999&&(d+=1,h=0)}else t.seconds!=null?d+=1:t.minutes!=null?u+=1:t.hours!=null?o+=1:t.date!=null?s+=1:t.month!=null?l+=1:a+=1;var c=new Date(a,l,s,o,u,d);return se.makeDateWrapper(e,i,c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),h)}static parseMonth(e){var t=parseInt(e,10);if(!Number.isNaN(t))return t>=1&&t<=12?t-1:NaN;var r=e.trim().toLowerCase();if(r.length>=3){for(var i=0;i<se.months.length;i+=1)if(se.months[i].startsWith(r))return i}return NaN}static parseDateValues(e,t,r,i,a,l,s){var o=parseInt(e,10),u=t!=null?this.parseMonth(t):0,d=r!=null?parseInt(r,10):1,h=i!=null?parseInt(i,10):0,c=a!=null?parseInt(a,10):0,v=l!=null?parseInt(l,10):0,g=s!=null?parseInt(s.padEnd(9,"0"),10):0;return Number.isNaN(o)||Number.isNaN(u)||Number.isNaN(d)||Number.isNaN(h)||Number.isNaN(c)||Number.isNaN(v)||Number.isNaN(g)?null:{year:o,month:u,date:d,hours:h,minutes:c,seconds:v,nanos:g}}static parseDateTimeString(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=Mo.exec(e);if(r==null)throw new Error("Unexpected date string: ".concat(e));var[,i,,a,,l,,s,,o,,u,,d,h]=r;if(!t&&h!=null&&h.length>0)throw new Error("Unexpected characters after date string '".concat(e,"': ").concat(h));var c={year:i,month:a,date:l,hours:s,minutes:o,seconds:u,nanos:d};return t?hi(hi({},c),{},{overflow:h}):c}static parseDateRange(e,t,r){var i=t.trim().toLowerCase();if(i.length===0)throw new Error("Cannot parse date range from empty string");if(i==="null")return[null,null];if(i==="today"){var a=new Date(Date.now()),l=se.makeDateWrapper(e,r,a.getFullYear(),a.getMonth(),a.getDate()),s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1),o=se.makeDateWrapper(e,r,s.getFullYear(),s.getMonth(),s.getDate());return[l,o]}if(i==="yesterday"){var u=new Date(Date.now()),d=new Date(u.getFullYear(),u.getMonth(),u.getDate()-1),h=se.makeDateWrapper(e,r,d.getFullYear(),d.getMonth(),d.getDate()),c=se.makeDateWrapper(e,r,u.getFullYear(),u.getMonth(),u.getDate());return[h,c]}if(i==="now"){var v=new Date(Date.now()),g=e.DateWrapper.ofJsDate(v);return[g,null]}var p=se.parseDateTimeString(i);if(p.year==null&&p.month==null&&p.date==null)throw new Error("Unable to extract year, month, or day ".concat(i));var m=se.parseDateValues(p.year,p.month,p.date,p.hours,p.minutes,p.seconds,p.nanos);if(m==null)throw new Error("Unable to extract date values from ".concat(p));var b=se.makeDateWrapper(e,r,m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos),y=se.getNextDate(e,p,m,r);return[b,y]}static getJsDate(e){return typeof e=="number"?new Date(e):e.asDate()}static trimDateTimeStringTimeZone(e){var{overflow:t=""}=se.parseDateTimeString(e,!0);if(t==="")return e;if(!/^\s[A-Za-z]+/.test(t))throw new Error("Unexpected timezone format in overflow: '".concat(e,"'"));return e.slice(0,-t.length)}}An(se,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");An(se,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function Vv(n,e){return n===e?{operator:"notEq",value:""}:{operator:"eq",value:n}}function $v(n,e,t,r){return function(a){var l=t.trim();if(l==="")return null;var s=rl(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function rl(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"or";return function(i){var a=i==null?void 0:i.findColumns(typeof n=="string"?[n]:n);if(a==null||a.length===0)return null;var l=a.map(e);return l.reduce((s,o)=>s[t](o))}}function Io(n,e,t,r){return rl(e,i=>i.filter()[r](n.makeFilterValue(i.type,t)),"or")}function Hv(n,e,t,r,i){return function(l){var s=l==null?void 0:l.findColumn(e),o=t==="all"||r&&t.size===0;return s==null||o?null:n.makeSelectValueFilter(s,[...t.keys()],i)}}function Gv(n){return function(t){return t.filter().isNull().not().and(t.filter().notEq(n.makeFilterValue(t.type,"")))}}function Uv(n,e){return function(r){var i=r.filter(),a=n.makeFilterValue(r.type,""),l=i.eq(a);return e?i.isNull().or(l):l.or(i.notEq(a))}}function kn(n,e,t){return e=Ro(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ro(n){var e=Lo(n,"string");return typeof e=="symbol"?e:String(e)}function Lo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class cr{}kn(cr,"not","not");kn(cr,"and","and");kn(cr,"or","or");function Bv(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function ce(n,e,t){return e=Ao(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ao(n){var e=ko(n,"string");return typeof e=="symbol"?e:String(e)}function ko(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class N{}ce(N,"eq","eq");ce(N,"eqIgnoreCase","eqIgnoreCase");ce(N,"notEq","notEq");ce(N,"notEqIgnoreCase","notEqIgnoreCase");ce(N,"greaterThan","greaterThan");ce(N,"greaterThanOrEqualTo","greaterThanOrEqualTo");ce(N,"lessThan","lessThan");ce(N,"lessThanOrEqualTo","lessThanOrEqualTo");ce(N,"in","in");ce(N,"inIgnoreCase","inIgnoreCase");ce(N,"notIn","notIn");ce(N,"notInIgnoreCase","notInIgnoreCase");ce(N,"isTrue","isTrue");ce(N,"isFalse","isFalse");ce(N,"isNull","isNull");ce(N,"invoke","invoke");ce(N,"contains","contains");ce(N,"notContains","notContains");ce(N,"containsIgnoreCase","containsIgnoreCase");ce(N,"startsWith","startsWith");ce(N,"endsWith","endsWith");ce(N,"containsAny","containsAny");function xo(n){switch(n){case N.eq:return"is exactly";case N.eqIgnoreCase:return"is exactly (ignore case)";case N.notEq:return"is not exactly";case N.notEqIgnoreCase:return"is not exactly (ignore case)";case N.contains:return"contains";case N.notContains:return"does not contain";case N.startsWith:return"starts with";case N.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function _o(n){switch(n){case N.eq:return"is equal to";case N.notEq:return"is not equal to";case N.greaterThan:return"greater than";case N.greaterThanOrEqualTo:return"greater than or equal to";case N.lessThan:return"less than";case N.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function jo(n){switch(n){case N.eq:return"date is";case N.notEq:return"date is not";case N.notEqIgnoreCase:case N.greaterThan:return"date is after";case N.greaterThanOrEqualTo:return"date is after or equal";case N.lessThan:return"date is before";case N.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function Wv(n){switch(n){case N.isTrue:return"Is True";case N.isFalse:return"Is False";case N.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}var Vo="DH_ITEM_KEY",ci=Z.module("ViewportDataUtils");function nl(n){return"".concat(Vo,"_").concat(n)}function $o(n,e){return nl(n.offsetInSnapshot+e)}function zv(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;ci.debug("table updated",i.detail);var o=new Map;s.forEach(u=>{var d=e(u,a),h=$o(u,l);o.set(h,{key:h,item:d})}),ci.debug("update keys",o),t(o)}}function qv(n,e){return e.reduce((t,r)=>(t[r.name]=n.get(r),t),{})}function*Kv(n,e){for(var t=n;t<=e;++t)yield{key:nl(t)}}function Ho(n){return n==null||Go(n)?0:n.size}function Go(n){return"isClosed"in n?n.isClosed:!1}function Yv(n,e,t,r){var i=n+e-1,[a,l]=[0,r-1],s=et(n-t,a,l),o=et(i+t,a,l);return[s,o]}function vi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function gt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){vi(a,r,i,l,s,"next",o)}function s(o){vi(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ft(n,e,t){return e=Uo(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uo(n){var e=Bo(n,"string");return typeof e=="symbol"?e:String(e)}function Bo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var at=Z.module("TableUtils");function Xv(n){return n===S.sortDirection.ascending||n===S.sortDirection.descending||n===S.sortDirection.reverse||n===S.sortDirection.none}class S{static copyTableAndApplyFilters(e){var t=arguments;return gt(function*(){if(e==null)return null;for(var r=yield e.copy(),i=t.length,a=new Array(i>1?i-1:0),l=1;l<i;l++)a[l-1]=t[l];return r.applyFilter(sn(...a.map(s=>s(r)))),r})()}static getSortIndex(e,t){for(var r=0;r<e.length;r+=1){var i,a=e[r];if(((i=a.column)===null||i===void 0?void 0:i.name)===t)return r}return null}static getSortForColumn(e,t){var r=S.getSortIndex(e,t);return r!=null?e[r]:null}static getFilterText(e){return e?e.toString():null}static getFilterTypes(e){return S.isBooleanType(e)?[N.isTrue,N.isFalse,N.isNull]:S.isCharType(e)||S.isNumberType(e)||S.isDateType(e)?[N.eq,N.notEq,N.greaterThan,N.greaterThanOrEqualTo,N.lessThan,N.lessThanOrEqualTo]:S.isTextType(e)?[N.eq,N.eqIgnoreCase,N.notEq,N.notEqIgnoreCase,N.contains,N.notContains,N.startsWith,N.endsWith]:[]}static getNextSort(e,t,r){if(r<0||r>=e.length)return null;var i=S.getSortForColumn(t,e[r].name);return i===null?e[r].sort().asc():i.direction===S.sortDirection.ascending?i.desc():null}static makeColumnSort(e,t,r,i){if(t<0||t>=e.length||r===S.sortDirection.none)return null;var a=e[t].sort();switch(r){case S.sortDirection.ascending:a=a.asc();break;case S.sortDirection.descending:a=a.desc();break}return i&&(a=a.abs()),a}static toggleSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(r<0||r>=t.length)return[];var a=S.getNextSort(t,e,r);return S.setSortForColumn(e,t[r].name,a,i)}static sortColumn(e,t,r,i,a,l){if(r<0||r>=t.length)return[];var s=S.makeColumnSort(t,r,i,a);return S.setSortForColumn(e,t[r].name,s,l)}static setSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=S.getSortIndex(e,t),l=[];return i&&(l=l.concat(e.filter(s=>{var{direction:o}=s;return o!==S.sortDirection.reverse})),a!==null&&l.splice(a,1)),r!==null&&l.push(r),l}static getNormalizedType(e){switch(e){case"boolean":case"java.lang.Boolean":case S.dataType.BOOLEAN:return S.dataType.BOOLEAN;case"char":case"java.lang.Character":case S.dataType.CHAR:return S.dataType.CHAR;case"java.lang.String":case S.dataType.STRING:return S.dataType.STRING;case"io.deephaven.db.tables.utils.DBDateTime":case"io.deephaven.time.DateTime":case"com.illumon.iris.db.tables.utils.DBDateTime":case"java.time.Instant":case"java.time.ZonedDateTime":case S.dataType.DATETIME:return S.dataType.DATETIME;case"double":case"java.lang.Double":case"float":case"java.lang.Float":case"java.math.BigDecimal":case S.dataType.DECIMAL:return S.dataType.DECIMAL;case"int":case"java.lang.Integer":case"long":case"java.lang.Long":case"short":case"java.lang.Short":case"byte":case"java.lang.Byte":case"java.math.BigInteger":case S.dataType.INT:return S.dataType.INT;default:return S.dataType.UNKNOWN}}static isLongType(e){switch(e){case"long":case"java.lang.Long":return!0;default:return!1}}static isDateType(e){switch(e){case"io.deephaven.db.tables.utils.DBDateTime":case"io.deephaven.time.DateTime":case"java.time.Instant":case"java.time.ZonedDateTime":case"com.illumon.iris.db.tables.utils.DBDateTime":return!0;default:return!1}}static isNumberType(e){return S.isIntegerType(e)||S.isDecimalType(e)}static isIntegerType(e){switch(e){case"int":case"java.lang.Integer":case"java.math.BigInteger":case"long":case"java.lang.Long":case"short":case"java.lang.Short":case"byte":case"java.lang.Byte":return!0;default:return!1}}static isDecimalType(e){switch(e){case"double":case"java.lang.Double":case"java.math.BigDecimal":case"float":case"java.lang.Float":return!0;default:return!1}}static isBigDecimalType(e){switch(e){case"java.math.BigDecimal":return!0;default:return!1}}static isBigIntegerType(e){switch(e){case"java.math.BigInteger":return!0;default:return!1}}static isBooleanType(e){switch(e){case"boolean":case"java.lang.Boolean":return!0;default:return!1}}static isCharType(e){switch(e){case"char":case"java.lang.Character":return!0;default:return!1}}static isStringType(e){switch(e){case"java.lang.String":return!0;default:return!1}}static isTextType(e){return this.isStringType(e)||this.isCharType(e)}static getBaseType(e){return e.split("[]")[0]}static isCompatibleType(e,t){return S.getNormalizedType(e)===S.getNormalizedType(t)}static quoteValue(e){return e.length>=2&&(e.charAt(0)==='"'&&e.charAt(e.length-1)==='"'||e.charAt(0)==="'"&&e.charAt(e.length-1)==="'")?e:'"'.concat(e,'"')}static isRangeOperation(e){switch(e){case"<":case"<=":case"=<":case">":case">=":case"=>":return!0;default:return!1}}static makeRangeFilterWithOperation(e,t,r){switch(t){case"=":return e.eq(r);case"<":return e.lessThan(r);case"<=":case"=<":return e.lessThanOrEqualTo(r);case">":return e.greaterThan(r);case">=":case"=>":return e.greaterThanOrEqualTo(r);case"!=":case"!":return e.notEq(r);default:return null}}static makeCancelableTablePromise(e){return xe.makeCancelable(e,t=>{t.close()})}static makeCancelableTableEventPromise(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a,l,s=!0,o=new Promise((u,d)=>{l=setTimeout(()=>{a(),s=!1,d(new ps('Event "'.concat(t,'" timed out.')))},r),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 r=S.removeCommas(t);if(S.NUMBER_REGEX.test(r))return parseFloat(r);throw new Error("Invalid number '".concat(e,"'"))}static getFilterOperatorString(e){switch(e){case N.eq:return"=";case N.notEq:return"!=";case N.greaterThan:return">";case N.greaterThanOrEqualTo:return">=";case N.lessThan:return"<";case N.lessThanOrEqualTo:return"<=";case N.contains:return"~";case N.notContains:return"!~";default:throw new Error("Unexpected filter type ".concat(e))}}static isPartitionedTable(e){return e!=null&&e.getMergedTable!==void 0&&e.getKeyTable!==void 0&&e.getKeys!==void 0}static isTreeTable(e){return e!=null&&e.expand!==void 0&&e.collapse!==void 0}static sortColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return[...e].sort((r,i)=>{var a=r.name.toUpperCase(),l=i.name.toUpperCase();return Xe.sort(a,l,t)})}constructor(e){Ft(this,"dh",void 0),this.dh=e,In(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return gt(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(sn(...o.map(v=>v(l)))));var d=l.findColumn(t),h=yield l.selectDistinct([d]);l!==e&&l.close();var c=h.findColumn(t).sort()[r]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,r,i){var a=this;return gt(function*(){if(e==null)return null;var l=Io(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,sn(l(s)));var o=Ho(s);return s.close(),o>0})()}getValueType(e){if(e==null)return this.dh.ValueType.STRING;var t=S.getNormalizedType(e);switch(t){case S.dataType.BOOLEAN:return this.dh.ValueType.BOOLEAN;case S.dataType.CHAR:case S.dataType.STRING:return this.dh.ValueType.STRING;case S.dataType.DATETIME:return this.dh.ValueType.DATETIME;case S.dataType.DECIMAL:case S.dataType.INT:return S.isBigDecimalType(e)||S.isBigIntegerType(e)?this.dh.ValueType.STRING:this.dh.ValueType.NUMBER;default:return this.dh.ValueType.STRING}}makeQuickFilter(e,t,r){for(var i=t.split("||"),a=null,l=0;l<i.length;l+=1){for(var s=i[l],o=s.split("&&"),u=null,d=0;d<o.length;d+=1){var h=o[d].trim();if(h.length>0){var c=this.makeQuickFilterFromComponent(e,h,r);if(c)u?u=u.and(c):u=c;else throw new Error("Unable to parse quick filter from text ".concat(t))}}a&&u?a=a.or(u):a=u}return a}makeQuickFilterFromComponent(e,t,r){var{type:i}=e;return S.isNumberType(i)?this.makeQuickNumberFilter(e,t):S.isBooleanType(i)?this.makeQuickBooleanFilter(e,t):r!=null&&S.isDateType(i)?this.makeQuickDateFilter(e,t,r):S.isCharType(i)?this.makeQuickCharFilter(e,t):this.makeQuickTextFilter(e,t)}makeQuickNumberFilter(e,t){var r=e.filter(),{dh:i}=this,a=null,l=/\s*(>=|<=|=>|=<|>|<|!=|=|!)?(\s*-\s*)?(\s*\d*(?:,\d{3})*(?:\.\d*)?\s*)?(null|nan|infinity|inf|\u221E)?(.*)/i,s=l.exec(t),o=null,u=null,d=null,h=null,c=null;if(s!==null&&s.length>3&&([,o,u,d,h,c]=s),c!=null&&c.trim().length>0)return null;if(o==null&&(o="="),h!=null){if(!(o==="="||o==="!"||o==="!="))return null;switch(h=h.trim().toLowerCase(),h){case"null":a=r.isNull();break;case"nan":a=i.FilterCondition.invoke("isNaN",r);break;case"infinity":case"inf":case"∞":u!=null?a=i.FilterCondition.invoke("isInf",r).and(r.lessThan(i.FilterValue.ofNumber(0))):a=i.FilterCondition.invoke("isInf",r).and(r.greaterThan(i.FilterValue.ofNumber(0)));break}return a!==null&&(o==="!"||o==="!=")&&(a=a.not()),a}if(d==null)return null;if(d=S.removeCommas(d),S.isLongType(e.type))try{d=i.FilterValue.ofNumber(i.LongWrapper.ofString("".concat(u!=null?"-":"").concat(d)))}catch(v){return at.warn("Unable to create long filter",v),null}else{if(d=parseFloat(d),d==null||Number.isNaN(d))return null;d=i.FilterValue.ofNumber(u!=null?0-d:d)}return a=e.filter(),S.makeRangeFilterWithOperation(a,o,d)}static escapeQuickTextFilter(e){var t,r;if(e==null)return null;var i=/^(!~|!=|~|=|!)?(.*)/,a=/^\\*null$/,l=i.exec(e),s=null,o=null;if(l!==null&&l.length>2&&([,s,o]=l),s!=null){var u;return"\\".concat(s).concat((u=o)!==null&&u!==void 0?u:"")}return o!=null&&a.test(o.toLowerCase())||o!=null&&o.startsWith("*")?"\\".concat(o):o!=null&&o.endsWith("*")&&!o.endsWith("\\*")?(o=o.substring(0,o.length-1),"".concat(o,"\\*")):"".concat((t=s)!==null&&t!==void 0?t:"").concat((r=o)!==null&&r!==void 0?r:"")}static unescapeQuickTextFilter(e){var t,r,i=/^(\\!~|\\!=|\\~|\\=|\\!)?(.*)/,a=/^\\*null$/,l=i.exec(e),s=null,o=null;return l!==null&&l.length>2&&([,s,o]=l),s!=null&&(s=s.replace("\\","")),o!=null&&a.test(o.toLowerCase())&&(o=o.replace("\\","")),s==null&&o!=null&&o.startsWith("\\*")&&(o=o.substring(1)),s==null&&o!=null&&o.endsWith("\\*")?(o=o.substring(0,o.length-2),"".concat(o,"*")):"".concat((t=s)!==null&&t!==void 0?t:"").concat((r=o)!==null&&r!==void 0?r:"")}makeQuickTextFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(!~|!=|~|=|!)?(.*)/,l=a.exec(i),s=null,o=null;if(l!==null&&l.length>2&&([,s,o]=l,o!=null&&(o=o.trim())),o==null||o.length===0&&!(s==="="||s==="!="))return null;s==null&&(s="=");var u=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return u.isNull();case"!=":case"!":return u.isNull().not()}var d=null,h=null;switch(o.startsWith("*")?(d="*",o=o.substring(1)):o.endsWith("*")&&!o.endsWith("\\*")&&(h="*",o=o.substring(0,o.length-1)),o=S.unescapeQuickTextFilter(o),s){case"~":return u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))));case"!~":return u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))).not());case"!=":return d==="*"?u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$"))).not()):h==="*"?u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*"))).not()):u.notEqIgnoreCase(r.FilterValue.ofString(o.toLowerCase()));case"=":return d==="*"?u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$")))):h==="*"?u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*")))):u.eqIgnoreCase(r.FilterValue.ofString(o.toLowerCase()))}return null}makeQuickBooleanFilter(e,t){var r=/^(!=|=|!)?(.*)/,i=r.exec("".concat(t).trim());if(i===null)return null;var[,a,l]=i,s=a==="!"||a==="!=",o=l.trim().toLowerCase(),u=e.filter();try{var d=S.makeBooleanValue(o);return d!=null&&d?u=u.isTrue():d===null?u=u.isNull():u=u.isFalse(),s?u.not():u}catch{return null}}makeQuickDateFilter(e,t,r){var i=t.trim(),a=/\s*(>=|<=|=>|=<|>|<|!=|!|=)?(.*)/,l=a.exec(i);if(l==null||l.length<=2)throw new Error("Unable to parse date filter: ".concat(t));var s=null,o=null;[,s,o]=l;var u=N.eq;switch(s){case"<":u=N.lessThan;break;case"<=":case"=<":u=N.lessThanOrEqualTo;break;case">":u=N.greaterThan;break;case">=":case"=>":u=N.greaterThanOrEqualTo;break;case"!=":case"!":u=N.notEq;break;case"=":case"==":default:u=N.eq;break}return this.makeQuickDateFilterWithOperation(e,o,u,r)}makeQuickDateFilterWithOperation(e,t,r,i){var{dh:a}=this,[l,s]=se.parseDateRange(a,t,i),o=l!=null?a.FilterValue.ofNumber(l):null,u=s!=null?a.FilterValue.ofNumber(s):null,d=e.filter();if(o==null)return r===N.notEq?d.isNull().not():d.isNull();switch(r){case N.eq:{if(u!=null){var h=d.greaterThanOrEqualTo(o),c=d.lessThan(u);return h.and(c)}return d.eq(o)}case N.lessThan:return d.lessThan(o);case N.lessThanOrEqualTo:return u!=null?d.lessThan(u):d.lessThanOrEqualTo(o);case N.greaterThan:return u!=null?d.greaterThanOrEqualTo(u):d.greaterThan(o);case N.greaterThanOrEqualTo:return d.greaterThanOrEqualTo(o);case N.notEq:{if(u!=null){var v=d.lessThan(o),g=d.greaterThanOrEqualTo(u);return v.or(g)}return d.notEq(o)}default:throw new Error("Invalid operator: ".concat(r))}}makeQuickCharFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(>=|<=|=>|=<|>|<|!=|=|!)?(null|"."|'.'|.)?(.*)/,l=a.exec(i),s=null,o=null,u=null;if(l!==null&&l.length>3&&([,s,o,u]=l),u!=null&&u.trim().length>0||o==null||o.length===0)return null;s==null&&(s="=");var d=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return d.isNull();case"!=":case"!":return d.isNull().not();default:return null}var h=r.FilterValue.ofString(S.isRangeOperation(s)?S.quoteValue(o):o);return S.makeRangeFilterWithOperation(d,s,h)}makeAdvancedFilter(e,t,r){for(var{filterItems:i,filterOperators:a,invertSelection:l,selectedValues:s}=t,o=null,u=0;u<i.length;u+=1){var d=i[u],{selectedType:h,value:c}=d;if(h!=null&&h.length>0&&c!=null&&c.length>0)try{var v=this.makeAdvancedValueFilter(e,h,c,r);if(v!=null){if(u===0)o=v;else if(o!==null&&u-1<a.length){var g=a[u-1];if(g===cr.and)o=o.and(v);else if(g===cr.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(m){at.error("Unable to create filter",m),o=null;break}}var p=this.makeSelectValueFilter(e,s,l);return p!=null&&(o!=null?o=o.and(p):o=p),o}makeAdvancedValueFilter(e,t,r,i){var{dh:a}=this;if(S.isDateType(e.type))return this.makeQuickDateFilterWithOperation(e,r,t,i);if(S.isNumberType(e.type)||S.isCharType(e.type))return this.makeQuickFilter(e,"".concat(S.getFilterOperatorString(t)).concat(r));var l=this.makeFilterValue(e.type,r),s=e.filter();switch(t){case N.eq:return s.eq(l);case N.eqIgnoreCase:return s.eqIgnoreCase(l);case N.notEq:return s.notEq(l);case N.notEqIgnoreCase:return s.notEqIgnoreCase(l);case N.greaterThan:return s.greaterThan(l);case N.greaterThanOrEqualTo:return s.greaterThanOrEqualTo(l);case N.lessThan:return s.lessThan(l);case N.lessThanOrEqualTo:return s.lessThanOrEqualTo(l);case N.isTrue:return s.isTrue();case N.isFalse:return s.isFalse();case N.isNull:return s.isNull();case N.contains:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))));case N.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))).not());case N.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(r,"\\E.*"))));case N.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E$"))));case N.in:case N.inIgnoreCase:case N.notIn:case N.notInIgnoreCase:case N.invoke:default:throw new Error("Unexpected filter operation: ".concat(t))}}makeSearchTextFilter(e,t,r){var i=this.getValueType(e.type);try{if(i===this.dh.ValueType.BOOLEAN){var a=this.makeQuickBooleanFilter(e,t);return R(a),a}if(i===this.dh.ValueType.DATETIME)return this.makeQuickDateFilterWithOperation(e,se.trimDateTimeStringTimeZone(t),"eq",r);if(i===this.dh.ValueType.NUMBER){var l=this.makeQuickNumberFilter(e,t);return R(l),l}return S.isBigDecimalType(e.type)||S.isBigIntegerType(e.type)?e.filter().eq(this.makeFilterValue(e.type,t)):e.filter().containsIgnoreCase(this.makeFilterValue(e.type,t))}catch{return this.makeNeverFilter(e)}}applyNeverFilter(e,t){var r=arguments,i=this;return gt(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(e==null)return null;var l=e.findColumn(t),s=[i.makeNeverFilter(l)];return yield i.applyFilter(e,s,a),e})()}applyCustomColumns(e,t){var r=arguments,i=this;return gt(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyCustomColumns(t),e,l.Table.EVENT_CUSTOMCOLUMNSCHANGED,a)})()}applyFilter(e,t){var r=arguments,i=this;return gt(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyFilter(t),e,l.Table.EVENT_FILTERCHANGED,a)})()}applySort(e,t){var r=arguments,i=this;return gt(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applySort(t),e,l.Table.EVENT_SORTCHANGED,a)})()}makeNeverFilter(e){var{dh:t}=this,r=null;S.isTextType(e.type)?r=t.FilterValue.ofString("a"):S.isBooleanType(e.type)?r=t.FilterValue.ofBoolean(!0):S.isDateType(e.type)?r=t.FilterValue.ofNumber(t.DateWrapper.ofJsDate(new Date)):r=t.FilterValue.ofNumber(0);var i=e.filter().eq(r),a=e.filter().notEq(r);return i.and(a)}makeFilterValue(e,t){var{dh:r}=this,i=S.getBaseType(e);return S.isTextType(i)?r.FilterValue.ofString(t):S.isLongType(i)?r.FilterValue.ofNumber(r.LongWrapper.ofString(S.removeCommas(t))):r.FilterValue.ofNumber(S.removeCommas(t))}makeFilterRawValue(e,t){var{dh:r}=this;return S.isCharType(e)?r.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):S.isTextType(e)?r.FilterValue.ofString(t):S.isBooleanType(e)?r.FilterValue.ofBoolean(t):r.FilterValue.ofNumber(t)}makeNullableEqFilter(e,t){return t==null?e.filter().isNull():e.filter().eq(this.makeFilterRawValue(e.type,t))}makeValue(e,t,r){var{dh:i}=this;if(t==="null")return null;if(S.isTextType(e))return t;if(S.isLongType(e))return i.LongWrapper.ofString(S.removeCommas(t));if(S.isBooleanType(e))return S.makeBooleanValue(t,!0);if(S.isDateType(e)){var[a]=se.parseDateRange(i,t,r);return a}return S.isNumberType(e)?S.makeNumberValue(t):(at.error("Unexpected column type",e),null)}makeSelectValueFilter(e,t,r){var{dh:i}=this;if(t.length===0)return r?null:this.makeNeverFilter(e);for(var a=[],l=!1,s=0;s<t.length;s+=1){var o=t[s];o==null?l=!0:S.isTextType(e.type)?a.push(i.FilterValue.ofString(typeof o=="number"?String.fromCharCode(o):o)):S.isBooleanType(e.type)?a.push(i.FilterValue.ofBoolean(!!o)):a.push(i.FilterValue.ofNumber(o))}return l?a.length>0?r?e.filter().isNull().not().and(e.filter().notIn(a)):e.filter().isNull().or(e.filter().in(a)):r?e.filter().isNull().not():e.filter().isNull():r?e.filter().notIn(a):e.filter().in(a)}}Ft(S,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});Ft(S,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});Ft(S,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);Ft(S,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));Ft(S,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);Ft(S,"executeAndWaitForEvent",function(){var n=gt(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=S.makeCancelableTableEventPromise(t,r,i);return e(t),yield a,t});return function(e,t,r){return n.apply(this,arguments)}}());function Rt(n,e,t){return e=Wo(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wo(n){var e=zo(n,"string");return typeof e=="symbol"?e:String(e)}function zo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ze{static makeColumnFormatMap(e){return e==null?new Map:e.reduce((t,r)=>{var i=S.getNormalizedType(r.columnType);if(i===null)return t;t.has(i)||t.set(i,new Map);var a=t.get(i);return a==null||a.set(r.columnName,r.format),t},new Map)}static makeColumnFormattingRule(e,t,r){return{columnType:e,columnName:t,format:r}}constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!1,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:!0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!0;Rt(this,"defaultColumnFormatter",void 0),Rt(this,"typeFormatterMap",void 0),Rt(this,"columnFormatMap",void 0),Rt(this,"truncateNumbersWithPound",void 0),Rt(this,"showEmptyStrings",void 0),Rt(this,"showNullStrings",void 0),this.defaultColumnFormatter=new No,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new Eo],[S.dataType.CHAR,new To],[S.dataType.DATETIME,new kr(e,r)],[S.dataType.DECIMAL,new ms(e,i)],[S.dataType.INT,new gs(e,a)],[S.dataType.STRING,new Do]]),this.columnFormatMap=ze.makeColumnFormatMap(t),this.truncateNumbersWithPound=l,this.showEmptyStrings=s,this.showNullStrings=o}getColumnFormatMapForType(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=S.getNormalizedType(e);if(r!==null)return t&&!this.columnFormatMap.has(r)&&this.columnFormatMap.set(r,new Map),this.columnFormatMap.get(r)}getColumnFormat(e,t){var r,i=this.getColumnFormatMapForType(e);return(r=i==null?void 0:i.get(t))!==null&&r!==void 0?r:null}getColumnTypeFormatter(e){var t=S.getNormalizedType(e),r=this.defaultColumnFormatter;if(t){var i;r=(i=this.typeFormatterMap.get(t))!==null&&i!==void 0?i:r}return r}getFormattedString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;if(e==null)return"";var a=this.getColumnTypeFormatter(t),l=i||this.getColumnFormat(t,r);return a.format(e,l??void 0)}get timeZone(){var e=this.typeFormatterMap.get(S.dataType.DATETIME);return Gs(e,kr),e.dhTimeZone.id}}function qo(n,e){var t=il(e),r=al(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new ze(n,t,r,i,a,l,s,o)}function il(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function al(n){return{timeZone:n==null?void 0:n.timeZone,defaultDateTimeFormatString:n==null?void 0:n.defaultDateTimeFormat,showTimeZone:n==null?void 0:n.showTimeZone,showTSeparator:n==null?void 0:n.showTSeparator}}function Ko(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===$t.TYPE_CONTEXT_PRESET||r.type===$t.TYPE_CONTEXT_CUSTOM)}const bn={createFormatterFromSettings:qo,getColumnFormats:il,getDateTimeFormatterOptions:al,isCustomColumnFormatDefined:Ko};function fi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Yo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fi(Object(t),!0).forEach(function(r){Xo(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xo(n,e,t){return e=Qo(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qo(n){var e=Zo(n,"string");return typeof e=="symbol"?e:String(e)}function Zo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Jo=D.lazy(()=>Hr(()=>import("./Chart-acea61bf.js"),["./Chart-acea61bf.js","./vendor-2f94bc96.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-b36b7467.js","./index-11271fba.css","./Plotly-e952fd65.js","./plotly-a6565265.js","./LogPanel-68cae5f8.js","./LogPanel-68a471d6.css","./DownsamplingError-8e6bdb73.js","./Chart-b5066b0e.css"],import.meta.url));function ll(n){return f.jsx(D.Suspense,{fallback:f.jsx(Kt,{}),children:f.jsx(Jo,Yo({},n))})}function pi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function yr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?pi(Object(t),!0).forEach(function(r){Ne(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):pi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ne(n,e,t){return e=eu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eu(n){var e=tu(n,"string");return typeof e=="symbol"?e:String(e)}function tu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Qt=Z.module("ChartUtils"),mi="io.deephaven.time.DateTime",ru=36e5,nu=1e6;function iu(n){return n.asDate!==void 0}function au(n){return n.asNumber!==void 0}function gi(n){return n.dhTimeZone!==void 0}function lu(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function su(){var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}var ou=su();class _{static getPlotlyErrorBars(e,t,r){var i=r.map((l,s)=>l-e[s]),a=t.map((l,s)=>e[s]-l);return{type:"data",symmetric:!1,array:i,arrayminus:a}}static convertNumberPrefix(e){return e.replace(/\u00A4\u00A4/g,"USD").replace(/\u00A4/g,"$")}static getPlotlyNumberFormat(e,t,r){if(r==null||r==="")return null;var i=r.split(";"),a=i[0].match(/^([^#,0.]*)([#,]*)([0,]*)(\.?)(0*)(#*)(E?0*)(%?)(.*)/);R(a);var[,l,s,o,,u,d,h,c,v]=a,g=o.replace(",","").length,p=s.indexOf(",")>=0||o.indexOf(",")>=0,m=p?",":"",b=h!=null&&h!==""?"e":"f",y=c!==""?c:b,C=u.length+d.length,E="",w="0".concat(g).concat(m,".").concat(C).concat(E).concat(y),T=_.convertNumberPrefix(l),F=_.convertNumberPrefix(v);return{tickformat:w,tickprefix:T,ticksuffix:F,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i!=null&&i>0){var a=e||{},l=i;return r&&(l=i/nu),t.log&&(l=Math.log(l)),a.tickmode="linear",a.dtick=l,a}return e}static getSourceForAxis(e,t){for(var r=0;r<e.series.length;r+=1)for(var i=e.series[r],a=0;a<i.sources.length;a+=1){var l=i.sources[a];if(l.axis===t)return l}return null}static getSeriesVisibility(e,t){return t!=null&&t.hiddenSeries!=null&&t.hiddenSeries.includes(e)?"legendonly":!0}static getHiddenLabels(e){return e!=null&&e.hiddenSeries?[...e.hiddenSeries]:[]}static makeSeriesData(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:_.ORIENTATION.VERTICAL;return{type:e,mode:t,name:r,orientation:a,showlegend:i??void 0}}static getMarkerSymbol(e){switch(e){case"SQUARE":return"square";case"CIRCLE":return"circle";case"DIAMOND":return"diamond";case"UP_TRIANGLE":return"triangle-up";case"DOWN_TRIANGLE":return"triangle-down";case"RIGHT_TRIANGLE":return"triangle-right";case"LEFT_TRIANGLE":return"triangle-left";case"ELLIPSE":case"HORIZONTAL_RECTANGLE":case"VERTICAL_RECTANGLE":default:throw new Error("Unrecognized shape ".concat(e))}}static getAllAxes(e){return e.charts.reduce((t,r)=>[...t,...r.axes],[])}static getAxisTypeMap(e){var t=_.getAllAxes(e);return _.groupArray(t,"type")}static getChartForSeries(e,t){for(var{charts:r}=e,i=0;i<r.length;i+=1)for(var a=r[i],l=0;l<a.series.length;l+=1)if(t===a.series[l])return a;return null}static getLayoutRanges(e){for(var t={},r=Object.keys(e).filter(s=>s.indexOf("axis")>=0),i=0;i<r.length;i+=1){var a=r[i],l=e[a];lu(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static groupArray(e,t){return e.reduce((r,i)=>{var a,l=i[t],s=(a=r.get(l))!==null&&a!==void 0?a:[];return s.push(i),r.set(l,s),r},new Map)}static normalizeColorway(e){if(e!=null){if(Array.isArray(e))return e;if(typeof e=="string")return e.split(" ");Qt.warn("Unexpected colorway format: ".concat(e))}}static titleFromSettings(e){var{series:t,xAxis:r,title:i="".concat((t??[]).join(", ")," by ").concat(r)}=e;return i}constructor(e){Ne(this,"dh",void 0),Ne(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),In(this)}getAxisFormats(e,t){for(var r=this,i=new Map,a={tickformat:null,ticksuffix:null},l=_.getAllAxes(e),s=_.groupArray(l,"type"),{charts:o}=e,u=0;u<o.length;u+=1)for(var d=o[u],h=0;h<d.series.length;h+=1)for(var c=d.series[h],{sources:v}=c,g=v.filter(y=>y.axis),p=function(){var C=g[m],{axis:E}=C,{type:w}=E,T=s.get(w);R(T);var F=T.indexOf(E),O=r.getAxisPropertyName(w);if(O!=null){var P=_.getAxisLayoutProperty(O,F);if(i.has(P))Qt.debug("".concat(P," already added."));else{Qt.debug("Adding ".concat(P," to axisFormats."));var M=r.getPlotlyAxisFormat(C,t);if(M===null)i.set(P,a);else{i.set(P,M);var{businessCalendar:k}=E;if(k!=null){var L=[],{businessPeriods:j,businessDays:H,holidays:Y,timeZone:te}=k,re=t==null?void 0:t.getColumnTypeFormatter(mi),ae;gi(re)&&(ae=re.dhTimeZone);var le=ae?(te.standardOffset-ae.standardOffset)/60:0;Y.length>0&&L.push(...r.createRangeBreakValuesFromHolidays(Y,te,ae)),j.forEach(pe=>L.push({pattern:"hour",bounds:[_.periodToDecimal(pe.close)+le,_.periodToDecimal(pe.open)+le]})),H.length<r.daysOfWeek.length&&r.createBoundsFromDays(H).forEach(pe=>L.push({pattern:"day of week",bounds:pe})),M.rangebreaks=L}if(i.size===d.axes.length)return{v:i}}}}},m=0;m<g.length;m+=1){var b=p();if(typeof b=="object")return b.v}return i}getPlotlyChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.SCATTER:case i.plot.SeriesPlotStyle.LINE:return!t&&ou&&r?"scattergl":"scatter";case i.plot.SeriesPlotStyle.BAR:case i.plot.SeriesPlotStyle.STACKED_BAR:return"bar";case i.plot.SeriesPlotStyle.PIE:return"pie";case i.plot.SeriesPlotStyle.TREEMAP:return"treemap";case i.plot.SeriesPlotStyle.HISTOGRAM:return"histogram";case i.plot.SeriesPlotStyle.OHLC:return"ohlc";default:return}}getPlotlyChartMode(e,t,r){var{dh:i}=this,a=new Set;switch(e){case i.plot.SeriesPlotStyle.SCATTER:(t??!1)&&a.add(_.MODE_LINES),(r??!0)&&a.add(_.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(_.MODE_LINES),(r??!1)&&a.add(_.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.PIE:switch(t){case r.plot.SourceType.X:return"labels";case r.plot.SourceType.Y:return"values"}break;case r.plot.SeriesPlotStyle.OHLC:switch(t){case r.plot.SourceType.TIME:return"x"}break;case r.plot.SeriesPlotStyle.TREEMAP:switch(t){case r.plot.SourceType.X:return"ids";case r.plot.SourceType.Y:return"values";case r.plot.SourceType.LABEL:return"labels";case r.plot.SourceType.PARENT:return"parents";case r.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case r.plot.SourceType.X:return"x";case r.plot.SourceType.Y:return"y";case r.plot.SourceType.Z:return"z";case r.plot.SourceType.X_LOW:return"xLow";case r.plot.SourceType.X_HIGH:return"xHigh";case r.plot.SourceType.Y_LOW:return"yLow";case r.plot.SourceType.Y_HIGH:return"yHigh";case r.plot.SourceType.TIME:return"time";case r.plot.SourceType.OPEN:return"open";case r.plot.SourceType.HIGH:return"high";case r.plot.SourceType.LOW:return"low";case r.plot.SourceType.CLOSE:return"close";case r.plot.SourceType.SHAPE:return"shape";case r.plot.SourceType.SIZE:return"size";case r.plot.SourceType.LABEL:return"label";case r.plot.SourceType.COLOR:return"color";case r.plot.SourceType.PARENT:return"parent";case r.plot.SourceType.HOVER_TEXT:return"hovertext";case r.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,r,{dh:i}=this,{sources:a}=e;return a.length===2&&((t=a[0])===null||t===void 0||(r=t.axis)===null||r===void 0?void 0:r.type)===i.plot.AxisType.Y?_.ORIENTATION.HORIZONTAL:_.ORIENTATION.VERTICAL}makeSeriesDataFromSeries(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{name:l,isLinesVisible:s,isShapesVisible:o,plotStyle:u,lineColor:d,shapeColor:h,sources:c,shape:v,shapeSize:g}=e,p=c.some(E=>{var w;return(w=E.axis)===null||w===void 0?void 0:w.businessCalendar}),m=this.getChartType(u,p,a),b=this.getPlotlyChartMode(u,s??void 0,o??void 0),y=this.getPlotlySeriesOrientation(e),C=_.makeSeriesData(m,b,l,i,y);return this.addSourcesToSeriesData(C,u,c,t),this.addStylingToSeriesData(C,u,d,h,v,g,r),C}addSourcesToSeriesData(e,t,r,i){for(var a=e,l=0;l<r.length;l+=1){var s=r[l],{axis:o,type:u}=s,d=this.getPlotlyProperty(t,u);xa(a,d,[]);var h=o!=null?this.getAxisPropertyName(o.type):null;if(h!=null){var c=i.get(o.type);if(c){var v=c.indexOf(o),g=v>0?"".concat(v+1):"";a["".concat(h,"axis")]="".concat(h).concat(g)}}}}addStylingToSeriesData(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,{dh:o}=this,u=e;if(u.marker={line:{}},u.line={width:1},t===o.plot.SeriesPlotStyle.AREA?u.fill="tozeroy":t===o.plot.SeriesPlotStyle.STACKED_AREA?u.stackgroup="stack":t===o.plot.SeriesPlotStyle.STEP?u.line.shape="hv":t===o.plot.SeriesPlotStyle.HISTOGRAM?u.width=[]:t===o.plot.SeriesPlotStyle.PIE?u.textinfo="label+percent":t===o.plot.SeriesPlotStyle.TREEMAP&&(u.hoverinfo="text",u.textinfo="label+text",u.tiling={packing:"squarify",pad:0},u.textposition="middle center"),r!=null&&(t===o.plot.SeriesPlotStyle.BAR?u.marker.color=r:u.line.color=r),i!=null&&(u.marker.color=i),a!=null&&a.length>0)try{u.marker.symbol=_.getMarkerSymbol(a)}catch(d){Qt.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*_.DEFAULT_MARKER_SIZE),s!=null&&t!==o.plot.SeriesPlotStyle.PIE&&(u.visible=s)}getChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.HISTOGRAM:return"bar";default:return this.getPlotlyChartType(e,t,r)}}getAxisPropertyName(e){var{dh:t}=this;switch(e){case t.plot.AxisType.X:return"x";case t.plot.AxisType.Y:return"y";default:return null}}getAxisSide(e){var{dh:t}=this;switch(e){case t.plot.AxisPosition.BOTTOM:return"bottom";case t.plot.AxisPosition.TOP:return"top";case t.plot.AxisPosition.LEFT:return"left";case t.plot.AxisPosition.RIGHT:return"right";default:return}}updateFigureAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=e,s=_.getAllAxes(t),o=0;o<t.charts.length;o+=1){var u=t.charts[o],d=r==null?void 0:r(u),h=this.getChartBounds(t,u,i,a);this.updateLayoutAxes(l,u.axes,s,i,a,h,d)}this.removeStaleAxes(l,s)}getChartBounds(e,t,r,i){var a,{dh:l}=this,{cols:s,rows:o}=e,{column:u,colspan:d,row:h,rowspan:c}=t,v=u+d,g=h+c,p=1/s,m=1/o,b=_.AXIS_SIZE_PX/r,y=_.AXIS_SIZE_PX/i,C={bottom:(o-g)*m+(g<o?y/2:0),top:(o-h)*m-(h>0?y/2:0),left:u*p+(u>0?b/2:0),right:v*p-(v<s?b/2:0)},E=_.groupArray(t.axes,"position"),w=(a=E.get(l.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return w.length>0&&(r>0?C.right-=(C.right-C.left)*Math.max(0,Math.min(_.LEGEND_WIDTH_PX/r,_.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*_.DEFAULT_AXIS_SIZE),C}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=r==null?void 0:r.replace("%","%%").replace(/S{9}/g,"%9f").replace(/S{8}/g,"%8f").replace(/S{7}/g,"%7f").replace(/S{6}/g,"%6f").replace(/S{5}/g,"%5f").replace(/S{4}/g,"%4f").replace(/S{3}/g,"%3f").replace(/S{2}/g,"%2f").replace(/S{1}/g,"%1f").replace(/y{4}/g,"%Y").replace(/y{2}/g,"%y").replace(/M{4}/g,"%B").replace(/M{3}/g,"%b").replace(/M{2}/g,"%m").replace(/M{1}/g,"%-m").replace(/E{4,}/g,"%A").replace(/E{1,}/g,"%a").replace(/d{2}/g,"%d").replace(/([^%]|^)d{1}/g,"$1%-d").replace(/H{2}/g,"%H").replace(/h{2}/g,"%I").replace(/h{1}/g,"%-I").replace(/m{2}/g,"%M").replace(/s{2}/g,"%S").replace("'T'","T").replace(" z",""),l,s=e==null?void 0:e.getColumnTypeFormatter(t);return s!=null&&gi(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(l=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:l,automargin:!0}}getPlotlyAxisFormat(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,{dh:r}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return S.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=_.addTickSpacing(s,i,!0)):S.isNumberType(a)&&(s=_.getPlotlyNumberFormat(t,a,l),s=_.addTickSpacing(s,i,!1)),i.formatType===r.plot.AxisFormatType.CATEGORY&&(s?s.type="category":s={type:"category",tickformat:void 0,ticksuffix:void 0}),s}updateLayoutAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{left:0,top:0,right:1,bottom:1},s=arguments.length>6?arguments[6]:void 0,{dh:o}=this,u=i>0?Math.max(_.MIN_AXIS_SIZE,Math.min(_.AXIS_SIZE_PX/a,_.MAX_AXIS_SIZE)):_.DEFAULT_AXIS_SIZE,d=a>0?Math.max(_.MIN_AXIS_SIZE,Math.min(_.AXIS_SIZE_PX/i,_.MAX_AXIS_SIZE)):_.DEFAULT_AXIS_SIZE,h=e,c=_.groupArray(t,"position"),v=_.groupArray(t,"type"),g=[...v.keys()],p=_.groupArray(r,"type"),m=0;m<g.length;m+=1){var b=g[m],y=this.getAxisPropertyName(b);if(y!=null){var C=v.get(b),E=p.get(b),w=b===o.plot.AxisType.Y,T=w?a:i;R(C),R(E);for(var F=0;F<C.length;F+=1){var O=C[F],P=E.indexOf(O),M=_.getAxisLayoutProperty(y,P);h[M]==null&&(h[M]={});var k=h[M];if(k!=null){this.updateLayoutAxis(k,O,F,c,u,d,l);var{range:L,autorange:j}=k;if(s!=null&&L!==void 0&&(j===void 0||j===!1)){var H=s(O),[Y,te]=H(L);Qt.debug("Setting downsample range",T,Y,te),O.range(T,Y,te)}else O.range(T)}}}}}removeStaleAxes(e,t){for(var r=e,i=_.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);R(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=_.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=_.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,r,i,a,l,s){var o,{dh:u}=this,d=t.type===u.plot.AxisType.Y,h=d?l:a,c=e,v=(o=t.label)!==null&&o!==void 0?o:"";if(c.title!==void 0&&typeof c.title!="string"?c.title.text=v:c.title={text:v},t.log&&(c.type="log"),c.side=this.getAxisSide(t.position),r>0){var g,p;c.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var m=(p=i.get(t.position))!==null&&p!==void 0?p:[],b=m.indexOf(t);b>0&&(c.anchor="free",t.position===u.plot.AxisPosition.RIGHT?c.position=s.right+(b-m.length+1)*h:t.position===u.plot.AxisPosition.TOP?c.position=s.top+(b-m.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?c.position=s.bottom+(m.length-b+1)*h:t.position===u.plot.AxisPosition.LEFT&&(c.position=s.left+(m.length-b+1)*h))}else if(t.type===u.plot.AxisType.X){var y=i.get(u.plot.AxisPosition.LEFT)||[],C=i.get(u.plot.AxisPosition.RIGHT)||[],E=Math.max(s.left,s.left+(y.length-1)*l),w=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[E,w]}else if(t.type===u.plot.AxisType.Y){var T=i.get(u.plot.AxisPosition.BOTTOM)||[],F=i.get(u.plot.AxisPosition.TOP)||[],O=Math.max(s.bottom,s.bottom+(T.length-1)*a),P=Math.min(s.top-(F.length-1)*a,s.top);c.domain=[O,P]}}createBoundsFromDays(e){var t=e.map(l=>this.daysOfWeek.indexOf(l)),r=this.daysOfWeek.filter(l=>!e.includes(l)).map(l=>this.daysOfWeek.indexOf(l)),i=new Set;r.forEach(l=>{for(var s=l+1;s<l+this.daysOfWeek.length;s+=1){var o=s%this.daysOfWeek.length;if(t.includes(o)){i.add(o);break}}});var a=[];return i.forEach(l=>{for(var s=l-1;s>l-this.daysOfWeek.length;s-=1){var o=s<0?s+this.daysOfWeek.length:s;if(t.includes(o)){var u=(o+1)%7;a.push([u,l]);break}}}),a}createRangeBreakValuesFromHolidays(e,t,r){var i=[],a=[];return e.forEach(l=>{l.businessPeriods.length>0?a.push(...this.createPartialHoliday(l,t,r)):i.push(this.createFullHoliday(l,t,r))}),[{values:i},...a]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r){var i=e.date.toString(),a=["00:00"];e.businessPeriods.forEach(c=>{a.push(c.open),a.push(c.close)}),a.push("24:00");for(var l=[],s=0;s<a.length;s+=2){var o=a[s],u=a[s+1];if(o!==u){var d=[this.adjustDateForTimeZone("".concat(i," ").concat(o,":00.000000"),t,r)],h=ru*(_.periodToDecimal(u)-_.periodToDecimal(o));l.push({values:d,dvalue:h})}}return l}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,mi,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=_.titleFromSettings(e),o={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.X),position:"".concat(r.plot.AxisPosition.BOTTOM)},u={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.Y),position:"".concat(r.plot.AxisPosition.LEFT)};return{charts:[{chartType:"".concat(r.plot.ChartType.XY),axes:[o,u],series:(i??[]).map(d=>({plotStyle:"".concat(l),name:d,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:o,table:t},{type:"".concat(r.plot.SourceType.Y),columnName:d,axis:u,table:t}]}))}],title:s}}unwrapValue(e,t){var{dh:r}=this;if(e!=null){if(iu(e))return r.i18n.DateTimeFormat.format(_.DATE_FORMAT,e,t);if(au(e))return e.asNumber()}return e}wrapValue(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,{dh:i}=this;if(S.isDateType(t)&&typeof e=="string"){var a=e,l=_.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!r)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e,t){var{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticks:"outside",ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_color}},legend:{font:{color:t.legend_color}}};return e===r.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===r.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultTemplate(e){var{error_band_line_color:t,ohlc_increasing:r,ohlc_decreasing:i,title_color:a}=e;return{data:{bar:[{marker:{line:{color:"transparent"}}}],scatter:[{error_x:{color:t},error_y:{color:t}}],ohlc:[{increasing:{line:{color:r}},decreasing:{line:{color:i}}}],pie:[{outsidetextfont:{color:a}}],treemap:[{outsidetextfont:{color:a}}]},layout:this.makeDefaultLayout(e)}}makeDefaultLayout(e){var{dh:t}=this,{paper_bgcolor:r,plot_bgcolor:i,title_color:a,coastline_color:l,land_color:s,ocean_color:o,lake_color:u,river_color:d}=e,h={paper_bgcolor:r,plot_bgcolor:i,autosize:!0,colorway:_.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:yr({},_.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:yr({},_.DEFAULT_MARGIN),xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),polar:{angularaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),radialaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),bgcolor:e.plot_bgcolor},scene:{xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),zaxis:this.makeLayoutAxis(null,e)},geo:{showcoastlines:!0,showframe:!1,showland:!0,showocean:!0,showlakes:!0,showrivers:!0,bgcolor:r,coastlinecolor:l,landcolor:s,oceancolor:o,lakecolor:u,rivercolor:d}};return h.datarevision=0,h}hydrateSettings(e){var{dh:t}=this;return yr(yr({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}Ne(_,"DEFAULT_AXIS_SIZE",.15);Ne(_,"MIN_AXIS_SIZE",.025);Ne(_,"MAX_AXIS_SIZE",.2);Ne(_,"AXIS_SIZE_PX",75);Ne(_,"LEGEND_WIDTH_PX",50);Ne(_,"MAX_LEGEND_SIZE",.25);Ne(_,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));Ne(_,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");Ne(_,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));Ne(_,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));Ne(_,"SUBTITLE_LINE_HEIGHT",25);Ne(_,"DEFAULT_MARKER_SIZE",6);Ne(_,"MODE_MARKERS","markers");Ne(_,"MODE_LINES","lines");const Ae=_;function Me(n,e,t){return e=uu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uu(n){var e=du(n,"string");return typeof e=="symbol"?e:String(e)}function du(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class be{constructor(e){Me(this,"dh",void 0),Me(this,"listeners",void 0),Me(this,"formatter",void 0),Me(this,"renderOptions",void 0),Me(this,"rect",void 0),Me(this,"isDownsamplingDisabled",void 0),Me(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(be.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(be.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(be.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(be.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(be.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(be.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(be.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(be.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(be.EVENT_ERROR,{detail:e}))}}Me(be,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");Me(be,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");Me(be,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");Me(be,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");Me(be,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");Me(be,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");Me(be,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");Me(be,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");Me(be,"EVENT_ERROR","ChartModel.EVENT_ERROR");const hu=be;function bi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ci(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bi(Object(t),!0).forEach(function(r){fe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fe(n,e,t){return e=cu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cu(n){var e=vu(n,"string");return typeof e=="symbol"?e:String(e)}function vu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var we=Z.module("FigureChartModel");class Kr extends hu{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,fe(this,"chartUtils",void 0),fe(this,"dh",void 0),fe(this,"figure",void 0),fe(this,"settings",void 0),fe(this,"data",void 0),fe(this,"layout",void 0),fe(this,"seriesDataMap",void 0),fe(this,"pendingSeries",void 0),fe(this,"oneClicks",void 0),fe(this,"filterColumnMap",void 0),fe(this,"lastFilter",void 0),fe(this,"isConnected",void 0),fe(this,"seriesToProcess",void 0),fe(this,"addPendingSeries",ht(()=>{for(var a=Ae.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var d,h=l[o],c=r.figure.charts.find(v=>v.series.includes(h));r.addSeries(h,a,(d=c==null?void 0:c.showLegend)!==null&&d!==void 0?d:null),h.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},Kr.ADD_SERIES_DEBOUNCE)),fe(this,"getTimeZone",Ge((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),fe(this,"getValueTranslator",Ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),fe(this,"getValueParser",Ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),fe(this,"getRangeParser",Ge((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]})),fe(this,"getAxisRangeParser",Ge((a,l)=>s=>{var o=Ae.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new Ae(e),this.figure=t,this.settings=i,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var{charts:t}=this.figure,r=Ae.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var c=t[l],v=0;v<c.series.length;v+=1){var g=c.series[v];i.push(g.name),e.addSeries(g,r,c.showLegend)}var{axes:p,title:m}=c;if(m!=null&&m.length>0&&(t.length>1||e.figure.title!=null)){var b=p.find(M=>M.type===e.dh.plot.AxisType.X),y=p.find(M=>M.type===e.dh.plot.AxisType.Y);if(b==null||y==null)we.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,E,w,T,F=((C=(E=r.get(b.type))===null||E===void 0?void 0:E.findIndex(M=>M===b))!==null&&C!==void 0?C:0)+1,O=((w=(T=r.get(y.type))===null||T===void 0?void 0:T.findIndex(M=>M===y))!==null&&w!==void 0?w:0)+1,P={align:"center",x:.5,y:1,yshift:17,text:m,showarrow:!1,xref:"x".concat(F," domain"),yref:"y".concat(O," domain")};e.layout.annotations==null?e.layout.annotations=[P]:e.layout.annotations.push(P)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(h=>i.indexOf(h)<0),u=0;u<o.length;u+=1){var d=o[u];this.seriesDataMap.delete(d)}}addSeries(e,t,r){var i,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,Ae.getSeriesVisibility(e.name,this.settings),r,(i=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&i!==void 0?i:!0);if(this.seriesDataMap.set(e.name,s),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===l.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===l.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=Ae.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===l.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var{oneClick:o}=e,{columns:u}=o,d=0;d<u.length;d+=1)this.filterColumnMap.set(u[d].name,u[d]);this.oneClicks.push(o)}this.updateLayoutFormats()}subscribe(e){super.subscribe(e),this.listeners.length===1&&(this.initAllSeries(),this.subscribeFigure())}unsubscribe(e){super.unsubscribe(e),this.listeners.length===0&&this.unsubscribeFigure()}subscribeFigure(){if(!this.isConnected){we.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&&(we.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){we.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){we.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){we.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){we.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;we.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];we.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){we.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){we.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){we.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;we.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,r;super.setTitle(e);var i=(t=(r=(e??"").match(/<br>/g))===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,a=Ae.DEFAULT_MARGIN.t+i*Ae.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=Ci({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Ci({},this.layout.title.pad),this.layout.title.pad.t=Ae.DEFAULT_TITLE_PADDING.t+i*Ae.SUBTITLE_LINE_HEIGHT*.5)}getPlotWidth(){var e,t,r,i;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.r)!==null&&r!==void 0?r:0),0)}getPlotHeight(){var e,t,r,i;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.b)!==null&&r!==void 0?r:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,r=>this.getAxisRangeParser(r,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{we.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):we.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&xa(l,s,r)}cleanSeries(e){var{dh:t}=this,{name:r,plotStyle:i}=e,a=this.seriesDataMap.get(r);if(a!=null){if(i===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],u=0;u<l.length;u+=1)o.push(s[u]-l[u]);a.width=o}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:d,xLow:h,xHigh:c,y:v,yLow:g,yHigh:p}=a;h&&c&&h!==d&&(a.error_x=Ae.getPlotlyErrorBars(d,h,c)),g&&p&&g!==v&&(a.error_y=Ae.getPlotlyErrorBars(v,g,p))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:m,labels:b}=a;m!==void 0&&b===void 0&&(a.labels=m)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){we.warn("Trying to set a filter, but no one click!");return}we.debug("setFilter",e);for(var r=function(){var l=t.oneClicks[i],{columns:s}=l,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(u=>{var d=e.get(u);t.lastFilter.get(u)!==d&&s.find(h=>h.name===u)!=null&&l.setValueForColumn(u,d)})},i=0;i<this.oneClicks.length;i+=1)r();this.lastFilter=new Map(e)}setFigure(e){this.close(),this.figure=e,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure(),this.listeners.length>0&&this.subscribeFigure()}updateSettings(e){this.settings=e}}fe(Kr,"ADD_SERIES_DEBOUNCE",50);const Si=Kr;function yi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function on(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){yi(a,r,i,l,s,"next",o)}function s(o){yi(a,r,i,l,s,"throw",o)}l(void 0)})}}class xn{static makeModelFromSettings(e,t,r){return on(function*(){var i=yield xn.makeFigureFromSettings(e,t,r);return new Si(e,i,t)})()}static makeFigureFromSettings(e,t,r){return on(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new Ae(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return on(function*(){return new Si(e,r,t)})()}}const or=xn;function Ei(n){return n.setFigure!==void 0}function Zt(n,e,t,r){var i,a=(i=e.COMPONENT)!==null&&i!==void 0?i:e.displayName;if(a==null)throw new Error("ComponentType must have a `COMPONENT` or `displayName` attribute.");Le.useEffect(()=>{var l=n(a,e,t,r);return()=>{l()}},[e,r,t,a,n])}function wi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function fu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wi(Object(t),!0).forEach(function(r){pu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):wi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pu(n,e,t){return e=mu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mu(n){var e=gu(n,"string");return typeof e=="symbol"?e:String(e)}function gu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var bu=D.lazy(()=>Hr(()=>import("./IrisGrid-79f0f74b.js"),["./IrisGrid-79f0f74b.js","./vendor-2f94bc96.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-b36b7467.js","./index-11271fba.css","./LogPanel-68cae5f8.js","./LogPanel-68a471d6.css","./IrisGridThemeProvider-febceda5.js","./IrisGridThemeProvider-01bdf2da.css","./IrisGrid-53f96366.css"],import.meta.url)),sl=D.forwardRef((n,e)=>f.jsx(D.Suspense,{fallback:f.jsx(Kt,{}),children:f.jsx(bu,fu({ref:e},n))}));sl.displayName="LazyIrisGrid";const _n=sl;var Cn;(function(n){n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(Cn||(Cn={}));const Ti=Cn;var Cu=Object.freeze([[Ti.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Ti.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const ol={DEFAULTS:Cu};var Sn;(function(n){n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique"})(Sn||(Sn={}));const Q=Sn;var Qv=[Q.SUM,Q.ABS_SUM,Q.MIN,Q.MAX,Q.VAR,Q.AVG,Q.STD,Q.FIRST,Q.LAST,Q.COUNT_DISTINCT,Q.DISTINCT,Q.COUNT,Q.UNIQUE],Su=n=>{switch(n){default:return!1}},yu=(n,e)=>{switch(n){case Q.COUNT:case Q.FIRST:case Q.LAST:case Q.COUNT_DISTINCT:case Q.DISTINCT:case Q.UNIQUE:return!0;case Q.MIN:case Q.MAX:return S.isNumberType(e)||S.isDateType(e)||S.isTextType(e);case Q.SUM:case Q.ABS_SUM:case Q.VAR:case Q.AVG:case Q.STD:return S.isNumberType(e);case Q.SKIP:return!1}},ul=(n,e)=>n.filter(t=>t.isProxy!==!0&&yu(e,t.type)),Eu=(n,e,t,r)=>ul(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const Pi={isRollupOperation:Su,filterValidColumns:ul,getOperationColumnNames:Eu};function wu(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function ir(n,e,t){return e=Tu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tu(n){var e=Pu(n,"string");return typeof e=="symbol"?e:String(e)}function Pu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yn;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(yn||(yn={}));class x{static normalize(e,t,r,i){var a=e,l=t,s=r,o=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),l!=null&&o!=null&&o<l&&(l=o,o=t),[a,l,s,o]}static makeNormalized(e,t,r,i){return new x(...x.normalize(e,t,r,i))}static makeCell(e,t){return new x(e,t,e,t)}static makeColumn(e){return new x(e,null,e,null)}static makeRow(e){return new x(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],l=t.length-1;l>i;l-=1){var s=t[l];if(a.contains(s))t.splice(l,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(l,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:o,endRow:u}=a,d=x.minOrNull(a.startColumn,s.startColumn),h=x.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new x(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=x.minOrNull(a.startRow,s.startRow),p=x.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new x(c,g,v,p),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){var r,i,a,l,s,o;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:c}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,h=h!=null&&t.endColumn!=null?Math.min(h,t.endColumn):(i=h)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,c=c!=null&&t.endRow!=null?Math.min(c,t.endRow):(l=c)!==null&&l!==void 0?l:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((o=c)!==null&&o!==void 0?o:-1)?null:new x(u,d,h,c)}static subtractFromRange(e,t){var r=[],i=x.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new x(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new x(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new x(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new x(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...x.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=x.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,l,s;return x.isBounded(e)?e:new x((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(l=e.endColumn)!==null&&l!==void 0?l:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>x.boundedRange(i,t,r))}static offset(e,t,r){return new x(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:x.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(c=>c.containsCell(t,r)),a>=0)){var l=e[a],s=l.nextCell(t,r,i);if(s!=null)return s}switch(i){case x.SELECTION_DIRECTION.DOWN:case x.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case x.SELECTION_DIRECTION.LEFT:case x.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,h=e[d];return h.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,l,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=r.endColumn)!==null&&l!==void 0?l:NaN)-((s=r.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:x.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){ir(this,"startColumn",void 0),ir(this,"startRow",void 0),ir(this,"endColumn",void 0),ir(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=r,this.endRow=i}equals(e){return this.startColumn===e.startColumn&&this.startRow===e.startRow&&this.endColumn===e.endColumn&&this.endRow===e.endRow}contains(e){return(this.startColumn==null||e.startColumn!=null&&this.startColumn<=e.startColumn)&&(this.startRow==null||e.startRow!=null&&this.startRow<=e.startRow)&&(this.endColumn==null||e.endColumn!=null&&this.endColumn>=e.endColumn)&&(this.endRow==null||e.endRow!=null&&this.endRow>=e.endRow)}containsCell(e,t){return e==null||t==null?!1:(this.startColumn==null||this.startColumn<=e)&&(this.endColumn==null||this.endColumn>=e)&&(this.startRow==null||this.startRow<=t)&&(this.endRow==null||this.endRow>=t)}touches(e){return x.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&x.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return x.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x.SELECTION_DIRECTION.DOWN;if(!x.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case x.SELECTION_DIRECTION.DOWN:case x.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case x.SELECTION_DIRECTION.LEFT:case x.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!x.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:l,endRow:s}=this;switch(r){case x.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 x.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 x.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 x.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>l)return{column:a,row:Math.min(t-1,s)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:x.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,r),r+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}ir(x,"SELECTION_DIRECTION",yn);function Nu(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function Er(n){return Nu(n)&&n[0]!=null&&n[1]!=null}function Ni(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function wr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ni(Object(t),!0).forEach(function(r){dl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ni(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function dl(n,e,t){return e=Du(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Du(n){var e=Ou(n,"string");return typeof e=="symbol"?e:String(e)}function Ou(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Zv(n){return(n==null?void 0:n.href)!==void 0}class G{static getGridPointFromXY(e,t,r){var i=G.getColumnAtX(e,r),a=G.getRowAtY(t,r),l=G.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=G.getGridPointFromXY(e,t,r),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=r,c=i!==null?h.get(i):null,v=a!==null?d.get(a):null,g=a!==null?o.get(a):null,p=i!==null?u.get(i):null,m=a!==null?l.get(a):null,b=i!==null?s.get(i):null;return{row:i,column:a,modelRow:c??null,modelColumn:v??null,left:g??null,top:p??null,columnWidth:m??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var r=G.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return et(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=G.iterateFloatingStart(e,r,i);return a!==void 0?a:G.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,l){var s=Math.max(e,r),o=Math.min(t,a-i-1),u=G.iterateFloating(r,i,a,l);if(u!==void 0)return u;for(var d=s;d<=o;d+=1)if(u=l(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=r.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,r,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:G.iterateFloating(r,i,t,c=>{if(G.isInItem(c,l,s,e))return c});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(G.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:l,visibleColumns:s,allColumnXs:o,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,l,s,o,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,l,s,o)}static getNextShownItem(e,t,r,i){var a=r.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=r[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return G.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return G.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:c}=r,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(c*l<t||!v||g<=0)return null;for(var p=e-a,m=g*.5,b=!1,y=s.length-1;y>=0;y-=1){var C,E,w=s[y],T=(C=d.get(w))!==null&&C!==void 0?C:0,F=(E=h.get(w))!==null&&E!==void 0?E:0,O=F===0;if(!b||!O){var P=T+F;O?P+=m:b&&(P-=m);var M=P-m,k=P+m;if(M<=p&&p<=k)return w;b=O}}b=!1;for(var L=u.length-1;L>=0;L-=1){var j,H,Y=u[L],te=(j=d.get(Y))!==null&&j!==void 0?j:0,re=(H=h.get(Y))!==null&&H!==void 0?H:0,ae=re===0;if(te<o-re)return null;if(!b||!ae){var le=te+re;ae?le+=m:b&&(le-=m);var pe=le-m,I=le+m;if(pe<=p&&p<=I)return Y;b=ae}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return G.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!G.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=r[l];if(!G.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return G.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var c=t-l,v=h*.5,g=!1,p=s.length-1;p>=0;p-=1){var m,b,y=s[p],C=(m=o.get(y))!==null&&m!==void 0?m:0,E=(b=u.get(y))!==null&&b!==void 0?b:0,w=E===0;if(!g||!w){var T=C+E;w?T+=v:g&&(T-=v);var F=T-v,O=T+v;if(F<=c&&c<=O)return y;g=w}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return G.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return G.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return[...r];var i=[...r],a=i[i.length-1];return a!=null&&!Er(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=wr(wr({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return G.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var l=[...r],s=l[l.length-1];s!=null&&Er(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=wr(wr({},s),{},{to:a}):l.push({from:e,to:a});var o=l[l.length-1];return Er(o.from)&&o.from[0]===o.to&&l.pop(),l}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?G.moveRange(e,t,r,i):G.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=r[s],h=1,c;Er(u)?(h=u[1]-u[0]+1,[c]=u):c=u;for(var v=i?d:c,g=v+h-1,p=i?c:d,m=p-v,b=[],y=function(){var w,T,F=(w=a[C][0])!==null&&w!==void 0?w:Number.NEGATIVE_INFINITY,O=(T=a[C][1])!==null&&T!==void 0?T:Number.POSITIVE_INFINITY,P,M=[[F,v-1],[v,g],[g+1,O]].map(k=>{var[L,j]=k;return[Math.max(L,F),Math.min(j,O)]}).filter(k=>{var[L,j]=k;return L<=j}).map(k=>{var[L,j]=k;return v<=L&&g>=j?(P=[L+m,j+m],P):g<L?[L-h,j-h]:k}).map(k=>{var[L,j]=k;return p>L&&p<=j?[[L,p-1],[p+h,j+h]]:k===P?[k]:p<=L?[[L+h,j+h]]:[k]}).flat();b.push(...M)},C=0;C<a.length;C+=1)y();a=b.map(E=>{var[w,T]=E;return[Number.isFinite(w)?w:null,Number.isFinite(T)?T:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)l();return a}static translateRange(e,t,r,i){for(var a=G.applyItemMoves(e.startColumn,e.endColumn,t,i),l=G.applyItemMoves(e.startRow,e.endRow,r,i),s=[],o=0;o<a.length;o+=1)for(var u=a[o],d=0;d<l.length;d+=1){var h=l[d];s.push(new x(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=G.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>G.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return G.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee;return G.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=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,r));return i}static getVisibleRangeIndexes(e,t,r){return G.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=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,r));return i}static getVisibleIndex(e,t){var r=G.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>G.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return G.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=G.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:c,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:p,columnCount:m,rowCount:b}=e,y=i,C=a,E=l,w=s;return r!=null&&(r>d&&(y+=c),r<m-h&&(E-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(w-=p)),{x1:y,y1:C,x2:E,y2:w}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!G.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=r):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(G.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],l=i[1];r===0?t.push([a,l]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],l):t.push([a,l])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:c}=t,v=et(s+r,s,u-h),g=et(s+a,s,u-h),p=et(o+i,o,d-c),m=et(o+l,o,d-c);return{x1:v,y1:p,x2:g,y2:m,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:c,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:p,treeHorizontalPadding:m}=l,b=It(c,r),y=It(v,t),C=a.textAlignForCell(y,b),E=It(o,t),w=It(d,r),T=It(u,t),F=It(h,r),O=t===s,P=0;wu(a)&&a.hasExpandableRows&&O&&(P=p*(a.depthForRow(r)+1)+m);var M=T-P,k=E+g,L=w+F*.5;return C==="right"?k=E+M-g:C==="center"&&(k=E+M*.5),k+=P,{width:M-g*2,x:k,y:L}}static findTokensWithProtocolInText(e){var t=ls(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}dl(G,"PIXELS_PER_LINE",100/3);const Di=G;function Oi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Fi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Oi(Object(t),!0).forEach(function(r){Fu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Oi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Fu(n,e,t){return e=Mu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mu(n){var e=Iu(n,"string");return typeof e=="symbol"?e:String(e)}function Iu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ru=(n,e)=>{var t=!1,r=Ge(n,Fi(Fi({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const En=Ru;function Lu(n,e,t){return e=Au(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Au(n){var e=ku(n,"string");return typeof e=="symbol"?e:String(e)}function ku(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var un=5e3;class xu extends ss{constructor(){super(...arguments),Lu(this,"getCachedTokensInText",En((e,t)=>{if(t>=e.length)return Di.findTokensWithProtocolInText(e);var r=e.slice(t-1,un).search(/\s/),i=t+r;r===-1&&(i=Math.min(un,e.length));var a=e.substring(0,i);return Di.findTokensWithProtocolInText(a)}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:un,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const _u=xu;function wn(n,e,t){return e=ju(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ju(n){var e=Vu(n,"string");return typeof e=="symbol"?e:String(e)}function Vu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Tt=[],$u=new Set;class hl extends _u{constructor(e){super(),wn(this,"dh",void 0),wn(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,r){super.addEventListener(e,t,r),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,r){super.removeEventListener(e,t,r),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get groupedColumns(){return Tt}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 Tt}get initialMovedRows(){return Tt}get initialColumnHeaderGroups(){return Tt}get layoutHints(){return null}get frontColumns(){return Tt}get backColumns(){return Tt}get keyColumnSet(){return $u}get frozenColumns(){return Tt}isColumnFrozen(e){return!1}isColumnSortable(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}get isViewportPending(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}dataBarOptionsForCell(e,t,r){throw new Error("Method not implemented.")}}wn(hl,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED",VIEWPORT_UPDATED:"VIEWPORT_UPDATED"}));const K=hl;function bt(n,e,t){return e=Hu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hu(n){var e=Gu(n,"string");return typeof e=="symbol"?e:String(e)}function Gu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Uu=Z.module("ColumnHeaderGroup");function dn(n){return n instanceof pr}class pr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;bt(this,"name",void 0),bt(this,"children",void 0),bt(this,"depth",void 0),bt(this,"parent",void 0),bt(this,"color",void 0),bt(this,"childIndexes",void 0),bt(this,"getVisibleRange",B(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&&Uu.warn("Column header group ".concat(this.name," is not contiguous")),[h,c]})),this.name=t,this.children=r,this.color=i??void 0,this.depth=a,this.childIndexes=l,this.parent=s}setParent(e){this.parent=e}addChildren(e){var t=new Set(this.children.concat(e));this.children=[...t]}removeChildren(e){var t=new Set(this.children);e.forEach(r=>t.delete(r)),this.children=[...t]}get isNew(){return this.name.startsWith(pr.NEW_GROUP_PREFIX)}}bt(pr,"NEW_GROUP_PREFIX",":newGroup");function it(n){return(n==null?void 0:n.isPartitionRequired)!==void 0&&(n==null?void 0:n.partitionColumns)!==void 0&&(n==null?void 0:n.partitionKeysTable)!==void 0&&(n==null?void 0:n.partitionMergedTable)!==void 0&&(n==null?void 0:n.partitionTable)!==void 0}function Jv(n){return it(n)&&n.partitionConfig!==void 0}var Bu=["selectedValues"],Wu=["selectedValues"];function Mi(n,e){if(n==null)return{};var t=zu(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function zu(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function Ii(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function He(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ii(Object(t),!0).forEach(function(r){Tn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ii(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Tn(n,e,t){return e=qu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qu(n){var e=Ku(n,"string");return typeof e=="symbol"?e:String(e)}function Ku(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Jt=Z.module("IrisGridUtils");function ef(n){return n.partition!==void 0}function Ri(n){return Array.isArray(n.partitions)}function ct(n,e){return n>=0&&n<e.length}function Yu(n){return(n==null?void 0:n.asDate)!=null}class ne{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:l}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(o=>{var{to:u,from:d}=o;return ct(u,s)&&(typeof d=="number"&&ct(d,s)||Array.isArray(d)&&ct(d[0],s)&&ct(d[1],s))}).map(o=>{var{to:u,from:d}=o;return{to:s[u].name,from:Array.isArray(d)?[s[d[0]].name,s[d[1]].name]:s[d].name}}),movedRows:[...l]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:l,movedRows:s}=t,{columns:o}=e,u=ne.parseCustomColumnNames(r),d=o.map(h=>{var{name:c}=h;return c}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...l].map(h=>{var{to:c,from:v}=h,g=p=>typeof p=="string"?d.findIndex(m=>m===p):p;return{to:g(c),from:Array.isArray(v)?[g(v[0]),g(v[1])]:g(v)}}).filter(h=>{var{to:c,from:v}=h;return ct(c,d)&&(typeof v=="number"&&ct(v,d)||Array.isArray(v)&&ct(v[0],d)&&ct(v[1],d))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partitions:i,advancedSettings:a}=t;return{isSelectingPartition:r,partitions:i,advancedSettings:[...a]}}static hydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,advancedSettings:i}=t,a=[];return Ri(t)?a=t.partitions:t.partition!=null&&(a=[t.partition]),{isSelectingPartition:r,partitions:a,advancedSettings:new Map([...ol.DEFAULTS,...i])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[r,i]=t,{text:a}=i;return[r,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:r,isAbs:i,direction:a}=t;return{column:r.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:r,irisGridState:i}=e,a=Ri(r)?r.partitions:[r.partition],{advancedFilters:l,quickFilters:s,sorts:o}=i;return{advancedFilters:l,inputFilters:t,partitions:a,quickFilters:s,sorts:o}}static getInputFiltersForColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.filter(r=>{var{name:i,type:a}=r;return e.find(l=>{var{name:s,type:o}=l;return s===i&&o===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],l=e.get(a);(l==null?void 0:l.filter)!=null&&t.push(l.filter)}return t}static getHiddenColumns(e){return[...e.entries()].filter(t=>{var[,r]=t;return r===0}).map(t=>{var[r]=t;return r})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var r=ne.parseCustomColumnNames(e),i=ne.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return r.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=r[s],d=i.findIndex(b=>b===u),h=[],c=0;c<a.length;c+=1){var v=a[c],g=He({},v),[p,m]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<p&&(p-=1),d<=m&&(m-=1),p<=m&&p!==g.to&&(p===m?h.push(He(He({},g),{},{from:p})):h.push(He(He({},g),{},{from:[p,m]}))),d=G.applyItemMoves(d,d,[v])[0][0]}a=h,i.splice(i.findIndex(b=>b===u),1)},s=0;s<r.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var l=[],s=t;s<=r;s+=1){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s>=0&&l.length<r;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s<e.length&&l.length<r;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var l=e.find(s=>{var{name:o}=s;return o===a});l!=null&&!t.includes(l)&&i.push(l)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(!(t==null||r==null)){var o=ne.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=ne.getPrevVisibleColumns(e,t-1,u,i,a),h=ne.getNextVisibleColumns(e,r+1,u,i,a),c=[...d,...o,...h];return ne.getColumnsToFetch(e,c,l)}}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,r=0;r<e.length;r+=1){var i=e[r],a="".concat(i.startRow,":").concat(i.endRow),l="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(l)}for(var s=[...t.keys()],o=t.get(s[0]).sort().join(","),u=1;u<s.length;u+=1)if(t.get(s[u]).sort().join(",")!==o)return!1;return!0}static isValidIndex(e){return!Number.isInteger(e)||typeof e!="number"?!1:e>=0}static columnsFromRanges(e,t){if(e==null||e.length===0)return[];if(e[0].startColumn===null&&e[0].endColumn===null)return[...t];for(var r=new Set,i=0;i<e.length;i+=1){var a=e[i];R(a.startColumn),R(a.endColumn);for(var l=(s=a.startColumn)!==null&&s!==void 0?s:0;l<=((o=a.endColumn)!==null&&o!==void 0?o:t.length-1);l+=1){var s,o;r.add(l)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var l=r[a],s=[],o=0;o<t.length;o+=1){var u=t[o],d=l.get(u);s.push(d)}i.push(s)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:l=[],showConstituents:s=!0,showNonAggregatedColumns:o=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},h=d.map(b=>{var{operation:y,selected:C,invert:E}=b;return Pi.isRollupOperation(y)?[]:Pi.getOperationColumnNames(e,y,C,E)}),c={},v=0;v<d.length;v+=1)c[d[v].operation]=h[v];if(o){var g=new Set(e.map(b=>b.name).filter(b=>!l.includes(b)));if(h.forEach(b=>{b.forEach(y=>g.delete(y))}),g.size>0){var p,m=(p=c[Q.FIRST])!==null&&p!==void 0?p:[];c[Q.FIRST]=[...m,...g]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:c}}static getPendingErrors(e){e.forEach((t,r)=>{if(!ne.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!ne.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(Jt.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=e.find(i=>{var{name:a}=i;return a===t});return r==null&&Jt.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),r}static changeFilterColumnNamesToIndexes(e,t){return t.map(r=>{var{name:i,filter:a}=r,l=e.findIndex(s=>s.name===i);return l<0?null:[l,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((d,h)=>d.operator==="eq"&&h.operator!=="eq"?1:d.operator!=="eq"&&h.operator==="eq"?-1:d.startColumnIndex-h.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:l,operator:s}=t[i];if(l!==void 0){var o="";s!==void 0&&(l==null&&s==="eq"?o="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?o="*":o=S.getFilterOperatorString(s)));var u="".concat(o).concat(a);s==="startsWith"&&(u="".concat(a).concat(o)),e!=null&&l!==null&&S.isCharType(e)&&(u="".concat(o).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=s==="eq"?" || ":" && "),r+=u}}return r}static parseColumnHeaderGroups(e,t){var r=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:r,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(R(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 p=[],m=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),E=e.getColumnIndexByName(y);if(C){var w=u(C);p.push(...w.childIndexes),m=Math.max(m,w.depth+1)}else if(E!=null)p.push(E),m=Math.max(m,1);else throw new Error("Unknown child ".concat(y," in group ").concat(v))});var b=new pr(He(He({},h),{},{name:v,children:h.children,depth:m,childIndexes:p.flat()}));return a.set(v,b),(c=h.children)===null||c===void 0||c.forEach(y=>i.set(y,b)),r=Math.max(r,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:r,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)&&Yu(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){Tn(this,"dh",void 0),Tn(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),In(this)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:ee,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:l,metrics:s,quickFilters:o,customColumns:u,conditionalFormats:d=ee,reverseType:h,rollupConfig:c=void 0,showSearchBar:v,searchValue:g,selectDistinctColumns:p=ee,selectedSearchColumns:m,sorts:b,invertSearchColumns:y,pendingDataMap:C=Mr,frozenColumns:E,columnHeaderGroups:w,partitionConfig:T=void 0}=t;R(s);var{userColumnWidths:F,userRowHeights:O}=s,{columns:P}=e,M=it(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(P,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:ne.dehydrateQuickFilters(o),sorts:ne.dehydrateSort(b),userColumnWidths:[...F].filter(k=>{var[L]=k;return L!=null&&L>=0&&L<P.length}).map(k=>{var[L,j]=k;return[P[L].name,j]}),userRowHeights:[...O],customColumns:[...u],conditionalFormats:[...d],reverseType:h,rollupConfig:c,showSearchBar:v,searchValue:g,selectDistinctColumns:[...p],selectedSearchColumns:m,invertSearchColumns:y,pendingDataMap:this.dehydratePendingDataMap(P,C),frozenColumns:E,columnHeaderGroups:w==null?void 0:w.map(k=>{var L;return{name:k.name,children:k.children,color:(L=k.color)!==null&&L!==void 0?L:null}}),partitionConfig:this.dehydratePartitionConfig(M,T)}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:l={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:o,quickFilters:u,sorts:d,customColumns:h,conditionalFormats:c,userColumnWidths:v,userRowHeights:g,reverseType:p,rollupConfig:m=void 0,showSearchBar:b,searchValue:y,selectDistinctColumns:C,selectedSearchColumns:E,invertSearchColumns:w=!0,pendingDataMap:T=[],frozenColumns:F,columnHeaderGroups:O,partitionConfig:P}=t,{columns:M,formatter:k}=e,L=it(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(M,a,k.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(M,u,k.timeZone),sorts:this.hydrateSort(M,d),userColumnWidths:new Map(v.map(j=>{var[H,Y]=j;return typeof H=="string"||H instanceof String?[M.findIndex(te=>{var{name:re}=te;return re===H}),Y]:[H,Y]}).filter(j=>{var[H]=j;return H!=null&&H>=0&&H<M.length})),customColumns:h,conditionalFormats:c,userRowHeights:new Map(g),reverseType:p,rollupConfig:m,showSearchBar:b,searchValue:y,selectDistinctColumns:C,selectedSearchColumns:E,invertSearchColumns:w,pendingDataMap:this.hydratePendingDataMap(M,T),frozenColumns:F,columnHeaderGroups:ne.parseColumnHeaderGroups(e,(r=O??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(L,P)}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=ne.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){Jt.error("hydrateQuickFilters error with",o,h)}return[l,{text:o,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,l=ne.getColumn(e,i);R(l);var s=this.dehydrateAdvancedFilterOptions(l,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,o=ne.getColumn(e,l);R(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=ne.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(c){Jt.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Mi(t,Bu);return He({selectedValues:r==null?void 0:r.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Mi(t,Wu);return He({selectedValues:r==null?void 0:r.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].map(l=>{var[s,o]=l;return[e[s].name,this.dehydrateValue(o,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(l=>{var{name:s}=l;return s===a})),r.get(a));return new Map(t.map(a=>{var[l,{data:s}]=a;return[l,{data:new Map(s.map(o=>{var u,[d,h]=o,c=i(d);return R(c),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[c].type)]}))}]}))}dehydratePartitionConfig(e,t){return t==null?t:He(He({},t),{},{partitions:t.partitions.map((r,i)=>this.dehydrateValue(r,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:He(He({},t),{},{partitions:t.partitions.map((r,i)=>this.hydrateValue(r,e[i].type))})}dehydrateValue(e,t){return S.isDateType(t)?this.dehydrateDateTime(e):S.isLongType(t)?ne.dehydrateLong(e):e}hydrateValue(e,t){return S.isDateType(t)?this.hydrateDateTime(e):S.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(se.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(se.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh:r}=this;return t.map(i=>{var{column:a,isAbs:l,direction:s}=i;if(s===S.sortDirection.reverse)return r.Table.reverse();var o=typeof a=="string"?ne.getColumnByName(e,a):ne.getColumn(e,a);if(o!=null){var u=o.sort();return l&&(u=u.abs()),s===S.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(i=>i!=null&&i.direction!==S.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=ne.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=ne.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),o=[];t.sorts&&(o=this.hydrateSort(i,t.sorts));var u=[...a,...l],{partitions:d,partitionColumns:h}=t;if(d&&d.length&&h&&h!==null&&h!==void 0&&h.length){for(var c=h.map(p=>ne.getColumnByName(i,p)),v=0;v<c.length;v+=1)if(c[v]!==void 0&&d[v]!=null){var g=c[v].filter().eq(this.dh.FilterValue.ofString(d[v]));u=[g,...u]}}u=[...s,...u],e.applyFilter(u),e.applySort(o)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t.map(i=>{var{name:a,type:l,value:s}=i,o=e.find(u=>{var{name:d,type:h}=u;return d===a&&h===l});if(o)try{return this.tableUtils.makeQuickFilter(o,s,r)}catch(u){Jt.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(R(i.startRow),R(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return R(a),R(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}}const ue=ne;function Li(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Xu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Li(Object(t),!0).forEach(function(r){_r(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Li(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function _r(n,e,t){return e=Qu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qu(n){var e=Zu(n,"string");return typeof e=="symbol"?e:String(e)}function Zu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class cl extends D.Component{constructor(e){super(e),_r(this,"container",void 0),_r(this,"editor",void 0),this.handleResize=this.handleResize.bind(this),this.container=null,this.state={}}componentDidMount(){this.initEditor(),window.addEventListener("resize",this.handleResize)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),this.destroyEditor()}setLanguage(e){if(this.editor){var t=this.editor.getModel();R(t),ei.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=Xu({copyWithSyntaxHighlighting:!1,fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"python",lineNumbersMinChars:3,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabCompletion:"on",value:"",wordWrap:"off",links:!0,autoClosingBrackets:"beforeWhitespace"},t),R(this.container),this.editor=ei.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[os.CtrlCmd|us.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),ds.registerLinkProvider("plaintext",{provideLinks:Pt.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;R(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return f.jsx("div",{className:Re("editor-container",e),ref:t=>{this.container=t}})}}_r(cl,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});const Ju=cl;var ed={groovy:"Groovy",python:"Python",scala:"Scala"};class td{static normalizeScriptLanguage(e){return ed[e]||null}static getDisabledRunTooltip(e,t,r,i){return e?t?null:"".concat(r," doesn't match the session language – ").concat(i," disabled"):"Console session not connected – ".concat(i," disabled")}static outdentCode(e){var t=e.split(`
1
+ import{r as D,J as f,M as Re,L as is,O as Le,b7 as as,N as Ie,ae as et,_ as Hr,b8 as xa,ab as ht,aa as Ge,b9 as ls,ba as ss,bb as B,bc as ei,bd as os,be as us,bf as ds,b6 as ti,bg as Ar,ac as W,bh as yt,I as We,aI as hs,aH as ri,R as cs,Q as _a,S as vs}from"./vendor-2f94bc96.js";import{b2 as ja,B as fs,a4 as $t,a5 as xe,a0 as ps,b3 as Xe,b4 as sn,a1 as kr,a2 as ms,a3 as gs,E as ee,b5 as Mr,aT as Pt,c as ni,b6 as ut,b7 as bs,b8 as ie,as as $,az as Va,w as Ye,b9 as Wt,aP as Et,ba as Ot,y as X,bb as $a,bc as Dn,bd as Se,be as Gr,aI as Ha,bf as On,bg as Ur,bh as Br,bi as Wr,bj as zr,N as hr,bk as Fn,bl as Ga,bm as Cs,aw as Ss,bn as Ua,J as ys,P as Oe,aG as Es,bo as ws,aU as $e,bp as oe,bq as xr,G as pn,T as mn,D as Ba,br as Ts,x as ii,bs as Ps,bt as Ns,bu as Wa,bv as ai,aV as Ds,u as zt,$ as Os,bw as za,a8 as wt,aD as qt,at as ge,a_ as Ir,bx as Fs,ay as Ms,b0 as qa,b1 as Ka,a$ as Ya,a6 as Xa,aj as Is,ah as Rs,a7 as Ls,aE as As,by as ks,bz as xs,bA as _s}from"./LogPanel-891b65b4.js";import{L as Z,Z as js,_ as Qa,T as Vs,$ as $s,a0 as Hs,l as R,a1 as Gs,a as Kt,a2 as It,e as Us,a3 as Bs,a4 as Mn,a5 as Za,a6 as Ws,a7 as Ja,v as qr,a8 as el,a9 as li,aa as si,ab as zs,ac as qs,M as Ks,s as Ys,b as Xs,ad as Qs,ae as Zs,af as Js,ag as eo,ah as to,c as oi,ai as ro,aj as no,ak as io,al as ao,am as lo,an as so}from"./index-78e71855.js";function In(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=oo(n,e);t.forEach(r=>{n[r]=n[r].bind(n)})}function oo(n,e){for(var t=new Set,r=n,i=0;r!=null&&r!==Object.prototype&&(i<=1||e);){for(var a of Object.getOwnPropertyNames(r)){var l;a!=="constructor"&&typeof((l=Object.getOwnPropertyDescriptor(r,a))===null||l===void 0?void 0:l.value)=="function"&&t.add(a)}r=Object.getPrototypeOf(r),i+=1}return[...t.keys()]}var uo=3500,ho=Z.module("useCopyToClipboard");function co(){var[n,e]=D.useState(!1),t=D.useRef(null),r=D.useCallback(i=>{ja(i).then(()=>{e(!0)}).catch(a=>ho.error("Unable to copy ".concat(i),`
2
+ `,a))},[]);return D.useEffect(()=>(t.current&&clearTimeout(t.current),n&&(t.current=setTimeout(()=>{e(!1)},uo)),()=>{t.current&&clearTimeout(t.current)}),[n]),[n,r]}function Rn(n){var{className:e,isFlipped:t,children:r,"data-testid":i}=n,a=u=>{if(r.length!==2)throw new Error("CardFlip requires 2 children to function");return r[u]},l=D.useRef(null),s=D.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=D.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return D.useEffect(function(){if(!l.current)throw Error("ref undefined");l.current.addEventListener("transitionstart",s);var d=l.current;return function(){if(d!=null)return d.removeEventListener("transitionstart",s)}},[s]),f.jsxs("div",{className:Re(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[f.jsx("div",{className:"card-flip--back",children:a(0)}),f.jsx("div",{ref:l,className:"card-flip--front",onTransitionEnd:o,children:a(1)})]})}function vo(n){var{copy:e,kind:t="ghost",tooltip:r="Copy",className:i,style:a,"data-testid":l,children:s}=n,[o,u]=co();return f.jsx(fs,{kind:t,className:i,style:a,"data-testid":l,icon:o?js:Qa,tooltip:o?"Copied":r,onClick:()=>{u(typeof e=="function"?e():e)},children:s})}var fo=["className","timeout"];function ui(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function po(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ui(Object(t),!0).forEach(function(r){mo(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ui(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function mo(n,e,t){return e=go(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function go(n){var e=bo(n,"string");return typeof e=="symbol"?e:String(e)}function bo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Co(n,e){if(n==null)return{};var t=So(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function So(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function gn(n){var{className:e,timeout:t=Vs.transitionMs}=n,r=Co(n,fo);return f.jsx(is,po({timeout:t,classNames:Re("fade",e)},r))}var Ln=Le.forwardRef((n,e)=>{var{children:t,className:r,disabled:i,id:a,isLinked:l,isLinkedSource:s,isInvalid:o,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,"data-testid":v}=n,{UNSAFE_className:g}=as({},"button");return f.jsxs("button",{ref:e,type:"button",className:Re("btn-socketed",{"btn-socketed-linked":l!==void 0&&l||s},{"btn-socketed-linked-source":s},{"is-invalid":o},r,g),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,disabled:i,"data-testid":v,children:[t,f.jsx(Ie,{icon:$s,className:"linked btn-socketed-icon",transform:"down-1"}),f.jsx(Ie,{icon:Hs,className:"is-invalid btn-socketed-icon"})]})});Ln.displayName="SocketedButton";Ln.defaultProps={children:void 0,className:"",disabled:!1,id:void 0,isLinked:!1,isLinkedSource:!1,isInvalid:!1,onClick:void 0,onMouseEnter:void 0,onMouseLeave:void 0,style:void 0,"data-testid":void 0};const tl=Ln;class yo extends $t{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}const Eo=yo;class wo extends $t{format(e){return String.fromCharCode(e)}}const To=wo;class Po extends $t{format(e){return"".concat(e)}}const No=Po;class Do extends $t{format(e){return e}}function di(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function hi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?di(Object(t),!0).forEach(function(r){An(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):di(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function An(n,e,t){return e=Oo(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Oo(n){var e=Fo(n,"string");return typeof e=="symbol"?e:String(e)}function Fo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Mo=/\s*(\d{4})([-./](\d{1,2}|[a-z]+))?([-./](\d{1,2}))?([tT\s](\d{2})([:](\d{2}))?([:](\d{2}))?([.](\d{1,9}))?)?(.*)/;class se{static makeDateWrapper(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:0,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:0,u=arguments.length>8&&arguments[8]!==void 0?arguments[8]:0;if(!t)throw new Error("No timezone provided");var d="".concat(r).padStart(4,"0"),h="".concat(i+1).padStart(2,"0"),c="".concat(a).padStart(2,"0"),v="".concat(l).padStart(2,"0"),g="".concat(s).padStart(2,"0"),p="".concat(o).padStart(2,"0"),m="".concat(u).padStart(9,"0"),b="".concat(d,"-").concat(h,"-").concat(c," ").concat(v,":").concat(g,":").concat(p,".").concat(m);return e.i18n.DateTimeFormat.parse(se.FULL_DATE_FORMAT,b,e.i18n.TimeZone.getTimeZone(t))}static getNextNanos(e){var t=parseInt(e,10),r="0".repeat(9-e.length),i="".concat(t+1).concat(r);return parseInt(i,10)}static getNextDate(e,t,r,i){var{year:a,month:l,date:s,hours:o,minutes:u,seconds:d,nanos:h}=r;if(t.nanos!=null){if(t.nanos.length===9)return null;h=se.getNextNanos(t.nanos),h>999999999&&(d+=1,h=0)}else t.seconds!=null?d+=1:t.minutes!=null?u+=1:t.hours!=null?o+=1:t.date!=null?s+=1:t.month!=null?l+=1:a+=1;var c=new Date(a,l,s,o,u,d);return se.makeDateWrapper(e,i,c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),h)}static parseMonth(e){var t=parseInt(e,10);if(!Number.isNaN(t))return t>=1&&t<=12?t-1:NaN;var r=e.trim().toLowerCase();if(r.length>=3){for(var i=0;i<se.months.length;i+=1)if(se.months[i].startsWith(r))return i}return NaN}static parseDateValues(e,t,r,i,a,l,s){var o=parseInt(e,10),u=t!=null?this.parseMonth(t):0,d=r!=null?parseInt(r,10):1,h=i!=null?parseInt(i,10):0,c=a!=null?parseInt(a,10):0,v=l!=null?parseInt(l,10):0,g=s!=null?parseInt(s.padEnd(9,"0"),10):0;return Number.isNaN(o)||Number.isNaN(u)||Number.isNaN(d)||Number.isNaN(h)||Number.isNaN(c)||Number.isNaN(v)||Number.isNaN(g)?null:{year:o,month:u,date:d,hours:h,minutes:c,seconds:v,nanos:g}}static parseDateTimeString(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=Mo.exec(e);if(r==null)throw new Error("Unexpected date string: ".concat(e));var[,i,,a,,l,,s,,o,,u,,d,h]=r;if(!t&&h!=null&&h.length>0)throw new Error("Unexpected characters after date string '".concat(e,"': ").concat(h));var c={year:i,month:a,date:l,hours:s,minutes:o,seconds:u,nanos:d};return t?hi(hi({},c),{},{overflow:h}):c}static parseDateRange(e,t,r){var i=t.trim().toLowerCase();if(i.length===0)throw new Error("Cannot parse date range from empty string");if(i==="null")return[null,null];if(i==="today"){var a=new Date(Date.now()),l=se.makeDateWrapper(e,r,a.getFullYear(),a.getMonth(),a.getDate()),s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1),o=se.makeDateWrapper(e,r,s.getFullYear(),s.getMonth(),s.getDate());return[l,o]}if(i==="yesterday"){var u=new Date(Date.now()),d=new Date(u.getFullYear(),u.getMonth(),u.getDate()-1),h=se.makeDateWrapper(e,r,d.getFullYear(),d.getMonth(),d.getDate()),c=se.makeDateWrapper(e,r,u.getFullYear(),u.getMonth(),u.getDate());return[h,c]}if(i==="now"){var v=new Date(Date.now()),g=e.DateWrapper.ofJsDate(v);return[g,null]}var p=se.parseDateTimeString(i);if(p.year==null&&p.month==null&&p.date==null)throw new Error("Unable to extract year, month, or day ".concat(i));var m=se.parseDateValues(p.year,p.month,p.date,p.hours,p.minutes,p.seconds,p.nanos);if(m==null)throw new Error("Unable to extract date values from ".concat(p));var b=se.makeDateWrapper(e,r,m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos),y=se.getNextDate(e,p,m,r);return[b,y]}static getJsDate(e){return typeof e=="number"?new Date(e):e.asDate()}static trimDateTimeStringTimeZone(e){var{overflow:t=""}=se.parseDateTimeString(e,!0);if(t==="")return e;if(!/^\s[A-Za-z]+/.test(t))throw new Error("Unexpected timezone format in overflow: '".concat(e,"'"));return e.slice(0,-t.length)}}An(se,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");An(se,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function jv(n,e){return n===e?{operator:"notEq",value:""}:{operator:"eq",value:n}}function Vv(n,e,t,r){return function(a){var l=t.trim();if(l==="")return null;var s=rl(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function rl(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"or";return function(i){var a=i==null?void 0:i.findColumns(typeof n=="string"?[n]:n);if(a==null||a.length===0)return null;var l=a.map(e);return l.reduce((s,o)=>s[t](o))}}function Io(n,e,t,r){return rl(e,i=>i.filter()[r](n.makeFilterValue(i.type,t)),"or")}function $v(n,e,t,r,i){return function(l){var s=l==null?void 0:l.findColumn(e),o=t==="all"||r&&t.size===0;return s==null||o?null:n.makeSelectValueFilter(s,[...t.keys()],i)}}function Hv(n){return function(t){return t.filter().isNull().not().and(t.filter().notEq(n.makeFilterValue(t.type,"")))}}function Gv(n,e){return function(r){var i=r.filter(),a=n.makeFilterValue(r.type,""),l=i.eq(a);return e?i.isNull().or(l):l.or(i.notEq(a))}}function kn(n,e,t){return e=Ro(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ro(n){var e=Lo(n,"string");return typeof e=="symbol"?e:String(e)}function Lo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class cr{}kn(cr,"not","not");kn(cr,"and","and");kn(cr,"or","or");function Uv(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function ce(n,e,t){return e=Ao(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ao(n){var e=ko(n,"string");return typeof e=="symbol"?e:String(e)}function ko(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class N{}ce(N,"eq","eq");ce(N,"eqIgnoreCase","eqIgnoreCase");ce(N,"notEq","notEq");ce(N,"notEqIgnoreCase","notEqIgnoreCase");ce(N,"greaterThan","greaterThan");ce(N,"greaterThanOrEqualTo","greaterThanOrEqualTo");ce(N,"lessThan","lessThan");ce(N,"lessThanOrEqualTo","lessThanOrEqualTo");ce(N,"in","in");ce(N,"inIgnoreCase","inIgnoreCase");ce(N,"notIn","notIn");ce(N,"notInIgnoreCase","notInIgnoreCase");ce(N,"isTrue","isTrue");ce(N,"isFalse","isFalse");ce(N,"isNull","isNull");ce(N,"invoke","invoke");ce(N,"contains","contains");ce(N,"notContains","notContains");ce(N,"containsIgnoreCase","containsIgnoreCase");ce(N,"startsWith","startsWith");ce(N,"endsWith","endsWith");ce(N,"containsAny","containsAny");function xo(n){switch(n){case N.eq:return"is exactly";case N.eqIgnoreCase:return"is exactly (ignore case)";case N.notEq:return"is not exactly";case N.notEqIgnoreCase:return"is not exactly (ignore case)";case N.contains:return"contains";case N.notContains:return"does not contain";case N.startsWith:return"starts with";case N.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function _o(n){switch(n){case N.eq:return"is equal to";case N.notEq:return"is not equal to";case N.greaterThan:return"greater than";case N.greaterThanOrEqualTo:return"greater than or equal to";case N.lessThan:return"less than";case N.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function jo(n){switch(n){case N.eq:return"date is";case N.notEq:return"date is not";case N.notEqIgnoreCase:case N.greaterThan:return"date is after";case N.greaterThanOrEqualTo:return"date is after or equal";case N.lessThan:return"date is before";case N.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function Bv(n){switch(n){case N.isTrue:return"Is True";case N.isFalse:return"Is False";case N.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}var Vo="DH_ITEM_KEY",ci=Z.module("ViewportDataUtils");function nl(n){return"".concat(Vo,"_").concat(n)}function Wv(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;ci.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})}),ci.debug("update keys",o),t(o)}}function zv(n,e){return e.reduce((t,r)=>(t[r.name]=n.get(r),t),{})}function*qv(n,e){for(var t=n;t<=e;++t)yield{key:nl(t)}}function $o(n){return n==null||Ho(n)?0:n.size}function Ho(n){return"isClosed"in n?n.isClosed:!1}function Kv(n,e,t,r){var i=n+e-1,[a,l]=[0,r-1],s=et(n-t,a,l),o=et(i+t,a,l);return[s,o]}function vi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function gt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){vi(a,r,i,l,s,"next",o)}function s(o){vi(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ft(n,e,t){return e=Go(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Go(n){var e=Uo(n,"string");return typeof e=="symbol"?e:String(e)}function Uo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var at=Z.module("TableUtils");function Yv(n){return n===S.sortDirection.ascending||n===S.sortDirection.descending||n===S.sortDirection.reverse||n===S.sortDirection.none}class S{static copyTableAndApplyFilters(e){var t=arguments;return gt(function*(){if(e==null)return null;for(var r=yield e.copy(),i=t.length,a=new Array(i>1?i-1:0),l=1;l<i;l++)a[l-1]=t[l];return r.applyFilter(sn(...a.map(s=>s(r)))),r})()}static getSortIndex(e,t){for(var r=0;r<e.length;r+=1){var i,a=e[r];if(((i=a.column)===null||i===void 0?void 0:i.name)===t)return r}return null}static getSortForColumn(e,t){var r=S.getSortIndex(e,t);return r!=null?e[r]:null}static getFilterText(e){return e?e.toString():null}static getFilterTypes(e){return S.isBooleanType(e)?[N.isTrue,N.isFalse,N.isNull]:S.isCharType(e)||S.isNumberType(e)||S.isDateType(e)?[N.eq,N.notEq,N.greaterThan,N.greaterThanOrEqualTo,N.lessThan,N.lessThanOrEqualTo]:S.isTextType(e)?[N.eq,N.eqIgnoreCase,N.notEq,N.notEqIgnoreCase,N.contains,N.notContains,N.startsWith,N.endsWith]:[]}static getNextSort(e,t,r){if(r<0||r>=e.length)return null;var i=S.getSortForColumn(t,e[r].name);return i===null?e[r].sort().asc():i.direction===S.sortDirection.ascending?i.desc():null}static makeColumnSort(e,t,r,i){if(t<0||t>=e.length||r===S.sortDirection.none)return null;var a=e[t].sort();switch(r){case S.sortDirection.ascending:a=a.asc();break;case S.sortDirection.descending:a=a.desc();break}return i&&(a=a.abs()),a}static toggleSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(r<0||r>=t.length)return[];var a=S.getNextSort(t,e,r);return S.setSortForColumn(e,t[r].name,a,i)}static sortColumn(e,t,r,i,a,l){if(r<0||r>=t.length)return[];var s=S.makeColumnSort(t,r,i,a);return S.setSortForColumn(e,t[r].name,s,l)}static setSortForColumn(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=S.getSortIndex(e,t),l=[];return i&&(l=l.concat(e.filter(s=>{var{direction:o}=s;return o!==S.sortDirection.reverse})),a!==null&&l.splice(a,1)),r!==null&&l.push(r),l}static getNormalizedType(e){switch(e){case"boolean":case"java.lang.Boolean":case S.dataType.BOOLEAN:return S.dataType.BOOLEAN;case"char":case"java.lang.Character":case S.dataType.CHAR:return S.dataType.CHAR;case"java.lang.String":case S.dataType.STRING:return S.dataType.STRING;case"io.deephaven.db.tables.utils.DBDateTime":case"io.deephaven.time.DateTime":case"com.illumon.iris.db.tables.utils.DBDateTime":case"java.time.Instant":case"java.time.ZonedDateTime":case S.dataType.DATETIME:return S.dataType.DATETIME;case"double":case"java.lang.Double":case"float":case"java.lang.Float":case"java.math.BigDecimal":case S.dataType.DECIMAL:return S.dataType.DECIMAL;case"int":case"java.lang.Integer":case"long":case"java.lang.Long":case"short":case"java.lang.Short":case"byte":case"java.lang.Byte":case"java.math.BigInteger":case S.dataType.INT:return S.dataType.INT;default:return S.dataType.UNKNOWN}}static isLongType(e){switch(e){case"long":case"java.lang.Long":return!0;default:return!1}}static isDateType(e){switch(e){case"io.deephaven.db.tables.utils.DBDateTime":case"io.deephaven.time.DateTime":case"java.time.Instant":case"java.time.ZonedDateTime":case"com.illumon.iris.db.tables.utils.DBDateTime":return!0;default:return!1}}static isNumberType(e){return S.isIntegerType(e)||S.isDecimalType(e)}static isIntegerType(e){switch(e){case"int":case"java.lang.Integer":case"java.math.BigInteger":case"long":case"java.lang.Long":case"short":case"java.lang.Short":case"byte":case"java.lang.Byte":return!0;default:return!1}}static isDecimalType(e){switch(e){case"double":case"java.lang.Double":case"java.math.BigDecimal":case"float":case"java.lang.Float":return!0;default:return!1}}static isBigDecimalType(e){switch(e){case"java.math.BigDecimal":return!0;default:return!1}}static isBigIntegerType(e){switch(e){case"java.math.BigInteger":return!0;default:return!1}}static isBooleanType(e){switch(e){case"boolean":case"java.lang.Boolean":return!0;default:return!1}}static isCharType(e){switch(e){case"char":case"java.lang.Character":return!0;default:return!1}}static isStringType(e){switch(e){case"java.lang.String":return!0;default:return!1}}static isTextType(e){return this.isStringType(e)||this.isCharType(e)}static getBaseType(e){return e.split("[]")[0]}static isCompatibleType(e,t){return S.getNormalizedType(e)===S.getNormalizedType(t)}static quoteValue(e){return e.length>=2&&(e.charAt(0)==='"'&&e.charAt(e.length-1)==='"'||e.charAt(0)==="'"&&e.charAt(e.length-1)==="'")?e:'"'.concat(e,'"')}static isRangeOperation(e){switch(e){case"<":case"<=":case"=<":case">":case">=":case"=>":return!0;default:return!1}}static makeRangeFilterWithOperation(e,t,r){switch(t){case"=":return e.eq(r);case"<":return e.lessThan(r);case"<=":case"=<":return e.lessThanOrEqualTo(r);case">":return e.greaterThan(r);case">=":case"=>":return e.greaterThanOrEqualTo(r);case"!=":case"!":return e.notEq(r);default:return null}}static makeCancelableTablePromise(e){return xe.makeCancelable(e,t=>{t.close()})}static makeCancelableTableEventPromise(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a,l,s=!0,o=new Promise((u,d)=>{l=setTimeout(()=>{a(),s=!1,d(new ps('Event "'.concat(t,'" timed out.')))},r),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 r=S.removeCommas(t);if(S.NUMBER_REGEX.test(r))return parseFloat(r);throw new Error("Invalid number '".concat(e,"'"))}static getFilterOperatorString(e){switch(e){case N.eq:return"=";case N.notEq:return"!=";case N.greaterThan:return">";case N.greaterThanOrEqualTo:return">=";case N.lessThan:return"<";case N.lessThanOrEqualTo:return"<=";case N.contains:return"~";case N.notContains:return"!~";default:throw new Error("Unexpected filter type ".concat(e))}}static isPartitionedTable(e){return e!=null&&e.getMergedTable!==void 0&&e.getKeyTable!==void 0&&e.getKeys!==void 0}static isTreeTable(e){return e!=null&&e.expand!==void 0&&e.collapse!==void 0}static sortColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return[...e].sort((r,i)=>{var a=r.name.toUpperCase(),l=i.name.toUpperCase();return Xe.sort(a,l,t)})}constructor(e){Ft(this,"dh",void 0),this.dh=e,In(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return gt(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(sn(...o.map(v=>v(l)))));var d=l.findColumn(t),h=yield l.selectDistinct([d]);l!==e&&l.close();var c=h.findColumn(t).sort()[r]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,r,i){var a=this;return gt(function*(){if(e==null)return null;var l=Io(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,sn(l(s)));var o=$o(s);return s.close(),o>0})()}getValueType(e){if(e==null)return this.dh.ValueType.STRING;var t=S.getNormalizedType(e);switch(t){case S.dataType.BOOLEAN:return this.dh.ValueType.BOOLEAN;case S.dataType.CHAR:case S.dataType.STRING:return this.dh.ValueType.STRING;case S.dataType.DATETIME:return this.dh.ValueType.DATETIME;case S.dataType.DECIMAL:case S.dataType.INT:return S.isBigDecimalType(e)||S.isBigIntegerType(e)?this.dh.ValueType.STRING:this.dh.ValueType.NUMBER;default:return this.dh.ValueType.STRING}}makeQuickFilter(e,t,r){for(var i=t.split("||"),a=null,l=0;l<i.length;l+=1){for(var s=i[l],o=s.split("&&"),u=null,d=0;d<o.length;d+=1){var h=o[d].trim();if(h.length>0){var c=this.makeQuickFilterFromComponent(e,h,r);if(c)u?u=u.and(c):u=c;else throw new Error("Unable to parse quick filter from text ".concat(t))}}a&&u?a=a.or(u):a=u}return a}makeQuickFilterFromComponent(e,t,r){var{type:i}=e;return S.isNumberType(i)?this.makeQuickNumberFilter(e,t):S.isBooleanType(i)?this.makeQuickBooleanFilter(e,t):r!=null&&S.isDateType(i)?this.makeQuickDateFilter(e,t,r):S.isCharType(i)?this.makeQuickCharFilter(e,t):this.makeQuickTextFilter(e,t)}makeQuickNumberFilter(e,t){var r=e.filter(),{dh:i}=this,a=null,l=/\s*(>=|<=|=>|=<|>|<|!=|=|!)?(\s*-\s*)?(\s*\d*(?:,\d{3})*(?:\.\d*)?\s*)?(null|nan|infinity|inf|\u221E)?(.*)/i,s=l.exec(t),o=null,u=null,d=null,h=null,c=null;if(s!==null&&s.length>3&&([,o,u,d,h,c]=s),c!=null&&c.trim().length>0)return null;if(o==null&&(o="="),h!=null){if(!(o==="="||o==="!"||o==="!="))return null;switch(h=h.trim().toLowerCase(),h){case"null":a=r.isNull();break;case"nan":a=i.FilterCondition.invoke("isNaN",r);break;case"infinity":case"inf":case"∞":u!=null?a=i.FilterCondition.invoke("isInf",r).and(r.lessThan(i.FilterValue.ofNumber(0))):a=i.FilterCondition.invoke("isInf",r).and(r.greaterThan(i.FilterValue.ofNumber(0)));break}return a!==null&&(o==="!"||o==="!=")&&(a=a.not()),a}if(d==null)return null;if(d=S.removeCommas(d),S.isLongType(e.type))try{d=i.FilterValue.ofNumber(i.LongWrapper.ofString("".concat(u!=null?"-":"").concat(d)))}catch(v){return at.warn("Unable to create long filter",v),null}else{if(d=parseFloat(d),d==null||Number.isNaN(d))return null;d=i.FilterValue.ofNumber(u!=null?0-d:d)}return a=e.filter(),S.makeRangeFilterWithOperation(a,o,d)}static escapeQuickTextFilter(e){var t,r;if(e==null)return null;var i=/^(!~|!=|~|=|!)?(.*)/,a=/^\\*null$/,l=i.exec(e),s=null,o=null;if(l!==null&&l.length>2&&([,s,o]=l),s!=null){var u;return"\\".concat(s).concat((u=o)!==null&&u!==void 0?u:"")}return o!=null&&a.test(o.toLowerCase())||o!=null&&o.startsWith("*")?"\\".concat(o):o!=null&&o.endsWith("*")&&!o.endsWith("\\*")?(o=o.substring(0,o.length-1),"".concat(o,"\\*")):"".concat((t=s)!==null&&t!==void 0?t:"").concat((r=o)!==null&&r!==void 0?r:"")}static unescapeQuickTextFilter(e){var t,r,i=/^(\\!~|\\!=|\\~|\\=|\\!)?(.*)/,a=/^\\*null$/,l=i.exec(e),s=null,o=null;return l!==null&&l.length>2&&([,s,o]=l),s!=null&&(s=s.replace("\\","")),o!=null&&a.test(o.toLowerCase())&&(o=o.replace("\\","")),s==null&&o!=null&&o.startsWith("\\*")&&(o=o.substring(1)),s==null&&o!=null&&o.endsWith("\\*")?(o=o.substring(0,o.length-2),"".concat(o,"*")):"".concat((t=s)!==null&&t!==void 0?t:"").concat((r=o)!==null&&r!==void 0?r:"")}makeQuickTextFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(!~|!=|~|=|!)?(.*)/,l=a.exec(i),s=null,o=null;if(l!==null&&l.length>2&&([,s,o]=l,o!=null&&(o=o.trim())),o==null||o.length===0&&!(s==="="||s==="!="))return null;s==null&&(s="=");var u=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return u.isNull();case"!=":case"!":return u.isNull().not()}var d=null,h=null;switch(o.startsWith("*")?(d="*",o=o.substring(1)):o.endsWith("*")&&!o.endsWith("\\*")&&(h="*",o=o.substring(0,o.length-1)),o=S.unescapeQuickTextFilter(o),s){case"~":return u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))));case"!~":return u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E.*"))).not());case"!=":return d==="*"?u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$"))).not()):h==="*"?u.isNull().or(u.invoke("matches",r.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*"))).not()):u.notEqIgnoreCase(r.FilterValue.ofString(o.toLowerCase()));case"=":return d==="*"?u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i).*\\Q".concat(o,"\\E$")))):h==="*"?u.isNull().not().and(u.invoke("matches",r.FilterValue.ofString("(?s)(?i)^\\Q".concat(o,"\\E.*")))):u.eqIgnoreCase(r.FilterValue.ofString(o.toLowerCase()))}return null}makeQuickBooleanFilter(e,t){var r=/^(!=|=|!)?(.*)/,i=r.exec("".concat(t).trim());if(i===null)return null;var[,a,l]=i,s=a==="!"||a==="!=",o=l.trim().toLowerCase(),u=e.filter();try{var d=S.makeBooleanValue(o);return d!=null&&d?u=u.isTrue():d===null?u=u.isNull():u=u.isFalse(),s?u.not():u}catch{return null}}makeQuickDateFilter(e,t,r){var i=t.trim(),a=/\s*(>=|<=|=>|=<|>|<|!=|!|=)?(.*)/,l=a.exec(i);if(l==null||l.length<=2)throw new Error("Unable to parse date filter: ".concat(t));var s=null,o=null;[,s,o]=l;var u=N.eq;switch(s){case"<":u=N.lessThan;break;case"<=":case"=<":u=N.lessThanOrEqualTo;break;case">":u=N.greaterThan;break;case">=":case"=>":u=N.greaterThanOrEqualTo;break;case"!=":case"!":u=N.notEq;break;case"=":case"==":default:u=N.eq;break}return this.makeQuickDateFilterWithOperation(e,o,u,r)}makeQuickDateFilterWithOperation(e,t,r,i){var{dh:a}=this,[l,s]=se.parseDateRange(a,t,i),o=l!=null?a.FilterValue.ofNumber(l):null,u=s!=null?a.FilterValue.ofNumber(s):null,d=e.filter();if(o==null)return r===N.notEq?d.isNull().not():d.isNull();switch(r){case N.eq:{if(u!=null){var h=d.greaterThanOrEqualTo(o),c=d.lessThan(u);return h.and(c)}return d.eq(o)}case N.lessThan:return d.lessThan(o);case N.lessThanOrEqualTo:return u!=null?d.lessThan(u):d.lessThanOrEqualTo(o);case N.greaterThan:return u!=null?d.greaterThanOrEqualTo(u):d.greaterThan(o);case N.greaterThanOrEqualTo:return d.greaterThanOrEqualTo(o);case N.notEq:{if(u!=null){var v=d.lessThan(o),g=d.greaterThanOrEqualTo(u);return v.or(g)}return d.notEq(o)}default:throw new Error("Invalid operator: ".concat(r))}}makeQuickCharFilter(e,t){var{dh:r}=this,i="".concat(t).trim(),a=/^(>=|<=|=>|=<|>|<|!=|=|!)?(null|"."|'.'|.)?(.*)/,l=a.exec(i),s=null,o=null,u=null;if(l!==null&&l.length>3&&([,s,o,u]=l),u!=null&&u.trim().length>0||o==null||o.length===0)return null;s==null&&(s="=");var d=e.filter();if(o.toLowerCase()==="null")switch(s){case"=":return d.isNull();case"!=":case"!":return d.isNull().not();default:return null}var h=r.FilterValue.ofString(S.isRangeOperation(s)?S.quoteValue(o):o);return S.makeRangeFilterWithOperation(d,s,h)}makeAdvancedFilter(e,t,r){for(var{filterItems:i,filterOperators:a,invertSelection:l,selectedValues:s}=t,o=null,u=0;u<i.length;u+=1){var d=i[u],{selectedType:h,value:c}=d;if(h!=null&&h.length>0&&c!=null&&c.length>0)try{var v=this.makeAdvancedValueFilter(e,h,c,r);if(v!=null){if(u===0)o=v;else if(o!==null&&u-1<a.length){var g=a[u-1];if(g===cr.and)o=o.and(v);else if(g===cr.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(m){at.error("Unable to create filter",m),o=null;break}}var p=this.makeSelectValueFilter(e,s,l);return p!=null&&(o!=null?o=o.and(p):o=p),o}makeAdvancedValueFilter(e,t,r,i){var{dh:a}=this;if(S.isDateType(e.type))return this.makeQuickDateFilterWithOperation(e,r,t,i);if(S.isNumberType(e.type)||S.isCharType(e.type))return this.makeQuickFilter(e,"".concat(S.getFilterOperatorString(t)).concat(r));var l=this.makeFilterValue(e.type,r),s=e.filter();switch(t){case N.eq:return s.eq(l);case N.eqIgnoreCase:return s.eqIgnoreCase(l);case N.notEq:return s.notEq(l);case N.notEqIgnoreCase:return s.notEqIgnoreCase(l);case N.greaterThan:return s.greaterThan(l);case N.greaterThanOrEqualTo:return s.greaterThanOrEqualTo(l);case N.lessThan:return s.lessThan(l);case N.lessThanOrEqualTo:return s.lessThanOrEqualTo(l);case N.isTrue:return s.isTrue();case N.isFalse:return s.isFalse();case N.isNull:return s.isNull();case N.contains:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))));case N.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))).not());case N.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(r,"\\E.*"))));case N.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E$"))));case N.in:case N.inIgnoreCase:case N.notIn:case N.notInIgnoreCase:case N.invoke:default:throw new Error("Unexpected filter operation: ".concat(t))}}makeSearchTextFilter(e,t,r){var i=this.getValueType(e.type);try{if(i===this.dh.ValueType.BOOLEAN){var a=this.makeQuickBooleanFilter(e,t);return R(a),a}if(i===this.dh.ValueType.DATETIME)return this.makeQuickDateFilterWithOperation(e,se.trimDateTimeStringTimeZone(t),"eq",r);if(i===this.dh.ValueType.NUMBER){var l=this.makeQuickNumberFilter(e,t);return R(l),l}return S.isBigDecimalType(e.type)||S.isBigIntegerType(e.type)?e.filter().eq(this.makeFilterValue(e.type,t)):e.filter().containsIgnoreCase(this.makeFilterValue(e.type,t))}catch{return this.makeNeverFilter(e)}}applyNeverFilter(e,t){var r=arguments,i=this;return gt(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(e==null)return null;var l=e.findColumn(t),s=[i.makeNeverFilter(l)];return yield i.applyFilter(e,s,a),e})()}applyCustomColumns(e,t){var r=arguments,i=this;return gt(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyCustomColumns(t),e,l.Table.EVENT_CUSTOMCOLUMNSCHANGED,a)})()}applyFilter(e,t){var r=arguments,i=this;return gt(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyFilter(t),e,l.Table.EVENT_FILTERCHANGED,a)})()}applySort(e,t){var r=arguments,i=this;return gt(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applySort(t),e,l.Table.EVENT_SORTCHANGED,a)})()}makeNeverFilter(e){var{dh:t}=this,r=null;S.isTextType(e.type)?r=t.FilterValue.ofString("a"):S.isBooleanType(e.type)?r=t.FilterValue.ofBoolean(!0):S.isDateType(e.type)?r=t.FilterValue.ofNumber(t.DateWrapper.ofJsDate(new Date)):r=t.FilterValue.ofNumber(0);var i=e.filter().eq(r),a=e.filter().notEq(r);return i.and(a)}makeFilterValue(e,t){var{dh:r}=this,i=S.getBaseType(e);return S.isTextType(i)?r.FilterValue.ofString(t):S.isLongType(i)?r.FilterValue.ofNumber(r.LongWrapper.ofString(S.removeCommas(t))):r.FilterValue.ofNumber(S.removeCommas(t))}makeFilterRawValue(e,t){var{dh:r}=this;return S.isCharType(e)?r.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):S.isTextType(e)?r.FilterValue.ofString(t):S.isBooleanType(e)?r.FilterValue.ofBoolean(t):r.FilterValue.ofNumber(t)}makeNullableEqFilter(e,t){return t==null?e.filter().isNull():e.filter().eq(this.makeFilterRawValue(e.type,t))}makeValue(e,t,r){var{dh:i}=this;if(t==="null")return null;if(S.isTextType(e))return t;if(S.isLongType(e))return i.LongWrapper.ofString(S.removeCommas(t));if(S.isBooleanType(e))return S.makeBooleanValue(t,!0);if(S.isDateType(e)){var[a]=se.parseDateRange(i,t,r);return a}return S.isNumberType(e)?S.makeNumberValue(t):(at.error("Unexpected column type",e),null)}makeSelectValueFilter(e,t,r){var{dh:i}=this;if(t.length===0)return r?null:this.makeNeverFilter(e);for(var a=[],l=!1,s=0;s<t.length;s+=1){var o=t[s];o==null?l=!0:S.isTextType(e.type)?a.push(i.FilterValue.ofString(typeof o=="number"?String.fromCharCode(o):o)):S.isBooleanType(e.type)?a.push(i.FilterValue.ofBoolean(!!o)):a.push(i.FilterValue.ofNumber(o))}return l?a.length>0?r?e.filter().isNull().not().and(e.filter().notIn(a)):e.filter().isNull().or(e.filter().in(a)):r?e.filter().isNull().not():e.filter().isNull():r?e.filter().notIn(a):e.filter().in(a)}}Ft(S,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});Ft(S,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});Ft(S,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);Ft(S,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));Ft(S,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);Ft(S,"executeAndWaitForEvent",function(){var n=gt(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=S.makeCancelableTableEventPromise(t,r,i);return e(t),yield a,t});return function(e,t,r){return n.apply(this,arguments)}}());function Rt(n,e,t){return e=Bo(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bo(n){var e=Wo(n,"string");return typeof e=="symbol"?e:String(e)}function Wo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ze{static makeColumnFormatMap(e){return e==null?new Map:e.reduce((t,r)=>{var i=S.getNormalizedType(r.columnType);if(i===null)return t;t.has(i)||t.set(i,new Map);var a=t.get(i);return a==null||a.set(r.columnName,r.format),t},new Map)}static makeColumnFormattingRule(e,t,r){return{columnType:e,columnName:t,format:r}}constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!1,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:!0,o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!0;Rt(this,"defaultColumnFormatter",void 0),Rt(this,"typeFormatterMap",void 0),Rt(this,"columnFormatMap",void 0),Rt(this,"truncateNumbersWithPound",void 0),Rt(this,"showEmptyStrings",void 0),Rt(this,"showNullStrings",void 0),this.defaultColumnFormatter=new No,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new Eo],[S.dataType.CHAR,new To],[S.dataType.DATETIME,new kr(e,r)],[S.dataType.DECIMAL,new ms(e,i)],[S.dataType.INT,new gs(e,a)],[S.dataType.STRING,new Do]]),this.columnFormatMap=ze.makeColumnFormatMap(t),this.truncateNumbersWithPound=l,this.showEmptyStrings=s,this.showNullStrings=o}getColumnFormatMapForType(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=S.getNormalizedType(e);if(r!==null)return t&&!this.columnFormatMap.has(r)&&this.columnFormatMap.set(r,new Map),this.columnFormatMap.get(r)}getColumnFormat(e,t){var r,i=this.getColumnFormatMapForType(e);return(r=i==null?void 0:i.get(t))!==null&&r!==void 0?r:null}getColumnTypeFormatter(e){var t=S.getNormalizedType(e),r=this.defaultColumnFormatter;if(t){var i;r=(i=this.typeFormatterMap.get(t))!==null&&i!==void 0?i:r}return r}getFormattedString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;if(e==null)return"";var a=this.getColumnTypeFormatter(t),l=i||this.getColumnFormat(t,r);return a.format(e,l??void 0)}get timeZone(){var e=this.typeFormatterMap.get(S.dataType.DATETIME);return Gs(e,kr),e.dhTimeZone.id}}function zo(n,e){var t=il(e),r=al(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new ze(n,t,r,i,a,l,s,o)}function il(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function al(n){return{timeZone:n==null?void 0:n.timeZone,defaultDateTimeFormatString:n==null?void 0:n.defaultDateTimeFormat,showTimeZone:n==null?void 0:n.showTimeZone,showTSeparator:n==null?void 0:n.showTSeparator}}function qo(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===$t.TYPE_CONTEXT_PRESET||r.type===$t.TYPE_CONTEXT_CUSTOM)}const bn={createFormatterFromSettings:zo,getColumnFormats:il,getDateTimeFormatterOptions:al,isCustomColumnFormatDefined:qo};function fi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ko(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fi(Object(t),!0).forEach(function(r){Yo(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yo(n,e,t){return e=Xo(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xo(n){var e=Qo(n,"string");return typeof e=="symbol"?e:String(e)}function Qo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Zo=D.lazy(()=>Hr(()=>import("./Chart-423dd7a2.js"),["./Chart-423dd7a2.js","./vendor-2f94bc96.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-78e71855.js","./index-11271fba.css","./Plotly-e952fd65.js","./plotly-a6565265.js","./LogPanel-891b65b4.js","./LogPanel-68a471d6.css","./DownsamplingError-8e6bdb73.js","./Chart-b5066b0e.css"],import.meta.url));function ll(n){return f.jsx(D.Suspense,{fallback:f.jsx(Kt,{}),children:f.jsx(Zo,Ko({},n))})}function pi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function yr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?pi(Object(t),!0).forEach(function(r){Ne(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):pi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ne(n,e,t){return e=Jo(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Jo(n){var e=eu(n,"string");return typeof e=="symbol"?e:String(e)}function eu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Qt=Z.module("ChartUtils"),mi="io.deephaven.time.DateTime",tu=36e5,ru=1e6;function nu(n){return n.asDate!==void 0}function iu(n){return n.asNumber!==void 0}function gi(n){return n.dhTimeZone!==void 0}function au(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function lu(){var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}var su=lu();class _{static getPlotlyErrorBars(e,t,r){var i=r.map((l,s)=>l-e[s]),a=t.map((l,s)=>e[s]-l);return{type:"data",symmetric:!1,array:i,arrayminus:a}}static convertNumberPrefix(e){return e.replace(/\u00A4\u00A4/g,"USD").replace(/\u00A4/g,"$")}static getPlotlyNumberFormat(e,t,r){if(r==null||r==="")return null;var i=r.split(";"),a=i[0].match(/^([^#,0.]*)([#,]*)([0,]*)(\.?)(0*)(#*)(E?0*)(%?)(.*)/);R(a);var[,l,s,o,,u,d,h,c,v]=a,g=o.replace(",","").length,p=s.indexOf(",")>=0||o.indexOf(",")>=0,m=p?",":"",b=h!=null&&h!==""?"e":"f",y=c!==""?c:b,C=u.length+d.length,E="",w="0".concat(g).concat(m,".").concat(C).concat(E).concat(y),T=_.convertNumberPrefix(l),F=_.convertNumberPrefix(v);return{tickformat:w,tickprefix:T,ticksuffix:F,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i!=null&&i>0){var a=e||{},l=i;return r&&(l=i/ru),t.log&&(l=Math.log(l)),a.tickmode="linear",a.dtick=l,a}return e}static getSourceForAxis(e,t){for(var r=0;r<e.series.length;r+=1)for(var i=e.series[r],a=0;a<i.sources.length;a+=1){var l=i.sources[a];if(l.axis===t)return l}return null}static getSeriesVisibility(e,t){return t!=null&&t.hiddenSeries!=null&&t.hiddenSeries.includes(e)?"legendonly":!0}static getHiddenLabels(e){return e!=null&&e.hiddenSeries?[...e.hiddenSeries]:[]}static makeSeriesData(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:_.ORIENTATION.VERTICAL;return{type:e,mode:t,name:r,orientation:a,showlegend:i??void 0}}static getMarkerSymbol(e){switch(e){case"SQUARE":return"square";case"CIRCLE":return"circle";case"DIAMOND":return"diamond";case"UP_TRIANGLE":return"triangle-up";case"DOWN_TRIANGLE":return"triangle-down";case"RIGHT_TRIANGLE":return"triangle-right";case"LEFT_TRIANGLE":return"triangle-left";case"ELLIPSE":case"HORIZONTAL_RECTANGLE":case"VERTICAL_RECTANGLE":default:throw new Error("Unrecognized shape ".concat(e))}}static getAllAxes(e){return e.charts.reduce((t,r)=>[...t,...r.axes],[])}static getAxisTypeMap(e){var t=_.getAllAxes(e);return _.groupArray(t,"type")}static getChartForSeries(e,t){for(var{charts:r}=e,i=0;i<r.length;i+=1)for(var a=r[i],l=0;l<a.series.length;l+=1)if(t===a.series[l])return a;return null}static getLayoutRanges(e){for(var t={},r=Object.keys(e).filter(s=>s.indexOf("axis")>=0),i=0;i<r.length;i+=1){var a=r[i],l=e[a];au(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static groupArray(e,t){return e.reduce((r,i)=>{var a,l=i[t],s=(a=r.get(l))!==null&&a!==void 0?a:[];return s.push(i),r.set(l,s),r},new Map)}static normalizeColorway(e){if(e!=null){if(Array.isArray(e))return e;if(typeof e=="string")return e.split(" ");Qt.warn("Unexpected colorway format: ".concat(e))}}static titleFromSettings(e){var{series:t,xAxis:r,title:i="".concat((t??[]).join(", ")," by ").concat(r)}=e;return i}constructor(e){Ne(this,"dh",void 0),Ne(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),In(this)}getAxisFormats(e,t){for(var r=this,i=new Map,a={tickformat:null,ticksuffix:null},l=_.getAllAxes(e),s=_.groupArray(l,"type"),{charts:o}=e,u=0;u<o.length;u+=1)for(var d=o[u],h=0;h<d.series.length;h+=1)for(var c=d.series[h],{sources:v}=c,g=v.filter(y=>y.axis),p=function(){var C=g[m],{axis:E}=C,{type:w}=E,T=s.get(w);R(T);var F=T.indexOf(E),O=r.getAxisPropertyName(w);if(O!=null){var P=_.getAxisLayoutProperty(O,F);if(i.has(P))Qt.debug("".concat(P," already added."));else{Qt.debug("Adding ".concat(P," to axisFormats."));var M=r.getPlotlyAxisFormat(C,t);if(M===null)i.set(P,a);else{i.set(P,M);var{businessCalendar:k}=E;if(k!=null){var L=[],{businessPeriods:j,businessDays:H,holidays:Y,timeZone:te}=k,re=t==null?void 0:t.getColumnTypeFormatter(mi),ae;gi(re)&&(ae=re.dhTimeZone);var le=ae?(te.standardOffset-ae.standardOffset)/60:0;Y.length>0&&L.push(...r.createRangeBreakValuesFromHolidays(Y,te,ae)),j.forEach(pe=>L.push({pattern:"hour",bounds:[_.periodToDecimal(pe.close)+le,_.periodToDecimal(pe.open)+le]})),H.length<r.daysOfWeek.length&&r.createBoundsFromDays(H).forEach(pe=>L.push({pattern:"day of week",bounds:pe})),M.rangebreaks=L}if(i.size===d.axes.length)return{v:i}}}}},m=0;m<g.length;m+=1){var b=p();if(typeof b=="object")return b.v}return i}getPlotlyChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.SCATTER:case i.plot.SeriesPlotStyle.LINE:return!t&&su&&r?"scattergl":"scatter";case i.plot.SeriesPlotStyle.BAR:case i.plot.SeriesPlotStyle.STACKED_BAR:return"bar";case i.plot.SeriesPlotStyle.PIE:return"pie";case i.plot.SeriesPlotStyle.TREEMAP:return"treemap";case i.plot.SeriesPlotStyle.HISTOGRAM:return"histogram";case i.plot.SeriesPlotStyle.OHLC:return"ohlc";default:return}}getPlotlyChartMode(e,t,r){var{dh:i}=this,a=new Set;switch(e){case i.plot.SeriesPlotStyle.SCATTER:(t??!1)&&a.add(_.MODE_LINES),(r??!0)&&a.add(_.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(_.MODE_LINES),(r??!1)&&a.add(_.MODE_MARKERS);break}return a.size>0?[...a].join("+"):void 0}getPlotlyProperty(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.PIE:switch(t){case r.plot.SourceType.X:return"labels";case r.plot.SourceType.Y:return"values"}break;case r.plot.SeriesPlotStyle.OHLC:switch(t){case r.plot.SourceType.TIME:return"x"}break;case r.plot.SeriesPlotStyle.TREEMAP:switch(t){case r.plot.SourceType.X:return"ids";case r.plot.SourceType.Y:return"values";case r.plot.SourceType.LABEL:return"labels";case r.plot.SourceType.PARENT:return"parents";case r.plot.SourceType.COLOR:return"marker.colors"}break}switch(t){case r.plot.SourceType.X:return"x";case r.plot.SourceType.Y:return"y";case r.plot.SourceType.Z:return"z";case r.plot.SourceType.X_LOW:return"xLow";case r.plot.SourceType.X_HIGH:return"xHigh";case r.plot.SourceType.Y_LOW:return"yLow";case r.plot.SourceType.Y_HIGH:return"yHigh";case r.plot.SourceType.TIME:return"time";case r.plot.SourceType.OPEN:return"open";case r.plot.SourceType.HIGH:return"high";case r.plot.SourceType.LOW:return"low";case r.plot.SourceType.CLOSE:return"close";case r.plot.SourceType.SHAPE:return"shape";case r.plot.SourceType.SIZE:return"size";case r.plot.SourceType.LABEL:return"label";case r.plot.SourceType.COLOR:return"color";case r.plot.SourceType.PARENT:return"parent";case r.plot.SourceType.HOVER_TEXT:return"hovertext";case r.plot.SourceType.TEXT:return"text";default:throw new Error("Unrecognized source type: ".concat(t))}}getPlotlySeriesOrientation(e){var t,r,{dh:i}=this,{sources:a}=e;return a.length===2&&((t=a[0])===null||t===void 0||(r=t.axis)===null||r===void 0?void 0:r.type)===i.plot.AxisType.Y?_.ORIENTATION.HORIZONTAL:_.ORIENTATION.VERTICAL}makeSeriesDataFromSeries(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{name:l,isLinesVisible:s,isShapesVisible:o,plotStyle:u,lineColor:d,shapeColor:h,sources:c,shape:v,shapeSize:g}=e,p=c.some(E=>{var w;return(w=E.axis)===null||w===void 0?void 0:w.businessCalendar}),m=this.getChartType(u,p,a),b=this.getPlotlyChartMode(u,s??void 0,o??void 0),y=this.getPlotlySeriesOrientation(e),C=_.makeSeriesData(m,b,l,i,y);return this.addSourcesToSeriesData(C,u,c,t),this.addStylingToSeriesData(C,u,d,h,v,g,r),C}addSourcesToSeriesData(e,t,r,i){for(var a=e,l=0;l<r.length;l+=1){var s=r[l],{axis:o,type:u}=s,d=this.getPlotlyProperty(t,u);xa(a,d,[]);var h=o!=null?this.getAxisPropertyName(o.type):null;if(h!=null){var c=i.get(o.type);if(c){var v=c.indexOf(o),g=v>0?"".concat(v+1):"";a["".concat(h,"axis")]="".concat(h).concat(g)}}}}addStylingToSeriesData(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,{dh:o}=this,u=e;if(u.marker={line:{}},u.line={width:1},t===o.plot.SeriesPlotStyle.AREA?u.fill="tozeroy":t===o.plot.SeriesPlotStyle.STACKED_AREA?u.stackgroup="stack":t===o.plot.SeriesPlotStyle.STEP?u.line.shape="hv":t===o.plot.SeriesPlotStyle.HISTOGRAM?u.width=[]:t===o.plot.SeriesPlotStyle.PIE?u.textinfo="label+percent":t===o.plot.SeriesPlotStyle.TREEMAP&&(u.hoverinfo="text",u.textinfo="label+text",u.tiling={packing:"squarify",pad:0},u.textposition="middle center"),r!=null&&(t===o.plot.SeriesPlotStyle.BAR?u.marker.color=r:u.line.color=r),i!=null&&(u.marker.color=i),a!=null&&a.length>0)try{u.marker.symbol=_.getMarkerSymbol(a)}catch(d){Qt.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*_.DEFAULT_MARKER_SIZE),s!=null&&t!==o.plot.SeriesPlotStyle.PIE&&(u.visible=s)}getChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.HISTOGRAM:return"bar";default:return this.getPlotlyChartType(e,t,r)}}getAxisPropertyName(e){var{dh:t}=this;switch(e){case t.plot.AxisType.X:return"x";case t.plot.AxisType.Y:return"y";default:return null}}getAxisSide(e){var{dh:t}=this;switch(e){case t.plot.AxisPosition.BOTTOM:return"bottom";case t.plot.AxisPosition.TOP:return"top";case t.plot.AxisPosition.LEFT:return"left";case t.plot.AxisPosition.RIGHT:return"right";default:return}}updateFigureAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=e,s=_.getAllAxes(t),o=0;o<t.charts.length;o+=1){var u=t.charts[o],d=r==null?void 0:r(u),h=this.getChartBounds(t,u,i,a);this.updateLayoutAxes(l,u.axes,s,i,a,h,d)}this.removeStaleAxes(l,s)}getChartBounds(e,t,r,i){var a,{dh:l}=this,{cols:s,rows:o}=e,{column:u,colspan:d,row:h,rowspan:c}=t,v=u+d,g=h+c,p=1/s,m=1/o,b=_.AXIS_SIZE_PX/r,y=_.AXIS_SIZE_PX/i,C={bottom:(o-g)*m+(g<o?y/2:0),top:(o-h)*m-(h>0?y/2:0),left:u*p+(u>0?b/2:0),right:v*p-(v<s?b/2:0)},E=_.groupArray(t.axes,"position"),w=(a=E.get(l.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return w.length>0&&(r>0?C.right-=(C.right-C.left)*Math.max(0,Math.min(_.LEGEND_WIDTH_PX/r,_.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*_.DEFAULT_AXIS_SIZE),C}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=r==null?void 0:r.replace("%","%%").replace(/S{9}/g,"%9f").replace(/S{8}/g,"%8f").replace(/S{7}/g,"%7f").replace(/S{6}/g,"%6f").replace(/S{5}/g,"%5f").replace(/S{4}/g,"%4f").replace(/S{3}/g,"%3f").replace(/S{2}/g,"%2f").replace(/S{1}/g,"%1f").replace(/y{4}/g,"%Y").replace(/y{2}/g,"%y").replace(/M{4}/g,"%B").replace(/M{3}/g,"%b").replace(/M{2}/g,"%m").replace(/M{1}/g,"%-m").replace(/E{4,}/g,"%A").replace(/E{1,}/g,"%a").replace(/d{2}/g,"%d").replace(/([^%]|^)d{1}/g,"$1%-d").replace(/H{2}/g,"%H").replace(/h{2}/g,"%I").replace(/h{1}/g,"%-I").replace(/m{2}/g,"%M").replace(/s{2}/g,"%S").replace("'T'","T").replace(" z",""),l,s=e==null?void 0:e.getColumnTypeFormatter(t);return s!=null&&gi(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(l=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:l,automargin:!0}}getPlotlyAxisFormat(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,{dh:r}=this,{axis:i,columnType:a}=e,{formatPattern:l}=i,s=null;return S.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,l),s=_.addTickSpacing(s,i,!0)):S.isNumberType(a)&&(s=_.getPlotlyNumberFormat(t,a,l),s=_.addTickSpacing(s,i,!1)),i.formatType===r.plot.AxisFormatType.CATEGORY&&(s?s.type="category":s={type:"category",tickformat:void 0,ticksuffix:void 0}),s}updateLayoutAxes(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{left:0,top:0,right:1,bottom:1},s=arguments.length>6?arguments[6]:void 0,{dh:o}=this,u=i>0?Math.max(_.MIN_AXIS_SIZE,Math.min(_.AXIS_SIZE_PX/a,_.MAX_AXIS_SIZE)):_.DEFAULT_AXIS_SIZE,d=a>0?Math.max(_.MIN_AXIS_SIZE,Math.min(_.AXIS_SIZE_PX/i,_.MAX_AXIS_SIZE)):_.DEFAULT_AXIS_SIZE,h=e,c=_.groupArray(t,"position"),v=_.groupArray(t,"type"),g=[...v.keys()],p=_.groupArray(r,"type"),m=0;m<g.length;m+=1){var b=g[m],y=this.getAxisPropertyName(b);if(y!=null){var C=v.get(b),E=p.get(b),w=b===o.plot.AxisType.Y,T=w?a:i;R(C),R(E);for(var F=0;F<C.length;F+=1){var O=C[F],P=E.indexOf(O),M=_.getAxisLayoutProperty(y,P);h[M]==null&&(h[M]={});var k=h[M];if(k!=null){this.updateLayoutAxis(k,O,F,c,u,d,l);var{range:L,autorange:j}=k;if(s!=null&&L!==void 0&&(j===void 0||j===!1)){var H=s(O),[Y,te]=H(L);Qt.debug("Setting downsample range",T,Y,te),O.range(T,Y,te)}else O.range(T)}}}}}removeStaleAxes(e,t){for(var r=e,i=_.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);R(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=_.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=_.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,r,i,a,l,s){var o,{dh:u}=this,d=t.type===u.plot.AxisType.Y,h=d?l:a,c=e,v=(o=t.label)!==null&&o!==void 0?o:"";if(c.title!==void 0&&typeof c.title!="string"?c.title.text=v:c.title={text:v},t.log&&(c.type="log"),c.side=this.getAxisSide(t.position),r>0){var g,p;c.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var m=(p=i.get(t.position))!==null&&p!==void 0?p:[],b=m.indexOf(t);b>0&&(c.anchor="free",t.position===u.plot.AxisPosition.RIGHT?c.position=s.right+(b-m.length+1)*h:t.position===u.plot.AxisPosition.TOP?c.position=s.top+(b-m.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?c.position=s.bottom+(m.length-b+1)*h:t.position===u.plot.AxisPosition.LEFT&&(c.position=s.left+(m.length-b+1)*h))}else if(t.type===u.plot.AxisType.X){var y=i.get(u.plot.AxisPosition.LEFT)||[],C=i.get(u.plot.AxisPosition.RIGHT)||[],E=Math.max(s.left,s.left+(y.length-1)*l),w=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[E,w]}else if(t.type===u.plot.AxisType.Y){var T=i.get(u.plot.AxisPosition.BOTTOM)||[],F=i.get(u.plot.AxisPosition.TOP)||[],O=Math.max(s.bottom,s.bottom+(T.length-1)*a),P=Math.min(s.top-(F.length-1)*a,s.top);c.domain=[O,P]}}createBoundsFromDays(e){var t=e.map(l=>this.daysOfWeek.indexOf(l)),r=this.daysOfWeek.filter(l=>!e.includes(l)).map(l=>this.daysOfWeek.indexOf(l)),i=new Set;r.forEach(l=>{for(var s=l+1;s<l+this.daysOfWeek.length;s+=1){var o=s%this.daysOfWeek.length;if(t.includes(o)){i.add(o);break}}});var a=[];return i.forEach(l=>{for(var s=l-1;s>l-this.daysOfWeek.length;s-=1){var o=s<0?s+this.daysOfWeek.length:s;if(t.includes(o)){var u=(o+1)%7;a.push([u,l]);break}}}),a}createRangeBreakValuesFromHolidays(e,t,r){var i=[],a=[];return e.forEach(l=>{l.businessPeriods.length>0?a.push(...this.createPartialHoliday(l,t,r)):i.push(this.createFullHoliday(l,t,r))}),[{values:i},...a]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r){var i=e.date.toString(),a=["00:00"];e.businessPeriods.forEach(c=>{a.push(c.open),a.push(c.close)}),a.push("24:00");for(var l=[],s=0;s<a.length;s+=2){var o=a[s],u=a[s+1];if(o!==u){var d=[this.adjustDateForTimeZone("".concat(i," ").concat(o,":00.000000"),t,r)],h=tu*(_.periodToDecimal(u)-_.periodToDecimal(o));l.push({values:d,dvalue:h})}}return l}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,mi,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=_.titleFromSettings(e),o={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.X),position:"".concat(r.plot.AxisPosition.BOTTOM)},u={formatType:"".concat(r.plot.AxisFormatType.NUMBER),type:"".concat(r.plot.AxisType.Y),position:"".concat(r.plot.AxisPosition.LEFT)};return{charts:[{chartType:"".concat(r.plot.ChartType.XY),axes:[o,u],series:(i??[]).map(d=>({plotStyle:"".concat(l),name:d,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:o,table:t},{type:"".concat(r.plot.SourceType.Y),columnName:d,axis:u,table:t}]}))}],title:s}}unwrapValue(e,t){var{dh:r}=this;if(e!=null){if(nu(e))return r.i18n.DateTimeFormat.format(_.DATE_FORMAT,e,t);if(iu(e))return e.asNumber()}return e}wrapValue(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,{dh:i}=this;if(S.isDateType(t)&&typeof e=="string"){var a=e,l=_.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!r)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e,t){var{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticks:"outside",ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_color}},legend:{font:{color:t.legend_color}}};return e===r.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===r.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultTemplate(e){var{error_band_line_color:t,ohlc_increasing:r,ohlc_decreasing:i,title_color:a}=e;return{data:{bar:[{marker:{line:{color:"transparent"}}}],scatter:[{error_x:{color:t},error_y:{color:t}}],ohlc:[{increasing:{line:{color:r}},decreasing:{line:{color:i}}}],pie:[{outsidetextfont:{color:a}}],treemap:[{outsidetextfont:{color:a}}]},layout:this.makeDefaultLayout(e)}}makeDefaultLayout(e){var{dh:t}=this,{paper_bgcolor:r,plot_bgcolor:i,title_color:a,coastline_color:l,land_color:s,ocean_color:o,lake_color:u,river_color:d}=e,h={paper_bgcolor:r,plot_bgcolor:i,autosize:!0,colorway:_.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:yr({},_.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:yr({},_.DEFAULT_MARGIN),xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),polar:{angularaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),radialaxis:this.makeLayoutAxis(t.plot.AxisType.SHAPE,e),bgcolor:e.plot_bgcolor},scene:{xaxis:this.makeLayoutAxis(t.plot.AxisType.X,e),yaxis:this.makeLayoutAxis(t.plot.AxisType.Y,e),zaxis:this.makeLayoutAxis(null,e)},geo:{showcoastlines:!0,showframe:!1,showland:!0,showocean:!0,showlakes:!0,showrivers:!0,bgcolor:r,coastlinecolor:l,landcolor:s,oceancolor:o,lakecolor:u,rivercolor:d}};return h.datarevision=0,h}hydrateSettings(e){var{dh:t}=this;return yr(yr({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}Ne(_,"DEFAULT_AXIS_SIZE",.15);Ne(_,"MIN_AXIS_SIZE",.025);Ne(_,"MAX_AXIS_SIZE",.2);Ne(_,"AXIS_SIZE_PX",75);Ne(_,"LEGEND_WIDTH_PX",50);Ne(_,"MAX_LEGEND_SIZE",.25);Ne(_,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));Ne(_,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");Ne(_,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));Ne(_,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));Ne(_,"SUBTITLE_LINE_HEIGHT",25);Ne(_,"DEFAULT_MARKER_SIZE",6);Ne(_,"MODE_MARKERS","markers");Ne(_,"MODE_LINES","lines");const Ae=_;function Me(n,e,t){return e=ou(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ou(n){var e=uu(n,"string");return typeof e=="symbol"?e:String(e)}function uu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class be{constructor(e){Me(this,"dh",void 0),Me(this,"listeners",void 0),Me(this,"formatter",void 0),Me(this,"renderOptions",void 0),Me(this,"rect",void 0),Me(this,"isDownsamplingDisabled",void 0),Me(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(be.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(be.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(be.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(be.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(be.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(be.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(be.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(be.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(be.EVENT_ERROR,{detail:e}))}}Me(be,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");Me(be,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");Me(be,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");Me(be,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");Me(be,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");Me(be,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");Me(be,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");Me(be,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");Me(be,"EVENT_ERROR","ChartModel.EVENT_ERROR");const du=be;function bi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ci(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bi(Object(t),!0).forEach(function(r){fe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fe(n,e,t){return e=hu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hu(n){var e=cu(n,"string");return typeof e=="symbol"?e:String(e)}function cu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var we=Z.module("FigureChartModel");class Kr extends du{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,fe(this,"chartUtils",void 0),fe(this,"dh",void 0),fe(this,"figure",void 0),fe(this,"settings",void 0),fe(this,"data",void 0),fe(this,"layout",void 0),fe(this,"seriesDataMap",void 0),fe(this,"pendingSeries",void 0),fe(this,"oneClicks",void 0),fe(this,"filterColumnMap",void 0),fe(this,"lastFilter",void 0),fe(this,"isConnected",void 0),fe(this,"seriesToProcess",void 0),fe(this,"addPendingSeries",ht(()=>{for(var a=Ae.getAxisTypeMap(this.figure),{pendingSeries:l}=this,s=function(){var d,h=l[o],c=r.figure.charts.find(v=>v.series.includes(h));r.addSeries(h,a,(d=c==null?void 0:c.showLegend)!==null&&d!==void 0?d:null),h.subscribe()},o=0;o<l.length;o+=1)s();this.pendingSeries=[]},Kr.ADD_SERIES_DEBOUNCE)),fe(this,"getTimeZone",Ge((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}})),fe(this,"getValueTranslator",Ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)})),fe(this,"getValueParser",Ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)})),fe(this,"getRangeParser",Ge((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]})),fe(this,"getAxisRangeParser",Ge((a,l)=>s=>{var o=Ae.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new Ae(e),this.figure=t,this.settings=i,this.data=[],this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"}},this.seriesDataMap=new Map,this.pendingSeries=[],this.oneClicks=[],this.filterColumnMap=new Map,this.lastFilter=new Map,this.isConnected=!0,this.seriesToProcess=new Set,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure()}close(){this.figure.close(),this.addPendingSeries.cancel(),this.stopListeningFigure()}getDefaultTitle(){if(this.figure.title!=null&&this.figure.title.length>0)return this.figure.title;if(this.figure.charts.length===1){var e;return(e=this.figure.charts[0].title)!==null&&e!==void 0?e:""}return""}initAllSeries(){var e=this;this.oneClicks=[],this.filterColumnMap.clear();var{charts:t}=this.figure,r=Ae.getAxisTypeMap(this.figure),i=[];this.seriesToProcess=new Set;for(var a=function(){for(var c=t[l],v=0;v<c.series.length;v+=1){var g=c.series[v];i.push(g.name),e.addSeries(g,r,c.showLegend)}var{axes:p,title:m}=c;if(m!=null&&m.length>0&&(t.length>1||e.figure.title!=null)){var b=p.find(M=>M.type===e.dh.plot.AxisType.X),y=p.find(M=>M.type===e.dh.plot.AxisType.Y);if(b==null||y==null)we.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,E,w,T,F=((C=(E=r.get(b.type))===null||E===void 0?void 0:E.findIndex(M=>M===b))!==null&&C!==void 0?C:0)+1,O=((w=(T=r.get(y.type))===null||T===void 0?void 0:T.findIndex(M=>M===y))!==null&&w!==void 0?w:0)+1,P={align:"center",x:.5,y:1,yshift:17,text:m,showarrow:!1,xref:"x".concat(F," domain"),yref:"y".concat(O," domain")};e.layout.annotations==null?e.layout.annotations=[P]:e.layout.annotations.push(P)}}},l=0;l<t.length;l+=1)a();for(var s=[...this.seriesDataMap.keys()],o=s.filter(h=>i.indexOf(h)<0),u=0;u<o.length;u+=1){var d=o[u];this.seriesDataMap.delete(d)}}addSeries(e,t,r){var i,a,{dh:l}=this,s=this.chartUtils.makeSeriesDataFromSeries(e,t,Ae.getSeriesVisibility(e.name,this.settings),r,(i=(a=this.renderOptions)===null||a===void 0?void 0:a.webgl)!==null&&i!==void 0?i:!0);if(this.seriesDataMap.set(e.name,s),this.seriesToProcess.add(e.name),this.data=[...this.seriesDataMap.values()],e.plotStyle===l.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===l.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=Ae.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===l.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var{oneClick:o}=e,{columns:u}=o,d=0;d<u.length;d+=1)this.filterColumnMap.set(u[d].name,u[d]);this.oneClicks.push(o)}this.updateLayoutFormats()}subscribe(e){super.subscribe(e),this.listeners.length===1&&(this.initAllSeries(),this.subscribeFigure())}unsubscribe(e){super.unsubscribe(e),this.listeners.length===0&&this.unsubscribeFigure()}subscribeFigure(){if(!this.isConnected){we.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&&(we.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){we.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){we.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){we.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){we.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;we.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];we.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){we.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){we.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){we.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;we.debug("handleFigureSeriesAdded",t),this.pendingSeries.push(t),this.addPendingSeries()}setDimensions(e){super.setDimensions(e),this.updateAxisPositions()}setTitle(e){var t,r;super.setTitle(e);var i=(t=(r=(e??"").match(/<br>/g))===null||r===void 0?void 0:r.length)!==null&&t!==void 0?t:0,a=Ae.DEFAULT_MARGIN.t+i*Ae.SUBTITLE_LINE_HEIGHT;this.layout.margin?this.layout.margin.t=a:this.layout.margin={t:a},typeof this.layout.title=="string"?this.layout.title=e:(this.layout.title=Ci({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Ci({},this.layout.title.pad),this.layout.title.pad.t=Ae.DEFAULT_TITLE_PADDING.t+i*Ae.SUBTITLE_LINE_HEIGHT*.5)}getPlotWidth(){var e,t,r,i;return!this.rect||!this.rect.width?0:Math.max(this.rect.width-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.l)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.r)!==null&&r!==void 0?r:0),0)}getPlotHeight(){var e,t,r,i;return!this.rect||!this.rect.height?0:Math.max(this.rect.height-((e=(t=this.layout.margin)===null||t===void 0?void 0:t.t)!==null&&e!==void 0?e:0)-((r=(i=this.layout.margin)===null||i===void 0?void 0:i.b)!==null&&r!==void 0?r:0),0)}updateAxisPositions(){var e=this.getPlotWidth(),t=this.getPlotHeight();this.chartUtils.updateFigureAxes(this.layout,this.figure,r=>this.getAxisRangeParser(r,this.formatter),e,t)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{we.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):we.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,l=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);l&&xa(l,s,r)}cleanSeries(e){var{dh:t}=this,{name:r,plotStyle:i}=e,a=this.seriesDataMap.get(r);if(a!=null){if(i===t.plot.SeriesPlotStyle.HISTOGRAM){var{xLow:l,xHigh:s}=a;if(l&&s&&l.length===s.length){for(var o=[],u=0;u<l.length;u+=1)o.push(s[u]-l[u]);a.width=o}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:d,xLow:h,xHigh:c,y:v,yLow:g,yHigh:p}=a;h&&c&&h!==d&&(a.error_x=Ae.getPlotlyErrorBars(d,h,c)),g&&p&&g!==v&&(a.error_y=Ae.getPlotlyErrorBars(v,g,p))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:m,labels:b}=a;m!==void 0&&b===void 0&&(a.labels=m)}}}getData(){return this.data}getLayout(){return this.layout}getFilterColumnMap(){return new Map(this.filterColumnMap)}isFilterRequired(){return this.oneClicks.find(e=>e.requireAllFiltersToDisplay)!=null}setFilter(e){var t=this;if(this.oneClicks.length===0){we.warn("Trying to set a filter, but no one click!");return}we.debug("setFilter",e);for(var r=function(){var l=t.oneClicks[i],{columns:s}=l,o=new Set([...e.keys(),...t.lastFilter.keys()]);o.forEach(u=>{var d=e.get(u);t.lastFilter.get(u)!==d&&s.find(h=>h.name===u)!=null&&l.setValueForColumn(u,d)})},i=0;i<this.oneClicks.length;i+=1)r();this.lastFilter=new Map(e)}setFigure(e){this.close(),this.figure=e,this.setTitle(this.getDefaultTitle()),this.initAllSeries(),this.updateAxisPositions(),this.startListeningFigure(),this.listeners.length>0&&this.subscribeFigure()}updateSettings(e){this.settings=e}}fe(Kr,"ADD_SERIES_DEBOUNCE",50);const Si=Kr;function yi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function on(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){yi(a,r,i,l,s,"next",o)}function s(o){yi(a,r,i,l,s,"throw",o)}l(void 0)})}}class xn{static makeModelFromSettings(e,t,r){return on(function*(){var i=yield xn.makeFigureFromSettings(e,t,r);return new Si(e,i,t)})()}static makeFigureFromSettings(e,t,r){return on(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new Ae(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return on(function*(){return new Si(e,r,t)})()}}const or=xn;function Ei(n){return n.setFigure!==void 0}function Zt(n,e,t,r){var i,a=(i=e.COMPONENT)!==null&&i!==void 0?i:e.displayName;if(a==null)throw new Error("ComponentType must have a `COMPONENT` or `displayName` attribute.");Le.useEffect(()=>{var l=n(a,e,t,r);return()=>{l()}},[e,r,t,a,n])}function wi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?wi(Object(t),!0).forEach(function(r){fu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):wi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fu(n,e,t){return e=pu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pu(n){var e=mu(n,"string");return typeof e=="symbol"?e:String(e)}function mu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gu=D.lazy(()=>Hr(()=>import("./IrisGrid-1be99b54.js"),["./IrisGrid-1be99b54.js","./vendor-2f94bc96.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-78e71855.js","./index-11271fba.css","./LogPanel-891b65b4.js","./LogPanel-68a471d6.css","./IrisGridThemeProvider-39852375.js","./IrisGridThemeProvider-01bdf2da.css","./IrisGrid-53f96366.css"],import.meta.url)),sl=D.forwardRef((n,e)=>f.jsx(D.Suspense,{fallback:f.jsx(Kt,{}),children:f.jsx(gu,vu({ref:e},n))}));sl.displayName="LazyIrisGrid";const _n=sl;var Cn;(function(n){n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(Cn||(Cn={}));const Ti=Cn;var bu=Object.freeze([[Ti.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Ti.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const ol={DEFAULTS:bu};var Sn;(function(n){n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique"})(Sn||(Sn={}));const Q=Sn;var Xv=[Q.SUM,Q.ABS_SUM,Q.MIN,Q.MAX,Q.VAR,Q.AVG,Q.STD,Q.FIRST,Q.LAST,Q.COUNT_DISTINCT,Q.DISTINCT,Q.COUNT,Q.UNIQUE],Cu=n=>{switch(n){default:return!1}},Su=(n,e)=>{switch(n){case Q.COUNT:case Q.FIRST:case Q.LAST:case Q.COUNT_DISTINCT:case Q.DISTINCT:case Q.UNIQUE:return!0;case Q.MIN:case Q.MAX:return S.isNumberType(e)||S.isDateType(e)||S.isTextType(e);case Q.SUM:case Q.ABS_SUM:case Q.VAR:case Q.AVG:case Q.STD:return S.isNumberType(e);case Q.SKIP:return!1}},ul=(n,e)=>n.filter(t=>t.isProxy!==!0&&Su(e,t.type)),yu=(n,e,t,r)=>ul(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const Pi={isRollupOperation:Cu,filterValidColumns:ul,getOperationColumnNames:yu};function Eu(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function ir(n,e,t){return e=wu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wu(n){var e=Tu(n,"string");return typeof e=="symbol"?e:String(e)}function Tu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yn;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(yn||(yn={}));class x{static normalize(e,t,r,i){var a=e,l=t,s=r,o=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),l!=null&&o!=null&&o<l&&(l=o,o=t),[a,l,s,o]}static makeNormalized(e,t,r,i){return new x(...x.normalize(e,t,r,i))}static makeCell(e,t){return new x(e,t,e,t)}static makeColumn(e){return new x(e,null,e,null)}static makeRow(e){return new x(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],l=t.length-1;l>i;l-=1){var s=t[l];if(a.contains(s))t.splice(l,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(l,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:o,endRow:u}=a,d=x.minOrNull(a.startColumn,s.startColumn),h=x.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new x(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=x.minOrNull(a.startRow,s.startRow),p=x.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new x(c,g,v,p),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){var r,i,a,l,s,o;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:c}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,h=h!=null&&t.endColumn!=null?Math.min(h,t.endColumn):(i=h)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,c=c!=null&&t.endRow!=null?Math.min(c,t.endRow):(l=c)!==null&&l!==void 0?l:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((o=c)!==null&&o!==void 0?o:-1)?null:new x(u,d,h,c)}static subtractFromRange(e,t){var r=[],i=x.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new x(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new x(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new x(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new x(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...x.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=x.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,l,s;return x.isBounded(e)?e:new x((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(l=e.endColumn)!==null&&l!==void 0?l:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>x.boundedRange(i,t,r))}static offset(e,t,r){return new x(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:x.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(c=>c.containsCell(t,r)),a>=0)){var l=e[a],s=l.nextCell(t,r,i);if(s!=null)return s}switch(i){case x.SELECTION_DIRECTION.DOWN:case x.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case x.SELECTION_DIRECTION.LEFT:case x.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,h=e[d];return h.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,l,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=r.endColumn)!==null&&l!==void 0?l:NaN)-((s=r.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:x.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){ir(this,"startColumn",void 0),ir(this,"startRow",void 0),ir(this,"endColumn",void 0),ir(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=r,this.endRow=i}equals(e){return this.startColumn===e.startColumn&&this.startRow===e.startRow&&this.endColumn===e.endColumn&&this.endRow===e.endRow}contains(e){return(this.startColumn==null||e.startColumn!=null&&this.startColumn<=e.startColumn)&&(this.startRow==null||e.startRow!=null&&this.startRow<=e.startRow)&&(this.endColumn==null||e.endColumn!=null&&this.endColumn>=e.endColumn)&&(this.endRow==null||e.endRow!=null&&this.endRow>=e.endRow)}containsCell(e,t){return e==null||t==null?!1:(this.startColumn==null||this.startColumn<=e)&&(this.endColumn==null||this.endColumn>=e)&&(this.startRow==null||this.startRow<=t)&&(this.endRow==null||this.endRow>=t)}touches(e){return x.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&x.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return x.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:x.SELECTION_DIRECTION.DOWN;if(!x.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case x.SELECTION_DIRECTION.DOWN:case x.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case x.SELECTION_DIRECTION.LEFT:case x.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!x.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:l,endRow:s}=this;switch(r){case x.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 x.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 x.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 x.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>l)return{column:a,row:Math.min(t-1,s)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:x.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,r),r+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}ir(x,"SELECTION_DIRECTION",yn);function Pu(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function Er(n){return Pu(n)&&n[0]!=null&&n[1]!=null}function Ni(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function wr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ni(Object(t),!0).forEach(function(r){dl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ni(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function dl(n,e,t){return e=Nu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nu(n){var e=Du(n,"string");return typeof e=="symbol"?e:String(e)}function Du(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Qv(n){return(n==null?void 0:n.href)!==void 0}class G{static getGridPointFromXY(e,t,r){var i=G.getColumnAtX(e,r),a=G.getRowAtY(t,r),l=G.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=G.getGridPointFromXY(e,t,r),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=r,c=i!==null?h.get(i):null,v=a!==null?d.get(a):null,g=a!==null?o.get(a):null,p=i!==null?u.get(i):null,m=a!==null?l.get(a):null,b=i!==null?s.get(i):null;return{row:i,column:a,modelRow:c??null,modelColumn:v??null,left:g??null,top:p??null,columnWidth:m??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var r=G.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return et(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=G.iterateFloatingStart(e,r,i);return a!==void 0?a:G.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,l){var s=Math.max(e,r),o=Math.min(t,a-i-1),u=G.iterateFloating(r,i,a,l);if(u!==void 0)return u;for(var d=s;d<=o;d+=1)if(u=l(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=r.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,r,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:G.iterateFloating(r,i,t,c=>{if(G.isInItem(c,l,s,e))return c});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(G.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:l,visibleColumns:s,allColumnXs:o,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,l,s,o,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,l,s,o)}static getNextShownItem(e,t,r,i){var a=r.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=r[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return G.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return G.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:c}=r,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(c*l<t||!v||g<=0)return null;for(var p=e-a,m=g*.5,b=!1,y=s.length-1;y>=0;y-=1){var C,E,w=s[y],T=(C=d.get(w))!==null&&C!==void 0?C:0,F=(E=h.get(w))!==null&&E!==void 0?E:0,O=F===0;if(!b||!O){var P=T+F;O?P+=m:b&&(P-=m);var M=P-m,k=P+m;if(M<=p&&p<=k)return w;b=O}}b=!1;for(var L=u.length-1;L>=0;L-=1){var j,H,Y=u[L],te=(j=d.get(Y))!==null&&j!==void 0?j:0,re=(H=h.get(Y))!==null&&H!==void 0?H:0,ae=re===0;if(te<o-re)return null;if(!b||!ae){var le=te+re;ae?le+=m:b&&(le-=m);var pe=le-m,I=le+m;if(pe<=p&&p<=I)return Y;b=ae}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return G.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!G.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=r[l];if(!G.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return G.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var c=t-l,v=h*.5,g=!1,p=s.length-1;p>=0;p-=1){var m,b,y=s[p],C=(m=o.get(y))!==null&&m!==void 0?m:0,E=(b=u.get(y))!==null&&b!==void 0?b:0,w=E===0;if(!g||!w){var T=C+E;w?T+=v:g&&(T-=v);var F=T-v,O=T+v;if(F<=c&&c<=O)return y;g=w}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return G.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return G.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return[...r];var i=[...r],a=i[i.length-1];return a!=null&&!Er(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=wr(wr({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return G.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var l=[...r],s=l[l.length-1];s!=null&&Er(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=wr(wr({},s),{},{to:a}):l.push({from:e,to:a});var o=l[l.length-1];return Er(o.from)&&o.from[0]===o.to&&l.pop(),l}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?G.moveRange(e,t,r,i):G.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=r[s],h=1,c;Er(u)?(h=u[1]-u[0]+1,[c]=u):c=u;for(var v=i?d:c,g=v+h-1,p=i?c:d,m=p-v,b=[],y=function(){var w,T,F=(w=a[C][0])!==null&&w!==void 0?w:Number.NEGATIVE_INFINITY,O=(T=a[C][1])!==null&&T!==void 0?T:Number.POSITIVE_INFINITY,P,M=[[F,v-1],[v,g],[g+1,O]].map(k=>{var[L,j]=k;return[Math.max(L,F),Math.min(j,O)]}).filter(k=>{var[L,j]=k;return L<=j}).map(k=>{var[L,j]=k;return v<=L&&g>=j?(P=[L+m,j+m],P):g<L?[L-h,j-h]:k}).map(k=>{var[L,j]=k;return p>L&&p<=j?[[L,p-1],[p+h,j+h]]:k===P?[k]:p<=L?[[L+h,j+h]]:[k]}).flat();b.push(...M)},C=0;C<a.length;C+=1)y();a=b.map(E=>{var[w,T]=E;return[Number.isFinite(w)?w:null,Number.isFinite(T)?T:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)l();return a}static translateRange(e,t,r,i){for(var a=G.applyItemMoves(e.startColumn,e.endColumn,t,i),l=G.applyItemMoves(e.startRow,e.endRow,r,i),s=[],o=0;o<a.length;o+=1)for(var u=a[o],d=0;d<l.length;d+=1){var h=l[d];s.push(new x(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=G.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>G.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return G.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee;return G.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=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,r));return i}static getVisibleRangeIndexes(e,t,r){return G.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=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,r));return i}static getVisibleIndex(e,t){var r=G.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>G.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return G.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=G.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:c,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:p,columnCount:m,rowCount:b}=e,y=i,C=a,E=l,w=s;return r!=null&&(r>d&&(y+=c),r<m-h&&(E-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(w-=p)),{x1:y,y1:C,x2:E,y2:w}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!G.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=r):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(G.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],l=i[1];r===0?t.push([a,l]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],l):t.push([a,l])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:c}=t,v=et(s+r,s,u-h),g=et(s+a,s,u-h),p=et(o+i,o,d-c),m=et(o+l,o,d-c);return{x1:v,y1:p,x2:g,y2:m,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:c,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:p,treeHorizontalPadding:m}=l,b=It(c,r),y=It(v,t),C=a.textAlignForCell(y,b),E=It(o,t),w=It(d,r),T=It(u,t),F=It(h,r),O=t===s,P=0;Eu(a)&&a.hasExpandableRows&&O&&(P=p*(a.depthForRow(r)+1)+m);var M=T-P,k=E+g,L=w+F*.5;return C==="right"?k=E+M-g:C==="center"&&(k=E+M*.5),k+=P,{width:M-g*2,x:k,y:L}}static findTokensWithProtocolInText(e){var t=ls(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}dl(G,"PIXELS_PER_LINE",100/3);const Di=G;function Oi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Fi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Oi(Object(t),!0).forEach(function(r){Ou(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Oi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ou(n,e,t){return e=Fu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fu(n){var e=Mu(n,"string");return typeof e=="symbol"?e:String(e)}function Mu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Iu=(n,e)=>{var t=!1,r=Ge(n,Fi(Fi({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const En=Iu;function Ru(n,e,t){return e=Lu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lu(n){var e=Au(n,"string");return typeof e=="symbol"?e:String(e)}function Au(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var un=5e3;class ku extends ss{constructor(){super(...arguments),Ru(this,"getCachedTokensInText",En((e,t)=>{if(t>=e.length)return Di.findTokensWithProtocolInText(e);var r=e.slice(t-1,un).search(/\s/),i=t+r;r===-1&&(i=Math.min(un,e.length));var a=e.substring(0,i);return Di.findTokensWithProtocolInText(a)}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:un,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const xu=ku;function wn(n,e,t){return e=_u(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _u(n){var e=ju(n,"string");return typeof e=="symbol"?e:String(e)}function ju(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Tt=[],Vu=new Set;class hl extends xu{constructor(e){super(),wn(this,"dh",void 0),wn(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,r){super.addEventListener(e,t,r),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,r){super.removeEventListener(e,t,r),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get groupedColumns(){return Tt}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 Tt}get initialMovedRows(){return Tt}get initialColumnHeaderGroups(){return Tt}get layoutHints(){return null}get frontColumns(){return Tt}get backColumns(){return Tt}get keyColumnSet(){return Vu}get frozenColumns(){return Tt}isColumnFrozen(e){return!1}isColumnSortable(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}get isViewportPending(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}dataBarOptionsForCell(e,t,r){throw new Error("Method not implemented.")}}wn(hl,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED",VIEWPORT_UPDATED:"VIEWPORT_UPDATED"}));const K=hl;function bt(n,e,t){return e=$u(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $u(n){var e=Hu(n,"string");return typeof e=="symbol"?e:String(e)}function Hu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Gu=Z.module("ColumnHeaderGroup");function dn(n){return n instanceof pr}class pr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;bt(this,"name",void 0),bt(this,"children",void 0),bt(this,"depth",void 0),bt(this,"parent",void 0),bt(this,"color",void 0),bt(this,"childIndexes",void 0),bt(this,"getVisibleRange",B(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&&Gu.warn("Column header group ".concat(this.name," is not contiguous")),[h,c]})),this.name=t,this.children=r,this.color=i??void 0,this.depth=a,this.childIndexes=l,this.parent=s}setParent(e){this.parent=e}addChildren(e){var t=new Set(this.children.concat(e));this.children=[...t]}removeChildren(e){var t=new Set(this.children);e.forEach(r=>t.delete(r)),this.children=[...t]}get isNew(){return this.name.startsWith(pr.NEW_GROUP_PREFIX)}}bt(pr,"NEW_GROUP_PREFIX",":newGroup");function it(n){return(n==null?void 0:n.isPartitionRequired)!==void 0&&(n==null?void 0:n.partitionColumns)!==void 0&&(n==null?void 0:n.partitionKeysTable)!==void 0&&(n==null?void 0:n.partitionMergedTable)!==void 0&&(n==null?void 0:n.partitionTable)!==void 0}function Zv(n){return it(n)&&n.partitionConfig!==void 0}var Uu=["selectedValues"],Bu=["selectedValues"];function Mi(n,e){if(n==null)return{};var t=Wu(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Wu(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function Ii(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function He(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ii(Object(t),!0).forEach(function(r){Tn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ii(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Tn(n,e,t){return e=zu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zu(n){var e=qu(n,"string");return typeof e=="symbol"?e:String(e)}function qu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Jt=Z.module("IrisGridUtils");function Jv(n){return n.partition!==void 0}function Ri(n){return Array.isArray(n.partitions)}function ct(n,e){return n>=0&&n<e.length}function Ku(n){return(n==null?void 0:n.asDate)!=null}class ne{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:l}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(o=>{var{to:u,from:d}=o;return ct(u,s)&&(typeof d=="number"&&ct(d,s)||Array.isArray(d)&&ct(d[0],s)&&ct(d[1],s))}).map(o=>{var{to:u,from:d}=o;return{to:s[u].name,from:Array.isArray(d)?[s[d[0]].name,s[d[1]].name]:s[d].name}}),movedRows:[...l]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:l,movedRows:s}=t,{columns:o}=e,u=ne.parseCustomColumnNames(r),d=o.map(h=>{var{name:c}=h;return c}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...l].map(h=>{var{to:c,from:v}=h,g=p=>typeof p=="string"?d.findIndex(m=>m===p):p;return{to:g(c),from:Array.isArray(v)?[g(v[0]),g(v[1])]:g(v)}}).filter(h=>{var{to:c,from:v}=h;return ct(c,d)&&(typeof v=="number"&&ct(v,d)||Array.isArray(v)&&ct(v[0],d)&&ct(v[1],d))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partitions:i,advancedSettings:a}=t;return{isSelectingPartition:r,partitions:i,advancedSettings:[...a]}}static hydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,advancedSettings:i}=t,a=[];return Ri(t)?a=t.partitions:t.partition!=null&&(a=[t.partition]),{isSelectingPartition:r,partitions:a,advancedSettings:new Map([...ol.DEFAULTS,...i])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[r,i]=t,{text:a}=i;return[r,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:r,isAbs:i,direction:a}=t;return{column:r.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:r,irisGridState:i}=e,a=Ri(r)?r.partitions:[r.partition],{advancedFilters:l,quickFilters:s,sorts:o}=i;return{advancedFilters:l,inputFilters:t,partitions:a,quickFilters:s,sorts:o}}static getInputFiltersForColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.filter(r=>{var{name:i,type:a}=r;return e.find(l=>{var{name:s,type:o}=l;return s===i&&o===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],l=e.get(a);(l==null?void 0:l.filter)!=null&&t.push(l.filter)}return t}static getHiddenColumns(e){return[...e.entries()].filter(t=>{var[,r]=t;return r===0}).map(t=>{var[r]=t;return r})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var r=ne.parseCustomColumnNames(e),i=ne.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return r.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=r[s],d=i.findIndex(b=>b===u),h=[],c=0;c<a.length;c+=1){var v=a[c],g=He({},v),[p,m]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<p&&(p-=1),d<=m&&(m-=1),p<=m&&p!==g.to&&(p===m?h.push(He(He({},g),{},{from:p})):h.push(He(He({},g),{},{from:[p,m]}))),d=G.applyItemMoves(d,d,[v])[0][0]}a=h,i.splice(i.findIndex(b=>b===u),1)},s=0;s<r.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var l=[],s=t;s<=r;s+=1){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s>=0&&l.length<r;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s<e.length&&l.length<r;){var o=G.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var l=e.find(s=>{var{name:o}=s;return o===a});l!=null&&!t.includes(l)&&i.push(l)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(!(t==null||r==null)){var o=ne.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=ne.getPrevVisibleColumns(e,t-1,u,i,a),h=ne.getNextVisibleColumns(e,r+1,u,i,a),c=[...d,...o,...h];return ne.getColumnsToFetch(e,c,l)}}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,r=0;r<e.length;r+=1){var i=e[r],a="".concat(i.startRow,":").concat(i.endRow),l="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(l)}for(var s=[...t.keys()],o=t.get(s[0]).sort().join(","),u=1;u<s.length;u+=1)if(t.get(s[u]).sort().join(",")!==o)return!1;return!0}static isValidIndex(e){return!Number.isInteger(e)||typeof e!="number"?!1:e>=0}static columnsFromRanges(e,t){if(e==null||e.length===0)return[];if(e[0].startColumn===null&&e[0].endColumn===null)return[...t];for(var r=new Set,i=0;i<e.length;i+=1){var a=e[i];R(a.startColumn),R(a.endColumn);for(var l=(s=a.startColumn)!==null&&s!==void 0?s:0;l<=((o=a.endColumn)!==null&&o!==void 0?o:t.length-1);l+=1){var s,o;r.add(l)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var l=r[a],s=[],o=0;o<t.length;o+=1){var u=t[o],d=l.get(u);s.push(d)}i.push(s)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:l=[],showConstituents:s=!0,showNonAggregatedColumns:o=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},h=d.map(b=>{var{operation:y,selected:C,invert:E}=b;return Pi.isRollupOperation(y)?[]:Pi.getOperationColumnNames(e,y,C,E)}),c={},v=0;v<d.length;v+=1)c[d[v].operation]=h[v];if(o){var g=new Set(e.map(b=>b.name).filter(b=>!l.includes(b)));if(h.forEach(b=>{b.forEach(y=>g.delete(y))}),g.size>0){var p,m=(p=c[Q.FIRST])!==null&&p!==void 0?p:[];c[Q.FIRST]=[...m,...g]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:c}}static getPendingErrors(e){e.forEach((t,r)=>{if(!ne.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!ne.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(Jt.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=e.find(i=>{var{name:a}=i;return a===t});return r==null&&Jt.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),r}static changeFilterColumnNamesToIndexes(e,t){return t.map(r=>{var{name:i,filter:a}=r,l=e.findIndex(s=>s.name===i);return l<0?null:[l,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((d,h)=>d.operator==="eq"&&h.operator!=="eq"?1:d.operator!=="eq"&&h.operator==="eq"?-1:d.startColumnIndex-h.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:l,operator:s}=t[i];if(l!==void 0){var o="";s!==void 0&&(l==null&&s==="eq"?o="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?o="*":o=S.getFilterOperatorString(s)));var u="".concat(o).concat(a);s==="startsWith"&&(u="".concat(a).concat(o)),e!=null&&l!==null&&S.isCharType(e)&&(u="".concat(o).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=s==="eq"?" || ":" && "),r+=u}}return r}static parseColumnHeaderGroups(e,t){var r=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:r,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(R(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 p=[],m=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),E=e.getColumnIndexByName(y);if(C){var w=u(C);p.push(...w.childIndexes),m=Math.max(m,w.depth+1)}else if(E!=null)p.push(E),m=Math.max(m,1);else throw new Error("Unknown child ".concat(y," in group ").concat(v))});var b=new pr(He(He({},h),{},{name:v,children:h.children,depth:m,childIndexes:p.flat()}));return a.set(v,b),(c=h.children)===null||c===void 0||c.forEach(y=>i.set(y,b)),r=Math.max(r,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:r,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)&&Ku(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),l=a.toISOString(),s=l.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){Tn(this,"dh",void 0),Tn(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),In(this)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:ee,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:l,metrics:s,quickFilters:o,customColumns:u,conditionalFormats:d=ee,reverseType:h,rollupConfig:c=void 0,showSearchBar:v,searchValue:g,selectDistinctColumns:p=ee,selectedSearchColumns:m,sorts:b,invertSearchColumns:y,pendingDataMap:C=Mr,frozenColumns:E,columnHeaderGroups:w,partitionConfig:T=void 0}=t;R(s);var{userColumnWidths:F,userRowHeights:O}=s,{columns:P}=e,M=it(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(P,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:ne.dehydrateQuickFilters(o),sorts:ne.dehydrateSort(b),userColumnWidths:[...F].filter(k=>{var[L]=k;return L!=null&&L>=0&&L<P.length}).map(k=>{var[L,j]=k;return[P[L].name,j]}),userRowHeights:[...O],customColumns:[...u],conditionalFormats:[...d],reverseType:h,rollupConfig:c,showSearchBar:v,searchValue:g,selectDistinctColumns:[...p],selectedSearchColumns:m,invertSearchColumns:y,pendingDataMap:this.dehydratePendingDataMap(P,C),frozenColumns:E,columnHeaderGroups:w==null?void 0:w.map(k=>{var L;return{name:k.name,children:k.children,color:(L=k.color)!==null&&L!==void 0?L:null}}),partitionConfig:this.dehydratePartitionConfig(M,T)}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:l={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:o,quickFilters:u,sorts:d,customColumns:h,conditionalFormats:c,userColumnWidths:v,userRowHeights:g,reverseType:p,rollupConfig:m=void 0,showSearchBar:b,searchValue:y,selectDistinctColumns:C,selectedSearchColumns:E,invertSearchColumns:w=!0,pendingDataMap:T=[],frozenColumns:F,columnHeaderGroups:O,partitionConfig:P}=t,{columns:M,formatter:k}=e,L=it(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(M,a,k.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(M,u,k.timeZone),sorts:this.hydrateSort(M,d),userColumnWidths:new Map(v.map(j=>{var[H,Y]=j;return typeof H=="string"||H instanceof String?[M.findIndex(te=>{var{name:re}=te;return re===H}),Y]:[H,Y]}).filter(j=>{var[H]=j;return H!=null&&H>=0&&H<M.length})),customColumns:h,conditionalFormats:c,userRowHeights:new Map(g),reverseType:p,rollupConfig:m,showSearchBar:b,searchValue:y,selectDistinctColumns:C,selectedSearchColumns:E,invertSearchColumns:w,pendingDataMap:this.hydratePendingDataMap(M,T),frozenColumns:F,columnHeaderGroups:ne.parseColumnHeaderGroups(e,(r=O??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(L,P)}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=ne.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){Jt.error("hydrateQuickFilters error with",o,h)}return[l,{text:o,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,l=ne.getColumn(e,i);R(l);var s=this.dehydrateAdvancedFilterOptions(l,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,o=ne.getColumn(e,l);R(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=ne.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(c){Jt.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Mi(t,Uu);return He({selectedValues:r==null?void 0:r.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Mi(t,Bu);return He({selectedValues:r==null?void 0:r.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].map(l=>{var[s,o]=l;return[e[s].name,this.dehydrateValue(o,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(l=>{var{name:s}=l;return s===a})),r.get(a));return new Map(t.map(a=>{var[l,{data:s}]=a;return[l,{data:new Map(s.map(o=>{var u,[d,h]=o,c=i(d);return R(c),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[c].type)]}))}]}))}dehydratePartitionConfig(e,t){return t==null?t:He(He({},t),{},{partitions:t.partitions.map((r,i)=>this.dehydrateValue(r,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:He(He({},t),{},{partitions:t.partitions.map((r,i)=>this.hydrateValue(r,e[i].type))})}dehydrateValue(e,t){return S.isDateType(t)?this.dehydrateDateTime(e):S.isLongType(t)?ne.dehydrateLong(e):e}hydrateValue(e,t){return S.isDateType(t)?this.hydrateDateTime(e):S.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(se.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(se.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh:r}=this;return t.map(i=>{var{column:a,isAbs:l,direction:s}=i;if(s===S.sortDirection.reverse)return r.Table.reverse();var o=typeof a=="string"?ne.getColumnByName(e,a):ne.getColumn(e,a);if(o!=null){var u=o.sort();return l&&(u=u.abs()),s===S.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(i=>i!=null&&i.direction!==S.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=ne.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=ne.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),o=[];t.sorts&&(o=this.hydrateSort(i,t.sorts));var u=[...a,...l],{partitions:d,partitionColumns:h}=t;if(d&&d.length&&h&&h!==null&&h!==void 0&&h.length){for(var c=h.map(p=>ne.getColumnByName(i,p)),v=0;v<c.length;v+=1)if(c[v]!==void 0&&d[v]!=null){var g=c[v].filter().eq(this.dh.FilterValue.ofString(d[v]));u=[g,...u]}}u=[...s,...u],e.applyFilter(u),e.applySort(o)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t.map(i=>{var{name:a,type:l,value:s}=i,o=e.find(u=>{var{name:d,type:h}=u;return d===a&&h===l});if(o)try{return this.tableUtils.makeQuickFilter(o,s,r)}catch(u){Jt.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(R(i.startRow),R(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return R(a),R(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}}const ue=ne;function Li(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Yu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Li(Object(t),!0).forEach(function(r){_r(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Li(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function _r(n,e,t){return e=Xu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xu(n){var e=Qu(n,"string");return typeof e=="symbol"?e:String(e)}function Qu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class cl extends D.Component{constructor(e){super(e),_r(this,"container",void 0),_r(this,"editor",void 0),this.handleResize=this.handleResize.bind(this),this.container=null,this.state={}}componentDidMount(){this.initEditor(),window.addEventListener("resize",this.handleResize)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),this.destroyEditor()}setLanguage(e){if(this.editor){var t=this.editor.getModel();R(t),ei.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=Yu({copyWithSyntaxHighlighting:!1,fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"python",lineNumbersMinChars:3,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabCompletion:"on",value:"",wordWrap:"off",links:!0,autoClosingBrackets:"beforeWhitespace"},t),R(this.container),this.editor=ei.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[os.CtrlCmd|us.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),ds.registerLinkProvider("plaintext",{provideLinks:Pt.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;R(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return f.jsx("div",{className:Re("editor-container",e),ref:t=>{this.container=t}})}}_r(cl,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});const Zu=cl;var Ju={groovy:"Groovy",python:"Python",scala:"Scala"};class ed{static normalizeScriptLanguage(e){return Ju[e]||null}static getDisabledRunTooltip(e,t,r,i){return e?t?null:"".concat(r," doesn't match the session language – ").concat(i," disabled"):"Console session not connected – ".concat(i," disabled")}static outdentCode(e){var t=e.split(`
3
3
  `),r=t.reduce((i,a)=>{var l=a.length-a.trimStart().length;return l===a.length?i:l<i?l:i},Number.MAX_SAFE_INTEGER);return t.map(i=>i.slice(r)).join(`
4
- `)}}const Pn=td;function ar(n,e,t){return e=rd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rd(n){var e=nd(n,"string");return typeof e=="symbol"?e:String(e)}function nd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ue=Z.module("ScriptEditor");class vl extends D.Component{constructor(e){super(e),ar(this,"contextActionCleanups",void 0),ar(this,"completionCleanup",void 0),ar(this,"editor",void 0),ar(this,"editorComponent",void 0),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleRun=this.handleRun.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.updateShortcuts=this.updateShortcuts.bind(this),this.contextActionCleanups=[],this.editorComponent=Le.createRef(),this.state={model:null}}componentDidMount(){ni.addEventListener("onUpdate",this.updateShortcuts)}componentDidUpdate(e){var t,r,{sessionLanguage:i,settings:a}=this.props,l=a==null?void 0:a.language,s=l!==((t=e.settings)===null||t===void 0?void 0:t.language);s&&(Ue.debug("Set language",l),this.setLanguage(l));var o=i==null&&e.sessionLanguage!=null,u=l===i,d=((r=e.settings)===null||r===void 0?void 0:r.language)===e.sessionLanguage;(o||i!==void 0&&d&&!u)&&(Ue.debug("De-init completion and context actions"),this.deInitContextActions(),this.deInitCodeCompletion());var h=i!=null&&e.sessionLanguage==null;(h&&u||i!==void 0&&!d&&u)&&(Ue.debug("Init completion and context actions"),this.initContextActions(),this.initCodeCompletion())}componentWillUnmount(){ni.removeEventListener("onUpdate",this.updateShortcuts)}getValue(){return this.editor?this.editor.getValue():(Ue.error("Editor not initialized"),null)}getSelectedCommand(){var e,t,r=(e=this.editor)===null||e===void 0?void 0:e.getSelection();R(r);var i=(t=this.editor)===null||t===void 0?void 0:t.getModel();R(i);var{startLineNumber:a,endColumn:l}=r,{endLineNumber:s}=r;l===1&&s>a&&(s-=1);var o=i.getLineMinColumn(a),u=i.getLineMaxColumn(s),d=r.setStartPosition(a,o).setEndPosition(s,u);return Pn.outdentCode(i.getValueInRange(d))}handleEditorInitialized(e){var{focusOnMount:t,onChange:r,onEditorInitialized:i,settings:a,session:l,sessionLanguage:s}=this.props;Ue.debug("handleEditorInitialized",s,l,a),this.editor=e,this.setState({model:this.editor.getModel()}),Pt.setEOL(e),Pt.registerPasteHandler(e),l!=null&&a&&s===a.language&&(this.initContextActions(),this.initCodeCompletion()),e.onDidChangeModelContent(r),t!=null&&t&&e.focus(),i(this.editor)}handleEditorWillDestroy(e){Ue.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}=this.props,t=this.getValue();t!=null&&e(t)}handleRunSelected(){var{onRunCommand:e}=this.props,t=this.getSelectedCommand();e(t)}initContextActions(){if(this.contextActionCleanups.length>0){Ue.error("Context actions already initialized.");return}if(this.editor){var e=[];e.push(this.editor.addAction({id:"run-code",label:"Run",keybindings:[Pt.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:[Pt.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){Ue.error("Code completion already initialized.");return}var{session:e}=this.props;Ue.debug("initCodeCompletion",this.editor,e),this.editor&&e!=null&&(this.completionCleanup=Pt.openDocument(this.editor,e))}deInitCodeCompletion(){var{session:e}=this.props;Ue.debug("deInitCodeCompletion",this.editor,e),this.completionCleanup&&(this.completionCleanup.dispose(),this.completionCleanup=void 0,this.editor&&e!=null&&Pt.closeDocument(this.editor,e))}append(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;R(this.editor);var r=this.editor.getModel();R(r);var i=r.getValue();i?r.setValue("".concat(i,`
5
- `).concat(e)):r.setValue("".concat(e));var a=r.getLineCount(),l=r.getLineLength(a)+1;this.editor.setPosition({lineNumber:a,column:l}),t&&this.editor.focus()}updateDimensions(){Ue.debug("updateDimensions"),this.editor&&this.editor.layout()}focus(){Ue.debug("focus"),this.editor&&this.editor.focus()}toggleFind(){this.editorComponent.current&&this.editorComponent.current.toggleFind()}setLanguage(e){this.editorComponent.current&&e!==void 0&&this.editorComponent.current.setLanguage(e)}render(){var e,{error:t,isLoaded:r,isLoading:i,session:a,sessionLanguage:l,settings:s}=this.props,{model:o}=this.state,u=t?"Unable to open document. ".concat(t):null,d=s&&(e=s.language)!==null&&e!==void 0?e:null,h=o&&a&&d===l;return f.jsxs(f.Fragment,{children:[(t||i)&&f.jsx("div",{className:"h-100 w-100 position-relative",children:f.jsx(Kt,{errorMessage:u,isLoading:i,isLoaded:r})}),r&&f.jsx("div",{className:"h-100 w-100 script-editor",children:s&&f.jsxs(f.Fragment,{children:[f.jsx(Ju,{ref:this.editorComponent,settings:s,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy}),h!=null&&h&&f.jsx(bs,{model:o,language:d,session:a})]})})]})}}ar(vl,"defaultProps",{error:null,isLoading:!1,isLoaded:!1,focusOnMount:!0,onChange:()=>{},onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},session:null});const id=vl;function hn(n,e,t){return e=ad(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ad(n){var e=ld(n,"string");return typeof e=="symbol"?e:String(e)}function ld(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class sd extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),hn(this,"isMissingKey",!0),hn(this,"rowIndex",void 0),hn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const od=sd;function Ai(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ai(Object(t),!0).forEach(function(r){q(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ai(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ki(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function vt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ki(a,r,i,l,s,"next",o)}function s(o){ki(a,r,i,l,s,"throw",o)}l(void 0)})}}function q(n,e,t){return e=ud(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ud(n){var e=dd(n,"string");return typeof e=="symbol"?e:String(e)}function dd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var de=Z.module("IrisGridTableModelTemplate"),hd=150,cd=0;function xt(n){return n.table!==void 0}class vr extends K{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),q(this,"dh",void 0),q(this,"irisGridUtils",void 0),q(this,"tableUtils",void 0),q(this,"irisFormatter",void 0),q(this,"inputTable",void 0),q(this,"subscription",void 0),q(this,"table",void 0),q(this,"viewport",void 0),q(this,"viewportData",void 0),q(this,"formattedStringData",void 0),q(this,"pendingStringData",void 0),q(this,"isSaveInProgress",void 0),q(this,"totalsTable",void 0),q(this,"totalsTablePromise",void 0),q(this,"totals",void 0),q(this,"totalsDataMap",void 0),q(this,"pendingNewDataMap",void 0),q(this,"pendingNewRowCount",0),q(this,"_columnHeaderGroupMap",new Map),q(this,"columnHeaderParentMap",new Map),q(this,"_columnHeaderMaxDepth",null),q(this,"_columnHeaderGroups",[]),q(this,"_isColumnHeaderGroupsInitialized",!1),q(this,"_movedColumns",null),q(this,"getMemoizedInitialMovedColumns",B(a=>{var l,s,o,u;if(!a)return[];var d=[],{groupMap:h}=ue.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]),c=(T,F)=>{var O=this.getColumnIndexByName(T);if(O==null)throw new Error("Unknown layout hint column: ".concat(T));var P=G.getVisibleIndex(O,d);d=G.moveItem(P,F,d)},v=(T,F)=>{var O=h.get(T);if(O==null)throw new Error("Unknown layout hint group: ".concat(T));var P=O.getVisibleRange(d);d=G.moveRange(P,F,d)},g=(s=a.frontColumns)!==null&&s!==void 0?s:[],p=(o=a.backColumns)!==null&&o!==void 0?o:[],m=(u=a.frozenColumns)!==null&&u!==void 0?u:[];if(g.length>0||p.length>0||m.length>0){var b=new Set,y=0;m==null||m.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,y),y+=1}),g.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,y),y+=1});var C=this.columnMap.size-1;p==null||p.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,C),C-=1})}var E=a==null?void 0:a.columnGroups;if(E){var w=[...h.values()];w.sort((T,F)=>T.depth-F.depth),w.forEach(T=>{var F=T.children[0],O=this.getColumnIndexByName(F),P;if(O!=null)P=G.getVisibleIndex(O,d);else{var M=h.get(F);if(!M)throw new Error("Unknown column ".concat(F," in group ").concat(T.name));var k=M.getVisibleRange(d);[,P]=k}for(var L=1;L<T.children.length;L+=1){var j=T.children[L],H=h.get(j),Y=this.getColumnIndexByName(j);if(H){var te=H.getVisibleRange(d)[0]<P,re=te?P-H.childIndexes.length+1:P+1;v(j,re),P=re+H.childIndexes.length-1}else if(Y!=null){var ae=G.getVisibleIndex(Y,d)<P,le=ae?P:P+1;c(j,le),P=le}}})}return this._movedColumns=d,d})),q(this,"getMemoizedInitialColumnHeaderGroups",B(a=>{var l;return ue.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]).groups})),q(this,"getMemoizedColumnMap",B(a=>{var l=new Map;return a.forEach(s=>l.set(s.name,s)),l})),q(this,"getColumnIndicesByNameMap",B(a=>{var l=new Map;return a.forEach((s,o)=>{var{name:u}=s;return l.set(u,o)}),l})),q(this,"setViewport",ti((a,l,s)=>{if(l<a){de.error("Invalid viewport",a,l);return}var{viewport:o}=this;if(o!=null&&o.top===a&&o.bottom===l&&o.columns===s){de.debug2("Ignoring duplicate viewport",o);return}this.viewport={top:a,bottom:l,columns:s},de.debug2("setViewport",this.viewport),this.applyViewport()},hd)),q(this,"applyViewport",ti(()=>{if(this.viewport){de.debug2("applyViewport",this.viewport);var{top:a,bottom:l,columns:s}=this.viewport,[o,u]=this.getCachedViewportRowRange(a,l);this.applyBufferedViewport(o,u,s)}},cd,{leading:!1})),q(this,"getCachedFormattedString",En((a,l,s,o,u)=>a.getFormattedString(l,s,o,u),{max:1e4})),q(this,"getCachedCustomColumnFormatFlag",En(bn.isCustomColumnFormatDefined,{max:1e4})),q(this,"getCachedViewportRowRange",B((a,l)=>{var s=l-a,o=Math.max(0,a-s*vr.ROW_BUFFER_PAGES),u=l+s*vr.ROW_BUFFER_PAGES;return[o,u]})),q(this,"getCachedPendingErrors",B((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 od(d,l[c].name))}}),o})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=r,this.irisGridUtils=new ue(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(K.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new ie(K.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new ie(K.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new ie(K.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new ie(K.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new ie(K.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!ue.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!ue.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(K.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(K.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isDeletable(){return this.keyColumnSet.size>0}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,r=this.viewportData.rows[0].data.get(this.viewport.columns[0].index)===void 0,i=this.viewportData.rows[0].data.get(this.viewport.columns[this.viewport.columns.length-1].index)===void 0;return e||t||r||i}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a=this.valueForCell(e,t);if(a===null)return null;if(a===void 0)return;var l=this.sourceColumn(e,t),s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),o;if(!s){var u=this.formatForCell(e,t);(u==null?void 0:u.formatString)!=null&&(o=u)}var d=this.displayString(a,l.type,l.name,o);this.cacheFormattedValue(e,t,d)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(S.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return this.formatter.showNullStrings?"null":"";if(i==="")return this.formatter.showEmptyStrings?"empty":""}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(S.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return R(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return R(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);if(S.isDateType(s.type)||s.name==="Date")return R(r.dateColor),r.dateColor;if(S.isNumberType(s.type))return l>0?(R(r.positiveNumberColor),r.positiveNumberColor):l<0?(R(r.negativeNumberColor),r.negativeNumberColor):(R(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return R(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t,r){var i,a;return(i=(a=this.formatForCell(e,t))===null||a===void 0?void 0:a.backgroundColor)!==null&&i!==void 0?i:null}textAlignForCell(e){var t=this.columns[e],{type:r}=t;return S.isNumberType(r)?"right":S.isDateType(r)||t.name==="Date"?"center":"left"}textForColumnHeader(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=this.columnAtDepth(e,r);return dn(i)?i.isNew?"":i.name:(t=i==null?void 0:i.displayName)!==null&&t!==void 0?t:i==null?void 0:i.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(dn(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(dn(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroupMap}get columnHeaderGroups(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=ue.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a,this._isColumnHeaderGroupsInitialized=!0}}initializeColumnHeaderGroups(){if(!this._isColumnHeaderGroupsInitialized){var e,t;this.columnHeaderGroups=ue.parseColumnHeaderGroups(this,(e=(t=this.layoutHints)===null||t===void 0?void 0:t.columnGroups)!==null&&e!==void 0?e:[]).groups}}row(e){var t,r,i,a,l,s,o,u,d,h,c=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,v=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var p,m,b,y=(p=this.totals)===null||p===void 0?void 0:p.operationOrder[g];return R(y),(m=(b=this.totalsDataMap)===null||b===void 0?void 0:b.get(y))!==null&&m!==void 0?m:null}var C=this.pendingRow(e);if(C!=null){var E;return(E=this.pendingNewDataMap.get(C))!==null&&E!==void 0?E:null}var w=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,T=(v?e-c:e)-w;return(u=(d=this.viewportData)===null||d===void 0||(h=d.rows)===null||h===void 0?void 0:h[T])!==null&&u!==void 0?u:null}sourceColumn(e,t){var r=this.totalsRow(t);if(r!=null){var i,a,l,s,o=(i=this.totals)===null||i===void 0?void 0:i.operationOrder[r],u=(a=(l=this.totals)===null||l===void 0?void 0:l.defaultOperation)!==null&&a!==void 0?a:Q.SUM,d=this.columns[e],h=(s=this.totalsTable)===null||s===void 0?void 0:s.columns.find(c=>{var v;return c.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0?void 0:v.operationOrder.length)===1)&&c.name===d.name});if(h!=null)return h}return this.columns[e]}totalsRow(e){var t,r,i,a,l,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,u=o?e:e-this.table.size;return u>=0&&u<s?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){de.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){de.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){de.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:Q.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,c=function(){var p,m,b=l[v],[y,C=(p=h==null||(m=h[y])===null||m===void 0?void 0:m[0])!==null&&p!==void 0?p:d]=b.name.split("__");o.has(C)||o.set(C,{data:new Map});var{data:E}=o.get(C),w=a.columns.findIndex(T=>T.name===y);E.set(w,{value:u.get(b),format:u.getFormat(b)})},v=0;v<l.length;v+=1)c();de.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,r);t.rows.push(l)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);R(l),r.set(l,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){de.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(K.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(de.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(K.EVENT.UPDATED));return}this.totalsTablePromise=xe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{xe.isCanceled(t)||(de.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(K.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){de.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){if(this.dispatchEvent(new ie(K.EVENT.VIEWPORT_UPDATED)),de.debug2("applyBufferedViewport",e,t,r),this.subscription==null){var i;de.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,r))!==null&&i!==void 0?i:null}else de.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r)}snapshot(e){var t=arguments,r=this;return vt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:P=>P,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=l?x.consolidate(e):e;if(!ue.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,u=[],d=new Set,h=0;h<s.length;h+=1){var c=s[h];R(c.endRow),R(c.startRow);for(var v=c.startRow;v<=c.endRow&&v<r.floatingTopRowCount;v+=1)o.add(v);c.endRow>=r.floatingTopRowCount&&c.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new x(c.startColumn,Math.min(Math.max(0,c.startRow-r.floatingTopRowCount)),c.endColumn,Math.min(Math.max(0,c.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(c.startRow,r.floatingTopRowCount+r.table.size);g<=c.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var p=ue.columnsFromRanges(s,r.columns),m=[];i&&m.push(p.map(P=>P.name));for(var b=[...o].sort(),y=function*(){var M=b[C],k=p.map(L=>{var j=r.getColumnIndexByName(L.name);return R(j),a(r.valueForCell(j,M),L)});i&&k.push(r.textForRowFooter(M)),m.push(k)},C=0;C<b.length;C+=1)yield*y();if(u.length>0){var E=r.irisGridUtils.rangeSetFromRanges(u),w=yield r.subscription.snapshot(E,p);m.push(...w.rows.map(P=>p.map(M=>a(P.get(M),M))))}for(var T=[...d].sort(),F=function*(){var M=T[O],k=p.map(L=>{var j=r.getColumnIndexByName(L.name);return R(j),a(r.valueForCell(j,M),L)});i&&k.push(r.textForRowFooter(M)),m.push(k)},O=0;O<T.length;O+=1)yield*F();return m})()}textSnapshot(e){var t=arguments,r=this;return vt(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);de.debug2("textSnapshot",e,i);var l=yield r.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
6
- `)})()}valuesTable(e){var t=this;return vt(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct(Array.isArray(e)?e:[e])}finally{r!=null&&r.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){return this.keyColumnSet.has(this.columns[e].name)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!x.isBounded(e))return!1;for(var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow),r=!1,i=e.startColumn;i<=e.endColumn;i+=1)if(this.isKeyColumn(i)){r=!0;break}return!(!(t||this.keyColumnSet.size!==0&&!r)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new x(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new x(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return vt(function*(){return i.setValueForRanges([new x(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return vt(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];x.forEachCell(e,(p,m)=>{var b=r.columns[p];if(i.add(b),a[p]===void 0){var y=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);a[p]=y!=null?r.displayString(y,b.type,b.name):null}r.cachePendingValue(p,m,a[p])});var l=r.getPendingAreaRange(),s=e.map(p=>x.intersection(l,p)).filter(p=>p!=null).map(p=>(R(p),x.offset(p,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);x.forEachCell(s,(p,m)=>{o.has(m)||o.set(m,{data:new Map});var b=r.columns[p],y=o.get(m);R(y);var{data:C}=y,E=new Map(C),w=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);w!=null?E.set(p,{value:w}):E.delete(p),E.size>0?o.set(m,Tr(Tr({},y),{},{data:E})):o.delete(m)}),r.pendingDataMap=o}r.dispatchEvent(new ie(K.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(p=>x.intersection(u,p)).filter(p=>p!=null);if(d.length>0){var h,c=yield r.snapshot(d.map(p=>{var m,b;return new x(null,(m=p==null?void 0:p.startRow)!==null&&m!==void 0?m:null,null,(b=p==null?void 0:p.endRow)!==null&&b!==void 0?b:null)})),v=c.map(p=>{for(var m={},b=0;b<r.columns.length;b+=1)m[r.columns[b].name]=p[b];return i.forEach(y=>{m[y.name]=r.tableUtils.makeValue(y.type,t,r.formatter.timeZone)}),m}),g=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(v);de.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}x.forEachCell(e,(p,m)=>{var b=a[p];R(b),r.cacheFormattedValue(p,m,b)})}catch(p){de.error("Unable to set ranges",e,t,p)}finally{x.forEachCell(e,(p,m)=>{r.clearPendingValue(p,m)})}})()}setValues(){var e=arguments,t=this;return vt(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(de.debug("setValues(",r,")"),!r.every(v=>{var g,p;return t.isEditableRange(x.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],E=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=E!=null?t.displayString(E,C.type,C.name):null;t.cachePendingValue(b,y,w);var T=t.pendingRow(y);if(T!=null){i.has(T)||i.set(T,{data:new Map});var F=i.get(T);R(F);var{data:O}=F,P=new Map(O);E!=null?P.set(b,{value:E}):P.delete(b),P.size>0?i.set(T,Tr(Tr({},F),{},{data:P})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new ie(K.EVENT.UPDATED));var a=r.reduce((v,g)=>{var p,m,b=(p=g.row)!==null&&p!==void 0?p:g.y;return v.has(b)||v.set(b,[]),(m=v.get(b))===null||m===void 0||m.push(g),v},new Map),l=x.consolidate(r.map(v=>{var g,p;return x.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y)})),s=t.getTableAreaRange(),o=l.map(v=>x.intersection(s,v)).filter(v=>v!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(v=>(R(v),new x(null,v.startRow,null,v.endRow)))),h=d.map((v,g)=>{for(var p=null,m=g,b=0;b<o.length;b+=1){var y=o[b];R(y);var C=x.rowCount([y]);if(m<C){R(y.startRow),p=y.startRow+m;break}m-=C}for(var E={},w=0;w<t.columns.length;w+=1)E[t.columns[w].name]=v[w];R(p);var T=a.get(p);return T!=null&&T.forEach(F=>{var O,P=t.columns[(O=F.column)!==null&&O!==void 0?O:F.x];E[P.name]=t.tableUtils.makeValue(P.type,F.text,t.formatter.timeZone)}),E});de.info("setValues setting tableRanges",o);var c=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);de.info("setValues set tableRanges",o,"SUCCESS",c)}r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],E=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=E!=null?t.displayString(E,C.type,C.name):null;t.cacheFormattedValue(b,y,w)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return vt(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((u,d)=>{var{value:h}=u,c=e.columns[d];o[c.name]=h}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);de.debug("commitPending()",e.pendingNewDataMap,"result",l),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new ie(K.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){var r;return(r=this.textValueForCell(e,t))!==null&&r!==void 0?r:""}delete(e){return vt(function*(){throw new Error("Delete not implemented")})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}q(vr,"ROW_BUFFER_PAGES",1);const fl=vr;function vd(n,e,t){return e=fd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fd(n){var e=pd(n,"string");return typeof e=="symbol"?e:String(e)}function pd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class md extends Error{constructor(){super(...arguments),vd(this,"isMissingPartitionError",!0)}}function gd(n){return(n==null?void 0:n.isMissingPartitionError)===!0}const xi=md;function _i(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Lt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){_i(a,r,i,l,s,"next",o)}function s(o){_i(a,r,i,l,s,"throw",o)}l(void 0)})}}function rt(n,e,t){return e=bd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bd(n){var e=Cd(n,"string");return typeof e=="symbol"?e:String(e)}function Cd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var lt=Z.module("IrisGridTableModel");class Sd extends fl{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),rt(this,"userFrozenColumns",void 0),rt(this,"customColumnList",void 0),rt(this,"formatColumnList",void 0),rt(this,"initialFilters",[]),rt(this,"getMemoizedKeyColumnSet",B(a=>new Set(a??ee))),rt(this,"getMemoizedFrontColumns",B(a=>a??ee)),rt(this,"getMemoizedBackColumns",B(a=>a??ee)),rt(this,"getMemoizedFrozenColumns",B((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:ee})),rt(this,"getCachedFilterableColumnSet",B(a=>new Set(a.map((l,s)=>s)))),rt(this,"getCachedPartitionColumns",B(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get 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(K.EVENT.TABLE_CHANGED,{detail:this.table}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Lt(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Lt(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionTable(e){var t=this;return Lt(function*(){lt.debug("getting partition table for partitions",e);for(var r=[],i=0;i<t.partitionColumns.length;i+=1){var a=e[i],l=t.partitionColumns[i],s=t.tableUtils.makeNullableEqFilter(l,a);r.push(s)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...r]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(lt.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new ie(K.EVENT.UPDATED));return}this.totalsTablePromise=xe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{xe.isCanceled(t)||(lt.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(K.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Lt(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return Lt(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));R(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=>x.intersection(s,C)).filter(C=>C!=null).map(C=>(R(C),x.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];R(h.startRow),R(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1)u.delete(c)}r(u),i.formattedStringData=[],i.dispatchEvent(new ie(K.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new ie(K.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(C=>x.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[p,m]=yield Promise.all([i.snapshot(g.map(C=>(R(C),l.map(E=>{var w=i.getColumnIndexByName(E.name);if(w==null)throw new Error("Key column ".concat(E.name," not found"));return new x(w,C.startRow,w,C.endRow)}))).flat()),i.table.copy()]),b=p.map(C=>{for(var E=[],w=0;w<l.length;w+=1){var T=l[w],F=C[w],O=i.tableUtils.makeFilterRawValue(T.type,F),P=T.filter().eq(O);E.push(P)}return E.reduce((M,k)=>{var L;return(L=M==null?void 0:M.and(k))!==null&&L!==void 0?L:k})}),y=b.reduce((C,E)=>{var w;return(w=C==null?void 0:C.or(E))!==null&&w!==void 0?w:E});m.applyFilter([y]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(m),m.close()}})()}seekRow(e,t,r,i,a,l,s){var o=this;return Lt(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const yd=Sd;function Ed(n,e,t){return e=wd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wd(n){var e=Td(n,"string");return typeof e=="symbol"?e:String(e)}function Td(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Pd extends K{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new ze(e);super(e),Ed(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,r){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 Mr}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Mr}commitPending(){return Promise.resolve()}setViewport(e,t,r){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,r){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,r,i,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return ee}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return Mr}getColumnHeaderParentGroup(e,t){}}const Nd=Pd;function ji(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function cn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ji(a,r,i,l,s,"next",o)}function s(o){ji(a,r,i,l,s,"throw",o)}l(void 0)})}}function Dd(n,e,t){return e=Od(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Od(n){var e=Fd(n,"string");return typeof e=="symbol"?e:String(e)}function Fd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Md extends Nd{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(e);super(e,r),Dd(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isReversible(){return!1}displayString(e,t,r){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}partitionKeysTable(){var e=this;return cn(function*(){return e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return cn(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return cn(function*(){try{var r=yield t.partitionedTable.getTable(e);if(r==null)throw new xi("Partition not found");return r}catch(i){throw gd(i)?i:new xi("Unable to retrieve partition")}})()}}const Id=Md;function Vi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Rd(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Vi(a,r,i,l,s,"next",o)}function s(o){Vi(a,r,i,l,s,"throw",o)}l(void 0)})}}function $i(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Hi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$i(Object(t),!0).forEach(function(r){kt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$i(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function kt(n,e,t){return e=Ld(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ld(n){var e=Ad(n,"string");return typeof e=="symbol"?e:String(e)}function Ad(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var kd=Z.module("IrisGridTreeTableModel");function xd(n){return n.layoutHints!==void 0}class _d extends fl{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),kt(this,"virtualColumns",void 0),kt(this,"getCachedColumns",B((a,l)=>[...a,...l])),kt(this,"getCachedGroupColumns",B((a,l)=>[...a,...l])),kt(this,"getCachedFilterableColumnSet",B((a,l,s)=>new Set(((l==null?void 0:l.length)>0?l:a).filter(o=>!s.includes(o)).map(o=>a.findIndex(u=>o.name===u.name))))),kt(this,"getCachedGroupedColumnSet",B(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=t.groupedColumns.length>1?[{name:"__DH_UI_GROUP__",displayName:"Group",type:S.dataType.STRING,constituentType:S.dataType.STRING,isPartitionColumn:!1,isSortable:!1,isProxy:!0,description:"Key column",index:-1,filter:()=>{throw new Error("Filter not implemented for virtual column")},sort:()=>{throw new Error("Sort not implemented for virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}}]:[]}applyBufferedViewport(e,t,r){var i=[...this.table.groupedColumns,...r.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var r=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&r!=null){if(!i.hasChildren&&r.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,r.constituentType,r.name)}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e,l=super.extractViewportRow(e,t),s=new Map(l.data);if(i)for(var o=0;o<this.virtualColumns.length;o+=1){var u=o+(a-1)+(this.virtualColumns.length-1),d=s.get(u);d==null?kd.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return Hi(Hi({},l),{},{data:s,isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t){var r=arguments,i=this;return Rd(function*(){var a,l,s=r.length>2&&r[2]!==void 0?r[2]:y=>y;R(i.viewport),R(i.viewportData);var o=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,u=[];t!=null&&t&&u.push(o.map(y=>y.name));for(var d=new x(0,(l=i.viewportData)===null||l===void 0?void 0:l.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),h=0;h<e.length;h+=1){var c=x.intersection(d,e[h]);R(c),R(c.startRow),R(c.endRow);for(var v=c.startRow;v<=c.endRow;v+=1){var g=[],p=i.viewportData.rows[v-i.viewportData.offset];R(c.startColumn),R(c.endColumn);for(var m=c.startColumn;m<=c.endColumn;m+=1){var b;g.push(s((b=p.data.get(m))===null||b===void 0?void 0:b.value,i.columns[m]))}u.push(g)}}return u})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}get groupedColumns(){return this.getCachedGroupColumns(this.virtualColumns,this.table.groupedColumns)}sourceForCell(e,t){if(e>=this.virtualColumns.length)return{column:e,row:t};var r=this.depthForRow(t);return{column:e+r,row:t}}sourceColumn(e,t){if(e>=this.virtualColumns.length)return super.sourceColumn(e,t);var r=this.depthForRow(t);return this.columns[e+r]}getClearFilterRange(e){return e>=this.virtualColumns.length?super.getClearFilterRange(e):[this.virtualColumns.length,this.groupedColumns.length]}get layoutHints(){if(xd(this.table))return this.table.layoutHints}get hasExpandableRows(){return!0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.groupedColumns,this.virtualColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r==null?void 0:r.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r==null?void 0:r.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,r):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll!=null&&this.table.expandAll()}collapseAll(){this.table.collapseAll!=null&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r==null?void 0:r.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const jd=_d;function st(n,e,t){return e=Vd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vd(n){var e=$d(n,"string");return typeof e=="symbol"?e:String(e)}function $d(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ot=Z.module("IrisGridProxyModel");function At(n,e,t,r){return S.isTreeTable(e)?new jd(n,e,t):S.isPartitionedTable(e)?new Id(n,e,t):new yd(n,e,t,r)}class Hd extends K{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(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=At(e,t,r,i);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.get)!=null;if(d)return Reflect.get(l,s,o);var h=Object.prototype.hasOwnProperty.call(l,s),c=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),v=h||c?l:l.model;return Reflect.get(v,s)},set(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.set)!=null;return d?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){ot.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new ie(r,{detail:t}))}setModel(e){ot.debug("setModel",e);var t=this.model,{columns:r}=t;if(t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),r!==e.columns)this.dispatchEvent(new ie(K.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)}xt(e)&&this.dispatchEvent(new ie(K.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=xe.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(xe.isCanceled(t)){ot.debug2("setNextModel cancelled");return}ot.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new ie(K.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(K.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(K.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return it(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!it(this.originalModel)||!this.originalModel.isPartitionRequired?null: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&&it(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionKeysTable().then(r=>At(this.dh,r,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(r=>At(this.dh,r,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(r=>At(this.dh,r,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!it(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!it(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!it(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(!Ar(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);xt(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>At(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(ot.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){ot.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),r=Promise.resolve(this.originalModel);xt(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>At(this.dh,i,this.formatter))),this.setNextModel(r)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return it(this.originalModel)?this.originalModel.isPartitionRequired:!1}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}const Gd=Hd;function Gi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Ud(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Gi(a,r,i,l,s,"next",o)}function s(o){Gi(a,r,i,l,s,"throw",o)}l(void 0)})}}class Bd{static makeModel(e,t){var r=arguments;return Ud(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new ze(e),a=null;return!S.isTreeTable(t)&&!S.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new Gd(e,t,i,a)})()}}const jn=Bd;function Vn(n,e,t){return e=Wd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wd(n){var e=zd(n,"string");return typeof e=="symbol"?e:String(e)}function zd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Yr{}Vn(Yr,"OPEN","ChartEvent.OPEN");Vn(Yr,"CLOSE","ChartEvent.CLOSE");Vn(Yr,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const jr=Yr;function Yt(n,e,t){return e=qd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qd(n){var e=Kd(n,"string");return typeof e=="symbol"?e:String(e)}function Kd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mt{}Yt(Mt,"OPEN_GRID","IrisGridEvent.OPEN_GRID");Yt(Mt,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");Yt(Mt,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");Yt(Mt,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");Yt(Mt,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");Yt(Mt,"CREATE_CHART","IrisGridevent.CREATE_CHART");const Be=Mt,pl=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function ml(n,e,t){return e=Yd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yd(n){var e=Xd(n,"string");return typeof e=="symbol"?e:String(e)}function Xd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class $n{}ml($n,"OPEN","PandasEvent.OPEN");ml($n,"CLOSE","PandasEvent.CLOSE");const Qd=$n;function mr(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,l=$.getTitleFromContainer(r);return f.jsxs("div",{className:"tab-tooltip-grid-container",children:[f.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),f.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[f.jsx("span",{className:"tab-tooltip-name",children:t}),f.jsx(vo,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==l&&f.jsxs(f.Fragment,{children:[f.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),f.jsx("span",{className:"tab-tooltip-name",children:l})]}),i&&f.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}mr.propTypes={glContainer:Va.Container.isRequired,widgetType:W.string,widgetName:W.string,description:W.string,children:W.node};mr.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function gl(n,e,t){return e=Zd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zd(n){var e=Jd(n,"string");return typeof e=="symbol"?e:String(e)}function Jd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class bl extends D.PureComponent{constructor(e){super(e),gl(this,"getCachedRenderTabTooltip",B((t,r,i,a,l)=>t?()=>f.jsx(mr,{glContainer:r,widgetType:i,widgetName:a,description:l}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;ja(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:r,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&r&&a)return`Disconnected from server.
4
+ `)}}const Pn=ed;function ar(n,e,t){return e=td(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function td(n){var e=rd(n,"string");return typeof e=="symbol"?e:String(e)}function rd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ue=Z.module("ScriptEditor");class vl extends D.Component{constructor(e){super(e),ar(this,"contextActionCleanups",void 0),ar(this,"completionCleanup",void 0),ar(this,"editor",void 0),ar(this,"editorComponent",void 0),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleRun=this.handleRun.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.updateShortcuts=this.updateShortcuts.bind(this),this.contextActionCleanups=[],this.editorComponent=Le.createRef(),this.state={model:null}}componentDidMount(){ni.addEventListener("onUpdate",this.updateShortcuts)}componentDidUpdate(e){var t,r,{sessionLanguage:i,settings:a}=this.props,l=a==null?void 0:a.language,s=l!==((t=e.settings)===null||t===void 0?void 0:t.language);s&&(Ue.debug("Set language",l),this.setLanguage(l));var o=i==null&&e.sessionLanguage!=null,u=l===i,d=((r=e.settings)===null||r===void 0?void 0:r.language)===e.sessionLanguage;(o||i!==void 0&&d&&!u)&&(Ue.debug("De-init completion and context actions"),this.deInitContextActions(),this.deInitCodeCompletion());var h=i!=null&&e.sessionLanguage==null;(h&&u||i!==void 0&&!d&&u)&&(Ue.debug("Init completion and context actions"),this.initContextActions(),this.initCodeCompletion())}componentWillUnmount(){ni.removeEventListener("onUpdate",this.updateShortcuts)}getValue(){return this.editor?this.editor.getValue():(Ue.error("Editor not initialized"),null)}getSelectedCommand(){var e,t,r=(e=this.editor)===null||e===void 0?void 0:e.getSelection();R(r);var i=(t=this.editor)===null||t===void 0?void 0:t.getModel();R(i);var{startLineNumber:a,endColumn:l}=r,{endLineNumber:s}=r;l===1&&s>a&&(s-=1);var o=i.getLineMinColumn(a),u=i.getLineMaxColumn(s),d=r.setStartPosition(a,o).setEndPosition(s,u);return Pn.outdentCode(i.getValueInRange(d))}handleEditorInitialized(e){var{focusOnMount:t,onChange:r,onEditorInitialized:i,settings:a,session:l,sessionLanguage:s}=this.props;Ue.debug("handleEditorInitialized",s,l,a),this.editor=e,this.setState({model:this.editor.getModel()}),Pt.setEOL(e),Pt.registerPasteHandler(e),l!=null&&a&&s===a.language&&(this.initContextActions(),this.initCodeCompletion()),e.onDidChangeModelContent(r),t!=null&&t&&e.focus(),i(this.editor)}handleEditorWillDestroy(e){Ue.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}=this.props,t=this.getValue();t!=null&&e(t)}handleRunSelected(){var{onRunCommand:e}=this.props,t=this.getSelectedCommand();e(t)}initContextActions(){if(this.contextActionCleanups.length>0){Ue.error("Context actions already initialized.");return}if(this.editor){var e=[];e.push(this.editor.addAction({id:"run-code",label:"Run",keybindings:[Pt.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:[Pt.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){Ue.error("Code completion already initialized.");return}var{session:e}=this.props;Ue.debug("initCodeCompletion",this.editor,e),this.editor&&e!=null&&(this.completionCleanup=Pt.openDocument(this.editor,e))}deInitCodeCompletion(){var{session:e}=this.props;Ue.debug("deInitCodeCompletion",this.editor,e),this.completionCleanup&&(this.completionCleanup.dispose(),this.completionCleanup=void 0,this.editor&&e!=null&&Pt.closeDocument(this.editor,e))}append(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;R(this.editor);var r=this.editor.getModel();R(r);var i=r.getValue();i?r.setValue("".concat(i,`
5
+ `).concat(e)):r.setValue("".concat(e));var a=r.getLineCount(),l=r.getLineLength(a)+1;this.editor.setPosition({lineNumber:a,column:l}),t&&this.editor.focus()}updateDimensions(){Ue.debug("updateDimensions"),this.editor&&this.editor.layout()}focus(){Ue.debug("focus"),this.editor&&this.editor.focus()}toggleFind(){this.editorComponent.current&&this.editorComponent.current.toggleFind()}setLanguage(e){this.editorComponent.current&&e!==void 0&&this.editorComponent.current.setLanguage(e)}render(){var e,{error:t,isLoaded:r,isLoading:i,session:a,sessionLanguage:l,settings:s}=this.props,{model:o}=this.state,u=t?"Unable to open document. ".concat(t):null,d=s&&(e=s.language)!==null&&e!==void 0?e:null,h=o&&a&&d===l;return f.jsxs(f.Fragment,{children:[(t||i)&&f.jsx("div",{className:"h-100 w-100 position-relative",children:f.jsx(Kt,{errorMessage:u,isLoading:i,isLoaded:r})}),r&&f.jsx("div",{className:"h-100 w-100 script-editor",children:s&&f.jsxs(f.Fragment,{children:[f.jsx(Zu,{ref:this.editorComponent,settings:s,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy}),h!=null&&h&&f.jsx(bs,{model:o,language:d,session:a})]})})]})}}ar(vl,"defaultProps",{error:null,isLoading:!1,isLoaded:!1,focusOnMount:!0,onChange:()=>{},onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},session:null});const nd=vl;function hn(n,e,t){return e=id(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function id(n){var e=ad(n,"string");return typeof e=="symbol"?e:String(e)}function ad(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ld extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),hn(this,"isMissingKey",!0),hn(this,"rowIndex",void 0),hn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const sd=ld;function Ai(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ai(Object(t),!0).forEach(function(r){q(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ai(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ki(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function vt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ki(a,r,i,l,s,"next",o)}function s(o){ki(a,r,i,l,s,"throw",o)}l(void 0)})}}function q(n,e,t){return e=od(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function od(n){var e=ud(n,"string");return typeof e=="symbol"?e:String(e)}function ud(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var de=Z.module("IrisGridTableModelTemplate"),dd=150,hd=0;function xt(n){return n.table!==void 0}class vr extends K{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),q(this,"dh",void 0),q(this,"irisGridUtils",void 0),q(this,"tableUtils",void 0),q(this,"irisFormatter",void 0),q(this,"inputTable",void 0),q(this,"subscription",void 0),q(this,"table",void 0),q(this,"viewport",void 0),q(this,"viewportData",void 0),q(this,"formattedStringData",void 0),q(this,"pendingStringData",void 0),q(this,"isSaveInProgress",void 0),q(this,"totalsTable",void 0),q(this,"totalsTablePromise",void 0),q(this,"totals",void 0),q(this,"totalsDataMap",void 0),q(this,"pendingNewDataMap",void 0),q(this,"pendingNewRowCount",0),q(this,"_columnHeaderGroupMap",new Map),q(this,"columnHeaderParentMap",new Map),q(this,"_columnHeaderMaxDepth",null),q(this,"_columnHeaderGroups",[]),q(this,"_isColumnHeaderGroupsInitialized",!1),q(this,"_movedColumns",null),q(this,"getMemoizedInitialMovedColumns",B(a=>{var l,s,o,u;if(!a)return[];var d=[],{groupMap:h}=ue.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]),c=(T,F)=>{var O=this.getColumnIndexByName(T);if(O==null)throw new Error("Unknown layout hint column: ".concat(T));var P=G.getVisibleIndex(O,d);d=G.moveItem(P,F,d)},v=(T,F)=>{var O=h.get(T);if(O==null)throw new Error("Unknown layout hint group: ".concat(T));var P=O.getVisibleRange(d);d=G.moveRange(P,F,d)},g=(s=a.frontColumns)!==null&&s!==void 0?s:[],p=(o=a.backColumns)!==null&&o!==void 0?o:[],m=(u=a.frozenColumns)!==null&&u!==void 0?u:[];if(g.length>0||p.length>0||m.length>0){var b=new Set,y=0;m==null||m.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,y),y+=1}),g.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,y),y+=1});var C=this.columnMap.size-1;p==null||p.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,C),C-=1})}var E=a==null?void 0:a.columnGroups;if(E){var w=[...h.values()];w.sort((T,F)=>T.depth-F.depth),w.forEach(T=>{var F=T.children[0],O=this.getColumnIndexByName(F),P;if(O!=null)P=G.getVisibleIndex(O,d);else{var M=h.get(F);if(!M)throw new Error("Unknown column ".concat(F," in group ").concat(T.name));var k=M.getVisibleRange(d);[,P]=k}for(var L=1;L<T.children.length;L+=1){var j=T.children[L],H=h.get(j),Y=this.getColumnIndexByName(j);if(H){var te=H.getVisibleRange(d)[0]<P,re=te?P-H.childIndexes.length+1:P+1;v(j,re),P=re+H.childIndexes.length-1}else if(Y!=null){var ae=G.getVisibleIndex(Y,d)<P,le=ae?P:P+1;c(j,le),P=le}}})}return this._movedColumns=d,d})),q(this,"getMemoizedInitialColumnHeaderGroups",B(a=>{var l;return ue.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]).groups})),q(this,"getMemoizedColumnMap",B(a=>{var l=new Map;return a.forEach(s=>l.set(s.name,s)),l})),q(this,"getColumnIndicesByNameMap",B(a=>{var l=new Map;return a.forEach((s,o)=>{var{name:u}=s;return l.set(u,o)}),l})),q(this,"setViewport",ti((a,l,s)=>{if(l<a){de.error("Invalid viewport",a,l);return}var{viewport:o}=this;if(o!=null&&o.top===a&&o.bottom===l&&o.columns===s){de.debug2("Ignoring duplicate viewport",o);return}this.viewport={top:a,bottom:l,columns:s},de.debug2("setViewport",this.viewport),this.applyViewport()},dd)),q(this,"applyViewport",ti(()=>{if(this.viewport){de.debug2("applyViewport",this.viewport);var{top:a,bottom:l,columns:s}=this.viewport,[o,u]=this.getCachedViewportRowRange(a,l);this.applyBufferedViewport(o,u,s)}},hd,{leading:!1})),q(this,"getCachedFormattedString",En((a,l,s,o,u)=>a.getFormattedString(l,s,o,u),{max:1e4})),q(this,"getCachedCustomColumnFormatFlag",En(bn.isCustomColumnFormatDefined,{max:1e4})),q(this,"getCachedViewportRowRange",B((a,l)=>{var s=l-a,o=Math.max(0,a-s*vr.ROW_BUFFER_PAGES),u=l+s*vr.ROW_BUFFER_PAGES;return[o,u]})),q(this,"getCachedPendingErrors",B((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 sd(d,l[c].name))}}),o})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=r,this.irisGridUtils=new ue(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(K.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new ie(K.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new ie(K.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new ie(K.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new ie(K.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new ie(K.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return Math.max(this.table.size,0)+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!ue.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!ue.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(K.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(K.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isDeletable(){return this.keyColumnSet.size>0}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,r=this.viewportData.rows[0].data.get(this.viewport.columns[0].index)===void 0,i=this.viewportData.rows[0].data.get(this.viewport.columns[this.viewport.columns.length-1].index)===void 0;return e||t||r||i}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a=this.valueForCell(e,t);if(a===null)return null;if(a===void 0)return;var l=this.sourceColumn(e,t),s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),o;if(!s){var u=this.formatForCell(e,t);(u==null?void 0:u.formatString)!=null&&(o=u)}var d=this.displayString(a,l.type,l.name,o);this.cacheFormattedValue(e,t,d)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(S.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return this.formatter.showNullStrings?"null":"";if(i==="")return this.formatter.showEmptyStrings?"empty":""}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(S.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return R(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return R(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);if(S.isDateType(s.type)||s.name==="Date")return R(r.dateColor),r.dateColor;if(S.isNumberType(s.type))return l>0?(R(r.positiveNumberColor),r.positiveNumberColor):l<0?(R(r.negativeNumberColor),r.negativeNumberColor):(R(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return R(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t,r){var i,a;return(i=(a=this.formatForCell(e,t))===null||a===void 0?void 0:a.backgroundColor)!==null&&i!==void 0?i:null}textAlignForCell(e){var t=this.columns[e],{type:r}=t;return S.isNumberType(r)?"right":S.isDateType(r)||t.name==="Date"?"center":"left"}textForColumnHeader(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,i=this.columnAtDepth(e,r);return dn(i)?i.isNew?"":i.name:(t=i==null?void 0:i.displayName)!==null&&t!==void 0?t:i==null?void 0:i.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(dn(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(dn(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroupMap}get columnHeaderGroups(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=ue.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a,this._isColumnHeaderGroupsInitialized=!0}}initializeColumnHeaderGroups(){if(!this._isColumnHeaderGroupsInitialized){var e,t;this.columnHeaderGroups=ue.parseColumnHeaderGroups(this,(e=(t=this.layoutHints)===null||t===void 0?void 0:t.columnGroups)!==null&&e!==void 0?e:[]).groups}}row(e){var t,r,i,a,l,s,o,u,d,h,c=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,v=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var p,m,b,y=(p=this.totals)===null||p===void 0?void 0:p.operationOrder[g];return R(y),(m=(b=this.totalsDataMap)===null||b===void 0?void 0:b.get(y))!==null&&m!==void 0?m:null}var C=this.pendingRow(e);if(C!=null){var E;return(E=this.pendingNewDataMap.get(C))!==null&&E!==void 0?E:null}var w=(s=(o=this.viewportData)===null||o===void 0?void 0:o.offset)!==null&&s!==void 0?s:0,T=(v?e-c:e)-w;return(u=(d=this.viewportData)===null||d===void 0||(h=d.rows)===null||h===void 0?void 0:h[T])!==null&&u!==void 0?u:null}sourceColumn(e,t){var r=this.totalsRow(t);if(r!=null){var i,a,l,s,o=(i=this.totals)===null||i===void 0?void 0:i.operationOrder[r],u=(a=(l=this.totals)===null||l===void 0?void 0:l.defaultOperation)!==null&&a!==void 0?a:Q.SUM,d=this.columns[e],h=(s=this.totalsTable)===null||s===void 0?void 0:s.columns.find(c=>{var v;return c.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0?void 0:v.operationOrder.length)===1)&&c.name===d.name});if(h!=null)return h}return this.columns[e]}totalsRow(e){var t,r,i,a,l,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,u=o?e:e-this.table.size;return u>=0&&u<s?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){de.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){de.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){de.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:Q.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,c=function(){var p,m,b=l[v],[y,C=(p=h==null||(m=h[y])===null||m===void 0?void 0:m[0])!==null&&p!==void 0?p:d]=b.name.split("__");o.has(C)||o.set(C,{data:new Map});var{data:E}=o.get(C),w=a.columns.findIndex(T=>T.name===y);E.set(w,{value:u.get(b),format:u.getFormat(b)})},v=0;v<l.length;v+=1)c();de.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,r);t.rows.push(l)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);R(l),r.set(l,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){de.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(K.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(de.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(K.EVENT.UPDATED));return}this.totalsTablePromise=xe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{xe.isCanceled(t)||(de.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(K.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){de.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){if(this.dispatchEvent(new ie(K.EVENT.VIEWPORT_UPDATED)),de.debug2("applyBufferedViewport",e,t,r),this.subscription==null){var i;de.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,r))!==null&&i!==void 0?i:null}else de.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r)}snapshot(e){var t=arguments,r=this;return vt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:P=>P,l=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=l?x.consolidate(e):e;if(!ue.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var o=new Set,u=[],d=new Set,h=0;h<s.length;h+=1){var c=s[h];R(c.endRow),R(c.startRow);for(var v=c.startRow;v<=c.endRow&&v<r.floatingTopRowCount;v+=1)o.add(v);c.endRow>=r.floatingTopRowCount&&c.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new x(c.startColumn,Math.min(Math.max(0,c.startRow-r.floatingTopRowCount)),c.endColumn,Math.min(Math.max(0,c.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(c.startRow,r.floatingTopRowCount+r.table.size);g<=c.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var p=ue.columnsFromRanges(s,r.columns),m=[];i&&m.push(p.map(P=>P.name));for(var b=[...o].sort(),y=function*(){var M=b[C],k=p.map(L=>{var j=r.getColumnIndexByName(L.name);return R(j),a(r.valueForCell(j,M),L)});i&&k.push(r.textForRowFooter(M)),m.push(k)},C=0;C<b.length;C+=1)yield*y();if(u.length>0){var E=r.irisGridUtils.rangeSetFromRanges(u),w=yield r.subscription.snapshot(E,p);m.push(...w.rows.map(P=>p.map(M=>a(P.get(M),M))))}for(var T=[...d].sort(),F=function*(){var M=T[O],k=p.map(L=>{var j=r.getColumnIndexByName(L.name);return R(j),a(r.valueForCell(j,M),L)});i&&k.push(r.textForRowFooter(M)),m.push(k)},O=0;O<T.length;O+=1)yield*F();return m})()}textSnapshot(e){var t=arguments,r=this;return vt(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);de.debug2("textSnapshot",e,i);var l=yield r.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
6
+ `)})()}valuesTable(e){var t=this;return vt(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct(Array.isArray(e)?e:[e])}finally{r!=null&&r.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){return this.keyColumnSet.has(this.columns[e].name)}isRowMovable(){return!1}isEditableRange(e){var t;if(this.inputTable==null||e.startRow==null||e.endRow==null)return!1;var r=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow),i=!1;R(e.startColumn);for(var a=(t=e.endColumn)!==null&&t!==void 0?t:this.table.size,l=e.startColumn;l<=a;l+=1)if(this.isKeyColumn(l)){i=!0;break}return!!(r||this.keyColumnSet.size!==0&&!i)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new x(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new x(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return vt(function*(){return i.setValueForRanges([new x(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return vt(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];x.forEachCell(e,(p,m)=>{var b=r.columns[p];if(i.add(b),a[p]===void 0){var y=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);a[p]=y!=null?r.displayString(y,b.type,b.name):null}r.cachePendingValue(p,m,a[p])});var l=r.getPendingAreaRange(),s=e.map(p=>x.intersection(l,p)).filter(p=>p!=null).map(p=>(R(p),x.offset(p,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);x.forEachCell(s,(p,m)=>{o.has(m)||o.set(m,{data:new Map});var b=r.columns[p],y=o.get(m);R(y);var{data:C}=y,E=new Map(C),w=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);w!=null?E.set(p,{value:w}):E.delete(p),E.size>0?o.set(m,Tr(Tr({},y),{},{data:E})):o.delete(m)}),r.pendingDataMap=o}r.dispatchEvent(new ie(K.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(p=>x.intersection(u,p)).filter(p=>p!=null);if(d.length>0){var h,c=yield r.snapshot(d.map(p=>{var m,b;return new x(null,(m=p==null?void 0:p.startRow)!==null&&m!==void 0?m:null,null,(b=p==null?void 0:p.endRow)!==null&&b!==void 0?b:null)})),v=c.map(p=>{for(var m={},b=0;b<r.columns.length;b+=1)m[r.columns[b].name]=p[b];return i.forEach(y=>{m[y.name]=r.tableUtils.makeValue(y.type,t,r.formatter.timeZone)}),m}),g=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(v);de.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}x.forEachCell(e,(p,m)=>{var b=a[p];R(b),r.cacheFormattedValue(p,m,b)})}catch(p){de.error("Unable to set ranges",e,t,p)}finally{x.forEachCell(e,(p,m)=>{r.clearPendingValue(p,m)})}})()}setValues(){var e=arguments,t=this;return vt(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(de.debug("setValues(",r,")"),!r.every(v=>{var g,p;return t.isEditableRange(x.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],E=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=E!=null?t.displayString(E,C.type,C.name):null;t.cachePendingValue(b,y,w);var T=t.pendingRow(y);if(T!=null){i.has(T)||i.set(T,{data:new Map});var F=i.get(T);R(F);var{data:O}=F,P=new Map(O);E!=null?P.set(b,{value:E}):P.delete(b),P.size>0?i.set(T,Tr(Tr({},F),{},{data:P})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new ie(K.EVENT.UPDATED));var a=r.reduce((v,g)=>{var p,m,b=(p=g.row)!==null&&p!==void 0?p:g.y;return v.has(b)||v.set(b,[]),(m=v.get(b))===null||m===void 0||m.push(g),v},new Map),l=x.consolidate(r.map(v=>{var g,p;return x.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y)})),s=t.getTableAreaRange(),o=l.map(v=>x.intersection(s,v)).filter(v=>v!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(v=>(R(v),new x(null,v.startRow,null,v.endRow)))),h=d.map((v,g)=>{for(var p=null,m=g,b=0;b<o.length;b+=1){var y=o[b];R(y);var C=x.rowCount([y]);if(m<C){R(y.startRow),p=y.startRow+m;break}m-=C}for(var E={},w=0;w<t.columns.length;w+=1)E[t.columns[w].name]=v[w];R(p);var T=a.get(p);return T!=null&&T.forEach(F=>{var O,P=t.columns[(O=F.column)!==null&&O!==void 0?O:F.x];E[P.name]=t.tableUtils.makeValue(P.type,F.text,t.formatter.timeZone)}),E});de.info("setValues setting tableRanges",o);var c=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);de.info("setValues set tableRanges",o,"SUCCESS",c)}r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,y=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],E=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=E!=null?t.displayString(E,C.type,C.name):null;t.cacheFormattedValue(b,y,w)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return vt(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((u,d)=>{var{value:h}=u,c=e.columns[d];o[c.name]=h}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);de.debug("commitPending()",e.pendingNewDataMap,"result",l),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new ie(K.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){var r;return(r=this.textValueForCell(e,t))!==null&&r!==void 0?r:""}delete(e){return vt(function*(){throw new Error("Delete not implemented")})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}q(vr,"ROW_BUFFER_PAGES",1);const fl=vr;function cd(n,e,t){return e=vd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vd(n){var e=fd(n,"string");return typeof e=="symbol"?e:String(e)}function fd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class pd extends Error{constructor(){super(...arguments),cd(this,"isMissingPartitionError",!0)}}function md(n){return(n==null?void 0:n.isMissingPartitionError)===!0}const xi=pd;function _i(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Lt(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){_i(a,r,i,l,s,"next",o)}function s(o){_i(a,r,i,l,s,"throw",o)}l(void 0)})}}function rt(n,e,t){return e=gd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gd(n){var e=bd(n,"string");return typeof e=="symbol"?e:String(e)}function bd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var lt=Z.module("IrisGridTableModel");class Cd extends fl{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),rt(this,"userFrozenColumns",void 0),rt(this,"customColumnList",void 0),rt(this,"formatColumnList",void 0),rt(this,"initialFilters",[]),rt(this,"getMemoizedKeyColumnSet",B(a=>new Set(a??ee))),rt(this,"getMemoizedFrontColumns",B(a=>a??ee)),rt(this,"getMemoizedBackColumns",B(a=>a??ee)),rt(this,"getMemoizedFrozenColumns",B((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:ee})),rt(this,"getCachedFilterableColumnSet",B(a=>new Set(a.map((l,s)=>s)))),rt(this,"getCachedPartitionColumns",B(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get 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(K.EVENT.TABLE_CHANGED,{detail:this.table}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Lt(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Lt(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionTable(e){var t=this;return Lt(function*(){lt.debug("getting partition table for partitions",e);for(var r=[],i=0;i<t.partitionColumns.length;i+=1){var a=e[i],l=t.partitionColumns[i],s=t.tableUtils.makeNullableEqFilter(l,a);r.push(s)}var o=yield t.table.copy();return o.applyFilter([...t.initialFilters,...r]),o})()}set filter(e){this.closeSubscription(),this.table.applyFilter([...this.initialFilters,...e]),this.applyViewport()}set totalsConfig(e){if(lt.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new ie(K.EVENT.UPDATED));return}this.totalsTablePromise=xe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{xe.isCanceled(t)||(lt.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(K.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Lt(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return Lt(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));R(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=>x.intersection(s,C)).filter(C=>C!=null).map(C=>(R(C),x.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];R(h.startRow),R(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1)u.delete(c)}r(u),i.formattedStringData=[],i.dispatchEvent(new ie(K.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new ie(K.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(C=>x.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[p,m]=yield Promise.all([i.snapshot(g.map(C=>(R(C),l.map(E=>{var w=i.getColumnIndexByName(E.name);if(w==null)throw new Error("Key column ".concat(E.name," not found"));return new x(w,C.startRow,w,C.endRow)}))).flat()),i.table.copy()]),b=p.map(C=>{for(var E=[],w=0;w<l.length;w+=1){var T=l[w],F=C[w],O=i.tableUtils.makeFilterRawValue(T.type,F),P=T.filter().eq(O);E.push(P)}return E.reduce((M,k)=>{var L;return(L=M==null?void 0:M.and(k))!==null&&L!==void 0?L:k})}),y=b.reduce((C,E)=>{var w;return(w=C==null?void 0:C.or(E))!==null&&w!==void 0?w:E});m.applyFilter([y]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(m),m.close()}})()}seekRow(e,t,r,i,a,l,s){var o=this;return Lt(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Sd=Cd;function yd(n,e,t){return e=Ed(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ed(n){var e=wd(n,"string");return typeof e=="symbol"?e:String(e)}function wd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Td extends K{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new ze(e);super(e),yd(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,r){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 Mr}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Mr}commitPending(){return Promise.resolve()}setViewport(e,t,r){}snapshot(e){return Promise.resolve([])}textSnapshot(e,t,r){return Promise.resolve("")}valuesTable(e){throw new Error("Method not implemented.")}delete(e){return Promise.resolve()}seekRow(e,t,r,i,a,l,s){return Promise.resolve(0)}get columnHeaderGroups(){return ee}set columnHeaderGroups(e){}get columnHeaderGroupMap(){return Mr}getColumnHeaderParentGroup(e,t){}}const Pd=Td;function ji(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function cn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ji(a,r,i,l,s,"next",o)}function s(o){ji(a,r,i,l,s,"throw",o)}l(void 0)})}}function Nd(n,e,t){return e=Dd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dd(n){var e=Od(n,"string");return typeof e=="symbol"?e:String(e)}function Od(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Fd extends Pd{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(e);super(e,r),Nd(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isReversible(){return!1}displayString(e,t,r){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}partitionKeysTable(){var e=this;return cn(function*(){return e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return cn(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return cn(function*(){try{var r=yield t.partitionedTable.getTable(e);if(r==null)throw new xi("Partition not found");return r}catch(i){throw md(i)?i:new xi("Unable to retrieve partition")}})()}}const Md=Fd;function Vi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Id(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Vi(a,r,i,l,s,"next",o)}function s(o){Vi(a,r,i,l,s,"throw",o)}l(void 0)})}}function $i(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Hi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?$i(Object(t),!0).forEach(function(r){kt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):$i(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function kt(n,e,t){return e=Rd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rd(n){var e=Ld(n,"string");return typeof e=="symbol"?e:String(e)}function Ld(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ad=Z.module("IrisGridTreeTableModel");function kd(n){return n.layoutHints!==void 0}class xd extends fl{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),kt(this,"virtualColumns",void 0),kt(this,"getCachedColumns",B((a,l)=>[...a,...l])),kt(this,"getCachedGroupColumns",B((a,l)=>[...a,...l])),kt(this,"getCachedFilterableColumnSet",B((a,l,s)=>new Set(((l==null?void 0:l.length)>0?l:a).filter(o=>!s.includes(o)).map(o=>a.findIndex(u=>o.name===u.name))))),kt(this,"getCachedGroupedColumnSet",B(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=t.groupedColumns.length>1?[{name:"__DH_UI_GROUP__",displayName:"Group",type:S.dataType.STRING,constituentType:S.dataType.STRING,isPartitionColumn:!1,isSortable:!1,isProxy:!0,description:"Key column",index:-1,filter:()=>{throw new Error("Filter not implemented for virtual column")},sort:()=>{throw new Error("Sort not implemented for virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}}]:[]}applyBufferedViewport(e,t,r){var i=[...this.table.groupedColumns,...r.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var r=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&r!=null){if(!i.hasChildren&&r.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,r.constituentType,r.name)}if(i.hasChildren&&i.depth<=e+1&&this.valueForCell(e,t)===null&&this.getCachedGroupedColumnSet(this.groupedColumns).has(e))return""}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e,l=super.extractViewportRow(e,t),s=new Map(l.data);if(i)for(var o=0;o<this.virtualColumns.length;o+=1){var u=o+(a-1)+(this.virtualColumns.length-1),d=s.get(u);d==null?Ad.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return Hi(Hi({},l),{},{data:s,isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t){var r=arguments,i=this;return Id(function*(){var a,l,s=r.length>2&&r[2]!==void 0?r[2]:y=>y;R(i.viewport),R(i.viewportData);var o=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,u=[];t!=null&&t&&u.push(o.map(y=>y.name));for(var d=new x(0,(l=i.viewportData)===null||l===void 0?void 0:l.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),h=0;h<e.length;h+=1){var c=x.intersection(d,e[h]);R(c),R(c.startRow),R(c.endRow);for(var v=c.startRow;v<=c.endRow;v+=1){var g=[],p=i.viewportData.rows[v-i.viewportData.offset];R(c.startColumn),R(c.endColumn);for(var m=c.startColumn;m<=c.endColumn;m+=1){var b;g.push(s((b=p.data.get(m))===null||b===void 0?void 0:b.value,i.columns[m]))}u.push(g)}}return u})()}get columns(){return this.getCachedColumns(this.virtualColumns,super.columns)}get groupedColumns(){return this.getCachedGroupColumns(this.virtualColumns,this.table.groupedColumns)}sourceForCell(e,t){if(e>=this.virtualColumns.length)return{column:e,row:t};var r=this.depthForRow(t);return{column:e+r,row:t}}sourceColumn(e,t){if(e>=this.virtualColumns.length)return super.sourceColumn(e,t);var r=this.depthForRow(t);return this.columns[e+r]}getClearFilterRange(e){return e>=this.virtualColumns.length?super.getClearFilterRange(e):[this.virtualColumns.length,this.groupedColumns.length]}get layoutHints(){if(kd(this.table))return this.table.layoutHints}get hasExpandableRows(){return!0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.groupedColumns,this.virtualColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r==null?void 0:r.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r==null?void 0:r.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,r):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll!=null&&this.table.expandAll()}collapseAll(){this.table.collapseAll!=null&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r==null?void 0:r.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const _d=xd;function st(n,e,t){return e=jd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jd(n){var e=Vd(n,"string");return typeof e=="symbol"?e:String(e)}function Vd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ot=Z.module("IrisGridProxyModel");function At(n,e,t,r){return S.isTreeTable(e)?new _d(n,e,t):S.isPartitionedTable(e)?new Md(n,e,t):new Sd(n,e,t,r)}class $d extends K{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new ze(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=At(e,t,r,i);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.get)!=null;if(d)return Reflect.get(l,s,o);var h=Object.prototype.hasOwnProperty.call(l,s),c=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),v=h||c?l:l.model;return Reflect.get(v,s)},set(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.set)!=null;return d?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){ot.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new ie(r,{detail:t}))}setModel(e){ot.debug("setModel",e);var t=this.model,{columns:r}=t;if(t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),r!==e.columns)this.dispatchEvent(new ie(K.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)}xt(e)&&this.dispatchEvent(new ie(K.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=xe.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(xe.isCanceled(t)){ot.debug2("setNextModel cancelled");return}ot.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new ie(K.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(K.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(K.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return it(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!it(this.originalModel)||!this.originalModel.isPartitionRequired?null: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&&it(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionKeysTable().then(r=>At(this.dh,r,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(r=>At(this.dh,r,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(r=>At(this.dh,r,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!it(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!it(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!it(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(!Ar(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);xt(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>At(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(ot.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){ot.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),r=Promise.resolve(this.originalModel);xt(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>At(this.dh,i,this.formatter))),this.setNextModel(r)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return it(this.originalModel)?this.originalModel.isPartitionRequired:!1}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}const Hd=$d;function Gi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Gd(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Gi(a,r,i,l,s,"next",o)}function s(o){Gi(a,r,i,l,s,"throw",o)}l(void 0)})}}class Ud{static makeModel(e,t){var r=arguments;return Gd(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new ze(e),a=null;return!S.isTreeTable(t)&&!S.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new Hd(e,t,i,a)})()}}const jn=Ud;function Vn(n,e,t){return e=Bd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bd(n){var e=Wd(n,"string");return typeof e=="symbol"?e:String(e)}function Wd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Yr{}Vn(Yr,"OPEN","ChartEvent.OPEN");Vn(Yr,"CLOSE","ChartEvent.CLOSE");Vn(Yr,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");const jr=Yr;function Yt(n,e,t){return e=zd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zd(n){var e=qd(n,"string");return typeof e=="symbol"?e:String(e)}function qd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mt{}Yt(Mt,"OPEN_GRID","IrisGridEvent.OPEN_GRID");Yt(Mt,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");Yt(Mt,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");Yt(Mt,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");Yt(Mt,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");Yt(Mt,"CREATE_CHART","IrisGridevent.CREATE_CHART");const Be=Mt,pl=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function ml(n,e,t){return e=Kd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kd(n){var e=Yd(n,"string");return typeof e=="symbol"?e:String(e)}function Yd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class $n{}ml($n,"OPEN","PandasEvent.OPEN");ml($n,"CLOSE","PandasEvent.CLOSE");const Xd=$n;function mr(n){var{widgetType:e,widgetName:t,glContainer:r,description:i,children:a}=n,l=$.getTitleFromContainer(r);return f.jsxs("div",{className:"tab-tooltip-grid-container",children:[f.jsxs("span",{className:"tab-tooltip-title",children:[e," Name"]}),f.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[f.jsx("span",{className:"tab-tooltip-name",children:t}),f.jsx(vo,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:t})]}),t!==l&&f.jsxs(f.Fragment,{children:[f.jsx("span",{className:"tab-tooltip-title",children:"Display Name"}),f.jsx("span",{className:"tab-tooltip-name",children:l})]}),i&&f.jsx("div",{className:"tab-tooltip-description",children:i}),a]})}mr.propTypes={glContainer:Va.Container.isRequired,widgetType:W.string,widgetName:W.string,description:W.string,children:W.node};mr.defaultProps={widgetType:"",widgetName:"",description:null,children:null};function gl(n,e,t){return e=Qd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qd(n){var e=Zd(n,"string");return typeof e=="symbol"?e:String(e)}function Zd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class bl extends D.PureComponent{constructor(e){super(e),gl(this,"getCachedRenderTabTooltip",B((t,r,i,a,l)=>t?()=>f.jsx(mr,{glContainer:r,widgetType:i,widgetName:a,description:l}):null)),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{widgetName:e}=this.props;ja(e)}getErrorMessage(){var{errorMessage:e}=this.props,{isClientDisconnected:t,isPanelDisconnected:r,isWidgetDisconnected:i,isWaitingForReconnect:a}=this.state;if(e)return"".concat(e);if(t&&r&&a)return`Disconnected from server.
7
7
  Check your internet connection.`;if(t&&r)return"Disconnected from server.";if(r){var{widgetName:l,widgetType:s}=this.props;return'Variable "'.concat(l,`" not set.
8
- `).concat(s," does not exist yet.")}if(i){var{widgetName:o}=this.props;return"".concat(o," is unavailable.")}}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),e(...arguments)}handleSessionOpened(){var{onSessionOpen:e}=this.props;e(...arguments)}render(){var{children:e,className:t,componentPanel:r,isLoaded:i,isLoading:a,glContainer:l,glEventHub:s,isDisconnected:o,isClonable:u,isRenamable:d,showTabTooltip:h,renderTabTooltip:c,widgetType:v,widgetName:g,description:p,onClearAllFilters:m,onHide:b,onFocus:y,onBlur:C,onResize:E,onShow:w,onTabBlur:T,onTabFocus:F,onTabClicked:O}=this.props,{isPanelDisconnected:P,isWidgetDisconnected:M,isPanelInactive:k}=this.state,L=this.getErrorMessage(),j=c??this.getCachedRenderTabTooltip(h,l,v,g,p),H=[{title:"Copy ".concat(v," Name"),group:Ye.groups.medium,order:20,action:this.handleCopyName}];return f.jsxs(Wt,{className:Re(t,{disconnected:P||M||o,inactive:k}),componentPanel:r,glContainer:l,glEventHub:s,onClearAllFilters:m,onHide:b,onFocus:y,onBlur:C,onResize:E,onShow:w,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:T,onTabFocus:F,onTabClicked:O,renderTabTooltip:j,errorMessage:L,isLoaded:i,isLoading:a,isClonable:u,isRenamable:d,additionalActions:H,children:[e,k&&f.jsx("div",{className:"fill-parent-absolute"})]})}}gl(bl,"defaultProps",{className:"",errorMessage:null,isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",renderTabTooltip:null,description:"",onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onClearAllFilters:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},onTabClicked:()=>{}});const gr=bl,Je=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var eh=(n,e)=>t=>t(Et(n,{connection:e})),th=(n,e)=>t=>t(Et(n,{sessionWrapper:e})),Xr=(n,e)=>t=>t(Et(n,{links:e})),Cl=(n,e)=>(t,r)=>{var i=Ot(r(),n),a=e.filter(l=>i.findIndex(s=>Ar(s.start,l.start)&&Ar(s.end,l.end))<0);return t(Xr(n,i.concat(a)))},Sl=(n,e)=>(t,r)=>{var i=Ot(r(),n),a=i.filter(l=>!e.includes(l.id));return t(Xr(n,a))},Hn=(n,e)=>t=>t(Et(n,{isolatedLinkerPanelId:e})),yl=(n,e)=>t=>t(Et(n,{columnSelectionValidator:e})),El=(n,e)=>t=>t(Et(n,{consoleSettings:e})),wl=(n,e)=>t=>t(Et(n,{filterSets:e}));function Tl(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=D.useMemo(()=>{var g=Array.from(s.keys()),p=g.find(y=>t.get(y)!=null),m=g.find(y=>r.get(y)!=null),b=Xe.join(g.map(y=>'"'.concat(y,'"')));return p!=null&&p&&m!=null&&m?"Use a filter control or linked table to set a value for ".concat(b):p!=null&&p?"Set a filter control value for ".concat(b):"Double click a row in a linked table to set a value for ".concat(b)},[t,r,s]),u=D.useMemo(()=>Array.from(e.values()),[e]),d=D.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),h=D.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),c=l.size>0,v=!c&&s.size>0;return f.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:f.jsxs("div",{className:Re("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":c},{"chart-filter-waiting-input":v}),children:[c&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),f.jsx("div",{className:"waiting-filter-list",children:u.map(g=>{var p=l.has(g.name),m=p?Us:Bs;return f.jsxs("div",{className:Re("waiting-filter-item",{"is-invalid":p}),children:[f.jsx(Ie,{icon:m}),g.name]},g.name)})}),f.jsxs("div",{children:[f.jsx(X,{kind:"primary",onClick:d,children:"Add Input Filters"}),f.jsx(X,{kind:"primary",onClick:h,children:"Open Linker Tool"})]})]}),v&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"info-message",children:"Waiting for User Input"}),f.jsx("div",{className:"",children:o})]})]})})}Tl.propTypes={columnMap:W.instanceOf(Map).isRequired,inputFilterMap:W.instanceOf(Map).isRequired,linkedColumnMap:W.instanceOf(Map).isRequired,onAdd:W.func.isRequired,onOpenLinker:W.func.isRequired,waitingFilterMap:W.instanceOf(Map).isRequired,waitingInputMap:W.instanceOf(Map).isRequired};function fr(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return f.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:f.jsxs("div",{className:Re("chart-panel-overlay-content"),children:[f.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),f.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>f.jsx(tl,{className:Re("btn-chart-column-selector",fr.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}fr.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);fr.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function _t(n){return n.settings!==void 0}function Gn(n){return n.figure!==void 0}function Pl(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function Nl(n){return n!=null&&Pl(n.panelState)}function Ui(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Bi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ui(Object(t),!0).forEach(function(r){Qe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ui(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qe(n,e,t){return e=rh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rh(n){var e=nh(n,"string");return typeof e=="symbol"?e:String(e)}function nh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var je=Z.module("ChartPanel"),ih=150;function ah(n){return n.inputFilters!=null}function lh(n){return n.panelState!=null}class Qr extends D.Component{constructor(e){super(e),Qe(this,"panelContainer",void 0),Qe(this,"pending",void 0),Qe(this,"getWaitingInputMap",B((l,s,o)=>{if(!l)return new Map;var u=new Map(s);return o.forEach((d,h)=>{u.delete(h)}),u})),Qe(this,"getWaitingFilterMap",B((l,s,o,u,d)=>{if(!l)return new Map;var h=new Map(s);return o.forEach((c,v)=>{h.delete(v)}),d.forEach((c,v)=>{h.delete(v)}),u.forEach((c,v)=>{h.delete(v)}),h})),Qe(this,"getInputFilterColumnMap",B((l,s)=>{for(var o=new Map,u=0;u<s.length;u+=1){var d=s[u],{name:h,type:c}=d,v=l.get(h);v!=null&&v.type===c&&o.set(h,d)}return o})),Qe(this,"getLinkedColumnMap",B((l,s)=>{for(var o=new Map,u=$.getIdFromPanel(this),d=0;d<s.length;d+=1){var h=s[d],c=null;if(h.start!=null&&h.start.panelId===u&&l.has(h.start.columnName)?c=h.start.columnName:h.end&&h.end.panelId===u&&l.has(h.end.columnName)&&(c=h.end.columnName),c!=null&&l.has(c)){var v=l.get(c);R(v),o.set(c,v)}}return o})),Qe(this,"getSelectorColumns",B((l,s,o)=>Array.from(l.values()).map(u=>({name:u.name,type:u.type,isValid:o?o(this,u):!1,isActive:s.has(u.name)})))),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=ht(this.updateModelFromSource.bind(this),ih),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Le.createRef(),this.pending=new Dn;var{metadata:t,panelState:r}=e,{filterValueMap:i=[],settings:a={}}=r??{};this.state={settings:a,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&_t(t)&&t.settings.isLinked,filterMap:new Map(i),filterValueMap:new Map(i),model:void 0,columnMap:new Map,panelState:r}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:r,source:i,makeModel:a}=this.props,{columnMap:l,model:s,filterMap:o,filterValueMap:u,isLinked:d,settings:h}=this.state;s&&(a!==e.makeModel&&this.initModel(),l!==t.columnMap&&this.pruneFilterMaps(),r!==e.inputFilters&&this.updateChangedInputFilters(r,e.inputFilters),o!==t.filterMap?this.updateFilters():u!==t.filterValueMap&&this.updatePanelState(),h!==t.settings&&Ei(s)&&(s.updateSettings(h),this.updatePanelState()),d!==t.isLinked?i&&(d?(this.startListeningToSource(i),this.updateModelFromSource()):this.stopListeningToSource(i)):d&&i!==e.source&&(e.source&&this.stopListeningToSource(e.source),i&&(this.startListeningToSource(i),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0});var{makeModel:e}=this.props;this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){je.debug("startListeningToSource",e);var{model:t}=this.state;R(t);var{dh:r}=t;e.addEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.addEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}stopListeningToSource(e){je.debug("stopListeningToSource",e);var{model:t}=this.state;R(t);var{dh:r}=t;e.removeEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.removeEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}loadModelIfNecessary(){var{isActive:e,isLoaded:t,isLoading:r}=this.state;e&&!t&&!r&&this.initModel()}isHidden(){var{glContainer:e}=this.props,{isHidden:t}=e;return t}handleColumnSelected(e){var{glEventHub:t}=this.props,{columnMap:r}=this.state;t.emit(jr.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;je.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;je.debug("handleColumnMouseLeave",e),e&&e(this,void 0)}handleDisconnect(){this.setState({error:new Error("Figure disconnected"),isDisconnected:!0})}handleFilterAdd(e){for(var t=0;t<e.length;t+=1)this.openInputFilter(e[t])}handleOpenLinker(){var{localDashboardId:e,setActiveTool:t,setDashboardIsolatedLinkerPanelId:r}=this.props;r(e,void 0),t(Je.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){je.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:r,source:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(r,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){xe.isCanceled(e)||(je.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:r,model:i}=this.state;if(!r||!i||!t){je.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),_t(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new Ae(a).makeFigureSettings(l,t))).then(s=>{Ei(i)&&i.setFigure(s)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:r,settings:i}=this.state,{tableSettings:a}=t??{};if(e&&ah(e.props)&&lh(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=ue.extractTableSettings(s,l))}this.setState({panelState:{settings:i,tableSettings:a,filterValueMap:Array.from(r)}})}handleError(){this.setState({isLoading:!1})}handleSettingsChanged(e){this.setState(t=>{var{settings:r}=t,i=Bi(Bi({},r),e);return je.debug("Updated settings",i),{settings:i}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(e){var{isLoading:t}=e;this.setState({isLoading:t})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:r,type:i}=e;t.emit(Se.OPEN_INPUT,{title:"".concat(r," Filter"),panelState:{name:r,type:i,isValueShown:!0},createNewStack:!0,focusElement:"input"})}setActive(e){this.setState({isActive:e},()=>{e&&this.loadModelIfNecessary()})}sendColumnChange(){var{model:e}=this.state;if(e){var{glEventHub:t}=this.props;t.emit(Se.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=fr.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i==null?void 0:i.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){je.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,u)=>{var{columnType:d,filterList:h}=o,c=i.get(u);if(!(c==null||c.type!==d)){if(h.length<1){je.debug("Ignoring empty filterList for column",u);return}var{value:v}=h[0];s.set(u,v),a.get(u)!==v&&(l===null&&(l=new Map(a)),l.set(u,v))}}),{filterValueMap:s,filterMap:(r=l)!==null&&r!==void 0?r:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:r}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,r);if(s.has(e)){var o,u=a.get(e),d=(o=s.get(e))===null||o===void 0?void 0:o.value;d!=null&&u!==d&&(a=new Map(t.filterMap),d.length>0?a.set(e,d):a.delete(e))}else a=new Map(t.filterMap),a.delete(e);return{filterMap:a,filterValueMap:l}})}updateChangedInputFilters(e,t){var r=t.filter(a=>e.find(l=>l.name===a.name&&l.type===a.type)===void 0);r.length>0&&this.deleteInputFilters(r);var i=e.filter(a=>!t.includes(a));i.length>0&&this.updateInputFilters(i)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i}=r,a=new Map(r.filterValueMap),l=new Map(r.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var{name:u,type:d,value:h}=e[o],c=i.get(u);c!=null&&c.type===d&&(h!=null&&l.get(u)!==h&&(h===""?l.delete(u):l.set(u,h),s.filterMap=l),a.has(u)&&(a.delete(u),s.filterValueMap=a))}return je.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i,filterValueMap:a}=r,l=new Map(r.filterMap),s=t,o=0;o<e.length;o+=1){var{name:u,type:d}=e[o],h=i.get(u);if(h!=null&&h.type===d&&l.has(u)){var c=l.get(u);if(a.has(u)){var v=a.get(u);v!==c&&v!=null&&(s=!0,l.set(u,v))}else s=!0,l.delete(u)}}return je.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:r}=this.state;R(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=Xe.join(Array.from(t.entries()).map(s=>{var[o,u]=s;return"".concat(o,": ").concat(u)}));a?r.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):r.setTitle(l),je.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else je.debug2("updateFilters waiting on inputs",i),r.setTitle(r.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,r=new Map(e.filterMap),i=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((l,s)=>{t.has(s)||(i.delete(s),a.filterValueMap=i)}),e.filterMap.forEach((l,s)=>{t.has(s)||(r.delete(s),a.filterMap=r)}),a})}render(){var e,{columnSelectionValidator:t,glContainer:r,glEventHub:i,inputFilters:a,isLinkerActive:l,links:s,metadata:o,settings:u,Plotly:d,containerRef:h}=this.props,{columnMap:c,filterMap:v,error:g,model:p,isActive:m,isDisconnected:b,isLoaded:y,isLoading:C}=this.state,E;_t(o)?E=o.table:Gn(o)?E=o.figure:E=o.name;var w=this.getInputFilterColumnMap(c,a),T=this.getLinkedColumnMap(c,s),F=p!=null?this.getWaitingInputMap(p.isFilterRequired(),c,v):new Map,O=p!=null?this.getWaitingFilterMap(p.isFilterRequired(),c,v,T,w):new Map,P=g!=null?"Unable to open chart. ".concat(g):void 0,M=F.size>0,k=c.size>0&&l;return f.jsx(gr,{className:Re("iris-chart-panel",{"input-required":M}),componentPanel:this,glContainer:r,glEventHub:i,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:P,isDisconnected:b,isLoading:C,isLoaded:y,widgetName:(e=E)!==null&&e!==void 0?e:void 0,widgetType:"Chart",children:f.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[f.jsx("div",{className:"chart-container h-100 w-100",children:y&&p&&f.jsx(ll,{isActive:m,model:p,settings:u,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d,containerRef:h})}),f.jsx(gn,{in:M&&!k&&!C,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(Tl,{inputFilterMap:w,linkedColumnMap:T,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:c,waitingFilterMap:O,waitingInputMap:F})}),f.jsx(gn,{in:k,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(fr,{columns:this.getSelectorColumns(c,T,t),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}Qe(Qr,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});Qe(Qr,"displayName","ChartPanel");Qe(Qr,"COMPONENT","ChartPanel");var sh=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&_t(r)&&(i=r.sourcePanelId);var a=Gr(n,t),l=Ha(n,t),s=On(n),o=Ur(n,t),u=s===Je.LINKER&&o===void 0;return{columnSelectionValidator:Br(n,t),isLinkerActive:u,inputFilters:Wr(n,t),links:Ot(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:zr(n)}},oh=yt(sh,{setActiveTool:$a,setDashboardIsolatedLinkerPanelId:Hn},null,{forwardRef:!0})(Qr);const br=oh;function Ze(n,e,t){return e=uh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uh(n){var e=dh(n,"string");return typeof e=="symbol"?e:String(e)}function dh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Pr=Z.module("DropdownFilter"),hh=150;class dt extends D.Component{constructor(e){super(e),Ze(this,"dropdownRef",void 0),Ze(this,"getCompatibleColumns",B((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&S.isCompatibleType(o,a.columnType)}):[])),Ze(this,"getColumnOptions",B((a,l)=>{var s=-1,o=[];return o.push(f.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(f.jsx("option",{value:d,children:this.getItemLabel(a,d)},"".concat(u.name,"/").concat(u.type))),l!==null&&u.name===l.name&&u.type===l.type&&(s=d)}),[o,s]})),Ze(this,"getSelectedOptionIndex",B((a,l)=>a.indexOf(l))),Ze(this,"getValueOptions",B(a=>[f.jsx("option",{value:"-1",children:dt.PLACEHOLDER},"-1"),...a.map((l,s)=>f.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),Ze(this,"getItemLabel",Ge((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s})),Ze(this,"sendUpdate",ht(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},hh)),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=Le.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:We(),selectedColumn:t,disableCancel:!r,isValueShown:r,value:i}}componentDidUpdate(e,t){var{source:r,values:i,isLoaded:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a&&(r!==e.source&&this.sourceUpdated(),i!==e.values&&s!==""&&!i.includes(s)&&this.resetValue(),o!==t.isValueShown&&o&&this.focusInput(),(l!==t.column||s!==t.value||o!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var t=e;if(Pr.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:r,source:i}=this.props,a=this.getCompatibleColumns(i,r);this.setState({selectedColumn:a[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),Pr.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var t=e,r=parseInt(t,10),i="",{values:a}=this.props;r>=0&&r<a.length?i=a[r]:Pr.debug2("Selected default item"),Pr.debug2("handleValueChange",i),this.setState({value:i})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:r,value:i}=e;return{column:r,value:t===r?i:"",isValueShown:!0,disableCancel:!1}})}handleSettingsClick(e){e.stopPropagation(),this.showSettings()}handleBackgroundClick(e){e.target!==this.dropdownRef.current&&this.focusInput()}sourceUpdated(){this.setState({column:null,selectedColumn:null,isValueShown:!1,disableCancel:!0,value:""})}showSettings(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!1})}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}clearFilter(){this.resetValue()}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,l=t!=null&&r!=null?{name:t,type:r}:null;this.setState(s=>{var{value:o,isValueShown:u}=s;return{column:l,value:i??o,isValueShown:a??u}})}render(){var e,{columns:t,disableLinking:r,isLinkerActive:i,isLoaded:a,source:l,onColumnSelected:s,onSourceMouseEnter:o,onSourceMouseLeave:u,values:d,settingsError:h}=this.props,{column:c,disableCancel:v,id:g,isValueShown:p,selectedColumn:m,value:b}=this.state,y=l===null,C=this.getCompatibleColumns(l,t),E=l!=null,w=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:dt.SOURCE_BUTTON_PLACEHOLDER,T=c!=null?"".concat(c.name," Filter"):null,[F,O]=this.getColumnOptions(C,m),P=this.getValueOptions(d),M=this.getSelectedOptionIndex(d,b),k=!E||m==null,L=p&&!i,j="source-column-btn-".concat(g),H="filter-column-select-".concat(g);return f.jsxs(Rn,{className:"dropdown-filter fill-parent-absolute",isFlipped:L,children:[f.jsx("div",{className:"dropdown-filter-settings-card",children:f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsxs("div",{className:"dropdown-filter-settings-grid",children:[f.jsx("label",{htmlFor:j,children:"Source Column"}),f.jsx(tl,{id:j,isLinked:E,onClick:s,onMouseEnter:o,onMouseLeave:u,className:dt.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:w}),f.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),f.jsx("label",{htmlFor:H,children:"Filter Column"}),f.jsx(hr,{id:H,value:String(O),className:"custom-select",onChange:this.handleColumnChange,disabled:y,children:F}),f.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),h&&f.jsx("div",{className:"error-message text-center",children:h}),E&&f.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[f.jsx(X,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||p||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),f.jsx(X,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:k||p||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),f.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"dropdown-filter-column",children:f.jsx("div",{className:"dropdown-filter-column-title",children:T})}),f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:f.jsx(hr,{className:"custom-select",value:String(M),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:P})}),h&&f.jsx("div",{className:"error-message mt-3 text-center",children:h})]}),f.jsx("div",{className:"dropdown-filter-menu",children:f.jsx(X,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Ie,{icon:Mn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}Ze(dt,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});Ze(dt,"PLACEHOLDER","Select a value...");Ze(dt,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");Ze(dt,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const Wi=dt;function ke(n,e,t){return e=ch(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ch(n){var e=vh(n,"string");return typeof e=="symbol"?e:String(e)}function vh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var he=Z.module("DropdownFilterPanel"),fh=250,ph=(n,e)=>{var{localDashboardId:t}=e,r=$.getIdFromPanel({props:e}),i=Gr(n,t),a=Ot(n,t),l=On(n),s=Ur(n,t),o=l===Je.LINKER&&(s===void 0||s===r),u=l===Je.LINKER&&s!==void 0&&s!==r;return{columns:Fn(n,t),columnSelectionValidator:Br(n,t),dh:Ga(n),isLinkerActive:o,disableLinking:u,settings:zr(n),panelTableMap:i,dashboardLinks:a}},mh=yt(ph,null,null,{forwardRef:!0});class tt extends D.Component{constructor(e){super(e),ke(this,"dateTimeFormatter",void 0),ke(this,"dropdownFilterRef",void 0),ke(this,"panelContainer",void 0),ke(this,"pending",void 0),ke(this,"cleanup",void 0),ke(this,"columnFormats",void 0),ke(this,"getCachedValues",Ge((h,c,v)=>{var{type:g,name:p}=c;return g!==void 0&&S.isDateType(g)?h.map(m=>this.dateTimeFormatter.format(m)):h.map(m=>m!=null&&g!=null?v.getFormattedString(m,g,p):null)})),ke(this,"getCachedPanelLinks",Ge((h,c)=>{var v=$.getIdFromPanel(c);return he.debug("getCachedPanelLinks",h,v),h.filter(g=>{var p;return((p=g.end)===null||p===void 0?void 0:p.panelId)===v})})),ke(this,"getCachedSource",Ge(h=>{he.debug("getCachedSource",h);var c;if(h.length>0){var[v]=h;c=v.start,h.length>1&&he.error("Filter has more that one link",h)}return c})),ke(this,"getCachedSourceTable",Ge((h,c)=>{var v;if(he.debug("getCachedSourceTable",h,c),c==null)return null;var{panelId:g}=c;return(v=h.get(g))!==null&&v!==void 0?v:null})),ke(this,"getCachedSourceColumn",Ge((h,c)=>{var v;return he.debug("getCachedSourceColumn",h,c),h==null||c==null?null:(v=h.columns.find(g=>{var{name:p,type:m}=g;return p===c.columnName&&m===c.columnType}))!==null&&v!==void 0?v:null})),this.handleChange=ht(this.handleChange.bind(this),fh),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=Le.createRef(),this.panelContainer=Le.createRef(),this.pending=new Dn;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=bn.getColumnFormats(i),this.dateTimeFormatter=new kr(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:a="",isValueShown:l=!1,name:s,type:o,timestamp:u}=r??{},d=s!=null&&o!=null?{name:s,type:o}:void 0;this.state={column:d,formatter:new ze(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:a,timestamp:u,values:[],isValueShown:l,wasFlipped:!1,skipUpdate:!1,panelState:r,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:r,value:i,timestamp:a}=this.state,l=this.getSourceTable(t,e);if(l!==null&&this.startListeningToSource(l),r!=null){var{name:s,type:o}=r;this.sendUpdate(s,o,i,a)}}componentDidUpdate(e,t){var{dashboardLinks:r,panelTableMap:i,settings:a}=this.props,{valuesTable:l}=this.state,s=this.getSource(r),o=this.getSourceTable(i,r),u=this.getSource(e.dashboardLinks),d=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),l!==t.valuesTable&&t.valuesTable!=null&&(he.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==d||s!==u)&&this.updateValuesTable(),o!==d&&(d!==null&&this.stopListeningToSource(d),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);this.pending.cancel(),i!==null&&this.stopListeningToSource(i),this.cleanup&&this.cleanup(),r!=null&&r.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(Wi.SOURCE_BUTTON_CLASS_NAME)),r=(e=t==null?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null;if(r==null||r.width<=0||r.height<=0)return null;var i=r.left+r.width/2,a=r.bottom;return[i,a]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>tt.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(tt.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var{error:e}=this.state;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var r=this.getSource(t);return this.getCachedSourceTable(e,r)}getValuesColumn(e,t){var r=this.getSource(t);return this.getCachedSourceColumn(e,r)}startListeningToSource(e){var{dh:t}=this.props;he.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;he.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,{name:a=void 0,type:l=void 0}=t??{},s=!0,o=Date.now();this.setState(u=>{var d,h,{panelState:c,timestamp:v,wasFlipped:g,skipUpdate:p}=u,m=c!=null&&r!==c.isValueShown&&a===c.name&&l===c.type&&i===c.value;return s=(d=!p&&r&&(!m||!g))!==null&&d!==void 0?d:!1,s||(o=v),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:(h=o)!==null&&h!==void 0?h:void 0},timestamp:o,wasFlipped:m,skipUpdate:!1}},()=>{s&&this.sendUpdate(a??null,l,i,o)})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleSourceFilterChange(){this.applySourceFilters()}handleSourceSortChange(){this.applySourceSorts()}handleSourceSizeChange(e){var{detail:t}=e;this.setState({sourceSize:t})}handleColumnSelected(){he.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(Se.COLUMN_SELECTED,this,tt.SOURCE_COLUMN)}handleClearAllFilters(){var e,t;(e=this.dropdownFilterRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.clearFilter()}setPanelState(e){var t,r,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){he.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(r=t.current)===null||r===void 0||r.setFilterState(e)}sendUpdate(e,t,r,i){var a,{dashboardLinks:l,glEventHub:s}=this.props,o=(a=this.getSource(l))===null||a===void 0?void 0:a.panelId,u=o===null?[]:[o];he.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:u}),s.emit(Se.FILTERS_CHANGED,this,{name:e,type:t,value:r??"=null",timestamp:i,excludePanelIds:u})}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,r=this.getSource(e),i=this.getSourceTable(t,e);if(he.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){he.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=>{xe.isCanceled(a)||(he.error(a),this.setState({isLoading:!1,error:a}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(he.debug("applySourceSorts",i==null?void 0:i.sort),r==null||i==null){he.debug("Table not initialized");return}var a=[...i.sort];r.applySort(a),this.setViewport(r)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(he.debug("applySourceFilters",i==null?void 0:i.filter),r==null||i==null){he.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(he.debug("updateViewportListener",e==null?void 0:e.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,r=this.getValuesColumn(e,t);if(!r){he.error("values column is null");return}e.setViewport(0,tt.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=bn.getColumnFormats(e);Ar(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new ze(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){he.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){he.error("Values column not found");return}var s=r.map(o=>o.get(l));this.setState({values:s,isLoading:!1,isLoaded:!0,valuesColumn:l})}handleSourceMouseEnter(){var{columnSelectionValidator:e}=this.props;e&&e(this,tt.SOURCE_COLUMN)}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0)}render(){var{columns:e,dashboardLinks:t,disableLinking:r,glContainer:i,glEventHub:a,isLinkerActive:l}=this.props,{column:s,formatter:o,isDisconnected:u,isValueShown:d,value:h,values:c,valuesColumn:v,isLoading:g,isLoaded:p}=this.state,m=this.getSource(t),b=this.getSettingsErrorMessage(),y=this.getPanelErrorMessage(),C=p&&v!=null?this.getCachedValues(c,v,o):[];return f.jsx(gr,{errorMessage:y,isLoading:g,isLoaded:p,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:f.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:f.jsx(Wi,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:p,settingsError:b,source:m,value:h,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}ke(tt,"displayName","DropdownFilterPanel");ke(tt,"COMPONENT","DropdownFilterPanel");ke(tt,"MAX_TABLE_SIZE",256);ke(tt,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var gh=mh(tt);const St=gh;function zi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Nr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zi(Object(t),!0).forEach(function(r){lr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function lr(n,e,t){return e=bh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bh(n){var e=Ch(n,"string");return typeof e=="symbol"?e:String(e)}function Ch(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ve=Z.module("FilterSetManager"),Sh="Enter name...",qi="No Available Filter Sets";class Vr extends D.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),lr(this,"renameInputRef",Le.createRef()),lr(this,"dropdownRef",Le.createRef()),lr(this,"editDropdownRef",Le.createRef()),lr(this,"isRenamingExistingSet",B((t,r)=>r!==void 0&&t.some(i=>{var{id:a}=i;return a===r.id}))),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleEditDropdownChange=this.handleEditDropdownChange.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleCaptureNewSet=this.handleCaptureNewSet.bind(this),this.handleNameInputChange=this.handleNameInputChange.bind(this),this.handleNameInputKeyPress=this.handleNameInputKeyPress.bind(this),this.handleRenameConfirm=this.handleRenameConfirm.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRestoreFullStateChange=this.handleRestoreFullStateChange.bind(this),this.handleSetDelete=this.handleSetDelete.bind(this),this.handleSetEdit=this.handleSetEdit.bind(this),this.handleSetUpdate=this.handleSetUpdate.bind(this),this.state={editId:void 0,renameSet:void 0,nameInputValue:"",nameInputError:void 0,modifiedFilterSets:[],restoreFullState:!1}}componentDidMount(){var{isValueShown:e}=this.props;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var{isValueShown:r,filterSets:i}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!r&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),i!==e.filterSets)if(!r&&i.length>0&&e.filterSets.length===0&&a.length===0){var{onChange:l}=this.props;l({isValueShown:!0,selectedId:i[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;ve.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(ve.debug("updateSelectedId",t,r),!!e&&!t.some(l=>{var{id:s}=l;return s===r})){var a=t.length===0;i({isValueShown:!a,selectedId:a?void 0:t[0].id})}}handleEditDropdownChange(e){this.setState({editId:e})}handleFilterChange(e){var t=e,{isValueShown:r,onChange:i}=this.props;this.applyFilterSet(t),i({isValueShown:r,selectedId:t})}handleFilterApply(){var{selectedId:e}=this.props;this.applyFilterSet(e)}handleSettingsCancel(){var{onChange:e,selectedId:t,filterSets:r}=this.props;this.setState({modifiedFilterSets:[]}),r.length>0&&e({isValueShown:!0,selectedId:t})}handleSettingsSave(){var{onChange:e,onUpdateSets:t}=this.props,{modifiedFilterSets:r,editId:i}=this.state;this.setState({modifiedFilterSets:[]}),ve.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Vr.animateScreenFlash();var t=We(),r=e(),i={id:t,title:"",panels:r};ve.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,{renameSet:r,modifiedFilterSets:i}=this.state,a=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(a.length===0)return ve.debug("Name cannot be empty",a),"Name cannot be empty";if(r!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==r.id}))return ve.debug("Set with this name already exists",a),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:r,modifiedFilterSets:i,restoreFullState:a}=this.state;if(r===void 0){ve.error("Renamed set undefined.");return}var l=this.getNameError(t);if(ve.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t==null?void 0:t.trim())!==null&&e!==void 0?e:"",o=Nr(Nr({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===r.id}),d=[...i];u>=0?(d[u]=o,ve.debug("Renamed existing set",d)):(d.push(o),ve.debug("Added new set to modified sets",d)),this.setState({editId:o.id,modifiedFilterSets:d,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.findIndex(o=>{var{id:u}=o;return u===t});if(i<0)return ve.error("Unable to find selected filterSet index",r,t),null;var a=r.filter(o=>{var{id:u}=o;return u!==t}),l=Math.max(0,Math.min(a.length-1,i-1)),s=a.length>0?a[l].id:void 0;return ve.debug("Deleted selected set",t,r,a),ve.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Vr.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return ve.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(ve.error("Selected set for update not found."),null):(l[s]=Nr(Nr({},l[s]),{},{panels:t}),ve.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.find(s=>{var{id:o}=s;return o===t});if(i===void 0)return ve.error("Could not find selected set",t,r),null;var{title:a,restoreFullState:l=!1}=i;return{nameInputValue:a,nameInputError:void 0,renameSet:i,restoreFullState:l}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:r}=this.props;t({isValueShown:!1,selectedId:r})}handleBackgroundClick(e){ve.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var{value:t}=e.target,r=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:r})}handleNameInputKeyPress(e){var{key:t}=e;t==="Enter"&&(e.preventDefault(),this.handleRenameConfirm())}isNameInputScreen(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,{renameSet:t}=e;return t!==void 0}applyFilterSet(e){var{onApply:t,filterSets:r}=this.props;if(e===void 0){ve.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){ve.debug("Selected id not found in filterSets",e,r);return}ve.debug("Apply filterSet",i),t(i)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId:r,renameSet:i,modifiedFilterSets:a,restoreFullState:l}=this.state,{isValueShown:s,filterSets:o,selectedId:u}=this.props,d=this.isNameInputScreen(),h=this.isRenamingExistingSet(a,i),c=a.length===0,v=!d&&c&&o.length===0,g=!d&&!v,p=f.jsxs("div",{className:"fa-layers mr-3",children:[f.jsx(Ie,{icon:li,mask:si,transform:"shrink-1 down-5 right-7"}),f.jsx(Ie,{icon:zs,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),m=f.jsxs("div",{className:"fa-layers",children:[f.jsx(Ie,{icon:li,mask:si,transform:"shrink-1 down-5 right-7"}),f.jsx(Ie,{icon:qs,transform:"shrink-1 down-5 right-7"})]});return f.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:f.jsxs(Rn,{className:"w-100 h-100",isFlipped:s,children:[f.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:f.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&f.jsxs("div",{children:[f.jsx(X,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:p,children:"Capture filter set"}),f.jsx("div",{className:"py-3 text-muted small",children:"Takes a snapshot of the currently applied filters on all panels, allowing you to restore saved filter sets later."})]}),d&&f.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[f.jsxs("div",{className:"form-group",children:[f.jsx("label",{children:h?"Edit set":"Name captured set"}),f.jsxs("div",{className:"name-input-container",children:[f.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:Sh,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),f.jsx(X,{"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:Za}),f.jsx(X,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Ws})]}),t!==void 0&&f.jsx("div",{className:"error-message",children:t})]}),f.jsx("div",{className:"form-group",children:f.jsxs(hs,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[f.jsx(ri,{value:"false",children:"Restore only filters"}),f.jsx(ri,{value:"true",children:"Restore full table state"})]})})]}),g&&f.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[f.jsxs("div",{className:"form-group",children:[f.jsx("label",{children:"Edit filter sets"}),f.jsxs("div",{className:"filter-select-container",children:[f.jsxs(hr,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:c,children:[c&&f.jsx("option",{value:"-1",disabled:!0,children:qi}),a.map(b=>{var{id:y,title:C}=b;return f.jsx("option",{value:y,children:C},y)})]}),f.jsx(X,{kind:"ghost",onClick:this.handleSetUpdate,disabled:c,icon:m,tooltip:"Update"}),f.jsx(X,{kind:"ghost",onClick:this.handleSetEdit,disabled:c,icon:Ja,tooltip:"Edit"}),f.jsx(X,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:qr,tooltip:"Delete"})]})]}),f.jsx("div",{children:f.jsx(X,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:p,children:"Capture new filter set"})}),f.jsxs("div",{className:"py-3 text-right",children:[f.jsx(X,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",f.jsx(X,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),f.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[f.jsx("div",{className:"filter-set-manager-column",children:f.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),f.jsx("div",{className:"filter-set-manager-card-content",children:f.jsx("div",{className:"filter-set-manager-value-input",children:f.jsxs("div",{className:"filter-select-container",children:[f.jsxs(hr,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:u??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&f.jsx("option",{value:"-1",disabled:!0,children:qi}),o.map(b=>{var{id:y,title:C}=b;return f.jsx("option",{value:y,children:C},y)})]}),f.jsx(X,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:el,tooltip:"Apply Filter Set"})]})})}),f.jsx("div",{className:"filter-set-manager-menu",children:f.jsx(X,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:f.jsx(Ie,{icon:Mn,transform:"grow-4"})})})]},"back")]})})}}const Dl=Vr;function Un(n){var e,t,r,i,a,{model:l,widgetName:s,glContainer:o,description:u}=n,d=((e=l==null?void 0:l.rowCount)!==null&&e!==void 0?e:0)-((t=l==null?void 0:l.pendingRowCount)!==null&&t!==void 0?t:0)-((r=l==null?void 0:l.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=l==null?void 0:l.floatingTopRowCount)!==null&&i!==void 0?i:0),h=l==null?void 0:l.displayString(d,"long"),c=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,v=l==null?void 0:l.displayString(c,"long");return f.jsxs(mr,{widgetType:"Table",widgetName:s,glContainer:o,description:u,children:[f.jsx("hr",{className:"tab-tooltip-divider"}),f.jsx("span",{children:"Number of Columns"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:v}),f.jsx("span",{children:"Number of Rows"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:h})]})}Un.propTypes={glContainer:Va.Container.isRequired,widgetName:W.string.isRequired,description:W.string};Un.defaultProps={description:null};function Ol(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function Fl(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function Ki(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ft(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ki(Object(t),!0).forEach(function(r){Ce(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ki(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ce(n,e,t){return e=yh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yh(n){var e=Eh(n,"string");return typeof e=="symbol"?e:String(e)}function Eh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var nt=Z.module("IrisGridPanel"),wh=500;function Yi(n){if(n==null)throw new Error("No metadata provided");if(Fl(n))return n.name;if(Ol(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(n)))}class Ht extends D.PureComponent{constructor(e){super(e),Ce(this,"irisGrid",void 0),Ce(this,"pluginRef",void 0),Ce(this,"modelPromise",void 0),Ce(this,"irisGridState",void 0),Ce(this,"gridState",void 0),Ce(this,"pluginState",void 0),Ce(this,"irisGridUtils",void 0),Ce(this,"getGridInputFilters",B((r,i)=>ue.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=$.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),Ce(this,"getAlwaysFetchColumns",B((r,i)=>{for(var a=$.getIdFromPanel(this),l=new Set(i),s=0;s<r.length;s+=1){var{start:o}=r[s];o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),Ce(this,"getPluginContent",B((r,i,a)=>{if(!i||!xt(i)||r==null||i.table==null)return null;var l={panel:this};return f.jsx("div",{className:"iris-grid-plugin",children:f.jsx(r,ft({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:a},l))})})),Ce(this,"getDehydratedIrisGridPanelState",B((r,i,a,l)=>ue.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),Ce(this,"getDehydratedIrisGridState",B((r,i,a,l,s,o,u,d,h,c,v,g,p,m,b,y,C,E,w,T,F,O)=>(R(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:C,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:b,userRowHeights:y},quickFilters:o,customColumns:u,reverseType:d,rollupConfig:h,showSearchBar:c,searchValue:v,selectDistinctColumns:g,selectedSearchColumns:p,sorts:i,invertSearchColumns:m,pendingDataMap:E,frozenColumns:w,conditionalFormats:T,columnHeaderGroups:F,partitionConfig:O})))),Ce(this,"getDehydratedGridState",B((r,i,a,l,s)=>ue.dehydrateGridState(r,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),Ce(this,"getCachedPanelState",B((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),Ce(this,"savePanelState",ht(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;R(r);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:u,partitions:d,advancedSettings:h}=this.state,{advancedFilters:c,aggregationSettings:v,customColumnFormatMap:g,isFilterBarShown:p,quickFilters:m,customColumns:b,reverseType:y,rollupConfig:C,showSearchBar:E,searchValue:w,selectDistinctColumns:T,selectedSearchColumns:F,sorts:O,invertSearchColumns:P,metrics:M,pendingDataMap:k,frozenColumns:L,conditionalFormats:j,columnHeaderGroups:H,partitionConfig:Y}=r;R(s),R(M);var{userColumnWidths:te,userRowHeights:re}=M;R(i);var{isStuckToBottom:ae,isStuckToRight:le,movedColumns:pe,movedRows:I}=i,A=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h),this.getDehydratedIrisGridState(s,O,c,g,p,m,b,y,C,E,w,T,F,P,te,re,v,k,L,j,H,Y),this.getDehydratedGridState(s,pe,I,ae,le),a);A!==o&&(nt.debug("Saving panel state",this,A),this.setState({panelState:A}),l==null||l(A))},wh)),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=Le.createRef(),this.pluginRef=Le.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(ol.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:S.REVERSE_TYPE.NONE,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state,{makeModel:i}=this.props;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r)),i!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return Yi(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=xe.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:r,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new ue(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=ft(ft({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=ue.getModelRollupConfig(h.originalColumns,d,s)}),u.length>0&&a.push(h=>{h.selectDistinctColumns=u})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();nt.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){nt.debug("handleAdvancedSettingsChange",e,t),this.setState(r=>{var{advancedSettings:i}=r;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,r,{model:i}=this.state;R(i);var{columns:a,formatter:l}=i,s=(t=(r=this.irisGridUtils)===null||r===void 0?void 0:r.getFiltersFromInputFilters(a,e,l.timeZone))!==null&&t!==void 0?t:[];this.setState({pluginFilters:s})}handlePluginFetchColumns(e){this.setState({pluginFetchColumns:e})}handleContextMenu(e){var t,r,i;return(t=(r=this.pluginRef.current)===null||r===void 0||(i=r.getMenu)===null||i===void 0?void 0:i.call(r,e))!==null&&t!==void 0?t:[]}isColumnSelectionValid(e){var{columnSelectionValidator:t}=this.props;return t&&e?t(this,e):!1}handleGridStateChange(e,t){this.irisGridState=e,this.gridState=t,this.setState({isLoaded:!0,isLoading:!1}),this.savePanelState();var{glEventHub:r,onStateChange:i}=this.props;r.emit(Be.STATE_CHANGED,this),i==null||i(e,t)}handlePluginStateChange(e){var{irisGridState:t,gridState:r}=this;this.pluginState=e,t!==null&&r!==null&&this.savePanelState()}handleColumnsChanged(e){var{isModelReady:t,model:r,modelQueue:i}=this.state;t?this.sendColumnsChange(e.detail):(R(r),this.initModelQueue(r,i))}handleTableChanged(e){nt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e;t.emit(Se.TABLE_CHANGED,this,r)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i}=this.props,a=this.getTableName(),{panelState:l}=this.state,s=$.getIdFromPanel(this),o;l&&(o=ue.extractTableSettings(l,i)),r.emit(Be.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:xt(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(Be.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(Be.DATA_SELECTED,this,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){xe.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:r}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),xt(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}t.emit(Se.TABLE_CHANGED,this,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){nt.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(Se.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(K.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(K.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(K.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(K.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(K.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(K.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(K.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(K.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s==null?void 0:s.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;R(l);var{metrics:u}=l.state;R(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:c,right:v,columnHeaderMaxDepth:g}=u,p=a.getColumnIndexByName(e);R(p);var m=l.getVisibleColumn(p),b=(r=h.get(m))!==null&&r!==void 0?r:0,y=(i=c.get(m))!==null&&i!==void 0?i:0,C=Math.max(o.left,Math.min(m>v?o.right:o.left+b+y*.5,o.right)),E=o.top+d*g;return[C,E]}setFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;nt.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){nt.debug("Ignore setFilters, model disconnected");return}R(i);var{columns:s,formatter:o}=i,u=ue.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[c]=h;return i.isFilterable(c)}),d=ue.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[c]=h;return i.isFilterable(c)});R(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){nt.debug("setStateOverrides",e);var{irisGridState:t,gridState:r}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:r,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=ft({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=ue.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=ue.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partitions:c,advancedSettings:v}=ue.hydrateIrisGridPanelState(e,s);R(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,quickFilters:y,reverseType:C,rollupConfig:E,aggregationSettings:w,sorts:T,userColumnWidths:F,userRowHeights:O,showSearchBar:P,searchValue:M,selectDistinctColumns:k,selectedSearchColumns:L,invertSearchColumns:j,pendingDataMap:H,frozenColumns:Y,conditionalFormats:te,columnHeaderGroups:re,partitionConfig:ae}=this.irisGridUtils.hydrateIrisGridState(e,ft(ft({},l),o)),{isStuckToBottom:le,isStuckToRight:pe,movedColumns:I,movedRows:A}=ue.hydrateGridState(e,ft(ft({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:te,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,isSelectingPartition:h,movedColumns:I,movedRows:A,partitions:c,quickFilters:y,reverseType:C,rollupConfig:E,aggregationSettings:w,sorts:T,userColumnWidths:F,userRowHeights:O,showSearchBar:P,searchValue:M,selectDistinctColumns:k,selectedSearchColumns:L,invertSearchColumns:j,pendingDataMap:H,frozenColumns:Y,isStuckToBottom:le,isStuckToRight:pe,columnHeaderGroups:re,partitionConfig:ae})}catch(V){nt.error("loadPanelState failed to load panelState",t,V)}}updateGrid(){var e,t,r=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;r&&r.handleResize()}render(){var e,t,{children:r,glContainer:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:u,metadata:d,panelState:h,user:c,settings:v,theme:g}=this.props,{advancedFilters:p,aggregationSettings:m,advancedSettings:b,conditionalFormats:y,customColumns:C,customColumnFormatMap:E,error:w,isDisconnected:T,isFilterBarShown:F,isSelectingPartition:O,isStuckToBottom:P,isStuckToRight:M,isLoaded:k,isLoading:L,isModelReady:j,model:H,movedColumns:Y,movedRows:te,partitions:re,partitionConfig:ae,quickFilters:le,reverseType:pe,rollupConfig:I,sorts:A,userColumnWidths:V,userRowHeights:U,showSearchBar:z,searchValue:ye,selectDistinctColumns:Ee,selectedSearchColumns:_e,invertSearchColumns:qe,Plugin:Ke,pluginFilters:nn,pluginFetchColumns:an,pendingDataMap:Sr,frozenColumns:ln,columnHeaderGroups:Xt}=this.state,Zl=w!=null?"Unable to open table. ".concat(w):void 0,Zn=Yi(d),Jn=(e=H==null?void 0:H.description)!==null&&e!==void 0?e:void 0,Jl=(t=h==null?void 0:h.pluginState)!==null&&t!==void 0?t:null,es=r??this.getPluginContent(Ke,H,Jl),{permissions:ts}=c,{canCopy:rs,canDownloadCsv:ns}=ts;return f.jsx(gr,{errorMessage:Zl,isDisconnected:T,isLoading:L,isLoaded:k,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:Zn,widgetType:"Table",description:Jn,componentPanel:this,renderTabTooltip:()=>f.jsx(Un,{model:H,widgetName:Zn,glContainer:i,description:Jn}),children:j&&H&&f.jsx(_n,{advancedFilters:p,aggregationSettings:m,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(u,an),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:C,customColumnFormatMap:E,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:y,inputFilters:this.getGridInputFilters(H.columns,o),applyInputFiltersOnInit:h==null,isFilterBarShown:F,isSelectingColumn:l!=null,isSelectingPartition:O,isStuckToBottom:P,isStuckToRight:M,movedColumns:Y,movedRows:te,partitions:re,partitionConfig:ae,quickFilters:le,reverseType:pe,rollupConfig:I,settings:v,sorts:A,userColumnWidths:V,userRowHeights:U,model:H,showSearchBar:z,searchValue:ye,selectedSearchColumns:_e,selectDistinctColumns:Ee,invertSearchColumns:qe,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:nn,pendingDataMap:Sr,canCopy:rs,canDownloadCsv:ns,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:ln,theme:g,columnHeaderGroups:Xt,children:es})})}}Ce(Ht,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});Ce(Ht,"displayName","IrisGridPanel");Ce(Ht,"COMPONENT","IrisGridPanel");var Th=(n,e)=>{var{localDashboardId:t=Ss}=e;return{inputFilters:Wr(n,t),links:Ot(n,t),columnSelectionValidator:Br(n,t),user:Cs(n),settings:zr(n)}},Ph=yt(Th,null,null,{forwardRef:!0})(Ht);const Gt=Ph;function ur(n,e,t){return e=Nh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nh(n){var e=Dh(n,"string");return typeof e=="symbol"?e:String(e)}function Dh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Xi=Z.module("InputFilter"),Oh=150;class Ut extends D.Component{constructor(e){super(e),ur(this,"inputRef",void 0),ur(this,"getItemLabel",Ge((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})),ur(this,"sendUpdate",ht(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},Oh)),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=Le.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var{column:r}=this.props,{column:i,value:a,isValueShown:l}=this.state;r!==e.column&&this.setState({column:r,selectedColumn:r}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,r=t[parseInt(e,10)];Xi.debug2("handleColumnChange",r),this.setState({selectedColumn:r,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var{value:r}=t;return r==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var{value:t}=e.target;Xi.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,l=t!=null&&r!=null?{name:t,type:r}:void 0,s=a===void 0?{column:l,value:i}:{column:l,value:i,isValueShown:a};this.setState(s)}render(){var{columns:e}=this.props,{column:t,isValueShown:r,selectedColumn:i,value:a}=this.state,l=a==null||a.length===0?Ut.PLACEHOLDER.length:a.length,s=null;if(t!=null){var o=e.findIndex(u=>u.name===t.name&&u.type===t.type);s=o>=0?this.getItemLabel(e,o):t.name}return f.jsxs(Rn,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[f.jsx("div",{className:"input-filter-settings-card",children:f.jsxs("div",{className:"input-filter-settings-content",children:[f.jsxs("div",{className:"input-filter-settings-grid",children:[f.jsx("label",{children:"Filter Column"}),f.jsxs(hr,{value:String(e.findIndex(u=>u.name===(i==null?void 0:i.name)&&u.type===(i==null?void 0:i.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((u,d)=>f.jsx("option",{value:d,children:this.getItemLabel(e,d)},"".concat(u.name,"/").concat(u.type))),e.length===0&&f.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),f.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),f.jsxs("div",{className:"input-filter-settings-buttons",children:[f.jsx(X,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),f.jsx(X,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),f.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[f.jsx("div",{className:"input-filter-column",children:f.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),f.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:f.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:f.jsx("input",{type:"text",ref:this.inputRef,placeholder:Ut.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),f.jsx("div",{className:"input-filter-menu",children:f.jsx(X,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Ie,{icon:Mn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}ur(Ut,"PLACEHOLDER","Enter value...");ur(Ut,"defaultProps",{column:null,isValueShown:!1,value:null});const Fh=Ut;function Zr(n,e,t){return e=Mh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mh(n){var e=Ih(n,"string");return typeof e=="symbol"?e:String(e)}function Ih(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Rh=250;class Jr extends D.Component{constructor(e){super(e),Zr(this,"inputFilterRef",void 0),this.handleChange=ht(this.handleChange.bind(this),Rh),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Le.createRef();var{panelState:t}=e,{value:r,isValueShown:i=!1,name:a,type:l,timestamp:s}=t??{};this.state={columns:[],column:a!=null&&l!=null?{name:a,type:l}:void 0,value:r,timestamp:s,isValueShown:i,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:r}=this.state;if(e!=null){var{name:i,type:a}=e;this.sendUpdate(i,a,t,r)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,a,l;t!=null&&({name:a,type:l}=t);var s=!0,o=Date.now();this.setState(u=>{var d,{panelState:h,timestamp:c,wasFlipped:v,skipUpdate:g}=u,p=h!=null&&r!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!g&&r&&(!p||!v))!==null&&d!==void 0?d:!1,s||(o=c),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:p,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,l,i,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,r,i){var{glEventHub:a}=this.props;a.emit(Se.FILTERS_CHANGED,this,{name:e,type:t,value:r,timestamp:i})}setPanelState(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({skipUpdate:!r}),(t=this.inputFilterRef.current)===null||t===void 0||t.setFilterState(e)}updateColumns(){var{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:r}=t;return r==null&&e.length>0?{columns:[...e],column:e[0]}:r!=null&&!e.find(i=>{var{name:a,type:l}=i;return r.name===a&&r.type===l})?{columns:[...e,r]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:r,columns:i,isValueShown:a,value:l}=this.state;return f.jsx(Wt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:f.jsx(Fh,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Zr(Jr,"defaultProps",{panelState:null});Zr(Jr,"COMPONENT","InputFilterPanel");Zr(Jr,"displayName","InputFilterPanel");var Lh=(n,e)=>{var{localDashboardId:t}=e;return{columns:Fn(n,t)}},Ah=yt(Lh,null,null,{forwardRef:!0})(Jr);const jt=Ah;function Qi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Dr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qi(Object(t),!0).forEach(function(r){Bn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bn(n,e,t){return e=kh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kh(n){var e=xh(n,"string");return typeof e=="symbol"?e:String(e)}function xh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var De=Z.module("FilterSetManagerPanel");function _h(n){return n.setPanelState!=null}class Bt extends D.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(r=>{var[i,a]=r;if(i>=e.columns.length)return null;var{name:l}=e.columns[i];return{name:l,filter:a}}).filter(r=>r!=null)}constructor(e){super(e),this.handleChange=this.handleChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleSetsUpdate=this.handleSetsUpdate.bind(this),this.handleGetFilterState=this.handleGetFilterState.bind(this);var{panelState:t,filterSets:r}=e,{selectedId:i=r.length>0?r[0].id:void 0,isValueShown:a=!1}=t??{};this.state={selectedId:i,isValueShown:a,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(r=>{var i=e.get(r);if(i===void 0){De.error("Could not get panel",i);return}var a=$.getComponentNameFromPanel(i),l=$.getIdFromPanel(i);De.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){De.error("Could not get panel container",i);return}var o=$.getComponentConfigFromContainer(s);if(o==null){De.error("Could not get component config from container",s);return}var u=$.getPanelComponentState(o);if(u==null){De.debug("Panel state is null ".concat(l));return}switch(a){case $.getComponentName(Ht):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case $.getComponentName(jt):case $.getComponentName(St):{var{isValueShown:h,name:c,type:v,value:g}=u;t.push({panelId:l,type:a,state:{isValueShown:h,name:c,type:v,value:g}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:r}=this.props,i=r.get(e);if(i==null)return De.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,u;s&&(u=Bt.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=Bt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Dr(Dr({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Dr({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;De.debug("handleChange",t,r),this.setState({isValueShown:t,selectedId:r}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:r,restoreFullState:i=!1}=e;De.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){De.debug("panel is null",l);return}if(!t.has(l)){De.debug("Ignore closed panel",l);return}De.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case $.getComponentName(Ht):this.restoreIrisGridFilters(u,o,i);break;case $.getComponentName(jt):case $.getComponentName(St):this.restoreInputFilterState(u,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;De.debug("Saving updated sets",e),t(r,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:r}=e;return{panelState:{selectedId:t,isValueShown:r}}})}restoreIrisGridFilters(e,t,r){var{irisGridState:i={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=i,{panelTableMap:u}=this.props,d=$.getIdFromPanel(e);if(d==null){De.error("Panel Id is null.");return}var h=u.get(d);if(h==null){De.error("Unable to get table for panel ".concat(d,"."));return}De.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=Dr({},t);delete r.isValueShown,De.debug("restoreInputFilterState",e,r),e&&_h(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return f.jsx(Wt,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:f.jsx("div",{className:"input-filter-container h-100 w-100 container",children:f.jsx(Dl,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Bn(Bt,"defaultProps",{panelState:null});Bn(Bt,"COMPONENT","FilterSetManagerPanel");var jh=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:Ua(n,t),dashboardOpenedPanelMap:Ha(n,t),dashboardInputFilters:Wr(n,t),panelTableMap:Gr(n,t)}},Vh=yt(jh,{setDashboardFilterSets:wl},null,{forwardRef:!0})(Bt);const Rr=Vh;function $h(n,e,t){return e=Hh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hh(n){var e=Gh(n,"string");return typeof e=="symbol"?e:String(e)}function Gh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ml extends D.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return f.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[f.jsx("div",{className:Re("text-muted","edit-hint",{viewing:e===void 0||!e}),children:f.jsxs("span",{children:["double-click to edit ",f.jsx(Ie,{icon:Ja})]})}),t]})}}$h(Ml,"defaultProps",{isEditing:!1});function Uh(n,e,t){return e=Bh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bh(n){var e=Wh(n,"string");return typeof e=="symbol"?e:String(e)}function Wh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var zh=Z.module("MarkdownStartPage");class Il extends D.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(zh.debug("delete markdown: ",e),e!==void 0){var{onDelete:t}=this.props;t(e)}this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}render(){var{closedMarkdowns:e,onOpen:t,onCreate:r}=this.props,{isDeleteModalShown:i,toBeDeleted:a}=this.state;return f.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:f.jsxs("div",{className:"markdown-panel-start-page-container",children:[f.jsxs("div",{className:"markdown-panel-start-list",children:[f.jsx("h3",{className:"list-title",children:"Start"}),f.jsx("div",{className:"list-item",children:f.jsx(X,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),f.jsxs("div",{className:"markdown-panel-start-list",children:[f.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>f.jsxs("div",{className:"list-item",children:[f.jsx(X,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),f.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:f.jsx(Ie,{icon:qr})})]},l.id)),f.jsxs(Ks,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[f.jsx(Ys,{children:"Are you sure you want to permanently delete this note?"}),f.jsx(Xs,{children:"You can't undo this action."}),f.jsxs(ys,{children:[f.jsx(X,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),f.jsx(X,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}Uh(Il,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const qh=Il;function Wn(n,e,t){return e=Kh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kh(n){var e=Yh(n,"string");return typeof e=="symbol"?e:String(e)}function Yh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Dt{static getNewMarkdownTitle(e){for(var t="".concat(Dt.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(Dt.DEFAULT_TITLE,"-").concat(r);return t}}Wn(Dt,"DEFAULT_TITLE","Note");Wn(Dt,"DEFAULT_CONTENT",`# Markdown Note
8
+ `).concat(s," does not exist yet.")}if(i){var{widgetName:o}=this.props;return"".concat(o," is unavailable.")}}handleSessionClosed(){var{onSessionClose:e}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),e(...arguments)}handleSessionOpened(){var{onSessionOpen:e}=this.props;e(...arguments)}render(){var{children:e,className:t,componentPanel:r,isLoaded:i,isLoading:a,glContainer:l,glEventHub:s,isDisconnected:o,isClonable:u,isRenamable:d,showTabTooltip:h,renderTabTooltip:c,widgetType:v,widgetName:g,description:p,onClearAllFilters:m,onHide:b,onFocus:y,onBlur:C,onResize:E,onShow:w,onTabBlur:T,onTabFocus:F,onTabClicked:O}=this.props,{isPanelDisconnected:P,isWidgetDisconnected:M,isPanelInactive:k}=this.state,L=this.getErrorMessage(),j=c??this.getCachedRenderTabTooltip(h,l,v,g,p),H=[{title:"Copy ".concat(v," Name"),group:Ye.groups.medium,order:20,action:this.handleCopyName}];return f.jsxs(Wt,{className:Re(t,{disconnected:P||M||o,inactive:k}),componentPanel:r,glContainer:l,glEventHub:s,onClearAllFilters:m,onHide:b,onFocus:y,onBlur:C,onResize:E,onShow:w,onSessionClose:this.handleSessionClosed,onSessionOpen:this.handleSessionOpened,onTabBlur:T,onTabFocus:F,onTabClicked:O,renderTabTooltip:j,errorMessage:L,isLoaded:i,isLoading:a,isClonable:u,isRenamable:d,additionalActions:H,children:[e,k&&f.jsx("div",{className:"fill-parent-absolute"})]})}}gl(bl,"defaultProps",{className:"",errorMessage:null,isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0,widgetName:"Widget",widgetType:"Widget",renderTabTooltip:null,description:"",onFocus:()=>{},onBlur:()=>{},onHide:()=>{},onClearAllFilters:()=>{},onResize:()=>{},onSessionClose:()=>{},onSessionOpen:()=>{},onShow:()=>{},onTabBlur:()=>{},onTabFocus:()=>{},onTabClicked:()=>{}});const gr=bl,Je=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var Jd=(n,e)=>t=>t(Et(n,{connection:e})),eh=(n,e)=>t=>t(Et(n,{sessionWrapper:e})),Xr=(n,e)=>t=>t(Et(n,{links:e})),Cl=(n,e)=>(t,r)=>{var i=Ot(r(),n),a=e.filter(l=>i.findIndex(s=>Ar(s.start,l.start)&&Ar(s.end,l.end))<0);return t(Xr(n,i.concat(a)))},Sl=(n,e)=>(t,r)=>{var i=Ot(r(),n),a=i.filter(l=>!e.includes(l.id));return t(Xr(n,a))},Hn=(n,e)=>t=>t(Et(n,{isolatedLinkerPanelId:e})),yl=(n,e)=>t=>t(Et(n,{columnSelectionValidator:e})),El=(n,e)=>t=>t(Et(n,{consoleSettings:e})),wl=(n,e)=>t=>t(Et(n,{filterSets:e}));function Tl(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=D.useMemo(()=>{var g=Array.from(s.keys()),p=g.find(y=>t.get(y)!=null),m=g.find(y=>r.get(y)!=null),b=Xe.join(g.map(y=>'"'.concat(y,'"')));return p!=null&&p&&m!=null&&m?"Use a filter control or linked table to set a value for ".concat(b):p!=null&&p?"Set a filter control value for ".concat(b):"Double click a row in a linked table to set a value for ".concat(b)},[t,r,s]),u=D.useMemo(()=>Array.from(e.values()),[e]),d=D.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),h=D.useCallback(g=>{g.stopPropagation(),g.preventDefault(),a()},[a]),c=l.size>0,v=!c&&s.size>0;return f.jsx("div",{className:"chart-panel-overlay chart-filter-overlay",children:f.jsxs("div",{className:Re("chart-panel-overlay-content chart-filter-overlay-content",{"chart-filter-waiting-filter":c},{"chart-filter-waiting-input":v}),children:[c&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),f.jsx("div",{className:"waiting-filter-list",children:u.map(g=>{var p=l.has(g.name),m=p?Us:Bs;return f.jsxs("div",{className:Re("waiting-filter-item",{"is-invalid":p}),children:[f.jsx(Ie,{icon:m}),g.name]},g.name)})}),f.jsxs("div",{children:[f.jsx(X,{kind:"primary",onClick:d,children:"Add Input Filters"}),f.jsx(X,{kind:"primary",onClick:h,children:"Open Linker Tool"})]})]}),v&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"info-message",children:"Waiting for User Input"}),f.jsx("div",{className:"",children:o})]})]})})}Tl.propTypes={columnMap:W.instanceOf(Map).isRequired,inputFilterMap:W.instanceOf(Map).isRequired,linkedColumnMap:W.instanceOf(Map).isRequired,onAdd:W.func.isRequired,onOpenLinker:W.func.isRequired,waitingFilterMap:W.instanceOf(Map).isRequired,waitingInputMap:W.instanceOf(Map).isRequired};function fr(n){var{columns:e,onColumnSelected:t,onMouseEnter:r,onMouseLeave:i}=n;return f.jsx("div",{className:"chart-panel-overlay chart-column-selector-overlay",children:f.jsxs("div",{className:Re("chart-panel-overlay-content"),children:[f.jsx("div",{className:"info-message",children:"This plot requires a filter control to be added to the layout or a table link to be created on the following columns:"}),f.jsx("div",{className:"waiting-column-select-list",children:e.map(a=>f.jsx(tl,{className:Re("btn-chart-column-selector",fr.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}fr.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);fr.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function _t(n){return n.settings!==void 0}function Gn(n){return n.figure!==void 0}function Pl(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function Nl(n){return n!=null&&Pl(n.panelState)}function Ui(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Bi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ui(Object(t),!0).forEach(function(r){Qe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ui(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qe(n,e,t){return e=th(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function th(n){var e=rh(n,"string");return typeof e=="symbol"?e:String(e)}function rh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var je=Z.module("ChartPanel"),nh=150;function ih(n){return n.inputFilters!=null}function ah(n){return n.panelState!=null}class Qr extends D.Component{constructor(e){super(e),Qe(this,"panelContainer",void 0),Qe(this,"pending",void 0),Qe(this,"getWaitingInputMap",B((l,s,o)=>{if(!l)return new Map;var u=new Map(s);return o.forEach((d,h)=>{u.delete(h)}),u})),Qe(this,"getWaitingFilterMap",B((l,s,o,u,d)=>{if(!l)return new Map;var h=new Map(s);return o.forEach((c,v)=>{h.delete(v)}),d.forEach((c,v)=>{h.delete(v)}),u.forEach((c,v)=>{h.delete(v)}),h})),Qe(this,"getInputFilterColumnMap",B((l,s)=>{for(var o=new Map,u=0;u<s.length;u+=1){var d=s[u],{name:h,type:c}=d,v=l.get(h);v!=null&&v.type===c&&o.set(h,d)}return o})),Qe(this,"getLinkedColumnMap",B((l,s)=>{for(var o=new Map,u=$.getIdFromPanel(this),d=0;d<s.length;d+=1){var h=s[d],c=null;if(h.start!=null&&h.start.panelId===u&&l.has(h.start.columnName)?c=h.start.columnName:h.end&&h.end.panelId===u&&l.has(h.end.columnName)&&(c=h.end.columnName),c!=null&&l.has(c)){var v=l.get(c);R(v),o.set(c,v)}}return o})),Qe(this,"getSelectorColumns",B((l,s,o)=>Array.from(l.values()).map(u=>({name:u.name,type:u.type,isValid:o?o(this,u):!1,isActive:s.has(u.name)})))),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=ht(this.updateModelFromSource.bind(this),nh),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Le.createRef(),this.pending=new Dn;var{metadata:t,panelState:r}=e,{filterValueMap:i=[],settings:a={}}=r??{};this.state={settings:a,error:void 0,isActive:!1,isDisconnected:!1,isLoading:!1,isLoaded:!1,isLinked:t!=null&&_t(t)&&t.settings.isLinked,filterMap:new Map(i),filterValueMap:new Map(i),model:void 0,columnMap:new Map,panelState:r}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:r,source:i,makeModel:a}=this.props,{columnMap:l,model:s,filterMap:o,filterValueMap:u,isLinked:d,settings:h}=this.state;s&&(a!==e.makeModel&&this.initModel(),l!==t.columnMap&&this.pruneFilterMaps(),r!==e.inputFilters&&this.updateChangedInputFilters(r,e.inputFilters),o!==t.filterMap?this.updateFilters():u!==t.filterValueMap&&this.updatePanelState(),h!==t.settings&&Ei(s)&&(s.updateSettings(h),this.updatePanelState()),d!==t.isLinked?i&&(d?(this.startListeningToSource(i),this.updateModelFromSource()):this.stopListeningToSource(i)):d&&i!==e.source&&(e.source&&this.stopListeningToSource(e.source),i&&(this.startListeningToSource(i),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0});var{makeModel:e}=this.props;this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){je.debug("startListeningToSource",e);var{model:t}=this.state;R(t);var{dh:r}=t;e.addEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.addEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}stopListeningToSource(e){je.debug("stopListeningToSource",e);var{model:t}=this.state;R(t);var{dh:r}=t;e.removeEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.removeEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}loadModelIfNecessary(){var{isActive:e,isLoaded:t,isLoading:r}=this.state;e&&!t&&!r&&this.initModel()}isHidden(){var{glContainer:e}=this.props,{isHidden:t}=e;return t}handleColumnSelected(e){var{glEventHub:t}=this.props,{columnMap:r}=this.state;t.emit(jr.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;je.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;je.debug("handleColumnMouseLeave",e),e&&e(this,void 0)}handleDisconnect(){this.setState({error:new Error("Figure disconnected"),isDisconnected:!0})}handleFilterAdd(e){for(var t=0;t<e.length;t+=1)this.openInputFilter(e[t])}handleOpenLinker(){var{localDashboardId:e,setActiveTool:t,setDashboardIsolatedLinkerPanelId:r}=this.props;r(e,void 0),t(Je.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){je.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:r,source:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(r,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){xe.isCanceled(e)||(je.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:r,model:i}=this.state;if(!r||!i||!t){je.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),_t(e)){var{settings:l}=e;this.pending.add(a.plot.Figure.create(new Ae(a).makeFigureSettings(l,t))).then(s=>{Ei(i)&&i.setFigure(s)}).catch(this.handleLoadError)}this.updatePanelState()}updatePanelState(){var{sourcePanel:e}=this.props,{panelState:t,filterValueMap:r,settings:i}=this.state,{tableSettings:a}=t??{};if(e&&ih(e.props)&&ah(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=ue.extractTableSettings(s,l))}this.setState({panelState:{settings:i,tableSettings:a,filterValueMap:Array.from(r)}})}handleError(){this.setState({isLoading:!1})}handleSettingsChanged(e){this.setState(t=>{var{settings:r}=t,i=Bi(Bi({},r),e);return je.debug("Updated settings",i),{settings:i}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(e){var{isLoading:t}=e;this.setState({isLoading:t})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:r,type:i}=e;t.emit(Se.OPEN_INPUT,{title:"".concat(r," Filter"),panelState:{name:r,type:i,isValueShown:!0},createNewStack:!0,focusElement:"input"})}setActive(e){this.setState({isActive:e},()=>{e&&this.loadModelIfNecessary()})}sendColumnChange(){var{model:e}=this.state;if(e){var{glEventHub:t}=this.props;t.emit(Se.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=fr.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i==null?void 0:i.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){je.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,u)=>{var{columnType:d,filterList:h}=o,c=i.get(u);if(!(c==null||c.type!==d)){if(h.length<1){je.debug("Ignoring empty filterList for column",u);return}var{value:v}=h[0];s.set(u,v),a.get(u)!==v&&(l===null&&(l=new Map(a)),l.set(u,v))}}),{filterValueMap:s,filterMap:(r=l)!==null&&r!==void 0?r:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:r}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,r);if(s.has(e)){var o,u=a.get(e),d=(o=s.get(e))===null||o===void 0?void 0:o.value;d!=null&&u!==d&&(a=new Map(t.filterMap),d.length>0?a.set(e,d):a.delete(e))}else a=new Map(t.filterMap),a.delete(e);return{filterMap:a,filterValueMap:l}})}updateChangedInputFilters(e,t){var r=t.filter(a=>e.find(l=>l.name===a.name&&l.type===a.type)===void 0);r.length>0&&this.deleteInputFilters(r);var i=e.filter(a=>!t.includes(a));i.length>0&&this.updateInputFilters(i)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i}=r,a=new Map(r.filterValueMap),l=new Map(r.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var{name:u,type:d,value:h}=e[o],c=i.get(u);c!=null&&c.type===d&&(h!=null&&l.get(u)!==h&&(h===""?l.delete(u):l.set(u,h),s.filterMap=l),a.has(u)&&(a.delete(u),s.filterValueMap=a))}return je.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i,filterValueMap:a}=r,l=new Map(r.filterMap),s=t,o=0;o<e.length;o+=1){var{name:u,type:d}=e[o],h=i.get(u);if(h!=null&&h.type===d&&l.has(u)){var c=l.get(u);if(a.has(u)){var v=a.get(u);v!==c&&v!=null&&(s=!0,l.set(u,v))}else s=!0,l.delete(u)}}return je.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:r}=this.state;R(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=Xe.join(Array.from(t.entries()).map(s=>{var[o,u]=s;return"".concat(o,": ").concat(u)}));a?r.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):r.setTitle(l),je.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else je.debug2("updateFilters waiting on inputs",i),r.setTitle(r.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,r=new Map(e.filterMap),i=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((l,s)=>{t.has(s)||(i.delete(s),a.filterValueMap=i)}),e.filterMap.forEach((l,s)=>{t.has(s)||(r.delete(s),a.filterMap=r)}),a})}render(){var e,{columnSelectionValidator:t,glContainer:r,glEventHub:i,inputFilters:a,isLinkerActive:l,links:s,metadata:o,settings:u,Plotly:d,containerRef:h}=this.props,{columnMap:c,filterMap:v,error:g,model:p,isActive:m,isDisconnected:b,isLoaded:y,isLoading:C}=this.state,E;_t(o)?E=o.table:Gn(o)?E=o.figure:E=o.name;var w=this.getInputFilterColumnMap(c,a),T=this.getLinkedColumnMap(c,s),F=p!=null?this.getWaitingInputMap(p.isFilterRequired(),c,v):new Map,O=p!=null?this.getWaitingFilterMap(p.isFilterRequired(),c,v,T,w):new Map,P=g!=null?"Unable to open chart. ".concat(g):void 0,M=F.size>0,k=c.size>0&&l;return f.jsx(gr,{className:Re("iris-chart-panel",{"input-required":M}),componentPanel:this,glContainer:r,glEventHub:i,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:P,isDisconnected:b,isLoading:C,isLoaded:y,widgetName:(e=E)!==null&&e!==void 0?e:void 0,widgetType:"Chart",children:f.jsxs("div",{ref:this.panelContainer,className:"chart-panel-container h-100 w-100",children:[f.jsx("div",{className:"chart-container h-100 w-100",children:y&&p&&f.jsx(ll,{isActive:m,model:p,settings:u,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:d,containerRef:h})}),f.jsx(gn,{in:M&&!k&&!C,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(Tl,{inputFilterMap:w,linkedColumnMap:T,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:c,waitingFilterMap:O,waitingInputMap:F})}),f.jsx(gn,{in:k,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(fr,{columns:this.getSelectorColumns(c,T,t),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}Qe(Qr,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});Qe(Qr,"displayName","ChartPanel");Qe(Qr,"COMPONENT","ChartPanel");var lh=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&_t(r)&&(i=r.sourcePanelId);var a=Gr(n,t),l=Ha(n,t),s=On(n),o=Ur(n,t),u=s===Je.LINKER&&o===void 0;return{columnSelectionValidator:Br(n,t),isLinkerActive:u,inputFilters:Wr(n,t),links:Ot(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:zr(n)}},sh=yt(lh,{setActiveTool:$a,setDashboardIsolatedLinkerPanelId:Hn},null,{forwardRef:!0})(Qr);const br=sh;function Ze(n,e,t){return e=oh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oh(n){var e=uh(n,"string");return typeof e=="symbol"?e:String(e)}function uh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Pr=Z.module("DropdownFilter"),dh=150;class dt extends D.Component{constructor(e){super(e),Ze(this,"dropdownRef",void 0),Ze(this,"getCompatibleColumns",B((a,l)=>a!=null?l.filter(s=>{var{type:o}=s;return o!==void 0&&S.isCompatibleType(o,a.columnType)}):[])),Ze(this,"getColumnOptions",B((a,l)=>{var s=-1,o=[];return o.push(f.jsx("option",{value:"-1",children:"Select a column"},"placeholder")),a.forEach((u,d)=>{o.push(f.jsx("option",{value:d,children:this.getItemLabel(a,d)},"".concat(u.name,"/").concat(u.type))),l!==null&&u.name===l.name&&u.type===l.type&&(s=d)}),[o,s]})),Ze(this,"getSelectedOptionIndex",B((a,l)=>a.indexOf(l))),Ze(this,"getValueOptions",B(a=>[f.jsx("option",{value:"-1",children:dt.PLACEHOLDER},"-1"),...a.map((l,s)=>f.jsx("option",{value:s,children:l??"(null)"},"".concat(s,"/").concat(l)))])),Ze(this,"getItemLabel",Ge((a,l)=>{var{name:s,type:o}=a[l];if(l>0&&a[l-1].name===s||l<a.length-1&&a[l+1].name===s){var u=o.substring(o.lastIndexOf(".")+1);return"".concat(s," (").concat(u,")")}return s})),Ze(this,"sendUpdate",ht(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},dh)),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=Le.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:We(),selectedColumn:t,disableCancel:!r,isValueShown:r,value:i}}componentDidUpdate(e,t){var{source:r,values:i,isLoaded:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a&&(r!==e.source&&this.sourceUpdated(),i!==e.values&&s!==""&&!i.includes(s)&&this.resetValue(),o!==t.isValueShown&&o&&this.focusInput(),(l!==t.column||s!==t.value||o!==t.isValueShown)&&this.sendUpdate())}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var t=e;if(Pr.debug2("handleColumnChange",t),t!=null&&parseInt(t,10)<0){this.setState({selectedColumn:null});return}var{columns:r,source:i}=this.props,a=this.getCompatibleColumns(i,r);this.setState({selectedColumn:a[parseInt(t,10)]})}handleDropdownKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),Pr.debug2("handleDropdownKeyPress"),this.sendUpdate(),this.sendUpdate.flush())}handleValueChange(e){var t=e,r=parseInt(t,10),i="",{values:a}=this.props;r>=0&&r<a.length?i=a[r]:Pr.debug2("Selected default item"),Pr.debug2("handleValueChange",i),this.setState({value:i})}handleSettingsCancel(){this.setState(e=>{var{column:t}=e;return{selectedColumn:t,isValueShown:!0}})}handleSettingsSave(){this.setState(e=>{var{column:t,selectedColumn:r,value:i}=e;return{column:r,value:t===r?i:"",isValueShown:!0,disableCancel:!1}})}handleSettingsClick(e){e.stopPropagation(),this.showSettings()}handleBackgroundClick(e){e.target!==this.dropdownRef.current&&this.focusInput()}sourceUpdated(){this.setState({column:null,selectedColumn:null,isValueShown:!1,disableCancel:!0,value:""})}showSettings(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!1})}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}clearFilter(){this.resetValue()}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,l=t!=null&&r!=null?{name:t,type:r}:null;this.setState(s=>{var{value:o,isValueShown:u}=s;return{column:l,value:i??o,isValueShown:a??u}})}render(){var e,{columns:t,disableLinking:r,isLinkerActive:i,isLoaded:a,source:l,onColumnSelected:s,onSourceMouseEnter:o,onSourceMouseLeave:u,values:d,settingsError:h}=this.props,{column:c,disableCancel:v,id:g,isValueShown:p,selectedColumn:m,value:b}=this.state,y=l===null,C=this.getCompatibleColumns(l,t),E=l!=null,w=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:dt.SOURCE_BUTTON_PLACEHOLDER,T=c!=null?"".concat(c.name," Filter"):null,[F,O]=this.getColumnOptions(C,m),P=this.getValueOptions(d),M=this.getSelectedOptionIndex(d,b),k=!E||m==null,L=p&&!i,j="source-column-btn-".concat(g),H="filter-column-select-".concat(g);return f.jsxs(Rn,{className:"dropdown-filter fill-parent-absolute",isFlipped:L,children:[f.jsx("div",{className:"dropdown-filter-settings-card",children:f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsxs("div",{className:"dropdown-filter-settings-grid",children:[f.jsx("label",{htmlFor:j,children:"Source Column"}),f.jsx(tl,{id:j,isLinked:E,onClick:s,onMouseEnter:o,onMouseLeave:u,className:dt.SOURCE_BUTTON_CLASS_NAME,disabled:r,children:w}),f.jsx("div",{className:"text-muted small",children:"Select a source column for the list by linking to a table."}),f.jsx("label",{htmlFor:H,children:"Filter Column"}),f.jsx(hr,{id:H,value:String(O),className:"custom-select",onChange:this.handleColumnChange,disabled:y,children:F}),f.jsx("div",{className:"text-muted small",children:"Dropdown filter control will apply its filter to all columns matching this name in this dashboard."})]}),h&&f.jsx("div",{className:"error-message text-center",children:h}),E&&f.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[f.jsx(X,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||p||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),f.jsx(X,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:k||p||i,tooltip:i?"Save disabled while linker open":void 0,children:"Save"})]})]})}),f.jsx("div",{className:"dropdown-filter-value-card",onClick:this.handleBackgroundClick,"data-testid":"dropdown-filter-value-background",children:a&&f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"dropdown-filter-column",children:f.jsx("div",{className:"dropdown-filter-column-title",children:T})}),f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsx("div",{className:"dropdown-filter-value-input d-flex flex-column justify-content-center",children:f.jsx(hr,{className:"custom-select",value:String(M),ref:this.dropdownRef,onChange:this.handleValueChange,onKeyDown:this.handleDropdownKeyPress,title:"Select Value",children:P})}),h&&f.jsx("div",{className:"error-message mt-3 text-center",children:h})]}),f.jsx("div",{className:"dropdown-filter-menu",children:f.jsx(X,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Ie,{icon:Mn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}Ze(dt,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});Ze(dt,"PLACEHOLDER","Select a value...");Ze(dt,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");Ze(dt,"SOURCE_BUTTON_PLACEHOLDER","Select a column");const Wi=dt;function ke(n,e,t){return e=hh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hh(n){var e=ch(n,"string");return typeof e=="symbol"?e:String(e)}function ch(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var he=Z.module("DropdownFilterPanel"),vh=250,fh=(n,e)=>{var{localDashboardId:t}=e,r=$.getIdFromPanel({props:e}),i=Gr(n,t),a=Ot(n,t),l=On(n),s=Ur(n,t),o=l===Je.LINKER&&(s===void 0||s===r),u=l===Je.LINKER&&s!==void 0&&s!==r;return{columns:Fn(n,t),columnSelectionValidator:Br(n,t),dh:Ga(n),isLinkerActive:o,disableLinking:u,settings:zr(n),panelTableMap:i,dashboardLinks:a}},ph=yt(fh,null,null,{forwardRef:!0});class tt extends D.Component{constructor(e){super(e),ke(this,"dateTimeFormatter",void 0),ke(this,"dropdownFilterRef",void 0),ke(this,"panelContainer",void 0),ke(this,"pending",void 0),ke(this,"cleanup",void 0),ke(this,"columnFormats",void 0),ke(this,"getCachedValues",Ge((h,c,v)=>{var{type:g,name:p}=c;return g!==void 0&&S.isDateType(g)?h.map(m=>this.dateTimeFormatter.format(m)):h.map(m=>m!=null&&g!=null?v.getFormattedString(m,g,p):null)})),ke(this,"getCachedPanelLinks",Ge((h,c)=>{var v=$.getIdFromPanel(c);return he.debug("getCachedPanelLinks",h,v),h.filter(g=>{var p;return((p=g.end)===null||p===void 0?void 0:p.panelId)===v})})),ke(this,"getCachedSource",Ge(h=>{he.debug("getCachedSource",h);var c;if(h.length>0){var[v]=h;c=v.start,h.length>1&&he.error("Filter has more that one link",h)}return c})),ke(this,"getCachedSourceTable",Ge((h,c)=>{var v;if(he.debug("getCachedSourceTable",h,c),c==null)return null;var{panelId:g}=c;return(v=h.get(g))!==null&&v!==void 0?v:null})),ke(this,"getCachedSourceColumn",Ge((h,c)=>{var v;return he.debug("getCachedSourceColumn",h,c),h==null||c==null?null:(v=h.columns.find(g=>{var{name:p,type:m}=g;return p===c.columnName&&m===c.columnType}))!==null&&v!==void 0?v:null})),this.handleChange=ht(this.handleChange.bind(this),vh),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=Le.createRef(),this.panelContainer=Le.createRef(),this.pending=new Dn;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=bn.getColumnFormats(i),this.dateTimeFormatter=new kr(t,{showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"});var{value:a="",isValueShown:l=!1,name:s,type:o,timestamp:u}=r??{},d=s!=null&&o!=null?{name:s,type:o}:void 0;this.state={column:d,formatter:new ze(t,this.columnFormats),valuesTable:void 0,valuesColumn:void 0,sourceSize:0,value:a,timestamp:u,values:[],isValueShown:l,wasFlipped:!1,skipUpdate:!1,panelState:r,isDisconnected:!1,isLoading:!1,isLoaded:!1,error:null}}componentDidMount(){this.updateValuesTable();var{dashboardLinks:e,panelTableMap:t}=this.props,{column:r,value:i,timestamp:a}=this.state,l=this.getSourceTable(t,e);if(l!==null&&this.startListeningToSource(l),r!=null){var{name:s,type:o}=r;this.sendUpdate(s,o,i,a)}}componentDidUpdate(e,t){var{dashboardLinks:r,panelTableMap:i,settings:a}=this.props,{valuesTable:l}=this.state,s=this.getSource(r),o=this.getSourceTable(i,r),u=this.getSource(e.dashboardLinks),d=this.getSourceTable(e.panelTableMap,e.dashboardLinks);a!==e.settings&&a!==void 0&&this.updateFormatterSettings(a),l!==t.valuesTable&&t.valuesTable!=null&&(he.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==d||s!==u)&&this.updateValuesTable(),o!==d&&(d!==null&&this.stopListeningToSource(d),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);this.pending.cancel(),i!==null&&this.stopListeningToSource(i),this.cleanup&&this.cleanup(),r!=null&&r.close()}getCoordinateForColumn(){var e;if(this.panelContainer.current==null)return null;var t=this.panelContainer.current.querySelector(".".concat(Wi.SOURCE_BUTTON_CLASS_NAME)),r=(e=t==null?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null;if(r==null||r.width<=0||r.height<=0)return null;var i=r.left+r.width/2,a=r.bottom;return[i,a]}getSettingsErrorMessage(){var{sourceSize:e}=this.state;if(e>tt.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(tt.MAX_TABLE_SIZE," options.")}getPanelErrorMessage(){var{error:e}=this.state;return e!=null?"".concat(e):void 0}getSource(e){var t=this.getCachedPanelLinks(e,this);return this.getCachedSource(t)}getSourceTable(e,t){var r=this.getSource(t);return this.getCachedSourceTable(e,r)}getValuesColumn(e,t){var r=this.getSource(t);return this.getCachedSourceColumn(e,r)}startListeningToSource(e){var{dh:t}=this.props;he.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;he.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,{name:a=void 0,type:l=void 0}=t??{},s=!0,o=Date.now();this.setState(u=>{var d,h,{panelState:c,timestamp:v,wasFlipped:g,skipUpdate:p}=u,m=c!=null&&r!==c.isValueShown&&a===c.name&&l===c.type&&i===c.value;return s=(d=!p&&r&&(!m||!g))!==null&&d!==void 0?d:!1,s||(o=v),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:(h=o)!==null&&h!==void 0?h:void 0},timestamp:o,wasFlipped:m,skipUpdate:!1}},()=>{s&&this.sendUpdate(a??null,l,i,o)})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleSourceFilterChange(){this.applySourceFilters()}handleSourceSortChange(){this.applySourceSorts()}handleSourceSizeChange(e){var{detail:t}=e;this.setState({sourceSize:t})}handleColumnSelected(){he.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(Se.COLUMN_SELECTED,this,tt.SOURCE_COLUMN)}handleClearAllFilters(){var e,t;(e=this.dropdownFilterRef)===null||e===void 0||(t=e.current)===null||t===void 0||t.clearFilter()}setPanelState(e){var t,r,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{dashboardLinks:a}=this.props;if(this.getSource(a)==null){he.debug("Ignore state update for unlinked filter",e);return}this.setState({skipUpdate:!i}),(t=this.dropdownFilterRef)===null||t===void 0||(r=t.current)===null||r===void 0||r.setFilterState(e)}sendUpdate(e,t,r,i){var a,{dashboardLinks:l,glEventHub:s}=this.props,o=(a=this.getSource(l))===null||a===void 0?void 0:a.panelId,u=o===null?[]:[o];he.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:u}),s.emit(Se.FILTERS_CHANGED,this,{name:e,type:t,value:r??"=null",timestamp:i,excludePanelIds:u})}updateValuesTable(){var{dashboardLinks:e,panelTableMap:t}=this.props,r=this.getSource(e),i=this.getSourceTable(t,e);if(he.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){he.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=>{xe.isCanceled(a)||(he.error(a),this.setState({isLoading:!1,error:a}))}))}applySourceSorts(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(he.debug("applySourceSorts",i==null?void 0:i.sort),r==null||i==null){he.debug("Table not initialized");return}var a=[...i.sort];r.applySort(a),this.setViewport(r)}applySourceFilters(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable:r}=this.state,i=this.getSourceTable(t,e);if(he.debug("applySourceFilters",i==null?void 0:i.filter),r==null||i==null){he.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(he.debug("updateViewportListener",e==null?void 0:e.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,r=this.getValuesColumn(e,t);if(!r){he.error("values column is null");return}e.setViewport(0,tt.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=bn.getColumnFormats(e);Ar(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new ze(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){he.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){he.error("Values column not found");return}var s=r.map(o=>o.get(l));this.setState({values:s,isLoading:!1,isLoaded:!0,valuesColumn:l})}handleSourceMouseEnter(){var{columnSelectionValidator:e}=this.props;e&&e(this,tt.SOURCE_COLUMN)}handleSourceMouseLeave(){var{columnSelectionValidator:e}=this.props;e&&e(this,void 0)}render(){var{columns:e,dashboardLinks:t,disableLinking:r,glContainer:i,glEventHub:a,isLinkerActive:l}=this.props,{column:s,formatter:o,isDisconnected:u,isValueShown:d,value:h,values:c,valuesColumn:v,isLoading:g,isLoaded:p}=this.state,m=this.getSource(t),b=this.getSettingsErrorMessage(),y=this.getPanelErrorMessage(),C=p&&v!=null?this.getCachedValues(c,v,o):[];return f.jsx(gr,{errorMessage:y,isLoading:g,isLoaded:p,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,widgetName:"Dropdown Filter",widgetType:"DropdownFilter",children:f.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:f.jsx(Wi,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:p,settingsError:b,source:m,value:h,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}ke(tt,"displayName","DropdownFilterPanel");ke(tt,"COMPONENT","DropdownFilterPanel");ke(tt,"MAX_TABLE_SIZE",256);ke(tt,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var mh=ph(tt);const St=mh;function zi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Nr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zi(Object(t),!0).forEach(function(r){lr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function lr(n,e,t){return e=gh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gh(n){var e=bh(n,"string");return typeof e=="symbol"?e:String(e)}function bh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ve=Z.module("FilterSetManager"),Ch="Enter name...",qi="No Available Filter Sets";class Vr extends D.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),lr(this,"renameInputRef",Le.createRef()),lr(this,"dropdownRef",Le.createRef()),lr(this,"editDropdownRef",Le.createRef()),lr(this,"isRenamingExistingSet",B((t,r)=>r!==void 0&&t.some(i=>{var{id:a}=i;return a===r.id}))),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleEditDropdownChange=this.handleEditDropdownChange.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleCaptureNewSet=this.handleCaptureNewSet.bind(this),this.handleNameInputChange=this.handleNameInputChange.bind(this),this.handleNameInputKeyPress=this.handleNameInputKeyPress.bind(this),this.handleRenameConfirm=this.handleRenameConfirm.bind(this),this.handleRenameCancel=this.handleRenameCancel.bind(this),this.handleRestoreFullStateChange=this.handleRestoreFullStateChange.bind(this),this.handleSetDelete=this.handleSetDelete.bind(this),this.handleSetEdit=this.handleSetEdit.bind(this),this.handleSetUpdate=this.handleSetUpdate.bind(this),this.state={editId:void 0,renameSet:void 0,nameInputValue:"",nameInputError:void 0,modifiedFilterSets:[],restoreFullState:!1}}componentDidMount(){var{isValueShown:e}=this.props;e?this.updateSelectedId():this.initSettingsScreen()}componentDidUpdate(e,t){var{isValueShown:r,filterSets:i}=this.props,{modifiedFilterSets:a}=this.state;if(e.isValueShown&&!r&&this.initSettingsScreen(),this.isNameInputScreen()&&!this.isNameInputScreen(t)&&this.focusRenameInput(),i!==e.filterSets)if(!r&&i.length>0&&e.filterSets.length===0&&a.length===0){var{onChange:l}=this.props;l({isValueShown:!0,selectedId:i[0].id})}else this.updateSelectedId()}initSettingsScreen(){var{filterSets:e,selectedId:t}=this.props;ve.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(ve.debug("updateSelectedId",t,r),!!e&&!t.some(l=>{var{id:s}=l;return s===r})){var a=t.length===0;i({isValueShown:!a,selectedId:a?void 0:t[0].id})}}handleEditDropdownChange(e){this.setState({editId:e})}handleFilterChange(e){var t=e,{isValueShown:r,onChange:i}=this.props;this.applyFilterSet(t),i({isValueShown:r,selectedId:t})}handleFilterApply(){var{selectedId:e}=this.props;this.applyFilterSet(e)}handleSettingsCancel(){var{onChange:e,selectedId:t,filterSets:r}=this.props;this.setState({modifiedFilterSets:[]}),r.length>0&&e({isValueShown:!0,selectedId:t})}handleSettingsSave(){var{onChange:e,onUpdateSets:t}=this.props,{modifiedFilterSets:r,editId:i}=this.state;this.setState({modifiedFilterSets:[]}),ve.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;Vr.animateScreenFlash();var t=We(),r=e(),i={id:t,title:"",panels:r};ve.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,{renameSet:r,modifiedFilterSets:i}=this.state,a=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(a.length===0)return ve.debug("Name cannot be empty",a),"Name cannot be empty";if(r!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==r.id}))return ve.debug("Set with this name already exists",a),"Set with this name already exists"}handleRenameConfirm(){var e,{nameInputValue:t,renameSet:r,modifiedFilterSets:i,restoreFullState:a}=this.state;if(r===void 0){ve.error("Renamed set undefined.");return}var l=this.getNameError(t);if(ve.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t==null?void 0:t.trim())!==null&&e!==void 0?e:"",o=Nr(Nr({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===r.id}),d=[...i];u>=0?(d[u]=o,ve.debug("Renamed existing set",d)):(d.push(o),ve.debug("Added new set to modified sets",d)),this.setState({editId:o.id,modifiedFilterSets:d,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.findIndex(o=>{var{id:u}=o;return u===t});if(i<0)return ve.error("Unable to find selected filterSet index",r,t),null;var a=r.filter(o=>{var{id:u}=o;return u!==t}),l=Math.max(0,Math.min(a.length-1,i-1)),s=a.length>0?a[l].id:void 0;return ve.debug("Deleted selected set",t,r,a),ve.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;Vr.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return ve.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(ve.error("Selected set for update not found."),null):(l[s]=Nr(Nr({},l[s]),{},{panels:t}),ve.debug("Update set",l,t),{modifiedFilterSets:l})})}handleSetEdit(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.find(s=>{var{id:o}=s;return o===t});if(i===void 0)return ve.error("Could not find selected set",t,r),null;var{title:a,restoreFullState:l=!1}=i;return{nameInputValue:a,nameInputError:void 0,renameSet:i,restoreFullState:l}})}handleSettingsClick(e){e.stopPropagation();var{onChange:t,selectedId:r}=this.props;t({isValueShown:!1,selectedId:r})}handleBackgroundClick(e){ve.debug("handleBackgroundClick"),e.target!==this.dropdownRef.current&&this.focusInput()}handleNameInputChange(e){var{value:t}=e.target,r=this.getNameError(t);this.setState({nameInputValue:t,nameInputError:r})}handleNameInputKeyPress(e){var{key:t}=e;t==="Enter"&&(e.preventDefault(),this.handleRenameConfirm())}isNameInputScreen(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,{renameSet:t}=e;return t!==void 0}applyFilterSet(e){var{onApply:t,filterSets:r}=this.props;if(e===void 0){ve.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){ve.debug("Selected id not found in filterSets",e,r);return}ve.debug("Apply filterSet",i),t(i)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId:r,renameSet:i,modifiedFilterSets:a,restoreFullState:l}=this.state,{isValueShown:s,filterSets:o,selectedId:u}=this.props,d=this.isNameInputScreen(),h=this.isRenamingExistingSet(a,i),c=a.length===0,v=!d&&c&&o.length===0,g=!d&&!v,p=f.jsxs("div",{className:"fa-layers mr-3",children:[f.jsx(Ie,{icon:li,mask:si,transform:"shrink-1 down-5 right-7"}),f.jsx(Ie,{icon:zs,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),m=f.jsxs("div",{className:"fa-layers",children:[f.jsx(Ie,{icon:li,mask:si,transform:"shrink-1 down-5 right-7"}),f.jsx(Ie,{icon:qs,transform:"shrink-1 down-5 right-7"})]});return f.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:f.jsxs(Rn,{className:"w-100 h-100",isFlipped:s,children:[f.jsx("div",{className:"filter-set-manager-settings-card fill-parent-absolute",children:f.jsxs("div",{className:"filter-set-manager-card-content",children:[v&&f.jsxs("div",{children:[f.jsx(X,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:p,children:"Capture filter set"}),f.jsx("div",{className:"py-3 text-muted small",children:"Takes a snapshot of the currently applied filters on all panels, allowing you to restore saved filter sets later."})]}),d&&f.jsxs("div",{className:"d-flex flex-column justify-content-center","data-testid":"edit-filter-set-container",children:[f.jsxs("div",{className:"form-group",children:[f.jsx("label",{children:h?"Edit set":"Name captured set"}),f.jsxs("div",{className:"name-input-container",children:[f.jsx("input",{type:"text",className:"input-set-name form-control",placeholder:Ch,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),f.jsx(X,{"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:Za}),f.jsx(X,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:Ws})]}),t!==void 0&&f.jsx("div",{className:"error-message",children:t})]}),f.jsx("div",{className:"form-group",children:f.jsxs(hs,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[f.jsx(ri,{value:"false",children:"Restore only filters"}),f.jsx(ri,{value:"true",children:"Restore full table state"})]})})]}),g&&f.jsxs("div",{className:"filter-set-manager-settings-grid-1",children:[f.jsxs("div",{className:"form-group",children:[f.jsx("label",{children:"Edit filter sets"}),f.jsxs("div",{className:"filter-select-container",children:[f.jsxs(hr,{"data-testid":"settings-card-filter-select",ref:this.editDropdownRef,value:r??"-1",className:"custom-select filter-value-select",onChange:this.handleEditDropdownChange,disabled:c,children:[c&&f.jsx("option",{value:"-1",disabled:!0,children:qi}),a.map(b=>{var{id:y,title:C}=b;return f.jsx("option",{value:y,children:C},y)})]}),f.jsx(X,{kind:"ghost",onClick:this.handleSetUpdate,disabled:c,icon:m,tooltip:"Update"}),f.jsx(X,{kind:"ghost",onClick:this.handleSetEdit,disabled:c,icon:Ja,tooltip:"Edit"}),f.jsx(X,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:qr,tooltip:"Delete"})]})]}),f.jsx("div",{children:f.jsx(X,{kind:"ghost",className:"btn btn-link no-underline",onClick:this.handleCaptureNewSet,icon:p,children:"Capture new filter set"})}),f.jsxs("div",{className:"py-3 text-right",children:[f.jsx(X,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",f.jsx(X,{kind:"primary",onClick:this.handleSettingsSave,children:"Save"})]})]})]})},"front"),f.jsxs("div",{className:"filter-set-manager-value-card fill-parent-absolute",onClick:this.handleBackgroundClick,children:[f.jsx("div",{className:"filter-set-manager-column",children:f.jsx("div",{className:"filter-set-manager-column-title",children:"Filter sets"})}),f.jsx("div",{className:"filter-set-manager-card-content",children:f.jsx("div",{className:"filter-set-manager-value-input",children:f.jsxs("div",{className:"filter-select-container",children:[f.jsxs(hr,{"data-testid":"value-card-filter-select",ref:this.dropdownRef,value:u??"-1",className:"custom-select filter-value-select",onChange:this.handleFilterChange,children:[o.length===0&&f.jsx("option",{value:"-1",disabled:!0,children:qi}),o.map(b=>{var{id:y,title:C}=b;return f.jsx("option",{value:y,children:C},y)})]}),f.jsx(X,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:el,tooltip:"Apply Filter Set"})]})})}),f.jsx("div",{className:"filter-set-manager-menu",children:f.jsx(X,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:f.jsx(Ie,{icon:Mn,transform:"grow-4"})})})]},"back")]})})}}const Dl=Vr;function Un(n){var e,t,r,i,a,{model:l,widgetName:s,glContainer:o,description:u}=n,d=((e=l==null?void 0:l.rowCount)!==null&&e!==void 0?e:0)-((t=l==null?void 0:l.pendingRowCount)!==null&&t!==void 0?t:0)-((r=l==null?void 0:l.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=l==null?void 0:l.floatingTopRowCount)!==null&&i!==void 0?i:0),h=l==null?void 0:l.displayString(d,"long"),c=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,v=l==null?void 0:l.displayString(c,"long");return f.jsxs(mr,{widgetType:"Table",widgetName:s,glContainer:o,description:u,children:[f.jsx("hr",{className:"tab-tooltip-divider"}),f.jsx("span",{children:"Number of Columns"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:v}),f.jsx("span",{children:"Number of Rows"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:h})]})}Un.propTypes={glContainer:Va.Container.isRequired,widgetName:W.string.isRequired,description:W.string};Un.defaultProps={description:null};function Ol(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function Fl(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}function Ki(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ft(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ki(Object(t),!0).forEach(function(r){Ce(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ki(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ce(n,e,t){return e=Sh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Sh(n){var e=yh(n,"string");return typeof e=="symbol"?e:String(e)}function yh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var nt=Z.module("IrisGridPanel"),Eh=500;function Yi(n){if(n==null)throw new Error("No metadata provided");if(Fl(n))return n.name;if(Ol(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(n)))}class Ht extends D.PureComponent{constructor(e){super(e),Ce(this,"irisGrid",void 0),Ce(this,"pluginRef",void 0),Ce(this,"modelPromise",void 0),Ce(this,"irisGridState",void 0),Ce(this,"gridState",void 0),Ce(this,"pluginState",void 0),Ce(this,"irisGridUtils",void 0),Ce(this,"getGridInputFilters",B((r,i)=>ue.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=$.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),Ce(this,"getAlwaysFetchColumns",B((r,i)=>{for(var a=$.getIdFromPanel(this),l=new Set(i),s=0;s<r.length;s+=1){var{start:o}=r[s];o!=null&&o.panelId===a&&l.add(o.columnName)}return[...l]})),Ce(this,"getPluginContent",B((r,i,a)=>{if(!i||!xt(i)||r==null||i.table==null)return null;var l={panel:this};return f.jsx("div",{className:"iris-grid-plugin",children:f.jsx(r,ft({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:a},l))})})),Ce(this,"getDehydratedIrisGridPanelState",B((r,i,a,l)=>ue.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),Ce(this,"getDehydratedIrisGridState",B((r,i,a,l,s,o,u,d,h,c,v,g,p,m,b,y,C,E,w,T,F,O)=>(R(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:C,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:b,userRowHeights:y},quickFilters:o,customColumns:u,reverseType:d,rollupConfig:h,showSearchBar:c,searchValue:v,selectDistinctColumns:g,selectedSearchColumns:p,sorts:i,invertSearchColumns:m,pendingDataMap:E,frozenColumns:w,conditionalFormats:T,columnHeaderGroups:F,partitionConfig:O})))),Ce(this,"getDehydratedGridState",B((r,i,a,l,s)=>ue.dehydrateGridState(r,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),Ce(this,"getCachedPanelState",B((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),Ce(this,"savePanelState",ht(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;R(r);var{onPanelStateUpdate:l}=this.props,{model:s,panelState:o,isSelectingPartition:u,partitions:d,advancedSettings:h}=this.state,{advancedFilters:c,aggregationSettings:v,customColumnFormatMap:g,isFilterBarShown:p,quickFilters:m,customColumns:b,reverseType:y,rollupConfig:C,showSearchBar:E,searchValue:w,selectDistinctColumns:T,selectedSearchColumns:F,sorts:O,invertSearchColumns:P,metrics:M,pendingDataMap:k,frozenColumns:L,conditionalFormats:j,columnHeaderGroups:H,partitionConfig:Y}=r;R(s),R(M);var{userColumnWidths:te,userRowHeights:re}=M;R(i);var{isStuckToBottom:ae,isStuckToRight:le,movedColumns:pe,movedRows:I}=i,A=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h),this.getDehydratedIrisGridState(s,O,c,g,p,m,b,y,C,E,w,T,F,P,te,re,v,k,L,j,H,Y),this.getDehydratedGridState(s,pe,I,ae,le),a);A!==o&&(nt.debug("Saving panel state",this,A),this.setState({panelState:A}),l==null||l(A))},Eh)),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=Le.createRef(),this.pluginRef=Le.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(ol.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverseType:S.REVERSE_TYPE.NONE,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state,{makeModel:i}=this.props;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r)),i!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return Yi(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=xe.makeCancelable(e(),t=>t.close()),this.modelPromise.then(this.handleLoadSuccess).catch(this.handleLoadError)}handleLoadSuccess(e){var t=e,{panelState:r,irisGridStateOverrides:i}=this.state,a=[];if(this.irisGridUtils=new ue(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=ft(ft({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=ue.getModelRollupConfig(h.originalColumns,d,s)}),u.length>0&&a.push(h=>{h.selectDistinctColumns=u})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();nt.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){nt.debug("handleAdvancedSettingsChange",e,t),this.setState(r=>{var{advancedSettings:i}=r;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,r,{model:i}=this.state;R(i);var{columns:a,formatter:l}=i,s=(t=(r=this.irisGridUtils)===null||r===void 0?void 0:r.getFiltersFromInputFilters(a,e,l.timeZone))!==null&&t!==void 0?t:[];this.setState({pluginFilters:s})}handlePluginFetchColumns(e){this.setState({pluginFetchColumns:e})}handleContextMenu(e){var t,r,i;return(t=(r=this.pluginRef.current)===null||r===void 0||(i=r.getMenu)===null||i===void 0?void 0:i.call(r,e))!==null&&t!==void 0?t:[]}isColumnSelectionValid(e){var{columnSelectionValidator:t}=this.props;return t&&e?t(this,e):!1}handleGridStateChange(e,t){this.irisGridState=e,this.gridState=t,this.setState({isLoaded:!0,isLoading:!1}),this.savePanelState();var{glEventHub:r,onStateChange:i}=this.props;r.emit(Be.STATE_CHANGED,this),i==null||i(e,t)}handlePluginStateChange(e){var{irisGridState:t,gridState:r}=this;this.pluginState=e,t!==null&&r!==null&&this.savePanelState()}handleColumnsChanged(e){var{isModelReady:t,model:r,modelQueue:i}=this.state;t?this.sendColumnsChange(e.detail):(R(r),this.initModelQueue(r,i))}handleTableChanged(e){nt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e;t.emit(Se.TABLE_CHANGED,this,r)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i}=this.props,a=this.getTableName(),{panelState:l}=this.state,s=$.getIdFromPanel(this),o;l&&(o=ue.extractTableSettings(l,i)),r.emit(Be.CREATE_CHART,{metadata:{settings:e,sourcePanelId:s,table:a,tableSettings:o},table:xt(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(Be.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(Be.DATA_SELECTED,this,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){xe.isCanceled(e)||this.handleError(e)}modelInitialized(e){var{glEventHub:t,loadPlugin:r}=this.props;if(this.modelPromise=void 0,this.loadPanelState(e),this.setState({isModelReady:!0}),xt(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}t.emit(Se.TABLE_CHANGED,this,i)}this.sendColumnsChange(e.columns)}handleClearAllFilters(){var e=this.irisGrid.current,{isDisconnected:t}=this.state;e!=null&&!t&&e.clearAllFilters()}sendColumnsChange(e){nt.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(Se.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(K.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(K.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(K.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(K.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(K.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(K.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(K.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(K.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s==null?void 0:s.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;R(l);var{metrics:u}=l.state;R(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:c,right:v,columnHeaderMaxDepth:g}=u,p=a.getColumnIndexByName(e);R(p);var m=l.getVisibleColumn(p),b=(r=h.get(m))!==null&&r!==void 0?r:0,y=(i=c.get(m))!==null&&i!==void 0?i:0,C=Math.max(o.left,Math.min(m>v?o.right:o.left+b+y*.5,o.right)),E=o.top+d*g;return[C,E]}setFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;nt.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){nt.debug("Ignore setFilters, model disconnected");return}R(i);var{columns:s,formatter:o}=i,u=ue.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[c]=h;return i.isFilterable(c)}),d=ue.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[c]=h;return i.isFilterable(c)});R(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){nt.debug("setStateOverrides",e);var{irisGridState:t,gridState:r}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:r,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=ft({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=ue.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=ue.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partitions:c,advancedSettings:v}=ue.hydrateIrisGridPanelState(e,s);R(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,quickFilters:y,reverseType:C,rollupConfig:E,aggregationSettings:w,sorts:T,userColumnWidths:F,userRowHeights:O,showSearchBar:P,searchValue:M,selectDistinctColumns:k,selectedSearchColumns:L,invertSearchColumns:j,pendingDataMap:H,frozenColumns:Y,conditionalFormats:te,columnHeaderGroups:re,partitionConfig:ae}=this.irisGridUtils.hydrateIrisGridState(e,ft(ft({},l),o)),{isStuckToBottom:le,isStuckToRight:pe,movedColumns:I,movedRows:A}=ue.hydrateGridState(e,ft(ft({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:te,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,isSelectingPartition:h,movedColumns:I,movedRows:A,partitions:c,quickFilters:y,reverseType:C,rollupConfig:E,aggregationSettings:w,sorts:T,userColumnWidths:F,userRowHeights:O,showSearchBar:P,searchValue:M,selectDistinctColumns:k,selectedSearchColumns:L,invertSearchColumns:j,pendingDataMap:H,frozenColumns:Y,isStuckToBottom:le,isStuckToRight:pe,columnHeaderGroups:re,partitionConfig:ae})}catch(V){nt.error("loadPanelState failed to load panelState",t,V)}}updateGrid(){var e,t,r=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;r&&r.handleResize()}render(){var e,t,{children:r,glContainer:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:u,metadata:d,panelState:h,user:c,settings:v,theme:g}=this.props,{advancedFilters:p,aggregationSettings:m,advancedSettings:b,conditionalFormats:y,customColumns:C,customColumnFormatMap:E,error:w,isDisconnected:T,isFilterBarShown:F,isSelectingPartition:O,isStuckToBottom:P,isStuckToRight:M,isLoaded:k,isLoading:L,isModelReady:j,model:H,movedColumns:Y,movedRows:te,partitions:re,partitionConfig:ae,quickFilters:le,reverseType:pe,rollupConfig:I,sorts:A,userColumnWidths:V,userRowHeights:U,showSearchBar:z,searchValue:ye,selectDistinctColumns:Ee,selectedSearchColumns:_e,invertSearchColumns:qe,Plugin:Ke,pluginFilters:nn,pluginFetchColumns:an,pendingDataMap:Sr,frozenColumns:ln,columnHeaderGroups:Xt}=this.state,Zl=w!=null?"Unable to open table. ".concat(w):void 0,Zn=Yi(d),Jn=(e=H==null?void 0:H.description)!==null&&e!==void 0?e:void 0,Jl=(t=h==null?void 0:h.pluginState)!==null&&t!==void 0?t:null,es=r??this.getPluginContent(Ke,H,Jl),{permissions:ts}=c,{canCopy:rs,canDownloadCsv:ns}=ts;return f.jsx(gr,{errorMessage:Zl,isDisconnected:T,isLoading:L,isLoaded:k,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,widgetName:Zn,widgetType:"Table",description:Jn,componentPanel:this,renderTabTooltip:()=>f.jsx(Un,{model:H,widgetName:Zn,glContainer:i,description:Jn}),children:j&&H&&f.jsx(_n,{advancedFilters:p,aggregationSettings:m,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(u,an),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:C,customColumnFormatMap:E,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:y,inputFilters:this.getGridInputFilters(H.columns,o),applyInputFiltersOnInit:h==null,isFilterBarShown:F,isSelectingColumn:l!=null,isSelectingPartition:O,isStuckToBottom:P,isStuckToRight:M,movedColumns:Y,movedRows:te,partitions:re,partitionConfig:ae,quickFilters:le,reverseType:pe,rollupConfig:I,settings:v,sorts:A,userColumnWidths:V,userRowHeights:U,model:H,showSearchBar:z,searchValue:ye,selectedSearchColumns:_e,selectDistinctColumns:Ee,invertSearchColumns:qe,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:nn,pendingDataMap:Sr,canCopy:rs,canDownloadCsv:ns,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:ln,theme:g,columnHeaderGroups:Xt,children:es})})}}Ce(Ht,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});Ce(Ht,"displayName","IrisGridPanel");Ce(Ht,"COMPONENT","IrisGridPanel");var wh=(n,e)=>{var{localDashboardId:t=Ss}=e;return{inputFilters:Wr(n,t),links:Ot(n,t),columnSelectionValidator:Br(n,t),user:Cs(n),settings:zr(n)}},Th=yt(wh,null,null,{forwardRef:!0})(Ht);const Gt=Th;function ur(n,e,t){return e=Ph(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ph(n){var e=Nh(n,"string");return typeof e=="symbol"?e:String(e)}function Nh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Xi=Z.module("InputFilter"),Dh=150;class Ut extends D.Component{constructor(e){super(e),ur(this,"inputRef",void 0),ur(this,"getItemLabel",Ge((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})),ur(this,"sendUpdate",ht(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},Dh)),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=Le.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var{column:r}=this.props,{column:i,value:a,isValueShown:l}=this.state;r!==e.column&&this.setState({column:r,selectedColumn:r}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,r=t[parseInt(e,10)];Xi.debug2("handleColumnChange",r),this.setState({selectedColumn:r,value:void 0})}handleInputKeyPress(e){e.key==="Enter"&&(e.preventDefault(),e.stopPropagation(),this.setState(t=>{var{value:r}=t;return r==null?{value:""}:null},()=>{this.sendUpdate(),this.sendUpdate.flush()}))}handleValueChange(e){var{value:t}=e.target;Xi.debug2("handleValueChange",t),this.setState({value:t})}handleSettingsCancel(){var{column:e}=this.state;this.setState({selectedColumn:e,isValueShown:!0})}handleSettingsSave(){var{selectedColumn:e}=this.state;this.setState({column:e,isValueShown:!0})}handleSettingsClick(e){var{column:t}=this.state;this.setState({selectedColumn:t,isValueShown:!1}),e.stopPropagation()}handleBackgroundClick(e){e.target!==this.inputRef.current&&this.focusInput()}focusInput(){this.inputRef.current!==null&&(this.inputRef.current.select(),this.inputRef.current.focus())}clearFilter(){this.setState({value:""})}setFilterState(e){var{name:t,type:r,value:i,isValueShown:a}=e,l=t!=null&&r!=null?{name:t,type:r}:void 0,s=a===void 0?{column:l,value:i}:{column:l,value:i,isValueShown:a};this.setState(s)}render(){var{columns:e}=this.props,{column:t,isValueShown:r,selectedColumn:i,value:a}=this.state,l=a==null||a.length===0?Ut.PLACEHOLDER.length:a.length,s=null;if(t!=null){var o=e.findIndex(u=>u.name===t.name&&u.type===t.type);s=o>=0?this.getItemLabel(e,o):t.name}return f.jsxs(Rn,{className:"input-filter fill-parent-absolute",isFlipped:r??!1,children:[f.jsx("div",{className:"input-filter-settings-card",children:f.jsxs("div",{className:"input-filter-settings-content",children:[f.jsxs("div",{className:"input-filter-settings-grid",children:[f.jsx("label",{children:"Filter Column"}),f.jsxs(hr,{value:String(e.findIndex(u=>u.name===(i==null?void 0:i.name)&&u.type===(i==null?void 0:i.type))),className:"custom-select",onChange:this.handleColumnChange,children:[e.map((u,d)=>f.jsx("option",{value:d,children:this.getItemLabel(e,d)},"".concat(u.name,"/").concat(u.type))),e.length===0&&f.jsx("option",{value:"-1",disabled:!0,children:"No Available Columns"})]}),f.jsx("div",{className:"text-muted small",children:"Input filter control will apply its filter to all columns matching this name in this dashboard."})]}),f.jsxs("div",{className:"input-filter-settings-buttons",children:[f.jsx(X,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),f.jsx(X,{kind:"primary",className:"ml-2",onClick:this.handleSettingsSave,disabled:i==null,children:"Save"})]})]})}),f.jsxs("div",{className:"input-filter-value-card",onClick:this.handleBackgroundClick,children:[f.jsx("div",{className:"input-filter-column",children:f.jsxs("div",{className:"input-filter-column-title",children:[s," Filter"]})}),f.jsx("div",{className:"d-flex justify-content-center align-items-center h-100 w-100",children:f.jsx("div",{className:"input-filter-value-input d-flex flex-column justify-content-center",children:f.jsx("input",{type:"text",ref:this.inputRef,placeholder:Ut.PLACEHOLDER,value:a??"",onChange:this.handleValueChange,onKeyPress:this.handleInputKeyPress,style:{width:"".concat(l+3,"ch")},spellCheck:"false"})})}),f.jsx("div",{className:"input-filter-menu",children:f.jsx(X,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Ie,{icon:Mn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}ur(Ut,"PLACEHOLDER","Enter value...");ur(Ut,"defaultProps",{column:null,isValueShown:!1,value:null});const Oh=Ut;function Zr(n,e,t){return e=Fh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fh(n){var e=Mh(n,"string");return typeof e=="symbol"?e:String(e)}function Mh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ih=250;class Jr extends D.Component{constructor(e){super(e),Zr(this,"inputFilterRef",void 0),this.handleChange=ht(this.handleChange.bind(this),Ih),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Le.createRef();var{panelState:t}=e,{value:r,isValueShown:i=!1,name:a,type:l,timestamp:s}=t??{};this.state={columns:[],column:a!=null&&l!=null?{name:a,type:l}:void 0,value:r,timestamp:s,isValueShown:i,wasFlipped:!1,skipUpdate:!1,panelState:t}}componentDidMount(){this.updateColumns();var{column:e,value:t,timestamp:r}=this.state;if(e!=null){var{name:i,type:a}=e;this.sendUpdate(i,a,t,r)}}componentDidUpdate(e){var{columns:t}=this.props;t!==e.columns&&this.updateColumns()}handleChange(e){var{column:t,isValueShown:r=!1,value:i}=e,a,l;t!=null&&({name:a,type:l}=t);var s=!0,o=Date.now();this.setState(u=>{var d,{panelState:h,timestamp:c,wasFlipped:v,skipUpdate:g}=u,p=h!=null&&r!==h.isValueShown&&a===h.name&&l===h.type&&i===h.value;return s=(d=!g&&r&&(!p||!v))!==null&&d!==void 0?d:!1,s||(o=c),{panelState:{isValueShown:r,name:a,type:l,value:i,timestamp:o},timestamp:o,wasFlipped:p,skipUpdate:!1}},()=>{s&&this.sendUpdate(a,l,i,o)})}handleClearAllFilters(){var e;(e=this.inputFilterRef.current)===null||e===void 0||e.clearFilter()}sendUpdate(e,t,r,i){var{glEventHub:a}=this.props;a.emit(Se.FILTERS_CHANGED,this,{name:e,type:t,value:r,timestamp:i})}setPanelState(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({skipUpdate:!r}),(t=this.inputFilterRef.current)===null||t===void 0||t.setFilterState(e)}updateColumns(){var{columns:e}=this.props;e!=null&&this.setState(t=>{var{column:r}=t;return r==null&&e.length>0?{columns:[...e],column:e[0]}:r!=null&&!e.find(i=>{var{name:a,type:l}=i;return r.name===a&&r.type===l})?{columns:[...e,r]}:{columns:[...e]}})}render(){var{glContainer:e,glEventHub:t}=this.props,{column:r,columns:i,isValueShown:a,value:l}=this.state;return f.jsx(Wt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:f.jsx(Oh,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Zr(Jr,"defaultProps",{panelState:null});Zr(Jr,"COMPONENT","InputFilterPanel");Zr(Jr,"displayName","InputFilterPanel");var Rh=(n,e)=>{var{localDashboardId:t}=e;return{columns:Fn(n,t)}},Lh=yt(Rh,null,null,{forwardRef:!0})(Jr);const jt=Lh;function Qi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Dr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qi(Object(t),!0).forEach(function(r){Bn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Bn(n,e,t){return e=Ah(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ah(n){var e=kh(n,"string");return typeof e=="symbol"?e:String(e)}function kh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var De=Z.module("FilterSetManagerPanel");function xh(n){return n.setPanelState!=null}class Bt extends D.Component{static changeFilterIndexesToColumnNames(e,t){return t.map(r=>{var[i,a]=r;if(i>=e.columns.length)return null;var{name:l}=e.columns[i];return{name:l,filter:a}}).filter(r=>r!=null)}constructor(e){super(e),this.handleChange=this.handleChange.bind(this),this.handleFilterApply=this.handleFilterApply.bind(this),this.handleSetsUpdate=this.handleSetsUpdate.bind(this),this.handleGetFilterState=this.handleGetFilterState.bind(this);var{panelState:t,filterSets:r}=e,{selectedId:i=r.length>0?r[0].id:void 0,isValueShown:a=!1}=t??{};this.state={selectedId:i,isValueShown:a,panelState:t}}getFilterState(){var{dashboardOpenedPanelMap:e}=this.props,t=[];return[...e.keys()].forEach(r=>{var i=e.get(r);if(i===void 0){De.error("Could not get panel",i);return}var a=$.getComponentNameFromPanel(i),l=$.getIdFromPanel(i);De.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){De.error("Could not get panel container",i);return}var o=$.getComponentConfigFromContainer(s);if(o==null){De.error("Could not get component config from container",s);return}var u=$.getPanelComponentState(o);if(u==null){De.debug("Panel state is null ".concat(l));return}switch(a){case $.getComponentName(Ht):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case $.getComponentName(jt):case $.getComponentName(St):{var{isValueShown:h,name:c,type:v,value:g}=u;t.push({panelId:l,type:a,state:{isValueShown:h,name:c,type:v,value:g}});break}}}),t}getIrisGridPanelFilters(e,t){var{panelTableMap:r}=this.props,i=r.get(e);if(i==null)return De.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,u;s&&(u=Bt.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=Bt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Dr(Dr({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Dr({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;De.debug("handleChange",t,r),this.setState({isValueShown:t,selectedId:r}),this.updatePanelState()}handleFilterApply(e){var{dashboardOpenedPanelMap:t}=this.props,{panels:r,restoreFullState:i=!1}=e;De.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){De.debug("panel is null",l);return}if(!t.has(l)){De.debug("Ignore closed panel",l);return}De.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case $.getComponentName(Ht):this.restoreIrisGridFilters(u,o,i);break;case $.getComponentName(jt):case $.getComponentName(St):this.restoreInputFilterState(u,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;De.debug("Saving updated sets",e),t(r,[...e])}updatePanelState(){this.setState(e=>{var{selectedId:t,isValueShown:r}=e;return{panelState:{selectedId:t,isValueShown:r}}})}restoreIrisGridFilters(e,t,r){var{irisGridState:i={},advancedFilters:a=[],quickFilters:l=[]}=t,{advancedFilters:s=a,quickFilters:o=l}=i,{panelTableMap:u}=this.props,d=$.getIdFromPanel(e);if(d==null){De.error("Panel Id is null.");return}var h=u.get(d);if(h==null){De.error("Unable to get table for panel ".concat(d,"."));return}De.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=Dr({},t);delete r.isValueShown,De.debug("restoreInputFilterState",e,r),e&&xh(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return f.jsx(Wt,{className:"filter-set-manager-panel",componentPanel:this,glContainer:e,glEventHub:t,isClonable:!0,isRenamable:!0,children:f.jsx("div",{className:"input-filter-container h-100 w-100 container",children:f.jsx(Dl,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Bn(Bt,"defaultProps",{panelState:null});Bn(Bt,"COMPONENT","FilterSetManagerPanel");var _h=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:Ua(n,t),dashboardOpenedPanelMap:Ha(n,t),dashboardInputFilters:Wr(n,t),panelTableMap:Gr(n,t)}},jh=yt(_h,{setDashboardFilterSets:wl},null,{forwardRef:!0})(Bt);const Rr=jh;function Vh(n,e,t){return e=$h(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $h(n){var e=Hh(n,"string");return typeof e=="symbol"?e:String(e)}function Hh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ml extends D.PureComponent{render(){var{isEditing:e,children:t,onDoubleClick:r}=this.props;return f.jsxs("div",{className:"markdown-editor-container h-100 w-100",onDoubleClick:r,children:[f.jsx("div",{className:Re("text-muted","edit-hint",{viewing:e===void 0||!e}),children:f.jsxs("span",{children:["double-click to edit ",f.jsx(Ie,{icon:Ja})]})}),t]})}}Vh(Ml,"defaultProps",{isEditing:!1});function Gh(n,e,t){return e=Uh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uh(n){var e=Bh(n,"string");return typeof e=="symbol"?e:String(e)}function Bh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Wh=Z.module("MarkdownStartPage");class Il extends D.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(Wh.debug("delete markdown: ",e),e!==void 0){var{onDelete:t}=this.props;t(e)}this.setState({isDeleteModalShown:!1,toBeDeleted:void 0})}render(){var{closedMarkdowns:e,onOpen:t,onCreate:r}=this.props,{isDeleteModalShown:i,toBeDeleted:a}=this.state;return f.jsx("div",{className:"markdown-panel-start-page h-100 w-100",children:f.jsxs("div",{className:"markdown-panel-start-page-container",children:[f.jsxs("div",{className:"markdown-panel-start-list",children:[f.jsx("h3",{className:"list-title",children:"Start"}),f.jsx("div",{className:"list-item",children:f.jsx(X,{kind:"ghost",className:"title",onClick:r,children:"New Markdown Note"})})]}),f.jsxs("div",{className:"markdown-panel-start-list",children:[f.jsx("h3",{className:"list-title",children:"Recently Closed from Dashboard"}),e.map(l=>f.jsxs("div",{className:"list-item",children:[f.jsx(X,{kind:"ghost",className:"title",onClick:()=>t(l),children:l.title}),f.jsx("button",{className:"btn-link icon",type:"button",onClick:()=>{this.handleDeleteButtonClick(l)},children:f.jsx(Ie,{icon:qr})})]},l.id)),f.jsxs(Ks,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[f.jsx(Ys,{children:"Are you sure you want to permanently delete this note?"}),f.jsx(Xs,{children:"You can't undo this action."}),f.jsxs(ys,{children:[f.jsx(X,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),f.jsx(X,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}Gh(Il,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});const zh=Il;function Wn(n,e,t){return e=qh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qh(n){var e=Kh(n,"string");return typeof e=="symbol"?e:String(e)}function Kh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Dt{static getNewMarkdownTitle(e){for(var t="".concat(Dt.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(Dt.DEFAULT_TITLE,"-").concat(r);return t}}Wn(Dt,"DEFAULT_TITLE","Note");Wn(Dt,"DEFAULT_CONTENT",`# Markdown Note
9
9
 
10
- This note can be edited using **markdown** for styling.`);Wn(Dt,"getClosedMarkdowns",B(n=>n.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));const Lr=Dt;function dr(n,e,t){return e=Xh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xh(n){var e=Qh(n,"string");return typeof e=="symbol"?e:String(e)}function Qh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Zh=D.lazy(()=>Hr(()=>import("./MarkdownEditor-b3c8d486.js"),["./MarkdownEditor-b3c8d486.js","./vendor-2f94bc96.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./LogPanel-68cae5f8.js","./index-b36b7467.js","./index-11271fba.css","./LogPanel-68a471d6.css"],import.meta.url)),Or=Z.module("MarkdownPanel");class zn extends D.Component{constructor(e){super(e),dr(this,"markdownEditor",void 0),dr(this,"editor",void 0),dr(this,"getClosedMarkdowns",B(Lr.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,r=null;t!=null&&t.content!=null&&(t.content!==""?{content:r}=t:r=Lr.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){R(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var r,i,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(r=(i=this.editor.getModel())===null||i===void 0?void 0:i.getLineCount())!==null&&r!==void 0?r:0,u=Math.round((l+e-a)/s*o);u>o&&(u=o),this.editor.revealLine(u),this.editor.setPosition({lineNumber:u,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,r=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(r)})}handleEditorInitialized(e){Or.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Or.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Or.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=$.getComponentConfigFromContainer(t);r.emit(Oe.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Oe.DELETE,e)}handleEditorBlur(e){var t;Or.debug("markdown content changed, saving...");var{isEditing:r}=this.state;if(!(!r||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var i=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:i,isEditing:!1,panelState:{content:i}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:r}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(r);return f.jsx(Wt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?f.jsx(qh,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):f.jsx(Ml,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:f.jsx(D.Suspense,{fallback:f.jsx(Kt,{}),children:f.jsx(Zh,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??Lr.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}dr(zn,"defaultProps",{panelState:null});dr(zn,"COMPONENT","MarkdownPanel");var Jh=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:Es(n,t)}},ec=yt(Jh,null,null,{forwardRef:!0})(zn);const sr=ec;function Zi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Ji(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Zi(a,r,i,l,s,"next",o)}function s(o){Zi(a,r,i,l,s,"throw",o)}l(void 0)})}}function ea(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ve(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ea(Object(t),!0).forEach(function(r){Fe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ea(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Fe(n,e,t){return e=tc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tc(n){var e=rc(n,"string");return typeof e=="symbol"?e:String(e)}function rc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var nc=D.lazy(()=>Hr(()=>import("./MarkdownNotebook-5f572c0f.js"),["./MarkdownNotebook-5f572c0f.js","./vendor-2f94bc96.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-b36b7467.js","./index-11271fba.css","./LogPanel-68cae5f8.js","./LogPanel-68a471d6.css","./MarkdownNotebook-9207e775.css"],import.meta.url)),J=Z.module("NotebookPanel"),ta=400;class Pe extends D.Component{static handleError(e){xe.isCanceled(e)||J.error(e)}static unsavedNotebookCount(){return document.querySelectorAll(".".concat(Pe.UNSAVED_INDICATOR_CLASS_NAME,".").concat(Pe.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),Fe(this,"pending",void 0),Fe(this,"debouncedSavePanelState",void 0),Fe(this,"debouncedLoad",void 0),Fe(this,"notebook",void 0),Fe(this,"tabTitleElement",void 0),Fe(this,"tabInitOnce",void 0),Fe(this,"editor",void 0),Fe(this,"getSettings",B((c,v)=>Ve(Ve({},c),{},{minimap:{enabled:v}}))),Fe(this,"getOverflowActions",B((c,v)=>[{title:"Find",icon:eo,action:this.handleFind,group:Ye.groups.high,shortcut:ut.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:Qa,action:this.handleCopy,group:Ye.groups.medium,order:20},{title:"Rename File",icon:to,action:this.handleShowRename,group:Ye.groups.medium,order:30},{title:"Delete File",icon:qr,action:this.handleDelete,group:Ye.groups.medium,order:40},{title:"Show Minimap",icon:c?oi:void 0,action:this.handleMinimapChange,group:Ye.groups.low,shortcut:ut.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?oi:void 0,action:this.handleWordWrapChange,group:Ye.groups.low,shortcut:ut.NOTEBOOK.WORDWRAP,order:30}])),this.handleCloseCancel=this.handleCloseCancel.bind(this),this.handleCloseDiscard=this.handleCloseDiscard.bind(this),this.handleCloseSave=this.handleCloseSave.bind(this),this.handleCopy=this.handleCopy.bind(this),this.handleDelete=this.handleDelete.bind(this),this.handleDeleteConfirm=this.handleDeleteConfirm.bind(this),this.handleDeleteCancel=this.handleDeleteCancel.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleEditorChange=this.handleEditorChange.bind(this),this.handleFind=this.handleFind.bind(this),this.handleMinimapChange=this.handleMinimapChange.bind(this),this.handleWordWrapChange=this.handleWordWrapChange.bind(this),this.handleLinkClick=this.handleLinkClick.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.handleRenameFile=this.handleRenameFile.bind(this),this.handleResize=this.handleResize.bind(this),this.handleRunCommand=this.handleRunCommand.bind(this),this.handleRunAll=this.handleRunAll.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.handleSave=this.handleSave.bind(this),this.handleSaveAsCancel=this.handleSaveAsCancel.bind(this),this.handleSaveAsSubmit=this.handleSaveAsSubmit.bind(this),this.handleSaveError=this.handleSaveError.bind(this),this.handleSaveSuccess=this.handleSaveSuccess.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleShowRename=this.handleShowRename.bind(this),this.handleTab=this.handleTab.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabClick=this.handleTabClick.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleTransformLinkUri=this.handleTransformLinkUri.bind(this),this.handleOverwrite=this.handleOverwrite.bind(this),this.handlePreviewPromotion=this.handlePreviewPromotion.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new Dn,this.debouncedSavePanelState=ht(this.savePanelState.bind(this),ta),this.debouncedLoad=ht(this.load.bind(this),ta),this.notebook=null,this.tabTitleElement=null,this.tabInitOnce=!1;var{isDashboardActive:t,session:r,sessionLanguage:i,panelState:a}=e,l={value:"",language:"",wordWrap:"off"},s=null,{isPreview:o}=e;a!=null&&({fileMetadata:s=s,isPreview:o=o,settings:l=l}=a);var u=s!=null&&$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:r,sessionLanguage:i,panelState:{fileMetadata:s,settings:l},showCloseModal:!1,showDeleteModal:!1,showSaveAsModal:!1,scriptCode:""},J.debug("constructor",e,this.state)}componentDidMount(){var{glContainer:e,glEventHub:t}=this.props,{tab:r}=e;r!=null&&this.initTab(r),this.initNotebookContent(),t.on(oe.RENAME_FILE,this.handleRenameFile),t.on(Oe.DROPPED,this.handlePanelDropped),e.on(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{defaultNotebookSettings:l}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.defaultNotebookSettings.isMinimapEnabled&&this.updateEditorMinimap()}componentWillUnmount(){this.debouncedSavePanelState.flush(),this.pending.cancel();var{glEventHub:e,glContainer:t}=this.props,{fileMetadata:r,isPreview:i}=this.state;e.off(oe.RENAME_FILE,this.handleRenameFile),e.off(Oe.DROPPED,this.handlePanelDropped),t.off(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(oe.UNREGISTER_FILE,r,i)}initTab(e){this.tabInitOnce||(this.tabInitOnce=!0,this.initTabCloseOverride()),this.initTabClasses(e)}initTabCloseOverride(){var{glContainer:e}=this.props;e.beforeClose(t=>{if((t==null?void 0:t.force)===!0)return!0;var{changeCount:r,savedChangeCount:i}=this.state;return r!==i?(this.setState({showCloseModal:!0}),!1):!0})}initTabClasses(e){var t=e.element.get(0);R(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r==null||r.classList.add("notebook-title"),this.setPreviewStatus()}getNotebookValue(){var{changeCount:e,savedChangeCount:t,settings:r}=this.state,{value:i}=r;if(e!==t&&this.notebook){var a=this.notebook.getValue();return a??i}return i}initNotebookContent(){var{fileMetadata:e,settings:t,isPreview:r}=this.state;if(e&&e.id){J.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){J.debug("Use content passed in the settings prop"),this.handleLoadSuccess();return}this.handleLoadError(new Error("Missing file metadata"))}closeFileTabById(e){var{glEventHub:t}=this.props;t.emit(oe.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(oe.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(oe.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;R(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;J.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=Ve(Ve({},t),{},{language:(l=Pe.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){J.debug("saveContent",e,t),this.updateSavedChangeCount();var{fileStorage:r}=this.props;this.pending.add(r.saveFile({filename:e,content:t,basename:e})).then(this.handleSaveSuccess).catch(this.handleSaveError)}updateSavedChangeCount(){this.setState(e=>{var{changeCount:t}=e;return{savedChangeCount:t}})}setPreviewStatus(){if(this.tabTitleElement){var{isPreview:e}=this.state;J.debug("setPreviewStatus",this.tabTitleElement,e),e?this.tabTitleElement.classList.add("is-preview"):this.tabTitleElement.classList.remove("is-preview")}}handlePreviewPromotion(){this.removePreviewStatus()}savePanelState(){this.setState(e=>{var{changeCount:t,savedChangeCount:r,fileMetadata:i,isPreview:a,settings:l}=e,s=this.getNotebookValue(),o=t!==r?s:void 0,u=Ve(Ve({},l),{},{value:s}),d=Ve(Ve({},l),{},{value:o}),h={settings:d,fileMetadata:i,isPreview:a};return J.debug("Saving panel state",h),{settings:u,panelState:h}})}handleCloseDiscard(){this.setState({showCloseModal:!1});var{glContainer:e}=this.props;e.close({force:!0})}handleCloseSave(){if(this.setState({showCloseModal:!1}),this.save()){var{glContainer:e}=this.props;e.close({force:!0})}}handleCloseCancel(){this.setState({showCloseModal:!1})}handleOverwrite(e){var{glEventHub:t}=this.props;t.emit(oe.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return Ji(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;R(a);var{language:s}=l,{itemName:o}=a,u=yield $e.getUniqueCopyFileName(t,o);J.debug("handleCopy",a,o,u),yield t.copyFile(o,u);var d={id:u,itemName:u},h={value:null,language:s};r.emit(oe.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){J.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return Ji(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;J.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(oe.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):r.close({force:!0}))})()}handleDeleteCancel(){this.setState({showDeleteModal:!1})}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){J.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:r-1,savedChangeCount:i}:!l&&r<i?{changeCount:r+1,savedChangeCount:0}:{changeCount:r+1,savedChangeCount:i}}),this.debouncedSavePanelState()}handleFind(){this.notebook&&this.notebook.toggleFind()}updateEditorMinimap(){if(this.editor){var{defaultNotebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{defaultNotebookSettings:t,updateSettings:r}=this.props,i={defaultNotebookSettings:{isMinimapEnabled:!((e=t.isMinimapEnabled)!==null&&e!==void 0&&e)}};r(i)}updateEditorWordWrap(){if(this.editor){var{settings:e}=this.state,{wordWrap:t}=e;this.editor.updateOptions({wordWrap:t})}}handleWordWrapChange(){this.editor&&this.setState(e=>{var{settings:t}=e,r=t.wordWrap==="on"?"off":"on";return{settings:Ve(Ve({},t),{},{wordWrap:r})}})}handleLinkClick(e){var{notebooksUrl:t,session:r,sessionLanguage:i}=this.props,{href:a}=e.currentTarget;if(!(!a||!a.startsWith(t))){e.stopPropagation(),e.preventDefault();var l="/".concat(a.substring(t.length)).replace(/%20/g," ");if(l==="/"){J.debug("Ignoring invalid notebook link",l);return}J.debug("Notebook link clicked, opening",l);var{glEventHub:s}=this.props,o={value:null,language:i},u={id:l,itemName:l};s.emit(oe.SELECT_NOTEBOOK,r,i,o,u)}}handleLoadSuccess(){this.setState({error:void 0,isLoaded:!0,isLoading:!1})}handleLoadError(e){var t=e;xe.isCanceled(t)||(xe.isTimedOut(t)&&(t=new Error("File not found.")),J.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){J.debug("handleSave"),this.save()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=Pe.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(l=>{var{fileMetadata:s}=l,o=Ve(Ve({},l.settings),{},{language:a});return J.debug("handleSaveSuccess",i,s,o),s&&$e.hasPath(s.itemName)&&s.itemName!==i.itemName&&(J.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Pe.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){xe.isCanceled(e)||(this.setState({savedChangeCount:0}),J.error(e))}handleSaveAsCancel(){this.setState({showSaveAsModal:!1})}handleSaveAsSubmit(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r&&this.handleOverwrite(e),J.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)}}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){l.close();return}i&&i.id===e&&(this.setState({fileMetadata:{id:t,itemName:t}}),this.debouncedSavePanelState())}handleResize(){var e;(e=this.notebook)===null||e===void 0||e.updateDimensions()}handleRunCommand(e){this.runCommand(e)}handleRunAll(){var e;if(!this.notebook){J.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){J.error("Editor is not initialized.");return}this.runCommand(this.notebook.getSelectedCommand())}handleSessionOpened(e,t){var{language:r}=t;this.setState({session:e,sessionLanguage:r})}handleSessionClosed(){this.setState({session:void 0,sessionLanguage:void 0})}handleShow(){var e;J.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){J.debug("NotebookPanel tab event",e),this.initTab(e)}handleTabFocus(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];J.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){J.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){J.debug("handle NotebookPanel tab click"),this.focus(),e.detail===2&&this.removePreviewStatus()}handleTransformLinkUri(e){var{notebooksUrl:t}=this.props,{fileMetadata:r}=this.state;if(e.endsWith("/"))return e;if(e.startsWith("/"))return"".concat(t).concat(e.substring(1));var i=r==null?void 0:r.itemName;if(i===void 0)return e;i.charAt(0)==="/"&&(i=i.substring(1));var a=new URL(i,t);return new URL(e,a).href}focus(){requestAnimationFrame(()=>{this.notebook&&this.notebook.focus()})}createNotebook(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{glEventHub:i}=this.props,{session:a,sessionLanguage:l,settings:s}=this.state,o=Ve(Ve({},s),{},{language:t,value:r}),u={id:null,itemName:e};J.debug("handleCreateNotebook",a,l,o,u),i.emit(oe.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){J.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(xr.SEND_COMMAND,e,!1,!0)}removePreviewStatus(){this.setState(e=>{var{isPreview:t}=e;if(t){var{fileMetadata:r}=this.state;return r&&this.registerFileMetadata(r,!1),{isPreview:!1}}return null})}getDropdownOverflowActions(){var e,t,{defaultNotebookSettings:r}=this.props,{settings:i}=this.state;return this.getOverflowActions((e=r.isMinimapEnabled)!==null&&e!==void 0?e:!1,this.getSettings(i,(t=r.isMinimapEnabled)!==null&&t!==void 0?t:!1).wordWrap==="on")}render(){var e,t,r,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,defaultNotebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:p,fileMetadata:m,session:b,sessionLanguage:y,settings:C,showCloseModal:E,showDeleteModal:w,showSaveAsModal:T}=this.state,F=c&&!a.isHidden&&!p,O=(e=m==null?void 0:m.itemName)!==null&&e!==void 0?e:Pe.DEFAULT_NAME,P=O.endsWith(".md"),M=(m==null?void 0:m.id)!=null,k=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),L=b!=null,j=y===k.language,H=!v||!L||!j,Y=!v,te=[{action:this.handleSave,shortcut:pn.SAVE},{action:this.handleMinimapChange,shortcut:ut.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ut.NOTEBOOK.WORDWRAP}],re=Pn.getDisabledRunTooltip(L,j,"Notebook extension","Run"),ae=Pn.getDisabledRunTooltip(L,j,"Notebook extension","Run Selected"),le=[{title:M?"Rename":"Save As…",order:10,group:Ye.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:Ye.groups.high,order:20}],pe=l==null?void 0:l.element.find(".lm_title_before").get(0);return f.jsxs(f.Fragment,{children:[pe!=null&&cs.createPortal(f.jsx("span",{className:Re(Pe.UNSAVED_INDICATOR_CLASS_NAME,{[Pe.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),pe),f.jsxs(Wt,{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:le,renderTabTooltip:()=>O,children:[!P&&f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"notebook-toolbar",children:[f.jsxs("span",{children:[f.jsx(X,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:H,icon:f.jsx(Ie,{icon:Qs,transform:"grow-4"}),tooltip:"Run ".concat(ut.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),re!=null&&f.jsx(mn,{children:re})]}),f.jsxs("span",{children:[f.jsx(X,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:H,icon:f.jsx(Ie,{icon:Zs,transform:"grow-4"}),tooltip:"Run Selected ".concat(ut.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),ae!=null&&f.jsx(mn,{children:ae})]}),f.jsx(X,{kind:"ghost",className:"mr-auto",disabled:Y,onClick:this.handleSave,icon:Za,tooltip:"Save ".concat(pn.SAVE.getDisplayText()),"aria-label":"Save"}),f.jsx(X,{kind:"ghost",className:"btn-overflow",disabled:Y,icon:Js,tooltip:"More Actions...",onClick:()=>{},children:f.jsx(Ba,{actions:this.getDropdownOverflowActions,popperOptions:Pe.POPPER_OPTIONS})})]}),f.jsx(id,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:y,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:k,focusOnMount:F,ref:I=>{this.notebook=I}})]}),P&&f.jsx(D.Suspense,{fallback:f.jsx(Kt,{}),children:f.jsx(nc,{content:(r=k.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),f.jsx(Ts,{isOpen:T,type:"file",defaultValue:O,title:M?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),f.jsx(ii,{isOpen:w,headerText:'Are you sure you want to delete "'.concat(O,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),f.jsx(ii,{isOpen:E,headerText:"Do you want to save the changes you made to ".concat(O,"?"),bodyText:"Your changes will be lost if you don't save them.",onCancel:this.handleCloseCancel,onDiscard:this.handleCloseDiscard,onConfirm:this.handleCloseSave,discardButtonText:"Discard Changes",confirmButtonText:"Save"}),f.jsx(Ye,{actions:te})]})]})}}Fe(Pe,"COMPONENT","NotebookPanel");Fe(Pe,"POPPER_OPTIONS",{placement:"bottom-end"});Fe(Pe,"DEFAULT_NAME","Untitled");Fe(Pe,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");Fe(Pe,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");Fe(Pe,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,defaultNotebookSettings:{isMinimapEnabled:!0}});var ic=(n,e)=>{var t=Ps(n),r=Ns(n),i=Wa(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,defaultNotebookSettings:r,session:a,sessionLanguage:s}},ac=yt(ic,{updateSettings:ws},null,{forwardRef:!0})(Pe);const Ct=ac;function Rl(n){var{onClick:e}=n,t=D.useRef(null),r=D.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return f.jsxs(X,{ref:t,kind:"primary",className:"btn-pandas",onClick:r,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",f.jsxs("span",{children:[f.jsx(Ie,{icon:el,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function ra(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function na(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ra(Object(t),!0).forEach(function(r){en(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ra(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function en(n,e,t){return e=lc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lc(n){var e=sc(n,"string");return typeof e=="symbol"?e:String(e)}function sc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qn extends D.Component{constructor(e){super(e),en(this,"irisGridRef",void 0),this.irisGridRef=Le.createRef(),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t}}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,r,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(r=t.current)!==null&&r!==void 0&&r.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){return f.jsx(Gt,na(na({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:f.jsx(Rl,{onClick:this.handleReload})}))}}en(qn,"defaultProps",{panelState:null});en(qn,"COMPONENT","PandasPanel");const Ll=qn;function ia(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function aa(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ia(a,r,i,l,s,"next",o)}function s(o){ia(a,r,i,l,s,"throw",o)}l(void 0)})}}function la(n,e,t){return e=oc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oc(n){var e=uc(n,"string");return typeof e=="symbol"?e:String(e)}function uc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class dc{constructor(e){la(this,"items",void 0),la(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var r=0;r<this.items.length;r+=1){var i=this.items[r];ai(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];ai(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return aa(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return aa(function*(){var r,i=yield t.getViewportData();(r=t.onUpdateCallback)===null||r===void 0||r.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}const hc=dc;function sa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function er(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){sa(a,r,i,l,s,"next",o)}function s(o){sa(a,r,i,l,s,"throw",o)}l(void 0)})}}function cc(n,e,t){return e=vc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vc(n){var e=fc(n,"string");return typeof e=="symbol"?e:String(e)}function fc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class pc{constructor(e){cc(this,"items",void 0),this.items=e}getTable(){var e=this;return er(function*(){return new hc(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return er(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return er(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return er(function*(){for(var i=0;i<r.items.length;i+=1)if(r.items[i].filename===e){r.items[i].filename=t,r.items[i].basename=$e.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return er(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new Ds;if(r.length>1)throw new Error("More than one matching file found");var i=r[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}const mc=pc;function oa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $r(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?oa(Object(t),!0).forEach(function(r){gc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):oa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gc(n,e,t){return e=bc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bc(n){var e=Cc(n,"string");return typeof e=="symbol"?e:String(e)}function Cc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ua(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Sc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ua(a,r,i,l,s,"next",o)}function s(o){ua(a,r,i,l,s,"throw",o)}l(void 0)})}}function yc(n,e,t,r,i){return Nn.apply(this,arguments)}function Nn(){return Nn=Sc(function*(n,e,t,r,i){var a,l,s,o;if(_t(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=Gn(t)?t.figure:t.name,o={}),i!=null&&(i.tableSettings!=null&&(o=i.tableSettings),i.table!=null&&(l=i.table),i.figure!=null&&(s=i.figure),i.settings!=null&&(a=$r($r({},a),i.settings))),s==null&&l==null){var u=yield r();return or.makeModel(n,a,u)}if(s!=null){var d;if(t.type===n.VariableType.FIGURE){var h={name:s,type:n.VariableType.FIGURE};d=yield e(h)}else d=yield r();return or.makeModel(n,a,d)}var c={name:l,type:n.VariableType.TABLE},v=yield e(c);return new ue(n).applyTableSettings(v,o,za(ro.getState())),or.makeModelFromSettings(n,a,v)}),Nn.apply(this,arguments)}var Kn=D.forwardRef((n,e)=>{var t=zt(),r=Os(),i=Nl(n)?n.panelState:void 0,{fetch:a,metadata:l,localDashboardId:s}=n,o=D.useMemo(()=>({metadata:l,localDashboardId:s,makeModel:()=>{if(l==null)throw new Error("Metadata is required for chart panel");return yc(t,r,l,a,i)}}),[l,s,t,r,a,i]);return f.jsx(br,$r($r({ref:e},n),o))});Kn.displayName="ChartPanelPlugin";const Ec=Kn;function da(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function wc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){da(a,r,i,l,s,"next",o)}function s(o){da(a,r,i,l,s,"throw",o)}l(void 0)})}}function Al(n){var e=zt(),[t,r]=D.useState(),{fetch:i}=n;return D.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=wc(function*(){var o=yield i(),u=yield or.makeModel(e,void 0,o);a||r(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?f.jsx(ll,{model:t}):null}var Tc={name:"ChartPanel",title:"Chart",type:wt.WIDGET_PLUGIN,component:Al,panelComponent:Kn,supportedTypes:"Figure",icon:no};const Pc=Tc;function kl(n){qt(n);var{id:e,layout:t}=n,r=zt(),i=D.useCallback(a=>{var{metadata:l,panelId:s=We(),table:o}=a,{settings:u}=l,d=()=>or.makeModelFromSettings(r,u,o),h=Ae.titleFromSettings(u),c={type:"react-component",component:br.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:d},title:h,id:s},{root:v}=t;$.openComponent({root:v,config:c})},[r,e,t]);return ge(t.eventHub,Be.CREATE_CHART,i),null}var Nc={name:"ChartBuilderPlugin",type:wt.DASHBOARD_PLUGIN,component:kl};const Dc=Nc;function ha(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ca(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ha(Object(t),!0).forEach(function(r){Oc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ha(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oc(n,e,t){return e=Fc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fc(n){var e=Mc(n,"string");return typeof e=="symbol"?e:String(e)}function Mc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var me=Z.module("ConsolePlugin");function va(n){return n.notebook!==void 0}function Ic(n){qt(n)}function Rc(n){Ic(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:l}=n,s=D.useRef(0),[o,u]=D.useState(new Map),[d,h]=D.useState(new Map),c=_a(),v=D.useCallback(()=>i.getLastUsedPanelOfType(Ir),[i]),g=D.useCallback((I,A)=>{u(V=>new Map(V.set(I,A)))},[u]),p=D.useCallback(I=>{u(A=>(A.delete(I),new Map(A)))},[u]),m=D.useCallback((I,A)=>{h(V=>new Map(V.set(I,A)))},[h]),b=D.useCallback(I=>{h(A=>(A.delete(I),new Map(A)))},[h]),y=D.useCallback(function(I){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,V=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,U=I&&I.trim();if(!U)me.info("Ignoring empty code");else{var z=v();if(!z||!(z instanceof Ir.WrappedComponent)){me.error("Console panel not found");return}me.debug("Send command: ",I,A,V),z.addCommand(I,A,V)}},[v]),C=D.useCallback(I=>{c(El(e,I))},[c,e]),E=D.useCallback(I=>{var{language:A}=I,V=A==="python"?"py":A,U=null;return V==null?(me.debug("No extension for language",A),U="Untitled-".concat(s.current)):U="Untitled-".concat(s.current,".").concat(V),s.current+=1,U},[]),w=D.useCallback(function(I){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:V}=I;if(V!=null&&o.has(V))return o.get(V);if(V!=null&&d.has(V))return d.get(V);if(A)return We()},[o,d]),T=D.useCallback((I,A)=>{$.renameComponent(r.root,{id:I},A)},[r.root]),F=D.useCallback((I,A)=>{me.debug("Rename file panel",I,A);var V;if(o.has(I)&&(V=o.get(I),p(I),V!=null&&g(A,V)),d.has(I)&&(V=d.get(I),b(I),V!=null&&m(A,V)),V===void 0){me.debug2("File ".concat(I," isn't open, no need to rename the tab"));return}T(V,$e.getBaseName(A))},[o,d,T,g,m,p,b]),O=D.useCallback(I=>{var A=w(I,!1);if(A==null){me.error("Could not find panel id for file metadata",I);return}$.activateTab(r.root,{id:A})},[w,r.root]),P=D.useCallback((I,A,V)=>{if(me.debug("registerFilePanel",I,A,V),A==null||A.id==null){me.debug("Ignore empty file id",A);return}var{id:U}=A;if(V){m(U,I);return}if(o.has(U)){var z=o.get(U);if(I===z){me.debug("Update tab title for file ".concat(U));var{itemName:ye}=A;F(U,ye)}else me.error("File ".concat(U," already associated with a different tab ").concat(z));return}g(U,I),d.has(U)&&b(U)},[o,d,F,g,m,b]),M=D.useCallback((I,A)=>{if(me.debug("unregisterFileTab",I,A),I==null||I.id==null){me.debug("Ignore empty file id",I);return}var{id:V}=I;if(A){b(V);return}p(V)},[p,b]),k=D.useCallback((I,A)=>{me.debug("closeFilePanel",I);var{id:V}=I,U=null,z=!1;if(o.has(V))U=o.get(V);else if(d.has(V))U=d.get(V),z=!0;else{me.debug("File ".concat(V," isn't open, ignore close event"));return}M(I,z),$.closeComponent(r.root,{id:U},A)},[r.root,o,d,M]),L=D.useCallback(I=>{var{itemName:A}=I;return $e.getBaseName(A)},[]),j=D.useCallback(I=>{var{id:A}=I;return me.debug("fileIsOpen",I,A,o),A!=null&&o.has(A)},[o]),H=D.useCallback(I=>{var{id:A}=I;return me.debug("fileIsOpenAsPreview",I,A,d),A!=null&&d.has(A)},[d]),Y=D.useCallback(I=>{if(I!=null){var A=i.getOpenedPanelById(I);A&&va(A)&&A.focus()}},[i]),te=D.useCallback(I=>{var{id:A,settings:V,fileMetadata:U,session:z,sessionLanguage:ye,isPreview:Ee=!1}=I,_e={settings:V,fileMetadata:U},qe=L(U);return{type:"react-component",component:Ct.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:A},session:z,sessionLanguage:ye,panelState:_e,isPreview:Ee,notebooksUrl:l},title:qe,id:A}},[L,e,l]),re=D.useCallback(function(I,A,V){var U=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:E(V)},z=w(U);if(j(U)&&z!=null){me.debug("File is already open, focus panel"),O(U),Y(z);return}var ye=$.getStackForComponentTypes(r.root,[Ct.COMPONENT]),Ee=te({id:z,settings:V,fileMetadata:U,session:I,sessionLanguage:A});me.debug("createNotebook",Ee,o),$.openComponentInStack(ye,Ee)},[j,Y,E,w,r.root,te,o,O]),ae=D.useCallback(function(I,A,V,U){var z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;me.debug("selectNotebook",U,z);var ye=j(U),Ee=H(U),[_e]=[...d.values()],qe=!z,Ke=qe&&_e?_e:w(U);if(Ke==null||Ke==="")throw new Error("Unable to retrieve or create panelId for metadata",U);if(ye||Ee)O(U);else{var nn=$.getStackForComponentTypes(r.root,[Ct.COMPONENT]),an=te({id:Ke,settings:V,fileMetadata:U,session:I,sessionLanguage:A,isPreview:qe});$.openComponentInStack(nn,an)}if(Ee&&z){var Sr=U.id,ln=$.getStackForConfig(r.root,{component:Ct.COMPONENT,id:Ke}),Xt=$.getContentItemInStack(ln,{component:Ct.COMPONENT,id:Ke});Xt&&Fs(Xt)&&(Xt.container.emit(oe.PROMOTE_FROM_PREVIEW),b(Sr),g(Sr,Ke))}z&&Y(Ke)},[O,j,H,Y,w,r.root,te,d,b,g]),le=D.useCallback(function(I,A){var V=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},U=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,z=i.getLastUsedPanelOfType(Ct);z&&va(z)?V!=null&&V.value!=null&&z.notebook!=null&&z.notebook.append(V.value):U&&re(I,A,V)},[re,i]),pe=D.useCallback((I,A)=>Ms.hydrate(ca(ca({},I),{},{notebooksUrl:l}),A),[l]);return Zt(a,Ir,t),Zt(a,qa),Zt(a,Ka),Zt(a,Ya),Zt(a,Ct,pe),ge(r.eventHub,xr.SEND_COMMAND,y),ge(r.eventHub,xr.SETTINGS_CHANGED,C),ge(r.eventHub,oe.CLOSE_FILE,k),ge(r.eventHub,oe.CREATE_NOTEBOOK,re),ge(r.eventHub,oe.SELECT_NOTEBOOK,ae),ge(r.eventHub,oe.RENAME,T),ge(r.eventHub,oe.RENAME_FILE,F),ge(r.eventHub,oe.SEND_TO_NOTEBOOK,le),ge(r.eventHub,oe.REGISTER_FILE,P),ge(r.eventHub,oe.UNREGISTER_FILE,M),null}var tr=Z.module("FilterPlugin");function fa(n,e){return n.concat(e)}function xl(n){qt(n);var{id:e,layout:t,registerComponent:r}=n,i=_a(),[a]=D.useState(()=>new Map),[l]=D.useState(()=>new Map),[s]=D.useState(()=>new Map),o=D.useCallback(()=>{var m=Array.from(a.values()).reduce(fa,[]).sort((C,E)=>{var w=Xe.toLower(C.name),T=Xe.toLower(E.name);if(w!==T)return w>T?1:-1;var F=Xe.toLower(C.type),O=Xe.toLower(E.type);return F!==O?F>O?1:-1:0}).reduce((C,E)=>((C.length===0||Xe.toLower(C[C.length-1].name)!==Xe.toLower(E.name)||Xe.toLower(C[C.length-1].type)!==Xe.toLower(E.type))&&C.push(E),C),[]),b=Array.from(l.values()).reduce(fa,[]).sort((C,E)=>C.timestamp-E.timestamp),y=new Map(s);tr.debug("sendUpdate",{columns:m,filters:b,tableMap:y}),i(Et(e,{columns:m,filters:b,tableMap:y}))},[i,e,a,l,s]),u=D.useCallback((m,b)=>{tr.debug2("handleColumnsChanged",m,b),a.set(m,[].concat(b)),o()},[a,o]),d=D.useCallback((m,b)=>{tr.debug2("handleFiltersChanged",m,b),l.set(m,[].concat(b)),o()},[l,o]),h=D.useCallback((m,b)=>{tr.debug2("handleTableChanged",m,b),s.set($.getIdFromPanel(m),b),o()},[s,o]),c=D.useCallback(m=>{tr.debug2("handlePanelUnmount",m),a.delete(m),l.delete(m),s.delete($.getIdFromPanel(m)),o()},[a,l,s,o]),v=D.useCallback(m=>{var{title:b="DropdownFilter",metadata:y={},panelState:C=null,id:E=We(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=null}=m,O={type:"react-component",component:St.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:P}=t;$.openComponent({root:P,config:O,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]),g=D.useCallback(m=>{var{title:b="InputFilter",metadata:y={},panelState:C=null,id:E=We(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=void 0}=m,O={type:"react-component",component:jt.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:P}=t;$.openComponent({root:P,config:O,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]),p=D.useCallback(m=>{var{title:b="FilterSets",metadata:y={},panelState:C=null,id:E=We(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=null}=m,O={type:"react-component",component:Rr.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:P}=t;$.openComponent({root:P,config:O,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]);return D.useEffect(function(){var b=[r(St.COMPONENT,St),r(jt.COMPONENT,jt),r(Rr.COMPONENT,Rr)];return()=>{b.forEach(y=>y())}},[r]),ge(t.eventHub,Se.COLUMNS_CHANGED,u),ge(t.eventHub,Se.FILTERS_CHANGED,d),ge(t.eventHub,Se.TABLE_CHANGED,h),ge(t.eventHub,Se.OPEN_DROPDOWN,v),ge(t.eventHub,Se.OPEN_INPUT,g),ge(t.eventHub,Se.OPEN_FILTER_SET_MANAGER,p),ge(t.eventHub,Oe.UNMOUNT,c),null}var Lc={name:"FilterPlugin",type:wt.DASHBOARD_PLUGIN,component:xl};const Ac=Lc;var kc=Z.module("@deephaven/app-utils/useTablePlugin");function _l(){var n=Xa(),e=D.useCallback(t=>{var r=n.get(t);if(r!=null){if(Is(r))return r.component;if(Rs(r))return r.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw kc.error(i),new Error(i)},[n]);return e}function pa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function xc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){pa(a,r,i,l,s,"next",o)}function s(o){pa(a,r,i,l,s,"throw",o)}l(void 0)})}}function jl(n,e,t){var r=zt(),i=_l(),a=D.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=xc(function*(){var o=yield n();return jn.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function ma(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ga(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ma(Object(t),!0).forEach(function(r){_c(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ma(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function _c(n,e,t){return e=jc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jc(n){var e=Vc(n,"string");return typeof e=="symbol"?e:String(e)}function Vc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Yn=D.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=jl(r,t,i);return f.jsx(Gt,ga(ga({ref:e},n),a))});Yn.displayName="GridPanelPlugin";const $c=Yn;function ba(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Hc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ba(a,r,i,l,s,"next",o)}function s(o){ba(a,r,i,l,s,"throw",o)}l(void 0)})}}function Vl(n){var e=zt(),t=vs(zr),[r,i]=D.useState(),{fetch:a}=n;return D.useEffect(()=>{var l=!1;function s(){return o.apply(this,arguments)}function o(){return o=Hc(function*(){var u=yield a(),d=yield jn.makeModel(e,u);l||i(d)}),o.apply(this,arguments)}return s(),()=>{l=!0}},[e,a]),r?f.jsx(_n,{model:r,settings:t}):null}var Gc={name:"IrisGridPanel",title:"Table",type:wt.WIDGET_PLUGIN,component:Vl,panelComponent:Yn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:io};const Uc=Gc;function Ca(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function pt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ca(Object(t),!0).forEach(function(r){$l(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ca(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $l(n,e,t){return e=Bc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bc(n){var e=Wc(n,"string");return typeof e=="symbol"?e:String(e)}function Wc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Hl(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Sa(n){var e=n;return Hl(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function ya(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var rr=Z.module("LinkerUtils");class tn{static getLinkType(e,t,r){var i;if((e==null?void 0:e.panelId)==null||(t==null?void 0:t.panelId)==null||e.panelId===t.panelId||r!=null&&r!==e.panelId&&r!==t.panelId)return rr.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return rr.error("PanelComponent should not be null",e,t),"invalid";var a=(i=tn.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return rr.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||S.isCompatibleType(l,s);if(!o)return rr.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case $.getComponentName(br):return"chartLink";case $.getComponentName(Gt):return"tableLink";case $.getComponentName(St):return"filterSource"}return rr.debug2("Incompatible target panel component",t.panelComponent),"invalid"}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===r&&s===i})}static cloneLinksForPanel(e,t,r){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(pt(pt({},a),{},{id:We(),start:pt(pt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(pt(pt({},a),{},{id:We(),end:pt(pt({},a.end),{},{panelId:r})}))}),i}}$l(tn,"ALLOWED_LINKS",new Map([[$.getComponentName(Gt),[$.getComponentName(Gt),$.getComponentName(br),$.getComponentName(St)]]]));const Nt=tn;function Gl(n,e,t){return e=zc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zc(n){var e=qc(n,"string");return typeof e=="symbol"?e:String(e)}function qc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Kc=Z.module("LinkerLink"),Ea=.015,wa=1.5,Ul=12,Bl=12,Ta=2,Fr=Math.sqrt((Bl*.5)**2+Ul**2),Pa=Math.asin(Bl*.5/Ul),Na=15,mt=Math.PI*.5;class Vt extends D.Component{static makeCirclePath(e,t,r){return"M ".concat(e," ").concat(t," m -").concat(r,",0 a ").concat(r,",").concat(r," 0 1,0 ").concat(r*2,",0 a ").concat(r,",").concat(r," 0 1,0 -").concat(r*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(S.isNumberType(e)||S.isCharType(e))return _o(t);if(S.isTextType(e))return xo(t);if(S.isDateType(e))return jo(t);if(S.isBooleanType(e)){if(t===N.eq)return"is equal to";if(t===N.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return Kc.warn(r),""}}constructor(e){super(e),Gl(this,"getOperators",B((t,r)=>{var{onOperatorChanged:i}=this.props,a=S.getFilterTypes(r);return S.isBooleanType(r)&&(a=[N.eq,N.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:Vt.getLabelForLinkFilter(r,l),icon:f.jsx("b",{children:o}),action:()=>i(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:r,onDelete:i}=this.props;e.altKey?i(t):r(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:r,x1:i,y1:a,x2:l,y2:s,id:o,startColumnType:u,type:d}=this.props,{isHovering:h}=this.state,c=Math.sqrt((i-l)**2+(a-s)**2),v=Math.atan2(s-a,l-i),g=Math.sin(v),p=Math.cos(v)+2,m=window.innerWidth,b=window.innerHeight,y=0,C=0,E=Math.max(y,Math.min(i+(l-i)/2+g*(c*Ea)**wa,m)),w=Math.max(C,Math.min(a+(s-a)/2+p*(c*Ea)**wa,b)),T="M ".concat(i," ").concat(a," Q ").concat(E," ").concat(w," ").concat(l," ").concat(s),F="M ".concat(y," ").concat(C," L ").concat(y," ").concat(b," L ").concat(m," ").concat(b," L ").concat(m," ").concat(C,` z
10
+ This note can be edited using **markdown** for styling.`);Wn(Dt,"getClosedMarkdowns",B(n=>n.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));const Lr=Dt;function dr(n,e,t){return e=Yh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yh(n){var e=Xh(n,"string");return typeof e=="symbol"?e:String(e)}function Xh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Qh=D.lazy(()=>Hr(()=>import("./MarkdownEditor-d3a2b4a1.js"),["./MarkdownEditor-d3a2b4a1.js","./vendor-2f94bc96.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./LogPanel-891b65b4.js","./index-78e71855.js","./index-11271fba.css","./LogPanel-68a471d6.css"],import.meta.url)),Or=Z.module("MarkdownPanel");class zn extends D.Component{constructor(e){super(e),dr(this,"markdownEditor",void 0),dr(this,"editor",void 0),dr(this,"getClosedMarkdowns",B(Lr.getClosedMarkdowns)),this.handleContainerDoubleClick=this.handleContainerDoubleClick.bind(this),this.handleCreateMarkdown=this.handleCreateMarkdown.bind(this),this.handleDeleteMarkdown=this.handleDeleteMarkdown.bind(this),this.handleOpenMarkdown=this.handleOpenMarkdown.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleEditorResize=this.handleEditorResize.bind(this);var{panelState:t}=e,r=null;t!=null&&t.content!=null&&(t.content!==""?{content:r}=t:r=Lr.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){R(this.markdownEditor);var{container:t}=this.markdownEditor;if(this.editor&&t!=null){var r,i,a=t.getBoundingClientRect().top,l=t.scrollTop,s=t.scrollHeight,o=(r=(i=this.editor.getModel())===null||i===void 0?void 0:i.getLineCount())!==null&&r!==void 0?r:0,u=Math.round((l+e-a)/s*o);u>o&&(u=o),this.editor.revealLine(u),this.editor.setPosition({lineNumber:u,column:1}),this.editor.focus()}}handleContainerDoubleClick(e){var{isEditing:t}=this.state,r=e.clientY;t||this.setState({isEditing:!0},()=>{this.setEditorPosition(r)})}handleEditorInitialized(e){Or.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Or.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Or.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=$.getComponentConfigFromContainer(t);r.emit(Oe.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Oe.DELETE,e)}handleEditorBlur(e){var t;Or.debug("markdown content changed, saving...");var{isEditing:r}=this.state;if(!(!r||this.markdownEditor!=null&&this.markdownEditor.container!=null&&this.markdownEditor.container.contains(e.relatedTarget))){var i=(t=this.editor)===null||t===void 0?void 0:t.getValue();this.setState({content:i,isEditing:!1,panelState:{content:i}})}}handleEditorResize(){var{isEditing:e}=this.state;e&&this.editor&&this.editor.layout()}render(){var{glContainer:e,glEventHub:t,closedPanels:r}=this.props,{isEditing:i,isStartPageShown:a,content:l}=this.state,s=this.getClosedMarkdowns(r);return f.jsx(Wt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?f.jsx(zh,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):f.jsx(Ml,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:f.jsx(D.Suspense,{fallback:f.jsx(Kt,{}),children:f.jsx(Qh,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??Lr.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}dr(zn,"defaultProps",{panelState:null});dr(zn,"COMPONENT","MarkdownPanel");var Zh=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:Es(n,t)}},Jh=yt(Zh,null,null,{forwardRef:!0})(zn);const sr=Jh;function Zi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Ji(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Zi(a,r,i,l,s,"next",o)}function s(o){Zi(a,r,i,l,s,"throw",o)}l(void 0)})}}function ea(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ve(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ea(Object(t),!0).forEach(function(r){Fe(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ea(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Fe(n,e,t){return e=ec(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ec(n){var e=tc(n,"string");return typeof e=="symbol"?e:String(e)}function tc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var rc=D.lazy(()=>Hr(()=>import("./MarkdownNotebook-9c342756.js"),["./MarkdownNotebook-9c342756.js","./vendor-2f94bc96.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-78e71855.js","./index-11271fba.css","./LogPanel-891b65b4.js","./LogPanel-68a471d6.css","./MarkdownNotebook-9207e775.css"],import.meta.url)),J=Z.module("NotebookPanel"),ta=400;class Pe extends D.Component{static handleError(e){xe.isCanceled(e)||J.error(e)}static unsavedNotebookCount(){return document.querySelectorAll(".".concat(Pe.UNSAVED_INDICATOR_CLASS_NAME,".").concat(Pe.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),Fe(this,"pending",void 0),Fe(this,"debouncedSavePanelState",void 0),Fe(this,"debouncedLoad",void 0),Fe(this,"notebook",void 0),Fe(this,"tabTitleElement",void 0),Fe(this,"tabInitOnce",void 0),Fe(this,"editor",void 0),Fe(this,"getSettings",B((c,v)=>Ve(Ve({},c),{},{minimap:{enabled:v}}))),Fe(this,"getOverflowActions",B((c,v)=>[{title:"Find",icon:eo,action:this.handleFind,group:Ye.groups.high,shortcut:ut.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:Qa,action:this.handleCopy,group:Ye.groups.medium,order:20},{title:"Rename File",icon:to,action:this.handleShowRename,group:Ye.groups.medium,order:30},{title:"Delete File",icon:qr,action:this.handleDelete,group:Ye.groups.medium,order:40},{title:"Show Minimap",icon:c?oi:void 0,action:this.handleMinimapChange,group:Ye.groups.low,shortcut:ut.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?oi:void 0,action:this.handleWordWrapChange,group:Ye.groups.low,shortcut:ut.NOTEBOOK.WORDWRAP,order:30}])),this.handleCloseCancel=this.handleCloseCancel.bind(this),this.handleCloseDiscard=this.handleCloseDiscard.bind(this),this.handleCloseSave=this.handleCloseSave.bind(this),this.handleCopy=this.handleCopy.bind(this),this.handleDelete=this.handleDelete.bind(this),this.handleDeleteConfirm=this.handleDeleteConfirm.bind(this),this.handleDeleteCancel=this.handleDeleteCancel.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleEditorChange=this.handleEditorChange.bind(this),this.handleFind=this.handleFind.bind(this),this.handleMinimapChange=this.handleMinimapChange.bind(this),this.handleWordWrapChange=this.handleWordWrapChange.bind(this),this.handleLinkClick=this.handleLinkClick.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.handleRenameFile=this.handleRenameFile.bind(this),this.handleResize=this.handleResize.bind(this),this.handleRunCommand=this.handleRunCommand.bind(this),this.handleRunAll=this.handleRunAll.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.handleSave=this.handleSave.bind(this),this.handleSaveAsCancel=this.handleSaveAsCancel.bind(this),this.handleSaveAsSubmit=this.handleSaveAsSubmit.bind(this),this.handleSaveError=this.handleSaveError.bind(this),this.handleSaveSuccess=this.handleSaveSuccess.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleShowRename=this.handleShowRename.bind(this),this.handleTab=this.handleTab.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabClick=this.handleTabClick.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleTransformLinkUri=this.handleTransformLinkUri.bind(this),this.handleOverwrite=this.handleOverwrite.bind(this),this.handlePreviewPromotion=this.handlePreviewPromotion.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new Dn,this.debouncedSavePanelState=ht(this.savePanelState.bind(this),ta),this.debouncedLoad=ht(this.load.bind(this),ta),this.notebook=null,this.tabTitleElement=null,this.tabInitOnce=!1;var{isDashboardActive:t,session:r,sessionLanguage:i,panelState:a}=e,l={value:"",language:"",wordWrap:"off"},s=null,{isPreview:o}=e;a!=null&&({fileMetadata:s=s,isPreview:o=o,settings:l=l}=a);var u=s!=null&&$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:r,sessionLanguage:i,panelState:{fileMetadata:s,settings:l},showCloseModal:!1,showDeleteModal:!1,showSaveAsModal:!1,scriptCode:""},J.debug("constructor",e,this.state)}componentDidMount(){var{glContainer:e,glEventHub:t}=this.props,{tab:r}=e;r!=null&&this.initTab(r),this.initNotebookContent(),t.on(oe.RENAME_FILE,this.handleRenameFile),t.on(Oe.DROPPED,this.handlePanelDropped),e.on(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{defaultNotebookSettings:l}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.defaultNotebookSettings.isMinimapEnabled&&this.updateEditorMinimap()}componentWillUnmount(){this.debouncedSavePanelState.flush(),this.pending.cancel();var{glEventHub:e,glContainer:t}=this.props,{fileMetadata:r,isPreview:i}=this.state;e.off(oe.RENAME_FILE,this.handleRenameFile),e.off(Oe.DROPPED,this.handlePanelDropped),t.off(oe.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(oe.UNREGISTER_FILE,r,i)}initTab(e){this.tabInitOnce||(this.tabInitOnce=!0,this.initTabCloseOverride()),this.initTabClasses(e)}initTabCloseOverride(){var{glContainer:e}=this.props;e.beforeClose(t=>{if((t==null?void 0:t.force)===!0)return!0;var{changeCount:r,savedChangeCount:i}=this.state;return r!==i?(this.setState({showCloseModal:!0}),!1):!0})}initTabClasses(e){var t=e.element.get(0);R(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r==null||r.classList.add("notebook-title"),this.setPreviewStatus()}getNotebookValue(){var{changeCount:e,savedChangeCount:t,settings:r}=this.state,{value:i}=r;if(e!==t&&this.notebook){var a=this.notebook.getValue();return a??i}return i}initNotebookContent(){var{fileMetadata:e,settings:t,isPreview:r}=this.state;if(e&&e.id){J.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){J.debug("Use content passed in the settings prop"),this.handleLoadSuccess();return}this.handleLoadError(new Error("Missing file metadata"))}closeFileTabById(e){var{glEventHub:t}=this.props;t.emit(oe.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(oe.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(oe.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;R(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;J.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=Ve(Ve({},t),{},{language:(l=Pe.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){J.debug("saveContent",e,t),this.updateSavedChangeCount();var{fileStorage:r}=this.props;this.pending.add(r.saveFile({filename:e,content:t,basename:e})).then(this.handleSaveSuccess).catch(this.handleSaveError)}updateSavedChangeCount(){this.setState(e=>{var{changeCount:t}=e;return{savedChangeCount:t}})}setPreviewStatus(){if(this.tabTitleElement){var{isPreview:e}=this.state;J.debug("setPreviewStatus",this.tabTitleElement,e),e?this.tabTitleElement.classList.add("is-preview"):this.tabTitleElement.classList.remove("is-preview")}}handlePreviewPromotion(){this.removePreviewStatus()}savePanelState(){this.setState(e=>{var{changeCount:t,savedChangeCount:r,fileMetadata:i,isPreview:a,settings:l}=e,s=this.getNotebookValue(),o=t!==r?s:void 0,u=Ve(Ve({},l),{},{value:s}),d=Ve(Ve({},l),{},{value:o}),h={settings:d,fileMetadata:i,isPreview:a};return J.debug("Saving panel state",h),{settings:u,panelState:h}})}handleCloseDiscard(){this.setState({showCloseModal:!1});var{glContainer:e}=this.props;e.close({force:!0})}handleCloseSave(){if(this.setState({showCloseModal:!1}),this.save()){var{glContainer:e}=this.props;e.close({force:!0})}}handleCloseCancel(){this.setState({showCloseModal:!1})}handleOverwrite(e){var{glEventHub:t}=this.props;t.emit(oe.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return Ji(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;R(a);var{language:s}=l,{itemName:o}=a,u=yield $e.getUniqueCopyFileName(t,o);J.debug("handleCopy",a,o,u),yield t.copyFile(o,u);var d={id:u,itemName:u},h={value:null,language:s};r.emit(oe.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){J.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return Ji(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;J.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(oe.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):r.close({force:!0}))})()}handleDeleteCancel(){this.setState({showDeleteModal:!1})}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){J.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:r-1,savedChangeCount:i}:!l&&r<i?{changeCount:r+1,savedChangeCount:0}:{changeCount:r+1,savedChangeCount:i}}),this.debouncedSavePanelState()}handleFind(){this.notebook&&this.notebook.toggleFind()}updateEditorMinimap(){if(this.editor){var{defaultNotebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{defaultNotebookSettings:t,updateSettings:r}=this.props,i={defaultNotebookSettings:{isMinimapEnabled:!((e=t.isMinimapEnabled)!==null&&e!==void 0&&e)}};r(i)}updateEditorWordWrap(){if(this.editor){var{settings:e}=this.state,{wordWrap:t}=e;this.editor.updateOptions({wordWrap:t})}}handleWordWrapChange(){this.editor&&this.setState(e=>{var{settings:t}=e,r=t.wordWrap==="on"?"off":"on";return{settings:Ve(Ve({},t),{},{wordWrap:r})}})}handleLinkClick(e){var{notebooksUrl:t,session:r,sessionLanguage:i}=this.props,{href:a}=e.currentTarget;if(!(!a||!a.startsWith(t))){e.stopPropagation(),e.preventDefault();var l="/".concat(a.substring(t.length)).replace(/%20/g," ");if(l==="/"){J.debug("Ignoring invalid notebook link",l);return}J.debug("Notebook link clicked, opening",l);var{glEventHub:s}=this.props,o={value:null,language:i},u={id:l,itemName:l};s.emit(oe.SELECT_NOTEBOOK,r,i,o,u)}}handleLoadSuccess(){this.setState({error:void 0,isLoaded:!0,isLoading:!1})}handleLoadError(e){var t=e;xe.isCanceled(t)||(xe.isTimedOut(t)&&(t=new Error("File not found.")),J.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){J.debug("handleSave"),this.save()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=Pe.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(l=>{var{fileMetadata:s}=l,o=Ve(Ve({},l.settings),{},{language:a});return J.debug("handleSaveSuccess",i,s,o),s&&$e.hasPath(s.itemName)&&s.itemName!==i.itemName&&(J.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Pe.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){xe.isCanceled(e)||(this.setState({savedChangeCount:0}),J.error(e))}handleSaveAsCancel(){this.setState({showSaveAsModal:!1})}handleSaveAsSubmit(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r&&this.handleOverwrite(e),J.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)}}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){l.close();return}i&&i.id===e&&(this.setState({fileMetadata:{id:t,itemName:t}}),this.debouncedSavePanelState())}handleResize(){var e;(e=this.notebook)===null||e===void 0||e.updateDimensions()}handleRunCommand(e){this.runCommand(e)}handleRunAll(){var e;if(!this.notebook){J.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){J.error("Editor is not initialized.");return}this.runCommand(this.notebook.getSelectedCommand())}handleSessionOpened(e,t){var{language:r}=t;this.setState({session:e,sessionLanguage:r})}handleSessionClosed(){this.setState({session:void 0,sessionLanguage:void 0})}handleShow(){var e;J.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){J.debug("NotebookPanel tab event",e),this.initTab(e)}handleTabFocus(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];J.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){J.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){J.debug("handle NotebookPanel tab click"),this.focus(),e.detail===2&&this.removePreviewStatus()}handleTransformLinkUri(e){var{notebooksUrl:t}=this.props,{fileMetadata:r}=this.state;if(e.endsWith("/"))return e;if(e.startsWith("/"))return"".concat(t).concat(e.substring(1));var i=r==null?void 0:r.itemName;if(i===void 0)return e;i.charAt(0)==="/"&&(i=i.substring(1));var a=new URL(i,t);return new URL(e,a).href}focus(){requestAnimationFrame(()=>{this.notebook&&this.notebook.focus()})}createNotebook(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{glEventHub:i}=this.props,{session:a,sessionLanguage:l,settings:s}=this.state,o=Ve(Ve({},s),{},{language:t,value:r}),u={id:null,itemName:e};J.debug("handleCreateNotebook",a,l,o,u),i.emit(oe.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){J.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(xr.SEND_COMMAND,e,!1,!0)}removePreviewStatus(){this.setState(e=>{var{isPreview:t}=e;if(t){var{fileMetadata:r}=this.state;return r&&this.registerFileMetadata(r,!1),{isPreview:!1}}return null})}getDropdownOverflowActions(){var e,t,{defaultNotebookSettings:r}=this.props,{settings:i}=this.state;return this.getOverflowActions((e=r.isMinimapEnabled)!==null&&e!==void 0?e:!1,this.getSettings(i,(t=r.isMinimapEnabled)!==null&&t!==void 0?t:!1).wordWrap==="on")}render(){var e,t,r,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,defaultNotebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:p,fileMetadata:m,session:b,sessionLanguage:y,settings:C,showCloseModal:E,showDeleteModal:w,showSaveAsModal:T}=this.state,F=c&&!a.isHidden&&!p,O=(e=m==null?void 0:m.itemName)!==null&&e!==void 0?e:Pe.DEFAULT_NAME,P=O.endsWith(".md"),M=(m==null?void 0:m.id)!=null,k=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),L=b!=null,j=y===k.language,H=!v||!L||!j,Y=!v,te=[{action:this.handleSave,shortcut:pn.SAVE},{action:this.handleMinimapChange,shortcut:ut.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ut.NOTEBOOK.WORDWRAP}],re=Pn.getDisabledRunTooltip(L,j,"Notebook extension","Run"),ae=Pn.getDisabledRunTooltip(L,j,"Notebook extension","Run Selected"),le=[{title:M?"Rename":"Save As…",order:10,group:Ye.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:Ye.groups.high,order:20}],pe=l==null?void 0:l.element.find(".lm_title_before").get(0);return f.jsxs(f.Fragment,{children:[pe!=null&&cs.createPortal(f.jsx("span",{className:Re(Pe.UNSAVED_INDICATOR_CLASS_NAME,{[Pe.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),pe),f.jsxs(Wt,{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:le,renderTabTooltip:()=>O,children:[!P&&f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"notebook-toolbar",children:[f.jsxs("span",{children:[f.jsx(X,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:H,icon:f.jsx(Ie,{icon:Qs,transform:"grow-4"}),tooltip:"Run ".concat(ut.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),re!=null&&f.jsx(mn,{children:re})]}),f.jsxs("span",{children:[f.jsx(X,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:H,icon:f.jsx(Ie,{icon:Zs,transform:"grow-4"}),tooltip:"Run Selected ".concat(ut.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),ae!=null&&f.jsx(mn,{children:ae})]}),f.jsx(X,{kind:"ghost",className:"mr-auto",disabled:Y,onClick:this.handleSave,icon:Za,tooltip:"Save ".concat(pn.SAVE.getDisplayText()),"aria-label":"Save"}),f.jsx(X,{kind:"ghost",className:"btn-overflow",disabled:Y,icon:Js,tooltip:"More Actions...",onClick:()=>{},children:f.jsx(Ba,{actions:this.getDropdownOverflowActions,popperOptions:Pe.POPPER_OPTIONS})})]}),f.jsx(nd,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:y,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:k,focusOnMount:F,ref:I=>{this.notebook=I}})]}),P&&f.jsx(D.Suspense,{fallback:f.jsx(Kt,{}),children:f.jsx(rc,{content:(r=k.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),f.jsx(Ts,{isOpen:T,type:"file",defaultValue:O,title:M?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),f.jsx(ii,{isOpen:w,headerText:'Are you sure you want to delete "'.concat(O,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),f.jsx(ii,{isOpen:E,headerText:"Do you want to save the changes you made to ".concat(O,"?"),bodyText:"Your changes will be lost if you don't save them.",onCancel:this.handleCloseCancel,onDiscard:this.handleCloseDiscard,onConfirm:this.handleCloseSave,discardButtonText:"Discard Changes",confirmButtonText:"Save"}),f.jsx(Ye,{actions:te})]})]})}}Fe(Pe,"COMPONENT","NotebookPanel");Fe(Pe,"POPPER_OPTIONS",{placement:"bottom-end"});Fe(Pe,"DEFAULT_NAME","Untitled");Fe(Pe,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");Fe(Pe,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");Fe(Pe,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,defaultNotebookSettings:{isMinimapEnabled:!0}});var nc=(n,e)=>{var t=Ps(n),r=Ns(n),i=Wa(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,defaultNotebookSettings:r,session:a,sessionLanguage:s}},ic=yt(nc,{updateSettings:ws},null,{forwardRef:!0})(Pe);const Ct=ic;function Rl(n){var{onClick:e}=n,t=D.useRef(null),r=D.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return f.jsxs(X,{ref:t,kind:"primary",className:"btn-pandas",onClick:r,tooltip:"Click to refresh pandas dataframe, updates do not occur automatically.",children:["pandas dataframe",f.jsxs("span",{children:[f.jsx(Ie,{icon:el,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function ra(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function na(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ra(Object(t),!0).forEach(function(r){en(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ra(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function en(n,e,t){return e=ac(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ac(n){var e=lc(n,"string");return typeof e=="symbol"?e:String(e)}function lc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qn extends D.Component{constructor(e){super(e),en(this,"irisGridRef",void 0),this.irisGridRef=Le.createRef(),this.handleReload=this.handleReload.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePanelStateUpdate=this.handlePanelStateUpdate.bind(this);var{panelState:t}=e;this.state={shouldFocusGrid:!1,panelState:t}}handleReload(){var e;(e=this.irisGridRef.current)===null||e===void 0||e.initModel(),this.setState({shouldFocusGrid:!0})}handleGridStateChange(){var e,t,r,{shouldFocusGrid:i}=this.state;i&&(e=this.irisGridRef.current)!==null&&e!==void 0&&(t=e.irisGrid)!==null&&t!==void 0&&(r=t.current)!==null&&r!==void 0&&r.grid&&(this.irisGridRef.current.irisGrid.current.grid.focus(),this.setState({shouldFocusGrid:!1}))}handlePanelStateUpdate(e){this.setState({panelState:e})}render(){return f.jsx(Gt,na(na({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:f.jsx(Rl,{onClick:this.handleReload})}))}}en(qn,"defaultProps",{panelState:null});en(qn,"COMPONENT","PandasPanel");const Ll=qn;function ia(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function aa(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ia(a,r,i,l,s,"next",o)}function s(o){ia(a,r,i,l,s,"throw",o)}l(void 0)})}}function la(n,e,t){return e=sc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sc(n){var e=oc(n,"string");return typeof e=="symbol"?e:String(e)}function oc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class uc{constructor(e){la(this,"items",void 0),la(this,"onUpdateCallback",void 0),this.items=e}setSearch(e){}setExpanded(e,t){if(e.charAt(e.length-1)==="/")for(var r=0;r<this.items.length;r+=1){var i=this.items[r];ai(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];ai(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return aa(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return aa(function*(){var r,i=yield t.getViewportData();(r=t.onUpdateCallback)===null||r===void 0||r.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}const dc=uc;function sa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function er(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){sa(a,r,i,l,s,"next",o)}function s(o){sa(a,r,i,l,s,"throw",o)}l(void 0)})}}function hc(n,e,t){return e=cc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cc(n){var e=vc(n,"string");return typeof e=="symbol"?e:String(e)}function vc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class fc{constructor(e){hc(this,"items",void 0),this.items=e}getTable(){var e=this;return er(function*(){return new dc(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return er(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return er(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return er(function*(){for(var i=0;i<r.items.length;i+=1)if(r.items[i].filename===e){r.items[i].filename=t,r.items[i].basename=$e.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return er(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new Ds;if(r.length>1)throw new Error("More than one matching file found");var i=r[0];return{filename:i.filename,basename:i.basename,id:i.filename,type:i.type}})()}createDirectory(e){throw new Error("Method not implemented.")}}const pc=fc;function oa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $r(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?oa(Object(t),!0).forEach(function(r){mc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):oa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function mc(n,e,t){return e=gc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gc(n){var e=bc(n,"string");return typeof e=="symbol"?e:String(e)}function bc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ua(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Cc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ua(a,r,i,l,s,"next",o)}function s(o){ua(a,r,i,l,s,"throw",o)}l(void 0)})}}function Sc(n,e,t,r,i){return Nn.apply(this,arguments)}function Nn(){return Nn=Cc(function*(n,e,t,r,i){var a,l,s,o;if(_t(t)?(a=t.settings,l=t.table,s=void 0,o=t.tableSettings):(a={},l="",s=Gn(t)?t.figure:t.name,o={}),i!=null&&(i.tableSettings!=null&&(o=i.tableSettings),i.table!=null&&(l=i.table),i.figure!=null&&(s=i.figure),i.settings!=null&&(a=$r($r({},a),i.settings))),s==null&&l==null){var u=yield r();return or.makeModel(n,a,u)}if(s!=null){var d;if(t.type===n.VariableType.FIGURE){var h={name:s,type:n.VariableType.FIGURE};d=yield e(h)}else d=yield r();return or.makeModel(n,a,d)}var c={name:l,type:n.VariableType.TABLE},v=yield e(c);return new ue(n).applyTableSettings(v,o,za(ro.getState())),or.makeModelFromSettings(n,a,v)}),Nn.apply(this,arguments)}var Kn=D.forwardRef((n,e)=>{var t=zt(),r=Os(),i=Nl(n)?n.panelState:void 0,{fetch:a,metadata:l,localDashboardId:s}=n,o=D.useMemo(()=>({metadata:l,localDashboardId:s,makeModel:()=>{if(l==null)throw new Error("Metadata is required for chart panel");return Sc(t,r,l,a,i)}}),[l,s,t,r,a,i]);return f.jsx(br,$r($r({ref:e},n),o))});Kn.displayName="ChartPanelPlugin";const yc=Kn;function da(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Ec(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){da(a,r,i,l,s,"next",o)}function s(o){da(a,r,i,l,s,"throw",o)}l(void 0)})}}function Al(n){var e=zt(),[t,r]=D.useState(),{fetch:i}=n;return D.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=Ec(function*(){var o=yield i(),u=yield or.makeModel(e,void 0,o);a||r(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?f.jsx(ll,{model:t}):null}var wc={name:"ChartPanel",title:"Chart",type:wt.WIDGET_PLUGIN,component:Al,panelComponent:Kn,supportedTypes:"Figure",icon:no};const Tc=wc;function kl(n){qt(n);var{id:e,layout:t}=n,r=zt(),i=D.useCallback(a=>{var{metadata:l,panelId:s=We(),table:o}=a,{settings:u}=l,d=()=>or.makeModelFromSettings(r,u,o),h=Ae.titleFromSettings(u),c={type:"react-component",component:br.COMPONENT,props:{localDashboardId:e,id:s,metadata:l,makeModel:d},title:h,id:s},{root:v}=t;$.openComponent({root:v,config:c})},[r,e,t]);return ge(t.eventHub,Be.CREATE_CHART,i),null}var Pc={name:"ChartBuilderPlugin",type:wt.DASHBOARD_PLUGIN,component:kl};const Nc=Pc;function ha(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ca(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ha(Object(t),!0).forEach(function(r){Dc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ha(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Dc(n,e,t){return e=Oc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Oc(n){var e=Fc(n,"string");return typeof e=="symbol"?e:String(e)}function Fc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var me=Z.module("ConsolePlugin");function va(n){return n.notebook!==void 0}function Mc(n){qt(n)}function Ic(n){Mc(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:l}=n,s=D.useRef(0),[o,u]=D.useState(new Map),[d,h]=D.useState(new Map),c=_a(),v=D.useCallback(()=>i.getLastUsedPanelOfType(Ir),[i]),g=D.useCallback((I,A)=>{u(V=>new Map(V.set(I,A)))},[u]),p=D.useCallback(I=>{u(A=>(A.delete(I),new Map(A)))},[u]),m=D.useCallback((I,A)=>{h(V=>new Map(V.set(I,A)))},[h]),b=D.useCallback(I=>{h(A=>(A.delete(I),new Map(A)))},[h]),y=D.useCallback(function(I){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,V=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,U=I&&I.trim();if(!U)me.info("Ignoring empty code");else{var z=v();if(!z||!(z instanceof Ir.WrappedComponent)){me.error("Console panel not found");return}me.debug("Send command: ",I,A,V),z.addCommand(I,A,V)}},[v]),C=D.useCallback(I=>{c(El(e,I))},[c,e]),E=D.useCallback(I=>{var{language:A}=I,V=A==="python"?"py":A,U=null;return V==null?(me.debug("No extension for language",A),U="Untitled-".concat(s.current)):U="Untitled-".concat(s.current,".").concat(V),s.current+=1,U},[]),w=D.useCallback(function(I){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:V}=I;if(V!=null&&o.has(V))return o.get(V);if(V!=null&&d.has(V))return d.get(V);if(A)return We()},[o,d]),T=D.useCallback((I,A)=>{$.renameComponent(r.root,{id:I},A)},[r.root]),F=D.useCallback((I,A)=>{me.debug("Rename file panel",I,A);var V;if(o.has(I)&&(V=o.get(I),p(I),V!=null&&g(A,V)),d.has(I)&&(V=d.get(I),b(I),V!=null&&m(A,V)),V===void 0){me.debug2("File ".concat(I," isn't open, no need to rename the tab"));return}T(V,$e.getBaseName(A))},[o,d,T,g,m,p,b]),O=D.useCallback(I=>{var A=w(I,!1);if(A==null){me.error("Could not find panel id for file metadata",I);return}$.activateTab(r.root,{id:A})},[w,r.root]),P=D.useCallback((I,A,V)=>{if(me.debug("registerFilePanel",I,A,V),A==null||A.id==null){me.debug("Ignore empty file id",A);return}var{id:U}=A;if(V){m(U,I);return}if(o.has(U)){var z=o.get(U);if(I===z){me.debug("Update tab title for file ".concat(U));var{itemName:ye}=A;F(U,ye)}else me.error("File ".concat(U," already associated with a different tab ").concat(z));return}g(U,I),d.has(U)&&b(U)},[o,d,F,g,m,b]),M=D.useCallback((I,A)=>{if(me.debug("unregisterFileTab",I,A),I==null||I.id==null){me.debug("Ignore empty file id",I);return}var{id:V}=I;if(A){b(V);return}p(V)},[p,b]),k=D.useCallback((I,A)=>{me.debug("closeFilePanel",I);var{id:V}=I,U=null,z=!1;if(o.has(V))U=o.get(V);else if(d.has(V))U=d.get(V),z=!0;else{me.debug("File ".concat(V," isn't open, ignore close event"));return}M(I,z),$.closeComponent(r.root,{id:U},A)},[r.root,o,d,M]),L=D.useCallback(I=>{var{itemName:A}=I;return $e.getBaseName(A)},[]),j=D.useCallback(I=>{var{id:A}=I;return me.debug("fileIsOpen",I,A,o),A!=null&&o.has(A)},[o]),H=D.useCallback(I=>{var{id:A}=I;return me.debug("fileIsOpenAsPreview",I,A,d),A!=null&&d.has(A)},[d]),Y=D.useCallback(I=>{if(I!=null){var A=i.getOpenedPanelById(I);A&&va(A)&&A.focus()}},[i]),te=D.useCallback(I=>{var{id:A,settings:V,fileMetadata:U,session:z,sessionLanguage:ye,isPreview:Ee=!1}=I,_e={settings:V,fileMetadata:U},qe=L(U);return{type:"react-component",component:Ct.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:A},session:z,sessionLanguage:ye,panelState:_e,isPreview:Ee,notebooksUrl:l},title:qe,id:A}},[L,e,l]),re=D.useCallback(function(I,A,V){var U=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:E(V)},z=w(U);if(j(U)&&z!=null){me.debug("File is already open, focus panel"),O(U),Y(z);return}var ye=$.getStackForComponentTypes(r.root,[Ct.COMPONENT]),Ee=te({id:z,settings:V,fileMetadata:U,session:I,sessionLanguage:A});me.debug("createNotebook",Ee,o),$.openComponentInStack(ye,Ee)},[j,Y,E,w,r.root,te,o,O]),ae=D.useCallback(function(I,A,V,U){var z=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;me.debug("selectNotebook",U,z);var ye=j(U),Ee=H(U),[_e]=[...d.values()],qe=!z,Ke=qe&&_e?_e:w(U);if(Ke==null||Ke==="")throw new Error("Unable to retrieve or create panelId for metadata",U);if(ye||Ee)O(U);else{var nn=$.getStackForComponentTypes(r.root,[Ct.COMPONENT]),an=te({id:Ke,settings:V,fileMetadata:U,session:I,sessionLanguage:A,isPreview:qe});$.openComponentInStack(nn,an)}if(Ee&&z){var Sr=U.id,ln=$.getStackForConfig(r.root,{component:Ct.COMPONENT,id:Ke}),Xt=$.getContentItemInStack(ln,{component:Ct.COMPONENT,id:Ke});Xt&&Fs(Xt)&&(Xt.container.emit(oe.PROMOTE_FROM_PREVIEW),b(Sr),g(Sr,Ke))}z&&Y(Ke)},[O,j,H,Y,w,r.root,te,d,b,g]),le=D.useCallback(function(I,A){var V=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},U=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,z=i.getLastUsedPanelOfType(Ct);z&&va(z)?V!=null&&V.value!=null&&z.notebook!=null&&z.notebook.append(V.value):U&&re(I,A,V)},[re,i]),pe=D.useCallback((I,A)=>Ms.hydrate(ca(ca({},I),{},{notebooksUrl:l}),A),[l]);return Zt(a,Ir,t),Zt(a,qa),Zt(a,Ka),Zt(a,Ya),Zt(a,Ct,pe),ge(r.eventHub,xr.SEND_COMMAND,y),ge(r.eventHub,xr.SETTINGS_CHANGED,C),ge(r.eventHub,oe.CLOSE_FILE,k),ge(r.eventHub,oe.CREATE_NOTEBOOK,re),ge(r.eventHub,oe.SELECT_NOTEBOOK,ae),ge(r.eventHub,oe.RENAME,T),ge(r.eventHub,oe.RENAME_FILE,F),ge(r.eventHub,oe.SEND_TO_NOTEBOOK,le),ge(r.eventHub,oe.REGISTER_FILE,P),ge(r.eventHub,oe.UNREGISTER_FILE,M),null}var tr=Z.module("FilterPlugin");function fa(n,e){return n.concat(e)}function xl(n){qt(n);var{id:e,layout:t,registerComponent:r}=n,i=_a(),[a]=D.useState(()=>new Map),[l]=D.useState(()=>new Map),[s]=D.useState(()=>new Map),o=D.useCallback(()=>{var m=Array.from(a.values()).reduce(fa,[]).sort((C,E)=>{var w=Xe.toLower(C.name),T=Xe.toLower(E.name);if(w!==T)return w>T?1:-1;var F=Xe.toLower(C.type),O=Xe.toLower(E.type);return F!==O?F>O?1:-1:0}).reduce((C,E)=>((C.length===0||Xe.toLower(C[C.length-1].name)!==Xe.toLower(E.name)||Xe.toLower(C[C.length-1].type)!==Xe.toLower(E.type))&&C.push(E),C),[]),b=Array.from(l.values()).reduce(fa,[]).sort((C,E)=>C.timestamp-E.timestamp),y=new Map(s);tr.debug("sendUpdate",{columns:m,filters:b,tableMap:y}),i(Et(e,{columns:m,filters:b,tableMap:y}))},[i,e,a,l,s]),u=D.useCallback((m,b)=>{tr.debug2("handleColumnsChanged",m,b),a.set(m,[].concat(b)),o()},[a,o]),d=D.useCallback((m,b)=>{tr.debug2("handleFiltersChanged",m,b),l.set(m,[].concat(b)),o()},[l,o]),h=D.useCallback((m,b)=>{tr.debug2("handleTableChanged",m,b),s.set($.getIdFromPanel(m),b),o()},[s,o]),c=D.useCallback(m=>{tr.debug2("handlePanelUnmount",m),a.delete(m),l.delete(m),s.delete($.getIdFromPanel(m)),o()},[a,l,s,o]),v=D.useCallback(m=>{var{title:b="DropdownFilter",metadata:y={},panelState:C=null,id:E=We(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=null}=m,O={type:"react-component",component:St.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:P}=t;$.openComponent({root:P,config:O,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]),g=D.useCallback(m=>{var{title:b="InputFilter",metadata:y={},panelState:C=null,id:E=We(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=void 0}=m,O={type:"react-component",component:jt.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:P}=t;$.openComponent({root:P,config:O,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]),p=D.useCallback(m=>{var{title:b="FilterSets",metadata:y={},panelState:C=null,id:E=We(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=null}=m,O={type:"react-component",component:Rr.COMPONENT,props:{id:E,metadata:y,panelState:C,localDashboardId:e},title:b,id:E},{root:P}=t;$.openComponent({root:P,config:O,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]);return D.useEffect(function(){var b=[r(St.COMPONENT,St),r(jt.COMPONENT,jt),r(Rr.COMPONENT,Rr)];return()=>{b.forEach(y=>y())}},[r]),ge(t.eventHub,Se.COLUMNS_CHANGED,u),ge(t.eventHub,Se.FILTERS_CHANGED,d),ge(t.eventHub,Se.TABLE_CHANGED,h),ge(t.eventHub,Se.OPEN_DROPDOWN,v),ge(t.eventHub,Se.OPEN_INPUT,g),ge(t.eventHub,Se.OPEN_FILTER_SET_MANAGER,p),ge(t.eventHub,Oe.UNMOUNT,c),null}var Rc={name:"FilterPlugin",type:wt.DASHBOARD_PLUGIN,component:xl};const Lc=Rc;var Ac=Z.module("@deephaven/app-utils/useTablePlugin");function _l(){var n=Xa(),e=D.useCallback(t=>{var r=n.get(t);if(r!=null){if(Is(r))return r.component;if(Rs(r))return r.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Ac.error(i),new Error(i)},[n]);return e}function pa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function kc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){pa(a,r,i,l,s,"next",o)}function s(o){pa(a,r,i,l,s,"throw",o)}l(void 0)})}}function jl(n,e,t){var r=zt(),i=_l(),a=D.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=kc(function*(){var o=yield n();return jn.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function ma(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ga(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ma(Object(t),!0).forEach(function(r){xc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ma(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function xc(n,e,t){return e=_c(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _c(n){var e=jc(n,"string");return typeof e=="symbol"?e:String(e)}function jc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Yn=D.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=jl(r,t,i);return f.jsx(Gt,ga(ga({ref:e},n),a))});Yn.displayName="GridPanelPlugin";const Vc=Yn;function ba(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function $c(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ba(a,r,i,l,s,"next",o)}function s(o){ba(a,r,i,l,s,"throw",o)}l(void 0)})}}function Vl(n){var e=zt(),t=vs(zr),[r,i]=D.useState(),{fetch:a}=n;return D.useEffect(()=>{var l=!1;function s(){return o.apply(this,arguments)}function o(){return o=$c(function*(){var u=yield a(),d=yield jn.makeModel(e,u);l||i(d)}),o.apply(this,arguments)}return s(),()=>{l=!0}},[e,a]),r?f.jsx(_n,{model:r,settings:t}):null}var Hc={name:"IrisGridPanel",title:"Table",type:wt.WIDGET_PLUGIN,component:Vl,panelComponent:Yn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:io};const Gc=Hc;function Ca(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function pt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ca(Object(t),!0).forEach(function(r){$l(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ca(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $l(n,e,t){return e=Uc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uc(n){var e=Bc(n,"string");return typeof e=="symbol"?e:String(e)}function Bc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Hl(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Sa(n){var e=n;return Hl(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function ya(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var rr=Z.module("LinkerUtils");class tn{static getLinkType(e,t,r){var i;if((e==null?void 0:e.panelId)==null||(t==null?void 0:t.panelId)==null||e.panelId===t.panelId||r!=null&&r!==e.panelId&&r!==t.panelId)return rr.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return rr.error("PanelComponent should not be null",e,t),"invalid";var a=(i=tn.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return rr.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||S.isCompatibleType(l,s);if(!o)return rr.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case $.getComponentName(br):return"chartLink";case $.getComponentName(Gt):return"tableLink";case $.getComponentName(St):return"filterSource"}return rr.debug2("Incompatible target panel component",t.panelComponent),"invalid"}static findColumn(e,t){var{columnName:r,columnType:i}=t;return e.find(a=>{var{name:l,type:s}=a;return l===r&&s===i})}static cloneLinksForPanel(e,t,r){var i=[];return e.forEach(a=>{var l;a.start.panelId===t&&a.type!=="filterSource"?i.push(pt(pt({},a),{},{id:We(),start:pt(pt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(pt(pt({},a),{},{id:We(),end:pt(pt({},a.end),{},{panelId:r})}))}),i}}$l(tn,"ALLOWED_LINKS",new Map([[$.getComponentName(Gt),[$.getComponentName(Gt),$.getComponentName(br),$.getComponentName(St)]]]));const Nt=tn;function Gl(n,e,t){return e=Wc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wc(n){var e=zc(n,"string");return typeof e=="symbol"?e:String(e)}function zc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var qc=Z.module("LinkerLink"),Ea=.015,wa=1.5,Ul=12,Bl=12,Ta=2,Fr=Math.sqrt((Bl*.5)**2+Ul**2),Pa=Math.asin(Bl*.5/Ul),Na=15,mt=Math.PI*.5;class Vt extends D.Component{static makeCirclePath(e,t,r){return"M ".concat(e," ").concat(t," m -").concat(r,",0 a ").concat(r,",").concat(r," 0 1,0 ").concat(r*2,",0 a ").concat(r,",").concat(r," 0 1,0 -").concat(r*2,",0 z")}static getLabelForLinkFilter(e,t){try{if(S.isNumberType(e)||S.isCharType(e))return _o(t);if(S.isTextType(e))return xo(t);if(S.isDateType(e))return jo(t);if(S.isBooleanType(e)){if(t===N.eq)return"is equal to";if(t===N.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return qc.warn(r),""}}constructor(e){super(e),Gl(this,"getOperators",B((t,r)=>{var{onOperatorChanged:i}=this.props,a=S.getFilterTypes(r);return S.isBooleanType(r)&&(a=[N.eq,N.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:Vt.getLabelForLinkFilter(r,l),icon:f.jsx("b",{children:o}),action:()=>i(t,l),order:s}]})})),this.handleClick=this.handleClick.bind(this),this.handleMouseEnter=this.handleMouseEnter.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleDelete=this.handleDelete.bind(this),this.getDropdownActions=this.getDropdownActions.bind(this),this.state={isHovering:void 0}}handleClick(e){e.stopPropagation(),e.preventDefault();var{id:t,onClick:r,onDelete:i}=this.props;e.altKey?i(t):r(t)}handleMouseEnter(){this.setState({isHovering:!0})}handleMouseLeave(){this.setState({isHovering:!1})}handleDelete(){var{id:e,onDelete:t}=this.props;t(e)}getDropdownActions(){var{id:e,startColumnType:t}=this.props;return t!=null?this.getOperators(e,t):[]}render(){var{className:e,operator:t,isSelected:r,x1:i,y1:a,x2:l,y2:s,id:o,startColumnType:u,type:d}=this.props,{isHovering:h}=this.state,c=Math.sqrt((i-l)**2+(a-s)**2),v=Math.atan2(s-a,l-i),g=Math.sin(v),p=Math.cos(v)+2,m=window.innerWidth,b=window.innerHeight,y=0,C=0,E=Math.max(y,Math.min(i+(l-i)/2+g*(c*Ea)**wa,m)),w=Math.max(C,Math.min(a+(s-a)/2+p*(c*Ea)**wa,b)),T="M ".concat(i," ").concat(a," Q ").concat(E," ").concat(w," ").concat(l," ").concat(s),F="M ".concat(y," ").concat(C," L ").concat(y," ").concat(b," L ").concat(m," ").concat(b," L ").concat(m," ").concat(C,` z
11
11
  `).concat(Vt.makeCirclePath(i,a,Na),`
12
- `).concat(Vt.makeCirclePath(l,s,Na)),O="link-select-clip-".concat(o),P=Math.atan2(s-w,l-E),M=P-Pa+Math.PI,k=P+Pa+Math.PI,L=l+Math.cos(P)*Ta,j=s+Math.sin(P)*Ta,H=L+Math.cos(M)*Fr,Y=j+Math.sin(M)*Fr,te=L+Math.cos(k)*Fr,re=j+Math.sin(k)*Fr,ae="".concat(L,",").concat(j," ").concat(H,",").concat(Y," ").concat(te,",").concat(re),le=.25*i+.5*E+.25*l,pe=.25*a+.5*w+.25*s,I=E-i+(l-E),A=w-a+(s-w),V=A/I,U=20,z=U/Math.sqrt(1+V**2),ye=z*V,Ee=z*-1,_e=ye*-1;Number.isFinite(V)?V>0?(z*=-1,ye*=-1,Ee*=-1,_e*=-1,Ee-=50-10*(Math.abs(v)%mt),_e+=10*(Math.abs(v)%mt),z-=50-10*(Math.abs(v)%mt),ye+=10*(Math.abs(v)%mt)):V<0?(Ee+=10*(Math.abs(v)%mt),_e+=10*(Math.abs(v)%mt),z+=10*(Math.abs(v)%mt),ye+=10*(Math.abs(v)%mt)):(Ee=15,_e=10,z=-25,ye=10):(Ee=10,_e=5,z=10,ye=-35);var qe="";t!==void 0&&(t==="startsWith"?qe="a*":t==="endsWith"?qe="*z":qe=S.getFilterOperatorString(t));var Ke=d!=="chartLink"&&d!=="filterSource";return f.jsxs(f.Fragment,{children:[f.jsxs("svg",{className:Re(e,{hovering:h}),children:[f.jsx("clipPath",{id:O,children:f.jsx("path",{d:F,clipRule:"evenodd"})}),f.jsx("path",{className:"link-select",d:T,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(O,")"),"data-testid":"link-select"}),f.jsx("path",{className:"link-background",d:T}),f.jsx("path",{className:"link-foreground",d:T}),f.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),f.jsx("polygon",{className:"link-triangle",points:ae})]}),u!=null&&r&&f.jsxs(f.Fragment,{children:[Ke&&f.jsx(X,{kind:"primary",className:"btn-fab btn-operator",style:{top:pe+(V>=0?ye:_e),left:le+(V>=0?z:Ee)},onClick:()=>{},icon:f.jsxs("div",{className:"fa-md fa-layers",children:[f.jsx("b",{children:qe}),f.jsx(Ie,{icon:ao,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:f.jsx(Ba,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),f.jsx(X,{kind:"primary",className:"btn-fab btn-delete",style:{top:pe+(V<0?ye:_e),left:le+(V<0?z:Ee)},onClick:this.handleDelete,icon:qr,tooltip:"Delete"})]})]})}}Gl(Vt,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const Yc=Vt;function Da(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Oa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Da(Object(t),!0).forEach(function(r){Xn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Da(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xn(n,e,t){return e=Xc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xc(n){var e=Qc(n,"string");return typeof e=="symbol"?e:String(e)}function Qc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vn=Z.module("LinkerOverlayContent");class Wl extends D.Component{constructor(e){super(e),Xn(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=Le.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){vn.error("componentDidCatch",e,t)}componentWillUnmount(){window.removeEventListener("blur",this.handleBlur,!0),window.removeEventListener("mousemove",this.handleMouseMove,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("keydown",this.handleKeyDown,!0),window.removeEventListener("keyup",this.handleKeyUp,!0),window.removeEventListener("resize",this.handleResize,!0)}getPointFromLinkPoint(e){var{panelManager:t}=this.props,{panelId:r,columnName:i}=e,a=t.getOpenedPanelById(r);if(a!=null){if(!Hl(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(r));try{var l=a.getCoordinateForColumn(i);if(l!=null)return l}catch{vn.error("Could not get coordinate for column",i,a)}}var s=t.getContainerByPanelId(r);if(s==null)throw new Error("Unable to find panel container for id: ".concat(r));return $.getTabPoint(s)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(l=>l.id===e?Oa(Oa({},l),{},{operator:t}):l);i(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),r=et(e.x,0,window.innerWidth-t.width),i=et(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:r,y:i}})}}handleMouseMove(e){var{offset:t,isDragging:r}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),r&&this.dialogRef.current){var i=this.dialogRef.current.getBoundingClientRect(),a=et(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=et(window.innerHeight-(e.clientY+i.height+t.y),0,window.innerHeight-i.height);this.setState({dialog:{x:a,y:l}})}}handleMouseDown(e){e.preventDefault();var t={x:0,y:0};if(this.dialogRef.current){var r=this.dialogRef.current.getBoundingClientRect();t.x=r.right-(r.width+e.clientX),t.y=r.bottom-(r.height+e.clientY)}this.setState({isDragging:!0,offset:t})}handleMouseUp(){this.setState({isDragging:!1})}handleKeyDown(e){if(e.key==="Alt")e.preventDefault(),this.setState({mode:"delete"});else if(e.key==="Delete"||e.key==="Backspace"){var{selectedIds:t,onLinkDeleted:r}=this.props;e.preventDefault(),t.forEach(i=>r(i))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var{onCancel:e}=this.props;e()}render(){var{disabled:e,links:t,selectedIds:r,messageText:i,onLinkSelected:a,onLinkDeleted:l,onAllLinksDeleted:s,onDone:o}=this.props,{mouse:u,dialog:d,isDragging:h,mode:c}=this.state,v=t.map(g=>{try{var p,m,{id:b,type:y,isReversed:C,start:E,end:w,operator:T}=g,F=E.columnType,[O,P]=this.getPointFromLinkPoint(E),M=(p=u==null?void 0:u.x)!==null&&p!==void 0?p:O,k=(m=u==null?void 0:u.y)!==null&&m!==void 0?m:P;if(w!=null&&([M,k]=this.getPointFromLinkPoint(w)),C!=null&&C){var[L,j]=[O,P];[O,P]=[M,k],[M,k]=[L,j]}var H=Re("linker-link",{disabled:e},{"link-filter-source":y==="filterSource"},{"link-invalid":y==="invalid"},{interactive:g.end==null},{"link-is-selected":r.has(b)},{"danger-delete":c==="delete"});return{x1:O,y1:P,x2:M,y2:k,id:b,className:H,operator:T,startColumnType:F,type:y}}catch(Y){return vn.warn("Unable to get point for link",g,Y),null}}).filter(g=>g!=null);return f.jsxs("div",{className:Re("linker-overlay",{"danger-delete":c==="delete"}),children:[v.map(g=>{var{x1:p,y1:m,x2:b,y2:y,id:C,className:E,operator:w,startColumnType:T,type:F}=g;return f.jsx(Yc,{className:E,id:C,x1:p,y1:m,x2:b,y2:y,onClick:a,onDelete:l,isSelected:r.has(C),operator:w,startColumnType:T,type:F,onOperatorChanged:this.handleOperatorChanged},C)}),f.jsxs("div",{className:Re("linker-toast-dialog",{dragging:h}),ref:this.dialogRef,style:{bottom:d==null?void 0:d.y,right:d==null?void 0:d.x},"data-testid":"linker-toast-dialog",children:[f.jsx(X,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:lo,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&f.jsx(mn,{children:"Drag to reposition"})}),f.jsx("div",{className:"toast-body",children:i}),f.jsxs("div",{className:"toast-footer",children:[f.jsx(X,{kind:"secondary",onClick:s,children:"Clear All"}),f.jsx(X,{kind:"primary",onClick:o,children:"Done"})]})]}),f.jsx(Ye,{actions:[{action:this.handleEscapePressed,shortcut:pn.LINKER_CLOSE,isGlobal:!0}]})]})}}Xn(Wl,"defaultProps",{disabled:"false"});const Zc=Wl;function Fa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ma(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fa(Object(t),!0).forEach(function(r){zl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function zl(n,e,t){return e=Jc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Jc(n){var e=ev(n,"string");return typeof e=="symbol"?e:String(e)}function ev(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Te=Z.module("Linker"),tv=(n,e)=>({activeTool:On(n),dh:Ga(n),isolatedLinkerPanelId:Ur(n,e.localDashboardId),links:Ot(n,e.localDashboardId),timeZone:za(n)}),rv=yt(tv,{setActiveTool:$a,setDashboardLinks:Xr,addDashboardLinks:Cl,deleteDashboardLinks:Sl,setDashboardIsolatedLinkerPanelId:Hn,setDashboardColumnSelectionValidator:yl});class nv extends D.Component{constructor(e){super(e),zl(this,"getCachedLinks",B((t,r,i)=>{var a=[...t];return r!=null&&r.start!=null&&a.push(r),i!==void 0?a.filter(l=>{var s,o;return(l==null||(s=l.start)===null||s===void 0?void 0:s.panelId)===i||(l==null||(o=l.end)===null||o===void 0?void 0:o.panelId)===i||(l==null?void 0:l.end)==null}):a})),this.handleCancel=this.handleCancel.bind(this),this.handleDone=this.handleDone.bind(this),this.handlePanelCloned=this.handlePanelCloned.bind(this),this.handleFilterColumnSelect=this.handleFilterColumnSelect.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handlePanelClosed=this.handlePanelClosed.bind(this),this.handleLayoutStateChanged=this.handleLayoutStateChanged.bind(this),this.handleAllLinksDeleted=this.handleAllLinksDeleted.bind(this),this.handleLinkDeleted=this.handleLinkDeleted.bind(this),this.handleLinksUpdated=this.handleLinksUpdated.bind(this),this.handleChartColumnSelect=this.handleChartColumnSelect.bind(this),this.handleGridColumnSelect=this.handleGridColumnSelect.bind(this),this.handleUpdateValues=this.handleUpdateValues.bind(this),this.handleStateChange=this.handleStateChange.bind(this),this.handleExited=this.handleExited.bind(this),this.handleLinkSelected=this.handleLinkSelected.bind(this),this.handlePanelDragging=this.handlePanelDragging.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.state={linkInProgress:void 0,selectedIds:new Set,isDraggingPanel:!1}}componentDidMount(){var{layout:e}=this.props;this.startListening(e),this.updateSelectionValidators()}componentDidUpdate(e){var{activeTool:t,layout:r}=this.props;r!==e.layout&&(this.stopListening(e.layout),this.startListening(r)),t!==e.activeTool&&(this.updateSelectionValidators(),t===Je.DEFAULT&&this.reset())}componentDidCatch(e,t){Te.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(Be.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(Be.DATA_SELECTED,this.handleUpdateValues),t.on(Be.STATE_CHANGED,this.handleStateChange),t.on(jr.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(Oe.CLONED,this.handlePanelCloned),t.on(Se.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(Se.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(Oe.CLOSE,this.handlePanelClosed),t.on(Oe.CLOSED,this.handlePanelClosed),t.on(Oe.DRAGGING,this.handlePanelDragging),t.on(Oe.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(Be.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(Be.DATA_SELECTED,this.handleUpdateValues),t.off(Be.STATE_CHANGED,this.handleStateChange),t.off(jr.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(Oe.CLONED,this.handlePanelCloned),t.off(Se.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(Se.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(Oe.CLOSE,this.handlePanelClosed),t.off(Oe.CLOSED,this.handlePanelClosed),t.off(Oe.DRAGGING,this.handlePanelDragging),t.off(Oe.DROPPED,this.handlePanelDropped)}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(Je.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Je.DEFAULT)}handleChartColumnSelect(e,t){this.columnSelected(e,t,!0)}handleFilterColumnSelect(e,t){Te.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:r,localDashboardId:i,setActiveTool:a,setDashboardIsolatedLinkerPanelId:l}=this.props,s=$.getIdFromPanel(e),o=r.filter(u=>{var d,h;return((d=u.start)===null||d===void 0?void 0:d.panelId)===s||((h=u.end)===null||h===void 0?void 0:h.panelId)===s});if(!this.isOverlayShown()&&s!=null){a(Je.LINKER),l(i,s),o.length===0&&this.columnSelected(e,t,!0,s);return}this.columnSelected(e,t,!0)}handleColumnsChanged(e,t){Te.debug("handleColumnsChanged",e,t);var{links:r}=this.props,i=$.getIdFromPanel(e);if(i==null){Te.error("Invalid panelId",e);return}var a=r.filter(l=>{var{start:s,end:o}=l;return s.panelId===i&&Nt.findColumn(t,s)==null||o!=null&&o.panelId===i&&Nt.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!ya(t)){Te.debug2("Column is not filterable");return}this.columnSelected(e,t)}columnSelected(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0;if(!(i===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:a}=this.props,{linkInProgress:l}=this.state,s=$.getIdFromPanel(e);if(s!=null){var o=$.getComponentNameFromPanel(e),{name:u,type:d}=t;if(l==null||l.start==null){var h={id:We(),start:{panelId:s,panelComponent:o,columnName:u,columnType:d},type:"invalid",isReversed:r};Te.debug("starting link",h),this.setState({linkInProgress:h})}else{var{links:c}=this.props,{start:v,id:g,isReversed:p}=l,m={panelId:s,panelComponent:o,columnName:u,columnType:d},b=Nt.getLinkType(p!==void 0&&p?m:v,p!==void 0&&p?v:m,i??a);switch(b){case"invalid":Te.debug("Ignore invalid link connection",l,m);return;case"filterSource":{var y=p!==void 0&&p?v.panelId:m.panelId,C=c.filter(O=>{var{end:P}=O;return(P==null?void 0:P.panelId)===y});this.deleteLinks(C);break}case"chartLink":{var E=p===!0?v:m,w=p===!0?m:v;Te.debug("creating chartlink",{existingLinkEnd:E,start:v,end:m});var T=c.filter(O=>{var{end:P,start:M}=O;return(M==null?void 0:M.panelId)===w.panelId&&(P==null?void 0:P.panelId)===E.panelId&&(P==null?void 0:P.columnName)===E.columnName&&(P==null?void 0:P.columnType)===E.columnType});this.deleteLinks(T);break}}var F={start:p!==void 0&&p?m:v,end:p!==void 0&&p?v:m,id:g,type:b,operator:N.eq};Te.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{end:r}=e,{panelId:i,columnName:a,columnType:l}=r,s=t.getOpenedPanelById(i);s?Sa(s)?s.unsetFilterValue(a,l):Te.debug("endPanel.unsetFilterValue not implemented",s):Te.debug("endPanel no longer exists, ignoring unsetFilterValue",i)}}setPanelFilterMap(e,t){Te.debug("Set filter data for panel:",e,t);var{panelManager:r}=this.props,i=r.getOpenedPanelById(e);i?Sa(i)?i.setFilterMap(t):Te.debug("panel.setFilterMap not implemented",e,i):Te.debug("panel no longer exists, ignoring setFilterMap",e)}addLinks(e){var{addDashboardLinks:t,localDashboardId:r}=this.props;t(r,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{localDashboardId:r}=this.props;if(e.forEach(l=>this.unsetFilterValueForLink(l)),t){var{setDashboardLinks:i}=this.props;i(r,[])}else if(e.length>0){var{deleteDashboardLinks:a}=this.props;a(r,e.map(l=>{var{id:s}=l;return s}))}}handleAllLinksDeleted(){var{links:e,isolatedLinkerPanelId:t}=this.props;if(t===void 0)this.deleteLinks(e,!0);else{var r=e.filter(i=>{var a,l;return(i==null||(a=i.start)===null||a===void 0?void 0:a.panelId)===t||(i==null||(l=i.end)===null||l===void 0?void 0:l.panelId)===t});this.deleteLinks(r)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,r=t.find(i=>i.id===e);r?this.deleteLinks([r]):Te.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var r=$.getIdFromPanel(e),{dh:i,links:a,timeZone:l}=this.props,s=new Map,o=0;o<a.length;o+=1){var{start:u,end:d,operator:h}=a[o];if(u.panelId===r&&d!=null){var{panelId:c,columnName:v,columnType:g}=d,p=s.has(c)?s.get(c):new Map,m=p.has(v)===!0?p.get(v).filterList:[],{visibleIndex:b,isExpandable:y,isGrouped:C}=t[u.columnName],{value:E}=t[u.columnName],w="".concat(E);if(E===null&&y&&C&&(E=void 0),g!=null&&S.isDateType(g)){var T=new kr(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:se.FULL_DATE_FORMAT});w=T.format(E)}var F={operator:h,text:w,value:E,startColumnIndex:b};m.push(F),p.set(v,{columnType:g,filterList:m}),s.set(c,p)}}s.forEach((O,P)=>{this.setPanelFilterMap(P,O)})}handlePanelCloned(e,t){var{links:r}=this.props,i=$.getIdFromPanel(e),a=t.id;if(i!=null){var l=Nt.cloneLinksForPanel(r,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l}=i;if(a.panelId===e||(l==null?void 0:l.panelId)===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){Te.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:r}=this.props;r(t,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var{localDashboardId:e,setDashboardIsolatedLinkerPanelId:t}=this.props;t(e,void 0)}deleteLinksForPanelId(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l,id:s}=i;(a.panelId===e||(l==null?void 0:l.panelId)===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===Je.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case Je.LINKER:t(r,this.isColumnSelectionValid);break;default:t(r,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:r}=t;return r!==void 0?{linkInProgress:Ma(Ma({},r),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:r}=this.state,{isolatedLinkerPanelId:i}=this.props;if(t==null)return(r==null?void 0:r.start)!=null&&this.updateLinkInProgressType(),!1;if(!ya(t))return Te.debug2("Column is not filterable",t.description),(r==null?void 0:r.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if((r==null?void 0:r.start)==null)return!0;var{isReversed:a,start:l}=r,s=$.getIdFromPanel(e);if(s==null)return!1;var o={panelId:s,panelComponent:$.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},u=a!==void 0&&a?Nt.getLinkType(o,l,i):Nt.getLinkType(l,o,i);return this.updateLinkInProgressType(u),u!=="invalid"}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:r}=this.props,{linkInProgress:i,selectedIds:a,isDraggingPanel:l}=this.state,s=this.isOverlayShown(),o=i!=null&&i.start!=null,u=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return l?null:f.jsx(gn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:f.jsx(Zc,{disabled:o,panelManager:r,links:this.getCachedLinks(e,i,t),selectedIds:a,messageText:u,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel})})}}var iv=rv(nv);const av=iv;function ql(n){qt(n);var{id:e,layout:t,panelManager:r}=n;return f.jsx(av,{layout:t,localDashboardId:e,panelManager:r})}var lv={name:"LinkerPlugin",type:wt.DASHBOARD_PLUGIN,component:ql};const sv=lv;function Kl(n){qt(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=D.useCallback(function(){var{title:l="",metadata:s={},id:o=We(),focusElement:u=$.DEFAULT_FOCUS_SELECTOR,createNewStack:d=!1,dragEvent:h=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},c=r.getOpenedPanelConfigsOfType(sr.COMPONENT),v=c.map(y=>{var C;return(C=y.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:Lr.getNewMarkdownTitle(v),p=null,m={type:"react-component",component:sr.COMPONENT,props:{id:o,metadata:s,panelState:{content:p},localDashboardId:e},title:g,id:o},{root:b}=t;$.openComponent({root:b,config:m,focusElement:u,createNewStack:d,dragEvent:h})},[e,t,r]);return D.useEffect(function(){var s=[i(sr.COMPONENT,sr)];return()=>{s.forEach(o=>o())}},[i]),ge(t.eventHub,pl.OPEN,a),null}var ov={name:"MarkdownPlugin",type:wt.DASHBOARD_PLUGIN,component:Kl};const uv=ov;function Ia(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ra(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ia(Object(t),!0).forEach(function(r){dv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ia(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function dv(n,e,t){return e=hv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hv(n){var e=cv(n,"string");return typeof e=="symbol"?e:String(e)}function cv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Qn=D.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=jl(r,t,i);return f.jsx(Ll,Ra(Ra({ref:e},n),a))});Qn.displayName="PandasPanelPlugin";const vv=Qn;function La(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function fn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){La(a,r,i,l,s,"next",o)}function s(o){La(a,r,i,l,s,"throw",o)}l(void 0)})}}function Yl(n){var e=zt(),[t,r]=D.useState(),[i,a]=D.useState(!0),[l,s]=D.useState(!1),{fetch:o}=n,u=D.useCallback(fn(function*(){var h=yield o();return jn.makeModel(e,h)}),[e,o]),d=D.useCallback(fn(function*(){a(!0);var h=yield u();r(h),a(!1)}),[u]);return D.useEffect(()=>{var h=!1;function c(){return v.apply(this,arguments)}function v(){return v=fn(function*(){var g=yield u();h||(r(g),s(!0),a(!1))}),v.apply(this,arguments)}return c(),a(!0),()=>{h=!0}},[u]),f.jsxs(f.Fragment,{children:[f.jsx(Kt,{isLoaded:l,isLoading:i}),t&&f.jsx(_n,{model:t,children:f.jsx(Rl,{onClick:d})})]})}var fv={name:"PandasPanel",title:"Pandas",type:wt.WIDGET_PLUGIN,component:Yl,panelComponent:Qn,supportedTypes:"pandas.DataFrame",icon:so};const pv=fv;function Aa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function nr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Aa(Object(t),!0).forEach(function(r){mv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Aa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function mv(n,e,t){return e=gv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gv(n){var e=bv(n,"string");return typeof e=="symbol"?e:String(e)}function bv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cv=Z.module("WidgetLoaderPlugin");function Sv(n){var e;function t(r,i){var a,l=n.component,{metadata:s}=r,o=As(l);return f.jsx(gr,nr(nr({widgetName:(a=s==null?void 0:s.name)!==null&&a!==void 0?a:void 0,widgetType:n.title},r),{},{children:o?f.jsx(l,nr(nr({},r),{},{ref:i})):f.jsx(l,nr({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),D.forwardRef(t)}function Xl(n){var e=Xa(),t=D.useMemo(()=>{var s=new Map;return e.forEach(o=>{Ls(o)&&[o.supportedTypes].flat().forEach(u=>{if(u!=null&&u!==""){if(s.has(u)){var d;Cv.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]);qt(n);var{id:r,layout:i,registerComponent:a}=n,l=D.useCallback(s=>{var o,{dragEvent:u,panelId:d=We(),fetch:h,widget:c}=s,{type:v}=c,g=v!=null?t.get(v):null;if(g!=null){var p=(o=c.name)!==null&&o!==void 0?o:v,m={localDashboardId:r,metadata:c,fetch:h},b={type:"react-component",component:g.name,props:m,title:p,id:d},{root:y}=i;$.openComponent({root:y,config:b,dragEvent:u})}},[r,i,t]);return D.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:u}=o;return u==null?a(o.name,Sv(o)):a(o.name,u)});return()=>{s.forEach(o=>o())}},[a,t]),ge(i.eventHub,Oe.OPEN,l),null}var yv={name:"WidgetLoaderPlugin",type:wt.DASHBOARD_PLUGIN,component:Xl};const Ev=yv;function rn(n,e,t){return e=wv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wv(n){var e=Tv(n,"string");return typeof e=="symbol"?e:String(e)}function Tv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Cr{}rn(Cr,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");rn(Cr,"INPUT_FILTER","ControlType.INPUT_FILTER");rn(Cr,"MARKDOWN","ControlType.MARKDOWN");rn(Cr,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");const Pv=Cr;var Nv=W.shape({state:W.shape({panelState:W.shape({})})}),Dv=W.shape({panelId:W.string.isRequired,columnName:W.string.isRequired,columnType:W.string.isRequired}),ka=W.shape({panelId:W.string.isRequired,columnName:W.string.isRequired}),Ql=W.shape({start:ka,end:ka,id:W.string,isReversed:W.bool}),Ov=W.arrayOf(Ql),Fv=W.shape({name:W.string.isRequired,operateAs:W.string.isRequired,groups:W.arrayOf(W.string).isRequired,permissions:W.shape({canUsePanels:W.bool.isRequired,canCopy:W.bool.isRequired,canDownloadCsv:W.bool.isRequired,canLogout:W.bool.isRequired}).isRequired}),Mv=Object.freeze({LinkPoint:Dv,Link:Ql,Links:Ov,Panel:Nv,User:Fv});const Iv=Mv;var Rv=(n,e)=>n[e]===null?null:W.bool,Lv=(n,e)=>n[e]===null?null:W.string,Av=Object.freeze({nullableBoolean:Rv,nullableString:Lv});const kv=Av,tf=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:kl,ChartBuilderPluginConfig:Dc,ChartEvent:jr,ChartPanel:br,ChartPanelPlugin:Ec,ChartPluginConfig:Pc,ChartWidgetPlugin:Al,CommandHistoryPanel:qa,CommonPropTypes:kv,ConsoleEvent:xr,ConsolePanel:Ir,ConsolePlugin:Rc,ControlType:Pv,DropdownFilterPanel:St,FileExplorerPanel:Ka,FilterPlugin:xl,FilterPluginConfig:Ac,FilterSetManager:Dl,FilterSetManagerPanel:Rr,GridPanelPlugin:$c,GridPluginConfig:Uc,GridWidgetPlugin:Vl,InputFilterEvent:Se,InputFilterPanel:jt,IrisGridEvent:Be,IrisGridPanel:Gt,LinkerPlugin:ql,LinkerPluginConfig:sv,LinkerUtils:Nt,LogPanel:Ya,MarkdownEvent:pl,MarkdownPanel:sr,MarkdownPlugin:Kl,MarkdownPluginConfig:uv,MockFileStorage:mc,NotebookEvent:oe,NotebookPanel:Ct,PandasEvent:Qd,PandasPanel:Ll,PandasPanelPlugin:vv,PandasPluginConfig:pv,PandasWidgetPlugin:Yl,Panel:Wt,TabEvent:ks,ToolType:Je,UIPropTypes:Iv,WidgetLoaderPlugin:Xl,WidgetLoaderPluginConfig:Ev,WidgetPanel:gr,WidgetPanelTooltip:mr,addDashboardLinks:Cl,deleteDashboardLinks:Sl,getColumnSelectionValidatorForDashboard:Br,getColumnsForDashboard:Fn,getDashboardConnection:xs,getDashboardConsoleSettings:_s,getDashboardSessionWrapper:Wa,getFilterSetsForDashboard:Ua,getInputFiltersForDashboard:Wr,getIsolatedLinkerPanelIdForDashboard:Ur,getLinksForDashboard:Ot,getTableMapForDashboard:Gr,isChartPanelDehydratedProps:Nl,isChartPanelFigureMetadata:Gn,isChartPanelTableMetadata:_t,isGLChartPanelState:Pl,isIrisGridPanelMetadata:Fl,isLegacyIrisGridPanelMetadata:Ol,setDashboardColumnSelectionValidator:yl,setDashboardConnection:eh,setDashboardConsoleSettings:El,setDashboardFilterSets:wl,setDashboardIsolatedLinkerPanelId:Hn,setDashboardLinks:Xr,setDashboardSessionWrapper:th,useLoadTablePlugin:_l},Symbol.toStringTag,{value:"Module"}));export{ue as $,Yv as A,Eo as B,vo as C,se as D,hu as E,gn as F,Ae as G,or as H,Vo as I,Si as J,Ei as K,ll as L,Zt as M,Gd as N,_n as O,ol as P,Ti as Q,Pi as R,tl as S,S as T,pr as U,K as V,jn as W,Id as X,yd as Y,fl as Z,jd as _,Rn as a,xt as a0,ef as a1,Ri as a2,Jv as a3,it as a4,tf as a5,In as a6,Qv as a7,ul as a8,wu as a9,Di as aa,En as ab,x as ac,G as ad,Zv as ae,Ju as af,yn as ag,_o as ah,xo as ai,jo as aj,Wv as ak,cr as al,Bv as am,N as an,Q as ao,gd as ap,To as b,No as c,ze as d,bn as e,Do as f,Vv as g,rl as h,qo as i,$o as j,nl as k,Gv as l,zv as m,$v as n,Hv as o,Uv as p,Io as q,qv as r,Kv as s,il as t,co as u,al as v,Ho as w,Go as x,Ko as y,Xv as z};
13
- //# sourceMappingURL=index-3ce5df9c.js.map
12
+ `).concat(Vt.makeCirclePath(l,s,Na)),O="link-select-clip-".concat(o),P=Math.atan2(s-w,l-E),M=P-Pa+Math.PI,k=P+Pa+Math.PI,L=l+Math.cos(P)*Ta,j=s+Math.sin(P)*Ta,H=L+Math.cos(M)*Fr,Y=j+Math.sin(M)*Fr,te=L+Math.cos(k)*Fr,re=j+Math.sin(k)*Fr,ae="".concat(L,",").concat(j," ").concat(H,",").concat(Y," ").concat(te,",").concat(re),le=.25*i+.5*E+.25*l,pe=.25*a+.5*w+.25*s,I=E-i+(l-E),A=w-a+(s-w),V=A/I,U=20,z=U/Math.sqrt(1+V**2),ye=z*V,Ee=z*-1,_e=ye*-1;Number.isFinite(V)?V>0?(z*=-1,ye*=-1,Ee*=-1,_e*=-1,Ee-=50-10*(Math.abs(v)%mt),_e+=10*(Math.abs(v)%mt),z-=50-10*(Math.abs(v)%mt),ye+=10*(Math.abs(v)%mt)):V<0?(Ee+=10*(Math.abs(v)%mt),_e+=10*(Math.abs(v)%mt),z+=10*(Math.abs(v)%mt),ye+=10*(Math.abs(v)%mt)):(Ee=15,_e=10,z=-25,ye=10):(Ee=10,_e=5,z=10,ye=-35);var qe="";t!==void 0&&(t==="startsWith"?qe="a*":t==="endsWith"?qe="*z":qe=S.getFilterOperatorString(t));var Ke=d!=="chartLink"&&d!=="filterSource";return f.jsxs(f.Fragment,{children:[f.jsxs("svg",{className:Re(e,{hovering:h}),children:[f.jsx("clipPath",{id:O,children:f.jsx("path",{d:F,clipRule:"evenodd"})}),f.jsx("path",{className:"link-select",d:T,onClick:this.handleClick,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,clipPath:"url(#".concat(O,")"),"data-testid":"link-select"}),f.jsx("path",{className:"link-background",d:T}),f.jsx("path",{className:"link-foreground",d:T}),f.jsx("circle",{className:"link-dot",cx:i,cy:a,r:"5"}),f.jsx("polygon",{className:"link-triangle",points:ae})]}),u!=null&&r&&f.jsxs(f.Fragment,{children:[Ke&&f.jsx(X,{kind:"primary",className:"btn-fab btn-operator",style:{top:pe+(V>=0?ye:_e),left:le+(V>=0?z:Ee)},onClick:()=>{},icon:f.jsxs("div",{className:"fa-md fa-layers",children:[f.jsx("b",{children:qe}),f.jsx(Ie,{icon:ao,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:f.jsx(Ba,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),f.jsx(X,{kind:"primary",className:"btn-fab btn-delete",style:{top:pe+(V<0?ye:_e),left:le+(V<0?z:Ee)},onClick:this.handleDelete,icon:qr,tooltip:"Delete"})]})]})}}Gl(Vt,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});const Kc=Vt;function Da(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Oa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Da(Object(t),!0).forEach(function(r){Xn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Da(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xn(n,e,t){return e=Yc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yc(n){var e=Xc(n,"string");return typeof e=="symbol"?e:String(e)}function Xc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vn=Z.module("LinkerOverlayContent");class Wl extends D.Component{constructor(e){super(e),Xn(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=Le.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){vn.error("componentDidCatch",e,t)}componentWillUnmount(){window.removeEventListener("blur",this.handleBlur,!0),window.removeEventListener("mousemove",this.handleMouseMove,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("keydown",this.handleKeyDown,!0),window.removeEventListener("keyup",this.handleKeyUp,!0),window.removeEventListener("resize",this.handleResize,!0)}getPointFromLinkPoint(e){var{panelManager:t}=this.props,{panelId:r,columnName:i}=e,a=t.getOpenedPanelById(r);if(a!=null){if(!Hl(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(r));try{var l=a.getCoordinateForColumn(i);if(l!=null)return l}catch{vn.error("Could not get coordinate for column",i,a)}}var s=t.getContainerByPanelId(r);if(s==null)throw new Error("Unable to find panel container for id: ".concat(r));return $.getTabPoint(s)}handleOperatorChanged(e,t){var{links:r,onLinksUpdated:i}=this.props,a=r.map(l=>l.id===e?Oa(Oa({},l),{},{operator:t}):l);i(a)}handleBlur(){this.setState({mode:"select"})}handleResize(){var{dialog:e}=this.state;if(e&&this.dialogRef.current){var t=this.dialogRef.current.getBoundingClientRect(),r=et(e.x,0,window.innerWidth-t.width),i=et(e.y,0,window.innerHeight-t.height);this.setState({dialog:{x:r,y:i}})}}handleMouseMove(e){var{offset:t,isDragging:r}=this.state;if(this.setState({mouse:{x:e.clientX,y:e.clientY}}),r&&this.dialogRef.current){var i=this.dialogRef.current.getBoundingClientRect(),a=et(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=et(window.innerHeight-(e.clientY+i.height+t.y),0,window.innerHeight-i.height);this.setState({dialog:{x:a,y:l}})}}handleMouseDown(e){e.preventDefault();var t={x:0,y:0};if(this.dialogRef.current){var r=this.dialogRef.current.getBoundingClientRect();t.x=r.right-(r.width+e.clientX),t.y=r.bottom-(r.height+e.clientY)}this.setState({isDragging:!0,offset:t})}handleMouseUp(){this.setState({isDragging:!1})}handleKeyDown(e){if(e.key==="Alt")e.preventDefault(),this.setState({mode:"delete"});else if(e.key==="Delete"||e.key==="Backspace"){var{selectedIds:t,onLinkDeleted:r}=this.props;e.preventDefault(),t.forEach(i=>r(i))}}handleKeyUp(e){e.key==="Alt"&&(e.preventDefault(),this.setState({mode:"select"}))}handleEscapePressed(){var{onCancel:e}=this.props;e()}render(){var{disabled:e,links:t,selectedIds:r,messageText:i,onLinkSelected:a,onLinkDeleted:l,onAllLinksDeleted:s,onDone:o}=this.props,{mouse:u,dialog:d,isDragging:h,mode:c}=this.state,v=t.map(g=>{try{var p,m,{id:b,type:y,isReversed:C,start:E,end:w,operator:T}=g,F=E.columnType,[O,P]=this.getPointFromLinkPoint(E),M=(p=u==null?void 0:u.x)!==null&&p!==void 0?p:O,k=(m=u==null?void 0:u.y)!==null&&m!==void 0?m:P;if(w!=null&&([M,k]=this.getPointFromLinkPoint(w)),C!=null&&C){var[L,j]=[O,P];[O,P]=[M,k],[M,k]=[L,j]}var H=Re("linker-link",{disabled:e},{"link-filter-source":y==="filterSource"},{"link-invalid":y==="invalid"},{interactive:g.end==null},{"link-is-selected":r.has(b)},{"danger-delete":c==="delete"});return{x1:O,y1:P,x2:M,y2:k,id:b,className:H,operator:T,startColumnType:F,type:y}}catch(Y){return vn.warn("Unable to get point for link",g,Y),null}}).filter(g=>g!=null);return f.jsxs("div",{className:Re("linker-overlay",{"danger-delete":c==="delete"}),children:[v.map(g=>{var{x1:p,y1:m,x2:b,y2:y,id:C,className:E,operator:w,startColumnType:T,type:F}=g;return f.jsx(Kc,{className:E,id:C,x1:p,y1:m,x2:b,y2:y,onClick:a,onDelete:l,isSelected:r.has(C),operator:w,startColumnType:T,type:F,onOperatorChanged:this.handleOperatorChanged},C)}),f.jsxs("div",{className:Re("linker-toast-dialog",{dragging:h}),ref:this.dialogRef,style:{bottom:d==null?void 0:d.y,right:d==null?void 0:d.x},"data-testid":"linker-toast-dialog",children:[f.jsx(X,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:lo,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&f.jsx(mn,{children:"Drag to reposition"})}),f.jsx("div",{className:"toast-body",children:i}),f.jsxs("div",{className:"toast-footer",children:[f.jsx(X,{kind:"secondary",onClick:s,children:"Clear All"}),f.jsx(X,{kind:"primary",onClick:o,children:"Done"})]})]}),f.jsx(Ye,{actions:[{action:this.handleEscapePressed,shortcut:pn.LINKER_CLOSE,isGlobal:!0}]})]})}}Xn(Wl,"defaultProps",{disabled:"false"});const Qc=Wl;function Fa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ma(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fa(Object(t),!0).forEach(function(r){zl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function zl(n,e,t){return e=Zc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zc(n){var e=Jc(n,"string");return typeof e=="symbol"?e:String(e)}function Jc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Te=Z.module("Linker"),ev=(n,e)=>({activeTool:On(n),dh:Ga(n),isolatedLinkerPanelId:Ur(n,e.localDashboardId),links:Ot(n,e.localDashboardId),timeZone:za(n)}),tv=yt(ev,{setActiveTool:$a,setDashboardLinks:Xr,addDashboardLinks:Cl,deleteDashboardLinks:Sl,setDashboardIsolatedLinkerPanelId:Hn,setDashboardColumnSelectionValidator:yl});class rv extends D.Component{constructor(e){super(e),zl(this,"getCachedLinks",B((t,r,i)=>{var a=[...t];return r!=null&&r.start!=null&&a.push(r),i!==void 0?a.filter(l=>{var s,o;return(l==null||(s=l.start)===null||s===void 0?void 0:s.panelId)===i||(l==null||(o=l.end)===null||o===void 0?void 0:o.panelId)===i||(l==null?void 0:l.end)==null}):a})),this.handleCancel=this.handleCancel.bind(this),this.handleDone=this.handleDone.bind(this),this.handlePanelCloned=this.handlePanelCloned.bind(this),this.handleFilterColumnSelect=this.handleFilterColumnSelect.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handlePanelClosed=this.handlePanelClosed.bind(this),this.handleLayoutStateChanged=this.handleLayoutStateChanged.bind(this),this.handleAllLinksDeleted=this.handleAllLinksDeleted.bind(this),this.handleLinkDeleted=this.handleLinkDeleted.bind(this),this.handleLinksUpdated=this.handleLinksUpdated.bind(this),this.handleChartColumnSelect=this.handleChartColumnSelect.bind(this),this.handleGridColumnSelect=this.handleGridColumnSelect.bind(this),this.handleUpdateValues=this.handleUpdateValues.bind(this),this.handleStateChange=this.handleStateChange.bind(this),this.handleExited=this.handleExited.bind(this),this.handleLinkSelected=this.handleLinkSelected.bind(this),this.handlePanelDragging=this.handlePanelDragging.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.state={linkInProgress:void 0,selectedIds:new Set,isDraggingPanel:!1}}componentDidMount(){var{layout:e}=this.props;this.startListening(e),this.updateSelectionValidators()}componentDidUpdate(e){var{activeTool:t,layout:r}=this.props;r!==e.layout&&(this.stopListening(e.layout),this.startListening(r)),t!==e.activeTool&&(this.updateSelectionValidators(),t===Je.DEFAULT&&this.reset())}componentDidCatch(e,t){Te.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(Be.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(Be.DATA_SELECTED,this.handleUpdateValues),t.on(Be.STATE_CHANGED,this.handleStateChange),t.on(jr.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(Oe.CLONED,this.handlePanelCloned),t.on(Se.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(Se.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(Oe.CLOSE,this.handlePanelClosed),t.on(Oe.CLOSED,this.handlePanelClosed),t.on(Oe.DRAGGING,this.handlePanelDragging),t.on(Oe.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(Be.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(Be.DATA_SELECTED,this.handleUpdateValues),t.off(Be.STATE_CHANGED,this.handleStateChange),t.off(jr.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(Oe.CLONED,this.handlePanelCloned),t.off(Se.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(Se.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(Oe.CLOSE,this.handlePanelClosed),t.off(Oe.CLOSED,this.handlePanelClosed),t.off(Oe.DRAGGING,this.handlePanelDragging),t.off(Oe.DROPPED,this.handlePanelDropped)}reset(){this.setState({linkInProgress:void 0,selectedIds:new Set})}handleCancel(){var{linkInProgress:e}=this.state;if(e==null){var{setActiveTool:t}=this.props;t(Je.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Je.DEFAULT)}handleChartColumnSelect(e,t){this.columnSelected(e,t,!0)}handleFilterColumnSelect(e,t){Te.debug("handleFilterColumnSelect",this.isOverlayShown());var{links:r,localDashboardId:i,setActiveTool:a,setDashboardIsolatedLinkerPanelId:l}=this.props,s=$.getIdFromPanel(e),o=r.filter(u=>{var d,h;return((d=u.start)===null||d===void 0?void 0:d.panelId)===s||((h=u.end)===null||h===void 0?void 0:h.panelId)===s});if(!this.isOverlayShown()&&s!=null){a(Je.LINKER),l(i,s),o.length===0&&this.columnSelected(e,t,!0,s);return}this.columnSelected(e,t,!0)}handleColumnsChanged(e,t){Te.debug("handleColumnsChanged",e,t);var{links:r}=this.props,i=$.getIdFromPanel(e);if(i==null){Te.error("Invalid panelId",e);return}var a=r.filter(l=>{var{start:s,end:o}=l;return s.panelId===i&&Nt.findColumn(t,s)==null||o!=null&&o.panelId===i&&Nt.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!ya(t)){Te.debug2("Column is not filterable");return}this.columnSelected(e,t)}columnSelected(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0;if(!(i===void 0&&!this.isOverlayShown())){var{isolatedLinkerPanelId:a}=this.props,{linkInProgress:l}=this.state,s=$.getIdFromPanel(e);if(s!=null){var o=$.getComponentNameFromPanel(e),{name:u,type:d}=t;if(l==null||l.start==null){var h={id:We(),start:{panelId:s,panelComponent:o,columnName:u,columnType:d},type:"invalid",isReversed:r};Te.debug("starting link",h),this.setState({linkInProgress:h})}else{var{links:c}=this.props,{start:v,id:g,isReversed:p}=l,m={panelId:s,panelComponent:o,columnName:u,columnType:d},b=Nt.getLinkType(p!==void 0&&p?m:v,p!==void 0&&p?v:m,i??a);switch(b){case"invalid":Te.debug("Ignore invalid link connection",l,m);return;case"filterSource":{var y=p!==void 0&&p?v.panelId:m.panelId,C=c.filter(O=>{var{end:P}=O;return(P==null?void 0:P.panelId)===y});this.deleteLinks(C);break}case"chartLink":{var E=p===!0?v:m,w=p===!0?m:v;Te.debug("creating chartlink",{existingLinkEnd:E,start:v,end:m});var T=c.filter(O=>{var{end:P,start:M}=O;return(M==null?void 0:M.panelId)===w.panelId&&(P==null?void 0:P.panelId)===E.panelId&&(P==null?void 0:P.columnName)===E.columnName&&(P==null?void 0:P.columnType)===E.columnType});this.deleteLinks(T);break}}var F={start:p!==void 0&&p?m:v,end:p!==void 0&&p?v:m,id:g,type:b,operator:N.eq};Te.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{end:r}=e,{panelId:i,columnName:a,columnType:l}=r,s=t.getOpenedPanelById(i);s?Sa(s)?s.unsetFilterValue(a,l):Te.debug("endPanel.unsetFilterValue not implemented",s):Te.debug("endPanel no longer exists, ignoring unsetFilterValue",i)}}setPanelFilterMap(e,t){Te.debug("Set filter data for panel:",e,t);var{panelManager:r}=this.props,i=r.getOpenedPanelById(e);i?Sa(i)?i.setFilterMap(t):Te.debug("panel.setFilterMap not implemented",e,i):Te.debug("panel no longer exists, ignoring setFilterMap",e)}addLinks(e){var{addDashboardLinks:t,localDashboardId:r}=this.props;t(r,e)}deleteLinks(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{localDashboardId:r}=this.props;if(e.forEach(l=>this.unsetFilterValueForLink(l)),t){var{setDashboardLinks:i}=this.props;i(r,[])}else if(e.length>0){var{deleteDashboardLinks:a}=this.props;a(r,e.map(l=>{var{id:s}=l;return s}))}}handleAllLinksDeleted(){var{links:e,isolatedLinkerPanelId:t}=this.props;if(t===void 0)this.deleteLinks(e,!0);else{var r=e.filter(i=>{var a,l;return(i==null||(a=i.start)===null||a===void 0?void 0:a.panelId)===t||(i==null||(l=i.end)===null||l===void 0?void 0:l.panelId)===t});this.deleteLinks(r)}this.reset()}handleLinkDeleted(e){var{links:t}=this.props,r=t.find(i=>i.id===e);r?this.deleteLinks([r]):Te.error("Unable to find link to delete",e)}handleUpdateValues(e,t){for(var r=$.getIdFromPanel(e),{dh:i,links:a,timeZone:l}=this.props,s=new Map,o=0;o<a.length;o+=1){var{start:u,end:d,operator:h}=a[o];if(u.panelId===r&&d!=null){var{panelId:c,columnName:v,columnType:g}=d,p=s.has(c)?s.get(c):new Map,m=p.has(v)===!0?p.get(v).filterList:[],{visibleIndex:b,isExpandable:y,isGrouped:C}=t[u.columnName],{value:E}=t[u.columnName],w="".concat(E);if(E===null&&y&&C&&(E=void 0),g!=null&&S.isDateType(g)){var T=new kr(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:se.FULL_DATE_FORMAT});w=T.format(E)}var F={operator:h,text:w,value:E,startColumnIndex:b};m.push(F),p.set(v,{columnType:g,filterList:m}),s.set(c,p)}}s.forEach((O,P)=>{this.setPanelFilterMap(P,O)})}handlePanelCloned(e,t){var{links:r}=this.props,i=$.getIdFromPanel(e),a=t.id;if(i!=null){var l=Nt.cloneLinksForPanel(r,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l}=i;if(a.panelId===e||(l==null?void 0:l.panelId)===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){Te.debug("Panel ".concat(e," closed, deleting links.")),this.deleteLinksForPanelId(e)}handleLinkSelected(e){this.setState({selectedIds:new Set([e])})}handleLinksUpdated(e){var{localDashboardId:t,setDashboardLinks:r}=this.props;r(t,e)}handleLayoutStateChanged(){this.forceUpdate()}handleStateChange(){this.forceUpdate()}handleExited(){var{localDashboardId:e,setDashboardIsolatedLinkerPanelId:t}=this.props;t(e,void 0)}deleteLinksForPanelId(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l,id:s}=i;(a.panelId===e||(l==null?void 0:l.panelId)===e)&&this.handleLinkDeleted(s)}}isOverlayShown(){var{activeTool:e}=this.props;return e===Je.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case Je.LINKER:t(r,this.isColumnSelectionValid);break;default:t(r,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:r}=t;return r!==void 0?{linkInProgress:Ma(Ma({},r),{},{type:e})}:null})}isColumnSelectionValid(e,t){var{linkInProgress:r}=this.state,{isolatedLinkerPanelId:i}=this.props;if(t==null)return(r==null?void 0:r.start)!=null&&this.updateLinkInProgressType(),!1;if(!ya(t))return Te.debug2("Column is not filterable",t.description),(r==null?void 0:r.start)!=null&&this.updateLinkInProgressType("invalid"),!1;if((r==null?void 0:r.start)==null)return!0;var{isReversed:a,start:l}=r,s=$.getIdFromPanel(e);if(s==null)return!1;var o={panelId:s,panelComponent:$.getComponentNameFromPanel(e),columnName:t.name,columnType:t.type},u=a!==void 0&&a?Nt.getLinkType(o,l,i):Nt.getLinkType(l,o,i);return this.updateLinkInProgressType(u),u!=="invalid"}render(){var{links:e,isolatedLinkerPanelId:t,panelManager:r}=this.props,{linkInProgress:i,selectedIds:a,isDraggingPanel:l}=this.state,s=this.isOverlayShown(),o=i!=null&&i.start!=null,u=t===void 0?"Click a column source, then click a column target to create a filter link. The filter comparison operator used by a selected link can be changed. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.":"Create a link between the source column button and a table column by clicking on one, then the other. Delete a filter link by clicking the delete button or with alt+click. Click done when finished.";return l?null:f.jsx(gn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:f.jsx(Qc,{disabled:o,panelManager:r,links:this.getCachedLinks(e,i,t),selectedIds:a,messageText:u,onLinkSelected:this.handleLinkSelected,onLinkDeleted:this.handleLinkDeleted,onAllLinksDeleted:this.handleAllLinksDeleted,onLinksUpdated:this.handleLinksUpdated,onDone:this.handleDone,onCancel:this.handleCancel})})}}var nv=tv(rv);const iv=nv;function ql(n){qt(n);var{id:e,layout:t,panelManager:r}=n;return f.jsx(iv,{layout:t,localDashboardId:e,panelManager:r})}var av={name:"LinkerPlugin",type:wt.DASHBOARD_PLUGIN,component:ql};const lv=av;function Kl(n){qt(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=D.useCallback(function(){var{title:l="",metadata:s={},id:o=We(),focusElement:u=$.DEFAULT_FOCUS_SELECTOR,createNewStack:d=!1,dragEvent:h=null}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},c=r.getOpenedPanelConfigsOfType(sr.COMPONENT),v=c.map(y=>{var C;return(C=y.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:Lr.getNewMarkdownTitle(v),p=null,m={type:"react-component",component:sr.COMPONENT,props:{id:o,metadata:s,panelState:{content:p},localDashboardId:e},title:g,id:o},{root:b}=t;$.openComponent({root:b,config:m,focusElement:u,createNewStack:d,dragEvent:h})},[e,t,r]);return D.useEffect(function(){var s=[i(sr.COMPONENT,sr)];return()=>{s.forEach(o=>o())}},[i]),ge(t.eventHub,pl.OPEN,a),null}var sv={name:"MarkdownPlugin",type:wt.DASHBOARD_PLUGIN,component:Kl};const ov=sv;function Ia(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ra(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ia(Object(t),!0).forEach(function(r){uv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ia(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function uv(n,e,t){return e=dv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dv(n){var e=hv(n,"string");return typeof e=="symbol"?e:String(e)}function hv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Qn=D.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=jl(r,t,i);return f.jsx(Ll,Ra(Ra({ref:e},n),a))});Qn.displayName="PandasPanelPlugin";const cv=Qn;function La(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function fn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){La(a,r,i,l,s,"next",o)}function s(o){La(a,r,i,l,s,"throw",o)}l(void 0)})}}function Yl(n){var e=zt(),[t,r]=D.useState(),[i,a]=D.useState(!0),[l,s]=D.useState(!1),{fetch:o}=n,u=D.useCallback(fn(function*(){var h=yield o();return jn.makeModel(e,h)}),[e,o]),d=D.useCallback(fn(function*(){a(!0);var h=yield u();r(h),a(!1)}),[u]);return D.useEffect(()=>{var h=!1;function c(){return v.apply(this,arguments)}function v(){return v=fn(function*(){var g=yield u();h||(r(g),s(!0),a(!1))}),v.apply(this,arguments)}return c(),a(!0),()=>{h=!0}},[u]),f.jsxs(f.Fragment,{children:[f.jsx(Kt,{isLoaded:l,isLoading:i}),t&&f.jsx(_n,{model:t,children:f.jsx(Rl,{onClick:d})})]})}var vv={name:"PandasPanel",title:"Pandas",type:wt.WIDGET_PLUGIN,component:Yl,panelComponent:Qn,supportedTypes:"pandas.DataFrame",icon:so};const fv=vv;function Aa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function nr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Aa(Object(t),!0).forEach(function(r){pv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Aa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function pv(n,e,t){return e=mv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mv(n){var e=gv(n,"string");return typeof e=="symbol"?e:String(e)}function gv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var bv=Z.module("WidgetLoaderPlugin");function Cv(n){var e;function t(r,i){var a,l=n.component,{metadata:s}=r,o=As(l);return f.jsx(gr,nr(nr({widgetName:(a=s==null?void 0:s.name)!==null&&a!==void 0?a:void 0,widgetType:n.title},r),{},{children:o?f.jsx(l,nr(nr({},r),{},{ref:i})):f.jsx(l,nr({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),D.forwardRef(t)}function Xl(n){var e=Xa(),t=D.useMemo(()=>{var s=new Map;return e.forEach(o=>{Ls(o)&&[o.supportedTypes].flat().forEach(u=>{if(u!=null&&u!==""){if(s.has(u)){var d;bv.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]);qt(n);var{id:r,layout:i,registerComponent:a}=n,l=D.useCallback(s=>{var o,{dragEvent:u,panelId:d=We(),fetch:h,widget:c}=s,{type:v}=c,g=v!=null?t.get(v):null;if(g!=null){var p=(o=c.name)!==null&&o!==void 0?o:v,m={localDashboardId:r,metadata:c,fetch:h},b={type:"react-component",component:g.name,props:m,title:p,id:d},{root:y}=i;$.openComponent({root:y,config:b,dragEvent:u})}},[r,i,t]);return D.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:u}=o;return u==null?a(o.name,Cv(o)):a(o.name,u)});return()=>{s.forEach(o=>o())}},[a,t]),ge(i.eventHub,Oe.OPEN,l),null}var Sv={name:"WidgetLoaderPlugin",type:wt.DASHBOARD_PLUGIN,component:Xl};const yv=Sv;function rn(n,e,t){return e=Ev(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ev(n){var e=wv(n,"string");return typeof e=="symbol"?e:String(e)}function wv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Cr{}rn(Cr,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");rn(Cr,"INPUT_FILTER","ControlType.INPUT_FILTER");rn(Cr,"MARKDOWN","ControlType.MARKDOWN");rn(Cr,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");const Tv=Cr;var Pv=W.shape({state:W.shape({panelState:W.shape({})})}),Nv=W.shape({panelId:W.string.isRequired,columnName:W.string.isRequired,columnType:W.string.isRequired}),ka=W.shape({panelId:W.string.isRequired,columnName:W.string.isRequired}),Ql=W.shape({start:ka,end:ka,id:W.string,isReversed:W.bool}),Dv=W.arrayOf(Ql),Ov=W.shape({name:W.string.isRequired,operateAs:W.string.isRequired,groups:W.arrayOf(W.string).isRequired,permissions:W.shape({canUsePanels:W.bool.isRequired,canCopy:W.bool.isRequired,canDownloadCsv:W.bool.isRequired,canLogout:W.bool.isRequired}).isRequired}),Fv=Object.freeze({LinkPoint:Nv,Link:Ql,Links:Dv,Panel:Pv,User:Ov});const Mv=Fv;var Iv=(n,e)=>n[e]===null?null:W.bool,Rv=(n,e)=>n[e]===null?null:W.string,Lv=Object.freeze({nullableBoolean:Iv,nullableString:Rv});const Av=Lv,ef=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:kl,ChartBuilderPluginConfig:Nc,ChartEvent:jr,ChartPanel:br,ChartPanelPlugin:yc,ChartPluginConfig:Tc,ChartWidgetPlugin:Al,CommandHistoryPanel:qa,CommonPropTypes:Av,ConsoleEvent:xr,ConsolePanel:Ir,ConsolePlugin:Ic,ControlType:Tv,DropdownFilterPanel:St,FileExplorerPanel:Ka,FilterPlugin:xl,FilterPluginConfig:Lc,FilterSetManager:Dl,FilterSetManagerPanel:Rr,GridPanelPlugin:Vc,GridPluginConfig:Gc,GridWidgetPlugin:Vl,InputFilterEvent:Se,InputFilterPanel:jt,IrisGridEvent:Be,IrisGridPanel:Gt,LinkerPlugin:ql,LinkerPluginConfig:lv,LinkerUtils:Nt,LogPanel:Ya,MarkdownEvent:pl,MarkdownPanel:sr,MarkdownPlugin:Kl,MarkdownPluginConfig:ov,MockFileStorage:pc,NotebookEvent:oe,NotebookPanel:Ct,PandasEvent:Xd,PandasPanel:Ll,PandasPanelPlugin:cv,PandasPluginConfig:fv,PandasWidgetPlugin:Yl,Panel:Wt,TabEvent:ks,ToolType:Je,UIPropTypes:Mv,WidgetLoaderPlugin:Xl,WidgetLoaderPluginConfig:yv,WidgetPanel:gr,WidgetPanelTooltip:mr,addDashboardLinks:Cl,deleteDashboardLinks:Sl,getColumnSelectionValidatorForDashboard:Br,getColumnsForDashboard:Fn,getDashboardConnection:xs,getDashboardConsoleSettings:_s,getDashboardSessionWrapper:Wa,getFilterSetsForDashboard:Ua,getInputFiltersForDashboard:Wr,getIsolatedLinkerPanelIdForDashboard:Ur,getLinksForDashboard:Ot,getTableMapForDashboard:Gr,isChartPanelDehydratedProps:Nl,isChartPanelFigureMetadata:Gn,isChartPanelTableMetadata:_t,isGLChartPanelState:Pl,isIrisGridPanelMetadata:Fl,isLegacyIrisGridPanelMetadata:Ol,setDashboardColumnSelectionValidator:yl,setDashboardConnection:Jd,setDashboardConsoleSettings:El,setDashboardFilterSets:wl,setDashboardIsolatedLinkerPanelId:Hn,setDashboardLinks:Xr,setDashboardSessionWrapper:eh,useLoadTablePlugin:_l},Symbol.toStringTag,{value:"Module"}));export{xt as $,du as A,Eo as B,vo as C,se as D,Ae as E,gn as F,or as G,Si as H,Vo as I,Ei as J,Zt as K,ll as L,Hd as M,_n as N,ol as O,Ti as P,Pi as Q,pr as R,tl as S,S as T,K as U,jn as V,Md as W,Sd as X,fl as Y,_d as Z,ue as _,Rn as a,Jv as a0,Ri as a1,Zv as a2,it as a3,ef as a4,In as a5,Xv as a6,ul as a7,Eu as a8,Di as a9,En as aa,x as ab,G as ac,Qv as ad,Zu as ae,yn as af,_o as ag,xo as ah,jo as ai,Bv as aj,cr as ak,Uv as al,N as am,Q as an,md as ao,To as b,No as c,ze as d,bn as e,Do as f,jv as g,rl as h,zo as i,nl as j,Hv as k,Wv as l,Vv as m,$v as n,Gv as o,Io as p,zv as q,qv as r,il as s,al as t,co as u,$o as v,Ho as w,qo as x,Yv as y,Kv as z};
13
+ //# sourceMappingURL=index-56ae04ab.js.map