@deephaven/embed-widget 0.106.3 → 0.106.4
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.
- package/build/assets/{App-BSdCTET1.js → App-D3BMUIOZ.js} +2 -2
- package/build/assets/{App-BSdCTET1.js.map → App-D3BMUIOZ.js.map} +1 -1
- package/build/assets/{Chart-D4zeuQvq.js → Chart-BoTYSyco.js} +2 -2
- package/build/assets/{Chart-D4zeuQvq.js.map → Chart-BoTYSyco.js.map} +1 -1
- package/build/assets/{IrisGrid-76MraAFA.js → IrisGrid-CTF9IbSf.js} +2 -2
- package/build/assets/{IrisGrid-76MraAFA.js.map → IrisGrid-CTF9IbSf.js.map} +1 -1
- package/build/assets/IrisGridThemeProvider-CgU1w0nQ.js +12 -0
- package/build/assets/{IrisGridThemeProvider-EhqqfPwz.js.map → IrisGridThemeProvider-CgU1w0nQ.js.map} +1 -1
- package/build/assets/{LocalWorkspaceStorage-peItEkpx.js → LocalWorkspaceStorage-KJyb0w9T.js} +2 -2
- package/build/assets/{LocalWorkspaceStorage-peItEkpx.js.map → LocalWorkspaceStorage-KJyb0w9T.js.map} +1 -1
- package/build/assets/{LogPanel-DfNqK_iv.js → LogPanel-3Y8KvuxG.js} +2 -2
- package/build/assets/{LogPanel-DfNqK_iv.js.map → LogPanel-3Y8KvuxG.js.map} +1 -1
- package/build/assets/{MarkdownEditor-DULzjNTi.js → MarkdownEditor-C14PDuak.js} +2 -2
- package/build/assets/{MarkdownEditor-DULzjNTi.js.map → MarkdownEditor-C14PDuak.js.map} +1 -1
- package/build/assets/{MarkdownNotebook--UIGvqLT.js → MarkdownNotebook-BDaj8EiQ.js} +2 -2
- package/build/assets/{MarkdownNotebook--UIGvqLT.js.map → MarkdownNotebook-BDaj8EiQ.js.map} +1 -1
- package/build/assets/{index-BYKvKr_R.js → index-BJom6ZFQ.js} +4 -4
- package/build/assets/{index-BYKvKr_R.js.map → index-BJom6ZFQ.js.map} +1 -1
- package/build/assets/{index-DICXEnjG.js → index-BaRgrXXh.js} +3 -3
- package/build/assets/{index-DICXEnjG.js.map → index-BaRgrXXh.js.map} +1 -1
- package/build/assets/{index-BWMty9Ew.js → index-CIylDBtH.js} +11 -11
- package/build/assets/index-CIylDBtH.js.map +1 -0
- package/build/index.html +2 -2
- package/package.json +7 -7
- package/build/assets/IrisGridThemeProvider-EhqqfPwz.js +0 -12
- package/build/assets/index-BWMty9Ew.js.map +0 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Chart-
|
|
2
|
-
import{r as O,F as f,I as Me,H as
|
|
3
|
-
`,a))},[]);return O.useEffect(()=>(t.current&&clearTimeout(t.current),n&&(t.current=setTimeout(()=>{e(!1)},Po)),()=>{t.current&&clearTimeout(t.current)}),[n]),[n,r]}function _n(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=O.useRef(null),s=O.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=O.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return O.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:Me(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 No(n){var{copy:e,kind:t="ghost",tooltip:r="Copy",className:i,style:a,"data-testid":l,children:s}=n,[o,u]=Oo();return f.jsx(Y,{kind:t,className:i,style:a,"data-testid":l,icon:o?Js:Za,tooltip:o?"Copied":r,onClick:()=>{u(typeof e=="function"?e():e)},children:s})}var Fo=["className","timeout"];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 Mo(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){Ro(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 Ro(n,e,t){return e=Io(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Io(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)}function Ao(n,e){if(n==null)return{};var t=xo(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 xo(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 Cn(n){var{className:e,timeout:t=eo.transitionMs}=n,r=Ao(n,Fo);return f.jsx(as,Mo({timeout:t,classNames:Me("fade",e)},r))}var qr=Re.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}=ls({},"button");return f.jsxs("button",{ref:e,type:"button",className:Me("btn-socketed",{"btn-socketed-linked":l!==void 0&&l||s},{"btn-socketed-linked-source":s},{"is-invalid":o},r,g),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,disabled:i,"data-testid":v,children:[t,f.jsx(Fe,{icon:to,className:"linked btn-socketed-icon",transform:"down-1"}),f.jsx(Fe,{icon:ro,className:"is-invalid btn-socketed-icon"})]})});qr.displayName="SocketedButton";qr.defaultProps={children:void 0,className:"",disabled:!1,id:void 0,isLinked:!1,isLinkedSource:!1,isInvalid:!1,onClick:void 0,onMouseEnter:void 0,onMouseLeave:void 0,style:void 0,"data-testid":void 0};function si(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 ko(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){si(a,r,i,l,s,"next",o)}function s(o){si(a,r,i,l,s,"throw",o)}l(void 0)})}}var _o=O.createContext(null);function jo(n){var[e,t]=O.useState(null),[r,i]=O.useState(null),a=O.useContext(_o),l=O.useContext(no);return O.useEffect(()=>{if(a==null){if(l!=null){t(l),i(null);return}t(null),i(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var s=!1;function o(){return u.apply(this,arguments)}function u(){return u=ko(function*(){if(n==null)s||(t(null),i(new Error("No widget provided to useDeferredApi")));else if(typeof a=="function")try{var d=yield a(n);s||(t(d),i(null))}catch(h){s||(t(null),i(h))}else t(a)}),u.apply(this,arguments)}return o(),()=>{s=!0}},[l,a,n]),[e,r]}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 on(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){Vo(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 Vo(n,e,t){return e=$o(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $o(n){var e=Ho(n,"string");return typeof e=="symbol"?e:String(e)}function Ho(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 tl(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r==null?void 0:r.type){case n:{var i=r.payload;return i==null?null:t!=null?on(on({},t),i):on({},i)}default:return t}}}function Dt(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r==null?void 0:r.type){case n:return r.payload;default:return t}}}const Go=Dt(Cs,null),Bo=Dt(Ss,null),Uo=Dt(Es,null),Wo=Dt(ys,null),zo=Dt(ws,null),qo=Dt(Ts,null),Ko=Fn({commandHistoryStorage:Wo,fileStorage:zo,workspaceStorage:qo}),Xo=tl(Ps,null),Yo=tl(Ds,null),Zo=Dt(Os,null),Qo=Dt(Ns,null);var Jo={activeTool:Bo,api:Go,plugins:Uo,storage:Ko,user:Xo,workspace:Yo,defaultWorkspaceSettings:Zo,serverConfigValues:Qo},ui=J.module("redux-logger"),eu=n=>e=>t=>{ui.debug("dispatching",t);var r=e(t);return ui.debug("next state",n.getState()),r},tu=J.module("redux-crashReporter"),ru=n=>e=>t=>{try{return e(t)}catch(r){throw tu.error("Error executing",t," with state ",n.getState(),":",r),r}};const nu=[eu,ru,ss];var un;Object.entries(Jo).map(n=>{var[e,t]=n;return Mn.register(e,t)});var iu=(un=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&un!==void 0?un:ds,rl=os(Fn(Mn.reducers),iu(us(...nu)));Mn.setListener(n=>{rl.replaceReducer(Fn(n))});class au extends Ht{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}class lu extends Ht{format(e){return String.fromCharCode(e)}}class su extends Ht{format(e){return"".concat(e)}}class ou extends Ht{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){jn(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 jn(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)}var hu=/\s*(\d{4})([-./](\d{1,2}|[a-z]+))?([-./](\d{1,2}))?([tT\s](\d{2})([:](\d{2}))?([:](\d{2}))?([.](\d{1,9}))?)?(.*)/;class ae{static makeDateWrapper(e,t,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(ae.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=ae.getNextNanos(t.nanos),h>999999999&&(d+=1,h=0)}else t.seconds!=null?d+=1:t.minutes!=null?u+=1:t.hours!=null?o+=1:t.date!=null?s+=1:t.month!=null?l+=1:a+=1;var c=new Date(a,l,s,o,u,d);return ae.makeDateWrapper(e,i,c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),h)}static parseMonth(e){var t=parseInt(e,10);if(!Number.isNaN(t))return t>=1&&t<=12?t-1:NaN;var r=e.trim().toLowerCase();if(r.length>=3){for(var i=0;i<ae.months.length;i+=1)if(ae.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=hu.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=ae.makeDateWrapper(e,r,a.getFullYear(),a.getMonth(),a.getDate()),s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1),o=ae.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=ae.makeDateWrapper(e,r,d.getFullYear(),d.getMonth(),d.getDate()),c=ae.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=ae.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=ae.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=ae.makeDateWrapper(e,r,m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos),E=ae.getNextDate(e,p,m,r);return[b,E]}static getJsDate(e){return typeof e=="number"?new Date(e):e.asDate()}static trimDateTimeStringTimeZone(e){var{overflow:t=""}=ae.parseDateTimeString(e,!0);if(t==="")return e;if(!/^\s[A-Za-z]+/.test(t))throw new Error("Unexpected timezone format in overflow: '".concat(e,"'"));return e.slice(0,-t.length)}}jn(ae,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");jn(ae,"months",["january","february","march","april","may","june","july","august","september","october","november","december"]);function jv(n,e){return n===e?{operator:"notEq",value:""}:{operator:"eq",value:n}}function Vv(n,e,t,r){return function(a){var l=t.trim();if(l==="")return null;var s=nl(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function nl(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 cu(n,e,t,r){return nl(e,i=>i.filter()[r](n.makeFilterValue(i.type,t)),"or")}function $v(n,e,t,r,i){return function(l){var s=l==null?void 0:l.findColumn(e),o=t==="all"||r&&t.size===0;return s==null||o?null:n.makeSelectValueFilter(s,[...t.keys()],i)}}function Hv(n){return function(t){return t.filter().isNull().not().and(t.filter().notEq(n.makeFilterValue(t.type,"")))}}function Gv(n,e){return function(r){var i=r.filter(),a=n.makeFilterValue(r.type,""),l=i.eq(a);return e?i.isNull().or(l):l.or(i.notEq(a))}}function Vn(n,e,t){return e=vu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vu(n){var e=fu(n,"string");return typeof e=="symbol"?e:String(e)}function fu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 hr{}Vn(hr,"not","not");Vn(hr,"and","and");Vn(hr,"or","or");function Bv(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function de(n,e,t){return e=pu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pu(n){var e=mu(n,"string");return typeof e=="symbol"?e:String(e)}function mu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class D{}de(D,"eq","eq");de(D,"eqIgnoreCase","eqIgnoreCase");de(D,"notEq","notEq");de(D,"notEqIgnoreCase","notEqIgnoreCase");de(D,"greaterThan","greaterThan");de(D,"greaterThanOrEqualTo","greaterThanOrEqualTo");de(D,"lessThan","lessThan");de(D,"lessThanOrEqualTo","lessThanOrEqualTo");de(D,"in","in");de(D,"inIgnoreCase","inIgnoreCase");de(D,"notIn","notIn");de(D,"notInIgnoreCase","notInIgnoreCase");de(D,"isTrue","isTrue");de(D,"isFalse","isFalse");de(D,"isNull","isNull");de(D,"invoke","invoke");de(D,"contains","contains");de(D,"notContains","notContains");de(D,"containsIgnoreCase","containsIgnoreCase");de(D,"startsWith","startsWith");de(D,"endsWith","endsWith");de(D,"containsAny","containsAny");function gu(n){switch(n){case D.eq:return"is exactly";case D.eqIgnoreCase:return"is exactly (ignore case)";case D.notEq:return"is not exactly";case D.notEqIgnoreCase:return"is not exactly (ignore case)";case D.contains:return"contains";case D.notContains:return"does not contain";case D.startsWith:return"starts with";case D.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function bu(n){switch(n){case D.eq:return"is equal to";case D.notEq:return"is not equal to";case D.greaterThan:return"greater than";case D.greaterThanOrEqualTo:return"greater than or equal to";case D.lessThan:return"less than";case D.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function Cu(n){switch(n){case D.eq:return"date is";case D.notEq:return"date is not";case D.notEqIgnoreCase:case D.greaterThan:return"date is after";case D.greaterThanOrEqualTo:return"date is after or equal";case D.lessThan:return"date is before";case D.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function Uv(n){switch(n){case D.isTrue:return"Is True";case D.isFalse:return"Is False";case D.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}var Su="DH_ITEM_KEY",ci=J.module("ViewportDataUtils");function il(n){return"".concat(Su,"_").concat(n)}function Wv(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;ci.debug("table updated",i.detail);var o=new Map;s.forEach((u,d)=>{var h=e(u,a),c=il(l+d);o.set(c,{key:c,item:h})}),ci.debug("update keys",o),t(o)}}function zv(n,e){return e.reduce((t,r)=>(t[r.name]=n.get(r),t),{})}function*qv(n,e){for(var t=n;t<=e;++t)yield{key:il(t)}}function Eu(n){return n==null||yu(n)?0:n.size}function yu(n){return"isClosed"in n?n.isClosed:!1}function Kv(n,e,t,r){var i=n+e-1,[a,l]=[0,r-1],s=Je(n-t,a,l),o=Je(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 Ct(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 Lt(n,e,t){return e=wu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wu(n){var e=Tu(n,"string");return typeof e=="symbol"?e:String(e)}function Tu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var st=J.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 Ct(function*(){if(e==null)return null;for(var r=yield e.copy(),i=t.length,a=new Array(i>1?i-1:0),l=1;l<i;l++)a[l-1]=t[l];return r.applyFilter(ln(...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)?[D.isTrue,D.isFalse,D.isNull]:S.isCharType(e)||S.isNumberType(e)||S.isDateType(e)?[D.eq,D.notEq,D.greaterThan,D.greaterThanOrEqualTo,D.lessThan,D.lessThanOrEqualTo]:S.isTextType(e)?[D.eq,D.eqIgnoreCase,D.notEq,D.notEqIgnoreCase,D.contains,D.notContains,D.startsWith,D.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 Fs('Event "'.concat(t,'" timed out.')))},r),a=e.addEventListener(t,h=>{if(i!=null&&!i(h)){st.debug2("Event triggered, but matcher returned false.");return}st.debug2("Event triggered, resolving."),a(),clearTimeout(l),s=!1,u(h)})});return o.cancel=()=>{if(s){st.debug2("Pending promise cleanup."),a(),clearTimeout(l),s=!1;return}st.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 D.eq:return"=";case D.notEq:return"!=";case D.greaterThan:return">";case D.greaterThanOrEqualTo:return">=";case D.lessThan:return"<";case D.lessThanOrEqualTo:return"<=";case D.contains:return"~";case D.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 Ye.sort(a,l,t)})}constructor(e){Lt(this,"dh",void 0),this.dh=e,kn(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return Ct(function*(){if(e==null)return null;for(var l=e,s=i.length,o=new Array(s>3?s-3:0),u=3;u<s;u++)o[u-3]=i[u];o.length>0&&(l=yield e.copy(),yield l.applyFilter(ln(...o.map(v=>v(l)))));var d=l.findColumn(t),h=yield l.selectDistinct([d]);l!==e&&l.close();var c=h.findColumn(t).sort()[r]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,r,i){var a=this;return Ct(function*(){if(e==null)return null;var l=cu(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,ln(l(s)));var o=Eu(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 st.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=D.eq;switch(s){case"<":u=D.lessThan;break;case"<=":case"=<":u=D.lessThanOrEqualTo;break;case">":u=D.greaterThan;break;case">=":case"=>":u=D.greaterThanOrEqualTo;break;case"!=":case"!":u=D.notEq;break;case"=":case"==":default:u=D.eq;break}return this.makeQuickDateFilterWithOperation(e,o,u,r)}makeQuickDateFilterWithOperation(e,t,r,i){var{dh:a}=this,[l,s]=ae.parseDateRange(a,t,i),o=l!=null?a.FilterValue.ofNumber(l):null,u=s!=null?a.FilterValue.ofNumber(s):null,d=e.filter();if(o==null)return r===D.notEq?d.isNull().not():d.isNull();switch(r){case D.eq:{if(u!=null){var h=d.greaterThanOrEqualTo(o),c=d.lessThan(u);return h.and(c)}return d.eq(o)}case D.lessThan:return d.lessThan(o);case D.lessThanOrEqualTo:return u!=null?d.lessThan(u):d.lessThanOrEqualTo(o);case D.greaterThan:return u!=null?d.greaterThanOrEqualTo(u):d.greaterThan(o);case D.greaterThanOrEqualTo:return d.greaterThanOrEqualTo(o);case D.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===hr.and)o=o.and(v);else if(g===hr.or)o=o.or(v);else{st.error("Unexpected filter operator",g,v),o=null;break}}}else st.debug2("Empty filter ignored for",h,c)}catch(m){st.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 D.eq:return s.eq(l);case D.eqIgnoreCase:return s.eqIgnoreCase(l);case D.notEq:return s.notEq(l);case D.notEqIgnoreCase:return s.notEqIgnoreCase(l);case D.greaterThan:return s.greaterThan(l);case D.greaterThanOrEqualTo:return s.greaterThanOrEqualTo(l);case D.lessThan:return s.lessThan(l);case D.lessThanOrEqualTo:return s.lessThanOrEqualTo(l);case D.isTrue:return s.isTrue();case D.isFalse:return s.isFalse();case D.isNull:return s.isNull();case D.contains:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))));case D.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))).not());case D.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(r,"\\E.*"))));case D.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E$"))));case D.in:case D.inIgnoreCase:case D.notIn:case D.notInIgnoreCase:case D.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 I(a),a}if(i===this.dh.ValueType.DATETIME)return this.makeQuickDateFilterWithOperation(e,ae.trimDateTimeStringTimeZone(t),"eq",r);if(i===this.dh.ValueType.NUMBER){var l=this.makeQuickNumberFilter(e,t);return I(l),l}return S.isBigDecimalType(e.type)||S.isBigIntegerType(e.type)?e.filter().eq(this.makeFilterValue(e.type,t)):e.filter().containsIgnoreCase(this.makeFilterValue(e.type,t))}catch{return this.makeNeverFilter(e)}}applyNeverFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(e==null)return null;var l=e.findColumn(t),s=[i.makeNeverFilter(l)];return yield i.applyFilter(e,s,a),e})()}applyCustomColumns(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyCustomColumns(t),e,l.Table.EVENT_CUSTOMCOLUMNSCHANGED,a)})()}applyFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyFilter(t),e,l.Table.EVENT_FILTERCHANGED,a)})()}applySort(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applySort(t),e,l.Table.EVENT_SORTCHANGED,a)})()}makeNeverFilter(e){var{dh:t}=this,r=null;S.isTextType(e.type)?r=t.FilterValue.ofString("a"):S.isBooleanType(e.type)?r=t.FilterValue.ofBoolean(!0):S.isDateType(e.type)?r=t.FilterValue.ofNumber(t.DateWrapper.ofJsDate(new Date)):r=t.FilterValue.ofNumber(0);var i=e.filter().eq(r),a=e.filter().notEq(r);return i.and(a)}makeFilterValue(e,t){var{dh:r}=this,i=S.getBaseType(e);return S.isTextType(i)?r.FilterValue.ofString(t):S.isLongType(i)?r.FilterValue.ofNumber(r.LongWrapper.ofString(S.removeCommas(t))):r.FilterValue.ofNumber(S.removeCommas(t))}makeFilterRawValue(e,t){var{dh:r}=this;return S.isCharType(e)?r.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):S.isTextType(e)?r.FilterValue.ofString(t):S.isBooleanType(e)?r.FilterValue.ofBoolean(t):r.FilterValue.ofNumber(t)}makeNullableEqFilter(e,t){return t==null?e.filter().isNull():e.filter().eq(this.makeFilterRawValue(e.type,t))}makeValue(e,t,r){var{dh:i}=this;if(t==="null")return null;if(S.isTextType(e))return t;if(S.isLongType(e))return i.LongWrapper.ofString(S.removeCommas(t));if(S.isBooleanType(e))return S.makeBooleanValue(t,!0);if(S.isDateType(e)){var[a]=ae.parseDateRange(i,t,r);return a}return S.isNumberType(e)?S.makeNumberValue(t):(st.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)}}Lt(S,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});Lt(S,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});Lt(S,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);Lt(S,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));Lt(S,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);Lt(S,"executeAndWaitForEvent",function(){var n=Ct(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=S.makeCancelableTableEventPromise(t,r,i);return e(t),yield a,t});return function(e,t,r){return n.apply(this,arguments)}}());function xt(n,e,t){return e=Pu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pu(n){var e=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 qe{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;xt(this,"defaultColumnFormatter",void 0),xt(this,"typeFormatterMap",void 0),xt(this,"columnFormatMap",void 0),xt(this,"truncateNumbersWithPound",void 0),xt(this,"showEmptyStrings",void 0),xt(this,"showNullStrings",void 0),this.defaultColumnFormatter=new su,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new au],[S.dataType.CHAR,new lu],[S.dataType.DATETIME,new kr(e,r)],[S.dataType.DECIMAL,new Ms(e,i)],[S.dataType.INT,new Rs(e,a)],[S.dataType.STRING,new ou]]),this.columnFormatMap=qe.makeColumnFormatMap(t),this.truncateNumbersWithPound=l,this.showEmptyStrings=s,this.showNullStrings=o}getColumnFormatMapForType(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,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 io(e,kr),e.dhTimeZone.id}}function Ou(n,e){var t=al(e),r=ll(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new qe(n,t,r,i,a,l,s,o)}function al(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function ll(n){return{timeZone:n==null?void 0:n.timeZone,defaultDateTimeFormatString:n==null?void 0:n.defaultDateTimeFormat,showTimeZone:n==null?void 0:n.showTimeZone,showTSeparator:n==null?void 0:n.showTSeparator}}function Nu(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===Ht.TYPE_CONTEXT_PRESET||r.type===Ht.TYPE_CONTEXT_CUSTOM)}const Sn={createFormatterFromSettings:Ou,getColumnFormats:al,getDateTimeFormatterOptions:ll,isCustomColumnFormatDefined:Nu};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 Fu(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){Mu(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 Mu(n,e,t){return e=Ru(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ru(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 Lu=O.lazy(()=>$r(()=>import("./Chart-D4zeuQvq.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url));function sl(n){return f.jsx(O.Suspense,{fallback:f.jsx(ft,{}),children:f.jsx(Lu,Fu({},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 Sr(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){De(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 De(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=xu(n,"string");return typeof e=="symbol"?e:String(e)}function xu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=J.module("ChartUtils"),mi="io.deephaven.time.DateTime",ku=36e5,_u=1e6;function ju(n){return n.asDate!==void 0}function Vu(n){return n.asNumber!==void 0}function gi(n){return n.dhTimeZone!==void 0}function $u(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function Hu(){var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}var Gu=Hu();class M{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*)(%?)(.*)/);I(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",E=c!==""?c:b,C=u.length+d.length,y="",w="0".concat(g).concat(m,".").concat(C).concat(y).concat(E),T=M.convertNumberPrefix(l),F=M.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/_u),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]:M.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=M.getAllAxes(e);return M.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];$u(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static decimalToPeriod(e){var t=Math.floor(e),r=Math.round((e-t)*60);return"".concat(t.toString().padStart(2,"0"),":").concat(r.toString().padStart(2,"0"))}static groupArray(e,t){return e.reduce((r,i)=>{var a,l=i[t],s=(a=r.get(l))!==null&&a!==void 0?a:[];return s.push(i),r.set(l,s),r},new Map)}static normalizeColorway(e){if(e!=null){if(Array.isArray(e))return e;if(typeof e=="string")return e.split(" ");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}static getTimeZoneDiff(e,t){return t?(e.standardOffset-t.standardOffset)/60:0}static createClosedRangesForPartialHoliday(e,t){var r=t.map(h=>[M.periodToDecimal(h.open),M.periodToDecimal(h.close)]);r.sort((h,c)=>h[0]-c[0]),r.length===0&&r.push([0,24]);var i=e.map(h=>[M.periodToDecimal(h.open),M.periodToDecimal(h.close)]);i.sort((h,c)=>h[0]-c[0]);for(var a=[],l=0;l<r.length;l+=1){for(var s=r[l],o=s[0],u=0;u<i.length;u+=1){var d=i[u];d[1]>o&&d[0]<s[1]&&(d[0]>o&&a.push([o,d[0]]),o=d[1])}o<s[1]&&a.push([o,s[1]])}return a}constructor(e){De(this,"dh",void 0),De(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),kn(this)}getAxisFormats(e,t){for(var r=new Map,i={tickformat:null,ticksuffix:null},a=M.getAllAxes(e),l=M.groupArray(a,"type"),{charts:s}=e,o=0;o<s.length;o+=1)for(var u=s[o],d=0;d<u.series.length;d+=1)for(var h=u.series[d],{sources:c}=h,v=c.filter(N=>N.axis),g=0;g<v.length;g+=1){var p=v[g],{axis:m}=p,{type:b}=m,E=l.get(b);I(E);var C=E.indexOf(m),y=this.getAxisPropertyName(b);if(y!=null){var w=M.getAxisLayoutProperty(y,C);if(r.has(w))Qt.debug("".concat(w," already added."));else{Qt.debug("Adding ".concat(w," to axisFormats."));var T=this.getPlotlyAxisFormat(p,t);if(T===null)r.set(w,i);else{r.set(w,T);var{businessCalendar:F}=m;if(F!=null&&(T.rangebreaks=this.createRangeBreaksFromBusinessCalendar(F,t)),r.size===u.axes.length)return r}}}}return r}getPlotlyChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.SCATTER:case i.plot.SeriesPlotStyle.LINE:return!t&&Gu&&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(M.MODE_LINES),(r??!0)&&a.add(M.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(M.MODE_LINES),(r??!1)&&a.add(M.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?M.ORIENTATION.HORIZONTAL:M.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(y=>{var w;return(w=y.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),E=this.getPlotlySeriesOrientation(e),C=M.makeSeriesData(m,b,l,i,E);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);Aa(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=M.getMarkerSymbol(a)}catch(d){Qt.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*M.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=M.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=M.AXIS_SIZE_PX/r,E=M.AXIS_SIZE_PX/i,C={bottom:(o-g)*m+(g<o?E/2:0),top:(o-h)*m-(h>0?E/2:0),left:u*p+(u>0?b/2:0),right:v*p-(v<s?b/2:0)},y=M.groupArray(t.axes,"position"),w=(a=y.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(M.LEGEND_WIDTH_PX/r,M.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*M.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=M.addTickSpacing(s,i,!0)):S.isNumberType(a)&&(s=M.getPlotlyNumberFormat(t,a,l),s=M.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(M.MIN_AXIS_SIZE,Math.min(M.AXIS_SIZE_PX/a,M.MAX_AXIS_SIZE)):M.DEFAULT_AXIS_SIZE,d=a>0?Math.max(M.MIN_AXIS_SIZE,Math.min(M.AXIS_SIZE_PX/i,M.MAX_AXIS_SIZE)):M.DEFAULT_AXIS_SIZE,h=e,c=M.groupArray(t,"position"),v=M.groupArray(t,"type"),g=[...v.keys()],p=M.groupArray(r,"type"),m=0;m<g.length;m+=1){var b=g[m],E=this.getAxisPropertyName(b);if(E!=null){var C=v.get(b),y=p.get(b),w=b===o.plot.AxisType.Y,T=w?a:i;I(C),I(y);for(var F=0;F<C.length;F+=1){var N=C[F],P=y.indexOf(N),_=M.getAxisLayoutProperty(E,P);h[_]==null&&(h[_]={});var A=h[_];if(A!=null){this.updateLayoutAxis(A,N,F,c,u,d,l);var{range:x,autorange:V}=A;if(s!=null&&x!==void 0&&(V===void 0||V===!1)){var U=s(N),[K,ne]=U(x);Qt.debug("Setting downsample range",T,K,ne),N.range(T,K,ne)}else N.range(T)}}}}}removeStaleAxes(e,t){for(var r=e,i=M.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);I(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=M.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=M.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 E=i.get(u.plot.AxisPosition.LEFT)||[],C=i.get(u.plot.AxisPosition.RIGHT)||[],y=Math.max(s.left,s.left+(E.length-1)*l),w=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[y,w]}else if(t.type===u.plot.AxisType.Y){var T=i.get(u.plot.AxisPosition.BOTTOM)||[],F=i.get(u.plot.AxisPosition.TOP)||[],N=Math.max(s.bottom,s.bottom+(T.length-1)*a),P=Math.min(s.top-(F.length-1)*a,s.top);c.domain=[N,P]}}createBoundsFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(e.length===0)return[];for(var r=e.map(o=>[(M.periodToDecimal(o.open)+t)%24,(M.periodToDecimal(o.close)+t)%24]).sort((o,u)=>o[0]-u[0]),i=[],a=0;a<r.length;a+=1){var l=r[a],s=r[(a+1)%r.length];i.push([l[1],s[0]])}return i}createBreaksFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.createBoundsFromPeriods(e,t);return r.map(i=>({pattern:"hour",bounds:i}))}createBoundsFromDays(e){var t=this.daysOfWeek.length;if(e.length===t)return[];for(var r=e.map(o=>this.daysOfWeek.indexOf(o)),i=new Set(r),a=new Set,l=0;l<t;l+=1)!i.has(l)&&i.has((l-1+t)%t)&&a.add(l);var s=[];return a.forEach(o=>{for(var u=0;u<t;u+=1){var d=(o+u)%t;if(i.has(d)){s.push([o,d]);return}}throw new Error("Unable to find open day for closed day ".concat(o,", businessDays: ").concat(e))}),s}createBreaksFromDays(e){var t=this.createBoundsFromDays(e);return t.map(r=>({pattern:"day of week",bounds:r}))}createRangeBreaksFromBusinessCalendar(e,t){var r=[],{businessPeriods:i,businessDays:a,holidays:l,timeZone:s}=e,o=t==null?void 0:t.getColumnTypeFormatter(mi),u;gi(o)&&(u=o.dhTimeZone);var d=M.getTimeZoneDiff(s,u);return l.length>0&&r.push(...this.createRangeBreakValuesFromHolidays(l,s,u,e)),r.push(...this.createBreaksFromPeriods(i,d)),r.push(...this.createBreaksFromDays(a)),r}createRangeBreakValuesFromHolidays(e,t,r,i){var a=[],l=[];return e.forEach(s=>{s.businessPeriods.length>0?l.push(...this.createPartialHoliday(s,t,r,i)):a.push(this.createFullHoliday(s,t,r))}),[{values:a},...l]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r,i){var a;if(e.businessPeriods.length===0)return[];var l=e.date.toString();if(i){var s=new Date(l).getDay(),o=i.businessDays.includes(this.daysOfWeek[s]);if(!o)return[]}for(var u=M.createClosedRangesForPartialHoliday(e.businessPeriods,(a=i==null?void 0:i.businessPeriods)!==null&&a!==void 0?a:[]),d=[],h=0;h<u.length;h+=1){var[c,v]=u[h];if(c!==v){var g=[this.adjustDateForTimeZone("".concat(l," ").concat(M.decimalToPeriod(c),":00.000000"),t,r)],p=ku*(v-c);d.push({values:g,dvalue:p})}}return d}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,mi,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=M.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(ju(e))return r.i18n.DateTimeFormat.format(M.DATE_FORMAT,e,t);if(Vu(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=M.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!r)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e,t){var{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticks:"outside",ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_color}},legend:{font:{color:t.legend_color}}};return e===r.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===r.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultTemplate(e){var{error_band_line_color:t,ohlc_increasing:r,ohlc_decreasing:i,title_color:a,indicator_increasing:l,indicator_decreasing:s,indicator_gauge:o}=e;return{data:{bar:[{marker:{line:{color:"transparent"}}}],scatter:[{error_x:{color:t},error_y:{color:t}}],ohlc:[{increasing:{line:{color:r}},decreasing:{line:{color:i}}}],pie:[{outsidetextfont:{color:a}}],treemap:[{outsidetextfont:{color:a}}],indicator:[{title:{font:{color:a}},delta:{decreasing:{color:s},increasing:{color:l}},gauge:{bar:{color:o}}}]},layout:this.makeDefaultLayout(e)}}makeDefaultLayout(e){var{dh:t}=this,{paper_bgcolor:r,plot_bgcolor:i,title_color:a,coastline_color:l,land_color:s,ocean_color:o,lake_color:u,river_color:d}=e,h={paper_bgcolor:r,plot_bgcolor:i,autosize:!0,colorway:M.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:Sr({},M.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:Sr({},M.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 Sr(Sr({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}De(M,"DEFAULT_AXIS_SIZE",.15);De(M,"MIN_AXIS_SIZE",.025);De(M,"MAX_AXIS_SIZE",.2);De(M,"AXIS_SIZE_PX",75);De(M,"LEGEND_WIDTH_PX",50);De(M,"MAX_LEGEND_SIZE",.25);De(M,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));De(M,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");De(M,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));De(M,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));De(M,"SUBTITLE_LINE_HEIGHT",25);De(M,"DEFAULT_MARKER_SIZE",6);De(M,"MODE_MARKERS","markers");De(M,"MODE_LINES","lines");function be(n,e,t){return e=Bu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bu(n){var e=Uu(n,"string");return typeof e=="symbol"?e:String(e)}function Uu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class re{constructor(e){be(this,"dh",void 0),be(this,"listeners",void 0),be(this,"formatter",void 0),be(this,"renderOptions",void 0),be(this,"rect",void 0),be(this,"isDownsamplingDisabled",void 0),be(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(re.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(re.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(re.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(re.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(re.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(re.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(re.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(re.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(re.EVENT_ERROR,{detail:e}))}fireBlocker(e){this.fireEvent(new CustomEvent(re.EVENT_BLOCKER,{detail:e}))}fireBlockerClear(){this.fireEvent(new CustomEvent(re.EVENT_BLOCKER_CLEAR))}fireLayoutUpdated(e){this.fireEvent(new CustomEvent(re.EVENT_LAYOUT_UPDATED,{detail:e}))}}be(re,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");be(re,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");be(re,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");be(re,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");be(re,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");be(re,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");be(re,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");be(re,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");be(re,"EVENT_ERROR","ChartModel.EVENT_ERROR");be(re,"EVENT_BLOCKER","ChartModel.EVENT_BLOCKER");be(re,"EVENT_BLOCKER_CLEAR","ChartModel.EVENT_BLOCKER_CLEAR");be(re,"EVENT_LAYOUT_UPDATED","ChartModel.EVENT_LAYOUT_UPDATED");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){ce(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 ce(n,e,t){return e=Wu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wu(n){var e=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)}var we=J.module("FigureChartModel");class cr extends re{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,ce(this,"chartUtils",void 0),ce(this,"dh",void 0),ce(this,"figure",void 0),ce(this,"settings",void 0),ce(this,"data",void 0),ce(this,"layout",void 0),ce(this,"seriesDataMap",void 0),ce(this,"pendingSeries",void 0),ce(this,"oneClicks",void 0),ce(this,"filterColumnMap",void 0),ce(this,"lastFilter",void 0),ce(this,"isConnected",void 0),ce(this,"seriesToProcess",void 0),ce(this,"addPendingSeries",vt(()=>{for(var a=M.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=[]},cr.ADD_SERIES_DEBOUNCE)),ce(this,"getTimeZone",Ge((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),ce(this,"getValueTranslator",Ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),ce(this,"getValueParser",Ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),ce(this,"getRangeParser",Ge((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]},{max:100})),ce(this,"getAxisRangeParser",Ge((a,l)=>s=>{var o=M.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new M(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=M.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(_=>_.type===e.dh.plot.AxisType.X),E=p.find(_=>_.type===e.dh.plot.AxisType.Y);if(b==null||E==null)we.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,y,w,T,F=((C=(y=r.get(b.type))===null||y===void 0?void 0:y.findIndex(_=>_===b))!==null&&C!==void 0?C:0)+1,N=((w=(T=r.get(E.type))===null||T===void 0?void 0:T.findIndex(_=>_===E))!==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(N," 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,M.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=M.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=M.DEFAULT_MARGIN.t+i*M.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=M.DEFAULT_TITLE_PADDING.t+i*M.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&&Aa(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=M.getPlotlyErrorBars(d,h,c)),g&&p&&g!==v&&(a.error_y=M.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}}ce(cr,"ADD_SERIES_DEBOUNCE",50);function Si(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 dn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Si(a,r,i,l,s,"next",o)}function s(o){Si(a,r,i,l,s,"throw",o)}l(void 0)})}}class Gt{static makeModelFromSettings(e,t,r){return dn(function*(){var i=yield Gt.makeFigureFromSettings(e,t,r);return new cr(e,i,t)})()}static makeFigureFromSettings(e,t,r){return dn(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new M(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return dn(function*(){return new cr(e,r,t)})()}}function Ei(n){return n.setFigure!==void 0}function qu(n){return typeof n.id=="string"&&n.layout instanceof Is&&n.panelManager instanceof Ls&&typeof n.registerComponent=="function"}function Xt(n){if(!qu(n))throw new Error("Expected dashboard plugin props, but instead received ".concat(n))}function Jt(n,e,t,r){var i,a=(i=e.COMPONENT)!==null&&i!==void 0?i:e.displayName;if(a==null)throw new Error("ComponentType must have a `COMPONENT` or `displayName` attribute.");Re.useEffect(()=>{var l=n(a,e,t,r);return()=>{l()}},[e,r,t,a,n])}function yi(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 Ku(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?yi(Object(t),!0).forEach(function(r){Xu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):yi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xu(n,e,t){return e=Yu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yu(n){var e=Zu(n,"string");return typeof e=="symbol"?e: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)}var Qu=O.lazy(()=>$r(()=>import("./IrisGrid-76MraAFA.js"),__vite__mapDeps([13,1,2,3,4,5,8,9,14,11,15,16]),import.meta.url)),Kr=O.forwardRef((n,e)=>f.jsx(O.Suspense,{fallback:f.jsx(ft,{}),children:f.jsx(Qu,Ku({ref:e},n))}));Kr.displayName="LazyIrisGrid";var En;(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"})(En||(En={}));const wi=En;var Ju=Object.freeze([[wi.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[wi.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const ol={DEFAULTS:Ju};var Z;(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"})(Z||(Z={}));var Yv=[Z.SUM,Z.ABS_SUM,Z.MIN,Z.MAX,Z.VAR,Z.AVG,Z.STD,Z.FIRST,Z.LAST,Z.COUNT_DISTINCT,Z.DISTINCT,Z.COUNT,Z.UNIQUE],ed=n=>{switch(n){default:return!1}},td=(n,e)=>{switch(n){case Z.COUNT:case Z.FIRST:case Z.LAST:case Z.COUNT_DISTINCT:case Z.DISTINCT:case Z.UNIQUE:return!0;case Z.MIN:case Z.MAX:return S.isNumberType(e)||S.isDateType(e)||S.isTextType(e);case Z.SUM:case Z.ABS_SUM:case Z.VAR:case Z.AVG:case Z.STD:return S.isNumberType(e);case Z.SKIP:return!1}},ul=(n,e)=>n.filter(t=>t.isProxy!==!0&&td(e,t.type)),rd=(n,e,t,r)=>ul(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const Ti={isRollupOperation:ed,filterValidColumns:ul,getOperationColumnNames:rd};function nd(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function ir(n,e,t){return e=id(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function id(n){var e=ad(n,"string");return typeof e=="symbol"?e:String(e)}function ad(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yn;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(yn||(yn={}));class k{static normalize(e,t,r,i){var a=e,l=t,s=r,o=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),l!=null&&o!=null&&o<l&&(l=o,o=t),[a,l,s,o]}static makeNormalized(e,t,r,i){return new k(...k.normalize(e,t,r,i))}static makeCell(e,t){return new k(e,t,e,t)}static makeColumn(e){return new k(e,null,e,null)}static makeRow(e){return new k(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],l=t.length-1;l>i;l-=1){var s=t[l];if(a.contains(s))t.splice(l,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(l,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:o,endRow:u}=a,d=k.minOrNull(a.startColumn,s.startColumn),h=k.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new k(d,o,h,u),t.splice(l,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:c,endColumn:v}=a,g=k.minOrNull(a.startRow,s.startRow),p=k.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new k(c,g,v,p),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){var r,i,a,l,s,o;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:c}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,h=h!=null&&t.endColumn!=null?Math.min(h,t.endColumn):(i=h)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,c=c!=null&&t.endRow!=null?Math.min(c,t.endRow):(l=c)!==null&&l!==void 0?l:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((o=c)!==null&&o!==void 0?o:-1)?null:new k(u,d,h,c)}static subtractFromRange(e,t){var r=[],i=k.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new k(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new k(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new k(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new k(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...k.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=k.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,l,s;return k.isBounded(e)?e:new k((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(l=e.endColumn)!==null&&l!==void 0?l:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>k.boundedRange(i,t,r))}static offset(e,t,r){return new k(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:k.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(c=>c.containsCell(t,r)),a>=0)){var l=e[a],s=l.nextCell(t,r,i);if(s!=null)return s}switch(i){case k.SELECTION_DIRECTION.DOWN:case k.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case k.SELECTION_DIRECTION.LEFT:case k.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,h=e[d];return h.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,l,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=r.endColumn)!==null&&l!==void 0?l:NaN)-((s=r.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:k.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){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 k.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&k.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return k.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:k.SELECTION_DIRECTION.DOWN;if(!k.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case k.SELECTION_DIRECTION.DOWN:case k.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case k.SELECTION_DIRECTION.LEFT:case k.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!k.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:l,endRow:s}=this;switch(r){case k.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,l)};if(e<a)return{column:Math.max(e+1,i),row:l};break;case k.SELECTION_DIRECTION.UP:if(t>l)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case k.SELECTION_DIRECTION.RIGHT:if(e<a)return{column:Math.max(e+1,i),row:t};if(t<s)return{column:i,row:Math.max(t+1,l)};break;case k.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>l)return{column:a,row:Math.min(t-1,s)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:k.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,r),r+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}ir(k,"SELECTION_DIRECTION",yn);function ld(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 ld(n)&&n[0]!=null&&n[1]!=null}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){dl(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 dl(n,e,t){return e=sd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sd(n){var e=od(n,"string");return typeof e=="symbol"?e:String(e)}function od(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Zv(n){return(n==null?void 0:n.href)!==void 0}class H{static getGridPointFromXY(e,t,r){var i=H.getColumnAtX(e,r),a=H.getRowAtY(t,r),l=H.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=H.getGridPointFromXY(e,t,r),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=r,c=i!==null?h.get(i):null,v=a!==null?d.get(a):null,g=a!==null?o.get(a):null,p=i!==null?u.get(i):null,m=a!==null?l.get(a):null,b=i!==null?s.get(i):null;return{row:i,column:a,modelRow:c??null,modelColumn:v??null,left:g??null,top:p??null,columnWidth:m??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var r=H.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Je(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=H.iterateFloatingStart(e,r,i);return a!==void 0?a:H.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,l){var s=Math.max(e,r),o=Math.min(t,a-i-1),u=H.iterateFloating(r,i,a,l);if(u!==void 0)return u;for(var d=s;d<=o;d+=1)if(u=l(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=r.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,r,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:H.iterateFloating(r,i,t,c=>{if(H.isInItem(c,l,s,e))return c});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(H.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:l,visibleColumns:s,allColumnXs:o,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,l,s,o,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,l,s,o)}static getNextShownItem(e,t,r,i){var a=r.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=r[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return H.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return H.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:c}=r,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(c*l<t||!v||g<=0)return null;for(var p=e-a,m=g*.5,b=!1,E=s.length-1;E>=0;E-=1){var C,y,w=s[E],T=(C=d.get(w))!==null&&C!==void 0?C:0,F=(y=h.get(w))!==null&&y!==void 0?y:0,N=F===0;if(!b||!N){var P=T+F;N?P+=m:b&&(P-=m);var _=P-m,A=P+m;if(_<=p&&p<=A)return w;b=N}}b=!1;for(var x=u.length-1;x>=0;x-=1){var V,U,K=u[x],ne=(V=d.get(K))!==null&&V!==void 0?V:0,le=(U=h.get(K))!==null&&U!==void 0?U:0,ve=le===0;if(ne<o-le)return null;if(!b||!ve){var fe=ne+le;ve?fe+=m:b&&(fe-=m);var Ie=fe-m,R=fe+m;if(Ie<=p&&p<=R)return K;b=ve}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return H.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!H.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=r[l];if(!H.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return H.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var c=t-l,v=h*.5,g=!1,p=s.length-1;p>=0;p-=1){var m,b,E=s[p],C=(m=o.get(E))!==null&&m!==void 0?m:0,y=(b=u.get(E))!==null&&b!==void 0?b:0,w=y===0;if(!g||!w){var T=C+y;w?T+=v:g&&(T-=v);var F=T-v,N=T+v;if(F<=c&&c<=N)return E;g=w}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return H.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return H.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return[...r];var i=[...r],a=i[i.length-1];return a!=null&&!Er(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=yr(yr({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return H.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var l=[...r],s=l[l.length-1];s!=null&&Er(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=yr(yr({},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)?H.moveRange(e,t,r,i):H.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=r[s],h=1,c;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=[],E=function(){var w,T,F=(w=a[C][0])!==null&&w!==void 0?w:Number.NEGATIVE_INFINITY,N=(T=a[C][1])!==null&&T!==void 0?T:Number.POSITIVE_INFINITY,P,_=[[F,v-1],[v,g],[g+1,N]].map(A=>{var[x,V]=A;return[Math.max(x,F),Math.min(V,N)]}).filter(A=>{var[x,V]=A;return x<=V}).map(A=>{var[x,V]=A;return v<=x&&g>=V?(P=[x+m,V+m],P):g<x?[x-h,V-h]:A}).map(A=>{var[x,V]=A;return p>x&&p<=V?[[x,p-1],[p+h,V+h]]:A===P?[A]:p<=x?[[x+h,V+h]]:[A]}).flat();b.push(..._)},C=0;C<a.length;C+=1)E();a=b.map(y=>{var[w,T]=y;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=H.applyItemMoves(e.startColumn,e.endColumn,t,i),l=H.applyItemMoves(e.startRow,e.endRow,r,i),s=[],o=0;o<a.length;o+=1)for(var u=a[o],d=0;d<l.length;d+=1){var h=l[d];s.push(new k(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=H.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>H.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return H.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee;return H.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(...H.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return H.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]: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(...H.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=H.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>H.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return H.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=H.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:c,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:p,columnCount:m,rowCount:b}=e,E=i,C=a,y=l,w=s;return r!=null&&(r>d&&(E+=c),r<m-h&&(y-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(w-=p)),{x1:E,y1:C,x2:y,y2:w}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!H.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=r):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(H.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],l=i[1];r===0?t.push([a,l]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],l):t.push([a,l])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:c}=t,v=Je(s+r,s,u-h),g=Je(s+a,s,u-h),p=Je(o+i,o,d-c),m=Je(o+l,o,d-c);return{x1:v,y1:p,x2:g,y2:m,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:c,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:p,treeHorizontalPadding:m}=l,b=At(c,r),E=At(v,t),C=a.textAlignForCell(E,b),y=At(o,t),w=At(d,r),T=At(u,t),F=At(h,r),N=t===s,P=0;nd(a)&&a.hasExpandableRows&&N&&(P=p*(a.depthForRow(r)+1)+m);var _=T-P,A=y+g,x=w+F*.5;return C==="right"?A=y+_-g:C==="center"&&(A=y+_*.5),A+=P,{width:_-g*2,x:A,y:x}}static findTokensWithProtocolInText(e){var t=hs(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}dl(H,"PIXELS_PER_LINE",100/3);function Di(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Oi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Di(Object(t),!0).forEach(function(r){ud(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 ud(n,e,t){return e=dd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dd(n){var e=hd(n,"string");return typeof e=="symbol"?e:String(e)}function hd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 wn(n,e){var t=!1,r=Ge(n,Oi(Oi({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r}function cd(n,e,t){return e=vd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vd(n){var e=fd(n,"string");return typeof e=="symbol"?e:String(e)}function fd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var hn=5e3;class pd extends cs{constructor(){super(...arguments),cd(this,"getCachedTokensInText",wn((e,t)=>{if(t>=e.length)return H.findTokensWithProtocolInText(e);var r=e.slice(t-1,hn).search(/\s/),i=t+r;r===-1&&(i=Math.min(hn,e.length));var a=e.substring(0,i);return H.findTokensWithProtocolInText(a)},{max:1e4}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:hn,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}function Tn(n,e,t){return e=md(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function md(n){var e=gd(n,"string");return typeof e=="symbol"?e:String(e)}function gd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ot=[],bd=new Set;class z extends pd{constructor(e){super(),Tn(this,"dh",void 0),Tn(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 Ot}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 Ot}get initialMovedRows(){return Ot}get initialColumnHeaderGroups(){return Ot}get layoutHints(){return null}get frontColumns(){return Ot}get backColumns(){return Ot}get keyColumnSet(){return bd}get frozenColumns(){return Ot}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.")}tooltipForCell(e,t){return null}}Tn(z,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED",VIEWPORT_UPDATED:"VIEWPORT_UPDATED"}));function St(n,e,t){return e=Cd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Cd(n){var e=Sd(n,"string");return typeof e=="symbol"?e:String(e)}function Sd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ed=J.module("ColumnHeaderGroup");function cn(n){return n instanceof pr}class pr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;St(this,"name",void 0),St(this,"children",void 0),St(this,"depth",void 0),St(this,"parent",void 0),St(this,"color",void 0),St(this,"childIndexes",void 0),St(this,"getVisibleRange",B(o=>{var u=this.childIndexes.flat(),d=H.getVisibleIndexes(u,o),h=Math.min(...d),c=Math.max(...d);return c-h!==u.length-1&&Ed.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)}}St(pr,"NEW_GROUP_PREFIX",":newGroup");function nt(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 yd(n){return nt(n)&&n.partitionConfig!==void 0}var wd=["selectedValues"],Td=["selectedValues"];function Ni(n,e){if(n==null)return{};var t=Pd(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 Pd(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 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 $e(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){Pn(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 Pn(n,e,t){return e=Dd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dd(n){var e=Od(n,"string");return typeof e=="symbol"?e:String(e)}function Od(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var er=J.module("IrisGridUtils");function Qv(n){return n.partition!==void 0}function Mi(n){return Array.isArray(n.partitions)}function pt(n,e){return n>=0&&n<e.length}function Nd(n){return(n==null?void 0:n.asDate)!=null}class G{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 pt(u,s)&&(typeof d=="number"&&pt(d,s)||Array.isArray(d)&&pt(d[0],s)&&pt(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=G.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 pt(c,d)&&(typeof v=="number"&&pt(v,d)||Array.isArray(v)&&pt(v[0],d)&&pt(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 Mi(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=Mi(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=G.parseCustomColumnNames(e),i=G.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return r.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=r[s],d=i.findIndex(b=>b===u),h=[],c=0;c<a.length;c+=1){var v=a[c],g=$e({},v),[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($e($e({},g),{},{from:p})):h.push($e($e({},g),{},{from:[p,m]}))),d=H.applyItemMoves(d,d,[v])[0][0]}a=h,i.splice(i.findIndex(b=>b===u),1)},s=0;s<r.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var l=[],s=t;s<=r;s+=1){var o=H.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s>=0&&l.length<r;){var o=H.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s<e.length&&l.length<r;){var o=H.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var l=e.find(s=>{var{name:o}=s;return o===a});l!=null&&!t.includes(l)&&i.push(l)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(!(t==null||r==null)){var o=G.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=G.getPrevVisibleColumns(e,t-1,u,i,a),h=G.getNextVisibleColumns(e,r+1,u,i,a),c=[...d,...o,...h];return G.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];I(a.startColumn),I(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:E,selected:C,invert:y}=b;return Ti.isRollupOperation(E)?[]:Ti.getOperationColumnNames(e,E,C,y)}),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(E=>g.delete(E))}),g.size>0){var p,m=(p=c[Z.FIRST])!==null&&p!==void 0?p:[];c[Z.FIRST]=[...m,...g]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:c}}static getPendingErrors(e){e.forEach((t,r)=>{if(!G.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!G.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(er.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&&er.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(I(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(E=>{if(o.has(E))throw new Error("Column group child ".concat(E," specified in multiple groups"));o.add(E);var C=s.get(E),y=e.getColumnIndexByName(E);if(C){var w=u(C);p.push(...w.childIndexes),m=Math.max(m,w.depth+1)}else if(y!=null)p.push(y),m=Math.max(m,1);else throw new Error("Unknown child ".concat(E," in group ").concat(v))});var b=new pr($e($e({},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(E=>i.set(E,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)&&Nd(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){Pn(this,"dh",void 0),Pn(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),kn(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,reverse:h,rollupConfig:c=void 0,showSearchBar:v,searchValue:g,selectDistinctColumns:p=ee,selectedSearchColumns:m,sorts:b,invertSearchColumns:E,pendingDataMap:C=Ir,frozenColumns:y,columnHeaderGroups:w,partitionConfig:T=void 0}=t;I(s);var{userColumnWidths:F,userRowHeights:N}=s,{columns:P}=e,_=nt(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(P,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:G.dehydrateQuickFilters(o),sorts:G.dehydrateSort(b),userColumnWidths:[...F].filter(A=>{var[x]=A;return x!=null&&x>=0&&x<P.length}).map(A=>{var[x,V]=A;return[P[x].name,V]}),userRowHeights:[...N],customColumns:[...u],conditionalFormats:[...d],reverse:h,rollupConfig:c,showSearchBar:v,searchValue:g,selectDistinctColumns:[...p],selectedSearchColumns:m,invertSearchColumns:E,pendingDataMap:this.dehydratePendingDataMap(P,C),frozenColumns:y,columnHeaderGroups:w==null?void 0:w.map(A=>{var x;return{name:A.name,children:A.children,color:(x=A.color)!==null&&x!==void 0?x:null}}),partitionConfig:this.dehydratePartitionConfig(_,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,reverse:m,rollupConfig:b=void 0,showSearchBar:E,searchValue:C,selectDistinctColumns:y,selectedSearchColumns:w,invertSearchColumns:T=!0,pendingDataMap:F=[],frozenColumns:N,columnHeaderGroups:P,partitionConfig:_}=t,{columns:A,formatter:x}=e,V=nt(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(A,a,x.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(A,u,x.timeZone),sorts:this.hydrateSort(A,d),userColumnWidths:new Map(v.map(U=>{var[K,ne]=U;return typeof K=="string"||K instanceof String?[A.findIndex(le=>{var{name:ve}=le;return ve===K}),ne]:[K,ne]}).filter(U=>{var[K]=U;return K!=null&&K>=0&&K<A.length})),customColumns:h,conditionalFormats:c,userRowHeights:new Map(g),reverse:p===S.REVERSE_TYPE.POST_SORT||m,rollupConfig:b,showSearchBar:E,searchValue:C,selectDistinctColumns:y,selectedSearchColumns:w,invertSearchColumns:T,pendingDataMap:this.hydratePendingDataMap(A,F),frozenColumns:N,columnHeaderGroups:G.parseColumnHeaderGroups(e,(r=P??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(V,_)}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=G.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){er.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=G.getColumn(e,i);I(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=G.getColumn(e,l);I(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=G.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(c){er.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Ni(t,wd);return $e({selectedValues:r==null?void 0:r.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Ni(t,Td);return $e({selectedValues:r==null?void 0:r.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].filter(l=>{var[s]=l;return typeof s=="number"}).map(l=>{var[s,o]=l;return[e[s].name,this.dehydrateValue(o,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 I(c),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[c].type)]}))}]}))}dehydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((r,i)=>this.dehydrateValue(r,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((r,i)=>this.hydrateValue(r,e[i].type))})}dehydrateValue(e,t){return S.isDateType(t)?this.dehydrateDateTime(e):S.isLongType(t)?G.dehydrateLong(e):e}hydrateValue(e,t){return S.isDateType(t)?this.hydrateDateTime(e):S.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(ae.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(ae.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh: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"?G.getColumnByName(e,a):G.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=G.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=G.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=>G.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){er.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)=>(I(i.startRow),I(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return I(a),I(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}}function vn(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=Md(n,"string");return typeof e=="symbol"?e:String(e)}function Md(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Rd extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),vn(this,"isMissingKey",!0),vn(this,"rowIndex",void 0),vn(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}function Ri(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function wr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ri(Object(t),!0).forEach(function(r){X(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ri(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ii(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){Ii(a,r,i,l,s,"next",o)}function s(o){Ii(a,r,i,l,s,"throw",o)}l(void 0)})}}function X(n,e,t){return e=Id(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Id(n){var e=Ld(n,"string");return typeof e=="symbol"?e:String(e)}function Ld(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var oe=J.module("IrisGridTableModelTemplate"),Ad=150,xd=0;function _t(n){return n.table!==void 0}class Bt extends z{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),X(this,"dh",void 0),X(this,"irisGridUtils",void 0),X(this,"tableUtils",void 0),X(this,"irisFormatter",void 0),X(this,"inputTable",void 0),X(this,"subscription",void 0),X(this,"table",void 0),X(this,"viewport",void 0),X(this,"viewportData",void 0),X(this,"formattedStringData",void 0),X(this,"pendingStringData",void 0),X(this,"isSaveInProgress",void 0),X(this,"totalsTable",void 0),X(this,"totalsTablePromise",void 0),X(this,"totals",void 0),X(this,"totalsDataMap",void 0),X(this,"pendingNewDataMap",void 0),X(this,"pendingNewRowCount",0),X(this,"_columnHeaderGroupMap",new Map),X(this,"columnHeaderParentMap",new Map),X(this,"_columnHeaderMaxDepth",null),X(this,"_columnHeaderGroups",[]),X(this,"_isColumnHeaderGroupsInitialized",!1),X(this,"_movedColumns",null),X(this,"getMemoizedInitialMovedColumns",B(a=>{var l,s,o,u;if(!a)return[];var d=[],{groupMap:h}=G.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]),c=(T,F)=>{var N=this.getColumnIndexByName(T);if(N==null)throw new Error("Unknown layout hint column: ".concat(T));var P=H.getVisibleIndex(N,d);d=H.moveItem(P,F,d)},v=(T,F)=>{var N=h.get(T);if(N==null)throw new Error("Unknown layout hint group: ".concat(T));var P=N.getVisibleRange(d);d=H.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,E=0;m==null||m.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,E),E+=1}),g.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,E),E+=1});var C=this.columns.length-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 y=a==null?void 0:a.columnGroups;if(y){var w=[...h.values()];w.sort((T,F)=>T.depth-F.depth),w.forEach(T=>{var F=T.children[0],N=this.getColumnIndexByName(F),P;if(N!=null)P=H.getVisibleIndex(N,d);else{var _=h.get(F);if(!_)throw new Error("Unknown column ".concat(F," in group ").concat(T.name));var A=_.getVisibleRange(d);[,P]=A}for(var x=1;x<T.children.length;x+=1){var V=T.children[x],U=h.get(V),K=this.getColumnIndexByName(V);if(U){var ne=U.getVisibleRange(d)[0]<P,le=ne?P-U.childIndexes.length+1:P+1;v(V,le),P=le+U.childIndexes.length-1}else if(K!=null){var ve=H.getVisibleIndex(K,d)<P,fe=ve?P:P+1;c(V,fe),P=fe}}})}return this._movedColumns=d,d})),X(this,"getMemoizedInitialColumnHeaderGroups",B(a=>{var l;return G.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]).groups})),X(this,"getColumnIndicesByNameMap",B(a=>{var l=new Map;return a.forEach((s,o)=>{var{name:u}=s;return l.set(u,o)}),l})),X(this,"setViewport",Qn((a,l,s)=>{if(l<a){oe.error("Invalid viewport",a,l);return}var{viewport:o}=this;if(o!=null&&o.top===a&&o.bottom===l&&o.columns===s){oe.debug2("Ignoring duplicate viewport",o);return}this.viewport={top:a,bottom:l,columns:s},oe.debug2("setViewport",this.viewport),this.applyViewport()},Ad)),X(this,"applyViewport",Qn(()=>{if(this.viewport){oe.debug2("applyViewport",this.viewport);var{top:a,bottom:l,columns:s}=this.viewport,[o,u]=this.getCachedViewportRowRange(a,l);this.applyBufferedViewport(o,u,s)}},xd,{leading:!1})),X(this,"getCachedFormattedString",wn((a,l,s,o,u)=>a.getFormattedString(l,s,o,u),{max:1e4})),X(this,"getCachedCustomColumnFormatFlag",wn(Sn.isCustomColumnFormatDefined,{max:1e4})),X(this,"getCachedViewportRowRange",B((a,l)=>{var s=l-a,o=Math.max(0,a-s*Bt.ROW_BUFFER_PAGES),u=l+s*Bt.ROW_BUFFER_PAGES;return[o,u]})),X(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 Rd(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 G(e),this.inputTable=i,this.subscription=null,this.table=t,this.tableUtils=new S(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new ie(z.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new ie(z.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new ie(z.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new ie(z.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new ie(z.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,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(!G.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!G.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new ie(z.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new ie(z.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isDeletable(){return this.keyColumnSet.size>0}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,r=this.viewportData.rows[0].data.get(this.viewport.columns[0].index)===void 0,i=this.viewportData.rows[0].data.get(this.viewport.columns[this.viewport.columns.length-1].index)===void 0;return e||t||r||i}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a=this.valueForCell(e,t);if(a===null)return null;if(a===void 0)return;var l=this.sourceColumn(e,t),s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),o;if(!s){var u=this.formatForCell(e,t);(u==null?void 0:u.formatString)!=null&&(o=u)}var d=this.displayString(a,l.type,l.name,o);this.cacheFormattedValue(e,t,d)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(S.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return this.formatter.showNullStrings?"null":"";if(i==="")return this.formatter.showEmptyStrings?"empty":""}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(S.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return I(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return I(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);if(S.isDateType(s.type)||s.name==="Date")return I(r.dateColor),r.dateColor;if(S.isNumberType(s.type))return l>0?(I(r.positiveNumberColor),r.positiveNumberColor):l<0?(I(r.negativeNumberColor),r.negativeNumberColor):(I(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return I(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 cn(i)?i.isNew?"":i.name:(t=i==null?void 0:i.displayName)!==null&&t!==void 0?t:i==null?void 0:i.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(cn(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}tooltipForCell(e,t){return e===null||t===null?null:S.isDateType(this.columns[e].type)?this.displayString(this.valueForCell(e,t),this.columns[e].type,this.columns[e].name,{formatString:ae.FULL_DATE_FORMAT}):null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(cn(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroupMap}get columnHeaderGroups(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=G.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=G.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,E=(p=this.totals)===null||p===void 0?void 0:p.operationOrder[g];return I(E),(m=(b=this.totalsDataMap)===null||b===void 0?void 0:b.get(E))!==null&&m!==void 0?m:null}var C=this.pendingRow(e);if(C!=null){var y;return(y=this.pendingNewDataMap.get(C))!==null&&y!==void 0?y: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:Z.SUM,d=this.columns[e],h=(s=this.totalsTable)===null||s===void 0?void 0:s.columns.find(c=>{var v;return c.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0?void 0:v.operationOrder.length)===1)&&c.name===d.name});if(h!=null)return h}return this.columns[e]}totalsRow(e){var t,r,i,a,l,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,u=o?e:e-this.table.size;return u>=0&&u<s?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){oe.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){oe.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){oe.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:Z.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,c=function(){var p,m,b=l[v],[E,C=(p=h==null||(m=h[E])===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:y}=o.get(C),w=a.columns.findIndex(T=>T.name===E);y.set(w,{value:u.get(b),format:u.getFormat(b)})},v=0;v<l.length;v+=1)c();oe.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,r);t.rows.push(l)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);r.set(l??a.name,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){oe.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new ie(z.EVENT.FORMATTER_UPDATED))}displayString(e,t){var 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(oe.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new ie(z.EVENT.UPDATED));return}this.totalsTablePromise=xe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{xe.isCanceled(t)||(oe.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){oe.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){if(this.dispatchEvent(new ie(z.EVENT.VIEWPORT_UPDATED)),oe.debug2("applyBufferedViewport",e,t,r),this.subscription==null){var i;oe.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,r))!==null&&i!==void 0?i:null}else oe.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r)}snapshot(e){var t=arguments,r=this;return mt(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?k.consolidate(e):e;if(!G.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];I(c.endRow),I(c.startRow);for(var v=c.startRow;v<=c.endRow&&v<r.floatingTopRowCount;v+=1)o.add(v);c.endRow>=r.floatingTopRowCount&&c.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new k(c.startColumn,Math.min(Math.max(0,c.startRow-r.floatingTopRowCount)),c.endColumn,Math.min(Math.max(0,c.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(c.startRow,r.floatingTopRowCount+r.table.size);g<=c.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var p=G.columnsFromRanges(s,r.columns),m=[];i&&m.push(p.map(P=>P.name));for(var b=[...o].sort(),E=function*(){var _=b[C],A=p.map(x=>{var V=r.getColumnIndexByName(x.name);return I(V),a(r.valueForCell(V,_),x)});i&&A.push(r.textForRowFooter(_)),m.push(A)},C=0;C<b.length;C+=1)yield*E();if(u.length>0){var y=r.irisGridUtils.rangeSetFromRanges(u),w=yield r.subscription.snapshot(y,p);m.push(...w.rows.map(P=>p.map(_=>a(P.get(_),_))))}for(var T=[...d].sort(),F=function*(){var _=T[N],A=p.map(x=>{var V=r.getColumnIndexByName(x.name);return I(V),a(r.valueForCell(V,_),x)});i&&A.push(r.textForRowFooter(_)),m.push(A)},N=0;N<T.length;N+=1)yield*F();return m})()}textSnapshot(e){var t=arguments,r=this;return mt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:s=>"".concat(s);oe.debug2("textSnapshot",e,i);var l=yield r.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
|
|
4
|
-
`)})()}valuesTable(e){var t=this;return mt(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),yield r.selectDistinct(Array.isArray(e)?e:[e])}finally{r!=null&&r.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){return this.keyColumnSet.has(this.columns[e].name)}isRowMovable(){return!1}isEditableRange(e){var t;if(this.inputTable==null||e.startRow==null||e.endRow==null)return!1;var r=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow),i=!1;I(e.startColumn);for(var a=(t=e.endColumn)!==null&&t!==void 0?t:this.table.size,l=e.startColumn;l<=a;l+=1)if(this.isKeyColumn(l)){i=!0;break}return!!(r||this.keyColumnSet.size!==0&&!i)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new k(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new k(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return mt(function*(){return i.setValueForRanges([new k(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return mt(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];k.forEachCell(e,(p,m)=>{var b=r.columns[p];if(i.add(b),a[p]===void 0){var E=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);a[p]=E!=null?r.displayString(E,b.type,b.name):null}r.cachePendingValue(p,m,a[p])});var l=r.getPendingAreaRange(),s=e.map(p=>k.intersection(l,p)).filter(p=>p!=null).map(p=>(I(p),k.offset(p,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);k.forEachCell(s,(p,m)=>{o.has(m)||o.set(m,{data:new Map});var b=r.columns[p],E=o.get(m);I(E);var{data:C}=E,y=new Map(C),w=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);w!=null?y.set(p,{value:w}):y.delete(p),y.size>0?o.set(m,wr(wr({},E),{},{data:y})):o.delete(m)}),r.pendingDataMap=o}r.dispatchEvent(new ie(z.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(p=>k.intersection(u,p)).filter(p=>p!=null);if(d.length>0){var h,c=yield r.snapshot(d.map(p=>{var m,b;return new k(null,(m=p==null?void 0:p.startRow)!==null&&m!==void 0?m:null,null,(b=p==null?void 0:p.endRow)!==null&&b!==void 0?b:null)})),v=c.map(p=>{for(var m={},b=0;b<r.columns.length;b+=1)m[r.columns[b].name]=p[b];return i.forEach(E=>{m[E.name]=r.tableUtils.makeValue(E.type,t,r.formatter.timeZone)}),m}),g=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(v);oe.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}k.forEachCell(e,(p,m)=>{var b=a[p];I(b),r.cacheFormattedValue(p,m,b)})}catch(p){oe.error("Unable to set ranges",e,t,p)}finally{k.forEachCell(e,(p,m)=>{r.clearPendingValue(p,m)})}})()}setValues(){var e=arguments,t=this;return mt(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(oe.debug("setValues(",r,")"),!r.every(v=>{var g,p;return t.isEditableRange(k.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,E=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],y=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=y!=null?t.displayString(y,C.type,C.name):null;t.cachePendingValue(b,E,w);var T=t.pendingRow(E);if(T!=null){i.has(T)||i.set(T,{data:new Map});var F=i.get(T);I(F);var{data:N}=F,P=new Map(N);y!=null?P.set(b,{value:y}):P.delete(b),P.size>0?i.set(T,wr(wr({},F),{},{data:P})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new ie(z.EVENT.UPDATED));var a=r.reduce((v,g)=>{var p,m,b=(p=g.row)!==null&&p!==void 0?p:g.y;return v.has(b)||v.set(b,[]),(m=v.get(b))===null||m===void 0||m.push(g),v},new Map),l=k.consolidate(r.map(v=>{var g,p;return k.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y)})),s=t.getTableAreaRange(),o=l.map(v=>k.intersection(s,v)).filter(v=>v!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(v=>(I(v),new k(null,v.startRow,null,v.endRow)))),h=d.map((v,g)=>{for(var p=null,m=g,b=0;b<o.length;b+=1){var E=o[b];I(E);var C=k.rowCount([E]);if(m<C){I(E.startRow),p=E.startRow+m;break}m-=C}for(var y={},w=0;w<t.columns.length;w+=1)y[t.columns[w].name]=v[w];I(p);var T=a.get(p);return T!=null&&T.forEach(F=>{var N,P=t.columns[(N=F.column)!==null&&N!==void 0?N:F.x];y[P.name]=t.tableUtils.makeValue(P.type,F.text,t.formatter.timeZone)}),y});oe.info("setValues setting tableRanges",o);var c=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);oe.info("setValues set tableRanges",o,"SUCCESS",c)}r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,E=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],y=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=y!=null?t.displayString(y,C.type,C.name):null;t.cacheFormattedValue(b,E,w)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return mt(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((u,d)=>{var{value:h}=u,c=typeof d=="string"?d:e.columns[d].name;o[c]=h}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);oe.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(z.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){var r;return(r=this.textValueForCell(e,t))!==null&&r!==void 0?r:""}delete(e){return mt(function*(){throw new Error("Delete not implemented")})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}X(Bt,"ROW_BUFFER_PAGES",1);function Li(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 kd(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Li(a,r,i,l,s,"next",o)}function s(o){Li(a,r,i,l,s,"throw",o)}l(void 0)})}}function 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 xi(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){Mt(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 Mt(n,e,t){return e=_d(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _d(n){var e=jd(n,"string");return typeof e=="symbol"?e:String(e)}function jd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Vd=J.module("IrisGridTreeTableModel"),ki=Object.freeze({name:"__DH_UI_GROUP__",displayName:"Group",type:S.dataType.STRING,constituentType:S.dataType.STRING,isPartitionColumn:!1,isSortable:!1,isProxy:!0,description:"Key column",index:-1,filter:()=>{throw new Error("Filter not implemented for virtual column")},sort:()=>{throw new Error("Sort not implemented for virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}});function $d(n){return n.layoutHints!==void 0}function Jv(n){return n.showExtraGroupColumn!=null}class Hd extends Bt{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),Mt(this,"virtualColumns",void 0),Mt(this,"showExtraGroupCol",!0),Mt(this,"getCachedColumns",B((a,l)=>[...a,...l])),Mt(this,"getCachedGroupColumns",B((a,l)=>[...a,...l])),Mt(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))))),Mt(this,"getCachedGroupedColumnSet",B(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=this.showExtraGroupColumn&&t.groupedColumns.length>1?[ki]:[]}get showExtraGroupColumn(){return this.showExtraGroupCol}set showExtraGroupColumn(e){this.showExtraGroupCol!==e&&(this.showExtraGroupCol=e,this.updateVirtualColumns())}updateVirtualColumns(){this.virtualColumns=this.showExtraGroupColumn&&this.table.groupedColumns.length>1?[ki]:[],this.dispatchEvent(new ie(z.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}applyBufferedViewport(e,t,r){var i=[...this.table.groupedColumns,...r.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var r=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&r!=null){if(!i.hasChildren&&r.constituentType!=null){var a=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?Vd.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return xi(xi({},l),{},{data:s,isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t){var r=arguments,i=this;return kd(function*(){var a,l=r.length>2&&r[2]!==void 0?r[2]:b=>b;I(i.viewport),I(i.viewportData);var s=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,o=[];t!=null&&t&&o.push(s.map(b=>b.name));for(var u=new k(0,i.viewportData.offset,s.length,i.viewportData.offset+i.viewportData.rows.length-1),d=0;d<e.length;d+=1){var h=k.intersection(u,e[d]);I(h),I(h.startRow),I(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1){var v=[],g=i.viewportData.rows[c-i.viewportData.offset];I(h.startColumn),I(h.endColumn);for(var p=h.startColumn;p<=h.endColumn;p+=1){var m;v.push(l((m=g.data.get(p))===null||m===void 0?void 0:m.value,i.columns[p]))}o.push(v)}}return o})()}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($d(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")}}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 Gd(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){jr(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 jr(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=Ud(n,"string");return typeof e=="symbol"?e:String(e)}function Ud(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class hl extends O.Component{constructor(e){super(e),jr(this,"container",void 0),jr(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();I(t),Jn.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=Gd({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),I(this.container),this.editor=Jn.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[vs.CtrlCmd|fs.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),ps.registerLinkProvider("plaintext",{provideLinks:ct.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;I(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return f.jsx("div",{className:Me("editor-container",e),ref:t=>{this.container=t}})}}jr(hl,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});var Wd={groovy:"Groovy",python:"Python",scala:"Scala"};class Dn{static normalizeScriptLanguage(e){return Wd[e]||null}static getDisabledRunTooltip(e,t,r,i){return e?t?null:"".concat(r," doesn't match the session language – ").concat(i," disabled"):"Console session not connected – ".concat(i," disabled")}static outdentCode(e){var t=e.split(`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Chart-BoTYSyco.js","./vendor-DaDwT7la.js","./helpers-BosuxZz1.js","./vendor-_8ke2T2G.css","./index-BaRgrXXh.js","./index-gTIOiWk4.css","./Plotly-CkyvskFC.js","./plotly-DVTGP-mq.js","./LogPanel-3Y8KvuxG.js","./LogPanel-CawdTSCl.css","./DownsamplingError-Jn_yRsnD.js","./useMergeRef-B1wowsUe.js","./Chart-CXzMmZcI.css","./IrisGrid-CTF9IbSf.js","./IrisGridThemeProvider-CgU1w0nQ.js","./IrisGridThemeProvider-CT3rzwXB.css","./IrisGrid-CPln5MRG.css","./MarkdownEditor-C14PDuak.js","./MarkdownNotebook-BDaj8EiQ.js","./MarkdownNotebook-Co2hM8o4.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as O,F as f,I as Me,H as ss,K as Re,bm as os,J as Fe,bn as Mn,bo as us,bp as ds,bq as hs,br as cs,ad as Je,_ as $r,bs as xa,aa as vt,a9 as Ge,bt as vs,E as fs,bu as B,bk as Jn,b9 as ei,bv as ps,bw as ms,bb as gs,bx as xr,ab as Z,by as wt,D as ze,aO as bs,aN as ti,R as Cs,L as ka,M as Ss}from"./vendor-DaDwT7la.js";import{bH as _a,B as Y,bI as Es,bJ as ys,bK as ws,bL as Ts,bM as Ps,bN as Ds,bO as Os,bP as Ns,bQ as Fs,bR as Ms,bS as Rn,ag as Ht,y as xe,ab as Rs,bT as Ye,bU as ln,ac as kr,ad as Is,ae as Ls,bA as As,aQ as xs,E as ee,bV as Ir,bW as ie,b9 as ct,r as ri,bv as ht,bb as mn,a0 as ja,bX as Kt,G as He,b3 as Tt,bY as It,bZ as Va,b_ as In,b$ as Ce,c0 as Hr,aX as $a,c1 as Ln,c2 as Gr,c3 as Br,c4 as Ur,bw as Wr,aE as $,U as dr,c5 as An,c6 as Ha,c7 as ks,aK as _s,c8 as Ga,O as js,aP as Ae,aV as Vs,c9 as $s,bx as Ve,ca as se,cb as _r,K as gn,T as bn,D as Ba,cc as Hs,H as ni,cd as Gs,ce as Ua,cf as Wa,cg as ii,by as Bs,ch as za,u as xn,aj as Pt,b8 as ge,b5 as Us,bD as Lr,ci as Ws,aM as zs,bF as qa,bG as Ka,bE as Xa,ah as Ya,au as qs,as as Ks,ax as Za,ai as Xs,aF as Ys,$ as Zs,cj as Qs,ck as Js,cl as eo}from"./LogPanel-3Y8KvuxG.js";import{L as Q,a3 as to,a4 as Qa,T as ro,a5 as no,a6 as io,Y as ao,m as I,a7 as lo,a as ft,a8 as At,f as so,a9 as oo,aa as kn,ab as Ja,ac as uo,ad as el,v as zr,ae as tl,af as ai,ag as li,ah as ho,ai as co,M as vo,s as fo,b as po,aj as mo,ak as go,al as bo,am as Co,an as So,d as sn,ao as Eo,ap as yo,aq as wo,ar as To,as as Po}from"./index-BaRgrXXh.js";function _n(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=Do(n,e);t.forEach(r=>{n[r]=n[r].bind(n)})}function Do(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 Oo=3500,No=Q.module("useCopyToClipboard");function Fo(){var[n,e]=O.useState(!1),t=O.useRef(null),r=O.useCallback(i=>{_a(i).then(()=>{e(!0)}).catch(a=>No.error("Unable to copy ".concat(i),`
|
|
3
|
+
`,a))},[]);return O.useEffect(()=>(t.current&&clearTimeout(t.current),n&&(t.current=setTimeout(()=>{e(!1)},Oo)),()=>{t.current&&clearTimeout(t.current)}),[n]),[n,r]}function jn(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=O.useRef(null),s=O.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),o=O.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return O.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:Me(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 Mo(n){var{copy:e,kind:t="ghost",tooltip:r="Copy",className:i,style:a,"data-testid":l,children:s}=n,[o,u]=Fo();return f.jsx(Y,{kind:t,className:i,style:a,"data-testid":l,icon:o?to:Qa,tooltip:o?"Copied":r,onClick:()=>{u(typeof e=="function"?e():e)},children:s})}var Ro=["className","timeout"];function si(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 Io(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?si(Object(t),!0).forEach(function(r){Lo(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):si(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Lo(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=xo(n,"string");return typeof e=="symbol"?e:String(e)}function xo(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ko(n,e){if(n==null)return{};var t=_o(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 _o(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 Cn(n){var{className:e,timeout:t=ro.transitionMs}=n,r=ko(n,Ro);return f.jsx(ss,Io({timeout:t,classNames:Me("fade",e)},r))}var qr=Re.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}=os({},"button");return f.jsxs("button",{ref:e,type:"button",className:Me("btn-socketed",{"btn-socketed-linked":l!==void 0&&l||s},{"btn-socketed-linked-source":s},{"is-invalid":o},r,g),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:c,disabled:i,"data-testid":v,children:[t,f.jsx(Fe,{icon:no,className:"linked btn-socketed-icon",transform:"down-1"}),f.jsx(Fe,{icon:io,className:"is-invalid btn-socketed-icon"})]})});qr.displayName="SocketedButton";qr.defaultProps={children:void 0,className:"",disabled:!1,id:void 0,isLinked:!1,isLinkedSource:!1,isInvalid:!1,onClick:void 0,onMouseEnter:void 0,onMouseLeave:void 0,style:void 0,"data-testid":void 0};function oi(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 jo(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){oi(a,r,i,l,s,"next",o)}function s(o){oi(a,r,i,l,s,"throw",o)}l(void 0)})}}var Vo=O.createContext(null);function $o(n){var[e,t]=O.useState(null),[r,i]=O.useState(null),a=O.useContext(Vo),l=O.useContext(ao);return O.useEffect(()=>{if(a==null){if(l!=null){t(l),i(null);return}t(null),i(new Error("No API available in useDeferredApi. Was code wrapped in ApiBootstrap or DeferredApiContext.Provider?"));return}var s=!1;function o(){return u.apply(this,arguments)}function u(){return u=jo(function*(){if(n==null)s||(t(null),i(new Error("No widget provided to useDeferredApi")));else if(typeof a=="function")try{var d=yield a(n);s||(t(d),i(null))}catch(h){s||(t(null),i(h))}else t(a)}),u.apply(this,arguments)}return o(),()=>{s=!0}},[l,a,n]),[e,r]}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 on(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){Ho(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 Ho(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 rl(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r==null?void 0:r.type){case n:{var i=r.payload;return i==null?null:t!=null?on(on({},t),i):on({},i)}default:return t}}}function Dt(n,e){return function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e,r=arguments.length>1?arguments[1]:void 0;switch(r==null?void 0:r.type){case n:return r.payload;default:return t}}}const Uo=Dt(Es,null),Wo=Dt(ys,null),zo=Dt(ws,null),qo=Dt(Ts,null),Ko=Dt(Ps,null),Xo=Dt(Ds,null),Yo=Mn({commandHistoryStorage:qo,fileStorage:Ko,workspaceStorage:Xo}),Zo=rl(Os,null),Qo=rl(Ns,null),Jo=Dt(Fs,null),eu=Dt(Ms,null);var tu={activeTool:Wo,api:Uo,plugins:zo,storage:Yo,user:Zo,workspace:Qo,defaultWorkspaceSettings:Jo,serverConfigValues:eu},di=Q.module("redux-logger"),ru=n=>e=>t=>{di.debug("dispatching",t);var r=e(t);return di.debug("next state",n.getState()),r},nu=Q.module("redux-crashReporter"),iu=n=>e=>t=>{try{return e(t)}catch(r){throw nu.error("Error executing",t," with state ",n.getState(),":",r),r}};const au=[ru,iu,us];var un;Object.entries(tu).map(n=>{var[e,t]=n;return Rn.register(e,t)});var lu=(un=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__)!==null&&un!==void 0?un:cs,nl=ds(Mn(Rn.reducers),lu(hs(...au)));Rn.setListener(n=>{nl.replaceReducer(Mn(n))});class su extends Ht{format(e){switch(e){case 1:case!0:return"true";case 0:case!1:return"false";default:return""}}}class ou extends Ht{format(e){return String.fromCharCode(e)}}class uu extends Ht{format(e){return"".concat(e)}}class du extends Ht{format(e){return e}}function hi(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?hi(Object(t),!0).forEach(function(r){Vn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):hi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Vn(n,e,t){return e=hu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hu(n){var e=cu(n,"string");return typeof e=="symbol"?e:String(e)}function cu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var vu=/\s*(\d{4})([-./](\d{1,2}|[a-z]+))?([-./](\d{1,2}))?([tT\s](\d{2})([:](\d{2}))?([:](\d{2}))?([.](\d{1,9}))?)?(.*)/;class ae{static makeDateWrapper(e,t,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(ae.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=ae.getNextNanos(t.nanos),h>999999999&&(d+=1,h=0)}else t.seconds!=null?d+=1:t.minutes!=null?u+=1:t.hours!=null?o+=1:t.date!=null?s+=1:t.month!=null?l+=1:a+=1;var c=new Date(a,l,s,o,u,d);return ae.makeDateWrapper(e,i,c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),h)}static parseMonth(e){var t=parseInt(e,10);if(!Number.isNaN(t))return t>=1&&t<=12?t-1:NaN;var r=e.trim().toLowerCase();if(r.length>=3){for(var i=0;i<ae.months.length;i+=1)if(ae.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=vu.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?ci(ci({},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=ae.makeDateWrapper(e,r,a.getFullYear(),a.getMonth(),a.getDate()),s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1),o=ae.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=ae.makeDateWrapper(e,r,d.getFullYear(),d.getMonth(),d.getDate()),c=ae.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=ae.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=ae.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=ae.makeDateWrapper(e,r,m.year,m.month,m.date,m.hours,m.minutes,m.seconds,m.nanos),E=ae.getNextDate(e,p,m,r);return[b,E]}static getJsDate(e){return typeof e=="number"?new Date(e):e.asDate()}static trimDateTimeStringTimeZone(e){var{overflow:t=""}=ae.parseDateTimeString(e,!0);if(t==="")return e;if(!/^\s[A-Za-z]+/.test(t))throw new Error("Unexpected timezone format in overflow: '".concat(e,"'"));return e.slice(0,-t.length)}}Vn(ae,"FULL_DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSSSSS");Vn(ae,"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=il(e,o=>n.makeSearchTextFilter(o,l,r),"or");return s(a)}}function il(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"or";return function(i){var a=i==null?void 0:i.findColumns(typeof n=="string"?[n]:n);if(a==null||a.length===0)return null;var l=a.map(e);return l.reduce((s,o)=>s[t](o))}}function fu(n,e,t,r){return il(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 Bv(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 $n(n,e,t){return e=pu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pu(n){var e=mu(n,"string");return typeof e=="symbol"?e:String(e)}function mu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class hr{}$n(hr,"not","not");$n(hr,"and","and");$n(hr,"or","or");function Uv(n){if(!(n==="not"||n==="and"||n==="or"))throw new Error("operator is not a valid FilterOperatorValue")}function de(n,e,t){return e=gu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gu(n){var e=bu(n,"string");return typeof e=="symbol"?e:String(e)}function bu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 D{}de(D,"eq","eq");de(D,"eqIgnoreCase","eqIgnoreCase");de(D,"notEq","notEq");de(D,"notEqIgnoreCase","notEqIgnoreCase");de(D,"greaterThan","greaterThan");de(D,"greaterThanOrEqualTo","greaterThanOrEqualTo");de(D,"lessThan","lessThan");de(D,"lessThanOrEqualTo","lessThanOrEqualTo");de(D,"in","in");de(D,"inIgnoreCase","inIgnoreCase");de(D,"notIn","notIn");de(D,"notInIgnoreCase","notInIgnoreCase");de(D,"isTrue","isTrue");de(D,"isFalse","isFalse");de(D,"isNull","isNull");de(D,"invoke","invoke");de(D,"contains","contains");de(D,"notContains","notContains");de(D,"containsIgnoreCase","containsIgnoreCase");de(D,"startsWith","startsWith");de(D,"endsWith","endsWith");de(D,"containsAny","containsAny");function Cu(n){switch(n){case D.eq:return"is exactly";case D.eqIgnoreCase:return"is exactly (ignore case)";case D.notEq:return"is not exactly";case D.notEqIgnoreCase:return"is not exactly (ignore case)";case D.contains:return"contains";case D.notContains:return"does not contain";case D.startsWith:return"starts with";case D.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function Su(n){switch(n){case D.eq:return"is equal to";case D.notEq:return"is not equal to";case D.greaterThan:return"greater than";case D.greaterThanOrEqualTo:return"greater than or equal to";case D.lessThan:return"less than";case D.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function Eu(n){switch(n){case D.eq:return"date is";case D.notEq:return"date is not";case D.notEqIgnoreCase:case D.greaterThan:return"date is after";case D.greaterThanOrEqualTo:return"date is after or equal";case D.lessThan:return"date is before";case D.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function Wv(n){switch(n){case D.isTrue:return"Is True";case D.isFalse:return"Is False";case D.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}var yu="DH_ITEM_KEY",vi=Q.module("ViewportDataUtils");function al(n){return"".concat(yu,"_").concat(n)}function zv(n,e){var{bulkUpdate:t}=n;return function(i){var{columns:a,offset:l,rows:s}=i.detail;vi.debug("table updated",i.detail);var o=new Map;s.forEach((u,d)=>{var h=e(u,a),c=al(l+d);o.set(c,{key:c,item:h})}),vi.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:al(t)}}function wu(n){return n==null||Tu(n)?0:n.size}function Tu(n){return"isClosed"in n?n.isClosed:!1}function Xv(n,e,t,r){var i=n+e-1,[a,l]=[0,r-1],s=Je(n-t,a,l),o=Je(i+t,a,l);return[s,o]}function fi(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Ct(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){fi(a,r,i,l,s,"next",o)}function s(o){fi(a,r,i,l,s,"throw",o)}l(void 0)})}}function Lt(n,e,t){return e=Pu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pu(n){var e=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)}var st=Q.module("TableUtils");function Yv(n){return n===S.sortDirection.ascending||n===S.sortDirection.descending||n===S.sortDirection.reverse||n===S.sortDirection.none}class S{static copyTableAndApplyFilters(e){var t=arguments;return Ct(function*(){if(e==null)return null;for(var r=yield e.copy(),i=t.length,a=new Array(i>1?i-1:0),l=1;l<i;l++)a[l-1]=t[l];return r.applyFilter(ln(...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)?[D.isTrue,D.isFalse,D.isNull]:S.isCharType(e)||S.isNumberType(e)||S.isDateType(e)?[D.eq,D.notEq,D.greaterThan,D.greaterThanOrEqualTo,D.lessThan,D.lessThanOrEqualTo]:S.isTextType(e)?[D.eq,D.eqIgnoreCase,D.notEq,D.notEqIgnoreCase,D.contains,D.notContains,D.startsWith,D.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 Rs('Event "'.concat(t,'" timed out.')))},r),a=e.addEventListener(t,h=>{if(i!=null&&!i(h)){st.debug2("Event triggered, but matcher returned false.");return}st.debug2("Event triggered, resolving."),a(),clearTimeout(l),s=!1,u(h)})});return o.cancel=()=>{if(s){st.debug2("Pending promise cleanup."),a(),clearTimeout(l),s=!1;return}st.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 D.eq:return"=";case D.notEq:return"!=";case D.greaterThan:return">";case D.greaterThanOrEqualTo:return">=";case D.lessThan:return"<";case D.lessThanOrEqualTo:return"<=";case D.contains:return"~";case D.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 Ye.sort(a,l,t)})}constructor(e){Lt(this,"dh",void 0),this.dh=e,_n(this)}createDistinctSortedColumnTable(e,t,r){var i=arguments,a=this;return Ct(function*(){if(e==null)return null;for(var l=e,s=i.length,o=new Array(s>3?s-3:0),u=3;u<s;u++)o[u-3]=i[u];o.length>0&&(l=yield e.copy(),yield l.applyFilter(ln(...o.map(v=>v(l)))));var d=l.findColumn(t),h=yield l.selectDistinct([d]);l!==e&&l.close();var c=h.findColumn(t).sort()[r]();return a.applySort(h,[c])})()}doesColumnValueExist(e,t,r,i){var a=this;return Ct(function*(){if(e==null)return null;var l=fu(a,t,r,i?"eq":"eqIgnoreCase"),s=yield e.copy();yield a.applyFilter(s,ln(l(s)));var o=wu(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 st.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=D.eq;switch(s){case"<":u=D.lessThan;break;case"<=":case"=<":u=D.lessThanOrEqualTo;break;case">":u=D.greaterThan;break;case">=":case"=>":u=D.greaterThanOrEqualTo;break;case"!=":case"!":u=D.notEq;break;case"=":case"==":default:u=D.eq;break}return this.makeQuickDateFilterWithOperation(e,o,u,r)}makeQuickDateFilterWithOperation(e,t,r,i){var{dh:a}=this,[l,s]=ae.parseDateRange(a,t,i),o=l!=null?a.FilterValue.ofNumber(l):null,u=s!=null?a.FilterValue.ofNumber(s):null,d=e.filter();if(o==null)return r===D.notEq?d.isNull().not():d.isNull();switch(r){case D.eq:{if(u!=null){var h=d.greaterThanOrEqualTo(o),c=d.lessThan(u);return h.and(c)}return d.eq(o)}case D.lessThan:return d.lessThan(o);case D.lessThanOrEqualTo:return u!=null?d.lessThan(u):d.lessThanOrEqualTo(o);case D.greaterThan:return u!=null?d.greaterThanOrEqualTo(u):d.greaterThan(o);case D.greaterThanOrEqualTo:return d.greaterThanOrEqualTo(o);case D.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===hr.and)o=o.and(v);else if(g===hr.or)o=o.or(v);else{st.error("Unexpected filter operator",g,v),o=null;break}}}else st.debug2("Empty filter ignored for",h,c)}catch(m){st.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 D.eq:return s.eq(l);case D.eqIgnoreCase:return s.eqIgnoreCase(l);case D.notEq:return s.notEq(l);case D.notEqIgnoreCase:return s.notEqIgnoreCase(l);case D.greaterThan:return s.greaterThan(l);case D.greaterThanOrEqualTo:return s.greaterThanOrEqualTo(l);case D.lessThan:return s.lessThan(l);case D.lessThanOrEqualTo:return s.lessThanOrEqualTo(l);case D.isTrue:return s.isTrue();case D.isFalse:return s.isFalse();case D.isNull:return s.isNull();case D.contains:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))));case D.notContains:return s.isNull().or(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E.*"))).not());case D.startsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i)^\\Q".concat(r,"\\E.*"))));case D.endsWith:return s.isNull().not().and(s.invoke("matches",a.FilterValue.ofString("(?s)(?i).*\\Q".concat(r,"\\E$"))));case D.in:case D.inIgnoreCase:case D.notIn:case D.notInIgnoreCase:case D.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 I(a),a}if(i===this.dh.ValueType.DATETIME)return this.makeQuickDateFilterWithOperation(e,ae.trimDateTimeStringTimeZone(t),"eq",r);if(i===this.dh.ValueType.NUMBER){var l=this.makeQuickNumberFilter(e,t);return I(l),l}return S.isBigDecimalType(e.type)||S.isBigIntegerType(e.type)?e.filter().eq(this.makeFilterValue(e.type,t)):e.filter().containsIgnoreCase(this.makeFilterValue(e.type,t))}catch{return this.makeNeverFilter(e)}}applyNeverFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(e==null)return null;var l=e.findColumn(t),s=[i.makeNeverFilter(l)];return yield i.applyFilter(e,s,a),e})()}applyCustomColumns(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyCustomColumns(t),e,l.Table.EVENT_CUSTOMCOLUMNSCHANGED,a)})()}applyFilter(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applyFilter(t),e,l.Table.EVENT_FILTERCHANGED,a)})()}applySort(e,t){var r=arguments,i=this;return Ct(function*(){var a=r.length>2&&r[2]!==void 0?r[2]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS,{dh:l}=i;return S.executeAndWaitForEvent(s=>s==null?void 0:s.applySort(t),e,l.Table.EVENT_SORTCHANGED,a)})()}makeNeverFilter(e){var{dh:t}=this,r=null;S.isTextType(e.type)?r=t.FilterValue.ofString("a"):S.isBooleanType(e.type)?r=t.FilterValue.ofBoolean(!0):S.isDateType(e.type)?r=t.FilterValue.ofNumber(t.DateWrapper.ofJsDate(new Date)):r=t.FilterValue.ofNumber(0);var i=e.filter().eq(r),a=e.filter().notEq(r);return i.and(a)}makeFilterValue(e,t){var{dh:r}=this,i=S.getBaseType(e);return S.isTextType(i)?r.FilterValue.ofString(t):S.isLongType(i)?r.FilterValue.ofNumber(r.LongWrapper.ofString(S.removeCommas(t))):r.FilterValue.ofNumber(S.removeCommas(t))}makeFilterRawValue(e,t){var{dh:r}=this;return S.isCharType(e)?r.FilterValue.ofString(typeof t=="number"?String.fromCharCode(t):t):S.isTextType(e)?r.FilterValue.ofString(t):S.isBooleanType(e)?r.FilterValue.ofBoolean(t):r.FilterValue.ofNumber(t)}makeNullableEqFilter(e,t){return t==null?e.filter().isNull():e.filter().eq(this.makeFilterRawValue(e.type,t))}makeValue(e,t,r){var{dh:i}=this;if(t==="null")return null;if(S.isTextType(e))return t;if(S.isLongType(e))return i.LongWrapper.ofString(S.removeCommas(t));if(S.isBooleanType(e))return S.makeBooleanValue(t,!0);if(S.isDateType(e)){var[a]=ae.parseDateRange(i,t,r);return a}return S.isNumberType(e)?S.makeNumberValue(t):(st.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)}}Lt(S,"dataType",{BOOLEAN:"boolean",CHAR:"char",DATETIME:"datetime",DECIMAL:"decimal",INT:"int",STRING:"string",UNKNOWN:"unknown"});Lt(S,"sortDirection",{ascending:"ASC",descending:"DESC",reverse:"REVERSE",none:null});Lt(S,"APPLY_TABLE_CHANGE_TIMEOUT_MS",3e4);Lt(S,"REVERSE_TYPE",Object.freeze({NONE:"none",PRE_SORT:"pre-sort",POST_SORT:"post-sort"}));Lt(S,"NUMBER_REGEX",/^-?\d+(\.\d+)?$/);Lt(S,"executeAndWaitForEvent",function(){var n=Ct(function*(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:S.APPLY_TABLE_CHANGE_TIMEOUT_MS;if(t==null)return null;var a=S.makeCancelableTableEventPromise(t,r,i);return e(t),yield a,t});return function(e,t,r){return n.apply(this,arguments)}}());function xt(n,e,t){return e=Ou(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ou(n){var e=Nu(n,"string");return typeof e=="symbol"?e:String(e)}function Nu(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 qe{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;xt(this,"defaultColumnFormatter",void 0),xt(this,"typeFormatterMap",void 0),xt(this,"columnFormatMap",void 0),xt(this,"truncateNumbersWithPound",void 0),xt(this,"showEmptyStrings",void 0),xt(this,"showNullStrings",void 0),this.defaultColumnFormatter=new uu,this.typeFormatterMap=new Map([[S.dataType.BOOLEAN,new su],[S.dataType.CHAR,new ou],[S.dataType.DATETIME,new kr(e,r)],[S.dataType.DECIMAL,new Is(e,i)],[S.dataType.INT,new Ls(e,a)],[S.dataType.STRING,new du]]),this.columnFormatMap=qe.makeColumnFormatMap(t),this.truncateNumbersWithPound=l,this.showEmptyStrings=s,this.showNullStrings=o}getColumnFormatMapForType(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,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 lo(e,kr),e.dhTimeZone.id}}function Fu(n,e){var t=ll(e),r=sl(e),{defaultDecimalFormatOptions:i,defaultIntegerFormatOptions:a,truncateNumbersWithPound:l,showEmptyStrings:s,showNullStrings:o}=e??{};return new qe(n,t,r,i,a,l,s,o)}function ll(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function sl(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 Mu(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===Ht.TYPE_CONTEXT_PRESET||r.type===Ht.TYPE_CONTEXT_CUSTOM)}const Sn={createFormatterFromSettings:Fu,getColumnFormats:ll,getDateTimeFormatterOptions:sl,isCustomColumnFormatDefined:Mu};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 Ru(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){Iu(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 Iu(n,e,t){return e=Lu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lu(n){var e=Au(n,"string");return typeof e=="symbol"?e:String(e)}function Au(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xu=O.lazy(()=>$r(()=>import("./Chart-BoTYSyco.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url));function ol(n){return f.jsx(O.Suspense,{fallback:f.jsx(ft,{}),children:f.jsx(xu,Ru({},n))})}function mi(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 Sr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?mi(Object(t),!0).forEach(function(r){De(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):mi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function De(n,e,t){return e=ku(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ku(n){var e=_u(n,"string");return typeof e=="symbol"?e:String(e)}function _u(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=Q.module("ChartUtils"),gi="io.deephaven.time.DateTime",ju=36e5,Vu=1e6;function $u(n){return n.asDate!==void 0}function Hu(n){return n.asNumber!==void 0}function bi(n){return n.dhTimeZone!==void 0}function Gu(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}function Bu(){var n=document.createElement("canvas"),e=n.getContext("webgl")||n.getContext("experimental-webgl");return e!=null&&e instanceof WebGLRenderingContext}var Uu=Bu();class M{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*)(%?)(.*)/);I(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",E=c!==""?c:b,C=u.length+d.length,y="",w="0".concat(g).concat(m,".").concat(C).concat(y).concat(E),T=M.convertNumberPrefix(l),F=M.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/Vu),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]:M.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=M.getAllAxes(e);return M.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];Gu(l)&&(t[a]=[...l.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static decimalToPeriod(e){var t=Math.floor(e),r=Math.round((e-t)*60);return"".concat(t.toString().padStart(2,"0"),":").concat(r.toString().padStart(2,"0"))}static groupArray(e,t){return e.reduce((r,i)=>{var a,l=i[t],s=(a=r.get(l))!==null&&a!==void 0?a:[];return s.push(i),r.set(l,s),r},new Map)}static normalizeColorway(e){if(e!=null){if(Array.isArray(e))return e;if(typeof e=="string")return e.split(" ");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}static getTimeZoneDiff(e,t){return t?(e.standardOffset-t.standardOffset)/60:0}static createClosedRangesForPartialHoliday(e,t){var r=t.map(h=>[M.periodToDecimal(h.open),M.periodToDecimal(h.close)]);r.sort((h,c)=>h[0]-c[0]),r.length===0&&r.push([0,24]);var i=e.map(h=>[M.periodToDecimal(h.open),M.periodToDecimal(h.close)]);i.sort((h,c)=>h[0]-c[0]);for(var a=[],l=0;l<r.length;l+=1){for(var s=r[l],o=s[0],u=0;u<i.length;u+=1){var d=i[u];d[1]>o&&d[0]<s[1]&&(d[0]>o&&a.push([o,d[0]]),o=d[1])}o<s[1]&&a.push([o,s[1]])}return a}constructor(e){De(this,"dh",void 0),De(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values()),_n(this)}getAxisFormats(e,t){for(var r=new Map,i={tickformat:null,ticksuffix:null},a=M.getAllAxes(e),l=M.groupArray(a,"type"),{charts:s}=e,o=0;o<s.length;o+=1)for(var u=s[o],d=0;d<u.series.length;d+=1)for(var h=u.series[d],{sources:c}=h,v=c.filter(N=>N.axis),g=0;g<v.length;g+=1){var p=v[g],{axis:m}=p,{type:b}=m,E=l.get(b);I(E);var C=E.indexOf(m),y=this.getAxisPropertyName(b);if(y!=null){var w=M.getAxisLayoutProperty(y,C);if(r.has(w))Qt.debug("".concat(w," already added."));else{Qt.debug("Adding ".concat(w," to axisFormats."));var T=this.getPlotlyAxisFormat(p,t);if(T===null)r.set(w,i);else{r.set(w,T);var{businessCalendar:F}=m;if(F!=null&&(T.rangebreaks=this.createRangeBreaksFromBusinessCalendar(F,t)),r.size===u.axes.length)return r}}}}return r}getPlotlyChartType(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,{dh:i}=this;switch(e){case i.plot.SeriesPlotStyle.SCATTER:case i.plot.SeriesPlotStyle.LINE:return!t&&Uu&&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(M.MODE_LINES),(r??!0)&&a.add(M.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(M.MODE_LINES),(r??!1)&&a.add(M.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?M.ORIENTATION.HORIZONTAL:M.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(y=>{var w;return(w=y.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),E=this.getPlotlySeriesOrientation(e),C=M.makeSeriesData(m,b,l,i,E);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=M.getMarkerSymbol(a)}catch(d){Qt.warn("Unable to handle shape",a,":",d)}l!=null&&(u.marker.size=l*M.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=M.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=M.AXIS_SIZE_PX/r,E=M.AXIS_SIZE_PX/i,C={bottom:(o-g)*m+(g<o?E/2:0),top:(o-h)*m-(h>0?E/2:0),left:u*p+(u>0?b/2:0),right:v*p-(v<s?b/2:0)},y=M.groupArray(t.axes,"position"),w=(a=y.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(M.LEGEND_WIDTH_PX/r,M.MAX_LEGEND_SIZE)):C.right-=(C.right-C.left)*M.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&&bi(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=M.addTickSpacing(s,i,!0)):S.isNumberType(a)&&(s=M.getPlotlyNumberFormat(t,a,l),s=M.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(M.MIN_AXIS_SIZE,Math.min(M.AXIS_SIZE_PX/a,M.MAX_AXIS_SIZE)):M.DEFAULT_AXIS_SIZE,d=a>0?Math.max(M.MIN_AXIS_SIZE,Math.min(M.AXIS_SIZE_PX/i,M.MAX_AXIS_SIZE)):M.DEFAULT_AXIS_SIZE,h=e,c=M.groupArray(t,"position"),v=M.groupArray(t,"type"),g=[...v.keys()],p=M.groupArray(r,"type"),m=0;m<g.length;m+=1){var b=g[m],E=this.getAxisPropertyName(b);if(E!=null){var C=v.get(b),y=p.get(b),w=b===o.plot.AxisType.Y,T=w?a:i;I(C),I(y);for(var F=0;F<C.length;F+=1){var N=C[F],P=y.indexOf(N),_=M.getAxisLayoutProperty(E,P);h[_]==null&&(h[_]={});var A=h[_];if(A!=null){this.updateLayoutAxis(A,N,F,c,u,d,l);var{range:x,autorange:V}=A;if(s!=null&&x!==void 0&&(V===void 0||V===!1)){var U=s(N),[K,ne]=U(x);Qt.debug("Setting downsample range",T,K,ne),N.range(T,K,ne)}else N.range(T)}}}}}removeStaleAxes(e,t){for(var r=e,i=M.groupArray(t,"type"),a=[...i.keys()],l=0;l<a.length;l+=1){var s=a[l],o=i.get(s);I(o);var u=o.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=M.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=M.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 E=i.get(u.plot.AxisPosition.LEFT)||[],C=i.get(u.plot.AxisPosition.RIGHT)||[],y=Math.max(s.left,s.left+(E.length-1)*l),w=Math.min(s.right-(C.length-1)*l,s.right);c.domain=[y,w]}else if(t.type===u.plot.AxisType.Y){var T=i.get(u.plot.AxisPosition.BOTTOM)||[],F=i.get(u.plot.AxisPosition.TOP)||[],N=Math.max(s.bottom,s.bottom+(T.length-1)*a),P=Math.min(s.top-(F.length-1)*a,s.top);c.domain=[N,P]}}createBoundsFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(e.length===0)return[];for(var r=e.map(o=>[(M.periodToDecimal(o.open)+t)%24,(M.periodToDecimal(o.close)+t)%24]).sort((o,u)=>o[0]-u[0]),i=[],a=0;a<r.length;a+=1){var l=r[a],s=r[(a+1)%r.length];i.push([l[1],s[0]])}return i}createBreaksFromPeriods(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.createBoundsFromPeriods(e,t);return r.map(i=>({pattern:"hour",bounds:i}))}createBoundsFromDays(e){var t=this.daysOfWeek.length;if(e.length===t)return[];for(var r=e.map(o=>this.daysOfWeek.indexOf(o)),i=new Set(r),a=new Set,l=0;l<t;l+=1)!i.has(l)&&i.has((l-1+t)%t)&&a.add(l);var s=[];return a.forEach(o=>{for(var u=0;u<t;u+=1){var d=(o+u)%t;if(i.has(d)){s.push([o,d]);return}}throw new Error("Unable to find open day for closed day ".concat(o,", businessDays: ").concat(e))}),s}createBreaksFromDays(e){var t=this.createBoundsFromDays(e);return t.map(r=>({pattern:"day of week",bounds:r}))}createRangeBreaksFromBusinessCalendar(e,t){var r=[],{businessPeriods:i,businessDays:a,holidays:l,timeZone:s}=e,o=t==null?void 0:t.getColumnTypeFormatter(gi),u;bi(o)&&(u=o.dhTimeZone);var d=M.getTimeZoneDiff(s,u);return l.length>0&&r.push(...this.createRangeBreakValuesFromHolidays(l,s,u,e)),r.push(...this.createBreaksFromPeriods(i,d)),r.push(...this.createBreaksFromDays(a)),r}createRangeBreakValuesFromHolidays(e,t,r,i){var a=[],l=[];return e.forEach(s=>{s.businessPeriods.length>0?l.push(...this.createPartialHoliday(s,t,r,i)):a.push(this.createFullHoliday(s,t,r))}),[{values:a},...l]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r,i){var a;if(e.businessPeriods.length===0)return[];var l=e.date.toString();if(i){var s=new Date(l).getDay(),o=i.businessDays.includes(this.daysOfWeek[s]);if(!o)return[]}for(var u=M.createClosedRangesForPartialHoliday(e.businessPeriods,(a=i==null?void 0:i.businessPeriods)!==null&&a!==void 0?a:[]),d=[],h=0;h<u.length;h+=1){var[c,v]=u[h];if(c!==v){var g=[this.adjustDateForTimeZone("".concat(l," ").concat(M.decimalToPeriod(c),":00.000000"),t,r)],p=ju*(v-c);d.push({values:g,dvalue:p})}}return d}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,gi,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:l}=e,s=M.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($u(e))return r.i18n.DateTimeFormat.format(M.DATE_FORMAT,e,t);if(Hu(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=M.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(l,a);if(!r)return s;var o="".concat(l," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(o,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e,t){var{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticks:"outside",ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_color}},legend:{font:{color:t.legend_color}}};return e===r.plot.AxisType.X?Object.assign(i,{showgrid:!0}):e===r.plot.AxisType.Y&&Object.assign(i,{zerolinecolor:t.zerolinecolor,zerolinewidth:2}),i}makeDefaultTemplate(e){var{error_band_line_color:t,ohlc_increasing:r,ohlc_decreasing:i,title_color:a,indicator_increasing:l,indicator_decreasing:s,indicator_gauge:o}=e;return{data:{bar:[{marker:{line:{color:"transparent"}}}],scatter:[{error_x:{color:t},error_y:{color:t}}],ohlc:[{increasing:{line:{color:r}},decreasing:{line:{color:i}}}],pie:[{outsidetextfont:{color:a}}],treemap:[{outsidetextfont:{color:a}}],indicator:[{title:{font:{color:a}},delta:{decreasing:{color:s},increasing:{color:l}},gauge:{bar:{color:o}}}]},layout:this.makeDefaultLayout(e)}}makeDefaultLayout(e){var{dh:t}=this,{paper_bgcolor:r,plot_bgcolor:i,title_color:a,coastline_color:l,land_color:s,ocean_color:o,lake_color:u,river_color:d}=e,h={paper_bgcolor:r,plot_bgcolor:i,autosize:!0,colorway:M.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:Sr({},M.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:a}},margin:Sr({},M.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 Sr(Sr({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}De(M,"DEFAULT_AXIS_SIZE",.15);De(M,"MIN_AXIS_SIZE",.025);De(M,"MAX_AXIS_SIZE",.2);De(M,"AXIS_SIZE_PX",75);De(M,"LEGEND_WIDTH_PX",50);De(M,"MAX_LEGEND_SIZE",.25);De(M,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));De(M,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");De(M,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));De(M,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));De(M,"SUBTITLE_LINE_HEIGHT",25);De(M,"DEFAULT_MARKER_SIZE",6);De(M,"MODE_MARKERS","markers");De(M,"MODE_LINES","lines");function be(n,e,t){return e=Wu(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wu(n){var e=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 re{constructor(e){be(this,"dh",void 0),be(this,"listeners",void 0),be(this,"formatter",void 0),be(this,"renderOptions",void 0),be(this,"rect",void 0),be(this,"isDownsamplingDisabled",void 0),be(this,"title",void 0),this.dh=e,this.listeners=[],this.isDownsamplingDisabled=!1}getData(){return[]}getDefaultTitle(){return""}getLayout(){return{}}getFilterColumnMap(){return new Map}isFilterRequired(){return!1}setFilter(e){}close(){}setFormatter(e){this.formatter=e}setRenderOptions(e){this.renderOptions=e}setDownsamplingDisabled(e){this.isDownsamplingDisabled=e}setDimensions(e){this.rect=e}setTitle(e){this.title=e}subscribe(e){this.listeners.push(e)}unsubscribe(e){this.listeners=this.listeners.filter(t=>t!==e)}fireEvent(e){for(var t=0;t<this.listeners.length;t+=1)this.listeners[t](e)}fireUpdate(e){this.fireEvent(new CustomEvent(re.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(re.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(re.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(re.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(re.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(re.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(re.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(re.EVENT_LOADFINISHED))}fireError(e){this.fireEvent(new CustomEvent(re.EVENT_ERROR,{detail:e}))}fireBlocker(e){this.fireEvent(new CustomEvent(re.EVENT_BLOCKER,{detail:e}))}fireBlockerClear(){this.fireEvent(new CustomEvent(re.EVENT_BLOCKER_CLEAR))}fireLayoutUpdated(e){this.fireEvent(new CustomEvent(re.EVENT_LAYOUT_UPDATED,{detail:e}))}}be(re,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");be(re,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");be(re,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");be(re,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");be(re,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");be(re,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");be(re,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");be(re,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");be(re,"EVENT_ERROR","ChartModel.EVENT_ERROR");be(re,"EVENT_BLOCKER","ChartModel.EVENT_BLOCKER");be(re,"EVENT_BLOCKER_CLEAR","ChartModel.EVENT_BLOCKER_CLEAR");be(re,"EVENT_LAYOUT_UPDATED","ChartModel.EVENT_LAYOUT_UPDATED");function Ci(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 Si(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ci(Object(t),!0).forEach(function(r){ce(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ci(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ce(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 we=Q.module("FigureChartModel");class cr extends re{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(e),r=this,ce(this,"chartUtils",void 0),ce(this,"dh",void 0),ce(this,"figure",void 0),ce(this,"settings",void 0),ce(this,"data",void 0),ce(this,"layout",void 0),ce(this,"seriesDataMap",void 0),ce(this,"pendingSeries",void 0),ce(this,"oneClicks",void 0),ce(this,"filterColumnMap",void 0),ce(this,"lastFilter",void 0),ce(this,"isConnected",void 0),ce(this,"seriesToProcess",void 0),ce(this,"addPendingSeries",vt(()=>{for(var a=M.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=[]},cr.ADD_SERIES_DEBOUNCE)),ce(this,"getTimeZone",Ge((a,l)=>{if(l!=null){var s=l.getColumnTypeFormatter(a);if(s!=null)return s.dhTimeZone}},{max:100})),ce(this,"getValueTranslator",Ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.unwrapValue(o,s)},{max:100})),ce(this,"getValueParser",Ge((a,l)=>{var s=this.getTimeZone(a,l);return o=>this.chartUtils.wrapValue(o,a,s)},{max:100})),ce(this,"getRangeParser",Ge((a,l)=>s=>{var[o,u]=s,d=this.getValueParser(a,l);return o=d(o),u=d(u),[o,u]},{max:100})),ce(this,"getAxisRangeParser",Ge((a,l)=>s=>{var o=M.getSourceForAxis(a,s);return o!=null?this.getRangeParser(o.columnType,l):u=>u},{max:100})),this.handleFigureUpdated=this.handleFigureUpdated.bind(this),this.handleFigureDisconnected=this.handleFigureDisconnected.bind(this),this.handleFigureReconnected=this.handleFigureReconnected.bind(this),this.handleFigureSeriesAdded=this.handleFigureSeriesAdded.bind(this),this.handleDownsampleStart=this.handleDownsampleStart.bind(this),this.handleDownsampleFinish=this.handleDownsampleFinish.bind(this),this.handleDownsampleFail=this.handleDownsampleFail.bind(this),this.handleDownsampleNeeded=this.handleDownsampleNeeded.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.dh=e,this.chartUtils=new M(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=M.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(_=>_.type===e.dh.plot.AxisType.X),E=p.find(_=>_.type===e.dh.plot.AxisType.Y);if(b==null||E==null)we.warn("Chart title provided, but unknown how to map to the correct axes for this chart type",c);else{var C,y,w,T,F=((C=(y=r.get(b.type))===null||y===void 0?void 0:y.findIndex(_=>_===b))!==null&&C!==void 0?C:0)+1,N=((w=(T=r.get(E.type))===null||T===void 0?void 0:T.findIndex(_=>_===E))!==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(N," 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,M.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=M.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=M.DEFAULT_MARGIN.t+i*M.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=Si({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=Si({},this.layout.title.pad),this.layout.title.pad.t=M.DEFAULT_TITLE_PADDING.t+i*M.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=M.getPlotlyErrorBars(d,h,c)),g&&p&&g!==v&&(a.error_y=M.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}}ce(cr,"ADD_SERIES_DEBOUNCE",50);function Ei(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 dn(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ei(a,r,i,l,s,"next",o)}function s(o){Ei(a,r,i,l,s,"throw",o)}l(void 0)})}}class Gt{static makeModelFromSettings(e,t,r){return dn(function*(){var i=yield Gt.makeFigureFromSettings(e,t,r);return new cr(e,i,t)})()}static makeFigureFromSettings(e,t,r){return dn(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new M(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){return dn(function*(){return new cr(e,r,t)})()}}function yi(n){return n.setFigure!==void 0}function Xu(n){return typeof n.id=="string"&&n.layout instanceof As&&n.panelManager instanceof xs&&typeof n.registerComponent=="function"}function Xt(n){if(!Xu(n))throw new Error("Expected dashboard plugin props, but instead received ".concat(n))}function Jt(n,e,t,r){var i,a=(i=e.COMPONENT)!==null&&i!==void 0?i:e.displayName;if(a==null)throw new Error("ComponentType must have a `COMPONENT` or `displayName` attribute.");Re.useEffect(()=>{var l=n(a,e,t,r);return()=>{l()}},[e,r,t,a,n])}function 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 Yu(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){Zu(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 Zu(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=Ju(n,"string");return typeof e=="symbol"?e:String(e)}function Ju(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ed=O.lazy(()=>$r(()=>import("./IrisGrid-CTF9IbSf.js"),__vite__mapDeps([13,1,2,3,4,5,8,9,14,11,15,16]),import.meta.url)),Kr=O.forwardRef((n,e)=>f.jsx(O.Suspense,{fallback:f.jsx(ft,{}),children:f.jsx(ed,Yu({ref:e},n))}));Kr.displayName="LazyIrisGrid";var En;(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"})(En||(En={}));const Ti=En;var td=Object.freeze([[Ti.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Ti.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const ul={DEFAULTS:td};var yn;(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"})(yn||(yn={}));const J=yn;var Zv=[J.SUM,J.ABS_SUM,J.MIN,J.MAX,J.VAR,J.AVG,J.STD,J.FIRST,J.LAST,J.COUNT_DISTINCT,J.DISTINCT,J.COUNT,J.UNIQUE],rd=n=>{switch(n){default:return!1}},dl=(n,e)=>{switch(n){case J.COUNT:case J.FIRST:case J.LAST:case J.COUNT_DISTINCT:case J.DISTINCT:case J.UNIQUE:return!0;case J.MIN:case J.MAX:return S.isNumberType(e)||S.isDateType(e)||S.isTextType(e);case J.SUM:case J.ABS_SUM:case J.VAR:case J.AVG:case J.STD:return S.isNumberType(e);case J.SKIP:return!1}},hl=(n,e)=>n.filter(t=>t.isProxy!==!0&&dl(e,t.type)),nd=(n,e,t,r)=>hl(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const Pi={isValidOperation:dl,isRollupOperation:rd,filterValidColumns:hl,getOperationColumnNames:nd};function id(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function ir(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)}var wn;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(wn||(wn={}));class k{static normalize(e,t,r,i){var a=e,l=t,s=r,o=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),l!=null&&o!=null&&o<l&&(l=o,o=t),[a,l,s,o]}static makeNormalized(e,t,r,i){return new k(...k.normalize(e,t,r,i))}static makeCell(e,t){return new k(e,t,e,t)}static makeColumn(e){return new k(e,null,e,null)}static makeRow(e){return new k(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],l=t.length-1;l>i;l-=1){var s=t[l];if(a.contains(s))t.splice(l,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(l,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:o,endRow:u}=a,d=k.minOrNull(a.startColumn,s.startColumn),h=k.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new k(d,o,h,u),t.splice(l,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:c,endColumn:v}=a,g=k.minOrNull(a.startRow,s.startRow),p=k.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new k(c,g,v,p),t.splice(l,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){var r,i,a,l,s,o;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:c}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,h=h!=null&&t.endColumn!=null?Math.min(h,t.endColumn):(i=h)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,c=c!=null&&t.endRow!=null?Math.min(c,t.endRow):(l=c)!==null&&l!==void 0?l:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((o=c)!==null&&o!==void 0?o:-1)?null:new k(u,d,h,c)}static subtractFromRange(e,t){var r=[],i=k.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new k(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new k(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new k(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new k(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...k.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=k.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,l,s;return k.isBounded(e)?e:new k((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(l=e.endColumn)!==null&&l!==void 0?l:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>k.boundedRange(i,t,r))}static offset(e,t,r){return new k(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:k.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(c=>c.containsCell(t,r)),a>=0)){var l=e[a],s=l.nextCell(t,r,i);if(s!=null)return s}switch(i){case k.SELECTION_DIRECTION.DOWN:case k.SELECTION_DIRECTION.RIGHT:{var o=a<e.length-1?a+1:0,u=e[o];return u.startCell(i)}case k.SELECTION_DIRECTION.LEFT:case k.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,h=e[d];return h.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,l,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((l=r.endColumn)!==null&&l!==void 0?l:NaN)-((s=r.startColumn)!==null&&s!==void 0?s:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:k.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){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 k.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&k.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return k.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:k.SELECTION_DIRECTION.DOWN;if(!k.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case k.SELECTION_DIRECTION.DOWN:case k.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case k.SELECTION_DIRECTION.LEFT:case k.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!k.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:l,endRow:s}=this;switch(r){case k.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,l)};if(e<a)return{column:Math.max(e+1,i),row:l};break;case k.SELECTION_DIRECTION.UP:if(t>l)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case k.SELECTION_DIRECTION.RIGHT:if(e<a)return{column:Math.max(e+1,i),row:t};if(t<s)return{column:i,row:Math.max(t+1,l)};break;case k.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>l)return{column:a,row:Math.min(t-1,s)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:k.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var l;e(i,a,r),r+=1,{column:i,row:a}=(l=this.nextCell(i,a,t))!==null&&l!==void 0?l:{}}}}ir(k,"SELECTION_DIRECTION",wn);function sd(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 sd(n)&&n[0]!=null&&n[1]!=null}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 yr(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){cl(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 cl(n,e,t){return e=od(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function od(n){var e=ud(n,"string");return typeof e=="symbol"?e:String(e)}function ud(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Qv(n){return(n==null?void 0:n.href)!==void 0}class H{static getGridPointFromXY(e,t,r){var i=H.getColumnAtX(e,r),a=H.getRowAtY(t,r),l=H.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:l}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=H.getGridPointFromXY(e,t,r),{allColumnWidths:l,allRowHeights:s,allColumnXs:o,allRowYs:u,modelColumns:d,modelRows:h}=r,c=i!==null?h.get(i):null,v=a!==null?d.get(a):null,g=a!==null?o.get(a):null,p=i!==null?u.get(i):null,m=a!==null?l.get(a):null,b=i!==null?s.get(i):null;return{row:i,column:a,modelRow:c??null,modelColumn:v??null,left:g??null,top:p??null,columnWidth:m??null,rowHeight:b??null}}static getColumnHeaderDepthAtY(e,t){var r=H.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Je(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=H.iterateFloatingStart(e,r,i);return a!==void 0?a:H.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,l){var s=Math.max(e,r),o=Math.min(t,a-i-1),u=H.iterateFloating(r,i,a,l);if(u!==void 0)return u;for(var d=s;d<=o;d+=1)if(u=l(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,l,s=(a=t.get(e))!==null&&a!==void 0?a:0,o=(l=r.get(e))!==null&&l!==void 0?l:0;return s<=i&&i<=s+o}static getItemAtOffset(e,t,r,i,a,l,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=o?void 0:H.iterateFloating(r,i,t,c=>{if(H.isInItem(c,l,s,e))return c});if(!o&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(H.isInItem(h,l,s,e))return h}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:l,visibleColumns:s,allColumnXs:o,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,l,s,o,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:l,allRowYs:s,allRowHeights:o,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,l,s,o)}static getNextShownItem(e,t,r,i){var a=r.findIndex(o=>o===e)||0;for(a-=1;a!=null&&a>=0;){var l=r[a],s=t.get(l);if(s!=null&&i.get(s)!==0)return l;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return H.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return H.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,floatingColumns:s,floatingLeftWidth:o,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:c}=r,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(c*l<t||!v||g<=0)return null;for(var p=e-a,m=g*.5,b=!1,E=s.length-1;E>=0;E-=1){var C,y,w=s[E],T=(C=d.get(w))!==null&&C!==void 0?C:0,F=(y=h.get(w))!==null&&y!==void 0?y:0,N=F===0;if(!b||!N){var P=T+F;N?P+=m:b&&(P-=m);var _=P-m,A=P+m;if(_<=p&&p<=A)return w;b=N}}b=!1;for(var x=u.length-1;x>=0;x-=1){var V,U,K=u[x],ne=(V=d.get(K))!==null&&V!==void 0?V:0,le=(U=h.get(K))!==null&&U!==void 0?U:0,ve=le===0;if(ne<o-le)return null;if(!b||!ve){var fe=ne+le;ve?fe+=m:b&&(fe-=m);var Ie=fe-m,R=fe+m;if(Ie<=p&&p<=R)return K;b=ve}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return H.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!H.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(o=>o===e),l=a-1;l>=0;l-=1){var s=r[l];if(!H.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return H.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:l,visibleRows:s,allRowYs:o,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var c=t-l,v=h*.5,g=!1,p=s.length-1;p>=0;p-=1){var m,b,E=s[p],C=(m=o.get(E))!==null&&m!==void 0?m:0,y=(b=u.get(E))!==null&&b!==void 0?b:0,w=y===0;if(!g||!w){var T=C+y;w?T+=v:g&&(T-=v);var F=T-v,N=T+v;if(F<=c&&c<=N)return E;g=w}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return H.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return H.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return[...r];var i=[...r],a=i[i.length-1];return a!=null&&!Er(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=yr(yr({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return H.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var l=[...r],s=l[l.length-1];s!=null&&Er(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?l[l.length-1]=yr(yr({},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)?H.moveRange(e,t,r,i):H.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],l=function(){var{from:u,to:d}=r[s],h=1,c;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=[],E=function(){var w,T,F=(w=a[C][0])!==null&&w!==void 0?w:Number.NEGATIVE_INFINITY,N=(T=a[C][1])!==null&&T!==void 0?T:Number.POSITIVE_INFINITY,P,_=[[F,v-1],[v,g],[g+1,N]].map(A=>{var[x,V]=A;return[Math.max(x,F),Math.min(V,N)]}).filter(A=>{var[x,V]=A;return x<=V}).map(A=>{var[x,V]=A;return v<=x&&g>=V?(P=[x+m,V+m],P):g<x?[x-h,V-h]:A}).map(A=>{var[x,V]=A;return p>x&&p<=V?[[x,p-1],[p+h,V+h]]:A===P?[A]:p<=x?[[x+h,V+h]]:[A]}).flat();b.push(..._)},C=0;C<a.length;C+=1)E();a=b.map(y=>{var[w,T]=y;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=H.applyItemMoves(e.startColumn,e.endColumn,t,i),l=H.applyItemMoves(e.startRow,e.endRow,r,i),s=[],o=0;o<a.length;o+=1)for(var u=a[o],d=0;d<l.length;d+=1){var h=l[d];s.push(new k(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=H.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>H.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return H.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ee;return H.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(...H.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return H.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]: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(...H.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=H.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>H.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return H.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=H.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:l,height:s,floatingTopRowCount:o,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:c,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:p,columnCount:m,rowCount:b}=e,E=i,C=a,y=l,w=s;return r!=null&&(r>d&&(E+=c),r<m-h&&(y-=v)),t!=null&&(t>o&&(C+=g),t<b-u&&(w-=p)),{x1:E,y1:C,x2:y,y2:w}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:l,deltaY:s}=e;return!H.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(l=e.deltaY,s=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(l*=t,s*=r):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(H.isMacPlatform()?(l=Math.round(l*i),s=Math.round(s*a)):(l=Math.round(l*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:l,deltaY:s}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],l=i[1];r===0?t.push([a,l]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],l):t.push([a,l])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:l}=e,{gridX:s,gridY:o,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:c}=t,v=Je(s+r,s,u-h),g=Je(s+a,s,u-h),p=Je(o+i,o,d-c),m=Je(o+l,o,d-c);return{x1:v,y1:p,x2:g,y2:m,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:l}=e,{firstColumn:s,allColumnXs:o,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:c,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:p,treeHorizontalPadding:m}=l,b=At(c,r),E=At(v,t),C=a.textAlignForCell(E,b),y=At(o,t),w=At(d,r),T=At(u,t),F=At(h,r),N=t===s,P=0;id(a)&&a.hasExpandableRows&&N&&(P=p*(a.depthForRow(r)+1)+m);var _=T-P,A=y+g,x=w+F*.5;return C==="right"?A=y+_-g:C==="center"&&(A=y+_*.5),A+=P,{width:_-g*2,x:A,y:x}}static findTokensWithProtocolInText(e){var t=vs(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}cl(H,"PIXELS_PER_LINE",100/3);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 Ni(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){dd(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 dd(n,e,t){return e=hd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hd(n){var e=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)}function Tn(n,e){var t=!1,r=Ge(n,Ni(Ni({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r}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)}var hn=5e3;class md extends fs{constructor(){super(...arguments),vd(this,"getCachedTokensInText",Tn((e,t)=>{if(t>=e.length)return H.findTokensWithProtocolInText(e);var r=e.slice(t-1,hn).search(/\s/),i=t+r;r===-1&&(i=Math.min(hn,e.length));var a=e.substring(0,i);return H.findTokensWithProtocolInText(a)},{max:1e4}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:hn,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}function Pn(n,e,t){return e=gd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gd(n){var e=bd(n,"string");return typeof e=="symbol"?e:String(e)}function bd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ot=[],Cd=new Set;class z extends md{constructor(e){super(),Pn(this,"dh",void 0),Pn(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 Ot}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 Ot}get initialMovedRows(){return Ot}get initialColumnHeaderGroups(){return Ot}get layoutHints(){return null}get frontColumns(){return Ot}get backColumns(){return Ot}get keyColumnSet(){return Cd}get frozenColumns(){return Ot}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.")}tooltipForCell(e,t){return null}}Pn(z,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED",VIEWPORT_UPDATED:"VIEWPORT_UPDATED"}));function St(n,e,t){return e=Sd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Sd(n){var e=Ed(n,"string");return typeof e=="symbol"?e:String(e)}function Ed(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yd=Q.module("ColumnHeaderGroup");function cn(n){return n instanceof pr}class pr{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:l,parent:s}=e;St(this,"name",void 0),St(this,"children",void 0),St(this,"depth",void 0),St(this,"parent",void 0),St(this,"color",void 0),St(this,"childIndexes",void 0),St(this,"getVisibleRange",B(o=>{var u=this.childIndexes.flat(),d=H.getVisibleIndexes(u,o),h=Math.min(...d),c=Math.max(...d);return c-h!==u.length-1&&yd.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)}}St(pr,"NEW_GROUP_PREFIX",":newGroup");function nt(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 wd(n){return nt(n)&&n.partitionConfig!==void 0}var Td=["selectedValues"],Pd=["selectedValues"];function Fi(n,e){if(n==null)return{};var t=Dd(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 Dd(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 Mi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $e(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Mi(Object(t),!0).forEach(function(r){Dn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Mi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Dn(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=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 er=Q.module("IrisGridUtils");function Jv(n){return n.partition!==void 0}function Ri(n){return Array.isArray(n.partitions)}function pt(n,e){return n>=0&&n<e.length}function Fd(n){return(n==null?void 0:n.asDate)!=null}class G{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 pt(u,s)&&(typeof d=="number"&&pt(d,s)||Array.isArray(d)&&pt(d[0],s)&&pt(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=G.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 pt(c,d)&&(typeof v=="number"&&pt(v,d)||Array.isArray(v)&&pt(v[0],d)&&pt(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([...ul.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=G.parseCustomColumnNames(e),i=G.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(l=>{var{name:s}=l;return s}),a=new Map(t);return r.forEach(l=>a.delete(i.indexOf(l))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(o=>{var{name:u}=o;return u}),a=[...t],l=function(){for(var u=r[s],d=i.findIndex(b=>b===u),h=[],c=0;c<a.length;c+=1){var v=a[c],g=$e({},v),[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($e($e({},g),{},{from:p})):h.push($e($e({},g),{},{from:[p,m]}))),d=H.applyItemMoves(d,d,[v])[0][0]}a=h,i.splice(i.findIndex(b=>b===u),1)},s=0;s<r.length;s+=1)l();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var l=[],s=t;s<=r;s+=1){var o=H.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o])}return l}static getPrevVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s>=0&&l.length<r;){var o=H.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.unshift(e[o]),s-=1}return l}static getNextVisibleColumns(e,t,r,i,a){for(var l=[],s=t;s<e.length&&l.length<r;){var o=H.getModelIndex(s,i);o>=0&&o<e.length&&!a.includes(o)&&l.push(e[o]),s+=1}return l}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var l=e.find(s=>{var{name:o}=s;return o===a});l!=null&&!t.includes(l)&&i.push(l)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(!(t==null||r==null)){var o=G.getVisibleColumnsInRange(e,t,r,i,a),u=o.length*s,d=G.getPrevVisibleColumns(e,t-1,u,i,a),h=G.getNextVisibleColumns(e,r+1,u,i,a),c=[...d,...o,...h];return G.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];I(a.startColumn),I(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:E,selected:C,invert:y}=b;return Pi.isRollupOperation(E)?[]:Pi.getOperationColumnNames(e,E,C,y)}),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(E=>g.delete(E))}),g.size>0){var p,m=(p=c[J.FIRST])!==null&&p!==void 0?p:[];c[J.FIRST]=[...m,...g]}}return{groupingColumns:l,includeConstituents:s,includeDescriptions:u,aggregations:c}}static getPendingErrors(e){e.forEach((t,r)=>{if(!G.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!G.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})})}static getColumn(e,t){return t<e.length?e[t]:(er.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&&er.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(I(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(E=>{if(o.has(E))throw new Error("Column group child ".concat(E," specified in multiple groups"));o.add(E);var C=s.get(E),y=e.getColumnIndexByName(E);if(C){var w=u(C);p.push(...w.childIndexes),m=Math.max(m,w.depth+1)}else if(y!=null)p.push(y),m=Math.max(m,1);else throw new Error("Unknown child ".concat(E," in group ").concat(v))});var b=new pr($e($e({},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(E=>i.set(E,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)&&Fd(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){Dn(this,"dh",void 0),Dn(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new S(e),_n(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,reverse:h,rollupConfig:c=void 0,showSearchBar:v,searchValue:g,selectDistinctColumns:p=ee,selectedSearchColumns:m,sorts:b,invertSearchColumns:E,pendingDataMap:C=Ir,frozenColumns:y,columnHeaderGroups:w,partitionConfig:T=void 0}=t;I(s);var{userColumnWidths:F,userRowHeights:N}=s,{columns:P}=e,_=nt(e)?e.partitionColumns:[];return{advancedFilters:this.dehydrateAdvancedFilters(P,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:l,quickFilters:G.dehydrateQuickFilters(o),sorts:G.dehydrateSort(b),userColumnWidths:[...F].filter(A=>{var[x]=A;return x!=null&&x>=0&&x<P.length}).map(A=>{var[x,V]=A;return[P[x].name,V]}),userRowHeights:[...N],customColumns:[...u],conditionalFormats:[...d],reverse:h,rollupConfig:c,showSearchBar:v,searchValue:g,selectDistinctColumns:[...p],selectedSearchColumns:m,invertSearchColumns:E,pendingDataMap:this.dehydratePendingDataMap(P,C),frozenColumns:y,columnHeaderGroups:w==null?void 0:w.map(A=>{var x;return{name:A.name,children:A.children,color:(x=A.color)!==null&&x!==void 0?x:null}}),partitionConfig:this.dehydratePartitionConfig(_,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,reverse:m,rollupConfig:b=void 0,showSearchBar:E,searchValue:C,selectDistinctColumns:y,selectedSearchColumns:w,invertSearchColumns:T=!0,pendingDataMap:F=[],frozenColumns:N,columnHeaderGroups:P,partitionConfig:_}=t,{columns:A,formatter:x}=e,V=nt(e)?e.partitionColumns:[];return{advancedFilters:this.hydrateAdvancedFilters(A,a,x.timeZone),aggregationSettings:l,customColumnFormatMap:new Map(s),isFilterBarShown:o,quickFilters:this.hydrateQuickFilters(A,u,x.timeZone),sorts:this.hydrateSort(A,d),userColumnWidths:new Map(v.map(U=>{var[K,ne]=U;return typeof K=="string"||K instanceof String?[A.findIndex(le=>{var{name:ve}=le;return ve===K}),ne]:[K,ne]}).filter(U=>{var[K]=U;return K!=null&&K>=0&&K<A.length})),customColumns:h,conditionalFormats:c,userRowHeights:new Map(g),reverse:p===S.REVERSE_TYPE.POST_SORT||m,rollupConfig:b,showSearchBar:E,searchValue:C,selectDistinctColumns:y,selectedSearchColumns:w,invertSearchColumns:T,pendingDataMap:this.hydratePendingDataMap(A,F),frozenColumns:N,columnHeaderGroups:G.parseColumnHeaderGroups(e,(r=P??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups,partitionConfig:this.hydratePartitionConfig(V,_)}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[l,s]=a,{text:o}=s,u=null;try{var d=G.getColumn(e,l);d!=null&&(u=this.tableUtils.makeQuickFilter(d,o,r))}catch(h){er.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=G.getColumn(e,i);I(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=G.getColumn(e,l);I(o);var u=this.hydrateAdvancedFilterOptions(o,s.options),d=null;try{var h=G.getColumn(e,l);h!=null&&(d=this.tableUtils.makeAdvancedFilter(o,u,r))}catch(c){er.error("hydrateAdvancedFilters error with",u,c)}return[l,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Fi(t,Td);return $e({selectedValues:r==null?void 0:r.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Fi(t,Pd);return $e({selectedValues:r==null?void 0:r.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].filter(l=>{var[s]=l;return typeof s=="number"}).map(l=>{var[s,o]=l;return[e[s].name,this.dehydrateValue(o,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 I(c),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[c].type)]}))}]}))}dehydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((r,i)=>this.dehydrateValue(r,e[i].type))})}hydratePartitionConfig(e,t){return t==null?t:$e($e({},t),{},{partitions:t.partitions.map((r,i)=>this.hydrateValue(r,e[i].type))})}dehydrateValue(e,t){return S.isDateType(t)?this.dehydrateDateTime(e):S.isLongType(t)?G.dehydrateLong(e):e}hydrateValue(e,t){return S.isDateType(t)?this.hydrateDateTime(e):S.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(ae.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(ae.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh: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"?G.getColumnByName(e,a):G.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=G.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var l=[];t.advancedFilters&&(l=G.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=>G.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){er.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)=>(I(i.startRow),I(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:l}=i;return I(a),I(l),t.RangeSet.ofRange(a,l)});return t.RangeSet.ofRanges(r)}}function vn(n,e,t){return e=Md(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Md(n){var e=Rd(n,"string");return typeof e=="symbol"?e:String(e)}function Rd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Id extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),vn(this,"isMissingKey",!0),vn(this,"rowIndex",void 0),vn(this,"columnName",void 0),this.rowIndex=e,this.columnName=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 wr(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){X(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 Li(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){Li(a,r,i,l,s,"next",o)}function s(o){Li(a,r,i,l,s,"throw",o)}l(void 0)})}}function X(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 oe=Q.module("IrisGridTableModelTemplate"),xd=150,kd=0;function _t(n){return n.table!==void 0}class Bt extends z{seekRow(e,t,r,i,a,l,s){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),X(this,"dh",void 0),X(this,"irisGridUtils",void 0),X(this,"tableUtils",void 0),X(this,"irisFormatter",void 0),X(this,"inputTable",void 0),X(this,"subscription",void 0),X(this,"table",void 0),X(this,"viewport",void 0),X(this,"viewportData",void 0),X(this,"formattedStringData",void 0),X(this,"pendingStringData",void 0),X(this,"isSaveInProgress",void 0),X(this,"totalsTable",void 0),X(this,"totalsTablePromise",void 0),X(this,"totals",void 0),X(this,"totalsDataMap",void 0),X(this,"pendingNewDataMap",void 0),X(this,"pendingNewRowCount",0),X(this,"_columnHeaderGroupMap",new Map),X(this,"columnHeaderParentMap",new Map),X(this,"_columnHeaderMaxDepth",null),X(this,"_columnHeaderGroups",[]),X(this,"_isColumnHeaderGroupsInitialized",!1),X(this,"_movedColumns",null),X(this,"getMemoizedInitialMovedColumns",B(a=>{var l,s,o,u;if(!a)return[];var d=[],{groupMap:h}=G.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]),c=(T,F)=>{var N=this.getColumnIndexByName(T);if(N==null)throw new Error("Unknown layout hint column: ".concat(T));var P=H.getVisibleIndex(N,d);d=H.moveItem(P,F,d)},v=(T,F)=>{var N=h.get(T);if(N==null)throw new Error("Unknown layout hint group: ".concat(T));var P=N.getVisibleRange(d);d=H.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,E=0;m==null||m.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,E),E+=1}),g.forEach(T=>{if(b.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,E),E+=1});var C=this.columns.length-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 y=a==null?void 0:a.columnGroups;if(y){var w=[...h.values()];w.sort((T,F)=>T.depth-F.depth),w.forEach(T=>{var F=T.children[0],N=this.getColumnIndexByName(F),P;if(N!=null)P=H.getVisibleIndex(N,d);else{var _=h.get(F);if(!_)throw new Error("Unknown column ".concat(F," in group ").concat(T.name));var A=_.getVisibleRange(d);[,P]=A}for(var x=1;x<T.children.length;x+=1){var V=T.children[x],U=h.get(V),K=this.getColumnIndexByName(V);if(U){var ne=U.getVisibleRange(d)[0]<P,le=ne?P-U.childIndexes.length+1:P+1;v(V,le),P=le+U.childIndexes.length-1}else if(K!=null){var ve=H.getVisibleIndex(K,d)<P,fe=ve?P:P+1;c(V,fe),P=fe}}})}return this._movedColumns=d,d})),X(this,"getMemoizedInitialColumnHeaderGroups",B(a=>{var l;return G.parseColumnHeaderGroups(this,(l=a==null?void 0:a.columnGroups)!==null&&l!==void 0?l:[]).groups})),X(this,"getColumnIndicesByNameMap",B(a=>{var l=new Map;return a.forEach((s,o)=>{var{name:u}=s;return l.set(u,o)}),l})),X(this,"setViewport",Jn((a,l,s)=>{if(l<a){oe.error("Invalid viewport",a,l);return}var{viewport:o}=this;if(o!=null&&o.top===a&&o.bottom===l&&o.columns===s){oe.debug2("Ignoring duplicate viewport",o);return}this.viewport={top:a,bottom:l,columns:s},oe.debug2("setViewport",this.viewport),this.applyViewport()},xd)),X(this,"applyViewport",Jn(()=>{if(this.viewport){oe.debug2("applyViewport",this.viewport);var{top:a,bottom:l,columns:s}=this.viewport,[o,u]=this.getCachedViewportRowRange(a,l);this.applyBufferedViewport(o,u,s)}},kd,{leading:!1})),X(this,"getCachedFormattedString",Tn((a,l,s,o,u)=>a.getFormattedString(l,s,o,u),{max:1e4})),X(this,"getCachedCustomColumnFormatFlag",Tn(Sn.isCustomColumnFormatDefined,{max:1e4})),X(this,"getCachedViewportRowRange",B((a,l)=>{var s=l-a,o=Math.max(0,a-s*Bt.ROW_BUFFER_PAGES),u=l+s*Bt.ROW_BUFFER_PAGES;return[o,u]})),X(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 Id(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 G(e),this.inputTable=i,this.subscription=null,this.table=t,this.tableUtils=new S(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new ie(z.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new ie(z.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new ie(z.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new ie(z.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new ie(z.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,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(!G.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,l)=>{if(!G.isValidIndex(l))throw new Error("Invalid columnIndex ".concat(l))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new ie(z.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new ie(z.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}get isDeletable(){return this.keyColumnSet.size>0}get isViewportPending(){if(this.viewport==null||this.viewport.columns===void 0||this.viewportData==null)return!0;if(this.viewport.columns.length===0||this.viewportData.rows.length===0)return!1;var e=this.viewport.top<this.viewportData.offset,t=this.viewportData.offset+this.viewportData.rows.length<this.viewport.bottom,r=this.viewportData.rows[0].data.get(this.viewport.columns[0].index)===void 0,i=this.viewportData.rows[0].data.get(this.viewport.columns[this.viewport.columns.length-1].index)===void 0;return e||t||r||i}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a=this.valueForCell(e,t);if(a===null)return null;if(a===void 0)return;var l=this.sourceColumn(e,t),s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),o;if(!s){var u=this.formatForCell(e,t);(u==null?void 0:u.formatString)!=null&&(o=u)}var d=this.displayString(a,l.type,l.name,o);this.cacheFormattedValue(e,t,d)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(S.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return this.formatter.showNullStrings?"null":"";if(i==="")return this.formatter.showEmptyStrings?"empty":""}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(S.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:l}=i;if(l==null||l==="")return I(r.nullStringColor),r.nullStringColor;if((a==null?void 0:a.color)!=null&&a.color!=="")return a.color;if(this.isPendingRow(t))return I(r.pendingTextColor),r.pendingTextColor;if(l!=null){var s=this.sourceColumn(e,t);if(S.isDateType(s.type)||s.name==="Date")return I(r.dateColor),r.dateColor;if(S.isNumberType(s.type))return l>0?(I(r.positiveNumberColor),r.positiveNumberColor):l<0?(I(r.negativeNumberColor),r.negativeNumberColor):(I(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return I(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 cn(i)?i.isNew?"":i.name:(t=i==null?void 0:i.displayName)!==null&&t!==void 0?t:i==null?void 0:i.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(cn(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}tooltipForCell(e,t){return e===null||t===null?null:S.isDateType(this.columns[e].type)?this.displayString(this.valueForCell(e,t),this.columns[e].type,this.columns[e].name,{formatString:ae.FULL_DATE_FORMAT}):null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(cn(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var l=a.depth;l<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;l=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroupMap}get columnHeaderGroups(){return this.initializeColumnHeaderGroups(),this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=G.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=G.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,E=(p=this.totals)===null||p===void 0?void 0:p.operationOrder[g];return I(E),(m=(b=this.totalsDataMap)===null||b===void 0?void 0:b.get(E))!==null&&m!==void 0?m:null}var C=this.pendingRow(e);if(C!=null){var y;return(y=this.pendingNewDataMap.get(C))!==null&&y!==void 0?y: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:J.SUM,d=this.columns[e],h=(s=this.totalsTable)===null||s===void 0?void 0:s.columns.find(c=>{var v;return c.name==="".concat(d.name,"__").concat(o)||(o===u||((v=this.totals)===null||v===void 0?void 0:v.operationOrder.length)===1)&&c.name===d.name});if(h!=null)return h}return this.columns[e]}totalsRow(e){var t,r,i,a,l,s=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,o=(a=(l=this.totals)===null||l===void 0?void 0:l.showOnTop)!==null&&a!==void 0?a:!1,u=o?e:e-this.table.size;return u>=0&&u<s?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){oe.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){oe.warn("invalid data!");return}var{columns:l,rows:s}=e;if(s.length!==1){oe.error("Unexpected number of rows received for totals table, ignoring update");return}for(var o=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:J.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,c=function(){var p,m,b=l[v],[E,C=(p=h==null||(m=h[E])===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:y}=o.get(C),w=a.columns.findIndex(T=>T.name===E);y.set(w,{value:u.get(b),format:u.getFormat(b)})},v=0;v<l.length;v+=1)c();oe.debug2("copyTotalsData",o),this.totalsDataMap=o,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],l=this.extractViewportRow(a,r);t.rows.push(l)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],l=this.getColumnIndexByName(a.name);r.set(l??a.name,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){oe.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new ie(z.EVENT.FORMATTER_UPDATED))}displayString(e,t){var 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(oe.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new ie(z.EVENT.UPDATED));return}this.totalsTablePromise=xe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{xe.isCanceled(t)||(oe.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){oe.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){if(this.dispatchEvent(new ie(z.EVENT.VIEWPORT_UPDATED)),oe.debug2("applyBufferedViewport",e,t,r),this.subscription==null){var i;oe.debug2("applyBufferedViewport creating new subscription"),this.subscription=(i=this.table.setViewport(e,t,r))!==null&&i!==void 0?i:null}else oe.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r)}snapshot(e){var t=arguments,r=this;return mt(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?k.consolidate(e):e;if(!G.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];I(c.endRow),I(c.startRow);for(var v=c.startRow;v<=c.endRow&&v<r.floatingTopRowCount;v+=1)o.add(v);c.endRow>=r.floatingTopRowCount&&c.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new k(c.startColumn,Math.min(Math.max(0,c.startRow-r.floatingTopRowCount)),c.endColumn,Math.min(Math.max(0,c.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(c.startRow,r.floatingTopRowCount+r.table.size);g<=c.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var p=G.columnsFromRanges(s,r.columns),m=[];i&&m.push(p.map(P=>P.name));for(var b=[...o].sort(),E=function*(){var _=b[C],A=p.map(x=>{var V=r.getColumnIndexByName(x.name);return I(V),a(r.valueForCell(V,_),x)});i&&A.push(r.textForRowFooter(_)),m.push(A)},C=0;C<b.length;C+=1)yield*E();if(u.length>0){var y=r.irisGridUtils.rangeSetFromRanges(u),w=yield r.subscription.snapshot(y,p);m.push(...w.rows.map(P=>p.map(_=>a(P.get(_),_))))}for(var T=[...d].sort(),F=function*(){var _=T[N],A=p.map(x=>{var V=r.getColumnIndexByName(x.name);return I(V),a(r.valueForCell(V,_),x)});i&&A.push(r.textForRowFooter(_)),m.push(A)},N=0;N<T.length;N+=1)yield*F();return m})()}textSnapshot(e){var t=arguments,r=this;return mt(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:s=>"".concat(s);oe.debug2("textSnapshot",e,i);var l=yield r.snapshot(e,i,a,!1);return l.map(s=>s.join(" ")).join(`
|
|
4
|
+
`)})()}valuesTable(e){var t=this;return mt(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),yield r.selectDistinct(Array.isArray(e)?e:[e])}finally{r!=null&&r.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isColumnSortable(e){var t;return(t=this.columns[e].isSortable)!==null&&t!==void 0?t:!0}isKeyColumn(e){return this.keyColumnSet.has(this.columns[e].name)}isRowMovable(){return!1}isEditableRange(e){var t;if(this.inputTable==null||e.startRow==null||e.endRow==null)return!1;var r=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow),i=!1;I(e.startColumn);for(var a=(t=e.endColumn)!==null&&t!==void 0?t:this.table.size,l=e.startColumn;l<=a;l+=1)if(this.isKeyColumn(l)){i=!0;break}return!!(r||this.keyColumnSet.size!==0&&!i)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new k(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new k(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return mt(function*(){return i.setValueForRanges([new k(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return mt(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];k.forEachCell(e,(p,m)=>{var b=r.columns[p];if(i.add(b),a[p]===void 0){var E=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);a[p]=E!=null?r.displayString(E,b.type,b.name):null}r.cachePendingValue(p,m,a[p])});var l=r.getPendingAreaRange(),s=e.map(p=>k.intersection(l,p)).filter(p=>p!=null).map(p=>(I(p),k.offset(p,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var o=new Map(r.pendingNewDataMap);k.forEachCell(s,(p,m)=>{o.has(m)||o.set(m,{data:new Map});var b=r.columns[p],E=o.get(m);I(E);var{data:C}=E,y=new Map(C),w=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone);w!=null?y.set(p,{value:w}):y.delete(p),y.size>0?o.set(m,wr(wr({},E),{},{data:y})):o.delete(m)}),r.pendingDataMap=o}r.dispatchEvent(new ie(z.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(p=>k.intersection(u,p)).filter(p=>p!=null);if(d.length>0){var h,c=yield r.snapshot(d.map(p=>{var m,b;return new k(null,(m=p==null?void 0:p.startRow)!==null&&m!==void 0?m:null,null,(b=p==null?void 0:p.endRow)!==null&&b!==void 0?b:null)})),v=c.map(p=>{for(var m={},b=0;b<r.columns.length;b+=1)m[r.columns[b].name]=p[b];return i.forEach(E=>{m[E.name]=r.tableUtils.makeValue(E.type,t,r.formatter.timeZone)}),m}),g=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(v);oe.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}k.forEachCell(e,(p,m)=>{var b=a[p];I(b),r.cacheFormattedValue(p,m,b)})}catch(p){oe.error("Unable to set ranges",e,t,p)}finally{k.forEachCell(e,(p,m)=>{r.clearPendingValue(p,m)})}})()}setValues(){var e=arguments,t=this;return mt(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(oe.debug("setValues(",r,")"),!r.every(v=>{var g,p;return t.isEditableRange(k.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,E=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],y=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=y!=null?t.displayString(y,C.type,C.name):null;t.cachePendingValue(b,E,w);var T=t.pendingRow(E);if(T!=null){i.has(T)||i.set(T,{data:new Map});var F=i.get(T);I(F);var{data:N}=F,P=new Map(N);y!=null?P.set(b,{value:y}):P.delete(b),P.size>0?i.set(T,wr(wr({},F),{},{data:P})):i.delete(T)}}),t.pendingDataMap=i,t.dispatchEvent(new ie(z.EVENT.UPDATED));var a=r.reduce((v,g)=>{var p,m,b=(p=g.row)!==null&&p!==void 0?p:g.y;return v.has(b)||v.set(b,[]),(m=v.get(b))===null||m===void 0||m.push(g),v},new Map),l=k.consolidate(r.map(v=>{var g,p;return k.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(p=v.row)!==null&&p!==void 0?p:v.y)})),s=t.getTableAreaRange(),o=l.map(v=>k.intersection(s,v)).filter(v=>v!=null);if(o.length>0){var u,d=yield t.snapshot(o.map(v=>(I(v),new k(null,v.startRow,null,v.endRow)))),h=d.map((v,g)=>{for(var p=null,m=g,b=0;b<o.length;b+=1){var E=o[b];I(E);var C=k.rowCount([E]);if(m<C){I(E.startRow),p=E.startRow+m;break}m-=C}for(var y={},w=0;w<t.columns.length;w+=1)y[t.columns[w].name]=v[w];I(p);var T=a.get(p);return T!=null&&T.forEach(F=>{var N,P=t.columns[(N=F.column)!==null&&N!==void 0?N:F.x];y[P.name]=t.tableUtils.makeValue(P.type,F.text,t.formatter.timeZone)}),y});oe.info("setValues setting tableRanges",o);var c=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);oe.info("setValues set tableRanges",o,"SUCCESS",c)}r.forEach(v=>{var g,p,{text:m}=v,b=(g=v.column)!==null&&g!==void 0?g:v.x,E=(p=v.row)!==null&&p!==void 0?p:v.y,C=t.columns[b],y=t.tableUtils.makeValue(C.type,m,t.formatter.timeZone),w=y!=null?t.displayString(y,C.type,C.name):null;t.cacheFormattedValue(b,E,w)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return mt(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(s=>{var o={};s.data.forEach((u,d)=>{var{value:h}=u,c=typeof d=="string"?d:e.columns[d].name;o[c]=h}),a.push(o)});var l=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);oe.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(z.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){var r;return(r=this.textValueForCell(e,t))!==null&&r!==void 0?r:""}delete(e){return mt(function*(){throw new Error("Delete not implemented")})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}X(Bt,"ROW_BUFFER_PAGES",1);function Ai(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function _d(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Ai(a,r,i,l,s,"next",o)}function s(o){Ai(a,r,i,l,s,"throw",o)}l(void 0)})}}function xi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ki(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xi(Object(t),!0).forEach(function(r){Mt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Mt(n,e,t){return e=jd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jd(n){var e=Vd(n,"string");return typeof e=="symbol"?e:String(e)}function Vd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var $d=Q.module("IrisGridTreeTableModel"),_i=Object.freeze({name:"__DH_UI_GROUP__",displayName:"Group",type:S.dataType.STRING,constituentType:S.dataType.STRING,isPartitionColumn:!1,isSortable:!1,isProxy:!0,description:"Key column",index:-1,filter:()=>{throw new Error("Filter not implemented for virtual column")},sort:()=>{throw new Error("Sort not implemented for virtual column")},formatColor:()=>{throw new Error("Color not implemented for virtual column")},get:()=>{throw new Error("get not implemented for virtual column")},getFormat:()=>{throw new Error("getFormat not implemented for virtual column")},formatNumber:()=>{throw new Error("formatNumber not implemented for virtual column")},formatDate:()=>{throw new Error("formatDate not implemented for virtual column")}});function Hd(n){return n.layoutHints!==void 0}function ef(n){return n.showExtraGroupColumn!=null}class Gd extends Bt{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),Mt(this,"virtualColumns",void 0),Mt(this,"showExtraGroupCol",!0),Mt(this,"getCachedColumns",B((a,l)=>[...a,...l])),Mt(this,"getCachedGroupColumns",B((a,l)=>[...a,...l])),Mt(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))))),Mt(this,"getCachedGroupedColumnSet",B(a=>new Set(a.map(l=>this.columns.findIndex(s=>l.name===s.name))))),this.virtualColumns=this.showExtraGroupColumn&&t.groupedColumns.length>1?[_i]:[]}get showExtraGroupColumn(){return this.showExtraGroupCol}set showExtraGroupColumn(e){this.showExtraGroupCol!==e&&(this.showExtraGroupCol=e,this.updateVirtualColumns())}updateVirtualColumns(){this.virtualColumns=this.showExtraGroupColumn&&this.table.groupedColumns.length>1?[_i]:[],this.dispatchEvent(new ie(z.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}applyBufferedViewport(e,t,r){var i=[...this.table.groupedColumns,...r.filter(a=>!this.virtualColumns.includes(a)&&!this.groupedColumns.includes(a))];this.table.setViewport(e,t,i)}textForCell(e,t){var r=this.sourceColumn(e,t),i=this.row(t);if(i!=null&&r!=null){if(!i.hasChildren&&r.constituentType!=null){var a=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?$d.warn("Missing key data for virtual column",o,a,u,e):s.set(o,d)}return ki(ki({},l),{},{data:s,isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t){var r=arguments,i=this;return _d(function*(){var a,l=r.length>2&&r[2]!==void 0?r[2]:b=>b;I(i.viewport),I(i.viewportData);var s=(a=i.viewport.columns)!==null&&a!==void 0?a:i.columns,o=[];t!=null&&t&&o.push(s.map(b=>b.name));for(var u=new k(0,i.viewportData.offset,s.length,i.viewportData.offset+i.viewportData.rows.length-1),d=0;d<e.length;d+=1){var h=k.intersection(u,e[d]);I(h),I(h.startRow),I(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1){var v=[],g=i.viewportData.rows[c-i.viewportData.offset];I(h.startColumn),I(h.endColumn);for(var p=h.startColumn;p<=h.endColumn;p+=1){var m;v.push(l((m=g.data.get(p))===null||m===void 0?void 0:m.value,i.columns[p]))}o.push(v)}}return o})()}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(Hd(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")}}function ji(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Bd(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ji(Object(t),!0).forEach(function(r){jr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ji(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jr(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=Wd(n,"string");return typeof e=="symbol"?e:String(e)}function Wd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class vl extends O.Component{constructor(e){super(e),jr(this,"container",void 0),jr(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();I(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=Bd({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),I(this.container),this.editor=ei.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[ps.CtrlCmd|ms.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),gs.registerLinkProvider("plaintext",{provideLinks:ct.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;I(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return f.jsx("div",{className:Me("editor-container",e),ref:t=>{this.container=t}})}}jr(vl,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});var zd={groovy:"Groovy",python:"Python",scala:"Scala"};class On{static normalizeScriptLanguage(e){return zd[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(`
|
|
5
5
|
`),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(`
|
|
6
|
-
`)}}function ar(n,e,t){return e=
|
|
7
|
-
`).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(){Be.debug("updateDimensions"),this.editor&&this.editor.layout()}focus(){Be.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(ft,{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(hl,{ref:this.editorComponent,settings:s,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy}),h!=null&&h&&f.jsx(mn,{model:o,language:d,session:a})]})})]})}}ar(cl,"defaultProps",{error:null,isLoading:!1,isLoaded:!1,focusOnMount:!0,onChange:()=>{},onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},session:null});function Kd(n,e,t){return e=Xd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xd(n){var e=Yd(n,"string");return typeof e=="symbol"?e:String(e)}function Yd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ji extends Error{constructor(){super(...arguments),Kd(this,"isMissingPartitionError",!0)}}function Zd(n){return(n==null?void 0:n.isMissingPartitionError)===!0}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 Nt(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 tt(n,e,t){return e=Qd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qd(n){var e=Jd(n,"string");return typeof e=="symbol"?e:String(e)}function Jd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ot=J.module("IrisGridTableModel");class eh extends Bt{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),tt(this,"userFrozenColumns",void 0),tt(this,"customColumnList",void 0),tt(this,"formatColumnList",void 0),tt(this,"initialFilters",[]),tt(this,"getMemoizedKeyColumnSet",B(a=>new Set(a??ee))),tt(this,"getMemoizedFrontColumns",B(a=>a??ee)),tt(this,"getMemoizedBackColumns",B(a=>a??ee)),tt(this,"getMemoizedFrozenColumns",B((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:ee})),tt(this,"getCachedFilterableColumnSet",B(a=>new Set(a.map((l,s)=>s)))),tt(this,"getCachedPartitionColumns",B(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get keyColumnSet(){var e;return this.getMemoizedKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:void 0)}get backColumns(){var e,t;return this.getMemoizedBackColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.backColumns)!==null&&e!==void 0?e:void 0)}get frozenColumns(){var e,t;return this.getMemoizedFrozenColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:void 0,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){var e;return(e=this.table.description)!==null&&e!==void 0?e:""}get customColumns(){return this.customColumnList}set customColumns(e){if(ot.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){ot.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){ot.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(ot.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){ot.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){ot.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new ie(z.EVENT.TABLE_CHANGED,{detail:this.table}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Nt(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Nt(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Nt(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Nt(function*(){ot.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(ot.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new ie(z.EVENT.UPDATED));return}this.totalsTablePromise=xe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{xe.isCanceled(t)||(ot.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}get isPartitionAwareSourceTable(){return this.isPartitionRequired}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Nt(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 Nt(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));I(i.inputTable);var{keyColumns:l}=i.inputTable;if(i.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(C=>k.intersection(s,C)).filter(C=>C!=null).map(C=>(I(C),k.offset(C,0,-(i.floatingTopRowCount+i.table.size))));if(o.length>0){for(var u=new Map(t()),d=0;d<o.length;d+=1){var h=o[d];I(h.startRow),I(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1)u.delete(c)}r(u),i.formattedStringData=[],i.dispatchEvent(new ie(z.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new ie(z.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(C=>k.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[p,m]=yield Promise.all([i.snapshot(g.map(C=>(I(C),l.map(y=>{var w=i.getColumnIndexByName(y.name);if(w==null)throw new Error("Key column ".concat(y.name," not found"));return new k(w,C.startRow,w,C.endRow)}))).flat()),i.table.copy()]),b=p.map(C=>{for(var y=[],w=0;w<l.length;w+=1){var T=l[w],F=C[w],N=i.tableUtils.makeFilterRawValue(T.type,F),P=T.filter().eq(N);y.push(P)}return y.reduce((_,A)=>{var x;return(x=_==null?void 0:_.and(A))!==null&&x!==void 0?x:A})}),E=b.reduce((C,y)=>{var w;return(w=C==null?void 0:C.or(y))!==null&&w!==void 0?w:y});m.applyFilter([E]),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 Nt(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function th(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)}class ih extends z{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new qe(e);super(e),th(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 Ir}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Ir}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 Ir}getColumnHeaderParentGroup(e,t){}}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 Tr(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 ah(n,e,t){return e=lh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lh(n){var e=sh(n,"string");return typeof e=="symbol"?e:String(e)}function sh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function oh(n){return"getBaseTable"in n&&typeof n.getBaseTable=="function"}class uh extends ih{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e);super(e,r),ah(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,r){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}get columnCount(){return this.columns.length}getColumnIndexByName(e){return this.columns.findIndex(t=>t.name===e)}textForColumnHeader(e,t){var r;return(r=this.columns[e].name)!==null&&r!==void 0?r:""}partitionKeysTable(){var e=this;return Tr(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Tr(function*(){return oh(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Tr(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Tr(function*(){try{var r=yield t.partitionedTable.getTable(e);if(r==null)throw new ji("Partition not found");return r}catch(i){throw Zd(i)?i:new ji("Unable to retrieve partition")}})()}}function ut(n,e,t){return e=dh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dh(n){var e=hh(n,"string");return typeof e=="symbol"?e:String(e)}function hh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var dt=J.module("IrisGridProxyModel");function kt(n,e,t,r){return S.isTreeTable(e)?new Hd(n,e,t):S.isPartitionedTable(e)?new uh(n,e,t):new eh(n,e,t,r)}class ch extends z{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),ut(this,"model",void 0),ut(this,"dh",void 0),ut(this,"originalModel",void 0),ut(this,"modelPromise",void 0),ut(this,"rollup",void 0),ut(this,"partition",void 0),ut(this,"selectDistinct",void 0),ut(this,"currentViewport",void 0),ut(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=kt(e,t,r,i);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.get)!=null;if(d)return Reflect.get(l,s,o);var h=Object.prototype.hasOwnProperty.call(l,s),c=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),v=h||c?l:l.model;return Reflect.get(v,s)},set(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.set)!=null,h=Object.prototype.hasOwnProperty.call(l,s);return d||h?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){dt.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new ie(r,{detail:t}))}setModel(e){dt.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(z.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:i,bottom:a,columns:l}=this.currentViewport;e.setViewport(i,a,l)}_t(e)&&this.dispatchEvent(new ie(z.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){dt.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)){dt.debug2("setNextModel cancelled");return}dt.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(z.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(z.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return nt(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!nt(this.originalModel)||!this.originalModel.isPartitionRequired?yd(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");dt.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&nt(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(r=>kt(this.dh,r,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(r=>kt(this.dh,r,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(r=>kt(this.dh,r,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!nt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!nt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!nt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(dt.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!xr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);_t(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>kt(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(dt.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){dt.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);_t(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>kt(this.dh,i,this.formatter))),this.setNextModel(r)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return nt(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}function Hi(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 vh(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Hi(a,r,i,l,s,"next",o)}function s(o){Hi(a,r,i,l,s,"throw",o)}l(void 0)})}}class vl{static makeModel(e,t){var r=arguments;return vh(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new qe(e),a=null;return!S.isTreeTable(t)&&!S.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new ch(e,t,i,a)})()}}function $n(n,e,t){return e=fh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fh(n){var e=ph(n,"string");return typeof e=="symbol"?e:String(e)}function ph(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Rt{}$n(Rt,"OPEN","ChartEvent.OPEN");$n(Rt,"CLOSE","ChartEvent.CLOSE");$n(Rt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function Yt(n,e,t){return e=mh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mh(n){var e=gh(n,"string");return typeof e=="symbol"?e:String(e)}function gh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ee{}Yt(Ee,"OPEN_GRID","IrisGridEvent.OPEN_GRID");Yt(Ee,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");Yt(Ee,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");Yt(Ee,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");Yt(Ee,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");Yt(Ee,"CREATE_CHART","IrisGridevent.CREATE_CHART");const fl=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function pl(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)}class Hn{}pl(Hn,"OPEN","PandasEvent.OPEN");pl(Hn,"CLOSE","PandasEvent.CLOSE");function Sh(n){var{children:e,descriptor:t}=n,{name:r,type:i,description:a,displayName:l}=t,s=i.replace(/([a-z])([A-Z])/g,"$1 $2");return f.jsxs("div",{className:"tab-tooltip-grid-container",children:[f.jsxs("span",{className:"tab-tooltip-title",children:[s," Name"]}),f.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[f.jsx("span",{className:"tab-tooltip-name",children:r}),f.jsx(No,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:r})]}),r!==l&&!!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})]}),!!a&&f.jsx("div",{className:"tab-tooltip-description",children:a}),e]})}var Gn=_a(Sh);function On(n,e,t){return e=Eh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eh(n){var e=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 ml extends O.PureComponent{constructor(e){var t;super(e),t=this,On(this,"getCachedRenderTabTooltip",B((r,i)=>r?()=>f.jsx(Gn,{descriptor:i}):void 0)),On(this,"getCachedActions",B(function(r){var i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee;return[...a,{title:"Copy ".concat((i=r.displayType)!==null&&i!==void 0?i:r.type," Name"),group:He.groups.medium,order:20,action:t.handleCopyName}]})),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{descriptor:e}=this.props;ka(e.name)}getErrorMessage(){var{descriptor:e,errorMessage:t}=this.props,{isClientDisconnected:r,isPanelDisconnected:i,isWidgetDisconnected:a,isWaitingForReconnect:l}=this.state;if(t!=null&&t!=="")return"".concat(t);if(r&&i&&l)return`Disconnected from server.
|
|
6
|
+
`)}}function ar(n,e,t){return e=qd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qd(n){var e=Kd(n,"string");return typeof e=="symbol"?e:String(e)}function Kd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Be=Q.module("ScriptEditor");class fl extends O.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=Re.createRef(),this.state={model:null}}componentDidMount(){ri.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&&(Be.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)&&(Be.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)&&(Be.debug("Init completion and context actions"),this.initContextActions(),this.initCodeCompletion())}componentWillUnmount(){ri.removeEventListener("onUpdate",this.updateShortcuts)}getValue(){return this.editor?this.editor.getValue():(Be.error("Editor not initialized"),null)}getSelectedCommand(){var e,t,r=(e=this.editor)===null||e===void 0?void 0:e.getSelection();I(r);var i=(t=this.editor)===null||t===void 0?void 0:t.getModel();I(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 On.outdentCode(i.getValueInRange(d))}handleEditorInitialized(e){var{focusOnMount:t,onChange:r,onEditorInitialized:i,settings:a,session:l,sessionLanguage:s}=this.props;Be.debug("handleEditorInitialized",s,l,a),this.editor=e,this.setState({model:this.editor.getModel()}),ct.setEOL(e),ct.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){Be.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){Be.error("Context actions already initialized.");return}if(this.editor){var e=[];e.push(this.editor.addAction({id:"run-code",label:"Run",keybindings:[ct.getMonacoKeyCodeFromShortcut(ht.NOTEBOOK.RUN)],contextMenuGroupId:"navigation",contextMenuOrder:1.5,run:()=>{this.handleRun()}})),e.push(this.editor.addAction({id:"run-selected-code",label:"Run Selected",keybindings:[ct.getMonacoKeyCodeFromShortcut(ht.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){Be.error("Code completion already initialized.");return}var{session:e}=this.props;Be.debug("initCodeCompletion",this.editor,e),this.editor&&e!=null&&(this.completionCleanup=ct.openDocument(this.editor,e))}deInitCodeCompletion(){var{session:e}=this.props;Be.debug("deInitCodeCompletion",this.editor,e),this.completionCleanup&&(this.completionCleanup.dispose(),this.completionCleanup=void 0,this.editor&&e!=null&&ct.closeDocument(this.editor,e))}append(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;I(this.editor);var r=this.editor.getModel();I(r);var i=r.getValue();i?r.setValue("".concat(i,`
|
|
7
|
+
`).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(){Be.debug("updateDimensions"),this.editor&&this.editor.layout()}focus(){Be.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(ft,{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(vl,{ref:this.editorComponent,settings:s,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy}),h!=null&&h&&f.jsx(mn,{model:o,language:d,session:a})]})})]})}}ar(fl,"defaultProps",{error:null,isLoading:!1,isLoaded:!1,focusOnMount:!0,onChange:()=>{},onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},session:null});function Xd(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=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 Vi extends Error{constructor(){super(...arguments),Xd(this,"isMissingPartitionError",!0)}}function Qd(n){return(n==null?void 0:n.isMissingPartitionError)===!0}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 Nt(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 tt(n,e,t){return e=Jd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Jd(n){var e=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 ot=Q.module("IrisGridTableModel");class th extends Bt{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),tt(this,"userFrozenColumns",void 0),tt(this,"customColumnList",void 0),tt(this,"formatColumnList",void 0),tt(this,"initialFilters",[]),tt(this,"getMemoizedKeyColumnSet",B(a=>new Set(a??ee))),tt(this,"getMemoizedFrontColumns",B(a=>a??ee)),tt(this,"getMemoizedBackColumns",B(a=>a??ee)),tt(this,"getMemoizedFrozenColumns",B((a,l)=>{var s;return(s=l??a)!==null&&s!==void 0?s:ee})),tt(this,"getCachedFilterableColumnSet",B(a=>new Set(a.map((l,s)=>s)))),tt(this,"getCachedPartitionColumns",B(a=>a.filter(l=>l.isPartitionColumn))),this.customColumnList=[],this.formatColumnList=[],this.initialFilters=t.filter}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get keyColumnSet(){var e;return this.getMemoizedKeyColumnSet((e=this.inputTable)===null||e===void 0?void 0:e.keys)}get frontColumns(){var e,t;return this.getMemoizedFrontColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frontColumns)!==null&&e!==void 0?e:void 0)}get backColumns(){var e,t;return this.getMemoizedBackColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.backColumns)!==null&&e!==void 0?e:void 0)}get frozenColumns(){var e,t;return this.getMemoizedFrozenColumns((e=(t=this.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:void 0,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){var e;return(e=this.table.description)!==null&&e!==void 0?e:""}get customColumns(){return this.customColumnList}set customColumns(e){if(ot.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){ot.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){ot.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(ot.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){ot.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){ot.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new ie(z.EVENT.TABLE_CHANGED,{detail:this.table}))}get partitionColumns(){return this.getCachedPartitionColumns(this.columns)}partitionKeysTable(){var e=this;return Nt(function*(){return e.valuesTable(e.partitionColumns)})()}partitionMergedTable(){var e=this;return Nt(function*(){var t=yield e.table.copy();return t.applyFilter([]),t})()}partitionBaseTable(){var e=this;return Nt(function*(){return e.partitionKeysTable()})()}partitionTable(e){var t=this;return Nt(function*(){ot.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(ot.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new ie(z.EVENT.UPDATED));return}this.totalsTablePromise=xe.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{xe.isCanceled(t)||(ot.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}get isPartitionRequired(){return this.table.isUncoalesced&&this.isValuesTableAvailable&&this.partitionColumns.length>0}get isPartitionAwareSourceTable(){return this.isPartitionRequired}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Nt(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 Nt(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));I(i.inputTable);var{keyColumns:l}=i.inputTable;if(i.keyColumnSet.size===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),o=e.map(C=>k.intersection(s,C)).filter(C=>C!=null).map(C=>(I(C),k.offset(C,0,-(i.floatingTopRowCount+i.table.size))));if(o.length>0){for(var u=new Map(t()),d=0;d<o.length;d+=1){var h=o[d];I(h.startRow),I(h.endRow);for(var c=h.startRow;c<=h.endRow;c+=1)u.delete(c)}r(u),i.formattedStringData=[],i.dispatchEvent(new ie(z.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new ie(z.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(C=>k.intersection(v,C)).filter(C=>C!=null);if(!(g.length<=0)){var[p,m]=yield Promise.all([i.snapshot(g.map(C=>(I(C),l.map(y=>{var w=i.getColumnIndexByName(y.name);if(w==null)throw new Error("Key column ".concat(y.name," not found"));return new k(w,C.startRow,w,C.endRow)}))).flat()),i.table.copy()]),b=p.map(C=>{for(var y=[],w=0;w<l.length;w+=1){var T=l[w],F=C[w],N=i.tableUtils.makeFilterRawValue(T.type,F),P=T.filter().eq(N);y.push(P)}return y.reduce((_,A)=>{var x;return(x=_==null?void 0:_.and(A))!==null&&x!==void 0?x:A})}),E=b.reduce((C,y)=>{var w;return(w=C==null?void 0:C.or(y))!==null&&w!==void 0?w:y});m.applyFilter([E]),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 Nt(function*(){return o.table.seekRow(e,t,r,i,a,l,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}function rh(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=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)}class ah extends z{constructor(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new qe(e);super(e),rh(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 Ir}set pendingDataMap(e){}get pendingRowCount(){return 0}set pendingRowCount(e){}get pendingDataErrors(){return Ir}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 Ir}getColumnHeaderParentGroup(e,t){}}function Hi(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 Tr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Hi(a,r,i,l,s,"next",o)}function s(o){Hi(a,r,i,l,s,"throw",o)}l(void 0)})}}function lh(n,e,t){return e=sh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sh(n){var e=oh(n,"string");return typeof e=="symbol"?e:String(e)}function oh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 uh(n){return"getBaseTable"in n&&typeof n.getBaseTable=="function"}class dh extends ah{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e);super(e,r),lh(this,"partitionedTable",void 0),this.partitionedTable=t}get isPartitionRequired(){return!0}get isPartitionAwareSourceTable(){return!1}get isReversible(){return!1}displayString(e,t,r){return""}close(){this.partitionedTable.close()}get columns(){return this.partitionedTable.columns}get partitionColumns(){return this.partitionedTable.keyColumns}get columnCount(){return this.columns.length}getColumnIndexByName(e){return this.columns.findIndex(t=>t.name===e)}textForColumnHeader(e,t){var r;return(r=this.columns[e].name)!==null&&r!==void 0?r:""}partitionKeysTable(){var e=this;return Tr(function*(){return e.partitionedTable.getKeyTable()})()}partitionBaseTable(){var e=this;return Tr(function*(){return uh(e.partitionedTable)?e.partitionedTable.getBaseTable():e.partitionedTable.getKeyTable()})()}partitionMergedTable(){var e=this;return Tr(function*(){return e.partitionedTable.getMergedTable()})()}partitionTable(e){var t=this;return Tr(function*(){try{var r=yield t.partitionedTable.getTable(e);if(r==null)throw new Vi("Partition not found");return r}catch(i){throw Qd(i)?i:new Vi("Unable to retrieve partition")}})()}}function ut(n,e,t){return e=hh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hh(n){var e=ch(n,"string");return typeof e=="symbol"?e:String(e)}function ch(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var dt=Q.module("IrisGridProxyModel");function kt(n,e,t,r){return S.isTreeTable(e)?new Gd(n,e,t):S.isPartitionedTable(e)?new dh(n,e,t):new th(n,e,t,r)}class vh extends z{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new qe(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),ut(this,"model",void 0),ut(this,"dh",void 0),ut(this,"originalModel",void 0),ut(this,"modelPromise",void 0),ut(this,"rollup",void 0),ut(this,"partition",void 0),ut(this,"selectDistinct",void 0),ut(this,"currentViewport",void 0),ut(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=kt(e,t,r,i);return this.dh=e,this.originalModel=a,this.model=a,this.modelPromise=null,this.rollup=null,this.partition=null,this.selectDistinct=[],new Proxy(this,{get(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.get)!=null;if(d)return Reflect.get(l,s,o);var h=Object.prototype.hasOwnProperty.call(l,s),c=Object.prototype.hasOwnProperty.call(Object.getPrototypeOf(l),s),v=h||c?l:l.model;return Reflect.get(v,s)},set(l,s,o){var u,d=((u=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(l),s))===null||u===void 0?void 0:u.set)!=null,h=Object.prototype.hasOwnProperty.call(l,s);return d||h?Reflect.set(l,s,o,l):Reflect.set(l.model,s,o,l.model)}})}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){dt.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new ie(r,{detail:t}))}setModel(e){dt.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(z.EVENT.COLUMNS_CHANGED,{detail:e.columns}));else if(this.currentViewport!=null){var{top:i,bottom:a,columns:l}=this.currentViewport;e.setViewport(i,a,l)}_t(e)&&this.dispatchEvent(new ie(z.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){dt.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)){dt.debug2("setNextModel cancelled");return}dt.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new ie(z.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(z.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(z.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get originalColumns(){return this.originalModel.columns}get partitionColumns(){return nt(this.originalModel)?this.originalModel.partitionColumns:[]}get partitionConfig(){return!nt(this.originalModel)||!this.originalModel.isPartitionRequired?wd(this.originalModel)?null:void 0:this.partition}set partitionConfig(e){if(!this.isPartitionRequired)throw new Error("Partitions are not available");dt.debug("set partitionConfig",e),this.partition=e;var t=Promise.resolve(this.originalModel);e!=null&&nt(this.originalModel)&&(e.mode==="keys"?t=this.originalModel.partitionBaseTable().then(r=>kt(this.dh,r,this.formatter)):e.mode==="merged"?t=this.originalModel.partitionMergedTable().then(r=>kt(this.dh,r,this.formatter)):t=this.originalModel.partitionTable(e.partitions).then(r=>kt(this.dh,r,this.formatter))),this.setNextModel(t)}partitionKeysTable(){if(!nt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionKeysTable()}partitionMergedTable(){if(!nt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionMergedTable()}partitionTable(e){if(!nt(this.originalModel))throw new Error("Partitions are not available");return this.originalModel.partitionTable(e)}get rollupConfig(){return this.rollup}set rollupConfig(e){if(dt.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!xr(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);_t(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>kt(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(dt.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){dt.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);_t(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>kt(this.dh,i,this.formatter))),this.setNextModel(r)}get isFilterRequired(){return this.originalModel.isFilterRequired}get isPartitionRequired(){return nt(this.originalModel)?this.originalModel.isPartitionRequired:void 0}get formatter(){return this.originalModel.formatter}set formatter(e){this.originalModel.formatter=e}}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 fh(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 pl{static makeModel(e,t){var r=arguments;return fh(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new qe(e),a=null;return!S.isTreeTable(t)&&!S.isPartitionedTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new vh(e,t,i,a)})()}}function Hn(n,e,t){return e=ph(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ph(n){var e=mh(n,"string");return typeof e=="symbol"?e:String(e)}function mh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Rt{}Hn(Rt,"OPEN","ChartEvent.OPEN");Hn(Rt,"CLOSE","ChartEvent.CLOSE");Hn(Rt,"COLUMN_SELECTED","ChartEvent.COLUMN_SELECTED");function Yt(n,e,t){return e=gh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gh(n){var e=bh(n,"string");return typeof e=="symbol"?e:String(e)}function bh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ee{}Yt(Ee,"OPEN_GRID","IrisGridEvent.OPEN_GRID");Yt(Ee,"CLOSE_GRID","IrisGridEvent.CLOSE_GRID");Yt(Ee,"DATA_SELECTED","IrisGridEvent.DATA_SELECTED");Yt(Ee,"COLUMN_SELECTED","IrisGridEvent.COLUMN_SELECTED");Yt(Ee,"STATE_CHANGED","IrisGridEvent.STATE_CHANGED");Yt(Ee,"CREATE_CHART","IrisGridevent.CREATE_CHART");const ml=Object.freeze({OPEN:"MarkdownEvent.OPEN"});function gl(n,e,t){return e=Ch(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ch(n){var e=Sh(n,"string");return typeof e=="symbol"?e:String(e)}function Sh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Gn{}gl(Gn,"OPEN","PandasEvent.OPEN");gl(Gn,"CLOSE","PandasEvent.CLOSE");function Eh(n){var{children:e,descriptor:t}=n,{name:r,type:i,description:a,displayName:l}=t,s=i.replace(/([a-z])([A-Z])/g,"$1 $2");return f.jsxs("div",{className:"tab-tooltip-grid-container",children:[f.jsxs("span",{className:"tab-tooltip-title",children:[s," Name"]}),f.jsxs("div",{className:"tab-tooltip-name-wrapper",children:[f.jsx("span",{className:"tab-tooltip-name",children:r}),f.jsx(Mo,{className:"tab-tooltip-copy",tooltip:"Copy name",copy:r})]}),r!==l&&!!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})]}),!!a&&f.jsx("div",{className:"tab-tooltip-description",children:a}),e]})}var Bn=ja(Eh);function Nn(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=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)}class bl extends O.PureComponent{constructor(e){var t;super(e),t=this,Nn(this,"getCachedRenderTabTooltip",B((r,i)=>r?()=>f.jsx(Bn,{descriptor:i}):void 0)),Nn(this,"getCachedActions",B(function(r){var i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ee;return[...a,{title:"Copy ".concat((i=r.displayType)!==null&&i!==void 0?i:r.type," Name"),group:He.groups.medium,order:20,action:t.handleCopyName}]})),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleCopyName=this.handleCopyName.bind(this),this.state={isClientDisconnected:!1,isPanelDisconnected:!1,isWidgetDisconnected:!1,isWaitingForReconnect:!1,isPanelInactive:!1}}handleCopyName(){var{descriptor:e}=this.props;_a(e.name)}getErrorMessage(){var{descriptor:e,errorMessage:t}=this.props,{isClientDisconnected:r,isPanelDisconnected:i,isWidgetDisconnected:a,isWaitingForReconnect:l}=this.state;if(t!=null&&t!=="")return"".concat(t);if(r&&i&&l)return`Disconnected from server.
|
|
8
8
|
Check your internet connection.`;if(r&&i)return"Disconnected from server.";if(i){var{name:s,type:o}=e;return'Variable "'.concat(s,`" not set.
|
|
9
|
-
`).concat(o," does not exist yet.")}if(a)return"".concat(e.name," is unavailable.")}handleSessionClosed(e){var{onSessionClose:t}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),t==null||t(e)}render(){var{children:e,className:t,componentPanel:r,descriptor:i,isLoaded:a,isLoading:l,glContainer:s,glEventHub:o,isDisconnected:u,isClonable:d,isRenamable:h,showTabTooltip:c=!1,renderTabTooltip:v,onClearAllFilters:g,onHide:p,onFocus:m,onBlur:b,onResize:E,onSessionOpen:C,onShow:y,onTabBlur:w,onTabFocus:T,onTabClicked:F,additionalActions:N}=this.props,{isPanelDisconnected:P,isWidgetDisconnected:_,isPanelInactive:A}=this.state,x=this.getErrorMessage(),V=v??this.getCachedRenderTabTooltip(c,i),U=this.getCachedActions(i,N);return f.jsxs(Kt,{className:Me(t,{disconnected:P||_||u,inactive:A}),componentPanel:r,glContainer:s,glEventHub:o,onClearAllFilters:g,onHide:p,onFocus:m,onBlur:b,onResize:E,onShow:y,onSessionClose:this.handleSessionClosed,onSessionOpen:C,onTabBlur:w,onTabFocus:T,onTabClicked:F,renderTabTooltip:V,errorMessage:x,isLoaded:a,isLoading:l,isClonable:d,isRenamable:h,additionalActions:U,children:[e,A&&f.jsx("div",{className:"fill-parent-absolute"})]})}}On(ml,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0});var mr=_a(ml);const Qe=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var wh=(n,e)=>t=>t(Tt(n,{connection:e})),Th=(n,e)=>t=>t(Tt(n,{sessionWrapper:e})),Xr=(n,e)=>t=>t(Tt(n,{links:e})),gl=(n,e)=>(t,r)=>{var i=It(r(),n),a=e.filter(l=>i.findIndex(s=>xr(s.start,l.start)&&xr(s.end,l.end))<0);return t(Xr(n,i.concat(a)))},bl=(n,e)=>(t,r)=>{var i=It(r(),n),a=i.filter(l=>!e.includes(l.id));return t(Xr(n,a))},Bn=(n,e)=>t=>t(Tt(n,{isolatedLinkerPanelId:e})),Cl=(n,e)=>t=>t(Tt(n,{columnSelectionValidator:e})),Sl=(n,e)=>t=>t(Tt(n,{consoleSettings:e})),El=(n,e)=>t=>t(Tt(n,{filterSets:e}));function yl(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=O.useMemo(()=>{var g=Array.from(s.keys()),p=g.find(E=>t.get(E)!=null),m=g.find(E=>r.get(E)!=null),b=Ye.join(g.map(E=>'"'.concat(E,'"')));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=O.useMemo(()=>Array.from(e.values()),[e]),d=O.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),h=O.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:Me("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?ao:lo;return f.jsxs("div",{className:Me("waiting-filter-item",{"is-invalid":p}),children:[f.jsx(Fe,{icon:m}),g.name]},g.name)})}),f.jsxs("div",{children:[f.jsx(Y,{kind:"primary",onClick:d,children:"Add Input Filters"}),f.jsx(Y,{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})]})]})})}yl.propTypes={columnMap:Q.instanceOf(Map).isRequired,inputFilterMap:Q.instanceOf(Map).isRequired,linkedColumnMap:Q.instanceOf(Map).isRequired,onAdd:Q.func.isRequired,onOpenLinker:Q.func.isRequired,waitingFilterMap:Q.instanceOf(Map).isRequired,waitingInputMap:Q.instanceOf(Map).isRequired};function vr(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:Me("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(qr,{className:Me("btn-chart-column-selector",vr.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}vr.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);vr.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function jt(n){return n.settings!==void 0}function wl(n){return n.figure!==void 0}function Tl(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function Pl(n){return n!=null&&Tl(n.panelState)}function Gi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Pr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gi(Object(t),!0).forEach(function(r){We(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function We(n,e,t){return e=Ph(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ph(n){var e=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 _e=J.module("ChartPanel"),Oh=150;function Nh(n){return n.inputFilters!=null}function Fh(n){return n.panelState!=null}class Yr extends O.Component{constructor(e){super(e),We(this,"panelContainer",void 0),We(this,"pending",void 0),We(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})),We(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})),We(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})),We(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);I(v),o.set(c,v)}}return o})),We(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)})))),We(this,"getWidgetPanelDescriptor",B(l=>{var s="Chart";if(jt(l))s=l.table;else if(wl(l)){var o;s=(o=l.figure)!==null&&o!==void 0?o:s}else{var u;s=(u=l.name)!==null&&u!==void 0?u:s}return Pr(Pr({},l),{},{type:"Chart",name:s})})),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=vt(this.updateModelFromSource.bind(this),Oh),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Re.createRef(),this.pending=new Rn;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&&jt(t)&&t.settings.isLinked,filterMap:new Map(i),filterValueMap:new Map(i),model:void 0,columnMap:new Map,panelState:r}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:r,source:i,makeModel:a}=this.props,{columnMap:l,model:s,filterMap:o,filterValueMap:u,isLinked:d,settings:h}=this.state;a!==e.makeModel&&this.initModel(),s!=null&&(l!==t.columnMap&&this.pruneFilterMaps(),r!==e.inputFilters&&this.updateChangedInputFilters(r,e.inputFilters),o!==t.filterMap?this.updateFilters():u!==t.filterValueMap&&this.updatePanelState(),h!==t.settings&&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,isDisconnected:!1});var{makeModel:e}=this.props;this.pending.cancel(),this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){_e.debug("startListeningToSource",e);var{model:t}=this.state;I(t);var{dh:r}=t;e.addEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.addEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}stopListeningToSource(e){_e.debug("stopListeningToSource",e);var{model:t}=this.state;I(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(Rt.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;_e.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;_e.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(Qe.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){_e.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:r,source:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(r,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){xe.isCanceled(e)||(_e.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:r,model:i}=this.state;if(!r||!i||!t){_e.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),jt(e)){var{settings:l}=e;this.pending.add(Gt.makeFigureFromSettings(a,l,t),s=>s.close()).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&&Nh(e.props)&&Fh(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=G.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=Pr(Pr({},r),e);return _e.debug("Updated settings",i),{settings:i}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(e){var{isLoading:t}=e;this.setState({isLoading:t})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:r,type:i}=e;t.emit(Ce.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(Ce.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=vr.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i==null?void 0:i.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){_e.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,u)=>{var{columnType:d,filterList:h}=o,c=i.get(u);if(!(c==null||c.type!==d)){if(h.length<1){_e.debug("Ignoring empty filterList for column",u);return}var{value:v}=h[0];s.set(u,v),a.get(u)!==v&&(l===null&&(l=new Map(a)),l.set(u,v))}}),{filterValueMap:s,filterMap:(r=l)!==null&&r!==void 0?r:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:r}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,r);if(s.has(e)){var o,u=a.get(e),d=(o=s.get(e))===null||o===void 0?void 0:o.value;d!=null&&u!==d&&(a=new Map(t.filterMap),d.length>0?a.set(e,d):a.delete(e))}else a=new Map(t.filterMap),a.delete(e);return{filterMap:a,filterValueMap:l}})}updateChangedInputFilters(e,t){var r=t.filter(a=>e.find(l=>l.name===a.name&&l.type===a.type)===void 0);r.length>0&&this.deleteInputFilters(r);var i=e.filter(a=>!t.includes(a));i.length>0&&this.updateInputFilters(i)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i}=r,a=new Map(r.filterValueMap),l=new Map(r.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var{name:u,type:d,value:h}=e[o],c=i.get(u);c!=null&&c.type===d&&(h!=null&&l.get(u)!==h&&(h===""?l.delete(u):l.set(u,h),s.filterMap=l),a.has(u)&&(a.delete(u),s.filterValueMap=a))}return _e.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i,filterValueMap:a}=r,l=new Map(r.filterMap),s=t,o=0;o<e.length;o+=1){var{name:u,type:d}=e[o],h=i.get(u);if(h!=null&&h.type===d&&l.has(u)){var c=l.get(u);if(a.has(u)){var v=a.get(u);v!==c&&v!=null&&(s=!0,l.set(u,v))}else s=!0,l.delete(u)}}return _e.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:r}=this.state;I(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=Ye.join(Array.from(t.entries()).map(s=>{var[o,u]=s;return"".concat(o,": ").concat(u)}));a?r.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):r.setTitle(l),_e.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else _e.debug2("updateFilters waiting on inputs",i),r.setTitle(r.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,r=new Map(e.filterMap),i=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((l,s)=>{t.has(s)||(i.delete(s),a.filterValueMap=i)}),e.filterMap.forEach((l,s)=>{t.has(s)||(r.delete(s),a.filterMap=r)}),a})}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:r,inputFilters:i,isLinkerActive:a,links:l,metadata:s,settings:o,Plotly:u,containerRef:d}=this.props,{columnMap:h,filterMap:c,error:v,model:g,isActive:p,isDisconnected:m,isLoaded:b,isLoading:E}=this.state,C=this.getInputFilterColumnMap(h,i),y=this.getLinkedColumnMap(h,l),w=g!=null?this.getWaitingInputMap(g.isFilterRequired(),h,c):new Map,T=g!=null?this.getWaitingFilterMap(g.isFilterRequired(),h,c,y,C):new Map,F=v!=null?"Unable to open chart. ".concat(v):void 0,N=w.size>0,P=h.size>0&&a,_=this.getWidgetPanelDescriptor(s);return f.jsx(mr,{className:Me("iris-chart-panel",{"input-required":N}),componentPanel:this,glContainer:t,glEventHub:r,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:F,isDisconnected:m,isLoading:E,isLoaded:b,descriptor:_,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:b&&g&&f.jsx(sl,{isActive:p,model:g,settings:o,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:u,containerRef:d})}),f.jsx(Cn,{in:N&&!P&&!E,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(yl,{inputFilterMap:C,linkedColumnMap:y,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:h,waitingFilterMap:T,waitingInputMap:w})}),f.jsx(Cn,{in:P,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(vr,{columns:this.getSelectorColumns(h,y,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}We(Yr,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});We(Yr,"displayName","ChartPanel");We(Yr,"COMPONENT","ChartPanel");var Mh=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&jt(r)&&(i=r.sourcePanelId);var a=Hr(n,t),l=Va(n,t),s=In(n),o=Gr(n,t),u=s===Qe.LINKER&&o===void 0;return{columnSelectionValidator:Br(n,t),isLinkerActive:u,inputFilters:Ur(n,t),links:It(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Wr(n)}},gr=wt(Mh,{setActiveTool:ja,setDashboardIsolatedLinkerPanelId:Bn},null,{forwardRef:!0})(Yr);function Ze(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=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 Dr=J.module("DropdownFilter"),Lh=150;class at extends O.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:at.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},{max:1e3})),Ze(this,"sendUpdate",vt(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},Lh)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleDropdownKeyPress=this.handleDropdownKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.dropdownRef=Re.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:ze(),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(Dr.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(),Dr.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]:Dr.debug2("Selected default item"),Dr.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,E=l===null,C=this.getCompatibleColumns(l,t),y=l!=null,w=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:at.SOURCE_BUTTON_PLACEHOLDER,T=c!=null?"".concat(c.name," Filter"):null,[F,N]=this.getColumnOptions(C,m),P=this.getValueOptions(d),_=this.getSelectedOptionIndex(d,b),A=!y||m==null,x=p&&!i,V="source-column-btn-".concat(g),U="filter-column-select-".concat(g);return f.jsxs(_n,{className:"dropdown-filter fill-parent-absolute",isFlipped:x,children:[f.jsx("div",{className:"dropdown-filter-settings-card",children:f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsxs("div",{className:"dropdown-filter-settings-grid",children:[f.jsx("label",{htmlFor:V,children:"Source Column"}),f.jsx(qr,{id:V,isLinked:y,onClick:s,onMouseEnter:o,onMouseLeave:u,className:at.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:U,children:"Filter Column"}),f.jsx(dr,{id:U,value:String(N),className:"custom-select",onChange:this.handleColumnChange,disabled:E,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}),y&&f.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[f.jsx(Y,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||p||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),f.jsx(Y,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:A||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(dr,{className:"custom-select",value:String(_),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(Y,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Fe,{icon:xn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}Ze(at,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});Ze(at,"PLACEHOLDER","Select a value...");Ze(at,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");Ze(at,"SOURCE_BUTTON_PLACEHOLDER","Select a column");function Le(n,e,t){return e=Ah(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ah(n){var e=xh(n,"string");return typeof e=="symbol"?e:String(e)}function xh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ue=J.module("DropdownFilterPanel"),kh=250,_h=Object.freeze({name:"Dropdown Filter",type:"DropdownFilter"}),jh=(n,e)=>{var{localDashboardId:t}=e,r=$.getIdFromPanel({props:e}),i=Hr(n,t),a=It(n,t),l=In(n),s=Gr(n,t),o=l===Qe.LINKER&&(s===void 0||s===r),u=l===Qe.LINKER&&s!==void 0&&s!==r;return{columns:Ln(n,t),columnSelectionValidator:Br(n,t),dh:$a(n),isLinkerActive:o,disableLinking:u,settings:Wr(n),panelTableMap:i,dashboardLinks:a}},Vh=wt(jh,null,null,{forwardRef:!0});class et extends O.Component{constructor(e){super(e),Le(this,"dateTimeFormatter",void 0),Le(this,"dropdownFilterRef",void 0),Le(this,"panelContainer",void 0),Le(this,"pending",void 0),Le(this,"cleanup",void 0),Le(this,"columnFormats",void 0),Le(this,"getCachedValues",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)},{max:1e3})),Le(this,"getCachedPanelLinks",Ge((h,c)=>{var v=$.getIdFromPanel(c);return ue.debug("getCachedPanelLinks",h,v),h.filter(g=>{var p;return((p=g.end)===null||p===void 0?void 0:p.panelId)===v})},{max:1e3})),Le(this,"getCachedSource",Ge(h=>{ue.debug("getCachedSource",h);var c;if(h.length>0){var[v]=h;c=v.start,h.length>1&&ue.error("Filter has more that one link",h)}return c},{max:1e3})),Le(this,"getCachedSourceTable",Ge((h,c)=>{var v;if(ue.debug("getCachedSourceTable",h,c),c==null)return null;var{panelId:g}=c;return(v=h.get(g))!==null&&v!==void 0?v:null},{max:1e3})),Le(this,"getCachedSourceColumn",Ge((h,c)=>{var v;return ue.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},{max:1e3})),this.handleChange=vt(this.handleChange.bind(this),kh),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleSourceSizeChange=this.handleSourceSizeChange.bind(this),this.handleSourceMouseEnter=this.handleSourceMouseEnter.bind(this),this.handleSourceMouseLeave=this.handleSourceMouseLeave.bind(this),this.handleValuesTableUpdate=this.handleValuesTableUpdate.bind(this),this.dropdownFilterRef=Re.createRef(),this.panelContainer=Re.createRef(),this.pending=new Rn;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=Sn.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 qe(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&&(ue.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==d||s!==u)&&this.updateValuesTable(),o!==d&&(d!==null&&this.stopListeningToSource(d),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable: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(at.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>et.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(et.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;ue.debug("startListeningToSource"),e.addEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.addEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.addEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}stopListeningToSource(e){var{dh:t}=this.props;ue.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown: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(){ue.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(Ce.COLUMN_SELECTED,this,et.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){ue.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];ue.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:u}),s.emit(Ce.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(ue.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){ue.debug("Filter unlinked."),this.setState({isLoading:!1,isLoaded:!0,isValueShown:!1,sourceSize:0});return}this.setState({isLoading:!0}),i!=null&&(this.setState({isLoaded:!1,sourceSize:i.size}),this.pending.add(i.copy(),a=>a.close()).then(a=>{this.updateViewportListener(a),this.setState({valuesTable:a})}).catch(a=>{xe.isCanceled(a)||(ue.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(ue.debug("applySourceSorts",i==null?void 0:i.sort),r==null||i==null){ue.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(ue.debug("applySourceFilters",i==null?void 0:i.filter),r==null||i==null){ue.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(ue.debug("updateViewportListener",e==null?void 0:e.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,r=this.getValuesColumn(e,t);if(!r){ue.error("values column is null");return}e.setViewport(0,et.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=Sn.getColumnFormats(e);xr(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new qe(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){ue.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){ue.error("Values column not found");return}var s=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,et.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(),E=this.getPanelErrorMessage(),C=p&&v!=null?this.getCachedValues(c,v,o):ee;return f.jsx(mr,{errorMessage:E,isLoading:g,isLoaded:p,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,descriptor:_h,children:f.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:f.jsx(at,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:p,settingsError:b,source:m,value:h,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Le(et,"displayName","DropdownFilterPanel");Le(et,"COMPONENT","DropdownFilterPanel");Le(et,"MAX_TABLE_SIZE",256);Le(et,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var yt=Vh(et);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 Or(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){lr(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 lr(n,e,t){return e=$h(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function $h(n){var e=Hh(n,"string");return typeof e=="symbol"?e:String(e)}function Hh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var he=J.module("FilterSetManager"),Gh="Enter name...",Ui="No Available Filter Sets";class fr extends O.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",Re.createRef()),lr(this,"dropdownRef",Re.createRef()),lr(this,"editDropdownRef",Re.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;he.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(he.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:[]}),he.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;fr.animateScreenFlash();var t=ze(),r=e(),i={id:t,title:"",panels:r};he.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,{renameSet:r,modifiedFilterSets:i}=this.state,a=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(a.length===0)return he.debug("Name cannot be empty",a),"Name cannot be empty";if(r!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==r.id}))return he.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){he.error("Renamed set undefined.");return}var l=this.getNameError(t);if(he.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t==null?void 0:t.trim())!==null&&e!==void 0?e:"",o=Or(Or({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===r.id}),d=[...i];u>=0?(d[u]=o,he.debug("Renamed existing set",d)):(d.push(o),he.debug("Added new set to modified sets",d)),this.setState({editId:o.id,modifiedFilterSets:d,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.findIndex(o=>{var{id:u}=o;return u===t});if(i<0)return he.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 he.debug("Deleted selected set",t,r,a),he.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;fr.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return he.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(he.error("Selected set for update not found."),null):(l[s]=Or(Or({},l[s]),{},{panels:t}),he.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 he.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){he.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){he.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){he.debug("Selected id not found in filterSets",e,r);return}he.debug("Apply filterSet",i),t(i)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId: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(Fe,{icon:ii,mask:ai,transform:"shrink-1 down-5 right-7"}),f.jsx(Fe,{icon:oo,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),m=f.jsxs("div",{className:"fa-layers",children:[f.jsx(Fe,{icon:ii,mask:ai,transform:"shrink-1 down-5 right-7"}),f.jsx(Fe,{icon:uo,transform:"shrink-1 down-5 right-7"})]});return f.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:f.jsxs(_n,{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(Y,{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:Gh,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),f.jsx(Y,{"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:Qa}),f.jsx(Y,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:so})]}),t!==void 0&&f.jsx("div",{className:"error-message",children:t})]}),f.jsx("div",{className:"form-group",children:f.jsxs(ms,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[f.jsx(ei,{value:"false",children:"Restore only filters"}),f.jsx(ei,{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(dr,{"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:Ui}),a.map(b=>{var{id:E,title:C}=b;return f.jsx("option",{value:E,children:C},E)})]}),f.jsx(Y,{kind:"ghost",onClick:this.handleSetUpdate,disabled:c,icon:m,tooltip:"Update"}),f.jsx(Y,{kind:"ghost",onClick:this.handleSetEdit,disabled:c,icon:Ja,tooltip:"Edit"}),f.jsx(Y,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:zr,tooltip:"Delete"})]})]}),f.jsx("div",{children:f.jsx(Y,{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(Y,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",f.jsx(Y,{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(dr,{"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:Ui}),o.map(b=>{var{id:E,title:C}=b;return f.jsx("option",{value:E,children:C},E)})]}),f.jsx(Y,{"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(Y,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:f.jsx(Fe,{icon:xn,transform:"grow-4"})})})]},"back")]})})}}function Wi(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function zi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Wi(Object(t),!0).forEach(function(r){Bh(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 Bh(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=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)}function zh(n){var e,t,r,i,a,{model:l}=n,s=((e=l==null?void 0:l.rowCount)!==null&&e!==void 0?e:0)-((t=l==null?void 0:l.pendingRowCount)!==null&&t!==void 0?t:0)-((r=l==null?void 0:l.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=l==null?void 0:l.floatingTopRowCount)!==null&&i!==void 0?i:0),o=l==null?void 0:l.displayString(s,"long"),u=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,d=l==null?void 0:l.displayString(u,"long");return f.jsxs(Gn,zi(zi({},n),{},{children:[f.jsx("hr",{className:"tab-tooltip-divider"}),f.jsx("span",{children:"Number of Columns"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:d}),f.jsx("span",{children:"Number of Rows"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:o})]}))}function Dl(n){if(n==null)return!1;var e=n;return typeof e.table=="string"}function Ol(n){if(n==null)return!1;var e=n;return typeof e.name=="string"}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 Ue(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){me(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 me(n,e,t){return e=qh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qh(n){var e=Kh(n,"string");return typeof e=="symbol"?e:String(e)}function Kh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var rt=J.module("IrisGridPanel"),Xh=500;function Ki(n){if(n==null)throw new Error("No metadata provided");if(Ol(n))return n.name;if(Dl(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(n)))}class Ut extends O.PureComponent{constructor(e){super(e),me(this,"irisGrid",void 0),me(this,"pluginRef",void 0),me(this,"modelPromise",void 0),me(this,"irisGridState",void 0),me(this,"gridState",void 0),me(this,"pluginState",void 0),me(this,"irisGridUtils",void 0),me(this,"getGridInputFilters",B((r,i)=>G.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=$.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),me(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]})),me(this,"getPluginContent",B((r,i,a)=>{var l;if(!i||!_t(i)||r==null||i.table==null)return null;var s={panel:this};return f.jsx("div",{className:"iris-grid-plugin",children:f.jsx(r,Ue({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,tableName:this.getTableName(),selectedRanges:(l=this.irisGrid.current)===null||l===void 0?void 0:l.state.selectedRanges,onStateChange:this.handlePluginStateChange,pluginState:a},s))})})),me(this,"getDehydratedIrisGridPanelState",B((r,i,a,l)=>G.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),me(this,"getDehydratedIrisGridState",B((r,i,a,l,s,o,u,d,h,c,v,g,p,m,b,E,C,y,w,T,F,N)=>(I(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:C,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:b,userRowHeights:E},quickFilters:o,customColumns:u,reverse:d,rollupConfig:h,showSearchBar:c,searchValue:v,selectDistinctColumns:g,selectedSearchColumns:p,sorts:i,invertSearchColumns:m,pendingDataMap:y,frozenColumns:w,conditionalFormats:T,columnHeaderGroups:F,partitionConfig:N})))),me(this,"getDehydratedGridState",B((r,i,a,l,s)=>G.dehydrateGridState(r,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),me(this,"getCachedPanelState",B((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),me(this,"getWidgetPanelDescriptor",B((r,i)=>{var a=Ki(r);return Ue(Ue({type:"Table",displayType:"Table"},r),{},{name:a,description:i})})),me(this,"savePanelState",vt(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;I(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,reverse:E,rollupConfig:C,showSearchBar:y,searchValue:w,selectDistinctColumns:T,selectedSearchColumns:F,sorts:N,invertSearchColumns:P,metrics:_,pendingDataMap:A,frozenColumns:x,conditionalFormats:V,columnHeaderGroups:U,partitionConfig:K}=r;I(s),I(_);var{userColumnWidths:ne,userRowHeights:le}=_;I(i);var{isStuckToBottom:ve,isStuckToRight:fe,movedColumns:Ie,movedRows:R}=i,L=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h),this.getDehydratedIrisGridState(s,N,c,g,p,m,b,E,C,y,w,T,F,P,ne,le,v,A,x,V,U,K),this.getDehydratedGridState(s,Ie,R,ve,fe),a);L!==o&&(rt.debug("Saving panel state",this,L),this.setState({panelState:L}),l==null||l(L))},Xh)),this.handleAdvancedSettingsChange=this.handleAdvancedSettingsChange.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleDataSelected=this.handleDataSelected.bind(this),this.handleError=this.handleError.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePluginStateChange=this.handlePluginStateChange.bind(this),this.handleCreateChart=this.handleCreateChart.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handlePluginFilter=this.handlePluginFilter.bind(this),this.handlePluginFetchColumns=this.handlePluginFetchColumns.bind(this),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.irisGrid=Re.createRef(),this.pluginRef=Re.createRef();var{panelState:t}=e;this.pluginState=null,this.irisGridUtils=null,this.state={error:null,isDisconnected:!1,isLoaded:!1,isLoading:!0,isModelReady:!1,model:void 0,advancedFilters:new Map,aggregationSettings:{aggregations:[],showOnTop:!1},advancedSettings:new Map(ol.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverse:!1,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state,{makeModel:i}=this.props;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r)),i!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return Ki(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null,isDisconnected:!1});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=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 G(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=Ue(Ue({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=G.getModelRollupConfig(h.originalColumns,d,s)}),u.length>0&&a.push(h=>{h.selectDistinctColumns=u})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();rt.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){rt.debug("handleAdvancedSettingsChange",e,t),this.setState(r=>{var{advancedSettings:i}=r;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,r,{model:i}=this.state;I(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(Ee.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):(I(r),this.initModelQueue(r,i))}handleTableChanged(e){rt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e;t.emit(Ce.TABLE_CHANGED,this,r)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i,metadata:a}=this.props,l=this.getTableName(),{panelState:s}=this.state,o=$.getIdFromPanel(this),u;s&&(u=G.extractTableSettings(s,i)),r.emit(Ee.CREATE_CHART,{metadata:Ue(Ue({},a),{},{settings:e,sourcePanelId:o,table:l,tableSettings:u}),table:_t(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(Ee.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(Ee.DATA_SELECTED,this,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){rt.error(e),this.setState({error:e,isLoading:!1})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleLoadError(e){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}),_t(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}t.emit(Ce.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){rt.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(Ce.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(z.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(z.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(z.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(z.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(z.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(z.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(z.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(z.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s==null?void 0:s.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;I(l);var{metrics:u}=l.state;I(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:c,right:v,columnHeaderMaxDepth:g}=u,p=a.getColumnIndexByName(e);I(p);var m=l.getVisibleColumn(p),b=(r=h.get(m))!==null&&r!==void 0?r:0,E=(i=c.get(m))!==null&&i!==void 0?i:0,C=Math.max(o.left,Math.min(m>v?o.right:o.left+b+E*.5,o.right)),y=o.top+d*g;return[C,y]}setFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;rt.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){rt.debug("Ignore setFilters, model disconnected");return}I(i);var{columns:s,formatter:o}=i,u=G.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[c]=h;return i.isFilterable(c)}),d=G.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[c]=h;return i.isFilterable(c)});I(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){rt.debug("setStateOverrides",e);var{irisGridState:t,gridState:r}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:r,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=Ue({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=G.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=G.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partitions:c,advancedSettings:v}=G.hydrateIrisGridPanelState(e,s);I(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,quickFilters:E,reverse:C,rollupConfig:y,aggregationSettings:w,sorts:T,userColumnWidths:F,userRowHeights:N,showSearchBar:P,searchValue:_,selectDistinctColumns:A,selectedSearchColumns:x,invertSearchColumns:V,pendingDataMap:U,frozenColumns:K,conditionalFormats:ne,columnHeaderGroups:le,partitionConfig:ve}=this.irisGridUtils.hydrateIrisGridState(e,Ue(Ue({},l),o)),{isStuckToBottom:fe,isStuckToRight:Ie,movedColumns:R,movedRows:L}=G.hydrateGridState(e,Ue(Ue({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:ne,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,isSelectingPartition:h,movedColumns:R,movedRows:L,partitions:c,quickFilters:E,reverse:C,rollupConfig:y,aggregationSettings:w,sorts:T,userColumnWidths:F,userRowHeights:N,showSearchBar:P,searchValue:_,selectDistinctColumns:A,selectedSearchColumns:x,invertSearchColumns:V,pendingDataMap:U,frozenColumns:K,isStuckToBottom:fe,isStuckToRight:Ie,columnHeaderGroups:le,partitionConfig:ve})}catch(j){rt.error("loadPanelState failed to load panelState",t,j)}}updateGrid(){var e,t,r=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;r&&r.handleResize()}render(){var e,t,{children:r,glContainer:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:u,metadata:d,panelState:h,user:c,settings:v,theme:g}=this.props,{advancedFilters:p,aggregationSettings:m,advancedSettings:b,conditionalFormats:E,customColumns:C,customColumnFormatMap:y,error:w,isDisconnected:T,isFilterBarShown:F,isSelectingPartition:N,isStuckToBottom:P,isStuckToRight:_,isLoaded:A,isLoading:x,isModelReady:V,model:U,movedColumns:K,movedRows:ne,partitions:le,partitionConfig:ve,quickFilters:fe,reverse:Ie,rollupConfig:R,sorts:L,userColumnWidths:j,userRowHeights:W,showSearchBar:q,searchValue:Se,selectDistinctColumns:ye,selectedSearchColumns:ke,invertSearchColumns:Ke,Plugin:Xe,pluginFilters:rn,pluginFetchColumns:nn,pendingDataMap:Cr,frozenColumns:an,columnHeaderGroups:Zt}=this.state,Ql=w!=null?"Unable to open table. ".concat(w):void 0,Jl=(e=U==null?void 0:U.description)!==null&&e!==void 0?e:void 0,es=(t=h==null?void 0:h.pluginState)!==null&&t!==void 0?t:null,ts=r??this.getPluginContent(Xe,U,es),{permissions:rs}=c,{canCopy:ns,canDownloadCsv:is}=rs,Zn=this.getWidgetPanelDescriptor(d,Jl);return f.jsx(mr,{errorMessage:Ql,isDisconnected:T,isLoading:x,isLoaded:A,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,componentPanel:this,descriptor:Zn,renderTabTooltip:()=>f.jsx(zh,{descriptor:Zn,model:U}),children:V&&U&&f.jsx(Kr,{advancedFilters:p,aggregationSettings:m,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(u,nn),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:C,customColumnFormatMap:y,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:E,inputFilters:this.getGridInputFilters(U.columns,o),applyInputFiltersOnInit:h==null,isFilterBarShown:F,isSelectingColumn:l!=null,isSelectingPartition:N,isStuckToBottom:P,isStuckToRight:_,movedColumns:K,movedRows:ne,partitions:le,partitionConfig:ve,quickFilters:fe,reverse:Ie,rollupConfig:R,settings:v,sorts:L,userColumnWidths:j,userRowHeights:W,model:U,showSearchBar:q,searchValue:Se,selectedSearchColumns:ke,selectDistinctColumns:ye,invertSearchColumns:Ke,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:rn,pendingDataMap:Cr,canCopy:ns,canDownloadCsv:is,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:an,theme:g,columnHeaderGroups:Zt,children:ts})})}}me(Ut,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});me(Ut,"displayName","IrisGridPanel");me(Ut,"COMPONENT","IrisGridPanel");var Yh=(n,e)=>{var{localDashboardId:t=xs}=e;return{inputFilters:Ur(n,t),links:It(n,t),columnSelectionValidator:Br(n,t),user:As(n),settings:Wr(n)}},Wt=wt(Yh,null,null,{forwardRef:!0})(Ut);function or(n,e,t){return e=Zh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zh(n){var e=Qh(n,"string");return typeof e=="symbol"?e: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 Xi=J.module("InputFilter"),Jh=150;class zt extends O.Component{constructor(e){super(e),or(this,"inputRef",void 0),or(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},{max:1e3})),or(this,"sendUpdate",vt(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},Jh)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleInputKeyPress=this.handleInputKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.inputRef=Re.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var{column:r}=this.props,{column:i,value:a,isValueShown:l}=this.state;r!==e.column&&this.setState({column:r,selectedColumn:r}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,r=t[parseInt(e,10)];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?zt.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(_n,{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(dr,{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(Y,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),f.jsx(Y,{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:zt.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(Y,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Fe,{icon:xn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}or(zt,"PLACEHOLDER","Enter value...");or(zt,"defaultProps",{column:null,isValueShown:!1,value:null});function Zr(n,e,t){return e=ec(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ec(n){var e=tc(n,"string");return typeof e=="symbol"?e:String(e)}function tc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var rc=250;class Qr extends O.Component{constructor(e){super(e),Zr(this,"inputFilterRef",void 0),this.handleChange=vt(this.handleChange.bind(this),rc),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Re.createRef();var{panelState:t}=e,{value:r,isValueShown:i=!1,name:a,type:l,timestamp:s}=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(Ce.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(Kt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:f.jsx(zt,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Zr(Qr,"defaultProps",{panelState:null});Zr(Qr,"COMPONENT","InputFilterPanel");Zr(Qr,"displayName","InputFilterPanel");var nc=(n,e)=>{var{localDashboardId:t}=e;return{columns:Ln(n,t)}},Vt=wt(nc,null,null,{forwardRef:!0})(Qr);function Yi(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?Yi(Object(t),!0).forEach(function(r){Un(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Yi(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Un(n,e,t){return e=ic(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ic(n){var e=ac(n,"string");return typeof e=="symbol"?e:String(e)}function ac(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Oe=J.module("FilterSetManagerPanel");function lc(n){return n.setPanelState!=null}class qt extends O.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){Oe.error("Could not get panel",i);return}var a=$.getComponentNameFromPanel(i),l=$.getIdFromPanel(i);Oe.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){Oe.error("Could not get panel container",i);return}var o=$.getComponentConfigFromContainer(s);if(o==null){Oe.error("Could not get component config from container",s);return}var u=$.getPanelComponentState(o);if(u==null){Oe.debug("Panel state is null ".concat(l));return}switch(a){case $.getComponentName(Ut):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case $.getComponentName(Vt):case $.getComponentName(yt):{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 Oe.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,u;s&&(u=qt.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=qt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Nr(Nr({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Nr({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;Oe.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;Oe.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){Oe.debug("panel is null",l);return}if(!t.has(l)){Oe.debug("Ignore closed panel",l);return}Oe.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case $.getComponentName(Ut):this.restoreIrisGridFilters(u,o,i);break;case $.getComponentName(Vt):case $.getComponentName(yt):this.restoreInputFilterState(u,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;Oe.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){Oe.error("Panel Id is null.");return}var h=u.get(d);if(h==null){Oe.error("Unable to get table for panel ".concat(d,"."));return}Oe.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=Nr({},t);delete r.isValueShown,Oe.debug("restoreInputFilterState",e,r),e&&lc(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return f.jsx(Kt,{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(fr,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Un(qt,"defaultProps",{panelState:null});Un(qt,"COMPONENT","FilterSetManagerPanel");var sc=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:Ha(n,t),dashboardOpenedPanelMap:Va(n,t),dashboardInputFilters:Ur(n,t),panelTableMap:Hr(n,t)}},Ar=wt(sc,{setDashboardFilterSets:El},null,{forwardRef:!0})(qt);function oc(n,e,t){return e=uc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uc(n){var e=dc(n,"string");return typeof e=="symbol"?e:String(e)}function dc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Nl extends O.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:Me("text-muted","edit-hint",{viewing:e===void 0||!e}),children:f.jsxs("span",{children:["double-click to edit ",f.jsx(Fe,{icon:Ja})]})}),t]})}}oc(Nl,"defaultProps",{isEditing:!1});function hc(n,e,t){return e=cc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cc(n){var e=vc(n,"string");return typeof e=="symbol"?e:String(e)}function vc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fc=J.module("MarkdownStartPage");class Fl extends O.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(fc.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(Y,{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(Y,{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(Fe,{icon:zr})})]},l.id)),f.jsxs(ho,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[f.jsx(co,{children:"Are you sure you want to permanently delete this note?"}),f.jsx(vo,{children:"You can't undo this action."}),f.jsxs(ks,{children:[f.jsx(Y,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),f.jsx(Y,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}hc(Fl,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});function Wn(n,e,t){return e=pc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pc(n){var e=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)}class lt{static getNewMarkdownTitle(e){for(var t="".concat(lt.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(lt.DEFAULT_TITLE,"-").concat(r);return t}}Wn(lt,"DEFAULT_TITLE","Note");Wn(lt,"DEFAULT_CONTENT",`# Markdown Note
|
|
9
|
+
`).concat(o," does not exist yet.")}if(a)return"".concat(e.name," is unavailable.")}handleSessionClosed(e){var{onSessionClose:t}=this.props;this.setState({isPanelDisconnected:!0,isWaitingForReconnect:!1}),t==null||t(e)}render(){var{children:e,className:t,componentPanel:r,descriptor:i,isLoaded:a,isLoading:l,glContainer:s,glEventHub:o,isDisconnected:u,isClonable:d,isRenamable:h,showTabTooltip:c=!1,renderTabTooltip:v,onClearAllFilters:g,onHide:p,onFocus:m,onBlur:b,onResize:E,onSessionOpen:C,onShow:y,onTabBlur:w,onTabFocus:T,onTabClicked:F,additionalActions:N}=this.props,{isPanelDisconnected:P,isWidgetDisconnected:_,isPanelInactive:A}=this.state,x=this.getErrorMessage(),V=v??this.getCachedRenderTabTooltip(c,i),U=this.getCachedActions(i,N);return f.jsxs(Kt,{className:Me(t,{disconnected:P||_||u,inactive:A}),componentPanel:r,glContainer:s,glEventHub:o,onClearAllFilters:g,onHide:p,onFocus:m,onBlur:b,onResize:E,onShow:y,onSessionClose:this.handleSessionClosed,onSessionOpen:C,onTabBlur:w,onTabFocus:T,onTabClicked:F,renderTabTooltip:V,errorMessage:x,isLoaded:a,isLoading:l,isClonable:d,isRenamable:h,additionalActions:U,children:[e,A&&f.jsx("div",{className:"fill-parent-absolute"})]})}}Nn(bl,"defaultProps",{className:"",isClonable:!0,isDisconnected:!1,isLoading:!1,isLoaded:!0,isRenamable:!0,showTabTooltip:!0});var mr=ja(bl);const Qe=Object.freeze({DEFAULT:"DEFAULT",LINKER:"LINKER"});var Th=(n,e)=>t=>t(Tt(n,{connection:e})),Ph=(n,e)=>t=>t(Tt(n,{sessionWrapper:e})),Xr=(n,e)=>t=>t(Tt(n,{links:e})),Cl=(n,e)=>(t,r)=>{var i=It(r(),n),a=e.filter(l=>i.findIndex(s=>xr(s.start,l.start)&&xr(s.end,l.end))<0);return t(Xr(n,i.concat(a)))},Sl=(n,e)=>(t,r)=>{var i=It(r(),n),a=i.filter(l=>!e.includes(l.id));return t(Xr(n,a))},Un=(n,e)=>t=>t(Tt(n,{isolatedLinkerPanelId:e})),El=(n,e)=>t=>t(Tt(n,{columnSelectionValidator:e})),yl=(n,e)=>t=>t(Tt(n,{consoleSettings:e})),wl=(n,e)=>t=>t(Tt(n,{filterSets:e}));function Tl(n){var{columnMap:e,inputFilterMap:t,linkedColumnMap:r,onAdd:i,onOpenLinker:a,waitingFilterMap:l,waitingInputMap:s}=n,o=O.useMemo(()=>{var g=Array.from(s.keys()),p=g.find(E=>t.get(E)!=null),m=g.find(E=>r.get(E)!=null),b=Ye.join(g.map(E=>'"'.concat(E,'"')));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=O.useMemo(()=>Array.from(e.values()),[e]),d=O.useCallback(g=>{g.stopPropagation(),g.preventDefault(),i(Array.from(l.values()))},[i,l]),h=O.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:Me("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?so:oo;return f.jsxs("div",{className:Me("waiting-filter-item",{"is-invalid":p}),children:[f.jsx(Fe,{icon:m}),g.name]},g.name)})}),f.jsxs("div",{children:[f.jsx(Y,{kind:"primary",onClick:d,children:"Add Input Filters"}),f.jsx(Y,{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:Z.instanceOf(Map).isRequired,inputFilterMap:Z.instanceOf(Map).isRequired,linkedColumnMap:Z.instanceOf(Map).isRequired,onAdd:Z.func.isRequired,onOpenLinker:Z.func.isRequired,waitingFilterMap:Z.instanceOf(Map).isRequired,waitingInputMap:Z.instanceOf(Map).isRequired};function vr(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:Me("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(qr,{className:Me("btn-chart-column-selector",vr.makeButtonClassName(a.name)),onClick:()=>t(a.name),onMouseEnter:()=>{r&&r(a)},onMouseLeave:i,disabled:!a.isValid,isLinked:a.isActive,children:a.name},a.name))})]})})}vr.makeButtonClassName=n=>"btn-chart-column-selector-".concat(n);vr.defaultProps={onMouseEnter:()=>{},onMouseLeave:()=>{}};function jt(n){return n.settings!==void 0}function Pl(n){return n.figure!==void 0}function Dl(n){if(n==null)return!1;var{settings:e,tableSettings:t}=n;return typeof e=="object"&&typeof t=="object"}function Ol(n){return n!=null&&Dl(n.panelState)}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 Pr(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){We(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 We(n,e,t){return e=Dh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dh(n){var e=Oh(n,"string");return typeof e=="symbol"?e:String(e)}function Oh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var _e=Q.module("ChartPanel"),Nh=150;function Fh(n){return n.inputFilters!=null}function Mh(n){return n.panelState!=null}class Yr extends O.Component{constructor(e){super(e),We(this,"panelContainer",void 0),We(this,"pending",void 0),We(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})),We(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})),We(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})),We(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);I(v),o.set(c,v)}}return o})),We(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)})))),We(this,"getWidgetPanelDescriptor",B(l=>{var s="Chart";if(jt(l))s=l.table;else if(Pl(l)){var o;s=(o=l.figure)!==null&&o!==void 0?o:s}else{var u;s=(u=l.name)!==null&&u!==void 0?u:s}return Pr(Pr({},l),{},{type:"Chart",name:s})})),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleColumnMouseEnter=this.handleColumnMouseEnter.bind(this),this.handleColumnMouseLeave=this.handleColumnMouseLeave.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleFilterAdd=this.handleFilterAdd.bind(this),this.handleHide=this.handleHide.bind(this),this.handleError=this.handleError.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleSettingsChanged=this.handleSettingsChanged.bind(this),this.handleOpenLinker=this.handleOpenLinker.bind(this),this.handleShow=this.handleShow.bind(this),this.handleSourceColumnChange=this.handleSourceColumnChange.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.updateModelFromSource=vt(this.updateModelFromSource.bind(this),Nh),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.panelContainer=Re.createRef(),this.pending=new In;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&&jt(t)&&t.settings.isLinked,filterMap:new Map(i),filterValueMap:new Map(i),model:void 0,columnMap:new Map,panelState:r}}componentDidMount(){this.isHidden()||(this.setState({isActive:!0}),this.initModel())}componentDidUpdate(e,t){var{inputFilters:r,source:i,makeModel:a}=this.props,{columnMap:l,model:s,filterMap:o,filterValueMap:u,isLinked:d,settings:h}=this.state;a!==e.makeModel&&this.initModel(),s!=null&&(l!==t.columnMap&&this.pruneFilterMaps(),r!==e.inputFilters&&this.updateChangedInputFilters(r,e.inputFilters),o!==t.filterMap?this.updateFilters():u!==t.filterValueMap&&this.updatePanelState(),h!==t.settings&&yi(s)&&(s.updateSettings(h),this.updatePanelState()),d!==t.isLinked?i&&(d?(this.startListeningToSource(i),this.updateModelFromSource()):this.stopListeningToSource(i)):d&&i!==e.source&&(e.source&&this.stopListeningToSource(e.source),i&&(this.startListeningToSource(i),this.updateModelFromSource())))}componentWillUnmount(){this.pending.cancel();var{model:e}=this.state,{source:t}=this.props;e!=null&&t&&this.stopListeningToSource(t)}initModel(){this.setState({isLoading:!0,isLoaded:!1,error:void 0,isDisconnected:!1});var{makeModel:e}=this.props;this.pending.cancel(),this.pending.add(e(),t=>{t.close()}).then(this.handleLoadSuccess,this.handleLoadError)}startListeningToSource(e){_e.debug("startListeningToSource",e);var{model:t}=this.state;I(t);var{dh:r}=t;e.addEventListener(r.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleSourceColumnChange),e.addEventListener(r.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(r.Table.EVENT_SORTCHANGED,this.handleSourceSortChange)}stopListeningToSource(e){_e.debug("stopListeningToSource",e);var{model:t}=this.state;I(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(Rt.COLUMN_SELECTED,this,r.get(e))}handleColumnMouseEnter(e){var{type:t,name:r}=e,{columnSelectionValidator:i}=this.props;_e.debug("handleColumnMouseEnter",i,t,r),i&&i(this,{type:t,name:r})}handleColumnMouseLeave(){var{columnSelectionValidator:e}=this.props;_e.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(Qe.LINKER)}handleReconnect(){this.setState({isDisconnected:!1,error:void 0}),this.sendColumnChange(),this.updateColumnFilters()}handleLoadSuccess(e){_e.debug("handleLoadSuccess");var{model:t}=this.state;this.setState({model:e,isLoaded:!0},()=>{var{inputFilters:r,source:i}=this.props,{filterMap:a,isLinked:l}=this.state;e!==t&&(this.sendColumnChange(),this.updateColumnFilters(),this.updateInputFilters(r,a.size>0||e.isFilterRequired()),i&&l&&(this.startListeningToSource(i),this.updateModelFromSource()))})}handleLoadError(e){xe.isCanceled(e)||(_e.error("handleLoadError",e),this.setState({error:e,isLoading:!1}))}handleSourceColumnChange(){this.updateModelFromSource()}handleSourceFilterChange(){this.updateModelFromSource()}handleSourceSortChange(){this.updateModelFromSource()}updateModelFromSource(){var{metadata:e,source:t}=this.props,{isLinked:r,model:i}=this.state;if(!r||!i||!t){_e.debug2("updateModelFromSource ignoring",r,i,t);return}var{dh:a}=i;if(this.pending.cancel(),jt(e)){var{settings:l}=e;this.pending.add(Gt.makeFigureFromSettings(a,l,t),s=>s.close()).then(s=>{yi(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&&Fh(e.props)&&Mh(e.state)){var{inputFilters:l}=e.props,{panelState:s}=e.state;s!=null&&(a=G.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=Pr(Pr({},r),e);return _e.debug("Updated settings",i),{settings:i}})}handleHide(){this.setActive(!1)}handleShow(){this.setActive(!0)}handleTabBlur(){this.setActive(!1)}handleTabFocus(){var e=this.isHidden();this.setActive(!e)}handleUpdate(e){var{isLoading:t}=e;this.setState({isLoading:t})}handleClearAllFilters(){this.setState({filterValueMap:new Map,filterMap:new Map}),this.updatePanelState()}openInputFilter(e){var{glEventHub:t}=this.props,{name:r,type:i}=e;t.emit(Ce.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(Ce.COLUMNS_CHANGED,this,Array.from(e.getFilterColumnMap().values()))}}getCoordinateForColumn(e){var t,r=vr.makeButtonClassName(e);if(!this.panelContainer.current)return null;var i=this.panelContainer.current.querySelector(".".concat(r)),a=(t=i==null?void 0:i.getBoundingClientRect())!==null&&t!==void 0?t:null;if(a==null||a.width<=0||a.height<=0)return null;var l=a.left+a.width/2,s=a.bottom;return[l,s]}setFilterMap(e){_e.debug("setFilterMap",e),this.setState(t=>{var r,{columnMap:i,filterMap:a}=t,l=null,s=new Map(t.filterValueMap);return e.forEach((o,u)=>{var{columnType:d,filterList:h}=o,c=i.get(u);if(!(c==null||c.type!==d)){if(h.length<1){_e.debug("Ignoring empty filterList for column",u);return}var{value:v}=h[0];s.set(u,v),a.get(u)!==v&&(l===null&&(l=new Map(a)),l.set(u,v))}}),{filterValueMap:s,filterMap:(r=l)!==null&&r!==void 0?r:a}})}unsetFilterValue(e){this.setState(t=>{var{inputFilters:r}=this.props,{columnMap:i}=t,{filterMap:a,filterValueMap:l}=t;if(!l.has(e))return null;l=new Map(t.filterValueMap),l.delete(e);var s=this.getInputFilterColumnMap(i,r);if(s.has(e)){var o,u=a.get(e),d=(o=s.get(e))===null||o===void 0?void 0:o.value;d!=null&&u!==d&&(a=new Map(t.filterMap),d.length>0?a.set(e,d):a.delete(e))}else a=new Map(t.filterMap),a.delete(e);return{filterMap:a,filterValueMap:l}})}updateChangedInputFilters(e,t){var r=t.filter(a=>e.find(l=>l.name===a.name&&l.type===a.type)===void 0);r.length>0&&this.deleteInputFilters(r);var i=e.filter(a=>!t.includes(a));i.length>0&&this.updateInputFilters(i)}updateInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i}=r,a=new Map(r.filterValueMap),l=new Map(r.filterMap),s=t?{filterMap:l,filterValueMap:a}:{},o=0;o<e.length;o+=1){var{name:u,type:d,value:h}=e[o],c=i.get(u);c!=null&&c.type===d&&(h!=null&&l.get(u)!==h&&(h===""?l.delete(u):l.set(u,h),s.filterMap=l),a.has(u)&&(a.delete(u),s.filterValueMap=a))}return _e.debug("updateInputFilters",s),s})}deleteInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState(r=>{for(var{columnMap:i,filterValueMap:a}=r,l=new Map(r.filterMap),s=t,o=0;o<e.length;o+=1){var{name:u,type:d}=e[o],h=i.get(u);if(h!=null&&h.type===d&&l.has(u)){var c=l.get(u);if(a.has(u)){var v=a.get(u);v!==c&&v!=null&&(s=!0,l.set(u,v))}else s=!0,l.delete(u)}}return _e.debug("deleteInputFilters",s),s?{filterMap:l}:null})}updateColumnFilters(){this.setState(e=>{var{model:t}=e;return t?{columnMap:t.getFilterColumnMap()}:null})}updateFilters(){var{columnMap:e,filterMap:t,model:r}=this.state;I(r);var i=this.getWaitingInputMap(r.isFilterRequired(),e,t);if(r.setFilter(t),t.size>0&&i.size===0){var a=r.getDefaultTitle(),l=Ye.join(Array.from(t.entries()).map(s=>{var[o,u]=s;return"".concat(o,": ").concat(u)}));a?r.setTitle("".concat(a,'<br><span style="font-size: smaller">').concat(l,"</span>")):r.setTitle(l),_e.debug2("updateFilters filters set",t),this.setState({isLoading:!0})}else _e.debug2("updateFilters waiting on inputs",i),r.setTitle(r.getDefaultTitle()),this.setState({isLoading:!1});this.updatePanelState()}pruneFilterMaps(){this.setState(e=>{var{columnMap:t}=e,r=new Map(e.filterMap),i=new Map(e.filterValueMap),a={};return e.filterValueMap.forEach((l,s)=>{t.has(s)||(i.delete(s),a.filterValueMap=i)}),e.filterMap.forEach((l,s)=>{t.has(s)||(r.delete(s),a.filterMap=r)}),a})}render(){var{columnSelectionValidator:e,glContainer:t,glEventHub:r,inputFilters:i,isLinkerActive:a,links:l,metadata:s,settings:o,Plotly:u,containerRef:d}=this.props,{columnMap:h,filterMap:c,error:v,model:g,isActive:p,isDisconnected:m,isLoaded:b,isLoading:E}=this.state,C=this.getInputFilterColumnMap(h,i),y=this.getLinkedColumnMap(h,l),w=g!=null?this.getWaitingInputMap(g.isFilterRequired(),h,c):new Map,T=g!=null?this.getWaitingFilterMap(g.isFilterRequired(),h,c,y,C):new Map,F=v!=null?"Unable to open chart. ".concat(v):void 0,N=w.size>0,P=h.size>0&&a,_=this.getWidgetPanelDescriptor(s);return f.jsx(mr,{className:Me("iris-chart-panel",{"input-required":N}),componentPanel:this,glContainer:t,glEventHub:r,onHide:this.handleHide,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabBlur:this.handleTabBlur,onTabFocus:this.handleTabFocus,errorMessage:F,isDisconnected:m,isLoading:E,isLoaded:b,descriptor:_,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:b&&g&&f.jsx(ol,{isActive:p,model:g,settings:o,onDisconnect:this.handleDisconnect,onReconnect:this.handleReconnect,onUpdate:this.handleUpdate,onError:this.handleError,onSettingsChanged:this.handleSettingsChanged,Plotly:u,containerRef:d})}),f.jsx(Cn,{in:N&&!P&&!E,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(Tl,{inputFilterMap:C,linkedColumnMap:y,onAdd:this.handleFilterAdd,onOpenLinker:this.handleOpenLinker,columnMap:h,waitingFilterMap:T,waitingInputMap:w})}),f.jsx(Cn,{in:P,mountOnEnter:!0,unmountOnExit:!0,children:f.jsx(vr,{columns:this.getSelectorColumns(h,y,e),onColumnSelected:this.handleColumnSelected,onMouseEnter:this.handleColumnMouseEnter,onMouseLeave:this.handleColumnMouseLeave})})]})})}}We(Yr,"defaultProps",{columnSelectionValidator:null,isLinkerActive:!1,source:null,sourcePanel:null,panelState:null,settings:{},containerRef:null});We(Yr,"displayName","ChartPanel");We(Yr,"COMPONENT","ChartPanel");var Rh=(n,e)=>{var{localDashboardId:t,metadata:r}=e,i;r!=null&&jt(r)&&(i=r.sourcePanelId);var a=Hr(n,t),l=$a(n,t),s=Ln(n),o=Gr(n,t),u=s===Qe.LINKER&&o===void 0;return{columnSelectionValidator:Br(n,t),isLinkerActive:u,inputFilters:Ur(n,t),links:It(n,t),source:i!=null?a.get(i):void 0,sourcePanel:i!=null?l.get(i):void 0,settings:Wr(n)}},gr=wt(Rh,{setActiveTool:Va,setDashboardIsolatedLinkerPanelId:Un},null,{forwardRef:!0})(Yr);function Ze(n,e,t){return e=Ih(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ih(n){var e=Lh(n,"string");return typeof e=="symbol"?e:String(e)}function Lh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Dr=Q.module("DropdownFilter"),Ah=150;class at extends O.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:at.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},{max:1e3})),Ze(this,"sendUpdate",vt(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s??void 0})},Ah)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleDropdownKeyPress=this.handleDropdownKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.dropdownRef=Re.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,id:ze(),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(Dr.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(),Dr.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]:Dr.debug2("Selected default item"),Dr.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,E=l===null,C=this.getCompatibleColumns(l,t),y=l!=null,w=(e=l==null?void 0:l.columnName)!==null&&e!==void 0?e:at.SOURCE_BUTTON_PLACEHOLDER,T=c!=null?"".concat(c.name," Filter"):null,[F,N]=this.getColumnOptions(C,m),P=this.getValueOptions(d),_=this.getSelectedOptionIndex(d,b),A=!y||m==null,x=p&&!i,V="source-column-btn-".concat(g),U="filter-column-select-".concat(g);return f.jsxs(jn,{className:"dropdown-filter fill-parent-absolute",isFlipped:x,children:[f.jsx("div",{className:"dropdown-filter-settings-card",children:f.jsxs("div",{className:"dropdown-filter-card-content",children:[f.jsxs("div",{className:"dropdown-filter-settings-grid",children:[f.jsx("label",{htmlFor:V,children:"Source Column"}),f.jsx(qr,{id:V,isLinked:y,onClick:s,onMouseEnter:o,onMouseLeave:u,className:at.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:U,children:"Filter Column"}),f.jsx(dr,{id:U,value:String(N),className:"custom-select",onChange:this.handleColumnChange,disabled:E,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}),y&&f.jsxs("div",{className:"dropdown-filter-settings-buttons",children:[f.jsx(Y,{kind:"secondary",type:"button",onClick:this.handleSettingsCancel,disabled:v||p||i,tooltip:i?"Cancel disabled while linker open":void 0,children:"Cancel"}),f.jsx(Y,{kind:"primary",type:"button",className:"ml-2",onClick:this.handleSettingsSave,disabled:A||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(dr,{className:"custom-select",value:String(_),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(Y,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Fe,{icon:kn,transform:"grow-4"}),tooltip:"Dropdown Filter Settings"})})]})})]})}}Ze(at,"defaultProps",{column:null,disableLinking:!1,isLinkerActive:!1,isLoaded:!1,isValueShown:!1,settingsError:null,source:null,value:"",values:[],onColumnSelected:()=>{},onSourceMouseEnter:()=>{},onSourceMouseLeave:()=>{}});Ze(at,"PLACEHOLDER","Select a value...");Ze(at,"SOURCE_BUTTON_CLASS_NAME","btn-dropdown-filter-selector");Ze(at,"SOURCE_BUTTON_PLACEHOLDER","Select a column");function Le(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=kh(n,"string");return typeof e=="symbol"?e:String(e)}function kh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ue=Q.module("DropdownFilterPanel"),_h=250,jh=Object.freeze({name:"Dropdown Filter",type:"DropdownFilter"}),Vh=(n,e)=>{var{localDashboardId:t}=e,r=$.getIdFromPanel({props:e}),i=Hr(n,t),a=It(n,t),l=Ln(n),s=Gr(n,t),o=l===Qe.LINKER&&(s===void 0||s===r),u=l===Qe.LINKER&&s!==void 0&&s!==r;return{columns:An(n,t),columnSelectionValidator:Br(n,t),dh:Ha(n),isLinkerActive:o,disableLinking:u,settings:Wr(n),panelTableMap:i,dashboardLinks:a}},$h=wt(Vh,null,null,{forwardRef:!0});class et extends O.Component{constructor(e){super(e),Le(this,"dateTimeFormatter",void 0),Le(this,"dropdownFilterRef",void 0),Le(this,"panelContainer",void 0),Le(this,"pending",void 0),Le(this,"cleanup",void 0),Le(this,"columnFormats",void 0),Le(this,"getCachedValues",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)},{max:1e3})),Le(this,"getCachedPanelLinks",Ge((h,c)=>{var v=$.getIdFromPanel(c);return ue.debug("getCachedPanelLinks",h,v),h.filter(g=>{var p;return((p=g.end)===null||p===void 0?void 0:p.panelId)===v})},{max:1e3})),Le(this,"getCachedSource",Ge(h=>{ue.debug("getCachedSource",h);var c;if(h.length>0){var[v]=h;c=v.start,h.length>1&&ue.error("Filter has more that one link",h)}return c},{max:1e3})),Le(this,"getCachedSourceTable",Ge((h,c)=>{var v;if(ue.debug("getCachedSourceTable",h,c),c==null)return null;var{panelId:g}=c;return(v=h.get(g))!==null&&v!==void 0?v:null},{max:1e3})),Le(this,"getCachedSourceColumn",Ge((h,c)=>{var v;return ue.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},{max:1e3})),this.handleChange=vt(this.handleChange.bind(this),_h),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleSourceFilterChange=this.handleSourceFilterChange.bind(this),this.handleSourceSortChange=this.handleSourceSortChange.bind(this),this.handleSourceSizeChange=this.handleSourceSizeChange.bind(this),this.handleSourceMouseEnter=this.handleSourceMouseEnter.bind(this),this.handleSourceMouseLeave=this.handleSourceMouseLeave.bind(this),this.handleValuesTableUpdate=this.handleValuesTableUpdate.bind(this),this.dropdownFilterRef=Re.createRef(),this.panelContainer=Re.createRef(),this.pending=new In;var{dh:t,panelState:r,settings:i}=e;this.columnFormats=Sn.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 qe(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&&(ue.debug("Table in state modified, closing the old table."),t.valuesTable.close()),(o!==d||s!==u)&&this.updateValuesTable(),o!==d&&(d!==null&&this.stopListeningToSource(d),o!==null&&this.startListeningToSource(o))}componentWillUnmount(){var{dashboardLinks:e,panelTableMap:t}=this.props,{valuesTable: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(at.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>et.MAX_TABLE_SIZE)return"Table too large, must have fewer than ".concat(et.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;ue.debug("startListeningToSource"),e.addEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.addEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.addEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.addEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.addEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}stopListeningToSource(e){var{dh:t}=this.props;ue.debug("stopListeningToSource"),e.removeEventListener(t.Table.EVENT_FILTERCHANGED,this.handleSourceFilterChange),e.removeEventListener(t.Table.EVENT_SORTCHANGED,this.handleSourceSortChange),e.removeEventListener(t.Table.EVENT_SIZECHANGED,this.handleSourceSizeChange),e.removeEventListener(t.Table.EVENT_DISCONNECT,this.handleDisconnect),e.removeEventListener(t.Table.EVENT_RECONNECT,this.handleReconnect)}handleChange(e){var{column:t,isValueShown: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(){ue.debug("handleColumnSelected");var{glEventHub:e}=this.props;e.emit(Ce.COLUMN_SELECTED,this,et.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){ue.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];ue.debug("sendUpdate",{name:e,type:t,value:r,timestamp:i,excludePanelIds:u}),s.emit(Ce.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(ue.debug("updateValuesTable",r,i),this.setState({values:[],valuesTable:void 0,error:null}),r==null){ue.debug("Filter unlinked."),this.setState({isLoading:!1,isLoaded:!0,isValueShown:!1,sourceSize:0});return}this.setState({isLoading:!0}),i!=null&&(this.setState({isLoaded:!1,sourceSize:i.size}),this.pending.add(i.copy(),a=>a.close()).then(a=>{this.updateViewportListener(a),this.setState({valuesTable:a})}).catch(a=>{xe.isCanceled(a)||(ue.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(ue.debug("applySourceSorts",i==null?void 0:i.sort),r==null||i==null){ue.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(ue.debug("applySourceFilters",i==null?void 0:i.filter),r==null||i==null){ue.debug("Table not initialized");return}var a=[...i.filter];r.applyFilter(a),this.setViewport(r)}updateViewportListener(e){var{dh:t}=this.props;if(ue.debug("updateViewportListener",e==null?void 0:e.size),this.cleanup&&this.cleanup(),e==null){this.cleanup=void 0;return}this.cleanup=e.addEventListener(t.Table.EVENT_UPDATED,this.handleValuesTableUpdate),this.setViewport(e)}setViewport(e){var{dashboardLinks:t}=this.props,r=this.getValuesColumn(e,t);if(!r){ue.error("values column is null");return}e.setViewport(0,et.MAX_TABLE_SIZE-1,[r])}updateFormatterSettings(e){var{dh:t}=this.props,r=Sn.getColumnFormats(e);xr(this.columnFormats,r)||(this.columnFormats=r,this.setState({formatter:new qe(t,r)}))}handleValuesTableUpdate(e){var{detail:t}=e,{rows:r}=t,{dashboardLinks:i}=this.props,{valuesTable:a}=this.state;if(!a){ue.error("valuesTable is null");return}var l=this.getValuesColumn(a,i);if(!l){ue.error("Values column not found");return}var s=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,et.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(),E=this.getPanelErrorMessage(),C=p&&v!=null?this.getCachedValues(c,v,o):ee;return f.jsx(mr,{errorMessage:E,isLoading:g,isLoaded:p,isDisconnected:u,className:"iris-dropdown-filter-panel",componentPanel:this,glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,descriptor:jh,children:f.jsx("div",{ref:this.panelContainer,className:"dropdown-filter-container h-100 w-100 container",children:f.jsx(at,{ref:this.dropdownFilterRef,column:s,columns:e,isValueShown:d,isLinkerActive:l,disableLinking:r,isLoaded:p,settingsError:b,source:m,value:h,values:C,onChange:this.handleChange,onColumnSelected:this.handleColumnSelected,onSourceMouseEnter:this.handleSourceMouseEnter,onSourceMouseLeave:this.handleSourceMouseLeave})})})}}Le(et,"displayName","DropdownFilterPanel");Le(et,"COMPONENT","DropdownFilterPanel");Le(et,"MAX_TABLE_SIZE",256);Le(et,"SOURCE_COLUMN",Object.freeze({name:"FilterSource",type:null}));var yt=$h(et);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 Or(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){lr(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 lr(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)}var he=Q.module("FilterSetManager"),Bh="Enter name...",Wi="No Available Filter Sets";class fr extends O.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",Re.createRef()),lr(this,"dropdownRef",Re.createRef()),lr(this,"editDropdownRef",Re.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;he.debug("initSettingsScreen",e,t),this.setState({modifiedFilterSets:[...e],editId:t})}updateSelectedId(){var{isValueShown:e,filterSets:t,selectedId:r,onChange:i}=this.props;if(he.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:[]}),he.debug("Update sets",r,i),t(r),r.length>0&&e({isValueShown:!0,selectedId:i})}handleCaptureNewSet(){var{getFilterState:e}=this.props;fr.animateScreenFlash();var t=ze(),r=e(),i={id:t,title:"",panels:r};he.debug("handleSetCreate",i),this.setState({nameInputValue:"",nameInputError:void 0,renameSet:i})}handleRenameCancel(){this.setState({renameSet:void 0})}handleRestoreFullStateChange(e){this.setState({restoreFullState:e==="true"})}getNameError(e){var t,{renameSet:r,modifiedFilterSets:i}=this.state,a=(t=e==null?void 0:e.trim())!==null&&t!==void 0?t:"";if(a.length===0)return he.debug("Name cannot be empty",a),"Name cannot be empty";if(r!==void 0&&i.some(l=>{var{title:s,id:o}=l;return s===a&&o!==r.id}))return he.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){he.error("Renamed set undefined.");return}var l=this.getNameError(t);if(he.debug("handleRenameConfirm",t,l),l!==void 0){this.setState({nameInputError:l});return}var s=(e=t==null?void 0:t.trim())!==null&&e!==void 0?e:"",o=Or(Or({},r),{},{title:s,restoreFullState:a}),u=i.findIndex(h=>{var{id:c}=h;return c===r.id}),d=[...i];u>=0?(d[u]=o,he.debug("Renamed existing set",d)):(d.push(o),he.debug("Added new set to modified sets",d)),this.setState({editId:o.id,modifiedFilterSets:d,renameSet:void 0})}handleSetDelete(){this.setState(e=>{var{editId:t,modifiedFilterSets:r}=e,i=r.findIndex(o=>{var{id:u}=o;return u===t});if(i<0)return he.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 he.debug("Deleted selected set",t,r,a),he.debug("New selection",l,s),{modifiedFilterSets:a,editId:s}})}handleSetUpdate(){var{getFilterState:e}=this.props;fr.animateScreenFlash();var t=e();this.setState(r=>{var{modifiedFilterSets:i,editId:a}=r;if(a===void 0)return he.error("Filter for update not selected."),null;var l=[...i],s=l.findIndex(o=>{var{id:u}=o;return u===a});return s<0?(he.error("Selected set for update not found."),null):(l[s]=Or(Or({},l[s]),{},{panels:t}),he.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 he.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){he.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){he.debug("No filter selected");return}var i=r.find(a=>{var{id:l}=a;return l===e});if(i===void 0){he.debug("Selected id not found in filterSets",e,r);return}he.debug("Apply filterSet",i),t(i)}focusInput(){var e;(e=this.dropdownRef.current)===null||e===void 0||e.focus()}focusRenameInput(){var e;(e=this.renameInputRef.current)===null||e===void 0||e.focus()}render(){var{nameInputValue:e,nameInputError:t,editId: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(Fe,{icon:ai,mask:li,transform:"shrink-1 down-5 right-7"}),f.jsx(Fe,{icon:ho,className:"text-primary",transform:"shrink-6 down-5 right-7"})]}),m=f.jsxs("div",{className:"fa-layers",children:[f.jsx(Fe,{icon:ai,mask:li,transform:"shrink-1 down-5 right-7"}),f.jsx(Fe,{icon:co,transform:"shrink-1 down-5 right-7"})]});return f.jsx("div",{className:"filter-set-manager fill-parent-absolute",children:f.jsxs(jn,{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(Y,{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:Bh,value:e,ref:this.renameInputRef,onChange:this.handleNameInputChange,onKeyPress:this.handleNameInputKeyPress,spellCheck:"false"}),f.jsx(Y,{"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:Ja}),f.jsx(Y,{"data-testid":"rename-cancel-button",kind:"ghost",className:"btn btn-link no-underline pt-2 pb-2",onClick:this.handleRenameCancel,tooltip:"Cancel",icon:uo})]}),t!==void 0&&f.jsx("div",{className:"error-message",children:t})]}),f.jsx("div",{className:"form-group",children:f.jsxs(bs,{"aria-label":"Restoration options",onChange:this.handleRestoreFullStateChange,value:"".concat(l),children:[f.jsx(ti,{value:"false",children:"Restore only filters"}),f.jsx(ti,{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(dr,{"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:Wi}),a.map(b=>{var{id:E,title:C}=b;return f.jsx("option",{value:E,children:C},E)})]}),f.jsx(Y,{kind:"ghost",onClick:this.handleSetUpdate,disabled:c,icon:m,tooltip:"Update"}),f.jsx(Y,{kind:"ghost",onClick:this.handleSetEdit,disabled:c,icon:el,tooltip:"Edit"}),f.jsx(Y,{kind:"ghost",onClick:this.handleSetDelete,disabled:c,icon:zr,tooltip:"Delete"})]})]}),f.jsx("div",{children:f.jsx(Y,{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(Y,{kind:"secondary",onClick:this.handleSettingsCancel,children:"Cancel"})," ",f.jsx(Y,{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(dr,{"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:Wi}),o.map(b=>{var{id:E,title:C}=b;return f.jsx("option",{value:E,children:C},E)})]}),f.jsx(Y,{"data-testid":"filter-apply-button",kind:"ghost",onClick:this.handleFilterApply,icon:tl,tooltip:"Apply Filter Set"})]})})}),f.jsx("div",{className:"filter-set-manager-menu",children:f.jsx(Y,{kind:"ghost",className:"btn btn-link btn-link-icon m-2 px-2",onClick:this.handleSettingsClick,tooltip:"Settings",icon:f.jsx(Fe,{icon:kn,transform:"grow-4"})})})]},"back")]})})}}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 qi(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){Uh(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 Uh(n,e,t){return e=Wh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wh(n){var e=zh(n,"string");return typeof e=="symbol"?e:String(e)}function zh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function qh(n){var e,t,r,i,a,{model:l}=n,s=((e=l==null?void 0:l.rowCount)!==null&&e!==void 0?e:0)-((t=l==null?void 0:l.pendingRowCount)!==null&&t!==void 0?t:0)-((r=l==null?void 0:l.floatingBottomRowCount)!==null&&r!==void 0?r:0)-((i=l==null?void 0:l.floatingTopRowCount)!==null&&i!==void 0?i:0),o=l==null?void 0:l.displayString(s,"long"),u=(a=l==null?void 0:l.columnCount)!==null&&a!==void 0?a:0,d=l==null?void 0:l.displayString(u,"long");return f.jsxs(Bn,qi(qi({},n),{},{children:[f.jsx("hr",{className:"tab-tooltip-divider"}),f.jsx("span",{children:"Number of Columns"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:d}),f.jsx("span",{children:"Number of Rows"}),f.jsx("span",{className:"tab-tooltip-statistic-value",children:o})]}))}function Nl(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 Ue(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){me(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 me(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 rt=Q.module("IrisGridPanel"),Yh=500;function Xi(n){if(n==null)throw new Error("No metadata provided");if(Fl(n))return n.name;if(Nl(n))return n.table;throw new Error("Unable to determine table name from metadata: ".concat(JSON.stringify(n)))}class Ut extends O.PureComponent{constructor(e){super(e),me(this,"irisGrid",void 0),me(this,"pluginRef",void 0),me(this,"modelPromise",void 0),me(this,"irisGridState",void 0),me(this,"gridState",void 0),me(this,"pluginState",void 0),me(this,"irisGridUtils",void 0),me(this,"getGridInputFilters",B((r,i)=>G.getInputFiltersForColumns(r,i.filter(a=>{var{value:l,excludePanelIds:s}=a,o=$.getIdFromPanel(this);return l!=null&&(s==null||o!=null&&!s.includes(o))})))),me(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]})),me(this,"getPluginContent",B((r,i,a)=>{var l;if(!i||!_t(i)||r==null||i.table==null)return null;var s={panel:this};return f.jsx("div",{className:"iris-grid-plugin",children:f.jsx(r,Ue({ref:this.pluginRef,filter:this.handlePluginFilter,fetchColumns:this.handlePluginFetchColumns,model:i,table:i.table,tableName:this.getTableName(),selectedRanges:(l=this.irisGrid.current)===null||l===void 0?void 0:l.state.selectedRanges,onStateChange:this.handlePluginStateChange,pluginState:a},s))})})),me(this,"getDehydratedIrisGridPanelState",B((r,i,a,l)=>G.dehydrateIrisGridPanelState(r,{isSelectingPartition:i,partitions:a,advancedSettings:l}))),me(this,"getDehydratedIrisGridState",B((r,i,a,l,s,o,u,d,h,c,v,g,p,m,b,E,C,y,w,T,F,N)=>(I(this.irisGridUtils),this.irisGridUtils.dehydrateIrisGridState(r,{advancedFilters:a,aggregationSettings:C,customColumnFormatMap:l,isFilterBarShown:s,metrics:{userColumnWidths:b,userRowHeights:E},quickFilters:o,customColumns:u,reverse:d,rollupConfig:h,showSearchBar:c,searchValue:v,selectDistinctColumns:g,selectedSearchColumns:p,sorts:i,invertSearchColumns:m,pendingDataMap:y,frozenColumns:w,conditionalFormats:T,columnHeaderGroups:F,partitionConfig:N})))),me(this,"getDehydratedGridState",B((r,i,a,l,s)=>G.dehydrateGridState(r,{isStuckToBottom:l,isStuckToRight:s,movedColumns:i,movedRows:a}))),me(this,"getCachedPanelState",B((r,i,a,l)=>({irisGridPanelState:r,irisGridState:i,gridState:a,pluginState:l}))),me(this,"getWidgetPanelDescriptor",B((r,i)=>{var a=Xi(r);return Ue(Ue({type:"Table",displayType:"Table"},r),{},{name:a,description:i})})),me(this,"savePanelState",vt(()=>{var{irisGridState:r,gridState:i,pluginState:a}=this;I(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,reverse:E,rollupConfig:C,showSearchBar:y,searchValue:w,selectDistinctColumns:T,selectedSearchColumns:F,sorts:N,invertSearchColumns:P,metrics:_,pendingDataMap:A,frozenColumns:x,conditionalFormats:V,columnHeaderGroups:U,partitionConfig:K}=r;I(s),I(_);var{userColumnWidths:ne,userRowHeights:le}=_;I(i);var{isStuckToBottom:ve,isStuckToRight:fe,movedColumns:Ie,movedRows:R}=i,L=this.getCachedPanelState(this.getDehydratedIrisGridPanelState(s,u,d,h),this.getDehydratedIrisGridState(s,N,c,g,p,m,b,E,C,y,w,T,F,P,ne,le,v,A,x,V,U,K),this.getDehydratedGridState(s,Ie,R,ve,fe),a);L!==o&&(rt.debug("Saving panel state",this,L),this.setState({panelState:L}),l==null||l(L))},Yh)),this.handleAdvancedSettingsChange=this.handleAdvancedSettingsChange.bind(this),this.handleColumnsChanged=this.handleColumnsChanged.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleColumnSelected=this.handleColumnSelected.bind(this),this.handleDataSelected=this.handleDataSelected.bind(this),this.handleError=this.handleError.bind(this),this.handleGridStateChange=this.handleGridStateChange.bind(this),this.handlePluginStateChange=this.handlePluginStateChange.bind(this),this.handleCreateChart=this.handleCreateChart.bind(this),this.handleShow=this.handleShow.bind(this),this.handleTabClicked=this.handleTabClicked.bind(this),this.handleDisconnect=this.handleDisconnect.bind(this),this.handleReconnect=this.handleReconnect.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.isColumnSelectionValid=this.isColumnSelectionValid.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handlePluginFilter=this.handlePluginFilter.bind(this),this.handlePluginFetchColumns=this.handlePluginFetchColumns.bind(this),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.irisGrid=Re.createRef(),this.pluginRef=Re.createRef();var{panelState:t}=e;this.pluginState=null,this.irisGridUtils=null,this.state={error:null,isDisconnected:!1,isLoaded:!1,isLoading:!0,isModelReady:!1,model:void 0,advancedFilters:new Map,aggregationSettings:{aggregations:[],showOnTop:!1},advancedSettings:new Map(ul.DEFAULTS),customColumns:[],customColumnFormatMap:new Map,isFilterBarShown:!1,quickFilters:new Map,sorts:[],userColumnWidths:new Map,userRowHeights:new Map,reverse:!1,movedColumns:[],movedRows:[],isSelectingPartition:!1,partitions:[],rollupConfig:void 0,showSearchBar:!1,searchValue:"",selectedSearchColumns:void 0,invertSearchColumns:!0,Plugin:void 0,pluginFilters:[],pluginFetchColumns:[],modelQueue:[],pendingDataMap:new Map,frozenColumns:void 0,panelState:t,irisGridStateOverrides:{},gridStateOverrides:{},isStuckToBottom:!1,isStuckToRight:!1,conditionalFormats:[],selectDistinctColumns:[]}}componentDidMount(){this.initModel()}componentDidUpdate(e,t){var{model:r}=this.state,{makeModel:i}=this.props;r!==t.model&&(t.model!=null&&(this.stopModelListening(t.model),t.model.close()),r!=null&&this.startModelListening(r)),i!==e.makeModel&&this.initModel()}componentWillUnmount(){this.savePanelState.cancel(),this.modelPromise!=null&&(this.modelPromise.cancel(),this.modelPromise=void 0);var{model:e}=this.state;e&&(this.stopModelListening(e),e.close())}getTableName(){var{metadata:e}=this.props;return Xi(e)}initModel(){this.setState({isModelReady:!1,isLoading:!0,error:null,isDisconnected:!1});var{makeModel:e}=this.props;this.modelPromise!=null&&this.modelPromise.cancel(),this.modelPromise=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 G(t.dh),r!=null){var{irisGridState:l}=r,{aggregationSettings:s,customColumns:o,selectDistinctColumns:u=[],rollupConfig:d}=Ue(Ue({},l),i);o.length>0&&a.push(h=>{h.customColumns=o}),d!=null&&d.columns.length>0&&a.push(h=>{h.rollupConfig=G.getModelRollupConfig(h.originalColumns,d,s)}),u.length>0&&a.push(h=>{h.selectDistinctColumns=u})}this.setState({model:t,modelQueue:a}),this.initModelQueue(t,a)}initModelQueue(e,t){var r=e;if(t.length===0){this.modelInitialized(r);return}var i=t.shift();rt.debug("initModelQueue",i),i&&i(r),this.setState({modelQueue:t})}handleAdvancedSettingsChange(e,t){rt.debug("handleAdvancedSettingsChange",e,t),this.setState(r=>{var{advancedSettings:i}=r;return i.get(e)===t?null:{advancedSettings:new Map(i).set(e,t)}})}handlePluginFilter(e){var t,r,{model:i}=this.state;I(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(Ee.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):(I(r),this.initModelQueue(r,i))}handleTableChanged(e){rt.debug("handleTableChanged",e);var{glEventHub:t}=this.props,{detail:r}=e;t.emit(Ce.TABLE_CHANGED,this,r)}handleCreateChart(e,t){this.savePanelState.flush(),this.setState(()=>null,()=>{var{glEventHub:r,inputFilters:i,metadata:a}=this.props,l=this.getTableName(),{panelState:s}=this.state,o=$.getIdFromPanel(this),u;s&&(u=G.extractTableSettings(s,i)),r.emit(Ee.CREATE_CHART,{metadata:Ue(Ue({},a),{},{settings:e,sourcePanelId:o,table:l,tableSettings:u}),table:_t(t)?t.table:void 0})})}handleColumnSelected(e){var{glEventHub:t}=this.props;t.emit(Ee.COLUMN_SELECTED,this,e)}handleDataSelected(e,t){var{glEventHub:r}=this.props;r.emit(Ee.DATA_SELECTED,this,t)}handleShow(){this.updateGrid()}handleTabClicked(){this.irisGrid.current&&this.irisGrid.current.focus()}handleError(e){rt.error(e),this.setState({error:e,isLoading:!1})}handleDisconnect(){this.setState({error:new Error("Table disconnected"),isDisconnected:!0,isLoading:!1})}handleReconnect(){this.setState({isDisconnected:!1,error:null})}handleLoadError(e){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}),_t(e)){var{table:i}=e,{pluginName:a}=i;if(a!==""&&r!=null&&a!=null){var l=r(a);this.setState({Plugin:l})}t.emit(Ce.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){rt.debug2("sendColumnsChange",e);var{glEventHub:t}=this.props;t.emit(Ce.COLUMNS_CHANGED,this,e)}startModelListening(e){e.addEventListener(z.EVENT.DISCONNECT,this.handleDisconnect),e.addEventListener(z.EVENT.RECONNECT,this.handleReconnect),e.addEventListener(z.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.addEventListener(z.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopModelListening(e){e.removeEventListener(z.EVENT.DISCONNECT,this.handleDisconnect),e.removeEventListener(z.EVENT.RECONNECT,this.handleReconnect),e.removeEventListener(z.EVENT.COLUMNS_CHANGED,this.handleColumnsChanged),e.removeEventListener(z.EVENT.TABLE_CHANGED,this.handleTableChanged)}getCoordinateForColumn(e){var t,r,i,{model:a}=this.state;if(!a)return null;var l=this.irisGrid.current,{gridWrapper:s}=l||{},o=(t=s==null?void 0:s.getBoundingClientRect())!==null&&t!==void 0?t:null;if(o==null||o.width<=0||o.height<=0)return null;I(l);var{metrics:u}=l.state;I(u);var{columnHeaderHeight:d,allColumnXs:h,allColumnWidths:c,right:v,columnHeaderMaxDepth:g}=u,p=a.getColumnIndexByName(e);I(p);var m=l.getVisibleColumn(p),b=(r=h.get(m))!==null&&r!==void 0?r:0,E=(i=c.get(m))!==null&&i!==void 0?i:0,C=Math.max(o.left,Math.min(m>v?o.right:o.left+b+E*.5,o.right)),y=o.top+d*g;return[C,y]}setFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setFilterMap(e)}setAdvancedFilterMap(e){var t=this.irisGrid.current;t!=null&&t.setAdvancedFilterMap(e)}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;rt.debug("setFilters",t,r);var{model:i,isDisconnected:a}=this.state,l=this.irisGrid.current;if(l==null||a){rt.debug("Ignore setFilters, model disconnected");return}I(i);var{columns:s,formatter:o}=i,u=G.changeFilterColumnNamesToIndexes(i.columns,t).filter(h=>{var[c]=h;return i.isFilterable(c)}),d=G.changeFilterColumnNamesToIndexes(i.columns,r).filter(h=>{var[c]=h;return i.isFilterable(c)});I(this.irisGridUtils),l.clearAllFilters(),l.setFilters({quickFilters:this.irisGridUtils.hydrateQuickFilters(s,u,o.timeZone),advancedFilters:this.irisGridUtils.hydrateAdvancedFilters(s,d,o.timeZone)})}setStateOverrides(e){rt.debug("setStateOverrides",e);var{irisGridState:t,gridState:r}=e;this.setState({irisGridStateOverrides:t,gridStateOverrides:r},()=>{this.initModel()})}unsetFilterValue(){}loadPanelState(e){var{panelState:t,irisGridStateOverrides:r,gridStateOverrides:i}=this.state;if(t!=null)try{var{gridState:a,irisGridState:l,irisGridPanelState:s}=t,o=Ue({},r),{quickFilters:u,advancedFilters:d}=o;u&&(o.quickFilters=G.changeFilterColumnNamesToIndexes(e.columns,u)),d&&(o.advancedFilters=G.changeFilterColumnNamesToIndexes(e.columns,d));var{isSelectingPartition:h,partitions:c,advancedSettings:v}=G.hydrateIrisGridPanelState(e,s);I(this.irisGridUtils);var{advancedFilters:g,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,quickFilters:E,reverse:C,rollupConfig:y,aggregationSettings:w,sorts:T,userColumnWidths:F,userRowHeights:N,showSearchBar:P,searchValue:_,selectDistinctColumns:A,selectedSearchColumns:x,invertSearchColumns:V,pendingDataMap:U,frozenColumns:K,conditionalFormats:ne,columnHeaderGroups:le,partitionConfig:ve}=this.irisGridUtils.hydrateIrisGridState(e,Ue(Ue({},l),o)),{isStuckToBottom:fe,isStuckToRight:Ie,movedColumns:R,movedRows:L}=G.hydrateGridState(e,Ue(Ue({},a),i),l.customColumns);this.setState({advancedFilters:g,advancedSettings:v,conditionalFormats:ne,customColumns:p,customColumnFormatMap:m,isFilterBarShown:b,isSelectingPartition:h,movedColumns:R,movedRows:L,partitions:c,quickFilters:E,reverse:C,rollupConfig:y,aggregationSettings:w,sorts:T,userColumnWidths:F,userRowHeights:N,showSearchBar:P,searchValue:_,selectDistinctColumns:A,selectedSearchColumns:x,invertSearchColumns:V,pendingDataMap:U,frozenColumns:K,isStuckToBottom:fe,isStuckToRight:Ie,columnHeaderGroups:le,partitionConfig:ve})}catch(j){rt.error("loadPanelState failed to load panelState",t,j)}}updateGrid(){var e,t,r=(e=(t=this.irisGrid.current)===null||t===void 0?void 0:t.grid)!==null&&e!==void 0?e:null;r&&r.handleResize()}render(){var e,t,{children:r,glContainer:i,glEventHub:a,columnSelectionValidator:l,getDownloadWorker:s,inputFilters:o,links:u,metadata:d,panelState:h,user:c,settings:v,theme:g}=this.props,{advancedFilters:p,aggregationSettings:m,advancedSettings:b,conditionalFormats:E,customColumns:C,customColumnFormatMap:y,error:w,isDisconnected:T,isFilterBarShown:F,isSelectingPartition:N,isStuckToBottom:P,isStuckToRight:_,isLoaded:A,isLoading:x,isModelReady:V,model:U,movedColumns:K,movedRows:ne,partitions:le,partitionConfig:ve,quickFilters:fe,reverse:Ie,rollupConfig:R,sorts:L,userColumnWidths:j,userRowHeights:W,showSearchBar:q,searchValue:Se,selectDistinctColumns:ye,selectedSearchColumns:ke,invertSearchColumns:Ke,Plugin:Xe,pluginFilters:rn,pluginFetchColumns:nn,pendingDataMap:Cr,frozenColumns:an,columnHeaderGroups:Zt}=this.state,es=w!=null?"Unable to open table. ".concat(w):void 0,ts=(e=U==null?void 0:U.description)!==null&&e!==void 0?e:void 0,rs=(t=h==null?void 0:h.pluginState)!==null&&t!==void 0?t:null,ns=r??this.getPluginContent(Xe,U,rs),{permissions:is}=c,{canCopy:as,canDownloadCsv:ls}=is,Qn=this.getWidgetPanelDescriptor(d,ts);return f.jsx(mr,{errorMessage:es,isDisconnected:T,isLoading:x,isLoaded:A,className:"iris-grid-panel",glContainer:i,glEventHub:a,onClearAllFilters:this.handleClearAllFilters,onShow:this.handleShow,onTabFocus:this.handleShow,onTabClicked:this.handleTabClicked,componentPanel:this,descriptor:Qn,renderTabTooltip:()=>f.jsx(qh,{descriptor:Qn,model:U}),children:V&&U&&f.jsx(Kr,{advancedFilters:p,aggregationSettings:m,advancedSettings:b,alwaysFetchColumns:this.getAlwaysFetchColumns(u,nn),columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",customColumns:C,customColumnFormatMap:y,columnSelectionValidator:this.isColumnSelectionValid,conditionalFormats:E,inputFilters:this.getGridInputFilters(U.columns,o),applyInputFiltersOnInit:h==null,isFilterBarShown:F,isSelectingColumn:l!=null,isSelectingPartition:N,isStuckToBottom:P,isStuckToRight:_,movedColumns:K,movedRows:ne,partitions:le,partitionConfig:ve,quickFilters:fe,reverse:Ie,rollupConfig:R,settings:v,sorts:L,userColumnWidths:j,userRowHeights:W,model:U,showSearchBar:q,searchValue:Se,selectedSearchColumns:ke,selectDistinctColumns:ye,invertSearchColumns:Ke,onColumnSelected:this.handleColumnSelected,onCreateChart:this.handleCreateChart,onDataSelected:this.handleDataSelected,onError:this.handleError,onStateChange:this.handleGridStateChange,onContextMenu:this.handleContextMenu,onAdvancedSettingsChange:this.handleAdvancedSettingsChange,customFilters:rn,pendingDataMap:Cr,canCopy:as,canDownloadCsv:ls,ref:this.irisGrid,getDownloadWorker:s,frozenColumns:an,theme:g,columnHeaderGroups:Zt,children:ns})})}}me(Ut,"defaultProps",{onStateChange:()=>{},onPanelStateUpdate:()=>{}});me(Ut,"displayName","IrisGridPanel");me(Ut,"COMPONENT","IrisGridPanel");var Zh=(n,e)=>{var{localDashboardId:t=_s}=e;return{inputFilters:Ur(n,t),links:It(n,t),columnSelectionValidator:Br(n,t),user:ks(n),settings:Wr(n)}},Wt=wt(Zh,null,null,{forwardRef:!0})(Ut);function or(n,e,t){return e=Qh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qh(n){var e=Jh(n,"string");return typeof e=="symbol"?e:String(e)}function Jh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Yi=Q.module("InputFilter"),ec=150;class zt extends O.Component{constructor(e){super(e),or(this,"inputRef",void 0),or(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},{max:1e3})),or(this,"sendUpdate",vt(()=>{var{onChange:a}=this.props,{column:l,value:s,isValueShown:o}=this.state;a({column:l,isValueShown:o,value:s})},ec)),this.handleColumnChange=this.handleColumnChange.bind(this),this.handleInputKeyPress=this.handleInputKeyPress.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.handleSettingsCancel=this.handleSettingsCancel.bind(this),this.handleSettingsClick=this.handleSettingsClick.bind(this),this.handleSettingsSave=this.handleSettingsSave.bind(this),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.inputRef=Re.createRef();var{column:t,isValueShown:r,value:i}=e;this.state={column:t,selectedColumn:t,value:i,isValueShown:r}}componentDidUpdate(e,t){var{column:r}=this.props,{column:i,value:a,isValueShown:l}=this.state;r!==e.column&&this.setState({column:r,selectedColumn:r}),l!==void 0&&l&&l!==t.isValueShown&&this.focusInput(),(i!==t.column||a!==t.value||l!==t.isValueShown)&&this.sendUpdate()}componentWillUnmount(){this.sendUpdate.flush()}handleColumnChange(e){var{columns:t}=this.props,r=t[parseInt(e,10)];Yi.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;Yi.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?zt.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(jn,{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(dr,{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(Y,{kind:"secondary",onClick:this.handleSettingsCancel,disabled:t==null,children:"Cancel"}),f.jsx(Y,{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:zt.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(Y,{kind:"ghost",className:"m-2 px-2",onClick:this.handleSettingsClick,icon:f.jsx(Fe,{icon:kn,transform:"grow-4"}),tooltip:"Input Filter Settings"})})]})]})}}or(zt,"PLACEHOLDER","Enter value...");or(zt,"defaultProps",{column:null,isValueShown:!1,value:null});function Zr(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=250;class Qr extends O.Component{constructor(e){super(e),Zr(this,"inputFilterRef",void 0),this.handleChange=vt(this.handleChange.bind(this),nc),this.handleClearAllFilters=this.handleClearAllFilters.bind(this),this.inputFilterRef=Re.createRef();var{panelState:t}=e,{value:r,isValueShown:i=!1,name:a,type:l,timestamp:s}=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(Ce.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(Kt,{className:"iris-input-filter-panel",componentPanel:this,glContainer:e,glEventHub:t,onClearAllFilters:this.handleClearAllFilters,isClonable:!0,isRenamable:!0,children:f.jsx(zt,{ref:this.inputFilterRef,column:r,columns:i,onChange:this.handleChange,isValueShown:a,value:l})})}}Zr(Qr,"defaultProps",{panelState:null});Zr(Qr,"COMPONENT","InputFilterPanel");Zr(Qr,"displayName","InputFilterPanel");var ic=(n,e)=>{var{localDashboardId:t}=e;return{columns:An(n,t)}},Vt=wt(ic,null,null,{forwardRef:!0})(Qr);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){Wn(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 Wn(n,e,t){return e=ac(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ac(n){var e=lc(n,"string");return typeof e=="symbol"?e:String(e)}function lc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Oe=Q.module("FilterSetManagerPanel");function sc(n){return n.setPanelState!=null}class qt extends O.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){Oe.error("Could not get panel",i);return}var a=$.getComponentNameFromPanel(i),l=$.getIdFromPanel(i);Oe.debug("Panel:",i,a);var{glContainer:s=null}=i.props;if(s==null){Oe.error("Could not get panel container",i);return}var o=$.getComponentConfigFromContainer(s);if(o==null){Oe.error("Could not get component config from container",s);return}var u=$.getPanelComponentState(o);if(u==null){Oe.debug("Panel state is null ".concat(l));return}switch(a){case $.getComponentName(Ut):{var d;l!=null&&(d=this.getIrisGridPanelFilters(l,u)),d!=null&&t.push({panelId:l,type:a,state:d});break}case $.getComponentName(Vt):case $.getComponentName(yt):{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 Oe.error("Unable to get table for panel ".concat(e,".")),null;var{irisGridState:a={advancedFilters:void 0,quickFilters:void 0},gridState:l={}}=t,{advancedFilters:s,quickFilters:o}=a,u;s&&(u=qt.changeFilterIndexesToColumnNames(i,s));var d;return o&&(d=qt.changeFilterIndexesToColumnNames(i,o)),{irisGridState:Nr(Nr({},a),{},{advancedFilters:u,quickFilters:d}),gridState:Nr({},l)}}handleGetFilterState(){return this.getFilterState()}handleChange(e){var{isValueShown:t,selectedId:r}=e;Oe.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;Oe.debug("Apply filters from filter set",e),r.forEach(a=>{var{panelId:l,type:s,state:o}=a;if(l==null){Oe.debug("panel is null",l);return}if(!t.has(l)){Oe.debug("Ignore closed panel",l);return}Oe.debug("Apply panel filters",l,s,o);var u=t.get(l);switch(s){case $.getComponentName(Ut):this.restoreIrisGridFilters(u,o,i);break;case $.getComponentName(Vt):case $.getComponentName(yt):this.restoreInputFilterState(u,o);break}})}handleSetsUpdate(e){var{setDashboardFilterSets:t,localDashboardId:r}=this.props;Oe.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){Oe.error("Panel Id is null.");return}var h=u.get(d);if(h==null){Oe.error("Unable to get table for panel ".concat(d,"."));return}Oe.debug("restoreIrisGridFilters",d,t,r),r?e.setStateOverrides(t):e.setFilters({quickFilters:o,advancedFilters:s})}restoreInputFilterState(e,t){var r=Nr({},t);delete r.isValueShown,Oe.debug("restoreInputFilterState",e,r),e&&sc(e)&&e.setPanelState(r)}render(){var{glContainer:e,glEventHub:t,filterSets:r}=this.props,{isValueShown:i,selectedId:a}=this.state;return f.jsx(Kt,{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(fr,{onChange:this.handleChange,onApply:this.handleFilterApply,onUpdateSets:this.handleSetsUpdate,isValueShown:i,filterSets:r,selectedId:a,getFilterState:this.handleGetFilterState})})})}}Wn(qt,"defaultProps",{panelState:null});Wn(qt,"COMPONENT","FilterSetManagerPanel");var oc=(n,e)=>{var{localDashboardId:t}=e;return{filterSets:Ga(n,t),dashboardOpenedPanelMap:$a(n,t),dashboardInputFilters:Ur(n,t),panelTableMap:Hr(n,t)}},Ar=wt(oc,{setDashboardFilterSets:wl},null,{forwardRef:!0})(qt);function uc(n,e,t){return e=dc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dc(n){var e=hc(n,"string");return typeof e=="symbol"?e:String(e)}function hc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 O.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:Me("text-muted","edit-hint",{viewing:e===void 0||!e}),children:f.jsxs("span",{children:["double-click to edit ",f.jsx(Fe,{icon:el})]})}),t]})}}uc(Ml,"defaultProps",{isEditing:!1});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)}var pc=Q.module("MarkdownStartPage");class Rl extends O.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(pc.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(Y,{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(Y,{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(Fe,{icon:zr})})]},l.id)),f.jsxs(vo,{isOpen:i,toggle:this.handleDeleteModalClose,className:"modal-dialog-centered markdown-delete-modal",children:[f.jsx(fo,{children:"Are you sure you want to permanently delete this note?"}),f.jsx(po,{children:"You can't undo this action."}),f.jsxs(js,{children:[f.jsx(Y,{kind:"secondary",onClick:this.handleDeleteModalClose,children:"Cancel"}),f.jsx(Y,{kind:"danger",onClick:()=>{this.handleDeleteMarkdown(a)},children:"Delete"})]})]})]})]})})}}cc(Rl,"defaultProps",{closedMarkdowns:[],onOpen:()=>{},onCreate:()=>{},onDelete:()=>{}});function zn(n,e,t){return e=mc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mc(n){var e=gc(n,"string");return typeof e=="symbol"?e:String(e)}function gc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class lt{static getNewMarkdownTitle(e){for(var t="".concat(lt.DEFAULT_TITLE),r=0;e.indexOf(t)>=0;)r+=1,t="".concat(lt.DEFAULT_TITLE,"-").concat(r);return t}}zn(lt,"DEFAULT_TITLE","Note");zn(lt,"DEFAULT_CONTENT",`# Markdown Note
|
|
10
10
|
|
|
11
|
-
This note can be edited using **markdown** for styling.`);Wn(lt,"getClosedMarkdowns",B(n=>n.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function ur(n,e,t){return e=gc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gc(n){var e=bc(n,"string");return typeof e=="symbol"?e:String(e)}function bc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cc=O.lazy(()=>$r(()=>import("./MarkdownEditor-DULzjNTi.js"),__vite__mapDeps([17,1,2,3,8,4,5,9]),import.meta.url)),Fr=J.module("MarkdownPanel");class zn extends O.Component{constructor(e){super(e),ur(this,"markdownEditor",void 0),ur(this,"editor",void 0),ur(this,"getClosedMarkdowns",B(lt.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=lt.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){I(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){Fr.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Fr.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Fr.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=$.getComponentConfigFromContainer(t);r.emit(Ae.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Ae.DELETE,e)}handleEditorBlur(e){var t;Fr.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(Kt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?f.jsx(Fl,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):f.jsx(Nl,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:f.jsx(O.Suspense,{fallback:f.jsx(ft,{}),children:f.jsx(Cc,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??lt.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}ur(zn,"defaultProps",{panelState:null});ur(zn,"COMPONENT","MarkdownPanel");var Sc=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:_s(n,t)}},sr=wt(Sc,null,null,{forwardRef:!0})(zn);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 Mr(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 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 je(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){Ne(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 Ne(n,e,t){return e=Ec(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ec(n){var e=yc(n,"string");return typeof e=="symbol"?e:String(e)}function yc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var wc=O.lazy(()=>$r(()=>import("./MarkdownNotebook--UIGvqLT.js"),__vite__mapDeps([18,1,2,3,4,5,8,9,19]),import.meta.url)),te=J.module("NotebookPanel"),Ji=400;class Pe extends O.Component{static handleError(e){xe.isCanceled(e)||te.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=Ve.getExtension(e).toLowerCase();switch(t){case"py":case"python":return"python";case"groovy":return"groovy";case"scala":return"scala";default:return null}}constructor(e){super(e),Ne(this,"pending",void 0),Ne(this,"debouncedSavePanelState",void 0),Ne(this,"debouncedLoad",void 0),Ne(this,"notebook",void 0),Ne(this,"tabTitleElement",void 0),Ne(this,"tabInitOnce",void 0),Ne(this,"editor",void 0),Ne(this,"getSettings",B((c,v)=>je(je({},c),{},{minimap:{enabled:v}}))),Ne(this,"getOverflowActions",B((c,v,g)=>{var p=[{title:"Find",icon:go,action:this.handleFind,group:He.groups.high,shortcut:ht.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:Za,action:this.handleCopy,group:He.groups.medium,order:20},{title:"Rename File",icon:bo,action:this.handleShowRename,group:He.groups.medium,order:30},{title:"Delete File",icon:zr,action:this.handleDelete,group:He.groups.medium,order:40},{title:"Show Minimap",icon:c?sn:void 0,action:this.handleMinimapChange,group:He.groups.low,shortcut:ht.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?sn:void 0,action:this.handleWordWrapChange,group:He.groups.low,shortcut:ht.NOTEBOOK.WORDWRAP,order:30}];return this.canFormat()&&(p.push({title:"Format Document",action:this.handleFormat,group:He.groups.low,order:10}),p.push({title:"Format on Save",icon:g?sn:void 0,action:this.handleFormatOnSaveChange,group:He.groups.low,order:15})),p})),this.handleCloseCancel=this.handleCloseCancel.bind(this),this.handleCloseDiscard=this.handleCloseDiscard.bind(this),this.handleCloseSave=this.handleCloseSave.bind(this),this.handleCopy=this.handleCopy.bind(this),this.handleDelete=this.handleDelete.bind(this),this.handleDeleteConfirm=this.handleDeleteConfirm.bind(this),this.handleDeleteCancel=this.handleDeleteCancel.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleEditorChange=this.handleEditorChange.bind(this),this.handleFind=this.handleFind.bind(this),this.handleMinimapChange=this.handleMinimapChange.bind(this),this.handleWordWrapChange=this.handleWordWrapChange.bind(this),this.handleFormatOnSaveChange=this.handleFormatOnSaveChange.bind(this),this.handleLinkClick=this.handleLinkClick.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.handleRenameFile=this.handleRenameFile.bind(this),this.handleResize=this.handleResize.bind(this),this.handleRunCommand=this.handleRunCommand.bind(this),this.handleRunAll=this.handleRunAll.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.handleSave=this.handleSave.bind(this),this.handleSaveAsCancel=this.handleSaveAsCancel.bind(this),this.handleSaveAsSubmit=this.handleSaveAsSubmit.bind(this),this.handleSaveError=this.handleSaveError.bind(this),this.handleSaveSuccess=this.handleSaveSuccess.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleShowRename=this.handleShowRename.bind(this),this.handleTab=this.handleTab.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabClick=this.handleTabClick.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleTransformLinkUri=this.handleTransformLinkUri.bind(this),this.handleOverwrite=this.handleOverwrite.bind(this),this.handlePreviewPromotion=this.handlePreviewPromotion.bind(this),this.handleFormat=this.handleFormat.bind(this),this.canFormat=this.canFormat.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new Rn,this.debouncedSavePanelState=vt(this.savePanelState.bind(this),Ji),this.debouncedLoad=vt(this.load.bind(this),Ji),this.notebook=null,this.tabTitleElement=null,this.tabInitOnce=!1;var{isDashboardActive:t,session:r,sessionLanguage:i,panelState:a}=e,l={value:"",language:"",wordWrap:"off"},s=null,{isPreview:o}=e;a!=null&&({fileMetadata:s=s,isPreview:o=o,settings:l=l}=a);var u=s!=null&&Ve.hasPath(s.itemName),d=u===!0&&l.value!=null||!u&&l.value!=null&&l.value.length>0,h=d?1:0;this.state={error:void 0,isDashboardActive:t,isLoading:!0,isLoaded:!1,isPreview:o,savedChangeCount:0,changeCount:h,fileMetadata:s,settings:l,session:r,sessionLanguage:i,panelState:{fileMetadata:s,settings:l},showCloseModal:!1,showDeleteModal:!1,showSaveAsModal:!1,scriptCode:"",formatOnSave:!1},te.debug("constructor",e,this.state)}componentDidMount(){var{glContainer:e,glEventHub:t}=this.props,{tab:r}=e;r!=null&&this.initTab(r),this.initNotebookContent(),t.on(se.RENAME_FILE,this.handleRenameFile),t.on(Ae.DROPPED,this.handlePanelDropped),e.on(se.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{notebookSettings:l}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.notebookSettings.isMinimapEnabled&&this.updateEditorMinimap()}componentWillUnmount(){this.debouncedSavePanelState.flush(),this.pending.cancel();var{glEventHub:e,glContainer:t}=this.props,{fileMetadata:r,isPreview:i}=this.state;e.off(se.RENAME_FILE,this.handleRenameFile),e.off(Ae.DROPPED,this.handlePanelDropped),t.off(se.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(se.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);I(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r==null||r.classList.add("notebook-title"),this.setPreviewStatus()}getNotebookValue(){var{changeCount:e,savedChangeCount:t,settings:r}=this.state,{value:i}=r;if(e!==t&&this.notebook){var a=this.notebook.getValue();return a??i}return i}initNotebookContent(){var{fileMetadata:e,settings:t,isPreview:r}=this.state;if(e&&e.id){te.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){te.debug("Use content passed in the settings prop"),this.handleLoadSuccess();return}this.handleLoadError(new Error("Missing file metadata"))}closeFileTabById(e){var{glEventHub:t}=this.props;t.emit(se.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(se.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(se.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;I(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;te.debug("Loaded file",a);var{filename:s}=a,{itemName:o}=this.state;if(s!==o){var{metadata:u}=this.props,{id:d}=u;this.renameTab(d,Ve.getBaseName(s))}var h=je(je({},t),{},{language:(l=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&&Ve.hasPath(e.itemName)){var t=this.getNotebookValue();return t!==void 0?(this.saveContent(e.itemName,t),!0):!1}return this.setState({showSaveAsModal:!0}),!1}saveContent(e,t){te.debug("saveContent",e,t),this.updateSavedChangeCount();var{fileStorage:r}=this.props;this.pending.add(r.saveFile({filename:e,content:t,basename:e})).then(this.handleSaveSuccess).catch(this.handleSaveError)}updateSavedChangeCount(){this.setState(e=>{var{changeCount:t}=e;return{savedChangeCount:t}})}setPreviewStatus(){if(this.tabTitleElement){var{isPreview:e}=this.state;te.debug("setPreviewStatus",this.tabTitleElement,e),e?this.tabTitleElement.classList.add("is-preview"):this.tabTitleElement.classList.remove("is-preview")}}handlePreviewPromotion(){this.removePreviewStatus()}savePanelState(){this.setState(e=>{var{changeCount:t,savedChangeCount:r,fileMetadata:i,isPreview:a,settings:l}=e,s=this.getNotebookValue(),o=t!==r?s:void 0,u=je(je({},l),{},{value:s}),d=je(je({},l),{},{value:o}),h={settings:d,fileMetadata:i,isPreview:a};return te.debug("Saving panel state",h),{settings:u,panelState:h}})}handleCloseDiscard(){this.setState({showCloseModal:!1});var{glContainer:e}=this.props;e.close({force:!0})}handleCloseSave(){if(this.setState({showCloseModal:!1}),this.save()){var{glContainer:e}=this.props;e.close({force:!0})}}handleCloseCancel(){this.setState({showCloseModal:!1})}handleOverwrite(e){var{glEventHub:t}=this.props;t.emit(se.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return Mr(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;I(a);var{language:s}=l,{itemName:o}=a,u=yield Ve.getUniqueCopyFileName(t,o);te.debug("handleCopy",a,o,u),yield t.copyFile(o,u);var d={id:u,itemName:u},h={value:null,language:s};r.emit(se.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){te.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return Mr(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;te.debug("handleDeleteConfirm",a==null?void 0:a.itemName),e.setState({showDeleteModal:!1}),a&&(Ve.hasPath(a.itemName)&&(yield Ve.fileExists(t,a.itemName))?(i.emit(se.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):r.close({force:!0}))})()}handleDeleteCancel(){this.setState({showDeleteModal:!1})}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){te.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:r-1,savedChangeCount:i}:!l&&r<i?{changeCount:r+1,savedChangeCount:0}:{changeCount:r+1,savedChangeCount:i}}),this.debouncedSavePanelState()}handleFind(){this.notebook&&this.notebook.toggleFind()}updateEditorMinimap(){if(this.editor){var{notebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{notebookSettings:t,updateNotebookSettings:r}=this.props,i={isMinimapEnabled:!((e=t.isMinimapEnabled)!==null&&e!==void 0&&e)};r(i)}updateEditorWordWrap(){if(this.editor){var{settings:e}=this.state,{wordWrap:t}=e;this.editor.updateOptions({wordWrap:t})}}handleWordWrapChange(){this.editor&&this.setState(e=>{var{settings:t}=e,r=t.wordWrap==="on"?"off":"on";return{settings:je(je({},t),{},{wordWrap:r})}})}handleFormatOnSaveChange(){var e,{notebookSettings:t,updateNotebookSettings:r}=this.props,i={formatOnSave:!((e=t.formatOnSave)!==null&&e!==void 0&&e)};r(i)}handleLinkClick(e){var{notebooksUrl:t,session:r,sessionLanguage:i}=this.props,{href:a}=e.currentTarget;if(!(!a||!a.startsWith(t))){e.stopPropagation(),e.preventDefault();var l="/".concat(a.substring(t.length)).replace(/%20/g," ");if(l==="/"){te.debug("Ignoring invalid notebook link",l);return}te.debug("Notebook link clicked, opening",l);var{glEventHub:s}=this.props,o={value:null,language:i},u={id:l,itemName:l};s.emit(se.SELECT_NOTEBOOK,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.")),te.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){var e=this;return Mr(function*(){te.debug("handleSave");var{notebookSettings:t}=e.props,{formatOnSave:r=!1}=t;r&&(yield e.handleFormat()),e.save()})()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=Pe.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(l=>{var{fileMetadata:s}=l,o=je(je({},l.settings),{},{language:a});return te.debug("handleSaveSuccess",i,s,o),s&&Ve.hasPath(s.itemName)&&s.itemName!==i.itemName&&(te.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Pe.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){xe.isCanceled(e)||(this.setState({savedChangeCount:0}),te.error(e))}handleSaveAsCancel(){this.setState({showSaveAsModal:!1})}handleSaveAsSubmit(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r&&this.handleOverwrite(e),te.debug("handleSaveAsSubmit",e);var{fileMetadata:i}=this.state;if(i){var{itemName:a}=i,l=(t=this.getNotebookValue())!==null&&t!==void 0?t:"";if(this.setState({showSaveAsModal:!1}),Ve.getBaseName(a)!==Ve.getBaseName(e)){var{metadata:s}=this.props,{id:o}=s;this.renameTab(o,Ve.getBaseName(e))}this.saveContent(e,l)}}canFormat(){var e;return((e=this.notebook)===null||e===void 0?void 0:e.editor)!=null?ct.canFormat(this.notebook.editor):!1}handleFormat(){var e=this;return Mr(function*(){var t;((t=e.notebook)===null||t===void 0?void 0:t.editor)!=null&&(yield ct.formatDocument(e.notebook.editor))})()}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){l.close();return}i&&i.id===e&&(this.setState({fileMetadata:{id:t,itemName:t}}),this.debouncedSavePanelState())}handleResize(){var e;(e=this.notebook)===null||e===void 0||e.updateDimensions()}handleRunCommand(e){this.runCommand(e)}handleRunAll(){var e;if(!this.notebook){te.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){te.error("Editor is not initialized.");return}this.runCommand(this.notebook.getSelectedCommand())}handleSessionOpened(e,t){var{language:r}=t;this.setState({session:e,sessionLanguage:r})}handleSessionClosed(){this.setState({session:void 0,sessionLanguage:void 0})}handleShow(){var e;te.debug("handleShow"),(e=this.notebook)===null||e===void 0||e.updateDimensions()}handlePanelDropped(e){var{metadata:{id:t}}=this.props;e===t&&this.forceUpdate()}handleShowRename(){this.setState({showSaveAsModal:!0})}handleTab(e){te.debug("NotebookPanel tab event",e),this.initTab(e)}handleTabFocus(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];te.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){te.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){te.debug("handle NotebookPanel tab click"),this.focus(),e.detail===2&&this.removePreviewStatus()}handleTransformLinkUri(e){var{notebooksUrl:t}=this.props,{fileMetadata:r}=this.state;if(e.endsWith("/"))return e;if(e.startsWith("/"))return"".concat(t).concat(e.substring(1));var i=r==null?void 0:r.itemName;if(i===void 0)return e;i.charAt(0)==="/"&&(i=i.substring(1));var a=new URL(i,t);return new URL(e,a).href}focus(){requestAnimationFrame(()=>{this.notebook&&this.notebook.focus()})}createNotebook(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{glEventHub:i}=this.props,{session:a,sessionLanguage:l,settings:s}=this.state,o=je(je({},s),{},{language:t,value:r}),u={id:null,itemName:e};te.debug("handleCreateNotebook",a,l,o,u),i.emit(se.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){te.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(_r.SEND_COMMAND,e,!1,!0)}removePreviewStatus(){this.setState(e=>{var{isPreview:t}=e;if(t){var{fileMetadata:r}=this.state;return r&&this.registerFileMetadata(r,!1),{isPreview:!1}}return null})}getDropdownOverflowActions(){var{notebookSettings:e}=this.props,{isMinimapEnabled:t,formatOnSave:r}=e,{settings:i}=this.state;return this.getOverflowActions(t??!1,this.getSettings(i,t??!1).wordWrap==="on",r??!1)}render(){var e,t,r,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,notebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:p,fileMetadata:m,session:b,sessionLanguage:E,settings:C,showCloseModal:y,showDeleteModal:w,showSaveAsModal:T}=this.state,F=c&&!a.isHidden&&!p,N=(e=m==null?void 0:m.itemName)!==null&&e!==void 0?e:Pe.DEFAULT_NAME,P=N.endsWith(".md"),_=(m==null?void 0:m.id)!=null,A=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),x=b!=null,V=E===A.language,U=!v||!x||!V,K=!v,ne=[{action:this.handleSave,shortcut:gn.SAVE},{action:this.handleMinimapChange,shortcut:ht.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ht.NOTEBOOK.WORDWRAP}],le=Dn.getDisabledRunTooltip(x,V,"Notebook extension","Run"),ve=Dn.getDisabledRunTooltip(x,V,"Notebook extension","Run Selected"),fe=[{title:_?"Rename":"Save As…",order:10,group:He.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:He.groups.high,order:20}],Ie=l==null?void 0:l.element.find(".lm_title_before").get(0);return f.jsxs(f.Fragment,{children:[Ie!=null&&gs.createPortal(f.jsx("span",{className:Me(Pe.UNSAVED_INDICATOR_CLASS_NAME,{[Pe.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),Ie),f.jsxs(Kt,{className:"notebook-container",componentPanel:this,glContainer:a,glEventHub:s,onTab:this.handleTab,onResize:this.handleResize,onShow:this.handleShow,onTabClicked:this.handleTabClick,onTabFocus:this.handleTabFocus,onTabBlur:this.handleTabBlur,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,additionalActions:fe,renderTabTooltip:()=>N,children:[!P&&f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"notebook-toolbar",children:[f.jsxs("span",{children:[f.jsx(Y,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:U,icon:f.jsx(Fe,{icon:fo,transform:"grow-4"}),tooltip:"Run ".concat(ht.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),le!=null&&f.jsx(bn,{children:le})]}),f.jsxs("span",{children:[f.jsx(Y,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:U,icon:f.jsx(Fe,{icon:po,transform:"grow-4"}),tooltip:"Run Selected ".concat(ht.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),ve!=null&&f.jsx(bn,{children:ve})]}),f.jsx(Y,{kind:"ghost",className:"mr-auto",disabled:K,onClick:this.handleSave,icon:Qa,tooltip:"Save ".concat(gn.SAVE.getDisplayText()),"aria-label":"Save"}),f.jsx(Y,{kind:"ghost",className:"btn-overflow",disabled:K,icon:mo,tooltip:"More Actions...",onClick:()=>{},children:f.jsx(Ga,{actions:this.getDropdownOverflowActions,popperOptions:Pe.POPPER_OPTIONS})})]}),f.jsx(cl,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:E,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:A,focusOnMount:F,ref:R=>{this.notebook=R}})]}),P&&f.jsx(O.Suspense,{fallback:f.jsx(ft,{}),children:f.jsx(wc,{content:(r=A.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),f.jsx(Vs,{isOpen:T,type:"file",defaultValue:N,title:_?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),f.jsx(ri,{isOpen:w,headerText:'Are you sure you want to delete "'.concat(N,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),f.jsx(ri,{isOpen:y,headerText:"Do you want to save the changes you made to ".concat(N,"?"),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(He,{actions:ne})]})]})}}Ne(Pe,"COMPONENT","NotebookPanel");Ne(Pe,"POPPER_OPTIONS",{placement:"bottom-end"});Ne(Pe,"DEFAULT_NAME","Untitled");Ne(Pe,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");Ne(Pe,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");Ne(Pe,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,notebookSettings:{isMinimapEnabled:!0}});var Tc=(n,e)=>{var t=$s(n),r=Ba(n),i=Ua(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,notebookSettings:r,session:a,sessionLanguage:s}},Et=wt(Tc,{updateNotebookSettings:js},null,{forwardRef:!0})(Pe);function Ml(n){var{onClick:e}=n,t=O.useRef(null),r=O.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return f.jsxs(Y,{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(Fe,{icon:el,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}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 ta(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){Jr(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 Jr(n,e,t){return e=Pc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pc(n){var e=Dc(n,"string");return typeof e=="symbol"?e:String(e)}function Dc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class en extends O.Component{constructor(e){super(e),Jr(this,"irisGridRef",void 0),this.irisGridRef=Re.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(Wt,ta(ta({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:f.jsx(Ml,{onClick:this.handleReload})}))}}Jr(en,"defaultProps",{panelState:null});Jr(en,"COMPONENT","PandasPanel");function ra(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function na(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){ra(a,r,i,l,s,"next",o)}function s(o){ra(a,r,i,l,s,"throw",o)}l(void 0)})}}function ia(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=Nc(n,"string");return typeof e=="symbol"?e:String(e)}function Nc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Fc{constructor(e){ia(this,"items",void 0),ia(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];ni(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];ni(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return na(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return na(function*(){var r,i=yield t.getViewportData();(r=t.onUpdateCallback)===null||r===void 0||r.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function aa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function tr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){aa(a,r,i,l,s,"next",o)}function s(o){aa(a,r,i,l,s,"throw",o)}l(void 0)})}}function Mc(n,e,t){return e=Rc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rc(n){var e=Ic(n,"string");return typeof e=="symbol"?e:String(e)}function Ic(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lc{constructor(e){Mc(this,"items",void 0),this.items=e}getTable(){var e=this;return tr(function*(){return new Fc(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return tr(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return tr(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return tr(function*(){for(var i=0;i<r.items.length;i+=1)if(r.items[i].filename===e){r.items[i].filename=t,r.items[i].basename=Ve.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return tr(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new Hs;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.")}}function la(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Vr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?la(Object(t),!0).forEach(function(r){Ac(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):la(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ac(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=kc(n,"string");return typeof e=="symbol"?e:String(e)}function kc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 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 Rl(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 _c(n,e,t,r){return Nn.apply(this,arguments)}function Nn(){return Nn=Rl(function*(n,e,t,r){var i={},a="",l={};if(jt(e)&&(i=e.settings,a=e.table,l=e.tableSettings),r!=null&&(r.tableSettings!=null&&(l=r.tableSettings),r.table!=null&&(a=r.table),r.settings!=null&&(i=Vr(Vr({},i),r.settings))),a!=null&&a!==""){var s=yield t();return new G(n).applyTableSettings(s,l,Wa(rl.getState())),Gt.makeModelFromSettings(n,i,s)}var o=yield t();return Gt.makeModel(n,i,o)}),Nn.apply(this,arguments)}var qn=O.forwardRef((n,e)=>{var t=Pl(n)?n.panelState:void 0,{fetch:r,metadata:i,localDashboardId:a}=n;I(i);var[l,s]=jo(i),o=O.useCallback(Rl(function*(){if(s!=null)throw s;return l==null?new Promise(()=>{}):_c(l,i,r,t)}),[l,s,i,r,t]);return f.jsx(gr,Vr(Vr({ref:e},n),{},{metadata:i,localDashboardId:a,makeModel:o}))});qn.displayName="ChartPanelPlugin";function oa(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 jc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){oa(a,r,i,l,s,"next",o)}function s(o){oa(a,r,i,l,s,"throw",o)}l(void 0)})}}function Il(n){var e=An(),[t,r]=O.useState(),{fetch:i}=n;return O.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=jc(function*(){var o=yield i(),u=yield Gt.makeModel(e,void 0,o);a||r(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?f.jsx(sl,{model:t}):null}var Vc={name:"ChartPanel",title:"Chart",type:Pt.WIDGET_PLUGIN,component:Il,panelComponent:qn,supportedTypes:"Figure",icon:Co};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 $c(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 Ll(n){Xt(n);var{id:e,layout:t}=n,r=O.useCallback(i=>{var{metadata:a,panelId:l=ze(),table:s}=i,{settings:o}=a,u=function(){var v=$c(function*(){return s});return function(){return v.apply(this,arguments)}}(),d=M.titleFromSettings(o),h={type:"react-component",component:gr.COMPONENT,props:{localDashboardId:e,id:l,metadata:a,fetch:u},title:d,id:l},{root:c}=t;$.openComponent({root:c,config:h})},[e,t]);return ge(t.eventHub,Ee.CREATE_CHART,r),null}var Hc={name:"ChartBuilderPlugin",type:Pt.DASHBOARD_PLUGIN,component:Ll};function Al(){var{python:{linter:n={}}={}}=Gs(Ba),{isEnabled:e=!1,config:t}=n;O.useEffect(function(){mn.isRuffEnabled=e,mn.setRuffSettings(t)},[e,t])}function da(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ha(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?da(Object(t),!0).forEach(function(r){Gc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):da(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Gc(n,e,t){return e=Bc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bc(n){var e=Uc(n,"string");return typeof e=="symbol"?e:String(e)}function Uc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pe=J.module("ConsolePlugin");function ca(n){return n.notebook!==void 0}function Wc(n){Xt(n)}function zc(n){Wc(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:l}=n,s=O.useRef(0),[o,u]=O.useState(new Map),[d,h]=O.useState(new Map);Al();var c=xa(),v=O.useCallback(()=>i.getLastUsedPanelOfType(Lr),[i]),g=O.useCallback((R,L)=>{u(j=>new Map(j.set(R,L)))},[u]),p=O.useCallback(R=>{u(L=>(L.delete(R),new Map(L)))},[u]),m=O.useCallback((R,L)=>{h(j=>new Map(j.set(R,L)))},[h]),b=O.useCallback(R=>{h(L=>(L.delete(R),new Map(L)))},[h]),E=O.useCallback(function(R){var L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,W=R&&R.trim();if(!W)pe.info("Ignoring empty code");else{var q=v();if(!q||!(q instanceof Lr.WrappedComponent)){pe.error("Console panel not found");return}pe.debug("Send command: ",R,L,j),q.addCommand(R,L,j)}},[v]),C=O.useCallback(R=>{c(Sl(e,R))},[c,e]),y=O.useCallback(R=>{var{language:L}=R,j=L==="python"?"py":L,W=null;return j==null?(pe.debug("No extension for language",L),W="Untitled-".concat(s.current)):W="Untitled-".concat(s.current,".").concat(j),s.current+=1,W},[]),w=O.useCallback(function(R){var L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:j}=R;if(j!=null&&o.has(j))return o.get(j);if(j!=null&&d.has(j))return d.get(j);if(L)return ze()},[o,d]),T=O.useCallback((R,L)=>{$.renameComponent(r.root,{id:R},L)},[r.root]),F=O.useCallback((R,L)=>{pe.debug("Rename file panel",R,L);var j;if(o.has(R)&&(j=o.get(R),p(R),j!=null&&g(L,j)),d.has(R)&&(j=d.get(R),b(R),j!=null&&m(L,j)),j===void 0){pe.debug2("File ".concat(R," isn't open, no need to rename the tab"));return}T(j,Ve.getBaseName(L))},[o,d,T,g,m,p,b]),N=O.useCallback(R=>{var L=w(R,!1);if(L==null){pe.error("Could not find panel id for file metadata",R);return}$.activateTab(r.root,{id:L})},[w,r.root]),P=O.useCallback((R,L,j)=>{if(pe.debug("registerFilePanel",R,L,j),L==null||L.id==null){pe.debug("Ignore empty file id",L);return}var{id:W}=L;if(j){m(W,R);return}if(o.has(W)){var q=o.get(W);if(R===q){pe.debug("Update tab title for file ".concat(W));var{itemName:Se}=L;F(W,Se)}else pe.error("File ".concat(W," already associated with a different tab ").concat(q));return}g(W,R),d.has(W)&&b(W)},[o,d,F,g,m,b]),_=O.useCallback((R,L)=>{if(pe.debug("unregisterFileTab",R,L),R==null||R.id==null){pe.debug("Ignore empty file id",R);return}var{id:j}=R;if(L){b(j);return}p(j)},[p,b]),A=O.useCallback((R,L)=>{pe.debug("closeFilePanel",R);var{id:j}=R,W=null,q=!1;if(o.has(j))W=o.get(j);else if(d.has(j))W=d.get(j),q=!0;else{pe.debug("File ".concat(j," isn't open, ignore close event"));return}_(R,q),$.closeComponent(r.root,{id:W},L)},[r.root,o,d,_]),x=O.useCallback(R=>{var{itemName:L}=R;return Ve.getBaseName(L)},[]),V=O.useCallback(R=>{var{id:L}=R;return pe.debug("fileIsOpen",R,L,o),L!=null&&o.has(L)},[o]),U=O.useCallback(R=>{var{id:L}=R;return pe.debug("fileIsOpenAsPreview",R,L,d),L!=null&&d.has(L)},[d]),K=O.useCallback(R=>{if(R!=null){var L=i.getOpenedPanelById(R);L&&ca(L)&&L.focus()}},[i]),ne=O.useCallback(R=>{var{id:L,settings:j,fileMetadata:W,session:q,sessionLanguage:Se,isPreview:ye=!1}=R,ke={settings:j,fileMetadata:W},Ke=x(W);return{type:"react-component",component:Et.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:L},session:q,sessionLanguage:Se,panelState:ke,isPreview:ye,notebooksUrl:l},title:Ke,id:L}},[x,e,l]),le=O.useCallback(function(R,L,j){var W=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:y(j)},q=w(W);if(V(W)&&q!=null){pe.debug("File is already open, focus panel"),N(W),K(q);return}var Se=$.getStackForComponentTypes(r.root,[Et.COMPONENT]),ye=ne({id:q,settings:j,fileMetadata:W,session:R,sessionLanguage:L});pe.debug("createNotebook",ye,o),$.openComponentInStack(Se,ye)},[V,K,y,w,r.root,ne,o,N]),ve=O.useCallback(function(R,L,j,W){var q=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;pe.debug("selectNotebook",W,q);var Se=V(W),ye=U(W),[ke]=[...d.values()],Ke=!q,Xe=Ke&&ke?ke:w(W);if(Xe==null||Xe==="")throw new Error("Unable to retrieve or create panelId for metadata",W);if(Se||ye)N(W);else{var rn=$.getStackForComponentTypes(r.root,[Et.COMPONENT]),nn=ne({id:Xe,settings:j,fileMetadata:W,session:R,sessionLanguage:L,isPreview:Ke});$.openComponentInStack(rn,nn)}if(ye&&q){var Cr=W.id,an=$.getStackForConfig(r.root,{component:Et.COMPONENT,id:Xe}),Zt=$.getContentItemInStack(an,{component:Et.COMPONENT,id:Xe});Zt&&Bs(Zt)&&(Zt.container.emit(se.PROMOTE_FROM_PREVIEW),b(Cr),g(Cr,Xe))}q&&K(Xe)},[N,V,U,K,w,r.root,ne,d,b,g]),fe=O.useCallback(function(R,L){var j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},W=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,q=i.getLastUsedPanelOfType(Et);q&&ca(q)?j!=null&&j.value!=null&&q.notebook!=null&&q.notebook.append(j.value):W&&le(R,L,j)},[le,i]),Ie=O.useCallback((R,L)=>Us.hydrate(ha(ha({},R),{},{notebooksUrl:l}),L),[l]);return Jt(a,Lr,t),Jt(a,za),Jt(a,qa),Jt(a,Ka),Jt(a,Et,Ie),ge(r.eventHub,_r.SEND_COMMAND,E),ge(r.eventHub,_r.SETTINGS_CHANGED,C),ge(r.eventHub,se.CLOSE_FILE,A),ge(r.eventHub,se.CREATE_NOTEBOOK,le),ge(r.eventHub,se.SELECT_NOTEBOOK,ve),ge(r.eventHub,se.RENAME,T),ge(r.eventHub,se.RENAME_FILE,F),ge(r.eventHub,se.SEND_TO_NOTEBOOK,fe),ge(r.eventHub,se.REGISTER_FILE,P),ge(r.eventHub,se.UNREGISTER_FILE,_),null}var rr=J.module("FilterPlugin");function va(n,e){return n.concat(e)}function xl(n){Xt(n);var{id:e,layout:t,registerComponent:r}=n,i=xa(),[a]=O.useState(()=>new Map),[l]=O.useState(()=>new Map),[s]=O.useState(()=>new Map),o=O.useCallback(()=>{var m=Array.from(a.values()).reduce(va,[]).sort((C,y)=>{var w=Ye.toLower(C.name),T=Ye.toLower(y.name);if(w!==T)return w>T?1:-1;var F=Ye.toLower(C.type),N=Ye.toLower(y.type);return F!==N?F>N?1:-1:0}).reduce((C,y)=>((C.length===0||Ye.toLower(C[C.length-1].name)!==Ye.toLower(y.name)||Ye.toLower(C[C.length-1].type)!==Ye.toLower(y.type))&&C.push(y),C),[]),b=Array.from(l.values()).reduce(va,[]).sort((C,y)=>C.timestamp-y.timestamp),E=new Map(s);rr.debug("sendUpdate",{columns:m,filters:b,tableMap:E}),i(Tt(e,{columns:m,filters:b,tableMap:E}))},[i,e,a,l,s]),u=O.useCallback((m,b)=>{rr.debug2("handleColumnsChanged",m,b),a.set(m,[].concat(b)),o()},[a,o]),d=O.useCallback((m,b)=>{rr.debug2("handleFiltersChanged",m,b),l.set(m,[].concat(b)),o()},[l,o]),h=O.useCallback((m,b)=>{rr.debug2("handleTableChanged",m,b),s.set($.getIdFromPanel(m),b),o()},[s,o]),c=O.useCallback(m=>{rr.debug2("handlePanelUnmount",m),a.delete(m),l.delete(m),s.delete($.getIdFromPanel(m)),o()},[a,l,s,o]),v=O.useCallback(m=>{var{title:b="DropdownFilter",metadata:E={},panelState:C=null,id:y=ze(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=null}=m,N={type:"react-component",component:yt.COMPONENT,props:{id:y,metadata:E,panelState:C,localDashboardId:e},title:b,id:y},{root:P}=t;$.openComponent({root:P,config:N,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]),g=O.useCallback(m=>{var{title:b="InputFilter",metadata:E={},panelState:C=null,id:y=ze(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=void 0}=m,N={type:"react-component",component:Vt.COMPONENT,props:{id:y,metadata:E,panelState:C,localDashboardId:e},title:b,id:y},{root:P}=t;$.openComponent({root:P,config:N,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]),p=O.useCallback(m=>{var{title:b="FilterSets",metadata:E={},panelState:C=null,id:y=ze(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=null}=m,N={type:"react-component",component:Ar.COMPONENT,props:{id:y,metadata:E,panelState:C,localDashboardId:e},title:b,id:y},{root:P}=t;$.openComponent({root:P,config:N,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]);return O.useEffect(function(){var b=[r(yt.COMPONENT,yt),r(Vt.COMPONENT,Vt),r(Ar.COMPONENT,Ar)];return()=>{b.forEach(E=>E())}},[r]),ge(t.eventHub,Ce.COLUMNS_CHANGED,u),ge(t.eventHub,Ce.FILTERS_CHANGED,d),ge(t.eventHub,Ce.TABLE_CHANGED,h),ge(t.eventHub,Ce.OPEN_DROPDOWN,v),ge(t.eventHub,Ce.OPEN_INPUT,g),ge(t.eventHub,Ce.OPEN_FILTER_SET_MANAGER,p),ge(t.eventHub,Ae.UNMOUNT,c),null}var qc={name:"FilterPlugin",type:Pt.DASHBOARD_PLUGIN,component:xl},Kc=J.module("@deephaven/app-utils/useTablePlugin");function kl(){var n=Xa(),e=O.useCallback(t=>{var r=n.get(t);if(r!=null){if(Ws(r))return r.component;if(zs(r))return r.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Kc.error(i),new Error(i)},[n]);return e}function fa(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function Xc(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){fa(a,r,i,l,s,"next",o)}function s(o){fa(a,r,i,l,s,"throw",o)}l(void 0)})}}function _l(n,e,t){var r=An(),i=kl(),a=O.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Xc(function*(){var o=yield n();return vl.makeModel(r,o)});function s(){return l.apply(this,arguments)}return s}(),metadata:t}),[r,n,e,i,t]);return a}function pa(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ma(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?pa(Object(t),!0).forEach(function(r){Yc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):pa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yc(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 Kn=O.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=_l(r,t,i);return f.jsx(Wt,ma(ma({ref:e},n),a))});Kn.displayName="GridPanelPlugin";function ga(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){ga(a,r,i,l,s,"next",o)}function s(o){ga(a,r,i,l,s,"throw",o)}l(void 0)})}}function jl(n){var e=An(),[t,r]=O.useState(),[i,a]=O.useState(),[l,s]=O.useState(!0),o=O.useCallback(fn(function*(){var d=yield n();return vl.makeModel(e,d)}),[e,n]),u=O.useCallback(fn(function*(){s(!0),a(void 0);try{var d=yield o();r(d),s(!1)}catch(h){a(h),s(!1)}}),[o]);if(O.useEffect(()=>{var d=!1;function h(){return c.apply(this,arguments)}function c(){return c=fn(function*(){s(!0),a(void 0);try{var v=yield o();d||(r(v),s(!1))}catch(g){d||(a(g),s(!1))}}),c.apply(this,arguments)}return h(),()=>{d=!0}},[o]),O.useEffect(function(){if(!t)return;function h(){a(new Error("Table disconnected")),r(void 0),s(!1)}return t.addEventListener(z.EVENT.DISCONNECT,h),()=>{t.removeEventListener(z.EVENT.DISCONNECT,h)}},[t]),l)return{reload:u,status:"loading"};if(i!=null)return{error:i,reload:u,status:"error"};if(t!=null)return{model:t,reload:u,status:"success"};throw new Error("Invalid state")}function Vl(n){var{fetch:e}=n,t=bs(Wr),r=jl(e);if(r.status==="loading")return f.jsx(ft,{isLoading:!0});if(r.status==="error")return f.jsx(ft,{errorMessage:Ya(r.error),isLoading:!1});var{model:i}=r;return f.jsx(Kr,{model:i,settings:t})}var Jc={name:"IrisGridPanel",title:"Table",type:Pt.WIDGET_PLUGIN,component:Vl,panelComponent:Kn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:So};function ba(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function gt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ba(Object(t),!0).forEach(function(r){$l(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ba(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $l(n,e,t){return e=ev(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ev(n){var e=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)}function Hl(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Ca(n){var e=n;return Hl(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Sa(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var nr=J.module("LinkerUtils");class it{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 nr.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return nr.error("PanelComponent should not be null",e,t),"invalid";var a=(i=it.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return nr.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||S.isCompatibleType(l,s);if(!o)return nr.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case $.getComponentName(gr):return"chartLink";case $.getComponentName(Wt):return"tableLink";case $.getComponentName(yt):return"filterSource"}return nr.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(gt(gt({},a),{},{id:ze(),start:gt(gt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(gt(gt({},a),{},{id:ze(),end:gt(gt({},a.end),{},{panelId:r})}))}),i}}$l(it,"ALLOWED_LINKS",new Map([[$.getComponentName(Wt),[$.getComponentName(Wt),$.getComponentName(gr),$.getComponentName(yt)]]]));function Gl(n,e,t){return e=rv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rv(n){var e=nv(n,"string");return typeof e=="symbol"?e:String(e)}function nv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var iv=J.module("LinkerLink"),Ea=.015,ya=1.5,Bl=12,Ul=12,wa=2,Rr=Math.sqrt((Ul*.5)**2+Bl**2),Ta=Math.asin(Ul*.5/Bl),Pa=15,bt=Math.PI*.5;class $t extends O.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 bu(t);if(S.isTextType(e))return gu(t);if(S.isDateType(e))return Cu(t);if(S.isBooleanType(e)){if(t===D.eq)return"is equal to";if(t===D.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return iv.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=[D.eq,D.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:$t.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,E=0,C=0,y=Math.max(E,Math.min(i+(l-i)/2+g*(c*Ea)**ya,m)),w=Math.max(C,Math.min(a+(s-a)/2+p*(c*Ea)**ya,b)),T="M ".concat(i," ").concat(a," Q ").concat(y," ").concat(w," ").concat(l," ").concat(s),F="M ".concat(E," ").concat(C," L ").concat(E," ").concat(b," L ").concat(m," ").concat(b," L ").concat(m," ").concat(C,` z
|
|
12
|
-
`).concat($t.makeCirclePath(i,a,
|
|
13
|
-
`).concat($t.makeCirclePath(l,s,Pa)),N="link-select-clip-".concat(o),P=Math.atan2(s-w,l-y),_=P-Ta+Math.PI,A=P+Ta+Math.PI,x=l+Math.cos(P)*wa,V=s+Math.sin(P)*wa,U=x+Math.cos(_)*Rr,K=V+Math.sin(_)*Rr,ne=x+Math.cos(A)*Rr,le=V+Math.sin(A)*Rr,ve="".concat(x,",").concat(V," ").concat(U,",").concat(K," ").concat(ne,",").concat(le),fe=.25*i+.5*y+.25*l,Ie=.25*a+.5*w+.25*s,R=y-i+(l-y),L=w-a+(s-w),j=L/R,W=20,q=W/Math.sqrt(1+j**2),Se=q*j,ye=q*-1,ke=Se*-1;Number.isFinite(j)?j>0?(q*=-1,Se*=-1,ye*=-1,ke*=-1,ye-=50-10*(Math.abs(v)%bt),ke+=10*(Math.abs(v)%bt),q-=50-10*(Math.abs(v)%bt),Se+=10*(Math.abs(v)%bt)):j<0?(ye+=10*(Math.abs(v)%bt),ke+=10*(Math.abs(v)%bt),q+=10*(Math.abs(v)%bt),Se+=10*(Math.abs(v)%bt)):(ye=15,ke=10,q=-25,Se=10):(ye=10,ke=5,q=10,Se=-35);var Ke="";t!==void 0&&(t==="startsWith"?Ke="a*":t==="endsWith"?Ke="*z":Ke=S.getFilterOperatorString(t));var Xe=d!=="chartLink"&&d!=="filterSource";return f.jsxs(f.Fragment,{children:[f.jsxs("svg",{className:Me(e,{hovering:h}),children:[f.jsx("clipPath",{id:N,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(N,")"),"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:ve})]}),u!=null&&r&&f.jsxs(f.Fragment,{children:[Xe&&f.jsx(Y,{kind:"primary",className:"btn-fab btn-operator",style:{top:Ie+(j>=0?Se:ke),left:fe+(j>=0?q:ye)},onClick:()=>{},icon:f.jsxs("div",{className:"fa-md fa-layers",children:[f.jsx("b",{children:Ke}),f.jsx(Fe,{icon:Eo,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:f.jsx(Ga,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),f.jsx(Y,{kind:"primary",className:"btn-fab btn-delete",style:{top:Ie+(j<0?Se:ke),left:fe+(j<0?q:ye)},onClick:this.handleDelete,icon:zr,tooltip:"Delete"})]})]})}}Gl($t,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});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=av(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function av(n){var e=lv(n,"string");return typeof e=="symbol"?e:String(e)}function lv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pn=J.module("LinkerOverlayContent");class Wl extends O.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=Re.createRef(),this.state={mouse:void 0,dialog:void 0,offset:{x:0,y:0},isDragging:!1,mode:"select"}}componentDidMount(){window.addEventListener("blur",this.handleBlur,!0),window.addEventListener("mousemove",this.handleMouseMove,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),window.addEventListener("keydown",this.handleKeyDown,!0),window.addEventListener("keyup",this.handleKeyUp,!0),window.addEventListener("resize",this.handleResize,!0)}componentDidCatch(e,t){pn.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{pn.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=Je(e.x,0,window.innerWidth-t.width),i=Je(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=Je(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=Je(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:E,isReversed:C,start:y,end:w,operator:T}=g,F=y.columnType,[N,P]=this.getPointFromLinkPoint(y),_=(p=u==null?void 0:u.x)!==null&&p!==void 0?p:N,A=(m=u==null?void 0:u.y)!==null&&m!==void 0?m:P;if(w!=null&&([_,A]=this.getPointFromLinkPoint(w)),C!=null&&C){var[x,V]=[N,P];[N,P]=[_,A],[_,A]=[x,V]}var U=Me("linker-link",{disabled:e},{"link-filter-source":E==="filterSource"},{"link-invalid":E==="invalid"},{interactive:g.end==null},{"link-is-selected":r.has(b)},{"danger-delete":c==="delete"});return{x1:N,y1:P,x2:_,y2:A,id:b,className:U,operator:T,startColumnType:F,type:E}}catch(K){return pn.warn("Unable to get point for link",g,K),null}}).filter(g=>g!=null);return f.jsxs("div",{className:Me("linker-overlay",{"danger-delete":c==="delete"}),children:[v.map(g=>{var{x1:p,y1:m,x2:b,y2:E,id:C,className:y,operator:w,startColumnType:T,type:F}=g;return f.jsx($t,{className:y,id:C,x1:p,y1:m,x2:b,y2:E,onClick:a,onDelete:l,isSelected:r.has(C),operator:w,startColumnType:T,type:F,onOperatorChanged:this.handleOperatorChanged},C)}),f.jsxs("div",{className:Me("linker-toast-dialog",{dragging:h}),ref:this.dialogRef,style:{bottom:d==null?void 0:d.y,right:d==null?void 0:d.x},"data-testid":"linker-toast-dialog",children:[f.jsx(Y,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:yo,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&f.jsx(bn,{children:"Drag to reposition"})}),f.jsx("div",{className:"toast-body",children:i}),f.jsxs("div",{className:"toast-footer",children:[f.jsx(Y,{kind:"secondary",onClick:s,children:"Clear All"}),f.jsx(Y,{kind:"primary",onClick:o,children:"Done"})]})]}),f.jsx(He,{actions:[{action:this.handleEscapePressed,shortcut:gn.LINKER_CLOSE,isGlobal:!0}]})]})}}Xn(Wl,"defaultProps",{disabled:"false"});function Na(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Fa(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Na(Object(t),!0).forEach(function(r){zl(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Na(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function zl(n,e,t){return e=sv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sv(n){var e=ov(n,"string");return typeof e=="symbol"?e:String(e)}function ov(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Te=J.module("Linker"),uv=(n,e)=>({activeTool:In(n),dh:$a(n),isolatedLinkerPanelId:Gr(n,e.localDashboardId),links:It(n,e.localDashboardId),timeZone:Wa(n)}),dv=wt(uv,{setActiveTool:ja,setDashboardLinks:Xr,addDashboardLinks:gl,deleteDashboardLinks:bl,setDashboardIsolatedLinkerPanelId:Bn,setDashboardColumnSelectionValidator:Cl});class hv extends O.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===Qe.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(Ee.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(Ee.DATA_SELECTED,this.handleUpdateValues),t.on(Ee.STATE_CHANGED,this.handleStateChange),t.on(Rt.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(Ae.CLONED,this.handlePanelCloned),t.on(Ce.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(Ce.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(Ae.CLOSE,this.handlePanelClosed),t.on(Ae.CLOSED,this.handlePanelClosed),t.on(Ae.DRAGGING,this.handlePanelDragging),t.on(Ae.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(Ee.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(Ee.DATA_SELECTED,this.handleUpdateValues),t.off(Ee.STATE_CHANGED,this.handleStateChange),t.off(Rt.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(Ae.CLONED,this.handlePanelCloned),t.off(Ce.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(Ce.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(Ae.CLOSE,this.handlePanelClosed),t.off(Ae.CLOSED,this.handlePanelClosed),t.off(Ae.DRAGGING,this.handlePanelDragging),t.off(Ae.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(Qe.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Qe.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(Qe.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&&it.findColumn(t,s)==null||o!=null&&o.panelId===i&&it.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!Sa(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:ze(),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=it.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 E=p!==void 0&&p?v.panelId:m.panelId,C=c.filter(N=>{var{end:P}=N;return(P==null?void 0:P.panelId)===E});this.deleteLinks(C);break}case"chartLink":{var y=p===!0?v:m,w=p===!0?m:v;Te.debug("creating chartlink",{existingLinkEnd:y,start:v,end:m});var T=c.filter(N=>{var{end:P,start:_}=N;return(_==null?void 0:_.panelId)===w.panelId&&(P==null?void 0:P.panelId)===y.panelId&&(P==null?void 0:P.columnName)===y.columnName&&(P==null?void 0:P.columnType)===y.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:D.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?Ca(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?Ca(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:E,isGrouped:C}=t[u.columnName],{value:y}=t[u.columnName],w="".concat(y);if(y===null&&E&&C&&(y=void 0),g!=null&&S.isDateType(g)){var T=new kr(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:ae.FULL_DATE_FORMAT});w=T.format(y)}var F={operator:h,text:w,value:y,startColumnIndex:b};m.push(F),p.set(v,{columnType:g,filterList:m}),s.set(c,p)}}s.forEach((N,P)=>{this.setPanelFilterMap(P,N)})}handlePanelCloned(e,t){var{links:r}=this.props,i=$.getIdFromPanel(e),a=t.id;if(i!=null){var l=it.cloneLinksForPanel(r,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l}=i;if(a.panelId===e||(l==null?void 0:l.panelId)===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){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===Qe.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case Qe.LINKER:t(r,this.isColumnSelectionValid);break;default:t(r,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:r}=t;return r!==void 0?{linkInProgress:Fa(Fa({},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(!Sa(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?it.getLinkType(o,l,i):it.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(Cn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:f.jsx(Wl,{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 cv=dv(hv);function ql(n){Xt(n);var{id:e,layout:t,panelManager:r}=n;return f.jsx(cv,{layout:t,localDashboardId:e,panelManager:r})}var vv={name:"LinkerPlugin",type:Pt.DASHBOARD_PLUGIN,component:ql};function Kl(n){Xt(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=O.useCallback(function(){var{title:l="",metadata:s={},id:o=ze(),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(E=>{var C;return(C=E.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:lt.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 O.useEffect(function(){var s=[i(sr.COMPONENT,sr)];return()=>{s.forEach(o=>o())}},[i]),ge(t.eventHub,fl.OPEN,a),null}var fv={name:"MarkdownPlugin",type:Pt.DASHBOARD_PLUGIN,component:Kl};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 Ra(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){pv(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 pv(n,e,t){return e=mv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mv(n){var e=gv(n,"string");return typeof e=="symbol"?e:String(e)}function gv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Yn=O.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=_l(r,t,i);return f.jsx(en,Ra(Ra({ref:e},n),a))});Yn.displayName="PandasPanelPlugin";function Xl(n){var{fetch:e}=n,t=jl(e);if(t.status==="loading")return f.jsx(ft,{isLoading:!0});if(t.status==="error")return f.jsx(ft,{errorMessage:Ya(t.error),isLoading:!1});var{model:r,reload:i}=t;return f.jsx(Kr,{model:r,children:f.jsx(Ml,{onClick:i})})}var bv={name:"PandasPanel",title:"Pandas",type:Pt.WIDGET_PLUGIN,component:Xl,panelComponent:Yn,supportedTypes:"pandas.DataFrame",icon:wo};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 Ft(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){Cv(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 Cv(n,e,t){return e=Sv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Sv(n){var e=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 yv=J.module("WidgetLoaderPlugin");function wv(n){var e;function t(r,i){var a,l,s=n.component,{metadata:o}=r,u=Ft(Ft({},o),{},{type:(a=o==null?void 0:o.type)!==null&&a!==void 0?a:n.type,name:(l=o==null?void 0:o.name)!==null&&l!==void 0?l:"Widget"}),d=Xs(s);return f.jsx(mr,Ft(Ft({descriptor:u},r),{},{children:d?f.jsx(s,Ft(Ft({},r),{},{ref:i})):f.jsx(s,Ft({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),O.forwardRef(t)}function Yl(n){var e=Xa(),t=O.useMemo(()=>{var s=new Map;return e.forEach(o=>{qs(o)&&[o.supportedTypes].flat().forEach(u=>{if(u!=null&&u!==""){if(s.has(u)){var d;yv.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]);Xt(n);var{id:r,layout:i,registerComponent:a}=n,l=O.useCallback(s=>{var o,{dragEvent:u,panelId:d=ze(),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:E}=i;$.openComponent({root:E,config:b,dragEvent:u})}},[r,i,t]);return O.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:u}=o;return u==null?a(o.name,wv(o)):a(o.name,u)});return()=>{s.forEach(o=>o())}},[a,t]),Ks(i.eventHub,l),null}var Tv={name:"WidgetLoaderPlugin",type:Pt.DASHBOARD_PLUGIN,component:Yl};function tn(n,e,t){return e=Pv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pv(n){var e=Dv(n,"string");return typeof e=="symbol"?e:String(e)}function Dv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class br{}tn(br,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");tn(br,"INPUT_FILTER","ControlType.INPUT_FILTER");tn(br,"MARKDOWN","ControlType.MARKDOWN");tn(br,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");var Ov=Q.shape({state:Q.shape({panelState:Q.shape({})})}),Nv=Q.shape({panelId:Q.string.isRequired,columnName:Q.string.isRequired,columnType:Q.string.isRequired}),La=Q.shape({panelId:Q.string.isRequired,columnName:Q.string.isRequired}),Zl=Q.shape({start:La,end:La,id:Q.string,isReversed:Q.bool}),Fv=Q.arrayOf(Zl),Mv=Q.shape({name:Q.string.isRequired,operateAs:Q.string.isRequired,groups:Q.arrayOf(Q.string).isRequired,permissions:Q.shape({canUsePanels:Q.bool.isRequired,canCopy:Q.bool.isRequired,canDownloadCsv:Q.bool.isRequired,canLogout:Q.bool.isRequired}).isRequired}),Rv=Object.freeze({LinkPoint:Nv,Link:Zl,Links:Fv,Panel:Ov,User:Mv}),Iv=(n,e)=>n[e]===null?null:Q.bool,Lv=(n,e)=>n[e]===null?null:Q.string,Av=Object.freeze({nullableBoolean:Iv,nullableString:Lv});const ef=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:Ll,ChartBuilderPluginConfig:Hc,ChartEvent:Rt,ChartPanel:gr,ChartPanelPlugin:qn,ChartPluginConfig:Vc,ChartWidgetPlugin:Il,CommandHistoryPanel:za,CommonPropTypes:Av,ConsoleEvent:_r,ConsolePanel:Lr,ConsolePlugin:zc,ControlType:br,DropdownFilterPanel:yt,FileExplorerPanel:qa,FilterPlugin:xl,FilterPluginConfig:qc,FilterSetManager:fr,FilterSetManagerPanel:Ar,GridPanelPlugin:Kn,GridPluginConfig:Jc,GridWidgetPlugin:Vl,InputFilterEvent:Ce,InputFilterPanel:Vt,IrisGridEvent:Ee,IrisGridPanel:Wt,LinkerPlugin:ql,LinkerPluginConfig:vv,LinkerUtils:it,LogPanel:Ka,MarkdownEvent:fl,MarkdownPanel:sr,MarkdownPlugin:Kl,MarkdownPluginConfig:fv,MockFileStorage:Lc,NotebookEvent:se,NotebookPanel:Et,PandasEvent:Hn,PandasPanel:en,PandasPanelPlugin:Yn,PandasPluginConfig:bv,PandasWidgetPlugin:Xl,Panel:Kt,TabEvent:Ys,ToolType:Qe,UIPropTypes:Rv,WidgetLoaderPlugin:Yl,WidgetLoaderPluginConfig:Tv,WidgetPanel:mr,WidgetPanelTooltip:Gn,addDashboardLinks:gl,deleteDashboardLinks:bl,getColumnSelectionValidatorForDashboard:Br,getColumnsForDashboard:Ln,getDashboardConnection:Zs,getDashboardConsoleSettings:Qs,getDashboardSessionWrapper:Ua,getFilterSetsForDashboard:Ha,getInputFiltersForDashboard:Ur,getIsolatedLinkerPanelIdForDashboard:Gr,getLinksForDashboard:It,getTableMapForDashboard:Hr,isChartPanelDehydratedProps:Pl,isChartPanelFigureMetadata:wl,isChartPanelTableMetadata:jt,isGLChartPanelState:Tl,isIrisGridPanelMetadata:Ol,isLegacyIrisGridPanelMetadata:Dl,setDashboardColumnSelectionValidator:Cl,setDashboardConnection:wh,setDashboardConsoleSettings:Sl,setDashboardFilterSets:El,setDashboardIsolatedLinkerPanelId:Bn,setDashboardLinks:Xr,setDashboardSessionWrapper:Th,useConfigureRuff:Al,useLoadTablePlugin:kl},Symbol.toStringTag,{value:"Module"}));export{z as $,Xv as A,au as B,No as C,_o as D,Kv as E,Cn as F,re as G,M as H,Su as I,Gt as J,cr as K,sl as L,Ei as M,Jt as N,Xt as O,qu as P,hl as Q,cl as R,qr as S,S as T,Dn as U,ch as V,Kr as W,ol as X,wi as Y,Ti as Z,pr as _,_n as a,vl as a0,uh as a1,eh as a2,Bt as a3,Hd as a4,G as a5,_t as a6,Jv as a7,Qv as a8,Mi as a9,yd as aa,nt as ab,ef as ac,rl as ad,kn as ae,Yv as af,ul as ag,nd as ah,H as ai,wn as aj,Zv as ak,k as al,yn as am,bu as an,gu as ao,Cu as ap,Uv as aq,hr as ar,Bv as as,D as at,Z as au,Zd as av,jo as b,lu as c,ae as d,su as e,qe as f,Sn as g,ou as h,jv as i,nl as j,Ou as k,il as l,Hv as m,Wv as n,Vv as o,$v as p,Gv as q,cu as r,zv as s,qv as t,Oo as u,al as v,ll as w,Eu as x,yu as y,Nu as z};
|
|
14
|
-
//# sourceMappingURL=index-
|
|
11
|
+
This note can be edited using **markdown** for styling.`);zn(lt,"getClosedMarkdowns",B(n=>n.filter(e=>e.component==="MarkdownPanel"&&e.props.panelState.content!==""&&e.props.panelState.content!==null).reverse()));function ur(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)}var Sc=O.lazy(()=>$r(()=>import("./MarkdownEditor-C14PDuak.js"),__vite__mapDeps([17,1,2,3,8,4,5,9]),import.meta.url)),Fr=Q.module("MarkdownPanel");class qn extends O.Component{constructor(e){super(e),ur(this,"markdownEditor",void 0),ur(this,"editor",void 0),ur(this,"getClosedMarkdowns",B(lt.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=lt.DEFAULT_CONTENT),this.state={isStartPageShown:r==null&&this.getClosedMarkdowns(e.closedPanels).length!==0,isEditing:!1,content:r,panelState:t},this.markdownEditor=null}setEditorPosition(e){I(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){Fr.debug("Markdown Editor Initialized..."),this.editor=e}handleCreateMarkdown(){Fr.debug("create markdown..."),this.setState({isStartPageShown:!1,content:"",isEditing:!0,panelState:{content:""}},()=>{this.editor!=null&&this.editor.focus!=null&&this.editor.focus()})}handleOpenMarkdown(e){Fr.debug("open markdown...",e);var{glContainer:t,glEventHub:r}=this.props,i=$.getComponentConfigFromContainer(t);r.emit(Ae.REOPEN,e,i)}handleDeleteMarkdown(e){var{glEventHub:t}=this.props;t.emit(Ae.DELETE,e)}handleEditorBlur(e){var t;Fr.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(Kt,{glContainer:e,glEventHub:t,className:"markdown-panel",componentPanel:this,onResize:this.handleEditorResize,onBlur:this.handleEditorBlur,isClonable:!0,isRenamable:!0,children:a?f.jsx(Rl,{closedMarkdowns:s,onCreate:this.handleCreateMarkdown,onOpen:this.handleOpenMarkdown,onDelete:this.handleDeleteMarkdown}):f.jsx(Ml,{isEditing:i,onDoubleClick:this.handleContainerDoubleClick,children:f.jsx(O.Suspense,{fallback:f.jsx(ft,{}),children:f.jsx(Sc,{ref:o=>{this.markdownEditor=o},isEditing:i,content:l??lt.DEFAULT_CONTENT,onEditorInitialized:this.handleEditorInitialized})})})})}}ur(qn,"defaultProps",{panelState:null});ur(qn,"COMPONENT","MarkdownPanel");var Ec=(n,e)=>{var{localDashboardId:t}=e;return{closedPanels:Vs(n,t)}},sr=wt(Ec,null,null,{forwardRef:!0})(qn);function Qi(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 Mr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){Qi(a,r,i,l,s,"next",o)}function s(o){Qi(a,r,i,l,s,"throw",o)}l(void 0)})}}function Ji(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function je(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ji(Object(t),!0).forEach(function(r){Ne(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ji(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ne(n,e,t){return e=yc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yc(n){var e=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)}var Tc=O.lazy(()=>$r(()=>import("./MarkdownNotebook-BDaj8EiQ.js"),__vite__mapDeps([18,1,2,3,4,5,8,9,19]),import.meta.url)),te=Q.module("NotebookPanel"),ea=400;class Pe extends O.Component{static handleError(e){xe.isCanceled(e)||te.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=Ve.getExtension(e).toLowerCase();switch(t){case"py":case"python":return"python";case"groovy":return"groovy";case"scala":return"scala";default:return null}}constructor(e){super(e),Ne(this,"pending",void 0),Ne(this,"debouncedSavePanelState",void 0),Ne(this,"debouncedLoad",void 0),Ne(this,"notebook",void 0),Ne(this,"tabTitleElement",void 0),Ne(this,"tabInitOnce",void 0),Ne(this,"editor",void 0),Ne(this,"getSettings",B((c,v)=>je(je({},c),{},{minimap:{enabled:v}}))),Ne(this,"getOverflowActions",B((c,v,g)=>{var p=[{title:"Find",icon:Co,action:this.handleFind,group:He.groups.high,shortcut:ht.NOTEBOOK.FIND,order:10},{title:"Copy File",icon:Qa,action:this.handleCopy,group:He.groups.medium,order:20},{title:"Rename File",icon:So,action:this.handleShowRename,group:He.groups.medium,order:30},{title:"Delete File",icon:zr,action:this.handleDelete,group:He.groups.medium,order:40},{title:"Show Minimap",icon:c?sn:void 0,action:this.handleMinimapChange,group:He.groups.low,shortcut:ht.NOTEBOOK.MINIMAP,order:20},{title:"Word Wrap",icon:v?sn:void 0,action:this.handleWordWrapChange,group:He.groups.low,shortcut:ht.NOTEBOOK.WORDWRAP,order:30}];return this.canFormat()&&(p.push({title:"Format Document",action:this.handleFormat,group:He.groups.low,order:10}),p.push({title:"Format on Save",icon:g?sn:void 0,action:this.handleFormatOnSaveChange,group:He.groups.low,order:15})),p})),this.handleCloseCancel=this.handleCloseCancel.bind(this),this.handleCloseDiscard=this.handleCloseDiscard.bind(this),this.handleCloseSave=this.handleCloseSave.bind(this),this.handleCopy=this.handleCopy.bind(this),this.handleDelete=this.handleDelete.bind(this),this.handleDeleteConfirm=this.handleDeleteConfirm.bind(this),this.handleDeleteCancel=this.handleDeleteCancel.bind(this),this.handleEditorInitialized=this.handleEditorInitialized.bind(this),this.handleEditorWillDestroy=this.handleEditorWillDestroy.bind(this),this.handleEditorChange=this.handleEditorChange.bind(this),this.handleFind=this.handleFind.bind(this),this.handleMinimapChange=this.handleMinimapChange.bind(this),this.handleWordWrapChange=this.handleWordWrapChange.bind(this),this.handleFormatOnSaveChange=this.handleFormatOnSaveChange.bind(this),this.handleLinkClick=this.handleLinkClick.bind(this),this.handleLoadSuccess=this.handleLoadSuccess.bind(this),this.handleLoadError=this.handleLoadError.bind(this),this.handlePanelDropped=this.handlePanelDropped.bind(this),this.handleRenameFile=this.handleRenameFile.bind(this),this.handleResize=this.handleResize.bind(this),this.handleRunCommand=this.handleRunCommand.bind(this),this.handleRunAll=this.handleRunAll.bind(this),this.handleRunSelected=this.handleRunSelected.bind(this),this.handleSave=this.handleSave.bind(this),this.handleSaveAsCancel=this.handleSaveAsCancel.bind(this),this.handleSaveAsSubmit=this.handleSaveAsSubmit.bind(this),this.handleSaveError=this.handleSaveError.bind(this),this.handleSaveSuccess=this.handleSaveSuccess.bind(this),this.handleSessionOpened=this.handleSessionOpened.bind(this),this.handleSessionClosed=this.handleSessionClosed.bind(this),this.handleShow=this.handleShow.bind(this),this.handleShowRename=this.handleShowRename.bind(this),this.handleTab=this.handleTab.bind(this),this.handleTabBlur=this.handleTabBlur.bind(this),this.handleTabClick=this.handleTabClick.bind(this),this.handleTabFocus=this.handleTabFocus.bind(this),this.handleTransformLinkUri=this.handleTransformLinkUri.bind(this),this.handleOverwrite=this.handleOverwrite.bind(this),this.handlePreviewPromotion=this.handlePreviewPromotion.bind(this),this.handleFormat=this.handleFormat.bind(this),this.canFormat=this.canFormat.bind(this),this.getDropdownOverflowActions=this.getDropdownOverflowActions.bind(this),this.pending=new In,this.debouncedSavePanelState=vt(this.savePanelState.bind(this),ea),this.debouncedLoad=vt(this.load.bind(this),ea),this.notebook=null,this.tabTitleElement=null,this.tabInitOnce=!1;var{isDashboardActive:t,session:r,sessionLanguage:i,panelState:a}=e,l={value:"",language:"",wordWrap:"off"},s=null,{isPreview:o}=e;a!=null&&({fileMetadata:s=s,isPreview:o=o,settings:l=l}=a);var u=s!=null&&Ve.hasPath(s.itemName),d=u===!0&&l.value!=null||!u&&l.value!=null&&l.value.length>0,h=d?1:0;this.state={error:void 0,isDashboardActive:t,isLoading:!0,isLoaded:!1,isPreview:o,savedChangeCount:0,changeCount:h,fileMetadata:s,settings:l,session:r,sessionLanguage:i,panelState:{fileMetadata:s,settings:l},showCloseModal:!1,showDeleteModal:!1,showSaveAsModal:!1,scriptCode:"",formatOnSave:!1},te.debug("constructor",e,this.state)}componentDidMount(){var{glContainer:e,glEventHub:t}=this.props,{tab:r}=e;r!=null&&this.initTab(r),this.initNotebookContent(),t.on(se.RENAME_FILE,this.handleRenameFile),t.on(Ae.DROPPED,this.handlePanelDropped),e.on(se.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion)}componentDidUpdate(e,t){var{isPreview:r,settings:i}=this.state,{wordWrap:a}=i,{notebookSettings:l}=this.props;r!==t.isPreview&&this.setPreviewStatus(),a!==t.settings.wordWrap&&(this.updateEditorWordWrap(),this.debouncedSavePanelState()),l.isMinimapEnabled!==e.notebookSettings.isMinimapEnabled&&this.updateEditorMinimap()}componentWillUnmount(){this.debouncedSavePanelState.flush(),this.pending.cancel();var{glEventHub:e,glContainer:t}=this.props,{fileMetadata:r,isPreview:i}=this.state;e.off(se.RENAME_FILE,this.handleRenameFile),e.off(Ae.DROPPED,this.handlePanelDropped),t.off(se.PROMOTE_FROM_PREVIEW,this.handlePreviewPromotion),e.emit(se.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);I(t);var r=t.querySelector(".lm_title");this.tabTitleElement=r,r==null||r.classList.add("notebook-title"),this.setPreviewStatus()}getNotebookValue(){var{changeCount:e,savedChangeCount:t,settings:r}=this.state,{value:i}=r;if(e!==t&&this.notebook){var a=this.notebook.getValue();return a??i}return i}initNotebookContent(){var{fileMetadata:e,settings:t,isPreview:r}=this.state;if(e&&e.id){te.debug("Init content from file"),this.registerFileMetadata(e,r),this.load();return}if(t.value!=null){te.debug("Use content passed in the settings prop"),this.handleLoadSuccess();return}this.handleLoadError(new Error("Missing file metadata"))}closeFileTabById(e){var{glEventHub:t}=this.props;t.emit(se.CLOSE_FILE,{id:e})}registerFileMetadata(e,t){var{glEventHub:r,metadata:i}=this.props,{id:a}=i;r.emit(se.REGISTER_FILE,a,e,t)}renameTab(e,t){var{glEventHub:r}=this.props;r.emit(se.RENAME,e,t)}load(){var{fileMetadata:e,settings:t}=this.state;I(e);var{id:r}=e,{fileStorage:i}=this.props;this.pending.add(i.loadFile(r)).then(a=>{var l;te.debug("Loaded file",a);var{filename:s}=a,{itemName:o}=this.state;if(s!==o){var{metadata:u}=this.props,{id:d}=u;this.renameTab(d,Ve.getBaseName(s))}var h=je(je({},t),{},{language:(l=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&&Ve.hasPath(e.itemName)){var t=this.getNotebookValue();return t!==void 0?(this.saveContent(e.itemName,t),!0):!1}return this.setState({showSaveAsModal:!0}),!1}saveContent(e,t){te.debug("saveContent",e,t),this.updateSavedChangeCount();var{fileStorage:r}=this.props;this.pending.add(r.saveFile({filename:e,content:t,basename:e})).then(this.handleSaveSuccess).catch(this.handleSaveError)}updateSavedChangeCount(){this.setState(e=>{var{changeCount:t}=e;return{savedChangeCount:t}})}setPreviewStatus(){if(this.tabTitleElement){var{isPreview:e}=this.state;te.debug("setPreviewStatus",this.tabTitleElement,e),e?this.tabTitleElement.classList.add("is-preview"):this.tabTitleElement.classList.remove("is-preview")}}handlePreviewPromotion(){this.removePreviewStatus()}savePanelState(){this.setState(e=>{var{changeCount:t,savedChangeCount:r,fileMetadata:i,isPreview:a,settings:l}=e,s=this.getNotebookValue(),o=t!==r?s:void 0,u=je(je({},l),{},{value:s}),d=je(je({},l),{},{value:o}),h={settings:d,fileMetadata:i,isPreview:a};return te.debug("Saving panel state",h),{settings:u,panelState:h}})}handleCloseDiscard(){this.setState({showCloseModal:!1});var{glContainer:e}=this.props;e.close({force:!0})}handleCloseSave(){if(this.setState({showCloseModal:!1}),this.save()){var{glContainer:e}=this.props;e.close({force:!0})}}handleCloseCancel(){this.setState({showCloseModal:!1})}handleOverwrite(e){var{glEventHub:t}=this.props;t.emit(se.CLOSE_FILE,{id:e,itemName:e},{force:!0}),this.focus()}handleCopy(){var e=this;return Mr(function*(){var{fileStorage:t,glEventHub:r,session:i}=e.props,{fileMetadata:a,settings:l}=e.state;I(a);var{language:s}=l,{itemName:o}=a,u=yield Ve.getUniqueCopyFileName(t,o);te.debug("handleCopy",a,o,u),yield t.copyFile(o,u);var d={id:u,itemName:u},h={value:null,language:s};r.emit(se.SELECT_NOTEBOOK,i,s,h,d,!0)})()}handleDelete(){te.debug("handleDelete, pending confirmation"),this.setState({showDeleteModal:!0})}handleDeleteConfirm(){var e=this;return Mr(function*(){var{fileStorage:t,glContainer:r,glEventHub:i}=e.props,{fileMetadata:a}=e.state;te.debug("handleDeleteConfirm",a==null?void 0:a.itemName),e.setState({showDeleteModal:!1}),a&&(Ve.hasPath(a.itemName)&&(yield Ve.fileExists(t,a.itemName))?(i.emit(se.CLOSE_FILE,a,{force:!0}),t.deleteFile(a.itemName)):r.close({force:!0}))})()}handleDeleteCancel(){this.setState({showDeleteModal:!1})}handleEditorInitialized(e){this.editor=e}handleEditorWillDestroy(){this.editor=void 0}handleEditorChange(e){te.debug2("handleEditorChanged",e),this.removePreviewStatus(),this.setState(t=>{var{changeCount:r,savedChangeCount:i}=t,{isUndoing:a,isRedoing:l}=e;return a?{changeCount:r-1,savedChangeCount:i}:!l&&r<i?{changeCount:r+1,savedChangeCount:0}:{changeCount:r+1,savedChangeCount:i}}),this.debouncedSavePanelState()}handleFind(){this.notebook&&this.notebook.toggleFind()}updateEditorMinimap(){if(this.editor){var{notebookSettings:e}=this.props;this.editor.updateOptions({minimap:{enabled:e.isMinimapEnabled}})}}handleMinimapChange(){var e,{notebookSettings:t,updateNotebookSettings:r}=this.props,i={isMinimapEnabled:!((e=t.isMinimapEnabled)!==null&&e!==void 0&&e)};r(i)}updateEditorWordWrap(){if(this.editor){var{settings:e}=this.state,{wordWrap:t}=e;this.editor.updateOptions({wordWrap:t})}}handleWordWrapChange(){this.editor&&this.setState(e=>{var{settings:t}=e,r=t.wordWrap==="on"?"off":"on";return{settings:je(je({},t),{},{wordWrap:r})}})}handleFormatOnSaveChange(){var e,{notebookSettings:t,updateNotebookSettings:r}=this.props,i={formatOnSave:!((e=t.formatOnSave)!==null&&e!==void 0&&e)};r(i)}handleLinkClick(e){var{notebooksUrl:t,session:r,sessionLanguage:i}=this.props,{href:a}=e.currentTarget;if(!(!a||!a.startsWith(t))){e.stopPropagation(),e.preventDefault();var l="/".concat(a.substring(t.length)).replace(/%20/g," ");if(l==="/"){te.debug("Ignoring invalid notebook link",l);return}te.debug("Notebook link clicked, opening",l);var{glEventHub:s}=this.props,o={value:null,language:i},u={id:l,itemName:l};s.emit(se.SELECT_NOTEBOOK,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.")),te.error(t),this.setState({error:t,isLoading:!1}))}handleSave(){var e=this;return Mr(function*(){te.debug("handleSave");var{notebookSettings:t}=e.props,{formatOnSave:r=!1}=t;r&&(yield e.handleFormat()),e.save()})()}handleSaveSuccess(e){var t,{fileStorage:r}=this.props,i={id:e.filename,itemName:e.filename},a=(t=Pe.languageFromFileName(e.filename))!==null&&t!==void 0?t:"";this.setState(l=>{var{fileMetadata:s}=l,o=je(je({},l.settings),{},{language:a});return te.debug("handleSaveSuccess",i,s,o),s&&Ve.hasPath(s.itemName)&&s.itemName!==i.itemName&&(te.debug("handleSaveSuccess deleting old file",s.itemName),r.deleteFile(s.itemName).catch(Pe.handleError)),{fileMetadata:i,settings:o,isPreview:!1}}),this.debouncedSavePanelState(),this.registerFileMetadata(i,!1)}handleSaveError(e){xe.isCanceled(e)||(this.setState({savedChangeCount:0}),te.error(e))}handleSaveAsCancel(){this.setState({showSaveAsModal:!1})}handleSaveAsSubmit(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r&&this.handleOverwrite(e),te.debug("handleSaveAsSubmit",e);var{fileMetadata:i}=this.state;if(i){var{itemName:a}=i,l=(t=this.getNotebookValue())!==null&&t!==void 0?t:"";if(this.setState({showSaveAsModal:!1}),Ve.getBaseName(a)!==Ve.getBaseName(e)){var{metadata:s}=this.props,{id:o}=s;this.renameTab(o,Ve.getBaseName(e))}this.saveContent(e,l)}}canFormat(){var e;return((e=this.notebook)===null||e===void 0?void 0:e.editor)!=null?ct.canFormat(this.notebook.editor):!1}handleFormat(){var e=this;return Mr(function*(){var t;((t=e.notebook)===null||t===void 0?void 0:t.editor)!=null&&(yield ct.formatDocument(e.notebook.editor))})()}handleRenameFile(e,t,r){var{fileMetadata:i,panelState:a}=this.state,{glContainer:l}=this.props;if((i==null?void 0:i.itemName)==="/".concat(t)&&r&&JSON.stringify(a)!==JSON.stringify(r)){l.close();return}i&&i.id===e&&(this.setState({fileMetadata:{id:t,itemName:t}}),this.debouncedSavePanelState())}handleResize(){var e;(e=this.notebook)===null||e===void 0||e.updateDimensions()}handleRunCommand(e){this.runCommand(e)}handleRunAll(){var e;if(!this.notebook){te.error("Editor is not initialized.");return}this.runCommand((e=this.notebook.getValue())!==null&&e!==void 0?e:void 0)}handleRunSelected(){if(!this.notebook){te.error("Editor is not initialized.");return}this.runCommand(this.notebook.getSelectedCommand())}handleSessionOpened(e,t){var{language:r}=t;this.setState({session:e,sessionLanguage:r})}handleSessionClosed(){this.setState({session:void 0,sessionLanguage:void 0})}handleShow(){var e;te.debug("handleShow"),(e=this.notebook)===null||e===void 0||e.updateDimensions()}handlePanelDropped(e){var{metadata:{id:t}}=this.props;e===t&&this.forceUpdate()}handleShowRename(){this.setState({showSaveAsModal:!0})}handleTab(e){te.debug("NotebookPanel tab event",e),this.initTab(e)}handleTabFocus(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];te.debug("handleTabFocus",...t);var{glContainer:i}=this.props;this.setState({isDashboardActive:!0}),this.notebook&&!i.isHidden&&this.notebook.updateDimensions()}handleTabBlur(){te.debug("handleTabBlur"),this.setState({isDashboardActive:!1})}handleTabClick(e){te.debug("handle NotebookPanel tab click"),this.focus(),e.detail===2&&this.removePreviewStatus()}handleTransformLinkUri(e){var{notebooksUrl:t}=this.props,{fileMetadata:r}=this.state;if(e.endsWith("/"))return e;if(e.startsWith("/"))return"".concat(t).concat(e.substring(1));var i=r==null?void 0:r.itemName;if(i===void 0)return e;i.charAt(0)==="/"&&(i=i.substring(1));var a=new URL(i,t);return new URL(e,a).href}focus(){requestAnimationFrame(()=>{this.notebook&&this.notebook.focus()})}createNotebook(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{glEventHub:i}=this.props,{session:a,sessionLanguage:l,settings:s}=this.state,o=je(je({},s),{},{language:t,value:r}),u={id:null,itemName:e};te.debug("handleCreateNotebook",a,l,o,u),i.emit(se.CREATE_NOTEBOOK,a,l,o,u)}runCommand(e){if(e===void 0||e===""){te.debug("Ignoring empty command.");return}this.removePreviewStatus();var{glEventHub:t}=this.props;t.emit(_r.SEND_COMMAND,e,!1,!0)}removePreviewStatus(){this.setState(e=>{var{isPreview:t}=e;if(t){var{fileMetadata:r}=this.state;return r&&this.registerFileMetadata(r,!1),{isPreview:!1}}return null})}getDropdownOverflowActions(){var{notebookSettings:e}=this.props,{isMinimapEnabled:t,formatOnSave:r}=e,{settings:i}=this.state;return this.getOverflowActions(t??!1,this.getSettings(i,t??!1).wordWrap==="on",r??!1)}render(){var e,t,r,{fileStorage:i,glContainer:a,glContainer:{tab:l},glEventHub:s,notebookSettings:o}=this.props,{changeCount:u,savedChangeCount:d,error:h,isDashboardActive:c,isLoaded:v,isLoading:g,isPreview:p,fileMetadata:m,session:b,sessionLanguage:E,settings:C,showCloseModal:y,showDeleteModal:w,showSaveAsModal:T}=this.state,F=c&&!a.isHidden&&!p,N=(e=m==null?void 0:m.itemName)!==null&&e!==void 0?e:Pe.DEFAULT_NAME,P=N.endsWith(".md"),_=(m==null?void 0:m.id)!=null,A=this.getSettings(C,(t=o.isMinimapEnabled)!==null&&t!==void 0?t:!1),x=b!=null,V=E===A.language,U=!v||!x||!V,K=!v,ne=[{action:this.handleSave,shortcut:gn.SAVE},{action:this.handleMinimapChange,shortcut:ht.NOTEBOOK.MINIMAP},{action:this.handleWordWrapChange,shortcut:ht.NOTEBOOK.WORDWRAP}],le=On.getDisabledRunTooltip(x,V,"Notebook extension","Run"),ve=On.getDisabledRunTooltip(x,V,"Notebook extension","Run Selected"),fe=[{title:_?"Rename":"Save As…",order:10,group:He.groups.high,action:this.handleShowRename},{title:"Copy File",action:this.handleCopy,group:He.groups.high,order:20}],Ie=l==null?void 0:l.element.find(".lm_title_before").get(0);return f.jsxs(f.Fragment,{children:[Ie!=null&&Cs.createPortal(f.jsx("span",{className:Me(Pe.UNSAVED_INDICATOR_CLASS_NAME,{[Pe.UNSAVED_STATUS_CLASS_NAME]:u!==d})}),Ie),f.jsxs(Kt,{className:"notebook-container",componentPanel:this,glContainer:a,glEventHub:s,onTab:this.handleTab,onResize:this.handleResize,onShow:this.handleShow,onTabClicked:this.handleTabClick,onTabFocus:this.handleTabFocus,onTabBlur:this.handleTabBlur,onSessionOpen:this.handleSessionOpened,onSessionClose:this.handleSessionClosed,additionalActions:fe,renderTabTooltip:()=>N,children:[!P&&f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"notebook-toolbar",children:[f.jsxs("span",{children:[f.jsx(Y,{kind:"ghost",className:"btn-play",onClick:this.handleRunAll,disabled:U,icon:f.jsx(Fe,{icon:mo,transform:"grow-4"}),tooltip:"Run ".concat(ht.NOTEBOOK.RUN.getDisplayText()),"aria-label":"Run"}),le!=null&&f.jsx(bn,{children:le})]}),f.jsxs("span",{children:[f.jsx(Y,{kind:"ghost",className:"btn-play",onClick:this.handleRunSelected,disabled:U,icon:f.jsx(Fe,{icon:go,transform:"grow-4"}),tooltip:"Run Selected ".concat(ht.NOTEBOOK.RUN_SELECTED.getDisplayText()),"aria-label":"Run Selected"}),ve!=null&&f.jsx(bn,{children:ve})]}),f.jsx(Y,{kind:"ghost",className:"mr-auto",disabled:K,onClick:this.handleSave,icon:Ja,tooltip:"Save ".concat(gn.SAVE.getDisplayText()),"aria-label":"Save"}),f.jsx(Y,{kind:"ghost",className:"btn-overflow",disabled:K,icon:bo,tooltip:"More Actions...",onClick:()=>{},children:f.jsx(Ba,{actions:this.getDropdownOverflowActions,popperOptions:Pe.POPPER_OPTIONS})})]}),f.jsx(fl,{isLoaded:v,isLoading:g,error:h,onChange:this.handleEditorChange,onRunCommand:this.handleRunCommand,session:b,sessionLanguage:E,onEditorInitialized:this.handleEditorInitialized,onEditorWillDestroy:this.handleEditorWillDestroy,settings:A,focusOnMount:F,ref:R=>{this.notebook=R}})]}),P&&f.jsx(O.Suspense,{fallback:f.jsx(ft,{}),children:f.jsx(Tc,{content:(r=A.value)!==null&&r!==void 0?r:"",onLinkClick:this.handleLinkClick,onRunCode:this.handleRunCommand,transformImageUri:this.handleTransformLinkUri,transformLinkUri:this.handleTransformLinkUri})}),f.jsx(Hs,{isOpen:T,type:"file",defaultValue:N,title:_?"Rename":"Save file as",onSubmit:this.handleSaveAsSubmit,onCancel:this.handleSaveAsCancel,notifyOnExtensionChange:!0,storage:i}),f.jsx(ni,{isOpen:w,headerText:'Are you sure you want to delete "'.concat(N,'"?'),bodyText:"You cannot undo this action.",onCancel:this.handleDeleteCancel,onConfirm:this.handleDeleteConfirm,confirmButtonText:"Delete"}),f.jsx(ni,{isOpen:y,headerText:"Do you want to save the changes you made to ".concat(N,"?"),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(He,{actions:ne})]})]})}}Ne(Pe,"COMPONENT","NotebookPanel");Ne(Pe,"POPPER_OPTIONS",{placement:"bottom-end"});Ne(Pe,"DEFAULT_NAME","Untitled");Ne(Pe,"UNSAVED_INDICATOR_CLASS_NAME","editor-unsaved-indicator");Ne(Pe,"UNSAVED_STATUS_CLASS_NAME","is-unsaved");Ne(Pe,"defaultProps",{isDashboardActive:!0,isPreview:!1,session:null,sessionLanguage:null,notebookSettings:{isMinimapEnabled:!0}});var Pc=(n,e)=>{var t=Gs(n),r=Ua(n),i=Wa(n,e.localDashboardId),{session:a,config:l}=i??{},{type:s}=l??{};return{fileStorage:t,notebookSettings:r,session:a,sessionLanguage:s}},Et=wt(Pc,{updateNotebookSettings:$s},null,{forwardRef:!0})(Pe);function Il(n){var{onClick:e}=n,t=O.useRef(null),r=O.useCallback(i=>{var a;(a=t.current)===null||a===void 0||a.blur(),e(i)},[e]);return f.jsxs(Y,{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(Fe,{icon:tl,transform:"shrink-1",className:"mr-1"}),"Reload"]})]})}function ta(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ra(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ta(Object(t),!0).forEach(function(r){Jr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ta(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Jr(n,e,t){return e=Dc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dc(n){var e=Oc(n,"string");return typeof e=="symbol"?e:String(e)}function Oc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class en extends O.Component{constructor(e){super(e),Jr(this,"irisGridRef",void 0),this.irisGridRef=Re.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(Wt,ra(ra({ref:this.irisGridRef,onStateChange:this.handleGridStateChange,onPanelStateUpdate:this.handlePanelStateUpdate},this.props),{},{children:f.jsx(Il,{onClick:this.handleReload})}))}}Jr(en,"defaultProps",{panelState:null});Jr(en,"COMPONENT","PandasPanel");function na(n,e,t,r,i,a,l){try{var s=n[a](l),o=s.value}catch(u){t(u);return}s.done?e(o):Promise.resolve(o).then(r,i)}function ia(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){na(a,r,i,l,s,"next",o)}function s(o){na(a,r,i,l,s,"throw",o)}l(void 0)})}}function aa(n,e,t){return e=Nc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nc(n){var e=Fc(n,"string");return typeof e=="symbol"?e:String(e)}function Fc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mc{constructor(e){aa(this,"items",void 0),aa(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];ii(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];ii(t)&&(t.isExpanded=!1)}return Promise.resolve()}getViewportData(){return Promise.resolve({items:this.items,offset:0})}getSnapshot(e){return ia(function*(){throw new Error("Method not implemented.")})()}setViewport(e){var t=this;return ia(function*(){var r,i=yield t.getViewportData();(r=t.onUpdateCallback)===null||r===void 0||r.call(t,i)})()}setFilters(e){}setSorts(e){}setReversed(e){}close(){}onUpdate(e){return this.onUpdateCallback=e,jest.fn()}get size(){return this.items.length}}function 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 tr(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 Rc(n,e,t){return e=Ic(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ic(n){var e=Lc(n,"string");return typeof e=="symbol"?e:String(e)}function Lc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ac{constructor(e){Rc(this,"items",void 0),this.items=e}getTable(){var e=this;return tr(function*(){return new Mc(e.items)})()}saveFile(e){throw new Error("Method not implemented.")}loadFile(e){throw new Error("Method not implemented.")}copyFile(e,t){return tr(function*(){throw new Error("Method not implemented.")})()}deleteFile(e){var t=this;return tr(function*(){t.items=t.items.filter(r=>r.filename!==e)})()}moveFile(e,t){var r=this;return tr(function*(){for(var i=0;i<r.items.length;i+=1)if(r.items[i].filename===e){r.items[i].filename=t,r.items[i].basename=Ve.getBaseName(t),r.items[i].id=t;break}})()}info(e){var t=this;return tr(function*(){var r=t.items.filter(a=>a.filename===e);if(r.length===0)throw new Bs;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.")}}function sa(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 Vr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?sa(Object(t),!0).forEach(function(r){xc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):sa(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function xc(n,e,t){return e=kc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kc(n){var e=_c(n,"string");return typeof e=="symbol"?e:String(e)}function _c(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 oa(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 Ll(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function l(o){oa(a,r,i,l,s,"next",o)}function s(o){oa(a,r,i,l,s,"throw",o)}l(void 0)})}}function jc(n,e,t,r){return Fn.apply(this,arguments)}function Fn(){return Fn=Ll(function*(n,e,t,r){var i={},a="",l={};if(jt(e)&&(i=e.settings,a=e.table,l=e.tableSettings),r!=null&&(r.tableSettings!=null&&(l=r.tableSettings),r.table!=null&&(a=r.table),r.settings!=null&&(i=Vr(Vr({},i),r.settings))),a!=null&&a!==""){var s=yield t();return new G(n).applyTableSettings(s,l,za(nl.getState())),Gt.makeModelFromSettings(n,i,s)}var o=yield t();return Gt.makeModel(n,i,o)}),Fn.apply(this,arguments)}var Kn=O.forwardRef((n,e)=>{var t=Ol(n)?n.panelState:void 0,{fetch:r,metadata:i,localDashboardId:a}=n;I(i);var[l,s]=$o(i),o=O.useCallback(Ll(function*(){if(s!=null)throw s;return l==null?new Promise(()=>{}):jc(l,i,r,t)}),[l,s,i,r,t]);return f.jsx(gr,Vr(Vr({ref:e},n),{},{metadata:i,localDashboardId:a,makeModel:o}))});Kn.displayName="ChartPanelPlugin";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 Vc(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 Al(n){var e=xn(),[t,r]=O.useState(),{fetch:i}=n;return O.useEffect(()=>{var a=!1;function l(){return s.apply(this,arguments)}function s(){return s=Vc(function*(){var o=yield i(),u=yield Gt.makeModel(e,void 0,o);a||r(u)}),s.apply(this,arguments)}return l(),()=>{a=!0}},[e,i]),t?f.jsx(ol,{model:t}):null}var $c={name:"ChartPanel",title:"Chart",type:Pt.WIDGET_PLUGIN,component:Al,panelComponent:Kn,supportedTypes:"Figure",icon:Eo};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 Hc(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 xl(n){Xt(n);var{id:e,layout:t}=n,r=O.useCallback(i=>{var{metadata:a,panelId:l=ze(),table:s}=i,{settings:o}=a,u=function(){var v=Hc(function*(){return s});return function(){return v.apply(this,arguments)}}(),d=M.titleFromSettings(o),h={type:"react-component",component:gr.COMPONENT,props:{localDashboardId:e,id:l,metadata:a,fetch:u},title:d,id:l},{root:c}=t;$.openComponent({root:c,config:h})},[e,t]);return ge(t.eventHub,Ee.CREATE_CHART,r),null}var Gc={name:"ChartBuilderPlugin",type:Pt.DASHBOARD_PLUGIN,component:xl};function kl(){var{python:{linter:n={}}={}}=Us(Ua),{isEnabled:e=!1,config:t}=n;O.useEffect(function(){mn.isRuffEnabled=e,mn.setRuffSettings(t)},[e,t])}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){Bc(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 Bc(n,e,t){return e=Uc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uc(n){var e=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)}var pe=Q.module("ConsolePlugin");function va(n){return n.notebook!==void 0}function zc(n){Xt(n)}function qc(n){zc(n);var{id:e,hydrateConsole:t,layout:r,panelManager:i,registerComponent:a,notebooksUrl:l}=n,s=O.useRef(0),[o,u]=O.useState(new Map),[d,h]=O.useState(new Map);kl();var c=ka(),v=O.useCallback(()=>i.getLastUsedPanelOfType(Lr),[i]),g=O.useCallback((R,L)=>{u(j=>new Map(j.set(R,L)))},[u]),p=O.useCallback(R=>{u(L=>(L.delete(R),new Map(L)))},[u]),m=O.useCallback((R,L)=>{h(j=>new Map(j.set(R,L)))},[h]),b=O.useCallback(R=>{h(L=>(L.delete(R),new Map(L)))},[h]),E=O.useCallback(function(R){var L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,W=R&&R.trim();if(!W)pe.info("Ignoring empty code");else{var q=v();if(!q||!(q instanceof Lr.WrappedComponent)){pe.error("Console panel not found");return}pe.debug("Send command: ",R,L,j),q.addCommand(R,L,j)}},[v]),C=O.useCallback(R=>{c(yl(e,R))},[c,e]),y=O.useCallback(R=>{var{language:L}=R,j=L==="python"?"py":L,W=null;return j==null?(pe.debug("No extension for language",L),W="Untitled-".concat(s.current)):W="Untitled-".concat(s.current,".").concat(j),s.current+=1,W},[]),w=O.useCallback(function(R){var L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{id:j}=R;if(j!=null&&o.has(j))return o.get(j);if(j!=null&&d.has(j))return d.get(j);if(L)return ze()},[o,d]),T=O.useCallback((R,L)=>{$.renameComponent(r.root,{id:R},L)},[r.root]),F=O.useCallback((R,L)=>{pe.debug("Rename file panel",R,L);var j;if(o.has(R)&&(j=o.get(R),p(R),j!=null&&g(L,j)),d.has(R)&&(j=d.get(R),b(R),j!=null&&m(L,j)),j===void 0){pe.debug2("File ".concat(R," isn't open, no need to rename the tab"));return}T(j,Ve.getBaseName(L))},[o,d,T,g,m,p,b]),N=O.useCallback(R=>{var L=w(R,!1);if(L==null){pe.error("Could not find panel id for file metadata",R);return}$.activateTab(r.root,{id:L})},[w,r.root]),P=O.useCallback((R,L,j)=>{if(pe.debug("registerFilePanel",R,L,j),L==null||L.id==null){pe.debug("Ignore empty file id",L);return}var{id:W}=L;if(j){m(W,R);return}if(o.has(W)){var q=o.get(W);if(R===q){pe.debug("Update tab title for file ".concat(W));var{itemName:Se}=L;F(W,Se)}else pe.error("File ".concat(W," already associated with a different tab ").concat(q));return}g(W,R),d.has(W)&&b(W)},[o,d,F,g,m,b]),_=O.useCallback((R,L)=>{if(pe.debug("unregisterFileTab",R,L),R==null||R.id==null){pe.debug("Ignore empty file id",R);return}var{id:j}=R;if(L){b(j);return}p(j)},[p,b]),A=O.useCallback((R,L)=>{pe.debug("closeFilePanel",R);var{id:j}=R,W=null,q=!1;if(o.has(j))W=o.get(j);else if(d.has(j))W=d.get(j),q=!0;else{pe.debug("File ".concat(j," isn't open, ignore close event"));return}_(R,q),$.closeComponent(r.root,{id:W},L)},[r.root,o,d,_]),x=O.useCallback(R=>{var{itemName:L}=R;return Ve.getBaseName(L)},[]),V=O.useCallback(R=>{var{id:L}=R;return pe.debug("fileIsOpen",R,L,o),L!=null&&o.has(L)},[o]),U=O.useCallback(R=>{var{id:L}=R;return pe.debug("fileIsOpenAsPreview",R,L,d),L!=null&&d.has(L)},[d]),K=O.useCallback(R=>{if(R!=null){var L=i.getOpenedPanelById(R);L&&va(L)&&L.focus()}},[i]),ne=O.useCallback(R=>{var{id:L,settings:j,fileMetadata:W,session:q,sessionLanguage:Se,isPreview:ye=!1}=R,ke={settings:j,fileMetadata:W},Ke=x(W);return{type:"react-component",component:Et.COMPONENT,isFocusOnShow:!1,props:{localDashboardId:e,metadata:{id:L},session:q,sessionLanguage:Se,panelState:ke,isPreview:ye,notebooksUrl:l},title:Ke,id:L}},[x,e,l]),le=O.useCallback(function(R,L,j){var W=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{id:null,itemName:y(j)},q=w(W);if(V(W)&&q!=null){pe.debug("File is already open, focus panel"),N(W),K(q);return}var Se=$.getStackForComponentTypes(r.root,[Et.COMPONENT]),ye=ne({id:q,settings:j,fileMetadata:W,session:R,sessionLanguage:L});pe.debug("createNotebook",ye,o),$.openComponentInStack(Se,ye)},[V,K,y,w,r.root,ne,o,N]),ve=O.useCallback(function(R,L,j,W){var q=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;pe.debug("selectNotebook",W,q);var Se=V(W),ye=U(W),[ke]=[...d.values()],Ke=!q,Xe=Ke&&ke?ke:w(W);if(Xe==null||Xe==="")throw new Error("Unable to retrieve or create panelId for metadata",W);if(Se||ye)N(W);else{var rn=$.getStackForComponentTypes(r.root,[Et.COMPONENT]),nn=ne({id:Xe,settings:j,fileMetadata:W,session:R,sessionLanguage:L,isPreview:Ke});$.openComponentInStack(rn,nn)}if(ye&&q){var Cr=W.id,an=$.getStackForConfig(r.root,{component:Et.COMPONENT,id:Xe}),Zt=$.getContentItemInStack(an,{component:Et.COMPONENT,id:Xe});Zt&&Ws(Zt)&&(Zt.container.emit(se.PROMOTE_FROM_PREVIEW),b(Cr),g(Cr,Xe))}q&&K(Xe)},[N,V,U,K,w,r.root,ne,d,b,g]),fe=O.useCallback(function(R,L){var j=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},W=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,q=i.getLastUsedPanelOfType(Et);q&&va(q)?j!=null&&j.value!=null&&q.notebook!=null&&q.notebook.append(j.value):W&&le(R,L,j)},[le,i]),Ie=O.useCallback((R,L)=>zs.hydrate(ca(ca({},R),{},{notebooksUrl:l}),L),[l]);return Jt(a,Lr,t),Jt(a,qa),Jt(a,Ka),Jt(a,Xa),Jt(a,Et,Ie),ge(r.eventHub,_r.SEND_COMMAND,E),ge(r.eventHub,_r.SETTINGS_CHANGED,C),ge(r.eventHub,se.CLOSE_FILE,A),ge(r.eventHub,se.CREATE_NOTEBOOK,le),ge(r.eventHub,se.SELECT_NOTEBOOK,ve),ge(r.eventHub,se.RENAME,T),ge(r.eventHub,se.RENAME_FILE,F),ge(r.eventHub,se.SEND_TO_NOTEBOOK,fe),ge(r.eventHub,se.REGISTER_FILE,P),ge(r.eventHub,se.UNREGISTER_FILE,_),null}var rr=Q.module("FilterPlugin");function fa(n,e){return n.concat(e)}function _l(n){Xt(n);var{id:e,layout:t,registerComponent:r}=n,i=ka(),[a]=O.useState(()=>new Map),[l]=O.useState(()=>new Map),[s]=O.useState(()=>new Map),o=O.useCallback(()=>{var m=Array.from(a.values()).reduce(fa,[]).sort((C,y)=>{var w=Ye.toLower(C.name),T=Ye.toLower(y.name);if(w!==T)return w>T?1:-1;var F=Ye.toLower(C.type),N=Ye.toLower(y.type);return F!==N?F>N?1:-1:0}).reduce((C,y)=>((C.length===0||Ye.toLower(C[C.length-1].name)!==Ye.toLower(y.name)||Ye.toLower(C[C.length-1].type)!==Ye.toLower(y.type))&&C.push(y),C),[]),b=Array.from(l.values()).reduce(fa,[]).sort((C,y)=>C.timestamp-y.timestamp),E=new Map(s);rr.debug("sendUpdate",{columns:m,filters:b,tableMap:E}),i(Tt(e,{columns:m,filters:b,tableMap:E}))},[i,e,a,l,s]),u=O.useCallback((m,b)=>{rr.debug2("handleColumnsChanged",m,b),a.set(m,[].concat(b)),o()},[a,o]),d=O.useCallback((m,b)=>{rr.debug2("handleFiltersChanged",m,b),l.set(m,[].concat(b)),o()},[l,o]),h=O.useCallback((m,b)=>{rr.debug2("handleTableChanged",m,b),s.set($.getIdFromPanel(m),b),o()},[s,o]),c=O.useCallback(m=>{rr.debug2("handlePanelUnmount",m),a.delete(m),l.delete(m),s.delete($.getIdFromPanel(m)),o()},[a,l,s,o]),v=O.useCallback(m=>{var{title:b="DropdownFilter",metadata:E={},panelState:C=null,id:y=ze(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=null}=m,N={type:"react-component",component:yt.COMPONENT,props:{id:y,metadata:E,panelState:C,localDashboardId:e},title:b,id:y},{root:P}=t;$.openComponent({root:P,config:N,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]),g=O.useCallback(m=>{var{title:b="InputFilter",metadata:E={},panelState:C=null,id:y=ze(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=void 0}=m,N={type:"react-component",component:Vt.COMPONENT,props:{id:y,metadata:E,panelState:C,localDashboardId:e},title:b,id:y},{root:P}=t;$.openComponent({root:P,config:N,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]),p=O.useCallback(m=>{var{title:b="FilterSets",metadata:E={},panelState:C=null,id:y=ze(),focusElement:w=$.DEFAULT_FOCUS_SELECTOR,createNewStack:T=!1,dragEvent:F=null}=m,N={type:"react-component",component:Ar.COMPONENT,props:{id:y,metadata:E,panelState:C,localDashboardId:e},title:b,id:y},{root:P}=t;$.openComponent({root:P,config:N,focusElement:w,createNewStack:T,dragEvent:F})},[t,e]);return O.useEffect(function(){var b=[r(yt.COMPONENT,yt),r(Vt.COMPONENT,Vt),r(Ar.COMPONENT,Ar)];return()=>{b.forEach(E=>E())}},[r]),ge(t.eventHub,Ce.COLUMNS_CHANGED,u),ge(t.eventHub,Ce.FILTERS_CHANGED,d),ge(t.eventHub,Ce.TABLE_CHANGED,h),ge(t.eventHub,Ce.OPEN_DROPDOWN,v),ge(t.eventHub,Ce.OPEN_INPUT,g),ge(t.eventHub,Ce.OPEN_FILTER_SET_MANAGER,p),ge(t.eventHub,Ae.UNMOUNT,c),null}var Kc={name:"FilterPlugin",type:Pt.DASHBOARD_PLUGIN,component:_l},Xc=Q.module("@deephaven/app-utils/useTablePlugin");function jl(){var n=Ya(),e=O.useCallback(t=>{var r=n.get(t);if(r!=null){if(qs(r))return r.component;if(Ks(r))return r.TablePlugin}var i="Unable to find table plugin ".concat(t,".");throw Xc.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 Yc(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 Vl(n,e,t){var r=xn(),i=jl(),a=O.useMemo(()=>({loadPlugin:i,localDashboardId:e,makeModel:function(){var l=Yc(function*(){var o=yield n();return pl.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){Zc(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 Zc(n,e,t){return e=Qc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qc(n){var e=Jc(n,"string");return typeof e=="symbol"?e:String(e)}function Jc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Xn=O.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=Vl(r,t,i);return f.jsx(Wt,ga(ga({ref:e},n),a))});Xn.displayName="GridPanelPlugin";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 fn(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 $l(n){var e=xn(),[t,r]=O.useState(),[i,a]=O.useState(),[l,s]=O.useState(!0),o=O.useCallback(fn(function*(){var d=yield n();return pl.makeModel(e,d)}),[e,n]),u=O.useCallback(fn(function*(){s(!0),a(void 0);try{var d=yield o();r(d),s(!1)}catch(h){a(h),s(!1)}}),[o]);if(O.useEffect(()=>{var d=!1;function h(){return c.apply(this,arguments)}function c(){return c=fn(function*(){s(!0),a(void 0);try{var v=yield o();d||(r(v),s(!1))}catch(g){d||(a(g),s(!1))}}),c.apply(this,arguments)}return h(),()=>{d=!0}},[o]),O.useEffect(function(){if(!t)return;function h(){a(new Error("Table disconnected")),r(void 0),s(!1)}return t.addEventListener(z.EVENT.DISCONNECT,h),()=>{t.removeEventListener(z.EVENT.DISCONNECT,h)}},[t]),l)return{reload:u,status:"loading"};if(i!=null)return{error:i,reload:u,status:"error"};if(t!=null)return{model:t,reload:u,status:"success"};throw new Error("Invalid state")}function Hl(n){var{fetch:e}=n,t=Ss(Wr),r=$l(e);if(r.status==="loading")return f.jsx(ft,{isLoading:!0});if(r.status==="error")return f.jsx(ft,{errorMessage:Za(r.error),isLoading:!1});var{model:i}=r;return f.jsx(Kr,{model:i,settings:t})}var ev={name:"IrisGridPanel",title:"Table",type:Pt.WIDGET_PLUGIN,component:Hl,panelComponent:Xn,supportedTypes:["Table","TreeTable","HierarchicalTable","PartitionedTable"],icon:yo};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 gt(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){Gl(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 Gl(n,e,t){return e=tv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tv(n){var e=rv(n,"string");return typeof e=="symbol"?e:String(e)}function rv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Bl(n){var e=n;return typeof e.getCoordinateForColumn=="function"}function Sa(n){var e=n;return Bl(n)&&typeof e.setFilterMap=="function"&&typeof e.unsetFilterValue=="function"}function Ea(n){return n.description==null||!n.description.startsWith("Preview of type: ")}var nr=Q.module("LinkerUtils");class it{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 nr.debug2("Incompatible panel ids",e,t,r),"invalid";if(e.panelComponent==null||t.panelComponent==null)return nr.error("PanelComponent should not be null",e,t),"invalid";var a=(i=it.ALLOWED_LINKS.get(e.panelComponent))===null||i===void 0?void 0:i.includes(t.panelComponent);if(a===void 0||!a)return nr.debug2("Incompatible panel components",e,t),"invalid";var{columnType:l}=e,{columnType:s}=t,o=s===null||S.isCompatibleType(l,s);if(!o)return nr.debug2("Incompatible type",l,s),"invalid";switch(t.panelComponent){case $.getComponentName(gr):return"chartLink";case $.getComponentName(Wt):return"tableLink";case $.getComponentName(yt):return"filterSource"}return nr.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(gt(gt({},a),{},{id:ze(),start:gt(gt({},a.start),{},{panelId:r})})):((l=a.end)===null||l===void 0?void 0:l.panelId)===t&&i.push(gt(gt({},a),{},{id:ze(),end:gt(gt({},a.end),{},{panelId:r})}))}),i}}Gl(it,"ALLOWED_LINKS",new Map([[$.getComponentName(Wt),[$.getComponentName(Wt),$.getComponentName(gr),$.getComponentName(yt)]]]));function Ul(n,e,t){return e=nv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nv(n){var e=iv(n,"string");return typeof e=="symbol"?e:String(e)}function iv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var av=Q.module("LinkerLink"),ya=.015,wa=1.5,Wl=12,zl=12,Ta=2,Rr=Math.sqrt((zl*.5)**2+Wl**2),Pa=Math.asin(zl*.5/Wl),Da=15,bt=Math.PI*.5;class $t extends O.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 Su(t);if(S.isTextType(e))return Cu(t);if(S.isDateType(e))return Eu(t);if(S.isBooleanType(e)){if(t===D.eq)return"is equal to";if(t===D.notEq)return"is not equal to"}throw new Error("Unrecognized column type: ".concat(e))}catch(r){return av.warn(r),""}}constructor(e){super(e),Ul(this,"getOperators",B((t,r)=>{var{onOperatorChanged:i}=this.props,a=S.getFilterTypes(r);return S.isBooleanType(r)&&(a=[D.eq,D.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:$t.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,E=0,C=0,y=Math.max(E,Math.min(i+(l-i)/2+g*(c*ya)**wa,m)),w=Math.max(C,Math.min(a+(s-a)/2+p*(c*ya)**wa,b)),T="M ".concat(i," ").concat(a," Q ").concat(y," ").concat(w," ").concat(l," ").concat(s),F="M ".concat(E," ").concat(C," L ").concat(E," ").concat(b," L ").concat(m," ").concat(b," L ").concat(m," ").concat(C,` z
|
|
12
|
+
`).concat($t.makeCirclePath(i,a,Da),`
|
|
13
|
+
`).concat($t.makeCirclePath(l,s,Da)),N="link-select-clip-".concat(o),P=Math.atan2(s-w,l-y),_=P-Pa+Math.PI,A=P+Pa+Math.PI,x=l+Math.cos(P)*Ta,V=s+Math.sin(P)*Ta,U=x+Math.cos(_)*Rr,K=V+Math.sin(_)*Rr,ne=x+Math.cos(A)*Rr,le=V+Math.sin(A)*Rr,ve="".concat(x,",").concat(V," ").concat(U,",").concat(K," ").concat(ne,",").concat(le),fe=.25*i+.5*y+.25*l,Ie=.25*a+.5*w+.25*s,R=y-i+(l-y),L=w-a+(s-w),j=L/R,W=20,q=W/Math.sqrt(1+j**2),Se=q*j,ye=q*-1,ke=Se*-1;Number.isFinite(j)?j>0?(q*=-1,Se*=-1,ye*=-1,ke*=-1,ye-=50-10*(Math.abs(v)%bt),ke+=10*(Math.abs(v)%bt),q-=50-10*(Math.abs(v)%bt),Se+=10*(Math.abs(v)%bt)):j<0?(ye+=10*(Math.abs(v)%bt),ke+=10*(Math.abs(v)%bt),q+=10*(Math.abs(v)%bt),Se+=10*(Math.abs(v)%bt)):(ye=15,ke=10,q=-25,Se=10):(ye=10,ke=5,q=10,Se=-35);var Ke="";t!==void 0&&(t==="startsWith"?Ke="a*":t==="endsWith"?Ke="*z":Ke=S.getFilterOperatorString(t));var Xe=d!=="chartLink"&&d!=="filterSource";return f.jsxs(f.Fragment,{children:[f.jsxs("svg",{className:Me(e,{hovering:h}),children:[f.jsx("clipPath",{id:N,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(N,")"),"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:ve})]}),u!=null&&r&&f.jsxs(f.Fragment,{children:[Xe&&f.jsx(Y,{kind:"primary",className:"btn-fab btn-operator",style:{top:Ie+(j>=0?Se:ke),left:fe+(j>=0?q:ye)},onClick:()=>{},icon:f.jsxs("div",{className:"fa-md fa-layers",children:[f.jsx("b",{children:Ke}),f.jsx(Fe,{icon:wo,transform:"right-8 down-9 shrink-5"})]}),tooltip:"Change comparison operator",children:f.jsx(Ba,{actions:this.getDropdownActions,popperOptions:{placement:"bottom-start"}})}),f.jsx(Y,{kind:"primary",className:"btn-fab btn-delete",style:{top:Ie+(j<0?Se:ke),left:fe+(j<0?q:ye)},onClick:this.handleDelete,icon:zr,tooltip:"Delete"})]})]})}}Ul($t,"defaultProps",{className:"",isSelected:!1,onClick(){},onDelete(){}});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 Na(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){Yn(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 Yn(n,e,t){return e=lv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lv(n){var e=sv(n,"string");return typeof e=="symbol"?e:String(e)}function sv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pn=Q.module("LinkerOverlayContent");class ql extends O.Component{constructor(e){super(e),Yn(this,"dialogRef",void 0),this.handleBlur=this.handleBlur.bind(this),this.handleResize=this.handleResize.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.handleEscapePressed=this.handleEscapePressed.bind(this),this.handleOperatorChanged=this.handleOperatorChanged.bind(this),this.dialogRef=Re.createRef(),this.state={mouse:void 0,dialog:void 0,offset:{x:0,y:0},isDragging:!1,mode:"select"}}componentDidMount(){window.addEventListener("blur",this.handleBlur,!0),window.addEventListener("mousemove",this.handleMouseMove,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),window.addEventListener("keydown",this.handleKeyDown,!0),window.addEventListener("keyup",this.handleKeyUp,!0),window.addEventListener("resize",this.handleResize,!0)}componentDidCatch(e,t){pn.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(!Bl(a))throw new Error("Panel does not have getCoordinateForColumn method: ".concat(r));try{var l=a.getCoordinateForColumn(i);if(l!=null)return l}catch{pn.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?Na(Na({},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=Je(e.x,0,window.innerWidth-t.width),i=Je(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=Je(window.innerWidth-(e.clientX+i.width+t.x),0,window.innerWidth-i.width),l=Je(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:E,isReversed:C,start:y,end:w,operator:T}=g,F=y.columnType,[N,P]=this.getPointFromLinkPoint(y),_=(p=u==null?void 0:u.x)!==null&&p!==void 0?p:N,A=(m=u==null?void 0:u.y)!==null&&m!==void 0?m:P;if(w!=null&&([_,A]=this.getPointFromLinkPoint(w)),C!=null&&C){var[x,V]=[N,P];[N,P]=[_,A],[_,A]=[x,V]}var U=Me("linker-link",{disabled:e},{"link-filter-source":E==="filterSource"},{"link-invalid":E==="invalid"},{interactive:g.end==null},{"link-is-selected":r.has(b)},{"danger-delete":c==="delete"});return{x1:N,y1:P,x2:_,y2:A,id:b,className:U,operator:T,startColumnType:F,type:E}}catch(K){return pn.warn("Unable to get point for link",g,K),null}}).filter(g=>g!=null);return f.jsxs("div",{className:Me("linker-overlay",{"danger-delete":c==="delete"}),children:[v.map(g=>{var{x1:p,y1:m,x2:b,y2:E,id:C,className:y,operator:w,startColumnType:T,type:F}=g;return f.jsx($t,{className:y,id:C,x1:p,y1:m,x2:b,y2:E,onClick:a,onDelete:l,isSelected:r.has(C),operator:w,startColumnType:T,type:F,onOperatorChanged:this.handleOperatorChanged},C)}),f.jsxs("div",{className:Me("linker-toast-dialog",{dragging:h}),ref:this.dialogRef,style:{bottom:d==null?void 0:d.y,right:d==null?void 0:d.x},"data-testid":"linker-toast-dialog",children:[f.jsx(Y,{draggable:!0,kind:"inline",className:"btn-drag-handle",icon:To,onClick:()=>{},onMouseDown:this.handleMouseDown,children:!h&&f.jsx(bn,{children:"Drag to reposition"})}),f.jsx("div",{className:"toast-body",children:i}),f.jsxs("div",{className:"toast-footer",children:[f.jsx(Y,{kind:"secondary",onClick:s,children:"Clear All"}),f.jsx(Y,{kind:"primary",onClick:o,children:"Done"})]})]}),f.jsx(He,{actions:[{action:this.handleEscapePressed,shortcut:gn.LINKER_CLOSE,isGlobal:!0}]})]})}}Yn(ql,"defaultProps",{disabled:"false"});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){Kl(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 Kl(n,e,t){return e=ov(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ov(n){var e=uv(n,"string");return typeof e=="symbol"?e:String(e)}function uv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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=Q.module("Linker"),dv=(n,e)=>({activeTool:Ln(n),dh:Ha(n),isolatedLinkerPanelId:Gr(n,e.localDashboardId),links:It(n,e.localDashboardId),timeZone:za(n)}),hv=wt(dv,{setActiveTool:Va,setDashboardLinks:Xr,addDashboardLinks:Cl,deleteDashboardLinks:Sl,setDashboardIsolatedLinkerPanelId:Un,setDashboardColumnSelectionValidator:El});class cv extends O.Component{constructor(e){super(e),Kl(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===Qe.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(Ee.COLUMN_SELECTED,this.handleGridColumnSelect),t.on(Ee.DATA_SELECTED,this.handleUpdateValues),t.on(Ee.STATE_CHANGED,this.handleStateChange),t.on(Rt.COLUMN_SELECTED,this.handleChartColumnSelect),t.on(Ae.CLONED,this.handlePanelCloned),t.on(Ce.COLUMN_SELECTED,this.handleFilterColumnSelect),t.on(Ce.COLUMNS_CHANGED,this.handleColumnsChanged),t.on(Ae.CLOSE,this.handlePanelClosed),t.on(Ae.CLOSED,this.handlePanelClosed),t.on(Ae.DRAGGING,this.handlePanelDragging),t.on(Ae.DROPPED,this.handlePanelDropped)}stopListening(e){e.off("stateChanged",this.handleLayoutStateChanged);var{eventHub:t}=e;t.off(Ee.COLUMN_SELECTED,this.handleGridColumnSelect),t.off(Ee.DATA_SELECTED,this.handleUpdateValues),t.off(Ee.STATE_CHANGED,this.handleStateChange),t.off(Rt.COLUMN_SELECTED,this.handleChartColumnSelect),t.off(Ae.CLONED,this.handlePanelCloned),t.off(Ce.COLUMN_SELECTED,this.handleFilterColumnSelect),t.off(Ce.COLUMNS_CHANGED,this.handleColumnsChanged),t.off(Ae.CLOSE,this.handlePanelClosed),t.off(Ae.CLOSED,this.handlePanelClosed),t.off(Ae.DRAGGING,this.handlePanelDragging),t.off(Ae.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(Qe.DEFAULT)}this.setState({linkInProgress:void 0})}handleDone(){var{setActiveTool:e}=this.props;e(Qe.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(Qe.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&&it.findColumn(t,s)==null||o!=null&&o.panelId===i&&it.findColumn(t,o)==null});this.deleteLinks(a)}handleGridColumnSelect(e,t){if(!Ea(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:ze(),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=it.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 E=p!==void 0&&p?v.panelId:m.panelId,C=c.filter(N=>{var{end:P}=N;return(P==null?void 0:P.panelId)===E});this.deleteLinks(C);break}case"chartLink":{var y=p===!0?v:m,w=p===!0?m:v;Te.debug("creating chartlink",{existingLinkEnd:y,start:v,end:m});var T=c.filter(N=>{var{end:P,start:_}=N;return(_==null?void 0:_.panelId)===w.panelId&&(P==null?void 0:P.panelId)===y.panelId&&(P==null?void 0:P.columnName)===y.columnName&&(P==null?void 0:P.columnType)===y.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:D.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:E,isGrouped:C}=t[u.columnName],{value:y}=t[u.columnName],w="".concat(y);if(y===null&&E&&C&&(y=void 0),g!=null&&S.isDateType(g)){var T=new kr(i,{timeZone:l,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:ae.FULL_DATE_FORMAT});w=T.format(y)}var F={operator:h,text:w,value:y,startColumnIndex:b};m.push(F),p.set(v,{columnType:g,filterList:m}),s.set(c,p)}}s.forEach((N,P)=>{this.setPanelFilterMap(P,N)})}handlePanelCloned(e,t){var{links:r}=this.props,i=$.getIdFromPanel(e),a=t.id;if(i!=null){var l=it.cloneLinksForPanel(r,i,a);this.addLinks(l)}}handlePanelDragging(e){for(var{links:t}=this.props,r=0;r<t.length;r+=1){var i=t[r],{start:a,end:l}=i;if(a.panelId===e||(l==null?void 0:l.panelId)===e){this.setState({isDraggingPanel:!0});return}}}handlePanelDropped(){this.setState({isDraggingPanel:!1})}handlePanelClosed(e){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===Qe.LINKER}updateSelectionValidators(){var{activeTool:e,setDashboardColumnSelectionValidator:t,localDashboardId:r}=this.props;switch(e){case Qe.LINKER:t(r,this.isColumnSelectionValid);break;default:t(r,void 0);break}}updateLinkInProgressType(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"invalid";this.setState(t=>{var{linkInProgress:r}=t;return r!==void 0?{linkInProgress: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(!Ea(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?it.getLinkType(o,l,i):it.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(Cn,{in:s,mountOnEnter:!0,unmountOnExit:!0,onExited:this.handleExited,children:f.jsx(ql,{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 vv=hv(cv);function Xl(n){Xt(n);var{id:e,layout:t,panelManager:r}=n;return f.jsx(vv,{layout:t,localDashboardId:e,panelManager:r})}var fv={name:"LinkerPlugin",type:Pt.DASHBOARD_PLUGIN,component:Xl};function Yl(n){Xt(n);var{id:e,layout:t,panelManager:r,registerComponent:i}=n,a=O.useCallback(function(){var{title:l="",metadata:s={},id:o=ze(),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(E=>{var C;return(C=E.title)!==null&&C!==void 0?C:""}),g=l!=null&&l!==""?l:lt.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 O.useEffect(function(){var s=[i(sr.COMPONENT,sr)];return()=>{s.forEach(o=>o())}},[i]),ge(t.eventHub,ml.OPEN,a),null}var pv={name:"MarkdownPlugin",type:Pt.DASHBOARD_PLUGIN,component:Yl};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 Ia(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){mv(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 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 Zn=O.forwardRef((n,e)=>{var{localDashboardId:t,fetch:r,metadata:i}=n,a=Vl(r,t,i);return f.jsx(en,Ia(Ia({ref:e},n),a))});Zn.displayName="PandasPanelPlugin";function Zl(n){var{fetch:e}=n,t=$l(e);if(t.status==="loading")return f.jsx(ft,{isLoading:!0});if(t.status==="error")return f.jsx(ft,{errorMessage:Za(t.error),isLoading:!1});var{model:r,reload:i}=t;return f.jsx(Kr,{model:r,children:f.jsx(Il,{onClick:i})})}var Cv={name:"PandasPanel",title:"Pandas",type:Pt.WIDGET_PLUGIN,component:Zl,panelComponent:Zn,supportedTypes:"pandas.DataFrame",icon:Po};function La(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ft(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?La(Object(t),!0).forEach(function(r){Sv(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):La(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Sv(n,e,t){return e=Ev(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ev(n){var e=yv(n,"string");return typeof e=="symbol"?e:String(e)}function yv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var wv=Q.module("WidgetLoaderPlugin");function Tv(n){var e;function t(r,i){var a,l,s=n.component,{metadata:o}=r,u=Ft(Ft({},o),{},{type:(a=o==null?void 0:o.type)!==null&&a!==void 0?a:n.type,name:(l=o==null?void 0:o.name)!==null&&l!==void 0?l:"Widget"}),d=Zs(s);return f.jsx(mr,Ft(Ft({descriptor:u},r),{},{children:d?f.jsx(s,Ft(Ft({},r),{},{ref:i})):f.jsx(s,Ft({},r))}))}return t.displayName="WidgetLoaderPlugin(".concat((e=n.component.displayName)!==null&&e!==void 0?e:n.name,")"),O.forwardRef(t)}function Ql(n){var e=Ya(),t=O.useMemo(()=>{var s=new Map;return e.forEach(o=>{Xs(o)&&[o.supportedTypes].flat().forEach(u=>{if(u!=null&&u!==""){if(s.has(u)){var d;wv.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]);Xt(n);var{id:r,layout:i,registerComponent:a}=n,l=O.useCallback(s=>{var o,{dragEvent:u,panelId:d=ze(),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:E}=i;$.openComponent({root:E,config:b,dragEvent:u})}},[r,i,t]);return O.useEffect(()=>{var s=[...new Set(t.values())].map(o=>{var{panelComponent:u}=o;return u==null?a(o.name,Tv(o)):a(o.name,u)});return()=>{s.forEach(o=>o())}},[a,t]),Ys(i.eventHub,l),null}var Pv={name:"WidgetLoaderPlugin",type:Pt.DASHBOARD_PLUGIN,component:Ql};function tn(n,e,t){return e=Dv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dv(n){var e=Ov(n,"string");return typeof e=="symbol"?e:String(e)}function Ov(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class br{}tn(br,"DROPDOWN_FILTER","ControlType.DROPDOWN_FILTER");tn(br,"INPUT_FILTER","ControlType.INPUT_FILTER");tn(br,"MARKDOWN","ControlType.MARKDOWN");tn(br,"FILTER_SET_MANAGER","ControlType.FILTER_SET_MANAGER");var Nv=Z.shape({state:Z.shape({panelState:Z.shape({})})}),Fv=Z.shape({panelId:Z.string.isRequired,columnName:Z.string.isRequired,columnType:Z.string.isRequired}),Aa=Z.shape({panelId:Z.string.isRequired,columnName:Z.string.isRequired}),Jl=Z.shape({start:Aa,end:Aa,id:Z.string,isReversed:Z.bool}),Mv=Z.arrayOf(Jl),Rv=Z.shape({name:Z.string.isRequired,operateAs:Z.string.isRequired,groups:Z.arrayOf(Z.string).isRequired,permissions:Z.shape({canUsePanels:Z.bool.isRequired,canCopy:Z.bool.isRequired,canDownloadCsv:Z.bool.isRequired,canLogout:Z.bool.isRequired}).isRequired}),Iv=Object.freeze({LinkPoint:Fv,Link:Jl,Links:Mv,Panel:Nv,User:Rv}),Lv=(n,e)=>n[e]===null?null:Z.bool,Av=(n,e)=>n[e]===null?null:Z.string,xv=Object.freeze({nullableBoolean:Lv,nullableString:Av});const tf=Object.freeze(Object.defineProperty({__proto__:null,ChartBuilderPlugin:xl,ChartBuilderPluginConfig:Gc,ChartEvent:Rt,ChartPanel:gr,ChartPanelPlugin:Kn,ChartPluginConfig:$c,ChartWidgetPlugin:Al,CommandHistoryPanel:qa,CommonPropTypes:xv,ConsoleEvent:_r,ConsolePanel:Lr,ConsolePlugin:qc,ControlType:br,DropdownFilterPanel:yt,FileExplorerPanel:Ka,FilterPlugin:_l,FilterPluginConfig:Kc,FilterSetManager:fr,FilterSetManagerPanel:Ar,GridPanelPlugin:Xn,GridPluginConfig:ev,GridWidgetPlugin:Hl,InputFilterEvent:Ce,InputFilterPanel:Vt,IrisGridEvent:Ee,IrisGridPanel:Wt,LinkerPlugin:Xl,LinkerPluginConfig:fv,LinkerUtils:it,LogPanel:Xa,MarkdownEvent:ml,MarkdownPanel:sr,MarkdownPlugin:Yl,MarkdownPluginConfig:pv,MockFileStorage:Ac,NotebookEvent:se,NotebookPanel:Et,PandasEvent:Gn,PandasPanel:en,PandasPanelPlugin:Zn,PandasPluginConfig:Cv,PandasWidgetPlugin:Zl,Panel:Kt,TabEvent:Qs,ToolType:Qe,UIPropTypes:Iv,WidgetLoaderPlugin:Ql,WidgetLoaderPluginConfig:Pv,WidgetPanel:mr,WidgetPanelTooltip:Bn,addDashboardLinks:Cl,deleteDashboardLinks:Sl,getColumnSelectionValidatorForDashboard:Br,getColumnsForDashboard:An,getDashboardConnection:Js,getDashboardConsoleSettings:eo,getDashboardSessionWrapper:Wa,getFilterSetsForDashboard:Ga,getInputFiltersForDashboard:Ur,getIsolatedLinkerPanelIdForDashboard:Gr,getLinksForDashboard:It,getTableMapForDashboard:Hr,isChartPanelDehydratedProps:Ol,isChartPanelFigureMetadata:Pl,isChartPanelTableMetadata:jt,isGLChartPanelState:Dl,isIrisGridPanelMetadata:Fl,isLegacyIrisGridPanelMetadata:Nl,setDashboardColumnSelectionValidator:El,setDashboardConnection:Th,setDashboardConsoleSettings:yl,setDashboardFilterSets:wl,setDashboardIsolatedLinkerPanelId:Un,setDashboardLinks:Xr,setDashboardSessionWrapper:Ph,useConfigureRuff:kl,useLoadTablePlugin:jl},Symbol.toStringTag,{value:"Module"}));export{pr as $,Yv as A,su as B,Mo as C,Vo as D,Xv as E,Cn as F,re as G,M as H,yu as I,Gt as J,cr as K,ol as L,yi as M,Jt as N,Xt as O,Xu as P,vl as Q,fl as R,qr as S,S as T,On as U,vh as V,Kr as W,ul as X,Ti as Y,J as Z,Pi as _,jn as a,z as a0,pl as a1,dh as a2,th as a3,Bt as a4,Gd as a5,G as a6,_t as a7,ef as a8,Jv as a9,Ri as aa,wd as ab,nt as ac,tf as ad,nl as ae,_n as af,Zv as ag,hl as ah,id as ai,H as aj,Tn as ak,Qv as al,k as am,wn as an,Su as ao,Cu as ap,Eu as aq,Wv as ar,hr as as,Uv as at,D as au,Qd as av,$o as b,ou as c,ae as d,uu as e,qe as f,Sn as g,du as h,Vv as i,il as j,Fu as k,al as l,Gv as m,zv as n,$v as o,Hv as p,Bv as q,fu as r,qv as s,Kv as t,Fo as u,ll as v,sl as w,wu as x,Tu as y,Mu as z};
|
|
14
|
+
//# sourceMappingURL=index-CIylDBtH.js.map
|