@deephaven/code-studio 0.53.0 → 0.53.1-beta.2
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/{AppRoot-e4b51b3e.js → AppRoot-3b369670.js} +2 -2
- package/build/assets/{AppRoot-e4b51b3e.js.map → AppRoot-3b369670.js.map} +1 -1
- package/build/assets/{ControlType-19f7d4f3.js → ControlType-1b6b0693.js} +2 -2
- package/build/assets/{ControlType-19f7d4f3.js.map → ControlType-1b6b0693.js.map} +1 -1
- package/build/assets/{IrisGridModelFactory-6d7566dc.js → IrisGridModelFactory-f04790a8.js} +2 -2
- package/build/assets/IrisGridModelFactory-f04790a8.js.map +1 -0
- package/build/assets/{PluginTypes-2b0ef082.js → PluginTypes-d6d1d60d.js} +2 -2
- package/build/assets/{PluginTypes-2b0ef082.js.map → PluginTypes-d6d1d60d.js.map} +1 -1
- package/build/assets/{index-81fc0d6a.js → index-485770e6.js} +4 -4
- package/build/assets/{index-81fc0d6a.js.map → index-485770e6.js.map} +1 -1
- package/build/assets/{index-aca484e9.js → index-5f14eca3.js} +2 -2
- package/build/assets/{index-aca484e9.js.map → index-5f14eca3.js.map} +1 -1
- package/build/assets/{index-9826fe01.js → index-71585b92.js} +2 -2
- package/build/assets/{index-9826fe01.js.map → index-71585b92.js.map} +1 -1
- package/build/assets/{useUser-da266903.js → useUser-bd84d546.js} +2 -2
- package/build/assets/{useUser-da266903.js.map → useUser-bd84d546.js.map} +1 -1
- package/build/index.html +1 -1
- package/package.json +31 -31
- package/build/assets/IrisGridModelFactory-6d7566dc.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{H as Ne,C as c,F as Q,N as se,r as D,L as ge,G as le,aC as ro,aD as Gi,aE as ld,D as sr,a1 as lr,aF as ql,an as nt,S as Be,K as Jt,aa as Ae,aG as ud,aH as Ua,E as dd,aI as Wi,aJ as hd,aK as nr,aL as cd,aM as vd,aN as md,aO as gd,aP as $a,aQ as fd,aR as pd,aS as Cd,aT as Wo,aU as bd,aV as zo,aW as wd,aX as Sd,aY as yd,aZ as Td,a_ as Ed,a$ as Od,I as Ii}from"./vendor-9bc0b4ef.js";import{d as no,L as ye,ah as zi,aH as Rd,aI as Dd,j as Ki,T as We,t as Ql,aJ as Nd,e as _,aK as Zl,aL as Pd,aM as Fd,aN as M,aO as Jl,a8 as Wn,F as rn,a9 as eu,aP as io,aQ as Ai,aR as Id,aS as cr,J as xi,aT as Ad,aU as xd,aj as Md,aV as Ld,a1 as jd,aW as kd,aX as _d,aY as Hd,ad as Bd,f as Vr,g as En,aZ as Ko,ac as ao,a_ as oo,a$ as so,ag as Vd,ae as lo,b0 as Ud,b1 as $d,D as Mi,b2 as Gd,b3 as uo,b4 as tu,v as Wd,b5 as zd,K as Kd,b6 as Yd,b7 as Xd,b8 as qd,b9 as Qd,ba as Yo,bb as Oa,bc as Zd,bd as Jd,I as eh,M as th,b as rh,be as nh,bf as ih,c as ah,z as oh,bg as sh,bh as lh,bi as uh,q as dh,bj as hh,bk as ch,bl as vh,bm as mh,bn as gh,bo as fh,bp as ph}from"./index-81fc0d6a.js";import{c as Ch,P as bh}from"./plotly-26031571.js";import{k as Yi,m as ho,A as wh,f as _t,J as qn,R as Sh,X as yh,B as Z,H as co,C as Cr,T as pe,a2 as wn,c as j,ah as Yt,F as Hr,$ as Sn,aB as Se,aC as fr,as as vo,P as Tt,s as ru,g as yn,i as qt,b as zn,a as xt,I as Gr,n as de,G as Th,h as nu,O as An,aD as Eh,D as mo,d as Oh,at as Rh,j as iu,av as Dh,au as Nh,v as Ph,aA as Fh,aE as Me}from"./PluginTypes-2b0ef082.js";import{e as Ih}from"./monaco-1410cbed.js";var Xi=Ne.forwardRef((n,e)=>{var{children:t,className:r,disabled:i,onClick:a,style:o,id:s}=n;return c.jsx("button",{ref:e,type:"button",className:Q("btn",r),onClick:a,style:o,disabled:i,id:s,children:t})});Xi.displayName="Button";Xi.propTypes={children:se.node,className:se.string,disabled:se.bool,onClick:se.func,style:se.shape({}),id:se.string};Xi.defaultProps={children:null,className:"",disabled:!1,onClick:()=>null,style:{},id:""};const pS=Xi;function CS(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]},o=D.useRef(null),s=D.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),l=D.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return D.useEffect(function(){if(!o.current)throw Error("ref undefined");o.current.addEventListener("transitionstart",s);var d=o.current;return function(){if(d!=null)return d.removeEventListener("transitionstart",s)}},[s]),c.jsxs("div",{className:Q(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[c.jsx("div",{className:"card-flip--back",children:a(0)}),c.jsx("div",{ref:o,className:"card-flip--front",onTransitionEnd:l,children:a(1)})]})}function Xo(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 Ah(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xo(Object(t),!0).forEach(function(r){jt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jt(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=Mh(n,"string");return typeof e=="symbol"?e:String(e)}function Mh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ga;(function(n){n.UP="UP",n.DOWN="DOWN"})(Ga||(Ga={}));class ir extends D.Component{constructor(e){super(e),jt(this,"popper",void 0),jt(this,"cbContainer",void 0),jt(this,"toggleButton",void 0),jt(this,"menuContainer",void 0),jt(this,"input",void 0),jt(this,"searchInput",void 0),jt(this,"getCachedFilteredOptions",ge((t,r)=>t.filter(i=>i.title.toLowerCase().indexOf(r.toLowerCase())>=0||i.value.toLowerCase().indexOf(r.toLowerCase())>=0))),this.state={value:"",filter:"",filteredOptions:e.options,keyboardOptionIndex:-1,menuIsOpen:!1,inputWidth:100},this.toggleMenu=this.toggleMenu.bind(this),this.handleMenuKeyDown=this.handleMenuKeyDown.bind(this),this.handleMenuBlur=this.handleMenuBlur.bind(this),this.closeMenu=this.closeMenu.bind(this),this.handleInputChange=this.handleInputChange.bind(this),this.handleInputKeyDown=this.handleInputKeyDown.bind(this),this.handleInputBlur=this.handleInputBlur.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleOptionClick=this.handleOptionClick.bind(this),this.handleOptionFocus=this.handleOptionFocus.bind(this),this.handleMenuOpened=this.handleMenuOpened.bind(this),this.handleMenuExited=this.handleMenuExited.bind(this),this.popper=Ne.createRef(),this.cbContainer=Ne.createRef(),this.toggleButton=Ne.createRef(),this.menuContainer=Ne.createRef(),this.input=Ne.createRef(),this.searchInput=Ne.createRef()}componentDidUpdate(){var{menuIsOpen:e,keyboardOptionIndex:t}=this.state;e&&t>=0&&this.scrollOptionIntoView()}setInputWidth(){this.cbContainer.current&&this.setState({inputWidth:this.cbContainer.current.getBoundingClientRect().width})}focus(){var e;(e=this.input.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}updateInputValue(e){var{onChange:t}=this.props;this.setState({value:e}),t(e)}handleResize(){this.setInputWidth()}handleMenuKeyDown(e){var t,r,{filter:i,filteredOptions:a,keyboardOptionIndex:o}=this.state,{options:s}=this.props,l=i?a:s;switch(e.key){case"Enter":((t=l[o])===null||t===void 0?void 0:t.value)!=null&&this.updateInputValue(l[o].value),this.closeMenu(),(r=this.input.current)===null||r===void 0||r.focus(),e.stopPropagation(),e.preventDefault();break;case"ArrowUp":this.handleMenuNavigation(ir.MENU_NAVIGATION_DIRECTION.UP),e.stopPropagation(),e.preventDefault();break;case"ArrowDown":this.handleMenuNavigation(ir.MENU_NAVIGATION_DIRECTION.DOWN),e.stopPropagation(),e.preventDefault();break;case"Escape":i!==""?(this.setState({filter:""}),e.stopPropagation()):this.closeMenu();break;case"Tab":!e.shiftKey&&o===l.length-1&&this.closeMenu();break}}handleMenuNavigation(e){var{filter:t,filteredOptions:r,keyboardOptionIndex:i}=this.state,{options:a}=this.props,o=t?r:a,s=o.length,l=0;switch(e){case ir.MENU_NAVIGATION_DIRECTION.UP:l=-1;break;case ir.MENU_NAVIGATION_DIRECTION.DOWN:l=1;break}l!==0&&this.setState({keyboardOptionIndex:(i+l+s)%s})}handleInputKeyDown(e){var{onEnter:t}=this.props,{menuIsOpen:r}=this.state;e.key==="ArrowDown"||e.key==="ArrowUp"?r||this.openMenu():e.key==="Enter"&&t()}handleInputChange(e){this.updateInputValue(e.target.value)}handleOptionClick(e){var t,r=Number(e.currentTarget.value),{filter:i,filteredOptions:a}=this.state,{options:o}=this.props,s=i?a:o;this.updateInputValue(s[r].value),this.closeMenu(),(t=this.input.current)===null||t===void 0||t.focus()}handleOptionFocus(e){this.setState({keyboardOptionIndex:Number(e.target.value)})}handleFilterChange(e){var t,{options:r}=this.props,i=e.target.value,a=this.getCachedFilteredOptions(r,i);this.setState({filter:i,filteredOptions:a,keyboardOptionIndex:0}),(t=this.popper.current)===null||t===void 0||t.scheduleUpdate()}handleMenuBlur(e){e.relatedTarget instanceof Element&&this.popper.current!=null&&this.popper.current.element.contains(e.relatedTarget)||e.relatedTarget===this.toggleButton.current||this.closeMenu(!1)}handleInputBlur(e){var{menuIsOpen:t}=this.state;t&&e.relatedTarget instanceof Element&&this.popper.current!=null&&this.popper.current.element.contains(e.relatedTarget)||this.closeMenu(!1)}handleMenuOpened(){var e;this.scrollOptionIntoView(),(e=this.searchInput.current)===null||e===void 0||e.focus()}handleMenuExited(){var{menuIsOpen:e}=this.state;if(e){var t;this.setState({menuIsOpen:!1}),(t=this.popper.current)===null||t===void 0||t.hide()}this.setState({filter:""})}toggleMenu(e){var{menuIsOpen:t}=this.state;t?this.closeMenu():this.openMenu(),e.stopPropagation()}openMenu(){this.updateKeyboardIndex(),this.setInputWidth(),this.setState({menuIsOpen:!0}),window.requestAnimationFrame(()=>{var e;(e=this.popper.current)===null||e===void 0||e.show()})}closeMenu(){var e,t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;if(this.setState({menuIsOpen:!1}),t){var r;(r=this.input.current)===null||r===void 0||r.focus()}(e=this.popper.current)===null||e===void 0||e.hide()}updateKeyboardIndex(){var{value:e,filter:t,filteredOptions:r}=this.state,{options:i}=this.props,a=t?r:i,o=a.findIndex(s=>s.value===e);this.setState({keyboardOptionIndex:o})}scrollOptionIntoView(){var e,t=(e=this.menuContainer.current)===null||e===void 0?void 0:e.querySelector(".cb-option-btn.keyboard-active");t instanceof HTMLElement&&t.scrollIntoView({block:"nearest",inline:"nearest"})}renderMenuElement(){var{searchPlaceholder:e}=this.props,{filter:t,inputWidth:r}=this.state;return c.jsxs("div",{className:"cb-menu-container",ref:this.menuContainer,role:"presentation",onKeyDown:this.handleMenuKeyDown,onClick:i=>{i.stopPropagation()},style:{width:r},onBlur:this.handleMenuBlur,children:[c.jsx("div",{className:"cb-search-input-container",children:c.jsx(Yi,{value:t,ref:this.searchInput,onChange:this.handleFilterChange,className:"cb-search-input",placeholder:e})}),c.jsx("div",{className:"cb-options-container",children:c.jsx("div",{className:"cb-options",children:this.renderOptions()})})]})}renderOptions(){var{options:e}=this.props,{keyboardOptionIndex:t,filter:r,filteredOptions:i}=this.state,a=r?i:e;return a.map((o,s)=>{var l="option-".concat(s,"-").concat(o.value);return c.jsx("button",{type:"button",value:s,className:Q("cb-option-btn",{"keyboard-active":t===s}),onClick:this.handleOptionClick,onFocus:this.handleOptionFocus,children:o.title},l)})}render(){var{options:e,inputPlaceholder:t,disabled:r,className:i,defaultValue:a,spellCheck:o,"data-testid":s}=this.props,{value:l}=this.state,{popperOptions:u}=this.props;return u=Ah({placement:"bottom-end",modifiers:{preventOverflow:{enabled:!1}}},u),c.jsxs("div",{className:"input-group cb-container",ref:this.cbContainer,children:[c.jsx("input",{value:l||a,className:Q("form-control",i,"cb-input"),ref:this.input,onChange:this.handleInputChange,placeholder:t||(e[0]!=null?e[0].title:void 0),disabled:r,onBlur:this.handleInputBlur,onKeyDown:this.handleInputKeyDown,spellCheck:o,"data-testid":s!==void 0?"".concat(s,"-input"):void 0}),c.jsx("div",{className:"input-group-append cb-dropdown",children:c.jsxs("button",{type:"button",className:"btn cb-btn form-control",ref:this.toggleButton,onClick:this.toggleMenu,onKeyDown:this.handleInputKeyDown,disabled:r,"data-testid":s!==void 0?"".concat(s,"-btn"):void 0,children:[c.jsx(le,{icon:no}),c.jsx(ho,{ref:this.popper,options:u,className:Q("combobox interactive"),onEntered:this.handleMenuOpened,onExited:this.handleMenuExited,children:this.renderMenuElement()})]})})]})}}jt(ir,"MENU_NAVIGATION_DIRECTION",Ga);jt(ir,"DROP_DOWN_MENU_HEIGHT",200);jt(ir,"propTypes",{options:se.arrayOf(se.shape({title:se.string.isRequired,value:se.string.isRequired})).isRequired,popperOptions:se.shape({title:se.string.isRequired,value:se.string.isRequired}),onChange:se.func,inputPlaceholder:se.string,searchPlaceholder:se.string,disabled:se.bool,className:se.string,defaultValue:se.string,spellCheck:se.bool,onEnter:se.func,"data-testid":se.string});jt(ir,"defaultProps",{onChange(){},inputPlaceholder:"",searchPlaceholder:"Search",disabled:!1,className:"",defaultValue:"",popperOptions:null,spellCheck:!0,onEnter(){},"data-testid":void 0});const au=ir;function ou(n,e,t){return n.substring(0,e)+t+n.substring(e+1)}function Lh(n,e,t){return n.length<t?"".concat(n).concat(e.substring(n.length,t)):n}function qo(n,e){for(var{length:t}=n,r=n.length-1;r>=0&&e[r]===n[r];r-=1)t=r;return n.substring(0,t)}function Qo(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 jh(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qo(Object(t),!0).forEach(function(r){kh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function kh(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 Wt=ye.module("MaskedInput"),vn={FORWARD:"forward",BACKWARD:"backward",NONE:"none"},hi=" ",su=Ne.forwardRef((n,e)=>{var{className:t,example:r,getNextSegmentValue:i=(N,L,F)=>F,getPreferredReplacementString:a=ou,onChange:o=()=>!1,onSelect:s=()=>!1,onSubmit:l,pattern:u,placeholder:d,selection:h,value:v,onFocus:m=()=>!1,onBlur:g=()=>!1,"data-testid":f}=n,p=wh(e),C=D.useMemo(()=>Array.isArray(r)?r:[r],[r]),b=D.useMemo(()=>C[0].replace(/[a-zA-Z0-9]/g,hi),[C]);D.useEffect(function(){if(h!=null){var L;Wt.debug("setting selection...",h);var{selectionStart:F,selectionEnd:k,selectionDirection:H}=h;(L=p.current)===null||L===void 0||L.setSelectionRange(F,k,H),Wt.debug("selection set!")}},[h,p]);var w=D.useCallback(N=>{for(var L=N,F=N,k=C.length>0?C[0]:v,H=L-1;H>=0&&/[a-zA-Z0-9]/g.test(k.charAt(H));H-=1)L=H;for(var W=F;W<k.length&&/[a-zA-Z0-9]/g.test(k.charAt(W));W+=1)F=W+1;var z=L===F?vn.NONE:vn.BACKWARD;return{selectionStart:L,selectionEnd:F,selectionDirection:z}},[C,v]);function S(N,L){for(var F=arguments.length>2&&arguments[2]!==void 0?arguments[2]:N.length,k="",H=0;H<F;H+=1)N.charAt(H)!==hi?k=k.concat(N[H]):k=k.concat(L[H]);return k=k.concat(L.substring(F)),k}function T(N){var L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:N.length,F=new RegExp("^".concat(u,"$"));if(F.test(N))return!0;for(var k=0;k<C.length;k+=1){var H=S(N,C[k],L);if(F.test(H))return!0}return!1}function y(N){var L=w(N),F=L.selectionEnd+1;return F>=v.length?L:w(F)}function O(N){var L=w(N),F=L.selectionStart-1;return F<=0?L:w(F)}function R(N,L){var F=w(N),k=v.substring(F.selectionStart,F.selectionEnd),H=i(F,L,k,v),W=v.substring(0,F.selectionStart)+H+v.substring(F.selectionEnd);T(W,F.selectionEnd)&&(o(W),s(F))}var E=D.useCallback(N=>{var{selectionStart:L=0,selectionEnd:F=0,selectionDirection:k="none"}=N.target;if(L===null||F===null||k===null){Wt.error("Selection attempted on non-text input element",N.target);return}if(Wt.debug2("handleSelect",L,F,k),!(h!=null&&L===h.selectionStart&&F===h.selectionEnd)){if(h!=null&&L===v.length&&F===v.length&&N.nativeEvent.type!=="mouseup"){s(jh({},h));return}if(L===F){var H=w(L);Wt.debug("Selection segment from ",L,F,"=>",H),s(H)}else s({selectionStart:L,selectionEnd:F,selectionDirection:k})}},[w,s,h,v]),P=D.useCallback(N=>{var L;if(p.current){Wt.debug("handleSelectCapture",N);var F=(L=p.current.selectionStart)!==null&&L!==void 0?L:0;F===v.length&&h!=null&&F!==h.selectionStart&&(N.preventDefault(),N.stopPropagation())}},[p,h,v]);function x(N){if(N.preventDefault(),N.stopPropagation(),!!p.current){var{key:L}=N,{selectionStart:F=0,selectionEnd:k=0}=p.current;if(F===null||k===null){Wt.error("Selection arrow nvaigation attempted on non-text input element",N.target);return}L==="ArrowLeft"?s(O(F)):L==="ArrowRight"?s(y(k)):L==="ArrowUp"?R(F,-1):L==="ArrowDown"&&R(F,1)}}function I(N){if(p.current){Wt.debug("handleKeyDown",N);var{key:L}=N,{selectionStart:F=0,selectionEnd:k=0}=p.current;if(F===null||k===null){Wt.error("Selection key event on non-text input element",N.target);return}if(L==="Enter"){l?.(N);return}if(L.startsWith("Arrow")){x(N);return}if(L==="Delete"||L==="Backspace"){if(N.preventDefault(),N.stopPropagation(),k>=qo(v,b).length){var H=v.substring(0,F===k?F-1:F),W=qo(H,b);W!==v&&(o(W),s({selectionStart:W.length,selectionEnd:W.length,selectionDirection:vn.NONE}));return}if(F!==k){var z=v.substring(0,F)+v.substring(F,k).replace(/[a-zA-Z0-9]/g,hi)+v.substring(k);Wt.debug("Range ",F,k,"deleted, setting value",z),o(z),s({selectionStart:F,selectionEnd:F,selectionDirection:vn.NONE})}else if(F>0)for(var Y=F-1;Y>=0;Y-=1){var $=v.substring(0,Y)+v.substring(Y,F).replace(/[a-zA-Z0-9]/g,hi)+v.substring(F);if($!==v){o($),s({selectionStart:Y,selectionEnd:Y,selectionDirection:vn.NONE});return}}return}if(!(N.altKey||N.metaKey||N.ctrlKey||L.length>1)){N.preventDefault(),N.stopPropagation();for(var A=Array.from(new Set([L,L.toUpperCase(),L.toLowerCase()])),U=0;U<A.length;U+=1)for(var V=A[U],X=/[a-zA-Z0-9]/g.test(V)?C[0].length-1:F,q=F;q<=X;q+=1){var ne=Lh(v,C[0],q+1),ue=a(ne,q,V,F,k);if(T(ue,q+1)){var re=w(q),te=q+1,Te={selectionStart:te,selectionEnd:te,selectionDirection:vn.NONE};if(te>=re.selectionEnd){var Ie=y(q);Ie.selectionStart!==re.selectionStart&&(Te=Ie)}Wt.debug("handleKeyDown",L,"=>",ue,Te),o(ue),s(Te);return}}}}}return c.jsx("input",{ref:p,className:Q("form-control masked-input",t),type:"text",pattern:u,placeholder:d,value:v,onChange:()=>{},onKeyDown:I,onSelect:E,onSelectCapture:P,onFocus:m,onBlur:g,"data-testid":f})});su.defaultProps={className:"",placeholder:void 0,onChange(){},onSelect(){},getNextSegmentValue:(n,e,t)=>t,getPreferredReplacementString:ou,selection:void 0,onFocus(){},onBlur(){},"data-testid":void 0};const Bh=su;function mn(n,e,t,r,i){var a=r-t+1,o=((parseInt(e,10)-n-t)%a+a)%a+t;return"".concat(o).padStart(i,"0")}function Vh(n,e,t){var{selectionStart:r}=n;return r===0?mn(e,t,1900,2099,4):r===5?mn(e,t,1,12,2):r===8?mn(e,t,1,31,2):r===11?mn(e,t,0,23,2):r===17||r===14?mn(e,t,0,59,2):r===20||r===24||r===28?mn(e,t,0,999,3):t}function Wa(n){var e=n.substring(0,23),t=n.substring(23,26),r=n.substring(26);return[e,t,r].filter(i=>i!=="").join("")}var Uh=ye.module("DateTimeInput"),$h="[12][0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])",Gh="([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]\\.[0-9]{3}[0-9]{3}[0-9]{3}",Wh="".concat($h," ").concat(Gh),Pi="2022-01-01",lu="".concat(Pi," 00:00:00.000000000"),zh="YYYY-MM-DD HH:MM:SS.SSSSSSSSS";function Zo(n){return n!=null&&n.length>=Pi.length?"".concat(n.substring(0,Pi.length)).concat(n.substring(Pi.length).replace(/\u2007/g,"0")).concat(lu.substring(n.length)):n}function Jo(n){return n.replace(/\u200B/g,"")}var Kh=[Wa(lu)],go=Ne.forwardRef((n,e)=>{var{className:t="",onChange:r=()=>{},defaultValue:i="",onFocus:a=()=>{},onBlur:o=()=>{},onSubmit:s,"data-testid":l}=n,[u,d]=D.useState(i.length>0?Wa(i):""),[h,v]=D.useState(),m=D.useCallback(f=>{Uh.debug("handleChange",f),d(f),r(Zo(Jo(f)))},[r]),g=D.useCallback(()=>{var f=Jo(u),p=Zo(f);p!==f&&d(Wa(p)),o()},[u,o]);return c.jsx("div",{className:"d-flex flex-row align-items-center",children:c.jsx(Bh,{ref:e,className:Q(t),example:Kh,getNextSegmentValue:Vh,onChange:m,onSelect:v,onSubmit:s,pattern:Wh,placeholder:zh,selection:h,value:u,onFocus:a,onBlur:g,"data-testid":l})})});go.displayName="DateTimeInput";go.defaultProps={className:"",onChange:()=>{},defaultValue:"",onFocus:()=>{},onBlur:()=>{},"data-testid":void 0};const Yh=go;function es(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?es(Object(t),!0).forEach(function(r){qr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):es(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qr(n,e,t){return e=Xh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xh(n){var e=qh(n,"string");return typeof e=="symbol"?e:String(e)}function qh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ar extends D.PureComponent{static renderHandle(){return c.jsxs("div",{children:[c.jsx(_t,{children:"Drag to re-order"}),c.jsx(le,{icon:zi})]})}static renderBadge(e){var{text:t}=e;return t!=null&&t.length>0?c.jsx("span",{className:"number-badge",children:t}):null}static renderTextItem(e){var{text:t,badgeText:r="",className:i=""}=e;return c.jsxs("div",{className:Q("item-list-item-content","draggable-item-list-item-content",i),children:[c.jsx("span",{className:"title",children:t}),ar.renderBadge({text:r}),ar.renderHandle()]})}static renderItem(e){var t,r,{item:i,isClone:a,selectedCount:o}=e,s=i!=null?(t=(r=i.displayValue)!==null&&r!==void 0?r:i.value)!==null&&t!==void 0?t:"".concat(i):"",l=a!==void 0&&a?"".concat(o):"",u=a!==void 0&&a?"item-list-item-clone":"";return ar.renderTextItem({text:s,badgeText:l,className:u})}static getDraggableId(e,t){return"".concat(e,"/").concat(t)}static getDraggableIndex(e){var t=e.split("/").pop();return parseInt(t!==void 0?t:"",10)}constructor(e){super(e),qr(this,"itemList",void 0),qr(this,"getCachedDraggableItem",ge((t,r,i,a,o,s,l,u)=>c.jsx(ro,{draggableId:ar.getDraggableId(t,a),index:a,isDragDisabled:l,children:d=>c.jsx("div",Tr(Tr(Tr({role:"menuitem",className:"draggable-item-list-item",ref:d.innerRef,tabIndex:-1},d.draggableProps),d.dragHandleProps),{},{children:r({item:i,itemIndex:a,isFocused:o,isSelected:s,style:u,isClone:!1})}))},a),{max:qn.CACHE_SIZE})),qr(this,"getCachedRenderDraggableItem",ge((t,r,i)=>a=>{var{item:o,itemIndex:s,isFocused:l,isSelected:u,style:d}=a;return this.getCachedDraggableItem(t,i,o,s,l,u,r,d)},{max:1})),qr(this,"getCachedRenderClone",ge((t,r,i,a)=>(o,s,l)=>{var{selectedCount:u}=this.state,{draggableProps:d,dragHandleProps:h,innerRef:v}=o,{index:m}=l.source,g=r[m-i];return c.jsx("div",Tr(Tr(Tr({className:Q("draggable-item-list-dragging-item-container",t)},d),h),{},{ref:v,children:c.jsx("div",{className:Q("draggable-item-list-dragging-item",{"two-dragged":u===2},{"multiple-dragged":u>2}),children:a({item:g,itemIndex:m,isFocused:!1,isSelected:!0,style:{},isClone:!0,selectedCount:u})})}))},{max:1})),this.handleSelectionChange=this.handleSelectionChange.bind(this),this.itemList=Ne.createRef(),this.state={selectedCount:0}}selectItem(e){var t;(t=this.itemList.current)===null||t===void 0||t.selectItem(e)}focusItem(e){var t;(t=this.itemList.current)===null||t===void 0||t.focusItem(e)}scrollToItem(e){var t;(t=this.itemList.current)===null||t===void 0||t.scrollToItem(e)}handleSelectionChange(e){this.setState({selectedCount:Sh.count(e)});var{onSelectionChange:t}=this.props;t(e)}render(){var{className:e,draggablePrefix:t,draggingItemClassName:r,droppableId:i,isDoubleClickSelect:a,isDragDisabled:o,isDropDisabled:s,isMultiSelect:l,isStickyBottom:u,itemCount:d,items:h,offset:v,onFocusChange:m,onSelect:g,onViewportChange:f,renderItem:p,rowHeight:C,selectedRanges:b,style:w,"data-testid":S}=this.props;return c.jsx(Gi,{isDropDisabled:s,droppableId:i,mode:"virtual",renderClone:this.getCachedRenderClone(r,h,v,p),"data-testid":S,children:(T,y)=>c.jsx("div",Tr(Tr({role:"menu",className:Q("draggable-item-list",e,{"is-drop-disabled":s,"is-drag-disabled":o,"is-dragging-from-this":y.draggingFromThisWith,"is-dragging-over":y.isDraggingOver,"is-dropping":y.draggingOverWith}),style:w,ref:T.innerRef},T.droppableProps),{},{children:c.jsx(qn,{focusSelector:".draggable-item-list-item",isDoubleClickSelect:a,isDragSelect:!1,isMultiSelect:l,isStickyBottom:u,itemCount:d,items:h,onFocusChange:m,onSelect:g,onSelectionChange:this.handleSelectionChange,onViewportChange:f,offset:v,ref:this.itemList,renderItem:this.getCachedRenderDraggableItem(t,o,p),rowHeight:C,selectedRanges:b})}))})}}qr(ar,"DEFAULT_ROW_HEIGHT",30);qr(ar,"defaultProps",{className:"",draggingItemClassName:"",offset:0,items:[],rowHeight:ar.DEFAULT_ROW_HEIGHT,isDeselectOnClick:!0,isDoubleClickSelect:!0,isDropDisabled:!1,isDragDisabled:!1,isMultiSelect:!1,isStickyBottom:!1,disableSelect:!1,style:null,onFocusChange(){},onSelect(){},onSelectionChange(){},onViewportChange(){},renderItem:ar.renderItem,selectedRanges:[],draggablePrefix:"draggable-item",droppableId:"droppable-item-list","data-testid":void 0});const Xt=ar;class Li{static reorder(e,t,r,i){var a=e===r?Li.adjustDestinationIndex(i,t):i,o=Li.removeItems(e,t);return r.splice(a,0,...o),o}static removeItems(e,t){for(var r=[],i=t.map((d,h)=>({range:d,index:h})).sort((d,h)=>h.range[0]-d.range[0]),a=0;a<i.length;a+=1){var{range:o,index:s}=i[a],[l,u]=o;r[s]=e.splice(l,u-l+1)}return ld(r)}static adjustDestinationIndex(e,t){for(var r=e,i=0;i<t.length;i+=1){var[a,o]=t[i];if(a>e)break;r-=Math.min(o,e-1)-a+1}return r}static startDragging(){document.documentElement.classList.add("drag-pointer-events-none")}static stopDragging(){document.documentElement.classList.remove("drag-pointer-events-none")}}const Qt=Li;function ts(n){return n.isOn!==void 0}function Qh(n){var{item:e,onSelect:t=()=>{},"data-testid":r}=n,{icon:i,subtitle:a,title:o}=e,s=D.useMemo(()=>ts(e)?()=>{e.onChange(!e.isOn)}:t,[e,t]);return c.jsxs("div",{className:"btn btn-navigation-menu-item","data-testid":"menu-item-".concat(o),onClick:s,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&s()},tabIndex:0,role:"menuitem",children:[i!==void 0&&c.jsx("div",{className:"icon",children:c.jsx(le,{icon:i})}),c.jsx("div",{className:"title",children:o}),a!==void 0&&c.jsx("div",{className:"shortcut",children:a}),c.jsx("div",{className:"accessory","data-testid":r,children:ts(e)?c.jsx(yh,{on:e.isOn,onClick:l=>{l.stopPropagation(),s()}}):c.jsx(le,{icon:Rd})})]})}function uu(n){var{items:e,onSelect:t=()=>{},"data-testid":r}=n;return c.jsx("div",{className:"navigation-menu-view","data-testid":r,children:c.jsx("ul",{className:"navigation-menu-list",children:e.map((i,a)=>c.jsx("li",{children:c.jsx(Qh,{item:i,onSelect:()=>{t(a)}})},i.title))})})}function rs(n){var{children:e,onBack:t,onClose:r,title:i,"data-testid":a}=n;return c.jsxs("div",{className:"navigation-page","data-testid":a,children:[c.jsxs("div",{className:"navigation-title-bar",children:[c.jsx("div",{className:"navigation-left-buttons",children:t!==void 0&&c.jsx(Z,{kind:"ghost",className:"btn-back","data-testid":"btn-page-back",onClick:t,icon:Dd,children:"Back"})}),c.jsx("div",{className:"navigation-title",children:i}),c.jsx("div",{className:"navigation-right-buttons",children:r!==void 0&&c.jsx(Z,{kind:"ghost",className:"btn-close px-2 m-1","data-testid":"btn-page-close",onClick:r,icon:Ki,tooltip:"Close"})})]}),c.jsx("div",{className:"navigation-content",children:e})]})}function Zh(n){var{children:e,"data-testid":t}=n,r=D.useMemo(()=>Ne.Children.toArray(e),[e]),i=co(r),[a,o]=D.useState(r[r.length-1]),[s,l]=D.useState(null),[u,d]=D.useState(null);D.useEffect(function(){if(!(i===void 0||r===i)){var g=r[r.length-1];r.length===i.length||i.length===0||s!==null||u!==null?s!==null&&g!==s?l(g):g!==u&&g!==a&&o(g):r.length>i.length?l(g):r.length<i.length&&(o(g),d(i[i.length-1]))}},[r,i,s,u,a]);var h=D.useCallback(()=>{o(s),l(null)},[s]),v=D.useCallback(()=>{d(null)},[]);return c.jsxs("div",{className:"navigation-stack",children:[c.jsx("div",{className:"main-view","data-testid":t,children:a}),c.jsx(sr,{in:u!=null,timeout:We.transitionMidMs,classNames:"slide-right",onEntered:v,children:c.jsx(c.Fragment,{children:u!=null&&c.jsx("div",{className:"popping-view",children:u})})}),c.jsx(sr,{in:s!=null,timeout:We.transitionMidMs,classNames:"slide-left",onEntered:h,children:c.jsx(c.Fragment,{children:s!=null&&c.jsx("div",{className:"pushing-view",children:s})})})]})}function Jh(n){var{children:e,disabled:t,value:r,"data-testid":i}=n;return c.jsx("option",{value:r,disabled:t,"data-testid":i,children:e})}function fo(n){var{children:e,disabled:t=!1,name:r,onChange:i,value:a="","data-testid":o}=n,[s]=D.useState(r??lr());return c.jsx(c.Fragment,{children:Ne.Children.map(e,l=>{var u,d;return l?Ne.cloneElement(l,{name:s,onChange:(u=l.props.onChange)!==null&&u!==void 0?u:i,checked:a===l.props.value,disabled:(d=l.props.disabled)!==null&&d!==void 0?d:t,"data-testid":o}):null})})}var po=Ne.forwardRef((n,e)=>{var{checked:t,children:r,className:i="",disabled:a=!1,inputClassName:o="",isInvalid:s=!1,labelClassName:l="",name:u,onChange:d,value:h,"data-testid":v}=n,[m]=D.useState(lr());return c.jsxs("div",{className:Q("custom-control custom-radio",i),children:[c.jsx("input",{type:"radio",id:m,"data-testid":v,name:u,ref:e,className:Q("custom-control-input",o,{"is-invalid":s}),checked:t,disabled:a,value:h,onChange:d}),c.jsx("label",{className:Q("custom-control-label",l),htmlFor:m,children:r})]})});po.displayName="RadioItem";po.defaultProps={checked:void 0,className:"",disabled:!1,inputClassName:"",isInvalid:!1,labelClassName:"",name:void 0,onChange:void 0,"data-testid":void 0};const Jr=po;function ec(n){var{children:e,onBlur:t,onChange:r,className:i,defaultValue:a,name:o,value:s,disabled:l,"data-testid":u}=n,d=D.useCallback(h=>{r(h.target.value)},[r]);return c.jsx("select",{className:Q("custom-select",i),onBlur:t,onChange:d,defaultValue:a,value:s,name:o,disabled:l,"data-testid":u,children:e})}function pn(n,e,t){return e=tc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tc(n){var e=rc(n,"string");return typeof e=="symbol"?e:String(e)}function rc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class du extends D.PureComponent{constructor(e){super(e),pn(this,"list",void 0),pn(this,"topRow",void 0),pn(this,"bottomRow",void 0),pn(this,"getCachedItem",ge((t,r,i,a,o,s,l)=>{var u={height:o},d=a??i;return c.jsx("li",{className:"value-list-item",style:u,tabIndex:-1,children:c.jsx(Cr,{checked:s,disabled:l,onChange:()=>this.handleSelect(t),children:d})},r)},{max:1e3})),pn(this,"getCachedItems",ge((t,r,i,a)=>{for(var o=[],s=0;s<t.length;s+=1){var l=t[s],{value:u,displayValue:d,isSelected:h}=l,v=i+s,m=v,g=this.getCachedItem(v,m,u,d,r,h,a);o.push(g)}return o},{max:1})),this.handleBlur=this.handleBlur.bind(this),this.handleScroll=this.handleScroll.bind(this),this.handleSelect=this.handleSelect.bind(this),this.list=Ne.createRef(),this.topRow=null,this.bottomRow=null}componentDidMount(){this.sendViewportUpdate()}componentDidUpdate(){this.sendViewportUpdate()}handleBlur(e){if(!e.relatedTarget||this.list.current&&e.relatedTarget instanceof HTMLElement&&!this.list.current.contains(e.relatedTarget)){var{onBlur:t}=this.props;t?.(e)}}handleScroll(){this.sendViewportUpdate()}handleSelect(e){var{items:t,offset:r,onSelect:i}=this.props,a=e-r;if(a>=0&&a<t.length){var o=t[a],{value:s}=o;i(e,s)}else i(e,null)}sendViewportUpdate(){if(!(!this.list.current||this.list.current.clientHeight===0)){var{onViewportChange:e,rowHeight:t}=this.props,r=this.list.current.scrollTop,i=r+this.list.current.clientHeight,a=Math.floor(r/t),o=Math.ceil(i/t);(this.topRow!==a||this.bottomRow!==o)&&(this.topRow=a,this.bottomRow=o,e(a,o))}}getElement(e){if(this.list.current==null)return null;var t=this.list.current.querySelectorAll(".value-list-item");return t[e]}scrollIntoView(e){var t=this.getElement(e);t?.scrollIntoView({block:"center"})}render(){var{className:e,disabled:t,isInvalid:r,items:i,itemCount:a,offset:o,rowHeight:s,"data-testid":l}=this.props,u=this.getCachedItems(i,s,o,t);return c.jsx("div",{className:Q("select-value-list-scroll-pane h-100 w-100",{"is-invalid":r},e),onBlur:this.handleBlur,onScroll:this.handleScroll,ref:this.list,"data-testid":l,children:c.jsx("div",{className:"select-value-list",style:{height:a*s},children:c.jsx("ol",{className:"select-value-list-content",style:{position:"absolute",height:i.length*s,top:o*s,left:0},children:u})})})}}pn(du,"defaultProps",{disabled:!1,rowHeight:21,onBlur:()=>{},"data-testid":void 0});const nc=du;var Co=Ne.forwardRef((n,e)=>{var{children:t,className:r,disabled:i,id:a,isLinked:o,isLinkedSource:s,isInvalid:l,onClick:u,onMouseEnter:d,onMouseLeave:h,style:v,"data-testid":m}=n;return c.jsxs("button",{ref:e,type:"button",className:Q("btn-socketed",{"btn-socketed-linked":o!==void 0&&o||s},{"btn-socketed-linked-source":s},{"is-invalid":l},r),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:v,disabled:i,"data-testid":m,children:[t,c.jsx(le,{icon:Ql,className:"linked btn-socketed-icon",transform:"down-1"}),c.jsx(le,{icon:Nd,className:"is-invalid btn-socketed-icon"})]})});Co.displayName="SocketedButton";Co.defaultProps={children:void 0,className:"",disabled:!1,id:void 0,isLinked:!1,isLinkedSource:!1,isInvalid:!1,onClick:void 0,onMouseEnter:void 0,onMouseLeave:void 0,style:void 0,"data-testid":void 0};const bS=Co;function ic(n){switch(n){case pe.eq:return"is exactly";case pe.eqIgnoreCase:return"is exactly (ignore case)";case pe.notEq:return"is not exactly";case pe.notEqIgnoreCase:return"is not exactly (ignore case)";case pe.contains:return"contains";case pe.notContains:return"does not contain";case pe.startsWith:return"starts with";case pe.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function ac(n){switch(n){case pe.eq:return"is equal to";case pe.notEq:return"is not equal to";case pe.greaterThan:return"greater than";case pe.greaterThanOrEqualTo:return"greater than or equal to";case pe.lessThan:return"less than";case pe.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function oc(n){switch(n){case pe.eq:return"date is";case pe.notEq:return"date is not";case pe.notEqIgnoreCase:case pe.greaterThan:return"date is after";case pe.greaterThanOrEqualTo:return"date is after or equal";case pe.lessThan:return"date is before";case pe.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function sc(n){switch(n){case pe.isTrue:return"Is True";case pe.isFalse:return"Is False";case pe.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}function lc(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function uc(n){return{timeZone:n?.timeZone,defaultDateTimeFormatString:n?.defaultDateTimeFormat,showTimeZone:n?.showTimeZone,showTSeparator:n?.showTSeparator}}function dc(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===wn.TYPE_CONTEXT_PRESET||r.type===wn.TYPE_CONTEXT_CUSTOM)}const en={getColumnFormats:lc,getDateTimeFormatterOptions:uc,isCustomColumnFormatDefined:dc};function yt(n,e,t){return e=hc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hc(n){var e=cc(n,"string");return typeof e=="symbol"?e:String(e)}function cc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qe{constructor(e){yt(this,"dh",void 0),yt(this,"listeners",void 0),yt(this,"formatter",void 0),yt(this,"rect",void 0),yt(this,"isDownsamplingDisabled",void 0),yt(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}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(qe.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(qe.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(qe.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(qe.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(qe.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(qe.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(qe.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(qe.EVENT_LOADFINISHED))}}yt(qe,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");yt(qe,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");yt(qe,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");yt(qe,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");yt(qe,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");yt(qe,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");yt(qe,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");yt(qe,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");const gr=qe;function ns(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 gn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ns(Object(t),!0).forEach(function(r){et(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ns(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function et(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=mc(n,"string");return typeof e=="symbol"?e:String(e)}function mc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xn=ye.module("ChartUtils"),is="io.deephaven.time.DateTime",gc=36e5,fc=1e6;function pc(n){return n.asDate!==void 0}function Cc(n){return n.asNumber!==void 0}function as(n){return n.dhTimeZone!==void 0}function bc(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}class J{static getPlotlyErrorBars(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:Yt,a=r.map((s,l)=>s-e[l]),o=t.map((s,l)=>e[l]-s);return{type:"data",symmetric:!1,array:a,arrayminus:o,color:i.error_band_line_color}}static convertNumberPrefix(e){return e.replace(/\u00A4\u00A4/g,"USD").replace(/\u00A4/g,"$")}static getPlotlyNumberFormat(e,t,r){if(!r)return null;var i=r.split(";"),a=i[0].match(/^([^#,0.]*)([#,]*)([0,]*)(\.?)(0*)(#*)(E?0*)(%?)(.*)/);_(a);var[,o,s,l,,u,d,h,v,m]=a,g=l.replace(",","").length,f=s.indexOf(",")>=0||l.indexOf(",")>=0,p=f?",":"",C=h!=null&&h!==""?"e":"f",b=v!==""?v:C,w=u.length+d.length,S="",T="0".concat(g).concat(p,".").concat(w).concat(S).concat(b),y=J.convertNumberPrefix(o),O=J.convertNumberPrefix(m);return{tickformat:T,tickprefix:y,ticksuffix:O,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i>0){var a=e||{},o=i;return r&&(o=i/fc),t.log&&(o=Math.log(o)),a.tickmode="linear",a.dtick=o,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 o=i.sources[a];if(o.axis===t)return o}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]:J.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 getChartForSeries(e,t){for(var{charts:r}=e,i=0;i<r.length;i+=1)for(var a=r[i],o=0;o<a.series.length;o+=1)if(t===a.series[o])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],o=e[a];bc(o)&&(t[a]=[...o.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static groupArray(e,t){return e.reduce((r,i)=>{var a,o=i[t],s=(a=r.get(o))!==null&&a!==void 0?a:[];return s.push(i),r.set(o,s),r},new Map)}static getColorwayFromTheme(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Yt,t=[];return e.colorway&&(Array.isArray(e.colorway)?t=e.colorway:typeof e.colorway=="string"?t=e.colorway.split(" "):xn.warn("Unable to handle colorway property: ".concat(e.colorway))),t}static titleFromSettings(e){var{series:t,xAxis:r,title:i="".concat((t??[]).join(", ")," by ").concat(r)}=e;return i}constructor(e){et(this,"dh",void 0),et(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values())}getAxisFormats(e,t){for(var r=this,i=new Map,a={tickformat:null,ticksuffix:null},o=J.getAllAxes(e),s=J.groupArray(o,"type"),{charts:l}=e,u=0;u<l.length;u+=1)for(var d=l[u],h=0;h<d.series.length;h+=1)for(var v=d.series[h],{sources:m}=v,g=m.filter(b=>b.axis),f=function(){var w=g[p],{axis:S}=w,{type:T}=S,y=s.get(T);_(y);var O=y.indexOf(S),R=r.getAxisPropertyName(T);if(R!=null){var E=J.getAxisLayoutProperty(R,O);if(i.has(E))xn.debug("".concat(E," already added."));else{xn.debug("Adding ".concat(E," to axisFormats."));var P=r.getPlotlyAxisFormat(w,t);if(P===null)i.set(E,a);else{i.set(E,P);var{businessCalendar:x}=S;if(x!=null){var I=[],{businessPeriods:N,businessDays:L,holidays:F,timeZone:k}=x,H=t?.getColumnTypeFormatter(is),W;as(H)&&(W=H.dhTimeZone);var z=W?(k.standardOffset-W.standardOffset)/60:0;F.length>0&&I.push(...r.createRangeBreakValuesFromHolidays(F,k,W)),N.forEach(Y=>I.push({pattern:"hour",bounds:[J.periodToDecimal(Y.close)+z,J.periodToDecimal(Y.open)+z]})),L.length<r.daysOfWeek.length&&r.createBoundsFromDays(L).forEach(Y=>I.push({pattern:"day of week",bounds:Y})),P.rangebreaks=I}if(i.size===d.axes.length)return{v:i}}}}},p=0;p<g.length;p+=1){var C=f();if(typeof C=="object")return C.v}return i}getPlotlyChartType(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.SCATTER:return t?"scatter":"scattergl";case r.plot.SeriesPlotStyle.LINE:return"scatter";case r.plot.SeriesPlotStyle.BAR:case r.plot.SeriesPlotStyle.STACKED_BAR:return"bar";case r.plot.SeriesPlotStyle.PIE:return"pie";case r.plot.SeriesPlotStyle.TREEMAP:return"treemap";case r.plot.SeriesPlotStyle.HISTOGRAM:return"histogram";case r.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(J.MODE_LINES),(r??!0)&&a.add(J.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(J.MODE_LINES),(r??!1)&&a.add(J.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?J.ORIENTATION.HORIZONTAL:J.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]:Yt,{name:o,isLinesVisible:s,isShapesVisible:l,plotStyle:u,lineColor:d,shapeColor:h,sources:v,shape:m,shapeSize:g}=e,f=v.some(S=>{var T;return(T=S.axis)===null||T===void 0?void 0:T.businessCalendar}),p=this.getChartType(u,f),C=this.getPlotlyChartMode(u,s??void 0,l??void 0),b=this.getPlotlySeriesOrientation(e),w=J.makeSeriesData(p,C,o,i,b);return this.addSourcesToSeriesData(w,u,v,t),this.addStylingToSeriesData(w,u,a,d,h,m,g,r),w}addSourcesToSeriesData(e,t,r,i){for(var a=e,o=0;o<r.length;o+=1){var s=r[o],{axis:l,type:u}=s,d=this.getPlotlyProperty(t,u);ql(a,d,[]);var h=l!=null?this.getAxisPropertyName(l.type):null;if(h!=null){var v=i.get(l.type);if(v){var m=v.indexOf(l),g=m>0?"".concat(m+1):"";a["".concat(h,"axis")]="".concat(h).concat(g)}}}}addStylingToSeriesData(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Yt,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:null,{dh:u}=this,d=e;if(d.marker={line:{}},d.line={width:1},t===u.plot.SeriesPlotStyle.AREA?d.fill="tozeroy":t===u.plot.SeriesPlotStyle.STACKED_AREA?d.stackgroup="stack":t===u.plot.SeriesPlotStyle.STEP?d.line.shape="hv":t===u.plot.SeriesPlotStyle.HISTOGRAM?(d.width=[],d.marker.line!==void 0&&Object.assign(d.marker.line,{color:r.paper_bgcolor,width:1})):t===u.plot.SeriesPlotStyle.OHLC?(d.increasing={line:{color:r.ohlc_increasing}},d.decreasing={line:{color:r.ohlc_decreasing}}):t===u.plot.SeriesPlotStyle.PIE?(d.textinfo="label+percent",d.outsidetextfont={color:r.title_color}):t===u.plot.SeriesPlotStyle.TREEMAP&&(d.hoverinfo="text",d.textinfo="label+text",d.tiling={packing:"squarify",pad:0},d.textposition="middle center",d.outsidetextfont={color:r.title_color}),i!=null&&(t===u.plot.SeriesPlotStyle.BAR?d.marker.color=i:d.line.color=i),a!=null&&(d.marker.color=a),o!=null&&o.length>0)try{d.marker.symbol=J.getMarkerSymbol(o)}catch(h){xn.warn("Unable to handle shape",o,":",h)}s!=null&&(d.marker.size=s*J.DEFAULT_MARKER_SIZE),l!=null&&t!==u.plot.SeriesPlotStyle.PIE&&(d.visible=l)}getChartType(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.HISTOGRAM:return"bar";default:return this.getPlotlyChartType(e,t)}}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,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Yt,s=e,l=J.getAllAxes(t),u=0;u<t.charts.length;u+=1){var d=t.charts[u],h=r?.(d),v=this.getChartBounds(t,d,i,a);this.updateLayoutAxes(s,d.axes,l,i,a,v,h,o)}this.removeStaleAxes(s,l)}getChartBounds(e,t,r,i){var a,{dh:o}=this,{cols:s,rows:l}=e,{column:u,colspan:d,row:h,rowspan:v}=t,m=u+d,g=h+v,f=1/s,p=1/l,C=J.AXIS_SIZE_PX/r,b=J.AXIS_SIZE_PX/i,w={bottom:(l-g)*p+(g<l?b/2:0),top:(l-h)*p-(h>0?b/2:0),left:u*f+(u>0?C/2:0),right:m*f-(m<s?C/2:0)},S=J.groupArray(t.axes,"position"),T=(a=S.get(o.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return T.length>0&&(r>0?w.right-=(w.right-w.left)*Math.max(0,Math.min(J.LEGEND_WIDTH_PX/r,J.MAX_LEGEND_SIZE)):w.right-=(w.right-w.left)*J.DEFAULT_AXIS_SIZE),w}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=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",""),o,s=e?.getColumnTypeFormatter(t);return s!=null&&as(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(o=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:o,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:o}=i,s=null;return j.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,o),s=J.addTickSpacing(s,i,!0)):j.isNumberType(a)&&(s=J.getPlotlyNumberFormat(t,a,o),s=J.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,o=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,l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:Yt,{dh:u}=this,d=i>0?Math.max(J.MIN_AXIS_SIZE,Math.min(J.AXIS_SIZE_PX/a,J.MAX_AXIS_SIZE)):J.DEFAULT_AXIS_SIZE,h=a>0?Math.max(J.MIN_AXIS_SIZE,Math.min(J.AXIS_SIZE_PX/i,J.MAX_AXIS_SIZE)):J.DEFAULT_AXIS_SIZE,v=e,m=J.groupArray(t,"position"),g=J.groupArray(t,"type"),f=[...g.keys()],p=J.groupArray(r,"type"),C=0;C<f.length;C+=1){var b=f[C],w=this.getAxisPropertyName(b);if(w!=null){var S=g.get(b),T=p.get(b),y=b===u.plot.AxisType.Y,O=y?a:i;_(S),_(T);for(var R=0;R<S.length;R+=1){var E=S[R],P=T.indexOf(E),x=J.getAxisLayoutProperty(w,P);v[x]==null&&(v[x]=this.makeLayoutAxis(b,l));var I=v[x];if(I!=null){this.updateLayoutAxis(I,E,R,m,d,h,o);var{range:N,autorange:L}=I;if(s!=null&&N!==void 0&&(L===void 0||L===!1)){var F=s(E),[k,H]=F(N);xn.debug("Setting downsample range",O,k,H),E.range(O,k,H)}else E.range(O)}}}}}removeStaleAxes(e,t){for(var r=e,i=J.groupArray(t,"type"),a=[...i.keys()],o=0;o<a.length;o+=1){var s=a[o],l=i.get(s);_(l);var u=l.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=J.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=J.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,r,i,a,o,s){var l,{dh:u}=this,d=t.type===u.plot.AxisType.Y,h=d?o:a,v=e,m=(l=t.label)!==null&&l!==void 0?l:"";if(v.title!==void 0&&typeof v.title!="string"?v.title.text=m:v.title={text:m},t.log&&(v.type="log"),v.side=this.getAxisSide(t.position),r>0){var g,f;v.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var p=(f=i.get(t.position))!==null&&f!==void 0?f:[],C=p.indexOf(t);C>0&&(v.anchor="free",t.position===u.plot.AxisPosition.RIGHT?v.position=s.right+(C-p.length+1)*h:t.position===u.plot.AxisPosition.TOP?v.position=s.top+(C-p.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?v.position=s.bottom+(p.length-C+1)*h:t.position===u.plot.AxisPosition.LEFT&&(v.position=s.left+(p.length-C+1)*h))}else if(t.type===u.plot.AxisType.X){var b=i.get(u.plot.AxisPosition.LEFT)||[],w=i.get(u.plot.AxisPosition.RIGHT)||[],S=Math.max(s.left,s.left+(b.length-1)*o),T=Math.min(s.right-(w.length-1)*o,s.right);v.domain=[S,T]}else if(t.type===u.plot.AxisType.Y){var y=i.get(u.plot.AxisPosition.BOTTOM)||[],O=i.get(u.plot.AxisPosition.TOP)||[],R=Math.max(s.bottom,s.bottom+(y.length-1)*a),E=Math.min(s.top-(O.length-1)*a,s.top);v.domain=[R,E]}}createBoundsFromDays(e){var t=e.map(o=>this.daysOfWeek.indexOf(o)),r=this.daysOfWeek.filter(o=>!e.includes(o)).map(o=>this.daysOfWeek.indexOf(o)),i=new Set;r.forEach(o=>{for(var s=o+1;s<o+this.daysOfWeek.length;s+=1){var l=s%this.daysOfWeek.length;if(t.includes(l)){i.add(l);break}}});var a=[];return i.forEach(o=>{for(var s=o-1;s>o-this.daysOfWeek.length;s-=1){var l=s<0?s+this.daysOfWeek.length:s;if(t.includes(l)){var u=(l+1)%7;a.push([u,o]);break}}}),a}createRangeBreakValuesFromHolidays(e,t,r){var i=[],a=[];return e.forEach(o=>{o.businessPeriods.length>0?a.push(...this.createPartialHoliday(o,t,r)):i.push(this.createFullHoliday(o,t,r))}),[{values:i},...a]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r){var i=e.date.toString(),a=["00:00"];e.businessPeriods.forEach(v=>{a.push(v.open),a.push(v.close)}),a.push("24:00");for(var o=[],s=0;s<a.length;s+=2){var l=a[s],u=a[s+1];if(l!==u){var d=[this.adjustDateForTimeZone("".concat(i," ").concat(l,":00.000000"),t,r)],h=gc*(J.periodToDecimal(u)-J.periodToDecimal(l));o.push({values:d,dvalue:h})}}return o}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,is,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:o}=e,s=J.titleFromSettings(e),l={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:[l,u],series:(i??[]).map(d=>({plotStyle:"".concat(o),name:d,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:l,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(pc(e))return r.i18n.DateTimeFormat.format(J.DATE_FORMAT,e,t);if(Cc(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(j.isDateType(t)&&typeof e=="string"){var a=e,o=J.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(o,a);if(!r)return s;var l="".concat(o," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(l,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(l,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Yt,{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_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}makeDefaultLayout(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Yt,{dh:t}=this,r=gn(gn({},e),{},{autosize:!0,colorway:J.getColorwayFromTheme(e),font:{family:"'Fira Sans', sans-serif",color:e.title_color},title:{font:{color:e.title_color},yanchor:"top",pad:gn({},J.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:e.title_color}},margin:gn({},J.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(t.plot.AxisType.Z,e)}});return r.datarevision=0,r}hydrateSettings(e){var{dh:t}=this;return gn(gn({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}et(J,"DEFAULT_AXIS_SIZE",.15);et(J,"MIN_AXIS_SIZE",.025);et(J,"MAX_AXIS_SIZE",.2);et(J,"AXIS_SIZE_PX",75);et(J,"LEGEND_WIDTH_PX",50);et(J,"MAX_LEGEND_SIZE",.25);et(J,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));et(J,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");et(J,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));et(J,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));et(J,"SUBTITLE_LINE_HEIGHT",25);et(J,"DEFAULT_MARKER_SIZE",6);et(J,"MODE_MARKERS","markers");et(J,"MODE_LINES","lines");const lt=J;function os(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 ss(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?os(Object(t),!0).forEach(function(r){ut(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):os(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ut(n,e,t){return e=wc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wc(n){var e=Sc(n,"string");return typeof e=="symbol"?e:String(e)}function Sc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Er=ye.module("Chart");class Qr extends D.Component{static convertIcon(e){var[t,,,,r]=e.icon,i="".concat(r);return{width:t,path:i,ascent:t,descent:0,transform:"matrix(1, 0, 0, 1, 0, 0)"}}static downsampleButtonTitle(e,t){return e?"Downsampling in progress...":t?"Downsampling disabled, click to enable":"Downsampling enabled, click to disable"}static downsampleButtonAttr(e,t){return e?"animation-spin":t?void 0:"fill-active"}constructor(e){super(e),ut(this,"currentSeries",void 0),ut(this,"PlotComponent",void 0),ut(this,"plot",void 0),ut(this,"plotWrapper",void 0),ut(this,"columnFormats",void 0),ut(this,"dateTimeFormatterOptions",void 0),ut(this,"decimalFormatOptions",void 0),ut(this,"integerFormatOptions",void 0),ut(this,"rect",void 0),ut(this,"ranges",void 0),ut(this,"isSubscribed",void 0),ut(this,"isLoadedFired",void 0),ut(this,"getCachedConfig",Be((t,r,i,a,o)=>{var s=[],l=!!t;if(l&&s.push({name:"Downsampling failed: ".concat(t),title:"Downsampling failed",click:()=>{},icon:Qr.convertIcon(Zl),attr:"fill-warning"}),r||i||a||l){var u=Qr.downsampleButtonTitle(i,a),d=Qr.downsampleButtonAttr(i,a),h=i?Pd:Fd;s.push({name:u,title:"Downsampling status",icon:Qr.convertIcon(h),click:this.handleDownsampleClick,attr:d})}var v=o.some(p=>{var{type:C}=p;return C!=null&&!C.includes("3d")}),m=o.some(p=>{var{type:C}=p;return C!=null&&C.includes("3d")}),g=["zoomIn2d","zoomOut2d","autoScale2d","resetScale2d"],f=["orbitRotation","tableRotation","resetCameraDefault3d"];return{displaylogo:!1,displayModeBar:i||l?!0:"hover",modeBarButtons:[s,["toImage"],["zoom2d","pan2d"],[...v?g:[],...m?f:[]]]}})),this.handleAfterPlot=this.handleAfterPlot.bind(this),this.handleDownsampleClick=this.handleDownsampleClick.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this),this.handlePlotUpdate=this.handlePlotUpdate.bind(this),this.handleRelayout=this.handleRelayout.bind(this),this.handleRestyle=this.handleRestyle.bind(this),this.PlotComponent=Ch(e.Plotly),this.plot=Ne.createRef(),this.plotWrapper=Ne.createRef(),this.columnFormats=[],this.dateTimeFormatterOptions={},this.decimalFormatOptions={},this.integerFormatOptions={},this.isSubscribed=!1,this.isLoadedFired=!1,this.currentSeries=0,this.state={data:null,downsamplingError:null,isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,layout:{datarevision:0},revision:0}}componentDidMount(){this.updateDimensions(),this.updateModelDimensions(),this.initData(),this.initFormatter();var{isActive:e,model:t}=this.props;e&&this.subscribe(t)}componentDidUpdate(e){var{isActive:t,model:r,settings:i}=this.props;this.updateFormatterSettings(i),r!==e.model&&(this.unsubscribe(e.model),this.subscribe(r)),t!==e.isActive&&(t?this.subscribe(r):this.unsubscribe(r))}componentWillUnmount(){var{model:e}=this.props;this.unsubscribe(e)}getPlotRect(){var e,t;return(e=(t=this.plotWrapper.current)===null||t===void 0?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null}initData(){var{model:e}=this.props,{layout:t}=this.state;this.setState({data:e.getData(),layout:ss(ss({},t),e.getLayout())})}subscribe(e){if(!this.isSubscribed){if(!this.rect||this.rect.width===0||this.rect.height===0){Er.debug2("Delaying subscription until model dimensions are set");return}e.subscribe(this.handleModelEvent),this.isSubscribed=!0}}unsubscribe(e){this.isSubscribed&&(e.unsubscribe(this.handleModelEvent),this.isSubscribed=!1)}handleAfterPlot(){this.plot.current!=null}handleDownsampleClick(){this.setState(e=>{var{isDownsamplingDisabled:t}=e;return{downsamplingError:null,isDownsampleInProgress:!1,isDownsampleFinished:!1,isDownsamplingDisabled:!t}},()=>{var{model:e}=this.props,{isDownsamplingDisabled:t}=this.state;e.setDownsamplingDisabled(t)})}handleModelEvent(e){var{type:t,detail:r}=e;switch(Er.debug2("Received data update",t,r),t){case gr.EVENT_UPDATED:{this.currentSeries+=1,this.setState(h=>{var{layout:v,revision:m}=h;return typeof v.datarevision=="number"&&(v.datarevision+=1),{data:r,layout:v,revision:m+1}});var{onUpdate:i}=this.props;i({isLoading:!this.isLoadedFired});break}case gr.EVENT_LOADFINISHED:{var{onUpdate:a}=this.props;this.isLoadedFired=!0,a({isLoading:!1});break}case gr.EVENT_DISCONNECT:{var{onDisconnect:o}=this.props;o();break}case gr.EVENT_RECONNECT:{var{onReconnect:s}=this.props;s();break}case gr.EVENT_DOWNSAMPLESTARTED:{this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!0,downsamplingError:null});break}case gr.EVENT_DOWNSAMPLEFINISHED:{this.setState({isDownsampleFinished:!0,isDownsampleInProgress:!1,downsamplingError:null});break}case gr.EVENT_DOWNSAMPLENEEDED:case gr.EVENT_DOWNSAMPLEFAILED:{var l,u=(l=r.message)!==null&&l!==void 0?l:r;this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,downsamplingError:u});var{onError:d}=this.props;d(new Error(u));break}default:Er.debug("Unknown event type",t,e)}}handlePlotUpdate(e){var{layout:t}=e,r=lt.getLayoutRanges(t),i=!nt(r,this.ranges);i&&(this.ranges=r,this.updateModelDimensions(!0))}handleRelayout(e){if(Er.debug("handleRelayout",e),e.hiddenlabels!=null){var{onSettingsChanged:t}=this.props,r=[...e.hiddenlabels];t({hiddenSeries:r})}this.updateModelDimensions()}handleRestyle(e){var[t,r]=e;if(Er.debug("handleRestyle",t,r),Object.keys(t).includes("visible")){var{data:i}=this.state,{onSettingsChanged:a}=this.props;if(i!=null){var o=i.reduce((s,l)=>{var{name:u,visible:d}=l;return u!=null&&d==="legendonly"?[...s,u]:s},[]);a({hiddenSeries:o})}}}updateModelDimensions(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.getPlotRect();if(!t){Er.warn("Unable to get plotting rect");return}var r=!this.rect||this.rect.width!==t.width||this.rect.height!==t.height;if(r||e){this.rect=t;var{isActive:i,model:a}=this.props;a.setDimensions(t),i&&this.subscribe(a)}}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}updateFormatterSettings(e){var t=en.getColumnFormats(e),r=en.getDateTimeFormatterOptions(e),{decimalFormatOptions:i={},integerFormatOptions:a={}}=e;(!nt(this.columnFormats,t)||!nt(this.dateTimeFormatterOptions,r)||!nt(this.decimalFormatOptions,i)||!nt(this.integerFormatOptions,a))&&(this.columnFormats=en.getColumnFormats(e),this.dateTimeFormatterOptions=r,this.decimalFormatOptions=i,this.integerFormatOptions=a,this.updateFormatter())}updateFormatter(){var{model:e}=this.props,t=new Hr(e.dh,this.columnFormats,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions);e.setFormatter(t)}updateDimensions(){var e=this.getPlotRect(),{Plotly:t}=this.props;this.plot.current!=null&&e!=null&&e.width>0&&e.height>0&&t.relayout(this.plot.current.el,{autosize:!0}).catch(r=>{Er.debug("Unable to resize, promise rejected",r)})}render(){var{PlotComponent:e}=this,{data:t,downsamplingError:r,isDownsampleFinished:i,isDownsampleInProgress:a,isDownsamplingDisabled:o,layout:s,revision:l}=this.state,u=this.getCachedConfig(r,i,a,o,t??[]),d=t!=null;return c.jsx("div",{className:"h-100 w-100 chart-wrapper",ref:this.plotWrapper,children:d&&c.jsx(e,{ref:this.plot,data:t,layout:s,revision:l,config:u,onAfterPlot:this.handleAfterPlot,onError:Er.error,onRelayout:this.handleRelayout,onUpdate:this.handlePlotUpdate,onRestyle:this.handleRestyle,useResizeHandler:!0,style:{height:"100%",width:"100%"}})})}}ut(Qr,"defaultProps",{isActive:!0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Sn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,formatter:[]},Plotly:bh,onDisconnect:()=>{},onReconnect:()=>{},onUpdate:()=>{},onError:()=>{},onSettingsChanged:()=>{}});const wS=Qr;function ls(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 us(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ls(Object(t),!0).forEach(function(r){_e(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ls(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function _e(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=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 it=ye.module("FigureChartModel");class qi extends gr{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:Yt;super(e),r=this,_e(this,"chartUtils",void 0),_e(this,"dh",void 0),_e(this,"figure",void 0),_e(this,"settings",void 0),_e(this,"theme",void 0),_e(this,"data",void 0),_e(this,"layout",void 0),_e(this,"seriesDataMap",void 0),_e(this,"pendingSeries",void 0),_e(this,"oneClicks",void 0),_e(this,"filterColumnMap",void 0),_e(this,"lastFilter",void 0),_e(this,"isConnected",void 0),_e(this,"seriesToProcess",void 0),_e(this,"addPendingSeries",Jt(()=>{for(var s=lt.getAllAxes(this.figure),{pendingSeries:l}=this,u=function(){var v,m=l[d],g=r.figure.charts.find(f=>f.series.includes(m));r.addSeries(m,s,(v=g?.showLegend)!==null&&v!==void 0?v:null),m.subscribe()},d=0;d<l.length;d+=1)u();this.pendingSeries=[]},qi.ADD_SERIES_DEBOUNCE)),_e(this,"getTimeZone",ge((s,l)=>{if(l!=null){var u=l.getColumnTypeFormatter(s);if(u!=null)return u.dhTimeZone}})),_e(this,"getValueTranslator",ge((s,l)=>{var u=this.getTimeZone(s,l);return d=>this.chartUtils.unwrapValue(d,u)})),_e(this,"getValueParser",ge((s,l)=>{var u=this.getTimeZone(s,l);return d=>this.chartUtils.wrapValue(d,s,u)})),_e(this,"getRangeParser",ge((s,l)=>u=>{var[d,h]=u,v=this.getValueParser(s,l);return d=v(d),h=v(h),[d,h]})),_e(this,"getAxisRangeParser",ge((s,l)=>u=>{var d=lt.getSourceForAxis(s,u);return d!=null?this.getRangeParser(d.columnType,l):h=>h})),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 lt(e),this.figure=t,this.settings=i,this.theme=a,this.data=[];var o={data:{},layout:this.chartUtils.makeDefaultLayout(a)};this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"},template:o},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.charts.length>0){var e=this.figure.charts[0];return e.title}return""}initAllSeries(){this.oneClicks=[],this.filterColumnMap.clear();for(var{charts:e}=this.figure,t=lt.getAllAxes(this.figure),r=[],i=0;i<e.length;i+=1)for(var a=e[i],o=0;o<a.series.length;o+=1){var s=a.series[o];r.push(s.name),this.addSeries(s,t,a.showLegend)}for(var l=[...this.seriesDataMap.keys()],u=l.filter(v=>r.indexOf(v)<0),d=0;d<u.length;d+=1){var h=u[d];this.seriesDataMap.delete(h)}this.seriesToProcess=new Set([...this.seriesDataMap.keys()])}addSeries(e,t,r){var{dh:i}=this,a=lt.groupArray(t,"type"),o=this.chartUtils.makeSeriesDataFromSeries(e,a,lt.getSeriesVisibility(e.name,this.settings),r,this.theme);if(this.seriesDataMap.set(e.name,o),this.data=[...this.seriesDataMap.values()],e.plotStyle===i.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===i.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=lt.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===i.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var{oneClick:s}=e,{columns:l}=s,u=0;u<l.length;u+=1)this.filterColumnMap.set(l[u].name,l[u]);this.oneClicks.push(s)}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){it.debug("Ignoring subscribe when figure in disconnected state");return}this.figure.subscribe(this.isDownsamplingDisabled?this.dh.plot.DownsampleOptions.DISABLE:this.dh.plot.DownsampleOptions.DEFAULT)}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){it.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){it.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){it.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){it.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;it.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];it.debug2("handleFigureUpdated updating series",a.name);for(var{sources:o}=a,s=0;s<o.length;s+=1){var l=o[s],{columnType:u,type:d}=l,h=this.getValueTranslator(u,this.formatter),v=t.getArray(a,d,h);this.setDataArrayForSeries(a,d,v)}this.seriesToProcess.delete(a.name),this.seriesToProcess.size===0&&this.fireLoadFinished(),this.cleanSeries(a)}var{data:m}=this;this.fireUpdate(m)}handleRequestFailed(e){it.error("Request failed",e)}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){it.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){it.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;it.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=lt.DEFAULT_MARGIN.t+i*lt.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=us({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=us({},this.layout.title.pad),this.layout.title.pad.t=lt.DEFAULT_TITLE_PADDING.t+i*lt.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,this.theme)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{it.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):it.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,o=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);o&&ql(o,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:o,xHigh:s}=a;if(o&&s&&o.length===s.length){for(var l=[],u=0;u<o.length;u+=1)l.push(s[u]-o[u]);a.width=l}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:d,xLow:h,xHigh:v,y:m,yLow:g,yHigh:f}=a;h&&v&&h!==d&&(a.error_x=lt.getPlotlyErrorBars(d,h,v)),g&&f&&g!==m&&(a.error_y=lt.getPlotlyErrorBars(m,g,f))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:p,labels:C}=a;p!==void 0&&C===void 0&&(a.labels=p)}}}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){it.warn("Trying to set a filter, but no one click!");return}it.debug("setFilter",e);for(var r=function(){var o=t.oneClicks[i],{columns:s}=o,l=new Set([...e.keys(),...t.lastFilter.keys()]);l.forEach(u=>{var d=e.get(u);t.lastFilter.get(u)!==d&&s.find(h=>h.name===u)!=null&&o.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}}_e(qi,"ADD_SERIES_DEBOUNCE",50);const ds=qi;function hs(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function Ra(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){hs(a,r,i,o,s,"next",l)}function s(l){hs(a,r,i,o,s,"throw",l)}o(void 0)})}}class bo{static makeModelFromSettings(e,t,r){var i=arguments;return Ra(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:Yt,o=yield bo.makeFigureFromSettings(e,t,r);return new ds(e,o,t,a)})()}static makeFigureFromSettings(e,t,r){return Ra(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new lt(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){var i=arguments;return Ra(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:Yt;return new ds(e,r,t,a)})()}}const SS=bo;function yS(n){return n.setFigure!==void 0}function Ec(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=Rc(n,"string");return typeof e=="symbol"?e:String(e)}function Rc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Dc extends Error{constructor(){super(...arguments),Ec(this,"isAssertionFailed",!0)}}const hu=Dc;function cs(n){if(n==null)throw new hu("Expected 'val' to be defined, but received ".concat(n))}function Nc(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=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 Ic extends Error{constructor(){super(...arguments),Nc(this,"isPasteError",!0)}}const Da=Ic;function Le(n){return n?.isEditable!==void 0}function vs(n){if(!Le(n))throw new hu("Expected 'model' to be editable, but received ".concat(n))}function Fe(n){return n?.hasExpandableRows!==void 0}function Un(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=xc(n,"string");return typeof e=="symbol"?e:String(e)}function xc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ht;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(Ht||(Ht={}));class B{static normalize(e,t,r,i){var a=e,o=t,s=r,l=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),o!=null&&l!=null&&l<o&&(o=l,l=t),[a,o,s,l]}static makeNormalized(e,t,r,i){return new B(...B.normalize(e,t,r,i))}static makeCell(e,t){return new B(e,t,e,t)}static makeColumn(e){return new B(e,null,e,null)}static makeRow(e){return new B(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],o=t.length-1;o>i;o-=1){var s=t[o];if(a.contains(s))t.splice(o,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(o,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:l,endRow:u}=a,d=B.minOrNull(a.startColumn,s.startColumn),h=B.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new B(d,l,h,u),t.splice(o,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:v,endColumn:m}=a,g=B.minOrNull(a.startRow,s.startRow),f=B.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new B(v,g,m,f),t.splice(o,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,o,s,l;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:v}=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,v=v!=null&&t.endRow!=null?Math.min(v,t.endRow):(o=v)!==null&&o!==void 0?o:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((l=v)!==null&&l!==void 0?l:-1)?null:new B(u,d,h,v)}static subtractFromRange(e,t){var r=[],i=B.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new B(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new B(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new B(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new B(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(...B.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=B.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,o,s;return B.isBounded(e)?e:new B((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(o=e.endColumn)!==null&&o!==void 0?o:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>B.boundedRange(i,t,r))}static offset(e,t,r){return new B(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]:B.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(v=>v.containsCell(t,r)),a>=0)){var o=e[a],s=o.nextCell(t,r,i);if(s!=null)return s}switch(i){case B.SELECTION_DIRECTION.DOWN:case B.SELECTION_DIRECTION.RIGHT:{var l=a<e.length-1?a+1:0,u=e[l];return u.startCell(i)}case B.SELECTION_DIRECTION.LEFT:case B.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,o,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((o=r.endColumn)!==null&&o!==void 0?o: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]:B.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){Un(this,"startColumn",void 0),Un(this,"startRow",void 0),Un(this,"endColumn",void 0),Un(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 B.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&B.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return B.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:B.SELECTION_DIRECTION.DOWN;if(!B.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case B.SELECTION_DIRECTION.DOWN:case B.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case B.SELECTION_DIRECTION.LEFT:case B.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!B.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:o,endRow:s}=this;switch(r){case B.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,o)};if(e<a)return{column:Math.max(e+1,i),row:o};break;case B.SELECTION_DIRECTION.UP:if(t>o)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case B.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,o)};break;case B.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>o)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]:B.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var o;e(i,a,r),r+=1,{column:i,row:a}=(o=this.nextCell(i,a,t))!==null&&o!==void 0?o:{}}}}Un(B,"SELECTION_DIRECTION",Ht);function Mc(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function ci(n){return Mc(n)&&n[0]!=null&&n[1]!=null}function ms(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 vi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ms(Object(t),!0).forEach(function(r){cu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ms(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function cu(n,e,t){return e=Lc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lc(n){var e=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)}function ji(n){return n?.href!==void 0}class K{static getGridPointFromXY(e,t,r){var i=K.getColumnAtX(e,r),a=K.getRowAtY(t,r),o=K.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:o}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=K.getGridPointFromXY(e,t,r),{allColumnWidths:o,allRowHeights:s,allColumnXs:l,allRowYs:u,modelColumns:d,modelRows:h}=r,v=i!==null?h.get(i):null,m=a!==null?d.get(a):null,g=a!==null?l.get(a):null,f=i!==null?u.get(i):null,p=a!==null?o.get(a):null,C=i!==null?s.get(i):null;return{row:i,column:a,modelRow:v??null,modelColumn:m??null,left:g??null,top:f??null,columnWidth:p??null,rowHeight:C??null}}static getColumnHeaderDepthAtY(e,t){var r=K.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ae(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=K.iterateFloatingStart(e,r,i);return a!==void 0?a:K.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,o){var s=Math.max(e,r),l=Math.min(t,a-i-1),u=K.iterateFloating(r,i,a,o);if(u!==void 0)return u;for(var d=s;d<=l;d+=1)if(u=o(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,o,s=(a=t.get(e))!==null&&a!==void 0?a:0,l=(o=r.get(e))!==null&&o!==void 0?o:0;return s<=i&&i<=s+l}static getItemAtOffset(e,t,r,i,a,o,s){var l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=l?void 0:K.iterateFloating(r,i,t,v=>{if(K.isInItem(v,o,s,e))return v});if(!l&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(K.isInItem(h,o,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:o,visibleColumns:s,allColumnXs:l,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,o,s,l,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:o,allRowYs:s,allRowHeights:l,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,o,s,l)}static getNextShownItem(e,t,r,i){var a=r.findIndex(l=>l===e)||0;for(a-=1;a!=null&&a>=0;){var o=r[a],s=t.get(o);if(s!=null&&i.get(s)!==0)return o;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return K.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return K.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,floatingColumns:s,floatingLeftWidth:l,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:v}=r,{allowColumnResize:m,headerSeparatorHandleSize:g}=i;if(v*o<t||!m||g<=0)return null;for(var f=e-a,p=g*.5,C=!1,b=s.length-1;b>=0;b-=1){var w,S,T=s[b],y=(w=d.get(T))!==null&&w!==void 0?w:0,O=(S=h.get(T))!==null&&S!==void 0?S:0,R=O===0;if(!C||!R){var E=y+O;R?E+=p:C&&(E-=p);var P=E-p,x=E+p;if(P<=f&&f<=x)return T;C=R}}C=!1;for(var I=u.length-1;I>=0;I-=1){var N,L,F=u[I],k=(N=d.get(F))!==null&&N!==void 0?N:0,H=(L=h.get(F))!==null&&L!==void 0?L:0,W=H===0;if(k<l-H)return null;if(!C||!W){var z=k+H;W?z+=p:C&&(z-=p);var Y=z-p,$=z+p;if(Y<=f&&f<=$)return F;C=W}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return K.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(!K.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(l=>l===e),o=a-1;o>=0;o-=1){var s=r[o];if(!K.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return K.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,visibleRows:s,allRowYs:l,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var v=t-o,m=h*.5,g=!1,f=s.length-1;f>=0;f-=1){var p,C,b=s[f],w=(p=l.get(b))!==null&&p!==void 0?p:0,S=(C=u.get(b))!==null&&C!==void 0?C:0,T=S===0;if(!g||!T){var y=w+S;T?y+=m:g&&(y-=m);var O=y-m,R=y+m;if(O<=v&&v<=R)return b;g=T}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return K.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return K.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&&!ci(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=vi(vi({},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 K.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var o=[...r],s=o[o.length-1];s!=null&&ci(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?o[o.length-1]=vi(vi({},s),{},{to:a}):o.push({from:e,to:a});var l=o[o.length-1];return ci(l.from)&&l.from[0]===l.to&&o.pop(),o}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?K.moveRange(e,t,r,i):K.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]],o=function(){var{from:u,to:d}=r[s],h=1,v;ci(u)?(h=u[1]-u[0]+1,[v]=u):v=u;for(var m=i?d:v,g=m+h-1,f=i?v:d,p=f-m,C=[],b=function(){var T,y,O=(T=a[w][0])!==null&&T!==void 0?T:Number.NEGATIVE_INFINITY,R=(y=a[w][1])!==null&&y!==void 0?y:Number.POSITIVE_INFINITY,E,P=[[O,m-1],[m,g],[g+1,R]].map(x=>{var[I,N]=x;return[Math.max(I,O),Math.min(N,R)]}).filter(x=>{var[I,N]=x;return I<=N}).map(x=>{var[I,N]=x;return m<=I&&g>=N?(E=[I+p,N+p],E):g<I?[I-h,N-h]:x}).map(x=>{var[I,N]=x;return f>I&&f<=N?[[I,f-1],[f+h,N+h]]:x===E?[x]:f<=I?[[I+h,N+h]]:[x]}).flat();C.push(...P)},w=0;w<a.length;w+=1)b();a=C.map(S=>{var[T,y]=S;return[Number.isFinite(T)?T:null,Number.isFinite(y)?y:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)o();return a}static translateRange(e,t,r,i){for(var a=K.applyItemMoves(e.startColumn,e.endColumn,t,i),o=K.applyItemMoves(e.startRow,e.endRow,r,i),s=[],l=0;l<a.length;l+=1)for(var u=a[l],d=0;d<o.length;d+=1){var h=o[d];s.push(new B(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=K.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>K.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return K.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Se,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Se;return K.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Se,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Se,i=[],a=0;a<e.length;a+=1)i.push(...K.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return K.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Se,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Se;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Se,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Se,i=[],a=0;a<e.length;a+=1)i.push(...K.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=K.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>K.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return K.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=K.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:o,height:s,floatingTopRowCount:l,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:v,floatingRightWidth:m,floatingTopHeight:g,floatingBottomHeight:f,columnCount:p,rowCount:C}=e,b=i,w=a,S=o,T=s;return r!=null&&(r>d&&(b+=v),r<p-h&&(S-=m)),t!=null&&(t>l&&(w+=g),t<C-u&&(T-=f)),{x1:b,y1:w,x2:S,y2:T}}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:o,deltaY:s}=e;return!K.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(o=e.deltaY,s=e.deltaX),e?.deltaMode===WheelEvent.DOM_DELTA_PAGE?(o*=t,s*=r):e?.deltaMode===WheelEvent.DOM_DELTA_LINE&&(K.isMacPlatform()?(o=Math.round(o*i),s=Math.round(s*a)):(o=Math.round(o*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:o,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],o=i[1];r===0?t.push([a,o]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],o):t.push([a,o])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:o}=e,{gridX:s,gridY:l,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:v}=t,m=Ae(s+r,s,u-h),g=Ae(s+a,s,u-h),f=Ae(l+i,l,d-v),p=Ae(l+o,l,d-v);return{x1:m,y1:f,x2:g,y2:p,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:o}=e,{firstColumn:s,allColumnXs:l,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:v,modelColumns:m}=i,{cellHorizontalPadding:g,treeDepthIndent:f,treeHorizontalPadding:p}=o,C=M(v,r),b=M(m,t),w=a.textAlignForCell(b,C),S=M(l,t),T=M(d,r),y=M(u,t),O=M(h,r),R=t===s,E=0;Fe(a)&&a.hasExpandableRows&&R&&(E=f*(a.depthForRow(r)+1)+p);var P=y-E,x=S+g,I=T+O*.5;return w==="right"?x=S+P-g:w==="center"&&(x=S+P*.5),x+=E,{width:P-g*2,x,y:I}}static findTokensWithProtocolInText(e){var t=ud(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}cu(K,"PIXELS_PER_LINE",100/3);const ee=K;function Ot(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 mi(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:nn.CACHE_SIZE,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Math.floor(e/2);if(n.size>e)for(var r=n.keys();n.size>t;)n.delete(r.next().value)}function gs(n,e,t,r,i){for(var a=new Map,o=0,s=0;s<n&&s<t;s+=1)a.set(s,o),o+=M(i,s);o=r;for(var l=0;l<e&&t-l-1>=0;l+=1)o-=M(i,t-l-1),a.set(t-l-1,o);return a}class nn{constructor(){var{userColumnWidths:e=new Map,userRowHeights:t=new Map,calculatedColumnWidths:r=new Map,calculatedRowHeights:i=new Map,fontWidths:a=new Map,modelRows:o=new Map,modelColumns:s=new Map,movedRows:l=[],movedColumns:u=[],initialRowHeights:d=new Map,initialColumnWidths:h=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ot(this,"initialRowHeights",void 0),Ot(this,"initialColumnWidths",void 0),Ot(this,"userColumnWidths",void 0),Ot(this,"userRowHeights",void 0),Ot(this,"calculatedColumnWidths",void 0),Ot(this,"calculatedRowHeights",void 0),Ot(this,"fontWidths",void 0),Ot(this,"modelRows",void 0),Ot(this,"modelColumns",void 0),Ot(this,"movedRows",void 0),Ot(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=t,this.calculatedRowHeights=i,this.calculatedColumnWidths=r,this.fontWidths=a,this.modelRows=o,this.modelColumns=s,this.movedRows=l,this.movedColumns=u,this.initialRowHeights=d,this.initialColumnWidths=h}getMetrics(e){var{left:t,top:r,leftOffset:i,topOffset:a,width:o,height:s,theme:l,model:u,movedRows:d,movedColumns:h,draggingColumn:v}=e,{rowHeight:m,rowHeaderWidth:g,rowFooterWidth:f,columnWidth:p,columnHeaderHeight:C,minScrollHandleSize:b,scrollBarSize:w}=l;d!==this.movedRows&&(this.movedRows=d,this.modelRows.clear()),h!==this.movedColumns&&(this.movedColumns=h,this.modelColumns.clear());var{columnCount:S,rowCount:T,floatingTopRowCount:y,floatingBottomRowCount:O,floatingLeftColumnCount:R,floatingRightColumnCount:E,columnHeaderMaxDepth:P}=u,x=this.getFirstRow(e),I=this.getFirstColumn(e),N=this.getGridX(e),L=this.getGridY(e),F=Fe(u)&&u.hasExpandableRows?this.calculateTreePaddingX(e):0,k=0,H=this.getVisibleRowHeights(e),W=this.getVisibleColumnWidths(e,I,F),z=Array.from(H.keys()),Y=Array.from(W.keys()),$=new Map([...H,...this.getFloatingRowHeights(e)]),A=new Map([...W,...this.getFloatingColumnWidths(e)]),U=this.getVisibleColumnXs(A,Y,i),V=this.getVisibleRowYs($,z,a),X=z.length>0?z[z.length-1]:r,q=Y.length>0?Y[Y.length-1]:t,ne=this.getBottomViewport(e,z,V,$),ue=this.getRightViewport(e,Y,U,A),re=this.getFloatingTopHeight(e,$),te=this.getFloatingBottomHeight(e,$),Te=this.getFloatingLeftWidth(e,A),Ie=this.getFloatingRightWidth(e,A),tt=Array.from(A.values()),Qe=Array.from($.values()),Ke=tt.reduce((hr,Nn)=>hr+Nn,0)-i,Ue=Qe.reduce((hr,Nn)=>hr+Nn,0)-a,Ze=i+Ke+f,Pe=a+Ue,ht=o-N,ct=s-L,Bt=this.getLastLeft(e,null,ht-f),Vt=this.getLastLeft(e,null,ht-f-w),ur=this.getLastTop(e,null,ct-te),br=this.getLastTop(e,null,ct-te-w),Pt=Vt,Je=br;Bt===0&&ur===0&&(Pt=0,Je=0);var Ut=Pt>0,vt=Ut?w:0,mt=Je>0,Xe=mt?w:0,Ft=N,$t=P*C,It=o-Ft-Xe,gt=s-$t-vt,wr=S===1?It/Ze:(S-Pt)/S,tr=T===1?gt/Pe:(T-Je)/T,dr=Ut?Ae(It*wr,b,It-1):0,At=mt?Ae(gt*tr,b,gt-1):0,Gt=M(A,t,0),Ur=M($,r,0),sn=Gt>0?i/Gt:0,ln=Ur>0?a/Ur:0,un=S===1?i/(Ze-ht):(t+sn)/Pt,dn=T===1?a/(Pe-ct):(r+ln)/Je,hn=Ut?un*(It-dr):0,je=mt?dn*(gt-At):0,ti=[...Array(y).keys(),...[...Array(O).keys()].map(hr=>T-hr-1)],Rn=new Map([...V,...this.getFloatingRowYs(e,$,Math.floor(s-L-vt))]),ri=[...Array(R).keys(),...[...Array(E).keys()].map(hr=>S-hr-1)],$r=new Map([...U,...this.getFloatingColumnXs(e,A,Math.floor(o-N-Xe))]),ni=[];if(v)for(var ft=v.range[0];ft<=v.range[1];ft+=1)ni.push(ft),A.has(ft)||A.set(ft,this.getVisibleColumnWidth(ft,e)),$r.has(ft)||$r.set(ft,0);var ii=z.concat(ti),Dn=Y.concat(ri).concat(ni),ai=this.getModelRows(ii,e),ra=this.getModelColumns(Dn,e),na=this.getVisibleRowTreeBoxes($,ai,e),oi=this.getTopVisible(e,Rn,$,z),si=this.getLeftVisible(e,$r,A,Y),ia=Je>0?this.getBottomVisible(e,Rn,$,z,L):X,li=Pt>0?this.getRightVisible(e,$r,A,Y,N):q,{fontWidths:ui,userColumnWidths:aa,userRowHeights:oa,calculatedRowHeights:sa,calculatedColumnWidths:la}=this;return{rowHeight:m,rowHeaderWidth:g,rowFooterWidth:f,rowCount:T,columnWidth:p,columnCount:S,columnHeaderHeight:C,floatingTopRowCount:y,floatingBottomRowCount:O,floatingLeftColumnCount:R,floatingRightColumnCount:E,gridX:N,gridY:L,firstRow:x,firstColumn:I,treePaddingX:F,treePaddingY:k,left:t,top:r,bottom:X,right:q,topOffset:a,leftOffset:i,topVisible:oi,leftVisible:si,bottomVisible:ia,rightVisible:li,bottomViewport:ne,rightViewport:ue,width:o,height:s,maxX:Ke,maxY:Ue,lastLeft:Pt,lastTop:Je,barHeight:gt,barTop:$t,barWidth:It,barLeft:Ft,handleHeight:At,handleWidth:dr,hasHorizontalBar:Ut,hasVerticalBar:mt,verticalBarWidth:Xe,horizontalBarHeight:vt,scrollX:hn,scrollY:je,scrollableContentWidth:Ze,scrollableContentHeight:Pe,scrollableViewportWidth:ht,scrollableViewportHeight:ct,visibleRows:z,visibleColumns:Y,visibleRowHeights:H,visibleColumnWidths:W,floatingRows:ti,floatingColumns:ri,allRows:ii,allColumns:Dn,allRowHeights:$,allColumnWidths:A,floatingTopHeight:re,floatingBottomHeight:te,floatingLeftWidth:Te,floatingRightWidth:Ie,visibleRowYs:V,visibleColumnXs:U,allRowYs:Rn,allColumnXs:$r,visibleRowTreeBoxes:na,modelRows:ai,modelColumns:ra,movedRows:d,movedColumns:h,fontWidths:ui,userColumnWidths:aa,userRowHeights:oa,calculatedRowHeights:sa,calculatedColumnWidths:la,columnHeaderMaxDepth:P}}getGridX(e){var{theme:t}=e,{rowHeaderWidth:r}=t;return r}getGridY(e){var{theme:t,model:r}=e,{columnHeaderHeight:i}=t,{columnHeaderMaxDepth:a}=r;return a*i}getVisibleHeight(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{height:r,theme:i}=e,{scrollBarSize:a}=i,o=this.getGridY(e),s=this.getFloatingBottomHeight(e,t),l=this.getFloatingTopHeight(e,t);return r-s-l-o-a}getVisibleWidth(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{width:r,theme:i}=e,{scrollBarSize:a,rowFooterWidth:o}=i,s=this.getGridX(e),l=this.getFloatingRightWidth(e,t),u=this.getFloatingLeftWidth(e,t);return r-u-l-s-a-o}getFirstIndex(e,t,r){for(var i=e.size+1,a=0;a<i;a+=1){var o=t(a,r);if(e.get(o)!==0)return a}return 0}getFirstColumn(e){return this.getFirstIndex(this.userColumnWidths,this.getModelColumn.bind(this),e)}getFirstRow(e){return this.getFirstIndex(this.userRowHeights,this.getModelRow.bind(this),e)}getLastLeft(e,t,r){var{model:i}=e,{columnCount:a,floatingRightColumnCount:o}=i,s=Math.max(0,a-o-1);t!=null&&(s=t);for(var l=0;s>=0;){var u=this.getVisibleColumnWidth(s,e);if(l+=u,l>=r)return Ae(s+1,0,t??a-1);s-=1}return 0}getLastTop(e,t,r){var{model:i}=e,{rowCount:a,floatingBottomRowCount:o}=i,s=Math.max(0,a-o-1);t!=null&&(s=t);for(var l=0;s>=0;){var u=this.getVisibleRowHeight(s,e);if(l+=u,l>=r)return Ae(s+1,0,a-1);s-=1}return 0}getTopForTopVisible(e,t){for(var r=this.getFloatingTopHeight(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleRowHeight(i,e);return i}getTopForBottomVisible(e,t){var{height:r}=e,i=this.getGridY(e),a=this.getFloatingBottomHeight(e),o=r-i-a;return this.getLastTop(e,t,o)}getLeftForLeftVisible(e,t){for(var r=this.getFloatingLeftWidth(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleColumnWidth(i,e);return i}getLeftForRightVisible(e,t){var{width:r}=e,i=this.getGridX(e),a=this.getFloatingRightWidth(e),o=r-i-a;return this.getLastLeft(e,t,o)}getFloatingRowHeights(e){for(var{model:t}=e,{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t,o=new Map,s=0;s<r&&s<a;s+=1)o.set(s,this.getVisibleRowHeight(s,e));for(var l=0;l<i&&a-l-1>=0;l+=1){var u=a-l-1;o.set(u,this.getVisibleRowHeight(u,e))}return o}getVisibleRowHeights(e){for(var{top:t,topOffset:r,height:i,model:a}=e,o=0,s=t,l=new Map,{rowCount:u}=a;o<i+r&&s<u;){var d=this.getVisibleRowHeight(s,e);l.set(s,d),o+=d,s+=1}return l}getFloatingColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:s}=i,l=new Map,u=0;u<o&&u<a;u+=1)l.set(u,this.getVisibleColumnWidth(u,e,t,r));for(var d=0;d<s&&a-d-1>=0;d+=1){var h=a-d-1;l.set(h,this.getVisibleColumnWidth(h,e,t,r))}return l}getVisibleColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{left:i,leftOffset:a,width:o,model:s}=e,l=0,u=i,d=new Map,{columnCount:h}=s;l<o+a&&u<h;){var v=this.getVisibleColumnWidth(u,e,t,r);d.set(u,v),l+=v,u+=1}return d}getFloatingColumnXs(e,t,r){var{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:s}=i;return gs(o,s,a,r,t)}getVisibleColumnXs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var s=t[o],l=M(e,s);i.set(s,a),a+=l}return i}getFloatingRowYs(e,t,r){var{model:i}=e,{floatingTopRowCount:a,floatingBottomRowCount:o,rowCount:s}=i;return gs(a,o,s,r,t)}getVisibleRowYs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var s=t[o],l=M(e,s);i.set(s,a),a+=l}return i}getVisibleRowTreeBoxes(e,t,r){var i=new Map,{model:a,theme:o}=r,{treeDepthIndent:s,treeHorizontalPadding:l}=o;return Fe(a)&&a.hasExpandableRows&&e.forEach((u,d)=>{var h=M(t,d);if(a.isRowExpandable(h)){var v=a.depthForRow(h),m=v*s+l,g=(v+1)*s+l,f=0,p=u;i.set(d,{x1:m,y1:f,x2:g,y2:p})}}),i}getFloatingLeftWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingLeftColumnCount:i}=r,a=0,o=0;o<i;o+=1)a+=M(t,o);return a}getFloatingRightWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingRightColumnCount:i,columnCount:a}=r,o=0,s=0;s<i;s+=1)o+=M(t,a-s-1);return o}getFloatingTopHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingTopRowCount:i}=r,a=0,o=0;o<i;o+=1)a+=M(t,o);return a}getFloatingBottomHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingBottomRowCount:i,rowCount:a}=r,o=0,s=0;s<i;s+=1)o+=M(t,a-s-1);return o}getTopVisible(e,t,r,i){for(var a=this.getFloatingTopHeight(e,r),o=0;o<i.length;o+=1){var s=i[o],l=M(t,s);if(l>=a)return s}return 0}getLeftVisible(e,t,r,i){for(var a=this.getFloatingLeftWidth(e,r),o=0;o<i.length;o+=1){var s=i[o],l=M(t,s);if(l>=a)return s}return 0}getBottomVisible(e,t,r,i,a){for(var{height:o,theme:s}=e,{scrollBarSize:l}=s,u=this.getFloatingBottomHeight(e,r),d=o-a-l-u,h=i.length-1;h>=0;h-=1){var v=i[h],m=M(t,v),g=M(r,v);if(m+g<=d)return v}return 0}getRightVisible(e,t,r,i,a){for(var{width:o,theme:s}=e,{scrollBarSize:l}=s,u=this.getFloatingRightWidth(e,r),d=o-a-l-u,h=i.length-1;h>=0;h-=1){var v=i[h],m=M(t,v),g=M(r,v);if(m+g<=d)return v}return 0}getBottomViewport(e,t,r,i){var{height:a,theme:o}=e,{rowHeight:s}=o;return this.getLastIndexViewport(t,r,i,a,s)}getRightViewport(e,t,r,i){var{width:a,theme:o}=e,{columnWidth:s}=o;return this.getLastIndexViewport(t,r,i,a,s)}getLastIndexViewport(e,t,r,i,a){var o=0,s=0;return e.length>0&&(o=e[e.length-1],s=M(t,o)+M(r,o)),s<i&&(o+=Math.ceil((i-s)/a)),o}getVisibleItemSize(e,t,r){var i;return(i=t.get(e))!==null&&i!==void 0?i:r()}getVisibleRowHeight(e,t){var r=this.getModelRow(e,t),i=this.calculateRowHeight(e,r,t);return this.getVisibleItemSize(r,this.userRowHeights,()=>{var a=this.initialRowHeights.get(r);return a!==void 0?a:i})}getVisibleColumnWidth(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.getFirstColumn(t),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.calculateTreePaddingX(t),a=this.getModelColumn(e,t),o=this.calculateColumnWidth(e,a,t,r,i);return this.getVisibleItemSize(a,this.userColumnWidths,()=>{var s=this.initialColumnWidths.get(a);return s!==void 0?s:o})}getModelRows(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelRow(a,t);r.set(a,o)}return r}getModelRow(e,t){if(this.modelRows.has(e))return M(this.modelRows,e);var{movedRows:r}=t,i=ee.getModelIndex(e,r);return this.modelRows.set(e,i),i}getModelColumns(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelColumn(a,t);r.set(a,o)}return r}getModelColumn(e,t){var r=this.modelColumns.has(e);if(r)return M(this.modelColumns,e);var{movedColumns:i}=t,a=ee.getModelIndex(e,i);return this.modelColumns.set(e,a),a}calculateRowHeight(e,t,r){var{theme:i}=r,{autoSizeRows:a,rowHeight:o}=i;if(!a)return o;var s=this.calculatedRowHeights.get(t);return s??(this.calculatedRowHeights.set(t,Math.ceil(o)),mi(this.calculatedRowHeights),o)}calculateColumnWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.getFirstColumn(r),a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.calculateTreePaddingX(r),{theme:o}=r,{autoSizeColumns:s,minColumnWidth:l,maxColumnWidth:u}=o;if(!s){var{columnWidth:d}=o;return d}var h=this.calculateColumnHeaderWidth(t,r),v=this.calculateColumnDataWidth(t,r),m=this.calculatedColumnWidths.get(t),g=Math.ceil(Math.max(h,v));return g=Math.max(l,g),g=Math.min(u,g),m!=null&&m>g?g=m:(this.calculatedColumnWidths.set(t,g),mi(this.calculatedColumnWidths)),e===i&&(g+=a),g}calculateColumnHeaderWidth(e,t){var{model:r,theme:i}=t,{headerFont:a,headerHorizontalPadding:o}=i,s=r.textForColumnHeader(e,0);if(s!==void 0&&s!==""){var l=this.getWidthForFont(a,t);return s.length*l+o*2}return o*2}calculateColumnDataWidth(e,t){var{top:r,height:i,width:a,model:o,theme:s}=t,{floatingTopRowCount:l,floatingBottomRowCount:u,rowCount:d}=o,{font:h,cellHorizontalPadding:v,rowHeight:m,rowHeaderWidth:g,rowFooterWidth:f,scrollBarSize:p,dataBarHorizontalPadding:C}=s,b=0,w=this.getWidthForFont(h,t),S=i/m,T=Math.ceil(r+S);return ee.iterateAllItems(r,T,l,u,d,y=>{var O=this.getModelRow(y,t),R=o.textForCell(e,O),E=o.renderTypeForCell(e,O),P=0;if(R){var x=v*2;P=R.length*w+x}E==="dataBar"&&(P+=C),b=Math.max(b,P)}),b=Math.max(Math.min(b,(a-g-p-f)*nn.MAX_COLUMN_WIDTH),v*2),b}calculateTreePaddingX(e){var{top:t,height:r,model:i,theme:a}=e,{rowHeight:o,treeDepthIndent:s}=a;if(!Fe(i)||!i.hasExpandableRows)return 0;for(var l=0,u=r/o,d=Math.ceil(t+u),h=t;h<=d;h+=1){var v=this.getModelRow(h,e),m=i.depthForRow(v);l=Math.max(l,s*(m+1))}return l}getWidthForFont(e,t){if(this.fontWidths.has(e))return M(this.fontWidths,e);var{context:r}=t;r.font=e;var i=r.measureText("8"),{width:a}=i;return this.fontWidths.set(e,a),this.fontWidths.set(r.font,a),a}setColumnWidth(e,t){var r=new Map(this.userColumnWidths);r.set(e,Math.ceil(t)),mi(r),this.userColumnWidths=r}resetColumnWidth(e){var t=new Map(this.userColumnWidths);t.delete(e),this.userColumnWidths=t}setRowHeight(e,t){var r=new Map(this.userRowHeights);r.set(e,Math.ceil(t)),mi(r),this.userRowHeights=r}resetRowHeight(e){var t=new Map(this.userRowHeights);t.delete(e),this.userRowHeights=t,this.calculatedRowHeights.delete(e)}}Ot(nn,"CACHE_SIZE",1e4);Ot(nn,"MAX_COLUMN_WIDTH",.8);var Hc=Object.freeze({allowColumnResize:!0,allowRowResize:!0,autoSelectRow:!1,autoSelectColumn:!1,autoSizeColumns:!0,autoSizeRows:!0,backgroundColor:"#000000",black:"#000000",white:"#ffffff",cellHorizontalPadding:5,headerHorizontalPadding:5,font:"12px Arial, sans serif",gridColumnColor:"#8f8f8f66",gridRowColor:"#8f8f8f66",headerBackgroundColor:"#222222",headerSeparatorColor:"#000000",headerSeparatorHoverColor:"#888888",headerSeparatorHandleSize:5,headerHiddenSeparatorSize:5,headerHiddenSeparatorHoverColor:"#8888FF",headerColor:"#d5d5d5",headerFont:"10px Arial, sans serif",columnHoverBackgroundColor:"#444444",selectedColumnHoverBackgroundColor:"#494949",rowBackgroundColors:"#333333 #222222",rowHoverBackgroundColor:"#444444",selectedRowHoverBackgroundColor:"#494949",minScrollHandleSize:50,scrollBarBackgroundColor:"#111111",scrollBarHoverBackgroundColor:"#333333",scrollBarCasingColor:"#000000",scrollBarCornerColor:"#000000",scrollBarColor:"#555555",scrollBarHoverColor:"#888888",scrollBarActiveColor:"#AAAAAA",scrollBarSize:12,scrollBarHoverSize:16,scrollBarCasingWidth:1,scrollSnapToColumn:!1,scrollSnapToRow:!1,selectionColor:"#4286f433",selectionOutlineColor:"#4286f4",selectionOutlineCasingColor:"#222222",scrollBarSelectionTick:!0,scrollBarSelectionTickColor:"#4286f433",scrollBarActiveSelectionTickColor:"#4286f480",shadowBlur:8,shadowColor:"#000000",textColor:"#ffffff",hyperlinkColor:"#4878ea",maxDepth:6,treeDepthIndent:10,treeHorizontalPadding:5,treeLineColor:"#888888",treeMarkerColor:"#cccccc",treeMarkerHoverColor:"#ffffff",rowHeight:20,columnWidth:100,minRowHeight:20,minColumnWidth:55,maxColumnWidth:600,columnHeaderHeight:20,rowHeaderWidth:30,rowFooterWidth:0,headerResizeSnapThreshold:10,headerResizeHiddenSnapThreshold:8,allowColumnReorder:!0,allowRowReorder:!0,reorderOffset:2,floatingGridColumnColor:"#8f8f8f66",floatingGridRowColor:"#8f8f8f66",floatingRowBackgroundColors:"#393939 #292929",floatingDividerOuterColor:"#000000",floatingDividerInnerColor:"#cccccc",zeroLineColor:"#888888",positiveBarColor:"#00ff00",negativeBarColor:"#ff0000",markerBarColor:"#ffffff",dataBarHorizontalPadding:90});const Bc=Hc;function fs(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 ps(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fs(Object(t),!0).forEach(function(r){Vc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fs(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Vc(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=$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)}var Gc=(n,e)=>{var t=!1,r=ge(n,ps(ps({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const er=Gc;function Wc(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,r=Ua.hex.lab.raw(n);return r[0]=Math.max(r[0]-r[0]/t*e,0),"#".concat(Ua.lab.hex(r))}function zc(n,e){var[t,r,i]=Ua.hex.rgb(n);return"rgba(".concat(t,", ").concat(r,", ").concat(i,", ").concat(e,")")}var Kc=n=>{var{r:e,g:t,b:r}=n,i=.4122214708*e+.5363325363*t+.0514459929*r,a=.2119034982*e+.6806995451*t+.1073969566*r,o=.0883024619*e+.2817188376*t+.6299787005*r,s=Math.cbrt(i),l=Math.cbrt(a),u=Math.cbrt(o);return{L:.2104542553*s+.793617785*l-.0040720468*u,a:1.9779984951*s-2.428592205*l+.4505937099*u,b:.0259040371*s+.7827717662*l-.808675766*u}},Yc=n=>{var{L:e,a:t,b:r}=n,i=e+.3963377774*t+.2158037573*r,a=e-.1055613458*t-.0638541728*r,o=e-.0894841775*t-1.291485548*r,s=i*i*i,l=a*a*a,u=o*o*o;return{r:Ae(4.0767416621*s-3.3077115913*l+.2309699292*u,0,255),g:Ae(-1.2684380046*s+2.6097574011*l-.3413193965*u,0,255),b:Ae(-.0041960863*s-.7034186147*l+1.707614701*u,0,255)}},Xc=n=>{var e,t,r=(e=(t=n.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(i,a,o,s)=>"#".concat(a).concat(a).concat(o).concat(o).concat(s).concat(s)).substring(1).match(/.{2}/g))===null||t===void 0?void 0:t.map(i=>parseInt(i,16)))!==null&&e!==void 0?e:[0,0,0];return{r:r[0],g:r[1],b:r[2]}},qc=n=>{var e=Math.round(n.r),t=Math.round(n.g),r=Math.round(n.b);return"#".concat([e,t,r].map(i=>{var a=i.toString(16);return a.length===1?"0".concat(a):a}).join(""))},Qc=(n,e,t)=>{var{L:r,a:i,b:a}=n,{L:o,a:s,b:l}=e,u=r+(o-r)*t,d=i+(s-i)*t,h=a+(l-a)*t;return{L:u,a:d,b:h}};const Yr={colorWithAlpha:zc,darkenForDepth:Wc,linearSRGBToOklab:Kc,OklabToLinearSRGB:Yc,hexToRgb:Xc,rgbToHex:qc,lerpColor:Qc};function Cs(n,e,t){return e=Zc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zc(n){var e=Jc(n,"string");return typeof e=="symbol"?e:String(e)}function Jc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ze{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Cs(this,"order",void 0),Cs(this,"cursor",null),this.order=e}onDown(e,t,r){return!1}onMove(e,t,r){return!1}onDrag(e,t,r){return!1}onLeave(e,t,r){return!1}onClick(e,t,r){return!1}onContextMenu(e,t,r){return!1}onDoubleClick(e,t,r){return!1}onUp(e,t,r){return!1}onWheel(e,t,r){return!1}}function Mn(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)}class rv extends ze{constructor(){super(...arguments),Mn(this,"draggingIndex",void 0),Mn(this,"resizingItems",[]),Mn(this,"hiddenItems",[]),Mn(this,"targetSizes",new Map),Mn(this,"dragOffset",0)}onDown(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var o=this.getSeparator(e,r,i,a);if(o!=null){var s=o.index;return this.dragOffset=0,this.draggingIndex=s,this.resizingItems=[s],this.hiddenItems=this.getHiddenItems(s,r).reverse(),this.targetSizes.clear(),this.addTargetSize(r,s),this.updateCursor(r,s),this.updateSeparator(t,o),!0}return!1}onMove(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var o=this.getSeparator(e,r,i,a);return o!=null?(this.updateCursor(r,o.index),!0):!1}onDrag(e,t){if(this.draggingIndex==null)return!1;var r=e[this.pointProperty],{metricCalculator:i,metrics:a}=t;if(!a)throw new Error("metrics not set");for(var o=t.getTheme(),s=a[this.visibleOffsetProperty],l=a[this.marginProperty],u=a[this.calculatedSizesProperty],d=a[this.modelIndexesProperty],h=a[this.firstIndexProperty],v=a[this.treePaddingProperty],m=new Map,g=this.resizingItems[this.resizingItems.length-1];g!=null;){var f=M(s,g),p=r-l-f-this.dragOffset,C=M(d,g),b=this.targetSizes.get(C),w=this.resizingItems.length>1,S=this.hiddenItems.indexOf(g),T=M(u,C);g===h&&(T+=v);var y=p;if(Math.abs(p-T)<=o.headerResizeSnapThreshold?y=T:b!==void 0&&p>b&&(w&&S!==0||S>0)?y=b:p<=o.headerResizeHiddenSnapThreshold&&(y=0),m.set(C,y),p<-o.headerResizeSnapThreshold&&y===0)if(S>=0&&w){var O;this.resizingItems.pop(),this.removeTargetSize(a,g),g=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(O=this.targetSizes.get(M(d,g)))!==null&&O!==void 0?O:0}else g=this.getNextShownItem(g,a),g!==null&&(this.resizingItems.push(g),this.addTargetSize(a,g));else b!==void 0&&p>b+o.headerResizeSnapThreshold&&y===b?S>0?(this.dragOffset+=y,g=this.hiddenItems[S-1],this.resizingItems.push(g),this.addTargetSize(a,g)):w?(this.resizingItems.pop(),this.removeTargetSize(a,g),g=this.resizingItems[this.resizingItems.length-1]):g=null:g=null}return m.forEach((R,E)=>{var P,x=(P=i[this.initialSizesProperty].get(E))!==null&&P!==void 0?P:u.get(E);R===x?this.resetSize(i,E):this.setSize(i,E,R)}),this.updateCursor(a,this.draggingIndex),!0}onUp(e,t){return this.draggingIndex!=null&&(this.draggingIndex=void 0,this.resizingItems=[],this.hiddenItems=[],this.targetSizes.clear(),this.updateSeparator(t,null)),!1}onDoubleClick(e,t){var{metrics:r,metricCalculator:i}=t,{model:a}=t.props,o=t.getTheme();if(!r)throw new Error("metrics not set");var s=this.getSeparator(e,r,a,o);if(s!=null){var l=r[this.modelIndexesProperty],u=M(l,s.index),d=M(r[this.calculatedSizesProperty],u),h=i[this.initialSizesProperty].get(u);return d===h?this.resetSize(i,u):this.setSize(i,u,d),t.forceUpdate(),!0}return!1}updateCursor(e,t){var r=e[this.visibleSizesProperty],i=M(r,t);i===0?this.cursor=this.hiddenCursor:this.cursor=this.defaultCursor}addTargetSize(e,t){var r=e[this.modelIndexesProperty],i=e[this.userSizesProperty],a=e[this.calculatedSizesProperty],o=t===0?e[this.treePaddingProperty]:0,s=M(r,t),l=i.get(s);(l==null||l===0)&&(l=M(a,s)+o),this.targetSizes.set(s,l)}removeTargetSize(e,t){var r=e[this.modelIndexesProperty],i=M(r,t);this.targetSizes.delete(i)}}const vu=rv;function at(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)}class wo extends vu{constructor(){super(...arguments),at(this,"hiddenCursor","e-resize"),at(this,"defaultCursor","col-resize"),at(this,"pointProperty","x"),at(this,"userSizesProperty","userColumnWidths"),at(this,"visibleOffsetProperty","visibleColumnXs"),at(this,"visibleSizesProperty","visibleColumnWidths"),at(this,"marginProperty","rowHeaderWidth"),at(this,"calculatedSizesProperty","calculatedColumnWidths"),at(this,"initialSizesProperty","initialColumnWidths"),at(this,"modelIndexesProperty","modelColumns"),at(this,"firstIndexProperty","firstColumn"),at(this,"treePaddingProperty","treePaddingX"),at(this,"getHiddenItems",ee.getHiddenColumns),at(this,"getNextShownItem",ee.getNextShownColumn),at(this,"getSeparator",wo.getColumnSeparator)}static getColumnSeparator(e,t,r,i){if(!i.allowColumnResize)return null;var{x:a,y:o,columnHeaderDepth:s}=e,{modelColumns:l}=t,u=ee.getColumnSeparatorIndex(a,o,t,i);if(u==null||s==null||s>0)return null;var d=l.get(u);return d!=null?{index:u,depth:0}:null}setSize(e,t,r){e.setColumnWidth(t,r)}resetSize(e,t){e.resetColumnWidth(t)}updateSeparator(e,t){e.setState({draggingColumnSeparator:t,isDragging:t!==null})}}const mu=wo;var tn=10;function av(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=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)}class lv{constructor(){av(this,"getCachedTruncatedString",er((e,t,r,i,a)=>Zt.truncateToWidth(e,t,r,i,a),{max:1e4}))}drawCellRowTreeMarker(e,t,r){var{metrics:i,model:a,mouseX:o,mouseY:s,theme:l}=t,{firstColumn:u,gridX:d,gridY:h,allColumnXs:v,allColumnWidths:m,allRowYs:g,allRowHeights:f,visibleRowTreeBoxes:p}=i,{treeMarkerColor:C,treeMarkerHoverColor:b}=l,w=M(v,u),S=M(m,u),T=M(g,r),y=M(f,r);if(!(!Fe(a)||!a.isRowExpandable(r))){var O=M(p,r),R=o!=null&&s!=null&&o>=d+w&&o<=d+w+S&&s>=h+T&&s<=h+T+y?b:C;this.drawTreeMarker(e,t,w,T,O,R,a.isRowExpanded(r))}}drawTreeMarker(e,t,r,i,a,o,s){var{x1:l,y1:u,x2:d,y2:h}=a,v=s?"⊟":"⊞",m=r+(l+d)*.5+.5,g=i+(u+h)*.5+.5;e.fillStyle=o,e.textAlign="center",e.fillText(v,m,g)}}const gu=lv;function bs(n){return n?.dataBarOptionsForCell!==void 0}function ws(n,e,t){return e=uv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uv(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 hv extends gu{constructor(){super(...arguments),ws(this,"heightOfDigits",void 0),ws(this,"getCachedWidestValueForColumn",er((e,t,r,i,a)=>{for(var o=0,s=0;s<t.length;s+=1){var l=t[s],u=M(r,l),d=i.textForCell(a,u);o=Math.max(o,e.measureText(d).width)}return o},{max:1e3}))}drawCellContent(e,t,r,i){var a,{metrics:o,model:s,theme:l}=t;if(bs(s)){var{modelColumns:u,modelRows:d,allRowHeights:h,allRowYs:v,firstColumn:m,fontWidths:g}=o,f=r===m,p=M(h,i),C=M(d,i),b=M(u,r),w=M(v,i),S=s.textAlignForCell(b,C),T=s.textForCell(b,C),{x:y,width:O}=ee.getTextRenderMetrics(t,r,i),R=(a=g?.get(e.font))!==null&&a!==void 0?a:tn,E=s.truncationCharForCell(b,C),P=this.getCachedTruncatedString(e,T,O,R,E),{columnMin:x,columnMax:I,axis:N,color:L,valuePlacement:F,opacity:k,markers:H,direction:W,value:z}=s.dataBarOptionsForCell(b,C,l),Y=Array.isArray(L);if(!(x==null||I==null)){var{maxWidth:$,x:A,y:U,zeroPosition:V,leftmostPosition:X,markerXs:q,totalValueRange:ne,dataBarWidth:ue}=this.getDataBarRenderMetrics(e,t,r,i);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:re,actualBoundingBoxDescent:te}=e.measureText("1234567890");this.heightOfDigits=re+te}if(e.save(),e.textAlign=S,Y){var Te=z>=0?L[L.length-1]:L[0];e.fillStyle=Te}else e.fillStyle=L;if(e.textBaseline="top",e.font=l.font,F!=="hide"&&e.fillText(P,y,w+(p-this.heightOfDigits)/2),Y){var Ie=L.map(At=>Yr.linearSRGBToOklab(Yr.hexToRgb(At)));if(e.save(),e.beginPath(),e.roundRect(A,U,ue,p-2,1),e.clip(),z<0){if(W==="LTR")for(var tt=Math.round(Math.abs(x)/ne*$),Qe=tt/(L.length-1),Ke=Math.round(X),Ue=0;Ue<L.length-1;Ue+=1){var Ze=Ie[Ue],Pe=Ie[Ue+1];this.drawGradient(e,Ze,Pe,Ke,w+1,Qe,p),Ke+=Qe}else if(W==="RTL")for(var ht=Math.round($-Math.abs(I)/ne*$),ct=ht/(L.length-1),Bt=Math.round(V),Vt=L.length-1;Vt>0;Vt-=1){var ur=Ie[Vt],br=Ie[Vt-1];this.drawGradient(e,ur,br,Bt,w+1,ct,p),Bt+=ct}}else if(W==="LTR")for(var Pt=Math.round($-Math.abs(x)/ne*$)-1,Je=Pt/(L.length-1),Ut=Math.round(V),vt=0;vt<L.length-1;vt+=1){var mt=Ie[vt],Xe=Ie[vt+1];this.drawGradient(e,mt,Xe,Ut,w+1,Je,p-2),Ut+=Je}else if(W==="RTL")for(var Ft=Math.round(Math.abs(I)/ne*$),$t=Ft/(L.length-1),It=Math.round(X),gt=L.length-1;gt>0;gt-=1){var wr=Ie[gt],tr=Ie[gt-1];this.drawGradient(e,wr,tr,It,w+1,$t,p-2),It+=$t}e.restore()}else e.save(),e.globalAlpha=k,e.beginPath(),e.roundRect(A,U,ue,p-2,1),e.fill(),e.restore();$>0&&q.forEach((At,Gt)=>{e.fillStyle=H[Gt].color,e.fillRect(At,U,1,p-2)});var dr=!(N==="directional"&&(F==="beside"&&S==="right"&&W==="LTR"||F==="beside"&&S==="left"&&W==="RTL"||F!=="beside"));dr&&(e.strokeStyle=l.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(V,w),e.lineTo(V,w+p),e.stroke()),e.restore(),f&&Fe(s)&&s.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}}}getDataBarRenderMetrics(e,t,r,i){var{metrics:a,model:o,theme:s}=t;if(!bs(o))throw new Error("Grid model is not a data bar grid model");var{firstColumn:l,allColumnXs:u,allColumnWidths:d,allRowYs:h,modelColumns:v,modelRows:m,visibleRows:g}=a,{cellHorizontalPadding:f,treeDepthIndent:p,treeHorizontalPadding:C}=s,b=M(v,r),w=M(m,i),S=M(u,r),T=M(h,i),y=M(d,r),O=r===l,R=0;Fe(o)&&o.hasExpandableRows&&O&&(R=p*(o.depthForRow(i)+1)+C);var E=o.textAlignForCell(b,w),{columnMin:P,columnMax:x,axis:I,valuePlacement:N,markers:L,direction:F,value:k}=o.dataBarOptionsForCell(b,w,s),H=this.getCachedWidestValueForColumn(e,g,m,o,b),W=2,z=N==="beside"&&E==="right"?2:1,Y=x-P;x>=0&&P>=0||P===x?Y=x:x<=0&&P<=0&&(Y=Math.abs(P));var $=y-R-z-W;N==="beside"&&($=$-f-H),$<0&&($=0);var A=Math.max(Math.abs(P),Math.abs(x)),U=Math.abs(k)/Y*$;$===0?U=0:I==="middle"?U=Math.abs(k)/A*($/2):I==="directional"&&(U=Math.abs(k)/A*$);var V=P>=0?0:Math.abs(P)/Y*$,X=k>=0?V:V-Math.abs(k)/Y*$,q=L.map(re=>{var{value:te}=re,Te=Math.abs(te)/Y*$;return te>=0?V+Te:V-Te}),ne=N==="beside"&&E==="left"?f+H+W:W,ue=N==="beside"&&E==="right"?y-f-H-z:z;return F==="RTL"&&(V=P>=0?y:y-Math.abs(P)/Y*$,X=k>=0?V-k/Y*$:V,q=L.map(re=>{var{value:te}=re;return te>=0?V-Math.abs(te)/Y*$:V+Math.abs(te)/Y*$})),I==="middle"?(V=$/2,F==="LTR"?(X=k>=0?V:V-Math.abs(k)/A*($/2),q=L.map(re=>{var{value:te}=re;return te>=0?V+Math.abs(te)/A*($/2):V-Math.abs(te)/A*($/2)})):F==="RTL"&&(X=k<=0?V:V-Math.abs(k)/A*($/2),q=L.map(re=>{var{value:te}=re;return te<=0?V+Math.abs(te)/A*($/2):V-Math.abs(te)/A*($/2)}))):I==="directional"&&(F==="LTR"?(V=0,X=V,q=L.map(re=>{var{value:te}=re;return V+Math.abs(te)/A*$})):F==="RTL"&&(V=y,X=V-Math.abs(k)/A*$,q=L.map(re=>{var{value:te}=re;return V-Math.abs(te)/A*$}))),F==="LTR"?(V+=S+W+R,X+=S+W+R,q=q.map(re=>re+S+W+R),N==="beside"&&E==="left"&&(V+=H+f,X+=H+f,q=q.map(re=>re+H+f))):F==="RTL"&&(V=V+S-z,X=X+S-z,q=q.map(re=>re+S-z),N==="beside"&&E==="right"&&(V=V-f-H,X=X-f-H,q=q.map(re=>re-f-H))),ne+=S+R,ue+=S,{maxWidth:$,x:X,y:T+1.5,zeroPosition:V,leftmostPosition:ne,rightmostPosition:ue,totalValueRange:Y,dataBarWidth:U,markerXs:q}}drawGradient(e,t,r,i,a,o,s){for(var l=t,u=i;u<=i+o;u+=.5)this.drawGradientPart(e,u,a,1,s,Yr.rgbToHex(Yr.OklabToLinearSRGB(l))),l=Yr.lerpColor(t,r,(u-i)/o)}drawGradientPart(e,t,r,i,a,o){e.fillStyle=o,e.fillRect(t,r,i,a)}}const fu=hv;function cv(n,e,t){return e=vv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vv(n){var e=mv(n,"string");return typeof e=="symbol"?e:String(e)}function mv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class gv extends gu{constructor(){super(...arguments),cv(this,"getCachedTokenBoxesForVisibleCell",er((e,t,r,i,a,o)=>{for(var s=0,l=a,u=[],d=0,h=0,v=0;v<t.length;v+=1){var m=t[v],{start:g,end:f}=m,p=f>e.length?e.substring(g):m.value;h+=o.measureText(e.substring(d,g)).width;var C=o.measureText(p).width,b=h,w=b+C,S={x1:b,y1:s,x2:w,y2:l,token:m};u.push(S),d=f,h+=C}return u},{max:1e4}))}drawCellContent(e,t,r,i){var{metrics:a,model:o,theme:s}=t,{fontWidths:l,modelColumns:u,modelRows:d,allRowHeights:h,firstColumn:v}=a,m=r===v,{textColor:g}=s,f=M(h,i),p=M(d,i),C=M(u,r),b=o.textForCell(C,p),w=o.truncationCharForCell(C,p);if(b&&f>0){var S,T=o.textAlignForCell(C,p)||"left";e.textAlign=T;var y=o.colorForCell(C,p,s)||g;e.fillStyle=y,e.save();var{width:O,x:R,y:E}=ee.getTextRenderMetrics(t,r,i),P=(S=l.get(e.font))!==null&&S!==void 0?S:tn,x=this.getCachedTruncatedString(e,b,O,P,w),I=o.tokensForCell(C,p,x.length);if(x)for(var N=0,L=0,F=R,{actualBoundingBoxDescent:k}=e.measureText(x);L<x.length;){var H,W,z=I[N],Y=L===z?.start?z:null,$=(H=(W=Y?.end)!==null&&W!==void 0?W:z?.start)!==null&&H!==void 0?H:x.length,A=x.substring(L,$),{width:U}=e.measureText(A),V=A.endsWith("…")?e.measureText(A.substring(0,A.length-1)).width:U;Y!=null?(e.fillStyle=s.hyperlinkColor,e.fillText(A,F,E),e.fillRect(F,E+k,V,1)):(e.fillStyle=y,e.fillText(A,F,E)),F+=U,L=$,Y!=null&&(N+=1)}e.restore()}m&&Fe(o)&&o.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}getTokenBoxesForVisibleCell(e,t,r){var i,{metrics:a,context:o,model:s,theme:l}=r;if(o==null||a==null)return Se;var{modelRows:u,modelColumns:d}=a,h=M(u,t),v=M(d,e),m=s.textForCell(v,h),{width:g,x:f,y:p}=ee.getTextRenderMetrics(r,e,t),{fontWidths:C}=a;o.save(),this.configureContext(o,r);var b=(i=C?.get(o.font))!==null&&i!==void 0?i:tn,w=s.truncationCharForCell(v,h),S=this.getCachedTruncatedString(o,m,g,b,w),{actualBoundingBoxAscent:T,actualBoundingBoxDescent:y}=o.measureText(S),O=T+y,R=s.tokensForCell(v,h,S.length);if(R.length===0)return o.restore(),Se;var E=this.getCachedTokenBoxesForVisibleCell(S,R,l.font,"middle",O,o).map(P=>({x1:P.x1+f,y1:P.y1+(p-T),x2:P.x2+f,y2:P.y2+(p-T),token:P.token}));return o.restore(),E}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}}const pu=gv;function Xr(n,e,t){return e=fv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fv(n){var e=pv(n,"string");return typeof e=="symbol"?e:String(e)}function pv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Zt{constructor(){Xr(this,"textCellRenderer",new pu),Xr(this,"dataBarCellRenderer",new fu),Xr(this,"getCachedBackgroundColors",er((e,t)=>e.split(" ").map(r=>{for(var i=[],a=0;a<t;a+=1)i.push(Yr.darkenForDepth(r,a,t));return i}),{max:1e3})),Xr(this,"getCachedColorWithAlpha",er((e,t)=>Yr.colorWithAlpha(e,t),{max:1e3})),Xr(this,"getCachedColorIsDark",er(e=>Jl.isDark(e),{max:1e3}))}static truncate(e,t){return t<e.length?e.substr(0,t)+"…":e}static binaryTruncateToWidth(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]:t.length,o=arguments.length>5?arguments[5]:void 0;if(a>=t.length&&e.measureText(t).width<=r)return t;if(o!==void 0){var s=e.measureText(o).width;return o.repeat(Math.max(1,Math.floor(r/s)))}for(var l=i,u=Math.min(t.length-1,a),d=t;u>=l;){var h=Math.ceil((u+l)/2),v=Zt.truncate(t,h);if(e.measureText(v).width<=r){if(d=v,l===h)break;l=h}else if(h===0){d=v;break}else u=h-1}return d}static truncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:tn,a=arguments.length>4?arguments[4]:void 0;if(r<=0||t.length<=0)return"";var o=Math.min(Math.max(0,Math.floor(r/i/2)-5),t.length),s=Math.min(Math.ceil(r/i*2),t.length);return Zt.binaryTruncateToWidth(e,t,r,o,s,a)}drawCanvas(e){var{context:t}=e;t.save(),this.configureContext(t,e),this.drawBackground(t,e),this.drawGrid(t,e),this.drawHeaders(t,e),this.drawFooters(t,e),this.drawDraggingColumn(t,e),this.drawDraggingRow(t,e),this.drawScrollBars(t,e),t.restore()}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}drawBackground(e,t){var{theme:r,metrics:i}=t,{width:a,height:o}=i;e.fillStyle=r.backgroundColor,e.fillRect(0,0,a,o)}drawGrid(e,t){var{metrics:r,draggingRow:i,draggingColumn:a}=t,{gridX:o,gridY:s}=r;e.translate(o,s),this.drawGridBackground(e,t,i==null&&a==null),this.drawCellContents(e,t),this.drawFloatingRows(e,t),this.drawFloatingColumns(e,t),e.translate(-o,-s)}drawFloatingRows(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingTopRowCount:s,floatingBottomRowCount:l,floatingRows:u,rowCount:d,visibleColumns:h,allRowYs:v,allRowHeights:m}=a;if(u.length!==0){o.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,t,u,o.floatingRowBackgroundColors),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),this.drawGridLinesForItems(e,t,h,u,o.floatingGridColumnColor,o.floatingGridRowColor),this.drawCellBackgroundsForItems(e,t,h,u),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{top:0,bottom:s-1,maxY:M(v,s-1)+M(m,s-1)-.5}),l>0&&this.drawSelectedRanges(e,t,{top:d-l-1,bottom:d-1,minY:M(v,d-l)+.5,maxY:M(v,d-1)+M(m,d-1)-.5});for(var g=0;g<h.length;g+=1)for(var f=h[g],p=0;p<u.length;p+=1){var C=u[p];this.drawCellContent(e,t,f,C)}}}drawFloatingColumns(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingLeftColumnCount:s,floatingRightColumnCount:l,floatingLeftWidth:u,floatingRightWidth:d,floatingColumns:h,gridX:v,maxX:m,columnCount:g,visibleRows:f,allColumnXs:p,allColumnWidths:C,width:b,height:w}=a;if(h.length!==0){o.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,t,f,o.floatingRowBackgroundColors,0,u),this.drawRowStripesForRows(e,t,f,o.floatingRowBackgroundColors,b-v-d,m)),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),e.save(),e.beginPath(),e.rect(0,0,u,w),e.clip(),this.drawGridLinesForItems(e,t,h,f,o.floatingGridColumnColor,o.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,t,h,f),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{left:0,maxX:M(p,s-1)+M(C,s-1)}),l>0&&this.drawSelectedRanges(e,t,{left:g-l,right:g-1,minX:M(p,g-l)+.5,maxX:M(p,g-1)+M(C,g-1)});for(var S=0;S<h.length;S+=1)for(var T=h[S],y=0;y<f.length;y+=1){var O=f[y];this.drawCellContent(e,t,T,O)}}}drawFloatingBorders(e,t){var{metrics:r,theme:i}=t,{floatingTopRowCount:a,floatingBottomRowCount:o,floatingLeftColumnCount:s,floatingRightColumnCount:l,rowCount:u,columnCount:d,allRowYs:h,allColumnXs:v,allRowHeights:m,allColumnWidths:g,maxX:f,maxY:p}=r,{floatingDividerOuterColor:C,floatingDividerInnerColor:b}=i;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=C,a>0){var w=M(h,a-1)+M(m,a-1)+.5;e.moveTo(0,w),e.lineTo(f,w)}if(o>0){var S=M(h,u-o)-.5;e.moveTo(0,S),e.lineTo(f,S)}if(s>0){var T=M(v,s-1)+M(g,s-1)+.5;e.moveTo(T,0),e.lineTo(T,p)}if(l>0){var y=M(v,d-l)-.5;e.moveTo(y,0),e.lineTo(y,p)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=b,a>0){var O=M(h,a-1)+M(m,a-1)+.5;e.moveTo(0,O),e.lineTo(f,O)}if(o>0){var R=M(h,u-o)-.5;e.moveTo(0,R),e.lineTo(f,R)}if(s>0){var E=M(v,s-1)+M(g,s-1)+.5;e.moveTo(E,0),e.lineTo(E,p)}if(l>0){var P=M(v,d-l)-.5;e.moveTo(P,0),e.lineTo(P,p)}e.stroke()}drawGridBackground(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.drawRowStripes(e,t),r&&(this.drawMouseColumnHover(e,t),this.drawMouseRowHover(e,t)),this.drawGridLines(e,t),this.drawCellBackgrounds(e,t);var{metrics:i}=t,{bottom:a,right:o,floatingBottomRowCount:s,floatingLeftColumnCount:l,floatingRightColumnCount:u,floatingTopRowCount:d,columnCount:h,rowCount:v,allRowHeights:m,allRowYs:g,allColumnXs:f,allColumnWidths:p,width:C,height:b}=i;this.drawSelectedRanges(e,t,{bottom:Math.min(a,v-s-1),right:Math.min(o,h-u-1),minX:l>0&&f.has(l+1)?M(f,l+1):-10,minY:d>0&&g.has(d+1)?M(g,d+1):-10,maxX:u>0&&f.has(h-u-1)?M(f,h-u-1)+M(p,h-u-1)-.5:C+10,maxY:s>0&&g.has(v-s-1)?M(g,v-s-1)+M(m,v-s-1)-.5:b+10})}drawRowStripes(e,t){var{metrics:r,theme:i}=t,{visibleRows:a}=r,{rowBackgroundColors:o}=i;o&&this.drawRowStripesForRows(e,t,a,o)}drawRowStripesForRows(e,t,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:t.metrics.maxX,{theme:s,metrics:l,model:u}=t,{maxDepth:d,shadowBlur:h,shadowColor:v}=s,m=this.getCachedBackgroundColors(i,d),{allRowYs:g,allRowHeights:f}=l,p=new Map,C=[],b=[],w=($,A)=>{var U=Fe(u)?u.depthForRow($):0,V=m[$%m.length],X=V[Math.min(U,V.length-1)];if(p.has(X)||p.set(X,[]),p.get(X).push($),A!=null){var q=Fe(u)?u.depthForRow(A):0;q<U?C.push($):q>U&&b.push(A)}},S=0;S<r.length;S+=1){var T=r[S],y=S>0?r[S-1]:void 0;w(T,y)}if(p.forEach(($,A)=>{e.fillStyle=A,e.beginPath();for(var U=0;U<$.length;U+=1){var V=$[U],X=M(g,V),q=M(f,V);e.rect(a,X,o,q)}e.fill()}),C.length>0){e.save();var O=this.getCachedColorWithAlpha(v,.15),R=this.getCachedColorWithAlpha(v,0),E=e.createLinearGradient(0,0,0,h);E.addColorStop(0,O),E.addColorStop(1,R),e.fillStyle=E;for(var P=0;P<C.length;P+=1){var x=C[P],I=M(g,x);e.translate(0,I),e.fillRect(a,0,o,h),e.translate(0,-I)}e.restore()}if(b.length>0){e.save();var N=this.getCachedColorWithAlpha(v,0),L=this.getCachedColorWithAlpha(v,.15),F=e.createLinearGradient(0,0,0,h);F.addColorStop(0,N),F.addColorStop(1,L),e.fillStyle=F;for(var k=0;k<b.length;k+=1){var H=b[k],W=M(g,H),z=M(f,H),Y=W+z-h;e.translate(0,Y),e.fillRect(a,0,o,h),e.translate(0,-Y)}e.restore()}}drawMouseColumnHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var s=ee.getColumnAtX(r,o);if(!(s==null||a.columnHoverBackgroundColor==null)){var{allColumnWidths:l,allColumnXs:u,maxY:d}=o;if(!(i>d)){var h=M(u,s),v=M(l,s);e.fillStyle=a.columnHoverBackgroundColor,e.fillRect(h,0,v,d)}}}}drawMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var{maxX:s}=o;if(!(r>s||a.rowHoverBackgroundColor==null)){var l=ee.getRowAtY(i,o);l!=null&&this.drawMouseRowHoverForRow(e,t,l)}}}drawFloatingMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t,{maxX:s,floatingTopRowCount:l,floatingBottomRowCount:u,rowCount:d,rowFooterWidth:h}=o;if(!(r==null||i==null||r>s+h||a.rowHoverBackgroundColor==null)){var v=ee.getRowAtY(i,o);v!=null&&(v<l||d-u<=v)&&this.drawMouseRowHoverForRow(e,t,v)}}drawMouseRowHoverForRow(e,t,r){var{metrics:i,selectedRanges:a,theme:o}=t,{allRowHeights:s,allRowYs:l,maxX:u}=i,d=M(l,r),h=M(s,r);o.rowHoverBackgroundColor!=null&&(e.fillStyle=o.rowHoverBackgroundColor);for(var v=0;v<a.length;v+=1){var{startRow:m,endRow:g}=a[v];if(m!=null&&g!=null&&m<=r&&g>=r){o.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=o.selectedRowHoverBackgroundColor);break}}e.fillRect(0,d,u,h)}drawGridLines(e,t){var{metrics:r,theme:i}=t,{visibleColumns:a,visibleRows:o}=r;this.drawGridLinesForItems(e,t,a,o,i.gridColumnColor,i.gridRowColor)}drawGridLinesForItems(e,t,r,i,a,o){a==null&&o==null||(e.lineWidth=1,e.beginPath(),a!=null&&(e.strokeStyle=a,this.drawGridLinesForColumns(e,t,r)),o!=null&&(e.strokeStyle=o,this.drawGridLinesForRows(e,t,i)),e.stroke())}drawGridLinesForColumns(e,t,r){for(var{metrics:i}=t,{allColumnXs:a,maxY:o}=i,s=0;s<r.length;s+=1){var l=r[s],u=M(a,l)+.5;e.moveTo(u,0),e.lineTo(u,o)}}drawGridLinesForRows(e,t,r){for(var{metrics:i}=t,{allRowYs:a,maxX:o}=i,s=o,l=0;l<r.length;l+=1){var u=r[l],d=M(a,u)+.5;e.moveTo(.5,d),e.lineTo(s-.5,d)}}drawCellBackgrounds(e,t){var{metrics:r}=t,{visibleColumns:i,visibleRows:a}=r;this.drawCellBackgroundsForItems(e,t,i,a)}drawCellBackgroundsForItems(e,t,r,i){e.save();for(var a=0;a<r.length;a+=1)for(var o=r[a],s=0;s<i.length;s+=1){var l=i[s],u=s+1<i.length?i[s+1]:void 0;this.drawCellBackground(e,t,o,l,u)}e.restore()}drawCellBackground(e,t,r,i,a){var{metrics:o,model:s,theme:l}=t,{firstColumn:u,modelColumns:d,modelRows:h,allColumnXs:v,allColumnWidths:m,allRowYs:g,allRowHeights:f}=o,p=M(h,i),C=M(d,r),b=s.backgroundColorForCell(C,p,l),w=r===u,S=Fe(s)&&s.hasExpandableRows;if(b!=null){var T=M(v,r)+1,y=M(g,i)+1,O=M(m,r)-1,R=M(f,i)-1;e.fillStyle=b,e.fillRect(T,y,O,R)}w&&S&&this.drawCellRowTreeDepthLines(e,t,i,a)}drawCellContents(e,t){for(var{metrics:r}=t,{visibleColumns:i}=r,a=0;a<i.length;a+=1){var o=i[a];this.drawColumnCellContents(e,t,o)}}drawColumnCellContents(e,t,r){var{metrics:i}=t,{allColumnXs:a,allColumnWidths:o,visibleRows:s,height:l}=i,u=M(a,r),d=M(o,r);e.save(),e.beginPath(),e.rect(u,0,d,l),e.clip();for(var h=0;h<s.length;h+=1){var v=s[h];this.drawCellContent(e,t,r,v)}e.restore()}drawCellContent(e,t,r,i){var{metrics:a,model:o}=t,{modelColumns:s,modelRows:l}=a,u=M(l,i),d=M(s,r),h=o.renderTypeForCell(d,u),v=this.getCellRenderer(h);v.drawCellContent(e,t,r,i)}getCellRenderer(e){switch(e){case"dataBar":return this.dataBarCellRenderer;default:return this.textCellRenderer}}drawCellRowTreeDepthLines(e,t,r,i){var{metrics:a,model:o,theme:s}=t;if(Fe(o)){var l=o.depthForRow(r);if(l!==0){var{firstColumn:u,allColumnXs:d,allRowYs:h,allRowHeights:v}=a,{treeDepthIndent:m,treeHorizontalPadding:g,treeLineColor:f}=s,p=M(d,u),C=M(h,r),b=M(v,r),w=i!==void 0?o.depthForRow(i):0,S=l>w?l-w:0;if(e.strokeStyle=f,e.lineWidth=1,l-S>0){e.beginPath();for(var T=0;T<l-S;T+=1){var y=p+T*m+m*.5+g+.5;e.moveTo(y,C),e.lineTo(y,C+b)}e.stroke()}if(S>0){e.beginPath();for(var O=l-S;O<l;O+=1){var R=p+O*m+m*.5+g+.5;e.moveTo(R,C),e.lineTo(R,C+Math.ceil(b/2)),e.moveTo(R-.5,C+Math.ceil(b/2)+.5),e.lineTo(R+m-.5,C+Math.ceil(b/2)+.5)}e.stroke()}}}}drawHeaders(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawColumnHeaders(e,t),this.drawRowHeaders(e,t)}drawFooters(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawRowFooters(e,t)}drawColumnHeaders(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o,draggingColumnSeparator:s,isDragging:l,model:u}=t,{columnHeaderHeight:d,floatingColumns:h,gridX:v,width:m,visibleColumns:g,allColumnWidths:f,allColumnXs:p,floatingLeftColumnCount:C,floatingLeftWidth:b,floatingRightWidth:w,modelColumns:S,columnHeaderMaxDepth:T}=o;if(!(d<=0)){var{headerHiddenSeparatorSize:y,headerHiddenSeparatorHoverColor:O,headerSeparatorColor:R,headerSeparatorHoverColor:E}=a,P=d*.5,x=d*(T-1)+d*.5-P*.5,I=C>0;if(e.save(),this.drawColumnHeadersForRange(e,t,[g[0],g[g.length-1]],{minX:v+b,maxX:m-w}),I&&this.drawColumnHeadersForRange(e,t,[h[0],h[h.length-1]],{minX:v,maxX:v+b}),R){e.strokeStyle=R;var N=[...f.entries()].filter(tt=>{var[Qe,Ke]=tt;return Ke===0}).map(tt=>{var[Qe]=tt;return Qe});e.beginPath(),e.fillStyle=R;for(var L=0;L<N.length;L+=1){var F=N[L],k=M(p,F),H=M(f,F),W=v+k+H+.5-y*.5;e.rect(W,x,y,P)}e.fill()}if(E){var{index:z,depth:Y}=s??{};if(z==null&&r!=null&&i!=null){var $=mu.getColumnSeparator(ee.getGridPointFromXY(r,i,o),o,u,a);z=$?.index,Y=$?.depth}var A;if(z==null)A=!1;else{var U=S.get(z),V=S.get(z+1);U==null||V==null?A=!1:A=u.textForColumnHeader(U,Y)!==u.textForColumnHeader(V,Y)}if(A&&z!=null&&Y!=null&&(!l||s!=null)){e.strokeStyle=E;var X=M(p,z),q=M(f,z),ne=v+X+q+.5,ue=g.indexOf(z),re=ue<g.length-1?g[ue+1]:null,te=re!=null?f.get(re):null,Te=q===0,Ie=te!=null&&te===0;Te?(e.strokeStyle=O,e.fillStyle=O,e.fillRect(ne,x,y*.5,P)):Ie&&(e.fillStyle=E,e.fillRect(ne-y*.5,x,y*.5,P)),e.beginPath(),e.moveTo(ne,(T-Y-1)*d),e.lineTo(ne,(T-Y)*d-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,t,r,i){var{model:a}=t,{columnHeaderMaxDepth:o}=a;if(o!==0)for(var s=0;s<=o;s+=1)this.drawColumnHeadersAtDepth(e,t,r,i,s)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:s,theme:l}=t,{modelColumns:u,allColumnXs:d,gridX:h,userColumnWidths:v,allColumnWidths:m,movedColumns:g}=o,{columnHeaderHeight:f,columnWidth:p}=l,{columnHeaderMaxDepth:C}=s,{minX:b,maxX:w}=i,S=w-b;if(C!==0){var T=r[0],y=r[1];if(e.save(),e.translate(0,(C-a-1)*f),a===0){this.drawColumnHeader(e,t,"",b,w);for(var O=T;O<=y;O+=1)this.drawColumnHeaderAtIndex(e,t,O,i)}if(a>0)for(var R=T;R<=y;){var{columnCount:E}=o,P=M(u,R),x=s.textForColumnHeader(P,a),I=s.colorForColumnHeader(P,a),N=M(d,R)+h,L=N+M(m,R);if(x!=null){for(var F=R-1;F>=0&&(L-N<S||N>b);){var k,H,W,z=(k=u.get(F))!==null&&k!==void 0?k:ee.getModelIndex(F,g);if(z==null||s.textForColumnHeader(z,a)!==x)break;var Y=(H=(W=v.get(z))!==null&&W!==void 0?W:m.get(F))!==null&&H!==void 0?H:p;N-=Y,F-=1}for(var $=R+1;$<E&&(L-N<S||L<w);){var A,U,V,X=(A=u.get($))!==null&&A!==void 0?A:ee.getModelIndex($,g);if(s.textForColumnHeader(X,a)!==x)break;var q=(U=(V=v.get(X))!==null&&V!==void 0?V:m.get($))!==null&&U!==void 0?U:p;L+=q,$+=1}R=$-1;var ne=L-N>=S,ue=N;ne&&(L<w?ue=L-S:N<b&&(ue=b)),this.drawColumnHeader(e,t,x,ue,Math.min(L-N,S),{backgroundColor:I??void 0},i)}R+=1}e.restore()}}drawColumnHeaderAtIndex(e,t,r,i){var a,{metrics:o,model:s}=t,{modelColumns:l,allColumnWidths:u,allColumnXs:d,gridX:h}=o,v=M(u,r),m=M(d,r)+h,g=M(l,r),f=s.textForColumnHeader(g);f!=null&&this.drawColumnHeader(e,t,f,m,v,{backgroundColor:(a=s.colorForColumnHeader(g))!==null&&a!==void 0?a:void 0},i)}drawColumnHeader(e,t,r,i,a,o,s){var l;if(!(a<=0)){var{metrics:u,theme:d}=t,{headerHorizontalPadding:h,columnHeaderHeight:v,headerBackgroundColor:m,headerColor:g,headerSeparatorColor:f,black:p,white:C}=d,{fontWidths:b,width:w}=u,S=(l=b.get(e.font))!==null&&l!==void 0?l:tn,T=a-h*2,y=T/S,{backgroundColor:O=m,separatorColor:R=f}=o??{},{textColor:E=g}=o??{};try{var P=this.getCachedColorIsDark(O),x=this.getCachedColorIsDark(E);P&&x?E=C:!P&&!x&&(E=p)}catch{}var{minX:I=0,maxX:N=w}=s??{};e.save(),e.rect(I,0,N-I,v),e.clip(),O!=null&&(e.fillStyle=O,e.fillRect(i,0,a,v)),R!=null&&(e.strokeStyle=R,e.beginPath(),i>0&&(e.moveTo(i+.5,0),e.lineTo(i+.5,v)),e.moveTo(i+a+.5,0),e.lineTo(i+a+.5,v),e.moveTo(i,v-.5),e.lineTo(i+a,v-.5),e.stroke()),e.beginPath(),e.rect(i,0,a,v),e.clip(),e.fillStyle=E;var L=r;y<=0?L="":L.length>y&&(L="".concat(L.substring(0,y-1),"…"));var F=L.length*S,k=i+a*.5,H=v*.5;I+=h,N-=h;var W=i+h,z=Ae(W,I,N),Y=i+a-h,$=Ae(Y,I,N),A=$-z,U=k-F*.5<I,V=k+F*.5>N;U?F<A?k=I+F*.5:k=Y-F*.5:V&&(F<A?k=N-F*.5:k=W+F*.5),e.textAlign="center",e.fillText(L,k,H),e.restore()}}drawRowHeaders(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o,draggingRowSeparator:s}=t,{gridY:l,rowHeaderWidth:u,height:d,visibleRows:h,allRowHeights:v,allRowYs:m}=a;if(!(u<=0)){var{headerBackgroundColor:g,headerColor:f,headerHiddenSeparatorSize:p,headerHiddenSeparatorHoverColor:C,headerSeparatorColor:b,headerSeparatorHoverColor:w}=o,S=u*.5,T=u*.5-S*.5;if(e.save(),e.beginPath(),e.fillStyle=g,e.fillRect(0,0,u,d),b){e.strokeStyle=b,e.beginPath(),e.moveTo(0,l+.5),e.lineTo(u,l+.5);for(var y=[],O=!1,R=0;R<h.length;R+=1){var E=h[R],P=M(m,E),x=M(v,E);if(x>0){var I=l+P+x+.5;e.moveTo(0,I),e.lineTo(u,I),O=!1}else O||(O=!0,y.push(E))}e.moveTo(u-.5,0),e.lineTo(u-.5,d),e.stroke(),e.beginPath(),e.fillStyle=b;for(var N=0;N<y.length;N+=1){var L=y[N],F=M(m,L),k=M(v,L),H=l+F+k+.5-p*.5;e.rect(T,H,S,p)}e.fill()}if(w){var{index:W=null}=s??{};if(W==null&&r!=null&&i!=null&&(W=ee.getRowSeparatorIndex(r,i,a,o)),W!=null){e.strokeStyle=w;var z=M(m,W),Y=M(v,W),$=l+z+Y+.5,A=h.indexOf(W),U=A<h.length-1?h[A+1]:null,V=U!=null?v.get(U):null,X=Y===0,q=V!=null&&V===0;X?(e.strokeStyle=C,e.fillStyle=C,e.fillRect(T,$,S,p*.5)):q&&(e.fillStyle=w,e.fillRect(T,$-p*.5,S,p*.5)),e.beginPath(),e.moveTo(.5,$),e.lineTo(u+.5,$),e.stroke()}}e.beginPath(),e.rect(0,l,u,d),e.clip(),e.fillStyle=f,e.textAlign="right";for(var ne=0;ne<h.length;ne+=1){var ue=h[ne],re=M(v,ue),te=M(m,ue)+l;this.drawRowHeader(e,t,ue,te,re)}e.restore()}}drawRowHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,model:s,theme:l}=t,{modelRows:u,rowHeaderWidth:d}=o,h=M(u,r),v=d-l.cellHorizontalPadding,m=i+a*.5;e.fillText(s.textForRowHeader(h),v,m)}}drawRowFooters(e,t){var{mouseX:r,mouseY:i,metrics:a,model:o,theme:s,draggingRowSeparator:l}=t,{gridY:u,gridX:d,maxX:h,modelRows:v,rowFooterWidth:m,height:g,verticalBarWidth:f,visibleRows:p,allRowHeights:C,allRowYs:b,width:w}=a;if(!(m<=0)){var{cellHorizontalPadding:S,headerBackgroundColor:T,headerColor:y,headerHiddenSeparatorSize:O,headerHiddenSeparatorHoverColor:R,headerSeparatorColor:E,headerSeparatorHoverColor:P}=s,x=m*.5,I=m*.5-x*.5,N=Math.min(d+h,w-m-f);if(e.save(),e.beginPath(),e.fillStyle=T,e.fillRect(N,u,m,g),E){e.strokeStyle=E,e.beginPath(),e.moveTo(N,u+.5),e.lineTo(m,u+.5);for(var L=[],F=!1,k=0;k<p.length;k+=1){var H=p[k],W=M(b,H),z=M(C,H);if(z>0){var Y=u+W+z+.5;e.moveTo(N+.5,Y),e.lineTo(N+m-.5,Y),F=!1}else F||(F=!0,L.push(H))}e.moveTo(N+.5,u),e.lineTo(N+.5,g),e.stroke(),e.beginPath(),e.fillStyle=E;for(var $=0;$<L.length;$+=1){var A=L[$],U=M(b,A),V=M(C,A),X=u+U+V+.5-O*.5;e.rect(N+I,X,x,O)}e.fill()}if(P){var{index:q=null}=l??{};if(q==null&&r!=null&&i!=null&&(q=ee.getRowSeparatorIndex(r,i,a,s)),q!=null){e.strokeStyle=P;var ne=M(b,q),ue=M(C,q),re=u+ne+ue+.5,te=p.indexOf(q),Te=te<p.length-1?p[te+1]:null,Ie=Te!=null?C.get(Te):null,tt=ue===0,Qe=Ie!=null&&Ie===0;tt?(e.strokeStyle=R,e.fillStyle=R,e.fillRect(I,re,x,O*.5)):Qe&&(e.fillStyle=P,e.fillRect(I,re-O*.5,x,O*.5)),e.beginPath(),e.moveTo(N+.5,re),e.lineTo(N+m+.5,re),e.stroke()}}e.beginPath(),e.rect(N,u,m,g),e.clip(),e.fillStyle=y,e.textAlign="left";for(var Ke=N+S,Ue=0;Ue<p.length;Ue+=1){var Ze=p[Ue],Pe=M(C,Ze);if(Pe>0){var ht=M(b,Ze)+u,ct=M(v,Ze),Bt=ht+Pe*.5;e.fillText(o.textForRowFooter(ct),Ke,Bt)}}e.restore()}}drawSelectedRanges(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:i,cursorRow:a,draggingRow:o,draggingColumn:s,editingCell:l,metrics:u,model:d,selectedRanges:h,theme:v}=t,{allColumnWidths:m,allColumnXs:g,allRowHeights:f,allRowYs:p,width:C,height:b}=u,{left:w=u.left,top:S=u.top,right:T=u.right,bottom:y=u.bottom,minY:O=-10,maxY:R=b+10,minX:E=-10,maxX:P=C+10}=r;if(h.length!==0){var x=Le(d)&&d.isEditable&&l==null&&o==null&&s==null&&i!=null&&a!=null&&g.has(i)&&p.has(a);if(x){var I=M(g,i),N=M(p,a),L=M(m,i),F=M(f,a);e.save(),e.beginPath(),e.rect(0,0,C,b),e.rect(I,N,L,F),e.clip("evenodd")}e.beginPath();for(var k=0;k<h.length;k+=1){var H=h[k],W=H.startColumn!==null?H.startColumn:w,z=H.startRow!==null?H.startRow:S,Y=H.endColumn!==null?H.endColumn:T,$=H.endRow!==null?H.endRow:y;if($>=S&&y>=z&&Y>=w&&T>=W){var A=W>=w&&g.has(W)?Math.round(M(g,W))+.5:E,U=z>=S&&p.has(z)?Math.max(Math.round(M(p,z))+.5,.5):O,V=Y<=T&&g.has(Y)?Math.round(M(g,Y)+M(m,Y))-.5:P,X=$<=y&&p.has($)?Math.round(M(p,$)+M(f,$))-.5:R;e.rect(A,U,V-A,X-U)}e.fillStyle=v.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=v.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=v.selectionOutlineColor,e.lineWidth=1,e.stroke()}x&&i!=null&&a!=null&&(e.restore(),this.drawActiveCell(e,t,i,a))}}drawActiveCell(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:Zt.ACTIVE_CELL_BORDER_WIDTH,{metrics:o,theme:s}=t,{allColumnWidths:l,allColumnXs:u,allRowHeights:d,allRowYs:h}=o,v=M(u,r),m=M(h,i),g=M(l,r),f=M(d,i),p=v-a*.5,C=m-a*.5,b=g+a,w=f+a;p<=0&&(b+=p-1,p=1),C<=0&&(w+=C-1,C=1);var{lineWidth:S}=e;e.beginPath(),e.lineWidth=a,e.strokeStyle=s.selectionOutlineColor,this.drawRoundedRect(e,p,C,b,w),e.stroke(),e.lineWidth=S}drawRoundedRect(e,t,r,i,a){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Zt.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(t+o,r),e.lineTo(t+i-o,r),e.quadraticCurveTo(t+i,r,t+i,r+o),e.lineTo(t+i,r+a-o),e.quadraticCurveTo(t+i,r+a,t+i-o,r+a),e.lineTo(t+o,r+a),e.quadraticCurveTo(t,r+a,t,r+a-o),e.lineTo(t,r+o),e.quadraticCurveTo(t,r,t+o,r),e.closePath()}drawDraggingColumn(e,t){var r,{draggingColumn:i,metrics:a,mouseX:o,theme:s,model:l}=t;if(!(i==null||o==null)){var{range:u,depth:d}=i,{gridX:h,gridY:v,allColumnXs:m,allColumnWidths:g,height:f,width:p,columnHeaderMaxDepth:C,columnHeaderHeight:b,movedColumns:w,modelColumns:S,floatingLeftWidth:T}=a,y=(r=S.get(u[0]))!==null&&r!==void 0?r:ee.getModelIndex(u[0],w),O=l.getColumnHeaderGroup(y,d);if(!(d>0&&!O)){var[R,E]=u,P=M(m,R),x=M(m,E)+M(g,E),I=x-P,N=i.left,{backgroundColor:L,font:F,headerFont:k,reorderOffset:H,shadowBlur:W,shadowColor:z}=s,Y=(C-d-1)*b;e.save(),e.translate(h,0),e.save(),e.beginPath(),e.rect(T,0,p,f),e.clip(),e.fillStyle=L,e.fillRect(P,Y,I,f),e.restore(),e.translate(0,H),e.save(),e.shadowColor=z,e.shadowBlur=W,e.fillStyle=L,e.fillRect(i.left,Y+H,i.width,f),e.restore(),e.beginPath(),e.rect(i.left,Y,i.width+1,f),e.clip(),e.translate(N-P,0),e.font=k;for(var $=[],A=i.range[0];A<=i.range[1];A+=1)$.push(A);this.drawColumnHeaders(e,t),this.drawColumnHeadersForRange(e,t,[$[0],$[$.length-1]],{minX:P,maxX:p}),e.translate(0,v),e.font=F,this.drawGridBackground(e,t);for(var U=R;U<=E;U+=1)this.drawColumnCellContents(e,t,U);e.restore()}}}drawDraggingRow(e,t){var{draggingRow:r,draggingRowOffset:i,metrics:a,mouseY:o,theme:s}=t;if(!(r==null||o==null)){var{gridX:l,gridY:u,allRowYs:d,allRowHeights:h,width:v}=a,m=M(d,r),g=M(h,r)+1,{backgroundColor:f,font:p,headerFont:C,reorderOffset:b,shadowBlur:w,shadowColor:S}=s;e.save(),e.translate(0,u),e.fillStyle=f,e.fillRect(0,m,v,g),e.translate(l+b,o-m-u-(i??0)),e.save(),e.shadowColor=S,e.shadowBlur=w,e.fillStyle=f,e.fillRect(-l,m,v,g),e.restore(),e.beginPath(),e.rect(-l,m,v,g),e.clip(),e.font=p,this.drawGridBackground(e,t),this.drawCellContents(e,t),e.translate(-l,-u),e.font=C,this.drawRowHeaders(e,t),e.restore()}}drawScrollBars(e,t){var{isDraggingHorizontalScrollBar:r,isDraggingVerticalScrollBar:i,isDragging:a,metrics:o,mouseX:s,mouseY:l,theme:u}=t;if(!(u.scrollBarSize<=0)){var{width:d,height:h,handleHeight:v,handleWidth:m,scrollX:g,scrollY:f,hasHorizontalBar:p,hasVerticalBar:C,barWidth:b,barHeight:w,barLeft:S,barTop:T}=o,{scrollBarBackgroundColor:y,scrollBarHoverBackgroundColor:O,scrollBarCasingColor:R,scrollBarCornerColor:E,scrollBarColor:P,scrollBarHoverColor:x,scrollBarActiveColor:I,scrollBarSize:N,scrollBarHoverSize:L,scrollBarCasingWidth:F,scrollBarSelectionTick:k,scrollBarSelectionTickColor:H,scrollBarActiveSelectionTickColor:W,autoSelectRow:z,autoSelectColumn:Y}=u,$=s!=null&&l!=null&&s<=d&&l<=h,A=i||C&&!r&&!a&&s!=null&&l!=null&&s>=d-L&&l>=T&&$,U=r||p&&!i&&!a&&!A&&s!=null&&l!=null&&l>=h-L&&s>=S&&$,V=U?L:N,X=A?L:N;if(e.translate(S,T),p&&C&&(e.fillStyle=R,e.fillRect(d-S-N,h-T-N,N,N),e.fillStyle=E,e.fillRect(d-S-N+F,h-T-N+F,N-F,N-F)),p){var q=g,ne=h-T-V;if(e.fillStyle=R,e.fillRect(0,ne,b,V-F),e.fillStyle=U?O:y,e.fillRect(0,ne+F,b,V-F),r?e.fillStyle=I:U?e.fillStyle=x:e.fillStyle=P,e.fillRect(q,ne+F,m,V-F),!z&&k&&H!=null&&W!=null){e.fillStyle=H;for(var{selectedRanges:ue,cursorColumn:re}=t,{lastLeft:te,columnCount:Te}=o,Ie=[...ue].filter(je=>je.startColumn!=null&&je.endColumn!=null),tt=Ie.map(je=>[je.startColumn,je.endColumn]).sort(ee.compareRanges),Qe=ee.mergeSortedRanges(tt),Ke=je=>je<=te?je/te*(b-m):b-m+(je-te)/(Te-te)*m,Ue=0;Ue<Qe.length;Ue+=1){var Ze=Qe[Ue],Pe=Ze[0],ht=Ze[1];if(Pe!=null&&ht!=null&&(Pe!==re||ht!==re)){var ct=Ke(Pe),Bt=Math.max(1,Math.round(Ke(ht+1)-ct)),Vt=V-F;e.fillRect(ct,ne+F+Math.round(Vt/3),Bt,Math.round(Vt/3))}}if(re!=null){var ur=Ke(re),br=2,Pt=V-F;e.fillStyle=W,e.fillRect(ur,ne+F,br,Pt)}}}if(C){var Je=d-S-X,Ut=f;if(e.fillStyle=R,e.fillRect(Je,0,X-F,w),e.fillStyle=A?O:y,e.fillRect(Je+F,0,X-F,w),i?e.fillStyle=I:A?e.fillStyle=x:e.fillStyle=P,e.fillRect(Je+F,Ut,X-F,v),!Y&&k&&H!=null&&W!=null){var{selectedRanges:vt,cursorRow:mt}=t,{lastTop:Xe,rowCount:Ft}=o,$t=je=>je<=Xe?je/Xe*(w-v):w-v+(je-Xe)/(Ft-Xe)*v;e.fillStyle=H;for(var It=[...vt].filter(je=>je.startRow!=null&&je.endRow!=null),gt=It.map(je=>[je.startRow,je.endRow]).sort(ee.compareRanges),wr=ee.mergeSortedRanges(gt),tr=0;tr<wr.length;tr+=1){var dr=wr[tr],At=dr[0],Gt=dr[1];if(At!=null&&Gt!=null&&(At!==mt||Gt!==mt)){var Ur=$t(At),sn=X-F,ln=Math.max(1,Math.round($t(Gt+1)-Ur));e.fillRect(Je+F+Math.round(sn/3),Ur,Math.round(sn/3),ln)}}if(mt!=null){var un=Math.round($t(mt)),dn=X-F,hn=2;e.fillStyle=W,e.fillRect(Je+F,un,dn,hn)}}}e.translate(-S,-T)}}}Xr(Zt,"DEFAULT_EDGE_RADIUS",2);Xr(Zt,"ACTIVE_CELL_BORDER_WIDTH",2);function Ln(n,e,t){return e=Cv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Cv(n){var e=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 Ss=100;class wv extends ze{constructor(){super(...arguments),Ln(this,"startPoint",void 0),Ln(this,"hasExtendedFloating",!1),Ln(this,"timer",void 0),Ln(this,"lastTriggerTime",void 0),Ln(this,"dragBounds",void 0)}onDown(e,t,r){var{x:i,y:a,column:o,row:s}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{gridX:u,gridY:d,maxX:h,maxY:v}=l,m=i-u,g=a-d;if(m<0||g<0||o==null&&m>h||s==null&&g>v)return!1;var f=ee.isModifierKeyDown(r),p=r.shiftKey;f||(p?t.trimSelectedRanges():t.clearSelectedRanges());var C=t.getTheme(),{autoSelectRow:b,autoSelectColumn:w}=C;return(o!==null||!w)&&(s!==null||!b)&&(t.focus(),t.moveCursorToPosition(o,s,p,!1,p&&f)),this.startPoint=e,this.hasExtendedFloating=!1,this.dragBounds=ee.getScrollDragBounds(l,s,o),!0}onDrag(e,t){if(this.startPoint===void 0)return!1;this.stopTimer();var{row:r,column:i}=this.startPoint,{x:a,y:o}=e,{row:s,column:l}=e,{metrics:u}=t;if(!u)throw new Error("metrics not set");var{left:d,lastLeft:h,top:v,lastTop:m,columnWidth:g,rowHeight:f}=u,p=ee.getScrollDragBounds(u,r,i),C=0,b=0;if(d<h&&(a<p.x1?C=a-p.x1:a>p.x2&&(C=a-p.x2)),v<m&&(o<p.y1?b=o-p.y1:o>p.y2&&(b=o-p.y2)),C!==0||b!==0)this.startTimer(t,e,C>0?Math.ceil(C/g):Math.floor(C/g),b>0?Math.ceil(b/f):Math.floor(b/f));else if(s!=null&&l!=null){var{floatingTopRowCount:w,floatingBottomRowCount:S,floatingLeftColumnCount:T,floatingRightColumnCount:y,columnCount:O,rowCount:R,bottom:E,right:P,topVisible:x,bottomVisible:I,leftVisible:N,rightVisible:L}=u;this.hasExtendedFloating||(r!==null&&r<w&&s>=w?(s=w,this.hasExtendedFloating=!0):r!==null&&r>=R-S&&s<R-S&&(s=R-S-1,this.hasExtendedFloating=!0),i!==null&&i<T&&l>=T?(l=T,this.hasExtendedFloating=!0):i!==null&&i>=O-y&&l<O-y&&(l=O-y-1,this.hasExtendedFloating=!0)),r!==null&&!ee.isFloatingRow(r,u)&&ee.isFloatingRow(s,u)&&(r>s&&s<v?s=x-1:r<s&&s>E&&(s=I+1)),i!==null&&!ee.isFloatingColumn(i,u)&&ee.isFloatingColumn(l,u)&&(i>l&&l<d?l=N-1:i<l&&l>P&&(l=L+1)),t.moveCursorToPosition(l,s,!0,!0)}return!0}onUp(e,t){return this.startPoint!==void 0&&(this.startPoint=void 0,this.dragBounds=void 0,this.stopTimer(),t.commitSelection()),!1}moveSelection(e,t,r,i){var{row:a,column:o}=t,{metrics:s}=e;if(!s)throw new Error("metrics not set");var{selectionEndRow:l,selectionEndColumn:u}=e.state;if(l==null||u==null)throw new Error("selection not set");var{rowCount:d,columnCount:h}=s,v=r<0&&o!=null?o:0,m=r>0&&o!=null?o:h-1,g=i<0&&a!=null?a:0,f=i>0&&a!=null?a:d-1;e.moveCursorToPosition(Math.min(Math.max(v,u+r),m),Math.min(Math.max(g,l+i),f),!0),this.lastTriggerTime=Date.now()}startTimer(e,t,r,i){this.stopTimer();var a=this.lastTriggerTime!=null?Ss-Math.min(Ss,Date.now()-this.lastTriggerTime):0;this.timer=setTimeout(()=>{this.moveSelection(e,t,r,i),this.startTimer(e,t,r,i)},a)}stopTimer(){this.timer!==void 0&&(clearTimeout(this.timer),this.timer=void 0)}}const Sv=wv;function ys(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function pt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ys(Object(t),!0).forEach(function(r){Ar(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ys(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ar(n,e,t){return e=yv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yv(n){var e=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)}var Ts=5,Ev=1e3/60,gi=10;function Or(n,e,t,r){var i,{modelColumns:a,movedColumns:o,allColumnXs:s,columnCount:l,allColumnWidths:u,userColumnWidths:d,calculatedColumnWidths:h,floatingLeftWidth:v,maxX:m}=t;if(e==null||n==null||n>l||n<0)return null;var g=(i=a.get(n))!==null&&i!==void 0?i:ee.getModelIndex(n,o),f=r.getColumnHeaderGroup(g,e),p=f!=null,C,b,w;if(f!=null){var S,T,y,[O,R]=f.getVisibleRange(o);C=(S=s.get(O))!==null&&S!==void 0?S:v,b=((T=s.get(R))!==null&&T!==void 0?T:m)+((y=u.get(R))!==null&&y!==void 0?y:0),w=[O,R]}else{var E,P,x,I=s.get(n);if(I==null)return null;C=I,b=C+((E=(P=(x=u.get(n))!==null&&x!==void 0?x:d.get(g))!==null&&P!==void 0?P:h.get(g))!==null&&E!==void 0?E:0),w=[n,n]}return{visibleIndex:n,modelIndex:g,left:C,right:b,width:b-C,isColumnGroup:p,range:w,depth:e}}class Ov extends ze{constructor(){super(...arguments),Ar(this,"cursor",null),Ar(this,"draggingOffset",void 0),Ar(this,"initialOffset",void 0),Ar(this,"initialGridPoint",void 0),Ar(this,"scrollingInterval",void 0),Ar(this,"scrollingDirection",void 0),Ar(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var{metrics:r}=e;if(r){var{left:i,lastLeft:a,leftOffset:o,userColumnWidths:s,calculatedColumnWidths:l,movedColumns:u,allColumnWidths:d}=r,h=i,v=o;if(t==="left")for(v-=gi;v<0;){var m;h-=1;var g=ee.getModelIndex(i-1,u),f=(m=s.get(g))!==null&&m!==void 0?m:l.get(g);f===void 0?v=0:v+=f,h<0&&(v=0,h=0)}else{v+=gi;for(var p=d.get(i);p!==void 0&&v>p;){var C;h+=1,v-=p;var b=ee.getModelIndex(i+1,u);p=(C=s.get(b))!==null&&C!==void 0?C:l.get(b),h>a&&(v=0,h=a)}}var{mouseX:w,mouseY:S}=e.state;r==null||w==null||S==null||(this.moveDraggingColumn(w,e,t==="left"?-gi:gi),e.setState({left:h,leftOffset:v}),(t==="left"&&h===0&&o===0||t==="right"&&h===a)&&this.clearScrollInterval())}},Ev))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var{model:r}=t.props,{x:i,column:a,columnHeaderDepth:o}=e,{metrics:s}=t;if(!s)throw new Error("Metrics not set");var l=Or(a,o,s,r);if(a==null||l==null||o==null||o>0&&!l.isColumnGroup)return!1;var{rowHeaderWidth:u}=s;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,l.modelIndex!=null&&o!=null&&r.isColumnMovable(l.modelIndex,o)&&(this.draggingOffset=i-l.left-u,this.initialOffset=this.draggingOffset),!1}onDrag(e,t,r){if(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0)return!1;var{x:i,y:a}=e,{columnHeaderDepth:o}=this.initialGridPoint,{model:s}=t.props,{draggingColumn:l}=this,{metrics:u}=t;if(!u)throw new Error("Metrics not set");if(!l&&Math.abs(this.initialGridPoint.x-i)<Ts&&Math.abs(this.initialGridPoint.y-a)<Ts)return!1;if(l==null){var d=Or(this.initialGridPoint.column,o,u,s);if(!d||o==null||!s.isColumnMovable(d.modelIndex)||o>0&&!d.isColumnGroup||d.range[0]==null)return!1;l={range:d.range,depth:o,left:d.left,width:d.width};var h=Or(l.range[0],0,u,s),v=Or(l.range[1],0,u,s);if(!h||!v)return!1;this.draggingColumn=l,t.setState({draggingColumn:l,isDragging:!0})}return this.cursor="move",this.moveDraggingColumn(e.x,t,r.movementX),!0}moveDraggingColumn(e,t,r){var i;if(!(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0||this.draggingColumn==null||r===0)){if(this.initialOffset!==this.draggingOffset){this.draggingOffset<this.initialOffset&&this.initialOffset<this.draggingOffset+r||this.draggingOffset>this.initialOffset&&this.initialOffset>this.draggingOffset+r?this.draggingOffset=this.initialOffset:this.draggingOffset+=r,this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:a}=this.draggingColumn,{model:o}=t.props,{movedColumns:s}=t.state,{metrics:l}=t;if(!l)throw new Error("Metrics not set");var{floatingLeftWidth:u,width:d,columnHeaderMaxDepth:h,allColumnXs:v}=l,m=r<0,g=Or(this.draggingColumn.range[0],a,l,o);if(g){var f=e-this.draggingOffset,p=f+g.width;this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:f}),t.setState({draggingColumn:this.draggingColumn});var C=Or(ee.getColumnAtX(Ae(m?f:p,u,d),l,!0),a,l,o),b=o.getColumnHeaderParentGroup(g.modelIndex,g.depth);if(C){if(b!==void 0){var w=b.getVisibleRange(s);if(C.visibleIndex<w[0]){var S,T=this.moveColumn(g,w[0],s);this.draggingOffset=e-((S=v.get(w[0]))!==null&&S!==void 0?S:0),this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:T});return}if(C.visibleIndex>w[1]){var y,O=this.moveColumn(g,w[1]-(g.range[1]-g.range[0]),s),{right:R=0}=(y=Or(w[1],0,l,o))!==null&&y!==void 0?y:{};this.draggingOffset=e-(R-g.width),this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:O});return}}if(!o.isColumnMovable(C.modelIndex)){var E=C.visibleIndex;if(m)for(E+=1;E<g.visibleIndex&&!o.isColumnMovable(ee.getModelIndex(E,s));)E+=1;else for(E-=1;E>g.visibleIndex&&!o.isColumnMovable(ee.getModelIndex(E,s));)E-=1;if(E!==g.visibleIndex){m||(E-=g.range[1]-g.range[0]);var P=this.moveColumn(g,E,s);t.setState({movedColumns:P,draggingColumn:this.draggingColumn})}var x=Or(E,0,l,o);if(m){var I;this.draggingOffset=e-((I=x?.left)!==null&&I!==void 0?I:0)}else{var N;this.draggingOffset=e-(((N=x?.right)!==null&&N!==void 0?N:0)-g.width)}this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}if(f<=u?this.setScrollInterval(t,"left"):p>d?this.setScrollInterval(t,"right"):this.clearScrollInterval(),C.visibleIndex!==g.visibleIndex&&!(m&&g.visibleIndex<C.visibleIndex||!m&&g.visibleIndex>C.visibleIndex)){for(var L=C.left+C.width*.5,F=o.getColumnHeaderParentGroup(g.modelIndex,g.depth),k,H=((i=F?.depth)!==null&&i!==void 0?i:h)-1;H>=0&&k===void 0;)k=o.getColumnHeaderGroup(C.modelIndex,H),H-=1;var W;m&&f<L&&(!k||C.visibleIndex===k.getVisibleRange(s)[0])&&(W=this.moveColumn(g,C.range[0],s)),!m&&p>L&&(!k||C.visibleIndex===k.getVisibleRange(s)[1])&&(W=this.moveColumn(g,C.range[1]-(g.range[1]-g.range[0]),s)),W&&(this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:f}),t.setState({movedColumns:W,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?ee.moveRange(e.range,t,r):ee.moveItem(e.visibleIndex,t,r),a=t-e.range[0],o=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=pt(pt({},this.draggingColumn),{},{range:o})),i}onUp(e,t){return this.cursor=null,this.clearScrollInterval(),this.draggingOffset!=null?(this.draggingOffset=void 0,t.setState({draggingColumn:null,isDragging:!1}),!0):!1}}const Rv=Ov;function Es(n,e,t){return e=Dv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dv(n){var e=Nv(n,"string");return typeof e=="symbol"?e:String(e)}function Nv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class So extends ze{constructor(){super(...arguments),Es(this,"dragOffset",void 0),Es(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToColumn){var o=Math.round(t),s=0;return{left:o,leftOffset:s}}var l=Math.floor(t),u=t-l,d=i.allColumnWidths.get(l);if(d==null){var h=e.getMetricState();d=a.getVisibleColumnWidth(l,h)}var v=d*u;return{left:l,leftOffset:v}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:s,y:l}=e,{barLeft:u,barWidth:d,height:h,hasHorizontalBar:v}=o;return v&&i>0&&l>=h-a&&l<h&&s>u&&s<u+d}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:o,handleWidth:s,lastLeft:l,barLeft:u,columnCount:d,scrollableContentWidth:h,scrollableViewportWidth:v}=i,m=a-u,g=Ae((m-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-s),0,1);if(d===1)return{left:0,leftOffset:g*(h-v)};var f=g*l;return So.getLeftWithOffsetFromRawLeft(t,f)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:i}=e,{handleWidth:a,barLeft:o,scrollX:s}=r;if(!this.isInScrollBar(e,t))return!1;var l=i-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:u,leftOffset:d}=this.getLeftWithOffset(e,t);t.setViewState({left:u,leftOffset:d,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var{left:r,leftOffset:i}=this.getLeftWithOffset(e,t);return t.setViewState({left:r,leftOffset:i,isDraggingHorizontalScrollBar:!0,isDragging:!0}),!0}return!1}onMove(e,t){return this.isInScrollBar(e,t)}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingHorizontalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const Pv=So;function Os(n,e,t){return e=Fv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fv(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)}class Av extends ze{constructor(){super(...arguments),Os(this,"cursor","move"),Os(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:o}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{columnHeaderHeight:l,rowHeaderWidth:u,allRowYs:d}=s;if(i<=u&&o!==null&&r.isRowMovable(o)){var h=M(d,o);this.draggingOffset=a-h-l,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var{model:r}=t.props,{draggingRow:i}=t.state,{mouseX:a,mouseY:o}=t.state;if(a==null||o==null)return!1;if(i==null){var{row:s}=t.getGridPointFromXY(a,o);if(s!=null&&!r.isRowMovable(s)||(i=s,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:l}=t;if(!l)throw new Error("metrics not set");var{top:u,lastTop:d,bottom:h,bottomVisible:v,rowCount:m,columnHeaderHeight:g,allRowHeights:f,allRowYs:p,height:C}=l,b=g;if(u<i){var w=i-1;b=M(p,w)+M(f,w)*.5+g}var S=C;if(i<h){var T=i+1;S=M(p,T)+M(f,T)*.5+g}var{movedRows:y}=t.state;o<b&&i>0&&r.isRowMovable(i-1)?(y=ee.moveItem(i,i-1,y),i-=1):S<o&&i<m-1&&r.isRowMovable(i+1)&&(y=ee.moveItem(i,i+1,y),i+=1),t.setState({movedRows:y,draggingRow:i});var O=g+M(f,u)*.5,R=g+M(p,v)+M(f,v)*.5;return o<O&&u>0?t.setState({top:u-1}):o>R&&u<d&&t.setState({top:u+1}),!0}onUp(e,t){return this.draggingOffset!==void 0?(this.draggingOffset=void 0,t.setState({draggingRowOffset:null,draggingRow:null,isDragging:!1}),!0):!1}}const xv=Av;function ot(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=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)}class yo extends vu{constructor(){super(...arguments),ot(this,"hiddenCursor","s-resize"),ot(this,"defaultCursor","row-resize"),ot(this,"pointProperty","y"),ot(this,"userSizesProperty","userRowHeights"),ot(this,"visibleOffsetProperty","visibleRowYs"),ot(this,"visibleSizesProperty","visibleRowHeights"),ot(this,"marginProperty","columnHeaderHeight"),ot(this,"calculatedSizesProperty","calculatedRowHeights"),ot(this,"initialSizesProperty","initialRowHeights"),ot(this,"modelIndexesProperty","modelRows"),ot(this,"firstIndexProperty","firstRow"),ot(this,"treePaddingProperty","treePaddingY"),ot(this,"getHiddenItems",ee.getHiddenRows),ot(this,"getNextShownItem",ee.getNextShownRow),ot(this,"getSeparator",yo.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:o}=e,s=ee.getRowSeparatorIndex(a,o,t,i);return s!=null?{index:s,depth:0}:null}setSize(e,t,r){e.setRowHeight(t,r)}resetSize(e,t){e.resetRowHeight(t)}updateSeparator(e,t){e.setState({draggingRowSeparator:t,isDragging:t!==null})}}const jv=yo;class ki extends ze{static isInTreeBox(e,t){var{column:r,row:i,x:a,y:o}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{gridX:l,gridY:u,firstColumn:d,allColumnXs:h,allColumnWidths:v,allRowHeights:m,allRowYs:g,visibleRowTreeBoxes:f}=s;if(r===d&&i!=null&&f.get(i)!=null&&a>l&&o>u){var p=M(h,r),C=M(v,r),b=M(g,i),w=M(m,i);if(a>=l+p&&a<=l+p+C&&o>=u+b&&o<=u+b+w)return!0}return!1}onDown(e,t){return ki.isInTreeBox(e,t)}onClick(e,t,r){if(ki.isInTreeBox(e,t)){var{row:i}=e;if(i!==null)return t.toggleRowExpanded(i,ee.isModifierKeyDown(r)),!0}return!1}}const za=ki;class kv extends ze{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:o,y:s}=e,{width:l,height:u,hasVerticalBar:d,hasHorizontalBar:h}=a;return i>0&&d&&h&&o>=l-i&&s>=u-i&&o<=l&&s<=u}onDown(e,t){return this.isInCorner(e,t)}onUp(e,t){return this.isInCorner(e,t)}onClick(e,t){return this.isInCorner(e,t)}}const _v=kv;function Rs(n,e,t){return e=Hv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hv(n){var e=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)}class To extends ze{constructor(){super(...arguments),Rs(this,"dragOffset",void 0),Rs(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToRow){var o=Math.round(t),s=0;return{top:o,topOffset:s}}var l=Math.floor(t),u=t-l,d=i.allRowHeights.get(l);if(d==null){var h=e.getMetricState();d=a.getVisibleRowHeight(l,h)}var v=d*u;return{top:l,topOffset:v}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:s,y:l}=e,{barTop:u,barHeight:d,width:h,hasVerticalBar:v}=o;return v&&i>0&&s>=h-a&&s<h&&l>u&&l<u+d}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:o,handleHeight:s,lastTop:l,barTop:u,rowCount:d,scrollableContentHeight:h,scrollableViewportHeight:v}=i,m=a-u,g=Ae((m-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-s),0,1);if(d===1)return{top:0,topOffset:g*(h-v)};var f=g*l;return To.getTopWithOffsetFromRawTop(t,f)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:i}=e,{handleHeight:a,barTop:o,scrollY:s}=r;if(!this.isInScrollBar(e,t))return!1;var l=i-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:u,topOffset:d}=this.getTopWithOffset(e,t);t.setViewState({top:u,topOffset:d,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top:r,topOffset:i}=this.getTopWithOffset(e,t);return t.setViewState({top:r,topOffset:i,isDraggingVerticalScrollBar:!0,isDragging:!0}),!0}return!1}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingVerticalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const Vv=To;class Uv extends ze{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return Le(a)&&r!=null&&i!=null&&a.isEditableRange(B.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}const $v=Uv;function Cu(n){return n?.getTokenBoxesForVisibleCell!==void 0}function $n(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=Wv(n,"string");return typeof e=="symbol"?e:String(e)}function Wv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qi extends ze{constructor(){super(...arguments),$n(this,"timeoutId",void 0),$n(this,"isHold",!1),$n(this,"isDown",!1),$n(this,"currentLinkBox",void 0)}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:s,metrics:l,props:u}=t,{model:d}=u;if(r==null||i==null||l==null)return this.currentLinkBox=void 0,!1;var{modelRows:h,modelColumns:v}=l,m=M(h,i),g=M(v,r),f=d.renderTypeForCell(g,m),p=s.getCellRenderer(f);if(!Cu(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:b,x2:w,y2:S}=this.currentLinkBox;if(a>=C&&a<=w&&o>=b&&o<=S)return!0}for(var T=t.updateRenderState(),y=p.getTokenBoxesForVisibleCell(r,i,T),O=0;O<y.length;O+=1)if(ji(y[O].token)){var R=ee.translateTokenBox(y[O],l),{x1:E,x2:P,y1:x,y2:I}=R;if(a>=E&&a<=P&&o>=x&&o<=I)return this.currentLinkBox=R,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?this.cursor="pointer":this.cursor=null,!1}onMove(e,t){return this.setCursor(e,t)}onDown(e,t,r){var i=this.isHoveringLink(e,t);return ee.isModifierKeyDown(r)||r.shiftKey||!i?!1:(this.isDown=!0,this.timeoutId!=null&&clearTimeout(this.timeoutId),this.isHold=!1,this.timeoutId=setTimeout(()=>{this.isHold=!0;var{column:a,row:o}=e,{model:s}=t.props;t.clearSelectedRanges(),t.focus(),t.moveCursorToPosition(a,o),Le(s)&&a!=null&&o!=null&&s.isEditableRange(B.makeCell(a,o))&&t.startEditing(a,o)},Qi.HOLD_LENGTH),!0)}onClick(e,t){var r=this.isHoveringLink(e,t);if(!r||!this.isDown||this.currentLinkBox==null)return this.isDown=!1,this.isHold=!1,!1;if(!this.isHold){var i;this.timeoutId!=null&&clearTimeout(this.timeoutId),this.timeoutId=void 0,t.props.onTokenClicked((i=this.currentLinkBox)===null||i===void 0?void 0:i.token)}return this.isHold=!1,this.isDown=!1,!0}}$n(Qi,"HOLD_LENGTH",1e3);const zv=Qi;function Kv(n,e,t){return e=Yv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yv(n){var e=Xv(n,"string");return typeof e=="symbol"?e:String(e)}function Xv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qv{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Kv(this,"order",void 0),this.order=e}onDown(e,t){return!1}}const an=qv;class Qv extends an{onDown(e,t){switch(e.key){case"a":if(ee.isModifierKeyDown(e))return t.selectAll(),!0;break;case"ArrowUp":return this.handleArrowMove(0,-1,e,t);case"ArrowDown":return this.handleArrowMove(0,1,e,t);case"ArrowRight":return this.handleArrowMove(1,0,e,t);case"ArrowLeft":return this.handleArrowMove(-1,0,e,t);case"k":case"K":return ee.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return ee.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return ee.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(ee.isModifierKeyDown(e))return!1;var{model:r}=t.props,{columnCount:i}=r;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(i-1,t.state.cursorRow,e.shiftKey),!0}case"PageDown":return this.handlePageDown(e,t);case"PageUp":return this.handlePageUp(e,t);case"Home":return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(ee.isModifierKeyDown(e)?t.state.cursorColumn:0,ee.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:o,rowCount:s}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(ee.isModifierKeyDown(e)?t.state.cursorColumn:o-1,ee.isModifierKeyDown(e)?s-1:t.state.cursorRow,e.shiftKey,!0,!0),!0}case"Escape":return t.clearSelectedRanges(),{preventDefault:!1,stopPropagation:!1};case"Enter":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?B.SELECTION_DIRECTION.UP:B.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?B.SELECTION_DIRECTION.LEFT:B.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,o=ee.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:s,cursorColumn:l,selectionEndColumn:u,selectionEndRow:d}=i.state,h=a?u:l,v=a?d:s;if(o){var{model:m}=i.props,{columnCount:g,rowCount:f}=m,p=o&&a,C=null,b=null;e<0?(C=0,b=v):e>0?(C=g-1,b=v):t<0?(C=h,b=0):t>0&&(C=h,b=f-1),C!=null&&b!=null&&i.moveCursorToPosition(C,b,a,!0,p)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:w}=i.props,{autoSelectRow:S=!1,autoSelectColumn:T=!1}=w;if(S&&e!==0){var{lastLeft:y}=i.metrics,{left:O}=i.state;O=Ae(O+e,0,y),i.moveCursorToPosition(O,s,a,!1),i.setViewState({left:O})}else if(T&&t!==0){var{lastTop:R}=i.metrics,{top:E}=i.state;E=Ae(E+t,0,R),i.moveCursorToPosition(E,l,a,!1),i.setViewState({top:E})}else i.moveCursor(e,t,a)}return!0}handlePageUp(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{cursorColumn:i,selectionEndRow:a}=t.state,o=a,s=i;if(o==null)return!1;var l=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:h,hasHorizontalBar:v}=u.getMetrics(l),m=o-(d-h);m-=v?0:1,m=Math.max(m,0);var g=Math.max(m-(o-h),0);return t.moveCursorToPosition(s,m,r,!1),t.setViewState({top:g}),!0}handlePageDown(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:i,cursorColumn:a}=t.state,o=i,s=a;if(o===null)return!1;var l=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:h,hasHorizontalBar:v,rowCount:m,lastTop:g}=u.getMetrics(l),f=m-1,p=d-h+o;p+=v?0:1,p=Math.min(p,f);var C=Math.min(g,p-(o-h));return t.moveCursorToPosition(s,p,r,!1),t.setViewState({top:C}),!0}}const Zv=Qv;class Jv extends an{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var{selectedRanges:r}=t.state;if(r.length===1){var i=r[0];if(i.startRow===i.endRow&&i.startColumn===i.endColumn){if(!t.metrics)throw new Error("grid.metrics not set");var{model:a}=t.props,{startRow:o,startColumn:s}=i;if(o!=null){var l=t.getModelRow(o);if((s===0||s==null)&&Fe(a)&&a.isRowExpandable(l))return t.toggleRowExpanded(o),!0}}}return!1}}const em=Jv;class tm extends an{onDown(e,t){if(ee.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!Le(r)||!r.isEditableRange(B.makeCell(i,a)))return!1;var o=i,s=a;return o==null||s==null?!1:e.key.length===1?(t.startEditing(o,s,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(o,s),!0):e.key==="Backspace"?(t.startEditing(o,s,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(o,s,""),!0):!1}}const rm=tm;function nm(n){for(var e=[],t=n.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),o=[],s=0;s<a.length;s+=1){var l,u,d=a[s];o.push((l=(u=d.textContent)===null||u===void 0?void 0:u.trim())!==null&&l!==void 0?l:"")}e.push(o)}return e}function im(n){var e=[];return n.forEach(t=>{var r,i=(r=t.textContent)!==null&&r!==void 0?r:"";i.length>0&&e.push(i.split(/\t|\u00a0\u00a0 \u00a0/))}),e}function am(n){var e,t,r=n.querySelector("table");if(r!=null)return nm(r);var i=(e=(t=n.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(i.length>0){var{childNodes:a}=n,o=i.includes(" "),s=i.includes(" ");return o&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
|
|
1
|
+
import{H as Ne,C as c,F as Q,N as se,r as D,L as ge,G as le,aC as ro,aD as Gi,aE as ld,D as sr,a1 as lr,aF as ql,an as nt,S as Be,K as Jt,aa as Ae,aG as ud,aH as Ua,E as dd,aI as Wi,aJ as hd,aK as nr,aL as cd,aM as vd,aN as md,aO as gd,aP as $a,aQ as fd,aR as pd,aS as Cd,aT as Wo,aU as bd,aV as zo,aW as wd,aX as Sd,aY as yd,aZ as Td,a_ as Ed,a$ as Od,I as Ii}from"./vendor-9bc0b4ef.js";import{d as no,L as ye,ah as zi,aH as Rd,aI as Dd,j as Ki,T as We,t as Ql,aJ as Nd,e as _,aK as Zl,aL as Pd,aM as Fd,aN as M,aO as Jl,a8 as Wn,F as rn,a9 as eu,aP as io,aQ as Ai,aR as Id,aS as cr,J as xi,aT as Ad,aU as xd,aj as Md,aV as Ld,a1 as jd,aW as kd,aX as _d,aY as Hd,ad as Bd,f as Vr,g as En,aZ as Ko,ac as ao,a_ as oo,a$ as so,ag as Vd,ae as lo,b0 as Ud,b1 as $d,D as Mi,b2 as Gd,b3 as uo,b4 as tu,v as Wd,b5 as zd,K as Kd,b6 as Yd,b7 as Xd,b8 as qd,b9 as Qd,ba as Yo,bb as Oa,bc as Zd,bd as Jd,I as eh,M as th,b as rh,be as nh,bf as ih,c as ah,z as oh,bg as sh,bh as lh,bi as uh,q as dh,bj as hh,bk as ch,bl as vh,bm as mh,bn as gh,bo as fh,bp as ph}from"./index-485770e6.js";import{c as Ch,P as bh}from"./plotly-26031571.js";import{k as Yi,m as ho,A as wh,f as _t,J as qn,R as Sh,X as yh,B as Z,H as co,C as Cr,T as pe,a2 as wn,c as j,ah as Yt,F as Hr,$ as Sn,aB as Se,aC as fr,as as vo,P as Tt,s as ru,g as yn,i as qt,b as zn,a as xt,I as Gr,n as de,G as Th,h as nu,O as An,aD as Eh,D as mo,d as Oh,at as Rh,j as iu,av as Dh,au as Nh,v as Ph,aA as Fh,aE as Me}from"./PluginTypes-d6d1d60d.js";import{e as Ih}from"./monaco-1410cbed.js";var Xi=Ne.forwardRef((n,e)=>{var{children:t,className:r,disabled:i,onClick:a,style:o,id:s}=n;return c.jsx("button",{ref:e,type:"button",className:Q("btn",r),onClick:a,style:o,disabled:i,id:s,children:t})});Xi.displayName="Button";Xi.propTypes={children:se.node,className:se.string,disabled:se.bool,onClick:se.func,style:se.shape({}),id:se.string};Xi.defaultProps={children:null,className:"",disabled:!1,onClick:()=>null,style:{},id:""};const pS=Xi;function CS(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]},o=D.useRef(null),s=D.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.add("card-flip--is-flipping")},[]),l=D.useCallback(u=>{u.target===u.currentTarget&&document.body.classList.remove("card-flip--is-flipping")},[]);return D.useEffect(function(){if(!o.current)throw Error("ref undefined");o.current.addEventListener("transitionstart",s);var d=o.current;return function(){if(d!=null)return d.removeEventListener("transitionstart",s)}},[s]),c.jsxs("div",{className:Q(e,{"card-flip--show-front":t,"card-flip--show-back":!t}),"data-testid":i,children:[c.jsx("div",{className:"card-flip--back",children:a(0)}),c.jsx("div",{ref:o,className:"card-flip--front",onTransitionEnd:l,children:a(1)})]})}function Xo(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 Ah(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Xo(Object(t),!0).forEach(function(r){jt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Xo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jt(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=Mh(n,"string");return typeof e=="symbol"?e:String(e)}function Mh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ga;(function(n){n.UP="UP",n.DOWN="DOWN"})(Ga||(Ga={}));class ir extends D.Component{constructor(e){super(e),jt(this,"popper",void 0),jt(this,"cbContainer",void 0),jt(this,"toggleButton",void 0),jt(this,"menuContainer",void 0),jt(this,"input",void 0),jt(this,"searchInput",void 0),jt(this,"getCachedFilteredOptions",ge((t,r)=>t.filter(i=>i.title.toLowerCase().indexOf(r.toLowerCase())>=0||i.value.toLowerCase().indexOf(r.toLowerCase())>=0))),this.state={value:"",filter:"",filteredOptions:e.options,keyboardOptionIndex:-1,menuIsOpen:!1,inputWidth:100},this.toggleMenu=this.toggleMenu.bind(this),this.handleMenuKeyDown=this.handleMenuKeyDown.bind(this),this.handleMenuBlur=this.handleMenuBlur.bind(this),this.closeMenu=this.closeMenu.bind(this),this.handleInputChange=this.handleInputChange.bind(this),this.handleInputKeyDown=this.handleInputKeyDown.bind(this),this.handleInputBlur=this.handleInputBlur.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleOptionClick=this.handleOptionClick.bind(this),this.handleOptionFocus=this.handleOptionFocus.bind(this),this.handleMenuOpened=this.handleMenuOpened.bind(this),this.handleMenuExited=this.handleMenuExited.bind(this),this.popper=Ne.createRef(),this.cbContainer=Ne.createRef(),this.toggleButton=Ne.createRef(),this.menuContainer=Ne.createRef(),this.input=Ne.createRef(),this.searchInput=Ne.createRef()}componentDidUpdate(){var{menuIsOpen:e,keyboardOptionIndex:t}=this.state;e&&t>=0&&this.scrollOptionIntoView()}setInputWidth(){this.cbContainer.current&&this.setState({inputWidth:this.cbContainer.current.getBoundingClientRect().width})}focus(){var e;(e=this.input.current)===null||e===void 0||e.focus()}resetValue(){this.setState({value:""})}updateInputValue(e){var{onChange:t}=this.props;this.setState({value:e}),t(e)}handleResize(){this.setInputWidth()}handleMenuKeyDown(e){var t,r,{filter:i,filteredOptions:a,keyboardOptionIndex:o}=this.state,{options:s}=this.props,l=i?a:s;switch(e.key){case"Enter":((t=l[o])===null||t===void 0?void 0:t.value)!=null&&this.updateInputValue(l[o].value),this.closeMenu(),(r=this.input.current)===null||r===void 0||r.focus(),e.stopPropagation(),e.preventDefault();break;case"ArrowUp":this.handleMenuNavigation(ir.MENU_NAVIGATION_DIRECTION.UP),e.stopPropagation(),e.preventDefault();break;case"ArrowDown":this.handleMenuNavigation(ir.MENU_NAVIGATION_DIRECTION.DOWN),e.stopPropagation(),e.preventDefault();break;case"Escape":i!==""?(this.setState({filter:""}),e.stopPropagation()):this.closeMenu();break;case"Tab":!e.shiftKey&&o===l.length-1&&this.closeMenu();break}}handleMenuNavigation(e){var{filter:t,filteredOptions:r,keyboardOptionIndex:i}=this.state,{options:a}=this.props,o=t?r:a,s=o.length,l=0;switch(e){case ir.MENU_NAVIGATION_DIRECTION.UP:l=-1;break;case ir.MENU_NAVIGATION_DIRECTION.DOWN:l=1;break}l!==0&&this.setState({keyboardOptionIndex:(i+l+s)%s})}handleInputKeyDown(e){var{onEnter:t}=this.props,{menuIsOpen:r}=this.state;e.key==="ArrowDown"||e.key==="ArrowUp"?r||this.openMenu():e.key==="Enter"&&t()}handleInputChange(e){this.updateInputValue(e.target.value)}handleOptionClick(e){var t,r=Number(e.currentTarget.value),{filter:i,filteredOptions:a}=this.state,{options:o}=this.props,s=i?a:o;this.updateInputValue(s[r].value),this.closeMenu(),(t=this.input.current)===null||t===void 0||t.focus()}handleOptionFocus(e){this.setState({keyboardOptionIndex:Number(e.target.value)})}handleFilterChange(e){var t,{options:r}=this.props,i=e.target.value,a=this.getCachedFilteredOptions(r,i);this.setState({filter:i,filteredOptions:a,keyboardOptionIndex:0}),(t=this.popper.current)===null||t===void 0||t.scheduleUpdate()}handleMenuBlur(e){e.relatedTarget instanceof Element&&this.popper.current!=null&&this.popper.current.element.contains(e.relatedTarget)||e.relatedTarget===this.toggleButton.current||this.closeMenu(!1)}handleInputBlur(e){var{menuIsOpen:t}=this.state;t&&e.relatedTarget instanceof Element&&this.popper.current!=null&&this.popper.current.element.contains(e.relatedTarget)||this.closeMenu(!1)}handleMenuOpened(){var e;this.scrollOptionIntoView(),(e=this.searchInput.current)===null||e===void 0||e.focus()}handleMenuExited(){var{menuIsOpen:e}=this.state;if(e){var t;this.setState({menuIsOpen:!1}),(t=this.popper.current)===null||t===void 0||t.hide()}this.setState({filter:""})}toggleMenu(e){var{menuIsOpen:t}=this.state;t?this.closeMenu():this.openMenu(),e.stopPropagation()}openMenu(){this.updateKeyboardIndex(),this.setInputWidth(),this.setState({menuIsOpen:!0}),window.requestAnimationFrame(()=>{var e;(e=this.popper.current)===null||e===void 0||e.show()})}closeMenu(){var e,t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;if(this.setState({menuIsOpen:!1}),t){var r;(r=this.input.current)===null||r===void 0||r.focus()}(e=this.popper.current)===null||e===void 0||e.hide()}updateKeyboardIndex(){var{value:e,filter:t,filteredOptions:r}=this.state,{options:i}=this.props,a=t?r:i,o=a.findIndex(s=>s.value===e);this.setState({keyboardOptionIndex:o})}scrollOptionIntoView(){var e,t=(e=this.menuContainer.current)===null||e===void 0?void 0:e.querySelector(".cb-option-btn.keyboard-active");t instanceof HTMLElement&&t.scrollIntoView({block:"nearest",inline:"nearest"})}renderMenuElement(){var{searchPlaceholder:e}=this.props,{filter:t,inputWidth:r}=this.state;return c.jsxs("div",{className:"cb-menu-container",ref:this.menuContainer,role:"presentation",onKeyDown:this.handleMenuKeyDown,onClick:i=>{i.stopPropagation()},style:{width:r},onBlur:this.handleMenuBlur,children:[c.jsx("div",{className:"cb-search-input-container",children:c.jsx(Yi,{value:t,ref:this.searchInput,onChange:this.handleFilterChange,className:"cb-search-input",placeholder:e})}),c.jsx("div",{className:"cb-options-container",children:c.jsx("div",{className:"cb-options",children:this.renderOptions()})})]})}renderOptions(){var{options:e}=this.props,{keyboardOptionIndex:t,filter:r,filteredOptions:i}=this.state,a=r?i:e;return a.map((o,s)=>{var l="option-".concat(s,"-").concat(o.value);return c.jsx("button",{type:"button",value:s,className:Q("cb-option-btn",{"keyboard-active":t===s}),onClick:this.handleOptionClick,onFocus:this.handleOptionFocus,children:o.title},l)})}render(){var{options:e,inputPlaceholder:t,disabled:r,className:i,defaultValue:a,spellCheck:o,"data-testid":s}=this.props,{value:l}=this.state,{popperOptions:u}=this.props;return u=Ah({placement:"bottom-end",modifiers:{preventOverflow:{enabled:!1}}},u),c.jsxs("div",{className:"input-group cb-container",ref:this.cbContainer,children:[c.jsx("input",{value:l||a,className:Q("form-control",i,"cb-input"),ref:this.input,onChange:this.handleInputChange,placeholder:t||(e[0]!=null?e[0].title:void 0),disabled:r,onBlur:this.handleInputBlur,onKeyDown:this.handleInputKeyDown,spellCheck:o,"data-testid":s!==void 0?"".concat(s,"-input"):void 0}),c.jsx("div",{className:"input-group-append cb-dropdown",children:c.jsxs("button",{type:"button",className:"btn cb-btn form-control",ref:this.toggleButton,onClick:this.toggleMenu,onKeyDown:this.handleInputKeyDown,disabled:r,"data-testid":s!==void 0?"".concat(s,"-btn"):void 0,children:[c.jsx(le,{icon:no}),c.jsx(ho,{ref:this.popper,options:u,className:Q("combobox interactive"),onEntered:this.handleMenuOpened,onExited:this.handleMenuExited,children:this.renderMenuElement()})]})})]})}}jt(ir,"MENU_NAVIGATION_DIRECTION",Ga);jt(ir,"DROP_DOWN_MENU_HEIGHT",200);jt(ir,"propTypes",{options:se.arrayOf(se.shape({title:se.string.isRequired,value:se.string.isRequired})).isRequired,popperOptions:se.shape({title:se.string.isRequired,value:se.string.isRequired}),onChange:se.func,inputPlaceholder:se.string,searchPlaceholder:se.string,disabled:se.bool,className:se.string,defaultValue:se.string,spellCheck:se.bool,onEnter:se.func,"data-testid":se.string});jt(ir,"defaultProps",{onChange(){},inputPlaceholder:"",searchPlaceholder:"Search",disabled:!1,className:"",defaultValue:"",popperOptions:null,spellCheck:!0,onEnter(){},"data-testid":void 0});const au=ir;function ou(n,e,t){return n.substring(0,e)+t+n.substring(e+1)}function Lh(n,e,t){return n.length<t?"".concat(n).concat(e.substring(n.length,t)):n}function qo(n,e){for(var{length:t}=n,r=n.length-1;r>=0&&e[r]===n[r];r-=1)t=r;return n.substring(0,t)}function Qo(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 jh(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qo(Object(t),!0).forEach(function(r){kh(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function kh(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 Wt=ye.module("MaskedInput"),vn={FORWARD:"forward",BACKWARD:"backward",NONE:"none"},hi=" ",su=Ne.forwardRef((n,e)=>{var{className:t,example:r,getNextSegmentValue:i=(N,L,F)=>F,getPreferredReplacementString:a=ou,onChange:o=()=>!1,onSelect:s=()=>!1,onSubmit:l,pattern:u,placeholder:d,selection:h,value:v,onFocus:m=()=>!1,onBlur:g=()=>!1,"data-testid":f}=n,p=wh(e),C=D.useMemo(()=>Array.isArray(r)?r:[r],[r]),b=D.useMemo(()=>C[0].replace(/[a-zA-Z0-9]/g,hi),[C]);D.useEffect(function(){if(h!=null){var L;Wt.debug("setting selection...",h);var{selectionStart:F,selectionEnd:k,selectionDirection:H}=h;(L=p.current)===null||L===void 0||L.setSelectionRange(F,k,H),Wt.debug("selection set!")}},[h,p]);var w=D.useCallback(N=>{for(var L=N,F=N,k=C.length>0?C[0]:v,H=L-1;H>=0&&/[a-zA-Z0-9]/g.test(k.charAt(H));H-=1)L=H;for(var W=F;W<k.length&&/[a-zA-Z0-9]/g.test(k.charAt(W));W+=1)F=W+1;var z=L===F?vn.NONE:vn.BACKWARD;return{selectionStart:L,selectionEnd:F,selectionDirection:z}},[C,v]);function S(N,L){for(var F=arguments.length>2&&arguments[2]!==void 0?arguments[2]:N.length,k="",H=0;H<F;H+=1)N.charAt(H)!==hi?k=k.concat(N[H]):k=k.concat(L[H]);return k=k.concat(L.substring(F)),k}function T(N){var L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:N.length,F=new RegExp("^".concat(u,"$"));if(F.test(N))return!0;for(var k=0;k<C.length;k+=1){var H=S(N,C[k],L);if(F.test(H))return!0}return!1}function y(N){var L=w(N),F=L.selectionEnd+1;return F>=v.length?L:w(F)}function O(N){var L=w(N),F=L.selectionStart-1;return F<=0?L:w(F)}function R(N,L){var F=w(N),k=v.substring(F.selectionStart,F.selectionEnd),H=i(F,L,k,v),W=v.substring(0,F.selectionStart)+H+v.substring(F.selectionEnd);T(W,F.selectionEnd)&&(o(W),s(F))}var E=D.useCallback(N=>{var{selectionStart:L=0,selectionEnd:F=0,selectionDirection:k="none"}=N.target;if(L===null||F===null||k===null){Wt.error("Selection attempted on non-text input element",N.target);return}if(Wt.debug2("handleSelect",L,F,k),!(h!=null&&L===h.selectionStart&&F===h.selectionEnd)){if(h!=null&&L===v.length&&F===v.length&&N.nativeEvent.type!=="mouseup"){s(jh({},h));return}if(L===F){var H=w(L);Wt.debug("Selection segment from ",L,F,"=>",H),s(H)}else s({selectionStart:L,selectionEnd:F,selectionDirection:k})}},[w,s,h,v]),P=D.useCallback(N=>{var L;if(p.current){Wt.debug("handleSelectCapture",N);var F=(L=p.current.selectionStart)!==null&&L!==void 0?L:0;F===v.length&&h!=null&&F!==h.selectionStart&&(N.preventDefault(),N.stopPropagation())}},[p,h,v]);function x(N){if(N.preventDefault(),N.stopPropagation(),!!p.current){var{key:L}=N,{selectionStart:F=0,selectionEnd:k=0}=p.current;if(F===null||k===null){Wt.error("Selection arrow nvaigation attempted on non-text input element",N.target);return}L==="ArrowLeft"?s(O(F)):L==="ArrowRight"?s(y(k)):L==="ArrowUp"?R(F,-1):L==="ArrowDown"&&R(F,1)}}function I(N){if(p.current){Wt.debug("handleKeyDown",N);var{key:L}=N,{selectionStart:F=0,selectionEnd:k=0}=p.current;if(F===null||k===null){Wt.error("Selection key event on non-text input element",N.target);return}if(L==="Enter"){l?.(N);return}if(L.startsWith("Arrow")){x(N);return}if(L==="Delete"||L==="Backspace"){if(N.preventDefault(),N.stopPropagation(),k>=qo(v,b).length){var H=v.substring(0,F===k?F-1:F),W=qo(H,b);W!==v&&(o(W),s({selectionStart:W.length,selectionEnd:W.length,selectionDirection:vn.NONE}));return}if(F!==k){var z=v.substring(0,F)+v.substring(F,k).replace(/[a-zA-Z0-9]/g,hi)+v.substring(k);Wt.debug("Range ",F,k,"deleted, setting value",z),o(z),s({selectionStart:F,selectionEnd:F,selectionDirection:vn.NONE})}else if(F>0)for(var Y=F-1;Y>=0;Y-=1){var $=v.substring(0,Y)+v.substring(Y,F).replace(/[a-zA-Z0-9]/g,hi)+v.substring(F);if($!==v){o($),s({selectionStart:Y,selectionEnd:Y,selectionDirection:vn.NONE});return}}return}if(!(N.altKey||N.metaKey||N.ctrlKey||L.length>1)){N.preventDefault(),N.stopPropagation();for(var A=Array.from(new Set([L,L.toUpperCase(),L.toLowerCase()])),U=0;U<A.length;U+=1)for(var V=A[U],X=/[a-zA-Z0-9]/g.test(V)?C[0].length-1:F,q=F;q<=X;q+=1){var ne=Lh(v,C[0],q+1),ue=a(ne,q,V,F,k);if(T(ue,q+1)){var re=w(q),te=q+1,Te={selectionStart:te,selectionEnd:te,selectionDirection:vn.NONE};if(te>=re.selectionEnd){var Ie=y(q);Ie.selectionStart!==re.selectionStart&&(Te=Ie)}Wt.debug("handleKeyDown",L,"=>",ue,Te),o(ue),s(Te);return}}}}}return c.jsx("input",{ref:p,className:Q("form-control masked-input",t),type:"text",pattern:u,placeholder:d,value:v,onChange:()=>{},onKeyDown:I,onSelect:E,onSelectCapture:P,onFocus:m,onBlur:g,"data-testid":f})});su.defaultProps={className:"",placeholder:void 0,onChange(){},onSelect(){},getNextSegmentValue:(n,e,t)=>t,getPreferredReplacementString:ou,selection:void 0,onFocus(){},onBlur(){},"data-testid":void 0};const Bh=su;function mn(n,e,t,r,i){var a=r-t+1,o=((parseInt(e,10)-n-t)%a+a)%a+t;return"".concat(o).padStart(i,"0")}function Vh(n,e,t){var{selectionStart:r}=n;return r===0?mn(e,t,1900,2099,4):r===5?mn(e,t,1,12,2):r===8?mn(e,t,1,31,2):r===11?mn(e,t,0,23,2):r===17||r===14?mn(e,t,0,59,2):r===20||r===24||r===28?mn(e,t,0,999,3):t}function Wa(n){var e=n.substring(0,23),t=n.substring(23,26),r=n.substring(26);return[e,t,r].filter(i=>i!=="").join("")}var Uh=ye.module("DateTimeInput"),$h="[12][0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])",Gh="([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]\\.[0-9]{3}[0-9]{3}[0-9]{3}",Wh="".concat($h," ").concat(Gh),Pi="2022-01-01",lu="".concat(Pi," 00:00:00.000000000"),zh="YYYY-MM-DD HH:MM:SS.SSSSSSSSS";function Zo(n){return n!=null&&n.length>=Pi.length?"".concat(n.substring(0,Pi.length)).concat(n.substring(Pi.length).replace(/\u2007/g,"0")).concat(lu.substring(n.length)):n}function Jo(n){return n.replace(/\u200B/g,"")}var Kh=[Wa(lu)],go=Ne.forwardRef((n,e)=>{var{className:t="",onChange:r=()=>{},defaultValue:i="",onFocus:a=()=>{},onBlur:o=()=>{},onSubmit:s,"data-testid":l}=n,[u,d]=D.useState(i.length>0?Wa(i):""),[h,v]=D.useState(),m=D.useCallback(f=>{Uh.debug("handleChange",f),d(f),r(Zo(Jo(f)))},[r]),g=D.useCallback(()=>{var f=Jo(u),p=Zo(f);p!==f&&d(Wa(p)),o()},[u,o]);return c.jsx("div",{className:"d-flex flex-row align-items-center",children:c.jsx(Bh,{ref:e,className:Q(t),example:Kh,getNextSegmentValue:Vh,onChange:m,onSelect:v,onSubmit:s,pattern:Wh,placeholder:zh,selection:h,value:u,onFocus:a,onBlur:g,"data-testid":l})})});go.displayName="DateTimeInput";go.defaultProps={className:"",onChange:()=>{},defaultValue:"",onFocus:()=>{},onBlur:()=>{},"data-testid":void 0};const Yh=go;function es(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?es(Object(t),!0).forEach(function(r){qr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):es(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function qr(n,e,t){return e=Xh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xh(n){var e=qh(n,"string");return typeof e=="symbol"?e:String(e)}function qh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ar extends D.PureComponent{static renderHandle(){return c.jsxs("div",{children:[c.jsx(_t,{children:"Drag to re-order"}),c.jsx(le,{icon:zi})]})}static renderBadge(e){var{text:t}=e;return t!=null&&t.length>0?c.jsx("span",{className:"number-badge",children:t}):null}static renderTextItem(e){var{text:t,badgeText:r="",className:i=""}=e;return c.jsxs("div",{className:Q("item-list-item-content","draggable-item-list-item-content",i),children:[c.jsx("span",{className:"title",children:t}),ar.renderBadge({text:r}),ar.renderHandle()]})}static renderItem(e){var t,r,{item:i,isClone:a,selectedCount:o}=e,s=i!=null?(t=(r=i.displayValue)!==null&&r!==void 0?r:i.value)!==null&&t!==void 0?t:"".concat(i):"",l=a!==void 0&&a?"".concat(o):"",u=a!==void 0&&a?"item-list-item-clone":"";return ar.renderTextItem({text:s,badgeText:l,className:u})}static getDraggableId(e,t){return"".concat(e,"/").concat(t)}static getDraggableIndex(e){var t=e.split("/").pop();return parseInt(t!==void 0?t:"",10)}constructor(e){super(e),qr(this,"itemList",void 0),qr(this,"getCachedDraggableItem",ge((t,r,i,a,o,s,l,u)=>c.jsx(ro,{draggableId:ar.getDraggableId(t,a),index:a,isDragDisabled:l,children:d=>c.jsx("div",Tr(Tr(Tr({role:"menuitem",className:"draggable-item-list-item",ref:d.innerRef,tabIndex:-1},d.draggableProps),d.dragHandleProps),{},{children:r({item:i,itemIndex:a,isFocused:o,isSelected:s,style:u,isClone:!1})}))},a),{max:qn.CACHE_SIZE})),qr(this,"getCachedRenderDraggableItem",ge((t,r,i)=>a=>{var{item:o,itemIndex:s,isFocused:l,isSelected:u,style:d}=a;return this.getCachedDraggableItem(t,i,o,s,l,u,r,d)},{max:1})),qr(this,"getCachedRenderClone",ge((t,r,i,a)=>(o,s,l)=>{var{selectedCount:u}=this.state,{draggableProps:d,dragHandleProps:h,innerRef:v}=o,{index:m}=l.source,g=r[m-i];return c.jsx("div",Tr(Tr(Tr({className:Q("draggable-item-list-dragging-item-container",t)},d),h),{},{ref:v,children:c.jsx("div",{className:Q("draggable-item-list-dragging-item",{"two-dragged":u===2},{"multiple-dragged":u>2}),children:a({item:g,itemIndex:m,isFocused:!1,isSelected:!0,style:{},isClone:!0,selectedCount:u})})}))},{max:1})),this.handleSelectionChange=this.handleSelectionChange.bind(this),this.itemList=Ne.createRef(),this.state={selectedCount:0}}selectItem(e){var t;(t=this.itemList.current)===null||t===void 0||t.selectItem(e)}focusItem(e){var t;(t=this.itemList.current)===null||t===void 0||t.focusItem(e)}scrollToItem(e){var t;(t=this.itemList.current)===null||t===void 0||t.scrollToItem(e)}handleSelectionChange(e){this.setState({selectedCount:Sh.count(e)});var{onSelectionChange:t}=this.props;t(e)}render(){var{className:e,draggablePrefix:t,draggingItemClassName:r,droppableId:i,isDoubleClickSelect:a,isDragDisabled:o,isDropDisabled:s,isMultiSelect:l,isStickyBottom:u,itemCount:d,items:h,offset:v,onFocusChange:m,onSelect:g,onViewportChange:f,renderItem:p,rowHeight:C,selectedRanges:b,style:w,"data-testid":S}=this.props;return c.jsx(Gi,{isDropDisabled:s,droppableId:i,mode:"virtual",renderClone:this.getCachedRenderClone(r,h,v,p),"data-testid":S,children:(T,y)=>c.jsx("div",Tr(Tr({role:"menu",className:Q("draggable-item-list",e,{"is-drop-disabled":s,"is-drag-disabled":o,"is-dragging-from-this":y.draggingFromThisWith,"is-dragging-over":y.isDraggingOver,"is-dropping":y.draggingOverWith}),style:w,ref:T.innerRef},T.droppableProps),{},{children:c.jsx(qn,{focusSelector:".draggable-item-list-item",isDoubleClickSelect:a,isDragSelect:!1,isMultiSelect:l,isStickyBottom:u,itemCount:d,items:h,onFocusChange:m,onSelect:g,onSelectionChange:this.handleSelectionChange,onViewportChange:f,offset:v,ref:this.itemList,renderItem:this.getCachedRenderDraggableItem(t,o,p),rowHeight:C,selectedRanges:b})}))})}}qr(ar,"DEFAULT_ROW_HEIGHT",30);qr(ar,"defaultProps",{className:"",draggingItemClassName:"",offset:0,items:[],rowHeight:ar.DEFAULT_ROW_HEIGHT,isDeselectOnClick:!0,isDoubleClickSelect:!0,isDropDisabled:!1,isDragDisabled:!1,isMultiSelect:!1,isStickyBottom:!1,disableSelect:!1,style:null,onFocusChange(){},onSelect(){},onSelectionChange(){},onViewportChange(){},renderItem:ar.renderItem,selectedRanges:[],draggablePrefix:"draggable-item",droppableId:"droppable-item-list","data-testid":void 0});const Xt=ar;class Li{static reorder(e,t,r,i){var a=e===r?Li.adjustDestinationIndex(i,t):i,o=Li.removeItems(e,t);return r.splice(a,0,...o),o}static removeItems(e,t){for(var r=[],i=t.map((d,h)=>({range:d,index:h})).sort((d,h)=>h.range[0]-d.range[0]),a=0;a<i.length;a+=1){var{range:o,index:s}=i[a],[l,u]=o;r[s]=e.splice(l,u-l+1)}return ld(r)}static adjustDestinationIndex(e,t){for(var r=e,i=0;i<t.length;i+=1){var[a,o]=t[i];if(a>e)break;r-=Math.min(o,e-1)-a+1}return r}static startDragging(){document.documentElement.classList.add("drag-pointer-events-none")}static stopDragging(){document.documentElement.classList.remove("drag-pointer-events-none")}}const Qt=Li;function ts(n){return n.isOn!==void 0}function Qh(n){var{item:e,onSelect:t=()=>{},"data-testid":r}=n,{icon:i,subtitle:a,title:o}=e,s=D.useMemo(()=>ts(e)?()=>{e.onChange(!e.isOn)}:t,[e,t]);return c.jsxs("div",{className:"btn btn-navigation-menu-item","data-testid":"menu-item-".concat(o),onClick:s,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&s()},tabIndex:0,role:"menuitem",children:[i!==void 0&&c.jsx("div",{className:"icon",children:c.jsx(le,{icon:i})}),c.jsx("div",{className:"title",children:o}),a!==void 0&&c.jsx("div",{className:"shortcut",children:a}),c.jsx("div",{className:"accessory","data-testid":r,children:ts(e)?c.jsx(yh,{on:e.isOn,onClick:l=>{l.stopPropagation(),s()}}):c.jsx(le,{icon:Rd})})]})}function uu(n){var{items:e,onSelect:t=()=>{},"data-testid":r}=n;return c.jsx("div",{className:"navigation-menu-view","data-testid":r,children:c.jsx("ul",{className:"navigation-menu-list",children:e.map((i,a)=>c.jsx("li",{children:c.jsx(Qh,{item:i,onSelect:()=>{t(a)}})},i.title))})})}function rs(n){var{children:e,onBack:t,onClose:r,title:i,"data-testid":a}=n;return c.jsxs("div",{className:"navigation-page","data-testid":a,children:[c.jsxs("div",{className:"navigation-title-bar",children:[c.jsx("div",{className:"navigation-left-buttons",children:t!==void 0&&c.jsx(Z,{kind:"ghost",className:"btn-back","data-testid":"btn-page-back",onClick:t,icon:Dd,children:"Back"})}),c.jsx("div",{className:"navigation-title",children:i}),c.jsx("div",{className:"navigation-right-buttons",children:r!==void 0&&c.jsx(Z,{kind:"ghost",className:"btn-close px-2 m-1","data-testid":"btn-page-close",onClick:r,icon:Ki,tooltip:"Close"})})]}),c.jsx("div",{className:"navigation-content",children:e})]})}function Zh(n){var{children:e,"data-testid":t}=n,r=D.useMemo(()=>Ne.Children.toArray(e),[e]),i=co(r),[a,o]=D.useState(r[r.length-1]),[s,l]=D.useState(null),[u,d]=D.useState(null);D.useEffect(function(){if(!(i===void 0||r===i)){var g=r[r.length-1];r.length===i.length||i.length===0||s!==null||u!==null?s!==null&&g!==s?l(g):g!==u&&g!==a&&o(g):r.length>i.length?l(g):r.length<i.length&&(o(g),d(i[i.length-1]))}},[r,i,s,u,a]);var h=D.useCallback(()=>{o(s),l(null)},[s]),v=D.useCallback(()=>{d(null)},[]);return c.jsxs("div",{className:"navigation-stack",children:[c.jsx("div",{className:"main-view","data-testid":t,children:a}),c.jsx(sr,{in:u!=null,timeout:We.transitionMidMs,classNames:"slide-right",onEntered:v,children:c.jsx(c.Fragment,{children:u!=null&&c.jsx("div",{className:"popping-view",children:u})})}),c.jsx(sr,{in:s!=null,timeout:We.transitionMidMs,classNames:"slide-left",onEntered:h,children:c.jsx(c.Fragment,{children:s!=null&&c.jsx("div",{className:"pushing-view",children:s})})})]})}function Jh(n){var{children:e,disabled:t,value:r,"data-testid":i}=n;return c.jsx("option",{value:r,disabled:t,"data-testid":i,children:e})}function fo(n){var{children:e,disabled:t=!1,name:r,onChange:i,value:a="","data-testid":o}=n,[s]=D.useState(r??lr());return c.jsx(c.Fragment,{children:Ne.Children.map(e,l=>{var u,d;return l?Ne.cloneElement(l,{name:s,onChange:(u=l.props.onChange)!==null&&u!==void 0?u:i,checked:a===l.props.value,disabled:(d=l.props.disabled)!==null&&d!==void 0?d:t,"data-testid":o}):null})})}var po=Ne.forwardRef((n,e)=>{var{checked:t,children:r,className:i="",disabled:a=!1,inputClassName:o="",isInvalid:s=!1,labelClassName:l="",name:u,onChange:d,value:h,"data-testid":v}=n,[m]=D.useState(lr());return c.jsxs("div",{className:Q("custom-control custom-radio",i),children:[c.jsx("input",{type:"radio",id:m,"data-testid":v,name:u,ref:e,className:Q("custom-control-input",o,{"is-invalid":s}),checked:t,disabled:a,value:h,onChange:d}),c.jsx("label",{className:Q("custom-control-label",l),htmlFor:m,children:r})]})});po.displayName="RadioItem";po.defaultProps={checked:void 0,className:"",disabled:!1,inputClassName:"",isInvalid:!1,labelClassName:"",name:void 0,onChange:void 0,"data-testid":void 0};const Jr=po;function ec(n){var{children:e,onBlur:t,onChange:r,className:i,defaultValue:a,name:o,value:s,disabled:l,"data-testid":u}=n,d=D.useCallback(h=>{r(h.target.value)},[r]);return c.jsx("select",{className:Q("custom-select",i),onBlur:t,onChange:d,defaultValue:a,value:s,name:o,disabled:l,"data-testid":u,children:e})}function pn(n,e,t){return e=tc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tc(n){var e=rc(n,"string");return typeof e=="symbol"?e:String(e)}function rc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class du extends D.PureComponent{constructor(e){super(e),pn(this,"list",void 0),pn(this,"topRow",void 0),pn(this,"bottomRow",void 0),pn(this,"getCachedItem",ge((t,r,i,a,o,s,l)=>{var u={height:o},d=a??i;return c.jsx("li",{className:"value-list-item",style:u,tabIndex:-1,children:c.jsx(Cr,{checked:s,disabled:l,onChange:()=>this.handleSelect(t),children:d})},r)},{max:1e3})),pn(this,"getCachedItems",ge((t,r,i,a)=>{for(var o=[],s=0;s<t.length;s+=1){var l=t[s],{value:u,displayValue:d,isSelected:h}=l,v=i+s,m=v,g=this.getCachedItem(v,m,u,d,r,h,a);o.push(g)}return o},{max:1})),this.handleBlur=this.handleBlur.bind(this),this.handleScroll=this.handleScroll.bind(this),this.handleSelect=this.handleSelect.bind(this),this.list=Ne.createRef(),this.topRow=null,this.bottomRow=null}componentDidMount(){this.sendViewportUpdate()}componentDidUpdate(){this.sendViewportUpdate()}handleBlur(e){if(!e.relatedTarget||this.list.current&&e.relatedTarget instanceof HTMLElement&&!this.list.current.contains(e.relatedTarget)){var{onBlur:t}=this.props;t?.(e)}}handleScroll(){this.sendViewportUpdate()}handleSelect(e){var{items:t,offset:r,onSelect:i}=this.props,a=e-r;if(a>=0&&a<t.length){var o=t[a],{value:s}=o;i(e,s)}else i(e,null)}sendViewportUpdate(){if(!(!this.list.current||this.list.current.clientHeight===0)){var{onViewportChange:e,rowHeight:t}=this.props,r=this.list.current.scrollTop,i=r+this.list.current.clientHeight,a=Math.floor(r/t),o=Math.ceil(i/t);(this.topRow!==a||this.bottomRow!==o)&&(this.topRow=a,this.bottomRow=o,e(a,o))}}getElement(e){if(this.list.current==null)return null;var t=this.list.current.querySelectorAll(".value-list-item");return t[e]}scrollIntoView(e){var t=this.getElement(e);t?.scrollIntoView({block:"center"})}render(){var{className:e,disabled:t,isInvalid:r,items:i,itemCount:a,offset:o,rowHeight:s,"data-testid":l}=this.props,u=this.getCachedItems(i,s,o,t);return c.jsx("div",{className:Q("select-value-list-scroll-pane h-100 w-100",{"is-invalid":r},e),onBlur:this.handleBlur,onScroll:this.handleScroll,ref:this.list,"data-testid":l,children:c.jsx("div",{className:"select-value-list",style:{height:a*s},children:c.jsx("ol",{className:"select-value-list-content",style:{position:"absolute",height:i.length*s,top:o*s,left:0},children:u})})})}}pn(du,"defaultProps",{disabled:!1,rowHeight:21,onBlur:()=>{},"data-testid":void 0});const nc=du;var Co=Ne.forwardRef((n,e)=>{var{children:t,className:r,disabled:i,id:a,isLinked:o,isLinkedSource:s,isInvalid:l,onClick:u,onMouseEnter:d,onMouseLeave:h,style:v,"data-testid":m}=n;return c.jsxs("button",{ref:e,type:"button",className:Q("btn-socketed",{"btn-socketed-linked":o!==void 0&&o||s},{"btn-socketed-linked-source":s},{"is-invalid":l},r),id:a,onClick:u,onMouseEnter:d,onMouseLeave:h,style:v,disabled:i,"data-testid":m,children:[t,c.jsx(le,{icon:Ql,className:"linked btn-socketed-icon",transform:"down-1"}),c.jsx(le,{icon:Nd,className:"is-invalid btn-socketed-icon"})]})});Co.displayName="SocketedButton";Co.defaultProps={children:void 0,className:"",disabled:!1,id:void 0,isLinked:!1,isLinkedSource:!1,isInvalid:!1,onClick:void 0,onMouseEnter:void 0,onMouseLeave:void 0,style:void 0,"data-testid":void 0};const bS=Co;function ic(n){switch(n){case pe.eq:return"is exactly";case pe.eqIgnoreCase:return"is exactly (ignore case)";case pe.notEq:return"is not exactly";case pe.notEqIgnoreCase:return"is not exactly (ignore case)";case pe.contains:return"contains";case pe.notContains:return"does not contain";case pe.startsWith:return"starts with";case pe.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function ac(n){switch(n){case pe.eq:return"is equal to";case pe.notEq:return"is not equal to";case pe.greaterThan:return"greater than";case pe.greaterThanOrEqualTo:return"greater than or equal to";case pe.lessThan:return"less than";case pe.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function oc(n){switch(n){case pe.eq:return"date is";case pe.notEq:return"date is not";case pe.notEqIgnoreCase:case pe.greaterThan:return"date is after";case pe.greaterThanOrEqualTo:return"date is after or equal";case pe.lessThan:return"date is before";case pe.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function sc(n){switch(n){case pe.isTrue:return"Is True";case pe.isFalse:return"Is False";case pe.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}function lc(n){if(n&&n.formatter){var{formatter:e}=n;return e}}function uc(n){return{timeZone:n?.timeZone,defaultDateTimeFormatString:n?.defaultDateTimeFormat,showTimeZone:n?.showTimeZone,showTSeparator:n?.showTSeparator}}function dc(n,e,t){var r=n.getColumnFormat(t,e);return r!=null&&(r.type===wn.TYPE_CONTEXT_PRESET||r.type===wn.TYPE_CONTEXT_CUSTOM)}const en={getColumnFormats:lc,getDateTimeFormatterOptions:uc,isCustomColumnFormatDefined:dc};function yt(n,e,t){return e=hc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hc(n){var e=cc(n,"string");return typeof e=="symbol"?e:String(e)}function cc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qe{constructor(e){yt(this,"dh",void 0),yt(this,"listeners",void 0),yt(this,"formatter",void 0),yt(this,"rect",void 0),yt(this,"isDownsamplingDisabled",void 0),yt(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}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(qe.EVENT_UPDATED,{detail:e}))}fireDisconnect(){this.fireEvent(new CustomEvent(qe.EVENT_DISCONNECT))}fireReconnect(){this.fireEvent(new CustomEvent(qe.EVENT_RECONNECT))}fireDownsampleStart(e){this.fireEvent(new CustomEvent(qe.EVENT_DOWNSAMPLESTARTED,{detail:e}))}fireDownsampleFinish(e){this.fireEvent(new CustomEvent(qe.EVENT_DOWNSAMPLEFINISHED,{detail:e}))}fireDownsampleFail(e){this.fireEvent(new CustomEvent(qe.EVENT_DOWNSAMPLEFAILED,{detail:e}))}fireDownsampleNeeded(e){this.fireEvent(new CustomEvent(qe.EVENT_DOWNSAMPLENEEDED,{detail:e}))}fireLoadFinished(){this.fireEvent(new CustomEvent(qe.EVENT_LOADFINISHED))}}yt(qe,"EVENT_UPDATED","ChartModel.EVENT_UPDATED");yt(qe,"EVENT_DISCONNECT","ChartModel.EVENT_DISCONNECT");yt(qe,"EVENT_RECONNECT","ChartModel.EVENT_RECONNECT");yt(qe,"EVENT_DOWNSAMPLESTARTED","ChartModel.EVENT_DOWNSAMPLESTARTED");yt(qe,"EVENT_DOWNSAMPLEFINISHED","ChartModel.EVENT_DOWNSAMPLEFINISHED");yt(qe,"EVENT_DOWNSAMPLEFAILED","ChartModel.EVENT_DOWNSAMPLEFAILED");yt(qe,"EVENT_DOWNSAMPLENEEDED","ChartModel.EVENT_DOWNSAMPLENEEDED");yt(qe,"EVENT_LOADFINISHED","ChartModel.EVENT_LOADFINISHED");const gr=qe;function ns(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 gn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ns(Object(t),!0).forEach(function(r){et(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ns(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function et(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=mc(n,"string");return typeof e=="symbol"?e:String(e)}function mc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xn=ye.module("ChartUtils"),is="io.deephaven.time.DateTime",gc=36e5,fc=1e6;function pc(n){return n.asDate!==void 0}function Cc(n){return n.asNumber!==void 0}function as(n){return n.dhTimeZone!==void 0}function bc(n){return n!=null&&n.range!=null&&(n.autorange===!1||n.autorange===void 0)}class J{static getPlotlyErrorBars(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:Yt,a=r.map((s,l)=>s-e[l]),o=t.map((s,l)=>e[l]-s);return{type:"data",symmetric:!1,array:a,arrayminus:o,color:i.error_band_line_color}}static convertNumberPrefix(e){return e.replace(/\u00A4\u00A4/g,"USD").replace(/\u00A4/g,"$")}static getPlotlyNumberFormat(e,t,r){if(!r)return null;var i=r.split(";"),a=i[0].match(/^([^#,0.]*)([#,]*)([0,]*)(\.?)(0*)(#*)(E?0*)(%?)(.*)/);_(a);var[,o,s,l,,u,d,h,v,m]=a,g=l.replace(",","").length,f=s.indexOf(",")>=0||l.indexOf(",")>=0,p=f?",":"",C=h!=null&&h!==""?"e":"f",b=v!==""?v:C,w=u.length+d.length,S="",T="0".concat(g).concat(p,".").concat(w).concat(S).concat(b),y=J.convertNumberPrefix(o),O=J.convertNumberPrefix(m);return{tickformat:T,tickprefix:y,ticksuffix:O,automargin:!0}}static addTickSpacing(e,t,r){var{gapBetweenMajorTicks:i}=t;if(i>0){var a=e||{},o=i;return r&&(o=i/fc),t.log&&(o=Math.log(o)),a.tickmode="linear",a.dtick=o,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 o=i.sources[a];if(o.axis===t)return o}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]:J.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 getChartForSeries(e,t){for(var{charts:r}=e,i=0;i<r.length;i+=1)for(var a=r[i],o=0;o<a.series.length;o+=1)if(t===a.series[o])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],o=e[a];bc(o)&&(t[a]=[...o.range])}return t}static getAxisLayoutProperty(e,t){var r=t>0?"".concat(t+1):"";return"".concat(e??"","axis").concat(r)}static periodToDecimal(e){var t=e.split(":");return Number(t[0])+Number(t[1])/60}static groupArray(e,t){return e.reduce((r,i)=>{var a,o=i[t],s=(a=r.get(o))!==null&&a!==void 0?a:[];return s.push(i),r.set(o,s),r},new Map)}static getColorwayFromTheme(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Yt,t=[];return e.colorway&&(Array.isArray(e.colorway)?t=e.colorway:typeof e.colorway=="string"?t=e.colorway.split(" "):xn.warn("Unable to handle colorway property: ".concat(e.colorway))),t}static titleFromSettings(e){var{series:t,xAxis:r,title:i="".concat((t??[]).join(", ")," by ").concat(r)}=e;return i}constructor(e){et(this,"dh",void 0),et(this,"daysOfWeek",void 0),this.dh=e,this.daysOfWeek=Object.freeze(e.calendar.DayOfWeek.values())}getAxisFormats(e,t){for(var r=this,i=new Map,a={tickformat:null,ticksuffix:null},o=J.getAllAxes(e),s=J.groupArray(o,"type"),{charts:l}=e,u=0;u<l.length;u+=1)for(var d=l[u],h=0;h<d.series.length;h+=1)for(var v=d.series[h],{sources:m}=v,g=m.filter(b=>b.axis),f=function(){var w=g[p],{axis:S}=w,{type:T}=S,y=s.get(T);_(y);var O=y.indexOf(S),R=r.getAxisPropertyName(T);if(R!=null){var E=J.getAxisLayoutProperty(R,O);if(i.has(E))xn.debug("".concat(E," already added."));else{xn.debug("Adding ".concat(E," to axisFormats."));var P=r.getPlotlyAxisFormat(w,t);if(P===null)i.set(E,a);else{i.set(E,P);var{businessCalendar:x}=S;if(x!=null){var I=[],{businessPeriods:N,businessDays:L,holidays:F,timeZone:k}=x,H=t?.getColumnTypeFormatter(is),W;as(H)&&(W=H.dhTimeZone);var z=W?(k.standardOffset-W.standardOffset)/60:0;F.length>0&&I.push(...r.createRangeBreakValuesFromHolidays(F,k,W)),N.forEach(Y=>I.push({pattern:"hour",bounds:[J.periodToDecimal(Y.close)+z,J.periodToDecimal(Y.open)+z]})),L.length<r.daysOfWeek.length&&r.createBoundsFromDays(L).forEach(Y=>I.push({pattern:"day of week",bounds:Y})),P.rangebreaks=I}if(i.size===d.axes.length)return{v:i}}}}},p=0;p<g.length;p+=1){var C=f();if(typeof C=="object")return C.v}return i}getPlotlyChartType(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.SCATTER:return t?"scatter":"scattergl";case r.plot.SeriesPlotStyle.LINE:return"scatter";case r.plot.SeriesPlotStyle.BAR:case r.plot.SeriesPlotStyle.STACKED_BAR:return"bar";case r.plot.SeriesPlotStyle.PIE:return"pie";case r.plot.SeriesPlotStyle.TREEMAP:return"treemap";case r.plot.SeriesPlotStyle.HISTOGRAM:return"histogram";case r.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(J.MODE_LINES),(r??!0)&&a.add(J.MODE_MARKERS);break;case i.plot.SeriesPlotStyle.LINE:(t??!0)&&a.add(J.MODE_LINES),(r??!1)&&a.add(J.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?J.ORIENTATION.HORIZONTAL:J.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]:Yt,{name:o,isLinesVisible:s,isShapesVisible:l,plotStyle:u,lineColor:d,shapeColor:h,sources:v,shape:m,shapeSize:g}=e,f=v.some(S=>{var T;return(T=S.axis)===null||T===void 0?void 0:T.businessCalendar}),p=this.getChartType(u,f),C=this.getPlotlyChartMode(u,s??void 0,l??void 0),b=this.getPlotlySeriesOrientation(e),w=J.makeSeriesData(p,C,o,i,b);return this.addSourcesToSeriesData(w,u,v,t),this.addStylingToSeriesData(w,u,a,d,h,m,g,r),w}addSourcesToSeriesData(e,t,r,i){for(var a=e,o=0;o<r.length;o+=1){var s=r[o],{axis:l,type:u}=s,d=this.getPlotlyProperty(t,u);ql(a,d,[]);var h=l!=null?this.getAxisPropertyName(l.type):null;if(h!=null){var v=i.get(l.type);if(v){var m=v.indexOf(l),g=m>0?"".concat(m+1):"";a["".concat(h,"axis")]="".concat(h).concat(g)}}}}addStylingToSeriesData(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Yt,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:null,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:null,s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:null,l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:null,{dh:u}=this,d=e;if(d.marker={line:{}},d.line={width:1},t===u.plot.SeriesPlotStyle.AREA?d.fill="tozeroy":t===u.plot.SeriesPlotStyle.STACKED_AREA?d.stackgroup="stack":t===u.plot.SeriesPlotStyle.STEP?d.line.shape="hv":t===u.plot.SeriesPlotStyle.HISTOGRAM?(d.width=[],d.marker.line!==void 0&&Object.assign(d.marker.line,{color:r.paper_bgcolor,width:1})):t===u.plot.SeriesPlotStyle.OHLC?(d.increasing={line:{color:r.ohlc_increasing}},d.decreasing={line:{color:r.ohlc_decreasing}}):t===u.plot.SeriesPlotStyle.PIE?(d.textinfo="label+percent",d.outsidetextfont={color:r.title_color}):t===u.plot.SeriesPlotStyle.TREEMAP&&(d.hoverinfo="text",d.textinfo="label+text",d.tiling={packing:"squarify",pad:0},d.textposition="middle center",d.outsidetextfont={color:r.title_color}),i!=null&&(t===u.plot.SeriesPlotStyle.BAR?d.marker.color=i:d.line.color=i),a!=null&&(d.marker.color=a),o!=null&&o.length>0)try{d.marker.symbol=J.getMarkerSymbol(o)}catch(h){xn.warn("Unable to handle shape",o,":",h)}s!=null&&(d.marker.size=s*J.DEFAULT_MARKER_SIZE),l!=null&&t!==u.plot.SeriesPlotStyle.PIE&&(d.visible=l)}getChartType(e,t){var{dh:r}=this;switch(e){case r.plot.SeriesPlotStyle.HISTOGRAM:return"bar";default:return this.getPlotlyChartType(e,t)}}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,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Yt,s=e,l=J.getAllAxes(t),u=0;u<t.charts.length;u+=1){var d=t.charts[u],h=r?.(d),v=this.getChartBounds(t,d,i,a);this.updateLayoutAxes(s,d.axes,l,i,a,v,h,o)}this.removeStaleAxes(s,l)}getChartBounds(e,t,r,i){var a,{dh:o}=this,{cols:s,rows:l}=e,{column:u,colspan:d,row:h,rowspan:v}=t,m=u+d,g=h+v,f=1/s,p=1/l,C=J.AXIS_SIZE_PX/r,b=J.AXIS_SIZE_PX/i,w={bottom:(l-g)*p+(g<l?b/2:0),top:(l-h)*p-(h>0?b/2:0),left:u*f+(u>0?C/2:0),right:m*f-(m<s?C/2:0)},S=J.groupArray(t.axes,"position"),T=(a=S.get(o.plot.AxisPosition.RIGHT))!==null&&a!==void 0?a:[];return T.length>0&&(r>0?w.right-=(w.right-w.left)*Math.max(0,Math.min(J.LEGEND_WIDTH_PX/r,J.MAX_LEGEND_SIZE)):w.right-=(w.right-w.left)*J.DEFAULT_AXIS_SIZE),w}getPlotlyDateFormat(e,t,r){var{dh:i}=this,a=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",""),o,s=e?.getColumnTypeFormatter(t);return s!=null&&as(s)&&s.dhTimeZone!=null&&s.showTimeZone&&(o=i.i18n.DateTimeFormat.format(" z",new Date,s.dhTimeZone)),{tickformat:a,ticksuffix:o,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:o}=i,s=null;return j.isDateType(a)?(s=this.getPlotlyDateFormat(t,a,o),s=J.addTickSpacing(s,i,!0)):j.isNumberType(a)&&(s=J.getPlotlyNumberFormat(t,a,o),s=J.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,o=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,l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:Yt,{dh:u}=this,d=i>0?Math.max(J.MIN_AXIS_SIZE,Math.min(J.AXIS_SIZE_PX/a,J.MAX_AXIS_SIZE)):J.DEFAULT_AXIS_SIZE,h=a>0?Math.max(J.MIN_AXIS_SIZE,Math.min(J.AXIS_SIZE_PX/i,J.MAX_AXIS_SIZE)):J.DEFAULT_AXIS_SIZE,v=e,m=J.groupArray(t,"position"),g=J.groupArray(t,"type"),f=[...g.keys()],p=J.groupArray(r,"type"),C=0;C<f.length;C+=1){var b=f[C],w=this.getAxisPropertyName(b);if(w!=null){var S=g.get(b),T=p.get(b),y=b===u.plot.AxisType.Y,O=y?a:i;_(S),_(T);for(var R=0;R<S.length;R+=1){var E=S[R],P=T.indexOf(E),x=J.getAxisLayoutProperty(w,P);v[x]==null&&(v[x]=this.makeLayoutAxis(b,l));var I=v[x];if(I!=null){this.updateLayoutAxis(I,E,R,m,d,h,o);var{range:N,autorange:L}=I;if(s!=null&&N!==void 0&&(L===void 0||L===!1)){var F=s(E),[k,H]=F(N);xn.debug("Setting downsample range",O,k,H),E.range(O,k,H)}else E.range(O)}}}}}removeStaleAxes(e,t){for(var r=e,i=J.groupArray(t,"type"),a=[...i.keys()],o=0;o<a.length;o+=1){var s=a[o],l=i.get(s);_(l);var u=l.length,d=this.getAxisPropertyName(s);if(d!=null)for(var h=J.getAxisLayoutProperty(d,u);r[h]!=null;)delete r[h],u+=1,h=J.getAxisLayoutProperty(d,u)}}updateLayoutAxis(e,t,r,i,a,o,s){var l,{dh:u}=this,d=t.type===u.plot.AxisType.Y,h=d?o:a,v=e,m=(l=t.label)!==null&&l!==void 0?l:"";if(v.title!==void 0&&typeof v.title!="string"?v.title.text=m:v.title={text:m},t.log&&(v.type="log"),v.side=this.getAxisSide(t.position),r>0){var g,f;v.overlaying=(g=this.getAxisPropertyName(t.type))!==null&&g!==void 0?g:void 0;var p=(f=i.get(t.position))!==null&&f!==void 0?f:[],C=p.indexOf(t);C>0&&(v.anchor="free",t.position===u.plot.AxisPosition.RIGHT?v.position=s.right+(C-p.length+1)*h:t.position===u.plot.AxisPosition.TOP?v.position=s.top+(C-p.length+1)*h:t.position===u.plot.AxisPosition.BOTTOM?v.position=s.bottom+(p.length-C+1)*h:t.position===u.plot.AxisPosition.LEFT&&(v.position=s.left+(p.length-C+1)*h))}else if(t.type===u.plot.AxisType.X){var b=i.get(u.plot.AxisPosition.LEFT)||[],w=i.get(u.plot.AxisPosition.RIGHT)||[],S=Math.max(s.left,s.left+(b.length-1)*o),T=Math.min(s.right-(w.length-1)*o,s.right);v.domain=[S,T]}else if(t.type===u.plot.AxisType.Y){var y=i.get(u.plot.AxisPosition.BOTTOM)||[],O=i.get(u.plot.AxisPosition.TOP)||[],R=Math.max(s.bottom,s.bottom+(y.length-1)*a),E=Math.min(s.top-(O.length-1)*a,s.top);v.domain=[R,E]}}createBoundsFromDays(e){var t=e.map(o=>this.daysOfWeek.indexOf(o)),r=this.daysOfWeek.filter(o=>!e.includes(o)).map(o=>this.daysOfWeek.indexOf(o)),i=new Set;r.forEach(o=>{for(var s=o+1;s<o+this.daysOfWeek.length;s+=1){var l=s%this.daysOfWeek.length;if(t.includes(l)){i.add(l);break}}});var a=[];return i.forEach(o=>{for(var s=o-1;s>o-this.daysOfWeek.length;s-=1){var l=s<0?s+this.daysOfWeek.length:s;if(t.includes(l)){var u=(l+1)%7;a.push([u,o]);break}}}),a}createRangeBreakValuesFromHolidays(e,t,r){var i=[],a=[];return e.forEach(o=>{o.businessPeriods.length>0?a.push(...this.createPartialHoliday(o,t,r)):i.push(this.createFullHoliday(o,t,r))}),[{values:i},...a]}createFullHoliday(e,t,r){return this.adjustDateForTimeZone("".concat(e.date.toString()," 00:00:00.000000"),t,r)}createPartialHoliday(e,t,r){var i=e.date.toString(),a=["00:00"];e.businessPeriods.forEach(v=>{a.push(v.open),a.push(v.close)}),a.push("24:00");for(var o=[],s=0;s<a.length;s+=2){var l=a[s],u=a[s+1];if(l!==u){var d=[this.adjustDateForTimeZone("".concat(i," ").concat(l,":00.000000"),t,r)],h=gc*(J.periodToDecimal(u)-J.periodToDecimal(l));o.push({values:d,dvalue:h})}}return o}adjustDateForTimeZone(e,t,r){return r&&r.standardOffset!==t.standardOffset?this.unwrapValue(this.wrapValue(e,is,t),r):e}makeFigureSettings(e,t){var{dh:r}=this,{series:i,xAxis:a,type:o}=e,s=J.titleFromSettings(e),l={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:[l,u],series:(i??[]).map(d=>({plotStyle:"".concat(o),name:d,dataSources:[{type:"".concat(r.plot.SourceType.X),columnName:a??"",axis:l,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(pc(e))return r.i18n.DateTimeFormat.format(J.DATE_FORMAT,e,t);if(Cc(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(j.isDateType(t)&&typeof e=="string"){var a=e,o=J.DATE_FORMAT.substr(0,e.length),s=i.i18n.DateTimeFormat.parse(o,a);if(!r)return s;var l="".concat(o," Z"),u=i.i18n.DateTimeFormat.format("Z",s,r),d=i.i18n.DateTimeFormat.parse(l,"".concat(a," ").concat(u)),h=i.i18n.DateTimeFormat.format("Z",d,r);return i.i18n.DateTimeFormat.parse(l,"".concat(a," ").concat(h))}return e}makeLayoutAxis(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Yt,{dh:r}=this,i={automargin:!0,gridcolor:t.gridcolor,linecolor:t.linecolor,rangeslider:{visible:!1},showline:!0,ticklen:5,tickcolor:t.paper_bgcolor,tickfont:{color:t.zerolinecolor},title:{font:{color:t.title_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}makeDefaultLayout(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Yt,{dh:t}=this,r=gn(gn({},e),{},{autosize:!0,colorway:J.getColorwayFromTheme(e),font:{family:"'Fira Sans', sans-serif",color:e.title_color},title:{font:{color:e.title_color},yanchor:"top",pad:gn({},J.DEFAULT_TITLE_PADDING),y:1},legend:{font:{color:e.title_color}},margin:gn({},J.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(t.plot.AxisType.Z,e)}});return r.datarevision=0,r}hydrateSettings(e){var{dh:t}=this;return gn(gn({},e),{},{type:e.type!=null?t.plot.SeriesPlotStyle[e.type]:void 0})}}et(J,"DEFAULT_AXIS_SIZE",.15);et(J,"MIN_AXIS_SIZE",.025);et(J,"MAX_AXIS_SIZE",.2);et(J,"AXIS_SIZE_PX",75);et(J,"LEGEND_WIDTH_PX",50);et(J,"MAX_LEGEND_SIZE",.25);et(J,"ORIENTATION",Object.freeze({HORIZONTAL:"h",VERTICAL:"v"}));et(J,"DATE_FORMAT","yyyy-MM-dd HH:mm:ss.SSSSSS");et(J,"DEFAULT_MARGIN",Object.freeze({l:60,r:50,t:30,b:60,pad:0}));et(J,"DEFAULT_TITLE_PADDING",Object.freeze({t:8}));et(J,"SUBTITLE_LINE_HEIGHT",25);et(J,"DEFAULT_MARKER_SIZE",6);et(J,"MODE_MARKERS","markers");et(J,"MODE_LINES","lines");const lt=J;function os(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 ss(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?os(Object(t),!0).forEach(function(r){ut(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):os(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ut(n,e,t){return e=wc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wc(n){var e=Sc(n,"string");return typeof e=="symbol"?e:String(e)}function Sc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Er=ye.module("Chart");class Qr extends D.Component{static convertIcon(e){var[t,,,,r]=e.icon,i="".concat(r);return{width:t,path:i,ascent:t,descent:0,transform:"matrix(1, 0, 0, 1, 0, 0)"}}static downsampleButtonTitle(e,t){return e?"Downsampling in progress...":t?"Downsampling disabled, click to enable":"Downsampling enabled, click to disable"}static downsampleButtonAttr(e,t){return e?"animation-spin":t?void 0:"fill-active"}constructor(e){super(e),ut(this,"currentSeries",void 0),ut(this,"PlotComponent",void 0),ut(this,"plot",void 0),ut(this,"plotWrapper",void 0),ut(this,"columnFormats",void 0),ut(this,"dateTimeFormatterOptions",void 0),ut(this,"decimalFormatOptions",void 0),ut(this,"integerFormatOptions",void 0),ut(this,"rect",void 0),ut(this,"ranges",void 0),ut(this,"isSubscribed",void 0),ut(this,"isLoadedFired",void 0),ut(this,"getCachedConfig",Be((t,r,i,a,o)=>{var s=[],l=!!t;if(l&&s.push({name:"Downsampling failed: ".concat(t),title:"Downsampling failed",click:()=>{},icon:Qr.convertIcon(Zl),attr:"fill-warning"}),r||i||a||l){var u=Qr.downsampleButtonTitle(i,a),d=Qr.downsampleButtonAttr(i,a),h=i?Pd:Fd;s.push({name:u,title:"Downsampling status",icon:Qr.convertIcon(h),click:this.handleDownsampleClick,attr:d})}var v=o.some(p=>{var{type:C}=p;return C!=null&&!C.includes("3d")}),m=o.some(p=>{var{type:C}=p;return C!=null&&C.includes("3d")}),g=["zoomIn2d","zoomOut2d","autoScale2d","resetScale2d"],f=["orbitRotation","tableRotation","resetCameraDefault3d"];return{displaylogo:!1,displayModeBar:i||l?!0:"hover",modeBarButtons:[s,["toImage"],["zoom2d","pan2d"],[...v?g:[],...m?f:[]]]}})),this.handleAfterPlot=this.handleAfterPlot.bind(this),this.handleDownsampleClick=this.handleDownsampleClick.bind(this),this.handleModelEvent=this.handleModelEvent.bind(this),this.handlePlotUpdate=this.handlePlotUpdate.bind(this),this.handleRelayout=this.handleRelayout.bind(this),this.handleRestyle=this.handleRestyle.bind(this),this.PlotComponent=Ch(e.Plotly),this.plot=Ne.createRef(),this.plotWrapper=Ne.createRef(),this.columnFormats=[],this.dateTimeFormatterOptions={},this.decimalFormatOptions={},this.integerFormatOptions={},this.isSubscribed=!1,this.isLoadedFired=!1,this.currentSeries=0,this.state={data:null,downsamplingError:null,isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,layout:{datarevision:0},revision:0}}componentDidMount(){this.updateDimensions(),this.updateModelDimensions(),this.initData(),this.initFormatter();var{isActive:e,model:t}=this.props;e&&this.subscribe(t)}componentDidUpdate(e){var{isActive:t,model:r,settings:i}=this.props;this.updateFormatterSettings(i),r!==e.model&&(this.unsubscribe(e.model),this.subscribe(r)),t!==e.isActive&&(t?this.subscribe(r):this.unsubscribe(r))}componentWillUnmount(){var{model:e}=this.props;this.unsubscribe(e)}getPlotRect(){var e,t;return(e=(t=this.plotWrapper.current)===null||t===void 0?void 0:t.getBoundingClientRect())!==null&&e!==void 0?e:null}initData(){var{model:e}=this.props,{layout:t}=this.state;this.setState({data:e.getData(),layout:ss(ss({},t),e.getLayout())})}subscribe(e){if(!this.isSubscribed){if(!this.rect||this.rect.width===0||this.rect.height===0){Er.debug2("Delaying subscription until model dimensions are set");return}e.subscribe(this.handleModelEvent),this.isSubscribed=!0}}unsubscribe(e){this.isSubscribed&&(e.unsubscribe(this.handleModelEvent),this.isSubscribed=!1)}handleAfterPlot(){this.plot.current!=null}handleDownsampleClick(){this.setState(e=>{var{isDownsamplingDisabled:t}=e;return{downsamplingError:null,isDownsampleInProgress:!1,isDownsampleFinished:!1,isDownsamplingDisabled:!t}},()=>{var{model:e}=this.props,{isDownsamplingDisabled:t}=this.state;e.setDownsamplingDisabled(t)})}handleModelEvent(e){var{type:t,detail:r}=e;switch(Er.debug2("Received data update",t,r),t){case gr.EVENT_UPDATED:{this.currentSeries+=1,this.setState(h=>{var{layout:v,revision:m}=h;return typeof v.datarevision=="number"&&(v.datarevision+=1),{data:r,layout:v,revision:m+1}});var{onUpdate:i}=this.props;i({isLoading:!this.isLoadedFired});break}case gr.EVENT_LOADFINISHED:{var{onUpdate:a}=this.props;this.isLoadedFired=!0,a({isLoading:!1});break}case gr.EVENT_DISCONNECT:{var{onDisconnect:o}=this.props;o();break}case gr.EVENT_RECONNECT:{var{onReconnect:s}=this.props;s();break}case gr.EVENT_DOWNSAMPLESTARTED:{this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!0,downsamplingError:null});break}case gr.EVENT_DOWNSAMPLEFINISHED:{this.setState({isDownsampleFinished:!0,isDownsampleInProgress:!1,downsamplingError:null});break}case gr.EVENT_DOWNSAMPLENEEDED:case gr.EVENT_DOWNSAMPLEFAILED:{var l,u=(l=r.message)!==null&&l!==void 0?l:r;this.setState({isDownsampleFinished:!1,isDownsampleInProgress:!1,isDownsamplingDisabled:!1,downsamplingError:u});var{onError:d}=this.props;d(new Error(u));break}default:Er.debug("Unknown event type",t,e)}}handlePlotUpdate(e){var{layout:t}=e,r=lt.getLayoutRanges(t),i=!nt(r,this.ranges);i&&(this.ranges=r,this.updateModelDimensions(!0))}handleRelayout(e){if(Er.debug("handleRelayout",e),e.hiddenlabels!=null){var{onSettingsChanged:t}=this.props,r=[...e.hiddenlabels];t({hiddenSeries:r})}this.updateModelDimensions()}handleRestyle(e){var[t,r]=e;if(Er.debug("handleRestyle",t,r),Object.keys(t).includes("visible")){var{data:i}=this.state,{onSettingsChanged:a}=this.props;if(i!=null){var o=i.reduce((s,l)=>{var{name:u,visible:d}=l;return u!=null&&d==="legendonly"?[...s,u]:s},[]);a({hiddenSeries:o})}}}updateModelDimensions(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,t=this.getPlotRect();if(!t){Er.warn("Unable to get plotting rect");return}var r=!this.rect||this.rect.width!==t.width||this.rect.height!==t.height;if(r||e){this.rect=t;var{isActive:i,model:a}=this.props;a.setDimensions(t),i&&this.subscribe(a)}}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}updateFormatterSettings(e){var t=en.getColumnFormats(e),r=en.getDateTimeFormatterOptions(e),{decimalFormatOptions:i={},integerFormatOptions:a={}}=e;(!nt(this.columnFormats,t)||!nt(this.dateTimeFormatterOptions,r)||!nt(this.decimalFormatOptions,i)||!nt(this.integerFormatOptions,a))&&(this.columnFormats=en.getColumnFormats(e),this.dateTimeFormatterOptions=r,this.decimalFormatOptions=i,this.integerFormatOptions=a,this.updateFormatter())}updateFormatter(){var{model:e}=this.props,t=new Hr(e.dh,this.columnFormats,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions);e.setFormatter(t)}updateDimensions(){var e=this.getPlotRect(),{Plotly:t}=this.props;this.plot.current!=null&&e!=null&&e.width>0&&e.height>0&&t.relayout(this.plot.current.el,{autosize:!0}).catch(r=>{Er.debug("Unable to resize, promise rejected",r)})}render(){var{PlotComponent:e}=this,{data:t,downsamplingError:r,isDownsampleFinished:i,isDownsampleInProgress:a,isDownsamplingDisabled:o,layout:s,revision:l}=this.state,u=this.getCachedConfig(r,i,a,o,t??[]),d=t!=null;return c.jsx("div",{className:"h-100 w-100 chart-wrapper",ref:this.plotWrapper,children:d&&c.jsx(e,{ref:this.plot,data:t,layout:s,revision:l,config:u,onAfterPlot:this.handleAfterPlot,onError:Er.error,onRelayout:this.handleRelayout,onUpdate:this.handlePlotUpdate,onRestyle:this.handleRestyle,useResizeHandler:!0,style:{height:"100%",width:"100%"}})})}}ut(Qr,"defaultProps",{isActive:!0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Sn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,formatter:[]},Plotly:bh,onDisconnect:()=>{},onReconnect:()=>{},onUpdate:()=>{},onError:()=>{},onSettingsChanged:()=>{}});const wS=Qr;function ls(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 us(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ls(Object(t),!0).forEach(function(r){_e(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ls(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function _e(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=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 it=ye.module("FigureChartModel");class qi extends gr{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:Yt;super(e),r=this,_e(this,"chartUtils",void 0),_e(this,"dh",void 0),_e(this,"figure",void 0),_e(this,"settings",void 0),_e(this,"theme",void 0),_e(this,"data",void 0),_e(this,"layout",void 0),_e(this,"seriesDataMap",void 0),_e(this,"pendingSeries",void 0),_e(this,"oneClicks",void 0),_e(this,"filterColumnMap",void 0),_e(this,"lastFilter",void 0),_e(this,"isConnected",void 0),_e(this,"seriesToProcess",void 0),_e(this,"addPendingSeries",Jt(()=>{for(var s=lt.getAllAxes(this.figure),{pendingSeries:l}=this,u=function(){var v,m=l[d],g=r.figure.charts.find(f=>f.series.includes(m));r.addSeries(m,s,(v=g?.showLegend)!==null&&v!==void 0?v:null),m.subscribe()},d=0;d<l.length;d+=1)u();this.pendingSeries=[]},qi.ADD_SERIES_DEBOUNCE)),_e(this,"getTimeZone",ge((s,l)=>{if(l!=null){var u=l.getColumnTypeFormatter(s);if(u!=null)return u.dhTimeZone}})),_e(this,"getValueTranslator",ge((s,l)=>{var u=this.getTimeZone(s,l);return d=>this.chartUtils.unwrapValue(d,u)})),_e(this,"getValueParser",ge((s,l)=>{var u=this.getTimeZone(s,l);return d=>this.chartUtils.wrapValue(d,s,u)})),_e(this,"getRangeParser",ge((s,l)=>u=>{var[d,h]=u,v=this.getValueParser(s,l);return d=v(d),h=v(h),[d,h]})),_e(this,"getAxisRangeParser",ge((s,l)=>u=>{var d=lt.getSourceForAxis(s,u);return d!=null?this.getRangeParser(d.columnType,l):h=>h})),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 lt(e),this.figure=t,this.settings=i,this.theme=a,this.data=[];var o={data:{},layout:this.chartUtils.makeDefaultLayout(a)};this.layout={grid:{rows:t.rows,columns:t.cols,pattern:"independent"},template:o},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.charts.length>0){var e=this.figure.charts[0];return e.title}return""}initAllSeries(){this.oneClicks=[],this.filterColumnMap.clear();for(var{charts:e}=this.figure,t=lt.getAllAxes(this.figure),r=[],i=0;i<e.length;i+=1)for(var a=e[i],o=0;o<a.series.length;o+=1){var s=a.series[o];r.push(s.name),this.addSeries(s,t,a.showLegend)}for(var l=[...this.seriesDataMap.keys()],u=l.filter(v=>r.indexOf(v)<0),d=0;d<u.length;d+=1){var h=u[d];this.seriesDataMap.delete(h)}this.seriesToProcess=new Set([...this.seriesDataMap.keys()])}addSeries(e,t,r){var{dh:i}=this,a=lt.groupArray(t,"type"),o=this.chartUtils.makeSeriesDataFromSeries(e,a,lt.getSeriesVisibility(e.name,this.settings),r,this.theme);if(this.seriesDataMap.set(e.name,o),this.data=[...this.seriesDataMap.values()],e.plotStyle===i.plot.SeriesPlotStyle.STACKED_BAR?this.layout.barmode="stack":e.plotStyle===i.plot.SeriesPlotStyle.PIE&&(this.layout.hiddenlabels=lt.getHiddenLabels(this.settings)),this.layout.showlegend=this.data.length>1||e.plotStyle===i.plot.SeriesPlotStyle.PIE?r??void 0:!1,e.oneClick!=null){for(var{oneClick:s}=e,{columns:l}=s,u=0;u<l.length;u+=1)this.filterColumnMap.set(l[u].name,l[u]);this.oneClicks.push(s)}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){it.debug("Ignoring subscribe when figure in disconnected state");return}this.figure.subscribe(this.isDownsamplingDisabled?this.dh.plot.DownsampleOptions.DISABLE:this.dh.plot.DownsampleOptions.DEFAULT)}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){it.debug("Downsample started",e),this.fireDownsampleStart(e.detail)}handleDownsampleFinish(e){it.debug("Downsample finished",e),this.fireDownsampleFinish(e.detail)}handleDownsampleFail(e){it.error("Downsample failed",e),this.fireDownsampleFail(e.detail)}handleDownsampleNeeded(e){it.info("Downsample needed",e),this.fireDownsampleNeeded(e.detail)}handleFigureUpdated(e){var{detail:t}=e,{series:r}=t;it.debug2("handleFigureUpdated",r);for(var i=0;i<r.length;i+=1){var a=r[i];it.debug2("handleFigureUpdated updating series",a.name);for(var{sources:o}=a,s=0;s<o.length;s+=1){var l=o[s],{columnType:u,type:d}=l,h=this.getValueTranslator(u,this.formatter),v=t.getArray(a,d,h);this.setDataArrayForSeries(a,d,v)}this.seriesToProcess.delete(a.name),this.seriesToProcess.size===0&&this.fireLoadFinished(),this.cleanSeries(a)}var{data:m}=this;this.fireUpdate(m)}handleRequestFailed(e){it.error("Request failed",e)}resubscribe(){this.listeners.length>0&&(this.unsubscribeFigure(),this.subscribeFigure())}setFormatter(e){super.setFormatter(e),this.updateLayoutFormats(),this.resubscribe()}setDownsamplingDisabled(e){super.setDownsamplingDisabled(e),this.resubscribe()}handleFigureDisconnected(e){it.debug("Figure disconnected",e),this.isConnected=!1,this.listeners.length>0&&this.unsubscribeFigure(),this.fireDisconnect()}handleFigureReconnected(e){it.debug("Figure reconnected",e),this.isConnected=!0,this.initAllSeries(),this.fireReconnect(),this.listeners.length>0&&this.subscribeFigure()}handleFigureSeriesAdded(e){var{detail:t}=e;it.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=lt.DEFAULT_MARGIN.t+i*lt.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=us({},this.layout.title),this.layout.title.text=e,this.layout.title.pad=us({},this.layout.title.pad),this.layout.title.pad.t=lt.DEFAULT_TITLE_PADDING.t+i*lt.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,this.theme)}updateLayoutFormats(){if(this.formatter){var e=this.chartUtils.getAxisFormats(this.figure,this.formatter);e.forEach((t,r)=>{it.debug("Assigning ".concat(r),this.layout[r],t);var i=this.layout[r];i!=null?Object.assign(i,t):it.debug("Ignoring null layout.".concat(r))})}}setDataArrayForSeries(e,t,r){var{name:i,plotStyle:a}=e,o=this.seriesDataMap.get(i),s=this.chartUtils.getPlotlyProperty(a,t);o&&ql(o,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:o,xHigh:s}=a;if(o&&s&&o.length===s.length){for(var l=[],u=0;u<o.length;u+=1)l.push(s[u]-o[u]);a.width=l}}else if(i===t.plot.SeriesPlotStyle.LINE||i===t.plot.SeriesPlotStyle.ERROR_BAR||i===t.plot.SeriesPlotStyle.BAR){var{x:d,xLow:h,xHigh:v,y:m,yLow:g,yHigh:f}=a;h&&v&&h!==d&&(a.error_x=lt.getPlotlyErrorBars(d,h,v)),g&&f&&g!==m&&(a.error_y=lt.getPlotlyErrorBars(m,g,f))}else if(i===t.plot.SeriesPlotStyle.TREEMAP){var{ids:p,labels:C}=a;p!==void 0&&C===void 0&&(a.labels=p)}}}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){it.warn("Trying to set a filter, but no one click!");return}it.debug("setFilter",e);for(var r=function(){var o=t.oneClicks[i],{columns:s}=o,l=new Set([...e.keys(),...t.lastFilter.keys()]);l.forEach(u=>{var d=e.get(u);t.lastFilter.get(u)!==d&&s.find(h=>h.name===u)!=null&&o.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}}_e(qi,"ADD_SERIES_DEBOUNCE",50);const ds=qi;function hs(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function Ra(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){hs(a,r,i,o,s,"next",l)}function s(l){hs(a,r,i,o,s,"throw",l)}o(void 0)})}}class bo{static makeModelFromSettings(e,t,r){var i=arguments;return Ra(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:Yt,o=yield bo.makeFigureFromSettings(e,t,r);return new ds(e,o,t,a)})()}static makeFigureFromSettings(e,t,r){return Ra(function*(){var i=yield r.copy();return i.applyCustomColumns(r.customColumns),i.applyFilter(r.filter),i.applySort(r.sort),e.plot.Figure.create(new lt(e).makeFigureSettings(t,i))})()}static makeModel(e,t,r){var i=arguments;return Ra(function*(){var a=i.length>3&&i[3]!==void 0?i[3]:Yt;return new ds(e,r,t,a)})()}}const SS=bo;function yS(n){return n.setFigure!==void 0}function Ec(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=Rc(n,"string");return typeof e=="symbol"?e:String(e)}function Rc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Dc extends Error{constructor(){super(...arguments),Ec(this,"isAssertionFailed",!0)}}const hu=Dc;function cs(n){if(n==null)throw new hu("Expected 'val' to be defined, but received ".concat(n))}function Nc(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=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 Ic extends Error{constructor(){super(...arguments),Nc(this,"isPasteError",!0)}}const Da=Ic;function Le(n){return n?.isEditable!==void 0}function vs(n){if(!Le(n))throw new hu("Expected 'model' to be editable, but received ".concat(n))}function Fe(n){return n?.hasExpandableRows!==void 0}function Un(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=xc(n,"string");return typeof e=="symbol"?e:String(e)}function xc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ht;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(Ht||(Ht={}));class B{static normalize(e,t,r,i){var a=e,o=t,s=r,l=i;return a!=null&&s!=null&&s<a&&(a=s,s=e),o!=null&&l!=null&&l<o&&(o=l,l=t),[a,o,s,l]}static makeNormalized(e,t,r,i){return new B(...B.normalize(e,t,r,i))}static makeCell(e,t){return new B(e,t,e,t)}static makeColumn(e){return new B(e,null,e,null)}static makeRow(e){return new B(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],o=t.length-1;o>i;o-=1){var s=t[o];if(a.contains(s))t.splice(o,1);else if(s.contains(a)){r=!0,t[i]=s,t.splice(o,1);break}else if(a.startRow===s.startRow&&a.endRow===s.endRow){if(a.touches(s)){var{startRow:l,endRow:u}=a,d=B.minOrNull(a.startColumn,s.startColumn),h=B.maxOrNull(a.endColumn,s.endColumn);r=!0,t[i]=new B(d,l,h,u),t.splice(o,1);break}}else if(a.startColumn===s.startColumn&&a.endColumn===s.endColumn&&a.touches(s)){var{startColumn:v,endColumn:m}=a,g=B.minOrNull(a.startRow,s.startRow),f=B.maxOrNull(a.endRow,s.endRow);r=!0,t[i]=new B(v,g,m,f),t.splice(o,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,o,s,l;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:h,endRow:v}=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,v=v!=null&&t.endRow!=null?Math.min(v,t.endRow):(o=v)!==null&&o!==void 0?o:t.endRow,u!=null&&u>((s=h)!==null&&s!==void 0?s:-1)||d!=null&&d>((l=v)!==null&&l!==void 0?l:-1)?null:new B(u,d,h,v)}static subtractFromRange(e,t){var r=[],i=B.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new B(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new B(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new B(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new B(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(...B.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=B.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,o,s;return B.isBounded(e)?e:new B((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(o=e.endColumn)!==null&&o!==void 0?o:t-1,(s=e.endRow)!==null&&s!==void 0?s:r-1)}static boundedRanges(e,t,r){return e.map(i=>B.boundedRange(i,t,r))}static offset(e,t,r){return new B(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]:B.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(v=>v.containsCell(t,r)),a>=0)){var o=e[a],s=o.nextCell(t,r,i);if(s!=null)return s}switch(i){case B.SELECTION_DIRECTION.DOWN:case B.SELECTION_DIRECTION.RIGHT:{var l=a<e.length-1?a+1:0,u=e[l];return u.startCell(i)}case B.SELECTION_DIRECTION.LEFT:case B.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,o,s;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((o=r.endColumn)!==null&&o!==void 0?o: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]:B.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){Un(this,"startColumn",void 0),Un(this,"startRow",void 0),Un(this,"endColumn",void 0),Un(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 B.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&B.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return B.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:B.SELECTION_DIRECTION.DOWN;if(!B.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case B.SELECTION_DIRECTION.DOWN:case B.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case B.SELECTION_DIRECTION.LEFT:case B.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!B.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:o,endRow:s}=this;switch(r){case B.SELECTION_DIRECTION.DOWN:if(t<s)return{column:e,row:Math.max(t+1,o)};if(e<a)return{column:Math.max(e+1,i),row:o};break;case B.SELECTION_DIRECTION.UP:if(t>o)return{column:e,row:Math.min(t-1,s)};if(e>i)return{column:Math.min(e-1,a),row:s};break;case B.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,o)};break;case B.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>o)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]:B.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var o;e(i,a,r),r+=1,{column:i,row:a}=(o=this.nextCell(i,a,t))!==null&&o!==void 0?o:{}}}}Un(B,"SELECTION_DIRECTION",Ht);function Mc(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function ci(n){return Mc(n)&&n[0]!=null&&n[1]!=null}function ms(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 vi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ms(Object(t),!0).forEach(function(r){cu(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ms(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function cu(n,e,t){return e=Lc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lc(n){var e=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)}function ji(n){return n?.href!==void 0}class K{static getGridPointFromXY(e,t,r){var i=K.getColumnAtX(e,r),a=K.getRowAtY(t,r),o=K.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:o}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=K.getGridPointFromXY(e,t,r),{allColumnWidths:o,allRowHeights:s,allColumnXs:l,allRowYs:u,modelColumns:d,modelRows:h}=r,v=i!==null?h.get(i):null,m=a!==null?d.get(a):null,g=a!==null?l.get(a):null,f=i!==null?u.get(i):null,p=a!==null?o.get(a):null,C=i!==null?s.get(i):null;return{row:i,column:a,modelRow:v??null,modelColumn:m??null,left:g??null,top:f??null,columnWidth:p??null,rowHeight:C??null}}static getColumnHeaderDepthAtY(e,t){var r=K.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ae(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=K.iterateFloatingStart(e,r,i);return a!==void 0?a:K.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,o){var s=Math.max(e,r),l=Math.min(t,a-i-1),u=K.iterateFloating(r,i,a,o);if(u!==void 0)return u;for(var d=s;d<=l;d+=1)if(u=o(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,o,s=(a=t.get(e))!==null&&a!==void 0?a:0,l=(o=r.get(e))!==null&&o!==void 0?o:0;return s<=i&&i<=s+l}static getItemAtOffset(e,t,r,i,a,o,s){var l=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=l?void 0:K.iterateFloating(r,i,t,v=>{if(K.isInItem(v,o,s,e))return v});if(!l&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var h=a[d];if(K.isInItem(h,o,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:o,visibleColumns:s,allColumnXs:l,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,o,s,l,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:o,allRowYs:s,allRowHeights:l,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,o,s,l)}static getNextShownItem(e,t,r,i){var a=r.findIndex(l=>l===e)||0;for(a-=1;a!=null&&a>=0;){var o=r[a],s=t.get(o);if(s!=null&&i.get(s)!==0)return o;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return K.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return K.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,floatingColumns:s,floatingLeftWidth:l,visibleColumns:u,allColumnXs:d,allColumnWidths:h,columnHeaderMaxDepth:v}=r,{allowColumnResize:m,headerSeparatorHandleSize:g}=i;if(v*o<t||!m||g<=0)return null;for(var f=e-a,p=g*.5,C=!1,b=s.length-1;b>=0;b-=1){var w,S,T=s[b],y=(w=d.get(T))!==null&&w!==void 0?w:0,O=(S=h.get(T))!==null&&S!==void 0?S:0,R=O===0;if(!C||!R){var E=y+O;R?E+=p:C&&(E-=p);var P=E-p,x=E+p;if(P<=f&&f<=x)return T;C=R}}C=!1;for(var I=u.length-1;I>=0;I-=1){var N,L,F=u[I],k=(N=d.get(F))!==null&&N!==void 0?N:0,H=(L=h.get(F))!==null&&L!==void 0?L:0,W=H===0;if(k<l-H)return null;if(!C||!W){var z=k+H;W?z+=p:C&&(z-=p);var Y=z-p,$=z+p;if(Y<=f&&f<=$)return F;C=W}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return K.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(!K.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(l=>l===e),o=a-1;o>=0;o-=1){var s=r[o];if(!K.isItemHidden(s,t))break;i.push(s)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return K.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,visibleRows:s,allRowYs:l,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:h}=i;if(a<e||!d||h<=0)return null;for(var v=t-o,m=h*.5,g=!1,f=s.length-1;f>=0;f-=1){var p,C,b=s[f],w=(p=l.get(b))!==null&&p!==void 0?p:0,S=(C=u.get(b))!==null&&C!==void 0?C:0,T=S===0;if(!g||!T){var y=w+S;T?y+=m:g&&(y-=m);var O=y-m,R=y+m;if(O<=v&&v<=R)return b;g=T}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return K.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return K.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&&!ci(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=vi(vi({},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 K.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var o=[...r],s=o[o.length-1];s!=null&&ci(s.from)&&s.from[1]-s.from[0]===e[1]-e[0]&&s.to===e[0]?o[o.length-1]=vi(vi({},s),{},{to:a}):o.push({from:e,to:a});var l=o[o.length-1];return ci(l.from)&&l.from[0]===l.to&&o.pop(),o}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?K.moveRange(e,t,r,i):K.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]],o=function(){var{from:u,to:d}=r[s],h=1,v;ci(u)?(h=u[1]-u[0]+1,[v]=u):v=u;for(var m=i?d:v,g=m+h-1,f=i?v:d,p=f-m,C=[],b=function(){var T,y,O=(T=a[w][0])!==null&&T!==void 0?T:Number.NEGATIVE_INFINITY,R=(y=a[w][1])!==null&&y!==void 0?y:Number.POSITIVE_INFINITY,E,P=[[O,m-1],[m,g],[g+1,R]].map(x=>{var[I,N]=x;return[Math.max(I,O),Math.min(N,R)]}).filter(x=>{var[I,N]=x;return I<=N}).map(x=>{var[I,N]=x;return m<=I&&g>=N?(E=[I+p,N+p],E):g<I?[I-h,N-h]:x}).map(x=>{var[I,N]=x;return f>I&&f<=N?[[I,f-1],[f+h,N+h]]:x===E?[x]:f<=I?[[I+h,N+h]]:[x]}).flat();C.push(...P)},w=0;w<a.length;w+=1)b();a=C.map(S=>{var[T,y]=S;return[Number.isFinite(T)?T:null,Number.isFinite(y)?y:null]})},s=i?r.length-1:0;i?s>=0:s<r.length;i?s-=1:s+=1)o();return a}static translateRange(e,t,r,i){for(var a=K.applyItemMoves(e.startColumn,e.endColumn,t,i),o=K.applyItemMoves(e.startRow,e.endRow,r,i),s=[],l=0;l<a.length;l+=1)for(var u=a[l],d=0;d<o.length;d+=1){var h=o[d];s.push(new B(u[0],h[0],u[1],h[1]))}return s}static getModelIndex(e,t){var r=K.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>K.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return K.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Se,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Se;return K.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Se,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Se,i=[],a=0;a<e.length;a+=1)i.push(...K.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return K.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Se,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Se;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Se,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Se,i=[],a=0;a<e.length;a+=1)i.push(...K.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=K.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>K.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return K.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=K.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:o,height:s,floatingTopRowCount:l,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:h,floatingLeftWidth:v,floatingRightWidth:m,floatingTopHeight:g,floatingBottomHeight:f,columnCount:p,rowCount:C}=e,b=i,w=a,S=o,T=s;return r!=null&&(r>d&&(b+=v),r<p-h&&(S-=m)),t!=null&&(t>l&&(w+=g),t<C-u&&(T-=f)),{x1:b,y1:w,x2:S,y2:T}}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:o,deltaY:s}=e;return!K.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(o=e.deltaY,s=e.deltaX),e?.deltaMode===WheelEvent.DOM_DELTA_PAGE?(o*=t,s*=r):e?.deltaMode===WheelEvent.DOM_DELTA_LINE&&(K.isMacPlatform()?(o=Math.round(o*i),s=Math.round(s*a)):(o=Math.round(o*this.PIXELS_PER_LINE),s=Math.round(s*this.PIXELS_PER_LINE))),{deltaX:o,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],o=i[1];r===0?t.push([a,o]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],o):t.push([a,o])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:o}=e,{gridX:s,gridY:l,width:u,height:d,verticalBarWidth:h,horizontalBarHeight:v}=t,m=Ae(s+r,s,u-h),g=Ae(s+a,s,u-h),f=Ae(l+i,l,d-v),p=Ae(l+o,l,d-v);return{x1:m,y1:f,x2:g,y2:p,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:o}=e,{firstColumn:s,allColumnXs:l,allColumnWidths:u,allRowYs:d,allRowHeights:h,modelRows:v,modelColumns:m}=i,{cellHorizontalPadding:g,treeDepthIndent:f,treeHorizontalPadding:p}=o,C=M(v,r),b=M(m,t),w=a.textAlignForCell(b,C),S=M(l,t),T=M(d,r),y=M(u,t),O=M(h,r),R=t===s,E=0;Fe(a)&&a.hasExpandableRows&&R&&(E=f*(a.depthForRow(r)+1)+p);var P=y-E,x=S+g,I=T+O*.5;return w==="right"?x=S+P-g:w==="center"&&(x=S+P*.5),x+=E,{width:P-g*2,x,y:I}}static findTokensWithProtocolInText(e){var t=ud(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}cu(K,"PIXELS_PER_LINE",100/3);const ee=K;function Ot(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 mi(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:nn.CACHE_SIZE,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Math.floor(e/2);if(n.size>e)for(var r=n.keys();n.size>t;)n.delete(r.next().value)}function gs(n,e,t,r,i){for(var a=new Map,o=0,s=0;s<n&&s<t;s+=1)a.set(s,o),o+=M(i,s);o=r;for(var l=0;l<e&&t-l-1>=0;l+=1)o-=M(i,t-l-1),a.set(t-l-1,o);return a}class nn{constructor(){var{userColumnWidths:e=new Map,userRowHeights:t=new Map,calculatedColumnWidths:r=new Map,calculatedRowHeights:i=new Map,fontWidths:a=new Map,modelRows:o=new Map,modelColumns:s=new Map,movedRows:l=[],movedColumns:u=[],initialRowHeights:d=new Map,initialColumnWidths:h=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ot(this,"initialRowHeights",void 0),Ot(this,"initialColumnWidths",void 0),Ot(this,"userColumnWidths",void 0),Ot(this,"userRowHeights",void 0),Ot(this,"calculatedColumnWidths",void 0),Ot(this,"calculatedRowHeights",void 0),Ot(this,"fontWidths",void 0),Ot(this,"modelRows",void 0),Ot(this,"modelColumns",void 0),Ot(this,"movedRows",void 0),Ot(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=t,this.calculatedRowHeights=i,this.calculatedColumnWidths=r,this.fontWidths=a,this.modelRows=o,this.modelColumns=s,this.movedRows=l,this.movedColumns=u,this.initialRowHeights=d,this.initialColumnWidths=h}getMetrics(e){var{left:t,top:r,leftOffset:i,topOffset:a,width:o,height:s,theme:l,model:u,movedRows:d,movedColumns:h,draggingColumn:v}=e,{rowHeight:m,rowHeaderWidth:g,rowFooterWidth:f,columnWidth:p,columnHeaderHeight:C,minScrollHandleSize:b,scrollBarSize:w}=l;d!==this.movedRows&&(this.movedRows=d,this.modelRows.clear()),h!==this.movedColumns&&(this.movedColumns=h,this.modelColumns.clear());var{columnCount:S,rowCount:T,floatingTopRowCount:y,floatingBottomRowCount:O,floatingLeftColumnCount:R,floatingRightColumnCount:E,columnHeaderMaxDepth:P}=u,x=this.getFirstRow(e),I=this.getFirstColumn(e),N=this.getGridX(e),L=this.getGridY(e),F=Fe(u)&&u.hasExpandableRows?this.calculateTreePaddingX(e):0,k=0,H=this.getVisibleRowHeights(e),W=this.getVisibleColumnWidths(e,I,F),z=Array.from(H.keys()),Y=Array.from(W.keys()),$=new Map([...H,...this.getFloatingRowHeights(e)]),A=new Map([...W,...this.getFloatingColumnWidths(e)]),U=this.getVisibleColumnXs(A,Y,i),V=this.getVisibleRowYs($,z,a),X=z.length>0?z[z.length-1]:r,q=Y.length>0?Y[Y.length-1]:t,ne=this.getBottomViewport(e,z,V,$),ue=this.getRightViewport(e,Y,U,A),re=this.getFloatingTopHeight(e,$),te=this.getFloatingBottomHeight(e,$),Te=this.getFloatingLeftWidth(e,A),Ie=this.getFloatingRightWidth(e,A),tt=Array.from(A.values()),Qe=Array.from($.values()),Ke=tt.reduce((hr,Nn)=>hr+Nn,0)-i,Ue=Qe.reduce((hr,Nn)=>hr+Nn,0)-a,Ze=i+Ke+f,Pe=a+Ue,ht=o-N,ct=s-L,Bt=this.getLastLeft(e,null,ht-f),Vt=this.getLastLeft(e,null,ht-f-w),ur=this.getLastTop(e,null,ct-te),br=this.getLastTop(e,null,ct-te-w),Pt=Vt,Je=br;Bt===0&&ur===0&&(Pt=0,Je=0);var Ut=Pt>0,vt=Ut?w:0,mt=Je>0,Xe=mt?w:0,Ft=N,$t=P*C,It=o-Ft-Xe,gt=s-$t-vt,wr=S===1?It/Ze:(S-Pt)/S,tr=T===1?gt/Pe:(T-Je)/T,dr=Ut?Ae(It*wr,b,It-1):0,At=mt?Ae(gt*tr,b,gt-1):0,Gt=M(A,t,0),Ur=M($,r,0),sn=Gt>0?i/Gt:0,ln=Ur>0?a/Ur:0,un=S===1?i/(Ze-ht):(t+sn)/Pt,dn=T===1?a/(Pe-ct):(r+ln)/Je,hn=Ut?un*(It-dr):0,je=mt?dn*(gt-At):0,ti=[...Array(y).keys(),...[...Array(O).keys()].map(hr=>T-hr-1)],Rn=new Map([...V,...this.getFloatingRowYs(e,$,Math.floor(s-L-vt))]),ri=[...Array(R).keys(),...[...Array(E).keys()].map(hr=>S-hr-1)],$r=new Map([...U,...this.getFloatingColumnXs(e,A,Math.floor(o-N-Xe))]),ni=[];if(v)for(var ft=v.range[0];ft<=v.range[1];ft+=1)ni.push(ft),A.has(ft)||A.set(ft,this.getVisibleColumnWidth(ft,e)),$r.has(ft)||$r.set(ft,0);var ii=z.concat(ti),Dn=Y.concat(ri).concat(ni),ai=this.getModelRows(ii,e),ra=this.getModelColumns(Dn,e),na=this.getVisibleRowTreeBoxes($,ai,e),oi=this.getTopVisible(e,Rn,$,z),si=this.getLeftVisible(e,$r,A,Y),ia=Je>0?this.getBottomVisible(e,Rn,$,z,L):X,li=Pt>0?this.getRightVisible(e,$r,A,Y,N):q,{fontWidths:ui,userColumnWidths:aa,userRowHeights:oa,calculatedRowHeights:sa,calculatedColumnWidths:la}=this;return{rowHeight:m,rowHeaderWidth:g,rowFooterWidth:f,rowCount:T,columnWidth:p,columnCount:S,columnHeaderHeight:C,floatingTopRowCount:y,floatingBottomRowCount:O,floatingLeftColumnCount:R,floatingRightColumnCount:E,gridX:N,gridY:L,firstRow:x,firstColumn:I,treePaddingX:F,treePaddingY:k,left:t,top:r,bottom:X,right:q,topOffset:a,leftOffset:i,topVisible:oi,leftVisible:si,bottomVisible:ia,rightVisible:li,bottomViewport:ne,rightViewport:ue,width:o,height:s,maxX:Ke,maxY:Ue,lastLeft:Pt,lastTop:Je,barHeight:gt,barTop:$t,barWidth:It,barLeft:Ft,handleHeight:At,handleWidth:dr,hasHorizontalBar:Ut,hasVerticalBar:mt,verticalBarWidth:Xe,horizontalBarHeight:vt,scrollX:hn,scrollY:je,scrollableContentWidth:Ze,scrollableContentHeight:Pe,scrollableViewportWidth:ht,scrollableViewportHeight:ct,visibleRows:z,visibleColumns:Y,visibleRowHeights:H,visibleColumnWidths:W,floatingRows:ti,floatingColumns:ri,allRows:ii,allColumns:Dn,allRowHeights:$,allColumnWidths:A,floatingTopHeight:re,floatingBottomHeight:te,floatingLeftWidth:Te,floatingRightWidth:Ie,visibleRowYs:V,visibleColumnXs:U,allRowYs:Rn,allColumnXs:$r,visibleRowTreeBoxes:na,modelRows:ai,modelColumns:ra,movedRows:d,movedColumns:h,fontWidths:ui,userColumnWidths:aa,userRowHeights:oa,calculatedRowHeights:sa,calculatedColumnWidths:la,columnHeaderMaxDepth:P}}getGridX(e){var{theme:t}=e,{rowHeaderWidth:r}=t;return r}getGridY(e){var{theme:t,model:r}=e,{columnHeaderHeight:i}=t,{columnHeaderMaxDepth:a}=r;return a*i}getVisibleHeight(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{height:r,theme:i}=e,{scrollBarSize:a}=i,o=this.getGridY(e),s=this.getFloatingBottomHeight(e,t),l=this.getFloatingTopHeight(e,t);return r-s-l-o-a}getVisibleWidth(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{width:r,theme:i}=e,{scrollBarSize:a,rowFooterWidth:o}=i,s=this.getGridX(e),l=this.getFloatingRightWidth(e,t),u=this.getFloatingLeftWidth(e,t);return r-u-l-s-a-o}getFirstIndex(e,t,r){for(var i=e.size+1,a=0;a<i;a+=1){var o=t(a,r);if(e.get(o)!==0)return a}return 0}getFirstColumn(e){return this.getFirstIndex(this.userColumnWidths,this.getModelColumn.bind(this),e)}getFirstRow(e){return this.getFirstIndex(this.userRowHeights,this.getModelRow.bind(this),e)}getLastLeft(e,t,r){var{model:i}=e,{columnCount:a,floatingRightColumnCount:o}=i,s=Math.max(0,a-o-1);t!=null&&(s=t);for(var l=0;s>=0;){var u=this.getVisibleColumnWidth(s,e);if(l+=u,l>=r)return Ae(s+1,0,t??a-1);s-=1}return 0}getLastTop(e,t,r){var{model:i}=e,{rowCount:a,floatingBottomRowCount:o}=i,s=Math.max(0,a-o-1);t!=null&&(s=t);for(var l=0;s>=0;){var u=this.getVisibleRowHeight(s,e);if(l+=u,l>=r)return Ae(s+1,0,a-1);s-=1}return 0}getTopForTopVisible(e,t){for(var r=this.getFloatingTopHeight(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleRowHeight(i,e);return i}getTopForBottomVisible(e,t){var{height:r}=e,i=this.getGridY(e),a=this.getFloatingBottomHeight(e),o=r-i-a;return this.getLastTop(e,t,o)}getLeftForLeftVisible(e,t){for(var r=this.getFloatingLeftWidth(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleColumnWidth(i,e);return i}getLeftForRightVisible(e,t){var{width:r}=e,i=this.getGridX(e),a=this.getFloatingRightWidth(e),o=r-i-a;return this.getLastLeft(e,t,o)}getFloatingRowHeights(e){for(var{model:t}=e,{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t,o=new Map,s=0;s<r&&s<a;s+=1)o.set(s,this.getVisibleRowHeight(s,e));for(var l=0;l<i&&a-l-1>=0;l+=1){var u=a-l-1;o.set(u,this.getVisibleRowHeight(u,e))}return o}getVisibleRowHeights(e){for(var{top:t,topOffset:r,height:i,model:a}=e,o=0,s=t,l=new Map,{rowCount:u}=a;o<i+r&&s<u;){var d=this.getVisibleRowHeight(s,e);l.set(s,d),o+=d,s+=1}return l}getFloatingColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:s}=i,l=new Map,u=0;u<o&&u<a;u+=1)l.set(u,this.getVisibleColumnWidth(u,e,t,r));for(var d=0;d<s&&a-d-1>=0;d+=1){var h=a-d-1;l.set(h,this.getVisibleColumnWidth(h,e,t,r))}return l}getVisibleColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{left:i,leftOffset:a,width:o,model:s}=e,l=0,u=i,d=new Map,{columnCount:h}=s;l<o+a&&u<h;){var v=this.getVisibleColumnWidth(u,e,t,r);d.set(u,v),l+=v,u+=1}return d}getFloatingColumnXs(e,t,r){var{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:s}=i;return gs(o,s,a,r,t)}getVisibleColumnXs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var s=t[o],l=M(e,s);i.set(s,a),a+=l}return i}getFloatingRowYs(e,t,r){var{model:i}=e,{floatingTopRowCount:a,floatingBottomRowCount:o,rowCount:s}=i;return gs(a,o,s,r,t)}getVisibleRowYs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var s=t[o],l=M(e,s);i.set(s,a),a+=l}return i}getVisibleRowTreeBoxes(e,t,r){var i=new Map,{model:a,theme:o}=r,{treeDepthIndent:s,treeHorizontalPadding:l}=o;return Fe(a)&&a.hasExpandableRows&&e.forEach((u,d)=>{var h=M(t,d);if(a.isRowExpandable(h)){var v=a.depthForRow(h),m=v*s+l,g=(v+1)*s+l,f=0,p=u;i.set(d,{x1:m,y1:f,x2:g,y2:p})}}),i}getFloatingLeftWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingLeftColumnCount:i}=r,a=0,o=0;o<i;o+=1)a+=M(t,o);return a}getFloatingRightWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingRightColumnCount:i,columnCount:a}=r,o=0,s=0;s<i;s+=1)o+=M(t,a-s-1);return o}getFloatingTopHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingTopRowCount:i}=r,a=0,o=0;o<i;o+=1)a+=M(t,o);return a}getFloatingBottomHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingBottomRowCount:i,rowCount:a}=r,o=0,s=0;s<i;s+=1)o+=M(t,a-s-1);return o}getTopVisible(e,t,r,i){for(var a=this.getFloatingTopHeight(e,r),o=0;o<i.length;o+=1){var s=i[o],l=M(t,s);if(l>=a)return s}return 0}getLeftVisible(e,t,r,i){for(var a=this.getFloatingLeftWidth(e,r),o=0;o<i.length;o+=1){var s=i[o],l=M(t,s);if(l>=a)return s}return 0}getBottomVisible(e,t,r,i,a){for(var{height:o,theme:s}=e,{scrollBarSize:l}=s,u=this.getFloatingBottomHeight(e,r),d=o-a-l-u,h=i.length-1;h>=0;h-=1){var v=i[h],m=M(t,v),g=M(r,v);if(m+g<=d)return v}return 0}getRightVisible(e,t,r,i,a){for(var{width:o,theme:s}=e,{scrollBarSize:l}=s,u=this.getFloatingRightWidth(e,r),d=o-a-l-u,h=i.length-1;h>=0;h-=1){var v=i[h],m=M(t,v),g=M(r,v);if(m+g<=d)return v}return 0}getBottomViewport(e,t,r,i){var{height:a,theme:o}=e,{rowHeight:s}=o;return this.getLastIndexViewport(t,r,i,a,s)}getRightViewport(e,t,r,i){var{width:a,theme:o}=e,{columnWidth:s}=o;return this.getLastIndexViewport(t,r,i,a,s)}getLastIndexViewport(e,t,r,i,a){var o=0,s=0;return e.length>0&&(o=e[e.length-1],s=M(t,o)+M(r,o)),s<i&&(o+=Math.ceil((i-s)/a)),o}getVisibleItemSize(e,t,r){var i;return(i=t.get(e))!==null&&i!==void 0?i:r()}getVisibleRowHeight(e,t){var r=this.getModelRow(e,t),i=this.calculateRowHeight(e,r,t);return this.getVisibleItemSize(r,this.userRowHeights,()=>{var a=this.initialRowHeights.get(r);return a!==void 0?a:i})}getVisibleColumnWidth(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.getFirstColumn(t),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.calculateTreePaddingX(t),a=this.getModelColumn(e,t),o=this.calculateColumnWidth(e,a,t,r,i);return this.getVisibleItemSize(a,this.userColumnWidths,()=>{var s=this.initialColumnWidths.get(a);return s!==void 0?s:o})}getModelRows(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelRow(a,t);r.set(a,o)}return r}getModelRow(e,t){if(this.modelRows.has(e))return M(this.modelRows,e);var{movedRows:r}=t,i=ee.getModelIndex(e,r);return this.modelRows.set(e,i),i}getModelColumns(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelColumn(a,t);r.set(a,o)}return r}getModelColumn(e,t){var r=this.modelColumns.has(e);if(r)return M(this.modelColumns,e);var{movedColumns:i}=t,a=ee.getModelIndex(e,i);return this.modelColumns.set(e,a),a}calculateRowHeight(e,t,r){var{theme:i}=r,{autoSizeRows:a,rowHeight:o}=i;if(!a)return o;var s=this.calculatedRowHeights.get(t);return s??(this.calculatedRowHeights.set(t,Math.ceil(o)),mi(this.calculatedRowHeights),o)}calculateColumnWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.getFirstColumn(r),a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.calculateTreePaddingX(r),{theme:o}=r,{autoSizeColumns:s,minColumnWidth:l,maxColumnWidth:u}=o;if(!s){var{columnWidth:d}=o;return d}var h=this.calculateColumnHeaderWidth(t,r),v=this.calculateColumnDataWidth(t,r),m=this.calculatedColumnWidths.get(t),g=Math.ceil(Math.max(h,v));return g=Math.max(l,g),g=Math.min(u,g),m!=null&&m>g?g=m:(this.calculatedColumnWidths.set(t,g),mi(this.calculatedColumnWidths)),e===i&&(g+=a),g}calculateColumnHeaderWidth(e,t){var{model:r,theme:i}=t,{headerFont:a,headerHorizontalPadding:o}=i,s=r.textForColumnHeader(e,0);if(s!==void 0&&s!==""){var l=this.getWidthForFont(a,t);return s.length*l+o*2}return o*2}calculateColumnDataWidth(e,t){var{top:r,height:i,width:a,model:o,theme:s}=t,{floatingTopRowCount:l,floatingBottomRowCount:u,rowCount:d}=o,{font:h,cellHorizontalPadding:v,rowHeight:m,rowHeaderWidth:g,rowFooterWidth:f,scrollBarSize:p,dataBarHorizontalPadding:C}=s,b=0,w=this.getWidthForFont(h,t),S=i/m,T=Math.ceil(r+S);return ee.iterateAllItems(r,T,l,u,d,y=>{var O=this.getModelRow(y,t),R=o.textForCell(e,O),E=o.renderTypeForCell(e,O),P=0;if(R){var x=v*2;P=R.length*w+x}E==="dataBar"&&(P+=C),b=Math.max(b,P)}),b=Math.max(Math.min(b,(a-g-p-f)*nn.MAX_COLUMN_WIDTH),v*2),b}calculateTreePaddingX(e){var{top:t,height:r,model:i,theme:a}=e,{rowHeight:o,treeDepthIndent:s}=a;if(!Fe(i)||!i.hasExpandableRows)return 0;for(var l=0,u=r/o,d=Math.ceil(t+u),h=t;h<=d;h+=1){var v=this.getModelRow(h,e),m=i.depthForRow(v);l=Math.max(l,s*(m+1))}return l}getWidthForFont(e,t){if(this.fontWidths.has(e))return M(this.fontWidths,e);var{context:r}=t;r.font=e;var i=r.measureText("8"),{width:a}=i;return this.fontWidths.set(e,a),this.fontWidths.set(r.font,a),a}setColumnWidth(e,t){var r=new Map(this.userColumnWidths);r.set(e,Math.ceil(t)),mi(r),this.userColumnWidths=r}resetColumnWidth(e){var t=new Map(this.userColumnWidths);t.delete(e),this.userColumnWidths=t}setRowHeight(e,t){var r=new Map(this.userRowHeights);r.set(e,Math.ceil(t)),mi(r),this.userRowHeights=r}resetRowHeight(e){var t=new Map(this.userRowHeights);t.delete(e),this.userRowHeights=t,this.calculatedRowHeights.delete(e)}}Ot(nn,"CACHE_SIZE",1e4);Ot(nn,"MAX_COLUMN_WIDTH",.8);var Hc=Object.freeze({allowColumnResize:!0,allowRowResize:!0,autoSelectRow:!1,autoSelectColumn:!1,autoSizeColumns:!0,autoSizeRows:!0,backgroundColor:"#000000",black:"#000000",white:"#ffffff",cellHorizontalPadding:5,headerHorizontalPadding:5,font:"12px Arial, sans serif",gridColumnColor:"#8f8f8f66",gridRowColor:"#8f8f8f66",headerBackgroundColor:"#222222",headerSeparatorColor:"#000000",headerSeparatorHoverColor:"#888888",headerSeparatorHandleSize:5,headerHiddenSeparatorSize:5,headerHiddenSeparatorHoverColor:"#8888FF",headerColor:"#d5d5d5",headerFont:"10px Arial, sans serif",columnHoverBackgroundColor:"#444444",selectedColumnHoverBackgroundColor:"#494949",rowBackgroundColors:"#333333 #222222",rowHoverBackgroundColor:"#444444",selectedRowHoverBackgroundColor:"#494949",minScrollHandleSize:50,scrollBarBackgroundColor:"#111111",scrollBarHoverBackgroundColor:"#333333",scrollBarCasingColor:"#000000",scrollBarCornerColor:"#000000",scrollBarColor:"#555555",scrollBarHoverColor:"#888888",scrollBarActiveColor:"#AAAAAA",scrollBarSize:12,scrollBarHoverSize:16,scrollBarCasingWidth:1,scrollSnapToColumn:!1,scrollSnapToRow:!1,selectionColor:"#4286f433",selectionOutlineColor:"#4286f4",selectionOutlineCasingColor:"#222222",scrollBarSelectionTick:!0,scrollBarSelectionTickColor:"#4286f433",scrollBarActiveSelectionTickColor:"#4286f480",shadowBlur:8,shadowColor:"#000000",textColor:"#ffffff",hyperlinkColor:"#4878ea",maxDepth:6,treeDepthIndent:10,treeHorizontalPadding:5,treeLineColor:"#888888",treeMarkerColor:"#cccccc",treeMarkerHoverColor:"#ffffff",rowHeight:20,columnWidth:100,minRowHeight:20,minColumnWidth:55,maxColumnWidth:600,columnHeaderHeight:20,rowHeaderWidth:30,rowFooterWidth:0,headerResizeSnapThreshold:10,headerResizeHiddenSnapThreshold:8,allowColumnReorder:!0,allowRowReorder:!0,reorderOffset:2,floatingGridColumnColor:"#8f8f8f66",floatingGridRowColor:"#8f8f8f66",floatingRowBackgroundColors:"#393939 #292929",floatingDividerOuterColor:"#000000",floatingDividerInnerColor:"#cccccc",zeroLineColor:"#888888",positiveBarColor:"#00ff00",negativeBarColor:"#ff0000",markerBarColor:"#ffffff",dataBarHorizontalPadding:90});const Bc=Hc;function fs(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 ps(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fs(Object(t),!0).forEach(function(r){Vc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fs(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Vc(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=$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)}var Gc=(n,e)=>{var t=!1,r=ge(n,ps(ps({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const er=Gc;function Wc(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,r=Ua.hex.lab.raw(n);return r[0]=Math.max(r[0]-r[0]/t*e,0),"#".concat(Ua.lab.hex(r))}function zc(n,e){var[t,r,i]=Ua.hex.rgb(n);return"rgba(".concat(t,", ").concat(r,", ").concat(i,", ").concat(e,")")}var Kc=n=>{var{r:e,g:t,b:r}=n,i=.4122214708*e+.5363325363*t+.0514459929*r,a=.2119034982*e+.6806995451*t+.1073969566*r,o=.0883024619*e+.2817188376*t+.6299787005*r,s=Math.cbrt(i),l=Math.cbrt(a),u=Math.cbrt(o);return{L:.2104542553*s+.793617785*l-.0040720468*u,a:1.9779984951*s-2.428592205*l+.4505937099*u,b:.0259040371*s+.7827717662*l-.808675766*u}},Yc=n=>{var{L:e,a:t,b:r}=n,i=e+.3963377774*t+.2158037573*r,a=e-.1055613458*t-.0638541728*r,o=e-.0894841775*t-1.291485548*r,s=i*i*i,l=a*a*a,u=o*o*o;return{r:Ae(4.0767416621*s-3.3077115913*l+.2309699292*u,0,255),g:Ae(-1.2684380046*s+2.6097574011*l-.3413193965*u,0,255),b:Ae(-.0041960863*s-.7034186147*l+1.707614701*u,0,255)}},Xc=n=>{var e,t,r=(e=(t=n.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(i,a,o,s)=>"#".concat(a).concat(a).concat(o).concat(o).concat(s).concat(s)).substring(1).match(/.{2}/g))===null||t===void 0?void 0:t.map(i=>parseInt(i,16)))!==null&&e!==void 0?e:[0,0,0];return{r:r[0],g:r[1],b:r[2]}},qc=n=>{var e=Math.round(n.r),t=Math.round(n.g),r=Math.round(n.b);return"#".concat([e,t,r].map(i=>{var a=i.toString(16);return a.length===1?"0".concat(a):a}).join(""))},Qc=(n,e,t)=>{var{L:r,a:i,b:a}=n,{L:o,a:s,b:l}=e,u=r+(o-r)*t,d=i+(s-i)*t,h=a+(l-a)*t;return{L:u,a:d,b:h}};const Yr={colorWithAlpha:zc,darkenForDepth:Wc,linearSRGBToOklab:Kc,OklabToLinearSRGB:Yc,hexToRgb:Xc,rgbToHex:qc,lerpColor:Qc};function Cs(n,e,t){return e=Zc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zc(n){var e=Jc(n,"string");return typeof e=="symbol"?e:String(e)}function Jc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ze{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Cs(this,"order",void 0),Cs(this,"cursor",null),this.order=e}onDown(e,t,r){return!1}onMove(e,t,r){return!1}onDrag(e,t,r){return!1}onLeave(e,t,r){return!1}onClick(e,t,r){return!1}onContextMenu(e,t,r){return!1}onDoubleClick(e,t,r){return!1}onUp(e,t,r){return!1}onWheel(e,t,r){return!1}}function Mn(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)}class rv extends ze{constructor(){super(...arguments),Mn(this,"draggingIndex",void 0),Mn(this,"resizingItems",[]),Mn(this,"hiddenItems",[]),Mn(this,"targetSizes",new Map),Mn(this,"dragOffset",0)}onDown(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var o=this.getSeparator(e,r,i,a);if(o!=null){var s=o.index;return this.dragOffset=0,this.draggingIndex=s,this.resizingItems=[s],this.hiddenItems=this.getHiddenItems(s,r).reverse(),this.targetSizes.clear(),this.addTargetSize(r,s),this.updateCursor(r,s),this.updateSeparator(t,o),!0}return!1}onMove(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var o=this.getSeparator(e,r,i,a);return o!=null?(this.updateCursor(r,o.index),!0):!1}onDrag(e,t){if(this.draggingIndex==null)return!1;var r=e[this.pointProperty],{metricCalculator:i,metrics:a}=t;if(!a)throw new Error("metrics not set");for(var o=t.getTheme(),s=a[this.visibleOffsetProperty],l=a[this.marginProperty],u=a[this.calculatedSizesProperty],d=a[this.modelIndexesProperty],h=a[this.firstIndexProperty],v=a[this.treePaddingProperty],m=new Map,g=this.resizingItems[this.resizingItems.length-1];g!=null;){var f=M(s,g),p=r-l-f-this.dragOffset,C=M(d,g),b=this.targetSizes.get(C),w=this.resizingItems.length>1,S=this.hiddenItems.indexOf(g),T=M(u,C);g===h&&(T+=v);var y=p;if(Math.abs(p-T)<=o.headerResizeSnapThreshold?y=T:b!==void 0&&p>b&&(w&&S!==0||S>0)?y=b:p<=o.headerResizeHiddenSnapThreshold&&(y=0),m.set(C,y),p<-o.headerResizeSnapThreshold&&y===0)if(S>=0&&w){var O;this.resizingItems.pop(),this.removeTargetSize(a,g),g=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(O=this.targetSizes.get(M(d,g)))!==null&&O!==void 0?O:0}else g=this.getNextShownItem(g,a),g!==null&&(this.resizingItems.push(g),this.addTargetSize(a,g));else b!==void 0&&p>b+o.headerResizeSnapThreshold&&y===b?S>0?(this.dragOffset+=y,g=this.hiddenItems[S-1],this.resizingItems.push(g),this.addTargetSize(a,g)):w?(this.resizingItems.pop(),this.removeTargetSize(a,g),g=this.resizingItems[this.resizingItems.length-1]):g=null:g=null}return m.forEach((R,E)=>{var P,x=(P=i[this.initialSizesProperty].get(E))!==null&&P!==void 0?P:u.get(E);R===x?this.resetSize(i,E):this.setSize(i,E,R)}),this.updateCursor(a,this.draggingIndex),!0}onUp(e,t){return this.draggingIndex!=null&&(this.draggingIndex=void 0,this.resizingItems=[],this.hiddenItems=[],this.targetSizes.clear(),this.updateSeparator(t,null)),!1}onDoubleClick(e,t){var{metrics:r,metricCalculator:i}=t,{model:a}=t.props,o=t.getTheme();if(!r)throw new Error("metrics not set");var s=this.getSeparator(e,r,a,o);if(s!=null){var l=r[this.modelIndexesProperty],u=M(l,s.index),d=M(r[this.calculatedSizesProperty],u),h=i[this.initialSizesProperty].get(u);return d===h?this.resetSize(i,u):this.setSize(i,u,d),t.forceUpdate(),!0}return!1}updateCursor(e,t){var r=e[this.visibleSizesProperty],i=M(r,t);i===0?this.cursor=this.hiddenCursor:this.cursor=this.defaultCursor}addTargetSize(e,t){var r=e[this.modelIndexesProperty],i=e[this.userSizesProperty],a=e[this.calculatedSizesProperty],o=t===0?e[this.treePaddingProperty]:0,s=M(r,t),l=i.get(s);(l==null||l===0)&&(l=M(a,s)+o),this.targetSizes.set(s,l)}removeTargetSize(e,t){var r=e[this.modelIndexesProperty],i=M(r,t);this.targetSizes.delete(i)}}const vu=rv;function at(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)}class wo extends vu{constructor(){super(...arguments),at(this,"hiddenCursor","e-resize"),at(this,"defaultCursor","col-resize"),at(this,"pointProperty","x"),at(this,"userSizesProperty","userColumnWidths"),at(this,"visibleOffsetProperty","visibleColumnXs"),at(this,"visibleSizesProperty","visibleColumnWidths"),at(this,"marginProperty","rowHeaderWidth"),at(this,"calculatedSizesProperty","calculatedColumnWidths"),at(this,"initialSizesProperty","initialColumnWidths"),at(this,"modelIndexesProperty","modelColumns"),at(this,"firstIndexProperty","firstColumn"),at(this,"treePaddingProperty","treePaddingX"),at(this,"getHiddenItems",ee.getHiddenColumns),at(this,"getNextShownItem",ee.getNextShownColumn),at(this,"getSeparator",wo.getColumnSeparator)}static getColumnSeparator(e,t,r,i){if(!i.allowColumnResize)return null;var{x:a,y:o,columnHeaderDepth:s}=e,{modelColumns:l}=t,u=ee.getColumnSeparatorIndex(a,o,t,i);if(u==null||s==null||s>0)return null;var d=l.get(u);return d!=null?{index:u,depth:0}:null}setSize(e,t,r){e.setColumnWidth(t,r)}resetSize(e,t){e.resetColumnWidth(t)}updateSeparator(e,t){e.setState({draggingColumnSeparator:t,isDragging:t!==null})}}const mu=wo;var tn=10;function av(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=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)}class lv{constructor(){av(this,"getCachedTruncatedString",er((e,t,r,i,a)=>Zt.truncateToWidth(e,t,r,i,a),{max:1e4}))}drawCellRowTreeMarker(e,t,r){var{metrics:i,model:a,mouseX:o,mouseY:s,theme:l}=t,{firstColumn:u,gridX:d,gridY:h,allColumnXs:v,allColumnWidths:m,allRowYs:g,allRowHeights:f,visibleRowTreeBoxes:p}=i,{treeMarkerColor:C,treeMarkerHoverColor:b}=l,w=M(v,u),S=M(m,u),T=M(g,r),y=M(f,r);if(!(!Fe(a)||!a.isRowExpandable(r))){var O=M(p,r),R=o!=null&&s!=null&&o>=d+w&&o<=d+w+S&&s>=h+T&&s<=h+T+y?b:C;this.drawTreeMarker(e,t,w,T,O,R,a.isRowExpanded(r))}}drawTreeMarker(e,t,r,i,a,o,s){var{x1:l,y1:u,x2:d,y2:h}=a,v=s?"⊟":"⊞",m=r+(l+d)*.5+.5,g=i+(u+h)*.5+.5;e.fillStyle=o,e.textAlign="center",e.fillText(v,m,g)}}const gu=lv;function bs(n){return n?.dataBarOptionsForCell!==void 0}function ws(n,e,t){return e=uv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uv(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 hv extends gu{constructor(){super(...arguments),ws(this,"heightOfDigits",void 0),ws(this,"getCachedWidestValueForColumn",er((e,t,r,i,a)=>{for(var o=0,s=0;s<t.length;s+=1){var l=t[s],u=M(r,l),d=i.textForCell(a,u);o=Math.max(o,e.measureText(d).width)}return o},{max:1e3}))}drawCellContent(e,t,r,i){var a,{metrics:o,model:s,theme:l}=t;if(bs(s)){var{modelColumns:u,modelRows:d,allRowHeights:h,allRowYs:v,firstColumn:m,fontWidths:g}=o,f=r===m,p=M(h,i),C=M(d,i),b=M(u,r),w=M(v,i),S=s.textAlignForCell(b,C),T=s.textForCell(b,C),{x:y,width:O}=ee.getTextRenderMetrics(t,r,i),R=(a=g?.get(e.font))!==null&&a!==void 0?a:tn,E=s.truncationCharForCell(b,C),P=this.getCachedTruncatedString(e,T,O,R,E),{columnMin:x,columnMax:I,axis:N,color:L,valuePlacement:F,opacity:k,markers:H,direction:W,value:z}=s.dataBarOptionsForCell(b,C,l),Y=Array.isArray(L);if(!(x==null||I==null)){var{maxWidth:$,x:A,y:U,zeroPosition:V,leftmostPosition:X,markerXs:q,totalValueRange:ne,dataBarWidth:ue}=this.getDataBarRenderMetrics(e,t,r,i);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:re,actualBoundingBoxDescent:te}=e.measureText("1234567890");this.heightOfDigits=re+te}if(e.save(),e.textAlign=S,Y){var Te=z>=0?L[L.length-1]:L[0];e.fillStyle=Te}else e.fillStyle=L;if(e.textBaseline="top",e.font=l.font,F!=="hide"&&e.fillText(P,y,w+(p-this.heightOfDigits)/2),Y){var Ie=L.map(At=>Yr.linearSRGBToOklab(Yr.hexToRgb(At)));if(e.save(),e.beginPath(),e.roundRect(A,U,ue,p-2,1),e.clip(),z<0){if(W==="LTR")for(var tt=Math.round(Math.abs(x)/ne*$),Qe=tt/(L.length-1),Ke=Math.round(X),Ue=0;Ue<L.length-1;Ue+=1){var Ze=Ie[Ue],Pe=Ie[Ue+1];this.drawGradient(e,Ze,Pe,Ke,w+1,Qe,p),Ke+=Qe}else if(W==="RTL")for(var ht=Math.round($-Math.abs(I)/ne*$),ct=ht/(L.length-1),Bt=Math.round(V),Vt=L.length-1;Vt>0;Vt-=1){var ur=Ie[Vt],br=Ie[Vt-1];this.drawGradient(e,ur,br,Bt,w+1,ct,p),Bt+=ct}}else if(W==="LTR")for(var Pt=Math.round($-Math.abs(x)/ne*$)-1,Je=Pt/(L.length-1),Ut=Math.round(V),vt=0;vt<L.length-1;vt+=1){var mt=Ie[vt],Xe=Ie[vt+1];this.drawGradient(e,mt,Xe,Ut,w+1,Je,p-2),Ut+=Je}else if(W==="RTL")for(var Ft=Math.round(Math.abs(I)/ne*$),$t=Ft/(L.length-1),It=Math.round(X),gt=L.length-1;gt>0;gt-=1){var wr=Ie[gt],tr=Ie[gt-1];this.drawGradient(e,wr,tr,It,w+1,$t,p-2),It+=$t}e.restore()}else e.save(),e.globalAlpha=k,e.beginPath(),e.roundRect(A,U,ue,p-2,1),e.fill(),e.restore();$>0&&q.forEach((At,Gt)=>{e.fillStyle=H[Gt].color,e.fillRect(At,U,1,p-2)});var dr=!(N==="directional"&&(F==="beside"&&S==="right"&&W==="LTR"||F==="beside"&&S==="left"&&W==="RTL"||F!=="beside"));dr&&(e.strokeStyle=l.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(V,w),e.lineTo(V,w+p),e.stroke()),e.restore(),f&&Fe(s)&&s.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}}}getDataBarRenderMetrics(e,t,r,i){var{metrics:a,model:o,theme:s}=t;if(!bs(o))throw new Error("Grid model is not a data bar grid model");var{firstColumn:l,allColumnXs:u,allColumnWidths:d,allRowYs:h,modelColumns:v,modelRows:m,visibleRows:g}=a,{cellHorizontalPadding:f,treeDepthIndent:p,treeHorizontalPadding:C}=s,b=M(v,r),w=M(m,i),S=M(u,r),T=M(h,i),y=M(d,r),O=r===l,R=0;Fe(o)&&o.hasExpandableRows&&O&&(R=p*(o.depthForRow(i)+1)+C);var E=o.textAlignForCell(b,w),{columnMin:P,columnMax:x,axis:I,valuePlacement:N,markers:L,direction:F,value:k}=o.dataBarOptionsForCell(b,w,s),H=this.getCachedWidestValueForColumn(e,g,m,o,b),W=2,z=N==="beside"&&E==="right"?2:1,Y=x-P;x>=0&&P>=0||P===x?Y=x:x<=0&&P<=0&&(Y=Math.abs(P));var $=y-R-z-W;N==="beside"&&($=$-f-H),$<0&&($=0);var A=Math.max(Math.abs(P),Math.abs(x)),U=Math.abs(k)/Y*$;$===0?U=0:I==="middle"?U=Math.abs(k)/A*($/2):I==="directional"&&(U=Math.abs(k)/A*$);var V=P>=0?0:Math.abs(P)/Y*$,X=k>=0?V:V-Math.abs(k)/Y*$,q=L.map(re=>{var{value:te}=re,Te=Math.abs(te)/Y*$;return te>=0?V+Te:V-Te}),ne=N==="beside"&&E==="left"?f+H+W:W,ue=N==="beside"&&E==="right"?y-f-H-z:z;return F==="RTL"&&(V=P>=0?y:y-Math.abs(P)/Y*$,X=k>=0?V-k/Y*$:V,q=L.map(re=>{var{value:te}=re;return te>=0?V-Math.abs(te)/Y*$:V+Math.abs(te)/Y*$})),I==="middle"?(V=$/2,F==="LTR"?(X=k>=0?V:V-Math.abs(k)/A*($/2),q=L.map(re=>{var{value:te}=re;return te>=0?V+Math.abs(te)/A*($/2):V-Math.abs(te)/A*($/2)})):F==="RTL"&&(X=k<=0?V:V-Math.abs(k)/A*($/2),q=L.map(re=>{var{value:te}=re;return te<=0?V+Math.abs(te)/A*($/2):V-Math.abs(te)/A*($/2)}))):I==="directional"&&(F==="LTR"?(V=0,X=V,q=L.map(re=>{var{value:te}=re;return V+Math.abs(te)/A*$})):F==="RTL"&&(V=y,X=V-Math.abs(k)/A*$,q=L.map(re=>{var{value:te}=re;return V-Math.abs(te)/A*$}))),F==="LTR"?(V+=S+W+R,X+=S+W+R,q=q.map(re=>re+S+W+R),N==="beside"&&E==="left"&&(V+=H+f,X+=H+f,q=q.map(re=>re+H+f))):F==="RTL"&&(V=V+S-z,X=X+S-z,q=q.map(re=>re+S-z),N==="beside"&&E==="right"&&(V=V-f-H,X=X-f-H,q=q.map(re=>re-f-H))),ne+=S+R,ue+=S,{maxWidth:$,x:X,y:T+1.5,zeroPosition:V,leftmostPosition:ne,rightmostPosition:ue,totalValueRange:Y,dataBarWidth:U,markerXs:q}}drawGradient(e,t,r,i,a,o,s){for(var l=t,u=i;u<=i+o;u+=.5)this.drawGradientPart(e,u,a,1,s,Yr.rgbToHex(Yr.OklabToLinearSRGB(l))),l=Yr.lerpColor(t,r,(u-i)/o)}drawGradientPart(e,t,r,i,a,o){e.fillStyle=o,e.fillRect(t,r,i,a)}}const fu=hv;function cv(n,e,t){return e=vv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vv(n){var e=mv(n,"string");return typeof e=="symbol"?e:String(e)}function mv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class gv extends gu{constructor(){super(...arguments),cv(this,"getCachedTokenBoxesForVisibleCell",er((e,t,r,i,a,o)=>{for(var s=0,l=a,u=[],d=0,h=0,v=0;v<t.length;v+=1){var m=t[v],{start:g,end:f}=m,p=f>e.length?e.substring(g):m.value;h+=o.measureText(e.substring(d,g)).width;var C=o.measureText(p).width,b=h,w=b+C,S={x1:b,y1:s,x2:w,y2:l,token:m};u.push(S),d=f,h+=C}return u},{max:1e4}))}drawCellContent(e,t,r,i){var{metrics:a,model:o,theme:s}=t,{fontWidths:l,modelColumns:u,modelRows:d,allRowHeights:h,firstColumn:v}=a,m=r===v,{textColor:g}=s,f=M(h,i),p=M(d,i),C=M(u,r),b=o.textForCell(C,p),w=o.truncationCharForCell(C,p);if(b&&f>0){var S,T=o.textAlignForCell(C,p)||"left";e.textAlign=T;var y=o.colorForCell(C,p,s)||g;e.fillStyle=y,e.save();var{width:O,x:R,y:E}=ee.getTextRenderMetrics(t,r,i),P=(S=l.get(e.font))!==null&&S!==void 0?S:tn,x=this.getCachedTruncatedString(e,b,O,P,w),I=o.tokensForCell(C,p,x.length);if(x)for(var N=0,L=0,F=R,{actualBoundingBoxDescent:k}=e.measureText(x);L<x.length;){var H,W,z=I[N],Y=L===z?.start?z:null,$=(H=(W=Y?.end)!==null&&W!==void 0?W:z?.start)!==null&&H!==void 0?H:x.length,A=x.substring(L,$),{width:U}=e.measureText(A),V=A.endsWith("…")?e.measureText(A.substring(0,A.length-1)).width:U;Y!=null?(e.fillStyle=s.hyperlinkColor,e.fillText(A,F,E),e.fillRect(F,E+k,V,1)):(e.fillStyle=y,e.fillText(A,F,E)),F+=U,L=$,Y!=null&&(N+=1)}e.restore()}m&&Fe(o)&&o.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}getTokenBoxesForVisibleCell(e,t,r){var i,{metrics:a,context:o,model:s,theme:l}=r;if(o==null||a==null)return Se;var{modelRows:u,modelColumns:d}=a,h=M(u,t),v=M(d,e),m=s.textForCell(v,h),{width:g,x:f,y:p}=ee.getTextRenderMetrics(r,e,t),{fontWidths:C}=a;o.save(),this.configureContext(o,r);var b=(i=C?.get(o.font))!==null&&i!==void 0?i:tn,w=s.truncationCharForCell(v,h),S=this.getCachedTruncatedString(o,m,g,b,w),{actualBoundingBoxAscent:T,actualBoundingBoxDescent:y}=o.measureText(S),O=T+y,R=s.tokensForCell(v,h,S.length);if(R.length===0)return o.restore(),Se;var E=this.getCachedTokenBoxesForVisibleCell(S,R,l.font,"middle",O,o).map(P=>({x1:P.x1+f,y1:P.y1+(p-T),x2:P.x2+f,y2:P.y2+(p-T),token:P.token}));return o.restore(),E}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}}const pu=gv;function Xr(n,e,t){return e=fv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fv(n){var e=pv(n,"string");return typeof e=="symbol"?e:String(e)}function pv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Zt{constructor(){Xr(this,"textCellRenderer",new pu),Xr(this,"dataBarCellRenderer",new fu),Xr(this,"getCachedBackgroundColors",er((e,t)=>e.split(" ").map(r=>{for(var i=[],a=0;a<t;a+=1)i.push(Yr.darkenForDepth(r,a,t));return i}),{max:1e3})),Xr(this,"getCachedColorWithAlpha",er((e,t)=>Yr.colorWithAlpha(e,t),{max:1e3})),Xr(this,"getCachedColorIsDark",er(e=>Jl.isDark(e),{max:1e3}))}static truncate(e,t){return t<e.length?e.substr(0,t)+"…":e}static binaryTruncateToWidth(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]:t.length,o=arguments.length>5?arguments[5]:void 0;if(a>=t.length&&e.measureText(t).width<=r)return t;if(o!==void 0){var s=e.measureText(o).width;return o.repeat(Math.max(1,Math.floor(r/s)))}for(var l=i,u=Math.min(t.length-1,a),d=t;u>=l;){var h=Math.ceil((u+l)/2),v=Zt.truncate(t,h);if(e.measureText(v).width<=r){if(d=v,l===h)break;l=h}else if(h===0){d=v;break}else u=h-1}return d}static truncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:tn,a=arguments.length>4?arguments[4]:void 0;if(r<=0||t.length<=0)return"";var o=Math.min(Math.max(0,Math.floor(r/i/2)-5),t.length),s=Math.min(Math.ceil(r/i*2),t.length);return Zt.binaryTruncateToWidth(e,t,r,o,s,a)}drawCanvas(e){var{context:t}=e;t.save(),this.configureContext(t,e),this.drawBackground(t,e),this.drawGrid(t,e),this.drawHeaders(t,e),this.drawFooters(t,e),this.drawDraggingColumn(t,e),this.drawDraggingRow(t,e),this.drawScrollBars(t,e),t.restore()}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}drawBackground(e,t){var{theme:r,metrics:i}=t,{width:a,height:o}=i;e.fillStyle=r.backgroundColor,e.fillRect(0,0,a,o)}drawGrid(e,t){var{metrics:r,draggingRow:i,draggingColumn:a}=t,{gridX:o,gridY:s}=r;e.translate(o,s),this.drawGridBackground(e,t,i==null&&a==null),this.drawCellContents(e,t),this.drawFloatingRows(e,t),this.drawFloatingColumns(e,t),e.translate(-o,-s)}drawFloatingRows(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingTopRowCount:s,floatingBottomRowCount:l,floatingRows:u,rowCount:d,visibleColumns:h,allRowYs:v,allRowHeights:m}=a;if(u.length!==0){o.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,t,u,o.floatingRowBackgroundColors),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),this.drawGridLinesForItems(e,t,h,u,o.floatingGridColumnColor,o.floatingGridRowColor),this.drawCellBackgroundsForItems(e,t,h,u),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{top:0,bottom:s-1,maxY:M(v,s-1)+M(m,s-1)-.5}),l>0&&this.drawSelectedRanges(e,t,{top:d-l-1,bottom:d-1,minY:M(v,d-l)+.5,maxY:M(v,d-1)+M(m,d-1)-.5});for(var g=0;g<h.length;g+=1)for(var f=h[g],p=0;p<u.length;p+=1){var C=u[p];this.drawCellContent(e,t,f,C)}}}drawFloatingColumns(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingLeftColumnCount:s,floatingRightColumnCount:l,floatingLeftWidth:u,floatingRightWidth:d,floatingColumns:h,gridX:v,maxX:m,columnCount:g,visibleRows:f,allColumnXs:p,allColumnWidths:C,width:b,height:w}=a;if(h.length!==0){o.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,t,f,o.floatingRowBackgroundColors,0,u),this.drawRowStripesForRows(e,t,f,o.floatingRowBackgroundColors,b-v-d,m)),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),e.save(),e.beginPath(),e.rect(0,0,u,w),e.clip(),this.drawGridLinesForItems(e,t,h,f,o.floatingGridColumnColor,o.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,t,h,f),this.drawFloatingBorders(e,t),s>0&&this.drawSelectedRanges(e,t,{left:0,maxX:M(p,s-1)+M(C,s-1)}),l>0&&this.drawSelectedRanges(e,t,{left:g-l,right:g-1,minX:M(p,g-l)+.5,maxX:M(p,g-1)+M(C,g-1)});for(var S=0;S<h.length;S+=1)for(var T=h[S],y=0;y<f.length;y+=1){var O=f[y];this.drawCellContent(e,t,T,O)}}}drawFloatingBorders(e,t){var{metrics:r,theme:i}=t,{floatingTopRowCount:a,floatingBottomRowCount:o,floatingLeftColumnCount:s,floatingRightColumnCount:l,rowCount:u,columnCount:d,allRowYs:h,allColumnXs:v,allRowHeights:m,allColumnWidths:g,maxX:f,maxY:p}=r,{floatingDividerOuterColor:C,floatingDividerInnerColor:b}=i;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=C,a>0){var w=M(h,a-1)+M(m,a-1)+.5;e.moveTo(0,w),e.lineTo(f,w)}if(o>0){var S=M(h,u-o)-.5;e.moveTo(0,S),e.lineTo(f,S)}if(s>0){var T=M(v,s-1)+M(g,s-1)+.5;e.moveTo(T,0),e.lineTo(T,p)}if(l>0){var y=M(v,d-l)-.5;e.moveTo(y,0),e.lineTo(y,p)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=b,a>0){var O=M(h,a-1)+M(m,a-1)+.5;e.moveTo(0,O),e.lineTo(f,O)}if(o>0){var R=M(h,u-o)-.5;e.moveTo(0,R),e.lineTo(f,R)}if(s>0){var E=M(v,s-1)+M(g,s-1)+.5;e.moveTo(E,0),e.lineTo(E,p)}if(l>0){var P=M(v,d-l)-.5;e.moveTo(P,0),e.lineTo(P,p)}e.stroke()}drawGridBackground(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.drawRowStripes(e,t),r&&(this.drawMouseColumnHover(e,t),this.drawMouseRowHover(e,t)),this.drawGridLines(e,t),this.drawCellBackgrounds(e,t);var{metrics:i}=t,{bottom:a,right:o,floatingBottomRowCount:s,floatingLeftColumnCount:l,floatingRightColumnCount:u,floatingTopRowCount:d,columnCount:h,rowCount:v,allRowHeights:m,allRowYs:g,allColumnXs:f,allColumnWidths:p,width:C,height:b}=i;this.drawSelectedRanges(e,t,{bottom:Math.min(a,v-s-1),right:Math.min(o,h-u-1),minX:l>0&&f.has(l+1)?M(f,l+1):-10,minY:d>0&&g.has(d+1)?M(g,d+1):-10,maxX:u>0&&f.has(h-u-1)?M(f,h-u-1)+M(p,h-u-1)-.5:C+10,maxY:s>0&&g.has(v-s-1)?M(g,v-s-1)+M(m,v-s-1)-.5:b+10})}drawRowStripes(e,t){var{metrics:r,theme:i}=t,{visibleRows:a}=r,{rowBackgroundColors:o}=i;o&&this.drawRowStripesForRows(e,t,a,o)}drawRowStripesForRows(e,t,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:t.metrics.maxX,{theme:s,metrics:l,model:u}=t,{maxDepth:d,shadowBlur:h,shadowColor:v}=s,m=this.getCachedBackgroundColors(i,d),{allRowYs:g,allRowHeights:f}=l,p=new Map,C=[],b=[],w=($,A)=>{var U=Fe(u)?u.depthForRow($):0,V=m[$%m.length],X=V[Math.min(U,V.length-1)];if(p.has(X)||p.set(X,[]),p.get(X).push($),A!=null){var q=Fe(u)?u.depthForRow(A):0;q<U?C.push($):q>U&&b.push(A)}},S=0;S<r.length;S+=1){var T=r[S],y=S>0?r[S-1]:void 0;w(T,y)}if(p.forEach(($,A)=>{e.fillStyle=A,e.beginPath();for(var U=0;U<$.length;U+=1){var V=$[U],X=M(g,V),q=M(f,V);e.rect(a,X,o,q)}e.fill()}),C.length>0){e.save();var O=this.getCachedColorWithAlpha(v,.15),R=this.getCachedColorWithAlpha(v,0),E=e.createLinearGradient(0,0,0,h);E.addColorStop(0,O),E.addColorStop(1,R),e.fillStyle=E;for(var P=0;P<C.length;P+=1){var x=C[P],I=M(g,x);e.translate(0,I),e.fillRect(a,0,o,h),e.translate(0,-I)}e.restore()}if(b.length>0){e.save();var N=this.getCachedColorWithAlpha(v,0),L=this.getCachedColorWithAlpha(v,.15),F=e.createLinearGradient(0,0,0,h);F.addColorStop(0,N),F.addColorStop(1,L),e.fillStyle=F;for(var k=0;k<b.length;k+=1){var H=b[k],W=M(g,H),z=M(f,H),Y=W+z-h;e.translate(0,Y),e.fillRect(a,0,o,h),e.translate(0,-Y)}e.restore()}}drawMouseColumnHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var s=ee.getColumnAtX(r,o);if(!(s==null||a.columnHoverBackgroundColor==null)){var{allColumnWidths:l,allColumnXs:u,maxY:d}=o;if(!(i>d)){var h=M(u,s),v=M(l,s);e.fillStyle=a.columnHoverBackgroundColor,e.fillRect(h,0,v,d)}}}}drawMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var{maxX:s}=o;if(!(r>s||a.rowHoverBackgroundColor==null)){var l=ee.getRowAtY(i,o);l!=null&&this.drawMouseRowHoverForRow(e,t,l)}}}drawFloatingMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t,{maxX:s,floatingTopRowCount:l,floatingBottomRowCount:u,rowCount:d,rowFooterWidth:h}=o;if(!(r==null||i==null||r>s+h||a.rowHoverBackgroundColor==null)){var v=ee.getRowAtY(i,o);v!=null&&(v<l||d-u<=v)&&this.drawMouseRowHoverForRow(e,t,v)}}drawMouseRowHoverForRow(e,t,r){var{metrics:i,selectedRanges:a,theme:o}=t,{allRowHeights:s,allRowYs:l,maxX:u}=i,d=M(l,r),h=M(s,r);o.rowHoverBackgroundColor!=null&&(e.fillStyle=o.rowHoverBackgroundColor);for(var v=0;v<a.length;v+=1){var{startRow:m,endRow:g}=a[v];if(m!=null&&g!=null&&m<=r&&g>=r){o.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=o.selectedRowHoverBackgroundColor);break}}e.fillRect(0,d,u,h)}drawGridLines(e,t){var{metrics:r,theme:i}=t,{visibleColumns:a,visibleRows:o}=r;this.drawGridLinesForItems(e,t,a,o,i.gridColumnColor,i.gridRowColor)}drawGridLinesForItems(e,t,r,i,a,o){a==null&&o==null||(e.lineWidth=1,e.beginPath(),a!=null&&(e.strokeStyle=a,this.drawGridLinesForColumns(e,t,r)),o!=null&&(e.strokeStyle=o,this.drawGridLinesForRows(e,t,i)),e.stroke())}drawGridLinesForColumns(e,t,r){for(var{metrics:i}=t,{allColumnXs:a,maxY:o}=i,s=0;s<r.length;s+=1){var l=r[s],u=M(a,l)+.5;e.moveTo(u,0),e.lineTo(u,o)}}drawGridLinesForRows(e,t,r){for(var{metrics:i}=t,{allRowYs:a,maxX:o}=i,s=o,l=0;l<r.length;l+=1){var u=r[l],d=M(a,u)+.5;e.moveTo(.5,d),e.lineTo(s-.5,d)}}drawCellBackgrounds(e,t){var{metrics:r}=t,{visibleColumns:i,visibleRows:a}=r;this.drawCellBackgroundsForItems(e,t,i,a)}drawCellBackgroundsForItems(e,t,r,i){e.save();for(var a=0;a<r.length;a+=1)for(var o=r[a],s=0;s<i.length;s+=1){var l=i[s],u=s+1<i.length?i[s+1]:void 0;this.drawCellBackground(e,t,o,l,u)}e.restore()}drawCellBackground(e,t,r,i,a){var{metrics:o,model:s,theme:l}=t,{firstColumn:u,modelColumns:d,modelRows:h,allColumnXs:v,allColumnWidths:m,allRowYs:g,allRowHeights:f}=o,p=M(h,i),C=M(d,r),b=s.backgroundColorForCell(C,p,l),w=r===u,S=Fe(s)&&s.hasExpandableRows;if(b!=null){var T=M(v,r)+1,y=M(g,i)+1,O=M(m,r)-1,R=M(f,i)-1;e.fillStyle=b,e.fillRect(T,y,O,R)}w&&S&&this.drawCellRowTreeDepthLines(e,t,i,a)}drawCellContents(e,t){for(var{metrics:r}=t,{visibleColumns:i}=r,a=0;a<i.length;a+=1){var o=i[a];this.drawColumnCellContents(e,t,o)}}drawColumnCellContents(e,t,r){var{metrics:i}=t,{allColumnXs:a,allColumnWidths:o,visibleRows:s,height:l}=i,u=M(a,r),d=M(o,r);e.save(),e.beginPath(),e.rect(u,0,d,l),e.clip();for(var h=0;h<s.length;h+=1){var v=s[h];this.drawCellContent(e,t,r,v)}e.restore()}drawCellContent(e,t,r,i){var{metrics:a,model:o}=t,{modelColumns:s,modelRows:l}=a,u=M(l,i),d=M(s,r),h=o.renderTypeForCell(d,u),v=this.getCellRenderer(h);v.drawCellContent(e,t,r,i)}getCellRenderer(e){switch(e){case"dataBar":return this.dataBarCellRenderer;default:return this.textCellRenderer}}drawCellRowTreeDepthLines(e,t,r,i){var{metrics:a,model:o,theme:s}=t;if(Fe(o)){var l=o.depthForRow(r);if(l!==0){var{firstColumn:u,allColumnXs:d,allRowYs:h,allRowHeights:v}=a,{treeDepthIndent:m,treeHorizontalPadding:g,treeLineColor:f}=s,p=M(d,u),C=M(h,r),b=M(v,r),w=i!==void 0?o.depthForRow(i):0,S=l>w?l-w:0;if(e.strokeStyle=f,e.lineWidth=1,l-S>0){e.beginPath();for(var T=0;T<l-S;T+=1){var y=p+T*m+m*.5+g+.5;e.moveTo(y,C),e.lineTo(y,C+b)}e.stroke()}if(S>0){e.beginPath();for(var O=l-S;O<l;O+=1){var R=p+O*m+m*.5+g+.5;e.moveTo(R,C),e.lineTo(R,C+Math.ceil(b/2)),e.moveTo(R-.5,C+Math.ceil(b/2)+.5),e.lineTo(R+m-.5,C+Math.ceil(b/2)+.5)}e.stroke()}}}}drawHeaders(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawColumnHeaders(e,t),this.drawRowHeaders(e,t)}drawFooters(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawRowFooters(e,t)}drawColumnHeaders(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o,draggingColumnSeparator:s,isDragging:l,model:u}=t,{columnHeaderHeight:d,floatingColumns:h,gridX:v,width:m,visibleColumns:g,allColumnWidths:f,allColumnXs:p,floatingLeftColumnCount:C,floatingLeftWidth:b,floatingRightWidth:w,modelColumns:S,columnHeaderMaxDepth:T}=o;if(!(d<=0)){var{headerHiddenSeparatorSize:y,headerHiddenSeparatorHoverColor:O,headerSeparatorColor:R,headerSeparatorHoverColor:E}=a,P=d*.5,x=d*(T-1)+d*.5-P*.5,I=C>0;if(e.save(),this.drawColumnHeadersForRange(e,t,[g[0],g[g.length-1]],{minX:v+b,maxX:m-w}),I&&this.drawColumnHeadersForRange(e,t,[h[0],h[h.length-1]],{minX:v,maxX:v+b}),R){e.strokeStyle=R;var N=[...f.entries()].filter(tt=>{var[Qe,Ke]=tt;return Ke===0}).map(tt=>{var[Qe]=tt;return Qe});e.beginPath(),e.fillStyle=R;for(var L=0;L<N.length;L+=1){var F=N[L],k=M(p,F),H=M(f,F),W=v+k+H+.5-y*.5;e.rect(W,x,y,P)}e.fill()}if(E){var{index:z,depth:Y}=s??{};if(z==null&&r!=null&&i!=null){var $=mu.getColumnSeparator(ee.getGridPointFromXY(r,i,o),o,u,a);z=$?.index,Y=$?.depth}var A;if(z==null)A=!1;else{var U=S.get(z),V=S.get(z+1);U==null||V==null?A=!1:A=u.textForColumnHeader(U,Y)!==u.textForColumnHeader(V,Y)}if(A&&z!=null&&Y!=null&&(!l||s!=null)){e.strokeStyle=E;var X=M(p,z),q=M(f,z),ne=v+X+q+.5,ue=g.indexOf(z),re=ue<g.length-1?g[ue+1]:null,te=re!=null?f.get(re):null,Te=q===0,Ie=te!=null&&te===0;Te?(e.strokeStyle=O,e.fillStyle=O,e.fillRect(ne,x,y*.5,P)):Ie&&(e.fillStyle=E,e.fillRect(ne-y*.5,x,y*.5,P)),e.beginPath(),e.moveTo(ne,(T-Y-1)*d),e.lineTo(ne,(T-Y)*d-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,t,r,i){var{model:a}=t,{columnHeaderMaxDepth:o}=a;if(o!==0)for(var s=0;s<=o;s+=1)this.drawColumnHeadersAtDepth(e,t,r,i,s)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:s,theme:l}=t,{modelColumns:u,allColumnXs:d,gridX:h,userColumnWidths:v,allColumnWidths:m,movedColumns:g}=o,{columnHeaderHeight:f,columnWidth:p}=l,{columnHeaderMaxDepth:C}=s,{minX:b,maxX:w}=i,S=w-b;if(C!==0){var T=r[0],y=r[1];if(e.save(),e.translate(0,(C-a-1)*f),a===0){this.drawColumnHeader(e,t,"",b,w);for(var O=T;O<=y;O+=1)this.drawColumnHeaderAtIndex(e,t,O,i)}if(a>0)for(var R=T;R<=y;){var{columnCount:E}=o,P=M(u,R),x=s.textForColumnHeader(P,a),I=s.colorForColumnHeader(P,a),N=M(d,R)+h,L=N+M(m,R);if(x!=null){for(var F=R-1;F>=0&&(L-N<S||N>b);){var k,H,W,z=(k=u.get(F))!==null&&k!==void 0?k:ee.getModelIndex(F,g);if(z==null||s.textForColumnHeader(z,a)!==x)break;var Y=(H=(W=v.get(z))!==null&&W!==void 0?W:m.get(F))!==null&&H!==void 0?H:p;N-=Y,F-=1}for(var $=R+1;$<E&&(L-N<S||L<w);){var A,U,V,X=(A=u.get($))!==null&&A!==void 0?A:ee.getModelIndex($,g);if(s.textForColumnHeader(X,a)!==x)break;var q=(U=(V=v.get(X))!==null&&V!==void 0?V:m.get($))!==null&&U!==void 0?U:p;L+=q,$+=1}R=$-1;var ne=L-N>=S,ue=N;ne&&(L<w?ue=L-S:N<b&&(ue=b)),this.drawColumnHeader(e,t,x,ue,Math.min(L-N,S),{backgroundColor:I??void 0},i)}R+=1}e.restore()}}drawColumnHeaderAtIndex(e,t,r,i){var a,{metrics:o,model:s}=t,{modelColumns:l,allColumnWidths:u,allColumnXs:d,gridX:h}=o,v=M(u,r),m=M(d,r)+h,g=M(l,r),f=s.textForColumnHeader(g);f!=null&&this.drawColumnHeader(e,t,f,m,v,{backgroundColor:(a=s.colorForColumnHeader(g))!==null&&a!==void 0?a:void 0},i)}drawColumnHeader(e,t,r,i,a,o,s){var l;if(!(a<=0)){var{metrics:u,theme:d}=t,{headerHorizontalPadding:h,columnHeaderHeight:v,headerBackgroundColor:m,headerColor:g,headerSeparatorColor:f,black:p,white:C}=d,{fontWidths:b,width:w}=u,S=(l=b.get(e.font))!==null&&l!==void 0?l:tn,T=a-h*2,y=T/S,{backgroundColor:O=m,separatorColor:R=f}=o??{},{textColor:E=g}=o??{};try{var P=this.getCachedColorIsDark(O),x=this.getCachedColorIsDark(E);P&&x?E=C:!P&&!x&&(E=p)}catch{}var{minX:I=0,maxX:N=w}=s??{};e.save(),e.rect(I,0,N-I,v),e.clip(),O!=null&&(e.fillStyle=O,e.fillRect(i,0,a,v)),R!=null&&(e.strokeStyle=R,e.beginPath(),i>0&&(e.moveTo(i+.5,0),e.lineTo(i+.5,v)),e.moveTo(i+a+.5,0),e.lineTo(i+a+.5,v),e.moveTo(i,v-.5),e.lineTo(i+a,v-.5),e.stroke()),e.beginPath(),e.rect(i,0,a,v),e.clip(),e.fillStyle=E;var L=r;y<=0?L="":L.length>y&&(L="".concat(L.substring(0,y-1),"…"));var F=L.length*S,k=i+a*.5,H=v*.5;I+=h,N-=h;var W=i+h,z=Ae(W,I,N),Y=i+a-h,$=Ae(Y,I,N),A=$-z,U=k-F*.5<I,V=k+F*.5>N;U?F<A?k=I+F*.5:k=Y-F*.5:V&&(F<A?k=N-F*.5:k=W+F*.5),e.textAlign="center",e.fillText(L,k,H),e.restore()}}drawRowHeaders(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o,draggingRowSeparator:s}=t,{gridY:l,rowHeaderWidth:u,height:d,visibleRows:h,allRowHeights:v,allRowYs:m}=a;if(!(u<=0)){var{headerBackgroundColor:g,headerColor:f,headerHiddenSeparatorSize:p,headerHiddenSeparatorHoverColor:C,headerSeparatorColor:b,headerSeparatorHoverColor:w}=o,S=u*.5,T=u*.5-S*.5;if(e.save(),e.beginPath(),e.fillStyle=g,e.fillRect(0,0,u,d),b){e.strokeStyle=b,e.beginPath(),e.moveTo(0,l+.5),e.lineTo(u,l+.5);for(var y=[],O=!1,R=0;R<h.length;R+=1){var E=h[R],P=M(m,E),x=M(v,E);if(x>0){var I=l+P+x+.5;e.moveTo(0,I),e.lineTo(u,I),O=!1}else O||(O=!0,y.push(E))}e.moveTo(u-.5,0),e.lineTo(u-.5,d),e.stroke(),e.beginPath(),e.fillStyle=b;for(var N=0;N<y.length;N+=1){var L=y[N],F=M(m,L),k=M(v,L),H=l+F+k+.5-p*.5;e.rect(T,H,S,p)}e.fill()}if(w){var{index:W=null}=s??{};if(W==null&&r!=null&&i!=null&&(W=ee.getRowSeparatorIndex(r,i,a,o)),W!=null){e.strokeStyle=w;var z=M(m,W),Y=M(v,W),$=l+z+Y+.5,A=h.indexOf(W),U=A<h.length-1?h[A+1]:null,V=U!=null?v.get(U):null,X=Y===0,q=V!=null&&V===0;X?(e.strokeStyle=C,e.fillStyle=C,e.fillRect(T,$,S,p*.5)):q&&(e.fillStyle=w,e.fillRect(T,$-p*.5,S,p*.5)),e.beginPath(),e.moveTo(.5,$),e.lineTo(u+.5,$),e.stroke()}}e.beginPath(),e.rect(0,l,u,d),e.clip(),e.fillStyle=f,e.textAlign="right";for(var ne=0;ne<h.length;ne+=1){var ue=h[ne],re=M(v,ue),te=M(m,ue)+l;this.drawRowHeader(e,t,ue,te,re)}e.restore()}}drawRowHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,model:s,theme:l}=t,{modelRows:u,rowHeaderWidth:d}=o,h=M(u,r),v=d-l.cellHorizontalPadding,m=i+a*.5;e.fillText(s.textForRowHeader(h),v,m)}}drawRowFooters(e,t){var{mouseX:r,mouseY:i,metrics:a,model:o,theme:s,draggingRowSeparator:l}=t,{gridY:u,gridX:d,maxX:h,modelRows:v,rowFooterWidth:m,height:g,verticalBarWidth:f,visibleRows:p,allRowHeights:C,allRowYs:b,width:w}=a;if(!(m<=0)){var{cellHorizontalPadding:S,headerBackgroundColor:T,headerColor:y,headerHiddenSeparatorSize:O,headerHiddenSeparatorHoverColor:R,headerSeparatorColor:E,headerSeparatorHoverColor:P}=s,x=m*.5,I=m*.5-x*.5,N=Math.min(d+h,w-m-f);if(e.save(),e.beginPath(),e.fillStyle=T,e.fillRect(N,u,m,g),E){e.strokeStyle=E,e.beginPath(),e.moveTo(N,u+.5),e.lineTo(m,u+.5);for(var L=[],F=!1,k=0;k<p.length;k+=1){var H=p[k],W=M(b,H),z=M(C,H);if(z>0){var Y=u+W+z+.5;e.moveTo(N+.5,Y),e.lineTo(N+m-.5,Y),F=!1}else F||(F=!0,L.push(H))}e.moveTo(N+.5,u),e.lineTo(N+.5,g),e.stroke(),e.beginPath(),e.fillStyle=E;for(var $=0;$<L.length;$+=1){var A=L[$],U=M(b,A),V=M(C,A),X=u+U+V+.5-O*.5;e.rect(N+I,X,x,O)}e.fill()}if(P){var{index:q=null}=l??{};if(q==null&&r!=null&&i!=null&&(q=ee.getRowSeparatorIndex(r,i,a,s)),q!=null){e.strokeStyle=P;var ne=M(b,q),ue=M(C,q),re=u+ne+ue+.5,te=p.indexOf(q),Te=te<p.length-1?p[te+1]:null,Ie=Te!=null?C.get(Te):null,tt=ue===0,Qe=Ie!=null&&Ie===0;tt?(e.strokeStyle=R,e.fillStyle=R,e.fillRect(I,re,x,O*.5)):Qe&&(e.fillStyle=P,e.fillRect(I,re-O*.5,x,O*.5)),e.beginPath(),e.moveTo(N+.5,re),e.lineTo(N+m+.5,re),e.stroke()}}e.beginPath(),e.rect(N,u,m,g),e.clip(),e.fillStyle=y,e.textAlign="left";for(var Ke=N+S,Ue=0;Ue<p.length;Ue+=1){var Ze=p[Ue],Pe=M(C,Ze);if(Pe>0){var ht=M(b,Ze)+u,ct=M(v,Ze),Bt=ht+Pe*.5;e.fillText(o.textForRowFooter(ct),Ke,Bt)}}e.restore()}}drawSelectedRanges(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:i,cursorRow:a,draggingRow:o,draggingColumn:s,editingCell:l,metrics:u,model:d,selectedRanges:h,theme:v}=t,{allColumnWidths:m,allColumnXs:g,allRowHeights:f,allRowYs:p,width:C,height:b}=u,{left:w=u.left,top:S=u.top,right:T=u.right,bottom:y=u.bottom,minY:O=-10,maxY:R=b+10,minX:E=-10,maxX:P=C+10}=r;if(h.length!==0){var x=Le(d)&&d.isEditable&&l==null&&o==null&&s==null&&i!=null&&a!=null&&g.has(i)&&p.has(a);if(x){var I=M(g,i),N=M(p,a),L=M(m,i),F=M(f,a);e.save(),e.beginPath(),e.rect(0,0,C,b),e.rect(I,N,L,F),e.clip("evenodd")}e.beginPath();for(var k=0;k<h.length;k+=1){var H=h[k],W=H.startColumn!==null?H.startColumn:w,z=H.startRow!==null?H.startRow:S,Y=H.endColumn!==null?H.endColumn:T,$=H.endRow!==null?H.endRow:y;if($>=S&&y>=z&&Y>=w&&T>=W){var A=W>=w&&g.has(W)?Math.round(M(g,W))+.5:E,U=z>=S&&p.has(z)?Math.max(Math.round(M(p,z))+.5,.5):O,V=Y<=T&&g.has(Y)?Math.round(M(g,Y)+M(m,Y))-.5:P,X=$<=y&&p.has($)?Math.round(M(p,$)+M(f,$))-.5:R;e.rect(A,U,V-A,X-U)}}e.fillStyle=v.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=v.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=v.selectionOutlineColor,e.lineWidth=1,e.stroke(),x&&i!=null&&a!=null&&(e.restore(),this.drawActiveCell(e,t,i,a))}}drawActiveCell(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:Zt.ACTIVE_CELL_BORDER_WIDTH,{metrics:o,theme:s}=t,{allColumnWidths:l,allColumnXs:u,allRowHeights:d,allRowYs:h}=o,v=M(u,r),m=M(h,i),g=M(l,r),f=M(d,i),p=v-a*.5,C=m-a*.5,b=g+a,w=f+a;p<=0&&(b+=p-1,p=1),C<=0&&(w+=C-1,C=1);var{lineWidth:S}=e;e.beginPath(),e.lineWidth=a,e.strokeStyle=s.selectionOutlineColor,this.drawRoundedRect(e,p,C,b,w),e.stroke(),e.lineWidth=S}drawRoundedRect(e,t,r,i,a){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Zt.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(t+o,r),e.lineTo(t+i-o,r),e.quadraticCurveTo(t+i,r,t+i,r+o),e.lineTo(t+i,r+a-o),e.quadraticCurveTo(t+i,r+a,t+i-o,r+a),e.lineTo(t+o,r+a),e.quadraticCurveTo(t,r+a,t,r+a-o),e.lineTo(t,r+o),e.quadraticCurveTo(t,r,t+o,r),e.closePath()}drawDraggingColumn(e,t){var r,{draggingColumn:i,metrics:a,mouseX:o,theme:s,model:l}=t;if(!(i==null||o==null)){var{range:u,depth:d}=i,{gridX:h,gridY:v,allColumnXs:m,allColumnWidths:g,height:f,width:p,columnHeaderMaxDepth:C,columnHeaderHeight:b,movedColumns:w,modelColumns:S,floatingLeftWidth:T}=a,y=(r=S.get(u[0]))!==null&&r!==void 0?r:ee.getModelIndex(u[0],w),O=l.getColumnHeaderGroup(y,d);if(!(d>0&&!O)){var[R,E]=u,P=M(m,R),x=M(m,E)+M(g,E),I=x-P,N=i.left,{backgroundColor:L,font:F,headerFont:k,reorderOffset:H,shadowBlur:W,shadowColor:z}=s,Y=(C-d-1)*b;e.save(),e.translate(h,0),e.save(),e.beginPath(),e.rect(T,0,p,f),e.clip(),e.fillStyle=L,e.fillRect(P,Y,I,f),e.restore(),e.translate(0,H),e.save(),e.shadowColor=z,e.shadowBlur=W,e.fillStyle=L,e.fillRect(i.left,Y+H,i.width,f),e.restore(),e.beginPath(),e.rect(i.left,Y,i.width+1,f),e.clip(),e.translate(N-P,0),e.font=k;for(var $=[],A=i.range[0];A<=i.range[1];A+=1)$.push(A);this.drawColumnHeaders(e,t),this.drawColumnHeadersForRange(e,t,[$[0],$[$.length-1]],{minX:P,maxX:p}),e.translate(0,v),e.font=F,this.drawGridBackground(e,t);for(var U=R;U<=E;U+=1)this.drawColumnCellContents(e,t,U);e.restore()}}}drawDraggingRow(e,t){var{draggingRow:r,draggingRowOffset:i,metrics:a,mouseY:o,theme:s}=t;if(!(r==null||o==null)){var{gridX:l,gridY:u,allRowYs:d,allRowHeights:h,width:v}=a,m=M(d,r),g=M(h,r)+1,{backgroundColor:f,font:p,headerFont:C,reorderOffset:b,shadowBlur:w,shadowColor:S}=s;e.save(),e.translate(0,u),e.fillStyle=f,e.fillRect(0,m,v,g),e.translate(l+b,o-m-u-(i??0)),e.save(),e.shadowColor=S,e.shadowBlur=w,e.fillStyle=f,e.fillRect(-l,m,v,g),e.restore(),e.beginPath(),e.rect(-l,m,v,g),e.clip(),e.font=p,this.drawGridBackground(e,t),this.drawCellContents(e,t),e.translate(-l,-u),e.font=C,this.drawRowHeaders(e,t),e.restore()}}drawScrollBars(e,t){var{isDraggingHorizontalScrollBar:r,isDraggingVerticalScrollBar:i,isDragging:a,metrics:o,mouseX:s,mouseY:l,theme:u}=t;if(!(u.scrollBarSize<=0)){var{width:d,height:h,handleHeight:v,handleWidth:m,scrollX:g,scrollY:f,hasHorizontalBar:p,hasVerticalBar:C,barWidth:b,barHeight:w,barLeft:S,barTop:T}=o,{scrollBarBackgroundColor:y,scrollBarHoverBackgroundColor:O,scrollBarCasingColor:R,scrollBarCornerColor:E,scrollBarColor:P,scrollBarHoverColor:x,scrollBarActiveColor:I,scrollBarSize:N,scrollBarHoverSize:L,scrollBarCasingWidth:F,scrollBarSelectionTick:k,scrollBarSelectionTickColor:H,scrollBarActiveSelectionTickColor:W,autoSelectRow:z,autoSelectColumn:Y}=u,$=s!=null&&l!=null&&s<=d&&l<=h,A=i||C&&!r&&!a&&s!=null&&l!=null&&s>=d-L&&l>=T&&$,U=r||p&&!i&&!a&&!A&&s!=null&&l!=null&&l>=h-L&&s>=S&&$,V=U?L:N,X=A?L:N;if(e.translate(S,T),p&&C&&(e.fillStyle=R,e.fillRect(d-S-N,h-T-N,N,N),e.fillStyle=E,e.fillRect(d-S-N+F,h-T-N+F,N-F,N-F)),p){var q=g,ne=h-T-V;if(e.fillStyle=R,e.fillRect(0,ne,b,V-F),e.fillStyle=U?O:y,e.fillRect(0,ne+F,b,V-F),r?e.fillStyle=I:U?e.fillStyle=x:e.fillStyle=P,e.fillRect(q,ne+F,m,V-F),!z&&k&&H!=null&&W!=null){e.fillStyle=H;for(var{selectedRanges:ue,cursorColumn:re}=t,{lastLeft:te,columnCount:Te}=o,Ie=[...ue].filter(je=>je.startColumn!=null&&je.endColumn!=null),tt=Ie.map(je=>[je.startColumn,je.endColumn]).sort(ee.compareRanges),Qe=ee.mergeSortedRanges(tt),Ke=je=>je<=te?je/te*(b-m):b-m+(je-te)/(Te-te)*m,Ue=0;Ue<Qe.length;Ue+=1){var Ze=Qe[Ue],Pe=Ze[0],ht=Ze[1];if(Pe!=null&&ht!=null&&(Pe!==re||ht!==re)){var ct=Ke(Pe),Bt=Math.max(1,Math.round(Ke(ht+1)-ct)),Vt=V-F;e.fillRect(ct,ne+F+Math.round(Vt/3),Bt,Math.round(Vt/3))}}if(re!=null){var ur=Ke(re),br=2,Pt=V-F;e.fillStyle=W,e.fillRect(ur,ne+F,br,Pt)}}}if(C){var Je=d-S-X,Ut=f;if(e.fillStyle=R,e.fillRect(Je,0,X-F,w),e.fillStyle=A?O:y,e.fillRect(Je+F,0,X-F,w),i?e.fillStyle=I:A?e.fillStyle=x:e.fillStyle=P,e.fillRect(Je+F,Ut,X-F,v),!Y&&k&&H!=null&&W!=null){var{selectedRanges:vt,cursorRow:mt}=t,{lastTop:Xe,rowCount:Ft}=o,$t=je=>je<=Xe?je/Xe*(w-v):w-v+(je-Xe)/(Ft-Xe)*v;e.fillStyle=H;for(var It=[...vt].filter(je=>je.startRow!=null&&je.endRow!=null),gt=It.map(je=>[je.startRow,je.endRow]).sort(ee.compareRanges),wr=ee.mergeSortedRanges(gt),tr=0;tr<wr.length;tr+=1){var dr=wr[tr],At=dr[0],Gt=dr[1];if(At!=null&&Gt!=null&&(At!==mt||Gt!==mt)){var Ur=$t(At),sn=X-F,ln=Math.max(1,Math.round($t(Gt+1)-Ur));e.fillRect(Je+F+Math.round(sn/3),Ur,Math.round(sn/3),ln)}}if(mt!=null){var un=Math.round($t(mt)),dn=X-F,hn=2;e.fillStyle=W,e.fillRect(Je+F,un,dn,hn)}}}e.translate(-S,-T)}}}Xr(Zt,"DEFAULT_EDGE_RADIUS",2);Xr(Zt,"ACTIVE_CELL_BORDER_WIDTH",2);function Ln(n,e,t){return e=Cv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Cv(n){var e=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 Ss=100;class wv extends ze{constructor(){super(...arguments),Ln(this,"startPoint",void 0),Ln(this,"hasExtendedFloating",!1),Ln(this,"timer",void 0),Ln(this,"lastTriggerTime",void 0),Ln(this,"dragBounds",void 0)}onDown(e,t,r){var{x:i,y:a,column:o,row:s}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{gridX:u,gridY:d,maxX:h,maxY:v}=l,m=i-u,g=a-d;if(m<0||g<0||o==null&&m>h||s==null&&g>v)return!1;var f=ee.isModifierKeyDown(r),p=r.shiftKey;f||(p?t.trimSelectedRanges():t.clearSelectedRanges());var C=t.getTheme(),{autoSelectRow:b,autoSelectColumn:w}=C;return(o!==null||!w)&&(s!==null||!b)&&(t.focus(),t.moveCursorToPosition(o,s,p,!1,p&&f)),this.startPoint=e,this.hasExtendedFloating=!1,this.dragBounds=ee.getScrollDragBounds(l,s,o),!0}onDrag(e,t){if(this.startPoint===void 0)return!1;this.stopTimer();var{row:r,column:i}=this.startPoint,{x:a,y:o}=e,{row:s,column:l}=e,{metrics:u}=t;if(!u)throw new Error("metrics not set");var{left:d,lastLeft:h,top:v,lastTop:m,columnWidth:g,rowHeight:f}=u,p=ee.getScrollDragBounds(u,r,i),C=0,b=0;if(d<h&&(a<p.x1?C=a-p.x1:a>p.x2&&(C=a-p.x2)),v<m&&(o<p.y1?b=o-p.y1:o>p.y2&&(b=o-p.y2)),C!==0||b!==0)this.startTimer(t,e,C>0?Math.ceil(C/g):Math.floor(C/g),b>0?Math.ceil(b/f):Math.floor(b/f));else if(s!=null&&l!=null){var{floatingTopRowCount:w,floatingBottomRowCount:S,floatingLeftColumnCount:T,floatingRightColumnCount:y,columnCount:O,rowCount:R,bottom:E,right:P,topVisible:x,bottomVisible:I,leftVisible:N,rightVisible:L}=u;this.hasExtendedFloating||(r!==null&&r<w&&s>=w?(s=w,this.hasExtendedFloating=!0):r!==null&&r>=R-S&&s<R-S&&(s=R-S-1,this.hasExtendedFloating=!0),i!==null&&i<T&&l>=T?(l=T,this.hasExtendedFloating=!0):i!==null&&i>=O-y&&l<O-y&&(l=O-y-1,this.hasExtendedFloating=!0)),r!==null&&!ee.isFloatingRow(r,u)&&ee.isFloatingRow(s,u)&&(r>s&&s<v?s=x-1:r<s&&s>E&&(s=I+1)),i!==null&&!ee.isFloatingColumn(i,u)&&ee.isFloatingColumn(l,u)&&(i>l&&l<d?l=N-1:i<l&&l>P&&(l=L+1)),t.moveCursorToPosition(l,s,!0,!0)}return!0}onUp(e,t){return this.startPoint!==void 0&&(this.startPoint=void 0,this.dragBounds=void 0,this.stopTimer(),t.commitSelection()),!1}moveSelection(e,t,r,i){var{row:a,column:o}=t,{metrics:s}=e;if(!s)throw new Error("metrics not set");var{selectionEndRow:l,selectionEndColumn:u}=e.state;if(l==null||u==null)throw new Error("selection not set");var{rowCount:d,columnCount:h}=s,v=r<0&&o!=null?o:0,m=r>0&&o!=null?o:h-1,g=i<0&&a!=null?a:0,f=i>0&&a!=null?a:d-1;e.moveCursorToPosition(Math.min(Math.max(v,u+r),m),Math.min(Math.max(g,l+i),f),!0),this.lastTriggerTime=Date.now()}startTimer(e,t,r,i){this.stopTimer();var a=this.lastTriggerTime!=null?Ss-Math.min(Ss,Date.now()-this.lastTriggerTime):0;this.timer=setTimeout(()=>{this.moveSelection(e,t,r,i),this.startTimer(e,t,r,i)},a)}stopTimer(){this.timer!==void 0&&(clearTimeout(this.timer),this.timer=void 0)}}const Sv=wv;function ys(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function pt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ys(Object(t),!0).forEach(function(r){Ar(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ys(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ar(n,e,t){return e=yv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yv(n){var e=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)}var Ts=5,Ev=1e3/60,gi=10;function Or(n,e,t,r){var i,{modelColumns:a,movedColumns:o,allColumnXs:s,columnCount:l,allColumnWidths:u,userColumnWidths:d,calculatedColumnWidths:h,floatingLeftWidth:v,maxX:m}=t;if(e==null||n==null||n>l||n<0)return null;var g=(i=a.get(n))!==null&&i!==void 0?i:ee.getModelIndex(n,o),f=r.getColumnHeaderGroup(g,e),p=f!=null,C,b,w;if(f!=null){var S,T,y,[O,R]=f.getVisibleRange(o);C=(S=s.get(O))!==null&&S!==void 0?S:v,b=((T=s.get(R))!==null&&T!==void 0?T:m)+((y=u.get(R))!==null&&y!==void 0?y:0),w=[O,R]}else{var E,P,x,I=s.get(n);if(I==null)return null;C=I,b=C+((E=(P=(x=u.get(n))!==null&&x!==void 0?x:d.get(g))!==null&&P!==void 0?P:h.get(g))!==null&&E!==void 0?E:0),w=[n,n]}return{visibleIndex:n,modelIndex:g,left:C,right:b,width:b-C,isColumnGroup:p,range:w,depth:e}}class Ov extends ze{constructor(){super(...arguments),Ar(this,"cursor",null),Ar(this,"draggingOffset",void 0),Ar(this,"initialOffset",void 0),Ar(this,"initialGridPoint",void 0),Ar(this,"scrollingInterval",void 0),Ar(this,"scrollingDirection",void 0),Ar(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var{metrics:r}=e;if(r){var{left:i,lastLeft:a,leftOffset:o,userColumnWidths:s,calculatedColumnWidths:l,movedColumns:u,allColumnWidths:d}=r,h=i,v=o;if(t==="left")for(v-=gi;v<0;){var m;h-=1;var g=ee.getModelIndex(i-1,u),f=(m=s.get(g))!==null&&m!==void 0?m:l.get(g);f===void 0?v=0:v+=f,h<0&&(v=0,h=0)}else{v+=gi;for(var p=d.get(i);p!==void 0&&v>p;){var C;h+=1,v-=p;var b=ee.getModelIndex(i+1,u);p=(C=s.get(b))!==null&&C!==void 0?C:l.get(b),h>a&&(v=0,h=a)}}var{mouseX:w,mouseY:S}=e.state;r==null||w==null||S==null||(this.moveDraggingColumn(w,e,t==="left"?-gi:gi),e.setState({left:h,leftOffset:v}),(t==="left"&&h===0&&o===0||t==="right"&&h===a)&&this.clearScrollInterval())}},Ev))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var{model:r}=t.props,{x:i,column:a,columnHeaderDepth:o}=e,{metrics:s}=t;if(!s)throw new Error("Metrics not set");var l=Or(a,o,s,r);if(a==null||l==null||o==null||o>0&&!l.isColumnGroup)return!1;var{rowHeaderWidth:u}=s;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,l.modelIndex!=null&&o!=null&&r.isColumnMovable(l.modelIndex,o)&&(this.draggingOffset=i-l.left-u,this.initialOffset=this.draggingOffset),!1}onDrag(e,t,r){if(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0)return!1;var{x:i,y:a}=e,{columnHeaderDepth:o}=this.initialGridPoint,{model:s}=t.props,{draggingColumn:l}=this,{metrics:u}=t;if(!u)throw new Error("Metrics not set");if(!l&&Math.abs(this.initialGridPoint.x-i)<Ts&&Math.abs(this.initialGridPoint.y-a)<Ts)return!1;if(l==null){var d=Or(this.initialGridPoint.column,o,u,s);if(!d||o==null||!s.isColumnMovable(d.modelIndex)||o>0&&!d.isColumnGroup||d.range[0]==null)return!1;l={range:d.range,depth:o,left:d.left,width:d.width};var h=Or(l.range[0],0,u,s),v=Or(l.range[1],0,u,s);if(!h||!v)return!1;this.draggingColumn=l,t.setState({draggingColumn:l,isDragging:!0})}return this.cursor="move",this.moveDraggingColumn(e.x,t,r.movementX),!0}moveDraggingColumn(e,t,r){var i;if(!(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0||this.draggingColumn==null||r===0)){if(this.initialOffset!==this.draggingOffset){this.draggingOffset<this.initialOffset&&this.initialOffset<this.draggingOffset+r||this.draggingOffset>this.initialOffset&&this.initialOffset>this.draggingOffset+r?this.draggingOffset=this.initialOffset:this.draggingOffset+=r,this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:a}=this.draggingColumn,{model:o}=t.props,{movedColumns:s}=t.state,{metrics:l}=t;if(!l)throw new Error("Metrics not set");var{floatingLeftWidth:u,width:d,columnHeaderMaxDepth:h,allColumnXs:v}=l,m=r<0,g=Or(this.draggingColumn.range[0],a,l,o);if(g){var f=e-this.draggingOffset,p=f+g.width;this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:f}),t.setState({draggingColumn:this.draggingColumn});var C=Or(ee.getColumnAtX(Ae(m?f:p,u,d),l,!0),a,l,o),b=o.getColumnHeaderParentGroup(g.modelIndex,g.depth);if(C){if(b!==void 0){var w=b.getVisibleRange(s);if(C.visibleIndex<w[0]){var S,T=this.moveColumn(g,w[0],s);this.draggingOffset=e-((S=v.get(w[0]))!==null&&S!==void 0?S:0),this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:T});return}if(C.visibleIndex>w[1]){var y,O=this.moveColumn(g,w[1]-(g.range[1]-g.range[0]),s),{right:R=0}=(y=Or(w[1],0,l,o))!==null&&y!==void 0?y:{};this.draggingOffset=e-(R-g.width),this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:O});return}}if(!o.isColumnMovable(C.modelIndex)){var E=C.visibleIndex;if(m)for(E+=1;E<g.visibleIndex&&!o.isColumnMovable(ee.getModelIndex(E,s));)E+=1;else for(E-=1;E>g.visibleIndex&&!o.isColumnMovable(ee.getModelIndex(E,s));)E-=1;if(E!==g.visibleIndex){m||(E-=g.range[1]-g.range[0]);var P=this.moveColumn(g,E,s);t.setState({movedColumns:P,draggingColumn:this.draggingColumn})}var x=Or(E,0,l,o);if(m){var I;this.draggingOffset=e-((I=x?.left)!==null&&I!==void 0?I:0)}else{var N;this.draggingOffset=e-(((N=x?.right)!==null&&N!==void 0?N:0)-g.width)}this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}if(f<=u?this.setScrollInterval(t,"left"):p>d?this.setScrollInterval(t,"right"):this.clearScrollInterval(),C.visibleIndex!==g.visibleIndex&&!(m&&g.visibleIndex<C.visibleIndex||!m&&g.visibleIndex>C.visibleIndex)){for(var L=C.left+C.width*.5,F=o.getColumnHeaderParentGroup(g.modelIndex,g.depth),k,H=((i=F?.depth)!==null&&i!==void 0?i:h)-1;H>=0&&k===void 0;)k=o.getColumnHeaderGroup(C.modelIndex,H),H-=1;var W;m&&f<L&&(!k||C.visibleIndex===k.getVisibleRange(s)[0])&&(W=this.moveColumn(g,C.range[0],s)),!m&&p>L&&(!k||C.visibleIndex===k.getVisibleRange(s)[1])&&(W=this.moveColumn(g,C.range[1]-(g.range[1]-g.range[0]),s)),W&&(this.draggingColumn=pt(pt({},this.draggingColumn),{},{left:f}),t.setState({movedColumns:W,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?ee.moveRange(e.range,t,r):ee.moveItem(e.visibleIndex,t,r),a=t-e.range[0],o=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=pt(pt({},this.draggingColumn),{},{range:o})),i}onUp(e,t){return this.cursor=null,this.clearScrollInterval(),this.draggingOffset!=null?(this.draggingOffset=void 0,t.setState({draggingColumn:null,isDragging:!1}),!0):!1}}const Rv=Ov;function Es(n,e,t){return e=Dv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dv(n){var e=Nv(n,"string");return typeof e=="symbol"?e:String(e)}function Nv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class So extends ze{constructor(){super(...arguments),Es(this,"dragOffset",void 0),Es(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToColumn){var o=Math.round(t),s=0;return{left:o,leftOffset:s}}var l=Math.floor(t),u=t-l,d=i.allColumnWidths.get(l);if(d==null){var h=e.getMetricState();d=a.getVisibleColumnWidth(l,h)}var v=d*u;return{left:l,leftOffset:v}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:s,y:l}=e,{barLeft:u,barWidth:d,height:h,hasHorizontalBar:v}=o;return v&&i>0&&l>=h-a&&l<h&&s>u&&s<u+d}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:o,handleWidth:s,lastLeft:l,barLeft:u,columnCount:d,scrollableContentWidth:h,scrollableViewportWidth:v}=i,m=a-u,g=Ae((m-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-s),0,1);if(d===1)return{left:0,leftOffset:g*(h-v)};var f=g*l;return So.getLeftWithOffsetFromRawLeft(t,f)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:i}=e,{handleWidth:a,barLeft:o,scrollX:s}=r;if(!this.isInScrollBar(e,t))return!1;var l=i-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:u,leftOffset:d}=this.getLeftWithOffset(e,t);t.setViewState({left:u,leftOffset:d,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var{left:r,leftOffset:i}=this.getLeftWithOffset(e,t);return t.setViewState({left:r,leftOffset:i,isDraggingHorizontalScrollBar:!0,isDragging:!0}),!0}return!1}onMove(e,t){return this.isInScrollBar(e,t)}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingHorizontalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const Pv=So;function Os(n,e,t){return e=Fv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fv(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)}class Av extends ze{constructor(){super(...arguments),Os(this,"cursor","move"),Os(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:o}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{columnHeaderHeight:l,rowHeaderWidth:u,allRowYs:d}=s;if(i<=u&&o!==null&&r.isRowMovable(o)){var h=M(d,o);this.draggingOffset=a-h-l,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var{model:r}=t.props,{draggingRow:i}=t.state,{mouseX:a,mouseY:o}=t.state;if(a==null||o==null)return!1;if(i==null){var{row:s}=t.getGridPointFromXY(a,o);if(s!=null&&!r.isRowMovable(s)||(i=s,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:l}=t;if(!l)throw new Error("metrics not set");var{top:u,lastTop:d,bottom:h,bottomVisible:v,rowCount:m,columnHeaderHeight:g,allRowHeights:f,allRowYs:p,height:C}=l,b=g;if(u<i){var w=i-1;b=M(p,w)+M(f,w)*.5+g}var S=C;if(i<h){var T=i+1;S=M(p,T)+M(f,T)*.5+g}var{movedRows:y}=t.state;o<b&&i>0&&r.isRowMovable(i-1)?(y=ee.moveItem(i,i-1,y),i-=1):S<o&&i<m-1&&r.isRowMovable(i+1)&&(y=ee.moveItem(i,i+1,y),i+=1),t.setState({movedRows:y,draggingRow:i});var O=g+M(f,u)*.5,R=g+M(p,v)+M(f,v)*.5;return o<O&&u>0?t.setState({top:u-1}):o>R&&u<d&&t.setState({top:u+1}),!0}onUp(e,t){return this.draggingOffset!==void 0?(this.draggingOffset=void 0,t.setState({draggingRowOffset:null,draggingRow:null,isDragging:!1}),!0):!1}}const xv=Av;function ot(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=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)}class yo extends vu{constructor(){super(...arguments),ot(this,"hiddenCursor","s-resize"),ot(this,"defaultCursor","row-resize"),ot(this,"pointProperty","y"),ot(this,"userSizesProperty","userRowHeights"),ot(this,"visibleOffsetProperty","visibleRowYs"),ot(this,"visibleSizesProperty","visibleRowHeights"),ot(this,"marginProperty","columnHeaderHeight"),ot(this,"calculatedSizesProperty","calculatedRowHeights"),ot(this,"initialSizesProperty","initialRowHeights"),ot(this,"modelIndexesProperty","modelRows"),ot(this,"firstIndexProperty","firstRow"),ot(this,"treePaddingProperty","treePaddingY"),ot(this,"getHiddenItems",ee.getHiddenRows),ot(this,"getNextShownItem",ee.getNextShownRow),ot(this,"getSeparator",yo.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:o}=e,s=ee.getRowSeparatorIndex(a,o,t,i);return s!=null?{index:s,depth:0}:null}setSize(e,t,r){e.setRowHeight(t,r)}resetSize(e,t){e.resetRowHeight(t)}updateSeparator(e,t){e.setState({draggingRowSeparator:t,isDragging:t!==null})}}const jv=yo;class ki extends ze{static isInTreeBox(e,t){var{column:r,row:i,x:a,y:o}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{gridX:l,gridY:u,firstColumn:d,allColumnXs:h,allColumnWidths:v,allRowHeights:m,allRowYs:g,visibleRowTreeBoxes:f}=s;if(r===d&&i!=null&&f.get(i)!=null&&a>l&&o>u){var p=M(h,r),C=M(v,r),b=M(g,i),w=M(m,i);if(a>=l+p&&a<=l+p+C&&o>=u+b&&o<=u+b+w)return!0}return!1}onDown(e,t){return ki.isInTreeBox(e,t)}onClick(e,t,r){if(ki.isInTreeBox(e,t)){var{row:i}=e;if(i!==null)return t.toggleRowExpanded(i,ee.isModifierKeyDown(r)),!0}return!1}}const za=ki;class kv extends ze{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:o,y:s}=e,{width:l,height:u,hasVerticalBar:d,hasHorizontalBar:h}=a;return i>0&&d&&h&&o>=l-i&&s>=u-i&&o<=l&&s<=u}onDown(e,t){return this.isInCorner(e,t)}onUp(e,t){return this.isInCorner(e,t)}onClick(e,t){return this.isInCorner(e,t)}}const _v=kv;function Rs(n,e,t){return e=Hv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hv(n){var e=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)}class To extends ze{constructor(){super(...arguments),Rs(this,"dragOffset",void 0),Rs(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToRow){var o=Math.round(t),s=0;return{top:o,topOffset:s}}var l=Math.floor(t),u=t-l,d=i.allRowHeights.get(l);if(d==null){var h=e.getMetricState();d=a.getVisibleRowHeight(l,h)}var v=d*u;return{top:l,topOffset:v}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:s,y:l}=e,{barTop:u,barHeight:d,width:h,hasVerticalBar:v}=o;return v&&i>0&&s>=h-a&&s<h&&l>u&&l<u+d}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:o,handleHeight:s,lastTop:l,barTop:u,rowCount:d,scrollableContentHeight:h,scrollableViewportHeight:v}=i,m=a-u,g=Ae((m-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-s),0,1);if(d===1)return{top:0,topOffset:g*(h-v)};var f=g*l;return To.getTopWithOffsetFromRawTop(t,f)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:i}=e,{handleHeight:a,barTop:o,scrollY:s}=r;if(!this.isInScrollBar(e,t))return!1;var l=i-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:u,topOffset:d}=this.getTopWithOffset(e,t);t.setViewState({top:u,topOffset:d,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top:r,topOffset:i}=this.getTopWithOffset(e,t);return t.setViewState({top:r,topOffset:i,isDraggingVerticalScrollBar:!0,isDragging:!0}),!0}return!1}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingVerticalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const Vv=To;class Uv extends ze{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return Le(a)&&r!=null&&i!=null&&a.isEditableRange(B.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}const $v=Uv;function Cu(n){return n?.getTokenBoxesForVisibleCell!==void 0}function $n(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=Wv(n,"string");return typeof e=="symbol"?e:String(e)}function Wv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qi extends ze{constructor(){super(...arguments),$n(this,"timeoutId",void 0),$n(this,"isHold",!1),$n(this,"isDown",!1),$n(this,"currentLinkBox",void 0)}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:s,metrics:l,props:u}=t,{model:d}=u;if(r==null||i==null||l==null)return this.currentLinkBox=void 0,!1;var{modelRows:h,modelColumns:v}=l,m=M(h,i),g=M(v,r),f=d.renderTypeForCell(g,m),p=s.getCellRenderer(f);if(!Cu(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:b,x2:w,y2:S}=this.currentLinkBox;if(a>=C&&a<=w&&o>=b&&o<=S)return!0}for(var T=t.updateRenderState(),y=p.getTokenBoxesForVisibleCell(r,i,T),O=0;O<y.length;O+=1)if(ji(y[O].token)){var R=ee.translateTokenBox(y[O],l),{x1:E,x2:P,y1:x,y2:I}=R;if(a>=E&&a<=P&&o>=x&&o<=I)return this.currentLinkBox=R,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?this.cursor="pointer":this.cursor=null,!1}onMove(e,t){return this.setCursor(e,t)}onDown(e,t,r){var i=this.isHoveringLink(e,t);return ee.isModifierKeyDown(r)||r.shiftKey||!i?!1:(this.isDown=!0,this.timeoutId!=null&&clearTimeout(this.timeoutId),this.isHold=!1,this.timeoutId=setTimeout(()=>{this.isHold=!0;var{column:a,row:o}=e,{model:s}=t.props;t.clearSelectedRanges(),t.focus(),t.moveCursorToPosition(a,o),Le(s)&&a!=null&&o!=null&&s.isEditableRange(B.makeCell(a,o))&&t.startEditing(a,o)},Qi.HOLD_LENGTH),!0)}onClick(e,t){var r=this.isHoveringLink(e,t);if(!r||!this.isDown||this.currentLinkBox==null)return this.isDown=!1,this.isHold=!1,!1;if(!this.isHold){var i;this.timeoutId!=null&&clearTimeout(this.timeoutId),this.timeoutId=void 0,t.props.onTokenClicked((i=this.currentLinkBox)===null||i===void 0?void 0:i.token)}return this.isHold=!1,this.isDown=!1,!0}}$n(Qi,"HOLD_LENGTH",1e3);const zv=Qi;function Kv(n,e,t){return e=Yv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yv(n){var e=Xv(n,"string");return typeof e=="symbol"?e:String(e)}function Xv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class qv{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Kv(this,"order",void 0),this.order=e}onDown(e,t){return!1}}const an=qv;class Qv extends an{onDown(e,t){switch(e.key){case"a":if(ee.isModifierKeyDown(e))return t.selectAll(),!0;break;case"ArrowUp":return this.handleArrowMove(0,-1,e,t);case"ArrowDown":return this.handleArrowMove(0,1,e,t);case"ArrowRight":return this.handleArrowMove(1,0,e,t);case"ArrowLeft":return this.handleArrowMove(-1,0,e,t);case"k":case"K":return ee.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return ee.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return ee.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(ee.isModifierKeyDown(e))return!1;var{model:r}=t.props,{columnCount:i}=r;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(i-1,t.state.cursorRow,e.shiftKey),!0}case"PageDown":return this.handlePageDown(e,t);case"PageUp":return this.handlePageUp(e,t);case"Home":return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(ee.isModifierKeyDown(e)?t.state.cursorColumn:0,ee.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:o,rowCount:s}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(ee.isModifierKeyDown(e)?t.state.cursorColumn:o-1,ee.isModifierKeyDown(e)?s-1:t.state.cursorRow,e.shiftKey,!0,!0),!0}case"Escape":return t.clearSelectedRanges(),{preventDefault:!1,stopPropagation:!1};case"Enter":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?B.SELECTION_DIRECTION.UP:B.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?B.SELECTION_DIRECTION.LEFT:B.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,o=ee.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:s,cursorColumn:l,selectionEndColumn:u,selectionEndRow:d}=i.state,h=a?u:l,v=a?d:s;if(o){var{model:m}=i.props,{columnCount:g,rowCount:f}=m,p=o&&a,C=null,b=null;e<0?(C=0,b=v):e>0?(C=g-1,b=v):t<0?(C=h,b=0):t>0&&(C=h,b=f-1),C!=null&&b!=null&&i.moveCursorToPosition(C,b,a,!0,p)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:w}=i.props,{autoSelectRow:S=!1,autoSelectColumn:T=!1}=w;if(S&&e!==0){var{lastLeft:y}=i.metrics,{left:O}=i.state;O=Ae(O+e,0,y),i.moveCursorToPosition(O,s,a,!1),i.setViewState({left:O})}else if(T&&t!==0){var{lastTop:R}=i.metrics,{top:E}=i.state;E=Ae(E+t,0,R),i.moveCursorToPosition(E,l,a,!1),i.setViewState({top:E})}else i.moveCursor(e,t,a)}return!0}handlePageUp(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{cursorColumn:i,selectionEndRow:a}=t.state,o=a,s=i;if(o==null)return!1;var l=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:h,hasHorizontalBar:v}=u.getMetrics(l),m=o-(d-h);m-=v?0:1,m=Math.max(m,0);var g=Math.max(m-(o-h),0);return t.moveCursorToPosition(s,m,r,!1),t.setViewState({top:g}),!0}handlePageDown(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:i,cursorColumn:a}=t.state,o=i,s=a;if(o===null)return!1;var l=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:h,hasHorizontalBar:v,rowCount:m,lastTop:g}=u.getMetrics(l),f=m-1,p=d-h+o;p+=v?0:1,p=Math.min(p,f);var C=Math.min(g,p-(o-h));return t.moveCursorToPosition(s,p,r,!1),t.setViewState({top:C}),!0}}const Zv=Qv;class Jv extends an{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var{selectedRanges:r}=t.state;if(r.length===1){var i=r[0];if(i.startRow===i.endRow&&i.startColumn===i.endColumn){if(!t.metrics)throw new Error("grid.metrics not set");var{model:a}=t.props,{startRow:o,startColumn:s}=i;if(o!=null){var l=t.getModelRow(o);if((s===0||s==null)&&Fe(a)&&a.isRowExpandable(l))return t.toggleRowExpanded(o),!0}}}return!1}}const em=Jv;class tm extends an{onDown(e,t){if(ee.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!Le(r)||!r.isEditableRange(B.makeCell(i,a)))return!1;var o=i,s=a;return o==null||s==null?!1:e.key.length===1?(t.startEditing(o,s,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(o,s),!0):e.key==="Backspace"?(t.startEditing(o,s,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(o,s,""),!0):!1}}const rm=tm;function nm(n){for(var e=[],t=n.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),o=[],s=0;s<a.length;s+=1){var l,u,d=a[s];o.push((l=(u=d.textContent)===null||u===void 0?void 0:u.trim())!==null&&l!==void 0?l:"")}e.push(o)}return e}function im(n){var e=[];return n.forEach(t=>{var r,i=(r=t.textContent)!==null&&r!==void 0?r:"";i.length>0&&e.push(i.split(/\t|\u00a0\u00a0 \u00a0/))}),e}function am(n){var e,t,r=n.querySelector("table");if(r!=null)return nm(r);var i=(e=(t=n.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(i.length>0){var{childNodes:a}=n,o=i.includes(" "),s=i.includes(" ");return o&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
|
|
2
2
|
`).map(l=>l.split(" ")):a.length>1||s?im(n.childNodes):i}return null}class om extends an{onDown(e,t){switch(e.key){case"v":if(ee.isModifierKeyDown(e)){var r=document.createElement("div");document.body.appendChild(r),r.setAttribute("contenteditable","true"),r.setAttribute("style",'clip-path: "inset(50%)"; height: 1px; width: 1px; margin: -1px; overflow: hidden; padding 0; position: absolute;');var i=()=>{r.removeEventListener("input",i),r.remove(),t.focus();var a=am(r);a!=null&&t.pasteValue(a)};return r.addEventListener("input",i),r.focus(),{preventDefault:!1,stopPropagation:!0}}break}return!1}}const sm=om;var lm=n=>{switch(n){case"ArrowDown":return Ht.DOWN;case"ArrowUp":return Ht.UP;case"ArrowLeft":return Ht.LEFT;case"ArrowRight":return Ht.RIGHT;default:return}};function Eo(n){var{selectionRange:e=void 0,className:t="",disabled:r=!1,value:i="",isQuickEdit:a=!0,onChange:o=()=>{},onCancel:s=()=>{},onDone:l=()=>{},onContextMenu:u=()=>{},style:d={}}=n,h=D.useRef(null),v=D.useRef(!1),[m]=D.useState(i),[g,f]=D.useState(!1),[p,C]=D.useState(a),[b,w]=D.useState(i);D.useEffect(function(){var{current:N}=h;N!=null&&(N.focus(),e?N.setSelectionRange(e[0],e[1]):N.setSelectionRange(N.value.length,N.value.length))},[e]);var S=D.useCallback(I=>{o(I)},[o]),T=D.useCallback(I=>{var{value:N}=I.target;w(N),f(!0),S(N)},[S,w,f]),y=D.useCallback(()=>{v.current=!0,g&&S(m),f(!1),s()},[m,g,s,S]),O=D.useCallback(()=>{C(!1)},[C]),R=D.useCallback(function(I){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;l(b,{direction:I,fillRange:N})},[l,b]),E=D.useCallback(()=>{v.current||R(null)},[v,R]),P=D.useCallback(I=>{switch(I.stopPropagation(),I.key){case"Escape":I.preventDefault(),y();break;case"Enter":if(I.preventDefault(),ee.isModifierKeyDown(I))R(void 0,!0);else if(I.altKey){var N="".concat(b,`
|
|
3
3
|
`);w(N),f(!0),S(N)}else R(I.shiftKey?Ht.UP:Ht.DOWN);break;case"Tab":I.preventDefault(),R(I.shiftKey?Ht.LEFT:Ht.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":p&&(I.preventDefault(),R(lm(I.key)));break}},[y,R,p,w,f,S,b]),x=D.useCallback(I=>{u(I)},[u]);return c.jsx("textarea",{ref:h,className:Q("grid-cell-input-field",t),value:b,onBlur:E,onChange:T,onKeyDown:P,onContextMenu:x,onClick:O,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:r,style:d})}Eo.propTypes={selectionRange:se.arrayOf(se.number),className:se.string,disabled:se.bool,isQuickEdit:se.bool,value:se.string,onChange:se.func,onCancel:se.func,onDone:se.func,onContextMenu:se.func,style:se.shape({})};Eo.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var um=Ne.createContext({});const dm=um;function Ds(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function hm(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Ds(a,r,i,o,s,"next",l)}function s(l){Ds(a,r,i,o,s,"throw",l)}o(void 0)})}}function Ns(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 Zr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ns(Object(t),!0).forEach(function(r){Ge(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ns(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ge(n,e,t){return e=cm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cm(n){var e=vm(n,"string");return typeof e=="symbol"?e:String(e)}function vm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 extends D.PureComponent{static getScale(e){var t,r,i,a,o,s=window.devicePixelRatio||1,l=e,u=(t=(r=(i=(a=(o=l.webkitBackingStorePixelRatio)!==null&&o!==void 0?o:l.mozBackingStorePixelRatio)!==null&&a!==void 0?a:l.msBackingStorePixelRatio)!==null&&i!==void 0?i:l.oBackingStorePixelRatio)!==null&&r!==void 0?r:l.backingStorePixelRatio)!==null&&t!==void 0?t:1;return s/u}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),Ge(this,"renderer",void 0),Ge(this,"metricCalculator",void 0),Ge(this,"canvas",void 0),Ge(this,"canvasContext",void 0),Ge(this,"animationFrame",void 0),Ge(this,"prevMetrics",void 0),Ge(this,"metrics",void 0),Ge(this,"renderState",void 0),Ge(this,"documentCursor",void 0),Ge(this,"dragTimer",void 0),Ge(this,"keyHandlers",void 0),Ge(this,"mouseHandlers",void 0),Ge(this,"getCachedKeyHandlers",Be(l=>[...l,...this.keyHandlers].sort((u,d)=>u.order-d.order))),Ge(this,"getCachedMouseHandlers",Be(l=>[...l,...this.mouseHandlers].sort((u,d)=>u.order-d.order))),this.handleClick=this.handleClick.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handleEditCellCancel=this.handleEditCellCancel.bind(this),this.handleEditCellChange=this.handleEditCellChange.bind(this),this.handleEditCellCommit=this.handleEditCellCommit.bind(this),this.handleDoubleClick=this.handleDoubleClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseDrag=this.handleMouseDrag.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleResize=this.handleResize.bind(this),this.handleWheel=this.handleWheel.bind(this);var{isStuckToBottom:t,isStuckToRight:r,metricCalculator:i,movedColumns:a,movedRows:o,renderer:s}=e;this.renderer=s||new Zt,this.metricCalculator=i||new nn,this.canvas=null,this.canvasContext=null,this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.dragTimer=null,this.keyHandlers=[new rm(400),new sm(450),new Zv(500),new em(900)],this.mouseHandlers=[new jv(100),new mu(200),new xv(300),new Rv(400),new $v(450),new Vv(500),new Pv(600),new _v(700),new za(800),new zv(875),new Sv(900)],this.state={top:0,left:0,topOffset:0,leftOffset:0,draggingColumn:null,draggingRow:null,draggingRowOffset:null,draggingColumnSeparator:null,draggingRowSeparator:null,isDraggingHorizontalScrollBar:!1,isDraggingVerticalScrollBar:!1,isDragging:!1,mouseX:null,mouseY:null,movedColumns:a,movedRows:o,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:Se,lastSelectedRanges:Se,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:r}}componentDidMount(){var e;this.initContext(),(e=this.canvas)===null||e===void 0||e.addEventListener("wheel",this.handleWheel,{passive:!1}),window.addEventListener("resize",this.handleResize),this.updateCanvas();var{isStuckToBottom:t,isStuckToRight:r}=this.props;t&&this.scrollToBottom(),r&&this.scrollToRight()}componentDidUpdate(e,t){var{isStickyBottom:r,isStickyRight:i,movedColumns:a,movedRows:o,onMovedColumnsChanged:s,onMoveColumnComplete:l,onMovedRowsChanged:u,onMoveRowComplete:d}=this.props,{isStickyBottom:h,isStickyRight:v,movedColumns:m,movedRows:g}=e,{movedColumns:f,movedRows:p}=t,{draggingColumn:C,draggingRow:b,movedColumns:w,movedRows:S}=this.state;m!==a&&this.setState({movedColumns:a}),g!==o&&this.setState({movedRows:o}),f!==w&&s(w),t.draggingColumn!=null&&C==null&&l(w),p!==S&&u(S),t.draggingRow!=null&&b==null&&d(S),r!==h&&this.setState({isStuckToBottom:!1}),i!==v&&this.setState({isStuckToRight:!1}),this.updateMetrics(),this.requestUpdateCanvas(),this.checkStickyScroll(),this.validateSelection()&&this.checkSelectionChange(t)}componentWillUnmount(){var e;this.animationFrame!=null&&cancelAnimationFrame(this.animationFrame),(e=this.canvas)===null||e===void 0||e.removeEventListener("wheel",this.handleWheel),window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("resize",this.handleResize),this.stopDragTimer()}getTheme(){var{theme:e}=this.props;return Rt.getTheme(this.context,e)}getGridPointFromEvent(e){cs(this.canvas);var t=this.canvas.getBoundingClientRect(),r=e.clientX-t.left,i=e.clientY-t.top;return this.getGridPointFromXY(r,i)}getGridPointFromXY(e,t){if(!this.metrics)throw new Error("metrics must be set");return ee.getGridPointFromXY(e,t,this.metrics)}getMetricState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=this.getTheme(),{model:r,stateOverride:i}=this.props;if(!this.canvasContext||!this.canvas)throw new Error("Canvas and context must be defined to get metrics");var a=this.canvasContext,o=this.canvas.clientWidth,s=this.canvas.clientHeight,{left:l,top:u,leftOffset:d,topOffset:h,movedColumns:v,movedRows:m,isDraggingHorizontalScrollBar:g,isDraggingVerticalScrollBar:f,draggingColumn:p}=e;return Zr({left:l,top:u,leftOffset:d,topOffset:h,width:o,height:s,context:a,theme:t,model:r,movedColumns:v,movedRows:m,isDraggingHorizontalScrollBar:g,isDraggingVerticalScrollBar:f,draggingColumn:p},i)}getKeyHandlers(){var{keyHandlers:e}=this.props;return this.getCachedKeyHandlers(e)}getMouseHandlers(){var{mouseHandlers:e}=this.props;return this.getCachedMouseHandlers(e)}getModelColumn(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelColumns)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for column ".concat(e));return i}getModelRow(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelRows)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for row ".concat(e));return i}toggleRowExpanded(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=this.getModelRow(e),{model:i}=this.props;Fe(i)&&i.isRowExpandable(r)&&i.setRowExpanded(r,!i.isRowExpanded(r),t),this.clearSelectedRanges(),this.commitSelection(),this.moveCursorToPosition(0,e),this.commitSelection(),this.setState({isStuckToBottom:!1})}scrollToBottom(){if(this.metrics){var{bottomVisible:e,rowCount:t,top:r,lastTop:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({top:i})}}scrollToRight(){if(this.metrics){var{rightVisible:e,columnCount:t,left:r,lastLeft:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({left:i})}}setSelectedRanges(e){var{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:o,selectedRanges:s}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:s}),e.length>0){var l=B.boundedRange(e[0],r,i),u=a,d=o;l.containsCell(o,a)||({row:u,column:d}=l.startCell()),this.setState({selectionStartColumn:l.startColumn,selectionStartRow:l.startRow,selectionEndColumn:l.endColumn,selectionEndRow:l.endRow,cursorColumn:d,cursorRow:u})}}initContext(){var{canvas:e}=this,{canvasOptions:t}=this.props;if(!e)throw new Error("Canvas not set");this.canvasContext=e.getContext("2d",t)}requestUpdateCanvas(){this.animationFrame==null&&(this.animationFrame=requestAnimationFrame(()=>{this.animationFrame=null,this.updateCanvas()}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var{canvasContext:e,metrics:t,renderState:r}=this;_(e),_(t),_(r),this.renderer.configureContext(e,r);var{onViewChanged:i}=this.props;i(t),this.drawCanvas(t)}updateCanvasScale(){var{canvas:e,canvasContext:t}=this;if(!e)throw new Error("canvas not set");if(!t)throw new Error("canvasContext not set");if(!e.parentElement)throw new Error("Canvas has no parent element");var r=Rt.getScale(t),i=e.parentElement.getBoundingClientRect(),a=Math.floor(i.width),o=Math.floor(i.height);e.style.width="".concat(a,"px"),e.style.height="".concat(o,"px"),e.width=a*r,e.height=o*r,t.scale(r,r)}updateScrollBounds(){if(!this.metrics)throw new Error("metrics not set");var{left:e,top:t}=this.state,{lastLeft:r,lastTop:i}=this.metrics;e>r&&this.setState({left:r,leftOffset:0}),t>i&&this.setState({top:i,topOffset:0})}checkStickyScroll(){if(this.metrics){if(this.prevMetrics){var{rowCount:e,columnCount:t,height:r,width:i}=this.metrics,{rowCount:a,columnCount:o,height:s,width:l}=this.prevMetrics;if(a!==e||r!==s){var{isStuckToBottom:u}=this.state;u&&this.scrollToBottom()}if(o!==t||i!==l){var{isStuckToRight:d}=this.state;d&&this.scrollToRight()}}this.prevMetrics=this.metrics}}updateMetrics(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state;this.prevMetrics=this.metrics;var{metricCalculator:t}=this,r=this.getMetricState(e);return this.metrics=t.getMetrics(r),this.updateScrollBounds(),this.metrics}checkSelectionChange(e){var{selectedRanges:t}=e,{selectedRanges:r}=this.state;if(r!==t){var{onSelectionChanged:i}=this.props;i(r)}}validateSelection(){for(var{model:e}=this.props,{selectedRanges:t}=this.state,{columnCount:r,rowCount:i}=e,a=0;a<t.length;a+=1){var o=t[a];if(o.endColumn!=null&&o.endColumn>=r||o.endRow!=null&&o.endRow>=i)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var{selectedRanges:e}=this.state;this.setState({selectedRanges:[],lastSelectedRanges:e})}trimSelectedRanges(){var{selectedRanges:e}=this.state;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}beginSelection(e,t){this.setState({selectionStartColumn:e,selectionStartRow:t,selectionEndColumn:e,selectionEndRow:t,cursorColumn:e,cursorRow:t})}moveSelection(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;this.setState(a=>{var{selectedRanges:o,selectionStartRow:s,selectionStartColumn:l}=a,{theme:u}=this.props,{autoSelectRow:d,autoSelectColumn:h}=u;if(r&&o.length>0){var v=o[o.length-1],m=null,g=null,f=null,p=null;if(i){var C,b,w,S;m=d!==void 0&&d?null:Math.min(e??0,(C=v.startColumn)!==null&&C!==void 0?C:0),g=h!==void 0&&h?null:Math.min(t??0,(b=v.startRow)!==null&&b!==void 0?b:0),f=d!==void 0&&d?null:Math.max(e??0,(w=v.endColumn)!==null&&w!==void 0?w:0),p=h!==void 0&&h?null:Math.max(t??0,(S=v.endRow)!==null&&S!==void 0?S:0)}else m=v.startColumn,g=v.startRow,(l!=null||s!=null)&&((d===void 0||!d)&&(m=l),(h===void 0||!h)&&(g=s)),f=d!==void 0&&d?null:e,p=h!==void 0&&h?null:t;var T=B.makeNormalized(m,g,f,p);if(v.equals(T))return null;var y=[...o];return y[y.length-1]=T,{selectedRanges:y,selectionEndColumn:e,selectionEndRow:t}}var O=[...o],R=d!==void 0&&d?null:e,E=h!==void 0&&h?null:t;return O.push(B.makeNormalized(R,E,R,E)),{selectedRanges:O,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:r}=t,{selectedRanges:i,lastSelectedRanges:a,cursorRow:o,cursorColumn:s}=e;if(i.length===1&&(r!==void 0&&r?B.rowCount(i)===1:B.cellCount(i)===1)&&B.rangeArraysEqual(i,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var l=i.slice();if(l.length>1){for(var u=l[l.length-1],d=0;d<l.length-1;d+=1){var h=l[d];if(h.contains(u)){var v=h.subtract(u);l.pop(),l.splice(d,1),l=l.concat(v);break}}l=B.consolidate(l)}var m=s,g=o;if(!B.containsCell(l,s,o)){var{model:f}=this.props,{columnCount:p,rowCount:C}=f,b=B.nextCell(B.boundedRanges(i,p,C));b!=null?{column:m,row:g}=b:(m=null,g=null)}return l.length===0&&(m=null,g=null),{cursorRow:g,cursorColumn:m,selectedRanges:l,lastSelectedRanges:i}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:r,height:i,lastTop:a,userRowHeights:o,rowHeight:s}=this.metrics,l=i-r,u=Math.round(l/2)+((t=o.get(e))!==null&&t!==void 0?t:s),d=this.getMetricState(),h=this.metricCalculator.getLastTop(d,e+1,u);this.setState({top:Math.min(a,h),selectedRanges:[new B(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:v}=this.state;this.moveCursorToPosition(v,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:r,autoSelectColumn:i}=t,a=i!==void 0&&i?null:0,o=i!==void 0&&i?null:e.rowCount-1,s=r!==void 0&&r?null:0,l=r!==void 0&&r?null:e.columnCount-1;this.setSelectedRanges([new B(s,a,l,o)])}moveCursor(e,t,r){var{cursorRow:i,cursorColumn:a,selectionEndColumn:o,selectionEndRow:s}=this.state,l=r?o:a,u=r?s:i;if(u===null||l===null){var{left:d,top:h}=this.state;this.moveCursorToPosition(d,h,r)}else{var{model:v}=this.props,{columnCount:m,rowCount:g}=v,f=Ae(l+e,0,m-1),p=Ae(u+t,0,g-1);this.moveCursorToPosition(f,p,r)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:B.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:o,selectedRanges:s}=this.state,l=s.length>0?s:[B.makeCell(o,a)],u=null;if(l.length===1&&B.cellCount(l)===1){var d,h=new B(0,0,r-1,i-1);u=(d=h.nextCell(o,a,e))!==null&&d!==void 0?d:h.startCell(e)}else u=B.nextCell(B.boundedRanges(l,r,i),o,a,e);if(u!=null){var{column:v,row:m}=u;this.setState({cursorColumn:v,cursorRow:m}),B.containsCell(s,v,m)||this.setState({selectedRanges:[B.makeCell(v,m)],selectionStartColumn:v,selectionStartRow:m,selectionEndColumn:v,selectionEndRow:m}),this.moveViewToCell(u.column,u.row)}}moveCursorToPosition(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;r||this.beginSelection(e,t),this.moveSelection(e,t,r,a),i&&this.moveViewToCell(e,t)}moveViewToCell(e,t){if(!this.metrics)throw new Error("metrics not set");var{metricCalculator:r}=this,{bottomVisible:i,rightVisible:a,topVisible:o,leftVisible:s}=this.metrics,l=this.getMetricState(this.state),{top:u,left:d,topOffset:h,leftOffset:v}=this.state;t!=null&&!ee.isFloatingRow(t,this.metrics)&&(t<o?(u=r.getTopForTopVisible(l,t),h=0):t>i&&(u=r.getTopForBottomVisible(l,t),h=0)),e!=null&&!ee.isFloatingColumn(e,this.metrics)&&(e<s?(d=r.getLeftForLeftVisible(l,e),v=0):e>a&&(d=r.getLeftForRightVisible(l,e),v=0)),this.setViewState({top:u,left:d,topOffset:h,leftOffset:v})}setViewState(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!this.metrics)throw new Error("metrics not set");var{isStickyBottom:r,isStickyRight:i}=this.props,{top:a,left:o}=e,{lastTop:s,lastLeft:l,hasVerticalBar:u,hasHorizontalBar:d}=this.metrics;a!=null&&u&&this.setState({isStuckToBottom:r&&a>=s}),o!=null&&d&&this.setState({isStuckToRight:i&&o>=l}),this.setState(e),t&&this.forceUpdate()}startEditing(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,{model:o}=this.props;if(!Le(o))throw new Error("model is not editable");var s=this.getModelColumn(e),l=this.getModelRow(t),u={column:e,row:t,selectionRange:i,value:a!==void 0?a:o.editValueForCell(s,l),isQuickEdit:r};this.setState({editingCell:u,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,r){var{model:i}=this.props,a=this.getModelColumn(e),o=this.getModelRow(t);return Le(i)&&i.isValidForCell(a,o,r)}pasteValue(e){var t=this;return hm(function*(){var{model:r}=t.props,{movedColumns:i,movedRows:a,selectedRanges:o}=t.state;try{if(vs(r),!r.isEditable||!o.every(p=>r.isEditableRange(p)))throw new Da("Can't paste in to read-only area.");if(o.length<=0)throw new Da("Select an area to paste to.");if(typeof e=="string"){var s=[],l=ee.getModelRanges(o,i,a);B.forEachCell(l,(p,C)=>{s.push({column:p,row:C,text:e})}),yield r.setValues(s);return}var u=e.length,d=e[0].length,{columnCount:h,rowCount:v}=r,m=o;if(m.every(p=>{var C,b;return B.cellCount([p])===1&&((C=p.startColumn)!==null&&C!==void 0?C:0)+d<=h&&((b=p.startRow)!==null&&b!==void 0?b:0)+u<=v})&&(m=m.map(p=>{var C,b;return new B(p.startColumn,p.startRow,((C=p.startColumn)!==null&&C!==void 0?C:0)+d-1,((b=p.startRow)!==null&&b!==void 0?b:0)+u-1)}),t.setSelectedRanges(m)),!m.every(p=>B.rowCount([p])===u&&B.columnCount([p])===d))throw new Da("Copy and paste area are not same size.");var g=[];m.forEach(p=>{for(var C=0;C<d;C+=1)for(var b=0;b<u;b+=1){var w,S;g.push({column:((w=p.startColumn)!==null&&w!==void 0?w:0)+C,row:((S=p.startRow)!==null&&S!==void 0?S:0)+b,text:e[b][C]})}}),yield r.setValues(g)}catch(p){var{onError:f}=t.props;f(p instanceof Error?p:new Error("".concat(p)))}})()}setValueForCell(e,t,r){var{model:i}=this.props;vs(i);var a=this.getModelColumn(e),o=this.getModelRow(t);return i.isValidForCell(a,o,r)?(i.setValueForCell(a,o,r),!0):!1}setValueForRanges(e,t){var{model:r}=this.props,{movedColumns:i,movedRows:a}=this.state,o=ee.getModelRanges(e,i,a);Le(r)&&r.setValueForRanges(o,t)}isSelected(e,t){for(var{selectedRanges:r}=this.state,i=0;i<r.length;i+=1){var a,o,s=r[i],l=s.startRow===null||s.startRow<=e&&e<=((a=s.endRow)!==null&&a!==void 0?a:0),u=s.startColumn===null||s.startColumn<=t&&t<=((o=s.endColumn)!==null&&o!==void 0?o:0);if(l&&u)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==Rt.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=Rt.getCursorClassName(e),this.documentCursor!=null&&document.documentElement.classList.add(this.documentCursor),document.documentElement.classList.add("grid-block-events"))}removeDocumentCursor(){this.documentCursor!=null&&(document.documentElement.classList.remove(this.documentCursor),document.documentElement.classList.remove("grid-block-events"),this.documentCursor=null)}startDragTimer(e){this.stopDragTimer();var t=new MouseEvent("custom",e.nativeEvent);this.dragTimer=setTimeout(()=>{this.handleMouseDrag(t)},Rt.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.updateMetrics(),!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{renderer:e,canvasContext:t,renderState:r}=this;t.save(),e.drawCanvas(r),t.restore()}focus(){var e;(e=this.canvas)===null||e===void 0||e.focus()}isFocused(){return document.activeElement===this.canvas}handleClick(e){for(var t,r=this.getGridPointFromEvent(e),i=this.getMouseHandlers(),a=0;a<i.length;a+=1){var o=i[a];if(o.onClick(r,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}(t=this.canvas)===null||t===void 0||t.focus()}handleContextMenu(e){for(var t=this.getGridPointFromEvent(e),r=this.getMouseHandlers(),i=0;i<r.length;i+=1){var a=r[i];if(a.onContextMenu(t,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}}handleKeyDown(e){for(var t=this.getKeyHandlers(),r=0;r<t.length;r+=1){var i=t[r],a=i.onDown(e,this);if(a!==!1){var o,s,l=a;(!((o=l?.stopPropagation)!==null&&o!==void 0)||o)&&e.stopPropagation(),(!((s=l?.preventDefault)!==null&&s!==void 0)||s)&&e.preventDefault();break}}}notifyMouseHandlers(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=this.getGridPointFromEvent(t),o=this.getMouseHandlers(),s=null,l=0;l<o.length;l+=1){var u=o[l],d=u[e]!=null&&u[e](a,this,t);if(d!==!1){var h,v;u.cursor!=null&&({cursor:s}=u,i&&this.addDocumentCursor(s));var m=d;(!((h=m?.stopPropagation)!==null&&h!==void 0)||h)&&t.stopPropagation(),(!((v=m?.preventDefault)!==null&&v!==void 0)||v)&&t.preventDefault();break}}if(this.setState({cursor:s}),r){var{x:g,y:f}=a;this.setState({mouseX:g,mouseY:f})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onUp",e,!1),this.stopDragTimer(),this.removeDocumentCursor())}handleResize(){if(this.updateCanvas(),!this.metrics)throw new Error("metrics not set");this.forceUpdate()}handleWheel(e){if(this.notifyMouseHandlers("onWheel",e),!e.defaultPrevented){var{metricCalculator:t,metrics:r}=this,i=this.getMetricState();if(!r)throw new Error("metrics not set");for(var{lastTop:a,lastLeft:o,columnCount:s,rowCount:l,scrollableContentWidth:u,scrollableViewportWidth:d,scrollableContentHeight:h,scrollableViewportHeight:v,hasHorizontalBar:m,hasVerticalBar:g}=r,{top:f,left:p,topOffset:C,leftOffset:b}=r,w=this.getTheme(),{deltaX:S,deltaY:T}=ee.getScrollDelta(e,r.barWidth,r.barHeight,r.rowHeight,r.rowHeight);m&&S!==0;){if(b+=S,S=0,s>1){if(b>0&&p>=o||b<0&&p<=0){b=0;break}}else{if(b<=0){b=0;break}var y=u-d;if(b>=y){b=y;break}}if(b>0){var O,R=(O=r.allColumnWidths.get(p))!==null&&O!==void 0?O:t.getVisibleColumnWidth(p,i);b>=R?(S=b-R,b=0,p+=1):w.scrollSnapToColumn&&s>1&&(b=0,p+=1)}else if(b<0){var E,P=(E=r.allColumnWidths.get(p-1))!==null&&E!==void 0?E:t.getVisibleColumnWidth(p-1,i);Math.abs(b)<=P&&w.scrollSnapToColumn&&s>1?(b=0,p-=1):(S=b+P,b=0,p-=1)}}for(;g&&T!==0;){if(C+=T,T=0,l>1){if(C>0&&f>=a||C<0&&f<=0){C=0;break}}else{if(C<=0){C=0;break}var x=h-v;if(C>=x){C=x;break}}if(C>0){var I,N=(I=r.allRowHeights.get(f))!==null&&I!==void 0?I:t.getVisibleRowHeight(f,i);C>=N?(T=C-N,C=0,f+=1):w.scrollSnapToRow&&l>1&&(C=0,f+=1)}else if(C<0){var L,F=(L=r.allRowHeights.get(f-1))!==null&&L!==void 0?L:t.getVisibleRowHeight(f-1,i);Math.abs(C)<=F&&w.scrollSnapToRow&&l>1?(C=0,f-=1):(T=C+F,C=0,f-=1)}}this.setViewState({top:f,left:p,leftOffset:b,topOffset:C}),e.stopPropagation(),e.preventDefault()}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:r}=t;try{return cs(r),{editingCell:Zr(Zr({},r),{},{value:e})}}catch(a){var{onError:i}=this.props;return i(a instanceof Error?a:new Error("".concat(a))),null}})}handleEditCellCommit(e){var{direction:t=Ht.DOWN,fillRange:r=!1}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{editingCell:i,selectedRanges:a}=this.state;if(!i)throw new Error("editingCell not set");var{column:o,row:s}=i;if(!this.isValidForCell(o,s,e)){t===null&&this.setState({editingCell:null});return}r?this.setValueForRanges(a,e):this.setValueForCell(o,s,e),t!==null&&this.moveCursorInDirection(t),this.setState({editingCell:null}),this.focus()}renderInputField(){var{model:e}=this.props,{editingCell:t}=this.state,{metrics:r}=this;if(t==null||r==null||!Le(e))return null;var{selectionRange:i,value:a,isQuickEdit:o}=t,{column:s,row:l}=t,{gridX:u,gridY:d,allColumnXs:h,allRowYs:v,allColumnWidths:m,allRowHeights:g}=r,f=h.get(s),p=v.get(l),C=m.get(s),b=g.get(l),w=f!=null&&p!=null&&C!=null&&b!=null?{position:"absolute",left:u+f,top:d+p,width:C,height:b}:{opacity:0},S=this.getModelColumn(s),T=this.getModelRow(l),y=S!=null&&T!=null?{textAlign:e.textAlignForCell(S,T)}:void 0,O=e.isValidForCell(S,T,a);return c.jsx("div",{style:w,children:c.jsx(Eo,{selectionRange:i,className:Q({error:!O}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:o,style:y,value:a},"".concat(s,",").concat(l))})}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{cursorColumn:e,cursorRow:t,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:o,draggingRowSeparator:s,editingCell:l,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:h,mouseX:v,mouseY:m,selectedRanges:g}=this.state,{model:f,stateOverride:p}=this.props,{metrics:C}=this,b=this.canvasContext,w=this.getTheme(),S=this.canvas.clientWidth,T=this.canvas.clientHeight;return _(C),this.renderState=Zr({width:S,height:T,context:b,theme:w,model:f,metrics:C,mouseX:v,mouseY:m,selectedRanges:g,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:o,draggingRowSeparator:s,editingCell:l,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:h,cursorColumn:e,cursorRow:t},p),this.renderState}render(){var{cursor:e}=this.state;return c.jsxs(c.Fragment,{children:[c.jsx("canvas",{className:Q("grid-canvas",Rt.getCursorClassName(e)),ref:t=>{this.canvas=t},onClick:this.handleClick,onContextMenu:this.handleContextMenu,onDoubleClick:this.handleDoubleClick,onKeyDown:this.handleKeyDown,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,tabIndex:0,children:"Your browser does not support HTML canvas. Update your browser?"}),this.renderInputField()]})}}Ge(Rt,"contextType",dm);Ge(Rt,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:Se,mouseHandlers:Se,movedColumns:Se,movedRows:Se,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:n=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:n=>{},onTokenClicked:n=>{ji(n)&&window.open(n.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});Ge(Rt,"pixelsPerLine",100/3);Ge(Rt,"dragTimeout",1e3);Ge(Rt,"getTheme",Be((n,e)=>Zr(Zr(Zr({},Bc),n),e)));const mm=Rt;function gm(n,e,t){return e=fm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fm(n){var e=pm(n,"string");return typeof e=="symbol"?e:String(e)}function pm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Na=5e3;class Cm extends dd{constructor(){super(...arguments),gm(this,"getCachedTokensInText",er((e,t)=>{if(t>=e.length)return ee.findTokensWithProtocolInText(e);var r=e.slice(t-1,Na).search(/\s/),i=t+r;r===-1&&(i=Math.min(Na,e.length));var a=e.substring(0,i);return ee.findTokensWithProtocolInText(a)}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Na,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const bm=Cm;function wm(n,e){var t=Tm(n);if(t!==void 0){var r=Pm(n);return"".concat(r," ? ").concat(t," : ").concat(e)}}function Sm(n,e){return n.Column.formatRowColor(e)}function ym(n,e){return n.formatColor(e)}var Kn=ye.module("ConditionalFormattingUtils"),Et;(function(n){n.CONDITIONAL="conditional",n.ROWS="rows"})(Et||(Et={}));var ae;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_BETWEEN="is-between",n.GREATER_THAN="greater-than",n.GREATER_THAN_OR_EQUAL="greater-than-or-equal",n.LESS_THAN="less-than",n.LESS_THAN_OR_EQUAL="less-than-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(ae||(ae={}));var me;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.CONTAINS="contains",n.DOES_NOT_CONTAIN="does-not-contain",n.STARTS_WITH="starts-with",n.ENDS_WITH="ends-with",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(me||(me={}));var ce;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.IS_BEFORE="is-before",n.IS_BEFORE_OR_EQUAL="is-before-or-equal",n.IS_AFTER="is-after",n.IS_AFTER_OR_EQUAL="is-after-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(ce||(ce={}));var Ye;(function(n){n.IS_TRUE="is-true",n.IS_FALSE="is-false",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(Ye||(Ye={}));var Ve;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(Ve||(Ve={}));var fe;(function(n){n.NO_FORMATTING="no-formatting",n.POSITIVE="positive",n.NEGATIVE="negative",n.WARN="warn",n.NEUTRAL="neutral",n.ACCENT_1="accent-1",n.ACCENT_2="accent-2",n.CUSTOM="custom"})(fe||(fe={}));function Ps(n){switch(n){case fe.NO_FORMATTING:return"No formatting";case fe.POSITIVE:return"Positive";case fe.NEGATIVE:return"Negative";case fe.WARN:return"Warn";case fe.NEUTRAL:return"Neutral";case fe.ACCENT_1:return"Accent 1";case fe.ACCENT_2:return"Accent 2";case fe.CUSTOM:return"Custom..."}}function _i(n){var{type:e,customConfig:t}=n;switch(e){case fe.NO_FORMATTING:return;case fe.POSITIVE:return"#9fde6f";case fe.NEGATIVE:return"#ff6087";case fe.WARN:return"#f67f40";case fe.NEUTRAL:return"#ffd95c";case fe.ACCENT_1:return"#78dce8";case fe.ACCENT_2:return"#ab9bf5";case fe.CUSTOM:return t?.background;default:return}}function Hi(n){var{type:e,customConfig:t}=n;switch(e){case fe.NO_FORMATTING:return;case fe.POSITIVE:return"#526a3f";case fe.NEGATIVE:return"#802f44";case fe.WARN:return"#663318";case fe.NEUTRAL:return"#63562b";case fe.ACCENT_1:return"#3f6469";case fe.ACCENT_2:return"#554d72";case fe.CUSTOM:return t?.color;default:return}}function Tm(n){var e=Hi(n.style),t=_i(n.style);if(!(e===void 0||t===void 0))return"bgfg(`".concat(t,"`, `").concat(e,"`)")}function Em(n){var{column:e,value:t,start:r,end:i}=n;return Bm(e.name,n.condition,t,r,i)}function Om(n){var{column:e,value:t}=n;return Vm(e.name,n.condition,t)}function Rm(n){var{column:e,value:t}=n;return Um(e.name,n.condition,t)}function Dm(n){var{column:e}=n;return $m(e.name,n.condition)}function Nm(n){var{column:e,value:t}=n;return Gm(e.name,n.condition,t)}function Pm(n){var{column:e}=n;if(j.isNumberType(e.type))return Em(n);if(j.isCharType(e.type))return Nm(n);if(j.isStringType(e.type))return Om(n);if(j.isDateType(e.type))return Rm(n);if(j.isBooleanType(e.type))return Dm(n);throw new Error("Invalid column type")}function Fm(n){switch(n){case ae.IS_EQUAL:return"is equal to";case ae.IS_NOT_EQUAL:return"is not equal to";case ae.IS_BETWEEN:return"is between";case ae.GREATER_THAN:return"greater than";case ae.GREATER_THAN_OR_EQUAL:return"greater than or equal to";case ae.LESS_THAN:return"less than";case ae.LESS_THAN_OR_EQUAL:return"less than or equal to";case ae.IS_NULL:return"is null";case ae.IS_NOT_NULL:return"is not null"}}function Im(n){switch(n){case me.IS_EXACTLY:return"is exactly";case me.IS_NOT_EXACTLY:return"is not exactly";case me.CONTAINS:return"contains";case me.DOES_NOT_CONTAIN:return"does not contain";case me.STARTS_WITH:return"starts with";case me.ENDS_WITH:return"ends with";case me.IS_NULL:return"is null";case me.IS_NOT_NULL:return"is not null"}}function Am(n){switch(n){case ce.IS_EXACTLY:return"is";case ce.IS_NOT_EXACTLY:return"is not";case ce.IS_BEFORE:return"is before";case ce.IS_BEFORE_OR_EQUAL:return"is before or equal";case ce.IS_AFTER:return"is after";case ce.IS_AFTER_OR_EQUAL:return"is after or equal";case ce.IS_NULL:return"is null";case ce.IS_NOT_NULL:return"is not null"}}function xm(n){switch(n){case Ye.IS_TRUE:return"is true";case Ye.IS_FALSE:return"is false";case Ye.IS_NULL:return"is null";case Ye.IS_NOT_NULL:return"is not null"}}function Mm(n){switch(n){case Ve.IS_EQUAL:return"is";case Ve.IS_NOT_EQUAL:return"is not";case Ve.IS_NULL:return"is null";case Ve.IS_NOT_NULL:return"is not null"}}function bu(n){if(j.isNumberType(n))return ae.IS_EQUAL;if(j.isCharType(n))return Ve.IS_EQUAL;if(j.isStringType(n))return me.IS_EXACTLY;if(j.isDateType(n))return ce.IS_EXACTLY;if(j.isBooleanType(n))return Ye.IS_TRUE;throw new Error("Invalid column type")}function wu(n){if(j.isCharType(n)||j.isStringType(n))return""}function Su(n){var{condition:e,value:t,start:r,end:i}=n;return{condition:e,value:t,start:r,end:i}}function Zi(n){return{condition:bu(n),value:wu(n),start:void 0,end:void 0}}function yu(){return{type:fe.NO_FORMATTING}}function Lm(n){switch(n){case me.IS_EXACTLY:return"==";case me.IS_NOT_EXACTLY:return"!=";case me.CONTAINS:return"contains";case me.DOES_NOT_CONTAIN:return"does not contain";case me.STARTS_WITH:return"starts with";case me.ENDS_WITH:return"ends with";case me.IS_NULL:return"is null";case me.IS_NOT_NULL:return"is not null"}}function jm(n){switch(n){case ce.IS_EXACTLY:return"==";case ce.IS_NOT_EXACTLY:return"!=";case ce.IS_BEFORE:return"<";case ce.IS_BEFORE_OR_EQUAL:return"<=";case ce.IS_AFTER:return">";case ce.IS_AFTER_OR_EQUAL:return">=";case ce.IS_NULL:return"is null";case ce.IS_NOT_NULL:return"is not null"}}function km(n){switch(n){case Ye.IS_TRUE:return"is true";case Ye.IS_FALSE:return"is false";case Ye.IS_NULL:return"is null";case Ye.IS_NOT_NULL:return"is not null"}}function _m(n){switch(n){case Ve.IS_EQUAL:return"==";case Ve.IS_NOT_EQUAL:return"!=";case Ve.IS_NULL:return"is null";case Ve.IS_NOT_NULL:return"is not null"}}function Hm(n){switch(n){case ae.IS_EQUAL:return"==";case ae.IS_NOT_EQUAL:return"!=";case ae.IS_BETWEEN:return"==";case ae.GREATER_THAN:return">";case ae.GREATER_THAN_OR_EQUAL:return">=";case ae.LESS_THAN:return"<";case ae.LESS_THAN_OR_EQUAL:return"<=";case ae.IS_NULL:return"is null";case ae.IS_NOT_NULL:return"is not null"}}function Bm(n,e,t,r,i){switch(e){case ae.IS_EQUAL:return"".concat(n," == ").concat(t);case ae.IS_NOT_EQUAL:return"".concat(n," != ").concat(t);case ae.IS_BETWEEN:return"".concat(n," > ").concat(r," && ").concat(n," < ").concat(i);case ae.GREATER_THAN:return"".concat(n," > ").concat(t);case ae.GREATER_THAN_OR_EQUAL:return"".concat(n," >= ").concat(t);case ae.LESS_THAN:return"".concat(n," < ").concat(t);case ae.LESS_THAN_OR_EQUAL:return"".concat(n," <= ").concat(t);case ae.IS_NULL:return"".concat(n," == null");case ae.IS_NOT_NULL:return"".concat(n," != null")}}function Vm(n,e,t){switch(e){case me.IS_EXACTLY:return"".concat(n,' == "').concat(t,'"');case me.IS_NOT_EXACTLY:return"".concat(n,' != "').concat(t,'"');case me.CONTAINS:return"".concat(n," != null && ").concat(n,'.contains("').concat(t,'")');case me.DOES_NOT_CONTAIN:return"".concat(n," != null && !").concat(n,'.contains("').concat(t,'")');case me.STARTS_WITH:return"".concat(n," != null && ").concat(n,'.startsWith("').concat(t,'")');case me.ENDS_WITH:return"".concat(n," != null && ").concat(n,'.endsWith("').concat(t,'")');case me.IS_NULL:return"".concat(n," == null");case me.IS_NOT_NULL:return"".concat(n," != null")}}function Um(n,e,t){switch(e){case ce.IS_EXACTLY:return"".concat(n,' == convertDateTime("').concat(t,'")');case ce.IS_NOT_EXACTLY:return"".concat(n," != convertDateTime(`").concat(t,"`)");case ce.IS_BEFORE:return"".concat(n," < convertDateTime(`").concat(t,"`)");case ce.IS_BEFORE_OR_EQUAL:return"".concat(n,' <= convertDateTime("').concat(t,'")');case ce.IS_AFTER:return"".concat(n," > convertDateTime(`").concat(t,"`)");case ce.IS_AFTER_OR_EQUAL:return"".concat(n," >= convertDateTime(`").concat(t,"`)");case ce.IS_NULL:return"".concat(n," == null");case ce.IS_NOT_NULL:return"".concat(n," != null")}}function $m(n,e){switch(e){case Ye.IS_TRUE:return"".concat(n," == true");case Ye.IS_FALSE:return"".concat(n," == false");case Ye.IS_NULL:return"".concat(n," == null");case Ye.IS_NOT_NULL:return"".concat(n," != null")}}function Gm(n,e,t){switch(e){case Ve.IS_EQUAL:return"".concat(n," == '").concat(t,"'");case Ve.IS_NOT_EQUAL:return"".concat(n," != '").concat(t,"'");case Ve.IS_NULL:return"isNull(".concat(n,")");case Ve.IS_NOT_NULL:return"!isNull(".concat(n,")")}}function Wm(n,e){if(j.isNumberType(n))return Hm(e);if(j.isCharType(n))return _m(e);if(j.isStringType(n))return Lm(e);if(j.isDateType(n))return jm(e);if(j.isBooleanType(n))return km(e);throw new Error("Invalid column type")}function zm(n,e,t){if(t===void 0)return Kn.debug("no rules passed."),[];var r=[],i,a=new Map;return t.forEach(o=>{var s,{config:l,type:u}=o,{column:d}=l,h=e.find(C=>{var{name:b,type:w}=C;return b===d.name&&w===d.type});if(h===void 0){Kn.debug("Column ".concat(d.name,":").concat(d.type," not found. Ignoring format rule."),l);return}var[v,m]=(s=u===Et.CONDITIONAL?a.get(h.name):i)!==null&&s!==void 0?s:["null",void 0],g=wm(l,v);if(g===void 0){Kn.debug("Ignoring format rule.",l);return}var f=m===void 0?-1:r.indexOf(m);f>-1&&r.splice(f,1);var p=u===Et.CONDITIONAL?ym(h,g):Sm(n,g);r.push(p),u===Et.CONDITIONAL?a.set(h.name,[g,p]):i=[g,p]}),r}function Km(n,e,t){switch(e){case ce.IS_NULL:case ce.IS_NOT_NULL:return!0;default:{var[r,...i]=(t??"").split(" "),a=i.join(" ");try{Sn.parseDateTimeString(r)}catch{return Kn.debug("Invalid datetime string",r),!1}try{n.i18n.TimeZone.getTimeZone(a)}catch{return Kn.debug("Invalid timezone string",a),!1}return!0}}}function Ym(n){var{type:e}=n;return j.isNumberType(e)||j.isCharType(e)||j.isStringType(e)||j.isDateType(e)||j.isBooleanType(e)}function Ji(n){var{animation:e="iris-grid-bottom-bar-slide-up",children:t,className:r,isShown:i,onClick:a,onEntering:o,onEntered:s,onExiting:l,onExited:u}=n;return c.jsx(sr,{in:i,timeout:We.transitionMs,classNames:e,onEntering:o,onEntered:s,onExiting:l,onExited:u,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:Q("iris-grid-bottom-bar",r),role:"presentation",onClick:a,onKeyPress:a,children:t})})}var Xm=3e3,qm=5;function Qm(n){var{isSaving:e=!1,onSave:t,onDiscard:r,discardTooltip:i,saveTooltip:a,error:o,pendingDataErrors:s,pendingDataMap:l,onEntering:u,onEntered:d,onExiting:h,onExited:v}=n,[m,g]=D.useState(!1),[f,p]=D.useState(!1),C=D.useRef(),b=co(e),w=D.useMemo(()=>s.size===0?o:s.size<=qm?"Key can't be empty (on pending row".concat(s.size>1?"s":""," ").concat(Array.from(s.keys()).join(", ").trim(),")"):"Key can't be empty (on ".concat(s.size," rows)"),[o,s]);D.useEffect(function(){b!=null&&b&&!e&&w==null&&(g(!0),p(!0),C.current=setTimeout(()=>{g(!1)},Xm))},[w,e,b]),D.useEffect(function(){C.current&&l.size>0&&(clearTimeout(C.current),g(!1),p(!1))},[l]),D.useEffect(function(){return()=>C.current?clearTimeout(C.current):void 0},[]);var S=l.size,T;return e?T=c.jsx(rn,{className:"loading-spinner-vertical-align"}):f&&(T=eu),c.jsxs(Ji,{className:"pending-data-bottom-bar",isShown:S>0||m||w!=null,onEntering:u,onEntered:d,onExiting:h,onExited:()=>{p(!1),v&&v()},children:[w!=null&&w!==""&&c.jsxs("div",{className:"error-message",children:[c.jsx(le,{icon:Wn}),c.jsx("span",{children:"".concat(w)})]}),(w==null||w==="")&&c.jsx("div",{className:"status-message",children:S>0&&c.jsx("span",{children:"".concat(S," row").concat(S>1?"s":""," pending")})}),c.jsxs("div",{className:"buttons-container",children:[!e&&!f&&c.jsx(Z,{kind:"secondary",onClick:r,tooltip:i,children:"Discard"}),c.jsxs(Z,{kind:f?"success":"primary",onClick:t,icon:T,disabled:e||f||w!=null,tooltip:a,children:[e&&"Committing...",!e&&f&&"Success",!e&&!f&&"Commit"]})]})]})}var Ka;(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"})(Ka||(Ka={}));const De=Ka;var Zm=[De.SUM,De.ABS_SUM,De.MIN,De.MAX,De.VAR,De.AVG,De.STD,De.FIRST,De.LAST,De.COUNT_DISTINCT,De.DISTINCT,De.COUNT,De.UNIQUE],Jm=n=>{switch(n){default:return!1}},eg=(n,e)=>{switch(n){case De.COUNT:case De.FIRST:case De.LAST:case De.COUNT_DISTINCT:case De.DISTINCT:case De.UNIQUE:return!0;case De.MIN:case De.MAX:return j.isNumberType(e)||j.isDateType(e)||j.isTextType(e);case De.SUM:case De.ABS_SUM:case De.VAR:case De.AVG:case De.STD:return j.isNumberType(e);case De.SKIP:return!1}},Oo=(n,e)=>n.filter(t=>eg(e,t.type)),tg=(n,e,t,r)=>Oo(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const _r={isRollupOperation:Jm,filterValidColumns:Oo,getOperationColumnNames:tg};var Ya;(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"})(Ya||(Ya={}));const Tn=Ya;var rg=Object.freeze([[Tn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[Tn.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const ng={DEFAULTS:rg};function xr(n,e,t){return e=ig(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ig(n){var e=ag(n,"string");return typeof e=="symbol"?e:String(e)}function ag(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var og=ye.module("ColumnHeaderGroup");function Pa(n){return n instanceof kt}class kt{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:o,parent:s}=e;xr(this,"name",void 0),xr(this,"children",void 0),xr(this,"depth",void 0),xr(this,"parent",void 0),xr(this,"color",void 0),xr(this,"childIndexes",void 0),xr(this,"getVisibleRange",Be(l=>{var u=this.childIndexes.flat(),d=K.getVisibleIndexes(u,l),h=Math.min(...d),v=Math.max(...d);return v-h!==u.length-1&&og.warn("Column header group ".concat(this.name," is not contiguous")),[h,v]})),this.name=t,this.children=r,this.color=i,this.depth=a,this.childIndexes=o,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(kt.NEW_GROUP_PREFIX)}}xr(kt,"NEW_GROUP_PREFIX",":newGroup");var sg=["selectedValues"],lg=["selectedValues"];function Fs(n,e){if(n==null)return{};var t=ug(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 ug(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 Is(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?Is(Object(t),!0).forEach(function(r){Xa(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Is(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xa(n,e,t){return e=dg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dg(n){var e=hg(n,"string");return typeof e=="symbol"?e:String(e)}function hg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var jn=ye.module("IrisGridUtils");function TS(n){return n.partitionColumn!==void 0}function As(n){return Array.isArray(n.partitionColumns)}function Rr(n,e){return n>=0&&n<e.length}function cg(n){return n.asDate!=null}class xe{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:o}=t,{columns:s}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(l=>{var{to:u,from:d}=l;return Rr(u,s)&&(typeof d=="number"&&Rr(d,s)||Array.isArray(d)&&Rr(d[0],s)&&Rr(d[1],s))}).map(l=>{var{to:u,from:d}=l;return{to:s[u].name,from:Array.isArray(d)?[s[d[0]].name,s[d[1]].name]:s[d].name}}),movedRows:[...o]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:o,movedRows:s}=t,{columns:l}=e,u=xe.parseCustomColumnNames(r),d=l.map(h=>{var{name:v}=h;return v}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...o].map(h=>{var{to:v,from:m}=h,g=f=>typeof f=="string"?d.findIndex(p=>p===f):f;return{to:g(v),from:Array.isArray(m)?[g(m[0]),g(m[1])]:g(m)}}).filter(h=>{var{to:v,from:m}=h;return Rr(v,d)&&(typeof m=="number"&&Rr(m,d)||Array.isArray(m)&&Rr(m[0],d)&&Rr(m[1],d))}),movedRows:[...s]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partitions:i,partitionColumns:a,advancedSettings:o}=t;return{isSelectingPartition:r,partitions:i,partitionColumns:a.map(s=>s.name),advancedSettings:[...o]}}static hydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,advancedSettings:i}=t,{partitionColumns:a,partitions:o}=As(t)?t:{partitionColumns:t.partitionColumn!==null?[t.partitionColumn]:[],partitions:[t.partition]},{columns:s}=e;return{isSelectingPartition:r,partitions:o,partitionColumns:a.map(l=>{var u=xe.getColumnByName(s,l);if(u===void 0)throw new Error("Invalid partition column ".concat(l));return u}),advancedSettings:new Map([...ng.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,{partitionColumns:a,partitions:o}=As(r)?r:{partitionColumns:r.partitionColumn!==null?[r.partitionColumn]:[],partitions:[r.partition]},{advancedFilters:s,quickFilters:l,sorts:u}=i;return{advancedFilters:s,inputFilters:t,partitions:o,partitionColumns:a,quickFilters:l,sorts:u}}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(o=>{var{name:s,type:l}=o;return s===i&&l===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],o=e.get(a);o?.filter!=null&&t.push(o.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=xe.parseCustomColumnNames(e),i=xe.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(o=>{var{name:s}=o;return s}),a=new Map(t);return r.forEach(o=>a.delete(i.indexOf(o))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(l=>{var{name:u}=l;return u}),a=[...t],o=function(){for(var u=r[s],d=i.findIndex(C=>C===u),h=[],v=0;v<a.length;v+=1){var m=a[v],g=vr({},m),[f,p]=Array.isArray(m.from)?m.from:[m.from,m.from];d<=m.to&&(g.to-=1),d<f&&(f-=1),d<=p&&(p-=1),f<=p&&f!==g.to&&(f===p?h.push(vr(vr({},g),{},{from:f})):h.push(vr(vr({},g),{},{from:[f,p]}))),d=K.applyItemMoves(d,d,[m])[0][0]}a=h,i.splice(i.findIndex(C=>C===u),1)},s=0;s<r.length;s+=1)o();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var o=[],s=t;s<=r;s+=1){var l=K.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.push(e[l])}return o}static getPrevVisibleColumns(e,t,r,i,a){for(var o=[],s=t;s>=0&&o.length<r;){var l=K.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.unshift(e[l]),s-=1}return o}static getNextVisibleColumns(e,t,r,i,a){for(var o=[],s=t;s<e.length&&o.length<r;){var l=K.getModelIndex(s,i);l>=0&&l<e.length&&!a.includes(l)&&o.push(e[l]),s+=1}return o}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var o=e.find(s=>{var{name:l}=s;return l===a});o!=null&&!t.includes(o)&&i.push(o)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],o=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)return null;var l=xe.getVisibleColumnsInRange(e,t,r,i,a),u=l.length*s,d=xe.getPrevVisibleColumns(e,t-1,u,i,a),h=xe.getNextVisibleColumns(e,r+1,u,i,a),v=[...d,...l,...h];return xe.getColumnsToFetch(e,v,o)}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),o="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(o)}for(var s=[...t.keys()],l=t.get(s[0]).sort().join(","),u=1;u<s.length;u+=1)if(t.get(s[u]).sort().join(",")!==l)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];_(a.startColumn),_(a.endColumn);for(var o=(s=a.startColumn)!==null&&s!==void 0?s:0;o<=((l=a.endColumn)!==null&&l!==void 0?l:t.length-1);o+=1){var s,l;r.add(o)}}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 o=r[a],s=[],l=0;l<t.length;l+=1){var u=t[l],d=o.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:o=[],showConstituents:s=!0,showNonAggregatedColumns:l=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},h=d.map(C=>{var{operation:b,selected:w,invert:S}=C;return _r.isRollupOperation(b)?[]:_r.getOperationColumnNames(e,b,w,S)}),v={},m=0;m<d.length;m+=1)v[d[m].operation]=h[m];if(l){var g=new Set(e.map(C=>C.name).filter(C=>!o.includes(C)));if(h.forEach(C=>{C.forEach(b=>g.delete(b))}),g.size>0){var f,p=(f=v[De.FIRST])!==null&&f!==void 0?f:[];v[De.FIRST]=[...p,...g]}}return{groupingColumns:o,includeConstituents:s,includeDescriptions:u,aggregations:v}}static getPendingErrors(e){e.forEach((t,r)=>{if(!xe.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!xe.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})})}static getColumn(e,t){return t<e.length?e[t]:(jn.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&&jn.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,o=e.findIndex(s=>s.name===i);return o<0?null:[o,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:o,operator:s}=t[i];if(o!==void 0){var l="";s!==void 0&&(o==null&&s==="eq"?l="=":s!=="eq"&&(s==="startsWith"||s==="endsWith"?l="*":l=j.getFilterOperatorString(s)));var u="".concat(l).concat(a);s==="startsWith"&&(u="".concat(a).concat(l)),e!=null&&o!==null&&j.isCharType(e)&&(u="".concat(l).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,o=t?.filter(h=>{var{children:v}=h;return v.length>0});if(o.length===0)return{groups:[],maxDepth:r,parentMap:i,groupMap:a};var s=new Map(o.map(h=>[h.name,h])),l=new Set,u=h=>{var{name:v}=h;if(e.getColumnIndexByName(v)!=null)throw new Error("Column header group has same name as column: ".concat(v));var m=a.get(v);if(m)return m;var g=[],f=1;h.children.forEach(C=>{if(l.has(C))throw new Error("Column group child ".concat(C," specified in multiple groups"));l.add(C);var b=s.get(C),w=e.getColumnIndexByName(C);if(b){var S=u(b);g.push(...S.childIndexes),f=Math.max(f,S.depth+1)}else if(w!=null)g.push(w),f=Math.max(f,1);else throw new Error("Unknown child ".concat(C," in group ").concat(v))});var p=new kt(vr(vr({},h),{},{depth:f,childIndexes:g.flat()}));return a.set(v,p),h.children.forEach(C=>i.set(C,p)),r=Math.max(r,p.depth+1),p},d=new Set;return o.forEach(h=>{var{name:v}=h;if(d.has(v))throw new Error("Duplicate column group name: ".concat(v));d.add(v),u(h)}),a.forEach(h=>{var v;h.setParent((v=i.get(h.name))===null||v===void 0?void 0:v.name)}),{groups:[...a.values()],maxDepth:r,groupMap:a,parentMap:i}}static convertValueToText(e,t){if(t!=null&&j.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(j.isDateType(t)&&cg(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),o=a.toISOString(),s=o.replace("T"," ").substring(0,23);return s}return e==null?"":"".concat(e)}constructor(e){Xa(this,"dh",void 0),Xa(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new j(e)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:Se,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:o,metrics:s,quickFilters:l,customColumns:u,conditionalFormats:d=Se,reverseType:h,rollupConfig:v=void 0,showSearchBar:m,searchValue:g,selectDistinctColumns:f=Se,selectedSearchColumns:p,sorts:C,invertSearchColumns:b,pendingDataMap:w=fr,frozenColumns:S,columnHeaderGroups:T}=t;_(s);var{userColumnWidths:y,userRowHeights:O}=s,{columns:R}=e;return{advancedFilters:this.dehydrateAdvancedFilters(R,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:o,quickFilters:xe.dehydrateQuickFilters(l),sorts:xe.dehydrateSort(C),userColumnWidths:[...y].filter(E=>{var[P]=E;return P!=null&&P>=0&&P<R.length}).map(E=>{var[P,x]=E;return[R[P].name,x]}),userRowHeights:[...O],customColumns:[...u],conditionalFormats:[...d],reverseType:h,rollupConfig:v,showSearchBar:m,searchValue:g,selectDistinctColumns:[...f],selectedSearchColumns:p,invertSearchColumns:b,pendingDataMap:this.dehydratePendingDataMap(R,w),frozenColumns:S,columnHeaderGroups:T?.map(E=>({name:E.name,children:E.children,color:E.color}))}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:o={aggregations:[],showOnTop:!1},customColumnFormatMap:s,isFilterBarShown:l,quickFilters:u,sorts:d,customColumns:h,conditionalFormats:v,userColumnWidths:m,userRowHeights:g,reverseType:f,rollupConfig:p=void 0,showSearchBar:C,searchValue:b,selectDistinctColumns:w,selectedSearchColumns:S,invertSearchColumns:T=!0,pendingDataMap:y=[],frozenColumns:O,columnHeaderGroups:R}=t,{columns:E,formatter:P}=e;return{advancedFilters:this.hydrateAdvancedFilters(E,a,P.timeZone),aggregationSettings:o,customColumnFormatMap:new Map(s),isFilterBarShown:l,quickFilters:this.hydrateQuickFilters(E,u,P.timeZone),sorts:this.hydrateSort(E,d),userColumnWidths:new Map(m.map(x=>{var[I,N]=x;return typeof I=="string"||I instanceof String?[E.findIndex(L=>{var{name:F}=L;return F===I}),N]:[I,N]}).filter(x=>{var[I]=x;return I!=null&&I>=0&&I<E.length})),customColumns:h,conditionalFormats:v,userRowHeights:new Map(g),reverseType:f,rollupConfig:p,showSearchBar:C,searchValue:b,selectDistinctColumns:w,selectedSearchColumns:S,invertSearchColumns:T,pendingDataMap:this.hydratePendingDataMap(E,y),frozenColumns:O,columnHeaderGroups:xe.parseColumnHeaderGroups(e,(r=R??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[o,s]=a,{text:l}=s,u=null;try{var d=xe.getColumn(e,o);d!=null&&(u=this.tableUtils.makeQuickFilter(d,l,r))}catch(h){jn.error("hydrateQuickFilters error with",l,h)}return[o,{text:l,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,o=xe.getColumn(e,i);_(o);var s=this.dehydrateAdvancedFilterOptions(o,a.options);return[i,{options:s}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[o,s]=a,l=xe.getColumn(e,o);_(l);var u=this.hydrateAdvancedFilterOptions(l,s.options),d=null;try{var h=xe.getColumn(e,o);h!=null&&(d=this.tableUtils.makeAdvancedFilter(l,u,r))}catch(v){jn.error("hydrateAdvancedFilters error with",u,v)}return[o,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Fs(t,sg);return vr({selectedValues:r?.map(a=>this.dehydrateValue(a,e?.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=Fs(t,lg);return vr({selectedValues:r?.map(a=>this.hydrateValue(a,e?.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].map(o=>{var[s,l]=o;return[e[s].name,this.dehydrateValue(l,e[s].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(o=>{var{name:s}=o;return s===a})),r.get(a));return new Map(t.map(a=>{var[o,{data:s}]=a;return[o,{data:new Map(s.map(l=>{var u,[d,h]=l,v=i(d);return _(v),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(h,e[v].type)]}))}]}))}dehydrateValue(e,t){return j.isDateType(t)?this.dehydrateDateTime(e):j.isLongType(t)?xe.dehydrateLong(e):e}hydrateValue(e,t){return j.isDateType(t)?this.hydrateDateTime(e):j.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(Sn.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(Sn.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:o,direction:s}=i;if(s===j.sortDirection.reverse)return r.Table.reverse();var l=typeof a=="string"?xe.getColumnByName(e,a):xe.getColumn(e,a);if(l!=null){var u=l.sort();return o&&(u=u.abs()),s===j.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(i=>i!=null&&i.direction!==j.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=xe.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var o=[];t.advancedFilters&&(o=xe.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var s=this.getFiltersFromInputFilters(i,t.inputFilters,r),l=[];t.sorts&&(l=this.hydrateSort(i,t.sorts));var u=[...a,...o],{partitions:d,partitionColumns:h}=t;if(d&&d.length&&h&&h!==null&&h!==void 0&&h.length){for(var v=h.map(f=>xe.getColumnByName(i,f)),m=0;m<v.length;m+=1)if(v[m]!==void 0&&d[m]!=null){var g=v[m].filter().eq(this.dh.FilterValue.ofString(d[m]));u=[g,...u]}}u=[...s,...u],e.applyFilter(u),e.applySort(l)}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:o,value:s}=i,l=e.find(u=>{var{name:d,type:h}=u;return d===a&&h===o});if(l)try{return this.tableUtils.makeQuickFilter(l,s,r)}catch(u){jn.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.startRow),_(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:o}=i;return _(a),_(o),t.RangeSet.ofRange(a,o)});return t.RangeSet.ofRanges(r)}}const Re=xe;function xs(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function Fa(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){xs(a,r,i,o,s,"next",l)}function s(l){xs(a,r,i,o,s,"throw",l)}o(void 0)})}}function Br(n,e,t){return e=vg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function vg(n){var e=mg(n,"string");return typeof e=="symbol"?e:String(e)}function mg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ct=ye.module("IrisGridCopyHandler");class Ce extends D.Component{static getStatusMessageText(e,t){switch(e){case Ce.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Ce.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Ce.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Ce.COPY_STATES.FETCH_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Ce.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Ce.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Ce.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Ce.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),Br(this,"textData",void 0),Br(this,"hideTimer",void 0),Br(this,"fetchPromise",void 0),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleCopyClick=this.handleCopyClick.bind(this),this.handleHideTimeout=this.handleHideTimeout.bind(this),this.state={error:void 0,copyState:Ce.COPY_STATES.IDLE,buttonState:Ce.BUTTON_STATES.COPY,isShown:!1,rowCount:0}}componentDidMount(){var{copyOperation:e}=this.props;e!=null&&this.startCopy()}componentDidUpdate(e){var{copyOperation:t}=this.props;e.copyOperation!==t&&this.startCopy()}componentWillUnmount(){this.stopCopy()}startCopy(){Ct.debug2("startCopy"),this.stopCopy();var{copyOperation:e}=this.props;if(e==null){Ct.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var{ranges:t,error:r}=e;if(r!=null){Ct.debug("Showing copy error",r),this.setState({isShown:!0,copyState:Ce.COPY_STATES.DONE,error:r}),this.startHideTimer();return}var i=B.rowCount(t);this.setState({rowCount:i,isShown:!0,error:void 0}),i>Ce.NO_PROMPT_THRESHOLD?this.setState({buttonState:Ce.BUTTON_STATES.COPY,copyState:Ce.COPY_STATES.CONFIRMATION_REQUIRED}):this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){Ct.debug2("handleBackgroundClick");var{copyState:e}=this.state;e===Ce.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){Ct.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){var e=this;return Fa(function*(){if(Ct.debug2("handleCopyClick"),e.textData!=null)try{yield e.copyText(e.textData),e.showCopyDone()}catch(t){Ct.error("Error copying text",t),e.setState({error:"Unable to copy. Verify your browser permissions."})}else e.startFetch()})()}handleHideTimeout(){Ct.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){var t=this;return Fa(function*(){Ct.debug2("copyText",e),t.textData=e,yield vo(e)})()}showCopyDone(){this.setState({copyState:Ce.COPY_STATES.DONE}),this.startHideTimer()}startFetch(){var e=this;return Fa(function*(){e.stopFetch(),e.setState({buttonState:Ce.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Ce.COPY_STATES.FETCH_IN_PROGRESS});var{model:t,copyOperation:r}=e.props,{ranges:i,includeHeaders:a,userColumnWidths:o,movedColumns:s,formatValues:l}=r;Ct.debug("startFetch",i);var u=Re.getHiddenColumns(o),d=K.getModelRanges(i,s);if(u.length>0){var h=u.map(B.makeColumn);d=B.subtractRangesFromRanges(d,h)}var v=l!=null&&l?(g,f)=>t.displayString(g,f.type,f.name):g=>"".concat(g);e.fetchPromise=Tt.makeCancelable(t.textSnapshot(d,a,v));try{var m=yield e.fetchPromise;e.fetchPromise=void 0;try{yield e.copyText(m),e.showCopyDone()}catch(g){Ct.error("Error copying text",g),e.setState({buttonState:Ce.BUTTON_STATES.CLICK_TO_COPY,copyState:Ce.COPY_STATES.CLICK_REQUIRED})}}catch(g){g instanceof ru?Ct.debug("User cancelled copy."):(Ct.error("Error fetching contents",g),e.fetchPromise=void 0,e.setState({buttonState:Ce.BUTTON_STATES.RETRY,copyState:Ce.COPY_STATES.FETCH_ERROR}))}})()}stopFetch(){this.fetchPromise&&(Ct.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Ce.HIDE_TIMEOUT)}stopHideTimer(){this.hideTimer!=null&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}render(){var{onEntering:e,onEntered:t,onExiting:r,onExited:i}=this.props,{buttonState:a,copyState:o,isShown:s,rowCount:l,error:u}=this.state,d=o===Ce.COPY_STATES.DONE?"fade":"copy-slide-up",h=Ce.getCopyButtonText(a),v=u??Ce.getStatusMessageText(o,l),m=o!==Ce.COPY_STATES.DONE,g=a===Ce.BUTTON_STATES.FETCH_IN_PROGRESS,f=o===Ce.COPY_STATES.DONE;return c.jsxs(Ji,{animation:d,isShown:s,className:Q("iris-grid-copy-handler",{"copy-done":f}),onClick:this.handleBackgroundClick,onEntering:e,onEntered:t,onExiting:r,onExited:i,children:[c.jsx("div",{className:"status-message",children:c.jsx("span",{children:v})}),c.jsx(sr,{in:m,timeout:We.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsxs("div",{className:"buttons-container",children:[c.jsx("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick,children:"Cancel"}),c.jsxs(Z,{kind:g?"tertiary":"primary",className:Q("btn-copy",{"btn-spinner":g}),onClick:this.handleCopyClick,disabled:g,children:[g&&c.jsx(rn,{className:"loading-spinner-vertical-align"}),h]})]})})]})}}Br(Ce,"NO_PROMPT_THRESHOLD",1e4);Br(Ce,"HIDE_TIMEOUT",3e3);Br(Ce,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});Br(Ce,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});Br(Ce,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});const gg=Ce;function Fi(n,e,t){return e=fg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fg(n){var e=pg(n,"string");return typeof e=="symbol"?e:String(e)}function pg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Tu extends D.PureComponent{constructor(e){super(e),Fi(this,"inputField",void 0),Fi(this,"initialValue",void 0),Fi(this,"debouncedSendUpdate",void 0);var{debounceMs:t}=e;this.debouncedSendUpdate=Jt(this.sendUpdate.bind(this),t),this.handleCancel=this.handleCancel.bind(this),this.handleChange=this.handleChange.bind(this),this.handleCommit=this.handleCommit.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.inputField=null;var{value:r}=e;this.initialValue=r,this.state={isChanged:!1,value:r}}componentDidMount(){var e;(e=this.inputField)===null||e===void 0||e.focus()}componentDidUpdate(e){var{debounceMs:t}=this.props;e.debounceMs!==t&&(this.debouncedSendUpdate.flush(),this.debouncedSendUpdate=Jt(this.sendUpdate.bind(this),t))}componentWillUnmount(){this.debouncedSendUpdate.cancel()}setValue(e){this.initialValue=e,this.setState({value:e})}focus(){var e;(e=this.inputField)===null||e===void 0||e.focus()}handleChange(e){var{value:t}=e.target;this.setState({value:t,isChanged:!0}),this.debouncedSendUpdate(t)}handleCancel(){this.debouncedSendUpdate.cancel();var{initialValue:e}=this,{isChanged:t}=this.state;t&&this.sendUpdate(e);var{onDone:r}=this.props;r()}handleCommit(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.debouncedSendUpdate.flush();var{onDone:r}=this.props;r(e,t)}handleFocus(){var e;(e=this.inputField)===null||e===void 0||e.select()}handleBlur(e){var{relatedTarget:t}=e;t!=null&&t.classList.contains("context-menu-container")?this.handleCommit(!1,!0):t!=null&&t.classList.contains("advanced-filter-button")?this.handleCommit(!1,!1):this.handleCommit(!0,!0)}handleTab(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.debouncedSendUpdate.flush();var{onTab:t}=this.props;t(e)}handleKeyDown(e){switch(e.key){case"Escape":e.stopPropagation(),e.preventDefault(),this.handleCancel();break;case"Enter":e.stopPropagation(),e.preventDefault(),this.handleCommit();break;case"Tab":e.stopPropagation(),e.preventDefault(),this.handleTab(e.shiftKey);break}}handleContextMenu(e){var{onContextMenu:t}=this.props;t(e)}sendUpdate(e){var{onChange:t}=this.props;t(e)}render(){var{className:e,style:t,isAdvancedFilterSet:r,onAdvancedFiltersTriggered:i}=this.props,{value:a}=this.state;return c.jsxs("div",{style:t,className:"iris-grid-input-autosized-wrapper","data-value":a,children:[c.jsx("input",{ref:o=>{this.inputField=o},className:Q("iris-grid-input-field",e),type:"text",value:a,onBlur:this.handleBlur,onFocus:this.handleFocus,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onContextMenu:this.handleContextMenu,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"}),c.jsx("div",{className:"advanced-filter-button-container",children:c.jsx(Z,{kind:"ghost",className:Q("btn-link-icon advanced-filter-button",{"filter-set":r}),onClick:i,onContextMenu:this.handleContextMenu,children:c.jsxs("div",{className:"fa-layers ",children:[c.jsx(le,{icon:io,className:"filter-solid"}),c.jsx(le,{icon:Ai,className:"filter-light"})]})})})]})}}Fi(Tu,"defaultProps",{style:{},className:"",value:"",isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});const Cg=Tu;function bg(n,e,t){return e=wg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wg(n){var e=Sg(n,"string");return typeof e=="symbol"?e:String(e)}function Sg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 yg extends an{constructor(e){super(),bg(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{selectedRanges:t}=this.irisGrid.state;return e.key==="c"&&yn.isModifierKeyDown(e)?(Re.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}const Tg=yg;function Eg(n,e,t){return e=Og(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Og(n){var e=Rg(n,"string");return typeof e=="symbol"?e:String(e)}function Rg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Dg extends an{constructor(e){super(),Eg(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if(qt.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var{reverseType:t}=this.irisGrid.state;return t===j.REVERSE_TYPE.NONE?this.irisGrid.reverse(j.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(j.REVERSE_TYPE.NONE),!0}return!1}}const Ng=Dg;function Pg(n,e,t){return e=Fg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fg(n){var e=Ig(n,"string");return typeof e=="symbol"?e:String(e)}function Ig(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ag extends an{constructor(e){super(),Pg(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return qt.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}const xg=Ag;function Mg(n,e,t){return e=Lg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lg(n){var e=jg(n,"string");return typeof e=="symbol"?e:String(e)}function jg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 kg extends ze{constructor(e){super(850),Mg(this,"irisGrid",void 0),this.irisGrid=e}destroyColumnTooltip(){this.irisGrid.setState({overflowButtonTooltipProps:null})}setCursor(e){return this.isHoveringOverflowButton(e)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:o,grid:s,state:l,props:u}=this.irisGrid;if(!s)return null;var{metrics:d}=l,{model:h}=u,{canvasContext:v}=s,m=s.getTheme(),g={context:v,mouseX:t,mouseY:r,metrics:d,model:h,theme:m},{left:f,top:p,width:C,height:b}=o.getCellOverflowButtonPosition(g);return f==null||C==null||p==null||b==null?null:{left:f,top:p,width:C,height:b}}isHoveringOverflowButton(e){var t,{x:r,y:i}=e,{left:a,top:o,width:s,height:l}=(t=this.getButtonPosition(e))!==null&&t!==void 0?t:{};if(a==null||s==null||o==null||l==null)return!1;var{renderer:u,grid:d,state:h,props:v}=this.irisGrid;if(!d)return!1;var{metrics:m}=h,{model:g}=v,{canvasContext:f}=d,p=d.getTheme(),C={context:f,mouseX:r,mouseY:i,metrics:m,model:g,theme:p};return u.shouldRenderOverflowButton(C)&&r>=a&&r<=a+s&&i>=o&&i<=o+l}onMove(e){if(this.isHoveringOverflowButton(e)){var{overflowButtonTooltipProps:t}=this.irisGrid.state,r=this.getButtonPosition(e);nt(t,r)||this.irisGrid.setState({overflowButtonTooltipProps:r})}else this.destroyColumnTooltip();return this.setCursor(e)}onWheel(e){return this.destroyColumnTooltip(),this.onMove(e)}onDown(e){this.destroyColumnTooltip();var{column:t,row:r}=e;return this.isHoveringOverflowButton(e)&&this.irisGrid.setState({showOverflowModal:!0,overflowText:this.irisGrid.getValueForCell(t,r)}),!1}onContextMenu(){return this.destroyColumnTooltip(),!1}onLeave(){return this.destroyColumnTooltip(),!1}}const _g=kg;function Hg(n,e,t){return e=Bg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bg(n){var e=Vg(n,"string");return typeof e=="symbol"?e:String(e)}function Vg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ug extends ze{constructor(e){super(),Hg(this,"irisGrid",void 0),this.irisGrid=e,this.cursor=null}isActive(){var{isSelectingColumn:e}=this.irisGrid.props;return e}isValidColumn(e){if(e==null)return!1;var{columnSelectionValidator:t}=this.irisGrid.props;return t!=null?t(e):!0}updateColumnSelectionStatus(){var{columnSelectionValidator:e}=this.irisGrid.props;e?.(null)}getTableColumn(e){if(e==null)return null;var{model:t}=this.irisGrid.props,r=this.irisGrid.getModelColumn(e);return r==null?null:t.columns[r]}onMove(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),!0}onWheel(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),{preventDefault:!1,stopPropagation:!1}}onLeave(){return this.isActive()&&this.irisGrid.setState({hoverSelectColumn:null}),this.updateColumnSelectionStatus(),!1}onDown(){return this.isActive()}onClick(e){if(!this.isActive())return!1;var{column:t}=e,r=this.getTableColumn(t);return r!=null&&this.isValidColumn(r)&&this.irisGrid.selectColumn(r),!0}}const $g=Ug;function Gg(n,e,t){return e=Wg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wg(n){var e=zg(n,"string");return typeof e=="symbol"?e:String(e)}function zg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Kg extends ze{constructor(e){super(),Gg(this,"irisGrid",void 0),this.irisGrid=e}hideColumnTooltip(){var{tooltip:e}=this.irisGrid;e&&(e.stopTimer(),e.hide())}onDown(){return this.hideColumnTooltip(),!1}onContextMenu(){return this.hideColumnTooltip(),!1}onWheel(){return this.hideColumnTooltip(),!1}onLeave(e,t,r){var{relatedTarget:i}=r instanceof MouseEvent?r:r.nativeEvent,{tooltip:a}=this.irisGrid;if(!a)return!1;var o=a.popper.current;return o&&i instanceof Element&&o.element.contains(i)||this.hideColumnTooltip(),!1}onMove(e){var{column:t,row:r,columnHeaderDepth:i}=e,{shownColumnTooltip:a}=this.irisGrid.state,o=null;return t!==null&&r===null&&i===0&&(o=t),o!==a&&this.irisGrid.setState({shownColumnTooltip:o}),!1}}const Yg=Kg;function Eu(n,e,t){return e=Xg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xg(n){var e=qg(n,"string");return typeof e=="symbol"?e:String(e)}function qg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ea extends D.Component{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ea.defaultProps;super(e),Eu(this,"inputRef",void 0),this.handleInputChange=this.handleInputChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.inputRef=Ne.createRef()}handleInputChange(){var{onChange:e}=this.props;this.inputRef.current&&e(this.inputRef.current.value)}closeContextMenu(){var{forwardedProps:e}=this.props,{closeMenu:t}=e;t(!0)}revertToDefault(){var{onChange:e}=this.props;e(null)}returnFocusToContextMenu(){var e=Id.getClosestByClassName(this.inputRef.current,"context-menu-container");e instanceof HTMLElement&&e.focus()}handleKeyDown(e){switch(e.key){case"Enter":e.stopPropagation(),this.closeContextMenu();break;case"Escape":e.stopPropagation(),this.revertToDefault(),this.closeContextMenu();break;case"ArrowRight":case"ArrowLeft":e.stopPropagation();break;case"ArrowUp":case"ArrowDown":this.returnFocusToContextMenu();break;default:e.stopPropagation()}}render(){var{formatString:e,forwardedProps:t,placeholder:r,title:i}=this.props,{menuItem:{description:a},iconElement:o}=t;return c.jsxs("div",{className:"form-group flex-grow mb-0",children:[c.jsxs("div",{className:"custom-format-title",children:[c.jsx("span",{className:"icon",children:o}),c.jsxs("label",{className:"title mb-0",htmlFor:"custom-format-input",children:[i,a!=null&&c.jsx(_t,{children:a})]})]}),c.jsx("div",{className:"pl-2 pr-2 pb-2",children:c.jsx("input",{id:"custom-format-input",className:"form-control text-right mb-0",type:"text",defaultValue:e,ref:this.inputRef,placeholder:r,onKeyDown:this.handleKeyDown,onChange:this.handleInputChange,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"})})]})}}Eu(ea,"defaultProps",{formatString:"",forwardedProps:{menuItem:{},closeMenu(n){},iconElement:null},placeholder:"",title:"",onChange(n){}});const Qg=ea;class Zg{static isDefaultSelected(e){return!e||![wn.TYPE_CONTEXT_CUSTOM,wn.TYPE_CONTEXT_PRESET].includes(e.type)}static isCustomSelected(e){return e!=null&&e.type===wn.TYPE_CONTEXT_CUSTOM}static makeOption(e,t,r,i){return{title:e,description:e,group:r,format:t,isSelected:i}}static makeCustomFormatOption(e,t,r,i,a){return{title:e.label,description:e.label,format:e,group:t,isSelected:i,menuElement:c.jsx(Qg,{formatString:e.formatString,title:e.label,placeholder:r,onChange:a})}}}const Dt=Zg;function Ro(n,e,t){return e=Jg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Jg(n){var e=ef(n,"string");return typeof e=="symbol"?e:String(e)}function ef(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class wt{static getOptions(e,t){var r=new Date,i=[{group:wt.dateGroup,formatString:"yyyy-MM-dd"},{group:wt.dateGroup,formatString:"MM-dd-yyyy"},{group:wt.timeGroup,formatString:"HH:mm:ss"},{group:wt.timeGroup,formatString:"HH:mm:ss.SSS"},{group:wt.timeGroup,formatString:"HH:mm:ss.SSSSSSSSS"},{group:wt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss"},{group:wt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSS"},{group:wt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"}],a=i.map(s=>{var l=zn.makeFormat("",s.formatString,zn.TYPE_CONTEXT_PRESET),u=e.getFormattedString(r,j.dataType.DATETIME,"",l);return Dt.makeOption(u,l,s.group,zn.isSameFormat(l,t))}),o=Dt.makeOption("Default",null,wt.dateGroup,Dt.isDefaultSelected(t));return[o,...a]}}Ro(wt,"dateGroup",10);Ro(wt,"timeGroup",20);Ro(wt,"dateTimeGroup",30);const tf=wt;function ta(n,e,t){return e=rf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rf(n){var e=nf(n,"string");return typeof e=="symbol"?e:String(e)}function nf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class dt{static getOptions(e,t,r){var i=[{format:xt.FORMAT_PERCENT,group:dt.presetGroup},{format:xt.FORMAT_BASIS_POINTS,group:dt.presetGroup},{format:xt.FORMAT_MILLIONS,group:dt.presetGroup},{format:xt.FORMAT_SCIENTIFIC_NOTATION,group:dt.presetGroup},{format:xt.FORMAT_ROUND,group:dt.presetRoundGroup},{format:xt.FORMAT_ROUND_TWO_DECIMALS,group:dt.presetRoundGroup},{format:xt.FORMAT_ROUND_FOUR_DECIMALS,group:dt.presetRoundGroup}],a=Dt.makeOption("Default",null,dt.defaultGroup,Dt.isDefaultSelected(t)),o=i.map(d=>Dt.makeOption(d.format.label,d.format,d.group,xt.isSameFormat(d.format,t))),s=Dt.isCustomSelected(t),l=s?t:xt.makeCustomFormat(),u=Dt.makeCustomFormatOption(l,dt.customGroup,xt.DEFAULT_FORMAT_STRING,s,d=>{if(d!=null){var h=xt.makeCustomFormat(d);xt.isValid(e,h)&&r(h)}else r(null)});return[a,...o,u]}}ta(dt,"defaultGroup",10);ta(dt,"presetGroup",20);ta(dt,"presetRoundGroup",30);ta(dt,"customGroup",40);const af=dt;function Do(n,e,t){return e=of(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function of(n){var e=sf(n,"string");return typeof e=="symbol"?e:String(e)}function sf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 pr{static getOptions(e,t,r){var i=[{format:Gr.FORMAT_MILLIONS,group:pr.presetGroup},{format:Gr.FORMAT_SCIENTIFIC_NOTATION,group:pr.presetGroup}],a=Dt.makeOption("Default",null,pr.defaultGroup,Dt.isDefaultSelected(t)),o=i.map(d=>Dt.makeOption(d.format.label,d.format,d.group,Gr.isSameFormat(d.format,t))),s=Dt.isCustomSelected(t),l=s?t:Gr.makeCustomFormat(),u=Dt.makeCustomFormatOption(l,pr.customGroup,Gr.DEFAULT_FORMAT_STRING,s,d=>{if(d!=null){var h=Gr.makeCustomFormat(d);Gr.isValid(e,h)&&r(h)}else r(null)});return[a,...o,u]}}Do(pr,"defaultGroup",10);Do(pr,"presetGroup",20);Do(pr,"customGroup",30);const lf=pr;function Ms(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 Ls(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ms(Object(t),!0).forEach(function(r){Nt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ms(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Nt(n,e,t){return e=uf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function uf(n){var e=df(n,"string");return typeof e=="symbol"?e:String(e)}function df(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var js=ye.module("IrisGridContextMenuHandler"),hf=150,ks="yyyy-MM-dd HH:mm:ss.SSSSSSSSS";class G extends ze{static getQuickFilterCondition(e,t,r){return e&&r==="&&"?e.and(t):e&&r==="||"?e.or(t):t}static getQuickFilterText(e,t,r){return r&&e!=null?"".concat(e," ").concat(r," ").concat(t):t}static getOperatorAsText(e){return e==="&&"?"And":"Or"}static getRowOptionFormatted(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:30;return"".concat(e,' "').concat(Zt.truncate(t,r-e.length-3),'"')}constructor(e,t){super(),Nt(this,"irisGrid",void 0),Nt(this,"debouncedUpdateCustomFormat",void 0),Nt(this,"dh",void 0),this.debouncedUpdateCustomFormat=Jt(e.handleFormatSelection,hf),this.dh=t,this.irisGrid=e}componentWillUnmount(){this.debouncedUpdateCustomFormat.flush()}getHeaderActions(e,t){var{irisGrid:r}=this,{column:i}=t;_(i);var{model:a}=r.props,{columns:o}=a,s=o[e],l=[],{metrics:u,reverseType:d,quickFilters:h,advancedFilters:v,searchFilter:m}=r.state,g=r.getTheme();_(u);var{filterIconColor:f,filterBarActiveColor:p,contextMenuSortIconColor:C,contextMenuReverseIconColor:b}=g,w=a.sort,S=j.getSortForColumn(w,s.name),T=d!==j.REVERSE_TYPE.NONE,{userColumnWidths:y}=u,O=[...y.values()].some(I=>I===0),R=a.getColumnHeaderParentGroup(e,0)===void 0&&!(Fe(a)&&a.hasExpandableRows),E=a.isColumnFrozen(e),P=a.isColumnSortable(e);if(l.push({title:"Hide Column",group:G.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.hideColumnByVisibleIndex(i)}}),l.push({title:E?"Unfreeze Column":"Freeze Column",group:G.GROUP_HIDE_COLUMNS,disabled:!R,action:()=>{E?this.irisGrid.unFreezeColumnByColumnName(s.name):this.irisGrid.freezeColumnByColumnName(s.name)},order:10}),l.push({title:"Show All Columns",group:G.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.showAllColumns()},disabled:!O}),l.push({title:"Quick Filters",icon:cr,iconColor:p,shortcut:qt.TABLE.TOGGLE_QUICK_FILTER,group:G.GROUP_FILTER,order:10,action:()=>{this.irisGrid.toggleFilterBar(i)}}),l.push({title:"Advanced Filters",icon:v.get(e)?io:Ai,iconColor:f,group:G.GROUP_FILTER,order:20,action:()=>{this.irisGrid.handleAdvancedMenuOpened(i)}}),l.push({title:"Clear Table Filters",group:G.GROUP_FILTER,order:40,shortcut:qt.TABLE.CLEAR_FILTERS,action:()=>{this.irisGrid.clearAllFilters()},disabled:!(h.size>0||v.size>0||m!=null)}),l.push({title:"Sort by",icon:cr,iconColor:C,group:G.GROUP_SORT,order:10,actions:this.sortByActions(s,e,S),disabled:!P}),l.push({title:"Add Additional Sort",disabled:S&&w.length===1||T&&w.length===1||S&&T&&w.length===2||w.length===0||!P,group:G.GROUP_SORT,order:20,actions:this.additionalSortActions(s,e)}),l.push({title:"Clear Table Sorting",disabled:w.length===0||T&&w.length===1,group:G.GROUP_SORT,action:()=>{this.irisGrid.sortColumn(i,G.COLUMN_SORT_DIRECTION.none)},order:30}),l.push({title:d===j.REVERSE_TYPE.NONE?"Reverse Table":"Clear Reverse Table",icon:cr,iconColor:b,group:G.GROUP_SORT,order:40,disabled:!a.isReversible,shortcut:qt.TABLE.REVERSE,action:()=>{d===j.REVERSE_TYPE.NONE?this.irisGrid.reverse(j.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(j.REVERSE_TYPE.NONE)}}),l.push({title:"Copy Column Name",group:G.GROUP_COPY,action:()=>{var I;vo((I=a.textForColumnHeader(e))!==null&&I!==void 0?I:"").catch(N=>js.error("Unable to copy header",N))}}),j.isDateType(s.type))l.push({title:"Date/Time Format",group:G.GROUP_FORMAT,actions:this.dateFormatActions(s)});else if(j.isNumberType(s.type)){var x;l.push({title:"Number Format",group:G.GROUP_FORMAT,actions:(x=this.numberFormatActions(s))!==null&&x!==void 0?x:void 0})}return l}getCellActions(e,t,r){_(e);var{dh:i,irisGrid:a}=this,{column:o,row:s}=r,{model:l,canCopy:u}=a.props,{columns:d}=l,h=a.getModelRow(s);_(h);var v=l.valueForCell(e,h),m=l.textForCell(e,h),g=d[e],f=[],{quickFilters:p}=a.state,C=a.getTheme(),{filterIconColor:b}=C,{settings:w}=a.props,S=new zn(i,{timeZone:w?.timeZone,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:ks}),T=new zn(i,{timeZone:w?.timeZone,showTimeZone:w?.showTimeZone,showTSeparator:w?.showTSeparator,defaultDateTimeFormatString:ks});if(g==null||s==null)return f;if(l.isFilterable(e)){var y={title:"Filter by Value",icon:cr,iconColor:b,group:G.GROUP_FILTER,order:10,actions:[]};if(v==null)p.get(e)&&y.actions.push({title:"And",actions:this.nullFilterActions(g,p.get(e),"&&"),order:2,group:de.groups.high}),y.actions.push(...this.nullFilterActions(g));else if(v==="")p.get(e)&&y.actions.push({title:"And",actions:this.emptyStringFilterActions(g,p.get(e),"&&"),order:2,group:de.groups.high}),y.actions.push(...this.emptyStringFilterActions(g));else if(j.isBooleanType(g.type))p.get(e)&&y.actions.push({title:"Or",actions:this.booleanFilterActions(g,m,p.get(e),"||"),order:2,group:de.groups.high}),y.actions.push(...this.booleanFilterActions(g,m));else if(j.isNumberType(g.type)||j.isCharType(g.type)){_(e);var O=j.isCharType(g.type)?String.fromCharCode(v):"".concat(v);p.get(e)&&y.actions.push({title:"And",actions:this.numberFilterActions(g,O,v,p.get(e),"&&"),order:2,group:de.groups.high}),y.actions.push(...this.numberFilterActions(g,O,v,p.get(e)))}else if(j.isDateType(g.type)){var R=S.format(v),E=T.format(v);p.get(e)&&y.actions.push({title:"And",actions:this.dateFilterActions(g,R,E,v,p.get(e),"&&"),order:2,group:de.groups.high}),y.actions.push(...this.dateFilterActions(g,R,E,v,p.get(e)))}else p.get(e)&&y.actions.push({title:"And",actions:this.stringFilterActions(g,m,v,p.get(e),"&&"),order:2,group:de.groups.high}),y.actions.push(...this.stringFilterActions(g,m,v));y.actions!=null&&y.actions.length>0&&f.push(y)}if(Fe(l)&&l.isRowExpandable(h)){var P=l.groupedColumns.length>0?l.depthForRow(h)-1:0,x=l.valueForCell(P,h),I=x==null?"null":l.textForCell(P,h);f.push({title:G.getRowOptionFormatted(l.isRowExpanded(h)?"Collapse":"Expand",I),group:G.GROUP_EXPAND_COLLAPSE,order:10,action:()=>{l.setRowExpanded(h,!l.isRowExpanded(h))}}),l.isExpandAllAvailable===!0&&f.push({title:G.getRowOptionFormatted("Expand All in",I),group:G.GROUP_EXPAND_COLLAPSE,order:20,action:()=>{l.setRowExpanded(h,!0,!0)}})}Fe(l)&&l.hasExpandableRows&&l.isExpandAllAvailable===!0&&(f.push({title:"Expand Entire Table",group:G.GROUP_EXPAND_COLLAPSE,order:30,action:()=>{l.expandAll()}}),f.push({title:"Collapse Entire Table",group:G.GROUP_EXPAND_COLLAPSE,order:40,action:()=>{l.collapseAll()}}));var N={title:"Go to",iconColor:b,shortcut:qt.TABLE.GOTO_ROW,group:G.GROUP_GOTO,order:10,action:()=>this.irisGrid.toggleGotoRow("".concat(s+1),"".concat(v),g.name)};return f.push(N),u&&(f.push({title:"Copy Cell",group:G.GROUP_COPY,order:10,action:()=>{a.copyCell(o,s)}}),f.push({title:"Copy Cell Unformatted",group:G.GROUP_COPY,order:20,action:()=>{a.copyCell(o,s,!0)}})),f}getNumberValueEqualsFilter(e,t){var{dh:r}=this,i=e.filter();if(t===Number.POSITIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.greaterThan(r.FilterValue.ofNumber(0)));if(t===Number.NEGATIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.lessThan(r.FilterValue.ofNumber(0)));if(Number.isNaN(t))return r.FilterCondition.invoke("isNaN",i);var a=this.getFilterValueForNumberOrChar(e.type,t);return i.eq(a)}getFilterValueForNumberOrChar(e,t){var{dh:r}=this;return j.isCharType(e)?r.FilterValue.ofString(String.fromCharCode(t)):r.FilterValue.ofNumber(t)}onContextMenu(e,t,r){var{irisGrid:i}=this,{y:a,column:o,row:s,columnHeaderDepth:l}=e,u=i.getModelColumn(o),d=i.getModelRow(s),{model:h,canCopy:v}=i.props,{columns:m}=h,{metrics:g,isFilterBarShown:f,quickFilters:p,advancedFilters:C,selectedRanges:b}=i.state;_(g);var{columnHeaderHeight:w,gridY:S,columnHeaderMaxDepth:T}=g,y=[];if(u!=null&&d!=null){var O=h.valueForCell(u,d),R=h.textForCell(u,d),E=m[u],{onContextMenu:P}=i.props;E!=null&&y.push(...P({model:h,value:O,valueText:R,column:E,rowIndex:s,columnIndex:o,modelRow:d,modelColumn:u}))}return u!=null&&h.isFilterable(u)&&y.push({title:"Clear Column Filter",group:G.GROUP_FILTER,order:30,action:()=>{this.irisGrid.removeColumnFilter(u)},disabled:!(p.has(u)||C.has(u))}),(f?a<=S:a<=w*T&&l===0)?u!=null&&y.push(...this.getHeaderActions(u,e)):(u!=null&&d!=null&&y.push(...this.getCellActions(u,t,e)),v&&b.length>0&&(y.push({title:"Copy Selection",shortcut:Th.COPY,group:G.GROUP_COPY,order:30,action:()=>{i.copyRanges(b)}}),y.push({title:"Copy Selection w/ Headers",group:G.GROUP_COPY,order:40,action:()=>{i.copyRanges(b,!0)}})),Le(h)&&h.isEditable&&b.length>0&&y.push({title:"Delete Selected Rows",group:G.GROUP_EDIT,order:50,action:()=>{this.irisGrid.deleteRanges(b)}})),y.length===0?!1:(_(i.gridWrapper),de.triggerMenu(i.gridWrapper,r.clientX,r.clientY,y),!0)}dateFormatActions(e){for(var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,a=i.getColumnFormat(e.type,e.name),o=tf.getOptions(i,a),s=[],l=function(){var{description:h,format:v,group:m,isSelected:g,title:f}=o[u];s.push({title:f,description:h,icon:g?xi:void 0,group:m,order:u,action:()=>{var p=r.getColumnIndexByName(e.name);_(p),t.irisGrid.handleFormatSelection(p,v)}})},u=0;u<o.length;u+=1)l();return s}numberFormatActions(e){var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,{dh:a}=this,o=i.getColumnFormat(e.type,e.name),s,l=r.getColumnIndexByName(e.name);if(j.isDecimalType(e.type))s=af.getOptions(a,o,v=>{_(l),this.debouncedUpdateCustomFormat(l,v)});else if(j.isIntegerType(e.type))s=lf.getOptions(a,o,v=>{_(l),this.debouncedUpdateCustomFormat(l,v)});else return js.error("Invalid column type in numberFormatActions"),null;for(var u=[],d=function(){var{format:m,isSelected:g}=s[h];u.push(Ls(Ls({},s[h]),{},{icon:g?xi:void 0,order:h,action:()=>{l===void 0&&m&&m.type===wn.TYPE_CONTEXT_CUSTOM||(_(l),t.irisGrid.handleFormatSelection(l,m))}}))},h=0;h<s.length;h+=1)d();return u}stringFilterActions(e,t,r,i,a){var{dh:o}=this,s=o.FilterValue.ofString(r),l=i;l||(l={filter:null,text:null});var{filter:u,text:d}=l,h=[],{model:v}=this.irisGrid.props,m=v.getColumnIndexByName(e.name),g=j.escapeQuickTextFilter(t);return _(m),h.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?G.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:de.groups.high}),h.push({title:"text is exactly",description:"Show only rows where ".concat(e.name," is ").concat(r," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(m,G.getQuickFilterCondition(u,e.filter().eq(s),a),G.getQuickFilterText(d,"".concat(g),a))},order:10,group:de.groups.low}),h.push({title:"text is not exactly",description:"Show only rows where ".concat(e.name," is not ").concat(t," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(m,G.getQuickFilterCondition(u,e.filter().notEq(s),a),G.getQuickFilterText(d,"!=".concat(g),a))},order:20,group:de.groups.low}),h.push({title:"text contains",description:"Show only rows where ".concat(e.name," contains ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,G.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().contains(s)),a),G.getQuickFilterText(d,"~".concat(g),a))},order:30,group:de.groups.low}),h.push({title:"text does not contain",description:"Show only rows where ".concat(e.name," does not contain ").concat(r),action:()=>{this.irisGrid.setQuickFilter(m,G.getQuickFilterCondition(u,e.filter().isNull().or(e.filter().contains(s).not()),a),G.getQuickFilterText(d,"!~".concat(g),a))},order:40,group:de.groups.low}),h.push({title:"text starts with",description:"Show only rows where ".concat(e.name," starts with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,G.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().invoke("startsWith",s)),a),G.getQuickFilterText(d,"".concat(g,"*"),a))},order:50,group:de.groups.low}),h.push({title:"text ends with",description:"Show only rows where ".concat(e.name," ends with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(m,G.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().invoke("endsWith",s)),a),G.getQuickFilterText(d,"*".concat(g),a))},order:60,group:de.groups.low}),h}numberFilterActions(e,t,r,i,a){var o=this.getFilterValueForNumberOrChar(e.type,r),s=null,l=null;i&&(s=i.filter,l=i.text);var u=[],d=r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&!Number.isNaN(r),{model:h}=this.irisGrid.props,v=h.getColumnIndexByName(e.name);return _(v),u.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[a?G.getOperatorAsText(a):""," ",'"',t,'"']}),order:1,group:de.groups.high}),u.push({title:"is equal to",description:"Show only rows where ".concat(e.name," is ").concat(t),action:()=>{var m=this.getNumberValueEqualsFilter(e,r);this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(s,m,a),G.getQuickFilterText(l,"=".concat(t),a))},order:10,group:de.groups.low}),u.push({title:"is not equal to",description:"Show only rows where ".concat(e.name," is not ").concat(t),action:()=>{var m=this.getNumberValueEqualsFilter(e,r).not();this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(s,m,a),G.getQuickFilterText(l,"!=".concat(t),a))},order:20,group:de.groups.low}),d&&!j.isCharType(e.type)&&(u.push({title:"greater than",description:"Show only rows where ".concat(e.name," is greater than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(s,e.filter().greaterThan(o),a),G.getQuickFilterText(l,">".concat(t),a))},order:30,group:de.groups.low}),u.push({title:"greater than or equal to",description:"Show only rows where ".concat(e.name," is greater than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(s,e.filter().greaterThanOrEqualTo(o),a),G.getQuickFilterText(l,">=".concat(t),a))},order:40,group:de.groups.low}),u.push({title:"less than",description:"Show only rows where ".concat(e.name," is less than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(s,e.filter().lessThan(o),a),G.getQuickFilterText(l,"<".concat(t),a))},order:50,group:de.groups.low}),u.push({title:"less than or equal to",description:"Show only rows where ".concat(e.name," is less than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(s,e.filter().lessThanOrEqualTo(o),a),G.getQuickFilterText(l,"<=".concat(t),a))},order:60,group:de.groups.low})),u}booleanFilterActions(e,t,r,i){var a=[],{model:o}=this.irisGrid.props,{filter:s,text:l}=r||{},u=o.getColumnIndexByName(e.name);return _(u),a.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[i?G.getOperatorAsText(i):""," ",'"',t??"null",'"']}),order:1,group:de.groups.high}),a.push({title:"true",description:"Show only rows where ".concat(e.name," is true"),action:()=>{this.irisGrid.setQuickFilter(u,G.getQuickFilterCondition(s,e.filter().isTrue(),i),G.getQuickFilterText(l,"true",i))},order:10,group:de.groups.low}),a.push({title:"false",description:"Show only rows where ".concat(e.name," is false"),action:()=>{this.irisGrid.setQuickFilter(u,G.getQuickFilterCondition(s,e.filter().isFalse(),i),G.getQuickFilterText(l,"false",i))},order:20,group:de.groups.low}),a.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(u,G.getQuickFilterCondition(s,e.filter().isNull(),i),G.getQuickFilterText(l,"null",i))},order:30,group:de.groups.low}),a.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(u,G.getQuickFilterCondition(s,e.filter().isNull().not(),i),G.getQuickFilterText(l,"!null",i))},order:40,group:de.groups.low}),a}dateFilterActions(e,t,r,i,a,o){var{dh:s}=this,l=s.FilterValue.ofNumber(i),u=null,d=null;a&&(u=a.filter,d=a.text);var{model:h}=this.irisGrid.props,v=h.getColumnIndexByName(e.name);_(v);var m=[];return m.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[o?G.getOperatorAsText(o):""," ",'"',r,'"']}),order:1,group:de.groups.high}),m.push({title:"date is",description:"Show only rows where ".concat(e.name," is ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(u,e.filter().eq(l),o),G.getQuickFilterText(d,"=".concat(t),o))},order:10,group:de.groups.low}),m.push({title:"date is not",description:"Show only rows where ".concat(e.name," is not ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(u,e.filter().notEq(l),o),G.getQuickFilterText(d,"!=".concat(t),o))},order:20,group:de.groups.low}),m.push({title:"date is before",description:"Show only rows where ".concat(e.name," is before ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(u,e.filter().lessThan(l),o),G.getQuickFilterText(d,"<".concat(t),o))},order:30,group:de.groups.low}),m.push({title:"date is before or equal",description:"Show only rows where ".concat(e.name," is before or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(u,e.filter().lessThanOrEqualTo(l),o),G.getQuickFilterText(d,"<=".concat(t),o))},order:40,group:de.groups.low}),m.push({title:"date is after",description:"Show only rows where ".concat(e.name," is greater than ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(u,e.filter().greaterThan(l),o),G.getQuickFilterText(d,">".concat(t),o))},order:50,group:de.groups.low}),m.push({title:"date is after or equal",description:"Show only rows where ".concat(e.name," is after or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,G.getQuickFilterCondition(u,e.filter().greaterThanOrEqualTo(l),o),G.getQuickFilterText(d,">=".concat(t),o))},order:60,group:de.groups.low}),m}emptyStringFilterActions(e,t,r){var{dh:i}=this,a=i.FilterValue.ofString(""),o=t;o||(o={filter:null,text:null});var{filter:s,text:l}=o,u=[],{model:d}=this.irisGrid.props,h=d.getColumnIndexByName(e.name);return _(h),u.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?G.getOperatorAsText(r):""," ",c.jsx("i",{className:"text-muted",children:"empty"})]}),order:1,group:de.groups.high}),u.push({title:"is empty string",description:"Show only rows where ".concat(e.name," is empty"),action:()=>{this.irisGrid.setQuickFilter(h,G.getQuickFilterCondition(s,e.filter().eq(a),r),G.getQuickFilterText(l,"=",r))},order:10,group:de.groups.low}),u.push({title:"is not empty string",description:"Show only rows where ".concat(e.name," is not empty"),action:()=>{this.irisGrid.setQuickFilter(h,G.getQuickFilterCondition(s,e.filter().notEq(a),r),G.getQuickFilterText(l,"!=",r))},order:20,group:de.groups.low}),u}nullFilterActions(e,t,r){var i=null,a=null;t&&(i=t.filter,a=t.text);var o=[],{model:s}=this.irisGrid.props,l=s.getColumnIndexByName(e.name);return _(l),o.push({menuElement:c.jsxs("div",{className:"iris-grid-filter-menu-item-value",children:[r?G.getOperatorAsText(r):""," ",c.jsx("i",{className:"text-muted",children:"null"})]}),order:1,group:de.groups.high}),o.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(l,G.getQuickFilterCondition(i,e.filter().isNull(),r),G.getQuickFilterText(a,"null",r))},order:10,group:de.groups.low}),o.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(l,G.getQuickFilterCondition(i,e.filter().isNull().not(),r),G.getQuickFilterText(a,"!null",r))},order:20,group:de.groups.low}),o}sortByActions(e,t,r){var i=this.irisGrid.getTheme(),{contextMenuSortIconColor:a}=i,o=[{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.ascending)},icon:this.checkColumnSort(r,G.COLUMN_SORT_DIRECTION.ascending)?cr:void 0,iconColor:a},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.descending)},icon:this.checkColumnSort(r,G.COLUMN_SORT_DIRECTION.descending)?cr:void 0,iconColor:a},{title:"Remove Sort",order:50,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.none,!1,!0)},disabled:!r}];return j.isNumberType(e.type)&&(o.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.ascending,!0)},icon:this.checkColumnSort(r,G.COLUMN_SORT_DIRECTION.ascending,!0)?cr:void 0,iconColor:a}),o.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.descending,!0)},icon:this.checkColumnSort(r,G.COLUMN_SORT_DIRECTION.descending,!0)?cr:void 0,iconColor:a})),o}additionalSortActions(e,t){var r=this.irisGrid.getTheme(),{contextMenuSortIconColor:i}=r,a=[{title:"Add Sort By",menuElement:c.jsxs("div",{className:"btn-context-menu menu-title",children:[c.jsx("span",{className:"icon",children:c.jsx(le,{icon:cr,style:{color:i??void 0}})}),c.jsx("span",{className:"title",children:"Add Additional Sort"}),c.jsx("span",{className:"shortcut",children:yn.isMacPlatform()?"⌘Click":"Ctrl+Click"})]}),order:1},{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.ascending,!1,!0)}},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.descending,!1,!0)}}];return j.isNumberType(e.type)&&(a.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.ascending,!0,!0)}}),a.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,G.COLUMN_SORT_DIRECTION.descending,!0,!0)}})),a}checkColumnSort(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return e?e.direction===t&&e.isAbs===r:!1}}Nt(G,"GROUP_EDIT",de.groups.high+10);Nt(G,"GROUP_HIDE_COLUMNS",de.groups.high+25);Nt(G,"GROUP_FILTER",de.groups.high+50);Nt(G,"GROUP_EXPAND_COLLAPSE",de.groups.high+55);Nt(G,"GROUP_GOTO",de.groups.high+60);Nt(G,"GROUP_SORT",de.groups.high+75);Nt(G,"GROUP_COPY",de.groups.high+100);Nt(G,"GROUP_FORMAT",de.groups.high+150);Nt(G,"COLUMN_SORT_DIRECTION",{ascending:"ASC",descending:"DESC",none:null});const cf=G;function vf(n,e,t){return e=mf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mf(n){var e=gf(n,"string");return typeof e=="symbol"?e:String(e)}function gf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ff extends ze{constructor(e){super(),vf(this,"irisGrid",void 0),this.irisGrid=e}onDoubleClick(e){var{column:t,row:r}=e;return r==null||t==null?!1:(this.irisGrid.selectData(t,r),!0)}}const pf=ff;function Cf(n,e,t){return e=bf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bf(n){var e=wf(n,"string");return typeof e=="symbol"?e:String(e)}function wf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Sf extends ze{constructor(e){super(),Cf(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{y:t,column:r,row:i}=e;if(r!==null&&i===null){var{isFilterBarShown:a,metrics:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=o,l=this.irisGrid.getTheme();if(a&&l.columnHeaderHeight!=null&&l.filterBarHeight!=null&&t>l.columnHeaderHeight*s&&t<=l.columnHeaderHeight*s+l.filterBarHeight)return this.irisGrid.focusFilterBar(r),!0}return!1}onMove(e){var{y:t,column:r}=e,{isFilterBarShown:i,hoverAdvancedFilter:a,metrics:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:s}=o,l=this.irisGrid.getTheme(),u=null;return i&&l.columnHeaderHeight!=null&&l.filterBarHeight!=null&&r!==null&&t>=l.columnHeaderHeight*s&&t<=l.columnHeaderHeight*s+l.filterBarHeight&&(u=r),u!==a&&this.irisGrid.setState({hoverAdvancedFilter:u}),!1}onLeave(e){var{column:t}=e,{hoverAdvancedFilter:r}=this.irisGrid.state;return r!==null&&t!==r&&this.irisGrid.setState({hoverAdvancedFilter:null}),!1}}const yf=Sf;function Tf(n,e,t){return e=Ef(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ef(n){var e=Of(n,"string");return typeof e=="symbol"?e:String(e)}function Of(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Rf extends ze{constructor(e){super(750),Tf(this,"irisGrid",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({expandCellTooltipProps:null})}setCursor(e,t){return za.isInTreeBox(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:o,grid:s,state:l,props:u}=this.irisGrid;if(!s)return null;var{metrics:d}=l,{model:h}=u,{canvasContext:v}=s,m=s.getTheme(),g={context:v,mouseX:t,mouseY:r,metrics:d,model:h,theme:m},f=Fe(h)?h.depthForRow(a):null,{left:p,top:C,width:b,height:w}=o.getExpandButtonPosition(g,f);return p==null||b==null||C==null||w==null?null:{left:p,top:C,width:b,height:w}}onMove(e,t){if(za.isInTreeBox(e,t)){var{expandCellTooltipProps:r}=this.irisGrid.state,{model:i}=this.irisGrid.props,a=this.getButtonPosition(e),{row:o}=e;_(o);var s=Fe(i)&&i.isRowExpanded(o);nt(r,a)||this.irisGrid.setState({expandCellTooltipProps:a,expandTooltipDisplayValue:s?"collapse":"expand"})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const Df=Rf;function _s(n,e,t){return e=Nf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nf(n){var e=Pf(n,"string");return typeof e=="symbol"?e:String(e)}function Pf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ff extends ze{constructor(e){super(),_s(this,"irisGrid",void 0),_s(this,"column",void 0),this.column=null,this.irisGrid=e}getColumnFromGridPoint(e){var{column:t,row:r,columnHeaderDepth:i}=e;return t!==null&&r===null&&i===0?t:null}onDown(e){return this.column=this.getColumnFromGridPoint(e),!1}onClick(e,t,r){var i=this.getColumnFromGridPoint(e);if(i!=null&&i===this.column){var a=yn.isModifierKeyDown(r);return this.irisGrid.toggleSort(i,a),!0}return!1}}const If=Ff;class Af extends ze{constructor(e){super(),this.irisGrid=e}onWheel(e,t,r){var{irisGrid:i}=this,{model:a}=i.props,{metrics:o,pendingRowCount:s}=i.state;_(o);var{bottom:l,rowCount:u,rowHeight:d}=o,{deltaY:h}=K.getScrollDelta(r);return Le(a)&&a.isEditable&&l>=u-1&&h>0&&i.setState({pendingRowCount:s+Math.ceil(h/d)}),!1}}const xf=Af;function Hs(n,e,t){return e=Mf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mf(n){var e=Lf(n,"string");return typeof e=="symbol"?e:String(e)}function Lf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class jf extends ze{constructor(e){super(),Hs(this,"irisGrid",void 0),Hs(this,"currentLinkBox",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({linkHoverTooltipProps:null})}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:s,metrics:l,props:u}=t,{model:d}=u;if(r==null||i==null||l==null)return this.currentLinkBox=void 0,!1;var{modelRows:h,modelColumns:v}=l,m=M(h,i),g=M(v,r),f=d.renderTypeForCell(g,m),p=s.getCellRenderer(f);if(!Cu(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:b,x2:w,y2:S}=this.currentLinkBox;if(a>=C&&a<=w&&o>=b&&o<=S)return!0}for(var T=t.updateRenderState(),y=p.getTokenBoxesForVisibleCell(r,i,T),O=0;O<y.length;O+=1)if(ji(y[O].token)){var R=K.translateTokenBox(y[O],l),{x1:E,x2:P,y1:x,y2:I}=R;if(a>=E&&a<=P&&o>=x&&o<=I)return this.currentLinkBox=R,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}onMove(e,t){var r=this.isHoveringLink(e,t);if(r&&this.currentLinkBox!=null&&ji(this.currentLinkBox.token)){var{linkHoverTooltipProps:i}=this.irisGrid.state;if(this.currentLinkBox==null)return!1;var{x1:a,y1:o,x2:s,y2:l}=this.currentLinkBox,{href:u}=this.currentLinkBox.token,d=s-a,h=l-o,v={left:a,top:o+1,width:d,height:h};nt(i,v)||this.irisGrid.setState({linkHoverTooltipProps:v,linkHoverDisplayValue:u})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const kf=jf;var _f=3e3;function Hf(n){var{children:e=null,onEntering:t,onEntered:r,onExiting:i,onExited:a}=n,[o,s]=D.useState(!1),l=D.useRef(),u=co(e),d=D.useCallback(()=>{s(!0),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{s(!1)},_f)},[s,l]);return D.useEffect(()=>{u!==e&&e!=null&&d()},[e,u,s,d]),D.useEffect(()=>()=>l.current?clearTimeout(l.current):void 0,[]),c.jsx(Ji,{className:"toast-bottom-bar",isShown:o,onEntering:t,onEntered:r,onExiting:i,onExited:a,children:e})}class Bf extends nn{getGridY(e){var t=super.getGridY(e),{isFilterBarShown:r,theme:i,advancedFilters:a,quickFilters:o,sorts:s,reverseType:l}=e;return r?t+=i.filterBarHeight:(o!=null&&o.size>0||a!=null&&a.size>0)&&(t+=i.filterBarCollapsedHeight),l!==j.REVERSE_TYPE.NONE&&s!=null&&s.length>0&&(t+=i.reverseHeaderBarHeight),t}getUserColumnWidths(){return this.userColumnWidths}}var Vf=1,Ou=Ne.memo(n=>{var{model:e,modelColumns:t,top:r,bottom:i,left:a,right:o,filter:s,formatter:l,reverseType:u=j.REVERSE_TYPE.NONE,sorts:d,customColumns:h,movedColumns:v,hiddenColumns:m,alwaysFetchColumns:g,rollupConfig:f=null,totalsConfig:p=null,selectDistinctColumns:C=Se,pendingRowCount:b=0,pendingDataMap:w=fr,frozenColumns:S,formatColumns:T,columnHeaderGroups:y}=n,O=D.useMemo(()=>Re.getModelViewportColumns(t,a,o,v,m,g,Vf),[t,a,o,v,m,g]);return D.useEffect(function(){e.filter=s},[e,s]),D.useEffect(function(){var E=[...d];u!==j.REVERSE_TYPE.NONE&&E.push(e.dh.Table.reverse()),e.sort=E},[e,d,u]),D.useEffect(function(){e.formatter=l},[e,l]),D.useEffect(function(){e.isCustomColumnsAvailable&&(e.customColumns=h)},[e,h]),D.useEffect(function(){e.isFormatColumnsAvailable&&(e.formatColumns=T)},[e,T]),D.useEffect(function(){e.setViewport(r,i,O)},[e,r,i,O]),D.useEffect(function(){e.isRollupAvailable&&(e.rollupConfig=f)},[e,e.isRollupAvailable,f]),D.useEffect(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=C)},[e,C]),D.useEffect(function(){e.isTotalsAvailable&&(e.totalsConfig=p)},[e,e.isTotalsAvailable,p]),D.useEffect(function(){e.pendingRowCount=b},[e,b]),D.useEffect(function(){e.pendingDataMap=w},[e,w]),D.useEffect(function(){S&&e.updateFrozenColumns(S)},[e,S]),D.useEffect(function(){e.columnHeaderGroups=y},[e,y]),null});Ou.displayName="IrisGridModelUpdater";const Uf=Ou;var qa=16,$f=new Map([["sortUp",Ad],["sortDown",xd],["caretDown",no],["caretRight",Md],["cellOverflow",Ld]]),Gf=er(n=>{var e=$f.get(n);if(e===void 0)throw new Error("Icon is undefined");var t=Array.isArray(e.icon[4])?e.icon[4][0]:e.icon[4],r=new Path2D(t),i=new Path2D,a={a:qa/e.icon[0],d:qa/e.icon[1]};return i.addPath(r,a),i},{max:1e3});function Yn(n){return Gf(n)}class Wf{static drawTreeMarker(e,t,r,i,a,o,s){e.save();var{x1:l,y1:u}=a,d=Yn(s?"caretDown":"caretRight"),h=r+l-2,v=i+u+2.5;e.fillStyle=o,e.textAlign="center",e.translate(h,v),e.fill(d),e.restore()}}const Ru=Wf;class zf extends pu{drawCellContent(e,t,r,i){var a,{metrics:o,model:s}=t,{modelColumns:l,modelRows:u}=o,d=M(u,i),h=l.get(r);if(h!==void 0){var v=s.valueForCell(h,d);if(j.isTextType((a=s.columns[h])===null||a===void 0?void 0:a.type)&&(v===null||v==="")){var m=e.font;e.font="italic ".concat(m),super.drawCellContent(e,t,r,i),e.font=m;return}super.drawCellContent(e,t,r,i)}}getTextRenderMetrics(e,t,r){var i=K.getTextRenderMetrics(e,t,r),{mouseX:a,mouseY:o,metrics:s,theme:l}=e;if(a==null||o==null)return i;var{column:u,row:d}=K.getGridPointFromXY(a,o,s);if(t===u&&r===d){var{left:h}=this.getCellOverflowButtonPosition(a,o,s,l);this.shouldRenderOverflowButton(e)&&h!=null&&(i.width=h-s.gridX-i.x)}return i}getCellOverflowButtonPosition(e,t,r,i){var a={left:null,top:null,width:null,height:null};if(e==null||t==null||r==null)return a;var{rowHeight:o,columnWidth:s,left:l,top:u}=K.getCellInfoFromXY(e,t,r);if(l==null||s==null||u==null)return a;var{width:d,verticalBarWidth:h}=r,{cellHorizontalPadding:v}=i,m=qa+2*v,g=o,f=Math.min(r.gridX+l+s,d-h),p=f-m,C=r.gridY+u;return{left:p,top:C,width:m,height:g}}shouldRenderOverflowButton(e){var t,r,{context:i,mouseX:a,mouseY:o,metrics:s,model:l,theme:u}=e;if(a==null||o==null)return!1;var{row:d,column:h,modelRow:v,modelColumn:m}=K.getCellInfoFromXY(a,o,s);if(d==null||h==null||v==null||m==null||!j.isStringType(l.columns[m].type))return!1;var g=(t=l.textForCell(m,v))!==null&&t!==void 0?t:"",{width:f}=K.getTextRenderMetrics(e,h,d),p=(r=s.fontWidths.get(u.font))!==null&&r!==void 0?r:tn;i.save(),i.font=u.font;var C=this.getCachedTruncatedString(i,g,f,p,l.truncationCharForCell(m,v));return i.restore(),g!==""&&C!==g}drawTreeMarker(e,t,r,i,a,o,s){Ru.drawTreeMarker(e,t,r,i,a,o,s)}}const Kf=zf;class Yf extends fu{drawTreeMarker(e,t,r,i,a,o,s){Ru.drawTreeMarker(e,t,r,i,a,o,s)}}const Xf=Yf;function Bs(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 Vs(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Bs(Object(t),!0).forEach(function(r){Qa(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Bs(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qa(n,e,t){return e=qf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qf(n){var e=Qf(n,"string");return typeof e=="symbol"?e:String(e)}function Qf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ia=Object.freeze({SORT_UP:"sortUp",SORT_DOWN:"sortDown",CARET_DOWN:"caretDown",CARET_RIGHT:"caretRight",CELL_OVERFLOW:"cellOverflow"}),Us=10;class Bi extends Zt{constructor(){super(...arguments),Qa(this,"textCellRenderer",new Kf),Qa(this,"dataBarCellRenderer",new Xf)}static isFilterValid(e,t){var r=e==null||e.filter!=null,i=t==null||t.filter!=null;return r&&i}getSortIcon(e){return e?e.direction===j.sortDirection.ascending?Yn(Ia.SORT_UP):e.direction===j.sortDirection.descending?Yn(Ia.SORT_DOWN):null:null}drawCanvas(e){super.drawCanvas(e),this.drawScrim(e)}drawGrid(e,t){super.drawGrid(e,t),this.drawCellOverflowButton(t)}drawGridLines(e,t){super.drawGridLines(e,t),this.drawGroupedColumnLine(e,t),this.drawPendingRowLine(e,t)}drawCellContent(e,t,r,i){var{metrics:a,model:o}=t,{modelColumns:s,modelRows:l}=a,u=s.get(r),d=M(l,i);if(u!==void 0){var h=o.renderTypeForCell(u,d),v=this.getCellRenderer(h);v.drawCellContent(e,t,r,i)}}getCellOverflowButtonPosition(e){var{mouseX:t,mouseY:r,metrics:i,theme:a}=e;return this.textCellRenderer.getCellOverflowButtonPosition(t,r,i,a)}shouldRenderOverflowButton(e){return this.textCellRenderer.shouldRenderOverflowButton(e)}drawCellOverflowButton(e){var{context:t,mouseX:r,mouseY:i,theme:a}=e;if(!(r==null||i==null)&&this.shouldRenderOverflowButton(e)){var{left:o,top:s,width:l,height:u}=this.getCellOverflowButtonPosition(e),{cellHorizontalPadding:d,overflowButtonColor:h,overflowButtonHoverColor:v}=a;t.save(),v!=null&&o!=null&&l!=null&&s!=null&&u!=null&&r>=o&&r<=o+l&&i>=s&&i<=s+u?t.fillStyle=v:h!=null&&(t.fillStyle=h);var m=Yn(Ia.CELL_OVERFLOW);o!=null&&s!=null&&t.translate(o+d,s+2),t.fill(m),t.restore()}}drawGroupedColumnLine(e,t){var{metrics:r,model:i,theme:a}=t,{groupedColumns:o}=i,{maxY:s,allColumnWidths:l,allColumnXs:u}=r;if(!(o.length===0||a.groupedColumnDividerColor==null)){var d=o.length-1,h=u.get(d),v=l.get(d);if(!(h==null||v==null)){var m=h+v+.5;e.strokeStyle=a.groupedColumnDividerColor,e.lineWidth=1,e.beginPath(),e.moveTo(m,0),e.lineTo(m,s),e.stroke()}}}drawPendingRowLine(e,t){var{metrics:r,model:i,theme:a}=t,{allRowYs:o,maxX:s}=r,{pendingRowCount:l}=i;if(!(l<=0)){var u=i.rowCount-i.pendingRowCount-i.floatingBottomRowCount,d=o.get(u);d!=null&&(d-=.5,e.save(),e.setLineDash([4,2]),e.strokeStyle=a.pendingTextColor,e.lineWidth=1,e.beginPath(),e.moveTo(0,d),e.lineTo(s,d),e.stroke(),e.restore())}}drawMouseColumnHover(e,t){var{theme:r,metrics:i,hoverSelectColumn:a}=t;if(!(a==null||r.linkerColumnHoverBackgroundColor==null)){var{allColumnWidths:o,allColumnXs:s,maxY:l}=i,u=M(s,a),d=M(o,a);e.fillStyle=r.linkerColumnHoverBackgroundColor,e.fillRect(u,0,d,l)}}drawMouseRowHover(e,t){var{isSelectingColumn:r}=t;r||super.drawMouseRowHover(e,t)}drawScrim(e){var{context:t,loadingScrimProgress:r,metrics:i,theme:a}=e;if(r!=null){var{width:o,height:s,gridY:l}=i,{scrimBlurSize:u,scrimColor:d}=a;t.save(),t.globalCompositeOperation="color",t.filter="blur(".concat(u,"px)"),d!=null&&(t.fillStyle=d),t.beginPath(),t.rect(0,l,o,s-l),t.clip(),t.fillRect(-u,-u+l,u*2+o,(u*2+(s-l))*r),t.globalCompositeOperation="overlay",t.filter="blur(".concat(u,"px) opacity(15%)"),t.fillRect(-u,-u+l,u*2+o,(u*2+(s-l))*r),t.restore()}}drawColumnHeaders(e,t){super.drawColumnHeaders(e,t);var{theme:r,metrics:i,model:a,reverseType:o}=t,{columnHeaderHeight:s}=i;if(this.drawFilterHeaders(e,t),!(s<=0)){var{sort:l}=a;if(l.length===1){var u=o!==j.REVERSE_TYPE.NONE,d;u?d=r.headerReverseBarColor:d=r.headerSortBarColor,this.drawHeaderBar(e,t,d,u?r.reverseHeaderBarHeight:r.sortHeaderBarHeight)}else l.length>1&&(o!==j.REVERSE_TYPE.NONE&&this.drawHeaderBar(e,t,r.headerReverseBarColor,r.reverseHeaderBarHeight,!1),this.drawHeaderBar(e,t,r.headerSortBarColor,r.sortHeaderBarHeight))}}drawHeaderBar(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{theme:o,metrics:s,model:l}=t,{columnHeaderHeight:u,width:d}=s,h=0;a||(h=i),e.fillStyle=o.headerBarCasingColor,e.fillRect(0,l.columnHeaderMaxDepth*u-i-2+h,d,i+2),e.fillStyle=r,e.fillRect(0,l.columnHeaderMaxDepth*u-i-1+h,d,i)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:s,isMenuShown:l}=t,{columnHeaderMaxDepth:u}=s,{width:d}=o,h=Vs(Vs({},i),{},{maxX:a===u-1&&i.maxX===d?d-(l?0:30):i.maxX});super.drawColumnHeadersAtDepth(e,t,r,h,a)}drawColumnHeaderAtIndex(e,t,r,i){var a,o;super.drawColumnHeaderAtIndex(e,t,r,i);var{metrics:s,model:l,theme:u}=t,{modelColumns:d,allColumnWidths:h,allColumnXs:v,gridX:m,columnHeaderHeight:g,fontWidths:f}=s,{headerHorizontalPadding:p}=u,C=M(h,r,0),b=M(v,r)+m,w=d.get(r);if(w!=null){var S=(a=l.columns[w])===null||a===void 0?void 0:a.name;if(S!=null){var T=j.getSortForColumn(l.sort,S);if(T){var y=this.getSortIcon(T);if(y){var O=l.textForColumnHeader(w);if(O!==void 0){var R=(o=f.get(e.font))!==null&&o!==void 0?o:tn;_(R);var E=O.length*R,P=m+b+E+p,{maxX:x}=i;x-=p;var I=m+b+C-p-1,N=P>x?P+1:Math.min(x,I),L=T.direction===j.sortDirection.ascending?-6:-12,F=g*.5+L;e.save(),e.beginPath(),e.rect(b,0,C,g),e.clip(),e.fillStyle=u.headerSortBarColor,e.translate(N,F),e.fill(y),e.restore()}}}}}}drawFilterHeaders(e,t){var{isFilterBarShown:r,quickFilters:i,advancedFilters:a}=t;r?this.drawExpandedFilterHeaders(e,t):(i!=null&&i.size>0||a!=null&&a.size>0)&&this.drawCollapsedFilterHeaders(e,t)}drawExpandedFilterHeaders(e,t){var{metrics:r,model:i,theme:a,quickFilters:o,advancedFilters:s}=t,{filterBarHeight:l}=a;if(!(l<=0)){var{gridX:u,gridY:d,maxX:h,modelColumns:v,visibleColumns:m,allColumnWidths:g,allColumnXs:f}=r,p=d-l;e.save(),e.font=a.font,e.textAlign="left",o!=null&&o.size>0||s!=null&&s.size>0?e.fillStyle=a.filterBarExpandedActiveBackgroundColor:e.fillStyle=a.filterBarExpandedBackgroundColor,e.fillRect(u,p,h,l-1),e.fillStyle=a.headerBarCasingColor,e.fillRect(u,p+l-1,h,1);var C=p;e.strokeStyle=a.filterBarSeparatorColor,e.beginPath();for(var b=0;b<m.length;b+=1){var w=m[b],S=M(v,w),T=M(f,w),y=M(g,w);if(i.isFilterable(S)&&y>0){var O=u+(T??0);e.rect(O+.5,C+.5,y,l-2)}}e.stroke();for(var R=0;R<m.length;R+=1){var E=m[R],P=M(g,E),x=M(f,E),I=x+u;this.drawExpandedFilterHeader(e,t,E,I,P)}e.restore()}}drawExpandedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:s,quickFilters:l,advancedFilters:u}=t,{modelColumns:d,gridY:h}=o,{filterBarHeight:v,filterBarExpandedActiveCellBackgroundColor:m,filterBarErrorColor:g,filterBarHorizontalPadding:f,headerColor:p}=s,C=h-v,b=d.get(r);if(b!==void 0){var w=l.get(b),S=u.get(b);if(!(w==null&&S==null)){var T=null;if(w!=null){var{text:y}=w;if(T=y,T||(T=j.getFilterText(w.filter)),T!=null){var{fontWidths:O}=o,R=O.get(e.font);(R==null||R===0)&&(R=e.measureText("8").width,R||(R=10));var E=(a-f*2)/R;E<=0?T="":T.length>E&&(T="".concat(T.substring(0,E-1),"…"))}}e.save();var P=Bi.isFilterValid(S,w);if(P&&m!=null)e.fillStyle=m,e.fillRect(i+1,C+1,a-1,v-3);else if(g!=null){e.fillStyle=g,e.lineWidth=2,e.strokeStyle=g;var x=i+2,I=C+2,N=a-3,L=v-5;e.strokeRect(x,I,N,L)}if(T!=null&&T!==""){var F=i+f,k=C+v*.5+1;e.fillStyle=p,e.fillText(T,F,k)}e.restore()}}}}drawCollapsedFilterHeaders(e,t){var{metrics:r,theme:i}=t,{headerSeparatorColor:a,filterBarCollapsedHeight:o}=i;if(!(o<=0)){var{gridX:s,gridY:l,maxX:u,visibleColumns:d,allColumnWidths:h,allColumnXs:v}=r,m=l-o;e.save(),e.fillStyle=a,e.fillRect(s,m,u,o);for(var g=0;g<d.length;g+=1){var f=d[g],p=h.get(f),C=v.get(f);if(C!=null&&p!=null){var b=C+s;this.drawCollapsedFilterHeader(e,t,f,b,p)}}e.restore()}}drawCollapsedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:s,quickFilters:l,advancedFilters:u}=t,{modelColumns:d,gridY:h}=o,v=d.get(r);if(v!==void 0){var m=l.get(v),g=u.get(v),{filterBarCollapsedHeight:f,filterBarActiveColor:p,filterBarActiveBackgroundColor:C,filterBarErrorColor:b}=s;e.save();var w=Bi.isFilterValid(g,m);C!=null&&m==null&&g==null?e.fillStyle=C:p!=null&&w?e.fillStyle=p:b!=null&&(e.fillStyle=b);var S=i+1,T=h-f,y=a-1,O=f-1;e.fillRect(S,T,y,O),e.restore()}}}drawRowFooters(e,t){var{metrics:r,model:i,mouseX:a,mouseY:o,theme:s}=t,{gridY:l,gridX:u,maxX:d,modelRows:h,floatingTopHeight:v,floatingBottomHeight:m,floatingRows:g,rowFooterWidth:f,height:p,horizontalBarHeight:C,verticalBarWidth:b,allRowHeights:w,allRowYs:S,width:T}=r;if(!(f<=0||g.length===0)){var{cellHorizontalPadding:y,floatingGridRowColor:O,floatingRowBackgroundColors:R,headerColor:E,rowHoverBackgroundColor:P}=s;e.translate(u,l),e.beginPath();var x=Math.min(d,T-f-b-u);e.fillStyle=R,v>0&&e.rect(x,0,f,v),m>0&&e.rect(x,p-l-C-m,f,m),e.fill();var I=a!=null&&o!=null&&a>=u&&a<=d+f?K.getRowAtY(o,r):null;if(P!=null&&I!==null&&g.includes(I)){e.fillStyle=P;var N=S.get(I),L=w.get(I);_(N),_(L),e.fillRect(x,N,f,L)}if(e.beginPath(),O!=null&&(e.strokeStyle=O),v>0&&(e.moveTo(x+.5,.5),e.lineTo(x+.5,v-.5)),m>0){var F=p-l-C-m;e.moveTo(x-.5,F+.5),e.lineTo(x-.5,F+m-.5)}e.stroke(),e.fillStyle=E,e.textAlign="left";for(var k=x+y,H=0;H<g.length;H+=1){var W=g[H],z=w.get(W),Y=S.get(W),$=h.get(W);if(Y!=null&&z!=null&&$!=null){var A=Y+z*.5;e.fillText(i.textForRowFooter($),k,A)}}e.translate(-u,-l)}}getExpandButtonPosition(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o}=e,s={left:null,top:null,width:null,height:null};if(r==null||i==null||t==null||!a)return s;var{rowHeight:l,left:u,top:d}=K.getCellInfoFromXY(r,i,a);_(u),_(l),_(d);var{cellHorizontalPadding:h}=o,v=Us+2*h,m=Math.max(u+Us*t,a.gridX),g=a.gridY+d;return{left:m,top:g,width:v,height:l}}}const Zf="12px Fira Sans, sans-serif",Jf="var(--dh-color-white)",ep="var(--dh-color-black)",$s={"grid-bg":"var(--dh-color-grid-bg)",font:Zf,white:Jf,black:ep,"header-bg":"var(--dh-color-grid-header-bg)","header-color":"var(--dh-color-grid-header-text)","header-height":"30px","header-separator-color":"var(--dh-color-grid-header-separator)","header-separator-hover-color":"var(--dh-color-grid-header-separator-hover)","header-hidden-separator-hover-color":"var(--dh-color-grid-header-separator-hidden-hover)","header-sort-bar-color":"var(--dh-color-grid-header-sort-bar)","header-reverse-bar-color":"var(--dh-color-grid-header-reverse-bar)","header-bar-casing-color":"var(--dh-color-grid-header-bar-casing)","header-font":"600 12px Fira Sans, sans-serif","row-height":"19px","row-background-colors":"var(--dh-color-grid-row-0-bg) var(--dh-color-grid-row-1-bg)","selection-color":"var(--dh-color-grid-selection)","selection-outline-color":"var(--dh-color-grid-selection-outline)","selection-outline-casing-color":"var(--dh-color-grid-selection-outline-casing)","row-hover-bg":"var(--dh-color-grid-row-hover-bg)","selected-row-hover-bg":"var(--dh-color-grid-row-hover-bg-selected)","scroll-bar-active-selection-tick-color":"var(--dh-color-grid-scroll-bar-active-selection-tick)","scroll-bar-bg":"var(--dh-color-grid-scroll-bar-bg)","scroll-bar-hover-bg":"var(--dh-color-grid-scroll-bar-hover-bg)","scroll-bar-casing-color":"var(--dh-color-grid-scroll-bar-casing)","scroll-bar-corner-color":"var(--dh-color-grid-scroll-bar-corner)","scroll-bar-color":"var(--dh-color-grid-scroll-bar)","scroll-bar-hover-color":"var(--dh-color-grid-scroll-bar-hover)","scroll-bar-active-color":"var(--dh-color-grid-scroll-bar-active)","text-color":"var(--dh-color-grid-text)","hyperlink-color":"var(--dh-color-grid-text-hyperlink)","positive-number-color":"var(--dh-color-grid-number-positive)","negative-number-color":"var(--dh-color-grid-number-negative)","zero-number-color":"var(--dh-color-grid-number-zero)","date-color":"var(--dh-color-grid-date)","pending-text-color":"var(--dh-color-grid-text-pending)","error-text-color":"var(--dh-color-grid-text-error)","null-string-color":"var(--dh-color-grid-string-null)","filter-bar-active-bg":"var(--dh-color-grid-filter-bar-active-bg)","filter-bar-active-color":"var(--dh-color-grid-filter-bar-active)","filter-bar-expanded-bg":"var(--dh-color-grid-filter-bar-expanded-bg)","filter-bar-expanded-active-bg":"var(--dh-color-grid-filter-bar-expanded-active-bg)","filter-bar-expanded-active-cell-bg":"var(--dh-color-grid-filter-bar-expanded-active-cell-bg)","filter-bar-separator-color":"var(--dh-color-grid-filter-bar-separator)","filter-bar-error-color":"var(--dh-color-grid-filter-bar-error)","filter-icon-color":"var(--dh-color-grid-filter-icon)","scrim-color":"var(--dh-color-grid-scrim)","context-menu-sort-icon-color":"var(--dh-color-grid-context-menu-sort-icon)","context-menu-reverse-icon-color":"var(--dh-color-grid-context-menu-reverse-icon)","linker-column-hover-bg":"var(--dh-color-grid-column-linker-hover-bg)","tree-line-color":"var(--dh-color-grid-tree-line)","tree-marker-color":"var(--dh-color-grid-tree-marker)","tree-marker-hover-color":"var(--dh-color-grid-tree-marker-hover)","grouped-column-divider-color":"var(--dh-color-grid-column-grouped-divider)","floating-grid-row-color":"var(--dh-color-grid-floating-row)","floating-row-background-colors":"var(--dh-color-grid-floating-row-bg)","floating-divider-inner-color":"var(--dh-color-grid-floating-divider-inner)","floating-divider-outer-color":"var(--dh-color-grid-floating-divider-outer)","overflow-button-color":"var(--dh-color-grid-overflow-button)","overflow-button-hover-color":"var(--dh-color-grid-overflow-button-hover)","zero-line-color":"var(--dh-color-grid-data-bar-zero-line)","positive-bar-color":"var(--dh-color-grid-data-bar-positive)","negative-bar-color":"var(--dh-color-grid-data-bar-negative)","marker-bar-color":"var(--dh-color-grid-data-bar-marker)"};var Gs=ye.module("IrisGridTheme");function tp(){var n=jd($s);return Gs.debug2("Iris grid theme:",$s),Gs.debug2("Iris grid theme derived:",n),Object.freeze({backgroundColor:n["grid-bg"],white:n.white,black:n.black,font:n.font,headerBackgroundColor:n["header-bg"],headerColor:n["header-color"],headerSeparatorColor:n["header-separator-color"],headerSeparatorHoverColor:n["header-separator-hover-color"],headerHiddenSeparatorHoverColor:n["header-hidden-separator-hover-color"],headerSortBarColor:n["header-sort-bar-color"],headerReverseBarColor:n["header-reverse-bar-color"],headerBarCasingColor:n["header-bar-casing-color"],headerFont:n["header-font"],rowBackgroundColors:n["row-background-colors"],rowHoverBackgroundColor:n["row-hover-bg"],selectionColor:n["selection-color"],selectionOutlineColor:n["selection-outline-color"],selectionOutlineCasingColor:n["selection-outline-casing-color"],selectedRowHoverBackgroundColor:n["selected-row-hover-bg"],scrollBarBackgroundColor:n["scroll-bar-bg"],scrollBarHoverBackgroundColor:n["scroll-bar-hover-bg"],scrollBarCasingColor:n["scroll-bar-casing-color"],scrollBarCornerColor:n["scroll-bar-corner-color"],scrollBarColor:n["scroll-bar-color"],scrollBarHoverColor:n["scroll-bar-hover-color"],scrollBarActiveColor:n["scroll-bar-active-color"],scrollBarSelectionTickColor:n["selected-row-hover-bg"],scrollBarActiveSelectionTickColor:n["scroll-bar-active-selection-tick-color"],textColor:n["text-color"],hyperlinkColor:n["hyperlink-color"],positiveNumberColor:n["positive-number-color"],negativeNumberColor:n["negative-number-color"],zeroNumberColor:n["zero-number-color"],dateColor:n["date-color"],pendingTextColor:n["pending-text-color"],errorTextColor:n["error-text-color"],nullStringColor:n["null-string-color"],filterBarActiveBackgroundColor:n["filter-bar-active-bg"],filterBarExpandedBackgroundColor:n["filter-bar-expanded-bg"],filterBarExpandedActiveBackgroundColor:n["filter-bar-expanded-active-bg"],filterBarExpandedActiveCellBackgroundColor:n["filter-bar-expanded-active-cell-bg"],filterBarSeparatorColor:n["filter-bar-separator-color"],filterBarActiveColor:n["filter-bar-active-color"],filterBarErrorColor:n["filter-bar-error-color"],filterIconColor:n["filter-icon-color"],scrimColor:n["scrim-color"],contextMenuSortIconColor:n["context-menu-sort-icon-color"],contextMenuReverseIconColor:n["context-menu-reverse-icon-color"],allowRowResize:!1,autoSelectRow:!0,gridColumnColor:null,gridRowColor:null,groupedColumnDividerColor:n["grouped-column-divider-color"],columnHoverBackgroundColor:null,headerHorizontalPadding:12,scrollBarSize:13,scrollBarHoverSize:16,minScrollHandleSize:24,rowHeight:parseInt(n["row-height"],10)||19,columnWidth:100,rowHeaderWidth:0,rowFooterWidth:60,columnHeaderHeight:parseInt(n["header-height"],10)||30,filterBarHeight:30,filterBarCollapsedHeight:5,sortHeaderBarHeight:2,reverseHeaderBarHeight:4,filterBarHorizontalPadding:4,scrimBlurSize:25,minScrimTransitionTime:150,maxScrimTransitionTime:350,scrollSnapToRow:!0,linkerColumnHoverBackgroundColor:n["linker-column-hover-bg"],treeLineColor:n["tree-line-color"],treeMarkerColor:n["tree-marker-color"],treeMarkerHoverColor:n["tree-marker-hover-color"],floatingGridColumnColor:null,floatingGridRowColor:n["floating-grid-row-color"],floatingRowBackgroundColors:n["floating-row-background-colors"],floatingDividerInnerColor:n["floating-divider-inner-color"],floatingDividerOuterColor:n["floating-divider-outer-color"],overflowButtonColor:n["overflow-button-color"],overflowButtonHoverColor:n["overflow-button-hover-color"],zeroLineColor:n["zero-line-color"],positiveBarColor:n["positive-bar-color"],negativeBarColor:n["negative-bar-color"],markerBarColor:n["marker-bar-color"]})}function Du(n,e,t){return e=rp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rp(n){var e=np(n,"string");return typeof e=="symbol"?e:String(e)}function np(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Aa=ye.module("ColumnStatistics"),ip={SIZE:"Number of Rows"};class Qn extends D.Component{static getStatsLabel(e){var t;return(t=ip[e])!==null&&t!==void 0?t:e.split(" ").map(r=>r[0].toUpperCase()+r.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),Du(this,"cancelablePromise",void 0),this.handleError=this.handleError.bind(this),this.handleGenerateStatistics=this.handleGenerateStatistics.bind(this),this.handleStatistics=this.handleStatistics.bind(this),this.cancelablePromise=null,this.state={error:null,loading:!1,statistics:null,numRows:0}}componentDidMount(){this.maybeGenerateStatistics()}componentWillUnmount(){this.cancelablePromise&&this.cancelablePromise.cancel()}maybeGenerateStatistics(){var{model:e}=this.props,t=e.rowCount-e.pendingRowCount-e.floatingBottomRowCount-e.floatingTopRowCount;this.setState({numRows:t}),e.isColumnStatisticsAvailable?t<Qn.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics():this.setState({loading:!1})}handleGenerateStatistics(){this.setState({loading:!0});var{column:e,model:t}=this.props;this.cancelablePromise=Tt.makeCancelable(t.columnStatistics(e)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){Aa.debug("Received statistics",e);var{model:t,onStatistics:r}=this.props,i=[];e.statisticsMap.forEach((a,o)=>{i.push({operation:Qn.getStatsLabel(o),value:a,type:e.getType(o)})}),e.uniqueValues.forEach((a,o)=>{i.push({operation:o,className:"column-statistics-unique-value",value:a,type:"long"})}),this.setState({loading:!1,statistics:i,numRows:t.rowCount-t.pendingRowCount-t.floatingBottomRowCount-t.floatingTopRowCount}),r()}handleError(e){if(e!=null&&Tt.isCanceled(e)){Aa.debug("Called handleError on a cancelled promise result");return}Aa.error("Error generating statistics",e),this.setState({error:e,loading:!1,statistics:null})}render(){var{column:e,model:t}=this.props,{error:r,loading:i,statistics:a,numRows:o}=this.state,s=!i&&r==null&&a==null&&t.isColumnStatisticsAvailable,l=[],u=e.type.substring(e.type.lastIndexOf(".")+1),d=e.description===null?null:e.description;if(a!=null)for(var h=0;h<a.length;h+=1){var{operation:v,className:m,value:g,type:f}=a[h],p=f?t.displayString(g,f):t.displayString(g,e.type,e.name),C=c.jsxs(Ne.Fragment,{children:[c.jsx("div",{className:Q("column-statistic-operation",m),children:v}),c.jsx("div",{className:"column-statistic-value",children:p})]},v);l.push(C)}var b=Fe(t)&&t.hasExpandableRows?"Expanded Rows":"Number of Rows",w=t.displayString(o,"long"),S=t.getColumnIndexByName(e.name);return c.jsxs("div",{className:"column-statistics",children:[c.jsxs("div",{className:"column-statistics-title",children:[e.name,c.jsxs("span",{className:"column-statistics-type",children:[" (",u,")"]}),c.jsx(nu,{className:"column-statistics-copy",tooltip:"Copy column name",copy:e.name})]}),d!=null&&c.jsx("div",{className:"column-statistics-description",children:d}),S!=null&&!t.isColumnSortable(S)&&c.jsxs("div",{className:"column-statistics-status",children:[c.jsx(le,{icon:kd,className:"mr-1"}),"Not sortable"]}),S!=null&&!t.isColumnMovable(S)&&c.jsxs("div",{className:"column-statistics-status",children:[c.jsx(le,{icon:t.isColumnFrozen(S)?_d:Hd,className:"mr-1"}),t.isColumnFrozen(S)?"Frozen":"Not movable"]}),c.jsxs("div",{className:"column-statistics-grid",children:[a==null&&c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"column-statistic-operation",children:b}),c.jsx("div",{className:"column-statistic-value",children:w})]}),l]}),s&&c.jsx(Z,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,children:"Generate Stats"}),r!=null&&c.jsx("div",{className:"error-message",children:"".concat(r)}),a&&!i&&c.jsx(Z,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:c.jsx(le,{icon:Bd,className:"mr-1"}),children:"Refresh"}),i&&c.jsxs("div",{className:"column-statistics-loading",children:[c.jsx(rn,{className:"loading-spinner-vertical-align"}),"Calculating Stats..."]})]})}}Du(Qn,"AUTO_GENERATE_LIMIT",1e5);const ap=Qn;function Ws(n,e,t){return e=op(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function op(n){var e=sp(n,"string");return typeof e=="symbol"?e:String(e)}function sp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fi=ye.module("AdvancedFilterCreatorFilterItem");class No extends D.PureComponent{static getLabelForFilter(e,t){try{if(j.isNumberType(e)||j.isCharType(e))return ac(t);if(j.isTextType(e))return ic(t);if(j.isDateType(e))return oc(t);if(j.isBooleanType(e))return sc(t);throw new Error("Unrecognized column type: ".concat(e))}catch(r){return fi.warn(r),""}}constructor(e){super(e),Ws(this,"typeDropdown",void 0),Ws(this,"getCachedIsValid",Be((a,o,s,l,u)=>{try{return!s||u.makeAdvancedValueFilter(a,o,s,l)!=null}catch{return!1}})),this.handleDelete=this.handleDelete.bind(this),this.handleTypeChange=this.handleTypeChange.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.typeDropdown=null;var{value:t="",filterTypes:r,selectedType:i=r[0]}=e;this.state={selectedType:i,value:t}}componentDidMount(){var e;(e=this.typeDropdown)===null||e===void 0||e.focus()}componentDidUpdate(e){var{value:t,selectedType:r}=this.props;r!==void 0&&e.selectedType!==r&&this.setState({selectedType:r}),t!==void 0&&e.value!==t&&this.setState({value:t})}handleTypeChange(e){var t=e.target.value;fi.debug2("typeChange",t),this.setState({selectedType:t});var{onChange:r}=this.props,{value:i}=this.state;i!=null&&i.length>0&&r(t,i)}handleValueChange(e){fi.debug2("valueChange");var{value:t}=e.target;this.setState({value:t});var{onChange:r}=this.props,{selectedType:i}=this.state;i!=null&&r(i,t)}handleDelete(){fi.debug("delete");var{onDelete:e}=this.props;e()}render(){for(var{column:e,filterTypes:t,formatter:r,tableUtils:i}=this.props,{selectedType:a,value:o}=this.state,s=!j.isBooleanType(e.type),l=[],u=this.getCachedIsValid(e,a,o,r.timeZone,i),d=0;d<t.length;d+=1){var h=t[d],v=No.getLabelForFilter(e.type,h),m=c.jsx("option",{value:h,children:v},h);l.push(m)}return c.jsx("div",{className:"advanced-filter-creator-filter-item",children:c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"form-group col",children:c.jsx("select",{className:"form-control custom-select",value:a,onChange:this.handleTypeChange,ref:g=>{this.typeDropdown=g},children:l})}),s&&c.jsx("div",{className:"form-group col",children:c.jsx("div",{className:"input-group",children:c.jsx("input",{type:"text",className:Q("form-control",{error:!u}),placeholder:"Enter value",value:o,onChange:this.handleValueChange})})}),c.jsx("div",{className:"form-group col-1 px-0",children:c.jsx(Z,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:Vr,tooltip:"Remove Filter"})})]})})}}const lp=No;function Za(n,e,t){return e=up(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function up(n){var e=dp(n,"string");return typeof e=="symbol"?e:String(e)}function dp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var zs=ye.module("AdvancedFilterCreatorSelectValueList");class Zn extends D.PureComponent{static indexOf(e,t){for(var r=0;r<t.length;r+=1){var i=t[r];if(i===e||i!=null&&i.valueOf!=null&&e!=null&&e.valueOf!=null&&i.valueOf()===e.valueOf())return r}return-1}constructor(e){super(e),Za(this,"dh",void 0),Za(this,"list",void 0),this.handleSelect=this.handleSelect.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this);var{selectedValues:t,dh:r}=this.props;this.dh=r,this.list=null,this.state={itemCount:0,items:[],offset:0,selectedValues:t,isLoading:!0}}componentDidMount(){var{table:e}=this.props;e&&this.startListening(e)}componentDidUpdate(e){var{filters:t,invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&(e.table&&this.stopListening(e.table),a&&this.startListening(a),this.resetViewport()),e.invertSelection!==r&&this.setState({selectedValues:[]},this.handleSelectionUpdate),e.selectedValues!==i&&this.setState({selectedValues:i},this.handleSelectionUpdate),e.filters!==t&&(a?.applyFilter(t),this.resetViewport())}componentWillUnmount(){var{table:e}=this.props;e&&this.stopListening(e)}handleSelect(e,t){var{invertSelection:r}=this.props,{selectedValues:i}=this.state;i=[...i];var a=Zn.indexOf(t,i);a>=0?i.splice(a,1):i.push(t);var o=a<0;r&&(o=!o);var{offset:s}=this.state,{items:l}=this.state;l=[...l];var u=e-s;u>=0&&u<l.length&&(l[u].isSelected=o),this.setState({items:l,selectedValues:i});var{onChange:d}=this.props;d(i,r)}handleViewportChange(e,t){this.updateViewport(e,t)}handleSelectionUpdate(){this.updateItemSelection()}handleTableUpdate(e){var{table:t,formatter:r}=this.props;if(t){for(var i=e.detail,{offset:a}=i,o=[],s=t.columns[0],l=0;l<i.rows.length;l+=1){var u=i.rows[l],d=u.get(s),h=void 0;d==null?h=c.jsx("i",{className:"text-muted",children:"null"}):d===""?h=c.jsx("i",{className:"text-muted",children:"empty"}):h=r.getFormattedString(d,s.type,s.name);var v=this.isValueSelected(d);o.push({displayValue:h,value:d,isSelected:v})}zs.debug2("Received table update:",a,o.length);var m=t.size;this.setState({itemCount:m,items:o,offset:a,isLoading:!1})}}isValueSelected(e){var{invertSelection:t}=this.props,{selectedValues:r}=this.state,i=Zn.indexOf(e,r);return t?i<0:i>=0}startListening(e){e.addEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}stopListening(e){e.removeEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}resetViewport(){this.list&&this.list.topRow!=null&&this.list.bottomRow!=null&&this.updateViewport(this.list.topRow,this.list.bottomRow,!0)}updateItemSelection(){var{items:e}=this.state;e=[...e];for(var t=0;t<e.length;t+=1){var r=e[t],{value:i}=r;r.isSelected=this.isValueSelected(i)}this.setState({items:e})}updateViewport(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{table:i}=this.props;if(i!=null){r&&this.setState({isLoading:!0});var a=t-e+1,o=Math.max(0,e-a*3),s=Math.max(o,t+a*3);zs.debug2("Setting viewport",o,",",s),i.setViewport(o,s)}}render(){var{offset:e,isLoading:t,items:r,itemCount:i}=this.state;return c.jsxs("div",{className:"select-value-list-wrapper",children:[c.jsx(nc,{itemCount:i,items:r,offset:e,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:a=>{this.list=a}}),c.jsx(sr,{in:t,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"loading-list",children:c.jsx(rn,{className:"loading-spinner-large"})})})]})}}Za(Zn,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});const hp=Zn;function Xn(n,e,t){return e=cp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cp(n){var e=vp(n,"string");return typeof e=="symbol"?e:String(e)}function vp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ei extends D.PureComponent{constructor(e){super(e),Xn(this,"searchTablePromise",void 0),Xn(this,"tableUtils",void 0),Xn(this,"updateFilterTimer",void 0),this.handleSelectAllClick=this.handleSelectAllClick.bind(this),this.handleClearAllClick=this.handleClearAllClick.bind(this),this.handleListChange=this.handleListChange.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUpdateFilterTimeout=this.handleUpdateFilterTimeout.bind(this);var{dh:t,invertSelection:r,selectedValues:i}=e;this.tableUtils=new j(t),this.state={filters:[],invertSelection:r,selectedValues:i,searchText:""}}componentDidMount(){this.initSearchTable()}componentDidUpdate(e,t){var{invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&this.initSearchTable(),e.invertSelection!==r&&this.setState({invertSelection:r}),e.selectedValues!==i&&this.setState({selectedValues:i});var{table:o,searchText:s}=this.state;o!==t.table&&(t.table!=null&&t.table.close(),o!=null&&this.startUpdateFilterTimer()),s!==t.searchText&&this.startUpdateFilterTimer()}componentWillUnmount(){var{table:e}=this.state;e?.close(),this.searchTablePromise=void 0,this.stopUpdateFilterTimer()}getColumnName(){var{table:e}=this.props;return e!=null?e.columns[0].name:""}getDisplayedValuesCount(){var{invertSelection:e,selectedValues:t,table:r}=this.state;return r==null?null:e?r.totalSize-t.length:t.length}getDisplayedValueText(){var e=this.getDisplayedValuesCount(),{table:t}=this.state,{formatter:r}=this.props;if(e!=null&&t!=null){var i=r.getFormattedString(e,"long"),a=r.getFormattedString(t.totalSize,"long"),o="";return e<1e6&&(o="Displaying "),"".concat(o).concat(i," of ").concat(a)}return null}initSearchTable(){var{table:e}=this.props;if(e!=null){var t=e.copy();this.searchTablePromise=t,this.searchTablePromise.then(r=>{this.searchTablePromise===t?(this.setState({table:r}),this.searchTablePromise=void 0):r.close()})}}handleListChange(e,t){this.setState({selectedValues:e,invertSelection:t});var{onChange:r}=this.props;r(e,t)}handleSearchChange(e){var t=e.target.value;this.setState({searchText:t})}handleSelectAllClick(){this.resetSelection(!0)}handleClearAllClick(){this.resetSelection(!1)}handleUpdateFilterTimeout(){this.updateFilterTimer=void 0,this.updateTableFilter()}resetSelection(e){var t=[];this.setState({invertSelection:e,selectedValues:t});var{onChange:r}=this.props;r(t,e)}startUpdateFilterTimer(){this.stopUpdateFilterTimer(),this.updateFilterTimer=setTimeout(this.handleUpdateFilterTimeout,ei.searchDebounceTime)}stopUpdateFilterTimer(){this.updateFilterTimer!=null&&(clearTimeout(this.updateFilterTimer),this.updateFilterTimer=void 0)}updateTableFilter(){var{table:e,searchText:t}=this.state,{timeZone:r}=this.props,{tableUtils:i}=this,a=e?.columns[0],o=[];if(a!=null){var s;if(t.length>0){var l=null;j.isCharType(a.type)?l=i.makeQuickFilter(a,t):j.isTextType(a.type)?l=i.makeQuickFilter(a,"~".concat(t),r):l=i.makeQuickFilter(a,">=".concat(t),r),l!=null?o.push(l):s="Invalid search text"}this.setState({filters:o,error:s})}}render(){var{error:e,filters:t,invertSelection:r,selectedValues:i,searchText:a,table:o}=this.state,{dh:s,formatter:l,showSearch:u}=this.props,d=this.getColumnName(),h=this.getDisplayedValueText(),v=d?"Find ".concat(d,"..."):"";return c.jsxs("div",{className:"advanced-filter-creator-select-value",children:[c.jsxs("div",{className:u?"form-group":"",children:[c.jsx("label",{htmlFor:"advanced-filter-creator-select-value-input",children:"Select Values"}),u&&c.jsx("input",{type:"text",className:Q("form-control",{"is-invalid":e!=null}),id:"advanced-filter-creator-select-value-input",placeholder:v,value:a,onChange:this.handleSearchChange})]}),c.jsx(hp,{dh:s,table:o,filters:t,invertSelection:r,selectedValues:i,formatter:l,onChange:this.handleListChange}),c.jsxs("div",{className:"advanced-filter-creator-select-meta-row",children:[c.jsxs("div",{children:[c.jsx(Z,{kind:"ghost",onClick:this.handleSelectAllClick,children:"Select All"}),c.jsx(Z,{kind:"ghost",onClick:this.handleClearAllClick,children:"Clear"})]}),c.jsx(sr,{in:h!=null,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"row-count-info",children:h})})]})]})}}Xn(ei,"searchDebounceTime",250);Xn(ei,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});const mp=ei;function Cn(n,e,t){return e=gp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gp(n){var e=fp(n,"string");return typeof e=="symbol"?e:String(e)}function fp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var kn=ye.module("AdvancedFilterCreator");class rr extends D.PureComponent{static makeFilterItem(){return{key:lr()}}constructor(e){var t,r;super(e),Cn(this,"focusTrapContainer",void 0),Cn(this,"debounceTimeout",void 0),Cn(this,"valuesTablePromise",void 0),Cn(this,"getFilterTypes",Be(m=>j.getFilterTypes(m))),this.handleAddAnd=this.handleAddAnd.bind(this),this.handleAddOr=this.handleAddOr.bind(this),this.handleChangeFilterOperator=this.handleChangeFilterOperator.bind(this),this.handleDone=this.handleDone.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterDelete=this.handleFilterDelete.bind(this),this.handleSelectValueChange=this.handleSelectValueChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSortDown=this.handleSortDown.bind(this),this.handleSortUp=this.handleSortUp.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleFocusTrapStart=this.handleFocusTrapStart.bind(this),this.handleFocusTrapEnd=this.handleFocusTrapEnd.bind(this),this.handleUpdateTimeout=this.handleUpdateTimeout.bind(this),this.focusTrapContainer=Ne.createRef();var{model:i,column:a,options:o}=e,{filterOperators:s,invertSelection:l,selectedValues:u}=o,d=(t=(r=o.filterItems)===null||r===void 0?void 0:r.map(m=>{var{selectedType:g,value:f}=m;return{selectedType:g,value:f,key:lr()}}))!==null&&t!==void 0?t:[];d.length===0&&d.push(rr.makeFilterItem()),s==null&&(s=[]),l==null&&(l=!0),u==null&&(u=[]);var h=i.getColumnIndexByName(a.name);_(h);var v=i.isColumnSortable(h);this.state={filterItems:d,filterOperators:s,invertSelection:l,selectedValues:u,valuesTableError:null,valuesTable:void 0,isSortable:v}}componentDidMount(){this.initValuesTable()}componentWillUnmount(){this.debounceTimeout!=null&&(clearTimeout(this.debounceTimeout),this.sendUpdate()),this.valuesTablePromise!=null&&this.valuesTablePromise.cancel()}getFilterChangeHandler(e){return this.handleFilterChange.bind(this,e)}getFilterDeleteHandler(e){return this.handleFilterDelete.bind(this,e)}initValuesTable(){var{model:e,column:t}=this.props;if(!e.isValuesTableAvailable){kn.debug("No values table for this model, just ignore");return}this.valuesTablePromise=j.makeCancelableTablePromise(e.valuesTable(t)),this.valuesTablePromise.then(r=>{var i;if(!((i=r.columns[0].isSortable)!==null&&i!==void 0)||i){var a=r.columns[0].sort().asc();r.applySort([a])}this.setState({valuesTable:r})}).catch(r=>{Tt.isCanceled(r)||(kn.error("Unable to open values table",r),this.setState({valuesTableError:r}))})}handleFocusTrapEnd(){var e,t;((e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelector("button,select,input,textarea")).focus()}handleFocusTrapStart(){var e,t,r=(e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelectorAll("button,select,input,textarea");if(r&&r.length>0){var i=r[r.length-1];i.focus()}}handleAddAnd(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(rr.makeFilterItem()),t=t.concat(An.and),this.setState({filterItems:e,filterOperators:t})}handleAddOr(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(rr.makeFilterItem()),t=t.concat(An.or),this.setState({filterItems:e,filterOperators:t})}handleChangeFilterOperator(e,t){var{filterOperators:r}=this.state;r=[...r],Eh(t),r[e]=t,this.setState({filterOperators:r}),this.startUpdateTimer()}handleFilterChange(e,t,r){var{filterItems:i}=this.state;i=[...i];var{key:a}=i[e];i[e]={key:a,selectedType:t,value:r},this.setState({filterItems:i}),this.startUpdateTimer()}handleFilterDelete(e){var{filterItems:t,filterOperators:r}=this.state;t=[...t],r=[...r],e<t.length&&t.splice(e,1),e<r.length?r.splice(e,1):e===r.length&&r.splice(r.length-1,1),t.length===0&&t.push(rr.makeFilterItem()),this.setState({filterItems:t,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){kn.debug("Resetting Advanced Filter"),this.setState({filterItems:[rr.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=yn.isModifierKeyDown(e);this.sortTable(j.sortDirection.descending,t)}handleSortUp(e){var t=yn.isModifierKeyDown(e);this.sortTable(j.sortDirection.ascending,t)}handleSubmit(e){kn.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){kn.debug("Submitting and Closing Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate();var{onDone:t}=this.props;t(),e.preventDefault()}handleUpdateTimeout(){this.debounceTimeout=void 0,this.sendUpdate()}shouldShowAddFilter(){var{filterItems:e}=this.state;if(e.length===0)return!1;var t=e[e.length-1],{selectedType:r,value:i}=t;return r!=null&&r.length>0&&i!=null&&i.length>0}sortTable(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{column:r,onSortChange:i}=this.props,{isSortable:a}=this.state;a&&i(r,e,t)}startUpdateTimer(){this.stopUpdateTimer(),this.debounceTimeout=setTimeout(this.handleUpdateTimeout,rr.debounceFilterUpdate)}stopUpdateTimer(){this.debounceTimeout!==void 0&&(clearTimeout(this.debounceTimeout),this.debounceTimeout=void 0)}sendUpdate(){var{filterItems:e,filterOperators:t,invertSelection:r,selectedValues:i}=this.state,{column:a,onFilterChange:o,model:s,tableUtils:l}=this.props,{formatter:u}=s,d=e.filter(g=>{var{selectedType:f,value:p}=g;return f!=null&&p!=null&&p!==""}),h=t.filter((g,f)=>g!=null&&e[f].selectedType!=null&&e[f].value!=null&&e[f].value!=="").slice(0,d.length-1),v={filterItems:d,filterOperators:h,invertSelection:r,selectedValues:i},m=l.makeAdvancedFilter(a,v,u.timeZone);o(a,m,v)}render(){var e=this,{column:t,model:r,sortDirection:i,formatter:a,tableUtils:o}=this.props,{filterItems:s,filterOperators:l,invertSelection:u,selectedValues:d,valuesTable:h,valuesTableError:v,isSortable:m}=this.state,{dh:g,isValuesTableAvailable:f}=r,p=j.isBooleanType(t.type),C=j.isDateType(t.type),b=this.getFilterTypes(t.type),w=t.type.substring(t.type.lastIndexOf(".")+1),S=[];if(!p&&b.length)for(var T=function(P){var x=s[P],{key:I,selectedType:N,value:L}=x,F=c.jsx(lp,{column:t,filterTypes:b,onChange:e.getFilterChangeHandler(P),onDelete:e.getFilterDeleteHandler(P),selectedType:N,value:L,formatter:a,tableUtils:o},I);if(S.push(F),P<l.length){var k=l[P],H=k===An.and,W=c.jsxs("div",{className:"form-row justify-content-end advanced-filter-creator-filter-operator",children:[c.jsx(Z,{kind:"ghost",className:Q("filter-operator",{active:H}),onClick:()=>e.handleChangeFilterOperator(P,An.and),children:"AND"}),c.jsx(Z,{kind:"ghost",className:Q("filter-operator",{active:!H}),onClick:()=>e.handleChangeFilterOperator(P,An.or),children:"OR"})]},"filterOperator".concat(I));S.push(W)}},y=0;y<s.length;y+=1)T(y);var O=this.shouldShowAddFilter(),R=c.jsxs("div",{className:Q("form-row justify-content-end add-filter-item",{hidden:!O}),children:[c.jsx("span",{className:"text-muted",children:c.jsx(le,{icon:En})}),c.jsx(Z,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!O,tooltip:"Add filter with AND",children:"AND"}),c.jsx(Z,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!O,tooltip:"Add filter with OR",children:"OR"})]},"addFilterItem");return S.push(R),c.jsxs("div",{className:"advanced-filter-creator",role:"presentation",children:[c.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),c.jsxs("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer,children:[c.jsxs("div",{className:"title-bar",children:[c.jsx("h6",{className:"advanced-filter-title",children:"Advanced Filters"}),c.jsxs("div",{className:"advanced-filter-menu-buttons",children:[c.jsx(Z,{kind:"ghost",className:Q("sort-operator",{active:i===j.sortDirection.descending}),onClick:this.handleSortDown,icon:Ko,tooltip:m?"Sort ".concat(t.name," Descending"):"Not sortable",disabled:!m}),c.jsx(Z,{kind:"ghost",className:Q("sort-operator",{active:i===j.sortDirection.ascending}),onClick:this.handleSortUp,icon:c.jsx(le,{icon:Ko,rotation:180}),tooltip:m?"Sort ".concat(t.name," Ascending"):"Not sortable",disabled:!m})]})]}),c.jsx("hr",{}),c.jsxs("div",{className:"advanced-filter-column-name",children:[t.name," ",c.jsxs("span",{className:"column-type",children:["(",w,")"]})]}),S,f&&v==null&&c.jsxs(c.Fragment,{children:[!p&&c.jsx("hr",{}),c.jsx("div",{className:"form-group",children:c.jsx(mp,{dh:g,table:h,onChange:this.handleSelectValueChange,invertSelection:u,selectedValues:d,formatter:a,showSearch:!C,timeZone:a.timeZone})})]}),c.jsxs("div",{className:"form-row justify-content-end",children:[c.jsx(Z,{kind:"secondary",className:"mr-2",onClick:this.handleReset,children:"Reset"}),c.jsx(Z,{kind:"primary",onClick:this.handleDone,children:"Done"})]})]}),c.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd})]})}}Cn(rr,"debounceFilterUpdate",250);Cn(rr,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});const pp=rr;function Ks(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 Ys(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ks(Object(t),!0).forEach(function(r){Cp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ks(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Cp(n,e,t){return e=bp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bp(n){var e=wp(n,"string");return typeof e=="symbol"?e:String(e)}function wp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Xs=ye.module("Aggregations");function Sp(n){var{isRollup:e,settings:t,onChange:r,onEdit:i}=n,{aggregations:a,showOnTop:o}=t,s=D.useMemo(()=>Zm.filter(P=>!a.some(x=>x.operation===P)),[a]),[l,u]=D.useState(s[0]),[d,h]=D.useState([]),v=D.useCallback(P=>{r(Ys(Ys({},t),P))},[r,t]),m=D.useCallback(P=>{v({aggregations:P})},[v]),g=D.useCallback(P=>{v({showOnTop:P})},[v]),f=D.useCallback(()=>{Xs.debug("handleDragStart"),Qt.startDragging()},[]),p=D.useCallback(P=>{var{destination:x,source:I}=P;if(Xs.debug("handleDragEnd",x,I),Qt.stopDragging(),x!==null){var N=x.index;I.index<x.index&&(N+=1);var L=[...a],F=Qt.reorder(L,d,L,N),k=Qt.adjustDestinationIndex(N,d),H=[[k,k+F.length-1]];m(L),h(H)}},[m,a,d,h]),C=D.useCallback(P=>{u(P)},[u]),b=D.useCallback(()=>{m([...a,{operation:l,selected:[],invert:!0}])},[a,l,m]),w=D.useCallback(P=>{m(a.filter((x,I)=>I!==P))},[a,m]),S=D.useCallback(P=>{h(P)},[h]),T=D.useCallback(P=>{var x=a[P];_r.isRollupOperation(x.operation)||i(x)},[a,i]),y=D.useCallback(P=>{g(P.target.value==="true")},[g]);D.useEffect(function(){s.length>0&&!s.includes(l)&&u(s[0])},[s,l]);var O=D.useCallback(P=>{var{item:x,itemIndex:I,isClone:N=!1,selectedCount:L}=P,F=x.operation,k=N?"".concat(L):void 0,H=N?"item-list-item-clone":void 0,W=_r.isRollupOperation(x.operation),z=!N&&!W;return c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:Q("item-list-item-content","draggable-item-list-item-content",H),children:[c.jsxs("span",{className:"title",children:[F,!e&&W&&c.jsxs("span",{className:"small text-warning",children:[c.jsx(le,{icon:Zl})," Requires rollup"]})]}),Xt.renderBadge({text:k}),Xt.renderHandle()]}),!N&&c.jsxs(c.Fragment,{children:[c.jsx(Z,{kind:"ghost",className:"btn-edit",icon:ao,tooltip:"Edit Columns",onClick:()=>i(x),disabled:!z}),c.jsx(Z,{kind:"ghost",className:"btn-delete",icon:Vr,tooltip:"Delete Aggregation",onClick:()=>w(I)})]})]})},[w,i,e]),R=s.length>0,E=a.length>0;return c.jsxs("div",{className:"aggregations",children:[R&&c.jsxs("div",{className:"form-inline",children:[c.jsx(ec,{onChange:C,value:l,children:s.map(P=>c.jsx(Jh,{value:P,children:P},P))}),c.jsxs("button",{type:"button",className:"btn btn-link btn-add",onClick:b,children:[c.jsx(le,{icon:En}),"Add Aggregation"]})]}),R&&E&&c.jsx("hr",{}),E&&c.jsxs(c.Fragment,{children:[!e&&c.jsxs("div",{className:"form-inline",children:[c.jsx("label",{children:"Placement: "}),c.jsxs(fo,{onChange:y,value:"".concat(o),children:[c.jsx(Jr,{value:"true",children:"Top"}),c.jsx(Jr,{value:"false",children:"Bottom"})]})]}),c.jsx(Wi,{onDragStart:f,onDragEnd:p,children:c.jsx(Xt,{className:"selected-aggregations",itemCount:a.length,items:a,renderItem:O,offset:0,onSelectionChange:S,onSelect:T,selectedRanges:d,isMultiSelect:!0})})]})]})}function qs(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Dr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?qs(Object(t),!0).forEach(function(r){yp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):qs(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function yp(n,e,t){return e=Tp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tp(n){var e=Ep(n,"string");return typeof e=="symbol"?e:String(e)}function Ep(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var zt;(function(n){n[n.NONE=0]="NONE",n[n.ASCENDING=1]="ASCENDING",n[n.DESCENDING=2]="DESCENDING"})(zt||(zt={}));var Op=30;function Rp(n){var{aggregation:e,columns:t,onChange:r}=n,[i,a]=D.useState(-1),[o,s]=D.useState(-1),[l,u]=D.useState(zt.NONE),{invert:d,selected:h}=e,v=D.useRef(null),m=D.useCallback(y=>h.includes(y)?!d:d,[d,h]),g=D.useMemo(()=>{var y=Oo(t,e.operation);return l!==zt.NONE&&(y=j.sortColumns(y,l===zt.ASCENDING)),y},[t,e.operation,l]),f=D.useMemo(()=>i>=0?g.slice(i,o+1).map(y=>({value:y.name,displayValue:y.name,isSelected:m(y.name)})):[],[g,m,o,i]),p=D.useCallback(y=>{var{name:O}=g[y],R=h.indexOf(O),E=[...h],P=d;R>=0?E.splice(R,1):(E.push(O),E.length===g.length&&(E=[],P=!d)),r(Dr(Dr({},e),{},{selected:E,invert:P}))},[e,d,g,h,r]),C=D.useCallback(()=>{u(zt.NONE),r(Dr(Dr({},e),{},{selected:[],invert:!0}))},[e,r]),b=D.useCallback((y,O)=>{a(y),s(O)},[a,s]),w=D.useCallback(()=>{h.length===0?r(Dr(Dr({},e),{},{invert:!d})):r(Dr(Dr({},e),{},{selected:[],invert:!0}))},[e,d,r,h]),S=h.length===0?d:null,T=h.length!==0||!d||l!==zt.NONE;return c.jsxs("div",{role:"menu",className:"aggregation-edit",children:[c.jsx("div",{className:"top-menu",children:c.jsxs("div",{className:"form-inline",children:[c.jsx(Cr,{checked:S,onChange:w,children:"Toggle All"}),c.jsx("div",{className:"spacer"}),c.jsx(sr,{in:T,timeout:We.transitionSlowMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0,children:c.jsx(Z,{kind:"ghost",className:"btn-reset",onClick:C,children:"Reset"})}),c.jsx(Z,{kind:"ghost",className:Q({active:l===zt.ASCENDING}),icon:oo,tooltip:"Sort ascending",onClick:()=>u(zt.ASCENDING)}),c.jsx(Z,{kind:"ghost",className:Q({active:l===zt.DESCENDING}),icon:so,tooltip:"Sort descending",onClick:()=>u(zt.DESCENDING)})]})}),c.jsx("div",{className:"aggregation-edit-item-list",children:c.jsx(qn,{itemCount:g.length,items:f,offset:i,renderItem:y=>{var{item:O}=y;return c.jsx(Cr,{checked:m(O.value),children:O.displayValue})},onSelect:p,onViewportChange:b,rowHeight:Op,focusSelector:"input",ref:v})})]})}function Qs(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 Zs(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Qs(Object(t),!0).forEach(function(r){Dp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Qs(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Dp(n,e,t){return e=Np(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Np(n){var e=Pp(n,"string");return typeof e=="symbol"?e:String(e)}function Pp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Fp(n){return c.jsx("svg",Zs(Zs({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#7DA4FF",d:"M8 26h4v15H8zM15 17h4v24h-4zM22 21h4v20h-4zM29 17h4v24h-4zM36 11h4v30h-4z"})]})}))}function Js(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 el(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Js(Object(t),!0).forEach(function(r){Ip(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Js(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ip(n,e,t){return e=Ap(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ap(n){var e=xp(n,"string");return typeof e=="symbol"?e:String(e)}function xp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Mp(n){return c.jsx("svg",el(el({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#7DA4FF",d:"M7 34h4v8H7zM12 31h4v11h-4zM17 27h4v15h-4zM22 22h4v20h-4zM27 27h4v15h-4zM32 29h4v13h-4zM37 31h4v11h-4z"})]})}))}function tl(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 rl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?tl(Object(t),!0).forEach(function(r){Lp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):tl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Lp(n,e,t){return e=jp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jp(n){var e=kp(n,"string");return typeof e=="symbol"?e:String(e)}function kp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 _p(n){return c.jsx("svg",rl(rl({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M4 4h1v40H4zM44 43v1H5v-1z"}),c.jsx("path",{stroke:"#7DA4FF",d:"M7.984 32.44l7.982-11.378 5.273 3.739 9.952-10.838 2.826 1.894 7.45-5.802"}),c.jsx("path",{stroke:"#BECDEF",d:"M8.244 37.926L17 33.496l5 .87 10.637-10.35 10.615-1.381"})]})}))}function nl(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 il(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?nl(Object(t),!0).forEach(function(r){Hp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):nl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Hp(n,e,t){return e=Bp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bp(n){var e=Vp(n,"string");return typeof e=="symbol"?e:String(e)}function Vp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Up(n){return c.jsx("svg",il(il({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{d:"M24 10c7.732 0 14 6.268 14 14s-6.268 14-14 14-14-6.268-14-14h14V10z",fill:"#80A6FF"}),c.jsx("path",{d:"M10 24c0-7.732 6.268-14 14-14v14H10z",fill:"#C1C0C0"})]})}))}function al(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 ol(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?al(Object(t),!0).forEach(function(r){$p(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):al(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $p(n,e,t){return e=Gp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gp(n){var e=Wp(n,"string");return typeof e=="symbol"?e:String(e)}function Wp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 zp(n){return c.jsx("svg",ol(ol({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),{},{children:c.jsxs("g",{fill:"none",fillRule:"evenodd",children:[c.jsx("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),c.jsx("path",{fill:"#939293",d:"M44 34v1H4v-1zM44 25v1H4v-1zM44 16v1H4v-1z"}),c.jsx("circle",{fill:"#7DA4FF",cx:9.5,cy:37.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:16.5,cy:30.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:22.5,cy:36.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:28.5,cy:30.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:15.5,cy:38.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:23.5,cy:25.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:19.5,cy:19.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:29.5,cy:19.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:32.5,cy:26.5,r:1.5}),c.jsx("circle",{fill:"#7DA4FF",cx:36.5,cy:13.5,r:1.5})]})}))}function sl(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 ll(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?sl(Object(t),!0).forEach(function(r){Kp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):sl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Kp(n,e,t){return e=Yp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yp(n){var e=Xp(n,"string");return typeof e=="symbol"?e:String(e)}function Xp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 qp(n){return c.jsxs("svg",ll(ll({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[c.jsx("rect",{width:"48",height:"48",fill:"none"}),c.jsx("rect",{x:"26",y:"10",width:"15",height:"4",fill:"#9FDE70"}),c.jsx("rect",{x:"26",y:"22",width:"15",height:"4",fill:"#9FDE70"}),c.jsx("rect",{x:"26",y:"28",width:"15",height:"4",fill:"#FFD95C"}),c.jsx("rect",{x:"26",y:"34",width:"15",height:"4",fill:"#9FDE70"})]}))}function ul(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 dl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ul(Object(t),!0).forEach(function(r){Qp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ul(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qp(n,e,t){return e=Zp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zp(n){var e=Jp(n,"string");return typeof e=="symbol"?e:String(e)}function Jp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 eC(n){return c.jsxs("svg",dl(dl({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),{},{children:[c.jsx("rect",{width:"48",height:"48",fill:"none"}),c.jsx("rect",{x:"4",y:"16",width:"40",height:"4",fill:"#FFD95C"}),c.jsx("rect",{x:"4",y:"10",width:"40",height:"4",fill:"#78DCE8"}),c.jsx("rect",{x:"4",y:"34",width:"40",height:"4",fill:"#78DCE8"})]}))}var hl=ye.module("ChartBuilder");class Kt extends D.PureComponent{static getMaxSeriesCount(e,t){switch(t){case e.plot.SeriesPlotStyle.PIE:return 1;case e.plot.SeriesPlotStyle.HISTOGRAM:return 0;default:return 100}}static makeSeriesItem(e){return{id:lr.generate(),value:e}}static makeDefaultSeriesItems(e,t,r){var i=Kt.getMaxSeriesCount(e,t);if(i===0||r==null||r.length===0)return[];var a=r.length>1?r[1].name:r[0].name;return[Kt.makeSeriesItem(a)]}static getDefaultXAxis(e,t){return t!=null&&t.length>0?t[0].name:null}constructor(e){super(e),this.handleAddSeries=this.handleAddSeries.bind(this),this.handleLinkStateChange=this.handleLinkStateChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSeriesChange=this.handleSeriesChange.bind(this),this.handleSeriesDeleteClick=this.handleSeriesDeleteClick.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleTypeClick=this.handleTypeClick.bind(this),this.handleXAxisChange=this.handleXAxisChange.bind(this),this.sendChange=this.sendChange.bind(this);var{model:t}=e,{columns:r,dh:i}=t,a=this.getTypes()[0],o=Kt.getDefaultXAxis(a,r),s=Kt.makeDefaultSeriesItems(i,a,r);this.state={type:a,seriesItems:s,xAxis:o,isLinked:!0}}getTypes(){var{model:e}=this.props,{dh:t}=e;return[t.plot.SeriesPlotStyle.LINE,t.plot.SeriesPlotStyle.BAR,t.plot.SeriesPlotStyle.SCATTER,t.plot.SeriesPlotStyle.PIE]}getTypeName(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return"Line";case r.plot.SeriesPlotStyle.BAR:return"Bar";case r.plot.SeriesPlotStyle.SCATTER:return"Scatter";case r.plot.SeriesPlotStyle.PIE:return"Pie";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Histogram";default:return e}}getTypeIcon(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return c.jsx(_p,{});case r.plot.SeriesPlotStyle.BAR:return c.jsx(Fp,{});case r.plot.SeriesPlotStyle.SCATTER:return c.jsx(zp,{});case r.plot.SeriesPlotStyle.PIE:return c.jsx(Up,{});case r.plot.SeriesPlotStyle.HISTOGRAM:return c.jsx(Mp,{});default:return null}}getXAxisLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Labels";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Data";default:return"X-Axis"}}getSeriesLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Values";default:return"Series"}}handleAddSeries(){this.setState(e=>{var{seriesItems:t}=e,r=[...t],{model:i}=this.props,{columns:a}=i;return r.push({id:lr.generate(),value:a[0].name}),{seriesItems:r}},this.sendChange)}handleLinkStateChange(e){this.setState({isLinked:e.target.value==="true"},this.sendChange)}handleReset(){var{model:e}=this.props,{columns:t,dh:r}=e,i=this.getTypes()[0],a=Kt.getDefaultXAxis(i,t),o=Kt.makeDefaultSeriesItems(r,i,t),s=!0;this.setState({type:i,seriesItems:o,xAxis:a,isLinked:s},this.sendChange)}handleSeriesChange(e){var{value:t}=e.target,r=e.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:o}=a;return o=[...o],o[i].value=t,{seriesItems:o}},this.sendChange)}handleSeriesDeleteClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:o}=a,s=[...o];return s.splice(i,1),{seriesItems:s}},this.sendChange)}handleSubmit(e){e.preventDefault();var{onSubmit:t}=this.props,{type:r,seriesItems:i,xAxis:a,isLinked:o}=this.state,s=i.map(l=>l.value);t({type:r,series:s,xAxis:a,isLinked:o})}handleTypeClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10),a=this.getTypes()[i];hl.debug2("handleTypeSelect",a),this.setState(o=>{var{model:s}=this.props,{dh:l}=s,u=Kt.getMaxSeriesCount(l,a),{seriesItems:d}=o;if(d=d.slice(0,u),d.length===0&&u>0){var{columns:h}=s;d=Kt.makeDefaultSeriesItems(l,a,h)}return{type:a,seriesItems:d}},this.sendChange)}handleXAxisChange(e){var t=e.target.value;hl.debug2("x-axis change",t),this.setState({xAxis:t},this.sendChange)}sendChange(){var{onChange:e}=this.props,{isLinked:t,type:r,seriesItems:i,xAxis:a}=this.state,o=i.map(s=>s.value);e({type:r,series:o,xAxis:a,isLinked:t})}render(){var{model:e}=this.props,{columns:t,dh:r}=e,{seriesItems:i,type:a,xAxis:o,isLinked:s}=this.state,l=Kt.getMaxSeriesCount(r,a),u=this.getXAxisLabel(a),d=this.getSeriesLabel(a),h=i.length>0,v=i.length<l;return c.jsx("div",{className:"chart-builder",children:c.jsxs("form",{onSubmit:this.handleSubmit,children:[c.jsxs("div",{className:"form-row",children:[c.jsx("label",{children:"Select Chart Type"}),c.jsx("div",{className:"form-row",children:this.getTypes().map((m,g)=>{var f=m;return c.jsx("div",{className:"col col-chart-type",children:c.jsxs("button",{type:"button",className:Q("btn","btn-icon","btn-chart-type",{active:m===a}),"data-index":g,onClick:this.handleTypeClick,children:[this.getTypeIcon(m),this.getTypeName(m)]})},f)})})]}),c.jsx("hr",{}),c.jsxs("div",{className:"form-row form-inline",children:[c.jsx("label",{className:"col-2 label-left",children:u}),c.jsx("select",{className:"form-control custom-select select-x-axis col",value:o,onChange:this.handleXAxisChange,children:t.map(m=>c.jsx("option",{value:m.name,children:m.name},m.name))})]}),h&&c.jsx("hr",{}),i.map((m,g)=>c.jsxs("div",{className:"form-row form-inline form-series-item","data-testid":"form-series-item-".concat(g),children:[c.jsx("label",{className:"col-2 label-left",children:g===0?d:""}),c.jsx("select",{className:"form-control custom-select select-series col",value:m.value,onChange:this.handleSeriesChange,"data-testid":"select-series-item-".concat(g),"data-index":g,children:t.map(f=>c.jsx("option",{value:f.name,"data-index":g,children:f.name},f.name))}),i.length>1&&c.jsx(Z,{kind:"ghost",className:"btn-delete-series ml-2 px-2","data-index":g,"data-testid":"delete-series-".concat(g),onClick:this.handleSeriesDeleteClick,icon:Vr,tooltip:"Delete"})]},m.id)),v&&c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"col-2"}),c.jsx(Z,{kind:"ghost",className:"btn-add-series mt-1",onClick:this.handleAddSeries,icon:En,children:"Add Series"})]}),c.jsxs("div",{className:"form-row chart-builder-link",children:[c.jsx("label",{className:"col-2 label-right",children:c.jsxs("div",{className:"fa-md fa-layers",children:[c.jsx(le,{mask:Vd,icon:lo,transform:"right-5 down-5"}),c.jsx(le,{icon:s?Ql:Ud,transform:"grow-2 right-8 down-6"})]})}),c.jsxs(fo,{onChange:this.handleLinkStateChange,value:"".concat(s),children:[c.jsx(Jr,{value:"true",children:"Sync State"}),c.jsx(Jr,{value:"false",children:"Freeze State"})]})]}),c.jsxs("div",{className:"form-row",children:[c.jsx("div",{className:"col-2 label-right"}),c.jsx("div",{className:"col chart-builder-link-info",children:s?"Charts with synced state will update to match any filters or user modifications applied to the parent table.":"Freeze State disconnects the chart state from the parent table. New filters or user modifications on the parent table will not be applied."})]}),c.jsxs("div",{className:Q("form-row","justify-content-end","my-3"),children:[c.jsx(Z,{kind:"secondary",className:"btn-reset",onClick:this.handleReset,children:"Reset"}),c.jsx(Z,{kind:"primary",type:"submit",className:"btn-submit",children:"Create"})]})]})})}}const tC=Kt;function cl(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 rC(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?cl(Object(t),!0).forEach(function(r){Vi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):cl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Vi(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=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 Nu extends D.Component{constructor(e){super(e),Vi(this,"editorContainer",void 0),Vi(this,"editor",void 0),this.handleContentChanged=this.handleContentChanged.bind(this),this.handleEditorFocus=this.handleEditorFocus.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleContainerClick=this.handleContainerClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.state={isEditorFocused:!1,isEditorEmpty:!0},this.editorContainer=null}componentDidMount(){this.initEditor()}componentWillUnmount(){this.destroyEditor()}initEditor(){var e,{value:t,editorSettings:r}=this.props,i=rC({copyWithSyntaxHighlighting:"false",fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"groovyDB",lineDecorationsWidth:8,lineNumbers:"off",minimap:{enabled:!1},renderLineHighlight:"none",scrollbar:{arrowSize:0,horizontal:"hidden",horizontalScrollbarSize:0},scrollBeyondLastLine:!1,padding:{top:6,bottom:6},tabCompletion:"off",useTabStops:!0,value:t,wordWrap:"on",automaticLayout:!0},r);if(!this.editorContainer)throw new Error("editorContainer is null");this.editor=Ih.create(this.editorContainer,i),this.editor.layout(),(e=this.editor.getModel())===null||e===void 0||e.updateOptions({tabSize:0}),this.editor.onKeyDown(this.handleKeyDown),this.editor.onDidChangeModelContent(this.handleContentChanged),this.editor.onDidFocusEditorText(this.handleEditorFocus),this.editor.onDidBlurEditorText(this.handleEditorBlur)}destroyEditor(){var e;(e=this.editor)===null||e===void 0||e.dispose(),this.editor=void 0}handleContentChanged(){var e,t,{onContentChanged:r}=this.props,i=(e=this.editor)===null||e===void 0||(t=e.getModel())===null||t===void 0?void 0:t.getValue();i!==void 0&&this.setState({isEditorEmpty:i.length===0}),r(i)}handleEditorFocus(){this.setState({isEditorFocused:!0})}handleEditorBlur(){var e,t,r,i=(e=(t=this.editor)===null||t===void 0||(r=t.getModel())===null||r===void 0?void 0:r.getValue())!==null&&e!==void 0?e:"";this.setState({isEditorEmpty:i.length===0,isEditorFocused:!1})}handleContainerClick(){var e,{isEditorFocused:t}=this.state;t||(e=this.editor)===null||e===void 0||e.focus()}handleKeyDown(e){var{onTab:t,editorIndex:r}=this.props;e.code==="Tab"&&(e.stopPropagation(),e.preventDefault(),t(r,e.shiftKey))}render(){var{className:e,invalid:t,placeholder:r="",value:i}=this.props,{isEditorFocused:a,isEditorEmpty:o}=this.state;return c.jsxs("div",{className:Q("input-editor-wrapper",{focused:a,invalid:t},e),role:"presentation",onClick:this.handleContainerClick,children:[c.jsx("div",{className:"editor-container",ref:s=>{this.editorContainer=s},"data-testid":"custom-column-formula"}),o&&!i&&r.length>0&&c.jsx("div",{className:"editor-placeholder text-muted",children:r})]})}}Vi(Nu,"defaultProps",{value:"",onContentChanged:()=>{},editorSettings:{},editorIndex:0,onTab:()=>{},invalid:!1});function vl(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 pi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?vl(Object(t),!0).forEach(function(r){aC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):vl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function aC(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=sC(n,"string");return typeof e=="symbol"?e:String(e)}function sC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ml=Object.freeze({NAME:"name",FORMULA:"formula"}),lC=()=>{};function uC(n){var{eventKey:e,name:t,inputIndex:r,formula:i,onChange:a,onDeleteColumn:o,onTabInEditor:s,invalid:l,isDuplicate:u}=n,d=t===""||mo.isValidColumnName(t),h=D.useCallback(v=>{v!==void 0&&(v.replace(/(\r\n|\n|\r)/gm,""),a(e,ml.FORMULA,v))},[a,e]);return c.jsx(ro,{draggableId:e,index:r,disableInteractiveElementBlocking:!0,children:(v,m)=>c.jsxs("div",pi(pi({className:Q("draggable-container",{dragging:m.isDragging}),ref:v.innerRef},v.draggableProps),{},{children:[c.jsxs("div",{className:"custom-column-input-container",children:[c.jsxs("div",{className:"pb-3",children:[c.jsxs("div",{className:"d-flex flex-row custom-column-name",children:[c.jsx("input",{className:Q("form-control custom-column-input",{"is-invalid":l||!d||u}),placeholder:"Column Name",value:t,onChange:g=>{a(e,ml.NAME,g.target.value)}}),c.jsx(Z,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{o(e)},icon:Vr,tooltip:"Delete custom column"}),c.jsx(Z,pi(pi({kind:"ghost",className:"btn-drag-handle",onClick:lC},v.dragHandleProps),{},{icon:zi,tooltip:"Drag column to re-order"}))]}),(!d||u)&&c.jsx("p",{className:"validate-label-error text-danger mb-0 mt-2 pl-1",children:d?"Duplicate name":"Invalid name"})]}),c.jsx(Nu,{editorSettings:{language:"deephavenDb"},editorIndex:r,placeholder:"Column Formula",value:i,onContentChanged:h,onTab:s,invalid:l})]}),c.jsx("hr",{})]}))})}function Ja(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)}var xa=[];class Pu extends bm{constructor(e){super(),Ja(this,"dh",void 0),Ja(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 originalColumns(){return this.columns}get layoutHints(){return null}get frontColumns(){return xa}get backColumns(){return xa}get frozenColumns(){return xa}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}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}dataBarOptionsForCell(e,t,r){throw new Error("Method not implemented.")}}Ja(Pu,"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"}));const ve=Pu;function gl(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?gl(Object(t),!0).forEach(function(r){bn(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):gl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function bn(n,e,t){return e=cC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function cC(n){var e=vC(n,"string");return typeof e=="symbol"?e:String(e)}function vC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Lr extends D.Component{static makeCustomColumnInputEventKey(){return lr.generate()}static createCustomColumnInput(){return{eventKey:lr.generate(),name:"",formula:""}}constructor(e){super(e),bn(this,"container",void 0),bn(this,"successButtonTimer",void 0),bn(this,"getInput",Be((t,r)=>t.find(i=>i.eventKey===r))),bn(this,"getInputIndex",Be((t,r)=>t.findIndex(i=>i.eventKey===r))),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleSaveClick=this.handleSaveClick.bind(this),this.handleInputChange=this.handleInputChange.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleCustomColumnUpdated=this.handleCustomColumnUpdated.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.resetRequestFailed=this.resetRequestFailed.bind(this),this.handleEditorTabNavigation=this.handleEditorTabNavigation.bind(this),this.state={inputs:[],isCustomColumnApplying:!1,errorMessage:null,hasRequestFailed:!1,isSuccessShowing:!1},this.container=null,this.successButtonTimer=null}componentDidMount(){var{customColumns:e}=this.props;this.parseCustomColumns(e),this.startListening()}componentWillUnmount(){this.stopListening(),this.successButtonTimer&&clearTimeout(this.successButtonTimer)}resetErrorMessage(){this.setState({errorMessage:null})}startListening(){var{model:e}=this.props;e.addEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.addEventListener(ve.EVENT.UPDATED,this.handleCustomColumnUpdated),e.addEventListener(ve.EVENT.REQUEST_FAILED,this.handleRequestFailed)}stopListening(){var{model:e}=this.props;e.removeEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.removeEventListener(ve.EVENT.UPDATED,this.handleCustomColumnUpdated),e.removeEventListener(ve.EVENT.REQUEST_FAILED,this.handleRequestFailed)}parseCustomColumns(e){if(e.length>0){var t=e.map(r=>{var i=r.split(/=(.+)/,2);return{eventKey:Lr.makeCustomColumnInputEventKey(),name:i[0],formula:i[1]}});this.setState({inputs:t})}else this.setState({inputs:[Lr.createCustomColumnInput()]})}handleAddColumnClick(){var{inputs:e}=this.state,t=[...e];t.push(Lr.createCustomColumnInput()),this.setState({inputs:t})}handleDeleteColumn(e){var{inputs:t}=this.state,r=this.getInputIndex(t,e),i=[...t];i.splice(r,1),i.length===0&&i.push(Lr.createCustomColumnInput()),this.setState({inputs:i})}handleInputChange(e,t,r){var{inputs:i}=this.state,a=this.getInputIndex(i,e),o=this.getInput(i,e),s=Ma({},o);s[t]=r;var l=[...i];l.splice(a,1,s),this.setState({inputs:l})}handleCustomColumnUpdated(){var{isCustomColumnApplying:e}=this.state;e&&this.setState({isCustomColumnApplying:!1,isSuccessShowing:!0},()=>{this.successButtonTimer=setTimeout(()=>this.setState({isSuccessShowing:!1}),Lr.SUCCESS_SHOW_DURATION)})}handleRequestFailed(e){var t=e,{isCustomColumnApplying:r}=this.state;r&&this.setState({isCustomColumnApplying:!1,errorMessage:c.jsxs(c.Fragment,{children:[c.jsxs("p",{children:[c.jsx(le,{icon:Wn})," Failed to apply custom columns."]}),c.jsxs("div",{className:"error-box",children:[t.detail.errorMessage,c.jsx("br",{}),"Table configuration:"," ",JSON.stringify(t.detail.configuration)]})]}),hasRequestFailed:!0})}handleDragEnd(e){if(Qt.stopDragging(),!!e.destination){var{inputs:t}=this.state,r=e.source.index,i=e.destination.index,a=[...t],o=t[r];a.splice(r,1),a.splice(i,0,o),this.setState({inputs:a})}}handleEditorTabNavigation(e,t){var{inputs:r}=this.state;if(t){var i;((i=this.container)===null||i===void 0?void 0:i.querySelectorAll(".btn-drag-handle")[e]).focus();return}if(e===r.length-1){var a,o;(a=this.container)===null||a===void 0||(o=a.querySelector(".btn-add-column"))===null||o===void 0||o.focus()}else{var s,l=e+1;((s=this.container)===null||s===void 0?void 0:s.querySelectorAll(".custom-column-input")[l]).focus()}}handleSaveClick(){var{onSave:e,customColumns:t}=this.props,{inputs:r,isCustomColumnApplying:i}=this.state;if(!i){var a=[];r.forEach(o=>{var{name:s,formula:l}=o;s&&l&&a.push("".concat(s,"=").concat(l))}),this.resetErrorMessage(),this.setState({isCustomColumnApplying:a.length>0||t.length>0}),e(a)}}resetRequestFailed(){this.setState(e=>{var{hasRequestFailed:t}=e;return t?{hasRequestFailed:!1}:null})}renderInputs(){var{inputs:e,hasRequestFailed:t}=this.state,r=new Map;return e.forEach(i=>{var a,{name:o}=i;return r.set(o,((a=r.get(o))!==null&&a!==void 0?a:0)+1)}),e.map((i,a)=>{var o,{eventKey:s,name:l,formula:u}=i,d=((o=r.get(l))!==null&&o!==void 0?o:0)>1;return c.jsx(uC,{inputIndex:a,eventKey:s,name:l,formula:u,onChange:this.handleInputChange,onDeleteColumn:this.handleDeleteColumn,onTabInEditor:this.handleEditorTabNavigation,invalid:t,isDuplicate:d},s)})}renderSaveButton(){var{inputs:e,isCustomColumnApplying:t,isSuccessShowing:r}=this.state,i=e.length>1?"Save Columns":"Save Column",a=e.every(l=>{var{name:u}=l;return u===""||mo.isValidColumnName(u)}),o=e.filter(l=>{var{name:u}=l;return u!==""}).map(l=>{var{name:u}=l;return u}),s=new Set(o).size===o.length;return c.jsxs(Z,{kind:r?"success":"primary",className:Q("btn-apply",{"btn-spinner":t}),disabled:r||t||!a||!s,onClick:this.handleSaveClick,children:[t&&c.jsxs("span",{children:[c.jsx(rn,{className:"loading-spinner-vertical-align"}),c.jsx("span",{className:"btn-normal-content",children:"Applying"})]}),!r&&!t&&i,r&&c.jsxs(c.Fragment,{children:[c.jsx(le,{icon:eu})," Success"]})]})}render(){var{onCancel:e}=this.props,{errorMessage:t}=this.state;return c.jsxs("div",{role:"presentation",className:"custom-column-builder-container",ref:r=>{this.container=r},onClick:this.resetRequestFailed,onFocus:this.resetRequestFailed,children:[c.jsx("hr",{}),c.jsx(Wi,{onDragStart:Qt.startDragging,onDragEnd:this.handleDragEnd,children:c.jsx(Gi,{droppableId:"droppable-custom-columns",children:(r,i)=>c.jsxs("div",Ma(Ma({ref:r.innerRef},r.droppableProps),{},{className:Q("droppable-container",{dragging:i.draggingFromThisWith}),children:[this.renderInputs(),r.placeholder]}))})}),c.jsx("div",{className:"pt-1 px-3",children:c.jsx(Z,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,icon:En,children:"Add Another Column"})}),c.jsxs("div",{className:"custom-column-builder-footer",children:[t&&c.jsx("div",{className:"error-message",children:t}),c.jsxs("div",{className:"d-flex justify-content-end",children:[c.jsx(Z,{kind:"secondary",className:"mr-2",onClick:e,children:"Cancel"}),this.renderSaveButton()]})]})]})}}bn(Lr,"SUCCESS_SHOW_DURATION",750);const mC=Lr;var eo;(function(n){n.ADVANCED_SETTINGS="ADVANCED_SETTINGS",n.AGGREGATIONS="AGGREGATIONS",n.AGGREGATION_EDIT="AGGREGATIONS_EDIT",n.CHART_BUILDER="CHART_BUILDER",n.CUSTOM_COLUMN_BUILDER="CUSTOM_COLUMN_BUILDER",n.QUICK_FILTERS="QUICK_FILTERS",n.ROLLUP_ROWS="ROLLUP_ROWS",n.SEARCH_BAR="SEARCH_BAR",n.SELECT_DISTINCT="SELECT_DISTINCT",n.TABLE_EXPORTER="TABLE_EXPORTER",n.VISIBILITY_ORDERING_BUILDER="VISIBILITY_ORDERING_BUILDER",n.CONDITIONAL_FORMATTING="CONDITIONAL_FORMATTING",n.CONDITIONAL_FORMATTING_EDIT="CONDITIONAL_FORMATTING_EDIT",n.GOTO="GOTO"})(eo||(eo={}));const Ee=eo;function fl(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 pl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fl(Object(t),!0).forEach(function(r){jr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jr(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=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 _n=ye.module("RollupRows"),pC=150,Ci="grouped-rollup-rows",bi="ungrouped-rollup-rows";class bt extends D.Component{static renderColumn(e){var{item:t,isClone:r,selectedCount:i}=e,a=t?.name,o=r!==void 0&&r?"".concat(i):void 0,s=r!==void 0&&r?"item-list-item-clone":"";return Xt.renderTextItem({text:a,badgeText:o,className:s})}static addGroupings(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length;if(t==null||t.length===0)return e;var i=r,a=e.filter((o,s)=>t.includes(o)?(s<i&&(i-=1),!1):!0);return a.splice(i,0,...t),a}static isGroupable(e){return!j.isDecimalType(e.type)}constructor(e){super(e),jr(this,"ungroupedList",void 0),jr(this,"groupedList",void 0),jr(this,"search",Jt(o=>{for(var s=this.getSortedUngroupedColumns(),l=[],u=null,d=0;d<s.length;d+=1){var h=s[d];h.name.toLowerCase().includes(o.toLowerCase())&&(u==null&&(u=d),l.push([d,d]))}_(u),this.setState({ungroupedSelectedRanges:l}),l.length>0&&this.ungroupedList.current&&this.ungroupedList.current.scrollToItem(u)},pC)),jr(this,"getCachedUngroupedColumns",ge((o,s)=>o.filter(l=>bt.isGroupable(l)&&s.find(u=>u===l.name)==null))),jr(this,"getCachedSortedColumns",ge((o,s)=>s==null?[...o]:j.sortColumns(o,s===bt.SORT.ASCENDING))),this.handleDeleteClicked=this.handleDeleteClicked.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUngroupedSelect=this.handleUngroupedSelect.bind(this),this.handleUngroupedSelectionChange=this.handleUngroupedSelectionChange.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupedSelectionChange=this.handleGroupedSelectionChange.bind(this),this.handleShowConstituentsChange=this.handleShowConstituentsChange.bind(this),this.handleShowNonAggregatedColumnsChange=this.handleShowNonAggregatedColumnsChange.bind(this),this.handleSortAscending=this.handleSortAscending.bind(this),this.handleSortDescending=this.handleSortDescending.bind(this),this.renderGroupedItem=this.renderGroupedItem.bind(this),this.ungroupedList=Ne.createRef(),this.groupedList=Ne.createRef();var{config:t}=e,{columns:r=[],showConstituents:i=!0,showNonAggregatedColumns:a=!0}=t??{};this.state={ungroupedSelectedRanges:[],columns:r,groupedSelectedRanges:[],searchFilter:"",showConstituents:i,showNonAggregatedColumns:a,dragSource:null,sort:null}}componentDidUpdate(e,t){var{config:r}=this.props,{columns:i,showConstituents:a,showNonAggregatedColumns:o}=this.state;r!==e.config?this.updateFromConfig():(i!==t.columns||a!==t.showConstituents||o!==t.showNonAggregatedColumns)&&(r==null||i!==r.columns||a!==r.showConstituents||o!==r.showNonAggregatedColumns)&&this.sendChange()}componentWillUnmount(){this.search.cancel()}handleSearchChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.search.cancel(),this.resetSelection();return}this.search(t)}handleSortAscending(){this.setState(e=>{var{sort:t}=e;return{sort:t===bt.SORT.ASCENDING?null:bt.SORT.ASCENDING}})}handleSortDescending(){this.setState(e=>{var{sort:t}=e;return{sort:t===bt.SORT.DESCENDING?null:bt.SORT.DESCENDING}})}resetSelection(){this.setState({ungroupedSelectedRanges:[],groupedSelectedRanges:[]})}handleDragStart(e){_n.debug("handleDragStart",e),document.documentElement.classList.add("drag-pointer-events-none"),this.setState({dragSource:e.source})}handleDragEnd(e){_n.debug("handleDragEnd",e),document.documentElement.classList.remove("drag-pointer-events-none"),this.setState({dragSource:null});var{destination:t,source:r}=e;if(!(t==null||r==null)){if(t.droppableId===bi){this.setState(o=>{var{groupedSelectedRanges:s,columns:l}=o,u=[...l];return Qt.reorder(u,s,[],0),{columns:u,ungroupedSelectedRanges:[],groupedSelectedRanges:[]}});return}var i=r.droppableId===Ci,a=t.index;i&&r.index<t.index&&(a+=1),this.setState(o=>{var{columns:s,ungroupedSelectedRanges:l,groupedSelectedRanges:u}=o,d=[...s],h=i?d:this.getSortedUngroupedColumns().map(p=>p.name),v=i?u:l,m=Qt.reorder(h,v,d,a),g=i?Qt.adjustDestinationIndex(a,u):a,f=[[g,g+m.length-1]];return{columns:d,ungroupedSelectedRanges:[],groupedSelectedRanges:f}}),this.resetSelection()}}handleUngroupedSelect(e){_n.debug("handleUngroupedSelect"),this.setState(t=>{var{columns:r}=t;return{columns:bt.addGroupings(r,[this.getSortedUngroupedColumns()[e].name]),ungroupedSelectedRanges:[],groupedSelectedRanges:[]}})}handleUngroupedSelectionChange(e){_n.debug2("handleUngroupedSelectionChange",e),this.setState(t=>{var{ungroupedSelectedRanges:r}=t;return e===r?null:{ungroupedSelectedRanges:e,groupedSelectedRanges:[]}})}handleGroupedSelectionChange(e){_n.debug2("handleGroupedSelectedRanges",e),this.setState(t=>{var{groupedSelectedRanges:r}=t;return e===r?null:{groupedSelectedRanges:e,ungroupedSelectedRanges:[]}})}handleDeleteClicked(e){this.setState(t=>{var{columns:r}=t,i=r.slice();return i.splice(e,1),{columns:i}})}handleShowConstituentsChange(){this.setState(e=>{var{showConstituents:t}=e;return{showConstituents:!t}})}handleShowNonAggregatedColumnsChange(){this.setState(e=>{var{showNonAggregatedColumns:t}=e;return{showNonAggregatedColumns:!t}})}updateFromConfig(){var{config:e}=this.props,{columns:t=[],showConstituents:r=!0,showNonAggregatedColumns:i=!0}=e??{};this.setState({columns:t,showConstituents:r,showNonAggregatedColumns:i})}sendChange(){var{onChange:e}=this.props,{columns:t,showConstituents:r,showNonAggregatedColumns:i}=this.state;e({columns:t,showConstituents:r,showNonAggregatedColumns:i})}getUngroupedColumns(){var{model:e}=this.props,{columns:t}=this.state,{originalColumns:r}=e;return this.getCachedUngroupedColumns(r,t)}getSortedUngroupedColumns(){var{sort:e}=this.state,t=this.getUngroupedColumns();return this.getCachedSortedColumns(t,e)}renderGroupedItem(e){var{item:t,itemIndex:r,isClone:i,selectedCount:a}=e,o=i!==void 0&&i?"":" ".repeat(r),s="".concat(o).concat(t),l=i!==void 0&&i?"".concat(a):void 0,u=i!==void 0&&i?"item-list-item-clone":"";return c.jsxs(c.Fragment,{children:[Xt.renderTextItem({text:s,badgeText:l,className:u}),(i===void 0||!i)&&c.jsx(Z,{kind:"ghost",className:"btn btn-link btn-link-icon btn-delete-grouping float-right",onClick:()=>this.handleDeleteClicked(r),children:c.jsx(le,{icon:Vr})})]})}render(){var{columns:e,dragSource:t,searchFilter:r,groupedSelectedRanges:i,ungroupedSelectedRanges:a,showConstituents:o,showNonAggregatedColumns:s,sort:l}=this.state,u=this.getSortedUngroupedColumns(),d=e.length*Xt.DEFAULT_ROW_HEIGHT;t?.droppableId===bi&&(d+=Xt.DEFAULT_ROW_HEIGHT);var h=u.length*Xt.DEFAULT_ROW_HEIGHT+10,v=Math.min(3*Xt.DEFAULT_ROW_HEIGHT,h);return c.jsx("div",{role:"menu",className:Q("rollup-rows",{"is-dragging":t!=null}),tabIndex:0,children:c.jsxs(Wi,{onDragEnd:this.handleDragEnd,onDragStart:this.handleDragStart,children:[c.jsxs("div",{className:"rollup-rows-group-by",children:[c.jsx("div",{className:"section-title",children:"Group By"}),e.length===0&&c.jsx(Gi,{droppableId:"placeholder",children:(m,g)=>c.jsx("div",pl(pl({className:Q("placeholder","text-muted",{"is-dragging-from-this":g.draggingFromThisWith,"is-dragging-over":g.isDraggingOver,"is-dropping":g.draggingOverWith}),ref:m.innerRef},m.droppableProps),{},{children:"To create a rollup, drag columns from the list below and drop them into this area."}))}),e.length>0&&c.jsx(Xt,{draggingItemClassName:"rollup-rows-dragging-grouped-item",draggablePrefix:Ci,droppableId:Ci,itemCount:e.length,items:e,offset:0,onSelectionChange:this.handleGroupedSelectionChange,ref:this.groupedList,renderItem:this.renderGroupedItem,selectedRanges:i,style:{height:d},isMultiSelect:!0})]}),c.jsxs("div",{className:"rollup-rows-available-columns",children:[c.jsx("div",{className:"section-title",children:"Available Grouping Columns"}),c.jsxs("div",{className:"top-menu",children:[c.jsx(Yi,{className:"w-100",value:r,matchCount:r?a.length:void 0,placeholder:"Find column...",onChange:this.handleSearchChange}),c.jsxs(Z,{kind:"ghost",className:Q("btn-link btn-link-icon",{active:l===bt.SORT.ASCENDING}),onClick:this.handleSortAscending,children:[c.jsx(le,{icon:oo}),c.jsx(_t,{children:"Sort ascending"})]}),c.jsxs(Z,{kind:"ghost",className:Q("btn-link btn-link-icon",{active:l===bt.SORT.DESCENDING}),onClick:this.handleSortDescending,children:[c.jsx(le,{icon:so}),c.jsx(_t,{children:"Sort descending"})]})]}),c.jsx(Xt,{className:"rollup-available-grouping-columns",draggablePrefix:bi,droppableId:bi,itemCount:u.length,items:u,renderItem:bt.renderColumn,offset:0,onSelect:this.handleUngroupedSelect,onSelectionChange:this.handleUngroupedSelectionChange,ref:this.ungroupedList,selectedRanges:a,style:{maxHeight:h,minHeight:v},isDropDisabled:t?.droppableId!==Ci,isMultiSelect:!0}),c.jsxs("div",{className:"bottom-menu",children:[c.jsx("div",{className:"label",children:"Show:"}),c.jsx(Cr,{checked:o,onChange:this.handleShowConstituentsChange,children:"Constituents"}),c.jsx(Cr,{checked:s,onChange:this.handleShowNonAggregatedColumnsChange,children:"Non-Aggregated Columns"})]})]})]})})}}jr(bt,"SORT",Object.freeze({ASCENDING:"ASC",DESCENDING:"DESC"}));jr(bt,"defaultProps",{config:null,onChange:()=>{}});const CC=bt;function Cl(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function bC(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Cl(a,r,i,o,s,"next",l)}function s(l){Cl(a,r,i,o,s,"throw",l)}o(void 0)})}}function bl(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 wl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bl(Object(t),!0).forEach(function(r){on(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function on(n,e,t){return e=wC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wC(n){var e=SC(n,"string");return typeof e=="symbol"?e:String(e)}function SC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yC=ye.module("TableCsvExporter");class we extends D.Component{static getDateString(e){return e.i18n.DateTimeFormat.format(we.FILENAME_DATE_FORMAT,new Date)}constructor(e){super(e),this.handleDownloadClick=this.handleDownloadClick.bind(this),this.handleDownloadRowOptionChanged=this.handleDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowOptionChanged=this.handleCustomizedDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowsChanged=this.handleCustomizedDownloadRowsChanged.bind(this),this.handleIncludeColumnHeadersChanged=this.handleIncludeColumnHeadersChanged.bind(this),this.handleIncludeHiddenColumnsChanged=this.handleIncludeHiddenColumnsChanged.bind(this),this.handleUseUnformattedValuesChanged=this.handleUseUnformattedValuesChanged.bind(this);var{model:t,name:r}=e;this.state={fileName:"".concat(r,"-").concat(we.getDateString(t.dh),".csv"),downloadRowOption:we.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,customizedDownloadRowOption:we.CUSTOMIZED_ROWS_OPTIONS.FIRST,customizedDownloadRows:we.DEFAULT_DOWNLOAD_ROWS,includeColumnHeaders:!0,includeHiddenColumns:!1,useUnformattedValues:!1,errorMessage:null,id:lr.generate()}}getSnapshotRanges(){var{model:e,selectedRanges:t}=this.props,{downloadRowOption:r,customizedDownloadRowOption:i,customizedDownloadRows:a}=this.state,{rowCount:o,columnCount:s}=e,l=[];switch(r){case we.DOWNLOAD_ROW_OPTIONS.ALL_ROWS:l.push(new B(0,0,s-1,o-1));break;case we.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS:l=t.map(u=>wl(wl({},u),{},{startColumn:0,endColumn:s-1})).sort((u,d)=>u.startRow!=null&&d.startRow!=null?u.startRow-d.startRow:0);break;case we.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS:switch(i){case we.CUSTOMIZED_ROWS_OPTIONS.FIRST:l.push(new B(0,0,s-1,Math.min(a-1,o-1)));break;case we.CUSTOMIZED_ROWS_OPTIONS.LAST:l.push(new B(0,Math.max(0,o-a),s-1,o-1));break}break}return l}getModelRanges(e){var{userColumnWidths:t,movedColumns:r}=this.props,{includeHiddenColumns:i}=this.state,a=Re.getHiddenColumns(t),o=K.getModelRanges(e,r);if(!i&&a.length>0){var s=a.map(B.makeColumn);o=B.subtractRangesFromRanges(o,s)}return o}resetDownloadState(){this.setState({errorMessage:null})}handleDownloadClick(){var e=this;return bC(function*(){var{model:t,isDownloading:r,onDownloadStart:i,onDownload:a,onCancel:o}=e.props,{fileName:s,includeColumnHeaders:l,useUnformattedValues:u}=e.state;if(r){o();return}e.resetDownloadState();var d=e.getSnapshotRanges(),h=e.getModelRanges(d);if(e.validateOptionInput()){i();try{var v=yield t.export(),m=v.setViewport(0,0);yield m.getViewportData(),a(s,v,m,d,h,l,u)}catch(g){yC.error("CSV download failed",g),e.setState({errorMessage:c.jsxs("p",{children:[c.jsx(le,{icon:Wn})," ","".concat(g)]})}),o()}}})()}handleDownloadRowOptionChanged(e){this.setState({downloadRowOption:e.target.value})}handleCustomizedDownloadRowOptionChanged(e){this.setState({customizedDownloadRowOption:e.target.value})}handleCustomizedDownloadRowsChanged(e){this.setState({customizedDownloadRows:parseInt(e.target.value,10)})}handleIncludeColumnHeadersChanged(){this.setState(e=>{var{includeColumnHeaders:t}=e;return{includeColumnHeaders:!t}})}handleIncludeHiddenColumnsChanged(){this.setState(e=>{var{includeHiddenColumns:t}=e;return{includeHiddenColumns:!t}})}handleUseUnformattedValuesChanged(){this.setState(e=>{var{useUnformattedValues:t}=e;return{useUnformattedValues:!t}})}validateOptionInput(){var{selectedRanges:e}=this.props,{downloadRowOption:t,customizedDownloadRows:r}=this.state;return t===we.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS&&e.length===0?(this.setState({errorMessage:c.jsxs("p",{children:[c.jsx(le,{icon:Wn})," No rows selected. Please select some rows in the table."]})}),!1):t===we.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS&&r<=0?(this.setState({errorMessage:c.jsxs("p",{children:[c.jsx(le,{icon:Wn})," Number of rows to output must be greater than 0"]})}),!1):!0}render(){var{model:e,isDownloading:t,tableDownloadProgress:r,tableDownloadEstimatedTime:i,selectedRanges:a,tableDownloadStatus:o}=this.props,{fileName:s,downloadRowOption:l,customizedDownloadRowOption:u,customizedDownloadRows:d,includeColumnHeaders:h,includeHiddenColumns:v,useUnformattedValues:m,errorMessage:g,id:f}=this.state,{rowCount:p}=e;return c.jsxs("div",{className:"table-csv-exporter",children:[c.jsx("div",{className:"section-title",children:"Download Rows"}),c.jsx("div",{className:"form-group",children:c.jsxs(fo,{onChange:this.handleDownloadRowOptionChanged,value:l,disabled:t,children:[c.jsxs(Jr,{value:we.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,"data-testid":"radio-csv-exporter-download-all",children:["All Rows",c.jsx("span",{className:"text-muted ml-2",children:"(".concat(p.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)")})]}),c.jsxs(Jr,{value:we.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS,"data-testid":"radio-csv-exporter-only-selected",children:["Only Selected Rows",c.jsx("span",{className:"text-muted ml-2",children:a.length>0?"(".concat(B.rowCount(a).toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"):null})]}),c.jsx(Jr,{value:we.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS,"data-testid":"radio-csv-exporter-customized-rows",children:c.jsxs("div",{className:"radio-input-row",role:"presentation",onClick:()=>{this.setState({downloadRowOption:we.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS})},children:[c.jsxs("select",{value:u,"data-testid":"select-csv-exporter-customized-rows",className:"custom-select",disabled:t,onChange:this.handleCustomizedDownloadRowOptionChanged,children:[c.jsx("option",{value:"FIRST",children:"First"}),c.jsx("option",{value:"LAST",children:"Last"})]}),c.jsx("input",{type:"number",className:"form-control",id:"customizedRows-".concat(f),"data-testid":"input-csv-exporter-customized-rows",name:"customizedRows-".concat(f),placeholder:"100",value:d,disabled:t,onChange:this.handleCustomizedDownloadRowsChanged}),c.jsx("div",{children:"Rows"})]})})]})}),c.jsxs("div",{className:"form-group",children:[c.jsx("label",{htmlFor:"customizedRows-".concat(f),children:"File Name"}),c.jsx("input",{type:"text",className:"form-control",id:"filename-".concat(f),"data-testid":"input-csv-exporter-file-name",name:"filename-".concat(f),value:s,onChange:C=>{this.setState({fileName:C.target.value})},disabled:t})]}),c.jsxs("div",{className:"checkbox-options",children:[c.jsx(Cr,{checked:h,onChange:this.handleIncludeColumnHeadersChanged,children:"Include column headers"}),c.jsx(Cr,{checked:v,onChange:this.handleIncludeHiddenColumnsChanged,children:"Include hidden columns"}),c.jsx(Cr,{checked:m,onChange:this.handleUseUnformattedValuesChanged,children:"Use unformatted values"})]}),c.jsxs("div",{className:"section-footer flex-column",children:[g!=null&&c.jsx("div",{className:"error-message",children:g}),o&&c.jsxs("div",{className:"download-status",children:[(o===we.DOWNLOAD_STATUS.DOWNLOADING||o===we.DOWNLOAD_STATUS.INITIATING)&&c.jsxs(c.Fragment,{children:[o===we.DOWNLOAD_STATUS.INITIATING&&c.jsx("div",{className:"text-muted",children:"Starting Download..."}),o===we.DOWNLOAD_STATUS.DOWNLOADING&&c.jsxs("div",{className:"text-muted d-flex justify-content-between",children:[c.jsx("span",{children:i||i===0?"Estimated time: ".concat(Oh.formatElapsedTime(i)):null}),c.jsx("span",{children:"".concat(r,"%")})]})]}),o===we.DOWNLOAD_STATUS.FINISHED&&c.jsx("div",{className:"text-muted text-right",children:"Download Completed"}),o===we.DOWNLOAD_STATUS.CANCELED&&c.jsx("div",{className:"text-muted",children:"Download Canceled"}),(o===we.DOWNLOAD_STATUS.DOWNLOADING||o===we.DOWNLOAD_STATUS.INITIATING)&&c.jsx("div",{className:"progress",children:c.jsx("div",{className:"progress-bar progress-bar-striped progress-bar-animated",style:{width:"".concat(r,"%")}})}),o===we.DOWNLOAD_STATUS.FINISHED&&c.jsx("div",{className:"progress",children:c.jsx("div",{className:"progress-bar bg-success",style:{width:"".concat(r,"%")}})})]}),c.jsxs(Z,{kind:"primary","data-testid":"btn-csv-exporter-download",className:Q("btn-downloading",{"btn-spinner btn-cancelable":t}),onClick:this.handleDownloadClick,children:[t&&c.jsxs("span",{children:[c.jsx(rn,{className:"loading-spinner-vertical-align"}),c.jsx("span",{className:"btn-normal-content",children:"Downloading"}),c.jsx("span",{className:"btn-hover-content",children:"Cancel"})]}),!t&&"Download"]})]})]})}}on(we,"FILENAME_DATE_FORMAT","yyyy-MM-dd-HHmmss");on(we,"DOWNLOAD_STATUS",{INITIATING:"INITIATING",DOWNLOADING:"DOWNLOADING",FINISHED:"FINISHED",CANCELED:"CANCELED"});on(we,"DOWNLOAD_ROW_OPTIONS",{ALL_ROWS:"ALL_ROWS",SELECTED_ROWS:"SELECTED_ROWS",CUSTOMIZED_ROWS:"CUSTOMIZED_ROWS"});on(we,"CUSTOMIZED_ROWS_OPTIONS",{FIRST:"FIRST",LAST:"LAST"});on(we,"DEFAULT_DOWNLOAD_ROWS",100);on(we,"defaultProps",{onDownloadStart:()=>{},isDownloading:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:null,selectedRanges:[]});const Wr=we;function Oe(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=EC(n,"string");return typeof e=="symbol"?e:String(e)}function EC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var mr=ye.module("TableSaver"),OC="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function RC(n){return n.added!==void 0}function DC(n){if(!RC(n))throw new Error("event is not UpdateEventData")}class St extends D.PureComponent{static csvEscapeString(e){return'"'.concat(e.replace(/"/g,'""'),'"')}constructor(e){super(e),Oe(this,"sw",void 0),Oe(this,"port",void 0),Oe(this,"fileWriter",void 0),Oe(this,"table",void 0),Oe(this,"tableSubscription",void 0),Oe(this,"columns",void 0),Oe(this,"fileName",void 0),Oe(this,"includeColumnHeaders",void 0),Oe(this,"useUnformattedValues",void 0),Oe(this,"chunkRows",void 0),Oe(this,"gridRanges",void 0),Oe(this,"gridRangeCounter",void 0),Oe(this,"rangedSnapshotsTotal",void 0),Oe(this,"rangedSnapshotCounter",void 0),Oe(this,"snapshotsTotal",void 0),Oe(this,"snapshotCounter",void 0),Oe(this,"snapshotsBuffer",void 0),Oe(this,"currentSnapshotIndex",void 0),Oe(this,"snapshotPending",void 0),Oe(this,"cancelableSnapshots",void 0),Oe(this,"streamTimeout",void 0),Oe(this,"snapshotHandlerTimeout",void 0),Oe(this,"downloadStartTime",void 0),Oe(this,"iframe",void 0),Oe(this,"useBlobFallback",void 0),Oe(this,"getCachedCustomColumnFormatFlag",er(en.isCustomColumnFormatDefined,{max:1e4})),this.handlePortMessage=this.handlePortMessage.bind(this),this.handleSnapshotResolved=this.handleSnapshotResolved.bind(this),this.handleDownloadTimeout=this.handleDownloadTimeout.bind(this),this.state={},this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.useBlobFallback=!1}componentDidMount(){var{getDownloadWorker:e}=this.props;e().then(t=>{mr.info("found active service worker"),this.sw=t,this.sw.postMessage("ping")}).catch(t=>{mr.warn("Download csv is not optimized.",t),this.useBlobFallback=!0})}componentWillUnmount(){this.removeIframe(),this.streamTimeout&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout&&clearTimeout(this.snapshotHandlerTimeout)}createWriterStream(e){var t=this.useBlobFallback,r=[],i=null;t&&(i=TextEncoder.prototype.encode.bind(new TextEncoder));var{fileName:a}=this,o={};return t?(o.write=s=>{_(i),s.header!==void 0&&r.push(i(s.header)),s.rows!==void 0&&r.push(i(s.rows))},o.close=()=>{_(a);var s=new Blob(r,{type:"application/octet-stream; charset=utf-8"}),l=document.createElement("a");l.href=URL.createObjectURL(s),l.download=a,l.click()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}):(o.write=s=>{e.postMessage(s)},o.close=()=>{e.postMessage({end:!0}),e.close()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}),new WritableStream(o)}startDownload(e,t,r,i,a,o,s){var{isDownloading:l}=this.props;if(!l){this.downloadStartTime=Date.now(),mr.info("start downloading ".concat(e)),this.table=t,this.columns=Re.columnsFromRanges(a,t.columns),this.tableSubscription=r,this.gridRanges=i,this.includeColumnHeaders=o,this.useUnformattedValues=s;var u=encodeURIComponent(e.replace(/\//g,":")).replace(/['()]/g,escape).replace(/\*/g,"%2A"),d=new MessageChannel;if(this.port=d.port1,this.fileName=e,this.fileWriter=this.createWriterStream(this.port).getWriter(),this.useBlobFallback){this.writeCsvTable(o);return}this.sw&&this.sw.postMessage({encodedFileName:u},[d.port2]),this.port.onmessage=this.handlePortMessage}}finishDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.close();var{onDownloadCompleted:e}=this.props;e(),this.resetTableSaver(),this.downloadStartTime!==void 0&&mr.info("download finished, total elapsed time ".concat((Date.now()-this.downloadStartTime)/1e3," seconds"))}cancelDownload(){var e,t,r;(e=this.table)===null||e===void 0||e.close(),(t=this.tableSubscription)===null||t===void 0||t.close(),(r=this.fileWriter)===null||r===void 0||r.abort(),this.cancelableSnapshots.forEach(a=>{a&&(a.catch(()=>null),a.cancel())});var{onDownloadCanceled:i}=this.props;i(),this.resetTableSaver()}resetTableSaver(){this.table=void 0,this.tableSubscription=void 0,this.columns=void 0,this.chunkRows=void 0,this.removeIframe(),this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout!=null&&clearTimeout(this.snapshotHandlerTimeout),this.streamTimeout=void 0,this.snapshotHandlerTimeout=void 0}handleDownloadTimeout(){mr.info("download canceled"),this.cancelDownload()}writeTableHeader(){var e,t="";if(this.columns)for(var r=0;r<this.columns.length;r+=1)t+=this.columns[r].name,t+=r===this.columns.length-1?`
|
|
4
4
|
`:",";(e=this.fileWriter)===null||e===void 0||e.write({header:t}).then(()=>null)}startWriteTableBody(){this.columns&&this.gridRanges!=null&&(this.chunkRows=Math.floor(St.DOWNLOAD_CELL_CHUNK/this.columns.length),this.rangedSnapshotsTotal=this.gridRanges.map(e=>(_(e.endRow),_(e.startRow),_(this.chunkRows),Math.ceil((e.endRow-e.startRow+1)/this.chunkRows))),this.snapshotsTotal=this.rangedSnapshotsTotal.reduce((e,t)=>e+t),mr.info("start writing table, total snapshots: ",this.snapshotsTotal),this.makeSnapshot(Math.min(St.SNAPSHOT_BUFFER_SIZE,this.snapshotsTotal)))}writeCsvTable(e){e&&this.writeTableHeader(),this.startWriteTableBody()}writeSnapshot(e,t,r){if(this.currentSnapshotIndex===e&&this.fileWriter){for(;this.snapshotsBuffer.has(this.currentSnapshotIndex);){var i=this.snapshotsBuffer.get(this.currentSnapshotIndex);_(i),this.fileWriter.write({rows:this.convertSnapshotIntoCsv(i)}),this.snapshotsBuffer.delete(this.currentSnapshotIndex),this.currentSnapshotIndex+=1,this.updateDownloadProgress(e)}if(this.snapshotsTotal&&this.currentSnapshotIndex>=this.snapshotsTotal){this.finishDownload();return}}this.snapshotCounter&&this.snapshotsTotal&&this.snapshotCounter<this.snapshotsTotal&&(mr.debug2(`
|
|
@@ -12,4 +12,4 @@ import{H as Ne,C as c,F as Q,N as se,r as D,L as ge,G as le,aC as ro,aD as Gi,aE
|
|
|
12
12
|
`:","}return t}makeSnapshot(e){var t=this;if(!(e<=0)){var{dh:r}=this.props;_(this.gridRangeCounter);var i=0,a=this.gridRanges[this.gridRangeCounter];_(this.tableSubscription),_(this.columns);for(var o=function(){_(a),_(a.startRow),_(a.endRow),_(t.rangedSnapshotCounter),_(t.chunkRows);var l=a.startRow+t.rangedSnapshotCounter*t.chunkRows,u=Math.min(l+t.chunkRows-1,a.endRow),d=t.snapshotCounter;t.cancelableSnapshots.push(Tt.makeCancelable(t.tableSubscription.snapshot(r.RangeSet.ofRange(l,u),t.columns).then(h=>(DC(h),t.handleSnapshotResolved(h,d,l,u),d)).catch(h=>{mr.error(h)}),h=>{mr.info("snapshot ".concat(h," has been canceled"))})),t.rangedSnapshotCounter+=1,t.snapshotCounter+=1,t.snapshotPending+=1,t.rangedSnapshotCounter>=t.rangedSnapshotsTotal[t.gridRangeCounter]&&(t.gridRangeCounter+=1,t.rangedSnapshotCounter=0,a=t.gridRanges[t.gridRangeCounter]),i+=1};i<e;)o()}}handlePortMessage(e){var{data:t}=e,{download:r,readableStreamPulling:i}=t;if(!this.useBlobFallback){if(r!=null){var{includeColumnHeaders:a}=this;this.makeIframe("".concat(r)),this.writeCsvTable(a)}i!=null&&(this.useBlobFallback||(this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.streamTimeout=setTimeout(this.handleDownloadTimeout,St.STREAM_TIMEOUT)))}}handleSnapshotResolved(e,t,r,i){this.snapshotHandlerTimeout=setTimeout(()=>{this.snapshotsBuffer.set(t,e),this.snapshotPending-=1,this.writeSnapshot(t,r,i),this.cancelableSnapshots[t]=null},St.SNAPSHOT_HANDLER_TIMEOUT)}makeIframe(e){var t=document.createElement("iframe");t.hidden=!0,t.src=e,t.name="iframe",document.body.appendChild(t),this.iframe=t}removeIframe(){var e;(e=this.iframe)===null||e===void 0||e.remove(),this.iframe=void 0}render(){return null}}Oe(St,"DOWNLOAD_CELL_CHUNK",6e3);Oe(St,"SNAPSHOT_BUFFER_SIZE",5);Oe(St,"STREAM_TIMEOUT",8e3);Oe(St,"SNAPSHOT_HANDLER_TIMEOUT",5);Oe(St,"defaultProps",{isDownloading:!1,onDownloadCompleted:()=>{},onDownloadCanceled:()=>{},onDownloadProgressUpdate:()=>{}});function NC(n){var e,{group:t,onDelete:r,onColorChange:i,onNameChange:a,validateName:o}=n,{isNew:s}=t,l=D.useRef(t),u=D.useRef(null),d=D.useRef(null),[h,v]=D.useState(!1),[m,g]=D.useState(s?"":t.name),[f,p]=D.useState(s),[C,b]=D.useState(!1),w=m!==t.name?o(m):"",S=s&&!C||w==="",T=D.useCallback(()=>{v(!1)},[]);D.useEffect(function(){f&&u.current&&(u.current.focus(),u.current.select())},[f]),D.useEffect(function(){return()=>{l.current.isNew&&r(l.current)}},[r]),D.useEffect(function(){if(h){var P,x;(P=d.current)===null||P===void 0||P.click(),(x=d.current)===null||x===void 0||x.focus(),window.addEventListener("click",T,!0)}return()=>window.removeEventListener("click",T,!0)},[h,T]);var y=()=>{S&&(a(t,m),p(!1))},O=()=>{if(s){r(t);return}g(t.name),p(!1)},R=E=>{b(!0),E.key==="Enter"&&(E.stopPropagation(),y()),E.key===" "&&E.stopPropagation(),E.key==="Escape"&&O()};return f?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"editing-container",children:[c.jsx("input",{ref:u,className:Q("form-control",{"is-invalid":!S}),value:m,placeholder:"Group Name",onChange:E=>g(E.target.value),onKeyDown:R,onBlur:()=>b(!0)}),c.jsx(Z,{kind:"ghost",icon:xi,tooltip:"Confirm",onClick:y}),c.jsx(Z,{kind:"ghost",icon:$d,tooltip:"Cancel",onClick:O})]}),!S&&c.jsx("p",{className:"mb-0 validate-label-error text-danger",children:w})]}):c.jsxs("div",{className:"group-name-wrapper",children:[c.jsx("span",{className:"column-name",children:m}),c.jsx(Z,{className:"p-1 mx-1",kind:"ghost",icon:ao,tooltip:"Edit",onClick:()=>{p(!0)}}),c.jsxs("span",{className:"right-buttons",children:[c.jsx(Z,{kind:"ghost",icon:Vr,tooltip:"Delete group",onClick:()=>r(t)}),c.jsx(Z,{kind:"ghost",className:"color-swatch mr-1",icon:t.color!==void 0?c.jsxs("span",{className:"fa-layers",children:[c.jsx(le,{className:"color-swatch",icon:Mi,color:We.white,transform:"down-1"}),c.jsx(le,{className:"color-swatch",icon:Mi,color:t.color,transform:"shrink-2 down-1"})]}):Gd,tooltip:"Set color",onClick:()=>v(E=>!E)}),h&&c.jsxs(c.Fragment,{children:[c.jsx("input",{"aria-label":"Color input",ref:d,type:"color",list:"presetColors",value:(e=t.color)!==null&&e!==void 0?e:We["content-bg"],style:{visibility:"hidden",width:0,height:0,padding:0,border:0},onChange:E=>{t.color=E.target.value,i(t,E.target.value)}}),c.jsxs("datalist",{id:"presetColors",children:[c.jsx("option",{children:We["content-bg"]}),c.jsx("option",{children:We.primary}),c.jsx("option",{children:We.foreground}),c.jsx("option",{children:We.green}),c.jsx("option",{children:We.yellow}),c.jsx("option",{children:We.orange}),c.jsx("option",{children:We.red}),c.jsx("option",{children:We.purple}),c.jsx("option",{children:We.blue}),c.jsx("option",{children:We["gray-400"]})]})]})]})]})}function Sl(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 yl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Sl(Object(t),!0).forEach(function(r){PC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Sl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function PC(n,e,t){return e=FC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function FC(n){var e=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)}function AC(){}var xC=D.forwardRef(function(e,t){var{value:r,clone:i,childCount:a,item:o,onVisibilityChange:s,onClick:l,onGroupDelete:u,onGroupColorChange:d,onGroupNameChange:h,validateGroupName:v,handleProps:m}=e,{group:g,modelIndex:f,isVisible:p}=o.data,C=D.useRef(null),b=D.useCallback(S=>{if(S.buttons===1){var T;s([f].flat(),!p),(T=C.current)===null||T===void 0||T.focus()}},[s,f,p]),w=D.useCallback(S=>{l(r,S)},[l,r]);return c.jsxs("div",yl(yl({ref:t,className:Q("tree-item",{isSelected:o.selected,"two-dragged":a===2,"multiple-dragged":a>2}),onClick:w},m),{},{children:[c.jsx(Z,{ref:C,kind:"ghost",className:"px-1",onClick:AC,onMouseDown:b,onMouseEnter:b,icon:p?uo:tu,tooltip:"Toggle visibility"}),c.jsx("span",{className:Q("column-name",g&&"column-group"),children:g&&!i?c.jsx(NC,{group:g,onDelete:u,onColorChange:d,onNameChange:h,validateName:v}):r}),c.jsxs("div",{children:[i&&a>1&&c.jsx("span",{className:"item-count",children:a}),c.jsx(_t,{children:"Drag to re-order"}),c.jsx(le,{icon:zi})]})]}))});const MC=xC;function LC(n){return n.parentId!==void 0}function Tl(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 El(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Tl(Object(t),!0).forEach(function(r){jC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Tl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jC(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 HC(n,e){return Math.round(n/e)}function Fu(n,e,t,r,i,a){var o=n.findIndex(u=>u.name===r);if(o===-1){var s=t.get(r);if(s==null)throw new Error("Column or header group not found: ".concat(r));var l=s.childIndexes.flat();return{id:r,selected:a.has(r),children:s.children.map(u=>Fu(n,e,t,u,i,a)).sort((u,d)=>{var h=Array.isArray(u.data.visibleIndex)?u.data.visibleIndex[0]:u.data.visibleIndex,v=Array.isArray(d.data.visibleIndex)?d.data.visibleIndex[0]:d.data.visibleIndex;return h-v}),data:{modelIndex:l,visibleIndex:s.getVisibleRange(e),group:s,isVisible:l.some(u=>!i.has(u))}}}return{id:r,children:[],selected:a.has(r),data:{modelIndex:o,visibleIndex:K.getVisibleIndex(o,e),isVisible:!i.has(o)}}}function BC(n,e,t,r,i){for(var a=[],o=new Set(i),s=new Map(t.map(h=>[h.name,h])),l=new Set(r),u=0,d=function(){for(var v=K.getModelIndex(u,e),m=n[v].name,g=t.find(p=>{var{children:C}=p;return C.includes(m)});g!==void 0&&g.parent!==void 0;)g=s.get(g.parent);var f=Fu(n,e,s,g?g.name:m,l,o);a.push(f),Array.isArray(f.data.visibleIndex)?u+=f.data.visibleIndex[1]-f.data.visibleIndex[0]+1:u+=1};u<n.length;)d();return a}function Ui(n,e,t,r,i){var a=n.findIndex(C=>{var{id:b}=C;return b===t}),o=n.findIndex(C=>{var{id:b}=C;return b===e}),s=n[o],l=hd(n,o,a),u=l[a-1],d=l[a+1],h=HC(r,i),v=s.depth+h,m=VC({previousItem:u,nextItem:d}),g=UC({nextItem:d}),f=v;return v>=m?f=m:v<g&&(f=g),{depth:f,maxDepth:m,minDepth:g,parentId:p()};function p(){var C;if(f===0||!u)return null;if(f===u.depth)return u.parentId;if(f>u.depth)return u.id;var b=(C=l.slice(0,a).reverse().find(w=>w.depth===f))===null||C===void 0?void 0:C.parentId;return b??null}}function VC(n){var e,t,{previousItem:r,nextItem:i}=n;return Math.max((e=r?.depth)!==null&&e!==void 0?e:0,(t=i?.depth)!==null&&t!==void 0?t:0)}function UC(n){var{nextItem:e}=n;return e?e.depth:0}function Iu(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return n.reduce((r,i,a)=>[...r,El(El({},i),{},{parentId:e,depth:t,index:a}),...Iu(i.children,i.id,t+1)],[])}function Mt(n){return n.every(LC)?[...n]:Iu(n)}function Au(n,e){for(var t=0;t<n.length;t+=1){var r=n[t],{id:i,children:a}=r;if(i===e)return r;if(a.length){var o=Au(a,e);if(o)return o}}}function xu(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return n.reduce((t,r)=>{var{children:i}=r;return i.length?xu(i,t+1):t+1},e)}function $C(n,e){var t=Au(n,e);return t?xu(t.children):0}function Ol(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 wi(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ol(Object(t),!0).forEach(function(r){GC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ol(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function GC(n,e,t){return e=WC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function WC(n){var e=zC(n,"string");return typeof e=="symbol"?e:String(e)}function zC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var KC=[nr.Down,nr.Right,nr.Up,nr.Left],YC=[nr.Left,nr.Right];function XC(n,e,t){return(r,i)=>{var{currentCoordinates:a,context:{active:o,over:s,collisionRect:l,droppableRects:u,droppableContainers:d}}=i;if(KC.includes(r.code)){if(!o||!l)return;r.preventDefault();var{current:{items:h,offset:v}}=n;if(YC.includes(r.code)&&s?.id!=null){var{depth:m,maxDepth:g,minDepth:f}=Ui(h,o.id,s.id,v,t);switch(r.code){case nr.Left:if(m>f)return wi(wi({},a),{},{x:a.x-t});break;case nr.Right:if(m<g)return wi(wi({},a),{},{x:a.x+t});break}return}var p=[];d.forEach(F=>{if(!(F!=null&&F.disabled||F.id===s?.id)){var k=u.get(F.id);if(k)switch(r.code){case nr.Down:l.top<k.top&&p.push(F);break;case nr.Up:l.top>k.top&&p.push(F);break}}});var C=cd({active:o,collisionRect:l,pointerCoordinates:null,droppableRects:u,droppableContainers:p}),b=vd(C,"id");if(b===s?.id&&C.length>1&&(b=C[1].id),b!=null&&s?.id!=null){var w=u.get(o.id),S=u.get(b),T=d.get(b);if(w&&S&&T){var y=h.findIndex(F=>{var{id:k}=F;return k===b}),O=h[y],R=h.findIndex(F=>{var{id:k}=F;return k===o.id}),E=h[R];if(O!=null&&E!=null){var{depth:P}=Ui(h,o.id,b,(O.depth-E.depth)*t,t),x=y>R,I=x?1:-1,N=e?(l.height-w.height)/2:0,L={x:S.left+P*t,y:S.top+I*N};return L}}}}}}function qC(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=ZC(n,"string");return typeof e=="symbol"?e:String(e)}function ZC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Mu extends md{}qC(Mu,"activators",[{eventName:"onPointerDown",handler:n=>{var{nativeEvent:e}=n;return!(!e.isPrimary||e.button!==0||eb(e.target))}}]);var JC=["button","input","textarea","select","option"];function eb(n){return!!(n?.tagName!=null&&JC.includes(n.tagName.toLowerCase()))}function Lu(n){var{clone:e=!1,depth:t,disableInteraction:r=!1,ghost:i=!1,handleProps:a,value:o,dragRef:s=null,wrapperRef:l=null,renderItem:u,item:d,childCount:h}=n,v=D.useMemo(()=>Array(t).fill(0).map((g,f)=>c.jsx("span",{className:"depth-line"},"depth-line-".concat(f))),[t]),m=D.useMemo(()=>({ref:s,clone:e,value:o,item:d,childCount:h,handleProps:a}),[s,e,o,d,h,a]);return c.jsxs("li",{className:Q("item-wrapper",{clone:e,ghost:i,disableInteraction:r}),ref:l,children:[!e&&v,u(m)]},o)}Lu.displayName="TreeItem";var tb=["id","depth"];function Rl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Si(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Rl(Object(t),!0).forEach(function(r){rb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Rl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function rb(n,e,t){return e=nb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function nb(n){var e=ib(n,"string");return typeof e=="symbol"?e:String(e)}function ib(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 ab(n,e){if(n==null)return{};var t=ob(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 ob(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}var sb=n=>{var{isSorting:e,wasDragging:t}=n;return!(e||t)};function Dl(n){var{id:e,depth:t}=n,r=ab(n,tb),{attributes:i,isDragging:a,isSorting:o,listeners:s,setDraggableNodeRef:l,setDroppableNodeRef:u,transform:d,transition:h}=gd({id:e,animateLayoutChanges:sb}),v=$a.Translate.toString(d),m=D.useMemo(()=>({transform:v,transition:h}),[v,h]),g=D.useMemo(()=>Si(Si(Si({},i),s),{},{style:m}),[i,s,m]);return c.jsx(Lu,Si({dragRef:l,wrapperRef:u,depth:t,ghost:a,disableInteraction:o,handleProps:g},r))}function Nl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function $i(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Nl(Object(t),!0).forEach(function(r){lb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Nl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function lb(n,e,t){return e=ub(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ub(n){var e=db(n,"string");return typeof e=="symbol"?e:String(e)}function db(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var hb={keyframes(n){var{transform:e}=n;return[{opacity:1,transform:$a.Transform.toString(e.initial)},{opacity:0,transform:$a.Transform.toString($i($i({},e.final),{},{x:e.final.x+5,y:e.final.y+5}))}]},easing:"ease-out",sideEffects(n){var{active:e}=n;e.node.animate([{opacity:0},{opacity:1}],{duration:Wo.duration,easing:Wo.easing})}},yi=null;function cb(n){var e;return yi==null&&n.activeNodeRect&&n.activatorEvent instanceof PointerEvent&&(yi=Math.floor((n.activatorEvent.clientY-n.activeNodeRect.top)/n.activeNodeRect.height)*n.activeNodeRect.height),n.activeNodeRect||(yi=null),$i($i({},n.transform),{},{y:n.transform.y+((e=yi)!==null&&e!==void 0?e:0)})}function vb(n){var{items:e,renderItem:t,indentationWidth:r=30,indicator:i=!1,activeId:a,overId:o,offsetLeft:s}=n,l=fd(),u=D.useRef(l);D.useEffect(function(){u.current=l},[l]),D.useEffect(function(){u.current.measureDroppableContainers(e.map(g=>{var{id:f}=g;return f}))},[e]);var d=a!=null&&o!=null?Ui(e,a,o,s,r):null,h=D.useRef({items:e,offset:s}),v=a!=null?e.find(m=>{var{id:g}=m;return g===a}):null;return D.useEffect(()=>{h.current={items:e,offset:s}},[e,s]),c.jsxs(c.Fragment,{children:[c.jsx("div",{className:Q("tree-container",a!=null&&"marching-ants"),children:e.map(m=>{var{id:g,depth:f}=m;return c.jsx(Dl,{id:g,value:g,depth:g===a&&d?d.depth:f,item:m,renderItem:t},g)})}),pd.createPortal(c.jsx(Cd,{dropAnimation:hb,modifiers:[cb],className:"visibility-ordering-list",children:a!=null&&v?c.jsx(Dl,{id:a,depth:v.depth,clone:!0,childCount:$C(e,a)+1,value:a.toString(),renderItem:t,item:v}):null}),document.body)]})}function Pl(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 Ti(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pl(Object(t),!0).forEach(function(r){mb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function mb(n,e,t){return e=gb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gb(n){var e=fb(n,"string");return typeof e=="symbol"?e:String(e)}function fb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var pb={droppable:{strategy:Ed.Always}},Cb={activationConstraint:{distance:5}};function bb(n){var{items:e,indicator:t=!1,indentationWidth:r=30,onDragStart:i,onDragEnd:a,renderItem:o}=n,[s,l]=D.useState(null),[u,d]=D.useState(null),[h,v]=D.useState(0),m=D.useMemo(()=>{var E=Mt(e);return s!=null?E.filter(P=>{var{id:x,selected:I}=P;return x===s||!I}):E},[s,e]),g=s!=null&&u!=null?Ui(m,s,u,h,r):null,f=D.useRef({items:m,offset:h}),p=D.useMemo(()=>({coordinateGetter:XC(f,t,r)}),[r,t]),C=bd(zo(Mu,Cb),zo(Od,p)),b=D.useMemo(()=>m.map(E=>{var{id:P}=E;return P}),[m]);D.useEffect(()=>{f.current={items:m,offset:h}},[m,h]);var w=D.useCallback(E=>{var{active:{id:P}}=E;l(P),d(P),i?.(P),document.body.style.setProperty("cursor","grabbing")},[i]),S=D.useCallback(E=>{var{delta:P}=E;v(P.x)},[]),T=D.useCallback(E=>{var P,{over:x}=E;d((P=x?.id)!==null&&P!==void 0?P:null)},[]),y=D.useCallback(()=>{d(null),l(null),v(0),document.body.style.setProperty("cursor","")},[]),O=D.useCallback(E=>{var{active:P,over:x}=E;if(y(),g&&x){var{depth:I,parentId:N}=g,L=JSON.parse(JSON.stringify(Mt(e))),F=L.findIndex(W=>{var{id:z}=W;return z===x.id}),k=L.findIndex(W=>{var{id:z}=W;return z===P.id}),H=L[k];L[k]=Ti(Ti({},H),{},{depth:I,parentId:N}),a?.(H,Ti(Ti({},L[F]),{},{parentId:g.parentId}))}},[e,a,g,y]),R=D.useCallback(()=>{y()},[y]);return c.jsx(wd,{sensors:C,collisionDetection:Sd,measuring:pb,onDragStart:w,onDragMove:S,onDragOver:T,onDragEnd:O,onDragCancel:R,children:c.jsx(yd,{items:b,strategy:Td,children:c.jsx(vb,{items:m,renderItem:o,indicator:t,indentationWidth:r,activeId:s,overId:u,offsetLeft:h})})})}function Fl(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 Il(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fl(Object(t),!0).forEach(function(r){wb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function wb(n,e,t){return e=Sb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Sb(n){var e=yb(n,"string");return typeof e=="symbol"?e:String(e)}function yb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Tb(n,e,t,r,i,a,o,s){var l=i.map((S,T)=>Il(Il({},S),{},{index:T})),u=[],d=r,h=a[0].data.visibleIndex,v=l.findIndex(S=>{var{id:T}=S;return T===n.id}),m=l.findIndex(S=>{var{id:T}=S;return T===e.id}),g=Array.isArray(h)?h[1]+1:h+1;d=Mr(a[0],e.parentId,d);for(var f=1;f<a.length;f+=1){var{data:{visibleIndex:p}}=a[f];u=K.moveItemOrRange(p,g,u,!0),g+=Array.isArray(p)?p[1]-p[0]+1:1,d=Mr(a[f],e.parentId,d)}var C=[Array.isArray(h)?h[0]:h,g-1],b=Array.isArray(e.data.visibleIndex)?e.data.visibleIndex[0]:e.data.visibleIndex,w=K.getVisibleIndex(b,u);return v>m&&w>b&&(w-=1),e.children.length>0&&(Array.isArray(h)?h[0]:h)<w&&(w-=1),C[0]<w&&(w-=C[1]-C[0]),u=K.moveItemOrRange(C,Ae(w,o,s),u),{groups:d,movedColumns:t.concat(u)}}function Mr(n,e,t){if(n.parentId===e)return[...t];var r=t.map(p=>new kt(p)),i=new Map(r.map(p=>[p.name,p])),a=r.find(p=>p.name===n.parentId),o=r.find(p=>p.name===e),s=r.find(p=>p.name===n.id);if(a!=null&&(a.children=a.children.filter(p=>p!==n.id),a.children.length===0)){var l,u=new Set([a.name]),{parent:d=""}=a,h=i.get(d);for((l=h)===null||l===void 0||l.removeChildren([a.name]);h&&h.children.length===0;){var v,m;u.add(h.name);var g=(v=(m=h)===null||m===void 0?void 0:m.parent)!==null&&v!==void 0?v:"",f=i.get(g);f?.removeChildren([h.name]),h=f}r=r.filter(p=>{var{name:C}=p;return!u.has(C)})}return o?.addChildren([n.id]),s?.setParent(e??void 0),r}function Al(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 Ei(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Al(Object(t),!0).forEach(function(r){Lt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Al(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Lt(n,e,t){return e=Eb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eb(n){var e=Ob(n,"string");return typeof e=="symbol"?e:String(e)}function Ob(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Rb=150;class $e extends D.Component{constructor(e){super(e),Lt(this,"list",void 0),Lt(this,"debouncedSearchColumns",Jt(this.searchColumns,Rb)),Lt(this,"handleGroupColorChange",Ii((t,r)=>{var{columnHeaderGroups:i,onColumnHeaderGroupChanged:a}=this.props,o=[...i],s=new kt(Ei(Ei({},t),{},{color:r}));o.splice(o.findIndex(l=>{var{name:u}=l;return u===t.name}),1,s),a(o)},250)),Lt(this,"renderItem",ge(t=>{var{value:r,clone:i,item:a,ref:o,handleProps:s}=t,{onColumnVisibilityChanged:l}=this.props,{selectedColumns:u}=this.state,d=r;if(i){var h=this.getSelectedParentItems().map(v=>{var{id:m}=v;return m});d=h.join(", ")}return c.jsx(MC,{ref:o,value:d,clone:i,item:a,childCount:u.size,onVisibilityChange:l,onClick:this.handleItemClick,onGroupDelete:this.handleGroupDelete,onGroupColorChange:this.handleGroupColorChange,onGroupNameChange:this.handleGroupNameChange,validateGroupName:this.validateGroupName,handleProps:s})})),Lt(this,"getMemoizedFirstMovableIndex",ge((t,r,i)=>{for(var a=0;a<r.length;a+=1){var o=K.getModelIndex(a,i);if(t.isColumnMovable(o))return a}return null})),Lt(this,"getMemoizedLastMovableIndex",ge((t,r,i)=>{for(var a=r.length-1;a>=0;a-=1){var o=K.getModelIndex(a,i);if(t.isColumnMovable(o))return a}return null})),Lt(this,"memoizedGetTreeItems",ge((t,r,i,a,o)=>BC(t,r,i,a,[...o.values()]))),Lt(this,"makeVisibilityOrderingList",ge((t,r)=>{var{movedColumns:i}=this.props,a=[],o=this.getFirstMovableIndex(),s=this.getLastMovableIndex(),l=r.findIndex(S=>{var{data:T}=S;return Array.isArray(T.visibleIndex)?T.visibleIndex[0]===o:T.visibleIndex===o}),u=r.findIndex(S=>{var{data:T}=S;return Array.isArray(T.visibleIndex)?T.visibleIndex[1]===s:T.visibleIndex===s}),d=r.slice(l,u+1);if(o==null||s===null){for(var h=0;h<t.length;h+=1){var v=K.getModelIndex(h,i),m=t[v];a.push(this.renderImmovableItem(m.name))}return a}for(var g=0;g<o;g+=1){var f=K.getModelIndex(g,i),p=t[f];a.push(this.renderImmovableItem(p.name))}o!==null&&o>0&&a.push(c.jsx("hr",{},"top-horizontal-divider")),a.push(c.jsx(bb,{items:d,renderItem:this.renderItem,onDragStart:this.handleDragStart,onDragEnd:this.handleDragEnd},"movable-items")),s!=null&&s<t.length-1&&a.push(c.jsx("hr",{},"bottom-horizontal-divider"));for(var C=s+1;C<t.length;C+=1){var b=K.getModelIndex(C,i),w=t[b];a.push(this.renderImmovableItem(w.name))}return a})),Lt(this,"renderImmovableItem",ge(t=>c.jsx("div",{className:"visibility-ordering-list-item immovable",children:c.jsx("div",{className:"column-item",children:c.jsx("span",{className:"column-name",children:t})})},t))),this.handleSearchInputChange=this.handleSearchInputChange.bind(this),this.searchColumns=this.searchColumns.bind(this),this.handleItemClick=this.handleItemClick.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupDelete=this.handleGroupDelete.bind(this),this.handleGroupNameChange=this.handleGroupNameChange.bind(this),this.handleGroupCreate=this.handleGroupCreate.bind(this),this.validateGroupName=this.validateGroupName.bind(this),this.addColumnToSelected=this.addColumnToSelected.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.state={selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""},this.list=null}componentWillUnmount(){this.debouncedSearchColumns.cancel()}resetVisibilityOrdering(){var{model:e,onReset:t,onMovedColumnsChanged:r,onColumnHeaderGroupChanged:i}=this.props;this.setState({selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""}),t(),i(e.initialColumnHeaderGroups),r(e.initialMovedColumns)}resetSelection(){this.setState({selectedColumns:new Set,lastSelectedColumn:""})}handleSearchInputChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.debouncedSearchColumns.cancel(),this.resetSelection();return}this.debouncedSearchColumns(t)}searchColumns(e){var t=Mt(this.getTreeItems()),r=t.filter(l=>{var u,d,{id:h,data:v}=l;return!((u=(d=v.group)===null||d===void 0?void 0:d.isNew)!==null&&u!==void 0&&u)&&h.toLowerCase().includes(e.toLowerCase())}),i=r.map(l=>{var{id:u}=l;return u}),a=t.findIndex(l=>{var{id:u}=l;return u.toLowerCase().includes(e.toLowerCase())});if(this.addColumnToSelected(i,!1),i.length>0){var o,s=(o=this.list)===null||o===void 0?void 0:o.querySelectorAll(".item-wrapper")[a];s?.scrollIntoView({block:"center"})}}moveSelectedColumns(e){var{columnHeaderGroups:t}=this.props,{selectedColumns:r}=this.state,i=Mt(this.getTreeItems()),a=this.getFirstMovableIndex(),o=this.getLastMovableIndex();_(a),_(o);var s=this.getSelectedParentItems(),l=e===$e.MOVE_OPTIONS.UP||e===$e.MOVE_OPTIONS.TOP;l||s.reverse();for(var u=[],d=t,h=function(){var{id:g,parentId:f,depth:p,data:{visibleIndex:C}}=s[v];switch(e){case $e.MOVE_OPTIONS.TOP:{u=K.moveItemOrRange(C,a,u,!0);var b=Array.isArray(C)?C[1]-C[0]+1:1;a+=b,d=Mr(s[v],null,d);break}case $e.MOVE_OPTIONS.BOTTOM:{u=K.moveItemOrRange(C,o,u,!0);var w=Array.isArray(C)?C[1]-C[0]+1:1;o-=w,d=Mr(s[v],null,d);break}case $e.MOVE_OPTIONS.UP:{var S=i.findIndex(H=>H.id===g),T=i.map((H,W)=>W<S&&!r.has(H.id)).lastIndexOf(!0),y=i[T];if(y!=null&&y.parentId!==f)if(Math.abs(y.depth-p)>1){var O=i.map((H,W)=>W<T&&H.depth===p).lastIndexOf(!0),R=i[O];d=Mr(s[v],R.id,d)}else d=Mr(s[v],y.parentId,d);else{var E=Ae(Array.isArray(C)?C[0]-1:C-1,a,o);u=K.moveItemOrRange(C,E,u,!1);var P=Array.isArray(C)?C[1]-C[0]+1:1;a+=P}break}case $e.MOVE_OPTIONS.DOWN:{var x=i.findIndex(H=>H.id===g),I=i.find((H,W)=>W>x&&!r.has(H.id));if(I?.parentId!==f){var N,L=i.find(H=>H.id===f);d=Mr(s[v],(N=L?.parentId)!==null&&N!==void 0?N:null,d);break}else if(I?.children.length>0){d=Mr(s[v],I.id,d);break}var F=Ae(Array.isArray(C)?C[0]+1:C+1,a,o);u=K.moveItemOrRange(C,F,u,!1);var k=Array.isArray(C)?C[1]-C[0]+1:1;o-=k;break}}},v=0;v<s.length;v+=1)h();return{newMoves:u,groups:d}}handleMoveColumns(e){var{onMovedColumnsChanged:t,movedColumns:r,onColumnHeaderGroupChanged:i}=this.props,{newMoves:a,groups:o}=this.moveSelectedColumns(e),s;e===$e.MOVE_OPTIONS.TOP&&(s=()=>{var l,u;(l=this.list)===null||l===void 0||(u=l.parentElement)===null||u===void 0||u.scroll({top:0})}),e===$e.MOVE_OPTIONS.BOTTOM&&(s=()=>{var l,u;(l=this.list)===null||l===void 0||(u=l.parentElement)===null||u===void 0||u.scroll({top:this.list.parentElement.scrollHeight})}),i(o),a.length>0&&t(r.concat(a),s)}getSortMoves(e,t,r){var i=[...e],a=t===$e.SORTING_OPTIONS.ASC;i.sort((v,m)=>{var g=v.id.toUpperCase(),f=m.id.toUpperCase();return Rh.sort(g,f,a)});for(var o=[...r],s=Math.min(...i.flatMap(v=>{var{modelIndex:m}=v.data;return Array.isArray(m)?K.getVisibleIndexes(m,o):K.getVisibleIndex(m,o)})),l=0;l<i.length;l+=1){var u=i[l],{modelIndex:d}=u.data,h=Array.isArray(d)?K.getVisibleIndexes(d,o):K.getVisibleIndex(d,o);o=Array.isArray(h)?K.moveRange([Math.min(...h),Math.max(...h)],s,o,!0):K.moveItem(h,s,o),Array.isArray(h)&&(o=this.getSortMoves(u.children,t,o)),s+=Array.isArray(d)?d.length:1}return o}handleSortColumns(e){var{model:t,onMovedColumnsChanged:r}=this.props,i=this.getSortMoves(this.getTreeItems(),e,t.initialMovedColumns);r(i)}handleItemClick(e,t){if(t.stopPropagation(),!(t.target instanceof HTMLElement&&(t.target.tagName==="BUTTON"||t.target.tagName==="INPUT"))){t.currentTarget.focus();var{selectedColumns:r,lastSelectedColumn:i}=this.state,a=K.isModifierKeyDown(t),o=t.shiftKey,s=r.has(e),l=[e];if(s&&a){this.removeColumnFromSelected(e);return}var u=Mt(this.getTreeItems());if(s&&!o&&i===e){var d=u.find(g=>{var{id:f}=g;return f===e});_(d);var h=Mt(d.children).length;if(h+1===r.size){this.resetSelection();return}}if(o){var v=u.findIndex(g=>g.id===e),m=u.findIndex(g=>g.id===i);l.push(...u.slice(Math.min(m,v),Math.max(m,v)+1).map(g=>g.id))}this.addColumnToSelected(l,a||o),this.setState({lastSelectedColumn:e})}}addColumnToSelected(e,t){var{selectedColumns:r}=this.state,i=new Set(t?[...r.values()].concat(e):e),a=Mt(this.getTreeItems());a.forEach(o=>{var{id:s,children:l}=o;i.has(s)&&l.forEach(u=>i.add(u.id))}),this.setState({selectedColumns:i})}removeColumnFromSelected(e){var{selectedColumns:t}=this.state,r=Mt(this.getTreeItems()),i=r.find(s=>{var{id:l}=s;return l===e});_(i);var a=r.find(s=>{var{id:l}=s;return l===i.parentId});Mt(i?.children).forEach(s=>t.delete(s.id));for(var o=function(){t.delete(a.id);var l=a.parentId;a=r.find(u=>{var{id:d}=u;return d===l})};a!=null;)o();t.delete(e),this.setState({selectedColumns:new Set(t)})}handleDragStart(e){var{selectedColumns:t}=this.state;t.has(e)||this.addColumnToSelected([e],!1)}handleDragEnd(e,t){var{movedColumns:r,onMovedColumnsChanged:i,columnHeaderGroups:a,onColumnHeaderGroupChanged:o}=this.props,s=this.getSelectedParentItems(),l=Mt(this.getTreeItems()).map((m,g)=>Ei(Ei({},m),{},{index:g})),u=this.getFirstMovableIndex(),d=this.getLastMovableIndex();_(u),_(d);var{groups:h,movedColumns:v}=Tb(e,t,r,a,l,s,u,d);o(h),i(v)}handleGroupNameChange(e,t){var{columnHeaderGroups:r,onColumnHeaderGroupChanged:i}=this.props,a=[...r],o=e.name,s=a.findIndex(v=>{var{name:m}=v;return m===o}),l=a[s];_(l);var u=new kt(l);u.name=t,a.splice(s,1,u);var d=a.findIndex(v=>{var{name:m}=v;return m===u.parent});if(d>=0){var h=new kt(a[d]);h.removeChildren([o]),h.addChildren([t]),a.splice(d,1,h)}i(a)}handleGroupDelete(e){var{columnHeaderGroups:t,onColumnHeaderGroupChanged:r}=this.props,i=t.filter(s=>s.name!==e.name),a=i.findIndex(s=>s.name===e.parent);if(a>=0){var o=new kt(i[a]);o.addChildren(e.children),o.removeChildren([e.name]),i.splice(a,1,o)}r(i)}handleGroupCreate(){var{movedColumns:e,onMovedColumnsChanged:t,onColumnHeaderGroupChanged:r}=this.props,{newMoves:i,groups:a}=this.moveSelectedColumns($e.MOVE_OPTIONS.TOP),o=a.filter(h=>!h.isNew),s=this.getSelectedParentItems(),l=s.map(h=>h.data.modelIndex).flat().filter(h=>h>=0),u="".concat(kt.NEW_GROUP_PREFIX,"-").concat(Date.now()),d=new kt({name:u,children:s.map(h=>{var{id:v}=h;return v}),depth:0,childIndexes:[...new Set(l)]});t(e.concat(i),()=>{var h,v;(h=this.list)===null||h===void 0||(v=h.parentElement)===null||v===void 0||v.scroll({top:0})}),r(o.concat([d])),this.resetSelection()}validateGroupName(e){var{model:t,columnHeaderGroups:r}=this.props,{columns:i}=t;return mo.isValidColumnName(e)?i.some(a=>{var{name:o}=a;return o===e})||r.some(a=>{var{name:o}=a;return o===e})?"Duplicate name":"":"Invalid name"}getFirstMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedFirstMovableIndex(e,e.columns,t)}getLastMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedLastMovableIndex(e,e.columns,t)}getTreeItems(){var{model:e,movedColumns:t,hiddenColumns:r,columnHeaderGroups:i}=this.props,{selectedColumns:a}=this.state;return this.memoizedGetTreeItems(e.columns,t,i,r,a)}getSelectedParentItems(){var{selectedColumns:e}=this.state,t=Mt(this.getTreeItems());return t.filter(r=>{var{id:i,parentId:a}=r;return e.has(i)&&!e.has(a??"")})}render(){var{model:e,hiddenColumns:t,onColumnVisibilityChanged:r}=this.props,{selectedColumns:i,searchFilter:a}=this.state,o=i.size>0,s=this.getTreeItems(),l=new Map(Mt(s).map(f=>[f.id,f.data.modelIndex])),u=new Set(t),d=[...new Set(o?[...i.values()].map(f=>l.get(f)).filter(f=>f!=null).flat():s.map(f=>f.data.modelIndex).flat())],h=d.some(f=>!u.has(f)),v=h?"Hide All":"Show All",m=h?"Hide Selected":"Show Selected",g=this.makeVisibilityOrderingList(e.columns,s);return c.jsxs("div",{role:"menu",className:"visibility-ordering-builder",tabIndex:0,children:[c.jsxs("div",{className:"top-menu",children:[c.jsx(Z,{kind:"ghost",className:"toggle-visibility-btn",onClick:()=>{r(d,!h)},icon:h?uo:tu,tooltip:"Toggle column visibility",children:o?m:v}),c.jsx(Yi,{className:"visibility-search",value:a,matchCount:a?i.size:void 0,onChange:this.handleSearchInputChange})]}),c.jsxs("div",{className:"top-menu",children:[c.jsx(Z,{kind:"ghost",icon:Wd,tooltip:"Reset to default",onClick:()=>{this.resetVisibilityOrdering()},children:"Reset"}),c.jsx("span",{className:"vertical-divider"}),c.jsx(Z,{kind:"ghost",icon:oo,tooltip:"Sort ascending",onClick:()=>{this.handleSortColumns($e.SORTING_OPTIONS.ASC)}}),c.jsx(Z,{kind:"ghost",icon:so,tooltip:"Sort descending",onClick:()=>{this.handleSortColumns($e.SORTING_OPTIONS.DSC)}}),c.jsx("span",{className:"vertical-divider"}),c.jsxs(Z,{kind:"ghost",tooltip:"Create group from selection",disabled:!o,onClick:this.handleGroupCreate,children:[c.jsxs("span",{className:"fa-layers",style:{marginRight:"0.75rem"},children:[c.jsx(le,{mask:zd,icon:lo,transform:"right-7 down-5 shrink-6"}),c.jsx(le,{icon:Kd,transform:"right-8 down-6 shrink-8"})]}),"Group"]}),c.jsx("span",{className:"vertical-divider"}),c.jsx(Z,{kind:"ghost",icon:Yd,tooltip:"Move selection up",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.UP)},disabled:!o}),c.jsx(Z,{kind:"ghost",icon:Xd,tooltip:"Move selection down",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.DOWN)},disabled:!o}),c.jsx(Z,{kind:"ghost",icon:qd,tooltip:"Move selection to top",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.TOP)},disabled:!o}),c.jsx(Z,{kind:"ghost",icon:Qd,tooltip:"Move selection to bottom",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.BOTTOM)},disabled:!o})]}),c.jsx("div",{role:"menu",className:Q("visibility-ordering-list"),children:c.jsx("div",{className:"column-list",ref:f=>{this.list=f},children:g})})]})}}Lt($e,"SORTING_OPTIONS",{DSC:"DSC",ASC:"ASC"});Lt($e,"MOVE_OPTIONS",{TOP:"TOP",BOTTOM:"BOTTOM",UP:"UP",DOWN:"DOWN"});const Db=$e;function Nb(n,e,t){return e=Pb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pb(n){var e=Fb(n,"string");return typeof e=="symbol"?e:String(e)}function Fb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 Ib extends D.PureComponent{static createSearchFilter(e,t,r,i,a){var o=a?i.filter(u=>!r.includes(u.name)).map(u=>u.name):r;if(t&&o.length>0){var s=e.FilterValue.ofString(t),l=o.length===i.length?e.FilterCondition.search(s):e.FilterCondition.search(s,i.filter(u=>o.includes(u.name)).map(u=>u.filter()));return l}}constructor(e){super(e),Nb(this,"searchField",void 0),this.handleSearchValueChange=this.handleSearchValueChange.bind(this),this.toggleColumn=this.toggleColumn.bind(this),this.selectAll=this.selectAll.bind(this),this.clear=this.clear.bind(this),this.selectNumbers=this.selectNumbers.bind(this),this.searchField=Ne.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var{onChange:t,selectedColumns:r,invertSelection:i}=this.props;t(e.target.value,r,i)}sendColumnChange(e,t){var{onChange:r,value:i}=this.props;r(i,e,t)}setInvertSelection(e){var{onChange:t,value:r}=this.props;t(r,[],e)}toggleColumn(e){var{selectedColumns:t,invertSelection:r}=this.props;if(t.includes(e))this.sendColumnChange(t.filter(a=>a!==e),r);else{var i=t.slice();i.push(e),this.sendColumnChange(i,r)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var{columns:e}=this.props;this.sendColumnChange(e.filter(t=>j.isNumberType(t.type)).map(t=>t.name),!1)}render(){var{value:e,selectedColumns:t,invertSelection:r,columns:i}=this.props,{isConfigureColumnsShown:a}=this.state,o=t.length===0&&r===!0||t.length===i.length&&r===!1,s=t.length===0&&r===!1||t.length===i.length&&r===!0,l;return o?l=c.jsxs(c.Fragment,{children:[c.jsx(le,{icon:Mi,mask:Oa,transform:"shrink-2 down-5 right-7"}),c.jsx(le,{icon:Zd,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}):s?l=c.jsxs(c.Fragment,{children:[c.jsx(le,{icon:lo,mask:Oa,transform:"shrink-1 down-5 right-7"}),c.jsx(le,{icon:Yo,className:"text-danger",transform:"shrink-4 down-5 right-7"})]}):l=c.jsxs(c.Fragment,{children:[c.jsx(le,{icon:Mi,mask:Oa,transform:"shrink-2 down-5 right-7"}),c.jsx(le,{icon:Jd,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}),c.jsxs("div",{className:"cross-column-container",children:[c.jsx(Yi,{className:"cross-column-search",placeholder:"Search Data...","data-testid":"cross-column-search",value:e,onChange:this.handleSearchValueChange,ref:this.searchField}),c.jsxs("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{a?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})},children:[c.jsx("div",{className:"fa-layers",children:l}),c.jsx(_t,{children:"Configure Columns"}),c.jsx(ho,{isShown:a,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0,children:c.jsxs("div",{className:"cross-column-popup",children:["Searched Columns",c.jsx("div",{className:"cross-column-scroll",children:i.map(u=>c.jsxs(Ne.Fragment,{children:[c.jsx(Cr,{className:"cross-column-checkbox",checked:r?!t.includes(u.name):t.includes(u.name),onChange:()=>this.toggleColumn(u.name),children:u.name}),u.type.substring(u.type.lastIndexOf(".")+1)]},u.name))}),c.jsxs("div",{className:"cross-column-button-bar",children:[c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectAll,children:"Select All"}),c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.clear,children:"Clear"}),c.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers,children:"Numbers Only"})]}),s&&c.jsxs("p",{className:"text-danger",children:[c.jsx(le,{icon:Yo})," Select at least one column to search."]})]})})]})]})}}const Oi=Ib;function kr(n,e,t){return e=Ab(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ab(n){var e=xb(n,"string");return typeof e=="symbol"?e:String(e)}function xb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Nr=ye.module("PartitionSelectorSearch"),Mb=150;class On extends D.Component{static handleError(e){e instanceof ru||Nr.error(e)}constructor(e){super(e),kr(this,"itemList",void 0),kr(this,"searchInput",void 0),kr(this,"timer",void 0),kr(this,"tableUtils",void 0),kr(this,"debounceUpdateFilter",Jt(()=>{this.updateFilter()},Mb)),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleListKeydown=this.handleListKeydown.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTextChange=this.handleTextChange.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.itemList=null,this.searchInput=null,this.timer=null;var{dh:t}=e;this.tableUtils=new j(t),this.state={offset:0,itemCount:0,items:[],text:"",isLoading:!0}}componentDidMount(){this.startListening()}componentDidUpdate(e,t){var{isLoading:r,itemCount:i}=this.state,{onListResized:a}=this.props;(i!==t.itemCount||r!==t.isLoading)&&a()}componentWillUnmount(){this.debounceUpdateFilter.cancel(),this.stopListening()}handleKeyDown(e){if(this.itemList==null)return!1;var{items:t,itemCount:r}=this.state;switch(e.key){case"Enter":{var i=null;if(t.length>0)i=t[0].value;else{var{text:a}=this.state;i=a.trim()}if(i.length>0){var{onSelect:o}=this.props;o(i)}return e.stopPropagation(),e.preventDefault(),!0}case"ArrowDown":return r>0&&this.itemList.focusItem(1),e.stopPropagation(),e.preventDefault(),!0;default:return!1}}handleListKeydown(e){switch(e.key){case"Escape":break;default:this.focus();break}}handleFilterChange(){Nr.debug2("handleFilterChange");var{table:e}=this.props,t=e.size;this.setState({itemCount:t,isLoading:!0})}handleSelect(e){Nr.debug2("handleSelect",e);var{onSelect:t}=this.props,{offset:r,items:i}=this.state,a=e-r;if(a<0||i.length<=a){Nr.error("No data for item",e);return}var{value:o}=i[a];t(o)}handleTableUpdate(e){for(var{column:t}=this.props,r=e.detail,{offset:i,rows:a}=r,o=[],{getFormattedString:s,table:l}=this.props,u=0;u<a.length;u+=1){var d=a[u],h=d.get(t),v=s(h,t.type,t.name);o.push({displayValue:v,value:h})}var m=l.size;Nr.debug2("handleTableUpdate",m,i,o.length),this.setState({itemCount:m,items:o,offset:i,isLoading:!1})}handleTextChange(e){Nr.debug2("handleTextChange");var{column:t}=this.props,{value:r}=e.target;r!==""&&j.isIntegerType(t.type)?this.setState({text:parseInt(r,10).toString()}):this.setState({text:r}),this.debounceUpdateFilter()}handleViewportChange(e,t){Nr.debug2("handleViewportChange",e,t);var r=Math.max(1,t-e),i=Math.max(0,e-r),a=t+r,{table:o}=this.props;o.setViewport(i,a)}focus(){this.searchInput&&this.searchInput.focus()}startListening(){var{dh:e,initialPageSize:t,table:r}=this.props;r.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),r.addEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange),r.setViewport(0,t)}stopListening(){var{dh:e,table:t}=this.props;t.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),t.removeEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange)}updateFilter(){var{column:e,initialPageSize:t,table:r}=this.props,{text:i}=this.state,a=i.trim(),o=[];if(a.length>0){var s=this.tableUtils.makeQuickFilterFromComponent(e,j.isStringType(e.type)?"~".concat(a):a);if(!s)throw new Error("Unable to create column filter for partition selector");o.push(s)}Nr.debug2("updateFilter",o),r.applyFilter(o),r.setViewport(0,t)}render(){var{column:e}=this.props,{isLoading:t,itemCount:r,items:i,offset:a,text:o}=this.state,s=Math.min(r,On.MAX_VISIBLE_ITEMS)*qn.DEFAULT_ROW_HEIGHT+11,l=j.isNumberType(e.type)?"number":"text";return c.jsxs("div",{className:"iris-grid-partition-selector-search",children:[c.jsx("div",{className:"search-container",children:c.jsx("input",{type:l,ref:u=>{this.searchInput=u},value:o,placeholder:"Available Partitions",onChange:this.handleTextChange,onKeyDown:this.handleKeyDown,className:"form-control input-partition"})}),!t&&r>0&&c.jsx("div",{className:"iris-grid-partition-selector-search-list",onKeyDown:this.handleListKeydown,role:"presentation",style:{height:s},children:c.jsx(qn,{ref:u=>{this.itemList=u},itemCount:r,items:i,offset:a,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange})}),!t&&r===0&&c.jsx("div",{className:"iris-grid-partition-selector-search-empty",children:"No results"}),t&&c.jsxs("div",{className:"iris-grid-partition-selector-loading",children:[c.jsx(rn,{className:"loading-spinner-vertical-align"})," Loading..."]})]})}}kr(On,"MAX_VISIBLE_ITEMS",12);kr(On,"defaultProps",{initialPageSize:100,onSelect:()=>{},onListResized:()=>{}});kr(On,"propTypes",{getFormattedString:se.func.isRequired,table:se.shape({addEventListener:se.func.isRequired,removeEventListener:se.func.isRequired,columns:se.arrayOf(se.shape({name:se.string.isRequired,type:se.string.isRequired,filter:se.func.isRequired})),size:se.number.isRequired,applyFilter:se.func.isRequired,setViewport:se.func.isRequired}).isRequired,initialPageSize:se.number,onSelect:se.func,onListResized:se.func});const Lb=On;function xl(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function La(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){xl(a,r,i,o,s,"next",l)}function s(l){xl(a,r,i,o,s,"throw",l)}o(void 0)})}}function Gn(n,e,t){return e=jb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jb(n){var e=kb(n,"string");return typeof e=="symbol"?e:String(e)}function kb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,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=ye.module("IrisGridPartitionSelector"),_b=250;class ju extends D.Component{constructor(e){super(e),Gn(this,"tableUtils",void 0),Gn(this,"searchMenu",void 0),Gn(this,"selectorSearch",void 0),Gn(this,"debounceUpdate",Jt(()=>{this.sendUpdate()},_b)),this.handleCloseClick=this.handleCloseClick.bind(this),this.handleIgnoreClick=this.handleIgnoreClick.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this),this.handlePartitionListResized=this.handlePartitionListResized.bind(this),this.handleSearchOpened=this.handleSearchOpened.bind(this),this.handleSearchClosed=this.handleSearchClosed.bind(this);var{dh:t,columns:r,partitions:i}=e;this.tableUtils=new j(t),this.searchMenu=r.map(()=>null),this.selectorSearch=r.map(()=>null),this.state={partitions:i,partitionTables:null}}componentDidMount(){var e=this;return La(function*(){var{columns:t,table:r}=e.props,{partitions:i}=e.state,a=yield Promise.all(t.map(function(){var o=La(function*(s,l){return r.selectDistinct(t.slice(0,l+1))});return function(s,l){return o.apply(this,arguments)}}()));e.updatePartitionFilters(i,a)})()}componentWillUnmount(){var{partitionTables:e}=this.state;e?.forEach(t=>t.close()),this.debounceUpdate.cancel()}handleCloseClick(){Hn.debug2("handleCloseClick"),this.sendDone()}handleIgnoreClick(){Hn.debug2("handleIgnoreClick"),this.sendFetchAll()}handlePartitionChange(e,t){Hn.debug2("handlePartitionChange");var{columns:r}=this.props,{partitions:i,partitionTables:a}=this.state,{value:o}=t.target,s=[...i];s[e]=j.isCharType(r[e].type)&&o.length>0?o.charCodeAt(0).toString():o,a&&this.updatePartitionFilters(s,a),this.setState({partitions:s}),this.debounceUpdate()}handlePartitionSelect(e,t){var{partitions:r,partitionTables:i}=this.state,a=this.searchMenu[e];a&&a.closeMenu();var o=[...r];o[e]=t,i&&this.updatePartitionFilters(o,i),this.setState({partitions:o},()=>{this.sendUpdate()})}handlePartitionListResized(e){var t=this.searchMenu[e];t&&t.scheduleUpdate()}handleSearchClosed(){var{table:e}=this.props;e.applyFilter([])}handleSearchOpened(e){var t=this.selectorSearch[e];t&&t.focus()}sendDone(){this.debounceUpdate.flush();var{onDone:e}=this.props;e()}sendUpdate(){Hn.debug2("sendUpdate");var{onChange:e}=this.props,{partitions:t}=this.state;e(t)}sendFetchAll(){Hn.debug2("sendFetchAll"),this.debounceUpdate.cancel();var{onFetchAll:e}=this.props;e()}getDisplayValue(e,t){var{partitions:r}=this.state,i=r[t];return i==null?"":j.isCharType(e.type)&&i.toString().length>0?String.fromCharCode(parseInt(i,10)):Re.convertValueToText(i,e.type)}updatePartitionFilters(e,t){var r=this;return La(function*(){for(var i,{columns:a,getFormattedString:o}=r.props,s=[],l=0;l<a.length-1;l+=1){var u,d=e[l],h=a[l];if((u=t[l])===null||u===void 0||u.applyFilter(s),d!==null&&!(j.isCharType(h.type)&&d==="")){var v=j.isCharType(h.type)?o(d,h.type,h.name):d,m=r.tableUtils.makeQuickFilterFromComponent(h,v);m!==null&&s.push(m)}}(i=t[t.length-1])===null||i===void 0||i.applyFilter(s),r.setState({partitionTables:t})})()}render(){var{columns:e,dh:t,getFormattedString:r,onDone:i}=this.props,{partitionTables:a}=this.state,o=e.map((l,u)=>a&&c.jsx(Lb,{dh:t,column:l,getFormattedString:r,table:a[u],onSelect:d=>this.handlePartitionSelect(u,d),onListResized:()=>this.handlePartitionListResized(u),ref:d=>{this.selectorSearch[u]=d}},"search-".concat(l.name))),s=e.map((l,u)=>{var d;return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"status-message",children:c.jsxs("span",{children:[l.name,": "]})}),c.jsxs("div",{className:"input-group",children:[c.jsx("input",{type:"text",value:this.getDisplayValue(l,u),onChange:h=>{this.handlePartitionChange(u,h)},className:"form-control input-partition"}),c.jsx("div",{className:"input-group-append",children:c.jsxs("button",{type:"button",className:"btn btn-outline-primary",children:[c.jsx(le,{icon:no}),c.jsx(_t,{children:"Partitions"}),c.jsx(iu,{ref:h=>{this.searchMenu[u]=h},actions:[{menuElement:(d=o[u])!==null&&d!==void 0?d:void 0}],onMenuOpened:()=>{this.handleSearchOpened(u)},onMenuClosed:this.handleSearchClosed})]})})]}),c.jsx("div",{className:"iris-grid-partition-selector-spacer"})]})});return c.jsxs("div",{className:"iris-grid-partition-selector",children:[s,c.jsx("button",{type:"button",className:"btn btn-outline-primary btn-ignore",onClick:this.handleIgnoreClick,children:"Ignore & Fetch All"}),c.jsx("button",{type:"button",className:"btn btn-link btn-link-icon btn-close",onClick:i,children:c.jsx(le,{icon:Ki})})]})}}Gn(ju,"defaultProps",{onChange:()=>{},onFetchAll:()=>{},onDone:()=>{},partitions:[]});const Hb=ju;function Bb(n,e,t){return e=Vb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vb(n){var e=Ub(n,"string");return typeof e=="symbol"?e:String(e)}function Ub(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var $b=ye.module("SelectDistinctBuilder");class ku extends D.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var{model:t,selectDistinctColumns:r}=this.props;this.state={inputs:r.length>0?[...r]:[""],columns:t.originalColumns}}componentDidUpdate(e,t){var{inputs:r}=this.state,{onChange:i}=this.props;if(t.inputs!==r){var a=r.filter(o=>o!=="");nt(t.inputs.filter(o=>o!==""),a)||i(a)}}handleAddColumnClick(){this.setState(e=>{var{inputs:t}=e;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var{inputs:r}=t;return{inputs:r.length===1&&e===0?[""]:r.filter((i,a)=>e!==a)}})}handleDropdownChanged(e,t){$b.debug("handleDropdownChanged",e,t);var{value:r}=t.target;this.setState(i=>{var{inputs:a}=i,o=[...a];return o[e]=r,{inputs:o}})}renderInputs(){var{columns:e,inputs:t}=this.state;return t.map((r,i)=>{var a=e.filter(o=>{var{name:s}=o;return s===r||!t.includes(s)}).map(o=>{var{name:s}=o;return c.jsx("option",{value:s,children:s},s)});return c.jsxs("div",{className:"form-inline px-3 pb-3",children:[c.jsxs("select",{className:"form-control custom-select col",value:r,onChange:o=>this.handleDropdownChanged(i,o),children:[c.jsx("option",{value:"",children:"Select a column"}),a]}),(t.length>1||r!=="")&&c.jsx(Z,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(i)},icon:c.jsx(le,{icon:Vr,transform:"grow-3"}),tooltip:"Delete column"})]},i)})}render(){var{columns:e,inputs:t}=this.state,r=t.length>=e.length;return c.jsxs("div",{role:"presentation",className:"select-distinct-builder-container h-100",children:[c.jsx("div",{className:"select-distinct-title",children:"Display Unique Values From"}),this.renderInputs(),c.jsx("hr",{}),c.jsx("div",{className:"pt-1 px-3",children:c.jsx(Z,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:r,icon:En,children:"Add Additional Column"})}),c.jsx("div",{className:"select-distinct-builder-footer",children:c.jsx("div",{className:"select-distinct-builder-hint",children:"Display only unique values from the selected table columns. Note that this will reset any filters and display only the selected columns."})})]})}}Bb(ku,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});const Gb=ku;function Po(n){var{items:e,onChange:t=()=>{}}=n;return c.jsx(uu,{items:Array.from(e.entries()).map(r=>{var[i,a]=r;return{title:Po.getAdvancedSettingsTitleForKey(i),isOn:a,onChange:o=>t(i,o)}})})}Po.getAdvancedSettingsTitleForKey=n=>{switch(n){case Tn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case Tn.LINK_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from an incoming link filter"}};function Ml(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 fn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ml(Object(t),!0).forEach(function(r){Wb(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ml(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Wb(n,e,t){return e=zb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function zb(n){var e=Kb(n,"string");return typeof e=="symbol"?e:String(e)}function Kb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ll=ye.module("ConditionalFormattingMenu"),ja=()=>{};function Yb(n){var{column:{type:e}}=n;if(j.isNumberType(e))return n.condition===ae.IS_NULL||n.condition===ae.IS_NOT_NULL?"":"".concat(n.value);if(j.isCharType(e))return n.condition===ce.IS_NULL||n.condition===ce.IS_NOT_NULL?"":"".concat(n.value);if(j.isStringType(e))return n.condition===me.IS_NULL||n.condition===me.IS_NOT_NULL?"":'"'.concat(n.value,'"');if(j.isDateType(e))return n.condition===ce.IS_NULL||n.condition===ce.IS_NOT_NULL?"":"".concat(n.value);if(j.isBooleanType(e))return"";throw new Error("Invalid column type ".concat(e," in getRuleValue"))}function Xb(n){return j.isNumberType(n.column.type)&&n.condition===ae.IS_BETWEEN?"".concat(n.start," < ").concat(n.column.name," < ").concat(n.end):"".concat(n.column.name," ").concat(Wm(n.column.type,n.condition),`
|
|
13
13
|
`).concat(Yb(n))}function qb(n){var{rules:e=[],onChange:t=ja,onCreate:r=ja,onSelect:i=ja}=n,a=D.useCallback((u,d,h)=>{u.stopPropagation(),Ll.debug("Rule clicked",d,h),i(h)},[i]),o=D.useCallback((u,d,h)=>{u.stopPropagation(),Ll.debug("Delete button clicked",d,h);var v=[...e];v.splice(h,1),t(v)},[t,e]),s=D.useCallback(u=>{u.stopPropagation()},[]),l=D.useCallback(u=>{if(Qt.stopDragging(),u.destination!=null){var d=u.source.index,h=u.destination.index,v=[...e],m=e[d];v.splice(d,1),v.splice(h,0,m),t(v)}},[t,e]);return c.jsxs("div",{className:"conditional-formatting-rules",children:[c.jsx(Wi,{onDragStart:Qt.startDragging,onDragEnd:l,children:c.jsx(Gi,{droppableId:"droppable-custom-columns",children:(u,d)=>c.jsxs("div",fn(fn({ref:u.innerRef},u.droppableProps),{},{className:Q("droppable-container",{dragging:d.draggingFromThisWith}),children:[e.length===0&&c.jsx("div",{className:"text-muted pl-2",children:"No formats defined"}),e.map((h,v)=>c.jsx(ro,{draggableId:"".concat(v,"-").concat(h.type),index:v,disableInteractiveElementBlocking:!0,children:(m,g)=>c.jsx("div",fn(fn({role:"menuitem",tabIndex:0,onClick:f=>a(f,h,v),className:Q("draggable-container",{dragging:g.isDragging}),ref:m.innerRef},m.draggableProps),{},{children:c.jsx("div",{className:"conditional-formatting-list-item",children:c.jsxs("div",{className:"formatting-item",children:[c.jsx("div",{className:"rule-icon",children:c.jsx("span",{className:"rule-icon-bg",style:{backgroundColor:_i(h.config.style),color:Hi(h.config.style)},children:h.type===Et.ROWS?"row":"col"})}),c.jsx("div",{className:"rule-title",children:Xb(h.config)}),c.jsx(Z,{kind:"ghost",className:"ml-1 px-2",onClick:f=>o(f,h,v),icon:Vr,tooltip:"Delete rule"}),c.jsxs("button",fn(fn({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:s},m.dragHandleProps),{},{children:[c.jsx(_t,{children:"Drag to re-order"}),c.jsx(le,{icon:zi})]}))]})})}))},"".concat(v,"-").concat(h.type))),u.placeholder]}))})}),c.jsx("hr",{}),c.jsx(Z,{kind:"ghost",onClick:r,icon:En,children:"Add New Rule"})]})}var zr=ye.module("ConditionEditor"),Qb=()=>{},Zb=[ae.IS_EQUAL,ae.IS_NOT_EQUAL,ae.IS_BETWEEN,ae.GREATER_THAN,ae.GREATER_THAN_OR_EQUAL,ae.LESS_THAN,ae.LESS_THAN_OR_EQUAL,ae.IS_NULL,ae.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Fm(n)},n)),Jb=[me.IS_EXACTLY,me.IS_NOT_EXACTLY,me.CONTAINS,me.DOES_NOT_CONTAIN,me.STARTS_WITH,me.ENDS_WITH,me.IS_NULL,me.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Im(n)},n)),ew=[ce.IS_EXACTLY,ce.IS_NOT_EXACTLY,ce.IS_BEFORE,ce.IS_BEFORE_OR_EQUAL,ce.IS_AFTER,ce.IS_AFTER_OR_EQUAL,ce.IS_NULL,ce.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Am(n)},n)),tw=[Ye.IS_TRUE,Ye.IS_FALSE,Ye.IS_NULL,Ye.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:xm(n)},n)),rw=[Ve.IS_EQUAL,Ve.IS_NOT_EQUAL,Ve.IS_NULL,Ve.IS_NOT_NULL].map(n=>c.jsx("option",{value:n,children:Mm(n)},n));function nw(n,e,t,r){return n===ae.IS_NULL||n===ae.IS_NOT_NULL||n===ae.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&r!=null&&r!==""&&!Number.isNaN(Number.parseFloat(r))||n!==ae.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function iw(n,e,t,r,i,a,o){switch(n){case ae.IS_EQUAL:case ae.IS_NOT_EQUAL:case ae.GREATER_THAN:case ae.GREATER_THAN_OR_EQUAL:case ae.LESS_THAN:case ae.LESS_THAN_OR_EQUAL:return c.jsx("input",{type:"number",className:"form-control",placeholder:"Enter value",value:i??"",onChange:e});case ae.IS_BETWEEN:return c.jsxs("div",{className:"d-flex flex-row",children:[c.jsx("input",{type:"number",className:"form-control d-flex mr-2",placeholder:"Start value",value:a??"",onChange:t}),c.jsx("input",{type:"number",className:"form-control d-flex",placeholder:"End value",value:o??"",onChange:r})]});case ae.IS_NULL:case ae.IS_NOT_NULL:return null}}function aw(n,e,t){switch(n){case me.IS_NULL:case me.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function ow(n,e,t){switch(n){case ce.IS_NULL:case ce.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function sw(){return null}function lw(n,e,t){switch(n){case Ve.IS_NULL:case Ve.IS_NOT_NULL:return null;default:return c.jsx("input",{type:"text",className:"form-control",maxLength:1,placeholder:"Enter value",value:t??"",onChange:e})}}function _u(n){var{column:e,config:t,dh:r,onChange:i=Qb}=n,a=e.type,[o,s]=D.useState(a),[l,u]=D.useState(t.condition),[d,h]=D.useState(t.value),[v,m]=D.useState(t.start),[g,f]=D.useState(t.end);a!==o&&(u(bu(a)),h(wu(a)),m(void 0),f(void 0),s(a));var p=D.useMemo(()=>{if(a===void 0)return[];if(j.isNumberType(a))return Zb;if(j.isCharType(a))return rw;if(j.isStringType(a))return Jb;if(j.isDateType(a))return ew;if(j.isBooleanType(a))return tw},[a]),C=D.useCallback(y=>{var{value:O}=y.target;zr.debug("handleConditionChange",O),u(O)},[]),b=D.useCallback(y=>{var{value:O}=y.target;zr.debug("handleValueChange",O),h(O)},[]),w=D.useCallback(y=>{var{value:O}=y.target;zr.debug("handleStartValueChange",O),m(O)},[]),S=D.useCallback(y=>{var{value:O}=y.target;zr.debug("handleEndValueChange",O),f(O)},[]);D.useEffect(function(){var O=!0;l===void 0?(zr.debug("Unable to create formatting rule. Condition is not selected."),O=!1):j.isNumberType(e.type)&&!nw(l,d,v,g)?(zr.debug("Unable to create formatting rule. Invalid value",d),O=!1):j.isDateType(e.type)&&!Km(r,l,d)&&(zr.debug("Unable to create formatting rule. Invalid date condition",d),O=!1),i({condition:l,value:d,start:v,end:g},O)},[i,e.type,r,l,d,v,g]);var T=D.useMemo(()=>{if(a===void 0)return null;if(j.isNumberType(a))return iw(l,b,w,S,d,v,g);if(j.isCharType(a))return lw(l,b,d);if(j.isStringType(a))return aw(l,b,d);if(j.isDateType(a))return ow(l,b,d);if(j.isBooleanType(a))return sw()},[a,l,d,v,g,b,w,S]);return c.jsxs("div",{className:"condition-editor mb-2",children:[c.jsx("select",{value:l,"data-testid":"condition-select",className:"custom-select mb-2",onChange:C,children:p}),T]})}var uw=ye.module("StyleEditor"),dw="#fcfcfa",hw="#f0f0ee",cw="#1a171a",vw=200,mw=()=>{};function Hu(n){var e,t,{config:r,onChange:i=mw}=n,[a,o]=D.useState(r.type),[s,l]=D.useState((e=(t=r.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:dw),[u,d]=D.useState(!1),[h,v]=D.useState(vw),m=D.useRef(null),g=D.useCallback(T=>{var{value:y}=T.target;uw.debug("handleBackgroundChange",y),l(y)},[]),f=D.useCallback(()=>{u&&d(!1)},[u]),p=D.useCallback(()=>{u||b(),d(!u)},[u]),C=D.useMemo(()=>[fe.NO_FORMATTING,fe.POSITIVE,fe.NEGATIVE,fe.WARN,fe.NEUTRAL,fe.ACCENT_1,fe.ACCENT_2,fe.CUSTOM],[]);function b(){m.current&&v(m.current.getBoundingClientRect().width)}D.useEffect(function(){i({type:a,customConfig:{color:Jl.isDark(s)?hw:cw,background:s}})},[i,a,s]);var w=D.useCallback(()=>{for(var T=[],y=function(){var E=C[O],P="option-".concat(O,"-").concat(E);T.push(c.jsxs(Z,{kind:"inline",className:"style-option-btn",onClick:()=>{o(E),d(!1)},style:{color:Hi({type:E}),background:_i({type:E})},children:[E===a&&c.jsx(le,{icon:xi,className:"mr-2"}),E!==a&&c.jsx("span",{className:"mr-4"}),Ps(E)]},P))},O=0;O<C.length;O+=1)y();return T},[C,a]),S=D.useCallback(()=>c.jsx("div",{className:"style-menu-container",role:"presentation",style:{width:h},children:c.jsx("div",{className:"style-options",children:w()})}),[h,w]);return c.jsxs("div",{className:"style-editor",children:[c.jsxs("div",{className:"mb-2",ref:m,children:[c.jsx("label",{className:"mb-0",children:"Style"}),c.jsxs(Z,{kind:"inline",className:"cs-dropdown",style:{color:Hi({type:a}),background:_i({type:a})},onClick:p,children:[Ps(a),c.jsx("span",{children:c.jsx(le,{icon:eh,className:"cs-caret"})}),c.jsx(iu,{isShown:u,actions:{menuElement:S()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:f,menuStyle:{maxWidth:"100rem"}})]})]}),a===fe.CUSTOM&&c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Background"}),c.jsx("input",{type:"color",value:s,className:"custom-select color-select",onChange:g})]})]})}function jl(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 Bu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?jl(Object(t),!0).forEach(function(r){gw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):jl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gw(n,e,t){return e=fw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fw(n){var e=pw(n,"string");return typeof e=="symbol"?e:String(e)}function pw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Bn=ye.module("ColumnFormatEditor"),Cw=()=>{};function bw(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=Bu({column:r,style:yu()},Zi(e));return i}function ww(n){var e,{columns:t,config:r=bw(t),dh:i,onChange:a=Cw}=n,[o,s]=D.useState((e=t.find(b=>b.name===r.column.name&&b.type===r.column.type))!==null&&e!==void 0?e:t[0]),[l,u]=D.useState(Su(r)),[d,h]=D.useState(!1),[v,m]=D.useState(r.style),g=D.useCallback(b=>{var w=t.find(S=>{var{name:T}=S;return T===b});w!==void 0?(s(w),o.type!==w.type&&(u(Zi(w.type)),h(!1))):Bn.error("Column ".concat(b," not found."))},[t,o]),f=D.useCallback((b,w)=>{Bn.debug("handleConditionChange",b,w),u(b),h(w)},[]),p=D.useCallback(b=>{Bn.debug("handleStyleChange",b),m(b)},[]);D.useEffect(function(){var w=d;o===void 0&&(Bn.debug("Column is not selected, invalidating update."),w=!1),(v===void 0||v.type===fe.NO_FORMATTING)&&(Bn.debug("Style is not selected, invalidating update."),w=!1);var{type:S,name:T}=o,y={type:S,name:T};a(Bu({column:y,style:v},l),w)},[a,o,v,l,d]);var C=t.map(b=>{var{name:w}=b;return{title:w,value:w}});return c.jsxs("div",{className:"conditional-rule-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Format Cell If"}),c.jsx(au,{defaultValue:o?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:g,searchPlaceholder:"Filter columns"})]}),o!==void 0&&c.jsxs(c.Fragment,{children:[c.jsx(_u,{dh:i,column:o,config:l,onChange:f}),c.jsx(Hu,{config:v,onChange:p})]})]})}function kl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Vu(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?kl(Object(t),!0).forEach(function(r){Sw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):kl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Sw(n,e,t){return e=yw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function yw(n){var e=Tw(n,"string");return typeof e=="symbol"?e:String(e)}function Tw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Vn=ye.module("RowFormatEditor"),Ew=()=>{};function Ow(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=Vu({column:r,style:yu()},Zi(e));return i}function Rw(n){var e,{columns:t,config:r=Ow(t),dh:i,onChange:a=Ew}=n,[o,s]=D.useState((e=t.find(b=>b.name===r.column.name&&b.type===r.column.type))!==null&&e!==void 0?e:t[0]),[l,u]=D.useState(Su(r)),[d,h]=D.useState(!1),[v,m]=D.useState(r.style),g=D.useCallback(b=>{var w=t.find(S=>{var{name:T}=S;return T===b});w!==void 0?(s(w),o.type!==w.type&&(u(Zi(w.type)),h(!1))):Vn.error("Column ".concat(b," not found."))},[t,o]),f=D.useCallback((b,w)=>{Vn.debug("handleConditionChange",b,w),u(b),h(w)},[]),p=D.useCallback(b=>{Vn.debug("handleStyleChange",b),m(b)},[]);D.useEffect(function(){if(o===void 0){Vn.debug("Column is not selected, skip update.");return}if(v===void 0){Vn.debug("Style is not selected, skip update.");return}var{type:w,name:S}=o,T={type:w,name:S};a(Vu({column:T,style:v},l),d)},[a,o,v,l,d]);var C=t.map(b=>{var{name:w}=b;return{title:w,value:w}});return c.jsxs("div",{className:"conditional-rule-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",children:"Format Row If"}),c.jsx(au,{defaultValue:o?.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:g,searchPlaceholder:"Filter columns"})]}),o!==void 0&&c.jsxs(c.Fragment,{children:[c.jsx(_u,{column:o,config:l,dh:i,onChange:f}),c.jsx(Hu,{config:v,onChange:p})]})]})}var ka=ye.module("ConditionalFormatEditor"),_a=()=>{};function Dw(n){switch(n){case Et.CONDITIONAL:return c.jsx(qp,{});case Et.ROWS:return c.jsx(eC,{})}}function Nw(n){switch(n){case Et.CONDITIONAL:return"Conditional";case Et.ROWS:return"Rows"}}var _l=[Et.CONDITIONAL,Et.ROWS];function Pw(n){var e,{columns:t,dh:r,onSave:i=_a,onUpdate:a=_a,onCancel:o=_a,rule:s}=n,l=t.filter(Ym),[u,d]=D.useState((e=s?.type)!==null&&e!==void 0?e:_l[0]),[h,v]=D.useState(s),[m,g]=D.useState(!1),f=D.useCallback(()=>{o()},[o]),p=D.useCallback(()=>{if(h===void 0){ka.error("Rule is not defined.");return}i(h)},[i,h]),C=D.useCallback(w=>{ka.debug("handleFormatterChange",w),d(w)},[]),b=D.useCallback((w,S)=>{ka.debug("handleRuleChange",w,S,u);var T={type:u,config:w};v(T),g(S),a(S?T:void 0)},[a,u]);return c.jsxs("div",{className:"conditional-format-editor form",children:[c.jsxs("div",{className:"mb-2",children:[c.jsx("label",{className:"mb-0",htmlFor:"formatter-select",children:"Select Formatter"}),c.jsx("div",{className:"formatter-list",children:_l.map((w,S)=>c.jsx("div",{className:"formatter-type",children:c.jsxs("button",{type:"button",className:Q("btn","btn-icon","btn-formatter-type",{active:w===u}),"data-index":S,onClick:()=>C(w),children:[Dw(w),Nw(w)]})},w))})]}),u===Et.CONDITIONAL&&c.jsx(ww,{columns:l,dh:r,config:h?.config,onChange:b}),u===Et.ROWS&&c.jsx(Rw,{columns:l,config:h?.config,dh:r,onChange:b}),c.jsx("hr",{}),c.jsxs("div",{className:"d-flex justify-content-end my-3",children:[c.jsx(Z,{kind:"secondary",onClick:f,className:"mr-2",children:"Cancel"}),c.jsx(Z,{kind:"primary",onClick:p,disabled:h===void 0||!m,children:"Done"})]})]})}function Fw(n){var e,t,{text:r,isOpen:i,onClose:a}=n,[o,s]=D.useState(!1),[l,u]=D.useState(0),[d,h]=D.useState(!1),[v,m]=D.useState(!1),[g,f]=D.useState(!1),p=D.useRef();D.useEffect(function(){if(i){try{JSON.parse(r),f(!0)}catch{f(!1)}m(!1)}},[i,r]),D.useEffect(function(){p.current&&p.current.layout()},[l]),D.useEffect(function(){p.current&&p.current.updateOptions({lineNumbers:d?"on":"off"})},[d]);function C(){h(!d)}function b(){var y,O=(y=p.current)===null||y===void 0?void 0:y.getModel();!g||!O||(v?(O.setValue(r),m(!1)):(O.setValue(JSON.stringify(JSON.parse(r),void 0,2)),m(!0)),w())}function w(){var y,O,R=p.current;R&&h(((y=(O=R.getModel())===null||O===void 0?void 0:O.getLineCount())!==null&&y!==void 0?y:0)>1)}function S(){o&&(p.current=void 0,a())}function T(y){p.current=y,u(y.getContentHeight()),y.onDidContentSizeChange(O=>{var{contentHeight:R}=O;return u(R)}),w()}return!i&&!o?null:c.jsxs(th,{isOpen:i,centered:!0,keyboard:!0,toggle:S,onOpened:()=>s(!0),onClosed:()=>{s(!1),u(0)},className:"theme-bg-dark cell-overflow-modal",size:"xl",children:[c.jsxs(rh,{toggle:a,children:[c.jsx("h5",{className:"overflow-modal-title",children:"Cell Contents"}),c.jsx(nu,{kind:"inline",tooltip:"Copy cell contents",copy:(e=(t=p.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:r}),c.jsx(Z,{kind:"inline",active:d,icon:nh,tooltip:"Toggle line numbers",onClick:C}),g&&c.jsx(Z,{kind:"inline",icon:ih,active:v,tooltip:"Format as JSON",onClick:b})]}),c.jsx(ah,{style:{height:l},children:c.jsx(Dh,{onEditorInitialized:T,settings:{value:r,readOnly:!0,wordWrap:"on",language:g?"typescript":"plaintext",folding:g,padding:{bottom:16},lineNumbers:d?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})})]})}function Iw(n){return n.model!==void 0}var Aw="###,##0",Uu=D.forwardRef((n,e)=>{var{gotoRow:t,gotoRowError:r,gotoValueError:i,onGotoRowSubmit:a,isShown:o,onEntering:s,onEntered:l,onExiting:u,onExited:d,model:h,onGotoRowNumberChanged:v,onClose:m,gotoValueSelectedColumnName:g,gotoValue:f,gotoValueFilter:p,onGotoValueSelectedColumnNameChanged:C,onGotoValueSelectedFilterChanged:b,onGotoValueChanged:w,onGotoValueSubmit:S}=n,T=D.useRef(null),y=D.useRef(null),[O,R]=D.useState(!1),E=[];Iw(h)&&h.table!==void 0&&({columns:E}=h.table);var{dh:P,rowCount:x}=h,I=D.useMemo(()=>"goto-row-input-".concat(lr()),[]),N=A=>{A.key==="Enter"?(A.stopPropagation(),A.preventDefault(),S()):(A.key==="Backspace"||A.key==="Delete")&&(f==="".concat(Number.POSITIVE_INFINITY)||f==="".concat(Number.NEGATIVE_INFINITY))&&z("")},L=A=>{A.key==="Enter"&&(A.stopPropagation(),A.preventDefault(),S(A.shiftKey))},F=h.getColumnIndexByName(g),k=E[F??0],H=k?.type,W=j.getNormalizedType(H),z=A=>{w(A??"")};D.useImperativeHandle(e,()=>({focus(){var A;R(!0),(A=T.current)===null||A===void 0||A.select()}}));var Y=()=>{if(O&&document.activeElement!==T.current){var A;(A=T.current)===null||A===void 0||A.select()}else if(!O&&document.activeElement!==y.current){var U;(U=y.current)===null||U===void 0||U.select()}};D.useEffect(Y,[O]);var $=()=>{switch(W){case j.dataType.DECIMAL:case j.dataType.INT:return c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:y,className:Q("form-control",{"is-invalid":i!==""}),onKeyDown:N,placeholder:"value",onChange:A=>{var U=A.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(A.target.value)?z(A.target.value):U==="-i"||U==="-infinity"?z("".concat(Number.NEGATIVE_INFINITY)):(U==="i"||U==="infinity")&&z("".concat(Number.POSITIVE_INFINITY))},value:f,"aria-label":"Value Input"})});case j.dataType.DATETIME:return c.jsx("div",{className:"goto-value-date-time-input",children:c.jsx(Yh,{ref:y,className:Q("form-control","goto-value-date-time-input",{"is-invalid":i!==""}),defaultValue:f,onChange:z,onSubmit:L,"aria-label":"Value Input"})});case j.dataType.STRING:return c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"goto-row-input",children:c.jsxs("select",{className:"custom-select",onChange:A=>{b(A.target.value)},value:p,"aria-label":"filter-type-select",children:[c.jsx("option",{value:pe.eqIgnoreCase,children:"Equals (case-insensitive)"},pe.eqIgnoreCase),c.jsx("option",{value:pe.containsIgnoreCase,children:"Contains (case-insensitive)"},pe.containsIgnoreCase),c.jsx("option",{value:pe.eq,children:"Equals"},pe.eq),c.jsx("option",{value:pe.contains,children:"Contains"},pe.contains)]})}),c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:y,className:Q("form-control",{"is-invalid":i!==""}),onKeyDown:L,placeholder:"value",onChange:A=>z(A.target.value),value:f,"aria-label":"Value Input"})})]});case j.dataType.BOOLEAN:return c.jsx("div",{className:"goto-row-input",children:c.jsxs("select",{className:"custom-select",onChange:A=>{z(A.target.value)},value:f,"aria-label":"Value Input",children:[c.jsx("option",{"aria-label":"null value",value:""},"null"),c.jsx("option",{value:"true",children:"true"},"true"),c.jsx("option",{value:"false",children:"false"},"false")]})});default:return c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:y,className:"form-control",onKeyDown:L,placeholder:"value",onChange:A=>z(A.target.value),value:f,"aria-label":"Value Input"})})}};return c.jsx(Ji,{isShown:o,className:Q("goto-row"),onEntering:s,onEntered:()=>{l(),Y()},onExiting:u,onExited:d,children:c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"goto-row-row",children:[c.jsxs("div",{className:Q("goto-row-wrapper",{"is-inactive":!O}),onClick:()=>R(!0),onFocus:()=>R(!0),role:"group",children:[c.jsx("label",{className:"goto-row-text",htmlFor:I,children:"Go to row"}),c.jsx("div",{className:"goto-row-input",children:c.jsx("input",{ref:T,"data-testid":"goto-row-input",type:"number",onKeyDown:A=>{A.key==="Enter"&&(A.stopPropagation(),A.preventDefault(),a())},className:Q("form-control",{"is-invalid":r!==""}),placeholder:"Row number",onChange:A=>{v(A)},value:t,id:I})}),c.jsxs("div",{className:"goto-row-text",children:["of"," ",P.i18n.NumberFormat.format(Aw,x)]}),r&&c.jsx("div",{className:"text-danger",children:r})]}),c.jsx("div",{className:"goto-row-close",children:c.jsx(Z,{kind:"ghost",onClick:m,children:c.jsx(le,{icon:Ki,style:{marginRight:"0"}})})})]}),h.isSeekRowAvailable&&c.jsx("div",{className:"goto-row-row",children:c.jsxs("div",{className:Q("goto-row-wrapper",{"is-inactive":O}),onClick:()=>R(!1),onFocus:()=>R(!1),role:"group",children:[c.jsx("div",{className:"goto-row-text",children:"Go to value"}),c.jsx("div",{className:"goto-row-input",children:c.jsx("select",{className:"custom-select",onChange:A=>{var U=A.target.value;C(U)},value:g,"aria-label":"column-name-select",children:E.map(A=>c.jsx("option",{value:A.name,children:A.name},A.name))})}),$(),c.jsxs("div",{children:[c.jsx(Z,{tooltip:"Next match",icon:oh,kind:"ghost",disabled:f==="",onClick:()=>{S(!0)}}),c.jsx(Z,{tooltip:"Previous match",icon:sh,kind:"ghost",disabled:f==="",onClick:()=>{S(!1)}})]}),i&&c.jsx("div",{className:"text-danger",children:i})]})})]})})});Uu.displayName="GotoRow";const xw=Uu;function Hl(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function Ri(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Hl(a,r,i,o,s,"next",l)}function s(l){Hl(a,r,i,o,s,"throw",l)}o(void 0)})}}function Bl(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 st(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Bl(Object(t),!0).forEach(function(r){ie(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Bl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ie(n,e,t){return e=Mw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mw(n){var e=Lw(n,"string");return typeof e=="symbol"?e:String(e)}function Lw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,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=ye.module("IrisGrid"),jw=500,kw=250,_w=250,Hw=250,$u=Object.freeze({aggregations:Se,showOnTop:!1}),Bw="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function Vl(n){var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:s,selectDistinctColumns:l,sorts:u}=n;return e.size===0&&t.aggregations.length===0&&r.length===0&&i.size===0&&a===j.REVERSE_TYPE.NONE&&o==null&&s==null&&l.length===0&&u.length===0}class or extends D.Component{constructor(e){var t,r,i,a;super(e),ie(this,"grid",void 0),ie(this,"gridWrapper",void 0),ie(this,"lastFocusedFilterBarColumn",void 0),ie(this,"lastLoadedConfig",void 0),ie(this,"tooltip",void 0),ie(this,"pending",void 0),ie(this,"globalColumnFormats",void 0),ie(this,"dateTimeFormatterOptions",void 0),ie(this,"decimalFormatOptions",void 0),ie(this,"integerFormatOptions",void 0),ie(this,"truncateNumbersWithPound",void 0),ie(this,"loadingScrimStartTime",void 0),ie(this,"loadingScrimFinishTime",void 0),ie(this,"animationFrame",void 0),ie(this,"loadingTimer",void 0),ie(this,"renderer",void 0),ie(this,"tableSaver",void 0),ie(this,"crossColumnRef",void 0),ie(this,"isAnimating",void 0),ie(this,"filterInputRef",void 0),ie(this,"gotoRowRef",void 0),ie(this,"toggleFilterBarAction",void 0),ie(this,"toggleSearchBarAction",void 0),ie(this,"toggleGotoRowAction",void 0),ie(this,"discardAction",void 0),ie(this,"commitAction",void 0),ie(this,"contextActions",void 0),ie(this,"tableUtils",void 0),ie(this,"getAdvancedMenuOpenedHandler",ge(A=>this.handleAdvancedMenuOpened.bind(this,A),{max:100})),ie(this,"getCachedAdvancedFilterMenuActions",ge((A,U,V,X,q)=>c.jsx(pp,{model:A,column:U,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:V,sortDirection:X,formatter:q,tableUtils:this.tableUtils}),{max:50})),ie(this,"getCachedOptionItems",ge((A,U,V,X,q,ne,ue,re,te,Te,Ie,tt,Qe,Ke,Ue,Ze)=>{var Pe=[];return A&&Pe.push({type:Ee.CHART_BUILDER,title:"Chart Builder",icon:lh}),Pe.push({type:Ee.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:uo}),V&&Pe.push({type:Ee.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:ao}),U&&Pe.push({type:Ee.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:uh}),X&&Pe.push({type:Ee.ROLLUP_ROWS,title:"Rollup Rows",icon:dh}),q&&Pe.push({type:Ee.AGGREGATIONS,title:"Aggregate Columns",icon:hh}),ne&&Pe.push({type:Ee.SELECT_DISTINCT,title:"Select Distinct Values",icon:ch}),ue&&Qe&&Pe.push({type:Ee.TABLE_EXPORTER,title:"Download CSV",icon:vh}),Ze&&Pe.push({type:Ee.ADVANCED_SETTINGS,title:"Advanced Settings",icon:mh}),Pe.push({type:Ee.QUICK_FILTERS,title:"Quick Filters",subtitle:re.shortcut.getDisplayText(),icon:Ai,isOn:Ie,onChange:re.action}),Ke&&Pe.push({type:Ee.SEARCH_BAR,title:"Search Bar",subtitle:te.shortcut.getDisplayText(),icon:gh,isOn:tt,onChange:te.action}),Pe.push({type:Ee.GOTO,title:"Go to",subtitle:Te.shortcut.getDisplayText(),icon:fh,isOn:Ue,onChange:Te.action}),Object.freeze(Pe)},{max:1})),ie(this,"getCachedHiddenColumns",ge((A,U)=>Re.getHiddenColumns(new Map([...A.initialColumnWidths,...U])),{max:1})),ie(this,"getAggregationMap",ge((A,U)=>{var V={};return U.forEach(X=>{var{operation:q,selected:ne,invert:ue}=X;V[q]=_r.getOperationColumnNames(A,q,ne,ue)}),V})),ie(this,"getOperationMap",ge((A,U)=>{var V={};return U.filter(X=>!_r.isRollupOperation(X.operation)).forEach(X=>{var{operation:q,selected:ne,invert:ue}=X;_r.getOperationColumnNames(A,q,ne,ue).forEach(re=>{var te,Te=[...(te=V[re])!==null&&te!==void 0?te:[],q];V[re]=Object.freeze(Te)})}),V})),ie(this,"getOperationOrder",ge(A=>A.map(U=>U.operation).filter(U=>!_r.isRollupOperation(U)))),ie(this,"getCachedFormatColumns",ge((A,U,V)=>zm(A,U,V))),ie(this,"getCachedPreviewFormatColumns",ge((A,U,V,X,q)=>{if(oe.debug("getCachedPreviewFormatColumns",V,X,q),X!==void 0&&q!==void 0){var ne=[...V];return ne[q]=X,this.getCachedFormatColumns(A,U,ne)}return this.getCachedFormatColumns(A,U,V)})),ie(this,"getModelRollupConfig",ge((A,U,V)=>Re.getModelRollupConfig(A,U,V))),ie(this,"getModelTotalsConfig",ge((A,U,V)=>{var X,q,ne,{aggregations:ue,showOnTop:re}=V;if(((X=U==null||(q=U.columns)===null||q===void 0?void 0:q.length)!==null&&X!==void 0?X:0)>0||((ne=ue?.length)!==null&&ne!==void 0?ne:0)===0)return null;var te=this.getOperationMap(A,ue),Te=this.getOperationOrder(ue);return{operationMap:te,operationOrder:Te,showOnTop:re}})),ie(this,"getCachedStateOverride",ge((A,U,V,X,q,ne,ue,re,te,Te)=>({hoverSelectColumn:A,isFilterBarShown:U,isSelectingColumn:V,loadingScrimProgress:X,quickFilters:q,advancedFilters:ne,sorts:ue,reverseType:re,rollupConfig:te,isMenuShown:Te}),{max:1})),ie(this,"getCachedFilter",ge((A,U,V,X,q)=>[...A??[],...X??[],...Re.getFiltersFromFilterMap(U),...Re.getFiltersFromFilterMap(V),...q!==void 0?[q]:[]],{max:1})),ie(this,"getCachedTheme",ge((A,U,V)=>{var X,q=tp(),ne=V>0?(X=A?.rowFooterWidth)!==null&&X!==void 0?X:q.rowFooterWidth:0;return st(st(st({},q),A),{},{autoSelectRow:!U,rowFooterWidth:ne})},{max:1})),ie(this,"getAlwaysFetchColumns",ge((A,U,V,X,q,ne)=>{for(var ue=[],re=0;re<X;re+=1)ue.push(U[K.getModelIndex(re,V)].name);for(var te=0;te<q;te+=1)ue.push(U[K.getModelIndex(U.length-1-te,V)].name);if(ne)for(var Te=ne[0];Te<=ne[1];Te+=1)ue.push(U[K.getModelIndex(Te,V)].name);var Ie=new Set([...A,...ue]);return Object.freeze([...Ie])})),ie(this,"updateSearchFilter",Jt((A,U,V,X)=>{var{model:q}=this.props,ne=Oi.createSearchFilter(q.dh,A,U,V,X);this.setState({searchFilter:ne})},kw)),ie(this,"handleConditionalFormatEditorUpdate",Jt(A=>{this.setState({conditionalFormatPreview:A})},Hw)),ie(this,"handleDownloadProgressUpdate",Ii((A,U)=>{var{tableDownloadStatus:V}=this.state;V===Wr.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:A,tableDownloadEstimatedTime:U})},jw)),ie(this,"getOverflowButtonTooltip",ge(A=>{if(A==null)return null;var U=st(st({position:"absolute"},A),{},{pointerEvents:"none"}),V={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return c.jsx("div",{style:U,children:c.jsx(_t,{options:V,ref:this.handleTooltipRef,children:"View full contents"},Date.now())})})),ie(this,"getExpandCellTooltip",ge(A=>{if(A==null)return null;var{expandTooltipDisplayValue:U}=this.state,V=st(st({position:"absolute"},A),{},{pointerEvents:"none"}),X={placement:"bottom-start"};return c.jsx("div",{style:V,children:c.jsx(_t,{options:X,ref:this.handleTooltipRef,children:c.jsxs("div",{style:{textAlign:"left"},children:["Click to ",U," row",c.jsx("br",{}),yn.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children"]})},Date.now())})})),ie(this,"getLinkHoverTooltip",ge(A=>{if(A==null)return null;var{linkHoverDisplayValue:U}=this.state,V=st(st({position:"absolute"},A),{},{pointerEvents:"none"}),X={placement:"bottom"};return c.jsx("div",{style:V,children:c.jsx(_t,{options:X,ref:this.handleTooltipRef,children:c.jsxs("div",{className:"link-hover-tooltip",children:[U," - Click once to follow.",c.jsx("br",{}),"Click and hold to select this cell."]})})})})),ie(this,"handleGotoValueChanged",A=>{this.setState({gotoValue:A}),this.debouncedSeekRow(A)}),ie(this,"debouncedSeekRow",Jt(A=>{this.seekRow(A)},_w)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.handlePendingCommitClicked=this.handlePendingCommitClicked.bind(this),this.handlePendingDiscardClicked=this.handlePendingDiscardClicked.bind(this),this.handleGotoRowSelectedRowNumberSubmit=this.handleGotoRowSelectedRowNumberSubmit.bind(this),this.focusRowInGrid=this.focusRowInGrid.bind(this),this.handleDownloadTable=this.handleDownloadTable.bind(this),this.handleDownloadTableStart=this.handleDownloadTableStart.bind(this),this.handleCancelDownloadTable=this.handleCancelDownloadTable.bind(this),this.handleDownloadCanceled=this.handleDownloadCanceled.bind(this),this.handleDownloadCompleted=this.handleDownloadCompleted.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionFetchAll=this.handlePartitionFetchAll.bind(this),this.handlePartitionDone=this.handlePartitionDone.bind(this),this.handleColumnVisibilityChanged=this.handleColumnVisibilityChanged.bind(this),this.handleColumnVisibilityReset=this.handleColumnVisibilityReset.bind(this),this.handleCrossColumnSearch=this.handleCrossColumnSearch.bind(this),this.handleRollupChange=this.handleRollupChange.bind(this),this.handleOverflowClose=this.handleOverflowClose.bind(this),this.getColumnBoundingRect=this.getColumnBoundingRect.bind(this),this.handleGotoRowSelectedRowNumberChanged=this.handleGotoRowSelectedRowNumberChanged.bind(this),this.handleGotoValueSelectedColumnNameChanged=this.handleGotoValueSelectedColumnNameChanged.bind(this),this.handleGotoValueSelectedFilterChanged=this.handleGotoValueSelectedFilterChanged.bind(this),this.handleGotoValueChanged=this.handleGotoValueChanged.bind(this),this.handleGotoValueSubmitted=this.handleGotoValueSubmitted.bind(this),this.grid=null,this.gridWrapper=null,this.lastLoadedConfig=null,this.pending=new Nh,this.globalColumnFormats=Se,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.renderer=new Bi,this.tableSaver=null,this.crossColumnRef=Ne.createRef(),this.isAnimating=!1,this.filterInputRef=Ne.createRef(),this.gotoRowRef=Ne.createRef(),this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:qt.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:qt.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:qt.TABLE.GOTO_ROW},this.discardAction={action:()=>{var{model:A}=this.props;Le(A)&&A.isEditable&&A.pendingDataMap.size>0&&this.discardPending().catch(oe.error)},shortcut:qt.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var{model:A}=this.props;Le(A)&&A.isEditable&&A.pendingDataMap.size>0&&A.pendingDataErrors.size===0&&this.commitPending().catch(oe.error)},shortcut:qt.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var{aggregationSettings:o,conditionalFormats:s,customColumnFormatMap:l,isFilterBarShown:u,isSelectingPartition:d,model:h,movedColumns:v,movedRows:m,partitions:g,partitionColumns:f,rollupConfig:p,userColumnWidths:C,userRowHeights:b,showSearchBar:w,searchValue:S,selectedSearchColumns:T,invertSearchColumns:y,advancedFilters:O,quickFilters:R,selectDistinctColumns:E,pendingDataMap:P,canCopy:x,frozenColumns:I,columnHeaderGroups:N}=e,L=[new Ng(this),new xg(this)];x&&L.push(new Tg(this));var{dh:F}=h,k=[new _g(this),new Df(this),new kf(this),new $g(this),new Yg(this),new If(this),new yf(this),new cf(this,F),new pf(this),new xf(this)],H=v.length>0?v:h.initialMovedColumns,W=m.length>0?m:h.initialMovedRows,z=new Bf({userColumnWidths:new Map(C),userRowHeights:new Map(b),movedColumns:H,initialColumnWidths:new Map(h==null||(t=h.layoutHints)===null||t===void 0||(r=t.hiddenColumns)===null||r===void 0?void 0:r.map(A=>[h.getColumnIndexByName(A),0]))}),Y=T??[],$=Oi.createSearchFilter(F,S,Y,h.columns,y);this.tableUtils=new j(F),this.state={isFilterBarShown:u,isSelectingPartition:d,focusedFilterBarColumn:null,metricCalculator:z,metrics:void 0,keyHandlers:L,mouseHandlers:k,partitions:g,partitionColumns:f,partitionTable:null,partitionFilters:[],quickFilters:R?new Map(R):new Map,advancedFilters:new Map(O),shownAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverseType:j.REVERSE_TYPE.NONE,customColumns:[],selectDistinctColumns:E,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,movedColumns:H,movedRows:W,shownColumnTooltip:null,formatter:new Hr(F),isMenuShown:!1,customColumnFormatMap:new Map(l),conditionalFormats:s,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:w,searchFilter:$,searchValue:S,selectedSearchColumns:Y,invertSearchColumns:y,rollupConfig:p,rollupSelectedColumns:[],aggregationSettings:o,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:P??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:I,showOverflowModal:!1,overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",linkHoverTooltipProps:null,linkHoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(i=(a=h.columns[0])===null||a===void 0?void 0:a.name)!==null&&i!==void 0?i:"",gotoValueSelectedFilter:pe.eqIgnoreCase,gotoValue:"",columnHeaderGroups:N??h.initialColumnHeaderGroups}}componentDidMount(){var{partitionColumns:e,model:t}=this.props,r=e.length?e:t.columns.filter(i=>i.isPartitionColumn);t.isFilterRequired&&t.isValuesTableAvailable&&r.length?this.loadPartitionsTable(r):this.initState(),this.startListening(t)}componentDidUpdate(e){var{inputFilters:t,isSelectingColumn:r,settings:i,model:a,customFilters:o,sorts:s}=this.props;a!==e.model&&(this.stopListening(e.model),this.startListening(a));var l=t!==e.inputFilters?t.filter(g=>!e.inputFilters.includes(g)):[];if(l.length>0){var u,{advancedSettings:d}=this.props,h=(u=d.get(Tn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&u!==void 0?u:!1;h&&(this.clearGridInputField(),this.clearCrossColumSearch()),this.startLoading("Filtering...",!0),this.applyInputFilters(l,h)}r!==e.isSelectingColumn&&this.resetColumnSelection(),i!==e.settings&&this.updateFormatterSettings(i),o!==e.customFilters&&this.startLoading("Filtering...",!0),s!==e.sorts&&this.updateSorts(s);var{loadingScrimStartTime:v,loadingScrimFinishTime:m}=this;v!=null&&m!=null&&window.requestAnimationFrame(()=>{var g=Date.now(),f=g-v,p=m-v,C=Math.min(f/p,1);m<g&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(b=>b.loadingScrimProgress==null?(oe.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:C})}),this.sendStateChange()}componentWillUnmount(){var{model:e}=this.props;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame)}getValueForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:i}=this.props,{dh:a}=i,o=this.getModelColumn(e),s=this.getModelRow(t);if(r&&o!=null&&s!=null){var l=i.valueForCell(o,s);if(j.isDateType(i.columns[o].type)){var{formatter:u}=i;return a.i18n.DateTimeFormat.format(Bw,l,a.i18n.TimeZone.getTimeZone(u.timeZone))}return l}return r?null:o!=null&&s!=null?i.textForCell(o,s):""}getModelColumn(e){var{metrics:t}=this.state;_(t);var{modelColumns:r}=t;return r==null?null:e!=null?r.get(e):null}getModelRow(e){var{metrics:t}=this.state;_(t);var{modelRows:r}=t;return r==null?null:e!=null?r.get(e):null}getTheme(){var e,{model:t,theme:r}=this.props;return this.getCachedTheme(r,(e=Le(t)&&t.isEditable)!==null&&e!==void 0?e:!1,t.floatingTopRowCount+t.floatingBottomRowCount)}getVisibleColumn(e){var{movedColumns:t}=this.state;return K.getVisibleIndex(e,t)}makeQuickFilter(e,t,r){try{return this.tableUtils.makeQuickFilter(e,t,r)}catch(i){oe.error("Error creating quick filter",i)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{model:r}=this.props,{advancedFilters:i,quickFilters:a}=this.state,o=t?new Map:new Map(i),s=t?new Map:new Map(a),l=t&&i.size>0;e.forEach(u=>{var{name:d,type:h,value:v}=u,m=r.columns.findIndex(g=>{var{name:f,type:p}=g;return f===d&&p===h});m>=0?(l=o.delete(m)||l,l=this.applyQuickFilter(m,v,s)||l):oe.error("Unable to find column for inputFilter",d,h,v)}),l&&this.setState({quickFilters:s,advancedFilters:o})}applyQuickFilter(e,t,r){var{model:i}=this.props,{formatter:a}=i,o=i.columns[e];if(t!=null&&"".concat(t).trim().length>0){var s=r.get(e);if(s!=null){var{text:l}=s;if(l===t)return oe.debug2("Ignoring change to existing filter"),!1}return r.set(e,{text:t,filter:this.makeQuickFilter(o,t,a.timeZone)}),!0}return r.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,r){oe.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",!0),this.setState(i=>{var{advancedFilters:a}=i,o=new Map(a);return t==null?o.delete(e):o.set(e,{filter:t,options:r}),{advancedFilters:o}})}setQuickFilter(e,t,r){oe.debug("Setting quick filter",e,t,r),this.startLoading("Filtering...",!0),this.setState(i=>{var{quickFilters:a}=i,o=new Map(a);return o.set(e,{filter:t,text:r}),{quickFilters:o}})}setFilterMap(e){var t;oe.debug("setFilterMap",e);var{advancedSettings:r}=this.props,i=(t=r.get(Tn.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;i&&this.clearAllFilters();var{model:a}=this.props;e.forEach((o,s)=>{var{columnType:l,filterList:u}=o,d=a.columns.find(g=>g.name===s&&g.type===l);if(d!=null){var h=a.getColumnIndexByName(d.name);_(h);var v=Re.combineFiltersFromList(l,u);if(v.length===0)this.removeQuickFilter(h);else{var{formatter:m}=a;this.setQuickFilter(h,this.makeQuickFilter(d,v,m.timeZone),"".concat(v))}}})}removeColumnFilter(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{advancedFilters:r,quickFilters:i}=t,a=r?new Map(r):new Map,o=i?new Map(i):new Map;return o.delete(e),a.delete(e),{quickFilters:o,advancedFilters:a}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",!0),this.setState(t=>{var{quickFilters:r}=t,i=new Map(r);return i.delete(e),{quickFilters:i}})}clearAllFilters(){oe.debug("Clearing all filters");var{advancedFilters:e,quickFilters:t,searchFilter:r}=this.state;t.size===0&&e.size===0&&r===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",!0),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearCrossColumSearch(){oe.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){oe.debug("Rebuilding filters");var{model:e}=this.props,{advancedFilters:t,quickFilters:r}=this.state,{columns:i,formatter:a}=e,o=new Map,s=new Map;t.forEach((l,u)=>{var{options:d}=l,h=i[u],v=this.tableUtils.makeAdvancedFilter(h,d,a.timeZone);o.set(u,{options:d,filter:v})}),r.forEach((l,u)=>{var{text:d}=l,h=i[u];s.set(u,{text:d,filter:this.makeQuickFilter(h,d,a.timeZone)})}),this.startLoading("Rebuilding filters...",!0),this.setState({quickFilters:s,advancedFilters:o})}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;this.setState({quickFilters:t,advancedFilters:r})}updateFormatterSettings(e){var t,r,i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,o=en.getColumnFormats(e),s=en.getDateTimeFormatterOptions(e),l=(t=e?.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},u=(r=e?.defaultIntegerFormatOptions)!==null&&r!==void 0?r:{},d=(i=e?.truncateNumbersWithPound)!==null&&i!==void 0?i:!1,h=!nt(this.globalColumnFormats,o),v=!nt(this.dateTimeFormatterOptions,s),m=!nt(this.decimalFormatOptions,e?.defaultDecimalFormatOptions),g=!nt(this.integerFormatOptions,u),f=this.truncateNumbersWithPound!==d;(h||v||m||g||f)&&(this.globalColumnFormats=o,this.dateTimeFormatterOptions=s,this.decimalFormatOptions=l,this.integerFormatOptions=u,this.truncateNumbersWithPound=d,this.updateFormatter({},a),v&&a&&this.rebuildFilters())}updateFormatter(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{customColumnFormatMap:i}=this.state,{model:a}=this.props,o=st({customColumnFormatMap:i},e),s=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...o.customColumnFormatMap.values()],l=new Hr(a.dh,s,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound);oe.debug("updateFormatter",this.globalColumnFormats,s),this.setState(st(st({},o),{},{formatter:l}),()=>{r&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}initState(){var{applyInputFiltersOnInit:e,inputFilters:t,sorts:r,model:i,reverseType:a,customColumns:o,searchValue:s,selectedSearchColumns:l,invertSearchColumns:u}=this.props,d=l??[],h=Oi.createSearchFilter(i.dh,s,d,i.columns,u);if(e){var v=t.filter(m=>m.value!=null);this.applyInputFilters(v)}this.setState({sorts:r,reverseType:a,customColumns:o,isReady:!0,searchFilter:h}),this.initFormatter()}loadPartitionsTable(e){var t=this;return Ri(function*(){var{model:r}=t.props;t.setState({isSelectingPartition:!0});try{var i=yield t.pending.add(r.valuesTable(e),d=>d.close()),a=i.columns.slice(0,e.length),o=a.map(d=>d.sort().desc());i.applySort(o),i.setViewport(0,0,a);var s=yield t.pending.add(i.getViewportData());if(s.rows.length>0){var l=s.rows[0],u=a.map(d=>l.get(d));t.updatePartition(u,e),t.setState({isSelectingPartition:!0})}else oe.info("Table does not have any data, just fetching all"),t.setState({isSelectingPartition:!1}),t.handlePartitionFetchAll();t.setState({partitionTable:i,partitionColumns:e},()=>{t.initState()})}catch(d){t.handleTableLoadError(d)}})()}updatePartition(e,t){for(var r=[],i=0;i<t.length;i+=1){var a=e[i],o=t[i];if(a!==null&&!(j.isCharType(o.type)&&a==="")){var{model:s}=this.props,l=j.isCharType(o.type)?s.displayString(a,o.type,o.name):a,u=this.tableUtils.makeQuickFilterFromComponent(o,l);u!==null&&r.push(u)}}this.setState({partitions:e,partitionFilters:r})}copyCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{canCopy:i}=this.props;if(i){var a=String(this.getValueForCell(e,t,r));vo(a).catch(o=>oe.error("Unable to copy cell",o))}else oe.error("Attempted to copyCell for user without copy permission.")}copyRanges(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3?arguments[3]:void 0,{model:a,canCopy:o}=this.props,{metricCalculator:s,movedColumns:l}=this.state,u=s.getUserColumnWidths();if(o){var d={ranges:B.boundedRanges(e,a.columnCount,a.rowCount),includeHeaders:t,formatValues:r,movedColumns:l,userColumnWidths:u,error:i};this.setState({copyOperation:d})}else oe.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({loadingText:e});var r=this.getTheme();if(t&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var i,a,{minScrimTransitionTime:o,maxScrimTransitionTime:s}=r;_(o),_(s);var l=(i=(a=this.gridWrapper)===null||a===void 0?void 0:a.getBoundingClientRect().height)!==null&&i!==void 0?i:0,u=Math.max(o,Math.min(l/2,s));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+u,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},or.loadingSpinnerDelay)}}stopLoading(){this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0,this.setState({loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1}),this.loadingTimer!=null&&(clearTimeout(this.loadingTimer),this.loadingTimer=void 0)}rollback(){if(this.lastLoadedConfig){oe.debug("loading last loading config",this.lastLoadedConfig);var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:s,selectDistinctColumns:l,sorts:u}=this.lastLoadedConfig;this.lastLoadedConfig=null,this.setState({advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:s,selectDistinctColumns:l,sorts:u})}else oe.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:$u,customColumns:[],quickFilters:new Map,reverseType:j.REVERSE_TYPE.NONE,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!Vl(this.state)}startListening(e){e.addEventListener(ve.EVENT.UPDATED,this.handleUpdate),e.addEventListener(ve.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(ve.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}stopListening(e){e.removeEventListener(ve.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(ve.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(ve.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(ve.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var{movedColumns:t}=this.state,{model:r}=this.props,{columnCount:i}=r,a=K.getModelIndex(e,t);if(e==null||e<0||i<=e||!r.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var{metricCalculator:o,metrics:s}=this.state;_(s);var{left:l,rightVisible:u,lastLeft:d}=s;if(e<l){var h;(h=this.grid)===null||h===void 0||h.setViewState({left:e},!0)}else if(u<e){var v,m,g=(v=this.grid)===null||v===void 0?void 0:v.getMetricState();_(g);var f=o.getLastLeft(g,e,o.getVisibleWidth(g));(m=this.grid)===null||m===void 0||m.setViewState({left:Math.min(f,d),leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,{metricCalculator:r,movedColumns:i}=this.state;r.setColumnWidth(K.getModelIndex(e,i),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;oe.debug2("freezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.add(e);var o=i.getColumnIndexByName(e);_(o);var s=K.getVisibleIndex(o,r),l=K.moveItem(s,a.size-1,r);this.setState({frozenColumns:[...a],movedColumns:l})}unFreezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;oe.debug2("unfreezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.delete(e);var o=i.getColumnIndexByName(e);_(o);var s=K.getVisibleIndex(o,r),l=K.moveItem(s,a.size+i.frontColumns.length,r);this.setState({frozenColumns:[...a],movedColumns:l})}handleColumnVisibilityChanged(e,t){var r,{metricCalculator:i,metrics:a}=this.state;_(a),t?e.forEach(o=>{var s=i.initialColumnWidths.get(o),l=M(a.calculatedColumnWidths,o);s!==l?i.setColumnWidth(o,l):i.resetColumnWidth(o)}):e.forEach(o=>{i.setColumnWidth(o,0)}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleColumnVisibilityReset(){var e,t,{metricCalculator:r,metrics:i}=this.state,{model:a}=this.props;_(i);for(var o=0;o<i.columnCount;o+=1)r.resetColumnWidth(o);this.handleMovedColumnsChanged(a.initialMovedColumns),this.handleHeaderGroupsChanged(a.initialColumnHeaderGroups),this.setState({frozenColumns:(e=(t=a.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:[]})}handleCrossColumnSearch(e,t,r){var{model:i}=this.props;this.startLoading("Searching..."),this.updateSearchFilter(e,t,i.columns,r),this.setState({searchValue:e,selectedSearchColumns:t,invertSearchColumns:r})}handleAnimationLoop(){var e;(e=this.grid)===null||e===void 0||e.updateCanvas(),this.isAnimating&&(this.animationFrame=requestAnimationFrame(this.handleAnimationLoop))}handleAnimationStart(){oe.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){oe.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionChange(e){var{partitionColumns:t}=this.state;t.length!==0&&this.updatePartition(e,t)}handlePartitionFetchAll(){this.setState({partitionFilters:[],isSelectingPartition:!1})}handlePartitionDone(){this.setState({isSelectingPartition:!1})}handleTableLoadError(e){if(!Tt.isCanceled(e)){oe.error(e);var{onError:t}=this.props;t(e)}}showAllColumns(){for(var e,{metricCalculator:t}=this.state,r=t.getUserColumnWidths(),i=[...r.entries()],a=0;a<i.length;a+=1){var[o,s]=i[a];s===0&&t.resetColumnWidth(o)}(e=this.grid)===null||e===void 0||e.forceUpdate()}toggleSort(e,t){oe.info("Toggling sort for column",e);var{model:r}=this.props,i=this.getModelColumn(e);if(_(i),r.isColumnSortable(e)){var{sorts:a}=this.state,o=j.toggleSortForColumn(a,r.columns,i,t);this.updateSorts(o)}else oe.debug("Column type was not sortable",r.columns[e])}updateSorts(e){var t;this.startLoading("Sorting..."),this.setState({sorts:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}sortColumn(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:j.sortDirection.none,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;_(e);var{model:o}=this.props,s=j.sortColumn(o.sort,o.columns,e,r,i,a);this.startLoading("Sorting..."),this.setState({sorts:s}),(t=this.grid)===null||t===void 0||t.forceUpdate()}reverse(e){var t;this.startLoading("Reversing..."),this.setState({reverseType:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}isReversible(){var{model:e}=this.props;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,{isFilterBarShown:t}=this.state;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var r=0,{model:i}=this.props,{columnCount:a}=i,o=0;o<a;o+=1){var s=this.getModelColumn(o);if(s!=null){var l=i.columns[s];if(l!=null&&j.isTextType(l.type)){r=o;break}}}this.focusFilterBar(r)}else{var u;(u=this.grid)===null||u===void 0||u.focus()}}isTableSearchAvailable(){var e,t,r,{model:i,canToggleSearch:a}=this.props,{dh:o}=i,s=i==null||(e=i.layoutHints)===null||e===void 0?void 0:e.searchDisplayMode;return s===((t=o.SearchDisplayMode)===null||t===void 0?void 0:t.SEARCH_DISPLAY_HIDE)?!1:s===((r=o.SearchDisplayMode)===null||r===void 0?void 0:r.SEARCH_DISPLAY_SHOW)?!0:a}toggleSearchBar(){var{showSearchBar:e}=this.state;if(this.isTableSearchAvailable()){var t=!e;this.setState({showSearchBar:t},()=>{var r;if(t&&(r=this.crossColumnRef)!==null&&r!==void 0&&r.current){var i;(i=this.crossColumnRef)===null||i===void 0||i.current.focus()}else{var a;(a=this.grid)===null||a===void 0||a.focus()}})}}toggleGotoRow(){var e,t,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{isGotoShown:o}=this.state;if(r||i){var s;this.setState({isGotoShown:!0,gotoValue:i,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:""}),this.focusRowInGrid(r),(s=this.gotoRowRef.current)===null||s===void 0||s.focus();return}var l=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,u=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(l==null||u==null){this.setState({isGotoShown:!o,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:""});return}var{model:d}=this.props,{name:h,type:v}=d.columns[u],m=d.valueForCell(u,l),g=Re.convertValueToText(m,v);this.setState({isGotoShown:!o,gotoRow:"".concat(l+1),gotoValue:g,gotoValueSelectedColumnName:h,gotoRowError:"",gotoValueError:""})}commitPending(){var e=this;return Ri(function*(){var t,r,{model:i}=e.props;if(!Le(i)||!i.isEditable)throw new Error("Cannot save, table is not editable");var{pendingSavePromise:a}=e.state;if(a!=null)throw new Error("Save already in progress");var o=(t=document)===null||t===void 0||(r=t.activeElement)===null||r===void 0?void 0:r.classList.contains("grid-cell-input-field");if(o!=null&&o){var s;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new Fh("Current input is invalid");(s=e.grid)===null||s===void 0||s.focus()}var l=e.pending.add(i.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(u=>{Tt.isCanceled(u)||e.setState({pendingSaveError:u,pendingSavePromise:null})});return e.setState({pendingSavePromise:l}),l})()}discardPending(){var e=this;return Ri(function*(){var{pendingSavePromise:t}=e.state;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var{onColumnSelected:t}=this.props;t(e)}selectData(e,t){for(var r=this,{model:i}=this.props,{columns:a,groupedColumns:o}=i,s={},l=function(){var v=a[u],{name:m,type:g}=v,f=i.valueForCell(u,t),p=i.textForCell(u,t),C=r.getVisibleColumn(u),b=Fe(i)&&i.isRowExpandable(t),w=o.find(S=>S.name===m)!=null;s[m]={value:f,text:p,type:g,isGrouped:w,isExpandable:b,visibleIndex:C}},u=0;u<a.length;u+=1)l();var{onDataSelected:d}=this.props;d(t,s)}handleAdvancedFilterChange(e,t,r){var{model:i}=this.props,a=i.getColumnIndexByName(e.name);_(a),this.setAdvancedFilter(a,t,r)}handleAdvancedFilterSortChange(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:a}=this.props,o=a.getColumnIndexByName(e.name);_(o);var s=a.columns[o].name,l=j.getSortForColumn(a.sort,s),u=null;(l==null||l.direction!==t)&&(t===j.sortDirection.descending?u=e.sort().desc():u=e.sort().asc());var d=j.setSortForColumn(a.sort,s,u,i);oe.info("Setting table sorts",d),this.startLoading("Sorting..."),this.setState({sorts:d}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleAdvancedFilterDone(){var e;(e=this.grid)===null||e===void 0||e.focus()}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e})}handleGotoRowOpened(){this.setState({isGotoShown:!0})}handleGotoRowClosed(){this.setState({isGotoShown:!1})}handleAdvancedMenuClosed(e){var t,{focusedFilterBarColumn:r,isFilterBarShown:i}=this.state;if(i&&r===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var a;(a=this.filterInputRef)===null||a===void 0||a.current.focus(),this.setState({shownAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var{model:t,onCreateChart:r}=this.props;r(e,t)}handleGridError(e){oe.warn("Grid Error",e),this.setState({toastMessage:c.jsx("div",{className:"error-message",children:"".concat(e)})})}handleFilterBarChange(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{focusedFilterBarColumn:r,quickFilters:i}=t,a=new Map(i);if(r!=null){var o=this.getModelColumn(r);_(o),this.applyQuickFilter(o,e,a)}return{quickFilters:a}})}handleFilterBarDone(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e){var r;(r=this.grid)===null||r===void 0||r.focus()}t&&this.setState({focusedFilterBarColumn:null})}handleFilterBarTab(e){var{focusedFilterBarColumn:t}=this.state;_(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var{model:r}=this.props,i=r.columns[e],{customColumnFormatMap:a}=this.state,o=new Map(a);if(t!=null){var s=j.getNormalizedType(i.type);_(s);var l=Hr.makeColumnFormattingRule(s,i.name,t);o.set(i.name,l)}else o.delete(i.name);this.updateFormatter({customColumnFormatMap:o})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var{openOptions:t}=e,r=[...t];return r.pop(),{openOptions:r}})}handleMenuSelect(e){this.setState(t=>{var{openOptions:r}=t;return{openOptions:[...r,e]}})}handleRequestFailed(e){var t=e;if(oe.error("request failed:",t.detail),this.stopLoading(),this.canRollback())this.startLoading("Rolling back changes...",!0),this.rollback();else{oe.error("Table failed and unable to rollback");var{onError:r}=this.props;r(new Error("Error displaying table: ".concat(t.detail)))}}handleUpdate(){var e;oe.debug2("Received model update");var{advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:s,searchFilter:l,selectDistinctColumns:u,sorts:d}=this.state,h={advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:s,searchFilter:l,selectDistinctColumns:u,sorts:d};Vl(h)?this.lastLoadedConfig=null:this.lastLoadedConfig=h,(e=this.grid)===null||e===void 0||e.forceUpdate(),this.stopLoading()}handleViewChanged(e){var t,r,{model:i}=this.props,{selectionEndRow:a=0}=(t=(r=this.grid)===null||r===void 0?void 0:r.state)!==null&&t!==void 0?t:{},o=0;if(Le(i)&&i.isEditable){_(e);var{bottomViewport:s}=e,l=i.rowCount-i.floatingBottomRowCount;a===l-1?o=i.pendingRowCount+1:a===l-2?o=i.pendingRowCount:o=Math.max(0,s-(i.rowCount-i.pendingRowCount)-i.floatingTopRowCount-i.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:o})}handleSelectionChanged(e){var t;_(e);var{onSelectionChanged:r}=this.props,{copyOperation:i}=this.state;this.setState({selectedRanges:e}),i!=null&&this.setState({copyOperation:null}),((t=this.grid)===null||t===void 0?void 0:t.state.cursorRow)!=null&&this.setState({gotoRow:"".concat(this.grid.state.cursorRow+1)}),r(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var{model:t}=this.props;this.setState({columnHeaderGroups:Re.parseColumnHeaderGroups(t,e).groups},()=>{var r;return(r=this.grid)===null||r===void 0?void 0:r.forceUpdate()})}handleTooltipRef(e){e?.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){oe.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){oe.debug("Create new conditional format");var{openOptions:e,conditionalFormats:t}=this.state;this.setState({openOptions:[...e,{type:Ee.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:t.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){oe.debug("Edit conditional format",e);var{openOptions:t,conditionalFormats:r}=this.state;this.setState({openOptions:[...t,{type:Ee.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:st({},r[e])})}handleConditionalFormatEditorSave(e){oe.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return oe.debug("Invalid format index"),null;var r=[...t.conditionalFormats];return r[t.conditionalFormatEditIndex]=e,{conditionalFormats:r}},()=>{this.handleMenuBack()})}handleConditionalFormatEditorCancel(){this.handleMenuBack(),this.setState({conditionalFormatEditIndex:null})}handleUpdateCustomColumns(e){oe.info("handleUpdateCustomColumns:",e);var{model:t}=this.props,{movedColumns:r,sorts:i,quickFilters:a,advancedFilters:o,selectDistinctColumns:s}=this.state,{columns:l}=t,u=t.customColumns.map(p=>"".concat(p)),d=Re.getRemovedCustomColumnNames(u,e);if(d.length>0){var h=Re.removeSortsInColumns(i,d),v=Re.removeFiltersInColumns(l,a,d),m=Re.removeFiltersInColumns(l,o,d),g=Re.removeColumnFromMovedColumns(l,r,d),f=Re.removeColumnsFromSelectDistinctColumns(s,d);h.length!==i.length&&(oe.debug("removing sorts from removed custom columns..."),this.setState({sorts:h})),(v.size!==a.size||m.size!==o.size)&&(oe.debug("removing filters from removed custom columns..."),this.setState({quickFilters:v,advancedFilters:m})),nt(r,g)||(oe.debug("change moved columns for removed custom columns",g),this.setState({movedColumns:g})),nt(s,f)||(oe.debug("change selectDistinct columns for removed custom columns",g),this.setState({selectDistinctColumns:f}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){oe.debug("custom columns changed");var{isReady:e}=this.state;if(e){var t;this.stopLoading(),(t=this.grid)===null||t===void 0||t.forceUpdate()}else this.initState()}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;oe.debug("pending data updated");var{model:t}=this.props,{pendingDataMap:r,pendingDataErrors:i}=t;this.setState({pendingDataMap:r,pendingDataErrors:i,pendingSaveError:null}),(e=this.grid)===null||e===void 0||e.forceUpdate()}handleAggregationsChange(e){oe.debug("handleAggregationsChange",e),this.startLoading("Aggregating ".concat(e.aggregations.map(t=>t.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){oe.debug("handleAggregationChange",e),this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(t=>{var{aggregationSettings:r}=t;return{selectedAggregation:e,aggregationSettings:st(st({},r),{},{aggregations:r.aggregations.map(i=>i.operation===e.operation?e:i)})}})}handleAggregationEdit(e){oe.debug("handleAggregationEdit",e);var{openOptions:t}=this.state;this.setState({openOptions:[...t,{type:Ee.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,r;oe.info("Rollup change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Grouping by columns ".concat((t=e==null||(r=e.columns)===null||r===void 0?void 0:r.join(", "))!==null&&t!==void 0?t:"","...")),this.setState({rollupConfig:e,movedColumns:[],frozenColumns:[],sorts:[],reverseType:j.REVERSE_TYPE.NONE,selectDistinctColumns:[]})}handleSelectDistinctChanged(e){oe.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverseType:j.REVERSE_TYPE.NONE})}handleDownloadTableStart(){var{canDownloadCsv:e}=this.props;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:Wr.DOWNLOAD_STATUS.INITIATING}):oe.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,r,i,a,o,s){var{canDownloadCsv:l}=this.props;l?(oe.info("start table downloading",e,t,r,i,a,o,s),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,r,i,a,o,s),{tableDownloadStatus:Wr.DOWNLOAD_STATUS.DOWNLOADING}))):oe.error("Attempted to handleDownloadTable for user without download CSV permission.")}seekRow(e){var t=arguments,r=this;return Ri(function*(){var i,a=t.length>1&&t[1]!==void 0?t[1]:!1,{gotoValueSelectedColumnName:o,gotoValueSelectedFilter:s}=r.state,{model:l}=r.props,{dh:u}=l;if(l.isSeekRowAvailable&&e!==""){var d=Re.getColumnByName(l.columns,o);if(d!==void 0){var h=(i=r.grid)===null||i===void 0?void 0:i.state.cursorRow;h==null&&(h=0);var v=s===pe.contains||s===pe.containsIgnoreCase,m=s===pe.eqIgnoreCase||s===pe.containsIgnoreCase;try{var g,{formatter:f}=l,p=j.getNormalizedType(d.type),C;switch(p){case j.dataType.CHAR:case j.dataType.STRING:{C=yield l.seekRow(h,d,u.ValueType.STRING,e,m,v,a??!1);break}case j.dataType.DATETIME:{var[b]=Sn.parseDateRange(u,e,f.timeZone);C=yield l.seekRow(h,d,u.ValueType.DATETIME,b,void 0,void 0,a??!1);break}case j.dataType.DECIMAL:case j.dataType.INT:{if(!j.isBigDecimalType(d.type)&&!j.isBigIntegerType(d.type)){var w=parseInt(e,10);e==="-Infinity"?w=Number.NEGATIVE_INFINITY:e==="Infinity"&&(w=Number.POSITIVE_INFINITY),C=yield l.seekRow(h,d,u.ValueType.NUMBER,w,void 0,void 0,a??!1)}else C=yield l.seekRow(h,d,u.ValueType.STRING,e,void 0,void 0,a??!1);break}default:C=yield l.seekRow(h,d,u.ValueType.STRING,r.tableUtils.makeValue(d.type,e,f.timeZone),void 0,void 0,a??!1)}(g=r.grid)===null||g===void 0||g.setFocusRow(C),r.setState({gotoValueError:""})}catch{r.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:Wr.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:Wr.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var{model:t}=this.props;this.pending.add(t.delete(e)).catch(r=>{Tt.isCanceled(r)||oe.error("Unable to delete ranges",e,r)})}resetColumnSelection(){if(this.grid!=null){var{isSelectingColumn:e}=this.props;if(e){var{columnAllowedCursor:t}=this.props;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var{state:e}=this,{state:t}=this.grid,{onStateChange:r}=this.props;r(e,t)}}handleOverflowClose(){this.setState({showOverflowModal:!1})}getColumnBoundingRect(){var e,{metrics:t,shownColumnTooltip:r}=this.state;_(t),_(r);var i=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),a=20;_(i);var{columnHeaderHeight:o,allColumnXs:s,allColumnWidths:l,width:u,columnHeaderMaxDepth:d}=t,h=s.get(r),v=l.get(r);_(h),_(v);var m=i.left+Ae(h+v/2,a,u-a);return{top:i.top+(d-1)*o,left:i.left+Ae(h+v/2,a,u-a),bottom:i.top+d*o,right:i.left+Ae(h+v/2,a,u-a)+1,width:1,height:o,x:m,y:i.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var{gotoRow:e}=this.state;this.focusRowInGrid(e)}focusRowInGrid(e){var{model:t}=this.props,{rowCount:r}=t;if(this.setState({gotoRow:e}),e===""){this.setState({gotoRowError:"",gotoValueError:""});return}var i=parseInt(e,10);if(i>r||i<-r)this.setState({gotoRowError:"Invalid row index"});else if(i===0){var a;this.setState({gotoRowError:"",gotoValueError:""}),(a=this.grid)===null||a===void 0||a.setFocusRow(0)}else if(i<0){var o;this.setState({gotoRowError:"",gotoValueError:""}),(o=this.grid)===null||o===void 0||o.setFocusRow(i+r)}else{var s;(s=this.grid)===null||s===void 0||s.setFocusRow(i-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,r){var{columnHeaderHeight:i,columnHeaderMaxDepth:a,allColumnXs:o,allColumnWidths:s,width:l}=t,u=o.get(e),d=s.get(e);if(u==null||d==null)return null;var h=Math.max(0,u),v=d;u+d>l?v=l-u:u<0&&(v=d-Math.abs(u));var m={position:"absolute",top:(a-1)*i,left:h,width:v,height:i,pointerEvents:"none"},g={clientWidth:1,clientHeight:i,getBoundingClientRect:this.getColumnBoundingRect},f={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},p=this.getModelColumn(e);if(p==null)return null;var C=r.columns[p];return C==null?null:c.jsx("div",{style:m,children:c.jsx(_t,{timeout:400,interactive:!0,options:f,ref:this.handleTooltipRef,referenceObject:g,onExited:()=>{this.setState({shownColumnTooltip:null})},children:c.jsx(ap,{model:r,column:C,onStatistics:()=>{var b;(b=this.tooltip)===null||b===void 0||b.update()}})},C.name)})}handleGotoValueSelectedColumnNameChanged(e){var t,{model:r}=this.props,i=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow;if(i!=null){var a=r.getColumnIndexByName(e),o=Re.getColumnByName(r.columns,e);if(a==null||o==null)return;var s=r.valueForCell(a,i),l=Re.convertValueToText(s,o.type);this.setState({gotoValueSelectedColumnName:e,gotoValue:l,gotoValueError:""})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var{gotoValue:t}=this.state;this.seekRow(t,e)}render(){var e,t,r=this,i,a,o,{children:s,customFilters:l,getDownloadWorker:u,isSelectingColumn:d,isStuckToBottom:h,isStuckToRight:v,model:m,name:g,onlyFetchVisibleColumns:f,alwaysFetchColumns:p,advancedSettings:C,onAdvancedSettingsChange:b,canDownloadCsv:w,onCreateChart:S}=this.props,{metricCalculator:T,metrics:y,isFilterBarShown:O,isSelectingPartition:R,isMenuShown:E,isReady:P,copyOperation:x,focusedFilterBarColumn:I,loadingText:N,loadingScrimProgress:L,loadingSpinnerShown:F,keyHandlers:k,mouseHandlers:H,shownColumnTooltip:W,hoverAdvancedFilter:z,shownAdvancedFilter:Y,hoverSelectColumn:$,quickFilters:A,advancedFilters:U,partitions:V,partitionFilters:X,partitionTable:q,partitionColumns:ne,searchFilter:ue,selectDistinctColumns:re,movedColumns:te,movedRows:Te,formatter:Ie,conditionalFormats:tt,conditionalFormatPreview:Qe,conditionalFormatEditIndex:Ke,sorts:Ue,reverseType:Ze,customColumns:Pe,selectedRanges:ht,isTableDownloading:ct,tableDownloadStatus:Bt,tableDownloadProgress:Vt,tableDownloadEstimatedTime:ur,showSearchBar:br,searchValue:Pt,selectedSearchColumns:Je,invertSearchColumns:Ut,aggregationSettings:vt,selectedAggregation:mt,rollupConfig:Xe,openOptions:Ft,pendingSavePromise:$t,pendingSaveError:It,pendingRowCount:gt,pendingDataErrors:wr,pendingDataMap:tr,toastMessage:dr,frozenColumns:At,columnHeaderGroups:Gt,showOverflowModal:Ur,overflowText:sn,overflowButtonTooltipProps:ln,expandCellTooltipProps:un,linkHoverTooltipProps:dn,isGotoShown:hn,gotoRow:je,gotoRowError:ti,gotoValueError:Rn,gotoValueSelectedColumnName:ri,gotoValue:$r,gotoValueSelectedFilter:ni}=this.state;if(!P)return null;var ft=this.getTheme(),ii=this.getCachedFilter(l,A,U,X,ue),Dn=T.getUserColumnWidths(),ai=this.getCachedStateOverride($,O,d,L,A,U,Ue,Ze,Xe,E),ra=y?y.top:0,na=y?y.bottomViewport:0,oi=null,si=null;f&&(oi=y?y.left:0,si=y?y.right:0);var ia=y!=null&&y.width>0&&y.height>0,li=((e=Xe==null||(t=Xe.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,ui=null,aa=y?Math.min(Math.max(or.minDebounce,Math.round(y.rowCount/200)),or.maxDebounce):or.maxDebounce;if(O&&I!=null&&y!=null){var{gridX:oa,gridY:sa,allColumnXs:la,allColumnWidths:hr,width:Nn}=y,Fo=la.get(I),Io=hr.get(I);if(Fo!=null&&Io!=null){var ua,da,ha,Ao=oa+Fo,Wu=sa-((ua=ft.filterBarHeight)!==null&&ua!==void 0?ua:0),zu=Io+1,Ku=((da=ft.filterBarHeight)!==null&&da!==void 0?da:0)-1,Yu={top:Wu,left:Ao,minWidth:Math.min(zu,Nn-Ao),height:Ku},ca="",xo=!0,va=this.getModelColumn(I);_(va);var ma=A.get(va),Mo=U.get(va);ma!=null&&(ca=ma.text,xo=ma.filter!=null);var Xu=A.size!==0||U.size!==0;ui=c.jsx(Cg,{ref:this.filterInputRef,style:Yu,className:Q({error:!xo,active:ca!==""||Mo!=null,"iris-grid-has-filter":Xu}),isAdvancedFilterSet:Mo!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:I})},onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(ha=this.grid)===null||ha===void 0?void 0:ha.handleContextMenu,debounceMs:aa,value:ca},I)}}var Lo=null;if(N!=null){var qu=c.jsxs("div",{className:"iris-grid-loading-status",children:[c.jsx("div",{className:Q("iris-grid-loading-status-bar",{show:F}),children:N}),c.jsxs("button",{type:"button",onClick:this.handleCancel,className:Q("iris-grid-btn-cancel",{show:F}),children:[c.jsx(le,{icon:Ki,transform:"down-1"}),"Cancel"]})]}),Qu=y?y.gridY:0;Lo=c.jsx("div",{className:"iris-grid-loading",style:{top:Qu},children:qu})}var jo=null;if(W!=null&&y){var ga;jo=this.getColumnTooltip(W,y,m),(ga=this.tooltip)===null||ga===void 0||ga.update()}var ko=[];if(y&&O)for(var{gridX:Zu,gridY:Ju,visibleColumns:_o,allColumnXs:ed,allColumnWidths:td}=y,{filterBarHeight:fa}=ft,rd=function(){var He=_o[pa],Sr=ed.get(He),yr=td.get(He),Pn=r.getModelColumn(He);if(Pn!=null){var ba=m.isFilterable(Pn);if(ba&&Sr!=null&&yr!=null&&yr>0){var wa=Zu+Sr+yr-24,cn=Ju-(fa??0)+2,Fn={position:"absolute",top:cn,left:wa},Sa=U.get(Pn),di=Sa!=null,In=He===z||He===I||di,ya=c.jsx("div",{className:Q("advanced-filter-button-container",{hidden:!In}),style:Fn,children:In&&c.jsx(Z,{kind:"ghost",className:Q("btn-link-icon advanced-filter-button",{"filter-set":di}),onClick:()=>{r.setState({shownAdvancedFilter:He})},onContextMenu:Ta=>{var Ea;(Ea=r.grid)===null||Ea===void 0||Ea.handleContextMenu(Ta)},onMouseEnter:()=>{r.setState({hoverAdvancedFilter:He})},onMouseLeave:()=>{r.setState({hoverAdvancedFilter:null})},children:c.jsxs("div",{className:"fa-layers",children:[c.jsx(le,{icon:io,className:"filter-solid"}),c.jsx(le,{icon:Ai,className:"filter-light"})]})})},He);ko.push(ya)}}},pa=0;pa<_o.length;pa+=1)rd();var Ho=[];if(y)for(var{gridX:Bo,visibleColumns:Vo,allColumnXs:nd,allColumnWidths:id,columnHeaderHeight:Uo}=y,ad=function(){var He=Vo[Ca],Sr=nd.get(He),yr=id.get(He);if(Sr!=null&&yr!=null&&yr>0){var Pn=Bo+Sr,ba=Bo+Sr+yr-20,wa=O?{position:"absolute",top:Uo,left:ba,width:20,height:ft.filterBarHeight}:{position:"absolute",top:0,left:Pn,width:yr,height:Uo},cn=r.getModelColumn(He);if(cn!=null){var Fn=m.columns[cn];if(Fn==null)return oe.warn("Column does not exist at index ".concat(cn," for column array of length ").concat(m.columns.length)),"continue";var Sa=U.get(cn),{options:di}=Sa||{},In=j.getSortForColumn(m.sort,Fn.name),ya=In?In.direction:null,Ta=c.jsx("div",{className:"advanced-filter-menu-container",style:wa,children:c.jsx(ho,{className:"advanced-filter-menu-popper",onEntered:r.getAdvancedMenuOpenedHandler(He),onExited:()=>{r.handleAdvancedMenuClosed(He)},isShown:Y===He,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0},children:r.getCachedAdvancedFilterMenuActions(m,Fn,di,ya,Ie)})},He);Ho.push(Ta)}}},Ca=0;Ca<Vo.length;Ca+=1)var od=ad();var $o=this.getCachedOptionItems(S!==void 0&&m.isChartBuilderAvailable,m.isCustomColumnsAvailable,m.isFormatColumnsAvailable,m.isRollupAvailable,m.isTotalsAvailable||li,m.isSelectDistinctAvailable,m.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,O,br,w,this.isTableSearchAvailable(),hn,C.size>0),Go=this.getCachedHiddenColumns(T,Dn),sd=Ft.map(rt=>{switch(rt.type){case Ee.CHART_BUILDER:return c.jsx(tC,{model:m,onChange:this.handleChartChange,onSubmit:this.handleChartCreate},Ee.CHART_BUILDER);case Ee.VISIBILITY_ORDERING_BUILDER:return c.jsx(Db,{model:m,movedColumns:te,hiddenColumns:Go,columnHeaderGroups:Gt,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged},Ee.VISIBILITY_ORDERING_BUILDER);case Ee.CONDITIONAL_FORMATTING:return c.jsx(qb,{rules:tt,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case Ee.CONDITIONAL_FORMATTING_EDIT:return _(m.columns),_(this.handleConditionalFormatEditorUpdate),c.jsx(Pw,{dh:m.dh,columns:m.columns,rule:Qe,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case Ee.CUSTOM_COLUMN_BUILDER:return c.jsx(mC,{model:m,customColumns:Pe,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack},Ee.CUSTOM_COLUMN_BUILDER);case Ee.ROLLUP_ROWS:return c.jsx(CC,{model:m,onChange:this.handleRollupChange,config:Xe},Ee.ROLLUP_ROWS);case Ee.AGGREGATIONS:return c.jsx(Sp,{settings:vt,isRollup:li,onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit});case Ee.AGGREGATION_EDIT:return mt&&c.jsx(Rp,{aggregation:mt,columns:m.originalColumns,onChange:this.handleAggregationChange});case Ee.TABLE_EXPORTER:return c.jsx(Wr,{model:m,name:g,userColumnWidths:Dn,movedColumns:te,isDownloading:ct,tableDownloadStatus:Bt,tableDownloadProgress:Vt,tableDownloadEstimatedTime:ur??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:ht},Ee.TABLE_EXPORTER);case Ee.SELECT_DISTINCT:return c.jsx(Gb,{model:m,selectDistinctColumns:re,onChange:this.handleSelectDistinctChanged});case Ee.ADVANCED_SETTINGS:return c.jsx(Po,{items:C,onChange:b});default:throw Error("Unexpected option type ".concat(rt.type))}});return c.jsxs("div",{className:"iris-grid",role:"presentation",children:[c.jsxs("div",{className:"iris-grid-column",children:[s!=null&&c.jsx("div",{className:"iris-grid-bar",children:s}),c.jsx(sr,{in:R,timeout:We.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",children:q&&ne.length&&V.length&&c.jsx(Hb,{dh:m.dh,table:q,getFormattedString:(rt,He,Sr)=>m.displayString(rt,He,Sr),columns:ne,partitions:V,onChange:this.handlePartitionChange,onFetchAll:this.handlePartitionFetchAll,onDone:this.handlePartitionDone})})}),c.jsx(sr,{in:br,timeout:We.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"iris-grid-bar",children:c.jsx(Oi,{value:Pt,selectedColumns:Je,invertSelection:Ut,onChange:this.handleCrossColumnSearch,columns:m.columns,ref:this.crossColumnRef})})}),c.jsxs("div",{className:"grid-wrapper",ref:rt=>{this.gridWrapper=rt},children:[c.jsx(mm,{ref:rt=>{this.grid=rt},isStickyBottom:!Le(m)||!m.isEditable,isStuckToBottom:h,isStuckToRight:v,metricCalculator:T,model:m,keyHandlers:k,mouseHandlers:H,movedColumns:te,movedRows:Te,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,stateOverride:ai,theme:ft}),c.jsx(Fw,{isOpen:Ur,text:sn,onClose:this.handleOverflowClose}),ia&&c.jsx(Uf,{model:m,modelColumns:m.columns,top:ra,bottom:na,left:oi,right:si,filter:ii,formatter:Ie,sorts:Ue,reverseType:Ze,movedColumns:te,customColumns:Pe,hiddenColumns:Go,alwaysFetchColumns:this.getAlwaysFetchColumns(p,m.columns,te,m.floatingLeftColumnCount,m.floatingRightColumnCount,(i=this.grid)===null||i===void 0||(a=i.state.draggingColumn)===null||a===void 0?void 0:a.range),formatColumns:this.getCachedPreviewFormatColumns(m.dh,m.columns,tt,Qe,((o=Ft[Ft.length-1])===null||o===void 0?void 0:o.type)===Ee.CONDITIONAL_FORMATTING_EDIT?Ke??void 0:void 0),rollupConfig:this.getModelRollupConfig(m.originalColumns,Xe,vt),totalsConfig:this.getModelTotalsConfig(m.columns,Xe,vt),selectDistinctColumns:re,pendingRowCount:gt,pendingDataMap:tr,frozenColumns:At,columnHeaderGroups:Gt}),!E&&c.jsx("div",{className:"grid-settings-button",children:c.jsx(Z,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(g),onClick:this.handleMenu,icon:c.jsx(le,{icon:ph,transform:"up-1"}),tooltip:"Table Options"})}),ui,Lo,ko,jo,Ho,ln&&this.getOverflowButtonTooltip(ln),un&&this.getExpandCellTooltip(un),dn&&this.getLinkHoverTooltip(dn)]}),c.jsx(xw,{ref:this.gotoRowRef,model:m,isShown:hn,gotoRow:je,gotoRowError:ti,gotoValueError:Rn,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:ri,gotoValue:$r,gotoValueFilter:ni,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),c.jsx(Qm,{error:It,isSaving:$t!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:wr,pendingDataMap:tr,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),c.jsx(Hf,{children:dr}),c.jsx(gg,{model:m,copyOperation:x??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),c.jsx(St,{dh:m.dh,ref:rt=>{this.tableSaver=rt},getDownloadWorker:u,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:Bt===Wr.DOWNLOAD_STATUS.DOWNLOADING,formatter:Ie})]}),c.jsx(sr,{in:E,timeout:We.transitionMidMs,classNames:"slide-left",onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:c.jsx("div",{className:"table-sidebar",children:c.jsxs(Zh,{children:[c.jsx(rs,{title:"Table Options",onClose:this.handleMenuClose,children:c.jsx(uu,{onSelect:rt=>this.handleMenuSelect($o[rt]),items:$o})}),sd.map((rt,He)=>c.jsx(rs,{title:Ft[He].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,children:rt},Ft[He].type))]})})}),c.jsx(de,{actions:this.contextActions})]})}}ie(or,"minDebounce",150);ie(or,"maxDebounce",500);ie(or,"loadingSpinnerDelay",800);ie(or,"defaultProps",{children:null,advancedFilters:fr,advancedSettings:fr,alwaysFetchColumns:Se,conditionalFormats:Se,customColumnFormatMap:fr,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:Se,movedRows:Se,inputFilters:Se,customFilters:Se,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onAdvancedSettingsChange:()=>{},partitions:[],partitionColumns:[],quickFilters:fr,selectDistinctColumns:Se,sorts:Se,reverseType:j.REVERSE_TYPE.NONE,customColumns:Se,aggregationSettings:$u,rollupConfig:void 0,userColumnWidths:fr,userRowHeights:fr,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnSelectionValidator:null,columnAllowedCursor:null,columnNotAllowedCursor:null,name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",selectedSearchColumns:null,invertSearchColumns:!0,onContextMenu:()=>Se,pendingDataMap:fr,getDownloadWorker:Ph.getServiceWorker,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Sn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,formatter:Se,decimalFormatOptions:se.shape({defaultFormatString:se.string}),integerFormatOptions:se.shape({defaultFormatString:se.string})},canCopy:!0,canDownloadCsv:!0,frozenColumns:null,theme:null,canToggleSearch:!0});const ES=or;function Ha(n,e,t){return e=Vw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vw(n){var e=Uw(n,"string");return typeof e=="symbol"?e:String(e)}function Uw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 $w extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),Ha(this,"isMissingKey",!0),Ha(this,"rowIndex",void 0),Ha(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const Gw=$w;function Ul(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 Di(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ul(Object(t),!0).forEach(function(r){be(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ul(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function $l(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function Pr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){$l(a,r,i,o,s,"next",l)}function s(l){$l(a,r,i,o,s,"throw",l)}o(void 0)})}}function be(n,e,t){return e=Ww(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ww(n){var e=zw(n,"string");return typeof e=="symbol"?e:String(e)}function zw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ke=ye.module("IrisGridTableModel"),Kw=150,Yw=0,Xw=[];function Ni(n){return n.table!==void 0}class Jn extends ve{seekRow(e,t,r,i,a,o,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,i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Hr(e),o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),be(this,"dh",void 0),be(this,"irisGridUtils",void 0),be(this,"tableUtils",void 0),be(this,"irisFormatter",void 0),be(this,"inputTable",void 0),be(this,"subscription",void 0),be(this,"table",void 0),be(this,"viewport",void 0),be(this,"viewportData",void 0),be(this,"formattedStringData",void 0),be(this,"pendingStringData",void 0),be(this,"isSaveInProgress",void 0),be(this,"totalsTable",void 0),be(this,"totalsTablePromise",void 0),be(this,"totals",void 0),be(this,"totalsDataMap",void 0),be(this,"pendingNewDataMap",void 0),be(this,"pendingNewRowCount",0),be(this,"_columnHeaderGroupMap",new Map),be(this,"columnHeaderParentMap",new Map),be(this,"_columnHeaderMaxDepth",null),be(this,"_columnHeaderGroups",[]),be(this,"_movedColumns",null),be(this,"getMemoizedInitialMovedColumns",Be(s=>{var l;if(!s)return[];var u=[],{groupMap:d}=Re.parseColumnHeaderGroups(this,(l=s?.columnGroups)!==null&&l!==void 0?l:[]),h=(T,y)=>{var O=this.getColumnIndexByName(T);if(O==null)throw new Error("Unknown layout hint column: ".concat(T));var R=K.getVisibleIndex(O,u);u=K.moveItem(R,y,u)},v=(T,y)=>{var O=d.get(T);if(O==null)throw new Error("Unknown layout hint group: ".concat(T));var R=O.getVisibleRange(u);u=K.moveRange(R,y,u)},{frontColumns:m=[],backColumns:g=[],frozenColumns:f=[]}=s;if(m.length||g.length||f.length){var p=new Set,C=0;f.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));h(T,C),C+=1}),m.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));h(T,C),C+=1});var b=this.columnMap.size-1;g.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));h(T,b),b-=1})}var w=s?.columnGroups;if(w){var S=[...d.values()];S.sort((T,y)=>T.depth-y.depth),S.forEach(T=>{var y=T.children[0],O=this.getColumnIndexByName(y),R;if(O!=null)R=K.getVisibleIndex(O,u);else{var E=d.get(y);if(!E)throw new Error("Unknown column ".concat(y," in group ").concat(T.name));var P=E.getVisibleRange(u);[,R]=P}for(var x=1;x<T.children.length;x+=1){var I=T.children[x],N=d.get(I),L=this.getColumnIndexByName(I);if(N){var F=N.getVisibleRange(u)[0]<R,k=F?R-N.childIndexes.length+1:R+1;v(I,k),R=k+N.childIndexes.length-1}else if(L!=null){var H=K.getVisibleIndex(L,u)<R,W=H?R:R+1;h(I,W),R=W}}})}return this._movedColumns=u,u})),be(this,"getMemoizedInitialColumnHeaderGroups",Be(s=>{var l;return Re.parseColumnHeaderGroups(this,(l=s?.columnGroups)!==null&&l!==void 0?l:[]).groups})),be(this,"getMemoizedColumnMap",Be(s=>{var l=new Map;return s.forEach(u=>l.set(u.name,u)),l})),be(this,"getColumnIndicesByNameMap",Be(s=>{var l=new Map;return s.forEach((u,d)=>{var{name:h}=u;return l.set(h,d)}),l})),be(this,"setViewport",Ii((s,l,u)=>{if(l<s){ke.error("Invalid viewport",s,l);return}var{viewport:d}=this;if(d!=null&&d.top===s&&d.bottom===l&&d.columns===u){ke.debug2("Ignoring duplicate viewport",d);return}this.viewport={top:s,bottom:l,columns:u},ke.debug2("setViewport",this.viewport),this.applyViewport()},Kw)),be(this,"applyViewport",Ii(()=>{if(this.viewport){ke.debug2("applyViewport",this.viewport);var{top:s,bottom:l,columns:u}=this.viewport,[d,h]=this.getCachedViewportRowRange(s,l);this.applyBufferedViewport(d,h,u)}},Yw,{leading:!1})),be(this,"getCachedFormattedString",er((s,l,u,d,h)=>s.getFormattedString(l,u,d,h),{max:1e4})),be(this,"getCachedCustomColumnFormatFlag",er(en.isCustomColumnFormatDefined,{max:1e4})),be(this,"getCachedViewportRowRange",Be((s,l)=>{var u=l-s,d=Math.max(0,s-u*Jn.ROW_BUFFER_PAGES),h=l+u*Jn.ROW_BUFFER_PAGES;return[d,h]})),be(this,"getCachedPendingErrors",Be((s,l,u)=>{var d=new Map;return s.forEach((h,v)=>{for(var{data:m}=h,g=0;g<u;g+=1)if(!m.has(g)){var f;d.has(v)||d.set(v,[]),(f=d.get(v))===null||f===void 0||f.push(new Gw(v,l[g].name))}}),d})),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=a,this.irisGridUtils=new Re(e),this.inputTable=o,this.subscription=null,this.table=t,this.tableUtils=new j(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,this.columnHeaderGroups=Re.parseColumnHeaderGroups(this,(r=(i=this.layoutHints)===null||i===void 0?void 0:i.columnGroups)!==null&&r!==void 0?r:[]).groups}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 Me(ve.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new Me(ve.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new Me(ve.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new Me(ve.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new Me(ve.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new Me(ve.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return this.table.size+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(!Re.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!Re.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new Me(ve.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 Me(ve.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}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,o=this.valueForCell(e,t);if(o===null)return null;if(o===void 0)return;var s=(a=this.totalsColumn(e,t))!==null&&a!==void 0?a:this.columns[e],l=this.getCachedCustomColumnFormatFlag(this.formatter,s.name,s.type),u;if(!l){var d=this.formatForCell(e,t);d?.formatString!=null&&(u=d)}var h=this.displayString(o,s.type,s.name,u);this.cacheFormattedValue(e,t,h)}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(j.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return"null";if(i==="")return"empty"}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(j.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:o}=i;if(o==null||o==="")return _(r.nullStringColor),r.nullStringColor;if(a&&a.color)return a.color;if(this.isPendingRow(t))return _(r.pendingTextColor),r.pendingTextColor;if(o!=null){var s,l=(s=this.totalsColumn(e,t))!==null&&s!==void 0?s:this.columns[e];if(j.isDateType(l.type)||l.name==="Date")return _(r.dateColor),r.dateColor;if(j.isNumberType(l.type))return o>0?(_(r.positiveNumberColor),r.positiveNumberColor):o<0?(_(r.negativeNumberColor),r.negativeNumberColor):(_(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return _(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t){var r,i;return(r=(i=this.formatForCell(e,t))===null||i===void 0?void 0:i.backgroundColor)!==null&&r!==void 0?r:null}textAlignForCell(e){var t=this.columns[e],{type:r}=t;return j.isNumberType(r)?"right":j.isDateType(r)||t.name==="Date"?"center":"left"}dataBarOptionsForCell(e,t,r){var i,a,o,s,l=this.formatForCell(e,t);_(l);var{axis:u,direction:d,max:h,min:v,valuePlacement:m,value:g,marker:f}=l.formatDataBar,{positiveColor:p,negativeColor:C,markerColor:b,opacity:w}=l.formatDataBar;p=(i=p)!==null&&i!==void 0?i:r.positiveBarColor,C=(a=C)!==null&&a!==void 0?a:r.negativeBarColor;var S=(o=l.color)!==null&&o!==void 0?o:g>=0?p:C;S.includes(",")&&(S=S.split(",")),b=(s=b)!==null&&s!==void 0?s:r.markerBarColor,w=m.toLowerCase()==="overlap"?.5:w;var T={axis:u.toLowerCase(),direction:d.toUpperCase(),columnMax:h,columnMin:v,opacity:w,color:S,valuePlacement:m.toLowerCase(),value:g,markers:[{value:f,color:b}]};return T}renderTypeForCell(e,t){var r=this.formatForCell(e,t);return r?.formatDataBar!=null?"dataBar":"text"}textForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);return Pa(r)?r.isNew?"":r.name:r?.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(Pa(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(Pa(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 o=a.depth;o<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;o=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 initialMovedRows(){return Xw}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this._columnHeaderGroupMap}get columnHeaderGroups(){return this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=Re.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a}}get groupedColumns(){return[]}row(e){var t,r,i,a,o,s,l,u,d,h,v=(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,m=(a=(o=this.totals)===null||o===void 0?void 0:o.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var f,p,C,b=(f=this.totals)===null||f===void 0?void 0:f.operationOrder[g];return _(b),(p=(C=this.totalsDataMap)===null||C===void 0?void 0:C.get(b))!==null&&p!==void 0?p:null}var w=this.pendingRow(e);if(w!=null){var S;return(S=this.pendingNewDataMap.get(w))!==null&&S!==void 0?S:null}var T=(s=(l=this.viewportData)===null||l===void 0?void 0:l.offset)!==null&&s!==void 0?s:0,y=(m?e-v:e)-T;return(u=(d=this.viewportData)===null||d===void 0||(h=d.rows)===null||h===void 0?void 0:h[y])!==null&&u!==void 0?u:null}totalsColumn(e,t){var r,i,a,o,s=this.totalsRow(t);if(s==null)return null;var l=(r=this.totals)===null||r===void 0?void 0:r.operationOrder[s],u=(i=(a=this.totals)===null||a===void 0?void 0:a.defaultOperation)!==null&&i!==void 0?i:De.SUM,d=this.columns[e];return(o=this.totalsTable)===null||o===void 0?void 0:o.columns.find(h=>{var v;return h.name==="".concat(d.name,"__").concat(l)||(l===u||((v=this.totals)===null||v===void 0?void 0:v.operationOrder.length)===1)&&h.name===d.name})}totalsRow(e){var t,r,i,a,o,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,l=(a=(o=this.totals)===null||o===void 0?void 0:o.showOnTop)!==null&&a!==void 0?a:!1,u=l?e:e-this.table.size;return u>=0&&u<s?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){ke.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){ke.warn("invalid data!");return}var{columns:o,rows:s}=e;if(s.length!==1){ke.error("Unexpected number of rows received for totals table, ignoring update");return}for(var l=new Map,u=s[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:De.SUM,h=(i=this.totals)===null||i===void 0?void 0:i.operationMap,v=function(){var f,p,C=o[m],[b,w=(f=h==null||(p=h[b])===null||p===void 0?void 0:p[0])!==null&&f!==void 0?f:d]=C.name.split("__");l.has(w)||l.set(w,{data:new Map});var{data:S}=l.get(w),T=a.columns.findIndex(y=>y.name===b);S.set(T,{value:u.get(C),format:u.getFormat(C)})},m=0;m<o.length;m+=1)v();ke.debug2("copyTotalsData",l),this.totalsDataMap=l,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],o=this.extractViewportRow(a,r);t.rows.push(o)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],o=this.getColumnIndexByName(a.name);_(o),r.set(o,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){ke.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 Me(ve.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(ke.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 Me(ve.EVENT.UPDATED));return}this.totalsTablePromise=Tt.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Tt.isCanceled(t)||(ke.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Me(ve.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){ke.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){ke.debug2("applyBufferedViewport",e,t,r),this.subscription==null?(ke.debug2("applyBufferedViewport creating new subscription"),this.subscription=this.table.setViewport(e,t,r)):(ke.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r))}snapshot(e){var t=arguments,r=this;return Pr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:E=>E,o=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var s=o?B.consolidate(e):e;if(!Re.isValidSnapshotRanges(s))throw new Error("Invalid snapshot ranges ".concat(e));for(var l=new Set,u=[],d=new Set,h=0;h<s.length;h+=1){var v=s[h];_(v.endRow),_(v.startRow);for(var m=v.startRow;m<=v.endRow&&m<r.floatingTopRowCount;m+=1)l.add(m);v.endRow>=r.floatingTopRowCount&&v.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new B(v.startColumn,Math.min(Math.max(0,v.startRow-r.floatingTopRowCount)),v.endColumn,Math.min(Math.max(0,v.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(v.startRow,r.floatingTopRowCount+r.table.size);g<=v.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var f=Re.columnsFromRanges(s,r.columns),p=[];i&&p.push(f.map(E=>E.name));for(var C=[...l].sort(),b=function*(){var P=C[w],x=f.map(I=>{var N=r.getColumnIndexByName(I.name);return _(N),a(r.valueForCell(N,P),I)});i&&x.push(r.textForRowFooter(P)),p.push(x)},w=0;w<C.length;w+=1)yield*b();if(u.length>0){var S=r.irisGridUtils.rangeSetFromRanges(u),T=yield r.subscription.snapshot(S,f);p.push(...T.rows.map(E=>f.map(P=>a(E.get(P),P))))}for(var y=[...d].sort(),O=function*(){var P=y[R],x=f.map(I=>{var N=r.getColumnIndexByName(I.name);return _(N),a(r.valueForCell(N,P),I)});i&&x.push(r.textForRowFooter(P)),p.push(x)},R=0;R<y.length;R+=1)yield*O();return p})()}textSnapshot(e){var t=arguments,r=this;return Pr(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);ke.debug2("textSnapshot",e,i);var o=yield r.snapshot(e,i,a,!1);return o.map(s=>s.join(" ")).join(`
|
|
14
14
|
`)})()}valuesTable(e){var t=this;return Pr(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct(Array.isArray(e)?e:[e])}finally{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){var t,r;return e<((t=(r=this.inputTable)===null||r===void 0?void 0:r.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!B.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new B(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new B(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return Pr(function*(){return i.setValueForRanges([new B(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return Pr(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];B.forEachCell(e,(f,p)=>{var C=r.columns[f];if(i.add(C),a[f]===void 0){var b=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);a[f]=b!=null?r.displayString(b,C.type,C.name):null}r.cachePendingValue(f,p,a[f])});var o=r.getPendingAreaRange(),s=e.map(f=>B.intersection(o,f)).filter(f=>f!=null).map(f=>(_(f),B.offset(f,0,-(r.floatingTopRowCount+r.table.size))));if(s.length>0){var l=new Map(r.pendingNewDataMap);B.forEachCell(s,(f,p)=>{l.has(p)||l.set(p,{data:new Map});var C=r.columns[f],b=l.get(p);_(b);var{data:w}=b,S=new Map(w),T=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);T!=null?S.set(f,{value:T}):S.delete(f),S.size>0?l.set(p,Di(Di({},b),{},{data:S})):l.delete(p)}),r.pendingDataMap=l}r.dispatchEvent(new Me(ve.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(f=>B.intersection(u,f)).filter(f=>f!=null);if(d.length>0){var h,v=yield r.snapshot(d.map(f=>{var p,C;return new B(null,(p=f?.startRow)!==null&&p!==void 0?p:null,null,(C=f?.endRow)!==null&&C!==void 0?C:null)})),m=v.map(f=>{for(var p={},C=0;C<r.columns.length;C+=1)p[r.columns[C].name]=f[C];return i.forEach(b=>{p[b.name]=r.tableUtils.makeValue(b.type,t,r.formatter.timeZone)}),p}),g=yield(h=r.inputTable)===null||h===void 0?void 0:h.addRows(m);ke.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}B.forEachCell(e,(f,p)=>{var C=a[f];_(C),r.cacheFormattedValue(f,p,C)})}catch(f){ke.error("Unable to set ranges",e,t,f)}finally{B.forEachCell(e,(f,p)=>{r.clearPendingValue(f,p)})}})()}setValues(){var e=arguments,t=this;return Pr(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(ke.debug("setValues(",r,")"),!r.every(m=>{var g,f;return t.isEditableRange(B.makeCell((g=m.column)!==null&&g!==void 0?g:m.x,(f=m.row)!==null&&f!==void 0?f:m.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(m=>{var g,f,{text:p}=m,C=(g=m.column)!==null&&g!==void 0?g:m.x,b=(f=m.row)!==null&&f!==void 0?f:m.y,w=t.columns[C],S=t.tableUtils.makeValue(w.type,p,t.formatter.timeZone),T=S!=null?t.displayString(S,w.type,w.name):null;t.cachePendingValue(C,b,T);var y=t.pendingRow(b);if(y!=null){i.has(y)||i.set(y,{data:new Map});var O=i.get(y);_(O);var{data:R}=O,E=new Map(R);S!=null?E.set(C,{value:S}):E.delete(C),E.size>0?i.set(y,Di(Di({},O),{},{data:E})):i.delete(y)}}),t.pendingDataMap=i,t.dispatchEvent(new Me(ve.EVENT.UPDATED));var a=r.reduce((m,g)=>{var f,p,C=(f=g.row)!==null&&f!==void 0?f:g.y;return m.has(C)||m.set(C,[]),(p=m.get(C))===null||p===void 0||p.push(g),m},new Map),o=B.consolidate(r.map(m=>{var g,f;return B.makeCell((g=m.column)!==null&&g!==void 0?g:m.x,(f=m.row)!==null&&f!==void 0?f:m.y)})),s=t.getTableAreaRange(),l=o.map(m=>B.intersection(s,m)).filter(m=>m!=null);if(l.length>0){var u,d=yield t.snapshot(l.map(m=>(_(m),new B(null,m.startRow,null,m.endRow)))),h=d.map((m,g)=>{for(var f=null,p=g,C=0;C<l.length;C+=1){var b=l[C];_(b);var w=B.rowCount([b]);if(p<w){_(b.startRow),f=b.startRow+p;break}p-=w}for(var S={},T=0;T<t.columns.length;T+=1)S[t.columns[T].name]=m[T];_(f);var y=a.get(f);return y?.forEach(O=>{var R,E=t.columns[(R=O.column)!==null&&R!==void 0?R:O.x];S[E.name]=t.tableUtils.makeValue(E.type,O.text,t.formatter.timeZone)}),S});ke.info("setValues setting tableRanges",l);var v=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(h);ke.info("setValues set tableRanges",l,"SUCCESS",v)}r.forEach(m=>{var g,f,{text:p}=m,C=(g=m.column)!==null&&g!==void 0?g:m.x,b=(f=m.row)!==null&&f!==void 0?f:m.y,w=t.columns[C],S=t.tableUtils.makeValue(w.type,p,t.formatter.timeZone),T=S!=null?t.displayString(S,w.type,w.name):null;t.cacheFormattedValue(C,b,T)})}finally{r.forEach(m=>{t.clearPendingValue(m.column,m.row)})}})()}commitPending(){var e=this;return Pr(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 l={};s.data.forEach((u,d)=>{var{value:h}=u,v=e.columns[d];l[v.name]=h}),a.push(l)});var o=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);ke.debug("commitPending()",e.pendingNewDataMap,"result",o),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 Me(ve.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){var t=this;return Pr(function*(){if(!t.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));_(t.inputTable);var{keyColumns:r}=t.inputTable;if(r.length===0)throw new Error("No key columns to allow deletion");var i=t.getPendingAreaRange(),a=e.map(p=>B.intersection(i,p)).filter(p=>p!=null).map(p=>(_(p),B.offset(p,0,-(t.floatingTopRowCount+t.table.size))));if(a.length>0){for(var o=new Map(t.pendingNewDataMap),s=0;s<a.length;s+=1){var l=a[s];_(l.startRow),_(l.endRow);for(var u=l.startRow;u<=l.endRow;u+=1)o.delete(u)}t.pendingNewDataMap=o,t.formattedStringData=[],t.dispatchEvent(new Me(ve.EVENT.PENDING_DATA_UPDATED)),t.dispatchEvent(new Me(ve.EVENT.UPDATED))}var d=t.getTableAreaRange(),h=e.map(p=>B.intersection(d,p)).filter(p=>p!=null);if(!(h.length<=0)){var[v,m]=yield Promise.all([t.snapshot(h.map(p=>(_(p),new B(0,p.startRow,r.length-1,p.endRow)))),t.table.copy()]),g=v.map(p=>{for(var C=[],b=0;b<r.length;b+=1){var w=r[b],S=p[b],T=t.tableUtils.makeFilterRawValue(w.type,S),y=w.filter().eq(T);C.push(y)}return C.reduce((O,R)=>{var E;return(E=O?.and(R))!==null&&E!==void 0?E:R})}),f=g.reduce((p,C)=>{var b;return(b=p?.or(C))!==null&&b!==void 0?b:C});m.applyFilter([f]),m.close()}})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}be(Jn,"ROW_BUFFER_PAGES",1);const Gu=Jn;function Gl(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function Ba(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Gl(a,r,i,o,s,"next",l)}function s(l){Gl(a,r,i,o,s,"throw",l)}o(void 0)})}}function Kr(n,e,t){return e=qw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qw(n){var e=Qw(n,"string");return typeof e=="symbol"?e:String(e)}function Qw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Fr=ye.module("IrisGridTableModel");class Zw extends Gu{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Hr(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),Kr(this,"userFrozenColumns",void 0),Kr(this,"customColumnList",void 0),Kr(this,"formatColumnList",void 0),Kr(this,"getMemoizedFrontColumns",Be(a=>a??[])),Kr(this,"getMemoizedBackColumns",Be(a=>a??[])),Kr(this,"getMemoizedFrozenColumns",Be((a,o)=>{var s;return(s=o??a)!==null&&s!==void 0?s:[]})),Kr(this,"getCachedFilterableColumnSet",Be(a=>new Set(a.map((o,s)=>s)))),this.customColumnList=[],this.formatColumnList=[]}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get frontColumns(){var e;return this.getMemoizedFrontColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frontColumns)}get backColumns(){var e;return this.getMemoizedBackColumns((e=this.layoutHints)===null||e===void 0?void 0:e.backColumns)}get frozenColumns(){var e;return this.getMemoizedFrozenColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frozenColumns,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){return this.table.description}get customColumns(){return this.customColumnList}set customColumns(e){if(Fr.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Fr.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Fr.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(Fr.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Fr.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Fr.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 Me(ve.EVENT.TABLE_CHANGED,{detail:this.table}))}set totalsConfig(e){if(Fr.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 Me(ve.EVENT.UPDATED));return}this.totalsTablePromise=Tt.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{Tt.isCanceled(t)||(Fr.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Me(ve.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Ba(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 Ba(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));_(i.inputTable);var{keyColumns:o}=i.inputTable;if(o.length===0)throw new Error("No key columns to allow deletion");var s=i.getPendingAreaRange(),l=e.map(w=>B.intersection(s,w)).filter(w=>w!=null).map(w=>(_(w),B.offset(w,0,-(i.floatingTopRowCount+i.table.size))));if(l.length>0){for(var u=new Map(t()),d=0;d<l.length;d+=1){var h=l[d];_(h.startRow),_(h.endRow);for(var v=h.startRow;v<=h.endRow;v+=1)u.delete(v)}r(u),i.formattedStringData=[],i.dispatchEvent(new Me(ve.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Me(ve.EVENT.UPDATED))}var m=i.getTableAreaRange(),g=e.map(w=>B.intersection(m,w)).filter(w=>w!=null);if(!(g.length<=0)){var[f,p]=yield Promise.all([i.snapshot(g.map(w=>(_(w),new B(0,w.startRow,o.length-1,w.endRow)))),i.table.copy()]),C=f.map(w=>{for(var S=[],T=0;T<o.length;T+=1){var y=o[T],O=w[T],R=i.tableUtils.makeFilterRawValue(y.type,O),E=y.filter().eq(R);S.push(E)}return S.reduce((P,x)=>{var I;return(I=P?.and(x))!==null&&I!==void 0?I:x})}),b=C.reduce((w,S)=>{var T;return(T=w?.or(S))!==null&&T!==void 0?T:S});p.applyFilter([b]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(p),p.close()}})()}seekRow(e,t,r,i,a,o,s){var l=this;return Ba(function*(){return l.table.seekRow(e,t,r,i,a,o,s)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Jw=Zw;function Wl(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function eS(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Wl(a,r,i,o,s,"next",l)}function s(l){Wl(a,r,i,o,s,"throw",l)}o(void 0)})}}function zl(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 Kl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zl(Object(t),!0).forEach(function(r){to(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function to(n,e,t){return e=tS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tS(n){var e=rS(n,"string");return typeof e=="symbol"?e:String(e)}function rS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(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 nS extends Gu{constructor(){super(...arguments),to(this,"getCachedFilterableColumnSet",Be((e,t)=>new Set((t?.length>0?t:e).map(r=>e.findIndex(i=>r.name===i.name))))),to(this,"getCachedGroupedColumnSet",Be(e=>new Set(e.map(t=>this.columns.findIndex(r=>t.name===r.name)))))}applyBufferedViewport(e,t,r){this.table.setViewport(e,t,r)}textForCell(e,t){var r=this.columns[e],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;return Kl(Kl({},super.extractViewportRow(e,t)),{},{isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t,r){var i=this;return eS(function*(){var a;_(i.viewport),_(i.viewportData);var{columns:o}=i.viewport,s=[];t!=null&&t&&s.push(o.map(p=>p.name));for(var l=new B(0,(a=i.viewportData)===null||a===void 0?void 0:a.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),u=0;u<e.length;u+=1){var d=B.intersection(l,e[u]);_(d),_(d.startRow),_(d.endRow);for(var h=d.startRow;h<=d.endRow;h+=1){var v=[],m=i.viewportData.rows[h-i.viewportData.offset];_(d.startColumn),_(d.endColumn);for(var g=d.startColumn;g<=d.endColumn;g+=1){var f;_(r),v.push(r((f=m.data.get(g))===null||f===void 0?void 0:f.value,i.columns[g]))}s.push(v)}}return s})()}get groupedColumns(){return this.table.groupedColumns}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).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r?.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=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&&this.table.expandAll()}collapseAll(){this.table.collapseAll&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r?.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const iS=nS;function Yl(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function aS(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Yl(a,r,i,o,s,"next",l)}function s(l){Yl(a,r,i,o,s,"throw",l)}o(void 0)})}}function he(n,e,t){return e=oS(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function oS(n){var e=sS(n,"string");return typeof e=="symbol"?e:String(e)}function sS(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ir=ye.module("IrisGridProxyModel");function Va(n,e,t,r){return j.isTreeTable(e)?new iS(n,e,t):new Jw(n,e,t,r)}class lS extends ve{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Hr(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),r=this,he(this,"dh",void 0),he(this,"originalModel",void 0),he(this,"model",void 0),he(this,"modelPromise",void 0),he(this,"rollup",void 0),he(this,"selectDistinct",void 0),he(this,"textForCell",function(){return r.model.textForCell(...arguments)}),he(this,"truncationCharForCell",function(){return r.model.truncationCharForCell(...arguments)}),he(this,"textAlignForCell",function(){return r.model.textAlignForCell(...arguments)}),he(this,"colorForCell",function(){return r.model.colorForCell(...arguments)}),he(this,"backgroundColorForCell",function(){return r.model.backgroundColorForCell(...arguments)}),he(this,"textForColumnHeader",function(){return r.model.textForColumnHeader(...arguments)}),he(this,"colorForColumnHeader",function(){return r.model.colorForColumnHeader(...arguments)}),he(this,"textForRowHeader",function(){return r.model.textForRowHeader(...arguments)}),he(this,"textForRowFooter",function(){return r.model.textForRowFooter(...arguments)}),he(this,"isRowMovable",function(){return r.model.isRowMovable(...arguments)}),he(this,"isColumnMovable",function(){return r.model.isColumnMovable(...arguments)}),he(this,"isRowExpandable",function(){return Fe(r.model)?r.model.isRowExpandable(...arguments):!1}),he(this,"isRowExpanded",function(){return Fe(r.model)?r.model.isRowExpanded(...arguments):!1}),he(this,"setRowExpanded",function(){if(Fe(r.model))return r.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),he(this,"expandAll",()=>{if(Fe(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),he(this,"collapseAll",()=>{if(Fe(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),he(this,"depthForRow",function(){return Fe(r.model)?r.model.depthForRow(...arguments):0}),he(this,"getColumnHeaderGroup",function(){return r.model.getColumnHeaderGroup(...arguments)}),he(this,"getColumnHeaderParentGroup",function(){return r.model.getColumnHeaderParentGroup(...arguments)}),he(this,"formatForCell",function(){return r.model.formatForCell(...arguments)}),he(this,"valueForCell",function(){return r.model.valueForCell(...arguments)}),he(this,"renderTypeForCell",function(){return r.model.renderTypeForCell(...arguments)}),he(this,"dataBarOptionsForCell",function(){return r.model.dataBarOptionsForCell(...arguments)}),he(this,"displayString",function(){return r.model.displayString(...arguments)}),he(this,"isEditableRange",function(){return Le(r.model)?r.model.isEditableRange(...arguments):!1}),he(this,"isFilterable",function(){return r.model.isFilterable(...arguments)}),he(this,"setViewport",(s,l,u)=>this.model.setViewport(s,l,u)),he(this,"snapshot",function(){return r.model.snapshot(...arguments)}),he(this,"textSnapshot",function(){return r.model.textSnapshot(...arguments)}),he(this,"valuesTable",function(){return r.model.valuesTable(...arguments)}),he(this,"editValueForCell",function(){return Le(r.model)?r.model.editValueForCell(...arguments):""}),he(this,"setValueForCell",function(){return Le(r.model)?r.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),he(this,"setValueForRanges",function(){return Le(r.model)?r.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),he(this,"setValues",function(){return Le(r.model)?r.model.setValues(...arguments):Promise.resolve()}),he(this,"isValidForCell",function(){return Le(r.model)?r.model.isValidForCell(...arguments):!1}),he(this,"delete",function(){return r.model.delete(...arguments)}),he(this,"commitPending",function(){return r.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var o=Va(e,t,i,a);this.dh=e,this.originalModel=o,this.model=o,this.modelPromise=null,this.rollup=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){Ir.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new Me(r,{detail:t}))}setModel(e){Ir.debug("setModel",e);var t=this.model;t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),this.dispatchEvent(new Me(ve.EVENT.COLUMNS_CHANGED,{detail:e.columns})),Ni(e)&&this.dispatchEvent(new Me(ve.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){Ir.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=Tt.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(Tt.isCanceled(t)){Ir.debug2("setNextModel cancelled");return}Ir.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Me(ve.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(ve.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(ve.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}isColumnSortable(e){return this.model.isColumnSortable(e)}get hasExpandableRows(){return Fe(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(Fe(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}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 isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(Ir.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!nt(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);Ni(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>Va(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(Ir.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){Ir.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);Ni(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>Va(this.dh,i,this.formatter))),this.setNextModel(r)}get table(){if(Ni(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.model.isFilterRequired}get isEditable(){return Le(this.model)&&this.model.isEditable}export(){if(j.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(j.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,r,i,a,o,s){var l=this;return aS(function*(){return l.model.seekRow(e,t,r,i,a,o,s)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const uS=lS;function Xl(n,e,t,r,i,a,o){try{var s=n[a](o),l=s.value}catch(u){t(u);return}s.done?e(l):Promise.resolve(l).then(r,i)}function dS(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(l){Xl(a,r,i,o,s,"next",l)}function s(l){Xl(a,r,i,o,s,"throw",l)}o(void 0)})}}class hS{static makeModel(e,t){var r=arguments;return dS(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new Hr(e),a=null;return!j.isTreeTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new uS(e,t,i,a)})()}}const OS=hS;export{iS as $,ng as A,pS as B,CS as C,ou as D,Sp as E,en as F,K as G,Fp as H,uS as I,tC as J,kt as K,mC as L,Bh as M,qp as N,Jh as O,rs as P,eC as Q,fo as R,ec as S,Mp as T,Nu as U,Bf as V,ve as W,OS as X,Bi as Y,Jw as Z,Gu as _,au as a,Re as a0,_p as a1,Ee as a2,Up as a3,CC as a4,zp as a5,Wr as a6,St as a7,Db as a8,tp as a9,Ni as aa,TS as ab,As as ac,ac as ad,ic as ae,oc as af,Yh as b,Qt as c,Xt as d,uu as e,Qh as f,Vh as g,Jr as h,nc as i,bS as j,Zh as k,Lh as l,lc as m,uc as n,dc as o,gr as p,lt as q,wS as r,SS as s,qo as t,ds as u,yS as v,ES as w,Tn as x,Rp as y,_r as z};
|
|
15
|
-
//# sourceMappingURL=IrisGridModelFactory-
|
|
15
|
+
//# sourceMappingURL=IrisGridModelFactory-f04790a8.js.map
|