@deephaven/code-studio 0.77.1-beta.0 → 0.77.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-7ffbd4ba.js → AppRoot-280e670c.js} +3 -3
- package/build/assets/{AppRoot-7ffbd4ba.js.map → AppRoot-280e670c.js.map} +1 -1
- package/build/assets/{Chart-e2a3a19c.js → Chart-ebd8c605.js} +2 -2
- package/build/assets/{Chart-e2a3a19c.js.map → Chart-ebd8c605.js.map} +1 -1
- package/build/assets/{ControlType-c6032251.js → ControlType-f1bb8293.js} +3 -3
- package/build/assets/{ControlType-c6032251.js.map → ControlType-f1bb8293.js.map} +1 -1
- package/build/assets/{FontBootstrap-bd217cd5.js → FontBootstrap-753901ab.js} +2 -2
- package/build/assets/{FontBootstrap-bd217cd5.js.map → FontBootstrap-753901ab.js.map} +1 -1
- package/build/assets/{FormatterUtils-d6d63795.js → FormatterUtils-29aa8e1a.js} +2 -2
- package/build/assets/{FormatterUtils-d6d63795.js.map → FormatterUtils-29aa8e1a.js.map} +1 -1
- package/build/assets/{Grid-4aafc4c0.js → Grid-e1236296.js} +2 -2
- package/build/assets/{Grid-4aafc4c0.js.map → Grid-e1236296.js.map} +1 -1
- package/build/assets/{GridRenderer-1283ab17.js → GridRenderer-ed7dbad4.js} +2 -2
- package/build/assets/GridRenderer-ed7dbad4.js.map +1 -0
- package/build/assets/{IrisGrid-d548b68a.js → IrisGrid-105d172d.js} +2 -2
- package/build/assets/{IrisGrid-d548b68a.js.map → IrisGrid-105d172d.js.map} +1 -1
- package/build/assets/{IrisGridModel-6326e446.js → IrisGridModel-61ddc43e.js} +2 -2
- package/build/assets/{IrisGridModel-6326e446.js.map → IrisGridModel-61ddc43e.js.map} +1 -1
- package/build/assets/{IrisGridShortcuts-5f94b7a6.js → IrisGridShortcuts-d4875242.js} +2 -2
- package/build/assets/{IrisGridShortcuts-5f94b7a6.js.map → IrisGridShortcuts-d4875242.js.map} +1 -1
- package/build/assets/{IrisGridThemeProvider-ff3e508c.js → IrisGridThemeProvider-b7f4c598.js} +2 -2
- package/build/assets/{IrisGridThemeProvider-ff3e508c.js.map → IrisGridThemeProvider-b7f4c598.js.map} +1 -1
- package/build/assets/{MarkdownEditor-4e90cc6f.js → MarkdownEditor-f869507d.js} +2 -2
- package/build/assets/{MarkdownEditor-4e90cc6f.js.map → MarkdownEditor-f869507d.js.map} +1 -1
- package/build/assets/{MarkdownNotebook-d2d8c979.js → MarkdownNotebook-d2c01a48.js} +2 -2
- package/build/assets/{MarkdownNotebook-d2d8c979.js.map → MarkdownNotebook-d2c01a48.js.map} +1 -1
- package/build/assets/{MissingPartitionError-5480c5f4.js → MissingPartitionError-bd4a06dd.js} +2 -2
- package/build/assets/{MissingPartitionError-5480c5f4.js.map → MissingPartitionError-bd4a06dd.js.map} +1 -1
- package/build/assets/{StyleGuideRoot-a0b841cf.js → StyleGuideRoot-773a2aaf.js} +2 -2
- package/build/assets/{StyleGuideRoot-a0b841cf.js.map → StyleGuideRoot-773a2aaf.js.map} +1 -1
- package/build/assets/{index-63bf2b7c.js → index-3ad3aa8a.js} +2 -2
- package/build/assets/{index-63bf2b7c.js.map → index-3ad3aa8a.js.map} +1 -1
- package/build/assets/{index-8aea8687.js → index-d7716c14.js} +2 -2
- package/build/assets/{index-8aea8687.js.map → index-d7716c14.js.map} +1 -1
- package/build/assets/{index-ad91f162.js → index-f720412a.js} +6 -6
- package/build/assets/index-f720412a.js.map +1 -0
- package/build/assets/useUser-01f40e41.js +2 -0
- package/build/assets/useUser-01f40e41.js.map +1 -0
- package/build/index.html +1 -1
- package/package.json +30 -30
- package/build/assets/GridRenderer-1283ab17.js.map +0 -1
- package/build/assets/index-ad91f162.js.map +0 -1
- package/build/assets/useUser-5eee6d9c.js +0 -2
- package/build/assets/useUser-5eee6d9c.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as J,U as Ge,M as ce,I as L,K as ye,V as ee,L as hr,ba as at,bc as it,af as We,c6 as vr}from"./vendor-2ad5ff96.js";import{Q as lt,aj as nt,aK as ot,s as st,aQ as yr,aP as dt,aY as ut,B as Pr,aM as ht,C as vt,ai as Tr}from"./ControlType-c6032251.js";import{L as jr,ar as gt,ah as ft,ag as mt,j as ct,aV as g,aL as pt}from"./index-8aea8687.js";import{S as Hr}from"./IrisGridShortcuts-5f94b7a6.js";import{i as pe,g as Z,m as Ke,e as Ct}from"./IrisGridModel-6326e446.js";function Mr(o,e){var r=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);e&&(t=t.filter(function(a){return Object.getOwnPropertyDescriptor(o,a).enumerable})),r.push.apply(r,t)}return r}function wt(o){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Mr(Object(r),!0).forEach(function(t){ve(o,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(r)):Mr(Object(r)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(r,t))})}return o}function ve(o,e,r){return e=bt(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function bt(o){var e=Rt(o,"string");return typeof e=="symbol"?e:String(e)}function Rt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}var gr;(function(o){o.UP="UP",o.DOWN="DOWN"})(gr||(gr={}));class Pe extends J.Component{constructor(e){super(e),ve(this,"popper",void 0),ve(this,"cbContainer",void 0),ve(this,"toggleButton",void 0),ve(this,"menuContainer",void 0),ve(this,"input",void 0),ve(this,"searchInput",void 0),ve(this,"getCachedFilteredOptions",Ge((r,t)=>r.filter(a=>a.title.toLowerCase().indexOf(t.toLowerCase())>=0||a.value.toLowerCase().indexOf(t.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=ce.createRef(),this.cbContainer=ce.createRef(),this.toggleButton=ce.createRef(),this.menuContainer=ce.createRef(),this.input=ce.createRef(),this.searchInput=ce.createRef()}componentDidUpdate(){var{menuIsOpen:e,keyboardOptionIndex:r}=this.state;e&&r>=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:r}=this.props;this.setState({value:e}),r(e)}handleResize(){this.setInputWidth()}handleMenuKeyDown(e){var r,t,{filter:a,filteredOptions:i,keyboardOptionIndex:l}=this.state,{options:n}=this.props,s=a?i:n;switch(e.key){case"Enter":((r=s[l])===null||r===void 0?void 0:r.value)!=null&&this.updateInputValue(s[l].value),this.closeMenu(),(t=this.input.current)===null||t===void 0||t.focus(),e.stopPropagation(),e.preventDefault();break;case"ArrowUp":this.handleMenuNavigation(Pe.MENU_NAVIGATION_DIRECTION.UP),e.stopPropagation(),e.preventDefault();break;case"ArrowDown":this.handleMenuNavigation(Pe.MENU_NAVIGATION_DIRECTION.DOWN),e.stopPropagation(),e.preventDefault();break;case"Escape":a!==""?(this.setState({filter:""}),e.stopPropagation()):this.closeMenu();break;case"Tab":!e.shiftKey&&l===s.length-1&&this.closeMenu();break}}handleMenuNavigation(e){var{filter:r,filteredOptions:t,keyboardOptionIndex:a}=this.state,{options:i}=this.props,l=r?t:i,n=l.length,s=0;switch(e){case Pe.MENU_NAVIGATION_DIRECTION.UP:s=-1;break;case Pe.MENU_NAVIGATION_DIRECTION.DOWN:s=1;break}s!==0&&this.setState({keyboardOptionIndex:(a+s+n)%n})}handleInputKeyDown(e){var{onEnter:r}=this.props,{menuIsOpen:t}=this.state;e.key==="ArrowDown"||e.key==="ArrowUp"?t||this.openMenu():e.key==="Enter"&&r()}handleInputChange(e){this.updateInputValue(e.target.value)}handleOptionClick(e){var r,t=Number(e.currentTarget.value),{filter:a,filteredOptions:i}=this.state,{options:l}=this.props,n=a?i:l;this.updateInputValue(n[t].value),this.closeMenu(),(r=this.input.current)===null||r===void 0||r.focus()}handleOptionFocus(e){this.setState({keyboardOptionIndex:Number(e.target.value)})}handleFilterChange(e){var r,{options:t}=this.props,a=e.target.value,i=this.getCachedFilteredOptions(t,a);this.setState({filter:a,filteredOptions:i,keyboardOptionIndex:0}),(r=this.popper.current)===null||r===void 0||r.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:r}=this.state;r&&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 r;this.setState({menuIsOpen:!1}),(r=this.popper.current)===null||r===void 0||r.hide()}this.setState({filter:""})}toggleMenu(e){var{menuIsOpen:r}=this.state;r?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,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;if(this.setState({menuIsOpen:!1}),r){var t;(t=this.input.current)===null||t===void 0||t.focus()}(e=this.popper.current)===null||e===void 0||e.hide()}updateKeyboardIndex(){var{value:e,filter:r,filteredOptions:t}=this.state,{options:a}=this.props,i=r?t:a,l=i.findIndex(n=>n.value===e);this.setState({keyboardOptionIndex:l})}scrollOptionIntoView(){var e,r=(e=this.menuContainer.current)===null||e===void 0?void 0:e.querySelector(".cb-option-btn.keyboard-active");r instanceof HTMLElement&&r.scrollIntoView({block:"nearest",inline:"nearest"})}renderMenuElement(){var{searchPlaceholder:e}=this.props,{filter:r,inputWidth:t}=this.state;return L.jsxs("div",{className:"cb-menu-container",ref:this.menuContainer,role:"presentation",onKeyDown:this.handleMenuKeyDown,onClick:a=>{a.stopPropagation()},style:{width:t},onBlur:this.handleMenuBlur,children:[L.jsx("div",{className:"cb-search-input-container",children:L.jsx(lt,{value:r,ref:this.searchInput,onChange:this.handleFilterChange,className:"cb-search-input",placeholder:e})}),L.jsx("div",{className:"cb-options-container",children:L.jsx("div",{className:"cb-options",children:this.renderOptions()})})]})}renderOptions(){var{options:e}=this.props,{keyboardOptionIndex:r,filter:t,filteredOptions:a}=this.state,i=t?a:e;return i.map((l,n)=>{var s="option-".concat(n,"-").concat(l.value);return L.jsx("button",{type:"button",value:n,className:ye("cb-option-btn",{"keyboard-active":r===n}),onClick:this.handleOptionClick,onFocus:this.handleOptionFocus,children:l.title},s)})}render(){var{options:e,inputPlaceholder:r,disabled:t,className:a,defaultValue:i,spellCheck:l,"data-testid":n}=this.props,{value:s}=this.state,{popperOptions:d}=this.props;return d=wt({placement:"bottom-end",modifiers:{preventOverflow:{enabled:!1}}},d),L.jsxs("div",{className:"input-group cb-container",ref:this.cbContainer,children:[L.jsx("input",{value:s||i,className:ye("form-control",a,"cb-input"),ref:this.input,onChange:this.handleInputChange,placeholder:r||(e[0]!=null?e[0].title:void 0),disabled:t,onBlur:this.handleInputBlur,onKeyDown:this.handleInputKeyDown,spellCheck:l,"data-testid":n!==void 0?"".concat(n,"-input"):void 0}),L.jsx("div",{className:"input-group-append cb-dropdown",children:L.jsxs("button",{tabIndex:-1,type:"button",className:"btn cb-btn form-control",ref:this.toggleButton,onClick:this.toggleMenu,onKeyDown:this.handleInputKeyDown,disabled:t,"data-testid":n!==void 0?"".concat(n,"-btn"):void 0,children:[L.jsx("span",{className:"cb-caret"}),L.jsx(nt,{ref:this.popper,options:d,className:ye("combobox interactive"),onEntered:this.handleMenuOpened,onExited:this.handleMenuExited,children:this.renderMenuElement()})]})})]})}}ve(Pe,"MENU_NAVIGATION_DIRECTION",gr);ve(Pe,"DROP_DOWN_MENU_HEIGHT",200);ve(Pe,"propTypes",{options:ee.arrayOf(ee.shape({title:ee.string.isRequired,value:ee.string.isRequired})).isRequired,popperOptions:ee.shape({title:ee.string.isRequired,value:ee.string.isRequired}),onChange:ee.func,inputPlaceholder:ee.string,searchPlaceholder:ee.string,disabled:ee.bool,className:ee.string,defaultValue:ee.string,spellCheck:ee.bool,onEnter:ee.func,"data-testid":ee.string});ve(Pe,"defaultProps",{onChange(){},inputPlaceholder:"",searchPlaceholder:"Search",disabled:!1,className:"",defaultValue:"",popperOptions:null,spellCheck:!0,onEnter(){},"data-testid":void 0});const Ia=Pe;function zr(o,e,r){return o.substring(0,e)+r+o.substring(e+1)}function St(o,e,r){return o.length<r?"".concat(o).concat(e.substring(o.length,r)):o}function Or(o,e){for(var{length:r}=o,t=o.length-1;t>=0&&e[t]===o[t];t-=1)r=t;return o.substring(0,r)}function Wr(o,e){var r=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);e&&(t=t.filter(function(a){return Object.getOwnPropertyDescriptor(o,a).enumerable})),r.push.apply(r,t)}return r}function yt(o){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Wr(Object(r),!0).forEach(function(t){Pt(o,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(r)):Wr(Object(r)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(r,t))})}return o}function Pt(o,e,r){return e=Tt(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Tt(o){var e=Ht(o,"string");return typeof e=="symbol"?e:String(e)}function Ht(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}var me=jr.module("MaskedInput"),ze={FORWARD:"forward",BACKWARD:"backward",NONE:"none"},tr=" ",Xr=ce.forwardRef((o,e)=>{var{className:r,example:t,getNextSegmentValue:a=(w,p,m)=>m,getPreferredReplacementString:i=zr,onChange:l=()=>!1,onSelect:n=()=>!1,onSubmit:s,pattern:d,placeholder:v,selection:u,value:h,onFocus:c=()=>!1,onBlur:f=()=>!1,"data-testid":b}=o,C=ot(e),y=J.useMemo(()=>Array.isArray(t)?t:[t],[t]),S=J.useMemo(()=>y[0].replace(/[a-zA-Z0-9]/g,tr),[y]);J.useEffect(function(){if(u!=null){var p;me.debug("setting selection...",u);var{selectionStart:m,selectionEnd:H,selectionDirection:W}=u;(p=C.current)===null||p===void 0||p.setSelectionRange(m,H,W),me.debug("selection set!")}},[u,C]);var T=J.useCallback(w=>{for(var p=w,m=w,H=y.length>0?y[0]:h,W=p-1;W>=0&&/[a-zA-Z0-9]/g.test(H.charAt(W));W-=1)p=W;for(var E=m;E<H.length&&/[a-zA-Z0-9]/g.test(H.charAt(E));E+=1)m=E+1;var N=p===m?ze.NONE:ze.BACKWARD;return{selectionStart:p,selectionEnd:m,selectionDirection:N}},[y,h]);function R(w,p){for(var m=arguments.length>2&&arguments[2]!==void 0?arguments[2]:w.length,H="",W=0;W<m;W+=1)w.charAt(W)!==tr?H=H.concat(w[W]):H=H.concat(p[W]);return H=H.concat(p.substring(m)),H}function M(w){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:w.length,m=new RegExp("^".concat(d,"$"));if(m.test(w))return!0;for(var H=0;H<y.length;H+=1){var W=R(w,y[H],p);if(m.test(W))return!0}return!1}function O(w){var p=T(w),m=p.selectionEnd+1;return m>=h.length?p:T(m)}function A(w){var p=T(w),m=p.selectionStart-1;return m<=0?p:T(m)}function I(w,p){var m=T(w),H=h.substring(m.selectionStart,m.selectionEnd),W=a(m,p,H,h),E=h.substring(0,m.selectionStart)+W+h.substring(m.selectionEnd);M(E,m.selectionEnd)&&(l(E),n(m))}var V=J.useCallback(w=>{var{selectionStart:p=0,selectionEnd:m=0,selectionDirection:H="none"}=w.target;if(p===null||m===null||H===null){me.error("Selection attempted on non-text input element",w.target);return}if(me.debug2("handleSelect",p,m,H),!(u!=null&&p===u.selectionStart&&m===u.selectionEnd)){if(u!=null&&p===h.length&&m===h.length&&w.nativeEvent.type!=="mouseup"){n(yt({},u));return}if(p===m){var W=T(p);me.debug("Selection segment from ",p,m,"=>",W),n(W)}else n({selectionStart:p,selectionEnd:m,selectionDirection:H})}},[T,n,u,h]),k=J.useCallback(w=>{var p;if(C.current){me.debug("handleSelectCapture",w);var m=(p=C.current.selectionStart)!==null&&p!==void 0?p:0;m===h.length&&u!=null&&m!==u.selectionStart&&(w.preventDefault(),w.stopPropagation())}},[C,u,h]);function j(w){if(w.preventDefault(),w.stopPropagation(),!!C.current){var{key:p}=w,{selectionStart:m=0,selectionEnd:H=0}=C.current;if(m===null||H===null){me.error("Selection arrow nvaigation attempted on non-text input element",w.target);return}p==="ArrowLeft"?n(A(m)):p==="ArrowRight"?n(O(H)):p==="ArrowUp"?I(m,-1):p==="ArrowDown"&&I(m,1)}}function Y(w){if(C.current){me.debug("handleKeyDown",w);var{key:p}=w,{selectionStart:m=0,selectionEnd:H=0}=C.current;if(m===null||H===null){me.error("Selection key event on non-text input element",w.target);return}if(p==="Enter"){s?.(w);return}if(p.startsWith("Arrow")){j(w);return}if(p==="Delete"||p==="Backspace"){if(w.preventDefault(),w.stopPropagation(),H>=Or(h,S).length){var W=h.substring(0,m===H?m-1:m),E=Or(W,S);E!==h&&(l(E),n({selectionStart:E.length,selectionEnd:E.length,selectionDirection:ze.NONE}));return}if(m!==H){var N=h.substring(0,m)+h.substring(m,H).replace(/[a-zA-Z0-9]/g,tr)+h.substring(H);me.debug("Range ",m,H,"deleted, setting value",N),l(N),n({selectionStart:m,selectionEnd:m,selectionDirection:ze.NONE})}else if(m>0)for(var D=m-1;D>=0;D-=1){var P=h.substring(0,D)+h.substring(D,m).replace(/[a-zA-Z0-9]/g,tr)+h.substring(m);if(P!==h){l(P),n({selectionStart:D,selectionEnd:D,selectionDirection:ze.NONE});return}}return}if(!(w.altKey||w.metaKey||w.ctrlKey||p.length>1)){w.preventDefault(),w.stopPropagation();for(var B=Array.from(new Set([p,p.toUpperCase(),p.toLowerCase()])),z=0;z<B.length;z+=1)for(var F=B[z],$=/[a-zA-Z0-9]/g.test(F)?y[0].length-1:m,X=m;X<=$;X+=1){var U=St(h,y[0],X+1),q=i(U,X,F,m,H);if(M(q,X+1)){var G=T(X),K=X+1,x={selectionStart:K,selectionEnd:K,selectionDirection:ze.NONE};if(K>=G.selectionEnd){var _=O(X);_.selectionStart!==G.selectionStart&&(x=_)}me.debug("handleKeyDown",p,"=>",q,x),l(q),n(x);return}}}}}return L.jsx("input",{ref:C,className:ye("form-control masked-input",r),type:"text",pattern:d,placeholder:v,value:h,onChange:()=>{},onKeyDown:Y,onSelect:V,onSelectCapture:k,onFocus:c,onBlur:f,"data-testid":b})});Xr.defaultProps={className:"",placeholder:void 0,onChange(){},onSelect(){},getNextSegmentValue:(o,e,r)=>r,getPreferredReplacementString:zr,selection:void 0,onFocus(){},onBlur(){},"data-testid":void 0};const Mt=Xr;function Xe(o,e,r,t,a){var i=t-r+1,l=((parseInt(e,10)-o-r)%i+i)%i+r;return"".concat(l).padStart(a,"0")}function Ot(o,e,r){var{selectionStart:t}=o;return t===0?Xe(e,r,1900,2099,4):t===5?Xe(e,r,1,12,2):t===8?Xe(e,r,1,31,2):t===11?Xe(e,r,0,23,2):t===17||t===14?Xe(e,r,0,59,2):t===20||t===24||t===28?Xe(e,r,0,999,3):r}function fr(o){var e=o.substring(0,23),r=o.substring(23,26),t=o.substring(26);return[e,r,t].filter(a=>a!=="").join("")}var Wt=jr.module("DateTimeInput"),Ft="[12][0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])",Bt="([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]\\.[0-9]{3}[0-9]{3}[0-9]{3}",It="".concat(Ft," ").concat(Bt),ir="2022-01-01",Yr="".concat(ir," 00:00:00.000000000"),Dt="YYYY-MM-DD HH:MM:SS.SSSSSSSSS";function Fr(o){return o!=null&&o.length>=ir.length?"".concat(o.substring(0,ir.length)).concat(o.substring(ir.length).replace(/\u2007/g,"0")).concat(Yr.substring(o.length)):o}function Br(o){return o.replace(/\u200B/g,"")}var kt=[fr(Yr)],mr=ce.forwardRef((o,e)=>{var{className:r="",onChange:t=()=>{},defaultValue:a="",onFocus:i=()=>{},onBlur:l=()=>{},onSubmit:n,"data-testid":s}=o,[d,v]=J.useState(a.length>0?fr(a):""),[u,h]=J.useState(),c=J.useCallback(b=>{Wt.debug("handleChange",b),v(b),t(Fr(Br(b)))},[t]),f=J.useCallback(()=>{var b=Br(d),C=Fr(b);C!==b&&v(fr(C)),l()},[d,l]);return L.jsx("div",{className:"d-flex flex-row align-items-center",children:L.jsx(Mt,{ref:e,className:ye(r),example:kt,getNextSegmentValue:Ot,onChange:c,onSelect:h,onSubmit:n,pattern:It,placeholder:Dt,selection:u,value:d,onFocus:i,onBlur:f,"data-testid":s})})});mr.displayName="DateTimeInput";mr.defaultProps={className:"",onChange:()=>{},defaultValue:"",onFocus:()=>{},onBlur:()=>{},"data-testid":void 0};const Da=mr;function Ir(o,e){var r=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);e&&(t=t.filter(function(a){return Object.getOwnPropertyDescriptor(o,a).enumerable})),r.push.apply(r,t)}return r}function De(o){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ir(Object(r),!0).forEach(function(t){Ae(o,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(r)):Ir(Object(r)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(r,t))})}return o}function Ae(o,e,r){return e=Et(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Et(o){var e=Nt(o,"string");return typeof e=="symbol"?e:String(e)}function Nt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class Te extends J.PureComponent{static renderHandle(){return L.jsxs("div",{children:[L.jsx(st,{children:"Drag to re-order"}),L.jsx(hr,{icon:gt})]})}static renderBadge(e){var{text:r}=e;return r!=null&&r.length>0?L.jsx("span",{className:"number-badge",children:r}):null}static renderTextItem(e){var{text:r,badgeText:t="",className:a=""}=e;return L.jsxs("div",{className:ye("item-list-item-content","draggable-item-list-item-content",a),children:[L.jsx("span",{className:"title",children:r}),Te.renderBadge({text:t}),Te.renderHandle()]})}static renderItem(e){var r,t,{item:a,isClone:i,selectedCount:l}=e,n=a!=null?(r=(t=a.displayValue)!==null&&t!==void 0?t:a.value)!==null&&r!==void 0?r:"".concat(a):"",s=i!==void 0&&i?"".concat(l):"",d=i!==void 0&&i?"item-list-item-clone":"";return Te.renderTextItem({text:n,badgeText:s,className:d})}static getDraggableId(e,r){return"".concat(e,"/").concat(r)}static getDraggableIndex(e){var r=e.split("/").pop();return parseInt(r!==void 0?r:"",10)}constructor(e){super(e),Ae(this,"itemList",void 0),Ae(this,"getCachedDraggableItem",Ge((r,t,a,i,l,n,s,d)=>L.jsx(at,{draggableId:Te.getDraggableId(r,i),index:i,isDragDisabled:s,children:v=>L.jsx("div",De(De(De({role:"menuitem",className:"draggable-item-list-item",ref:v.innerRef,tabIndex:-1},v.draggableProps),v.dragHandleProps),{},{children:t({item:a,itemIndex:i,isFocused:l,isSelected:n,style:d,isClone:!1})}))},i),{max:yr.CACHE_SIZE})),Ae(this,"getCachedRenderDraggableItem",Ge((r,t,a)=>i=>{var{item:l,itemIndex:n,isFocused:s,isSelected:d,style:v}=i;return this.getCachedDraggableItem(r,a,l,n,s,d,t,v)},{max:1})),Ae(this,"getCachedRenderClone",Ge((r,t,a,i)=>(l,n,s)=>{var{selectedCount:d}=this.state,{draggableProps:v,dragHandleProps:u,innerRef:h}=l,{index:c}=s.source,f=t[c-a];return L.jsx("div",De(De(De({className:ye("draggable-item-list-dragging-item-container",r)},v),u),{},{ref:h,children:L.jsx("div",{className:ye("draggable-item-list-dragging-item",{"two-dragged":d===2},{"multiple-dragged":d>2}),children:i({item:f,itemIndex:c,isFocused:!1,isSelected:!0,style:{},isClone:!0,selectedCount:d})})}))},{max:1})),this.handleSelectionChange=this.handleSelectionChange.bind(this),this.itemList=ce.createRef(),this.state={selectedCount:0}}selectItem(e){var r;(r=this.itemList.current)===null||r===void 0||r.selectItem(e)}focusItem(e){var r;(r=this.itemList.current)===null||r===void 0||r.focusItem(e)}scrollToItem(e){var r;(r=this.itemList.current)===null||r===void 0||r.scrollToItem(e)}handleSelectionChange(e){this.setState({selectedCount:dt.count(e)});var{onSelectionChange:r}=this.props;r(e)}render(){var{className:e,draggablePrefix:r,draggingItemClassName:t,droppableId:a,isDoubleClickSelect:i,isDragDisabled:l,isDropDisabled:n,isMultiSelect:s,isStickyBottom:d,itemCount:v,items:u,offset:h,onFocusChange:c,onSelect:f,onViewportChange:b,renderItem:C,rowHeight:y,selectedRanges:S,style:T,"data-testid":R}=this.props;return L.jsx(it,{isDropDisabled:n,droppableId:a,mode:"virtual",renderClone:this.getCachedRenderClone(t,u,h,C),"data-testid":R,children:(M,O)=>L.jsx("div",De(De({role:"menu",className:ye("draggable-item-list",e,{"is-drop-disabled":n,"is-drag-disabled":l,"is-dragging-from-this":O.draggingFromThisWith,"is-dragging-over":O.isDraggingOver,"is-dropping":O.draggingOverWith}),style:T,ref:M.innerRef},M.droppableProps),{},{children:L.jsx(yr,{focusSelector:".draggable-item-list-item",isDoubleClickSelect:i,isDragSelect:!1,isMultiSelect:s,isStickyBottom:d,itemCount:v,items:u,onFocusChange:c,onSelect:f,onSelectionChange:this.handleSelectionChange,onViewportChange:b,offset:h,ref:this.itemList,renderItem:this.getCachedRenderDraggableItem(r,l,C),rowHeight:y,selectedRanges:S})}))})}}Ae(Te,"DEFAULT_ROW_HEIGHT",30);Ae(Te,"defaultProps",{className:"",draggingItemClassName:"",offset:0,items:[],rowHeight:Te.DEFAULT_ROW_HEIGHT,isDeselectOnClick:!0,isDoubleClickSelect:!0,isDropDisabled:!1,isDragDisabled:!1,isMultiSelect:!1,isStickyBottom:!1,disableSelect:!1,style:null,onFocusChange(){},onSelect(){},onSelectionChange(){},onViewportChange(){},renderItem:Te.renderItem,selectedRanges:[],draggablePrefix:"draggable-item",droppableId:"droppable-item-list","data-testid":void 0});const ka=Te;function Dr(o){return o.isOn!==void 0}function Lt(o){var{item:e,onSelect:r=()=>{},"data-testid":t}=o,{icon:a,subtitle:i,title:l}=e,n=J.useMemo(()=>Dr(e)?()=>{e.onChange(!e.isOn)}:r,[e,r]);return L.jsxs("div",{className:"btn btn-navigation-menu-item","data-testid":"menu-item-".concat(l),onClick:n,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&n()},tabIndex:0,role:"menuitem",children:[a!==void 0&&L.jsx("div",{className:"icon",children:L.jsx(hr,{icon:a})}),L.jsx("div",{className:"title",children:l}),i!==void 0&&L.jsx("div",{className:"shortcut",children:i}),L.jsx("div",{className:"accessory","data-testid":t,children:Dr(e)?L.jsx(ut,{on:e.isOn,onClick:s=>{s.stopPropagation(),n()}}):L.jsx(hr,{icon:ft})})]})}function Ea(o){var{items:e,onSelect:r=()=>{},"data-testid":t}=o;return L.jsx("div",{className:"navigation-menu-view","data-testid":t,children:L.jsx("ul",{className:"navigation-menu-list",children:e.map((a,i)=>L.jsx("li",{children:L.jsx(Lt,{item:a,onSelect:()=>{r(i)}})},a.title))})})}function Na(o){var{children:e,onBack:r,onClose:t,title:a,"data-testid":i}=o;return L.jsxs("div",{className:"navigation-page","data-testid":i,children:[L.jsxs("div",{className:"navigation-title-bar",children:[L.jsx("div",{className:"navigation-left-buttons",children:r!==void 0&&L.jsx(Pr,{kind:"ghost",className:"btn-back m-1 btn-sm","data-testid":"btn-page-back",onClick:r,icon:mt,children:"Back"})}),L.jsx("div",{className:"navigation-title",children:a}),L.jsx("div",{className:"navigation-right-buttons",children:t!==void 0&&L.jsx(Pr,{kind:"ghost",className:"btn-close btn-sm px-2 m-1","data-testid":"btn-page-close",onClick:t,icon:ct,tooltip:"Close"})})]}),L.jsx("div",{className:"navigation-content",children:e})]})}function La(o){var{children:e,"data-testid":r}=o,t=J.useMemo(()=>ce.Children.toArray(e),[e]),a=ht(t),[i,l]=J.useState(t[t.length-1]),[n,s]=J.useState(null),[d,v]=J.useState(null);J.useEffect(function(){if(!(a===void 0||t===a)){var f=t[t.length-1];t.length===a.length||a.length===0||n!==null||d!==null?n!==null&&f!==n?s(f):f!==d&&f!==i&&l(f):t.length>a.length?s(f):t.length<a.length&&(l(f),v(a[a.length-1]))}},[t,a,n,d,i]);var u=J.useCallback(()=>{l(n),s(null)},[n]),h=J.useCallback(()=>{v(null)},[]);return L.jsxs("div",{className:"navigation-stack",children:[L.jsx("div",{className:"main-view","data-testid":r,children:i}),L.jsx(Hr,{direction:"right",in:d!=null,onEntered:h,children:L.jsx(L.Fragment,{children:d!=null&&L.jsx("div",{className:"popping-view",children:d})})}),L.jsx(Hr,{in:n!=null,onEntered:u,children:L.jsx(L.Fragment,{children:n!=null&&L.jsx("div",{className:"pushing-view",children:n})})})]})}var At=["children"];function kr(o,e){var r=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);e&&(t=t.filter(function(a){return Object.getOwnPropertyDescriptor(o,a).enumerable})),r.push.apply(r,t)}return r}function Er(o){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?kr(Object(r),!0).forEach(function(t){Vt(o,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(r)):kr(Object(r)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(r,t))})}return o}function Vt(o,e,r){return e=jt(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function jt(o){var e=zt(o,"string");return typeof e=="symbol"?e:String(e)}function zt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}function Xt(o,e){if(o==null)return{};var r=Yt(o,e),t,a;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(o);for(a=0;a<i.length;a++)t=i[a],!(e.indexOf(t)>=0)&&Object.prototype.propertyIsEnumerable.call(o,t)&&(r[t]=o[t])}return r}function Yt(o,e){if(o==null)return{};var r={},t=Object.keys(o),a,i;for(i=0;i<t.length;i++)a=t[i],!(e.indexOf(a)>=0)&&(r[a]=o[a]);return r}function Aa(o){var{children:e}=o,r=Xt(o,At);return L.jsx("option",Er(Er({},r),{},{children:e}))}function Ye(o,e,r){return e=$t(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function $t(o){var e=Gt(o,"string");return typeof e=="symbol"?e:String(e)}function Gt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class $r extends J.PureComponent{constructor(e){super(e),Ye(this,"list",void 0),Ye(this,"topRow",void 0),Ye(this,"bottomRow",void 0),Ye(this,"getCachedItem",Ge((r,t,a,i,l,n,s)=>{var d={height:l},v=i??a;return L.jsx("li",{className:"value-list-item",style:d,tabIndex:-1,children:L.jsx(vt,{checked:n,disabled:s,onChange:()=>this.handleSelect(r),children:v})},t)},{max:1e3})),Ye(this,"getCachedItems",Ge((r,t,a,i)=>{for(var l=[],n=0;n<r.length;n+=1){var s=r[n],{value:d,displayValue:v,isSelected:u}=s,h=a+n,c=h,f=this.getCachedItem(h,c,d,v,t,u,i);l.push(f)}return l},{max:1})),this.handleBlur=this.handleBlur.bind(this),this.handleScroll=this.handleScroll.bind(this),this.handleSelect=this.handleSelect.bind(this),this.list=ce.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:r}=this.props;r?.(e)}}handleScroll(){this.sendViewportUpdate()}handleSelect(e){var{items:r,offset:t,onSelect:a}=this.props,i=e-t;if(i>=0&&i<r.length){var l=r[i],{value:n}=l;a(e,n)}else a(e,null)}sendViewportUpdate(){if(!(!this.list.current||this.list.current.clientHeight===0)){var{onViewportChange:e,rowHeight:r}=this.props,t=this.list.current.scrollTop,a=t+this.list.current.clientHeight,i=Math.floor(t/r),l=Math.ceil(a/r);(this.topRow!==i||this.bottomRow!==l)&&(this.topRow=i,this.bottomRow=l,e(i,l))}}getElement(e){if(this.list.current==null)return null;var r=this.list.current.querySelectorAll(".value-list-item");return r[e]}scrollIntoView(e){var r=this.getElement(e);r?.scrollIntoView({block:"center"})}render(){var{className:e,disabled:r,isInvalid:t,items:a,itemCount:i,offset:l,rowHeight:n,"data-testid":s}=this.props,d=this.getCachedItems(a,n,l,r);return L.jsx("div",{className:ye("select-value-list-scroll-pane h-100 w-100",{"is-invalid":t},e),onBlur:this.handleBlur,onScroll:this.handleScroll,ref:this.list,"data-testid":s,children:L.jsx("div",{className:"select-value-list",style:{height:i*n},children:L.jsx("ol",{className:"select-value-list-content",style:{position:"absolute",height:a.length*n,top:l*n,left:0},children:d})})})}}Ye($r,"defaultProps",{disabled:!1,rowHeight:21,onBlur:()=>{},"data-testid":void 0});const Va=$r;function le(o,e,r){return e=Kt(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Kt(o){var e=Ut(o,"string");return typeof e=="symbol"?e:String(e)}function Ut(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}function ar(o){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:er.CACHE_SIZE,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Math.floor(e/2);if(o.size>e)for(var t=o.keys();o.size>r;)o.delete(t.next().value)}function Nr(o,e,r,t,a){for(var i=new Map,l=0,n=0;n<o&&n<r;n+=1)i.set(n,l),l+=g(a,n);l=t;for(var s=0;s<e&&r-s-1>=0;s+=1)l-=g(a,r-s-1),i.set(r-s-1,l);return i}class er{constructor(){var{userColumnWidths:e=new Map,userRowHeights:r=new Map,calculatedColumnWidths:t=new Map,calculatedRowHeights:a=new Map,fontWidths:i=new Map,modelRows:l=new Map,modelColumns:n=new Map,movedRows:s=[],movedColumns:d=[],initialRowHeights:v=new Map,initialColumnWidths:u=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};le(this,"initialRowHeights",void 0),le(this,"initialColumnWidths",void 0),le(this,"userColumnWidths",void 0),le(this,"userRowHeights",void 0),le(this,"calculatedColumnWidths",void 0),le(this,"calculatedRowHeights",void 0),le(this,"fontWidths",void 0),le(this,"modelRows",void 0),le(this,"modelColumns",void 0),le(this,"movedRows",void 0),le(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=r,this.calculatedRowHeights=a,this.calculatedColumnWidths=t,this.fontWidths=i,this.modelRows=l,this.modelColumns=n,this.movedRows=s,this.movedColumns=d,this.initialRowHeights=v,this.initialColumnWidths=u}getMetrics(e){var{left:r,top:t,leftOffset:a,topOffset:i,width:l,height:n,theme:s,model:d,movedRows:v,movedColumns:u,draggingColumn:h}=e,{rowHeight:c,rowHeaderWidth:f,rowFooterWidth:b,columnWidth:C,columnHeaderHeight:y,minScrollHandleSize:S,scrollBarSize:T}=s;v!==this.movedRows&&(this.movedRows=v,this.modelRows.clear()),u!==this.movedColumns&&(this.movedColumns=u,this.modelColumns.clear());var{columnCount:R,rowCount:M,floatingTopRowCount:O,floatingBottomRowCount:A,floatingLeftColumnCount:I,floatingRightColumnCount:V,columnHeaderMaxDepth:k}=d,j=this.getFirstRow(e),Y=this.getFirstColumn(e),w=this.getGridX(e),p=this.getGridY(e),m=pe(d)&&d.hasExpandableRows?this.calculateTreePaddingX(e):0,H=0,W=this.getVisibleRowHeights(e),E=this.getVisibleColumnWidths(e,Y,m),N=Array.from(W.keys()),D=Array.from(E.keys()),P=new Map([...W,...this.getFloatingRowHeights(e)]),B=new Map([...E,...this.getFloatingColumnWidths(e)]),z=this.getVisibleColumnXs(B,D,a),F=this.getVisibleRowYs(P,N,i),$=N.length>0?N[N.length-1]:t,X=D.length>0?D[D.length-1]:r,U=this.getBottomViewport(e,N,F,P),q=this.getRightViewport(e,D,z,B),G=this.getFloatingTopHeight(e,P),K=this.getFloatingBottomHeight(e,P),x=this.getFloatingLeftWidth(e,B),_=this.getFloatingRightWidth(e,B),ge=Array.from(B.values()),ne=Array.from(P.values()),ie=ge.reduce((Ne,ur)=>Ne+ur,0)-a,re=ne.reduce((Ne,ur)=>Ne+ur,0)-i,oe=a+ie+b,se=i+re,de=l-w,ue=n-p,Fe=this.getLastLeft(e,null,de-b),He=this.getLastLeft(e,null,de-b-T),qe=this.getLastTop(e,null,ue-K),Ze=this.getLastTop(e,null,ue-K-T),Ce=He,te=Ze;Fe===0&&qe===0&&(Ce=0,te=0);var Me=Ce>0,we=Me?T:0,fe=te>0,be=fe?T:0,Ve=w,Oe=k*y,Re=l-Ve-be,he=n-Oe-we,je=R===1?Re/oe:(R-Ce)/R,ke=M===1?he/se:(M-te)/M,Ee=Me?We(Re*je,S,Re-1):0,Se=fe?We(he*ke,S,he-1):0,Be=g(B,r,0),Qe=g(P,t,0),rr=Be>0?a/Be:0,lr=Qe>0?i/Qe:0,nr=R===1?a/(oe-de):(r+rr)/Ce,or=M===1?i/(se-ue):(t+lr)/te,sr=Me?nr*(Re-Ee):0,Q=fe?or*(he-Se):0,pr=[...Array(O).keys(),...[...Array(A).keys()].map(Ne=>M-Ne-1)],dr=new Map([...F,...this.getFloatingRowYs(e,P,Math.floor(n-p-we))]),Cr=[...Array(I).keys(),...[...Array(V).keys()].map(Ne=>R-Ne-1)],Je=new Map([...z,...this.getFloatingColumnXs(e,B,Math.floor(l-w-be))]),wr=[];if(h)for(var Ie=h.range[0];Ie<=h.range[1];Ie+=1)wr.push(Ie),B.has(Ie)||B.set(Ie,this.getVisibleColumnWidth(Ie,e)),Je.has(Ie)||Je.set(Ie,0);var br=N.concat(pr),Rr=D.concat(Cr).concat(wr),Sr=this.getModelRows(br,e),Kr=this.getModelColumns(Rr,e),Ur=this.getVisibleRowTreeBoxes(P,Sr,e),qr=this.getTopVisible(e,dr,P,N),Zr=this.getLeftVisible(e,Je,B,D),Qr=te>0?this.getBottomVisible(e,dr,P,N,p):$,Jr=Ce>0?this.getRightVisible(e,Je,B,D,w):X,{fontWidths:_r,userColumnWidths:xr,userRowHeights:et,calculatedRowHeights:rt,calculatedColumnWidths:tt}=this;return{rowHeight:c,rowHeaderWidth:f,rowFooterWidth:b,rowCount:M,columnWidth:C,columnCount:R,columnHeaderHeight:y,floatingTopRowCount:O,floatingBottomRowCount:A,floatingLeftColumnCount:I,floatingRightColumnCount:V,gridX:w,gridY:p,firstRow:j,firstColumn:Y,treePaddingX:m,treePaddingY:H,left:r,top:t,bottom:$,right:X,topOffset:i,leftOffset:a,topVisible:qr,leftVisible:Zr,bottomVisible:Qr,rightVisible:Jr,bottomViewport:U,rightViewport:q,width:l,height:n,maxX:ie,maxY:re,lastLeft:Ce,lastTop:te,barHeight:he,barTop:Oe,barWidth:Re,barLeft:Ve,handleHeight:Se,handleWidth:Ee,hasHorizontalBar:Me,hasVerticalBar:fe,verticalBarWidth:be,horizontalBarHeight:we,scrollX:sr,scrollY:Q,scrollableContentWidth:oe,scrollableContentHeight:se,scrollableViewportWidth:de,scrollableViewportHeight:ue,visibleRows:N,visibleColumns:D,visibleRowHeights:W,visibleColumnWidths:E,floatingRows:pr,floatingColumns:Cr,allRows:br,allColumns:Rr,allRowHeights:P,allColumnWidths:B,floatingTopHeight:G,floatingBottomHeight:K,floatingLeftWidth:x,floatingRightWidth:_,visibleRowYs:F,visibleColumnXs:z,allRowYs:dr,allColumnXs:Je,visibleRowTreeBoxes:Ur,modelRows:Sr,modelColumns:Kr,movedRows:v,movedColumns:u,fontWidths:_r,userColumnWidths:xr,userRowHeights:et,calculatedRowHeights:rt,calculatedColumnWidths:tt,columnHeaderMaxDepth:k}}getGridX(e){var{theme:r}=e,{rowHeaderWidth:t}=r;return t}getGridY(e){var{theme:r,model:t}=e,{columnHeaderHeight:a}=r,{columnHeaderMaxDepth:i}=t;return i*a}getVisibleHeight(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{height:t,theme:a}=e,{scrollBarSize:i}=a,l=this.getGridY(e),n=this.getFloatingBottomHeight(e,r),s=this.getFloatingTopHeight(e,r);return t-n-s-l-i}getVisibleWidth(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{width:t,theme:a}=e,{scrollBarSize:i,rowFooterWidth:l}=a,n=this.getGridX(e),s=this.getFloatingRightWidth(e,r),d=this.getFloatingLeftWidth(e,r);return t-d-s-n-i-l}getFirstIndex(e,r,t){for(var a=e.size+1,i=0;i<a;i+=1){var l=r(i,t);if(e.get(l)!==0)return i}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,r,t){var{model:a}=e,{columnCount:i,floatingRightColumnCount:l}=a,n=Math.max(0,i-l-1);r!=null&&(n=r);for(var s=0;n>=0;){var d=this.getVisibleColumnWidth(n,e);if(s+=d,s>=t)return We(n+1,0,r??i-1);n-=1}return 0}getLastTop(e,r,t){var{model:a}=e,{rowCount:i,floatingBottomRowCount:l}=a,n=Math.max(0,i-l-1);r!=null&&(n=r);for(var s=0;n>=0;){var d=this.getVisibleRowHeight(n,e);if(s+=d,s>=t)return We(n+1,0,i-1);n-=1}return 0}getTopForTopVisible(e,r){for(var t=this.getFloatingTopHeight(e),a=r,i=0;a>0&&i<t;)a-=1,i+=this.getVisibleRowHeight(a,e);return a}getTopForBottomVisible(e,r){var{height:t}=e,a=this.getGridY(e),i=this.getFloatingBottomHeight(e),l=t-a-i;return this.getLastTop(e,r,l)}getLeftForLeftVisible(e,r){for(var t=this.getFloatingLeftWidth(e),a=r,i=0;a>0&&i<t;)a-=1,i+=this.getVisibleColumnWidth(a,e);return a}getLeftForRightVisible(e,r){var{width:t}=e,a=this.getGridX(e),i=this.getFloatingRightWidth(e),l=t-a-i;return this.getLastLeft(e,r,l)}getFloatingRowHeights(e){for(var{model:r}=e,{floatingTopRowCount:t,floatingBottomRowCount:a,rowCount:i}=r,l=new Map,n=0;n<t&&n<i;n+=1)l.set(n,this.getVisibleRowHeight(n,e));for(var s=0;s<a&&i-s-1>=0;s+=1){var d=i-s-1;l.set(d,this.getVisibleRowHeight(d,e))}return l}getVisibleRowHeights(e){for(var{top:r,topOffset:t,height:a,model:i}=e,l=0,n=r,s=new Map,{rowCount:d}=i;l<a+t&&n<d;){var v=this.getVisibleRowHeight(n,e);s.set(n,v),l+=v,n+=1}return s}getFloatingColumnWidths(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{model:a}=e,{columnCount:i,floatingLeftColumnCount:l,floatingRightColumnCount:n}=a,s=new Map,d=0;d<l&&d<i;d+=1)s.set(d,this.getVisibleColumnWidth(d,e,r,t));for(var v=0;v<n&&i-v-1>=0;v+=1){var u=i-v-1;s.set(u,this.getVisibleColumnWidth(u,e,r,t))}return s}getVisibleColumnWidths(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{left:a,leftOffset:i,width:l,model:n}=e,s=0,d=a,v=new Map,{columnCount:u}=n;s<l+i&&d<u;){var h=this.getVisibleColumnWidth(d,e,r,t);v.set(d,h),s+=h,d+=1}return v}getFloatingColumnXs(e,r,t){var{model:a}=e,{columnCount:i,floatingLeftColumnCount:l,floatingRightColumnCount:n}=a;return Nr(l,n,i,t,r)}getVisibleColumnXs(e,r,t){for(var a=new Map,i=-t,l=0;l<r.length;l+=1){var n=r[l],s=g(e,n);a.set(n,i),i+=s}return a}getFloatingRowYs(e,r,t){var{model:a}=e,{floatingTopRowCount:i,floatingBottomRowCount:l,rowCount:n}=a;return Nr(i,l,n,t,r)}getVisibleRowYs(e,r,t){for(var a=new Map,i=-t,l=0;l<r.length;l+=1){var n=r[l],s=g(e,n);a.set(n,i),i+=s}return a}getVisibleRowTreeBoxes(e,r,t){var a=new Map,{model:i,theme:l}=t,{treeDepthIndent:n,treeHorizontalPadding:s}=l;return pe(i)&&i.hasExpandableRows&&e.forEach((d,v)=>{var u=g(r,v);if(i.isRowExpandable(u)){var h=i.depthForRow(u),c=h*n+s,f=(h+1)*n+s,b=0,C=d;a.set(v,{x1:c,y1:b,x2:f,y2:C})}}),a}getFloatingLeftWidth(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:t}=e,{floatingLeftColumnCount:a}=t,i=0,l=0;l<a;l+=1)i+=g(r,l);return i}getFloatingRightWidth(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:t}=e,{floatingRightColumnCount:a,columnCount:i}=t,l=0,n=0;n<a;n+=1)l+=g(r,i-n-1);return l}getFloatingTopHeight(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:t}=e,{floatingTopRowCount:a}=t,i=0,l=0;l<a;l+=1)i+=g(r,l);return i}getFloatingBottomHeight(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:t}=e,{floatingBottomRowCount:a,rowCount:i}=t,l=0,n=0;n<a;n+=1)l+=g(r,i-n-1);return l}getTopVisible(e,r,t,a){for(var i=this.getFloatingTopHeight(e,t),l=0;l<a.length;l+=1){var n=a[l],s=g(r,n);if(s>=i)return n}return 0}getLeftVisible(e,r,t,a){for(var i=this.getFloatingLeftWidth(e,t),l=0;l<a.length;l+=1){var n=a[l],s=g(r,n);if(s>=i)return n}return 0}getBottomVisible(e,r,t,a,i){for(var{height:l,theme:n}=e,{scrollBarSize:s}=n,d=this.getFloatingBottomHeight(e,t),v=l-i-s-d,u=a.length-1;u>=0;u-=1){var h=a[u],c=g(r,h),f=g(t,h);if(c+f<=v)return h}return 0}getRightVisible(e,r,t,a,i){for(var{width:l,theme:n}=e,{scrollBarSize:s}=n,d=this.getFloatingRightWidth(e,t),v=l-i-s-d,u=a.length-1;u>=0;u-=1){var h=a[u],c=g(r,h),f=g(t,h);if(c+f<=v)return h}return 0}getBottomViewport(e,r,t,a){var{height:i,theme:l}=e,{rowHeight:n}=l;return this.getLastIndexViewport(r,t,a,i,n)}getRightViewport(e,r,t,a){var{width:i,theme:l}=e,{columnWidth:n}=l;return this.getLastIndexViewport(r,t,a,i,n)}getLastIndexViewport(e,r,t,a,i){var l=0,n=0;return e.length>0&&(l=e[e.length-1],n=g(r,l)+g(t,l)),n<a&&(l+=Math.ceil((a-n)/i)),l}getVisibleItemSize(e,r,t){var a;return(a=r.get(e))!==null&&a!==void 0?a:t()}getVisibleRowHeight(e,r){var t=this.getModelRow(e,r),a=this.calculateRowHeight(e,t,r);return this.getVisibleItemSize(t,this.userRowHeights,()=>{var i=this.initialRowHeights.get(t);return i!==void 0?i:a})}getVisibleColumnWidth(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.getFirstColumn(r),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.calculateTreePaddingX(r),i=this.getModelColumn(e,r),l=this.calculateColumnWidth(e,i,r,t,a);return this.getVisibleItemSize(i,this.userColumnWidths,()=>{var n=this.initialColumnWidths.get(i);return n!==void 0?n:l})}getModelRows(e,r){for(var t=new Map,a=0;a<e.length;a+=1){var i=e[a],l=this.getModelRow(i,r);t.set(i,l)}return t}getModelRow(e,r){if(this.modelRows.has(e))return g(this.modelRows,e);var{movedRows:t}=r,a=Z.getModelIndex(e,t);return this.modelRows.set(e,a),a}getModelColumns(e,r){for(var t=new Map,a=0;a<e.length;a+=1){var i=e[a],l=this.getModelColumn(i,r);t.set(i,l)}return t}getModelColumn(e,r){var t=this.modelColumns.has(e);if(t)return g(this.modelColumns,e);var{movedColumns:a}=r,i=Z.getModelIndex(e,a);return this.modelColumns.set(e,i),i}calculateRowHeight(e,r,t){var{theme:a}=t,{autoSizeRows:i,rowHeight:l}=a;if(!i)return l;var n=this.calculatedRowHeights.get(r);return n??(this.calculatedRowHeights.set(r,Math.ceil(l)),ar(this.calculatedRowHeights),l)}calculateColumnWidth(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.getFirstColumn(t),i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.calculateTreePaddingX(t),{theme:l}=t,{autoSizeColumns:n,minColumnWidth:s,maxColumnWidth:d}=l;if(!n){var{columnWidth:v}=l;return v}var u=this.calculateColumnHeaderWidth(r,t),h=this.calculateColumnDataWidth(r,t),c=this.calculatedColumnWidths.get(r),f=Math.ceil(Math.max(u,h));return f=Math.max(s,f),f=Math.min(d,f),c!=null&&c>f?f=c:(this.calculatedColumnWidths.set(r,f),ar(this.calculatedColumnWidths)),e===a&&(f+=i),f}calculateColumnHeaderWidth(e,r){var{model:t,theme:a}=r,{headerFont:i,headerHorizontalPadding:l}=a,n=t.textForColumnHeader(e,0);if(n!==void 0&&n!==""){var s=this.getWidthForFont(i,r);return n.length*s+l*2}return l*2}calculateColumnDataWidth(e,r){var{top:t,height:a,width:i,model:l,theme:n}=r,{floatingTopRowCount:s,floatingBottomRowCount:d,rowCount:v}=l,{font:u,cellHorizontalPadding:h,rowHeight:c,rowHeaderWidth:f,rowFooterWidth:b,scrollBarSize:C,dataBarHorizontalPadding:y}=n,S=0,T=this.getWidthForFont(u,r),R=a/c,M=Math.ceil(t+R);return Z.iterateAllItems(t,M,s,d,v,O=>{var A=this.getModelRow(O,r),I=l.textForCell(e,A),V=l.renderTypeForCell(e,A),k=0;if(I){var j=h*2;k=I.length*T+j}V==="dataBar"&&(k+=y),S=Math.max(S,k)}),S=Math.max(Math.min(S,(i-f-C-b)*er.MAX_COLUMN_WIDTH),h*2),S}calculateTreePaddingX(e){var{top:r,height:t,model:a,theme:i}=e,{rowHeight:l,treeDepthIndent:n}=i;if(!pe(a)||!a.hasExpandableRows)return 0;for(var s=0,d=t/l,v=Math.ceil(r+d),u=r;u<=v;u+=1){var h=this.getModelRow(u,e),c=a.depthForRow(h);s=Math.max(s,n*(c+1))}return s}getWidthForFont(e,r){if(this.fontWidths.has(e))return g(this.fontWidths,e);var{context:t}=r;t.font=e;var a=t.measureText("8"),{width:i}=a;return this.fontWidths.set(e,i),this.fontWidths.set(t.font,i),i}setColumnWidth(e,r){var t=new Map(this.userColumnWidths);t.set(e,Math.ceil(r)),ar(t),this.userColumnWidths=t}resetColumnWidth(e){var r=new Map(this.userColumnWidths);r.delete(e),this.userColumnWidths=r}setRowHeight(e,r){var t=new Map(this.userRowHeights);t.set(e,Math.ceil(r)),ar(t),this.userRowHeights=t}resetRowHeight(e){var r=new Map(this.userRowHeights);r.delete(e),this.userRowHeights=r,this.calculatedRowHeights.delete(e)}}le(er,"CACHE_SIZE",1e4);le(er,"MAX_COLUMN_WIDTH",.8);var qt=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,activeCellSelectionBorderWidth:2,selectionColor:"#4286f433",selectionOutlineColor:"#4286f4",selectionOutlineCasingColor:"#222222",scrollBarSelectionTick:!0,scrollBarSelectionTickColor:"#4286f433",scrollBarActiveSelectionTickColor:"#4286f480",shadowBlur:8,shadowAlpha:.15,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 ja=qt;function Zt(o,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,t=vr.hex.lab.raw(o),a=t[0]<50?17:10;return t[0]=Math.max(t[0]-a/r*e,0),"#".concat(vr.lab.hex(t))}function Qt(o,e){var[r,t,a]=vr.hex.rgb(o);return"rgba(".concat(r,", ").concat(t,", ").concat(a,", ").concat(e,")")}var Jt=o=>{var{r:e,g:r,b:t}=o,a=.4122214708*e+.5363325363*r+.0514459929*t,i=.2119034982*e+.6806995451*r+.1073969566*t,l=.0883024619*e+.2817188376*r+.6299787005*t,n=Math.cbrt(a),s=Math.cbrt(i),d=Math.cbrt(l);return{L:.2104542553*n+.793617785*s-.0040720468*d,a:1.9779984951*n-2.428592205*s+.4505937099*d,b:.0259040371*n+.7827717662*s-.808675766*d}},_t=o=>{var{L:e,a:r,b:t}=o,a=e+.3963377774*r+.2158037573*t,i=e-.1055613458*r-.0638541728*t,l=e-.0894841775*r-1.291485548*t,n=a*a*a,s=i*i*i,d=l*l*l;return{r:We(4.0767416621*n-3.3077115913*s+.2309699292*d,0,255),g:We(-1.2684380046*n+2.6097574011*s-.3413193965*d,0,255),b:We(-.0041960863*n-.7034186147*s+1.707614701*d,0,255)}},xt=o=>{var e,r,t=(e=(r=o.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(a,i,l,n)=>"#".concat(i).concat(i).concat(l).concat(l).concat(n).concat(n)).substring(1).match(/.{2}/g))===null||r===void 0?void 0:r.map(a=>parseInt(a,16)))!==null&&e!==void 0?e:[0,0,0];return{r:t[0],g:t[1],b:t[2]}},ea=o=>{var e=Math.round(o.r),r=Math.round(o.g),t=Math.round(o.b);return"#".concat([e,r,t].map(a=>{var i=a.toString(16);return i.length===1?"0".concat(i):i}).join(""))},ra=(o,e,r)=>{var{L:t,a,b:i}=o,{L:l,a:n,b:s}=e,d=t+(l-t)*r,v=a+(n-a)*r,u=i+(s-i)*r;return{L:d,a:v,b:u}};const Le={colorWithAlpha:Qt,darkenForDepth:Zt,linearSRGBToOklab:Jt,OklabToLinearSRGB:_t,hexToRgb:xt,rgbToHex:ea,lerpColor:ra};function Lr(o,e,r){return e=ta(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function ta(o){var e=aa(o,"string");return typeof e=="symbol"?e:String(e)}function aa(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class ia{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Lr(this,"order",void 0),Lr(this,"cursor",null),this.order=e}onDown(e,r,t){return!1}onMove(e,r,t){return!1}onDrag(e,r,t){return!1}onLeave(e,r,t){return!1}onClick(e,r,t){return!1}onContextMenu(e,r,t){return!1}onDoubleClick(e,r,t){return!1}onUp(e,r,t){return!1}onWheel(e,r,t){return!1}}function _e(o,e,r){return e=la(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function la(o){var e=na(o,"string");return typeof e=="symbol"?e:String(e)}function na(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class oa extends ia{constructor(){super(...arguments),_e(this,"draggingIndex",void 0),_e(this,"resizingItems",[]),_e(this,"hiddenItems",[]),_e(this,"targetSizes",new Map),_e(this,"dragOffset",0)}onDown(e,r){var{metrics:t}=r,{model:a}=r.props,i=r.getTheme();if(!t)throw new Error("metrics not set");var l=this.getSeparator(e,t,a,i);if(l!=null){var n=l.index;return this.dragOffset=0,this.draggingIndex=n,this.resizingItems=[n],this.hiddenItems=this.getHiddenItems(n,t).reverse(),this.targetSizes.clear(),this.addTargetSize(t,n),this.updateCursor(t,n),this.updateSeparator(r,l),!0}return!1}onMove(e,r){var{metrics:t}=r,{model:a}=r.props,i=r.getTheme();if(!t)throw new Error("metrics not set");var l=this.getSeparator(e,t,a,i);return l!=null?(this.updateCursor(t,l.index),!0):!1}onDrag(e,r){if(this.draggingIndex==null)return!1;var t=e[this.pointProperty],{metricCalculator:a,metrics:i}=r;if(!i)throw new Error("metrics not set");for(var l=r.getTheme(),n=i[this.visibleOffsetProperty],s=i[this.marginProperty],d=i[this.calculatedSizesProperty],v=i[this.modelIndexesProperty],u=i[this.firstIndexProperty],h=i[this.treePaddingProperty],c=new Map,f=this.resizingItems[this.resizingItems.length-1];f!=null;){var b=g(n,f),C=t-s-b-this.dragOffset,y=g(v,f),S=this.targetSizes.get(y),T=this.resizingItems.length>1,R=this.hiddenItems.indexOf(f),M=d.get(y);M!=null&&f===u&&(M+=h);var O=C;if(M!=null&&Math.abs(C-M)<=l.headerResizeSnapThreshold?O=M:S!==void 0&&C>S&&(T&&R!==0||R>0)?O=S:C<=l.headerResizeHiddenSnapThreshold&&(O=0),c.set(y,O),C<-l.headerResizeSnapThreshold&&O===0)if(R>=0&&T){var A;this.resizingItems.pop(),this.removeTargetSize(i,f),f=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(A=this.targetSizes.get(g(v,f)))!==null&&A!==void 0?A:0}else f=this.getNextShownItem(f,i),f!==null&&(this.resizingItems.push(f),this.addTargetSize(i,f));else S!==void 0&&C>S+l.headerResizeSnapThreshold&&O===S?R>0?(this.dragOffset+=O,f=this.hiddenItems[R-1],this.resizingItems.push(f),this.addTargetSize(i,f)):T?(this.resizingItems.pop(),this.removeTargetSize(i,f),f=this.resizingItems[this.resizingItems.length-1]):f=null:f=null}return c.forEach((I,V)=>{var k,j=(k=a[this.initialSizesProperty].get(V))!==null&&k!==void 0?k:d.get(V);I===j?this.resetSize(a,V):this.setSize(a,V,I)}),this.updateCursor(i,this.draggingIndex),!0}onUp(e,r){return this.draggingIndex!=null&&(this.draggingIndex=void 0,this.resizingItems=[],this.hiddenItems=[],this.targetSizes.clear(),this.updateSeparator(r,null)),!1}onDoubleClick(e,r){var{metrics:t,metricCalculator:a}=r,{model:i}=r.props,l=r.getTheme();if(!t)throw new Error("metrics not set");var n=this.getSeparator(e,t,i,l);if(n!=null){var s=t[this.modelIndexesProperty],d=g(s,n.index),v=t[this.calculatedSizesProperty].get(d),u=a[this.initialSizesProperty].get(d);return v===u||v==null?this.resetSize(a,d):this.setSize(a,d,v),r.forceUpdate(),!0}return!1}updateCursor(e,r){var t=e[this.visibleSizesProperty],a=g(t,r);a===0?this.cursor=this.hiddenCursor:this.cursor=this.defaultCursor}addTargetSize(e,r){var t=e[this.modelIndexesProperty],a=e[this.userSizesProperty],i=e[this.calculatedSizesProperty],l=r===0?e[this.treePaddingProperty]:0,n=g(t,r),s=a.get(n);if(s==null||s===0){var d;s=((d=i.get(n))!==null&&d!==void 0?d:0)+l}this.targetSizes.set(n,s)}removeTargetSize(e,r){var t=e[this.modelIndexesProperty],a=g(t,r);this.targetSizes.delete(a)}}const sa=oa;function ae(o,e,r){return e=da(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function da(o){var e=ua(o,"string");return typeof e=="symbol"?e:String(e)}function ua(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class cr extends sa{constructor(){super(...arguments),ae(this,"hiddenCursor","e-resize"),ae(this,"defaultCursor","col-resize"),ae(this,"pointProperty","x"),ae(this,"userSizesProperty","userColumnWidths"),ae(this,"visibleOffsetProperty","visibleColumnXs"),ae(this,"visibleSizesProperty","visibleColumnWidths"),ae(this,"marginProperty","rowHeaderWidth"),ae(this,"calculatedSizesProperty","calculatedColumnWidths"),ae(this,"initialSizesProperty","initialColumnWidths"),ae(this,"modelIndexesProperty","modelColumns"),ae(this,"firstIndexProperty","firstColumn"),ae(this,"treePaddingProperty","treePaddingX"),ae(this,"getHiddenItems",Z.getHiddenColumns),ae(this,"getNextShownItem",Z.getNextShownColumn),ae(this,"getSeparator",cr.getColumnSeparator)}static getColumnSeparator(e,r,t,a){if(!a.allowColumnResize)return null;var{x:i,y:l,columnHeaderDepth:n}=e,{modelColumns:s}=r,d=Z.getColumnSeparatorIndex(i,l,r,a);if(d==null||n==null||n>0)return null;var v=s.get(d);return v!=null?{index:d,depth:0}:null}setSize(e,r,t){e.setColumnWidth(r,t)}resetSize(e,r){e.resetColumnWidth(r)}updateSeparator(e,r){e.setState({draggingColumnSeparator:r,isDragging:r!==null})}}const ha=cr;var xe=10;function va(o,e,r){return e=ga(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function ga(o){var e=fa(o,"string");return typeof e=="symbol"?e:String(e)}function fa(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class ma{constructor(){va(this,"getCachedTruncatedString",Ke((e,r,t,a,i)=>Ue.truncateToWidth(e,r,t,a,i),{max:1e4}))}drawCellRowTreeMarker(e,r,t){var{metrics:a,model:i,mouseX:l,mouseY:n,theme:s}=r,{firstColumn:d,gridX:v,gridY:u,allColumnXs:h,allColumnWidths:c,allRowYs:f,allRowHeights:b,visibleRowTreeBoxes:C}=a,{treeMarkerColor:y,treeMarkerHoverColor:S}=s,T=g(h,d),R=g(c,d),M=g(f,t),O=g(b,t);if(!(!pe(i)||!i.isRowExpandable(t))){var A=g(C,t),I=l!=null&&n!=null&&l>=v+T&&l<=v+T+R&&n>=u+M&&n<=u+M+O?S:y;this.drawTreeMarker(e,r,T,M,A,I,i.isRowExpanded(t))}}drawTreeMarker(e,r,t,a,i,l,n){var{x1:s,y1:d,x2:v,y2:u}=i,h=n?"⊟":"⊞",c=t+(s+v)*.5+.5,f=a+(d+u)*.5+.5;e.fillStyle=l,e.textAlign="center",e.fillText(h,c,f)}}const Gr=ma;function Ar(o){return o?.dataBarOptionsForCell!==void 0}function Vr(o,e,r){return e=ca(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function ca(o){var e=pa(o,"string");return typeof e=="symbol"?e:String(e)}function pa(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class Ca extends Gr{constructor(){super(...arguments),Vr(this,"heightOfDigits",void 0),Vr(this,"getCachedWidestValueForColumn",Ke((e,r,t,a,i)=>{for(var l=0,n=0;n<r.length;n+=1){var s=r[n],d=g(t,s),v=a.textForCell(i,d);l=Math.max(l,e.measureText(v).width)}return l},{max:1e3}))}drawCellContent(e,r,t,a){var i,{metrics:l,model:n,theme:s}=r;if(Ar(n)){var{modelColumns:d,modelRows:v,allRowHeights:u,allRowYs:h,firstColumn:c,fontWidths:f}=l,b=t===c,C=g(u,a),y=g(v,a),S=g(d,t),T=g(h,a),R=n.textAlignForCell(S,y),M=n.textForCell(S,y),{x:O,width:A}=Z.getTextRenderMetrics(r,t,a),I=(i=f?.get(e.font))!==null&&i!==void 0?i:xe,V=n.truncationCharForCell(S,y),k=this.getCachedTruncatedString(e,M,A,I,V),{columnMin:j,columnMax:Y,axis:w,color:p,valuePlacement:m,opacity:H,markers:W,direction:E,value:N}=n.dataBarOptionsForCell(S,y,s),D=Array.isArray(p);if(!(j==null||Y==null)){var{maxWidth:P,x:B,y:z,zeroPosition:F,leftmostPosition:$,markerXs:X,totalValueRange:U,dataBarWidth:q}=this.getDataBarRenderMetrics(e,r,t,a);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:G,actualBoundingBoxDescent:K}=e.measureText("1234567890");this.heightOfDigits=G+K}if(e.save(),e.textAlign=R,D){var x=N>=0?p[p.length-1]:p[0];e.fillStyle=x}else e.fillStyle=p;if(e.textBaseline="top",e.font=s.font,m!=="hide"&&e.fillText(k,O,T+(C-this.heightOfDigits)/2),D){var _=p.map(Se=>Le.linearSRGBToOklab(Le.hexToRgb(Se)));if(e.save(),e.beginPath(),e.roundRect(B,z,q,C-2,1),e.clip(),N<0){if(E==="LTR")for(var ge=Math.round(Math.abs(j)/U*P),ne=ge/(p.length-1),ie=Math.round($),re=0;re<p.length-1;re+=1){var oe=_[re],se=_[re+1];this.drawGradient(e,oe,se,ie,T+1,ne,C),ie+=ne}else if(E==="RTL")for(var de=Math.round(P-Math.abs(Y)/U*P),ue=de/(p.length-1),Fe=Math.round(F),He=p.length-1;He>0;He-=1){var qe=_[He],Ze=_[He-1];this.drawGradient(e,qe,Ze,Fe,T+1,ue,C),Fe+=ue}}else if(E==="LTR")for(var Ce=Math.round(P-Math.abs(j)/U*P)-1,te=Ce/(p.length-1),Me=Math.round(F),we=0;we<p.length-1;we+=1){var fe=_[we],be=_[we+1];this.drawGradient(e,fe,be,Me,T+1,te,C-2),Me+=te}else if(E==="RTL")for(var Ve=Math.round(Math.abs(Y)/U*P),Oe=Ve/(p.length-1),Re=Math.round($),he=p.length-1;he>0;he-=1){var je=_[he],ke=_[he-1];this.drawGradient(e,je,ke,Re,T+1,Oe,C-2),Re+=Oe}e.restore()}else e.save(),e.globalAlpha=H,e.beginPath(),e.roundRect(B,z,q,C-2,1),e.fill(),e.restore();P>0&&X.forEach((Se,Be)=>{e.fillStyle=W[Be].color,e.fillRect(Se,z,1,C-2)});var Ee=!(w==="directional"&&(m==="beside"&&R==="right"&&E==="LTR"||m==="beside"&&R==="left"&&E==="RTL"||m!=="beside"));Ee&&(e.strokeStyle=s.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(F,T),e.lineTo(F,T+C),e.stroke()),e.restore(),b&&pe(n)&&n.hasExpandableRows&&this.drawCellRowTreeMarker(e,r,a)}}}getDataBarRenderMetrics(e,r,t,a){var{metrics:i,model:l,theme:n}=r;if(!Ar(l))throw new Error("Grid model is not a data bar grid model");var{firstColumn:s,allColumnXs:d,allColumnWidths:v,allRowYs:u,modelColumns:h,modelRows:c,visibleRows:f}=i,{cellHorizontalPadding:b,treeDepthIndent:C,treeHorizontalPadding:y}=n,S=g(h,t),T=g(c,a),R=g(d,t),M=g(u,a),O=g(v,t),A=t===s,I=0;pe(l)&&l.hasExpandableRows&&A&&(I=C*(l.depthForRow(a)+1)+y);var V=l.textAlignForCell(S,T),{columnMin:k,columnMax:j,axis:Y,valuePlacement:w,markers:p,direction:m,value:H}=l.dataBarOptionsForCell(S,T,n),W=this.getCachedWidestValueForColumn(e,f,c,l,S),E=2,N=w==="beside"&&V==="right"?2:1,D=j-k;j>=0&&k>=0||k===j?D=j:j<=0&&k<=0&&(D=Math.abs(k));var P=O-I-N-E;w==="beside"&&(P=P-b-W),P<0&&(P=0);var B=Math.max(Math.abs(k),Math.abs(j)),z=Math.abs(H)/D*P;P===0?z=0:Y==="middle"?z=Math.abs(H)/B*(P/2):Y==="directional"&&(z=Math.abs(H)/B*P);var F=k>=0?0:Math.abs(k)/D*P,$=H>=0?F:F-Math.abs(H)/D*P,X=p.map(G=>{var{value:K}=G,x=Math.abs(K)/D*P;return K>=0?F+x:F-x}),U=w==="beside"&&V==="left"?b+W+E:E,q=w==="beside"&&V==="right"?O-b-W-N:N;return m==="RTL"&&(F=k>=0?O:O-Math.abs(k)/D*P,$=H>=0?F-H/D*P:F,X=p.map(G=>{var{value:K}=G;return K>=0?F-Math.abs(K)/D*P:F+Math.abs(K)/D*P})),Y==="middle"?(F=P/2,m==="LTR"?($=H>=0?F:F-Math.abs(H)/B*(P/2),X=p.map(G=>{var{value:K}=G;return K>=0?F+Math.abs(K)/B*(P/2):F-Math.abs(K)/B*(P/2)})):m==="RTL"&&($=H<=0?F:F-Math.abs(H)/B*(P/2),X=p.map(G=>{var{value:K}=G;return K<=0?F+Math.abs(K)/B*(P/2):F-Math.abs(K)/B*(P/2)}))):Y==="directional"&&(m==="LTR"?(F=0,$=F,X=p.map(G=>{var{value:K}=G;return F+Math.abs(K)/B*P})):m==="RTL"&&(F=O,$=F-Math.abs(H)/B*P,X=p.map(G=>{var{value:K}=G;return F-Math.abs(K)/B*P}))),m==="LTR"?(F+=R+E+I,$+=R+E+I,X=X.map(G=>G+R+E+I),w==="beside"&&V==="left"&&(F+=W+b,$+=W+b,X=X.map(G=>G+W+b))):m==="RTL"&&(F=F+R-N,$=$+R-N,X=X.map(G=>G+R-N),w==="beside"&&V==="right"&&(F=F-b-W,$=$-b-W,X=X.map(G=>G-b-W))),U+=R+I,q+=R,{maxWidth:P,x:$,y:M+1.5,zeroPosition:F,leftmostPosition:U,rightmostPosition:q,totalValueRange:D,dataBarWidth:z,markerXs:X}}drawGradient(e,r,t,a,i,l,n){for(var s=r,d=a;d<=a+l;d+=.5)this.drawGradientPart(e,d,i,1,n,Le.rgbToHex(Le.OklabToLinearSRGB(s))),s=Le.lerpColor(r,t,(d-a)/l)}drawGradientPart(e,r,t,a,i,l){e.fillStyle=l,e.fillRect(r,t,a,i)}}const wa=Ca;function ba(o,e,r){return e=Ra(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Ra(o){var e=Sa(o,"string");return typeof e=="symbol"?e:String(e)}function Sa(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class ya extends Gr{constructor(){super(...arguments),ba(this,"getCachedTokenBoxesForVisibleCell",Ke((e,r,t,a,i,l)=>{for(var n=0,s=i,d=[],v=0,u=0,h=0;h<r.length;h+=1){var c=r[h],{start:f,end:b}=c,C=b>e.length?e.substring(f):c.value;u+=l.measureText(e.substring(v,f)).width;var y=l.measureText(C).width,S=u,T=S+y,R={x1:S,y1:n,x2:T,y2:s,token:c};d.push(R),v=b,u+=y}return d},{max:1e4}))}drawCellContent(e,r,t,a){var{metrics:i,model:l,theme:n}=r,{fontWidths:s,modelColumns:d,modelRows:v,allRowHeights:u,firstColumn:h}=i,c=t===h,{textColor:f}=n,b=g(u,a),C=g(v,a),y=g(d,t),S=l.textForCell(y,C),T=l.truncationCharForCell(y,C);if(S&&b>0){var R,M=l.textAlignForCell(y,C)||"left";e.textAlign=M;var O=l.colorForCell(y,C,n)||f;e.fillStyle=O,e.save();var{width:A,x:I,y:V}=Z.getTextRenderMetrics(r,t,a),k=(R=s.get(e.font))!==null&&R!==void 0?R:xe,j=this.getCachedTruncatedString(e,S,A,k,T),Y=l.tokensForCell(y,C,j.length);if(j)for(var w=0,p=0,m=I,{actualBoundingBoxDescent:H}=e.measureText(j);p<j.length;){var W,E,N=Y[w],D=p===N?.start?N:null,P=(W=(E=D?.end)!==null&&E!==void 0?E:N?.start)!==null&&W!==void 0?W:j.length,B=j.substring(p,P),{width:z}=e.measureText(B),F=B.endsWith("…")?e.measureText(B.substring(0,B.length-1)).width:z;D!=null?(e.fillStyle=n.hyperlinkColor,e.fillText(B,m,V),e.fillRect(m,V+H,F,1)):(e.fillStyle=O,e.fillText(B,m,V)),m+=z,p=P,D!=null&&(w+=1)}e.restore()}c&&pe(l)&&l.hasExpandableRows&&this.drawCellRowTreeMarker(e,r,a)}getTokenBoxesForVisibleCell(e,r,t){var a,{metrics:i,context:l,model:n,theme:s}=t;if(l==null||i==null)return Tr;var{modelRows:d,modelColumns:v}=i,u=g(d,r),h=g(v,e),c=n.textForCell(h,u),{width:f,x:b,y:C}=Z.getTextRenderMetrics(t,e,r),{fontWidths:y}=i;l.save(),this.configureContext(l,t);var S=(a=y?.get(l.font))!==null&&a!==void 0?a:xe,T=n.truncationCharForCell(h,u),R=this.getCachedTruncatedString(l,c,f,S,T),{actualBoundingBoxAscent:M,actualBoundingBoxDescent:O}=l.measureText(R),A=M+O,I=n.tokensForCell(h,u,R.length);if(I.length===0)return l.restore(),Tr;var V=this.getCachedTokenBoxesForVisibleCell(R,I,s.font,"middle",A,l).map(k=>({x1:k.x1+b,y1:k.y1+(C-M),x2:k.x2+b,y2:k.y2+(C-M),token:k.token}));return l.restore(),V}configureContext(e,r){var{theme:t}=r;e.font=t.font,e.textBaseline="middle",e.lineCap="butt"}}const Pa=ya;function $e(o,e,r){return e=Ta(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Ta(o){var e=Ha(o,"string");return typeof e=="symbol"?e:String(e)}function Ha(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class Ue{constructor(){$e(this,"textCellRenderer",new Pa),$e(this,"dataBarCellRenderer",new wa),$e(this,"getCachedBackgroundColors",Ke((e,r)=>e.split(" ").map(t=>{for(var a=[],i=0;i<r;i+=1)a.push(Le.darkenForDepth(t,i,r));return a}),{max:1e3})),$e(this,"getCachedColorWithAlpha",Ke((e,r)=>Le.colorWithAlpha(e,r),{max:1e3})),$e(this,"getCachedColorIsDark",Ke(e=>pt.isDark(e),{max:1e3}))}static truncate(e,r){return r<e.length?e.substr(0,r)+"…":e}static binaryTruncateToWidth(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:r.length,l=arguments.length>5?arguments[5]:void 0;if(i>=r.length&&e.measureText(r).width<=t)return r;if(l!==void 0){var n=e.measureText(l).width;return l.repeat(Math.max(1,Math.floor(t/n)))}for(var s=a,d=Math.min(r.length-1,i),v=r;d>=s;){var u=Math.ceil((d+s)/2),h=Ue.truncate(r,u);if(e.measureText(h).width<=t){if(v=h,s===u)break;s=u}else if(u===0){v=h;break}else d=u-1}return v}static truncateToWidth(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:xe,i=arguments.length>4?arguments[4]:void 0;if(t<=0||r.length<=0)return"";var l=Math.min(Math.max(0,Math.floor(t/a/2)-5),r.length),n=Math.min(Math.ceil(t/a*2),r.length);return Ue.binaryTruncateToWidth(e,r,t,l,n,i)}drawCanvas(e){var{context:r}=e;r.save(),this.configureContext(r,e),this.drawBackground(r,e),this.drawGrid(r,e),this.drawHeaders(r,e),this.drawFooters(r,e),this.drawDraggingColumn(r,e),this.drawDraggingRow(r,e),this.drawScrollBars(r,e),r.restore()}configureContext(e,r){var{theme:t}=r;e.font=t.font,e.textBaseline="middle",e.lineCap="butt"}drawBackground(e,r){var{theme:t,metrics:a}=r,{width:i,height:l}=a;e.fillStyle=t.backgroundColor,e.fillRect(0,0,i,l)}drawGrid(e,r){var{metrics:t,draggingRow:a,draggingColumn:i}=r,{gridX:l,gridY:n}=t;e.translate(l,n),this.drawGridBackground(e,r,a==null&&i==null),this.drawCellContents(e,r),this.drawFloatingRows(e,r),this.drawFloatingColumns(e,r),e.translate(-l,-n)}drawFloatingRows(e,r){var{draggingRow:t,draggingColumn:a,metrics:i,theme:l}=r,{floatingTopRowCount:n,floatingBottomRowCount:s,floatingRows:d,rowCount:v,visibleColumns:u,allRowYs:h,allRowHeights:c}=i;if(d.length!==0){l.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,r,d,l.floatingRowBackgroundColors),t==null&&a==null&&this.drawFloatingMouseRowHover(e,r),this.drawGridLinesForItems(e,r,u,d,l.floatingGridColumnColor,l.floatingGridRowColor),this.drawCellBackgroundsForItems(e,r,u,d),this.drawFloatingBorders(e,r),n>0&&this.drawSelectedRanges(e,r,{top:0,bottom:n-1,maxY:g(h,n-1)+g(c,n-1)-.5}),s>0&&this.drawSelectedRanges(e,r,{top:v-s-1,bottom:v-1,minY:g(h,v-s)+.5,maxY:g(h,v-1)+g(c,v-1)-.5});for(var f=0;f<u.length;f+=1)for(var b=u[f],C=0;C<d.length;C+=1){var y=d[C];this.drawCellContent(e,r,b,y)}}}drawFloatingColumns(e,r){var{draggingRow:t,draggingColumn:a,metrics:i,theme:l}=r,{floatingLeftColumnCount:n,floatingRightColumnCount:s,floatingLeftWidth:d,floatingRightWidth:v,floatingColumns:u,gridX:h,maxX:c,columnCount:f,visibleRows:b,allColumnXs:C,allColumnWidths:y,width:S,height:T}=i;if(u.length!==0){l.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,r,b,l.floatingRowBackgroundColors,0,d),this.drawRowStripesForRows(e,r,b,l.floatingRowBackgroundColors,S-h-v,c)),t==null&&a==null&&this.drawFloatingMouseRowHover(e,r),e.save(),e.beginPath(),e.rect(0,0,d,T),e.clip(),this.drawGridLinesForItems(e,r,u,b,l.floatingGridColumnColor,l.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,r,u,b),this.drawFloatingBorders(e,r),n>0&&this.drawSelectedRanges(e,r,{left:0,maxX:g(C,n-1)+g(y,n-1)}),s>0&&this.drawSelectedRanges(e,r,{left:f-s,right:f-1,minX:g(C,f-s)+.5,maxX:g(C,f-1)+g(y,f-1)});for(var R=0;R<u.length;R+=1)for(var M=u[R],O=0;O<b.length;O+=1){var A=b[O];this.drawCellContent(e,r,M,A)}}}drawFloatingBorders(e,r){var{metrics:t,theme:a}=r,{floatingTopRowCount:i,floatingBottomRowCount:l,floatingLeftColumnCount:n,floatingRightColumnCount:s,rowCount:d,columnCount:v,allRowYs:u,allColumnXs:h,allRowHeights:c,allColumnWidths:f,maxX:b,maxY:C}=t,{floatingDividerOuterColor:y,floatingDividerInnerColor:S}=a;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=y,i>0){var T=g(u,i-1)+g(c,i-1)+.5;e.moveTo(0,T),e.lineTo(b,T)}if(l>0){var R=g(u,d-l)-.5;e.moveTo(0,R),e.lineTo(b,R)}if(n>0){var M=g(h,n-1)+g(f,n-1)+.5;e.moveTo(M,0),e.lineTo(M,C)}if(s>0){var O=g(h,v-s)-.5;e.moveTo(O,0),e.lineTo(O,C)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=S,i>0){var A=g(u,i-1)+g(c,i-1)+.5;e.moveTo(0,A),e.lineTo(b,A)}if(l>0){var I=g(u,d-l)-.5;e.moveTo(0,I),e.lineTo(b,I)}if(n>0){var V=g(h,n-1)+g(f,n-1)+.5;e.moveTo(V,0),e.lineTo(V,C)}if(s>0){var k=g(h,v-s)-.5;e.moveTo(k,0),e.lineTo(k,C)}e.stroke()}drawGridBackground(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.drawRowStripes(e,r),t&&(this.drawMouseColumnHover(e,r),this.drawMouseRowHover(e,r)),this.drawGridLines(e,r),this.drawCellBackgrounds(e,r);var{metrics:a}=r,{bottom:i,right:l,floatingBottomRowCount:n,floatingLeftColumnCount:s,floatingRightColumnCount:d,floatingTopRowCount:v,columnCount:u,rowCount:h,allRowHeights:c,allRowYs:f,allColumnXs:b,allColumnWidths:C,width:y,height:S}=a;this.drawSelectedRanges(e,r,{bottom:Math.min(i,h-n-1),right:Math.min(l,u-d-1),minX:s>0&&b.has(s+1)?g(b,s+1):-10,minY:v>0&&f.has(v+1)?g(f,v+1):-10,maxX:d>0&&b.has(u-d-1)?g(b,u-d-1)+g(C,u-d-1)-.5:y+10,maxY:n>0&&f.has(h-n-1)?g(f,h-n-1)+g(c,h-n-1)-.5:S+10})}drawRowStripes(e,r){var{metrics:t,theme:a}=r,{visibleRows:i}=t,{rowBackgroundColors:l}=a;l&&this.drawRowStripesForRows(e,r,i,l)}drawRowStripesForRows(e,r,t,a){for(var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:r.metrics.maxX,{theme:n,metrics:s,model:d}=r,{maxDepth:v,shadowBlur:u,shadowColor:h,shadowAlpha:c}=n,f=this.getCachedBackgroundColors(a,v),{allRowYs:b,allRowHeights:C}=s,y=new Map,S=[],T=[],R=(B,z)=>{var F=pe(d)?d.depthForRow(B):0,$=f[B%f.length],X=$[Math.min(F,$.length-1)];if(y.has(X)||y.set(X,[]),y.get(X).push(B),z!=null){var U=pe(d)?d.depthForRow(z):0;U<F?S.push(B):U>F&&T.push(z)}},M=0;M<t.length;M+=1){var O=t[M],A=M>0?t[M-1]:void 0;R(O,A)}if(y.forEach((B,z)=>{e.fillStyle=z,e.beginPath();for(var F=0;F<B.length;F+=1){var $=B[F],X=g(b,$),U=g(C,$);e.rect(i,X,l,U)}e.fill()}),S.length>0){e.save();var I=this.getCachedColorWithAlpha(h,c),V=this.getCachedColorWithAlpha(h,0),k=e.createLinearGradient(0,0,0,u);k.addColorStop(0,I),k.addColorStop(1,V),e.fillStyle=k;for(var j=0;j<S.length;j+=1){var Y=S[j],w=g(b,Y);e.translate(0,w),e.fillRect(i,0,l,u),e.translate(0,-w)}e.restore()}if(T.length>0){e.save();var p=this.getCachedColorWithAlpha(h,0),m=this.getCachedColorWithAlpha(h,c),H=e.createLinearGradient(0,0,0,u);H.addColorStop(0,p),H.addColorStop(1,m),e.fillStyle=H;for(var W=0;W<T.length;W+=1){var E=T[W],N=g(b,E),D=g(C,E),P=N+D-u;e.translate(0,P),e.fillRect(i,0,l,u),e.translate(0,-P)}e.restore()}}drawMouseColumnHover(e,r){var{mouseX:t,mouseY:a,theme:i,metrics:l}=r;if(!(t==null||a==null)){var n=Z.getColumnAtX(t,l);if(!(n==null||i.columnHoverBackgroundColor==null)){var{allColumnWidths:s,allColumnXs:d,maxY:v}=l;if(!(a>v)){var u=g(d,n),h=g(s,n);e.fillStyle=i.columnHoverBackgroundColor,e.fillRect(u,0,h,v)}}}}drawMouseRowHover(e,r){var{mouseX:t,mouseY:a,theme:i,metrics:l}=r;if(!(t==null||a==null)){var{maxX:n}=l;if(!(t>n||i.rowHoverBackgroundColor==null)){var s=Z.getRowAtY(a,l);s!=null&&this.drawMouseRowHoverForRow(e,r,s)}}}drawFloatingMouseRowHover(e,r){var{mouseX:t,mouseY:a,theme:i,metrics:l}=r,{maxX:n,floatingTopRowCount:s,floatingBottomRowCount:d,rowCount:v,rowFooterWidth:u}=l;if(!(t==null||a==null||t>n+u||i.rowHoverBackgroundColor==null)){var h=Z.getRowAtY(a,l);h!=null&&(h<s||v-d<=h)&&this.drawMouseRowHoverForRow(e,r,h)}}drawMouseRowHoverForRow(e,r,t){var{metrics:a,selectedRanges:i,theme:l}=r,{allRowHeights:n,allRowYs:s,maxX:d}=a,v=g(s,t),u=g(n,t);l.rowHoverBackgroundColor!=null&&(e.fillStyle=l.rowHoverBackgroundColor);for(var h=0;h<i.length;h+=1){var{startRow:c,endRow:f}=i[h];if(c!=null&&f!=null&&c<=t&&f>=t){l.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=l.selectedRowHoverBackgroundColor);break}}e.fillRect(0,v,d,u)}drawGridLines(e,r){var{metrics:t,theme:a}=r,{visibleColumns:i,visibleRows:l}=t;this.drawGridLinesForItems(e,r,i,l,a.gridColumnColor,a.gridRowColor)}drawGridLinesForItems(e,r,t,a,i,l){i==null&&l==null||(e.lineWidth=1,e.beginPath(),i!=null&&(e.strokeStyle=i,this.drawGridLinesForColumns(e,r,t)),l!=null&&(e.strokeStyle=l,this.drawGridLinesForRows(e,r,a)),e.stroke())}drawGridLinesForColumns(e,r,t){for(var{metrics:a}=r,{allColumnXs:i,maxY:l}=a,n=0;n<t.length;n+=1){var s=t[n],d=g(i,s)+.5;e.moveTo(d,0),e.lineTo(d,l)}}drawGridLinesForRows(e,r,t){for(var{metrics:a}=r,{allRowYs:i,maxX:l}=a,n=l,s=0;s<t.length;s+=1){var d=t[s],v=g(i,d)+.5;e.moveTo(.5,v),e.lineTo(n-.5,v)}}drawCellBackgrounds(e,r){var{metrics:t}=r,{visibleColumns:a,visibleRows:i}=t;this.drawCellBackgroundsForItems(e,r,a,i)}drawCellBackgroundsForItems(e,r,t,a){e.save();for(var i=0;i<t.length;i+=1)for(var l=t[i],n=0;n<a.length;n+=1){var s=a[n],d=n+1<a.length?a[n+1]:void 0;this.drawCellBackground(e,r,l,s,d)}e.restore()}drawCellBackground(e,r,t,a,i){var{metrics:l,model:n,theme:s}=r,{firstColumn:d,modelColumns:v,modelRows:u,allColumnXs:h,allColumnWidths:c,allRowYs:f,allRowHeights:b}=l,C=g(u,a),y=g(v,t),S=n.backgroundColorForCell(y,C,s),T=t===d,R=pe(n)&&n.hasExpandableRows;if(S!=null){var M=g(h,t)+1,O=g(f,a)+1,A=g(c,t)-1,I=g(b,a)-1;e.fillStyle=S,e.fillRect(M,O,A,I)}T&&R&&this.drawCellRowTreeDepthLines(e,r,a,i)}drawCellContents(e,r){for(var{metrics:t}=r,{visibleColumns:a}=t,i=0;i<a.length;i+=1){var l=a[i];this.drawColumnCellContents(e,r,l)}}drawColumnCellContents(e,r,t){var{metrics:a}=r,{allColumnXs:i,allColumnWidths:l,visibleRows:n,height:s}=a,d=g(i,t),v=g(l,t);e.save(),e.beginPath(),e.rect(d,0,v,s),e.clip();for(var u=0;u<n.length;u+=1){var h=n[u];this.drawCellContent(e,r,t,h)}e.restore()}drawCellContent(e,r,t,a){var{metrics:i,model:l}=r,{modelColumns:n,modelRows:s}=i,d=g(s,a),v=g(n,t),u=l.renderTypeForCell(v,d),h=this.getCellRenderer(u);h.drawCellContent(e,r,t,a)}getCellRenderer(e){switch(e){case"dataBar":return this.dataBarCellRenderer;default:return this.textCellRenderer}}drawCellRowTreeDepthLines(e,r,t,a){var{metrics:i,model:l,theme:n}=r;if(pe(l)){var s=l.depthForRow(t);if(s!==0){var{firstColumn:d,allColumnXs:v,allRowYs:u,allRowHeights:h}=i,{treeDepthIndent:c,treeHorizontalPadding:f,treeLineColor:b}=n,C=g(v,d),y=g(u,t),S=g(h,t),T=a!==void 0?l.depthForRow(a):0,R=s>T?s-T:0;if(e.strokeStyle=b,e.lineWidth=1,s-R>0){e.beginPath();for(var M=0;M<s-R;M+=1){var O=C+M*c+c*.5+f+.5;e.moveTo(O,y),e.lineTo(O,y+S)}e.stroke()}if(R>0){e.beginPath();for(var A=s-R;A<s;A+=1){var I=C+A*c+c*.5+f+.5;e.moveTo(I,y),e.lineTo(I,y+Math.ceil(S/2)),e.moveTo(I-.5,y+Math.ceil(S/2)+.5),e.lineTo(I+c-.5,y+Math.ceil(S/2)+.5)}e.stroke()}}}}drawHeaders(e,r){var{theme:t}=r;e.font=t.headerFont,this.drawColumnHeaders(e,r),this.drawRowHeaders(e,r)}drawFooters(e,r){var{theme:t}=r;e.font=t.headerFont,this.drawRowFooters(e,r)}drawColumnHeaders(e,r){var{mouseX:t,mouseY:a,theme:i,metrics:l,draggingColumnSeparator:n,isDragging:s,model:d}=r,{columnHeaderHeight:v,floatingColumns:u,gridX:h,width:c,visibleColumns:f,allColumnWidths:b,allColumnXs:C,floatingLeftColumnCount:y,floatingLeftWidth:S,floatingRightWidth:T,modelColumns:R,columnHeaderMaxDepth:M}=l;if(!(v<=0)){var{headerHiddenSeparatorSize:O,headerHiddenSeparatorHoverColor:A,headerSeparatorColor:I,headerSeparatorHoverColor:V}=i,k=v*.5,j=v*(M-1)+v*.5-k*.5,Y=y>0;if(e.save(),this.drawColumnHeadersForRange(e,r,[f[0],f[f.length-1]],{minX:h+S,maxX:c-T}),Y&&this.drawColumnHeadersForRange(e,r,[u[0],u[u.length-1]],{minX:h,maxX:h+S}),I){e.strokeStyle=I;var w=[...b.entries()].filter(ge=>{var[ne,ie]=ge;return ie===0}).map(ge=>{var[ne]=ge;return ne});e.beginPath(),e.fillStyle=I;for(var p=0;p<w.length;p+=1){var m=w[p],H=g(C,m),W=g(b,m),E=h+H+W+.5-O*.5;e.rect(E,j,O,k)}e.fill()}if(V){var{index:N,depth:D}=n??{};if(N==null&&t!=null&&a!=null){var P=ha.getColumnSeparator(Z.getGridPointFromXY(t,a,l),l,d,i);N=P?.index,D=P?.depth}var B;if(N==null)B=!1;else{var z=R.get(N),F=R.get(N+1);z==null||F==null?B=!1:B=d.textForColumnHeader(z,D)!==d.textForColumnHeader(F,D)}if(B&&N!=null&&D!=null&&(!s||n!=null)){e.strokeStyle=V;var $=g(C,N),X=g(b,N),U=h+$+X+.5,q=f.indexOf(N),G=q<f.length-1?f[q+1]:null,K=G!=null?b.get(G):null,x=X===0,_=K!=null&&K===0;x?(e.strokeStyle=A,e.fillStyle=A,e.fillRect(U,j,O*.5,k)):_&&(e.fillStyle=V,e.fillRect(U-O*.5,j,O*.5,k)),e.beginPath(),e.moveTo(U,(M-D-1)*v),e.lineTo(U,(M-D)*v-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,r,t,a){var{model:i}=r,{columnHeaderMaxDepth:l}=i;if(l!==0)for(var n=0;n<=l;n+=1)this.drawColumnHeadersAtDepth(e,r,t,a,n)}drawColumnHeadersAtDepth(e,r,t,a,i){var{metrics:l,model:n,theme:s}=r,{modelColumns:d,allColumnXs:v,gridX:u,userColumnWidths:h,allColumnWidths:c,movedColumns:f}=l,{columnHeaderHeight:b,columnWidth:C}=s,{columnHeaderMaxDepth:y}=n,{minX:S,maxX:T}=a,R=T-S;if(y!==0){var M=t[0],O=t[1];if(e.save(),e.translate(0,(y-i-1)*b),i===0){this.drawColumnHeader(e,r,"",S,T);for(var A=M;A<=O;A+=1)this.drawColumnHeaderAtIndex(e,r,A,a)}if(i>0)for(var I=M;I<=O;){var{columnCount:V}=l,k=g(d,I),j=n.textForColumnHeader(k,i),Y=n.colorForColumnHeader(k,i),w=g(v,I)+u,p=w+g(c,I);if(j!=null){for(var m=I-1;m>=0&&(p-w<R||w>S);){var H,W,E,N=(H=d.get(m))!==null&&H!==void 0?H:Z.getModelIndex(m,f);if(N==null||n.textForColumnHeader(N,i)!==j)break;var D=(W=(E=h.get(N))!==null&&E!==void 0?E:c.get(m))!==null&&W!==void 0?W:C;w-=D,m-=1}for(var P=I+1;P<V&&(p-w<R||p<T);){var B,z,F,$=(B=d.get(P))!==null&&B!==void 0?B:Z.getModelIndex(P,f);if(n.textForColumnHeader($,i)!==j)break;var X=(z=(F=h.get($))!==null&&F!==void 0?F:c.get(P))!==null&&z!==void 0?z:C;p+=X,P+=1}I=P-1;var U=p-w>=R,q=w;U&&(p<T?q=p-R:w<S&&(q=S)),this.drawColumnHeader(e,r,j,q,Math.min(p-w,R),{backgroundColor:Y??void 0},a)}I+=1}e.restore()}}drawColumnHeaderAtIndex(e,r,t,a){var i,{metrics:l,model:n}=r,{modelColumns:s,allColumnWidths:d,allColumnXs:v,gridX:u}=l,h=g(d,t),c=g(v,t)+u,f=g(s,t),b=n.textForColumnHeader(f);b!=null&&this.drawColumnHeader(e,r,b,c,h,{backgroundColor:(i=n.colorForColumnHeader(f))!==null&&i!==void 0?i:void 0},a)}drawColumnHeader(e,r,t,a,i,l,n){var s;if(!(i<=0)){var{metrics:d,theme:v}=r,{headerHorizontalPadding:u,columnHeaderHeight:h,headerBackgroundColor:c,headerColor:f,headerSeparatorColor:b,black:C,white:y}=v,{fontWidths:S,width:T}=d,R=(s=S.get(e.font))!==null&&s!==void 0?s:xe,M=i-u*2,O=M/R,{backgroundColor:A=c,separatorColor:I=b}=l??{},{textColor:V=f}=l??{};try{var k=this.getCachedColorIsDark(A),j=this.getCachedColorIsDark(V);k&&j?V=y:!k&&!j&&(V=C)}catch{}var{minX:Y=0,maxX:w=T}=n??{};e.save(),e.rect(Y,0,w-Y,h),e.clip(),A!=null&&(e.fillStyle=A,e.fillRect(a,0,i,h)),I!=null&&(e.strokeStyle=I,e.beginPath(),a>0&&(e.moveTo(a+.5,0),e.lineTo(a+.5,h)),e.moveTo(a+i+.5,0),e.lineTo(a+i+.5,h),e.moveTo(a,h-.5),e.lineTo(a+i,h-.5),e.stroke()),e.beginPath(),e.rect(a,0,i,h),e.clip(),e.fillStyle=V;var p=t;O<=0?p="":p.length>O&&(p="".concat(p.substring(0,O-1),"…"));var m=p.length*R,H=a+i*.5,W=h*.5;Y+=u,w-=u;var E=a+u,N=We(E,Y,w),D=a+i-u,P=We(D,Y,w),B=P-N,z=H-m*.5<Y,F=H+m*.5>w;z?m<B?H=Y+m*.5:H=D-m*.5:F&&(m<B?H=w-m*.5:H=E+m*.5),e.textAlign="center",e.fillText(p,H,W),e.restore()}}drawRowHeaders(e,r){var{mouseX:t,mouseY:a,metrics:i,theme:l,draggingRowSeparator:n}=r,{gridY:s,rowHeaderWidth:d,height:v,visibleRows:u,allRowHeights:h,allRowYs:c}=i;if(!(d<=0)){var{headerBackgroundColor:f,headerColor:b,headerHiddenSeparatorSize:C,headerHiddenSeparatorHoverColor:y,headerSeparatorColor:S,headerSeparatorHoverColor:T}=l,R=d*.5,M=d*.5-R*.5;if(e.save(),e.beginPath(),e.fillStyle=f,e.fillRect(0,0,d,v),S){e.strokeStyle=S,e.beginPath(),e.moveTo(0,s+.5),e.lineTo(d,s+.5);for(var O=[],A=!1,I=0;I<u.length;I+=1){var V=u[I],k=g(c,V),j=g(h,V);if(j>0){var Y=s+k+j+.5;e.moveTo(0,Y),e.lineTo(d,Y),A=!1}else A||(A=!0,O.push(V))}e.moveTo(d-.5,0),e.lineTo(d-.5,v),e.stroke(),e.beginPath(),e.fillStyle=S;for(var w=0;w<O.length;w+=1){var p=O[w],m=g(c,p),H=g(h,p),W=s+m+H+.5-C*.5;e.rect(M,W,R,C)}e.fill()}if(T){var{index:E=null}=n??{};if(E==null&&t!=null&&a!=null&&(E=Z.getRowSeparatorIndex(t,a,i,l)),E!=null){e.strokeStyle=T;var N=g(c,E),D=g(h,E),P=s+N+D+.5,B=u.indexOf(E),z=B<u.length-1?u[B+1]:null,F=z!=null?h.get(z):null,$=D===0,X=F!=null&&F===0;$?(e.strokeStyle=y,e.fillStyle=y,e.fillRect(M,P,R,C*.5)):X&&(e.fillStyle=T,e.fillRect(M,P-C*.5,R,C*.5)),e.beginPath(),e.moveTo(.5,P),e.lineTo(d+.5,P),e.stroke()}}e.beginPath(),e.rect(0,s,d,v),e.clip(),e.fillStyle=b,e.textAlign="right";for(var U=0;U<u.length;U+=1){var q=u[U],G=g(h,q),K=g(c,q)+s;this.drawRowHeader(e,r,q,K,G)}e.restore()}}drawRowHeader(e,r,t,a,i){if(!(i<=0)){var{metrics:l,model:n,theme:s}=r,{modelRows:d,rowHeaderWidth:v}=l,u=g(d,t),h=v-s.cellHorizontalPadding,c=a+i*.5;e.fillText(n.textForRowHeader(u),h,c)}}drawRowFooters(e,r){var{mouseX:t,mouseY:a,metrics:i,model:l,theme:n,draggingRowSeparator:s}=r,{gridY:d,gridX:v,maxX:u,modelRows:h,rowFooterWidth:c,height:f,verticalBarWidth:b,visibleRows:C,allRowHeights:y,allRowYs:S,width:T}=i;if(!(c<=0)){var{cellHorizontalPadding:R,headerBackgroundColor:M,headerColor:O,headerHiddenSeparatorSize:A,headerHiddenSeparatorHoverColor:I,headerSeparatorColor:V,headerSeparatorHoverColor:k}=n,j=c*.5,Y=c*.5-j*.5,w=Math.min(v+u,T-c-b);if(e.save(),e.beginPath(),e.fillStyle=M,e.fillRect(w,d,c,f),V){e.strokeStyle=V,e.beginPath(),e.moveTo(w,d+.5),e.lineTo(c,d+.5);for(var p=[],m=!1,H=0;H<C.length;H+=1){var W=C[H],E=g(S,W),N=g(y,W);if(N>0){var D=d+E+N+.5;e.moveTo(w+.5,D),e.lineTo(w+c-.5,D),m=!1}else m||(m=!0,p.push(W))}e.moveTo(w+.5,d),e.lineTo(w+.5,f),e.stroke(),e.beginPath(),e.fillStyle=V;for(var P=0;P<p.length;P+=1){var B=p[P],z=g(S,B),F=g(y,B),$=d+z+F+.5-A*.5;e.rect(w+Y,$,j,A)}e.fill()}if(k){var{index:X=null}=s??{};if(X==null&&t!=null&&a!=null&&(X=Z.getRowSeparatorIndex(t,a,i,n)),X!=null){e.strokeStyle=k;var U=g(S,X),q=g(y,X),G=d+U+q+.5,K=C.indexOf(X),x=K<C.length-1?C[K+1]:null,_=x!=null?y.get(x):null,ge=q===0,ne=_!=null&&_===0;ge?(e.strokeStyle=I,e.fillStyle=I,e.fillRect(Y,G,j,A*.5)):ne&&(e.fillStyle=k,e.fillRect(Y,G-A*.5,j,A*.5)),e.beginPath(),e.moveTo(w+.5,G),e.lineTo(w+c+.5,G),e.stroke()}}e.beginPath(),e.rect(w,d,c,f),e.clip(),e.fillStyle=O,e.textAlign="left";for(var ie=w+R,re=0;re<C.length;re+=1){var oe=C[re],se=g(y,oe);if(se>0){var de=g(S,oe)+d,ue=g(h,oe),Fe=de+se*.5;e.fillText(l.textForRowFooter(ue),ie,Fe)}}e.restore()}}drawSelectedRanges(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:a,cursorRow:i,draggingRow:l,draggingColumn:n,editingCell:s,metrics:d,model:v,selectedRanges:u,theme:h}=r,{allColumnWidths:c,allColumnXs:f,allRowHeights:b,allRowYs:C,width:y,height:S}=d,{left:T=d.left,top:R=d.top,right:M=d.right,bottom:O=d.bottom,minY:A=-10,maxY:I=S+10,minX:V=-10,maxX:k=y+10}=t;if(u.length!==0){var j=Ct(v)&&v.isEditable&&s==null&&l==null&&n==null&&a!=null&&i!=null&&f.has(a)&&C.has(i);if(j){var Y=g(f,a),w=g(C,i),p=g(c,a),m=g(b,i);e.save(),e.beginPath(),e.rect(0,0,y,S),e.rect(Y,w,p,m),e.clip("evenodd")}e.beginPath();for(var H=0;H<u.length;H+=1){var W=u[H],E=W.startColumn!==null?W.startColumn:T,N=W.startRow!==null?W.startRow:R,D=W.endColumn!==null?W.endColumn:M,P=W.endRow!==null?W.endRow:O;if(P>=R&&O>=N&&D>=T&&M>=E){var B=E>=T&&f.has(E)?Math.round(g(f,E))+.5:V,z=N>=R&&C.has(N)?Math.max(Math.round(g(C,N))+.5,.5):A,F=D<=M&&f.has(D)?Math.round(g(f,D)+g(c,D))-.5:k,$=P<=O&&C.has(P)?Math.round(g(C,P)+g(b,P))-.5:I;e.rect(B,z,F-B,$-z)}}e.fillStyle=h.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=h.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=h.selectionOutlineColor,e.lineWidth=1,e.stroke(),j&&a!=null&&i!=null&&(e.restore(),this.drawActiveCell(e,r,a,i))}}drawActiveCell(e,r,t,a){var{metrics:i,theme:l}=r,{scrollX:n,scrollY:s,allColumnWidths:d,allColumnXs:v,allRowHeights:u,allRowYs:h}=i,{activeCellSelectionBorderWidth:c}=l,f=g(v,t),b=g(h,a),C=g(d,t),y=g(u,a),S=f-c*.5,T=b-c*.5,R=C+c,M=y+c;S<=0&&n<=0&&(R-=c-S,S=c*.5),T<=0&&s<=0&&(M-=c-T,T=c*.5);var{lineWidth:O}=e;e.beginPath(),e.lineWidth=c,e.strokeStyle=l.selectionOutlineColor,this.drawRoundedRect(e,S,T,R,M),e.stroke(),e.lineWidth=O}drawRoundedRect(e,r,t,a,i){var l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Ue.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(r+l,t),e.lineTo(r+a-l,t),e.quadraticCurveTo(r+a,t,r+a,t+l),e.lineTo(r+a,t+i-l),e.quadraticCurveTo(r+a,t+i,r+a-l,t+i),e.lineTo(r+l,t+i),e.quadraticCurveTo(r,t+i,r,t+i-l),e.lineTo(r,t+l),e.quadraticCurveTo(r,t,r+l,t),e.closePath()}drawDraggingColumn(e,r){var t,{draggingColumn:a,metrics:i,mouseX:l,theme:n,model:s}=r;if(!(a==null||l==null)){var{range:d,depth:v}=a,{gridX:u,gridY:h,allColumnXs:c,allColumnWidths:f,height:b,width:C,columnHeaderMaxDepth:y,columnHeaderHeight:S,movedColumns:T,modelColumns:R,floatingLeftWidth:M}=i,O=(t=R.get(d[0]))!==null&&t!==void 0?t:Z.getModelIndex(d[0],T),A=s.getColumnHeaderGroup(O,v);if(!(v>0&&!A)){var[I,V]=d,k=g(c,I),j=g(c,V)+g(f,V),Y=j-k,w=a.left,{backgroundColor:p,font:m,headerFont:H,reorderOffset:W,shadowBlur:E,shadowColor:N}=n,D=(y-v-1)*S;e.save(),e.translate(u,0),e.save(),e.beginPath(),e.rect(M,0,C,b),e.clip(),e.fillStyle=p,e.fillRect(k,D,Y,b),e.restore(),e.translate(0,W),e.save(),e.shadowColor=N,e.shadowBlur=E,e.fillStyle=p,e.fillRect(a.left,D+W,a.width,b),e.restore(),e.beginPath(),e.rect(a.left,D,a.width+1,b),e.clip(),e.translate(w-k-u,0),e.font=H;for(var P=[],B=a.range[0];B<=a.range[1];B+=1)P.push(B);this.drawColumnHeaders(e,r),this.drawColumnHeadersForRange(e,r,[P[0],P[P.length-1]],{minX:k,maxX:C}),e.translate(u,h),e.font=m,this.drawGridBackground(e,r);for(var z=I;z<=V;z+=1)this.drawColumnCellContents(e,r,z);e.restore()}}}drawDraggingRow(e,r){var{draggingRow:t,draggingRowOffset:a,metrics:i,mouseY:l,theme:n}=r;if(!(t==null||l==null)){var{gridX:s,gridY:d,allRowYs:v,allRowHeights:u,width:h}=i,c=g(v,t),f=g(u,t)+1,{backgroundColor:b,font:C,headerFont:y,reorderOffset:S,shadowBlur:T,shadowColor:R}=n;e.save(),e.translate(0,d),e.fillStyle=b,e.fillRect(0,c,h,f),e.translate(s+S,l-c-d-(a??0)),e.save(),e.shadowColor=R,e.shadowBlur=T,e.fillStyle=b,e.fillRect(-s,c,h,f),e.restore(),e.beginPath(),e.rect(-s,c,h,f),e.clip(),e.font=C,this.drawGridBackground(e,r),this.drawCellContents(e,r),e.translate(-s,-d),e.font=y,this.drawRowHeaders(e,r),e.restore()}}drawScrollBars(e,r){var{isDraggingHorizontalScrollBar:t,isDraggingVerticalScrollBar:a,isDragging:i,metrics:l,mouseX:n,mouseY:s,theme:d}=r;if(!(d.scrollBarSize<=0)){var{width:v,height:u,handleHeight:h,handleWidth:c,scrollX:f,scrollY:b,hasHorizontalBar:C,hasVerticalBar:y,barWidth:S,barHeight:T,barLeft:R,barTop:M}=l,{scrollBarBackgroundColor:O,scrollBarHoverBackgroundColor:A,scrollBarCasingColor:I,scrollBarCornerColor:V,scrollBarColor:k,scrollBarHoverColor:j,scrollBarActiveColor:Y,scrollBarSize:w,scrollBarHoverSize:p,scrollBarCasingWidth:m,scrollBarSelectionTick:H,scrollBarSelectionTickColor:W,scrollBarActiveSelectionTickColor:E,autoSelectRow:N,autoSelectColumn:D}=d,P=n!=null&&s!=null&&n<=v&&s<=u,B=a||y&&!t&&!i&&n!=null&&s!=null&&n>=v-p&&s>=M&&P,z=t||C&&!a&&!i&&!B&&n!=null&&s!=null&&s>=u-p&&n>=R&&P,F=z?p:w,$=B?p:w;if(e.translate(R,M),C&&y&&(e.fillStyle=I,e.fillRect(v-R-w,u-M-w,w,w),e.fillStyle=V,e.fillRect(v-R-w+m,u-M-w+m,w-m,w-m)),C){var X=f,U=u-M-F;if(e.fillStyle=I,e.fillRect(0,U,S,F-m),e.fillStyle=z?A:O,e.fillRect(0,U+m,S,F-m),t?e.fillStyle=Y:z?e.fillStyle=j:e.fillStyle=k,e.fillRect(X,U+m,c,F-m),!N&&H&&W!=null&&E!=null){e.fillStyle=W;for(var{selectedRanges:q,cursorColumn:G}=r,{lastLeft:K,columnCount:x}=l,_=[...q].filter(Q=>Q.startColumn!=null&&Q.endColumn!=null),ge=_.map(Q=>[Q.startColumn,Q.endColumn]).sort(Z.compareRanges),ne=Z.mergeSortedRanges(ge),ie=Q=>Q<=K?Q/K*(S-c):S-c+(Q-K)/(x-K)*c,re=0;re<ne.length;re+=1){var oe=ne[re],se=oe[0],de=oe[1];if(se!=null&&de!=null&&(se!==G||de!==G)){var ue=ie(se),Fe=Math.max(1,Math.round(ie(de+1)-ue)),He=F-m;e.fillRect(ue,U+m+Math.round(He/3),Fe,Math.round(He/3))}}if(G!=null){var qe=ie(G),Ze=2,Ce=F-m;e.fillStyle=E,e.fillRect(qe,U+m,Ze,Ce)}}}if(y){var te=v-R-$,Me=b;if(e.fillStyle=I,e.fillRect(te,0,$-m,T),e.fillStyle=B?A:O,e.fillRect(te+m,0,$-m,T),a?e.fillStyle=Y:B?e.fillStyle=j:e.fillStyle=k,e.fillRect(te+m,Me,$-m,h),!D&&H&&W!=null&&E!=null){var{selectedRanges:we,cursorRow:fe}=r,{lastTop:be,rowCount:Ve}=l,Oe=Q=>Q<=be?Q/be*(T-h):T-h+(Q-be)/(Ve-be)*h;e.fillStyle=W;for(var Re=[...we].filter(Q=>Q.startRow!=null&&Q.endRow!=null),he=Re.map(Q=>[Q.startRow,Q.endRow]).sort(Z.compareRanges),je=Z.mergeSortedRanges(he),ke=0;ke<je.length;ke+=1){var Ee=je[ke],Se=Ee[0],Be=Ee[1];if(Se!=null&&Be!=null&&(Se!==fe||Be!==fe)){var Qe=Oe(Se),rr=$-m,lr=Math.max(1,Math.round(Oe(Be+1)-Qe));e.fillRect(te+m+Math.round(rr/3),Qe,Math.round(rr/3),lr)}}if(fe!=null){var nr=Math.round(Oe(fe)),or=$-m,sr=2;e.fillStyle=E,e.fillRect(te+m,nr,or,sr)}}}e.translate(-R,-M)}}}$e(Ue,"DEFAULT_EDGE_RADIUS",2);export{Ia as C,zr as D,ja as G,Mt as M,Aa as O,Na as P,Va as S,Pa as T,Da as a,ka as b,Ea as c,Lt as d,La as e,St as f,Ot as g,er as h,xe as i,wa as j,Ue as k,ia as l,sa as m,ha as n,Or as t};
|
|
2
|
-
//# sourceMappingURL=GridRenderer-
|
|
1
|
+
import{r as J,U as Ke,M as pe,I as L,K as Pe,V as ee,L as hr,ba as at,bc as it,af as Fe,c6 as vr}from"./vendor-2ad5ff96.js";import{Q as lt,aj as nt,aK as ot,s as st,aQ as yr,aP as dt,aY as ut,B as Pr,aM as ht,C as vt,ai as Tr}from"./ControlType-f1bb8293.js";import{L as jr,ar as gt,ah as ft,ag as mt,j as ct,aV as g,aL as pt}from"./index-d7716c14.js";import{S as Hr}from"./IrisGridShortcuts-d4875242.js";import{i as Ce,g as Z,m as Ge,e as Ct}from"./IrisGridModel-61ddc43e.js";function Mr(o,e){var r=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);e&&(t=t.filter(function(a){return Object.getOwnPropertyDescriptor(o,a).enumerable})),r.push.apply(r,t)}return r}function wt(o){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Mr(Object(r),!0).forEach(function(t){ge(o,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(r)):Mr(Object(r)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(r,t))})}return o}function ge(o,e,r){return e=bt(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function bt(o){var e=Rt(o,"string");return typeof e=="symbol"?e:String(e)}function Rt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}var gr;(function(o){o.UP="UP",o.DOWN="DOWN"})(gr||(gr={}));class Te extends J.Component{constructor(e){super(e),ge(this,"popper",void 0),ge(this,"cbContainer",void 0),ge(this,"toggleButton",void 0),ge(this,"menuContainer",void 0),ge(this,"input",void 0),ge(this,"searchInput",void 0),ge(this,"getCachedFilteredOptions",Ke((r,t)=>r.filter(a=>a.title.toLowerCase().indexOf(t.toLowerCase())>=0||a.value.toLowerCase().indexOf(t.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=pe.createRef(),this.cbContainer=pe.createRef(),this.toggleButton=pe.createRef(),this.menuContainer=pe.createRef(),this.input=pe.createRef(),this.searchInput=pe.createRef()}componentDidUpdate(){var{menuIsOpen:e,keyboardOptionIndex:r}=this.state;e&&r>=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:r}=this.props;this.setState({value:e}),r(e)}handleResize(){this.setInputWidth()}handleMenuKeyDown(e){var r,t,{filter:a,filteredOptions:i,keyboardOptionIndex:l}=this.state,{options:n}=this.props,s=a?i:n;switch(e.key){case"Enter":((r=s[l])===null||r===void 0?void 0:r.value)!=null&&this.updateInputValue(s[l].value),this.closeMenu(),(t=this.input.current)===null||t===void 0||t.focus(),e.stopPropagation(),e.preventDefault();break;case"ArrowUp":this.handleMenuNavigation(Te.MENU_NAVIGATION_DIRECTION.UP),e.stopPropagation(),e.preventDefault();break;case"ArrowDown":this.handleMenuNavigation(Te.MENU_NAVIGATION_DIRECTION.DOWN),e.stopPropagation(),e.preventDefault();break;case"Escape":a!==""?(this.setState({filter:""}),e.stopPropagation()):this.closeMenu();break;case"Tab":!e.shiftKey&&l===s.length-1&&this.closeMenu();break}}handleMenuNavigation(e){var{filter:r,filteredOptions:t,keyboardOptionIndex:a}=this.state,{options:i}=this.props,l=r?t:i,n=l.length,s=0;switch(e){case Te.MENU_NAVIGATION_DIRECTION.UP:s=-1;break;case Te.MENU_NAVIGATION_DIRECTION.DOWN:s=1;break}s!==0&&this.setState({keyboardOptionIndex:(a+s+n)%n})}handleInputKeyDown(e){var{onEnter:r}=this.props,{menuIsOpen:t}=this.state;e.key==="ArrowDown"||e.key==="ArrowUp"?t||this.openMenu():e.key==="Enter"&&r()}handleInputChange(e){this.updateInputValue(e.target.value)}handleOptionClick(e){var r,t=Number(e.currentTarget.value),{filter:a,filteredOptions:i}=this.state,{options:l}=this.props,n=a?i:l;this.updateInputValue(n[t].value),this.closeMenu(),(r=this.input.current)===null||r===void 0||r.focus()}handleOptionFocus(e){this.setState({keyboardOptionIndex:Number(e.target.value)})}handleFilterChange(e){var r,{options:t}=this.props,a=e.target.value,i=this.getCachedFilteredOptions(t,a);this.setState({filter:a,filteredOptions:i,keyboardOptionIndex:0}),(r=this.popper.current)===null||r===void 0||r.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:r}=this.state;r&&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 r;this.setState({menuIsOpen:!1}),(r=this.popper.current)===null||r===void 0||r.hide()}this.setState({filter:""})}toggleMenu(e){var{menuIsOpen:r}=this.state;r?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,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;if(this.setState({menuIsOpen:!1}),r){var t;(t=this.input.current)===null||t===void 0||t.focus()}(e=this.popper.current)===null||e===void 0||e.hide()}updateKeyboardIndex(){var{value:e,filter:r,filteredOptions:t}=this.state,{options:a}=this.props,i=r?t:a,l=i.findIndex(n=>n.value===e);this.setState({keyboardOptionIndex:l})}scrollOptionIntoView(){var e,r=(e=this.menuContainer.current)===null||e===void 0?void 0:e.querySelector(".cb-option-btn.keyboard-active");r instanceof HTMLElement&&r.scrollIntoView({block:"nearest",inline:"nearest"})}renderMenuElement(){var{searchPlaceholder:e}=this.props,{filter:r,inputWidth:t}=this.state;return L.jsxs("div",{className:"cb-menu-container",ref:this.menuContainer,role:"presentation",onKeyDown:this.handleMenuKeyDown,onClick:a=>{a.stopPropagation()},style:{width:t},onBlur:this.handleMenuBlur,children:[L.jsx("div",{className:"cb-search-input-container",children:L.jsx(lt,{value:r,ref:this.searchInput,onChange:this.handleFilterChange,className:"cb-search-input",placeholder:e})}),L.jsx("div",{className:"cb-options-container",children:L.jsx("div",{className:"cb-options",children:this.renderOptions()})})]})}renderOptions(){var{options:e}=this.props,{keyboardOptionIndex:r,filter:t,filteredOptions:a}=this.state,i=t?a:e;return i.map((l,n)=>{var s="option-".concat(n,"-").concat(l.value);return L.jsx("button",{type:"button",value:n,className:Pe("cb-option-btn",{"keyboard-active":r===n}),onClick:this.handleOptionClick,onFocus:this.handleOptionFocus,children:l.title},s)})}render(){var{options:e,inputPlaceholder:r,disabled:t,className:a,defaultValue:i,spellCheck:l,"data-testid":n}=this.props,{value:s}=this.state,{popperOptions:d}=this.props;return d=wt({placement:"bottom-end",modifiers:{preventOverflow:{enabled:!1}}},d),L.jsxs("div",{className:"input-group cb-container",ref:this.cbContainer,children:[L.jsx("input",{value:s||i,className:Pe("form-control",a,"cb-input"),ref:this.input,onChange:this.handleInputChange,placeholder:r||(e[0]!=null?e[0].title:void 0),disabled:t,onBlur:this.handleInputBlur,onKeyDown:this.handleInputKeyDown,spellCheck:l,"data-testid":n!==void 0?"".concat(n,"-input"):void 0}),L.jsx("div",{className:"input-group-append cb-dropdown",children:L.jsxs("button",{tabIndex:-1,type:"button",className:"btn cb-btn form-control",ref:this.toggleButton,onClick:this.toggleMenu,onKeyDown:this.handleInputKeyDown,disabled:t,"data-testid":n!==void 0?"".concat(n,"-btn"):void 0,children:[L.jsx("span",{className:"cb-caret"}),L.jsx(nt,{ref:this.popper,options:d,className:Pe("combobox interactive"),onEntered:this.handleMenuOpened,onExited:this.handleMenuExited,children:this.renderMenuElement()})]})})]})}}ge(Te,"MENU_NAVIGATION_DIRECTION",gr);ge(Te,"DROP_DOWN_MENU_HEIGHT",200);ge(Te,"propTypes",{options:ee.arrayOf(ee.shape({title:ee.string.isRequired,value:ee.string.isRequired})).isRequired,popperOptions:ee.shape({title:ee.string.isRequired,value:ee.string.isRequired}),onChange:ee.func,inputPlaceholder:ee.string,searchPlaceholder:ee.string,disabled:ee.bool,className:ee.string,defaultValue:ee.string,spellCheck:ee.bool,onEnter:ee.func,"data-testid":ee.string});ge(Te,"defaultProps",{onChange(){},inputPlaceholder:"",searchPlaceholder:"Search",disabled:!1,className:"",defaultValue:"",popperOptions:null,spellCheck:!0,onEnter(){},"data-testid":void 0});const Ia=Te;function zr(o,e,r){return o.substring(0,e)+r+o.substring(e+1)}function St(o,e,r){return o.length<r?"".concat(o).concat(e.substring(o.length,r)):o}function Or(o,e){for(var{length:r}=o,t=o.length-1;t>=0&&e[t]===o[t];t-=1)r=t;return o.substring(0,r)}function Wr(o,e){var r=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);e&&(t=t.filter(function(a){return Object.getOwnPropertyDescriptor(o,a).enumerable})),r.push.apply(r,t)}return r}function yt(o){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Wr(Object(r),!0).forEach(function(t){Pt(o,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(r)):Wr(Object(r)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(r,t))})}return o}function Pt(o,e,r){return e=Tt(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Tt(o){var e=Ht(o,"string");return typeof e=="symbol"?e:String(e)}function Ht(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}var ce=jr.module("MaskedInput"),Xe={FORWARD:"forward",BACKWARD:"backward",NONE:"none"},tr=" ",Xr=pe.forwardRef((o,e)=>{var{className:r,example:t,getNextSegmentValue:a=(w,p,m)=>m,getPreferredReplacementString:i=zr,onChange:l=()=>!1,onSelect:n=()=>!1,onSubmit:s,pattern:d,placeholder:v,selection:u,value:h,onFocus:c=()=>!1,onBlur:f=()=>!1,"data-testid":b}=o,C=ot(e),y=J.useMemo(()=>Array.isArray(t)?t:[t],[t]),S=J.useMemo(()=>y[0].replace(/[a-zA-Z0-9]/g,tr),[y]);J.useEffect(function(){if(u!=null){var p;ce.debug("setting selection...",u);var{selectionStart:m,selectionEnd:H,selectionDirection:W}=u;(p=C.current)===null||p===void 0||p.setSelectionRange(m,H,W),ce.debug("selection set!")}},[u,C]);var T=J.useCallback(w=>{for(var p=w,m=w,H=y.length>0?y[0]:h,W=p-1;W>=0&&/[a-zA-Z0-9]/g.test(H.charAt(W));W-=1)p=W;for(var E=m;E<H.length&&/[a-zA-Z0-9]/g.test(H.charAt(E));E+=1)m=E+1;var N=p===m?Xe.NONE:Xe.BACKWARD;return{selectionStart:p,selectionEnd:m,selectionDirection:N}},[y,h]);function R(w,p){for(var m=arguments.length>2&&arguments[2]!==void 0?arguments[2]:w.length,H="",W=0;W<m;W+=1)w.charAt(W)!==tr?H=H.concat(w[W]):H=H.concat(p[W]);return H=H.concat(p.substring(m)),H}function M(w){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:w.length,m=new RegExp("^".concat(d,"$"));if(m.test(w))return!0;for(var H=0;H<y.length;H+=1){var W=R(w,y[H],p);if(m.test(W))return!0}return!1}function O(w){var p=T(w),m=p.selectionEnd+1;return m>=h.length?p:T(m)}function A(w){var p=T(w),m=p.selectionStart-1;return m<=0?p:T(m)}function I(w,p){var m=T(w),H=h.substring(m.selectionStart,m.selectionEnd),W=a(m,p,H,h),E=h.substring(0,m.selectionStart)+W+h.substring(m.selectionEnd);M(E,m.selectionEnd)&&(l(E),n(m))}var V=J.useCallback(w=>{var{selectionStart:p=0,selectionEnd:m=0,selectionDirection:H="none"}=w.target;if(p===null||m===null||H===null){ce.error("Selection attempted on non-text input element",w.target);return}if(ce.debug2("handleSelect",p,m,H),!(u!=null&&p===u.selectionStart&&m===u.selectionEnd)){if(u!=null&&p===h.length&&m===h.length&&w.nativeEvent.type!=="mouseup"){n(yt({},u));return}if(p===m){var W=T(p);ce.debug("Selection segment from ",p,m,"=>",W),n(W)}else n({selectionStart:p,selectionEnd:m,selectionDirection:H})}},[T,n,u,h]),k=J.useCallback(w=>{var p;if(C.current){ce.debug("handleSelectCapture",w);var m=(p=C.current.selectionStart)!==null&&p!==void 0?p:0;m===h.length&&u!=null&&m!==u.selectionStart&&(w.preventDefault(),w.stopPropagation())}},[C,u,h]);function j(w){if(w.preventDefault(),w.stopPropagation(),!!C.current){var{key:p}=w,{selectionStart:m=0,selectionEnd:H=0}=C.current;if(m===null||H===null){ce.error("Selection arrow nvaigation attempted on non-text input element",w.target);return}p==="ArrowLeft"?n(A(m)):p==="ArrowRight"?n(O(H)):p==="ArrowUp"?I(m,-1):p==="ArrowDown"&&I(m,1)}}function Y(w){if(C.current){ce.debug("handleKeyDown",w);var{key:p}=w,{selectionStart:m=0,selectionEnd:H=0}=C.current;if(m===null||H===null){ce.error("Selection key event on non-text input element",w.target);return}if(p==="Enter"){s?.(w);return}if(p.startsWith("Arrow")){j(w);return}if(p==="Delete"||p==="Backspace"){if(w.preventDefault(),w.stopPropagation(),H>=Or(h,S).length){var W=h.substring(0,m===H?m-1:m),E=Or(W,S);E!==h&&(l(E),n({selectionStart:E.length,selectionEnd:E.length,selectionDirection:Xe.NONE}));return}if(m!==H){var N=h.substring(0,m)+h.substring(m,H).replace(/[a-zA-Z0-9]/g,tr)+h.substring(H);ce.debug("Range ",m,H,"deleted, setting value",N),l(N),n({selectionStart:m,selectionEnd:m,selectionDirection:Xe.NONE})}else if(m>0)for(var D=m-1;D>=0;D-=1){var P=h.substring(0,D)+h.substring(D,m).replace(/[a-zA-Z0-9]/g,tr)+h.substring(m);if(P!==h){l(P),n({selectionStart:D,selectionEnd:D,selectionDirection:Xe.NONE});return}}return}if(!(w.altKey||w.metaKey||w.ctrlKey||p.length>1)){w.preventDefault(),w.stopPropagation();for(var B=Array.from(new Set([p,p.toUpperCase(),p.toLowerCase()])),z=0;z<B.length;z+=1)for(var F=B[z],$=/[a-zA-Z0-9]/g.test(F)?y[0].length-1:m,X=m;X<=$;X+=1){var G=St(h,y[0],X+1),q=i(G,X,F,m,H);if(M(q,X+1)){var K=T(X),U=X+1,x={selectionStart:U,selectionEnd:U,selectionDirection:Xe.NONE};if(U>=K.selectionEnd){var _=O(X);_.selectionStart!==K.selectionStart&&(x=_)}ce.debug("handleKeyDown",p,"=>",q,x),l(q),n(x);return}}}}}return L.jsx("input",{ref:C,className:Pe("form-control masked-input",r),type:"text",pattern:d,placeholder:v,value:h,onChange:()=>{},onKeyDown:Y,onSelect:V,onSelectCapture:k,onFocus:c,onBlur:f,"data-testid":b})});Xr.defaultProps={className:"",placeholder:void 0,onChange(){},onSelect(){},getNextSegmentValue:(o,e,r)=>r,getPreferredReplacementString:zr,selection:void 0,onFocus(){},onBlur(){},"data-testid":void 0};const Mt=Xr;function Ye(o,e,r,t,a){var i=t-r+1,l=((parseInt(e,10)-o-r)%i+i)%i+r;return"".concat(l).padStart(a,"0")}function Ot(o,e,r){var{selectionStart:t}=o;return t===0?Ye(e,r,1900,2099,4):t===5?Ye(e,r,1,12,2):t===8?Ye(e,r,1,31,2):t===11?Ye(e,r,0,23,2):t===17||t===14?Ye(e,r,0,59,2):t===20||t===24||t===28?Ye(e,r,0,999,3):r}function fr(o){var e=o.substring(0,23),r=o.substring(23,26),t=o.substring(26);return[e,r,t].filter(a=>a!=="").join("")}var Wt=jr.module("DateTimeInput"),Ft="[12][0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])",Bt="([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]\\.[0-9]{3}[0-9]{3}[0-9]{3}",It="".concat(Ft," ").concat(Bt),ir="2022-01-01",Yr="".concat(ir," 00:00:00.000000000"),Dt="YYYY-MM-DD HH:MM:SS.SSSSSSSSS";function Fr(o){return o!=null&&o.length>=ir.length?"".concat(o.substring(0,ir.length)).concat(o.substring(ir.length).replace(/\u2007/g,"0")).concat(Yr.substring(o.length)):o}function Br(o){return o.replace(/\u200B/g,"")}var kt=[fr(Yr)],mr=pe.forwardRef((o,e)=>{var{className:r="",onChange:t=()=>{},defaultValue:a="",onFocus:i=()=>{},onBlur:l=()=>{},onSubmit:n,"data-testid":s}=o,[d,v]=J.useState(a.length>0?fr(a):""),[u,h]=J.useState(),c=J.useCallback(b=>{Wt.debug("handleChange",b),v(b),t(Fr(Br(b)))},[t]),f=J.useCallback(()=>{var b=Br(d),C=Fr(b);C!==b&&v(fr(C)),l()},[d,l]);return L.jsx("div",{className:"d-flex flex-row align-items-center",children:L.jsx(Mt,{ref:e,className:Pe(r),example:kt,getNextSegmentValue:Ot,onChange:c,onSelect:h,onSubmit:n,pattern:It,placeholder:Dt,selection:u,value:d,onFocus:i,onBlur:f,"data-testid":s})})});mr.displayName="DateTimeInput";mr.defaultProps={className:"",onChange:()=>{},defaultValue:"",onFocus:()=>{},onBlur:()=>{},"data-testid":void 0};const Da=mr;function Ir(o,e){var r=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);e&&(t=t.filter(function(a){return Object.getOwnPropertyDescriptor(o,a).enumerable})),r.push.apply(r,t)}return r}function ke(o){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Ir(Object(r),!0).forEach(function(t){Ve(o,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(r)):Ir(Object(r)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(r,t))})}return o}function Ve(o,e,r){return e=Et(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Et(o){var e=Nt(o,"string");return typeof e=="symbol"?e:String(e)}function Nt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class He extends J.PureComponent{static renderHandle(){return L.jsxs("div",{children:[L.jsx(st,{children:"Drag to re-order"}),L.jsx(hr,{icon:gt})]})}static renderBadge(e){var{text:r}=e;return r!=null&&r.length>0?L.jsx("span",{className:"number-badge",children:r}):null}static renderTextItem(e){var{text:r,badgeText:t="",className:a=""}=e;return L.jsxs("div",{className:Pe("item-list-item-content","draggable-item-list-item-content",a),children:[L.jsx("span",{className:"title",children:r}),He.renderBadge({text:t}),He.renderHandle()]})}static renderItem(e){var r,t,{item:a,isClone:i,selectedCount:l}=e,n=a!=null?(r=(t=a.displayValue)!==null&&t!==void 0?t:a.value)!==null&&r!==void 0?r:"".concat(a):"",s=i!==void 0&&i?"".concat(l):"",d=i!==void 0&&i?"item-list-item-clone":"";return He.renderTextItem({text:n,badgeText:s,className:d})}static getDraggableId(e,r){return"".concat(e,"/").concat(r)}static getDraggableIndex(e){var r=e.split("/").pop();return parseInt(r!==void 0?r:"",10)}constructor(e){super(e),Ve(this,"itemList",void 0),Ve(this,"getCachedDraggableItem",Ke((r,t,a,i,l,n,s,d)=>L.jsx(at,{draggableId:He.getDraggableId(r,i),index:i,isDragDisabled:s,children:v=>L.jsx("div",ke(ke(ke({role:"menuitem",className:"draggable-item-list-item",ref:v.innerRef,tabIndex:-1},v.draggableProps),v.dragHandleProps),{},{children:t({item:a,itemIndex:i,isFocused:l,isSelected:n,style:d,isClone:!1})}))},i),{max:yr.CACHE_SIZE})),Ve(this,"getCachedRenderDraggableItem",Ke((r,t,a)=>i=>{var{item:l,itemIndex:n,isFocused:s,isSelected:d,style:v}=i;return this.getCachedDraggableItem(r,a,l,n,s,d,t,v)},{max:1})),Ve(this,"getCachedRenderClone",Ke((r,t,a,i)=>(l,n,s)=>{var{selectedCount:d}=this.state,{draggableProps:v,dragHandleProps:u,innerRef:h}=l,{index:c}=s.source,f=t[c-a];return L.jsx("div",ke(ke(ke({className:Pe("draggable-item-list-dragging-item-container",r)},v),u),{},{ref:h,children:L.jsx("div",{className:Pe("draggable-item-list-dragging-item",{"two-dragged":d===2},{"multiple-dragged":d>2}),children:i({item:f,itemIndex:c,isFocused:!1,isSelected:!0,style:{},isClone:!0,selectedCount:d})})}))},{max:1})),this.handleSelectionChange=this.handleSelectionChange.bind(this),this.itemList=pe.createRef(),this.state={selectedCount:0}}selectItem(e){var r;(r=this.itemList.current)===null||r===void 0||r.selectItem(e)}focusItem(e){var r;(r=this.itemList.current)===null||r===void 0||r.focusItem(e)}scrollToItem(e){var r;(r=this.itemList.current)===null||r===void 0||r.scrollToItem(e)}handleSelectionChange(e){this.setState({selectedCount:dt.count(e)});var{onSelectionChange:r}=this.props;r(e)}render(){var{className:e,draggablePrefix:r,draggingItemClassName:t,droppableId:a,isDoubleClickSelect:i,isDragDisabled:l,isDropDisabled:n,isMultiSelect:s,isStickyBottom:d,itemCount:v,items:u,offset:h,onFocusChange:c,onSelect:f,onViewportChange:b,renderItem:C,rowHeight:y,selectedRanges:S,style:T,"data-testid":R}=this.props;return L.jsx(it,{isDropDisabled:n,droppableId:a,mode:"virtual",renderClone:this.getCachedRenderClone(t,u,h,C),"data-testid":R,children:(M,O)=>L.jsx("div",ke(ke({role:"menu",className:Pe("draggable-item-list",e,{"is-drop-disabled":n,"is-drag-disabled":l,"is-dragging-from-this":O.draggingFromThisWith,"is-dragging-over":O.isDraggingOver,"is-dropping":O.draggingOverWith}),style:T,ref:M.innerRef},M.droppableProps),{},{children:L.jsx(yr,{focusSelector:".draggable-item-list-item",isDoubleClickSelect:i,isDragSelect:!1,isMultiSelect:s,isStickyBottom:d,itemCount:v,items:u,onFocusChange:c,onSelect:f,onSelectionChange:this.handleSelectionChange,onViewportChange:b,offset:h,ref:this.itemList,renderItem:this.getCachedRenderDraggableItem(r,l,C),rowHeight:y,selectedRanges:S})}))})}}Ve(He,"DEFAULT_ROW_HEIGHT",30);Ve(He,"defaultProps",{className:"",draggingItemClassName:"",offset:0,items:[],rowHeight:He.DEFAULT_ROW_HEIGHT,isDeselectOnClick:!0,isDoubleClickSelect:!0,isDropDisabled:!1,isDragDisabled:!1,isMultiSelect:!1,isStickyBottom:!1,disableSelect:!1,style:null,onFocusChange(){},onSelect(){},onSelectionChange(){},onViewportChange(){},renderItem:He.renderItem,selectedRanges:[],draggablePrefix:"draggable-item",droppableId:"droppable-item-list","data-testid":void 0});const ka=He;function Dr(o){return o.isOn!==void 0}function Lt(o){var{item:e,onSelect:r=()=>{},"data-testid":t}=o,{icon:a,subtitle:i,title:l}=e,n=J.useMemo(()=>Dr(e)?()=>{e.onChange(!e.isOn)}:r,[e,r]);return L.jsxs("div",{className:"btn btn-navigation-menu-item","data-testid":"menu-item-".concat(l),onClick:n,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&n()},tabIndex:0,role:"menuitem",children:[a!==void 0&&L.jsx("div",{className:"icon",children:L.jsx(hr,{icon:a})}),L.jsx("div",{className:"title",children:l}),i!==void 0&&L.jsx("div",{className:"shortcut",children:i}),L.jsx("div",{className:"accessory","data-testid":t,children:Dr(e)?L.jsx(ut,{on:e.isOn,onClick:s=>{s.stopPropagation(),n()}}):L.jsx(hr,{icon:ft})})]})}function Ea(o){var{items:e,onSelect:r=()=>{},"data-testid":t}=o;return L.jsx("div",{className:"navigation-menu-view","data-testid":t,children:L.jsx("ul",{className:"navigation-menu-list",children:e.map((a,i)=>L.jsx("li",{children:L.jsx(Lt,{item:a,onSelect:()=>{r(i)}})},a.title))})})}function Na(o){var{children:e,onBack:r,onClose:t,title:a,"data-testid":i}=o;return L.jsxs("div",{className:"navigation-page","data-testid":i,children:[L.jsxs("div",{className:"navigation-title-bar",children:[L.jsx("div",{className:"navigation-left-buttons",children:r!==void 0&&L.jsx(Pr,{kind:"ghost",className:"btn-back m-1 btn-sm","data-testid":"btn-page-back",onClick:r,icon:mt,children:"Back"})}),L.jsx("div",{className:"navigation-title",children:a}),L.jsx("div",{className:"navigation-right-buttons",children:t!==void 0&&L.jsx(Pr,{kind:"ghost",className:"btn-close btn-sm px-2 m-1","data-testid":"btn-page-close",onClick:t,icon:ct,tooltip:"Close"})})]}),L.jsx("div",{className:"navigation-content",children:e})]})}function La(o){var{children:e,"data-testid":r}=o,t=J.useMemo(()=>pe.Children.toArray(e),[e]),a=ht(t),[i,l]=J.useState(t[t.length-1]),[n,s]=J.useState(null),[d,v]=J.useState(null);J.useEffect(function(){if(!(a===void 0||t===a)){var f=t[t.length-1];t.length===a.length||a.length===0||n!==null||d!==null?n!==null&&f!==n?s(f):f!==d&&f!==i&&l(f):t.length>a.length?s(f):t.length<a.length&&(l(f),v(a[a.length-1]))}},[t,a,n,d,i]);var u=J.useCallback(()=>{l(n),s(null)},[n]),h=J.useCallback(()=>{v(null)},[]);return L.jsxs("div",{className:"navigation-stack",children:[L.jsx("div",{className:"main-view","data-testid":r,children:i}),L.jsx(Hr,{direction:"right",in:d!=null,onEntered:h,children:L.jsx(L.Fragment,{children:d!=null&&L.jsx("div",{className:"popping-view",children:d})})}),L.jsx(Hr,{in:n!=null,onEntered:u,children:L.jsx(L.Fragment,{children:n!=null&&L.jsx("div",{className:"pushing-view",children:n})})})]})}var At=["children"];function kr(o,e){var r=Object.keys(o);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(o);e&&(t=t.filter(function(a){return Object.getOwnPropertyDescriptor(o,a).enumerable})),r.push.apply(r,t)}return r}function Er(o){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?kr(Object(r),!0).forEach(function(t){Vt(o,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(r)):kr(Object(r)).forEach(function(t){Object.defineProperty(o,t,Object.getOwnPropertyDescriptor(r,t))})}return o}function Vt(o,e,r){return e=jt(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function jt(o){var e=zt(o,"string");return typeof e=="symbol"?e:String(e)}function zt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}function Xt(o,e){if(o==null)return{};var r=Yt(o,e),t,a;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(o);for(a=0;a<i.length;a++)t=i[a],!(e.indexOf(t)>=0)&&Object.prototype.propertyIsEnumerable.call(o,t)&&(r[t]=o[t])}return r}function Yt(o,e){if(o==null)return{};var r={},t=Object.keys(o),a,i;for(i=0;i<t.length;i++)a=t[i],!(e.indexOf(a)>=0)&&(r[a]=o[a]);return r}function Aa(o){var{children:e}=o,r=Xt(o,At);return L.jsx("option",Er(Er({},r),{},{children:e}))}function $e(o,e,r){return e=$t(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function $t(o){var e=Kt(o,"string");return typeof e=="symbol"?e:String(e)}function Kt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class $r extends J.PureComponent{constructor(e){super(e),$e(this,"list",void 0),$e(this,"topRow",void 0),$e(this,"bottomRow",void 0),$e(this,"getCachedItem",Ke((r,t,a,i,l,n,s)=>{var d={height:l},v=i??a;return L.jsx("li",{className:"value-list-item",style:d,tabIndex:-1,children:L.jsx(vt,{checked:n,disabled:s,onChange:()=>this.handleSelect(r),children:v})},t)},{max:1e3})),$e(this,"getCachedItems",Ke((r,t,a,i)=>{for(var l=[],n=0;n<r.length;n+=1){var s=r[n],{value:d,displayValue:v,isSelected:u}=s,h=a+n,c=h,f=this.getCachedItem(h,c,d,v,t,u,i);l.push(f)}return l},{max:1})),this.handleBlur=this.handleBlur.bind(this),this.handleScroll=this.handleScroll.bind(this),this.handleSelect=this.handleSelect.bind(this),this.list=pe.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:r}=this.props;r?.(e)}}handleScroll(){this.sendViewportUpdate()}handleSelect(e){var{items:r,offset:t,onSelect:a}=this.props,i=e-t;if(i>=0&&i<r.length){var l=r[i],{value:n}=l;a(e,n)}else a(e,null)}sendViewportUpdate(){if(!(!this.list.current||this.list.current.clientHeight===0)){var{onViewportChange:e,rowHeight:r}=this.props,t=this.list.current.scrollTop,a=t+this.list.current.clientHeight,i=Math.floor(t/r),l=Math.ceil(a/r);(this.topRow!==i||this.bottomRow!==l)&&(this.topRow=i,this.bottomRow=l,e(i,l))}}getElement(e){if(this.list.current==null)return null;var r=this.list.current.querySelectorAll(".value-list-item");return r[e]}scrollIntoView(e){var r=this.getElement(e);r?.scrollIntoView({block:"center"})}render(){var{className:e,disabled:r,isInvalid:t,items:a,itemCount:i,offset:l,rowHeight:n,"data-testid":s}=this.props,d=this.getCachedItems(a,n,l,r);return L.jsx("div",{className:Pe("select-value-list-scroll-pane h-100 w-100",{"is-invalid":t},e),onBlur:this.handleBlur,onScroll:this.handleScroll,ref:this.list,"data-testid":s,children:L.jsx("div",{className:"select-value-list",style:{height:i*n},children:L.jsx("ol",{className:"select-value-list-content",style:{position:"absolute",height:a.length*n,top:l*n,left:0},children:d})})})}}$e($r,"defaultProps",{disabled:!1,rowHeight:21,onBlur:()=>{},"data-testid":void 0});const Va=$r;function ne(o,e,r){return e=Ut(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Ut(o){var e=Gt(o,"string");return typeof e=="symbol"?e:String(e)}function Gt(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}function ar(o){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:er.CACHE_SIZE,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Math.floor(e/2);if(o.size>e)for(var t=o.keys();o.size>r;)o.delete(t.next().value)}function Nr(o,e,r,t,a){for(var i=new Map,l=0,n=0;n<o&&n<r;n+=1)i.set(n,l),l+=g(a,n);l=t;for(var s=0;s<e&&r-s-1>=0;s+=1)l-=g(a,r-s-1),i.set(r-s-1,l);return i}class er{constructor(){var{userColumnWidths:e=new Map,userRowHeights:r=new Map,calculatedColumnWidths:t=new Map,calculatedRowHeights:a=new Map,fontWidths:i=new Map,modelRows:l=new Map,modelColumns:n=new Map,movedRows:s=[],movedColumns:d=[],initialRowHeights:v=new Map,initialColumnWidths:u=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};ne(this,"initialRowHeights",void 0),ne(this,"initialColumnWidths",void 0),ne(this,"userColumnWidths",void 0),ne(this,"userRowHeights",void 0),ne(this,"calculatedColumnWidths",void 0),ne(this,"calculatedRowHeights",void 0),ne(this,"fontWidths",void 0),ne(this,"modelRows",void 0),ne(this,"modelColumns",void 0),ne(this,"movedRows",void 0),ne(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=r,this.calculatedRowHeights=a,this.calculatedColumnWidths=t,this.fontWidths=i,this.modelRows=l,this.modelColumns=n,this.movedRows=s,this.movedColumns=d,this.initialRowHeights=v,this.initialColumnWidths=u}getMetrics(e){var{left:r,top:t,leftOffset:a,topOffset:i,width:l,height:n,theme:s,model:d,movedRows:v,movedColumns:u,draggingColumn:h}=e,{rowHeight:c,rowHeaderWidth:f,rowFooterWidth:b,columnWidth:C,columnHeaderHeight:y,minScrollHandleSize:S,scrollBarSize:T}=s;v!==this.movedRows&&(this.movedRows=v,this.modelRows.clear()),u!==this.movedColumns&&(this.movedColumns=u,this.modelColumns.clear());var{columnCount:R,rowCount:M,floatingTopRowCount:O,floatingBottomRowCount:A,floatingLeftColumnCount:I,floatingRightColumnCount:V,columnHeaderMaxDepth:k}=d,j=this.getFirstRow(e),Y=this.getFirstColumn(e),w=this.getGridX(e),p=this.getGridY(e),m=Ce(d)&&d.hasExpandableRows?this.calculateTreePaddingX(e):0,H=0,W=this.getVisibleRowHeights(e),E=this.getVisibleColumnWidths(e,Y,m),N=Array.from(W.keys()),D=Array.from(E.keys()),P=new Map([...W,...this.getFloatingRowHeights(e)]),B=new Map([...E,...this.getFloatingColumnWidths(e)]),z=this.getVisibleColumnXs(B,D,a),F=this.getVisibleRowYs(P,N,i),$=N.length>0?N[N.length-1]:t,X=D.length>0?D[D.length-1]:r,G=this.getBottomViewport(e,N,F,P),q=this.getRightViewport(e,D,z,B),K=this.getFloatingTopHeight(e,P),U=this.getFloatingBottomHeight(e,P),x=this.getFloatingLeftWidth(e,B),_=this.getFloatingRightWidth(e,B),fe=Array.from(B.values()),oe=Array.from(P.values()),le=fe.reduce((Le,ur)=>Le+ur,0)-a,te=oe.reduce((Le,ur)=>Le+ur,0)-i,se=a+le+b,de=i+te,ue=l-w,he=n-p,Be=this.getLastLeft(e,null,ue-b),Me=this.getLastLeft(e,null,ue-b-T),qe=this.getLastTop(e,null,he-U),Ze=this.getLastTop(e,null,he-U-T),we=Me,ae=Ze;Be===0&&qe===0&&(we=0,ae=0);var Oe=we>0,be=Oe?T:0,me=ae>0,Re=me?T:0,je=w,We=k*y,Se=l-je-Re,ve=n-We-be,ze=R===1?Se/se:(R-we)/R,Ee=M===1?ve/de:(M-ae)/M,Ne=Oe?Fe(Se*ze,S,Se-1):0,ye=me?Fe(ve*Ee,S,ve-1):0,Ie=g(B,r,0),Qe=g(P,t,0),rr=Ie>0?a/Ie:0,lr=Qe>0?i/Qe:0,nr=R===1?a/(se-ue):(r+rr)/we,or=M===1?i/(de-he):(t+lr)/ae,sr=Oe?nr*(Se-Ne):0,Q=me?or*(ve-ye):0,pr=[...Array(O).keys(),...[...Array(A).keys()].map(Le=>M-Le-1)],dr=new Map([...F,...this.getFloatingRowYs(e,P,Math.floor(n-p-be))]),Cr=[...Array(I).keys(),...[...Array(V).keys()].map(Le=>R-Le-1)],Je=new Map([...z,...this.getFloatingColumnXs(e,B,Math.floor(l-w-Re))]),wr=[];if(h)for(var De=h.range[0];De<=h.range[1];De+=1)wr.push(De),B.has(De)||B.set(De,this.getVisibleColumnWidth(De,e)),Je.has(De)||Je.set(De,0);var br=N.concat(pr),Rr=D.concat(Cr).concat(wr),Sr=this.getModelRows(br,e),Ur=this.getModelColumns(Rr,e),Gr=this.getVisibleRowTreeBoxes(P,Sr,e),qr=this.getTopVisible(e,dr,P,N),Zr=this.getLeftVisible(e,Je,B,D),Qr=ae>0?this.getBottomVisible(e,dr,P,N,p):$,Jr=we>0?this.getRightVisible(e,Je,B,D,w):X,{fontWidths:_r,userColumnWidths:xr,userRowHeights:et,calculatedRowHeights:rt,calculatedColumnWidths:tt}=this;return{rowHeight:c,rowHeaderWidth:f,rowFooterWidth:b,rowCount:M,columnWidth:C,columnCount:R,columnHeaderHeight:y,floatingTopRowCount:O,floatingBottomRowCount:A,floatingLeftColumnCount:I,floatingRightColumnCount:V,gridX:w,gridY:p,firstRow:j,firstColumn:Y,treePaddingX:m,treePaddingY:H,left:r,top:t,bottom:$,right:X,topOffset:i,leftOffset:a,topVisible:qr,leftVisible:Zr,bottomVisible:Qr,rightVisible:Jr,bottomViewport:G,rightViewport:q,width:l,height:n,maxX:le,maxY:te,lastLeft:we,lastTop:ae,barHeight:ve,barTop:We,barWidth:Se,barLeft:je,handleHeight:ye,handleWidth:Ne,hasHorizontalBar:Oe,hasVerticalBar:me,verticalBarWidth:Re,horizontalBarHeight:be,scrollX:sr,scrollY:Q,scrollableContentWidth:se,scrollableContentHeight:de,scrollableViewportWidth:ue,scrollableViewportHeight:he,visibleRows:N,visibleColumns:D,visibleRowHeights:W,visibleColumnWidths:E,floatingRows:pr,floatingColumns:Cr,allRows:br,allColumns:Rr,allRowHeights:P,allColumnWidths:B,floatingTopHeight:K,floatingBottomHeight:U,floatingLeftWidth:x,floatingRightWidth:_,visibleRowYs:F,visibleColumnXs:z,allRowYs:dr,allColumnXs:Je,visibleRowTreeBoxes:Gr,modelRows:Sr,modelColumns:Ur,movedRows:v,movedColumns:u,fontWidths:_r,userColumnWidths:xr,userRowHeights:et,calculatedRowHeights:rt,calculatedColumnWidths:tt,columnHeaderMaxDepth:k}}getGridX(e){var{theme:r}=e,{rowHeaderWidth:t}=r;return t}getGridY(e){var{theme:r,model:t}=e,{columnHeaderHeight:a}=r,{columnHeaderMaxDepth:i}=t;return i*a}getVisibleHeight(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{height:t,theme:a}=e,{scrollBarSize:i}=a,l=this.getGridY(e),n=this.getFloatingBottomHeight(e,r),s=this.getFloatingTopHeight(e,r);return t-n-s-l-i}getVisibleWidth(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{width:t,theme:a}=e,{scrollBarSize:i,rowFooterWidth:l}=a,n=this.getGridX(e),s=this.getFloatingRightWidth(e,r),d=this.getFloatingLeftWidth(e,r);return t-d-s-n-i-l}getFirstIndex(e,r,t){for(var a=e.size+1,i=0;i<a;i+=1){var l=r(i,t);if(e.get(l)!==0)return i}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,r,t){var{model:a}=e,{columnCount:i,floatingRightColumnCount:l}=a,n=Math.max(0,i-l-1);r!=null&&(n=r);for(var s=0;n>=0;){var d=this.getVisibleColumnWidth(n,e);if(s+=d,s>=t)return Fe(n+1,0,r??i-1);n-=1}return 0}getLastTop(e,r,t){var{model:a}=e,{rowCount:i,floatingBottomRowCount:l}=a,n=Math.max(0,i-l-1);r!=null&&(n=r);for(var s=0;n>=0;){var d=this.getVisibleRowHeight(n,e);if(s+=d,s>=t)return Fe(n+1,0,i-1);n-=1}return 0}getTopForTopVisible(e,r){for(var t=this.getFloatingTopHeight(e),a=r,i=0;a>0&&i<t;)a-=1,i+=this.getVisibleRowHeight(a,e);return a}getTopForBottomVisible(e,r){var{height:t}=e,a=this.getGridY(e),i=this.getFloatingBottomHeight(e),l=t-a-i;return this.getLastTop(e,r,l)}getLeftForLeftVisible(e,r){for(var t=this.getFloatingLeftWidth(e),a=r,i=0;a>0&&i<t;)a-=1,i+=this.getVisibleColumnWidth(a,e);return a}getLeftForRightVisible(e,r){var{width:t}=e,a=this.getGridX(e),i=this.getFloatingRightWidth(e),l=t-a-i;return this.getLastLeft(e,r,l)}getFloatingRowHeights(e){for(var{model:r}=e,{floatingTopRowCount:t,floatingBottomRowCount:a,rowCount:i}=r,l=new Map,n=0;n<t&&n<i;n+=1)l.set(n,this.getVisibleRowHeight(n,e));for(var s=0;s<a&&i-s-1>=0;s+=1){var d=i-s-1;l.set(d,this.getVisibleRowHeight(d,e))}return l}getVisibleRowHeights(e){for(var{top:r,topOffset:t,height:a,model:i}=e,l=0,n=r,s=new Map,{rowCount:d}=i;l<a+t&&n<d;){var v=this.getVisibleRowHeight(n,e);s.set(n,v),l+=v,n+=1}return s}getFloatingColumnWidths(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{model:a}=e,{columnCount:i,floatingLeftColumnCount:l,floatingRightColumnCount:n}=a,s=new Map,d=0;d<l&&d<i;d+=1)s.set(d,this.getVisibleColumnWidth(d,e,r,t));for(var v=0;v<n&&i-v-1>=0;v+=1){var u=i-v-1;s.set(u,this.getVisibleColumnWidth(u,e,r,t))}return s}getVisibleColumnWidths(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{left:a,leftOffset:i,width:l,model:n}=e,s=0,d=a,v=new Map,{columnCount:u}=n;s<l+i&&d<u;){var h=this.getVisibleColumnWidth(d,e,r,t);v.set(d,h),s+=h,d+=1}return v}getFloatingColumnXs(e,r,t){var{model:a}=e,{columnCount:i,floatingLeftColumnCount:l,floatingRightColumnCount:n}=a;return Nr(l,n,i,t,r)}getVisibleColumnXs(e,r,t){for(var a=new Map,i=-t,l=0;l<r.length;l+=1){var n=r[l],s=g(e,n);a.set(n,i),i+=s}return a}getFloatingRowYs(e,r,t){var{model:a}=e,{floatingTopRowCount:i,floatingBottomRowCount:l,rowCount:n}=a;return Nr(i,l,n,t,r)}getVisibleRowYs(e,r,t){for(var a=new Map,i=-t,l=0;l<r.length;l+=1){var n=r[l],s=g(e,n);a.set(n,i),i+=s}return a}getVisibleRowTreeBoxes(e,r,t){var a=new Map,{model:i,theme:l}=t,{treeDepthIndent:n,treeHorizontalPadding:s}=l;return Ce(i)&&i.hasExpandableRows&&e.forEach((d,v)=>{var u=g(r,v);if(i.isRowExpandable(u)){var h=i.depthForRow(u),c=h*n+s,f=(h+1)*n+s,b=0,C=d;a.set(v,{x1:c,y1:b,x2:f,y2:C})}}),a}getFloatingLeftWidth(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:t}=e,{floatingLeftColumnCount:a}=t,i=0,l=0;l<a;l+=1)i+=g(r,l);return i}getFloatingRightWidth(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:t}=e,{floatingRightColumnCount:a,columnCount:i}=t,l=0,n=0;n<a;n+=1)l+=g(r,i-n-1);return l}getFloatingTopHeight(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:t}=e,{floatingTopRowCount:a}=t,i=0,l=0;l<a;l+=1)i+=g(r,l);return i}getFloatingBottomHeight(e){for(var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:t}=e,{floatingBottomRowCount:a,rowCount:i}=t,l=0,n=0;n<a;n+=1)l+=g(r,i-n-1);return l}getTopVisible(e,r,t,a){for(var i=this.getFloatingTopHeight(e,t),l=0;l<a.length;l+=1){var n=a[l],s=g(r,n);if(s>=i)return n}return 0}getLeftVisible(e,r,t,a){for(var i=this.getFloatingLeftWidth(e,t),l=0;l<a.length;l+=1){var n=a[l],s=g(r,n);if(s>=i)return n}return 0}getBottomVisible(e,r,t,a,i){for(var{height:l,theme:n}=e,{scrollBarSize:s}=n,d=this.getFloatingBottomHeight(e,t),v=l-i-s-d,u=a.length-1;u>=0;u-=1){var h=a[u],c=g(r,h),f=g(t,h);if(c+f<=v)return h}return 0}getRightVisible(e,r,t,a,i){for(var{width:l,theme:n}=e,{scrollBarSize:s}=n,d=this.getFloatingRightWidth(e,t),v=l-i-s-d,u=a.length-1;u>=0;u-=1){var h=a[u],c=g(r,h),f=g(t,h);if(c+f<=v)return h}return 0}getBottomViewport(e,r,t,a){var{height:i,theme:l}=e,{rowHeight:n}=l;return this.getLastIndexViewport(r,t,a,i,n)}getRightViewport(e,r,t,a){var{width:i,theme:l}=e,{columnWidth:n}=l;return this.getLastIndexViewport(r,t,a,i,n)}getLastIndexViewport(e,r,t,a,i){var l=0,n=0;return e.length>0&&(l=e[e.length-1],n=g(r,l)+g(t,l)),n<a&&(l+=Math.ceil((a-n)/i)),l}getVisibleItemSize(e,r,t){var a;return(a=r.get(e))!==null&&a!==void 0?a:t()}getVisibleRowHeight(e,r){var t=this.getModelRow(e,r),a=this.calculateRowHeight(e,t,r);return this.getVisibleItemSize(t,this.userRowHeights,()=>{var i=this.initialRowHeights.get(t);return i!==void 0?i:a})}getVisibleColumnWidth(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.getFirstColumn(r),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.calculateTreePaddingX(r),i=this.getModelColumn(e,r),l=this.calculateColumnWidth(e,i,r,t,a);return this.getVisibleItemSize(i,this.userColumnWidths,()=>{var n=this.initialColumnWidths.get(i);return n!==void 0?n:l})}getModelRows(e,r){for(var t=new Map,a=0;a<e.length;a+=1){var i=e[a],l=this.getModelRow(i,r);t.set(i,l)}return t}getModelRow(e,r){if(this.modelRows.has(e))return g(this.modelRows,e);var{movedRows:t}=r,a=Z.getModelIndex(e,t);return this.modelRows.set(e,a),a}getModelColumns(e,r){for(var t=new Map,a=0;a<e.length;a+=1){var i=e[a],l=this.getModelColumn(i,r);t.set(i,l)}return t}getModelColumn(e,r){var t=this.modelColumns.has(e);if(t)return g(this.modelColumns,e);var{movedColumns:a}=r,i=Z.getModelIndex(e,a);return this.modelColumns.set(e,i),i}calculateRowHeight(e,r,t){var{theme:a}=t,{autoSizeRows:i,rowHeight:l}=a;if(!i)return l;var n=this.calculatedRowHeights.get(r);return n??(this.calculatedRowHeights.set(r,Math.ceil(l)),ar(this.calculatedRowHeights),l)}calculateColumnWidth(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.getFirstColumn(t),i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.calculateTreePaddingX(t),{theme:l}=t,{autoSizeColumns:n,minColumnWidth:s,maxColumnWidth:d}=l;if(!n){var{columnWidth:v}=l;return v}var u=this.calculateColumnHeaderWidth(r,t),h=this.calculateColumnDataWidth(r,t),c=this.calculatedColumnWidths.get(r),f=Math.ceil(Math.max(u,h));return f=Math.max(s,f),f=Math.min(d,f),c!=null&&c>f?f=c:(this.calculatedColumnWidths.set(r,f),ar(this.calculatedColumnWidths)),e===a&&(f+=i),f}calculateColumnHeaderWidth(e,r){var{model:t,theme:a}=r,{headerFont:i,headerHorizontalPadding:l}=a,n=t.textForColumnHeader(e,0);if(n!==void 0&&n!==""){var s=this.getWidthForFont(i,r);return n.length*s+l*2}return l*2}calculateColumnDataWidth(e,r){var{top:t,height:a,width:i,model:l,theme:n}=r,{floatingTopRowCount:s,floatingBottomRowCount:d,rowCount:v}=l,{font:u,cellHorizontalPadding:h,rowHeight:c,rowHeaderWidth:f,rowFooterWidth:b,scrollBarSize:C,dataBarHorizontalPadding:y}=n,S=0,T=this.getWidthForFont(u,r),R=a/c,M=Math.ceil(t+R);return Z.iterateAllItems(t,M,s,d,v,O=>{var A=this.getModelRow(O,r),I=l.textForCell(e,A),V=l.renderTypeForCell(e,A),k=0;if(I){var j=h*2;k=I.length*T+j}V==="dataBar"&&(k+=y),S=Math.max(S,k)}),S=Math.max(Math.min(S,(i-f-C-b)*er.MAX_COLUMN_WIDTH),h*2),S}calculateTreePaddingX(e){var{top:r,height:t,model:a,theme:i}=e,{rowHeight:l,treeDepthIndent:n}=i;if(!Ce(a)||!a.hasExpandableRows)return 0;for(var s=0,d=t/l,v=Math.ceil(r+d),u=r;u<=v;u+=1){var h=this.getModelRow(u,e),c=a.depthForRow(h);s=Math.max(s,n*(c+1))}return s}getWidthForFont(e,r){if(this.fontWidths.has(e))return g(this.fontWidths,e);var{context:t}=r;t.font=e;var a=t.measureText("8"),{width:i}=a;return this.fontWidths.set(e,i),this.fontWidths.set(t.font,i),i}setColumnWidth(e,r){var t=new Map(this.userColumnWidths);t.set(e,Math.ceil(r)),ar(t),this.userColumnWidths=t}resetColumnWidth(e){var r=new Map(this.userColumnWidths);r.delete(e),this.userColumnWidths=r}setRowHeight(e,r){var t=new Map(this.userRowHeights);t.set(e,Math.ceil(r)),ar(t),this.userRowHeights=t}resetRowHeight(e){var r=new Map(this.userRowHeights);r.delete(e),this.userRowHeights=r,this.calculatedRowHeights.delete(e)}}ne(er,"CACHE_SIZE",1e4);ne(er,"MAX_COLUMN_WIDTH",.8);var qt=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,activeCellSelectionBorderWidth:2,selectionColor:"#4286f433",selectionOutlineColor:"#4286f4",selectionOutlineCasingColor:"#222222",scrollBarSelectionTick:!0,scrollBarSelectionTickColor:"#4286f433",scrollBarActiveSelectionTickColor:"#4286f480",shadowBlur:8,shadowAlpha:.15,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 ja=qt;function Zt(o,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,t=vr.hex.lab.raw(o),a=t[0]<50?17:10;return t[0]=Math.max(t[0]-a/r*e,0),"#".concat(vr.lab.hex(t))}function Qt(o,e){var[r,t,a]=vr.hex.rgb(o);return"rgba(".concat(r,", ").concat(t,", ").concat(a,", ").concat(e,")")}var Jt=o=>{var{r:e,g:r,b:t}=o,a=.4122214708*e+.5363325363*r+.0514459929*t,i=.2119034982*e+.6806995451*r+.1073969566*t,l=.0883024619*e+.2817188376*r+.6299787005*t,n=Math.cbrt(a),s=Math.cbrt(i),d=Math.cbrt(l);return{L:.2104542553*n+.793617785*s-.0040720468*d,a:1.9779984951*n-2.428592205*s+.4505937099*d,b:.0259040371*n+.7827717662*s-.808675766*d}},_t=o=>{var{L:e,a:r,b:t}=o,a=e+.3963377774*r+.2158037573*t,i=e-.1055613458*r-.0638541728*t,l=e-.0894841775*r-1.291485548*t,n=a*a*a,s=i*i*i,d=l*l*l;return{r:Fe(4.0767416621*n-3.3077115913*s+.2309699292*d,0,255),g:Fe(-1.2684380046*n+2.6097574011*s-.3413193965*d,0,255),b:Fe(-.0041960863*n-.7034186147*s+1.707614701*d,0,255)}},xt=o=>{var e,r,t=(e=(r=o.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(a,i,l,n)=>"#".concat(i).concat(i).concat(l).concat(l).concat(n).concat(n)).substring(1).match(/.{2}/g))===null||r===void 0?void 0:r.map(a=>parseInt(a,16)))!==null&&e!==void 0?e:[0,0,0];return{r:t[0],g:t[1],b:t[2]}},ea=o=>{var e=Math.round(o.r),r=Math.round(o.g),t=Math.round(o.b);return"#".concat([e,r,t].map(a=>{var i=a.toString(16);return i.length===1?"0".concat(i):i}).join(""))},ra=(o,e,r)=>{var{L:t,a,b:i}=o,{L:l,a:n,b:s}=e,d=t+(l-t)*r,v=a+(n-a)*r,u=i+(s-i)*r;return{L:d,a:v,b:u}};const Ae={colorWithAlpha:Qt,darkenForDepth:Zt,linearSRGBToOklab:Jt,OklabToLinearSRGB:_t,hexToRgb:xt,rgbToHex:ea,lerpColor:ra};function Lr(o,e,r){return e=ta(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function ta(o){var e=aa(o,"string");return typeof e=="symbol"?e:String(e)}function aa(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class ia{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Lr(this,"order",void 0),Lr(this,"cursor",null),this.order=e}onDown(e,r,t){return!1}onMove(e,r,t){return!1}onDrag(e,r,t){return!1}onLeave(e,r,t){return!1}onClick(e,r,t){return!1}onContextMenu(e,r,t){return!1}onDoubleClick(e,r,t){return!1}onUp(e,r,t){return!1}onWheel(e,r,t){return!1}}function _e(o,e,r){return e=la(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function la(o){var e=na(o,"string");return typeof e=="symbol"?e:String(e)}function na(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class oa extends ia{constructor(){super(...arguments),_e(this,"draggingIndex",void 0),_e(this,"resizingItems",[]),_e(this,"hiddenItems",[]),_e(this,"targetSizes",new Map),_e(this,"dragOffset",0)}onDown(e,r){var{metrics:t}=r,{model:a}=r.props,i=r.getTheme();if(!t)throw new Error("metrics not set");var l=this.getSeparator(e,t,a,i);if(l!=null){var n=l.index;return this.dragOffset=0,this.draggingIndex=n,this.resizingItems=[n],this.hiddenItems=this.getHiddenItems(n,t).reverse(),this.targetSizes.clear(),this.addTargetSize(t,n),this.updateCursor(t,n),this.updateSeparator(r,l),!0}return!1}onMove(e,r){var{metrics:t}=r,{model:a}=r.props,i=r.getTheme();if(!t)throw new Error("metrics not set");var l=this.getSeparator(e,t,a,i);return l!=null?(this.updateCursor(t,l.index),!0):!1}onDrag(e,r){if(this.draggingIndex==null)return!1;var t=e[this.pointProperty],{metricCalculator:a,metrics:i}=r;if(!i)throw new Error("metrics not set");for(var l=r.getTheme(),n=i[this.visibleOffsetProperty],s=i[this.marginProperty],d=i[this.calculatedSizesProperty],v=i[this.modelIndexesProperty],u=i[this.firstIndexProperty],h=i[this.treePaddingProperty],c=new Map,f=this.resizingItems[this.resizingItems.length-1];f!=null;){var b=g(n,f),C=t-s-b-this.dragOffset,y=g(v,f),S=this.targetSizes.get(y),T=this.resizingItems.length>1,R=this.hiddenItems.indexOf(f),M=d.get(y);M!=null&&f===u&&(M+=h);var O=C;if(M!=null&&Math.abs(C-M)<=l.headerResizeSnapThreshold?O=M:S!==void 0&&C>S&&(T&&R!==0||R>0)?O=S:C<=l.headerResizeHiddenSnapThreshold&&(O=0),c.set(y,O),C<-l.headerResizeSnapThreshold&&O===0)if(R>=0&&T){var A;this.resizingItems.pop(),this.removeTargetSize(i,f),f=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(A=this.targetSizes.get(g(v,f)))!==null&&A!==void 0?A:0}else f=this.getNextShownItem(f,i),f!==null&&(this.resizingItems.push(f),this.addTargetSize(i,f));else S!==void 0&&C>S+l.headerResizeSnapThreshold&&O===S?R>0?(this.dragOffset+=O,f=this.hiddenItems[R-1],this.resizingItems.push(f),this.addTargetSize(i,f)):T?(this.resizingItems.pop(),this.removeTargetSize(i,f),f=this.resizingItems[this.resizingItems.length-1]):f=null:f=null}return c.forEach((I,V)=>{var k,j=(k=a[this.initialSizesProperty].get(V))!==null&&k!==void 0?k:d.get(V);I===j?this.resetSize(a,V):this.setSize(a,V,I)}),this.updateCursor(i,this.draggingIndex),!0}onUp(e,r){return this.draggingIndex!=null&&(this.draggingIndex=void 0,this.resizingItems=[],this.hiddenItems=[],this.targetSizes.clear(),this.updateSeparator(r,null)),!1}onDoubleClick(e,r){var{metrics:t,metricCalculator:a}=r,{model:i}=r.props,l=r.getTheme();if(!t)throw new Error("metrics not set");var n=this.getSeparator(e,t,i,l);if(n!=null){var s=t[this.modelIndexesProperty],d=g(s,n.index),v=t[this.calculatedSizesProperty].get(d),u=a[this.initialSizesProperty].get(d);return v===u||v==null?this.resetSize(a,d):this.setSize(a,d,v),r.forceUpdate(),!0}return!1}updateCursor(e,r){var t=e[this.visibleSizesProperty],a=g(t,r);a===0?this.cursor=this.hiddenCursor:this.cursor=this.defaultCursor}addTargetSize(e,r){var t=e[this.modelIndexesProperty],a=e[this.userSizesProperty],i=e[this.calculatedSizesProperty],l=r===0?e[this.treePaddingProperty]:0,n=g(t,r),s=a.get(n);if(s==null||s===0){var d;s=((d=i.get(n))!==null&&d!==void 0?d:0)+l}this.targetSizes.set(n,s)}removeTargetSize(e,r){var t=e[this.modelIndexesProperty],a=g(t,r);this.targetSizes.delete(a)}}const sa=oa;function ie(o,e,r){return e=da(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function da(o){var e=ua(o,"string");return typeof e=="symbol"?e:String(e)}function ua(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class cr extends sa{constructor(){super(...arguments),ie(this,"hiddenCursor","e-resize"),ie(this,"defaultCursor","col-resize"),ie(this,"pointProperty","x"),ie(this,"userSizesProperty","userColumnWidths"),ie(this,"visibleOffsetProperty","visibleColumnXs"),ie(this,"visibleSizesProperty","visibleColumnWidths"),ie(this,"marginProperty","rowHeaderWidth"),ie(this,"calculatedSizesProperty","calculatedColumnWidths"),ie(this,"initialSizesProperty","initialColumnWidths"),ie(this,"modelIndexesProperty","modelColumns"),ie(this,"firstIndexProperty","firstColumn"),ie(this,"treePaddingProperty","treePaddingX"),ie(this,"getHiddenItems",Z.getHiddenColumns),ie(this,"getNextShownItem",Z.getNextShownColumn),ie(this,"getSeparator",cr.getColumnSeparator)}static getColumnSeparator(e,r,t,a){if(!a.allowColumnResize)return null;var{x:i,y:l,columnHeaderDepth:n}=e,{modelColumns:s}=r,d=Z.getColumnSeparatorIndex(i,l,r,a);if(d==null||n==null||n>0)return null;var v=s.get(d);return v!=null?{index:d,depth:0}:null}setSize(e,r,t){e.setColumnWidth(r,t)}resetSize(e,r){e.resetColumnWidth(r)}updateSeparator(e,r){e.setState({draggingColumnSeparator:r,isDragging:r!==null})}}const ha=cr;var xe=10;function va(o,e,r){return e=ga(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function ga(o){var e=fa(o,"string");return typeof e=="symbol"?e:String(e)}function fa(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class ma{constructor(){va(this,"getCachedTruncatedString",Ge((e,r,t,a,i)=>re.truncateToWidth(e,r,t,a,i),{max:1e4}))}drawCellRowTreeMarker(e,r,t){var{metrics:a,model:i,mouseX:l,mouseY:n,theme:s}=r,{firstColumn:d,gridX:v,gridY:u,allColumnXs:h,allColumnWidths:c,allRowYs:f,allRowHeights:b,visibleRowTreeBoxes:C}=a,{treeMarkerColor:y,treeMarkerHoverColor:S}=s,T=g(h,d),R=g(c,d),M=g(f,t),O=g(b,t);if(!(!Ce(i)||!i.isRowExpandable(t))){var A=g(C,t),I=l!=null&&n!=null&&l>=v+T&&l<=v+T+R&&n>=u+M&&n<=u+M+O?S:y;this.drawTreeMarker(e,r,T,M,A,I,i.isRowExpanded(t))}}drawTreeMarker(e,r,t,a,i,l,n){var{x1:s,y1:d,x2:v,y2:u}=i,h=n?"⊟":"⊞",c=t+(s+v)*.5+.5,f=a+(d+u)*.5+.5;e.fillStyle=l,e.textAlign="center",e.fillText(h,c,f)}}const Kr=ma;function Ar(o){return o?.dataBarOptionsForCell!==void 0}function Vr(o,e,r){return e=ca(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function ca(o){var e=pa(o,"string");return typeof e=="symbol"?e:String(e)}function pa(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class Ca extends Kr{constructor(){super(...arguments),Vr(this,"heightOfDigits",void 0),Vr(this,"getCachedWidestValueForColumn",Ge((e,r,t,a,i)=>{for(var l=0,n=0;n<r.length;n+=1){var s=r[n],d=g(t,s),v=a.textForCell(i,d);l=Math.max(l,e.measureText(v).width)}return l},{max:1e3}))}drawCellContent(e,r,t,a){var i,{metrics:l,model:n,theme:s}=r;if(Ar(n)){var{modelColumns:d,modelRows:v,allRowHeights:u,allRowYs:h,firstColumn:c,fontWidths:f}=l,b=t===c,C=g(u,a),y=g(v,a),S=g(d,t),T=g(h,a),R=n.textAlignForCell(S,y),M=n.textForCell(S,y),{x:O,width:A}=Z.getTextRenderMetrics(r,t,a),I=(i=f?.get(e.font))!==null&&i!==void 0?i:xe,V=n.truncationCharForCell(S,y),k=this.getCachedTruncatedString(e,M,A,I,V),{columnMin:j,columnMax:Y,axis:w,color:p,valuePlacement:m,opacity:H,markers:W,direction:E,value:N}=n.dataBarOptionsForCell(S,y,s),D=Array.isArray(p);if(!(j==null||Y==null)){var{maxWidth:P,x:B,y:z,zeroPosition:F,leftmostPosition:$,markerXs:X,totalValueRange:G,dataBarWidth:q}=this.getDataBarRenderMetrics(e,r,t,a);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:K,actualBoundingBoxDescent:U}=e.measureText("1234567890");this.heightOfDigits=K+U}if(e.save(),e.textAlign=R,D){var x=N>=0?p[p.length-1]:p[0];e.fillStyle=x}else e.fillStyle=p;if(e.textBaseline="top",e.font=s.font,m!=="hide"&&e.fillText(k,O,T+(C-this.heightOfDigits)/2),D){var _=p.map(ye=>Ae.linearSRGBToOklab(Ae.hexToRgb(ye)));if(e.save(),e.beginPath(),e.roundRect(B,z,q,C-2,1),e.clip(),N<0){if(E==="LTR")for(var fe=Math.round(Math.abs(j)/G*P),oe=fe/(p.length-1),le=Math.round($),te=0;te<p.length-1;te+=1){var se=_[te],de=_[te+1];this.drawGradient(e,se,de,le,T+1,oe,C),le+=oe}else if(E==="RTL")for(var ue=Math.round(P-Math.abs(Y)/G*P),he=ue/(p.length-1),Be=Math.round(F),Me=p.length-1;Me>0;Me-=1){var qe=_[Me],Ze=_[Me-1];this.drawGradient(e,qe,Ze,Be,T+1,he,C),Be+=he}}else if(E==="LTR")for(var we=Math.round(P-Math.abs(j)/G*P)-1,ae=we/(p.length-1),Oe=Math.round(F),be=0;be<p.length-1;be+=1){var me=_[be],Re=_[be+1];this.drawGradient(e,me,Re,Oe,T+1,ae,C-2),Oe+=ae}else if(E==="RTL")for(var je=Math.round(Math.abs(Y)/G*P),We=je/(p.length-1),Se=Math.round($),ve=p.length-1;ve>0;ve-=1){var ze=_[ve],Ee=_[ve-1];this.drawGradient(e,ze,Ee,Se,T+1,We,C-2),Se+=We}e.restore()}else e.save(),e.globalAlpha=H,e.beginPath(),e.roundRect(B,z,q,C-2,1),e.fill(),e.restore();P>0&&X.forEach((ye,Ie)=>{e.fillStyle=W[Ie].color,e.fillRect(ye,z,1,C-2)});var Ne=!(w==="directional"&&(m==="beside"&&R==="right"&&E==="LTR"||m==="beside"&&R==="left"&&E==="RTL"||m!=="beside"));Ne&&(e.strokeStyle=s.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(F,T),e.lineTo(F,T+C),e.stroke()),e.restore(),b&&Ce(n)&&n.hasExpandableRows&&this.drawCellRowTreeMarker(e,r,a)}}}getDataBarRenderMetrics(e,r,t,a){var{metrics:i,model:l,theme:n}=r;if(!Ar(l))throw new Error("Grid model is not a data bar grid model");var{firstColumn:s,allColumnXs:d,allColumnWidths:v,allRowYs:u,modelColumns:h,modelRows:c,visibleRows:f}=i,{cellHorizontalPadding:b,treeDepthIndent:C,treeHorizontalPadding:y}=n,S=g(h,t),T=g(c,a),R=g(d,t),M=g(u,a),O=g(v,t),A=t===s,I=0;Ce(l)&&l.hasExpandableRows&&A&&(I=C*(l.depthForRow(a)+1)+y);var V=l.textAlignForCell(S,T),{columnMin:k,columnMax:j,axis:Y,valuePlacement:w,markers:p,direction:m,value:H}=l.dataBarOptionsForCell(S,T,n),W=this.getCachedWidestValueForColumn(e,f,c,l,S),E=2,N=w==="beside"&&V==="right"?2:1,D=j-k;j>=0&&k>=0||k===j?D=j:j<=0&&k<=0&&(D=Math.abs(k));var P=O-I-N-E;w==="beside"&&(P=P-b-W),P<0&&(P=0);var B=Math.max(Math.abs(k),Math.abs(j)),z=Math.abs(H)/D*P;P===0?z=0:Y==="middle"?z=Math.abs(H)/B*(P/2):Y==="directional"&&(z=Math.abs(H)/B*P);var F=k>=0?0:Math.abs(k)/D*P,$=H>=0?F:F-Math.abs(H)/D*P,X=p.map(K=>{var{value:U}=K,x=Math.abs(U)/D*P;return U>=0?F+x:F-x}),G=w==="beside"&&V==="left"?b+W+E:E,q=w==="beside"&&V==="right"?O-b-W-N:N;return m==="RTL"&&(F=k>=0?O:O-Math.abs(k)/D*P,$=H>=0?F-H/D*P:F,X=p.map(K=>{var{value:U}=K;return U>=0?F-Math.abs(U)/D*P:F+Math.abs(U)/D*P})),Y==="middle"?(F=P/2,m==="LTR"?($=H>=0?F:F-Math.abs(H)/B*(P/2),X=p.map(K=>{var{value:U}=K;return U>=0?F+Math.abs(U)/B*(P/2):F-Math.abs(U)/B*(P/2)})):m==="RTL"&&($=H<=0?F:F-Math.abs(H)/B*(P/2),X=p.map(K=>{var{value:U}=K;return U<=0?F+Math.abs(U)/B*(P/2):F-Math.abs(U)/B*(P/2)}))):Y==="directional"&&(m==="LTR"?(F=0,$=F,X=p.map(K=>{var{value:U}=K;return F+Math.abs(U)/B*P})):m==="RTL"&&(F=O,$=F-Math.abs(H)/B*P,X=p.map(K=>{var{value:U}=K;return F-Math.abs(U)/B*P}))),m==="LTR"?(F+=R+E+I,$+=R+E+I,X=X.map(K=>K+R+E+I),w==="beside"&&V==="left"&&(F+=W+b,$+=W+b,X=X.map(K=>K+W+b))):m==="RTL"&&(F=F+R-N,$=$+R-N,X=X.map(K=>K+R-N),w==="beside"&&V==="right"&&(F=F-b-W,$=$-b-W,X=X.map(K=>K-b-W))),G+=R+I,q+=R,{maxWidth:P,x:$,y:M+1.5,zeroPosition:F,leftmostPosition:G,rightmostPosition:q,totalValueRange:D,dataBarWidth:z,markerXs:X}}drawGradient(e,r,t,a,i,l,n){for(var s=r,d=a;d<=a+l;d+=.5)this.drawGradientPart(e,d,i,1,n,Ae.rgbToHex(Ae.OklabToLinearSRGB(s))),s=Ae.lerpColor(r,t,(d-a)/l)}drawGradientPart(e,r,t,a,i,l){e.fillStyle=l,e.fillRect(r,t,a,i)}}const wa=Ca;function ba(o,e,r){return e=Ra(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Ra(o){var e=Sa(o,"string");return typeof e=="symbol"?e:String(e)}function Sa(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class ya extends Kr{constructor(){super(...arguments),ba(this,"getCachedTokenBoxesForVisibleCell",Ge((e,r,t,a,i,l)=>{for(var n=0,s=i,d=[],v=0,u=0,h=0;h<r.length;h+=1){var c=r[h],{start:f,end:b}=c,C=b>e.length?e.substring(f):c.value;u+=l.measureText(e.substring(v,f)).width;var y=l.measureText(C).width,S=u,T=S+y,R={x1:S,y1:n,x2:T,y2:s,token:c};d.push(R),v=b,u+=y}return d},{max:1e4}))}drawCellContent(e,r,t,a){var{metrics:i,model:l,theme:n}=r,{fontWidths:s,modelColumns:d,modelRows:v,allRowHeights:u,firstColumn:h}=i,c=t===h,{textColor:f}=n,b=g(u,a),C=g(v,a),y=g(d,t),S=l.textForCell(y,C),T=l.truncationCharForCell(y,C);if(S&&b>0){var R,M=l.textAlignForCell(y,C)||"left";e.textAlign=M;var O=l.colorForCell(y,C,n)||f;e.fillStyle=O,e.save();var{width:A,x:I,y:V}=Z.getTextRenderMetrics(r,t,a),k=(R=s.get(e.font))!==null&&R!==void 0?R:xe,j=this.getCachedTruncatedString(e,S,A,k,T),Y=l.tokensForCell(y,C,j.length);if(j)for(var w=0,p=0,m=I,{actualBoundingBoxDescent:H}=e.measureText(j);p<j.length;){var W,E,N=Y[w],D=p===N?.start?N:null,P=(W=(E=D?.end)!==null&&E!==void 0?E:N?.start)!==null&&W!==void 0?W:j.length,B=j.substring(p,P),{width:z}=e.measureText(B),F=B.endsWith("…")?e.measureText(B.substring(0,B.length-1)).width:z;D!=null?(e.fillStyle=n.hyperlinkColor,e.fillText(B,m,V),e.fillRect(m,V+H,F,1)):(e.fillStyle=O,e.fillText(B,m,V)),m+=z,p=P,D!=null&&(w+=1)}e.restore()}c&&Ce(l)&&l.hasExpandableRows&&this.drawCellRowTreeMarker(e,r,a)}getTokenBoxesForVisibleCell(e,r,t){var a,{metrics:i,context:l,model:n,theme:s}=t;if(l==null||i==null)return Tr;var{modelRows:d,modelColumns:v}=i,u=g(d,r),h=g(v,e),c=n.textForCell(h,u),{width:f,x:b,y:C}=Z.getTextRenderMetrics(t,e,r),{fontWidths:y}=i;l.save(),this.configureContext(l,t);var S=(a=y?.get(l.font))!==null&&a!==void 0?a:xe,T=n.truncationCharForCell(h,u),R=this.getCachedTruncatedString(l,c,f,S,T),{actualBoundingBoxAscent:M,actualBoundingBoxDescent:O}=l.measureText(R),A=M+O,I=n.tokensForCell(h,u,R.length);if(I.length===0)return l.restore(),Tr;var V=this.getCachedTokenBoxesForVisibleCell(R,I,s.font,"middle",A,l).map(k=>({x1:k.x1+b,y1:k.y1+(C-M),x2:k.x2+b,y2:k.y2+(C-M),token:k.token}));return l.restore(),V}configureContext(e,r){var{theme:t}=r;e.font=t.font,e.textBaseline="middle",e.lineCap="butt"}}const Pa=ya;function Ue(o,e,r){return e=Ta(e),e in o?Object.defineProperty(o,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[e]=r,o}function Ta(o){var e=Ha(o,"string");return typeof e=="symbol"?e:String(e)}function Ha(o,e){if(typeof o!="object"||o===null)return o;var r=o[Symbol.toPrimitive];if(r!==void 0){var t=r.call(o,e||"default");if(typeof t!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(o)}class re{constructor(){Ue(this,"textCellRenderer",new Pa),Ue(this,"dataBarCellRenderer",new wa)}static truncate(e,r){return r<e.length?e.substr(0,r)+"…":e}static binaryTruncateToWidth(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:r.length,l=arguments.length>5?arguments[5]:void 0;if(i>=r.length&&e.measureText(r).width<=t)return r;if(l!==void 0){var n=e.measureText(l).width;return l.repeat(Math.max(1,Math.floor(t/n)))}for(var s=a,d=Math.min(r.length-1,i),v=r;d>=s;){var u=Math.ceil((d+s)/2),h=re.truncate(r,u);if(e.measureText(h).width<=t){if(v=h,s===u)break;s=u}else if(u===0){v=h;break}else d=u-1}return v}static truncateToWidth(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:xe,i=arguments.length>4?arguments[4]:void 0;if(t<=0||r.length<=0)return"";var l=Math.min(Math.max(0,Math.floor(t/a/2)-5),r.length),n=Math.min(Math.ceil(t/a*2),r.length);return re.binaryTruncateToWidth(e,r,t,l,n,i)}drawCanvas(e){var{context:r}=e;r.save(),this.configureContext(r,e),this.drawBackground(r,e),this.drawGrid(r,e),this.drawHeaders(r,e),this.drawFooters(r,e),this.drawDraggingColumn(r,e),this.drawDraggingRow(r,e),this.drawScrollBars(r,e),r.restore()}configureContext(e,r){var{theme:t}=r;e.font=t.font,e.textBaseline="middle",e.lineCap="butt"}drawBackground(e,r){var{theme:t,metrics:a}=r,{width:i,height:l}=a;e.fillStyle=t.backgroundColor,e.fillRect(0,0,i,l)}drawGrid(e,r){var{metrics:t,draggingRow:a,draggingColumn:i}=r,{gridX:l,gridY:n}=t;e.translate(l,n),this.drawGridBackground(e,r,a==null&&i==null),this.drawCellContents(e,r),this.drawFloatingRows(e,r),this.drawFloatingColumns(e,r),e.translate(-l,-n)}drawFloatingRows(e,r){var{draggingRow:t,draggingColumn:a,metrics:i,theme:l}=r,{floatingTopRowCount:n,floatingBottomRowCount:s,floatingRows:d,rowCount:v,visibleColumns:u,allRowYs:h,allRowHeights:c}=i;if(d.length!==0){l.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,r,d,l.floatingRowBackgroundColors),t==null&&a==null&&this.drawFloatingMouseRowHover(e,r),this.drawGridLinesForItems(e,r,u,d,l.floatingGridColumnColor,l.floatingGridRowColor),this.drawCellBackgroundsForItems(e,r,u,d),this.drawFloatingBorders(e,r),n>0&&this.drawSelectedRanges(e,r,{top:0,bottom:n-1,maxY:g(h,n-1)+g(c,n-1)-.5}),s>0&&this.drawSelectedRanges(e,r,{top:v-s-1,bottom:v-1,minY:g(h,v-s)+.5,maxY:g(h,v-1)+g(c,v-1)-.5});for(var f=0;f<u.length;f+=1)for(var b=u[f],C=0;C<d.length;C+=1){var y=d[C];this.drawCellContent(e,r,b,y)}}}drawFloatingColumns(e,r){var{draggingRow:t,draggingColumn:a,metrics:i,theme:l}=r,{floatingLeftColumnCount:n,floatingRightColumnCount:s,floatingLeftWidth:d,floatingRightWidth:v,floatingColumns:u,gridX:h,maxX:c,columnCount:f,visibleRows:b,allColumnXs:C,allColumnWidths:y,width:S,height:T}=i;if(u.length!==0){l.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,r,b,l.floatingRowBackgroundColors,0,d),this.drawRowStripesForRows(e,r,b,l.floatingRowBackgroundColors,S-h-v,c)),t==null&&a==null&&this.drawFloatingMouseRowHover(e,r),e.save(),e.beginPath(),e.rect(0,0,d,T),e.clip(),this.drawGridLinesForItems(e,r,u,b,l.floatingGridColumnColor,l.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,r,u,b),this.drawFloatingBorders(e,r),n>0&&this.drawSelectedRanges(e,r,{left:0,maxX:g(C,n-1)+g(y,n-1)}),s>0&&this.drawSelectedRanges(e,r,{left:f-s,right:f-1,minX:g(C,f-s)+.5,maxX:g(C,f-1)+g(y,f-1)});for(var R=0;R<u.length;R+=1)for(var M=u[R],O=0;O<b.length;O+=1){var A=b[O];this.drawCellContent(e,r,M,A)}}}drawFloatingBorders(e,r){var{metrics:t,theme:a}=r,{floatingTopRowCount:i,floatingBottomRowCount:l,floatingLeftColumnCount:n,floatingRightColumnCount:s,rowCount:d,columnCount:v,allRowYs:u,allColumnXs:h,allRowHeights:c,allColumnWidths:f,maxX:b,maxY:C}=t,{floatingDividerOuterColor:y,floatingDividerInnerColor:S}=a;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=y,i>0){var T=g(u,i-1)+g(c,i-1)+.5;e.moveTo(0,T),e.lineTo(b,T)}if(l>0){var R=g(u,d-l)-.5;e.moveTo(0,R),e.lineTo(b,R)}if(n>0){var M=g(h,n-1)+g(f,n-1)+.5;e.moveTo(M,0),e.lineTo(M,C)}if(s>0){var O=g(h,v-s)-.5;e.moveTo(O,0),e.lineTo(O,C)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=S,i>0){var A=g(u,i-1)+g(c,i-1)+.5;e.moveTo(0,A),e.lineTo(b,A)}if(l>0){var I=g(u,d-l)-.5;e.moveTo(0,I),e.lineTo(b,I)}if(n>0){var V=g(h,n-1)+g(f,n-1)+.5;e.moveTo(V,0),e.lineTo(V,C)}if(s>0){var k=g(h,v-s)-.5;e.moveTo(k,0),e.lineTo(k,C)}e.stroke()}drawGridBackground(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.drawRowStripes(e,r),t&&(this.drawMouseColumnHover(e,r),this.drawMouseRowHover(e,r)),this.drawGridLines(e,r),this.drawCellBackgrounds(e,r);var{metrics:a}=r,{bottom:i,right:l,floatingBottomRowCount:n,floatingLeftColumnCount:s,floatingRightColumnCount:d,floatingTopRowCount:v,columnCount:u,rowCount:h,allRowHeights:c,allRowYs:f,allColumnXs:b,allColumnWidths:C,width:y,height:S}=a;this.drawSelectedRanges(e,r,{bottom:Math.min(i,h-n-1),right:Math.min(l,u-d-1),minX:s>0&&b.has(s+1)?g(b,s+1):-10,minY:v>0&&f.has(v+1)?g(f,v+1):-10,maxX:d>0&&b.has(u-d-1)?g(b,u-d-1)+g(C,u-d-1)-.5:y+10,maxY:n>0&&f.has(h-n-1)?g(f,h-n-1)+g(c,h-n-1)-.5:S+10})}drawRowStripes(e,r){var{metrics:t,theme:a}=r,{visibleRows:i}=t,{rowBackgroundColors:l}=a;l&&this.drawRowStripesForRows(e,r,i,l)}drawRowStripesForRows(e,r,t,a){for(var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:r.metrics.maxX,{theme:n,metrics:s,model:d}=r,{maxDepth:v,shadowBlur:u,shadowColor:h,shadowAlpha:c}=n,f=re.getCachedBackgroundColors(a,v),{allRowYs:b,allRowHeights:C}=s,y=new Map,S=[],T=[],R=(B,z)=>{var F=Ce(d)?d.depthForRow(B):0,$=f[B%f.length],X=$[Math.min(F,$.length-1)];if(y.has(X)||y.set(X,[]),y.get(X).push(B),z!=null){var G=Ce(d)?d.depthForRow(z):0;G<F?S.push(B):G>F&&T.push(z)}},M=0;M<t.length;M+=1){var O=t[M],A=M>0?t[M-1]:void 0;R(O,A)}if(y.forEach((B,z)=>{e.fillStyle=z,e.beginPath();for(var F=0;F<B.length;F+=1){var $=B[F],X=g(b,$),G=g(C,$);e.rect(i,X,l,G)}e.fill()}),S.length>0){e.save();var I=re.getCachedColorWithAlpha(h,c),V=re.getCachedColorWithAlpha(h,0),k=e.createLinearGradient(0,0,0,u);k.addColorStop(0,I),k.addColorStop(1,V),e.fillStyle=k;for(var j=0;j<S.length;j+=1){var Y=S[j],w=g(b,Y);e.translate(0,w),e.fillRect(i,0,l,u),e.translate(0,-w)}e.restore()}if(T.length>0){e.save();var p=re.getCachedColorWithAlpha(h,0),m=re.getCachedColorWithAlpha(h,c),H=e.createLinearGradient(0,0,0,u);H.addColorStop(0,p),H.addColorStop(1,m),e.fillStyle=H;for(var W=0;W<T.length;W+=1){var E=T[W],N=g(b,E),D=g(C,E),P=N+D-u;e.translate(0,P),e.fillRect(i,0,l,u),e.translate(0,-P)}e.restore()}}drawMouseColumnHover(e,r){var{mouseX:t,mouseY:a,theme:i,metrics:l}=r;if(!(t==null||a==null)){var n=Z.getColumnAtX(t,l);if(!(n==null||i.columnHoverBackgroundColor==null)){var{allColumnWidths:s,allColumnXs:d,maxY:v}=l;if(!(a>v)){var u=g(d,n),h=g(s,n);e.fillStyle=i.columnHoverBackgroundColor,e.fillRect(u,0,h,v)}}}}drawMouseRowHover(e,r){var{mouseX:t,mouseY:a,theme:i,metrics:l}=r;if(!(t==null||a==null)){var{maxX:n}=l;if(!(t>n||i.rowHoverBackgroundColor==null)){var s=Z.getRowAtY(a,l);s!=null&&this.drawMouseRowHoverForRow(e,r,s)}}}drawFloatingMouseRowHover(e,r){var{mouseX:t,mouseY:a,theme:i,metrics:l}=r,{maxX:n,floatingTopRowCount:s,floatingBottomRowCount:d,rowCount:v,rowFooterWidth:u}=l;if(!(t==null||a==null||t>n+u||i.rowHoverBackgroundColor==null)){var h=Z.getRowAtY(a,l);h!=null&&(h<s||v-d<=h)&&this.drawMouseRowHoverForRow(e,r,h)}}drawMouseRowHoverForRow(e,r,t){var{metrics:a,selectedRanges:i,theme:l}=r,{allRowHeights:n,allRowYs:s,maxX:d}=a,v=g(s,t),u=g(n,t);l.rowHoverBackgroundColor!=null&&(e.fillStyle=l.rowHoverBackgroundColor);for(var h=0;h<i.length;h+=1){var{startRow:c,endRow:f}=i[h];if(c!=null&&f!=null&&c<=t&&f>=t){l.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=l.selectedRowHoverBackgroundColor);break}}e.fillRect(0,v,d,u)}drawGridLines(e,r){var{metrics:t,theme:a}=r,{visibleColumns:i,visibleRows:l}=t;this.drawGridLinesForItems(e,r,i,l,a.gridColumnColor,a.gridRowColor)}drawGridLinesForItems(e,r,t,a,i,l){i==null&&l==null||(e.lineWidth=1,e.beginPath(),i!=null&&(e.strokeStyle=i,this.drawGridLinesForColumns(e,r,t)),l!=null&&(e.strokeStyle=l,this.drawGridLinesForRows(e,r,a)),e.stroke())}drawGridLinesForColumns(e,r,t){for(var{metrics:a}=r,{allColumnXs:i,maxY:l}=a,n=0;n<t.length;n+=1){var s=t[n],d=g(i,s)+.5;e.moveTo(d,0),e.lineTo(d,l)}}drawGridLinesForRows(e,r,t){for(var{metrics:a}=r,{allRowYs:i,maxX:l}=a,n=l,s=0;s<t.length;s+=1){var d=t[s],v=g(i,d)+.5;e.moveTo(.5,v),e.lineTo(n-.5,v)}}drawCellBackgrounds(e,r){var{metrics:t}=r,{visibleColumns:a,visibleRows:i}=t;this.drawCellBackgroundsForItems(e,r,a,i)}drawCellBackgroundsForItems(e,r,t,a){e.save();for(var i=0;i<t.length;i+=1)for(var l=t[i],n=0;n<a.length;n+=1){var s=a[n],d=n+1<a.length?a[n+1]:void 0;this.drawCellBackground(e,r,l,s,d)}e.restore()}drawCellBackground(e,r,t,a,i){var{metrics:l,model:n,theme:s}=r,{firstColumn:d,modelColumns:v,modelRows:u,allColumnXs:h,allColumnWidths:c,allRowYs:f,allRowHeights:b}=l,C=g(u,a),y=g(v,t),S=n.backgroundColorForCell(y,C,s),T=t===d,R=Ce(n)&&n.hasExpandableRows;if(S!=null){var M=g(h,t)+1,O=g(f,a)+1,A=g(c,t)-1,I=g(b,a)-1;e.fillStyle=S,e.fillRect(M,O,A,I)}T&&R&&this.drawCellRowTreeDepthLines(e,r,a,i)}drawCellContents(e,r){for(var{metrics:t}=r,{visibleColumns:a}=t,i=0;i<a.length;i+=1){var l=a[i];this.drawColumnCellContents(e,r,l)}}drawColumnCellContents(e,r,t){var{metrics:a}=r,{allColumnXs:i,allColumnWidths:l,visibleRows:n,height:s}=a,d=g(i,t),v=g(l,t);e.save(),e.beginPath(),e.rect(d,0,v,s),e.clip();for(var u=0;u<n.length;u+=1){var h=n[u];this.drawCellContent(e,r,t,h)}e.restore()}drawCellContent(e,r,t,a){var{metrics:i,model:l}=r,{modelColumns:n,modelRows:s}=i,d=g(s,a),v=g(n,t),u=l.renderTypeForCell(v,d),h=this.getCellRenderer(u);h.drawCellContent(e,r,t,a)}getCellRenderer(e){switch(e){case"dataBar":return this.dataBarCellRenderer;default:return this.textCellRenderer}}drawCellRowTreeDepthLines(e,r,t,a){var{metrics:i,model:l,theme:n}=r;if(Ce(l)){var s=l.depthForRow(t);if(s!==0){var{firstColumn:d,allColumnXs:v,allRowYs:u,allRowHeights:h}=i,{treeDepthIndent:c,treeHorizontalPadding:f,treeLineColor:b}=n,C=g(v,d),y=g(u,t),S=g(h,t),T=a!==void 0?l.depthForRow(a):0,R=s>T?s-T:0;if(e.strokeStyle=b,e.lineWidth=1,s-R>0){e.beginPath();for(var M=0;M<s-R;M+=1){var O=C+M*c+c*.5+f+.5;e.moveTo(O,y),e.lineTo(O,y+S)}e.stroke()}if(R>0){e.beginPath();for(var A=s-R;A<s;A+=1){var I=C+A*c+c*.5+f+.5;e.moveTo(I,y),e.lineTo(I,y+Math.ceil(S/2)),e.moveTo(I-.5,y+Math.ceil(S/2)+.5),e.lineTo(I+c-.5,y+Math.ceil(S/2)+.5)}e.stroke()}}}}drawHeaders(e,r){var{theme:t}=r;e.font=t.headerFont,this.drawColumnHeaders(e,r),this.drawRowHeaders(e,r)}drawFooters(e,r){var{theme:t}=r;e.font=t.headerFont,this.drawRowFooters(e,r)}drawColumnHeaders(e,r){var{mouseX:t,mouseY:a,theme:i,metrics:l,draggingColumnSeparator:n,isDragging:s,model:d}=r,{columnHeaderHeight:v,floatingColumns:u,gridX:h,width:c,visibleColumns:f,allColumnWidths:b,allColumnXs:C,floatingLeftColumnCount:y,floatingLeftWidth:S,floatingRightWidth:T,modelColumns:R,columnHeaderMaxDepth:M}=l;if(!(v<=0)){var{headerHiddenSeparatorSize:O,headerHiddenSeparatorHoverColor:A,headerSeparatorColor:I,headerSeparatorHoverColor:V}=i,k=v*.5,j=v*(M-1)+v*.5-k*.5,Y=y>0;if(e.save(),this.drawColumnHeadersForRange(e,r,[f[0],f[f.length-1]],{minX:h+S,maxX:c-T}),Y&&this.drawColumnHeadersForRange(e,r,[u[0],u[u.length-1]],{minX:h,maxX:h+S}),I){e.strokeStyle=I;var w=[...b.entries()].filter(fe=>{var[oe,le]=fe;return le===0}).map(fe=>{var[oe]=fe;return oe});e.beginPath(),e.fillStyle=I;for(var p=0;p<w.length;p+=1){var m=w[p],H=g(C,m),W=g(b,m),E=h+H+W+.5-O*.5;e.rect(E,j,O,k)}e.fill()}if(V){var{index:N,depth:D}=n??{};if(N==null&&t!=null&&a!=null){var P=ha.getColumnSeparator(Z.getGridPointFromXY(t,a,l),l,d,i);N=P?.index,D=P?.depth}var B;if(N==null)B=!1;else{var z=R.get(N),F=R.get(N+1);z==null||F==null?B=!1:B=d.textForColumnHeader(z,D)!==d.textForColumnHeader(F,D)}if(B&&N!=null&&D!=null&&(!s||n!=null)){e.strokeStyle=V;var $=g(C,N),X=g(b,N),G=h+$+X+.5,q=f.indexOf(N),K=q<f.length-1?f[q+1]:null,U=K!=null?b.get(K):null,x=X===0,_=U!=null&&U===0;x?(e.strokeStyle=A,e.fillStyle=A,e.fillRect(G,j,O*.5,k)):_&&(e.fillStyle=V,e.fillRect(G-O*.5,j,O*.5,k)),e.beginPath(),e.moveTo(G,(M-D-1)*v),e.lineTo(G,(M-D)*v-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,r,t,a){var{model:i}=r,{columnHeaderMaxDepth:l}=i;if(l!==0)for(var n=0;n<=l;n+=1)this.drawColumnHeadersAtDepth(e,r,t,a,n)}drawColumnHeadersAtDepth(e,r,t,a,i){var{metrics:l,model:n,theme:s}=r,{modelColumns:d,allColumnXs:v,gridX:u,userColumnWidths:h,allColumnWidths:c,movedColumns:f}=l,{columnHeaderHeight:b,columnWidth:C}=s,{columnHeaderMaxDepth:y}=n,{minX:S,maxX:T}=a,R=T-S;if(y!==0){var M=t[0],O=t[1];if(e.save(),e.translate(0,(y-i-1)*b),i===0){this.drawColumnHeader(e,r,"",S,T);for(var A=M;A<=O;A+=1)this.drawColumnHeaderAtIndex(e,r,A,a)}if(i>0)for(var I=M;I<=O;){var{columnCount:V}=l,k=g(d,I),j=n.textForColumnHeader(k,i),Y=n.colorForColumnHeader(k,i),w=g(v,I)+u,p=w+g(c,I);if(j!=null){for(var m=I-1;m>=0&&(p-w<R||w>S);){var H,W,E,N=(H=d.get(m))!==null&&H!==void 0?H:Z.getModelIndex(m,f);if(N==null||n.textForColumnHeader(N,i)!==j)break;var D=(W=(E=h.get(N))!==null&&E!==void 0?E:c.get(m))!==null&&W!==void 0?W:C;w-=D,m-=1}for(var P=I+1;P<V&&(p-w<R||p<T);){var B,z,F,$=(B=d.get(P))!==null&&B!==void 0?B:Z.getModelIndex(P,f);if(n.textForColumnHeader($,i)!==j)break;var X=(z=(F=h.get($))!==null&&F!==void 0?F:c.get(P))!==null&&z!==void 0?z:C;p+=X,P+=1}I=P-1;var G=p-w>=R,q=w;G&&(p<T?q=p-R:w<S&&(q=S)),this.drawColumnHeader(e,r,j,q,Math.min(p-w,R),{backgroundColor:Y??void 0},a)}I+=1}e.restore()}}drawColumnHeaderAtIndex(e,r,t,a){var i,{metrics:l,model:n}=r,{modelColumns:s,allColumnWidths:d,allColumnXs:v,gridX:u}=l,h=g(d,t),c=g(v,t)+u,f=g(s,t),b=n.textForColumnHeader(f);b!=null&&this.drawColumnHeader(e,r,b,c,h,{backgroundColor:(i=n.colorForColumnHeader(f))!==null&&i!==void 0?i:void 0},a)}drawColumnHeader(e,r,t,a,i,l,n){var s;if(!(i<=0)){var{metrics:d,theme:v}=r,{headerHorizontalPadding:u,columnHeaderHeight:h,headerBackgroundColor:c,headerColor:f,headerSeparatorColor:b,black:C,white:y}=v,{fontWidths:S,width:T}=d,R=(s=S.get(e.font))!==null&&s!==void 0?s:xe,M=i-u*2,O=M/R,{backgroundColor:A=c,separatorColor:I=b}=l??{},{textColor:V=f}=l??{};try{var k=re.getCachedColorIsDark(A),j=re.getCachedColorIsDark(V);k&&j?V=y:!k&&!j&&(V=C)}catch{}var{minX:Y=0,maxX:w=T}=n??{};e.save(),e.rect(Y,0,w-Y,h),e.clip(),A!=null&&(e.fillStyle=A,e.fillRect(a,0,i,h)),I!=null&&(e.strokeStyle=I,e.beginPath(),a>0&&(e.moveTo(a+.5,0),e.lineTo(a+.5,h)),e.moveTo(a+i+.5,0),e.lineTo(a+i+.5,h),e.moveTo(a,h-.5),e.lineTo(a+i,h-.5),e.stroke()),e.beginPath(),e.rect(a,0,i,h),e.clip(),e.fillStyle=V;var p=t;O<=0?p="":p.length>O&&(p="".concat(p.substring(0,O-1),"…"));var m=p.length*R,H=a+i*.5,W=h*.5;Y+=u,w-=u;var E=a+u,N=Fe(E,Y,w),D=a+i-u,P=Fe(D,Y,w),B=P-N,z=H-m*.5<Y,F=H+m*.5>w;z?m<B?H=Y+m*.5:H=D-m*.5:F&&(m<B?H=w-m*.5:H=E+m*.5),e.textAlign="center",e.fillText(p,H,W),e.restore()}}drawRowHeaders(e,r){var{mouseX:t,mouseY:a,metrics:i,theme:l,draggingRowSeparator:n}=r,{gridY:s,rowHeaderWidth:d,height:v,visibleRows:u,allRowHeights:h,allRowYs:c}=i;if(!(d<=0)){var{headerBackgroundColor:f,headerColor:b,headerHiddenSeparatorSize:C,headerHiddenSeparatorHoverColor:y,headerSeparatorColor:S,headerSeparatorHoverColor:T}=l,R=d*.5,M=d*.5-R*.5;if(e.save(),e.beginPath(),e.fillStyle=f,e.fillRect(0,0,d,v),S){e.strokeStyle=S,e.beginPath(),e.moveTo(0,s+.5),e.lineTo(d,s+.5);for(var O=[],A=!1,I=0;I<u.length;I+=1){var V=u[I],k=g(c,V),j=g(h,V);if(j>0){var Y=s+k+j+.5;e.moveTo(0,Y),e.lineTo(d,Y),A=!1}else A||(A=!0,O.push(V))}e.moveTo(d-.5,0),e.lineTo(d-.5,v),e.stroke(),e.beginPath(),e.fillStyle=S;for(var w=0;w<O.length;w+=1){var p=O[w],m=g(c,p),H=g(h,p),W=s+m+H+.5-C*.5;e.rect(M,W,R,C)}e.fill()}if(T){var{index:E=null}=n??{};if(E==null&&t!=null&&a!=null&&(E=Z.getRowSeparatorIndex(t,a,i,l)),E!=null){e.strokeStyle=T;var N=g(c,E),D=g(h,E),P=s+N+D+.5,B=u.indexOf(E),z=B<u.length-1?u[B+1]:null,F=z!=null?h.get(z):null,$=D===0,X=F!=null&&F===0;$?(e.strokeStyle=y,e.fillStyle=y,e.fillRect(M,P,R,C*.5)):X&&(e.fillStyle=T,e.fillRect(M,P-C*.5,R,C*.5)),e.beginPath(),e.moveTo(.5,P),e.lineTo(d+.5,P),e.stroke()}}e.beginPath(),e.rect(0,s,d,v),e.clip(),e.fillStyle=b,e.textAlign="right";for(var G=0;G<u.length;G+=1){var q=u[G],K=g(h,q),U=g(c,q)+s;this.drawRowHeader(e,r,q,U,K)}e.restore()}}drawRowHeader(e,r,t,a,i){if(!(i<=0)){var{metrics:l,model:n,theme:s}=r,{modelRows:d,rowHeaderWidth:v}=l,u=g(d,t),h=v-s.cellHorizontalPadding,c=a+i*.5;e.fillText(n.textForRowHeader(u),h,c)}}drawRowFooters(e,r){var{mouseX:t,mouseY:a,metrics:i,model:l,theme:n,draggingRowSeparator:s}=r,{gridY:d,gridX:v,maxX:u,modelRows:h,rowFooterWidth:c,height:f,verticalBarWidth:b,visibleRows:C,allRowHeights:y,allRowYs:S,width:T}=i;if(!(c<=0)){var{cellHorizontalPadding:R,headerBackgroundColor:M,headerColor:O,headerHiddenSeparatorSize:A,headerHiddenSeparatorHoverColor:I,headerSeparatorColor:V,headerSeparatorHoverColor:k}=n,j=c*.5,Y=c*.5-j*.5,w=Math.min(v+u,T-c-b);if(e.save(),e.beginPath(),e.fillStyle=M,e.fillRect(w,d,c,f),V){e.strokeStyle=V,e.beginPath(),e.moveTo(w,d+.5),e.lineTo(c,d+.5);for(var p=[],m=!1,H=0;H<C.length;H+=1){var W=C[H],E=g(S,W),N=g(y,W);if(N>0){var D=d+E+N+.5;e.moveTo(w+.5,D),e.lineTo(w+c-.5,D),m=!1}else m||(m=!0,p.push(W))}e.moveTo(w+.5,d),e.lineTo(w+.5,f),e.stroke(),e.beginPath(),e.fillStyle=V;for(var P=0;P<p.length;P+=1){var B=p[P],z=g(S,B),F=g(y,B),$=d+z+F+.5-A*.5;e.rect(w+Y,$,j,A)}e.fill()}if(k){var{index:X=null}=s??{};if(X==null&&t!=null&&a!=null&&(X=Z.getRowSeparatorIndex(t,a,i,n)),X!=null){e.strokeStyle=k;var G=g(S,X),q=g(y,X),K=d+G+q+.5,U=C.indexOf(X),x=U<C.length-1?C[U+1]:null,_=x!=null?y.get(x):null,fe=q===0,oe=_!=null&&_===0;fe?(e.strokeStyle=I,e.fillStyle=I,e.fillRect(Y,K,j,A*.5)):oe&&(e.fillStyle=k,e.fillRect(Y,K-A*.5,j,A*.5)),e.beginPath(),e.moveTo(w+.5,K),e.lineTo(w+c+.5,K),e.stroke()}}e.beginPath(),e.rect(w,d,c,f),e.clip(),e.fillStyle=O,e.textAlign="left";for(var le=w+R,te=0;te<C.length;te+=1){var se=C[te],de=g(y,se);if(de>0){var ue=g(S,se)+d,he=g(h,se),Be=ue+de*.5;e.fillText(l.textForRowFooter(he),le,Be)}}e.restore()}}drawSelectedRanges(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:a,cursorRow:i,draggingRow:l,draggingColumn:n,editingCell:s,metrics:d,model:v,selectedRanges:u,theme:h}=r,{allColumnWidths:c,allColumnXs:f,allRowHeights:b,allRowYs:C,width:y,height:S}=d,{left:T=d.left,top:R=d.top,right:M=d.right,bottom:O=d.bottom,minY:A=-10,maxY:I=S+10,minX:V=-10,maxX:k=y+10}=t;if(u.length!==0){var j=Ct(v)&&v.isEditable&&s==null&&l==null&&n==null&&a!=null&&i!=null&&f.has(a)&&C.has(i);if(j){var Y=g(f,a),w=g(C,i),p=g(c,a),m=g(b,i);e.save(),e.beginPath(),e.rect(0,0,y,S),e.rect(Y,w,p,m),e.clip("evenodd")}e.beginPath();for(var H=0;H<u.length;H+=1){var W=u[H],E=W.startColumn!==null?W.startColumn:T,N=W.startRow!==null?W.startRow:R,D=W.endColumn!==null?W.endColumn:M,P=W.endRow!==null?W.endRow:O;if(P>=R&&O>=N&&D>=T&&M>=E){var B=E>=T&&f.has(E)?Math.round(g(f,E))+.5:V,z=N>=R&&C.has(N)?Math.max(Math.round(g(C,N))+.5,.5):A,F=D<=M&&f.has(D)?Math.round(g(f,D)+g(c,D))-.5:k,$=P<=O&&C.has(P)?Math.round(g(C,P)+g(b,P))-.5:I;e.rect(B,z,F-B,$-z)}}e.fillStyle=h.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=h.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=h.selectionOutlineColor,e.lineWidth=1,e.stroke(),j&&a!=null&&i!=null&&(e.restore(),this.drawActiveCell(e,r,a,i))}}drawActiveCell(e,r,t,a){var{metrics:i,theme:l}=r,{scrollX:n,scrollY:s,allColumnWidths:d,allColumnXs:v,allRowHeights:u,allRowYs:h}=i,{activeCellSelectionBorderWidth:c}=l,f=g(v,t),b=g(h,a),C=g(d,t),y=g(u,a),S=f-c*.5,T=b-c*.5,R=C+c,M=y+c;S<=0&&n<=0&&(R-=c-S,S=c*.5),T<=0&&s<=0&&(M-=c-T,T=c*.5);var{lineWidth:O}=e;e.beginPath(),e.lineWidth=c,e.strokeStyle=l.selectionOutlineColor,this.drawRoundedRect(e,S,T,R,M),e.stroke(),e.lineWidth=O}drawRoundedRect(e,r,t,a,i){var l=arguments.length>5&&arguments[5]!==void 0?arguments[5]:re.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(r+l,t),e.lineTo(r+a-l,t),e.quadraticCurveTo(r+a,t,r+a,t+l),e.lineTo(r+a,t+i-l),e.quadraticCurveTo(r+a,t+i,r+a-l,t+i),e.lineTo(r+l,t+i),e.quadraticCurveTo(r,t+i,r,t+i-l),e.lineTo(r,t+l),e.quadraticCurveTo(r,t,r+l,t),e.closePath()}drawDraggingColumn(e,r){var t,{draggingColumn:a,metrics:i,mouseX:l,theme:n,model:s}=r;if(!(a==null||l==null)){var{range:d,depth:v}=a,{gridX:u,gridY:h,allColumnXs:c,allColumnWidths:f,height:b,width:C,columnHeaderMaxDepth:y,columnHeaderHeight:S,movedColumns:T,modelColumns:R,floatingLeftWidth:M}=i,O=(t=R.get(d[0]))!==null&&t!==void 0?t:Z.getModelIndex(d[0],T),A=s.getColumnHeaderGroup(O,v);if(!(v>0&&!A)){var[I,V]=d,k=g(c,I),j=g(c,V)+g(f,V),Y=j-k,w=a.left,{backgroundColor:p,font:m,headerFont:H,reorderOffset:W,shadowBlur:E,shadowColor:N}=n,D=(y-v-1)*S;e.save(),e.translate(u,0),e.save(),e.beginPath(),e.rect(M,0,C,b),e.clip(),e.fillStyle=p,e.fillRect(k,D,Y,b),e.restore(),e.translate(0,W),e.save(),e.shadowColor=N,e.shadowBlur=E,e.fillStyle=p,e.fillRect(a.left,D+W,a.width,b),e.restore(),e.beginPath(),e.rect(a.left,D,a.width+1,b),e.clip(),e.translate(w-k-u,0),e.font=H;for(var P=[],B=a.range[0];B<=a.range[1];B+=1)P.push(B);this.drawColumnHeaders(e,r),this.drawColumnHeadersForRange(e,r,[P[0],P[P.length-1]],{minX:k,maxX:C}),e.translate(u,h),e.font=m,this.drawGridBackground(e,r);for(var z=I;z<=V;z+=1)this.drawColumnCellContents(e,r,z);e.restore()}}}drawDraggingRow(e,r){var{draggingRow:t,draggingRowOffset:a,metrics:i,mouseY:l,theme:n}=r;if(!(t==null||l==null)){var{gridX:s,gridY:d,allRowYs:v,allRowHeights:u,width:h}=i,c=g(v,t),f=g(u,t)+1,{backgroundColor:b,font:C,headerFont:y,reorderOffset:S,shadowBlur:T,shadowColor:R}=n;e.save(),e.translate(0,d),e.fillStyle=b,e.fillRect(0,c,h,f),e.translate(s+S,l-c-d-(a??0)),e.save(),e.shadowColor=R,e.shadowBlur=T,e.fillStyle=b,e.fillRect(-s,c,h,f),e.restore(),e.beginPath(),e.rect(-s,c,h,f),e.clip(),e.font=C,this.drawGridBackground(e,r),this.drawCellContents(e,r),e.translate(-s,-d),e.font=y,this.drawRowHeaders(e,r),e.restore()}}drawScrollBars(e,r){var{isDraggingHorizontalScrollBar:t,isDraggingVerticalScrollBar:a,isDragging:i,metrics:l,mouseX:n,mouseY:s,theme:d}=r;if(!(d.scrollBarSize<=0)){var{width:v,height:u,handleHeight:h,handleWidth:c,scrollX:f,scrollY:b,hasHorizontalBar:C,hasVerticalBar:y,barWidth:S,barHeight:T,barLeft:R,barTop:M}=l,{scrollBarBackgroundColor:O,scrollBarHoverBackgroundColor:A,scrollBarCasingColor:I,scrollBarCornerColor:V,scrollBarColor:k,scrollBarHoverColor:j,scrollBarActiveColor:Y,scrollBarSize:w,scrollBarHoverSize:p,scrollBarCasingWidth:m,scrollBarSelectionTick:H,scrollBarSelectionTickColor:W,scrollBarActiveSelectionTickColor:E,autoSelectRow:N,autoSelectColumn:D}=d,P=n!=null&&s!=null&&n<=v&&s<=u,B=a||y&&!t&&!i&&n!=null&&s!=null&&n>=v-p&&s>=M&&P,z=t||C&&!a&&!i&&!B&&n!=null&&s!=null&&s>=u-p&&n>=R&&P,F=z?p:w,$=B?p:w;if(e.translate(R,M),C&&y&&(e.fillStyle=I,e.fillRect(v-R-w,u-M-w,w,w),e.fillStyle=V,e.fillRect(v-R-w+m,u-M-w+m,w-m,w-m)),C){var X=f,G=u-M-F;if(e.fillStyle=I,e.fillRect(0,G,S,F-m),e.fillStyle=z?A:O,e.fillRect(0,G+m,S,F-m),t?e.fillStyle=Y:z?e.fillStyle=j:e.fillStyle=k,e.fillRect(X,G+m,c,F-m),!N&&H&&W!=null&&E!=null){e.fillStyle=W;for(var{selectedRanges:q,cursorColumn:K}=r,{lastLeft:U,columnCount:x}=l,_=[...q].filter(Q=>Q.startColumn!=null&&Q.endColumn!=null),fe=_.map(Q=>[Q.startColumn,Q.endColumn]).sort(Z.compareRanges),oe=Z.mergeSortedRanges(fe),le=Q=>Q<=U?Q/U*(S-c):S-c+(Q-U)/(x-U)*c,te=0;te<oe.length;te+=1){var se=oe[te],de=se[0],ue=se[1];if(de!=null&&ue!=null&&(de!==K||ue!==K)){var he=le(de),Be=Math.max(1,Math.round(le(ue+1)-he)),Me=F-m;e.fillRect(he,G+m+Math.round(Me/3),Be,Math.round(Me/3))}}if(K!=null){var qe=le(K),Ze=2,we=F-m;e.fillStyle=E,e.fillRect(qe,G+m,Ze,we)}}}if(y){var ae=v-R-$,Oe=b;if(e.fillStyle=I,e.fillRect(ae,0,$-m,T),e.fillStyle=B?A:O,e.fillRect(ae+m,0,$-m,T),a?e.fillStyle=Y:B?e.fillStyle=j:e.fillStyle=k,e.fillRect(ae+m,Oe,$-m,h),!D&&H&&W!=null&&E!=null){var{selectedRanges:be,cursorRow:me}=r,{lastTop:Re,rowCount:je}=l,We=Q=>Q<=Re?Q/Re*(T-h):T-h+(Q-Re)/(je-Re)*h;e.fillStyle=W;for(var Se=[...be].filter(Q=>Q.startRow!=null&&Q.endRow!=null),ve=Se.map(Q=>[Q.startRow,Q.endRow]).sort(Z.compareRanges),ze=Z.mergeSortedRanges(ve),Ee=0;Ee<ze.length;Ee+=1){var Ne=ze[Ee],ye=Ne[0],Ie=Ne[1];if(ye!=null&&Ie!=null&&(ye!==me||Ie!==me)){var Qe=We(ye),rr=$-m,lr=Math.max(1,Math.round(We(Ie+1)-Qe));e.fillRect(ae+m+Math.round(rr/3),Qe,Math.round(rr/3),lr)}}if(me!=null){var nr=Math.round(We(me)),or=$-m,sr=2;e.fillStyle=E,e.fillRect(ae+m,nr,or,sr)}}}e.translate(-R,-M)}}}Ue(re,"DEFAULT_EDGE_RADIUS",2);Ue(re,"getCachedBackgroundColors",Ge((o,e)=>o.split(" ").map(r=>{for(var t=[],a=0;a<e;a+=1)t.push(Ae.darkenForDepth(r,a,e));return t}),{max:1e3}));Ue(re,"getCachedColorWithAlpha",Ge(Ae.colorWithAlpha,{max:1e3}));Ue(re,"getCachedColorIsDark",Ge(pt.isDark,{max:1e3}));export{Ia as C,zr as D,ja as G,Mt as M,Aa as O,Na as P,Va as S,Pa as T,Da as a,ka as b,Ea as c,Lt as d,La as e,St as f,Ot as g,er as h,xe as i,wa as j,re as k,ia as l,sa as m,ha as n,Or as t};
|
|
2
|
+
//# sourceMappingURL=GridRenderer-ed7dbad4.js.map
|