@deephaven/embed-widget 0.85.3-beta.3 → 0.85.3

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 (35) hide show
  1. package/build/assets/App-5f6f7b9f.js +2 -0
  2. package/build/assets/App-5f6f7b9f.js.map +1 -0
  3. package/build/assets/{Chart-3f4c77e4.js → Chart-412c19f4.js} +2 -2
  4. package/build/assets/{Chart-3f4c77e4.js.map → Chart-412c19f4.js.map} +1 -1
  5. package/build/assets/{IrisGrid-3c28a766.js → IrisGrid-733b8202.js} +5 -5
  6. package/build/assets/IrisGrid-733b8202.js.map +1 -0
  7. package/build/assets/IrisGridThemeProvider-58cd26bd.js +11 -0
  8. package/build/assets/IrisGridThemeProvider-58cd26bd.js.map +1 -0
  9. package/build/assets/LocalWorkspaceStorage-7050f21b.js +2 -0
  10. package/build/assets/LocalWorkspaceStorage-7050f21b.js.map +1 -0
  11. package/build/assets/{LogPanel-1bda917b.js → LogPanel-1c3dc9ca.js} +10 -10
  12. package/build/assets/LogPanel-1c3dc9ca.js.map +1 -0
  13. package/build/assets/{MarkdownEditor-c29e651c.js → MarkdownEditor-6ccae01c.js} +2 -2
  14. package/build/assets/{MarkdownEditor-c29e651c.js.map → MarkdownEditor-6ccae01c.js.map} +1 -1
  15. package/build/assets/{MarkdownNotebook-8450c26a.js → MarkdownNotebook-6aee75ea.js} +2 -2
  16. package/build/assets/{MarkdownNotebook-8450c26a.js.map → MarkdownNotebook-6aee75ea.js.map} +1 -1
  17. package/build/assets/{index-eef387d2.js → index-89acbc8f.js} +2 -2
  18. package/build/assets/{index-eef387d2.js.map → index-89acbc8f.js.map} +1 -1
  19. package/build/assets/{index-c4102b21.js → index-a8d90ae3.js} +6 -6
  20. package/build/assets/index-a8d90ae3.js.map +1 -0
  21. package/build/assets/index-c19d5010.js +4 -0
  22. package/build/assets/index-c19d5010.js.map +1 -0
  23. package/build/index.html +2 -2
  24. package/package.json +17 -17
  25. package/build/assets/App-1925702e.js +0 -2
  26. package/build/assets/App-1925702e.js.map +0 -1
  27. package/build/assets/IrisGrid-3c28a766.js.map +0 -1
  28. package/build/assets/IrisGridThemeProvider-a33d80ee.js +0 -11
  29. package/build/assets/IrisGridThemeProvider-a33d80ee.js.map +0 -1
  30. package/build/assets/LocalWorkspaceStorage-3d9e8ba8.js +0 -2
  31. package/build/assets/LocalWorkspaceStorage-3d9e8ba8.js.map +0 -1
  32. package/build/assets/LogPanel-1bda917b.js.map +0 -1
  33. package/build/assets/index-b63bcf2d.js +0 -4
  34. package/build/assets/index-b63bcf2d.js.map +0 -1
  35. package/build/assets/index-c4102b21.js.map +0 -1
@@ -1,13 +1,13 @@
1
- import{r as D,I as f,K as Re,J as is,M as Le,b5 as as,L as Ie,ac as et,_ as Hr,b6 as xa,a9 as ht,a8 as Ge,b7 as ls,b8 as ss,b9 as B,ba as ei,bb as os,bc as us,bd as ds,b4 as ti,be as Ar,aa as W,bf as St,Q as We,aG as hs,aF as ri,R as cs,N as _a,O as vs}from"./vendor-5b2d9bf5.js";import{b3 as ja,B as fs,a4 as $t,a5 as xe,aX as ps,b4 as Xe,b5 as sn,a1 as kr,a2 as ms,a3 as gs,E as ee,b6 as Mr,aT as Pt,c as ni,b7 as ut,b8 as bs,b9 as ie,as as $,az as Va,w as Ye,ba as Wt,aP as yt,bb as Ot,y as X,bc as $a,bd as Dn,be as Se,bf as Gr,aI as Ha,bg as On,bh as Ur,bi as Br,bj as Wr,bk as zr,N as hr,bl as Fn,bm as Ga,bn as Cs,aw as Ss,bo as Ua,J as ys,P as Oe,aG as Es,bp as ws,aU as $e,bq as oe,br as xr,G as pn,T as mn,D as Ba,bs as Ts,x as ii,bt as Ps,bu as Ns,bv as Wa,bw as ai,aV as Ds,u as zt,a0 as Os,bx as za,a8 as Et,aD as qt,at as ge,a$ as Ir,by as Fs,ay as Ms,b1 as qa,b2 as Ka,b0 as Ya,a6 as Xa,aj as Is,ah as Rs,a7 as Ls,aE as As,bz as ks,bA as xs,bB as _s}from"./LogPanel-1bda917b.js";import{L as Z,Y as js,Z as Qa,T as Vs,_ as $s,$ as Hs,l as R,a0 as Gs,a as Kt,a1 as It,e as Us,a2 as Bs,a3 as Mn,a4 as Za,a5 as Ws,a6 as Ja,v as qr,a7 as el,a8 as li,a9 as si,aa as zs,ab as qs,M as Ks,s as Ys,b as Xs,ac as Qs,ad as Zs,ae as Js,af as eo,ag as to,c as oi,ah as ro,ai as no,aj as io,ak as ao,al as lo,am as so}from"./index-eef387d2.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 mt(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 mt(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 mt(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 mt(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 mt(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 mt(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 mt(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 mt(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=mt(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-3f4c77e4.js"),["./Chart-3f4c77e4.js","./vendor-5b2d9bf5.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-eef387d2.js","./index-59264528.css","./Plotly-198ac02b.js","./plotly-4d2d4041.js","./LogPanel-1bda917b.js","./LogPanel-c0d28e77.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-3c28a766.js"),["./IrisGrid-3c28a766.js","./vendor-5b2d9bf5.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-eef387d2.js","./index-59264528.css","./LogPanel-1bda917b.js","./LogPanel-c0d28e77.css","./IrisGridThemeProvider-a33d80ee.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 wt=[],$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 wt}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 wt}get initialMovedRows(){return wt}get initialColumnHeaderGroups(){return wt}get layoutHints(){return null}get frontColumns(){return wt}get backColumns(){return wt}get keyColumnSet(){return $u}get frozenColumns(){return wt}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 gt(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;gt(this,"name",void 0),gt(this,"children",void 0),gt(this,"depth",void 0),gt(this,"parent",void 0),gt(this,"color",void 0),gt(this,"childIndexes",void 0),gt(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)}}gt(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,I as f,K as Re,J as is,M as Le,b5 as as,L as Ie,ac as et,_ as Hr,b6 as xa,a9 as ht,a8 as Ge,b7 as ls,b8 as ss,b9 as B,ba as ei,bb as os,bc as us,bd as ds,b4 as ti,be as Ar,aa as W,bf as yt,Q as We,aG as hs,aF as ri,R as cs,N as _a,O as vs}from"./vendor-5b2d9bf5.js";import{b3 as ja,B as fs,a5 as $t,a6 as xe,a1 as ps,b4 as Xe,b5 as sn,a2 as kr,a3 as ms,a4 as gs,E as ee,b6 as Mr,aU as Pt,c as ni,b7 as ut,b8 as bs,b9 as ie,at as $,aA as Va,w as Ye,ba as Wt,aQ as Et,bb as Ot,y as X,bc as $a,bd as Dn,be as Se,bf as Gr,aJ as Ha,bg as On,bh as Ur,bi as Br,bj as Wr,bk as zr,N as hr,bl as Fn,bm as Ga,bn as Cs,ax as Ss,bo as Ua,J as ys,P as Oe,aH as Es,bp as ws,aV as $e,bq as oe,br as xr,G as pn,T as mn,D as Ba,bs as Ts,x as ii,bt as Ps,bu as Ns,bv as Wa,bw as ai,aW as Ds,u as zt,a0 as Os,bx as za,a9 as wt,aE as qt,au as ge,a$ as Ir,by as Fs,az as Ms,b1 as qa,b2 as Ka,b0 as Ya,a7 as Xa,ak as Is,ai as Rs,a8 as Ls,aF as As,bz as ks,bA as xs,bB as _s}from"./LogPanel-1c3dc9ca.js";import{L as Z,Y as js,Z as Qa,T as Vs,_ as $s,$ as Hs,l as R,a0 as Gs,a as Kt,a1 as It,e as Us,a2 as Bs,a3 as Mn,a4 as Za,a5 as Ws,a6 as Ja,v as qr,a7 as el,a8 as li,a9 as si,aa as zs,ab as qs,M as Ks,s as Ys,b as Xs,ac as Qs,ad as Zs,ae as Js,af as eo,ag as to,c as oi,ah as ro,ai as no,aj as io,ak as ao,al as lo,am as so}from"./index-89acbc8f.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-412c19f4.js"),["./Chart-412c19f4.js","./vendor-5b2d9bf5.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-89acbc8f.js","./index-59264528.css","./Plotly-198ac02b.js","./plotly-4d2d4041.js","./LogPanel-1c3dc9ca.js","./LogPanel-c0d28e77.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-733b8202.js"),["./IrisGrid-733b8202.js","./vendor-5b2d9bf5.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-89acbc8f.js","./index-59264528.css","./LogPanel-1c3dc9ca.js","./LogPanel-c0d28e77.css","./IrisGridThemeProvider-58cd26bd.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(`
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
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
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 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
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 isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=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 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}}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.
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(yt(n,{connection:e})),th=(n,e)=>t=>t(yt(n,{sessionWrapper:e})),Xr=(n,e)=>t=>t(yt(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(yt(n,{isolatedLinkerPanelId:e})),yl=(n,e)=>t=>t(yt(n,{columnSelectionValidator:e})),El=(n,e)=>t=>t(yt(n,{consoleSettings:e})),wl=(n,e)=>t=>t(yt(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=St(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=St(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 Ct=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 Tt(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)=>!i||!xt(i)||r==null||i.table==null?null:f.jsx("div",{className:"iris-grid-plugin",children:f.jsx(r,{ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,onStateChange:this.handlePluginStateChange,pluginState:a})}))),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}=Tt(Tt({},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=Tt({},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,Tt(Tt({},l),o)),{isStuckToBottom:le,isStuckToRight:pe,movedColumns:I,movedRows:A}=ue.hydrateGridState(e,Tt(Tt({},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=St(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=St(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(Ct):{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(Ct):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=St(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 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
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-c29e651c.js"),["./MarkdownEditor-c29e651c.js","./vendor-5b2d9bf5.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./LogPanel-1bda917b.js","./index-eef387d2.js","./index-59264528.css","./LogPanel-c0d28e77.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=St(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-8450c26a.js"),["./MarkdownNotebook-8450c26a.js","./vendor-5b2d9bf5.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-eef387d2.js","./index-59264528.css","./LogPanel-1bda917b.js","./LogPanel-c0d28e77.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=St(ic,{updateSettings:ws},null,{forwardRef:!0})(Pe);const bt=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:Et.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:Et.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:bt.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,[bt.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,[bt.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:bt.COMPONENT,id:Ke}),Xt=$.getContentItemInStack(ln,{component:bt.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(bt);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,bt,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(yt(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:Ct.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(Ct.COMPONENT,Ct),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:Et.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:Et.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 ft(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(Ct):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(ft(ft({},a),{},{id:We(),start:ft(ft({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(ft(ft({},a),{},{id:We(),end:ft(ft({},a.end),{},{panelId:r})}))}),i}}$l(tn,"ALLOWED_LINKS",new Map([[$.getComponentName(Gt),[$.getComponentName(Gt),$.getComponentName(br),$.getComponentName(Ct)]]]));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,pt=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=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-6ccae01c.js"),["./MarkdownEditor-6ccae01c.js","./vendor-5b2d9bf5.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./LogPanel-1c3dc9ca.js","./index-89acbc8f.js","./index-59264528.css","./LogPanel-c0d28e77.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-6aee75ea.js"),["./MarkdownNotebook-6aee75ea.js","./vendor-5b2d9bf5.js","./helpers-de833af9.js","./vendor-bd6e7036.css","./index-89acbc8f.js","./index-59264528.css","./LogPanel-1c3dc9ca.js","./LogPanel-c0d28e77.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
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)%pt),_e+=10*(Math.abs(v)%pt),z-=50-10*(Math.abs(v)%pt),ye+=10*(Math.abs(v)%pt)):V<0?(Ee+=10*(Math.abs(v)%pt),_e+=10*(Math.abs(v)%pt),z+=10*(Math.abs(v)%pt),ye+=10*(Math.abs(v)%pt)):(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=St(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:Et.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:Et.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:Et.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:Et.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:Ct,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:bt,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-c4102b21.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 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-a8d90ae3.js.map