@deephaven/embed-widget 1.27.3 → 1.27.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/build/assets/{App-3QBmo5-s.js → App-2l80ggOj.js} +2 -2
  2. package/build/assets/{App-3QBmo5-s.js.map → App-2l80ggOj.js.map} +1 -1
  3. package/build/assets/{Chart-Ck-rSIkR.js → Chart-DPcchpDA.js} +2 -2
  4. package/build/assets/{Chart-Ck-rSIkR.js.map → Chart-DPcchpDA.js.map} +1 -1
  5. package/build/assets/{IrisGrid-SZMAp3mH.js → IrisGrid-BWBMT9kS.js} +17 -17
  6. package/build/assets/IrisGrid-BWBMT9kS.js.map +1 -0
  7. package/build/assets/{IrisGrid-CS05lwoE.css → IrisGrid-Bki4N1kL.css} +1 -1
  8. package/build/assets/{IrisGridContextProvider-Dpr0_zdT.js → IrisGridContextProvider-w99fOPzy.js} +2 -2
  9. package/build/assets/{IrisGridContextProvider-Dpr0_zdT.js.map → IrisGridContextProvider-w99fOPzy.js.map} +1 -1
  10. package/build/assets/{LocalWorkspaceStorage-BBiRG_KK.js → LocalWorkspaceStorage-CrYV87zj.js} +2 -2
  11. package/build/assets/{LocalWorkspaceStorage-BBiRG_KK.js.map → LocalWorkspaceStorage-CrYV87zj.js.map} +1 -1
  12. package/build/assets/{LogPanel-CLslY2BC.js → LogPanel-C_z4zUw7.js} +4 -4
  13. package/build/assets/{LogPanel-CLslY2BC.js.map → LogPanel-C_z4zUw7.js.map} +1 -1
  14. package/build/assets/{MarkdownEditor-CKkWRiR7.js → MarkdownEditor-qSlV6xJo.js} +2 -2
  15. package/build/assets/{MarkdownEditor-CKkWRiR7.js.map → MarkdownEditor-qSlV6xJo.js.map} +1 -1
  16. package/build/assets/{MarkdownNotebook-DinAsXxx.js → MarkdownNotebook-BJ0ZoorZ.js} +2 -2
  17. package/build/assets/{MarkdownNotebook-DinAsXxx.js.map → MarkdownNotebook-BJ0ZoorZ.js.map} +1 -1
  18. package/build/assets/Plot-qZjcmc4S.js +2 -0
  19. package/build/assets/{Plot-CGXK1vWp.js.map → Plot-qZjcmc4S.js.map} +1 -1
  20. package/build/assets/{Plotly-BGfu4vLW.js → Plotly-Dd5V5Hnd.js} +2 -2
  21. package/build/assets/{Plotly-BGfu4vLW.js.map → Plotly-Dd5V5Hnd.js.map} +1 -1
  22. package/build/assets/{index-94hNCMrG.js → index-B4UF2WoJ.js} +29 -29
  23. package/build/assets/index-B4UF2WoJ.js.map +1 -0
  24. package/build/assets/{index-Bbb5UTDC.js → index-Cay9nogS.js} +3 -3
  25. package/build/assets/{index-Bbb5UTDC.js.map → index-Cay9nogS.js.map} +1 -1
  26. package/build/assets/{index-B8hZXriM.js → index-DI0Yu_IY.js} +2 -2
  27. package/build/assets/{index-B8hZXriM.js.map → index-DI0Yu_IY.js.map} +1 -1
  28. package/build/assets/plotly-CMy5UhTh.js +7 -0
  29. package/build/assets/{plotly-OIrYaxcG.js.map → plotly-CMy5UhTh.js.map} +1 -1
  30. package/build/index.html +2 -2
  31. package/package.json +5 -5
  32. package/build/assets/IrisGrid-SZMAp3mH.js.map +0 -1
  33. package/build/assets/Plot-CGXK1vWp.js +0 -2
  34. package/build/assets/index-94hNCMrG.js.map +0 -1
  35. package/build/assets/plotly-OIrYaxcG.js +0 -7
@@ -1,17 +1,17 @@
1
- import{r as T,D as d,G as ee,ai as Le,J as De,bD as Ft,C as Tn,I as se,H as En,ag as Tt,af as oe,bG as et,ak as ga,al as va,aj as fa,S as hi,b8 as ci,a8 as mi,bt as gi}from"./vendor-yMTyZX60.js";import{u as q,as as _e,v as Nn,a as Te,f as Yt,aB as _n,bD as vi,bE as pa,bF as Ca,T as Rn,k as Sa,at as ba,bw as dr,bx as Fn,bG as ya,bH as wa,bI as fi,ay as Ta,bJ as pi,bK as un,bi as Ci,bL as Ea,aA as Ra,bM as Fa,q as xa,bN as Oa,bO as Aa,aM as Da,aU as Na,h as _a,d as hr,G as cr,bP as Ma,bQ as Pa,e as mr,n as gr,bR as Ia,bS as ja,bT as ka,bj as La,ax as Va,bU as Ua,bV as Ba,bW as Ha,bX as $a,bY as Ga,bZ as Wa,aS as za,b_ as Ka,b$ as Ya}from"./index-Bbb5UTDC.js";import{as as Ue,ao as z,aq as J,an as ut,ar as qa,T as _,at as Qa,au as Xa,av as Za,aw as Ja,F as Mn,ax as gt,ay as eo,W as ce,ac as to,af as yt,_ as Kt,az as He,aA as xn,aB as On,aC as me,aD as no,aE as pe,aF as Fe,aG as io,aH as ro,aI as Si,aJ as ao,aK as oo,aL as so,aM as lo,aN as uo,aO as ho,aP as We,aQ as Re,aR as Pe,aS as bi,aT as vr,aU as qt,aV as fr,aW as co,R as mo,ab as go,aX as Oe,a0 as dn,aY as vo,c as hn,d as yi,a3 as fe,aZ as fo,aa as po,x as Co,D as pr}from"./index-94hNCMrG.js";import{x as cn,E as ae,_ as Et,J as te,B as Me,C as xt,t as Cr,cG as Sr,bO as So,cF as Ie,L as br,Q as bo,A as ze,P as yr,N as yo,cR as wr,G as wo,U as To,Z as Eo,O as Ro,dh as Fo}from"./LogPanel-CLslY2BC.js";import{bf as xo,bg as dt,bh as Oo,bi as we,bj as nt,bk as mn,bl as wi,bm as Ao,bn as Do,bo as No,bp as _o,bq as Mo,br as Ti,bs as Po,_ as Io,b9 as tt,k as xe,ay as jo,R as Tr,E as Ei,H as Pn,X as ko,Z as Ri,M as Lo,aN as Vo,aM as Uo,I as Bo,b5 as ie,be as Ho,b0 as $o,bb as Ze,aQ as Go,b1 as Wo,b3 as zo,aS as Ko,aT as Yo,b2 as qo,aZ as Qo,aV as Xo,aY as Zo,b6 as Jo,a$ as es,aX as ts,bt as gn,bu as ns,aE as is,aF as rs,b8 as as,aJ as os,bd as ss,aI as ls,aK as us,bc as ds,$ as hs,a0 as cs,W as Fi,aU as ms,aL as gs,a_ as vs}from"./IrisGridContextProvider-Dpr0_zdT.js";import"./helpers-BosuxZz1.js";import"./useMergeRef-DkP-96bB.js";import"./useResizeObserver-ZdS10WC4.js";function xi(i,e){var t=new Set([...Object.keys(i),...Object.keys(e)]),n=[];return t.forEach(r=>{i[r]!==e[r]&&n.push(r)}),n}function Lt(i,e){return Ss(i)||Cs(i,e)||ps(i,e)||fs()}function fs(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ps(i,e){if(i){if(typeof i=="string")return Oi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Oi(i,e):void 0}}function Oi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Cs(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e===0){if(Object(t)!==t)return;l=!1}else for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Ss(i){if(Array.isArray(i))return i}var bs=i=>{switch(i){case"ArrowDown":return Ue.DOWN;case"ArrowUp":return Ue.UP;case"ArrowLeft":return Ue.LEFT;case"ArrowRight":return Ue.RIGHT;default:return}};function ys(i){var e=i.selectionRange,t=i.className,n=t===void 0?"":t,r=i.disabled,a=r===void 0?!1:r,o=i.value,s=o===void 0?"":o,l=i.isQuickEdit,u=l===void 0?!0:l,h=i.onChange,c=h===void 0?cn:h,g=i.onCancel,m=g===void 0?cn:g,p=i.onDone,v=p===void 0?cn:p,f=i.style,S=T.useRef(null),C=T.useRef(!1),E=T.useState(s),w=Lt(E,1),F=w[0],A=T.useState(!1),y=Lt(A,2),x=y[0],D=y[1],N=T.useState(u),I=Lt(N,2),R=I[0],U=I[1],k=T.useState(s),G=Lt(k,2),V=G[0],W=G[1];T.useEffect(function(){var P=S.current;P!=null&&(P.focus(),e?P.setSelectionRange(e[0],e[1]):P.setSelectionRange(P.value.length,P.value.length))},[e]);var B=T.useCallback(O=>{c(O)},[c]),H=T.useCallback(O=>{var P=O.target.value;W(P),D(!0),B(P)},[B,W,D]),Z=T.useCallback(()=>{C.current=!0,x&&B(F),D(!1),m()},[F,x,m,B]),X=T.useCallback(()=>{U(!1)},[U]),re=T.useCallback(function(O){var P=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;v(V,{direction:O,fillRange:P})},[v,V]),ge=T.useCallback(()=>{C.current||re(null)},[C,re]),b=T.useCallback(O=>{switch(O.stopPropagation(),O.key){case"Escape":O.preventDefault(),Z();break;case"Enter":if(O.preventDefault(),z.isModifierKeyDown(O))re(void 0,!0);else if(O.altKey){var P="".concat(V,`
3
- `);W(P),D(!0),B(P)}else re(O.shiftKey?Ue.UP:Ue.DOWN);break;case"Tab":O.preventDefault(),re(O.shiftKey?Ue.LEFT:Ue.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":R&&(O.preventDefault(),re(bs(O.key)));break}},[Z,re,R,W,D,B,V]);return d.jsx("textarea",{ref:S,className:ee("grid-cell-input-field",n),value:V,onBlur:ge,onChange:H,onKeyDown:b,onClick:X,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:a,style:f})}function Ai(i){if(i==null)throw new xo("Expected 'val' to be defined, but received ".concat(i))}function ws(i,e,t){return(e=Ts(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ts(i){var e=Es(i,"string");return typeof e=="symbol"?e:e+""}function Es(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class vn extends Error{constructor(){super(...arguments),ws(this,"isPasteError",!0)}}function Di(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Ee(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Di(Object(t),!0).forEach(function(n){Ge(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Di(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ge(i,e,t){return(e=Rs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Rs(i){var e=Fs(i,"string");return typeof e=="symbol"?e:e+""}function Fs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function xs(i,e){return Ns(i)||Ds(i,e)||As(i,e)||Os()}function Os(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
4
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function As(i,e){if(i){if(typeof i=="string")return Ni(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Ni(i,e):void 0}}function Ni(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Ds(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Ns(i){if(Array.isArray(i))return i}var _i=5,_s=1e3/60,Vt=10;function $e(i,e,t,n){var r,a=t.modelColumns,o=t.movedColumns,s=t.allColumnXs,l=t.columnCount,u=t.allColumnWidths,h=t.userColumnWidths,c=t.calculatedColumnWidths,g=t.floatingLeftWidth,m=t.maxX;if(e==null||i==null||i>l||i<0)return null;var p=(r=a.get(i))!==null&&r!==void 0?r:z.getModelIndex(i,o),v=n.getColumnHeaderGroup(p,e),f=v!=null,S,C,E;if(v!=null){var w,F,A,y=v.getVisibleRange(o),x=xs(y,2),D=x[0],N=x[1];S=(w=s.get(D))!==null&&w!==void 0?w:g,C=((F=s.get(N))!==null&&F!==void 0?F:m)+((A=u.get(N))!==null&&A!==void 0?A:0),E=[D,N]}else{var I,R,U,k=s.get(i);if(k==null)return null;S=k,C=S+((I=(R=(U=u.get(i))!==null&&U!==void 0?U:h.get(p))!==null&&R!==void 0?R:c.get(p))!==null&&I!==void 0?I:0),E=[i,i]}return{visibleIndex:i,modelIndex:p,left:S,right:C,width:C-S,isColumnGroup:f,range:E,depth:e}}class Ms extends dt{constructor(){super(...arguments),Ge(this,"cursor",null),Ge(this,"draggingOffset",void 0),Ge(this,"initialOffset",void 0),Ge(this,"initialGridPoint",void 0),Ge(this,"scrollingInterval",void 0),Ge(this,"scrollingDirection",void 0),Ge(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var n=e.metrics;if(n){var r=n.left,a=n.lastLeft,o=n.leftOffset,s=n.userColumnWidths,l=n.calculatedColumnWidths,u=n.movedColumns,h=n.allColumnWidths,c=r,g=o;if(t==="left")for(g-=Vt;g<0;){var m;c-=1;var p=z.getModelIndex(r-1,u),v=(m=s.get(p))!==null&&m!==void 0?m:l.get(p);v===void 0?g=0:g+=v,c<0&&(g=0,c=0)}else{g+=Vt;for(var f=h.get(r);f!==void 0&&g>f;){var S;c+=1,g-=f;var C=z.getModelIndex(r+1,u);f=(S=s.get(C))!==null&&S!==void 0?S:l.get(C),c>a&&(g=0,c=a)}}var E=e.state,w=E.mouseX,F=E.mouseY;n==null||w==null||F==null||(this.moveDraggingColumn(w,e,t==="left"?-Vt:Vt),e.setState({left:c,leftOffset:g}),(t==="left"&&c===0&&o===0||t==="right"&&c===a)&&this.clearScrollInterval())}},_s))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var n=t.props.model,r=e.x,a=e.column,o=e.columnHeaderDepth,s=t.metrics;if(!s)throw new Error("Metrics not set");var l=$e(a,o,s,n);if(a==null||l==null||o==null||o>0&&!l.isColumnGroup)return!1;var u=s.rowHeaderWidth;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,l.modelIndex!=null&&o!=null&&n.isColumnMovable(l.modelIndex,o)&&(this.draggingOffset=r-l.left-u,this.initialOffset=this.draggingOffset),!1}onDrag(e,t,n){if(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0)return!1;var r=e.x,a=e.y,o=this.initialGridPoint.columnHeaderDepth,s=t.props.model,l=this.draggingColumn,u=t.metrics;if(!u)throw new Error("Metrics not set");if(!l&&Math.abs(this.initialGridPoint.x-r)<_i&&Math.abs(this.initialGridPoint.y-a)<_i)return!1;if(l==null){var h=$e(this.initialGridPoint.column,o,u,s);if(!h||o==null||!s.isColumnMovable(h.modelIndex)||o>0&&!h.isColumnGroup||h.range[0]==null)return!1;l={range:h.range,depth:o,left:h.left,width:h.width};var c=$e(l.range[0],0,u,s),g=$e(l.range[1],0,u,s);if(!c||!g)return!1;this.draggingColumn=l,t.setState({draggingColumn:l,isDragging:!0})}return this.cursor="move",this.moveDraggingColumn(e.x,t,n.movementX),!0}moveDraggingColumn(e,t,n){var r;if(!(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0||this.draggingColumn==null||n===0)){var a=t.metrics;q(a,"Metrics not set");var o=a.gridX;if(this.initialOffset!==this.draggingOffset){this.draggingOffset<this.initialOffset&&this.initialOffset<this.draggingOffset+n||this.draggingOffset>this.initialOffset&&this.initialOffset>this.draggingOffset+n?this.draggingOffset=this.initialOffset:this.draggingOffset+=n,this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:e-this.draggingOffset-o}),t.setState({draggingColumn:this.draggingColumn});return}var s=this.draggingColumn.depth,l=t.props.model,u=t.state.movedColumns,h=a.floatingLeftWidth,c=a.width,g=a.columnHeaderMaxDepth,m=a.allColumnXs,p=n<0,v=$e(this.draggingColumn.range[0],s,a,l);if(v){var f=e-this.draggingOffset-o,S=f+v.width;this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:f}),t.setState({draggingColumn:this.draggingColumn});var C=$e(z.getColumnAtX(Le(p?f:S,h,c)+o,a,!0),s,a,l),E=l.getColumnHeaderParentGroup(v.modelIndex,v.depth);if(C){if(E!==void 0){var w=E.getVisibleRange(u);if(C.visibleIndex<w[0]){var F,A=this.moveColumn(v,w[0],u);this.draggingOffset=e-((F=m.get(w[0]))!==null&&F!==void 0?F:0),this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:e-this.draggingOffset-o}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:A});return}if(C.visibleIndex>w[1]){var y,x=this.moveColumn(v,w[1]-(v.range[1]-v.range[0]),u),D=(y=$e(w[1],0,a,l))!==null&&y!==void 0?y:{},N=D.right,I=N===void 0?0:N;this.draggingOffset=e-(I-v.width),this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:e-this.draggingOffset-o}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:x});return}}if(!l.isColumnMovable(C.modelIndex)){var R=C.visibleIndex;if(p)for(R+=1;R<v.visibleIndex&&!l.isColumnMovable(z.getModelIndex(R,u));)R+=1;else for(R-=1;R>v.visibleIndex&&!l.isColumnMovable(z.getModelIndex(R,u));)R-=1;if(R!==v.visibleIndex){p||(R-=v.range[1]-v.range[0]);var U=this.moveColumn(v,R,u);t.setState({movedColumns:U,draggingColumn:this.draggingColumn})}var k=$e(R,0,a,l);if(p){var G;this.draggingOffset=e-((G=k==null?void 0:k.left)!==null&&G!==void 0?G:0)}else{var V;this.draggingOffset=e-(((V=k==null?void 0:k.right)!==null&&V!==void 0?V:0)-v.width)}this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:e-this.draggingOffset-o}),t.setState({draggingColumn:this.draggingColumn});return}if(f<=h?this.setScrollInterval(t,"left"):S>c?this.setScrollInterval(t,"right"):this.clearScrollInterval(),C.visibleIndex!==v.visibleIndex&&!(p&&v.visibleIndex<C.visibleIndex||!p&&v.visibleIndex>C.visibleIndex)){for(var W=C.left+C.width*.5,B=l.getColumnHeaderParentGroup(v.modelIndex,v.depth),H,Z=((r=B==null?void 0:B.depth)!==null&&r!==void 0?r:g)-1;Z>=0&&H===void 0;)H=l.getColumnHeaderGroup(C.modelIndex,Z),Z-=1;var X;p&&f<W&&(!H||C.visibleIndex===H.getVisibleRange(u)[0])&&(X=this.moveColumn(v,C.range[0],u)),!p&&S>W&&(!H||C.visibleIndex===H.getVisibleRange(u)[1])&&(X=this.moveColumn(v,C.range[1]-(v.range[1]-v.range[0]),u)),X&&(this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:f}),t.setState({movedColumns:X,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,n){var r=e.isColumnGroup?z.moveRange(e.range,t,n):z.moveItem(e.visibleIndex,t,n),a=t-e.range[0],o=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{range:o})),r}onUp(e,t){return this.cursor=null,this.clearScrollInterval(),this.draggingOffset!=null?(this.draggingOffset=void 0,t.setState({draggingColumn:null,isDragging:!1}),!0):!1}}function Mi(i,e,t){return(e=Ps(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ps(i){var e=Is(i,"string");return typeof e=="symbol"?e:e+""}function Is(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class In extends dt{constructor(){super(...arguments),Mi(this,"dragOffset",void 0),Mi(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var n=e.getTheme(),r=e.metrics,a=e.metricCalculator;if(!r)throw new Error("metrics not set");if(n.scrollSnapToColumn){var o=Math.round(t),s=0;return{left:o,leftOffset:s}}var l=Math.floor(t),u=t-l,h=r.allColumnWidths.get(l);if(h==null){var c=e.getMetricState();h=a.getVisibleColumnWidth(l,c)}var g=h*u;return{left:l,leftOffset:g}}isInScrollBar(e,t){var n=t.getTheme(),r=n.scrollBarSize,a=n.scrollBarHoverSize,o=t.metrics;if(!o)throw new Error("metrics not set");var s=e.x,l=e.y,u=o.barLeft,h=o.barWidth,c=o.height,g=o.hasHorizontalBar;return g&&r>0&&l>=c-a&&l<c&&s>u&&s<u+h}getLeftWithOffset(e,t){var n,r=t.metrics;if(!r)throw new Error("metrics not set");var a=e.x,o=r.barWidth,s=r.handleWidth,l=r.lastLeft,u=r.barLeft,h=r.columnCount,c=r.scrollableContentWidth,g=r.scrollableViewportWidth,m=a-u,p=Le((m-((n=this.dragOffset)!==null&&n!==void 0?n:0))/(o-s),0,1);if(h===1)return{left:0,leftOffset:p*(c-g)};var v=p*l;return In.getLeftWithOffsetFromRawLeft(t,v)}onDown(e,t){var n=t.metrics;if(!n)throw new Error("metrics not set");var r=e.x,a=n.handleWidth,o=n.barLeft,s=n.scrollX;if(!this.isInScrollBar(e,t))return!1;var l=r-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var u=this.getLeftWithOffset(e,t),h=u.left,c=u.leftOffset;t.setViewState({left:h,leftOffset:c,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var n=this.getLeftWithOffset(e,t),r=n.left,a=n.leftOffset;return t.setViewState({left:r,leftOffset:a,isDraggingHorizontalScrollBar:!0,isDragging:!0}),!0}return!1}onMove(e,t){return this.isInScrollBar(e,t)}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingHorizontalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}function Pi(i,e,t){return(e=js(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function js(i){var e=ks(i,"string");return typeof e=="symbol"?e:e+""}function ks(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ls extends dt{constructor(){super(...arguments),Pi(this,"cursor","move"),Pi(this,"draggingOffset",void 0)}onDown(e,t){var n=t.props.model,r=e.x,a=e.y,o=e.row,s=t.metrics;if(!s)throw new Error("metrics not set");var l=s.columnHeaderHeight,u=s.rowHeaderWidth,h=s.allRowYs;if(r<=u&&o!==null&&n.isRowMovable(o)){var c=_e(h,o);this.draggingOffset=a-c-l,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var n=t.props.model,r=t.state.draggingRow,a=t.state,o=a.mouseX,s=a.mouseY;if(o==null||s==null)return!1;if(r==null){var l=t.getGridPointFromXY(o,s),u=l.row;if(u!=null&&!n.isRowMovable(u)||(r=u,t.setState({draggingRow:r,isDragging:!0}),r==null))return!1}var h=t.metrics;if(!h)throw new Error("metrics not set");var c=h.top,g=h.lastTop,m=h.bottom,p=h.bottomVisible,v=h.rowCount,f=h.columnHeaderHeight,S=h.allRowHeights,C=h.allRowYs,E=h.height,w=f;if(c<r){var F=r-1;w=_e(C,F)+_e(S,F)*.5+f}var A=E;if(r<m){var y=r+1;A=_e(C,y)+_e(S,y)*.5+f}var x=t.state.movedRows;s<w&&r>0&&n.isRowMovable(r-1)?(x=z.moveItem(r,r-1,x),r-=1):A<s&&r<v-1&&n.isRowMovable(r+1)&&(x=z.moveItem(r,r+1,x),r+=1),t.setState({movedRows:x,draggingRow:r});var D=f+_e(S,c)*.5,N=f+_e(C,p)+_e(S,p)*.5;return s<D&&c>0?t.setState({top:c-1}):s>N&&c<g&&t.setState({top:c+1}),!0}onUp(e,t){return this.draggingOffset!==void 0?(this.draggingOffset=void 0,t.setState({draggingRowOffset:null,draggingRow:null,isDragging:!1}),!0):!1}}function be(i,e,t){return(e=Vs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Vs(i){var e=Us(i,"string");return typeof e=="symbol"?e:e+""}function Us(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class jn extends Oo{constructor(){super(...arguments),be(this,"hiddenCursor","s-resize"),be(this,"defaultCursor","row-resize"),be(this,"pointProperty","y"),be(this,"userSizesProperty","userRowHeights"),be(this,"visibleOffsetProperty","visibleRowYs"),be(this,"visibleSizesProperty","visibleRowHeights"),be(this,"marginProperty","columnHeaderHeight"),be(this,"calculatedSizesProperty","calculatedRowHeights"),be(this,"initialSizesProperty","initialRowHeights"),be(this,"modelIndexesProperty","modelRows"),be(this,"firstIndexProperty","firstRow"),be(this,"treePaddingProperty","treePaddingY"),be(this,"getHiddenItems",z.getHiddenRows),be(this,"getNextShownItem",z.getNextShownRow),be(this,"getSeparator",jn.getRowSeparator)}static getRowSeparator(e,t,n,r){if(!r.allowRowResize)return null;var a=e.x,o=e.y,s=z.getRowSeparatorIndex(a,o,t,r);return s!=null?{index:s,depth:0}:null}setSize(e,t,n){e.setRowHeight(t,n)}resetSize(e,t){e.resetRowHeight(t)}updateSeparator(e,t){e.setState({draggingRowSeparator:t,isDragging:t!==null})}}class Bs extends dt{isInCorner(e,t){var n=t.getTheme(),r=n.scrollBarSize,a=t.metrics;if(!a)throw new Error("metrics not set");var o=e.x,s=e.y,l=a.width,u=a.height,h=a.hasVerticalBar,c=a.hasHorizontalBar;return r>0&&h&&c&&o>=l-r&&s>=u-r&&o<=l&&s<=u}onDown(e,t){return this.isInCorner(e,t)}onUp(e,t){return this.isInCorner(e,t)}onClick(e,t){return this.isInCorner(e,t)}}function Ii(i,e,t){return(e=Hs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Hs(i){var e=$s(i,"string");return typeof e=="symbol"?e:e+""}function $s(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class kn extends dt{constructor(){super(...arguments),Ii(this,"dragOffset",void 0),Ii(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var n=e.getTheme(),r=e.metrics,a=e.metricCalculator;if(!r)throw new Error("metrics not set");if(n.scrollSnapToRow){var o=Math.round(t),s=0;return{top:o,topOffset:s}}var l=Math.floor(t),u=t-l,h=r.allRowHeights.get(l);if(h==null){var c=e.getMetricState();h=a.getVisibleRowHeight(l,c)}var g=h*u;return{top:l,topOffset:g}}isInScrollBar(e,t){var n=t.getTheme(),r=n.scrollBarSize,a=n.scrollBarHoverSize,o=t.metrics;if(!o)throw new Error("metrics not set");var s=e.x,l=e.y,u=o.barTop,h=o.barHeight,c=o.width,g=o.hasVerticalBar;return g&&r>0&&s>=c-a&&s<c&&l>u&&l<u+h}getTopWithOffset(e,t){var n,r=t.metrics;if(!r)throw new Error("metrics not set");var a=e.y,o=r.barHeight,s=r.handleHeight,l=r.lastTop,u=r.barTop,h=r.rowCount,c=r.scrollableContentHeight,g=r.scrollableViewportHeight,m=a-u,p=Le((m-((n=this.dragOffset)!==null&&n!==void 0?n:0))/(o-s),0,1);if(h===1)return{top:0,topOffset:p*(c-g)};var v=p*l;return kn.getTopWithOffsetFromRawTop(t,v)}onDown(e,t){var n=t.metrics;if(!n)throw new Error("metrics not set");var r=e.y,a=n.handleHeight,o=n.barTop,s=n.scrollY;if(!this.isInScrollBar(e,t))return!1;var l=r-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var u=this.getTopWithOffset(e,t),h=u.top,c=u.topOffset;t.setViewState({top:h,topOffset:c,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var n=this.getTopWithOffset(e,t),r=n.top,a=n.topOffset;return t.setViewState({top:r,topOffset:a,isDraggingVerticalScrollBar:!0,isDragging:!0}),!0}return!1}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingVerticalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}class Gs extends dt{onDoubleClick(e,t){var n=e.column,r=e.row,a=t.props.model;return we(a)&&n!=null&&r!=null&&a.isEditableRange(J.makeCell(n,r))?(t.startEditing(n,r),!0):!1}}class Ws extends nt{onDown(e,t){switch(e.key){case"a":if(z.isModifierKeyDown(e))return t.selectAll(),!0;break;case"ArrowUp":return this.handleArrowMove(0,-1,e,t);case"ArrowDown":return this.handleArrowMove(0,1,e,t);case"ArrowRight":return this.handleArrowMove(1,0,e,t);case"ArrowLeft":return this.handleArrowMove(-1,0,e,t);case"k":case"K":return z.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return z.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return z.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(z.isModifierKeyDown(e))return!1;var n=t.props.model,r=n.columnCount;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(r-1,t.state.cursorRow,e.shiftKey),!0}case"PageDown":return this.handlePageDown(e,t);case"PageUp":return this.handlePageUp(e,t);case"Home":return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(z.isModifierKeyDown(e)?t.state.cursorColumn:0,z.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var a=t.props.model,o=a.columnCount,s=a.rowCount;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(z.isModifierKeyDown(e)?t.state.cursorColumn:o-1,z.isModifierKeyDown(e)?s-1:t.state.cursorRow,e.shiftKey,!0,!0),!0}case"Escape":return t.state.selectedRanges.length===0?!1:(t.clearSelectedRanges(),{preventDefault:!1,stopPropagation:!0});case"Enter":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?J.SELECTION_DIRECTION.UP:J.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?J.SELECTION_DIRECTION.LEFT:J.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,n,r){var a=n.shiftKey,o=z.isModifierKeyDown(n);a?r.trimSelectedRanges():r.clearSelectedRanges();var s=r.state,l=s.cursorRow,u=s.cursorColumn,h=s.selectionEndColumn,c=s.selectionEndRow,g=a?h:u,m=a?c:l;if(o){var p=r.props.model,v=p.columnCount,f=p.rowCount,S=o&&a,C=null,E=null;e<0?(C=0,E=m):e>0?(C=v-1,E=m):t<0?(C=g,E=0):t>0&&(C=g,E=f-1),C!=null&&E!=null&&r.moveCursorToPosition(C,E,a,!0,S)}else{if(!r.metrics)throw new Error("grid.metrics are not set");var w=r.props.theme,F=w.autoSelectRow,A=F===void 0?!1:F,y=w.autoSelectColumn,x=y===void 0?!1:y;if(A&&e!==0){var D=r.metrics.lastLeft,N=r.state.left;N=Le(N+e,0,D),r.moveCursorToPosition(N,l,a,!1),r.setViewState({left:N})}else if(x&&t!==0){var I=r.metrics.lastTop,R=r.state.top;R=Le(R+t,0,I),r.moveCursorToPosition(R,u,a,!1),r.setViewState({top:R})}else r.moveCursor(e,t,a)}return!0}handlePageUp(e,t){var n=e.shiftKey;n?t.trimSelectedRanges():t.clearSelectedRanges();var r=t.state,a=r.cursorColumn,o=r.selectionEndRow,s=o,l=a;if(s==null)return!1;var u=t.getMetricState(),h=t.metricCalculator,c=h.getMetrics(u),g=c.bottomVisible,m=c.topVisible,p=c.hasHorizontalBar,v=s-(g-m);v-=p?0:1,v=Math.max(v,0);var f=Math.max(v-(s-m),0);return t.moveCursorToPosition(l,v,n,!1),t.setViewState({top:f}),!0}handlePageDown(e,t){var n=e.shiftKey;n?t.trimSelectedRanges():t.clearSelectedRanges();var r=t.state,a=r.selectionEndRow,o=r.cursorColumn,s=a,l=o;if(s===null)return!1;var u=t.getMetricState(),h=t.metricCalculator,c=h.getMetrics(u),g=c.bottomVisible,m=c.topVisible,p=c.hasHorizontalBar,v=c.rowCount,f=c.lastTop,S=v-1,C=g-m+s;C+=p?0:1,C=Math.min(C,S);var E=Math.min(f,C-(s-m));return t.moveCursorToPosition(l,C,n,!1),t.setViewState({top:E}),!0}}class zs extends nt{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var n=t.state.selectedRanges;if(n.length===1){var r=n[0];if(r.startRow===r.endRow&&r.startColumn===r.endColumn){if(!t.metrics)throw new Error("grid.metrics not set");var a=t.props.model,o=r.startRow,s=r.startColumn;if(o!=null){var l=t.getModelRow(o);if((s===0||s==null)&&ut(a)&&a.isRowExpandable(l))return t.toggleRowExpanded(o),!0}}}return!1}}class Ks extends nt{onDown(e,t){if(z.isModifierKeyDown(e))return!1;var n=t.props.model,r=t.state,a=r.cursorColumn,o=r.cursorRow;if(a==null||o==null||!we(n))return!1;var s,l;try{s=t.getModelColumn(a),l=t.getModelRow(o)}catch{return!1}if(!n.isEditableRange(J.makeCell(s,l)))return!1;if(e.key.length===1){var u=t.props.cellInputRendererRegistry,h=n.getColumnRestrictions(s);if(h.length===1){var c=u==null?void 0:u.get(h[0].type);if((c==null?void 0:c.preservesExistingValue)===!0)return t.startEditing(a,o),!0}return t.startEditing(a,o,!0,[1,1],e.key),!0}return e.key==="F2"||e.key==="Enter"?(t.startEditing(a,o),!0):e.key==="Backspace"?(t.startEditing(a,o,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(a,o,""),!0):!1}}var Ys=De.createContext({});function ji(i,e,t,n,r,a,o){try{var s=i[a](o),l=s.value}catch(u){return void t(u)}s.done?e(l):Promise.resolve(l).then(n,r)}function qs(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function o(l){ji(a,n,r,o,s,"next",l)}function s(l){ji(a,n,r,o,s,"throw",l)}o(void 0)})}}function ki(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function je(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ki(Object(t),!0).forEach(function(n){de(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):ki(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function de(i,e,t){return(e=Qs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Qs(i){var e=Xs(i,"string");return typeof e=="symbol"?e:e+""}function Xs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ae extends T.PureComponent{static getScale(e){var t,n,r,a,o,s=window.devicePixelRatio||1,l=e,u=(t=(n=(r=(a=(o=l.webkitBackingStorePixelRatio)!==null&&o!==void 0?o:l.mozBackingStorePixelRatio)!==null&&a!==void 0?a:l.msBackingStorePixelRatio)!==null&&r!==void 0?r:l.oBackingStorePixelRatio)!==null&&n!==void 0?n:l.backingStorePixelRatio)!==null&&t!==void 0?t:1;return s/u}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),de(this,"renderer",void 0),de(this,"metricCalculator",void 0),de(this,"canvas",void 0),de(this,"canvasContext",void 0),de(this,"canvasWrapper",void 0),de(this,"resizeObserver",void 0),de(this,"animationFrame",void 0),de(this,"prevMetrics",void 0),de(this,"metrics",void 0),de(this,"renderState",void 0),de(this,"documentCursor",void 0),de(this,"hasAddedBlockEvents",void 0),de(this,"dragTimer",void 0),de(this,"keyHandlers",void 0),de(this,"mouseHandlers",void 0),de(this,"getCachedKeyHandlers",Ft(l=>[...l,...this.keyHandlers].sort((u,h)=>u.order-h.order))),de(this,"getCachedMouseHandlers",Ft(l=>[...l,...this.mouseHandlers].sort((u,h)=>u.order-h.order))),this.handleClick=this.handleClick.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handleEditCellCancel=this.handleEditCellCancel.bind(this),this.handleEditCellChange=this.handleEditCellChange.bind(this),this.handleEditCellCommit=this.handleEditCellCommit.bind(this),this.handleDoubleClick=this.handleDoubleClick.bind(this),this.notifyKeyboardHandlers=this.notifyKeyboardHandlers.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseDrag=this.handleMouseDrag.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleResize=this.handleResize.bind(this),this.handleWheel=this.handleWheel.bind(this),this.getSelectedRanges=this.getSelectedRanges.bind(this);var t=e.isStuckToBottom,n=e.isStuckToRight,r=e.metricCalculator,a=e.movedColumns,o=e.movedRows,s=e.renderer;this.renderer=s||new mn,this.metricCalculator=r||new wi,this.canvas=null,this.canvasContext=null,this.canvasWrapper=De.createRef(),this.resizeObserver=new window.ResizeObserver(this.handleResize),this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.hasAddedBlockEvents=!1,this.dragTimer=null,this.keyHandlers=[new Ks(400),new Ao(450),new Ws(500),new zs(900)],this.mouseHandlers=[new jn(100),new Do(200),new Ls(300),new Ms(400),new Gs(450),new kn(500),new In(600),new Bs(700),new No(800),new _o(875),new Mo(900)],this.state={top:0,left:0,topOffset:0,leftOffset:0,draggingColumn:null,draggingRow:null,draggingRowOffset:null,draggingColumnSeparator:null,draggingRowSeparator:null,isDraggingHorizontalScrollBar:!1,isDraggingVerticalScrollBar:!1,isDragging:!1,mouseX:null,mouseY:null,movedColumns:a,movedRows:o,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:ae,lastSelectedRanges:ae,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:n,updateRevision:0}}componentDidMount(){var e;this.initContext(),(e=this.canvas)===null||e===void 0||e.addEventListener("wheel",this.handleWheel,{passive:!1}),this.canvasWrapper.current!=null&&this.resizeObserver.observe(this.canvasWrapper.current),this.updateCanvas();var t=this.props,n=t.isStuckToBottom,r=t.isStuckToRight,a=this.getStickyScrollPosition(n,r),o=a.top,s=a.left;this.setState({top:o,left:s})}componentDidUpdate(e,t){var n=this.state.renderError;if(n!=null)throw n;var r=xi(e,this.props),a=xi(t,this.state);if(!((r.length===0||r.length===1&&r[0]==="children")&&a.length===0)){var o=this.props,s=o.isStickyBottom,l=o.isStickyRight,u=o.movedColumns,h=o.movedRows,c=o.onMovedColumnsChanged,g=o.onMoveColumnComplete,m=o.onMovedRowsChanged,p=o.onMoveRowComplete,v=o.renderer,f=o.metricCalculator,S=e.isStickyBottom,C=e.isStickyRight,E=e.movedColumns,w=e.movedRows,F=t.movedColumns,A=t.movedRows,y=this.state,x=y.draggingColumn,D=y.draggingRow,N=y.movedColumns,I=y.movedRows,R={};E!==u&&(R.movedColumns=u),w!==h&&(R.movedRows=h),F!==N&&c(N),t.draggingColumn!=null&&x==null&&g(N),A!==I&&m(I),t.draggingRow!=null&&D==null&&p(I),s!==S&&(R.isStuckToBottom=!1),l!==C&&(R.isStuckToRight=!1),v!==e.renderer&&(this.renderer=v??new mn),f!==e.metricCalculator&&(this.metricCalculator=f??new wi);var U=je(je({},this.state),R);if(this.updateMetrics(U),this.requestUpdateCanvas(),this.needToUpdateScroll()){var k=this.getStickyScrollPosition(s,l),G=k.top,V=k.left;U.top=G,U.left=V}this.validateSelection()&&this.checkSelectionChange(t),this.setState(U)}}componentWillUnmount(){var e;this.animationFrame!=null&&cancelAnimationFrame(this.animationFrame),(e=this.canvas)===null||e===void 0||e.removeEventListener("wheel",this.handleWheel),window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),this.resizeObserver.disconnect(),this.stopDragTimer(),this.removeDocumentCursor()}getTheme(){var e=this.props.theme;return Ae.getTheme(this.context,e)}getGridPointFromEvent(e){Ai(this.canvas);var t=this.canvas.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;return this.getGridPointFromXY(n,r)}getGridPointFromXY(e,t){if(!this.metrics)throw new Error("metrics must be set");return z.getGridPointFromXY(e,t,this.metrics)}getMetricState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=this.getTheme(),n=this.props,r=n.model,a=n.stateOverride;if(!this.canvasContext||!this.canvas)throw new Error("Canvas and context must be defined to get metrics");var o=this.canvasContext,s=this.canvas.clientWidth,l=this.canvas.clientHeight,u=e.left,h=e.top,c=e.leftOffset,g=e.topOffset,m=e.movedColumns,p=e.movedRows,v=e.isDraggingHorizontalScrollBar,f=e.isDraggingVerticalScrollBar,S=e.draggingColumn;return je({left:u,top:h,leftOffset:c,topOffset:g,width:s,height:l,context:o,theme:t,model:r,movedColumns:m,movedRows:p,isDraggingHorizontalScrollBar:v,isDraggingVerticalScrollBar:f,draggingColumn:S},a)}getKeyHandlers(){var e=this.props.keyHandlers;return this.getCachedKeyHandlers(e)}getMouseHandlers(){var e=this.props.mouseHandlers;return this.getCachedMouseHandlers(e)}getModelColumn(e){var t,n=(t=this.metrics)===null||t===void 0||(t=t.modelColumns)===null||t===void 0?void 0:t.get(e);if(n===void 0)throw new Error("Unable to get ModelIndex for column ".concat(e));return n}getModelRow(e){var t,n=(t=this.metrics)===null||t===void 0||(t=t.modelRows)===null||t===void 0?void 0:t.get(e);if(n===void 0)throw new Error("Unable to get ModelIndex for row ".concat(e));return n}toggleRowExpanded(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.getModelRow(e),r=this.props.model;ut(r)&&r.isRowExpandable(n)&&r.setRowExpanded(n,!r.isRowExpanded(n),t),this.clearSelectedRanges(),this.commitSelection(),this.moveCursorToPosition(0,e),this.commitSelection(),this.setState({isStuckToBottom:!1})}getStickyScrollPosition(e,t){if(!this.metrics)return{left:this.state.left,top:this.state.top};var n=this.metrics,r=n.bottomVisible,a=n.rowCount,o=n.top,s=n.lastTop,l=n.rightVisible,u=n.columnCount,h=n.left,c=n.lastLeft,g=o,m=h;return e&&(r<a-1&&r>0||o>s)&&(g=s),t&&(l<u-1&&l>0||h>c)&&(m=c),{top:g,left:m}}setSelectedRanges(e){var t=this.props.model,n=t.columnCount,r=t.rowCount,a=this.state,o=a.cursorRow,s=a.cursorColumn,l=a.selectedRanges;if(this.setState({selectedRanges:e,lastSelectedRanges:l}),e.length>0){var u=J.boundedRange(e[0],n,r),h=o,c=s;if(!u.containsCell(s,o)){var g=u.startCell();h=g.row,c=g.column}this.setState({selectionStartColumn:u.startColumn,selectionStartRow:u.startRow,selectionEndColumn:u.endColumn,selectionEndRow:u.endRow,cursorColumn:c,cursorRow:h})}}initContext(){var e=this.canvas,t=this.props.canvasOptions;if(!e)throw new Error("Canvas not set");this.canvasContext=e.getContext("2d",t)}requestUpdateCanvas(){this.animationFrame==null&&(this.animationFrame=requestAnimationFrame(()=>{this.animationFrame=null;try{this.updateCanvas()}catch(e){this.setState({renderError:e})}}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var e=this.canvasContext,t=this.metrics,n=this.renderState;q(e),q(t),q(n),this.renderer.configureContext(e,n);var r=this.props.onViewChanged;r(t),this.drawCanvas()}updateCanvasScale(){var e=this.canvas,t=this.canvasContext,n=this.canvasWrapper;if(!e)throw new Error("canvas not set");if(!t)throw new Error("canvasContext not set");if(!n.current)throw new Error("canvasWrapper not set");var r=n.current.getBoundingClientRect(),a=Math.floor(r.width),o=Math.floor(r.height);if(!(parseFloat(e.style.width)===a&&parseFloat(e.style.height)===o)){var s=Ae.getScale(t);e.style.width="".concat(a,"px"),e.style.height="".concat(o,"px"),e.width=a*s,e.height=o*s,t.scale(s,s)}}updateScrollBounds(){if(!this.metrics)throw new Error("metrics not set");var e=this.state,t=e.left,n=e.top,r=this.metrics,a=r.lastLeft,o=r.lastTop;t>a&&this.setState({left:a,leftOffset:0}),n>o&&this.setState({top:o,topOffset:0})}needToUpdateScroll(){if(!this.metrics||!this.prevMetrics)return!1;var e=this.metrics,t=e.rowCount,n=e.columnCount,r=e.height,a=e.width,o=this.prevMetrics,s=o.rowCount,l=o.columnCount,u=o.height,h=o.width;if(s!==t||r!==u){var c=this.state.isStuckToBottom;if(c)return!0}if(l!==n||a!==h){var g=this.state.isStuckToRight;if(g)return!0}return!1}updateMetrics(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state;this.prevMetrics=this.metrics;var t=this.metricCalculator,n=this.getMetricState(e);return this.metrics=t.getMetrics(n),this.updateScrollBounds(),this.metrics}checkSelectionChange(e){var t=e.selectedRanges,n=this.state.selectedRanges;if(n!==t){var r=this.props.onSelectionChanged;r(n)}}validateSelection(){for(var e=this.props.model,t=this.state.selectedRanges,n=e.columnCount,r=e.rowCount,a=0;a<t.length;a+=1){var o=t[a];if(o.endColumn!=null&&o.endColumn>=n||o.endRow!=null&&o.endRow>=r)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var e=this.state.selectedRanges;this.setState({selectedRanges:ae,lastSelectedRanges:e})}trimSelectedRanges(){var e=this.state.selectedRanges;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}getSelectedRanges(){var e=this.state.selectedRanges;return e}beginSelection(e,t){this.setState({selectionStartColumn:e,selectionStartRow:t,selectionEndColumn:e,selectionEndRow:t,cursorColumn:e,cursorRow:t})}moveSelection(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;this.setState(a=>{var o=a.selectedRanges,s=a.selectionStartRow,l=a.selectionStartColumn,u=this.props.theme,h=u.autoSelectRow,c=u.autoSelectColumn;if(n&&o.length>0){var g=o[o.length-1],m=null,p=null,v=null,f=null;if(r){var S,C,E,w;m=h!==void 0&&h?null:Math.min(e??0,(S=g.startColumn)!==null&&S!==void 0?S:0),p=c!==void 0&&c?null:Math.min(t??0,(C=g.startRow)!==null&&C!==void 0?C:0),v=h!==void 0&&h?null:Math.max(e??0,(E=g.endColumn)!==null&&E!==void 0?E:0),f=c!==void 0&&c?null:Math.max(t??0,(w=g.endRow)!==null&&w!==void 0?w:0)}else m=g.startColumn,p=g.startRow,(l!=null||s!=null)&&((h===void 0||!h)&&(m=l),(c===void 0||!c)&&(p=s)),v=h!==void 0&&h?null:e,f=c!==void 0&&c?null:t;var F=J.makeNormalized(m,p,v,f);if(g.equals(F))return null;var A=[...o];return A[A.length-1]=F,{selectedRanges:A,selectionEndColumn:e,selectionEndRow:t}}var y=[...o],x=h!==void 0&&h?null:e,D=c!==void 0&&c?null:t;return y.push(J.makeNormalized(x,D,x,D)),{selectedRanges:y,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var t=this.props.theme,n=t.autoSelectRow,r=e.selectedRanges,a=e.lastSelectedRanges,o=e.cursorRow,s=e.cursorColumn;if(r.length===1&&(n!==void 0&&n?J.rowCount(r)===1:J.cellCount(r)===1)&&J.rangeArraysEqual(r,a))return{selectedRanges:ae,lastSelectedRanges:ae,cursorColumn:null,cursorRow:null};var l=r.slice();if(l.length>1){for(var u=l[l.length-1],h=0;h<l.length-1;h+=1){var c=l[h];if(c.contains(u)){var g=c.subtract(u);l.pop(),l.splice(h,1),l=l.concat(g);break}}l=J.consolidate(l)}var m=s,p=o;if(!J.containsCell(l,s,o)){var v=this.props.model,f=v.columnCount,S=v.rowCount,C=J.nextCell(J.boundedRanges(r,f,S));C!=null?(m=C.column,p=C.row):(m=null,p=null)}l.length===0&&(m=null,p=null);var E=l.length!==r.length||l.some((w,F)=>!w.equals(r[F]));return{cursorRow:p,cursorColumn:m,selectedRanges:E?l:r,lastSelectedRanges:r}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var n=this.metrics,r=n.gridY,a=n.height,o=n.lastTop,s=n.userRowHeights,l=n.rowHeight,u=a-r,h=Math.round(u/2)+((t=s.get(e))!==null&&t!==void 0?t:l),c=this.getMetricState(),g=this.metricCalculator.getLastTop(c,e+1,h);this.setState({top:Math.min(o,g),selectedRanges:[new J(null,e,null,e)],isStuckToBottom:!1});var m=this.state.cursorColumn;this.moveCursorToPosition(m,e,!1,!1)}}selectAll(){var e=this.props,t=e.model,n=e.theme,r=n.autoSelectRow,a=n.autoSelectColumn,o=a!==void 0&&a?null:0,s=a!==void 0&&a?null:t.rowCount-1,l=r!==void 0&&r?null:0,u=r!==void 0&&r?null:t.columnCount-1;this.setSelectedRanges([new J(l,o,u,s)])}moveCursor(e,t,n){var r=this.state,a=r.cursorRow,o=r.cursorColumn,s=r.selectionEndColumn,l=r.selectionEndRow,u=n?s:o,h=n?l:a;if(h===null||u===null){var c=this.state,g=c.left,m=c.top;this.moveCursorToPosition(g,m,n)}else{var p=this.props.model,v=p.columnCount,f=p.rowCount,S=Le(u+e,0,v-1),C=Le(h+t,0,f-1);this.moveCursorToPosition(S,C,n)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:J.SELECTION_DIRECTION.DOWN,t=this.props.model,n=t.columnCount,r=t.rowCount,a=this.state,o=a.cursorRow,s=a.cursorColumn,l=a.selectedRanges,u=l.length>0?l:[J.makeCell(s,o)],h=null;if(u.length===1&&J.cellCount(u)===1){var c,g=new J(0,0,n-1,r-1);h=(c=g.nextCell(s,o,e))!==null&&c!==void 0?c:g.startCell(e)}else h=J.nextCell(J.boundedRanges(u,n,r),s,o,e);if(h!=null){var m=h,p=m.column,v=m.row;this.setState({cursorColumn:p,cursorRow:v}),J.containsCell(l,p,v)||this.setState({selectedRanges:[J.makeCell(p,v)],selectionStartColumn:p,selectionStartRow:v,selectionEndColumn:p,selectionEndRow:v}),this.moveViewToCell(h.column,h.row)}}moveCursorToPosition(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;n||this.beginSelection(e,t),this.moveSelection(e,t,n,a),r&&this.moveViewToCell(e,t)}moveViewToCell(e,t){if(!this.metrics)throw new Error("metrics not set");var n=this.metricCalculator,r=this.metrics,a=r.bottomVisible,o=r.rightVisible,s=r.topVisible,l=r.leftVisible,u=this.getMetricState(this.state),h=this.state,c=h.top,g=h.left,m=h.topOffset,p=h.leftOffset;t!=null&&!z.isFloatingRow(t,this.metrics)&&(t<s?(c=n.getTopForTopVisible(u,t),m=0):t>a&&(c=n.getTopForBottomVisible(u,t),m=0)),e!=null&&!z.isFloatingColumn(e,this.metrics)&&(e<l?(g=n.getLeftForLeftVisible(u,e),p=0):e>o&&(g=n.getLeftForRightVisible(u,e),p=0)),this.setViewState({top:c,left:g,topOffset:m,leftOffset:p})}setViewState(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!this.metrics)throw new Error("metrics not set");var n=this.props,r=n.isStickyBottom,a=n.isStickyRight,o=e.top,s=e.left,l=this.metrics,u=l.lastTop,h=l.lastLeft,c=l.hasVerticalBar,g=l.hasHorizontalBar;o!=null&&c&&this.setState({isStuckToBottom:r&&o>=u}),s!=null&&g&&this.setState({isStuckToRight:a&&s>=h}),this.setState(e),t&&this.forceUpdate()}startEditing(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,o=this.props.model;if(!we(o))throw new Error("model is not editable");var s=this.getModelColumn(e),l=this.getModelRow(t),u={column:e,row:t,selectionRange:r,value:a!==void 0?a:o.editValueForCell(s,l),isQuickEdit:n};this.setState({editingCell:u,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,n){var r=this.props.model,a=this.getModelColumn(e),o=this.getModelRow(t);return we(r)&&r.isValidForCell(a,o,n)}pasteValue(e){var t=this;return qs(function*(){var n=t.props.model,r=t.state,a=r.movedColumns,o=r.movedRows,s=r.selectedRanges;try{if(Ti(n),!n.isEditable||!s.every(S=>n.isEditableRange(S)))throw new vn("Can't paste in to read-only area.");if(s.length<=0)throw new vn("Select an area to paste to.");if(typeof e=="string"){var l=[],u=z.getModelRanges(s,a,o);J.forEachCell(u,(S,C)=>{l.push({column:S,row:C,text:e})}),yield n.setValues(l);return}var h=e.length,c=e[0].length,g=n.columnCount,m=n.rowCount,p=s;p.every(S=>{var C,E;return J.cellCount([S])===1&&((C=S.startColumn)!==null&&C!==void 0?C:0)+c<=g&&((E=S.startRow)!==null&&E!==void 0?E:0)+h<=m})&&(p=p.map(S=>{var C,E;return new J(S.startColumn,S.startRow,((C=S.startColumn)!==null&&C!==void 0?C:0)+c-1,((E=S.startRow)!==null&&E!==void 0?E:0)+h-1)}),t.setSelectedRanges(p));var v=[];p.forEach(S=>{var C;if(((C=S.startColumn)!==null&&C!==void 0?C:0)+c>g)throw new vn("Pasted content would overflow columns.");for(var E=0;E<c;E+=1)for(var w=0;w<h;w+=1){var F,A;v.push({column:((F=S.startColumn)!==null&&F!==void 0?F:0)+E,row:((A=S.startRow)!==null&&A!==void 0?A:0)+w,text:e[w][E]})}}),yield n.setValues(v)}catch(S){var f=t.props.onError;f(S instanceof Error?S:new Error("".concat(S)))}})()}setValueForCell(e,t,n){var r=this.props,a=r.model,o=r.onError;Ti(a);var s=this.getModelColumn(e),l=this.getModelRow(t);return a.isValidForCell(s,l,n)?(a.setValueForCell(s,l,n).catch(u=>{o(u instanceof Error?u:new Error("".concat(u)))}),!0):!1}setValueForRanges(e,t){var n=this.props,r=n.model,a=n.onError,o=this.state,s=o.movedColumns,l=o.movedRows,u=z.getModelRanges(e,s,l);we(r)&&r.setValueForRanges(u,t).catch(h=>{a(h instanceof Error?h:new Error("".concat(h)))})}isSelected(e,t){for(var n=this.state.selectedRanges,r=0;r<n.length;r+=1){var a,o,s=n[r],l=s.startRow===null||s.startRow<=e&&e<=((a=s.endRow)!==null&&a!==void 0?a:0),u=s.startColumn===null||s.startColumn<=t&&t<=((o=s.endColumn)!==null&&o!==void 0?o:0);if(l&&u)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==Ae.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=Ae.getCursorClassName(e),this.documentCursor!=null&&document.documentElement.classList.add(this.documentCursor),document.documentElement.classList.add("grid-block-events"),this.hasAddedBlockEvents=!0)}removeDocumentCursor(){this.documentCursor!=null&&(document.documentElement.classList.remove(this.documentCursor),this.documentCursor=null),this.hasAddedBlockEvents&&(document.documentElement.classList.remove("grid-block-events"),this.hasAddedBlockEvents=!1)}startDragTimer(e){this.stopDragTimer();var t=new MouseEvent("custom",e.nativeEvent);this.dragTimer=setTimeout(()=>{this.handleMouseDrag(t)},Ae.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var e=this.renderer,t=this.canvasContext,n=this.renderState;t.save(),e.drawCanvas(n),t.restore()}focus(){var e;(e=this.canvas)===null||e===void 0||e.focus()}isFocused(){return document.activeElement===this.canvas}handleClick(e){for(var t,n=this.getGridPointFromEvent(e),r=this.getMouseHandlers(),a=0;a<r.length;a+=1){var o=r[a];if(o.onClick(n,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}(t=this.canvas)===null||t===void 0||t.focus()}handleContextMenu(e){for(var t=this.getGridPointFromEvent(e),n=this.getMouseHandlers(),r=0;r<n.length;r+=1){var a=n[r];if(a.onContextMenu(t,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}}notifyKeyboardHandlers(e,t){for(var n=this.getKeyHandlers(),r=null,a=0;a<n.length;a+=1){var o=n[a],s=o[e]!=null&&o[e](t,this);if(s!==!1){var l,u;o.cursor!=null&&(r=o.cursor);var h=s;(!((l=h==null?void 0:h.stopPropagation)!==null&&l!==void 0)||l)&&t.stopPropagation(),(!((u=h==null?void 0:h.preventDefault)!==null&&u!==void 0)||u)&&t.preventDefault();break}}this.setState({cursor:r})}handleKeyDown(e){this.notifyKeyboardHandlers("onDown",e)}handleKeyUp(e){this.notifyKeyboardHandlers("onUp",e)}notifyMouseHandlers(e,t){for(var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=this.getGridPointFromEvent(t),o=this.getMouseHandlers(),s=null,l=0;l<o.length;l+=1){var u=o[l],h=u[e]!=null&&u[e](a,this,t);if(h!==!1){var c,g;u.cursor!=null&&(s=u.cursor,r&&this.addDocumentCursor(s));var m=h;(!((c=m==null?void 0:m.stopPropagation)!==null&&c!==void 0)||c)&&t.stopPropagation(),(!((g=m==null?void 0:m.preventDefault)!==null&&g!==void 0)||g)&&t.preventDefault();break}}if(this.setState({cursor:s}),n){var p=a.x,v=a.y;this.setState({mouseX:p,mouseY:v})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){var t=this.state.isDragging;t&&e.button!==0||(window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),this.stopDragTimer(),this.removeDocumentCursor(),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onUp",e,!1),t&&this.setState({isDragging:!1})))}handleResize(){if(this.updateCanvas(),!this.metrics)throw new Error("metrics not set");this.forceUpdate()}forceUpdate(e){this.setState(t=>{var n=t.updateRevision,r=n===void 0?0:n;return{updateRevision:(r+1)%Number.MAX_SAFE_INTEGER}}),super.forceUpdate(e)}handleWheel(e){if(this.notifyMouseHandlers("onWheel",e),!e.defaultPrevented){var t=this.metricCalculator,n=this.metrics,r=this.getMetricState();if(!n)throw new Error("metrics not set");for(var a=n.lastTop,o=n.lastLeft,s=n.columnCount,l=n.rowCount,u=n.scrollableContentWidth,h=n.scrollableViewportWidth,c=n.scrollableContentHeight,g=n.scrollableViewportHeight,m=n.hasHorizontalBar,p=n.hasVerticalBar,v=n.top,f=n.left,S=n.topOffset,C=n.leftOffset,E=this.getTheme(),w=z.getScrollDelta(e,n.barWidth,n.barHeight,n.rowHeight,n.rowHeight),F=w.deltaX,A=w.deltaY;m&&F!==0;){if(C+=F,F=0,s>1){if(C>0&&f>=o||C<0&&f<=0){C=0;break}}else{if(C<=0){C=0;break}var y=u-h;if(C>=y){C=y;break}}if(C>0){var x,D=(x=n.allColumnWidths.get(f))!==null&&x!==void 0?x:t.getVisibleColumnWidth(f,r);C>=D?(F=C-D,C=0,f+=1):E.scrollSnapToColumn&&s>1&&(C=0,f+=1)}else if(C<0){var N,I=(N=n.allColumnWidths.get(f-1))!==null&&N!==void 0?N:t.getVisibleColumnWidth(f-1,r);Math.abs(C)<=I&&E.scrollSnapToColumn&&s>1?(C=0,f-=1):(F=C+I,C=0,f-=1)}}for(;p&&A!==0;){if(S+=A,A=0,l>1){if(S>0&&v>=a||S<0&&v<=0){S=0;break}}else{if(S<=0){S=0;break}var R=c-g;if(S>=R){S=R;break}}if(S>0){var U,k=(U=n.allRowHeights.get(v))!==null&&U!==void 0?U:t.getVisibleRowHeight(v,r);S>=k?(A=S-k,S=0,v+=1):E.scrollSnapToRow&&l>1&&(S=0,v+=1)}else if(S<0){var G,V=(G=n.allRowHeights.get(v-1))!==null&&G!==void 0?G:t.getVisibleRowHeight(v-1,r);Math.abs(S)<=V&&E.scrollSnapToRow&&l>1?(S=0,v-=1):(A=S+V,S=0,v-=1)}}(n.top!==v||n.left!==f||n.topOffset!==S||n.leftOffset!==C)&&(this.setViewState({top:v,left:f,topOffset:S,leftOffset:C}),e.stopPropagation(),e.preventDefault())}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var n=t.editingCell;try{return Ai(n),{editingCell:je(je({},n),{},{value:e})}}catch(a){var r=this.props.onError;return r(a instanceof Error?a:new Error("".concat(a))),null}})}handleEditCellCommit(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.direction,r=n===void 0?Ue.DOWN:n,a=t.fillRange,o=a===void 0?!1:a,s=this.state,l=s.editingCell,u=s.selectedRanges;if(!l)throw new Error("editingCell not set");var h=l.column,c=l.row;if(!this.isValidForCell(h,c,e)){r===null&&this.setState({editingCell:null});return}o?this.setValueForRanges(u,e):this.setValueForCell(h,c,e),r!==null&&this.moveCursorInDirection(r),this.setState({editingCell:null}),this.focus()}renderInputField(){var e=this.props.model,t=this.state.editingCell,n=this.metrics;if(t==null||n==null||!we(e))return null;var r=t.selectionRange,a=t.value,o=t.isQuickEdit,s=t.column,l=t.row,u=n.scrollX,h=n.gridX,c=n.gridY,g=n.allColumnXs,m=n.allRowYs,p=n.allColumnWidths,v=n.allRowHeights,f=this.getTheme(),S=f.activeCellSelectionBorderWidth,C=f.rowBackgroundColors,E=f.maxDepth,w=f.cellHorizontalPadding,F=g.get(s),A=m.get(l),y=p.get(s),x=v.get(l),D=h+(F??0)<=0&&u<=0?S:0,N,I;try{N=this.getModelColumn(s),I=this.getModelRow(l)}catch{return null}var R,U;if(N!=null&&I!=null){var k;R=(k=e.backgroundColorForCell(N,I,f))!==null&&k!==void 0?k:void 0,U=e.colorForCell(N,I,f)}if(R==null&&C){var G=mn.getCachedBackgroundColors(C,E),V=ut(e)?e.depthForRow(l):0,W=G[l%G.length];R=W[Math.min(V,W.length-1)]}var B=F!=null&&A!=null&&y!=null&&x!=null?{position:"absolute",left:h+F+D,top:c+A,width:y-D,height:x,"--grid-cell-bg":R,"--grid-cell-fg":U,"--grid-row-height":"".concat(x,"px"),"--grid-font-size":f.font.split(" ")[0],"--grid-cell-horizontal-padding":"".concat(w,"px")}:{opacity:0},H=N!=null&&I!=null?{textAlign:e.textAlignForCell(N,I)}:void 0,Z=N!=null&&I!=null?e.isValidForCell(N,I,a):!1,X=this.props.cellInputRendererRegistry,re=N!=null?e.getColumnRestrictions(N):ae,ge={selectionRange:r,className:ee({error:!Z}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:o,style:H,value:a,restrictions:re},b=re.length===1?X==null?void 0:X.get(re[0].type):void 0;return d.jsx("div",{style:B,children:b!=null?b(ge):d.jsx(ys,je({},ge))},"".concat(s,",").concat(l))}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var e=this.state,t=e.cursorColumn,n=e.cursorRow,r=e.draggingColumn,a=e.draggingColumnSeparator,o=e.draggingRow,s=e.draggingRowOffset,l=e.draggingRowSeparator,u=e.editingCell,h=e.isDraggingHorizontalScrollBar,c=e.isDraggingVerticalScrollBar,g=e.isDragging,m=e.mouseX,p=e.mouseY,v=e.selectedRanges,f=this.props,S=f.model,C=f.stateOverride,E=this.metrics,w=this.canvasContext,F=this.getTheme(),A=this.canvas.clientWidth,y=this.canvas.clientHeight;return q(E),this.renderState=je({width:A,height:y,context:w,theme:F,model:S,metrics:E,mouseX:m,mouseY:p,selectedRanges:v,draggingColumn:r,draggingColumnSeparator:a,draggingRow:o,draggingRowOffset:s,draggingRowSeparator:l,editingCell:u,isDraggingHorizontalScrollBar:h,isDraggingVerticalScrollBar:c,isDragging:g,cursorColumn:t,cursorRow:n},C),this.renderState}render(){var e=this.props.children,t=this.state.cursor;return d.jsxs("div",{className:"grid-wrapper",ref:this.canvasWrapper,children:[d.jsx("canvas",{className:ee("grid-canvas",Ae.getCursorClassName(t)),ref:n=>{this.canvas=n},onClick:this.handleClick,onContextMenu:this.handleContextMenu,onDoubleClick:this.handleDoubleClick,onKeyDown:this.handleKeyDown,onKeyUp:this.handleKeyUp,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,tabIndex:0,children:"Your browser does not support HTML canvas. Update your browser?"}),this.renderInputField(),e]})}}de(Ae,"contextType",Ys);de(Ae,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:ae,mouseHandlers:ae,movedColumns:ae,movedRows:ae,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:i=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:i=>{},onTokenClicked:i=>{qa(i)&&window.open(i.href,"_blank","noopener,noreferrer")},cellInputRendererRegistry:new Map,stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});de(Ae,"pixelsPerLine",100/3);de(Ae,"dragTimeout",1e3);de(Ae,"getTheme",Ft((i,e)=>je(je(je({},Po),i),e)));function Li(i,e,t){return(e=Zs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Zs(i){var e=Js(i,"string");return typeof e=="symbol"?e:e+""}function Js(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Ut=Te.module("AdvancedFilterCreatorFilterItem");class Ln extends T.PureComponent{static getLabelForFilter(e,t){try{if(_.isNumberType(e)||_.isCharType(e))return Qa(t);if(_.isTextType(e))return Xa(t);if(_.isDateType(e))return Za(t);if(_.isBooleanType(e))return Ja(t);throw new Error("Unrecognized column type: ".concat(e))}catch(n){return Ut.warn(n),""}}constructor(e){super(e),Li(this,"typeDropdown",void 0),Li(this,"getCachedIsValid",Ft((s,l,u,h,c)=>{try{return!u||c.makeAdvancedValueFilter(s,l,u,h)!=null}catch{return!1}})),this.handleDelete=this.handleDelete.bind(this),this.handleTypeChange=this.handleTypeChange.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.typeDropdown=null;var t=e.value,n=t===void 0?"":t,r=e.filterTypes,a=e.selectedType,o=a===void 0?r[0]:a;this.state={selectedType:o,value:n}}componentDidMount(){var e;(e=this.typeDropdown)===null||e===void 0||e.focus()}componentDidUpdate(e){var t=this.props,n=t.value,r=t.selectedType;r!==void 0&&e.selectedType!==r&&this.setState({selectedType:r}),n!==void 0&&e.value!==n&&this.setState({value:n})}handleTypeChange(e){var t=e;Ut.debug2("typeChange",t),this.setState({selectedType:t});var n=this.props.onChange,r=this.state.value;r!=null&&r.length>0&&n(t,r)}handleValueChange(e){Ut.debug2("valueChange");var t=e.target.value;this.setState({value:t});var n=this.props.onChange,r=this.state.selectedType;r!=null&&n(r,t)}handleDelete(){Ut.debug("delete");var e=this.props.onDelete;e()}render(){for(var e=this.props,t=e.column,n=e.filterTypes,r=e.formatter,a=e.tableUtils,o=this.state,s=o.selectedType,l=o.value,u=!_.isBooleanType(t.type),h=[],c=this.getCachedIsValid(t,s,l,r.timeZone,a),g=0;g<n.length;g+=1){var m=n[g],p=Ln.getLabelForFilter(t.type,m),v=d.jsx("option",{value:m,children:p},m);h.push(v)}return d.jsx("div",{className:"advanced-filter-creator-filter-item",children:d.jsxs("div",{className:"form-row",children:[d.jsx("div",{className:"form-group col",children:d.jsx(Et,{className:"form-control",value:s,onChange:this.handleTypeChange,ref:f=>{this.typeDropdown=f},children:h})}),u&&d.jsx("div",{className:"form-group col",children:d.jsx("div",{className:"input-group",children:d.jsx("input",{type:"text",className:ee("form-control",{error:!c}),placeholder:"Enter value",value:l,onChange:this.handleValueChange})})}),d.jsx("div",{className:"form-group col-1 px-0",children:d.jsx(te,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:Nn,tooltip:"Remove Filter"})})]})})}}function An(i,e,t){return(e=el(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function el(i){var e=tl(i,"string");return typeof e=="symbol"?e:e+""}function tl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Vi=Te.module("AdvancedFilterCreatorSelectValueList");class Ot extends T.PureComponent{static indexOf(e,t){for(var n=0;n<t.length;n+=1){var r=t[n];if(r===e||r!=null&&r.valueOf!=null&&e!=null&&e.valueOf!=null&&r.valueOf()===e.valueOf())return n}return-1}constructor(e){super(e),An(this,"dh",void 0),An(this,"list",void 0),this.handleSelect=this.handleSelect.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this);var t=this.props,n=t.selectedValues,r=t.dh;this.dh=r,this.list=null,this.state={itemCount:0,items:[],offset:0,selectedValues:n,isLoading:!0}}componentDidMount(){var e=this.props.table;e&&this.startListening(e)}componentDidUpdate(e){var t=this.props,n=t.filters,r=t.invertSelection,a=t.selectedValues,o=t.table;e.table!==o&&(e.table&&this.stopListening(e.table),o&&this.startListening(o),this.resetViewport()),e.invertSelection!==r&&this.setState({selectedValues:[]},this.handleSelectionUpdate),e.selectedValues!==a&&this.setState({selectedValues:a},this.handleSelectionUpdate),e.filters!==n&&(o==null||o.applyFilter(n),this.resetViewport())}componentWillUnmount(){var e=this.props.table;e&&this.stopListening(e)}handleSelect(e,t){var n=this.props.invertSelection,r=this.state.selectedValues;r=[...r];var a=Ot.indexOf(t,r);a>=0?r.splice(a,1):r.push(t);var o=a<0;n&&(o=!o);var s=this.state.offset,l=this.state.items;l=[...l];var u=e-s;u>=0&&u<l.length&&(l[u].isSelected=o),this.setState({items:l,selectedValues:r});var h=this.props.onChange;h(r,n)}handleViewportChange(e,t){this.updateViewport(e,t)}handleSelectionUpdate(){this.updateItemSelection()}handleTableUpdate(e){var t=this.props,n=t.table,r=t.formatter;if(n){for(var a=e.detail,o=a.offset,s=[],l=n.columns[0],u=0;u<a.rows.length;u+=1){var h=a.rows[u],c=h.get(l),g=void 0;c==null?g=d.jsx("i",{className:"text-muted",children:"null"}):c===""?g=d.jsx("i",{className:"text-muted",children:"empty"}):g=r.getFormattedString(c,l.type,l.name);var m=this.isValueSelected(c);s.push({displayValue:g,value:c,isSelected:m})}Vi.debug2("Received table update:",o,s.length);var p=n.size;this.setState({itemCount:p,items:s,offset:o,isLoading:!1})}}isValueSelected(e){var t=this.props.invertSelection,n=this.state.selectedValues,r=Ot.indexOf(e,n);return t?r<0:r>=0}startListening(e){e.addEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}stopListening(e){e.removeEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}resetViewport(){this.list&&this.list.topRow!=null&&this.list.bottomRow!=null&&this.updateViewport(this.list.topRow,this.list.bottomRow,!0)}updateItemSelection(){var e=this.state.items;e=[...e];for(var t=0;t<e.length;t+=1){var n=e[t],r=n.value;n.isSelected=this.isValueSelected(r)}this.setState({items:e})}updateViewport(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=this.props.table;if(r!=null){n&&this.setState({isLoading:!0});var a=t-e+1,o=Math.max(0,e-a*3),s=Math.max(o,t+a*3);Vi.debug2("Setting viewport",o,",",s),r.setViewport(o,s)}}render(){var e=this.state,t=e.offset,n=e.isLoading,r=e.items,a=e.itemCount;return d.jsxs("div",{className:"select-value-list-wrapper",children:[d.jsx(Io,{itemCount:a,items:r,offset:t,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:o=>{this.list=o}}),d.jsx(Mn,{in:n,mountOnEnter:!0,unmountOnExit:!0,children:d.jsx("div",{className:"loading-list",children:d.jsx(Yt,{className:"loading-spinner-large"})})})]})}}An(Ot,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});function Rt(i,e,t){return(e=nl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function nl(i){var e=il(i,"string");return typeof e=="symbol"?e:e+""}function il(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Dt extends T.PureComponent{constructor(e){super(e),Rt(this,"searchTablePromise",void 0),Rt(this,"tableUtils",void 0),Rt(this,"updateFilterTimer",void 0),this.handleSelectAllClick=this.handleSelectAllClick.bind(this),this.handleClearAllClick=this.handleClearAllClick.bind(this),this.handleListChange=this.handleListChange.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUpdateFilterTimeout=this.handleUpdateFilterTimeout.bind(this);var t=e.dh,n=e.invertSelection,r=e.selectedValues;this.tableUtils=new _(t),this.state={filters:[],invertSelection:n,selectedValues:r,searchText:""}}componentDidMount(){this.initSearchTable()}componentDidUpdate(e,t){var n=this.props,r=n.invertSelection,a=n.selectedValues,o=n.table;e.table!==o&&this.initSearchTable(),e.invertSelection!==r&&this.setState({invertSelection:r}),e.selectedValues!==a&&this.setState({selectedValues:a});var s=this.state,l=s.table,u=s.searchText;l!==t.table&&(t.table!=null&&t.table.close(),l!=null&&this.startUpdateFilterTimer()),u!==t.searchText&&this.startUpdateFilterTimer()}componentWillUnmount(){var e=this.state.table;e!=null&&e.close(),this.searchTablePromise=void 0,this.stopUpdateFilterTimer()}getColumnName(){var e=this.props.table;return e!=null?e.columns[0].name:""}getDisplayedValuesCount(){var e=this.state,t=e.invertSelection,n=e.selectedValues,r=e.table;return r==null?null:t?r.totalSize-n.length:n.length}getDisplayedValueText(){var e=this.getDisplayedValuesCount(),t=this.state.table,n=this.props.formatter;if(e!=null&&t!=null){var r=n.getFormattedString(e,"long"),a=n.getFormattedString(t.totalSize,"long"),o="";return e<1e6&&(o="Displaying "),"".concat(o).concat(r," of ").concat(a)}return null}initSearchTable(){var e=this.props.table;if(e!=null){var t=e.copy();this.searchTablePromise=t,this.searchTablePromise.then(n=>{this.searchTablePromise===t?(this.setState({table:n}),this.searchTablePromise=void 0):n.close()})}}handleListChange(e,t){this.setState({selectedValues:e,invertSelection:t});var n=this.props.onChange;n(e,t)}handleSearchChange(e){var t=e.target.value;this.setState({searchText:t})}handleSelectAllClick(){this.resetSelection(!0)}handleClearAllClick(){this.resetSelection(!1)}handleUpdateFilterTimeout(){this.updateFilterTimer=void 0,this.updateTableFilter()}resetSelection(e){var t=[];this.setState({invertSelection:e,selectedValues:t});var n=this.props.onChange;n(t,e)}startUpdateFilterTimer(){this.stopUpdateFilterTimer(),this.updateFilterTimer=setTimeout(this.handleUpdateFilterTimeout,Dt.searchDebounceTime)}stopUpdateFilterTimer(){this.updateFilterTimer!=null&&(clearTimeout(this.updateFilterTimer),this.updateFilterTimer=void 0)}updateTableFilter(){var e=this.state,t=e.table,n=e.searchText,r=this.props.timeZone,a=this.tableUtils,o=t==null?void 0:t.columns[0],s=[];if(o!=null){var l;if(n.length>0){var u=null;_.isCharType(o.type)?u=a.makeQuickFilter(o,n):_.isTextType(o.type)?u=a.makeQuickFilter(o,"~".concat(n),r):u=a.makeQuickFilter(o,">=".concat(n),r),u!=null?s.push(u):l="Invalid search text"}this.setState({filters:s,error:l})}}render(){var e=this.state,t=e.error,n=e.filters,r=e.invertSelection,a=e.selectedValues,o=e.searchText,s=e.table,l=this.props,u=l.dh,h=l.formatter,c=l.showSearch,g=this.getColumnName(),m=this.getDisplayedValueText(),p=g?"Find ".concat(g,"..."):"";return d.jsxs("div",{className:"advanced-filter-creator-select-value",children:[d.jsxs("div",{className:c?"form-group":"",children:[d.jsx("label",{htmlFor:"advanced-filter-creator-select-value-input",children:"Select Values"}),c&&d.jsx("input",{type:"text",className:ee("form-control",{"is-invalid":t!=null}),id:"advanced-filter-creator-select-value-input",placeholder:p,value:o,onChange:this.handleSearchChange})]}),d.jsx(Ot,{dh:u,table:s,filters:n,invertSelection:r,selectedValues:a,formatter:h,onChange:this.handleListChange}),d.jsxs("div",{className:"advanced-filter-creator-select-meta-row",children:[d.jsxs("div",{children:[d.jsx(te,{kind:"ghost",onClick:this.handleSelectAllClick,children:"Select All"}),d.jsx(te,{kind:"ghost",onClick:this.handleClearAllClick,children:"Clear"})]}),d.jsx(Mn,{in:m!=null,mountOnEnter:!0,unmountOnExit:!0,children:d.jsx("div",{className:"row-count-info",children:m})})]})]})}}Rt(Dt,"searchDebounceTime",250);Rt(Dt,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});function lt(i,e,t){return(e=rl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function rl(i){var e=al(i,"string");return typeof e=="symbol"?e:e+""}function al(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var vt=Te.module("AdvancedFilterCreator");class ke extends T.PureComponent{static makeFilterItem(){return{key:Tn()}}constructor(e){var t,n;super(e),lt(this,"focusTrapContainer",void 0),lt(this,"debounceTimeout",void 0),lt(this,"valuesTablePromise",void 0),lt(this,"getFilterTypes",Ft(m=>_.getFilterTypes(m))),this.handleAddAnd=this.handleAddAnd.bind(this),this.handleAddOr=this.handleAddOr.bind(this),this.handleChangeFilterOperator=this.handleChangeFilterOperator.bind(this),this.handleDone=this.handleDone.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterDelete=this.handleFilterDelete.bind(this),this.handleSelectValueChange=this.handleSelectValueChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSortDown=this.handleSortDown.bind(this),this.handleSortUp=this.handleSortUp.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleFocusTrapStart=this.handleFocusTrapStart.bind(this),this.handleFocusTrapEnd=this.handleFocusTrapEnd.bind(this),this.handleUpdateTimeout=this.handleUpdateTimeout.bind(this),this.focusTrapContainer=De.createRef();var r=e.model,a=e.column,o=e.options,s=o.filterOperators,l=o.invertSelection,u=o.selectedValues,h=(t=(n=o.filterItems)===null||n===void 0?void 0:n.map(m=>{var p=m.selectedType,v=m.value;return{selectedType:p,value:v,key:Tn()}}))!==null&&t!==void 0?t:[];h.length===0&&h.push(ke.makeFilterItem()),s==null&&(s=[]),l==null&&(l=!0),u==null&&(u=[]);var c=r.getColumnIndexByName(a.name);q(c);var g=r.isColumnSortable(c);this.state={filterItems:h,filterOperators:s,invertSelection:l,selectedValues:u,valuesTableError:null,valuesTable:void 0,isSortable:g}}componentDidMount(){this.initValuesTable()}componentWillUnmount(){this.debounceTimeout!=null&&(clearTimeout(this.debounceTimeout),this.sendUpdate()),this.valuesTablePromise!=null&&this.valuesTablePromise.cancel()}getFilterChangeHandler(e){return this.handleFilterChange.bind(this,e)}getFilterDeleteHandler(e){return this.handleFilterDelete.bind(this,e)}initValuesTable(){var e=this.props,t=e.model,n=e.column;if(!t.isValuesTableAvailable){vt.debug("No values table for this model, just ignore");return}this.valuesTablePromise=_.makeCancelableTablePromise(t.valuesTable(n)),this.valuesTablePromise.then(r=>{var a;if(!((a=r.columns[0].isSortable)!==null&&a!==void 0)||a){var o=r.columns[0].sort().asc();r.applySort([o])}this.setState({valuesTable:r})}).catch(r=>{Me.isCanceled(r)||(vt.error("Unable to open values table",r),this.setState({valuesTableError:r}))})}handleFocusTrapEnd(){var e;((e=this.focusTrapContainer)===null||e===void 0||(e=e.current)===null||e===void 0?void 0:e.querySelector("button,select,input,textarea")).focus()}handleFocusTrapStart(){var e,t=(e=this.focusTrapContainer)===null||e===void 0||(e=e.current)===null||e===void 0?void 0:e.querySelectorAll("button,select,input,textarea");if(t&&t.length>0){var n=t[t.length-1];n.focus()}}handleAddAnd(){var e=this.state,t=e.filterItems,n=e.filterOperators;t=t.concat(ke.makeFilterItem()),n=n.concat(gt.and),this.setState({filterItems:t,filterOperators:n})}handleAddOr(){var e=this.state,t=e.filterItems,n=e.filterOperators;t=t.concat(ke.makeFilterItem()),n=n.concat(gt.or),this.setState({filterItems:t,filterOperators:n})}handleChangeFilterOperator(e,t){var n=this.state.filterOperators;n=[...n],eo(t),n[e]=t,this.setState({filterOperators:n}),this.startUpdateTimer()}handleFilterChange(e,t,n){var r=this.state.filterItems;r=[...r];var a=r[e].key;r[e]={key:a,selectedType:t,value:n},this.setState({filterItems:r}),this.startUpdateTimer()}handleFilterDelete(e){var t=this.state,n=t.filterItems,r=t.filterOperators;n=[...n],r=[...r],e<n.length&&n.splice(e,1),e<r.length?r.splice(e,1):e===r.length&&r.splice(r.length-1,1),n.length===0&&n.push(ke.makeFilterItem()),this.setState({filterItems:n,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){vt.debug("Resetting Advanced Filter"),this.setState({filterItems:[ke.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=xt.isModifierKeyDown(e);this.sortTable(_.sortDirection.descending,t)}handleSortUp(e){var t=xt.isModifierKeyDown(e);this.sortTable(_.sortDirection.ascending,t)}handleSubmit(e){vt.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){vt.debug("Submitting and Closing Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate();var t=this.props.onDone;t(),e.preventDefault()}handleUpdateTimeout(){this.debounceTimeout=void 0,this.sendUpdate()}shouldShowAddFilter(){var e=this.state.filterItems;if(e.length===0)return!1;var t=e[e.length-1],n=t.selectedType,r=t.value;return n!=null&&n.length>0&&r!=null&&r.length>0}sortTable(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.props,r=n.column,a=n.onSortChange,o=this.state.isSortable;o&&a(r,e,t)}startUpdateTimer(){this.stopUpdateTimer(),this.debounceTimeout=setTimeout(this.handleUpdateTimeout,ke.debounceFilterUpdate)}stopUpdateTimer(){this.debounceTimeout!==void 0&&(clearTimeout(this.debounceTimeout),this.debounceTimeout=void 0)}sendUpdate(){var e=this.state,t=e.filterItems,n=e.filterOperators,r=e.invertSelection,a=e.selectedValues,o=this.props,s=o.column,l=o.onFilterChange,u=o.model,h=o.tableUtils,c=u.formatter,g=t.filter(f=>{var S=f.selectedType,C=f.value;return S!=null&&C!=null&&C!==""}),m=n.filter((f,S)=>f!=null&&t[S].selectedType!=null&&t[S].value!=null&&t[S].value!=="").slice(0,g.length-1),p={filterItems:g,filterOperators:m,invertSelection:r,selectedValues:a},v=h.makeAdvancedFilter(s,p,c.timeZone);l(s,v,p)}render(){var e=this,t=this.props,n=t.column,r=t.model,a=t.sortDirection,o=t.formatter,s=t.tableUtils,l=t.isMaximized,u=t.onToggleMaximize,h=this.state,c=h.filterItems,g=h.filterOperators,m=h.invertSelection,p=h.selectedValues,v=h.valuesTable,f=h.valuesTableError,S=h.isSortable,C=r.dh,E=r.isValuesTableAvailable,w=_.isBooleanType(n.type),F=_.isDateType(n.type),A=this.getFilterTypes(n.type),y=n.type.substring(n.type.lastIndexOf(".")+1),x=[];if(!w&&A.length)for(var D=function(k){var G=c[k],V=G.key,W=G.selectedType,B=G.value,H=d.jsx(Ln,{column:n,filterTypes:A,onChange:e.getFilterChangeHandler(k),onDelete:e.getFilterDeleteHandler(k),selectedType:W,value:B,formatter:o,tableUtils:s},V);if(x.push(H),k<g.length){var Z=g[k],X=Z===gt.and,re=d.jsxs("div",{className:"form-row justify-content-end advanced-filter-creator-filter-operator",children:[d.jsx(te,{kind:"ghost",className:ee("filter-operator",{active:X}),onClick:()=>e.handleChangeFilterOperator(k,gt.and),children:"AND"}),d.jsx(te,{kind:"ghost",className:ee("filter-operator",{active:!X}),onClick:()=>e.handleChangeFilterOperator(k,gt.or),children:"OR"})]},"filterOperator".concat(V));x.push(re)}},N=0;N<c.length;N+=1)D(N);var I=this.shouldShowAddFilter(),R=d.jsxs("div",{className:ee("form-row justify-content-end add-filter-item",{hidden:!I}),children:[d.jsx("span",{className:"text-muted",children:d.jsx(se,{icon:_n})}),d.jsx(te,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!I,tooltip:"Add filter with AND",children:"AND"}),d.jsx(te,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!I,tooltip:"Add filter with OR",children:"OR"})]},"addFilterItem");return x.push(R),d.jsxs("div",{className:"advanced-filter-creator",role:"presentation",children:[d.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),d.jsxs("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer,children:[d.jsxs("div",{className:"title-bar",children:[d.jsx("h6",{className:"advanced-filter-title",children:"Advanced Filters"}),d.jsxs("div",{className:"advanced-filter-menu-buttons",children:[d.jsx(te,{kind:"ghost",className:ee("sort-operator",{active:a===_.sortDirection.descending}),onClick:this.handleSortDown,icon:vi,tooltip:S?"Sort ".concat(n.name," Descending"):"Not sortable",disabled:!S}),d.jsx(te,{kind:"ghost",className:ee("sort-operator",{active:a===_.sortDirection.ascending}),onClick:this.handleSortUp,icon:d.jsx(se,{icon:vi,rotation:180}),tooltip:S?"Sort ".concat(n.name," Ascending"):"Not sortable",disabled:!S}),d.jsx(te,{kind:"ghost",className:ee("sort-operator",{active:l}),onClick:u,icon:l?pa:Ca,tooltip:l?"Restore dialog size":"Maximize dialog"})]})]}),d.jsx("hr",{}),d.jsxs("div",{className:"advanced-filter-column-name",children:[n.name," ",d.jsxs("span",{className:"column-type",children:["(",y,")"]})]}),x,E&&f==null&&d.jsxs(d.Fragment,{children:[!w&&d.jsx("hr",{}),d.jsx("div",{className:"form-group advanced-filter-values-group",children:d.jsx(Dt,{dh:C,table:v,onChange:this.handleSelectValueChange,invertSelection:m,selectedValues:p,formatter:o,showSearch:!F,timeZone:o.timeZone})})]}),d.jsxs("div",{className:"form-row justify-content-end",children:[d.jsx(te,{kind:"secondary",className:"mr-2",onClick:this.handleReset,children:"Reset"}),d.jsx(te,{kind:"primary",onClick:this.handleDone,children:"Done"})]})]}),d.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd})]})}}lt(ke,"debounceFilterUpdate",250);lt(ke,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});function Qt(i){var e=i.animation,t=e===void 0?"iris-grid-bottom-bar-slide-up":e,n=i.children,r=i.className,a=i.isShown,o=i.onClick,s=i.onEntering,l=i.onEntered,u=i.onExiting,h=i.onExited,c=T.useRef(null);return d.jsx(En,{in:a,timeout:Rn.transitionMs,classNames:t,onEntering:s,onEntered:l,onExiting:u,onExited:h,mountOnEnter:!0,unmountOnExit:!0,nodeRef:c,children:d.jsx("div",{ref:c,className:ee("iris-grid-bottom-bar",r),role:"presentation",onClick:o,onKeyPress:o,children:n})})}function Ui(i,e){return ul(i)||ll(i,e)||sl(i,e)||ol()}function ol(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
5
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function sl(i,e){if(i){if(typeof i=="string")return Bi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Bi(i,e):void 0}}function Bi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function ll(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function ul(i){if(Array.isArray(i))return i}var dl=3e3,hl=5;function cl(i){var e=i.isSaving,t=e===void 0?!1:e,n=i.onSave,r=i.onDiscard,a=i.discardTooltip,o=i.saveTooltip,s=i.error,l=i.pendingDataErrors,u=i.pendingDataMap,h=i.onEntering,c=i.onEntered,g=i.onExiting,m=i.onExited,p=T.useState(!1),v=Ui(p,2),f=v[0],S=v[1],C=T.useState(!1),E=Ui(C,2),w=E[0],F=E[1],A=T.useRef(),y=Cr(t),x=T.useMemo(()=>l.size===0?s:l.size<=hl?"Key can't be empty (on pending row".concat(l.size>1?"s":""," ").concat(Array.from(l.keys()).join(", ").trim(),")"):"Key can't be empty (on ".concat(l.size," rows)"),[s,l]);T.useEffect(function(){y!=null&&y&&!t&&x==null&&(S(!0),F(!0),A.current=setTimeout(()=>{S(!1)},dl))},[x,t,y]),T.useEffect(function(){A.current&&u.size>0&&(clearTimeout(A.current),S(!1),F(!1))},[u]),T.useEffect(function(){return()=>A.current?clearTimeout(A.current):void 0},[]);var D=u.size,N;return t?N=d.jsx(Yt,{className:"loading-spinner-vertical-align"}):w&&(N=ba),d.jsxs(Qt,{className:"pending-data-bottom-bar",isShown:D>0||f||x!=null,onEntering:h,onEntered:c,onExiting:g,onExited:()=>{F(!1),m&&m()},children:[x!=null&&x!==""&&d.jsxs("div",{className:"error-message",children:[d.jsx(se,{icon:Sa}),d.jsx("span",{children:"".concat(x)})]}),(x==null||x==="")&&d.jsx("div",{className:"status-message",children:D>0&&d.jsx("span",{children:"".concat(D," row").concat(D>1?"s":""," pending")})}),d.jsxs("div",{className:"buttons-container",children:[!t&&!w&&d.jsx(te,{kind:"secondary",onClick:r,tooltip:a,children:"Discard"}),d.jsxs(te,{kind:w?"success":"primary",onClick:n,icon:N,disabled:t||w||x!=null,tooltip:o,children:[t&&"Committing...",!t&&w&&"Success",!t&&!w&&"Commit"]})]})]})}function Hi(i,e,t,n,r,a,o){try{var s=i[a](o),l=s.value}catch(u){return void t(u)}s.done?e(l):Promise.resolve(l).then(n,r)}function fn(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function o(l){Hi(a,n,r,o,s,"next",l)}function s(l){Hi(a,n,r,o,s,"throw",l)}o(void 0)})}}function Ke(i,e,t){return(e=ml(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ml(i){var e=gl(i,"string");return typeof e=="symbol"?e:e+""}function gl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var ye=Te.module("IrisGridCopyHandler");function vl(i){return i.ranges!=null}function fl(i){return i.columnIndex!=null}class Q extends T.Component{static getStatusMessageText(e,t){switch(e){case Q.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Q.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Q.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Q.COPY_STATES.FETCH_RANGES_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Q.COPY_STATES.FETCH_HEADER_IN_PROGRESS:return"Fetching header for clipboard...";case Q.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Q.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Q.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Q.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),Ke(this,"textData",void 0),Ke(this,"hideTimer",void 0),Ke(this,"fetchPromise",void 0),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleCopyClick=this.handleCopyClick.bind(this),this.handleHideTimeout=this.handleHideTimeout.bind(this),this.state={error:void 0,copyState:Q.COPY_STATES.IDLE,buttonState:Q.BUTTON_STATES.COPY,isShown:!1,rowCount:0}}componentDidMount(){var e=this.props.copyOperation;e!=null&&this.startCopy()}componentDidUpdate(e){var t=this.props.copyOperation;e.copyOperation!==t&&this.startCopy()}componentWillUnmount(){this.stopCopy()}startCopy(){ye.debug2("startCopy"),this.stopCopy();var e=this.props.copyOperation;if(e==null){ye.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var t=e.error;if(t!=null){ye.debug("Showing copy error",t),this.setState({isShown:!0,copyState:Q.COPY_STATES.DONE,error:t}),this.startHideTimer();return}if(this.setState({isShown:!0,error:void 0}),vl(e)){var n=e.ranges,r=J.rowCount(n);if(this.setState({rowCount:r}),r>Q.NO_PROMPT_THRESHOLD){this.setState({buttonState:Q.BUTTON_STATES.COPY,copyState:Q.COPY_STATES.CONFIRMATION_REQUIRED});return}}this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){ye.debug2("handleBackgroundClick");var e=this.state.copyState;e===Q.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){ye.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){var e=this;return fn(function*(){if(ye.debug2("handleCopyClick"),e.textData!=null)try{yield e.copyText(e.textData),e.showCopyDone()}catch(t){ye.error("Error copying text",t),e.setState({error:"Unable to copy. Verify your browser permissions."})}else e.startFetch()})()}handleHideTimeout(){ye.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){var t=this;return fn(function*(){ye.debug2("copyText",e),t.textData=e,yield Sr(e)})()}showCopyDone(){this.setState({copyState:Q.COPY_STATES.DONE}),this.startHideTimer()}startFetch(){var e=this;return fn(function*(){e.stopFetch();var t=e.props,n=t.model,r=t.copyOperation;if(fl(r)){var a=r.columnIndex,o=r.columnDepth,s=r.movedColumns;ye.debug("startFetch copyHeader",a,o),e.setState({buttonState:Q.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Q.COPY_STATES.FETCH_HEADER_IN_PROGRESS});var l=z.getModelIndex(a,s),u=n.textForColumnHeader(l,o);if(u===void 0){e.fetchPromise=void 0,e.setState({error:"Invalid column header selected.",copyState:Q.COPY_STATES.DONE});return}e.fetchPromise=Me.makeCancelable(u)}else{var h=r.ranges,c=r.includeHeaders,g=r.userColumnWidths,m=r.movedColumns,p=r.formatValues;ye.debug("startFetch copyRanges",h),e.setState({buttonState:Q.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Q.COPY_STATES.FETCH_RANGES_IN_PROGRESS});var v=ce.getHiddenColumns(g),f=z.getModelRanges(h,m);if(v.length>0){var S=v.map(J.makeColumn);f=J.subtractRangesFromRanges(f,S)}var C=p!=null&&p?(w,F)=>n.displayString(w,F.type,F.name):w=>"".concat(w);e.fetchPromise=Me.makeCancelable(n.textSnapshot(f,c,C))}try{var E=yield e.fetchPromise;e.fetchPromise=void 0;try{yield e.copyText(E),e.showCopyDone()}catch(w){ye.error("Error copying text",w),e.setState({buttonState:Q.BUTTON_STATES.CLICK_TO_COPY,copyState:Q.COPY_STATES.CLICK_REQUIRED})}}catch(w){w instanceof So?ye.debug("User cancelled copy."):(ye.error("Error fetching contents",w),e.fetchPromise=void 0,e.setState({buttonState:Q.BUTTON_STATES.RETRY,copyState:Q.COPY_STATES.FETCH_ERROR}))}})()}stopFetch(){this.fetchPromise&&(ye.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Q.HIDE_TIMEOUT)}stopHideTimer(){this.hideTimer!=null&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}render(){var e=this.props,t=e.onEntering,n=e.onEntered,r=e.onExiting,a=e.onExited,o=this.state,s=o.buttonState,l=o.copyState,u=o.isShown,h=o.rowCount,c=o.error,g=l===Q.COPY_STATES.DONE?"fade":"copy-slide-up",m=Q.getCopyButtonText(s),p=c??Q.getStatusMessageText(l,h),v=l!==Q.COPY_STATES.DONE,f=s===Q.BUTTON_STATES.FETCH_IN_PROGRESS,S=l===Q.COPY_STATES.DONE;return d.jsxs(Qt,{animation:g,isShown:u,className:ee("iris-grid-copy-handler",{"copy-done":S}),onClick:this.handleBackgroundClick,onEntering:t,onEntered:n,onExiting:r,onExited:a,children:[d.jsx("div",{className:"status-message",children:d.jsx("span",{children:p})}),d.jsx(Mn,{in:v,mountOnEnter:!0,unmountOnExit:!0,children:d.jsxs("div",{className:"buttons-container",children:[d.jsx("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick,children:"Cancel"}),d.jsxs(te,{kind:f?"tertiary":"primary",className:ee("btn-copy",{"btn-spinner":f}),onClick:this.handleCopyClick,disabled:f,children:[f&&d.jsx(Yt,{className:"loading-spinner-vertical-align"}),m]})]})})]})}}Ke(Q,"NO_PROMPT_THRESHOLD",1e4);Ke(Q,"HIDE_TIMEOUT",3e3);Ke(Q,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_RANGES_IN_PROGRESS:"FETCH_RANGES_IN_PROGRESS",FETCH_HEADER_IN_PROGRESS:"FETCH_HEADER_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});Ke(Q,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});Ke(Q,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});function zt(i,e,t){return(e=pl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function pl(i){var e=Cl(i,"string");return typeof e=="symbol"?e:e+""}function Cl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Er extends T.PureComponent{constructor(e){super(e),zt(this,"inputField",void 0),zt(this,"initialValue",void 0),zt(this,"debouncedSendUpdate",void 0);var t=e.debounceMs;this.debouncedSendUpdate=Tt(this.sendUpdate.bind(this),t),this.handleCancel=this.handleCancel.bind(this),this.handleChange=this.handleChange.bind(this),this.handleCommit=this.handleCommit.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.inputField=null;var n=e.value;this.initialValue=n,this.state={isChanged:!1,value:n}}componentDidMount(){var e;(e=this.inputField)===null||e===void 0||e.focus()}componentDidUpdate(e){var t=this.props.debounceMs;e.debounceMs!==t&&(this.debouncedSendUpdate.flush(),this.debouncedSendUpdate=Tt(this.sendUpdate.bind(this),t))}componentWillUnmount(){this.debouncedSendUpdate.cancel()}setValue(e){this.initialValue=e,this.setState({value:e})}focus(){var e;(e=this.inputField)===null||e===void 0||e.focus()}handleChange(e){var t=e.target.value;this.setState({value:t,isChanged:!0}),this.debouncedSendUpdate(t)}handleCancel(){this.debouncedSendUpdate.cancel();var e=this.initialValue,t=this.state.isChanged;t&&this.sendUpdate(e);var n=this.props.onDone;n()}handleCommit(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.debouncedSendUpdate.flush();var n=this.props.onDone;n(e,t)}handleFocus(){var e;(e=this.inputField)===null||e===void 0||e.select()}handleBlur(e){var t=e.relatedTarget;t!=null&&t.classList.contains("context-menu-container")?this.handleCommit(!1,!0):t!=null&&t.classList.contains("advanced-filter-button")?this.handleCommit(!1,!1):this.handleCommit(!0,!0)}handleTab(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.debouncedSendUpdate.flush();var t=this.props.onTab;t(e)}handleKeyDown(e){switch(e.key){case"Escape":e.stopPropagation(),e.preventDefault(),this.handleCancel();break;case"Enter":e.stopPropagation(),e.preventDefault(),this.handleCommit();break;case"Tab":e.stopPropagation(),e.preventDefault(),this.handleTab(e.shiftKey);break}}handleContextMenu(e){var t=this.props.onContextMenu;t(e)}sendUpdate(e){var t=this.props.onChange;t(e)}render(){var e=this.props,t=e.className,n=e.style,r=e.showAdvancedFilterButton,a=e.isAdvancedFilterSet,o=e.onAdvancedFiltersTriggered,s=this.state.value;return d.jsxs("div",{style:n,className:"iris-grid-input-autosized-wrapper","data-value":s,children:[d.jsx("input",{ref:l=>{this.inputField=l},className:ee("iris-grid-input-field",t),type:"text",value:s,onBlur:this.handleBlur,onFocus:this.handleFocus,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onContextMenu:this.handleContextMenu,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"}),r&&d.jsx("div",{className:"advanced-filter-button-container",children:d.jsx(te,{kind:"ghost",className:ee("btn-link-icon advanced-filter-button",{"filter-set":a}),onClick:o,onContextMenu:this.handleContextMenu,children:d.jsxs("div",{className:"fa-layers ",children:[d.jsx(se,{icon:dr,className:"filter-solid"}),d.jsx(se,{icon:Fn,className:"filter-light"})]})})})]})}}zt(Er,"defaultProps",{style:{},className:"",value:"",showAdvancedFilterButton:!1,isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});function Sl(i,e,t){return(e=bl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function bl(i){var e=yl(i,"string");return typeof e=="symbol"?e:e+""}function yl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class wl extends nt{constructor(e){super(),Sl(this,"irisGrid",void 0),this.irisGrid=e,this.cursor=null}onDown(e,t){if(e.altKey&&!xt.isModifierKeyDown(e)&&!e.shiftKey){var n=t.state,r=n.mouseX,a=n.mouseY;if(r==null||a==null)return!1;var o=t.getGridPointFromXY(r,a);if(o.column!=null&&o.row!=null)return this.cursor=this.irisGrid.props.copyCursor,!0}return!1}onUp(e,t){return this.cursor===this.irisGrid.props.copyCursor?(this.cursor=null,!0):!1}}function Tl(i,e,t){return(e=El(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function El(i){var e=Rl(i,"string");return typeof e=="symbol"?e:e+""}function Rl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Fl extends nt{constructor(e){super(),Tl(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var t=this.irisGrid.state.selectedRanges;return e.key==="c"&&xt.isModifierKeyDown(e)?(ce.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}function xl(i,e,t){return(e=Ol(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ol(i){var e=Al(i,"string");return typeof e=="symbol"?e:e+""}function Al(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Dl extends nt{constructor(e){super(),xl(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if(tt.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var t=this.irisGrid.state.reverse;return this.irisGrid.reverse(!t),!0}return!1}}function Nl(i,e,t){return(e=_l(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function _l(i){var e=Ml(i,"string");return typeof e=="symbol"?e:e+""}function Ml(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Pl extends nt{constructor(e){super(),Nl(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return tt.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}function Il(i,e){return Vl(i)||Ll(i,e)||kl(i,e)||jl()}function jl(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
6
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kl(i,e){if(i){if(typeof i=="string")return $i(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?$i(i,e):void 0}}function $i(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Ll(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Vl(i){if(Array.isArray(i))return i}var Ul=3e3;function Bl(i){var e=i.children,t=e===void 0?null:e,n=i.onEntering,r=i.onEntered,a=i.onExiting,o=i.onExited,s=T.useState(!1),l=Il(s,2),u=l[0],h=l[1],c=T.useRef(),g=Cr(t),m=T.useCallback(()=>{h(!0),c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{h(!1)},Ul)},[h,c]);return T.useEffect(()=>{g!==t&&t!=null&&m()},[t,g,h,m]),T.useEffect(()=>()=>c.current?clearTimeout(c.current):void 0,[]),d.jsx(Qt,{className:"toast-bottom-bar",isShown:u,onEntering:n,onEntered:r,onExiting:a,onExited:o,children:t})}var Hl=1;function Rr(i){var e=i.model,t=i.top,n=i.bottom,r=i.left,a=i.right,o=i.filter,s=i.formatter,l=i.columnAlignmentMap,u=i.reverse,h=u===void 0?!1:u,c=i.sorts,g=i.customColumns,m=i.movedColumns,p=i.hiddenColumns,v=i.alwaysFetchColumns,f=i.rollupConfig,S=f===void 0?null:f,C=i.totalsConfig,E=C===void 0?null:C,w=i.selectDistinctColumns,F=w===void 0?ae:w,A=i.pendingRowCount,y=A===void 0?0:A,x=i.pendingDataMap,D=x===void 0?Ie:x,N=i.frozenColumns,I=i.formatColumns,R=i.columnHeaderGroups,U=i.partitionConfig,k=i.showExtraGroupColumn,G=e.isTotalsAvailable,V=e.isRollupAvailable;xe(()=>{to(e)&&k!=null&&(e.showExtraGroupColumn=k)},[e,k]);var W=T.useMemo(()=>ce.getModelViewportColumns(e.columns,r,a,m,p,v,Hl),[e.columns,r,a,m,p,v]);return xe(function(){e.filter=o},[e,o]),xe(function(){var H=[...c];h&&H.push(e.dh.Table.reverse()),e.sort=H},[e,c,h]),xe(function(){e.formatter=s},[e,s]),xe(function(){e.columnAlignmentMap=l},[e,l]),xe(function(){e.isCustomColumnsAvailable&&(e.customColumns=g)},[e,g]),xe(function(){e.isFormatColumnsAvailable&&(e.formatColumns=I)},[e,I]),xe(function(){e.setViewport(t,n,W)},[e,t,n,W]),xe(function(){V&&(e.rollupConfig=S)},[e,V,S]),xe(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=F)},[e,F]),xe(function(){G&&(e.totalsConfig=E)},[e,G,E]),xe(function(){e.columnHeaderGroups=R},[e,R]),xe(function(){U&&yt(e)&&(e.partitionConfig=U)},[e,U]),T.useEffect(function(){N&&e.updateFrozenColumns(N)},[e,N]),T.useEffect(function(){e.pendingRowCount=y},[e,y]),T.useEffect(function(){e.pendingDataMap=D},[e,D]),null}Rr.displayName="IrisGridModelUpdater";function Fr(i,e,t){return(e=$l(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function $l(i){var e=Gl(i,"string");return typeof e=="symbol"?e:e+""}function Gl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var pn=Te.module("ColumnStatistics"),Wl={SIZE:"Number of Rows"};class At extends T.Component{static getStatsLabel(e){var t;return(t=Wl[e])!==null&&t!==void 0?t:e.split(" ").map(n=>n[0].toUpperCase()+n.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),Fr(this,"cancelablePromise",void 0),this.handleError=this.handleError.bind(this),this.handleGenerateStatistics=this.handleGenerateStatistics.bind(this),this.handleStatistics=this.handleStatistics.bind(this),this.cancelablePromise=null,this.state={error:null,loading:!1,statistics:null,numRows:0}}componentDidMount(){this.maybeGenerateStatistics()}componentWillUnmount(){this.cancelablePromise&&this.cancelablePromise.cancel()}maybeGenerateStatistics(){var e=this.props,t=e.column,n=e.model,r=n.rowCount-n.pendingRowCount-n.floatingBottomRowCount-n.floatingTopRowCount;this.setState({numRows:r}),!n.isColumnStatisticsAvailable||t.isProxy===!0?this.setState({loading:!1}):r<At.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics()}handleGenerateStatistics(){this.setState({loading:!0});var e=this.props,t=e.column,n=e.model;this.cancelablePromise=Me.makeCancelable(n.columnStatistics(t)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){pn.debug("Received statistics",e);var t=this.props,n=t.model,r=t.onStatistics,a=[];e.statisticsMap.forEach((o,s)=>{a.push({operation:At.getStatsLabel(s),value:o,type:e.getType(s)})}),e.uniqueValues.forEach((o,s)=>{a.push({operation:s,className:"column-statistics-unique-value",value:o,type:"long"})}),this.setState({loading:!1,statistics:a,numRows:n.rowCount-n.pendingRowCount-n.floatingBottomRowCount-n.floatingTopRowCount}),r()}handleError(e){if(e!=null&&Me.isCanceled(e)){pn.debug("Called handleError on a cancelled promise result");return}pn.error("Error generating statistics",e),this.setState({error:e,loading:!1,statistics:null})}render(){var e,t=this.props,n=t.column,r=t.model,a=this.state,o=a.error,s=a.loading,l=a.statistics,u=a.numRows,h=!s&&o==null&&l==null&&r.isColumnStatisticsAvailable,c=[],g=n.type.substring(n.type.lastIndexOf(".")+1),m=n.description===null?null:n.description;if(l!=null)for(var p=0;p<l.length;p+=1){var v=l[p],f=v.operation,S=v.className,C=v.value,E=v.type,w=E?r.displayString(C,E):r.displayString(C,n.type,n.name),F=d.jsxs(De.Fragment,{children:[d.jsx("div",{className:ee("column-statistic-operation",S),children:f}),d.jsx("div",{className:"column-statistic-value",children:w})]},f);c.push(F)}var A=ut(r)&&r.hasExpandableRows?"Expanded Rows":"Number of Rows",y=r.displayString(u,"long"),x=r.getColumnIndexByName(n.name);return d.jsxs("div",{className:"column-statistics",children:[d.jsxs("div",{className:"column-statistics-title",children:[(e=n.displayName)!==null&&e!==void 0?e:n.name,d.jsxs("span",{className:"column-statistics-type",children:[" (",g,")"]}),d.jsx(br,{tooltip:"Copy column name",copy:n.name,isQuiet:!0})]}),m!=null&&d.jsx("div",{className:"column-statistics-description",children:m}),x!=null&&!r.isColumnSortable(x)&&d.jsxs("div",{className:"column-statistics-status",children:[d.jsx(se,{icon:ya,className:"mr-1"}),"Not sortable"]}),x!=null&&!r.isColumnMovable(x)&&d.jsxs("div",{className:"column-statistics-status",children:[d.jsx(se,{icon:r.isColumnFrozen(x)?wa:fi,className:"mr-1"}),r.isColumnFrozen(x)?"Frozen":"Not movable"]}),x!=null&&we(r)&&r.isEditable&&!r.keyColumnSet.has(n.name)&&!r.valueColumnSet.has(n.name)&&d.jsxs("div",{className:"column-statistics-status",children:[d.jsx(se,{icon:fi,className:"mr-1"}),"Not editable"]}),d.jsxs("div",{className:"column-statistics-grid",children:[l==null&&d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"column-statistic-operation",children:A}),d.jsx("div",{className:"column-statistic-value",children:y})]}),c]}),h&&d.jsx(te,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,children:"Generate Stats"}),o!=null&&d.jsx("div",{className:"error-message",children:"".concat(o)}),l&&!s&&d.jsx(te,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:Ta,children:"Refresh"}),s&&d.jsxs("div",{className:"column-statistics-loading",children:[d.jsx(Yt,{className:"loading-spinner-vertical-align"}),"Calculating Stats..."]})]})}}Fr(At,"AUTO_GENERATE_LIMIT",1e5);function zl(i,e,t){return(e=Kl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Kl(i){var e=Yl(i,"string");return typeof e=="symbol"?e:e+""}function Yl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Bt extends T.PureComponent{static createSearchFilter(e,t,n,r,a){var o=a?r.filter(u=>!n.includes(u.name)).map(u=>u.name):n;if(t&&o.length>0){var s=e.FilterValue.ofString(t),l=o.length===r.length?e.FilterCondition.search(s):e.FilterCondition.search(s,r.filter(u=>o.includes(u.name)).map(u=>u.filter()));return l}}constructor(e){super(e),zl(this,"searchField",void 0),this.handleSearchValueChange=this.handleSearchValueChange.bind(this),this.toggleColumn=this.toggleColumn.bind(this),this.selectAll=this.selectAll.bind(this),this.clear=this.clear.bind(this),this.selectNumbers=this.selectNumbers.bind(this),this.searchField=De.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var t=this.props,n=t.onChange,r=t.selectedColumns,a=t.invertSelection;n(e.target.value,r,a)}sendColumnChange(e,t){var n=this.props,r=n.onChange,a=n.value;r(a,e,t)}setInvertSelection(e){var t=this.props,n=t.onChange,r=t.value;n(r,[],e)}toggleColumn(e){var t=this.props,n=t.selectedColumns,r=t.invertSelection;if(n.includes(e))this.sendColumnChange(n.filter(o=>o!==e),r);else{var a=n.slice();a.push(e),this.sendColumnChange(a,r)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var e=this.props.columns;this.sendColumnChange(e.filter(t=>_.isNumberType(t.type)).map(t=>t.name),!1)}render(){var e=this.props,t=e.value,n=e.selectedColumns,r=e.invertSelection,a=e.columns,o=this.state.isConfigureColumnsShown,s=n.length===0&&r===!0||n.length===a.length&&r===!1,l=n.length===0&&r===!1||n.length===a.length&&r===!0,u;return s?u=d.jsxs(d.Fragment,{children:[d.jsx(se,{icon:Ci,mask:un,transform:"shrink-2 down-5 right-7"}),d.jsx(se,{icon:Ea,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}):l?u=d.jsxs(d.Fragment,{children:[d.jsx(se,{icon:Ra,mask:un,transform:"shrink-1 down-5 right-7"}),d.jsx(se,{icon:pi,className:"text-danger",transform:"shrink-4 down-5 right-7"})]}):u=d.jsxs(d.Fragment,{children:[d.jsx(se,{icon:Ci,mask:un,transform:"shrink-2 down-5 right-7"}),d.jsx(se,{icon:Fa,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}),d.jsxs("div",{className:"cross-column-container",children:[d.jsx(bo,{className:"cross-column-search",placeholder:"Search Data...","data-testid":"cross-column-search",value:t,onChange:this.handleSearchValueChange,ref:this.searchField}),d.jsxs("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{o?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})},children:[d.jsx("div",{className:"fa-layers",children:u}),d.jsx(ze,{children:"Configure Columns"}),d.jsx(yr,{isShown:o,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0,children:d.jsxs("div",{className:"cross-column-popup",children:["Searched Columns",d.jsx("div",{className:"cross-column-scroll",children:a.map(h=>h.isProxy===!0?null:d.jsxs(De.Fragment,{children:[d.jsx(yo,{className:"cross-column-checkbox",checked:r?!n.includes(h.name):n.includes(h.name),onChange:()=>this.toggleColumn(h.name),children:h.name}),h.type.substring(h.type.lastIndexOf(".")+1)]},h.name))}),d.jsxs("div",{className:"cross-column-button-bar",children:[d.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectAll,children:"Select All"}),d.jsx("button",{type:"button",className:"btn btn-link",onClick:this.clear,children:"Clear"}),d.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers,children:"Numbers Only"})]}),l&&d.jsxs("p",{className:"text-danger",children:[d.jsx(se,{icon:pi})," Select at least one column to search."]})]})})]})]})}}function Gi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Wi(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gi(Object(t),!0).forEach(function(n){wt(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Gi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function zi(i,e,t,n,r,a,o){try{var s=i[a](o),l=s.value}catch(u){return void t(u)}s.done?e(l):Promise.resolve(l).then(n,r)}function Ht(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function o(l){zi(a,n,r,o,s,"next",l)}function s(l){zi(a,n,r,o,s,"throw",l)}o(void 0)})}}function wt(i,e,t){return(e=ql(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ql(i){var e=Ql(i,"string");return typeof e=="symbol"?e:e+""}function Ql(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var at=Te.module("IrisGridPartitionSelector");class Xl extends T.Component{constructor(e){super(e),wt(this,"pending",void 0),wt(this,"tableUtils",void 0),wt(this,"getCachedChangeCallback",oe(n=>r=>this.handlePartitionSelect(n,r),{max:100})),wt(this,"getCachedFormatValueCallback",oe(n=>r=>this.getDisplayValue(n,r),{max:100})),this.handlePartitionTableClick=this.handlePartitionTableClick.bind(this),this.handleMergeClick=this.handleMergeClick.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this);var t=e.model;this.tableUtils=new _(t.dh),this.pending=new wr,this.state={isLoading:!0,baseTable:null,keysTable:null,partitionTables:null}}componentDidMount(){var e=this;return Ht(function*(){var t=e.props.model;try{var n=yield e.pending.add(t.partitionKeysTable().then(a=>a),a=>a.close()),r=yield e.pending.add(t.partitionBaseTable(),a=>a.close());e.setState({keysTable:n,baseTable:r,isLoading:!1},e.updatePartitionOptions)}catch(a){if(!Me.isCanceled(a))throw a}})()}componentDidUpdate(e){var t=e.partitionConfig,n=this.props.partitionConfig;t!==n&&this.updatePartitionOptions()}componentWillUnmount(){this.pending.cancel();var e=this.state,t=e.keysTable,n=e.baseTable,r=e.partitionTables;n==null||n.close(),t==null||t.close(),r==null||r.forEach(a=>a.close())}handlePartitionTableClick(){at.debug2("handlePartitionTableClick");var e=this.props.partitionConfig;q(e);var t=Wi({},e);t.mode=e.mode==="keys"?"partition":"keys",this.sendUpdate(t)}handleMergeClick(){at.debug2("handleMergeClick");var e=this.props.partitionConfig;q(e);var t=Wi({},e);t.mode=e.mode==="merged"?"partition":"merged",this.sendUpdate(t)}handlePartitionSelect(e,t){var n=this;return Ht(function*(){var r=n.props.partitionConfig;q(r),at.debug("handlePartitionSelect",e,t,r);var a=[...r.partitions];a[e]=t;var o=n.state.baseTable,s=n.state.keysTable;q(o),q(s);try{n.setState({isLoading:!0});var l=yield n.pending.add(o.copy(),g=>g.close()),u=a.slice(0,e+1).map((g,m)=>{var p=l.columns[m];return n.tableUtils.makeNullableEqFilter(p,g)});l.applyFilter(u),l.setViewport(0,0,l.columns);var h=yield n.pending.add(l.getViewportData()),c={partitions:s.columns.map(g=>h.rows[0].get(g)),mode:"partition"};l.close(),n.sendUpdate(c)}catch(g){Me.isCanceled(g)||at.error("Unable to get partition tables",g)}finally{n.setState({isLoading:!1})}})()}sendUpdate(e){at.debug2("sendUpdate",e);var t=this.props.onChange;t(e)}getDisplayValue(e,t){var n=this.props.model;if(t===null)return"(null)";if(t===void 0||t==="")return"";var r=n.partitionColumns[e];return _.isCharType(r.type)&&t.toString().length>0?String.fromCharCode(parseInt(t.toString(),10)):n.displayString(t,r.type,r.name)}updatePartitionOptions(){var e=this;return Ht(function*(){var t=e.props.model,n=e.props.partitionConfig;if(n!=null){var r=e.state.keysTable;q(r);var a=[...n.partitions].map((s,l)=>{var u=r.columns[l];return e.tableUtils.makeNullableEqFilter(u,s)}),o=yield Promise.all(t.partitionColumns.map(function(){var s=Ht(function*(l,u){return r.applyFilter(a.slice(0,u)),r.selectDistinct(t.partitionColumns.slice(0,u+1))});return function(l,u){return s.apply(this,arguments)}}()));e.setState({partitionTables:o})}})()}getPartitionFilters(e){var t=this.props,n=t.model,r=t.partitionConfig;q(r);var a=r.partitions;if(at.debug("getPartitionFilters",r),a.length!==e.length)throw new Error("Invalid partition config set. Expected ".concat(e.length," partitions, but got ").concat(a.length));for(var o=[],s=0;s<a.length;s+=1)if(s===0)o.push([]);else{var l=o[s-1],u=a[s-1],h=n.partitionColumns[s-1],c=[...l,this.tableUtils.makeNullableEqFilter(h,u)];o.push(c)}return o}render(){var e=this.props,t=e.model,n=e.partitionConfig,r=this.state,a=r.isLoading,o=r.partitionTables,s=t.partitionColumns.map((l,u)=>d.jsxs("div",{className:"column-selector",children:[(o==null?void 0:o[u])&&d.jsx(jo,{label:l.name,labelPosition:"side",table:o[u],direction:"bottom",shouldFlip:!1,keyColumn:o[u].columns[u].name,selectedKey:(n==null?void 0:n.mode)==="partition"?n.partitions[u]:null,placeholder:"Select a key",labelColumn:o[u].columns[u].name,onChange:this.getCachedChangeCallback(u),isDisabled:a||n==null}),t.partitionColumns.length-1===u||d.jsx(se,{icon:xa})]},"selector-".concat(l.name)));return d.jsxs("div",{className:"iris-grid-partition-selector",children:[d.jsxs("div",{className:"partition-button-group",children:[d.jsx(te,{onClick:this.handlePartitionTableClick,kind:"inline",tooltip:t.isPartitionAwareSourceTable?"View keys as table":"View underlying partition table",icon:Oa,active:(n==null?void 0:n.mode)==="keys",disabled:a||n==null,children:"Partitions"}),d.jsx(te,{onClick:this.handleMergeClick,kind:"inline",tooltip:"View all partitions as one merged table",icon:d.jsx(se,{icon:Aa,rotation:90}),active:(n==null?void 0:n.mode)==="merged",disabled:a||n==null,children:t.isPartitionAwareSourceTable?"Coalesce":"Merge"})]}),s]})}}function Zl(i,e,t){return(e=Jl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Jl(i){var e=eu(i,"string");return typeof e=="symbol"?e:e+""}function eu(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var tu=Te.module("SelectDistinctBuilder");class xr extends T.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var t=this.props,n=t.model,r=t.selectDistinctColumns;this.state={inputs:r.length>0?[...r]:[""],columns:n.originalColumns}}componentDidUpdate(e,t){var n=this.state.inputs,r=this.props.onChange;if(t.inputs!==n){var a=n.filter(o=>o!=="");et(t.inputs.filter(o=>o!==""),a)||r(a)}}handleAddColumnClick(){this.setState(e=>{var t=e.inputs;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var n=t.inputs;return{inputs:n.length===1&&e===0?[""]:n.filter((r,a)=>e!==a)}})}handleDropdownChanged(e,t){tu.debug("handleDropdownChanged",e,t),this.setState(n=>{var r=n.inputs,a=[...r];return a[e]=t,{inputs:a}})}renderInputs(){var e=this.state,t=e.columns,n=e.inputs;return n.map((r,a)=>{var o=t.filter(s=>{var l=s.name;return l===r||!n.includes(l)}).map(s=>{var l=s.name;return d.jsx("option",{value:l,children:l},l)});return d.jsxs("div",{className:"form-inline px-3 pb-3",children:[d.jsxs(Et,{className:"form-control custom-select col",value:r,onChange:s=>this.handleDropdownChanged(a,s),children:[d.jsx("option",{value:"",children:"Select a column"}),o]}),(n.length>1||r!=="")&&d.jsx(te,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(a)},icon:d.jsx(se,{icon:Nn,transform:"grow-3"}),tooltip:"Delete column"})]},a)})}render(){var e=this.state,t=e.columns,n=e.inputs,r=n.length>=t.length;return d.jsxs("div",{role:"presentation",className:"select-distinct-builder-container h-100",children:[d.jsx("div",{className:"select-distinct-title",children:"Display Unique Values From"}),this.renderInputs(),d.jsx("hr",{}),d.jsx("div",{className:"pt-1 px-3",children:d.jsx(te,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:r,icon:_n,children:"Add Additional Column"})}),d.jsx("div",{className:"select-distinct-builder-footer",children:d.jsx("div",{className:"select-distinct-builder-hint",children:"Display only unique values from the selected table columns. Note that this will reset any filters and display only the selected columns."})})]})}}Zl(xr,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});var nu=Te.module("PluginTableOptionsErrorBoundary");class iu extends De.Component{static getDerivedStateFromError(e){return{error:e}}constructor(e){super(e),this.state={error:null}}componentDidCatch(e,t){var n=this.props.itemType;nu.error('Plugin sidebar page "'.concat(n,'" threw during render; suppressing.'),e,t)}render(){var e=this.state.error,t=this.props,n=t.children,r=t.itemType;return e==null?n:d.jsxs("div",{className:"plugin-sidebar-error",role:"alert","data-testid":"plugin-sidebar-error",children:[d.jsxs("p",{children:[r," failed to render:"]}),d.jsx("p",{children:e.message})]})}}function ru(i,e){return lu(i)||su(i,e)||ou(i,e)||au()}function au(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
7
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ou(i,e){if(i){if(typeof i=="string")return Ki(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Ki(i,e):void 0}}function Ki(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function su(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function lu(i){if(Array.isArray(i))return i}function Vn(i){var e=i.items,t=i.onChange,n=t===void 0?()=>{}:t;return d.jsx(Tr,{items:Array.from(e.entries()).map(r=>{var a=ru(r,2),o=a[0],s=a[1];return{title:Vn.getAdvancedSettingsTitleForKey(o),isOn:s,onChange:l=>n(o,l)}})})}Vn.getAdvancedSettingsTitleForKey=i=>{switch(i){case Kt.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case Kt.LINK_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from an incoming link filter"}};function Yi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ot(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Yi(Object(t),!0).forEach(function(n){uu(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Yi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function uu(i,e,t){return(e=du(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function du(i){var e=hu(i,"string");return typeof e=="symbol"?e:e+""}function hu(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var qi=Te.module("ConditionalFormattingMenu"),Cn=()=>{};function cu(i){var e,t=i.leftHandValue.type;if(i.condition===pe.IS_NULL||i.condition===pe.IS_NOT_NULL||_.isBooleanType(t)&&(i.condition===Fe.IS_TRUE||i.condition===Fe.IS_FALSE))return"";if(!_.isNumberType(t)&&!_.isCharType(t)&&!_.isStringType(t)&&!_.isDateType(t)&&!_.isBooleanType(t))throw new Error("Invalid column type ".concat(t," in getRuleValue"));var n=_.isStringType(t)?'"':"";return(e=io(i.rightHandValue,n))!==null&&e!==void 0?e:""}function mu(i){var e=i.leftHandValue,t=e.name,n=e.type,r=i.formattedColumns,a=r.length>0?"[".concat(r.map(o=>o.name).join(", "),"] = "):"";return _.isNumberType(n)&&i.condition===me.IS_BETWEEN?"".concat(a).concat(i.start," < ").concat(t," < ").concat(i.end):"".concat(a).concat(t," ").concat(no(n,i.condition),`
8
- `).concat(cu(i))}function gu(i){var e=i.rules,t=e===void 0?[]:e,n=i.onChange,r=n===void 0?Cn:n,a=i.onCreate,o=a===void 0?Cn:a,s=i.onSelect,l=s===void 0?Cn:s,u=T.useCallback((m,p,v)=>{m.stopPropagation(),qi.debug("Rule clicked",p,v),l(v)},[l]),h=T.useCallback((m,p,v)=>{m.stopPropagation(),qi.debug("Delete button clicked",p,v);var f=[...t];f.splice(v,1),r(f)},[r,t]),c=T.useCallback(m=>{m.stopPropagation()},[]),g=T.useCallback(m=>{if(Ei.stopDragging(),m.destination!=null){var p=m.source.index,v=m.destination.index,f=[...t],S=t[p];f.splice(p,1),f.splice(v,0,S),r(f)}},[r,t]);return d.jsxs("div",{className:"conditional-formatting-rules",children:[d.jsx(ga,{onDragStart:Ei.startDragging,onDragEnd:g,children:d.jsx(va,{droppableId:"droppable-custom-columns",children:(m,p)=>d.jsxs("div",ot(ot({ref:m.innerRef},m.droppableProps),{},{className:ee("droppable-container",{dragging:p.draggingFromThisWith}),children:[t.length===0&&d.jsx("div",{className:"text-muted pl-2",children:"No formats defined"}),t.map((v,f)=>d.jsx(fa,{draggableId:"".concat(f,"-").concat(v.type),index:f,disableInteractiveElementBlocking:!0,children:(S,C)=>d.jsx("div",ot(ot({role:"menuitem",tabIndex:0,onClick:E=>u(E,v,f),className:ee("draggable-container",{dragging:C.isDragging}),ref:S.innerRef},S.draggableProps),{},{children:d.jsx("div",{className:"conditional-formatting-list-item",children:d.jsxs("div",{className:"formatting-item",children:[d.jsx("div",{className:"rule-icon",children:d.jsx("span",{className:"rule-icon-bg",style:{backgroundColor:On(v.config.style),color:xn(v.config.style)},children:v.type===He.ROWS?"row":"col"})}),d.jsx("div",{className:"rule-title",children:mu(v.config)}),d.jsx(te,{kind:"ghost",className:"ml-1 px-2",onClick:E=>h(E,v,f),icon:Nn,tooltip:"Delete rule"}),d.jsxs("button",ot(ot({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:c},S.dragHandleProps),{},{children:[d.jsx(ze,{children:"Drag to re-order"}),d.jsx(se,{icon:Da})]}))]})})}))},"".concat(f,"-").concat(v.type))),m.placeholder]}))})}),d.jsx("hr",{}),d.jsx(te,{kind:"ghost",onClick:o,icon:_n,children:"Add New Rule"})]})}function Je(i,e){return Cu(i)||pu(i,e)||fu(i,e)||vu()}function vu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
9
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function fu(i,e){if(i){if(typeof i=="string")return Qi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Qi(i,e):void 0}}function Qi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function pu(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Cu(i){if(Array.isArray(i))return i}var Ve=Te.module("ConditionEditor"),Su=()=>{},Sn="value-",$t="column-",bu=[me.IS_EQUAL,me.IS_NOT_EQUAL,me.IS_BETWEEN,me.GREATER_THAN,me.GREATER_THAN_OR_EQUAL,me.LESS_THAN,me.LESS_THAN_OR_EQUAL,me.IS_NULL,me.IS_NOT_NULL],yu=[me.IS_EQUAL,me.IS_NOT_EQUAL,me.GREATER_THAN,me.GREATER_THAN_OR_EQUAL,me.LESS_THAN,me.LESS_THAN_OR_EQUAL],wu=[pe.IS_EXACTLY,pe.IS_NOT_EXACTLY,pe.CONTAINS,pe.DOES_NOT_CONTAIN,pe.STARTS_WITH,pe.ENDS_WITH,pe.IS_NULL,pe.IS_NOT_NULL],Tu=[pe.IS_EXACTLY,pe.IS_NOT_EXACTLY,pe.CONTAINS,pe.DOES_NOT_CONTAIN,pe.STARTS_WITH,pe.ENDS_WITH],Eu=[Re.IS_EXACTLY,Re.IS_NOT_EXACTLY,Re.IS_BEFORE,Re.IS_BEFORE_OR_EQUAL,Re.IS_AFTER,Re.IS_AFTER_OR_EQUAL,Re.IS_NULL,Re.IS_NOT_NULL],Ru=[Re.IS_EXACTLY,Re.IS_NOT_EXACTLY,Re.IS_BEFORE,Re.IS_BEFORE_OR_EQUAL,Re.IS_AFTER,Re.IS_AFTER_OR_EQUAL],Fu=[Fe.IS_TRUE,Fe.IS_FALSE,Fe.IS_EQUAL,Fe.IS_NOT_EQUAL,Fe.IS_NULL,Fe.IS_NOT_NULL],xu=[Fe.IS_EQUAL,Fe.IS_NOT_EQUAL],Ou=[We.IS_EQUAL,We.IS_NOT_EQUAL,We.IS_NULL,We.IS_NOT_NULL],Au=[We.IS_EQUAL,We.IS_NOT_EQUAL];function Du(i,e,t,n){return i===me.IS_NULL||i===me.IS_NOT_NULL||i===me.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&n!=null&&n!==""&&!Number.isNaN(Number.parseFloat(n))||i!==me.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function Or(i){var e=i.column,t=i.columns,n=i.config,r=i.dh,a=i.onChange,o=a===void 0?Su:a,s=e.type,l=T.useState(s),u=Je(l,2),h=u[0],c=u[1],g=T.useState(()=>"".concat(typeof n.rightHandValue=="object"?$t:Sn).concat(n.condition)),m=Je(g,2),p=m[0],v=m[1],f=p.replace(/^(value|column)-/,""),S=p.startsWith($t),C=T.useState(n.rightHandValue),E=Je(C,2),w=E[0],F=E[1],A=T.useState(n.start),y=Je(A,2),x=y[0],D=y[1],N=T.useState(n.end),I=Je(N,2),R=I[0],U=I[1],k=T.useState(!0),G=Je(k,2),V=G[0],W=G[1];s!==h&&(v("".concat(Sn).concat(ro(s))),F(Si(s)),D(void 0),U(void 0),c(s));var B=T.useCallback($=>_.isNumberType(s)?ao($):_.isCharType(s)?oo($):_.isStringType(s)?so($):_.isDateType(s)?lo($):uo($),[s]),H=T.useMemo(()=>{var $=[],j=[];return _.isNumberType(s)?($=bu,j=yu):_.isCharType(s)?($=Ou,j=Au):_.isStringType(s)?($=wu,j=Tu):_.isDateType(s)?($=Eu,j=Ru):_.isBooleanType(s)&&($=Fu,j=xu),[$.map(K=>d.jsx(hi,{children:B(K)},"".concat(Sn).concat(K))),j.map(K=>d.jsx(hi,{children:B(K)},"".concat($t).concat(K)))]},[s,B]),Z=Je(H,2),X=Z[0],re=Z[1],ge=T.useCallback($=>{if($!=null){var j=String($);Ve.debug("handleConditionKeyChange",j);var K=j.startsWith($t);if(K&&typeof w!="object"){var he=t.find(ne=>_.isNumberType(s)?_.isNumberType(ne.type):_.getNormalizedType(s)===_.getNormalizedType(ne.type));F(he!=null?{name:he.name,type:he.type}:void 0)}else!K&&typeof w=="object"&&F(Si(s));v(j)}},[t,s,w]),b=T.useCallback($=>{Ve.debug("handleRightHandValueChange",$),F($)},[]),O=T.useCallback($=>{var j=$.target.value;Ve.debug("handleStartValueChange",j),D(j)},[]),P=T.useCallback($=>{var j=$.target.value;Ve.debug("handleEndValueChange",j),U(j)},[]);T.useEffect(function(){var j=!0;f===void 0?(Ve.debug("Unable to create formatting rule. Condition is not selected."),j=!1):_.isNumberType(e.type)&&(f===me.IS_BETWEEN||typeof w!="object")&&!Du(f,typeof w=="string"?w:void 0,x,R)?(Ve.debug("Unable to create formatting rule. Invalid value",w),j=!1):_.isDateType(e.type)&&typeof w!="object"&&!ho(r,f,w)?(Ve.debug("Unable to create formatting rule. Invalid date condition",w),j=!1):_.isCharType(e.type)&&typeof w!="object"&&f!==We.IS_NULL&&f!==We.IS_NOT_NULL&&(w===void 0||w.length!==1)?(Ve.debug("Unable to create formatting rule. Char value must be a single character",w),j=!1):_.isBooleanType(e.type)&&typeof w!="object"&&(f===Fe.IS_EQUAL||f===Fe.IS_NOT_EQUAL)&&w!=="true"&&w!=="false"&&w!=="null"&&(Ve.debug("Unable to create formatting rule. Boolean comparison requires a column, true, false, or null",w),j=!1),W(j),o({condition:f,rightHandValue:w,start:x,end:R},j)},[o,e.type,r,f,w,x,R]);var Y=T.useMemo(()=>{if(s===void 0||f===pe.IS_NULL||f===pe.IS_NOT_NULL||f===Fe.IS_TRUE||f===Fe.IS_FALSE)return null;var $=typeof w=="object",j=!$&&!V&&w!==void 0&&w!=="",K=t.filter(ne=>_.isNumberType(s)?_.isNumberType(ne.type):_.getNormalizedType(s)===_.getNormalizedType(ne.type));if(_.isNumberType(s)&&f===me.IS_BETWEEN){var he=!$&&!V&&(x!==void 0&&x!==""||R!==void 0&&R!=="");return d.jsxs("div",{className:"d-flex flex-row",children:[d.jsx("input",{type:"number",className:ee("form-control","d-flex","mr-2",{"is-invalid":he}),placeholder:"Start value",value:x??"",onChange:O}),d.jsx("input",{type:"number",className:ee("form-control","d-flex",{"is-invalid":he}),placeholder:"End value",value:R??"",onChange:P})]})}return S?d.jsx(Pn,{"aria-label":"Select a column",selectedKey:typeof w=="object"?w.name:null,onChange:ne=>{if(ne!=null){var ve=K.find(Ne=>Ne.name===String(ne));ve!=null&&b({name:ve.name,type:ve.type})}},children:K.map(ne=>ne.name)}):d.jsx("input",{type:_.isNumberType(s)?"number":"text",className:ee("form-control",{"is-invalid":j}),value:typeof w=="string"?w:"",placeholder:"Enter a value",onChange:ne=>b(ne.target.value)})},[t,s,f,w,x,R,V,b,O,P,S]);return d.jsxs("div",{className:"condition-editor mb-2",children:[d.jsxs(ko,{selectedKey:p,"aria-label":"Select condition","data-testid":"condition-select",width:"100%",UNSAFE_className:"mb-2",onChange:ge,children:[d.jsx(Ri,{title:"Value",children:X}),d.jsx(Ri,{title:"Column",children:re})]}),Y]})}function Gt(i,e){return Pu(i)||Mu(i,e)||_u(i,e)||Nu()}function Nu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
10
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _u(i,e){if(i){if(typeof i=="string")return Xi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Xi(i,e):void 0}}function Xi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Mu(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Pu(i){if(Array.isArray(i))return i}var Iu=Te.module("StyleEditor"),ju="#fcfcfa",ku="#f0f0ee",Lu="#1a171a",Vu=200,Uu=()=>{};function Ar(i){var e,t,n=i.config,r=i.onChange,a=r===void 0?Uu:r,o=T.useState(n.type),s=Gt(o,2),l=s[0],u=s[1],h=T.useState((e=(t=n.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:ju),c=Gt(h,2),g=c[0],m=c[1],p=T.useState(!1),v=Gt(p,2),f=v[0],S=v[1],C=T.useState(Vu),E=Gt(C,2),w=E[0],F=E[1],A=T.useRef(null),y=T.useCallback(k=>{var G=k.target.value;Iu.debug("handleBackgroundChange",G),m(G)},[]),x=T.useCallback(()=>{f&&S(!1)},[f]),D=T.useCallback(()=>{f||I(),S(!f)},[f]),N=T.useMemo(()=>[Pe.NO_FORMATTING,Pe.POSITIVE,Pe.NEGATIVE,Pe.WARN,Pe.NEUTRAL,Pe.ACCENT_1,Pe.ACCENT_2,Pe.CUSTOM],[]);function I(){A.current&&F(A.current.getBoundingClientRect().width)}T.useEffect(function(){a({type:l,customConfig:{color:Na.isDark(g)?ku:Lu,background:g}})},[a,l,g]);var R=T.useCallback(()=>{for(var k=[],G=function(){var B=N[V],H="option-".concat(V,"-").concat(B);k.push(d.jsxs(te,{kind:"inline",className:"style-option-btn",onClick:()=>{u(B),S(!1)},style:{color:xn({type:B}),background:On({type:B})},children:[B===l&&d.jsx(se,{icon:_a,className:"mr-2"}),B!==l&&d.jsx("span",{className:"mr-4"}),bi(B)]},H))},V=0;V<N.length;V+=1)G();return k},[N,l]),U=T.useCallback(()=>d.jsx("div",{className:"style-menu-container",role:"presentation",style:{width:w},children:d.jsx("div",{className:"style-options",children:R()})}),[w,R]);return d.jsxs("div",{className:"style-editor",children:[d.jsxs("div",{className:"mb-2",ref:A,children:[d.jsx("label",{className:"mb-0 mt-1",children:"Style"}),d.jsxs(te,{kind:"inline",className:"cs-dropdown custom-select",style:{color:xn({type:l}),background:On({type:l})},onClick:D,children:[bi(l),d.jsx(wo,{isShown:f,actions:{menuElement:U()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:x,menuStyle:{maxWidth:"100rem"}})]})]}),l===Pe.CUSTOM&&d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0",children:"Background"}),d.jsx("input",{type:"color",value:g,className:"custom-select color-select",onChange:y})]})]})}function ft(i,e){return Gu(i)||$u(i,e)||Hu(i,e)||Bu()}function Bu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
11
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Hu(i,e){if(i){if(typeof i=="string")return Zi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Zi(i,e):void 0}}function Zi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function $u(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Gu(i){if(Array.isArray(i))return i}function Ji(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Dr(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ji(Object(t),!0).forEach(function(n){Wu(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ji(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Wu(i,e,t){return(e=zu(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function zu(i){var e=Ku(i,"string");return typeof e=="symbol"?e:e+""}function Ku(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var pt=Te.module("MultiColumnFormatEditor"),Yu=()=>{};function qu(i){var e=i[0],t=e.type,n=e.name,r={type:t,name:n},a=Dr({leftHandValue:r,formattedColumns:[],style:fr()},qt(t));return a}function Qu(i){var e,t=i.columns,n=i.config,r=n===void 0?qu(t):n,a=i.dh,o=i.onChange,s=o===void 0?Yu:o,l=T.useState((e=t.find(H=>H.name===r.leftHandValue.name&&H.type===r.leftHandValue.type))!==null&&e!==void 0?e:t[0]),u=ft(l,2),h=u[0],c=u[1],g=T.useState(()=>{var H=r.formattedColumns,Z=r.leftHandValue,X=H.length>1||H.length===1&&H[0].name!==Z.name;return X?H.map(re=>{var ge;return(ge=t.find(b=>b.name===re.name&&b.type===re.type))!==null&&ge!==void 0?ge:t[0]}):[]}),m=ft(g,2),p=m[0],v=m[1],f=T.useMemo(()=>p.length>0?p:[h],[p,h]),S=T.useState(vr(r)),C=ft(S,2),E=C[0],w=C[1],F=T.useState(!1),A=ft(F,2),y=A[0],x=A[1],D=T.useState(r.style),N=ft(D,2),I=N[0],R=N[1],U=T.useCallback(H=>{var Z=t.find(X=>{var re=X.name;return re===H});Z!==void 0?(c(Z),h.type!==Z.type&&(w(qt(Z.type)),x(!1))):pt.error("Column ".concat(H," not found."))},[t,h]),k=T.useCallback(H=>{if(H!=="all"){var Z=[...H].map(X=>t.find(re=>re.name===String(X))).filter(X=>X!==void 0);v(Z)}},[t]),G=T.useCallback((H,Z)=>{pt.debug("handleConditionChange",H,Z),w(H),x(Z)},[]),V=T.useCallback(H=>{pt.debug("handleStyleChange",H),R(H)},[]);T.useEffect(function(){var Z=y;h===void 0&&(pt.debug("Column is not selected, invalidating update."),Z=!1),(I===void 0||I.type===Pe.NO_FORMATTING)&&(pt.debug("Style is not selected, invalidating update."),Z=!1);var X=h.type,re=h.name,ge={type:X,name:re};s(Dr({leftHandValue:ge,formattedColumns:f.map(b=>{var O=b.type,P=b.name;return{type:O,name:P}}),style:I},E),Z)},[s,h,f,I,E,y]);var W=T.useMemo(()=>t.map(H=>{var Z=H.name;return Z}),[t]),B=T.useMemo(()=>f.map(H=>H.name),[f]);return d.jsxs("div",{className:"conditional-rule-editor form",children:[d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0",children:"Format Cell If"}),d.jsx(Pn,{"aria-label":"Select column to format",defaultSelectedKey:h==null?void 0:h.name,onChange:U,children:W})]}),h!==void 0&&d.jsxs(d.Fragment,{children:[d.jsx(Or,{dh:a,column:h,columns:t,config:E,onChange:G}),d.jsx(Ar,{config:I,onChange:V})]}),d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0 mt-1",children:"Apply to Columns"}),d.jsx(Lo,{"aria-label":"Select columns to apply formatting to",width:"100%",selectedKeys:B,onChange:k,children:W})]})]})}function Wt(i,e){return ed(i)||Ju(i,e)||Zu(i,e)||Xu()}function Xu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
12
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Zu(i,e){if(i){if(typeof i=="string")return er(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?er(i,e):void 0}}function er(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Ju(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function ed(i){if(Array.isArray(i))return i}function tr(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Nr(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?tr(Object(t),!0).forEach(function(n){td(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):tr(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function td(i,e,t){return(e=nd(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function nd(i){var e=id(i,"string");return typeof e=="symbol"?e:e+""}function id(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Ct=Te.module("RowFormatEditor"),rd=()=>{};function ad(i){var e=i[0],t=e.type,n=e.name,r={type:t,name:n},a=Nr({leftHandValue:r,formattedColumns:[],style:fr()},qt(t));return a}function od(i){var e,t=i.columns,n=i.config,r=n===void 0?ad(t):n,a=i.dh,o=i.onChange,s=o===void 0?rd:o,l=T.useState((e=t.find(R=>R.name===r.leftHandValue.name&&R.type===r.leftHandValue.type))!==null&&e!==void 0?e:t[0]),u=Wt(l,2),h=u[0],c=u[1],g=T.useState(vr(r)),m=Wt(g,2),p=m[0],v=m[1],f=T.useState(!1),S=Wt(f,2),C=S[0],E=S[1],w=T.useState(r.style),F=Wt(w,2),A=F[0],y=F[1],x=T.useCallback(R=>{var U=t.find(k=>{var G=k.name;return G===R});U!==void 0?(c(U),h.type!==U.type&&(v(qt(U.type)),E(!1))):Ct.error("Column ".concat(R," not found."))},[t,h]),D=T.useCallback((R,U)=>{Ct.debug("handleConditionChange",R,U),v(R),E(U)},[]),N=T.useCallback(R=>{Ct.debug("handleStyleChange",R),y(R)},[]);T.useEffect(function(){if(h===void 0){Ct.debug("Column is not selected, skip update.");return}if(A===void 0){Ct.debug("Style is not selected, skip update.");return}var U=h.type,k=h.name,G={type:U,name:k};s(Nr({leftHandValue:G,formattedColumns:[],style:A},p),C)},[s,h,A,p,C]);var I=T.useMemo(()=>t.map(R=>{var U=R.name;return U}),[t]);return d.jsxs("div",{className:"conditional-rule-editor form",children:[d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0",children:"Format Row If"}),d.jsx(Pn,{"aria-label":"Select column to format row by",defaultSelectedKey:h==null?void 0:h.name,onChange:x,children:I})]}),h!==void 0&&d.jsxs(d.Fragment,{children:[d.jsx(Or,{column:h,columns:t,config:p,dh:a,onChange:D}),d.jsx(Ar,{config:A,onChange:N})]})]})}function bn(i,e){return dd(i)||ud(i,e)||ld(i,e)||sd()}function sd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
13
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ld(i,e){if(i){if(typeof i=="string")return nr(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?nr(i,e):void 0}}function nr(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function ud(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function dd(i){if(Array.isArray(i))return i}var yn=Te.module("ConditionalFormatEditor"),wn=()=>{};function hd(i){switch(i){case He.CONDITIONAL:return d.jsx(Uo,{});case He.ROWS:return d.jsx(Vo,{})}}function cd(i){switch(i){case He.CONDITIONAL:return"Conditional";case He.ROWS:return"Rows"}}var ir=[He.CONDITIONAL,He.ROWS];function md(i){var e,t=i.columns,n=i.dh,r=i.onSave,a=r===void 0?wn:r,o=i.onUpdate,s=o===void 0?wn:o,l=i.onCancel,u=l===void 0?wn:l,h=i.rule,c=t.filter(co),g=T.useState((e=h==null?void 0:h.type)!==null&&e!==void 0?e:ir[0]),m=bn(g,2),p=m[0],v=m[1],f=T.useState(h),S=bn(f,2),C=S[0],E=S[1],w=T.useState(!1),F=bn(w,2),A=F[0],y=F[1],x=T.useCallback(()=>{u()},[u]),D=T.useCallback(()=>{if(C===void 0){yn.error("Rule is not defined.");return}a(C)},[a,C]),N=T.useCallback(R=>{yn.debug("handleFormatterChange",R),v(R)},[]),I=T.useCallback((R,U)=>{yn.debug("handleRuleChange",R,U,p);var k={type:p,config:R};E(k),y(U),s(U?k:void 0)},[s,p]);return d.jsxs("div",{className:"conditional-format-editor form",children:[d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0",htmlFor:"formatter-select",children:"Select Formatter"}),d.jsx("div",{className:"formatter-list",children:ir.map((R,U)=>d.jsx("div",{className:"formatter-type",children:d.jsxs("button",{type:"button",className:ee("btn","btn-icon","btn-formatter-type",{active:R===p}),"data-index":U,onClick:()=>N(R),children:[hd(R),cd(R)]})},R))})]}),p===He.CONDITIONAL&&d.jsx(Qu,{columns:c,dh:n,config:C==null?void 0:C.config,onChange:I}),p===He.ROWS&&d.jsx(od,{columns:c,config:C==null?void 0:C.config,dh:n,onChange:I}),d.jsx("hr",{}),d.jsxs("div",{className:"d-flex justify-content-end my-3",children:[d.jsx(te,{kind:"secondary",onClick:x,className:"mr-2",children:"Cancel"}),d.jsx(te,{kind:"primary",onClick:D,disabled:C===void 0||!A,children:"Done"})]})]})}function St(i,e){return pd(i)||fd(i,e)||vd(i,e)||gd()}function gd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
14
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function vd(i,e){if(i){if(typeof i=="string")return rr(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?rr(i,e):void 0}}function rr(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function fd(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function pd(i){if(Array.isArray(i))return i}function Cd(i){var e,t,n=i.text,r=i.isOpen,a=i.onClose,o=T.useState(!1),s=St(o,2),l=s[0],u=s[1],h=T.useState(0),c=St(h,2),g=c[0],m=c[1],p=T.useState(!1),v=St(p,2),f=v[0],S=v[1],C=T.useState(!1),E=St(C,2),w=E[0],F=E[1],A=T.useState(!1),y=St(A,2),x=y[0],D=y[1],N=T.useRef();T.useEffect(function(){if(r){try{JSON.parse(n),D(!0)}catch{D(!1)}F(!1)}},[r,n]),T.useEffect(function(){N.current&&N.current.layout()},[g]),T.useEffect(function(){N.current&&N.current.updateOptions({lineNumbers:f?"on":"off"})},[f]);function I(){S(!f)}function R(){var V,W=(V=N.current)===null||V===void 0?void 0:V.getModel();!x||!W||(w?(W.setValue(n),F(!1)):(W.setValue(JSON.stringify(JSON.parse(n),void 0,2)),F(!0)),U())}function U(){var V,W,B=N.current;B&&S(((V=(W=B.getModel())===null||W===void 0?void 0:W.getLineCount())!==null&&V!==void 0?V:0)>1)}function k(){l&&(N.current=void 0,a())}function G(V){var W;N.current=V,m(V.getContentHeight()),V.onDidContentSizeChange(B=>{var H=B.contentHeight;return m(H)}),U(),(W=document.activeElement)===null||W===void 0||W.blur()}return!r&&!l?null:d.jsxs(hr,{isOpen:r,centered:!0,keyboard:!0,toggle:k,onOpened:()=>u(!0),onClosed:()=>{u(!1),m(0)},className:"cell-overflow-modal",size:"xl",children:[d.jsxs(cr,{toggle:a,children:[d.jsx("h5",{className:"overflow-modal-title",children:"Cell Contents"}),d.jsx(br,{tooltip:"Copy cell contents",copy:(e=(t=N.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:n}),d.jsxs(ci,{isSelected:f,"aria-label":"Toggle line numbers",onChange:I,children:[d.jsx(mi,{UNSAFE_className:"action-button-icon-with-tooltip",children:d.jsx(se,{icon:Ma})}),d.jsx(ze,{children:"Toggle line numbers"})]}),x&&d.jsxs(ci,{isSelected:w,"aria-label":"Format as JSON",onChange:R,children:[d.jsx(mi,{UNSAFE_className:"action-button-icon-with-tooltip",children:d.jsx(se,{icon:Pa})}),d.jsx(ze,{children:"Format as JSON"})]})]}),d.jsx(mr,{style:{height:g},children:d.jsx(mo,{onEditorInitialized:G,settings:{value:n,readOnly:!0,wordWrap:"on",language:x?"typescript":"plaintext",folding:x,padding:{bottom:16},lineNumbers:f?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})})]})}function Sd(i,e){return Td(i)||wd(i,e)||yd(i,e)||bd()}function bd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
15
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function yd(i,e){if(i){if(typeof i=="string")return ar(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?ar(i,e):void 0}}function ar(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function wd(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Td(i){if(Array.isArray(i))return i}var Ed="###,##0",_r=T.forwardRef((i,e)=>{var t=i.gotoRow,n=i.gotoRowError,r=i.gotoValueError,a=i.onGotoRowSubmit,o=i.isShown,s=i.onEntering,l=i.onEntered,u=i.onExiting,h=i.onExited,c=i.model,g=i.onGotoRowNumberChanged,m=i.onClose,p=i.gotoValueSelectedColumnName,v=i.gotoValue,f=i.gotoValueFilter,S=i.onGotoValueSelectedColumnNameChanged,C=i.onGotoValueSelectedFilterChanged,E=i.onGotoValueChanged,w=i.onGotoValueSubmit,F=T.useRef(null),A=T.useRef(null),y=T.useState(!1),x=Sd(y,2),D=x[0],N=x[1],I=[];go(c)&&(I=c.table.columns);var R=c.dh,U=c.rowCount,k=T.useMemo(()=>"goto-row-input-".concat(Tn()),[]),G=b=>{b.key==="Enter"?(b.stopPropagation(),b.preventDefault(),w()):(b.key==="Backspace"||b.key==="Delete")&&(v==="".concat(Number.POSITIVE_INFINITY)||v==="".concat(Number.NEGATIVE_INFINITY))&&X("")},V=b=>{b.key==="Enter"&&(b.stopPropagation(),b.preventDefault(),w(b.shiftKey))},W=c.getColumnIndexByName(p),B=I[W??0],H=B==null?void 0:B.type,Z=_.getNormalizedType(H),X=b=>{E(b??"")};T.useImperativeHandle(e,()=>({focus(){var b;N(!0),(b=F.current)===null||b===void 0||b.select()}}));var re=()=>{if(D&&document.activeElement!==F.current){var b;(b=F.current)===null||b===void 0||b.select()}else if(!D&&document.activeElement!==A.current){var O;(O=A.current)===null||O===void 0||O.select()}};T.useEffect(re,[D]);var ge=()=>{switch(Z){case _.dataType.DECIMAL:case _.dataType.INT:return d.jsx("div",{className:"goto-row-input",children:d.jsx("input",{ref:A,className:ee("form-control",{"is-invalid":r!==""}),onKeyDown:G,placeholder:"value",onChange:b=>{var O=b.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(b.target.value)?X(b.target.value):O==="-i"||O==="-infinity"?X("".concat(Number.NEGATIVE_INFINITY)):(O==="i"||O==="infinity")&&X("".concat(Number.POSITIVE_INFINITY))},value:v,"aria-label":"Value Input"})});case _.dataType.DATETIME:return d.jsx("div",{className:"goto-value-date-time-input",children:d.jsx(Bo,{ref:A,className:ee("form-control","goto-value-date-time-input",{"is-invalid":r!==""}),defaultValue:v,onChange:X,onSubmit:V,"aria-label":"Value Input"})});case _.dataType.STRING:return d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"goto-row-input",children:d.jsxs(Et,{className:"custom-select",onChange:b=>{C(b)},value:f,"aria-label":"filter-type-select",children:[d.jsx("option",{value:Oe.eqIgnoreCase,children:"Equals (case-insensitive)"},Oe.eqIgnoreCase),d.jsx("option",{value:Oe.containsIgnoreCase,children:"Contains (case-insensitive)"},Oe.containsIgnoreCase),d.jsx("option",{value:Oe.eq,children:"Equals"},Oe.eq),d.jsx("option",{value:Oe.contains,children:"Contains"},Oe.contains)]})}),d.jsx("div",{className:"goto-row-input",children:d.jsx("input",{ref:A,className:ee("form-control",{"is-invalid":r!==""}),onKeyDown:V,placeholder:"value",onChange:b=>X(b.target.value),value:v,"aria-label":"Value Input"})})]});case _.dataType.BOOLEAN:return d.jsx("div",{className:"goto-row-input",children:d.jsxs(Et,{className:"custom-select",onChange:b=>{X(b)},value:v,"aria-label":"Value Input",children:[d.jsx("option",{"aria-label":"null value",value:""},"null"),d.jsx("option",{value:"true",children:"true"},"true"),d.jsx("option",{value:"false",children:"false"},"false")]})});default:return d.jsx("div",{className:"goto-row-input",children:d.jsx("input",{ref:A,className:"form-control",onKeyDown:V,placeholder:"value",onChange:b=>X(b.target.value),value:v,"aria-label":"Value Input"})})}};return d.jsx(Qt,{isShown:o,className:ee("goto-row"),onEntering:s,onEntered:()=>{l(),re()},onExiting:u,onExited:h,children:d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"goto-row-row",children:[d.jsxs("div",{className:ee("goto-row-wrapper",{"is-inactive":!D}),onClick:()=>N(!0),onFocus:()=>N(!0),role:"group",children:[d.jsx("label",{className:"goto-row-text",htmlFor:k,children:"Go to row"}),d.jsx("div",{className:"goto-row-input",children:d.jsx("input",{ref:F,"data-testid":"goto-row-input",type:"number",onKeyDown:b=>{b.key==="Enter"&&(b.stopPropagation(),b.preventDefault(),a())},className:ee("form-control",{"is-invalid":n!==""}),placeholder:"Row number",onChange:b=>{g(b)},value:t,id:k})}),d.jsxs("div",{className:"goto-row-text",children:["of"," ",R.i18n.NumberFormat.format(Ed,U)]}),n&&d.jsx("div",{className:"text-danger",children:n})]}),d.jsx("div",{className:"goto-row-close",children:d.jsx(te,{kind:"ghost",onClick:m,children:d.jsx(se,{icon:gr,style:{marginRight:"0"}})})})]}),c.isSeekRowAvailable&&d.jsx("div",{className:"goto-row-row",children:d.jsxs("div",{className:ee("goto-row-wrapper",{"is-inactive":D}),onClick:()=>N(!1),onFocus:()=>N(!1),role:"group",children:[d.jsx("div",{className:"goto-row-text",children:"Go to value"}),d.jsx("div",{className:"goto-row-input",children:d.jsx(Et,{className:"custom-select",onChange:b=>{var O=b;S(O)},value:p,"aria-label":"column-name-select",id:"column-name-select",children:I.map(b=>d.jsx("option",{value:b.name,children:b.name},b.name))})}),ge(),d.jsxs("div",{children:[d.jsx(te,{tooltip:"Previous match",icon:Ia,kind:"ghost",disabled:v==="",onClick:()=>{w(!0)}}),d.jsx(te,{tooltip:"Next match",icon:ja,kind:"ghost",disabled:v==="",onClick:()=>{w(!1)}})]}),r&&d.jsx("div",{className:"text-danger",children:r})]})})]})})});_r.displayName="GotoRow";function Rd(i){var e=i.isOpen,t=i.onClose,n=i.errorMessage,r=To.PASTE.getDisplayText();return d.jsxs(hr,{isOpen:e,toggle:t,centered:!0,children:[d.jsx(cr,{closeButton:!1,children:"No Paste Permission"}),d.jsxs(mr,{children:[d.jsx("p",{children:n}),d.jsxs("p",{children:["You can still use ",r," to paste."]})]}),d.jsx(Eo,{children:d.jsx(te,{kind:"primary",onClick:t,children:"Dismiss"})})]})}function st(i,e){return Ad(i)||Od(i,e)||xd(i,e)||Fd()}function Fd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
16
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xd(i,e){if(i){if(typeof i=="string")return or(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?or(i,e):void 0}}function or(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Od(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e===0){if(Object(t)!==t)return;l=!1}else for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Ad(i){if(Array.isArray(i))return i}function sr(i,e,t,n,r,a,o){try{var s=i[a](o),l=s.value}catch(u){return void t(u)}s.done?e(l):Promise.resolve(l).then(n,r)}function bt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function o(l){sr(a,n,r,o,s,"next",l)}function s(l){sr(a,n,r,o,s,"throw",l)}o(void 0)})}}function lr(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ue(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?lr(Object(t),!0).forEach(function(n){M(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):lr(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function M(i,e,t){return(e=Dd(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Dd(i){var e=Nd(i,"string");return typeof e=="symbol"?e:e+""}function Nd(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var L=Te.module("IrisGrid"),_d=500,Md=500,Pd=250,Id=250,jd=250,Dn=Object.freeze({aggregations:ae,showOnTop:!1}),kd="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function ur(i){var e=i.advancedFilters,t=i.aggregationSettings,n=i.customColumns,r=i.quickFilters,a=i.reverse,o=i.rollupConfig,s=i.searchFilter,l=i.selectDistinctColumns,u=i.sorts;return e.size===0&&t.aggregations.length===0&&n.length===0&&r.size===0&&!a&&o==null&&s==null&&l.length===0&&u.length===0}class Be extends T.Component{constructor(e){var t,n,r;super(e),M(this,"grid",void 0),M(this,"lastFocusedFilterBarColumn",void 0),M(this,"lastLoadedConfig",void 0),M(this,"tooltip",void 0),M(this,"pending",void 0),M(this,"globalColumnFormats",void 0),M(this,"dateTimeFormatterOptions",void 0),M(this,"decimalFormatOptions",void 0),M(this,"integerFormatOptions",void 0),M(this,"truncateNumbersWithPound",void 0),M(this,"showEmptyStrings",void 0),M(this,"showNullStrings",void 0),M(this,"showExtraGroupColumn",void 0),M(this,"loadingScrimStartTime",void 0),M(this,"loadingScrimFinishTime",void 0),M(this,"animationFrame",void 0),M(this,"loadingTimer",void 0),M(this,"tableSaver",void 0),M(this,"crossColumnRef",void 0),M(this,"isAnimating",void 0),M(this,"filterInputRef",void 0),M(this,"gotoRowRef",void 0),M(this,"isCopying",void 0),M(this,"toggleFilterBarAction",void 0),M(this,"toggleSearchBarAction",void 0),M(this,"toggleGotoRowAction",void 0),M(this,"discardAction",void 0),M(this,"commitAction",void 0),M(this,"contextActions",void 0),M(this,"tableUtils",void 0),M(this,"keyHandlers",void 0),M(this,"mouseHandlers",void 0),M(this,"lastMetricCalculatorFactory",void 0),M(this,"slideTransitionRef",De.createRef()),M(this,"bottomTransitionRef",De.createRef()),M(this,"getAdvancedMenuOpenedHandler",oe(b=>this.handleAdvancedMenuOpened.bind(this,b),{max:100})),M(this,"getAdvancedMenuToggleMaximizeHandler",oe(b=>this.handleAdvancedFilterToggleMaximize.bind(this,b),{max:100})),M(this,"getCachedAdvancedFilterMenuActions",oe((b,O,P,Y,$,j,K)=>d.jsx(ke,{model:b,column:O,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:P,sortDirection:Y,formatter:$,tableUtils:this.tableUtils,isMaximized:j,onToggleMaximize:K}),{max:50})),M(this,"getCachedOptionItems",oe((b,O,P,Y,$,j,K,he,ne,ve,Ne,Ye,Xt,Nt,_t,Mt,Zt)=>{var Ce=[];return b&&Ce.push({type:ie.CHART_BUILDER,title:"Chart Builder",icon:ka,order:100}),Y&&Ce.push({type:ie.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:La,order:200}),P&&Ce.push({type:ie.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:Va,order:300}),O&&Ce.push({type:ie.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:Ua,order:400}),$&&Ce.push({type:ie.ROLLUP_ROWS,title:"Rollup Rows",icon:Ba,order:500}),j&&Ce.push({type:ie.AGGREGATIONS,title:"Aggregate Columns",icon:Ha,order:600}),K&&Ce.push({type:ie.SELECT_DISTINCT,title:"Select Distinct Values",icon:$a,order:700}),he&&Nt&&Ce.push({type:ie.TABLE_EXPORTER,title:"Download CSV",icon:Ga,order:800}),Zt&&Ce.push({type:ie.ADVANCED_SETTINGS,title:"Advanced Settings",icon:Wa,order:900}),Ce.push({type:ie.QUICK_FILTERS,title:"Quick Filters",subtitle:ne.shortcut.getDisplayText(),icon:Fn,isOn:Ye,onChange:ne.action,order:1e3}),_t&&Ce.push({type:ie.SEARCH_BAR,title:"Search Bar",subtitle:ve.shortcut.getDisplayText(),icon:za,isOn:Xt,onChange:ve.action,order:1100}),Ce.push({type:ie.GOTO,title:"Go to",subtitle:Ne.shortcut.getDisplayText(),icon:Ka,isOn:Mt,onChange:Ne.action,order:1200}),Object.freeze(Ce)},{max:1})),M(this,"getCachedTransformedOptionItems",oe((b,O)=>{if(O==null)return b;var P;try{P=O(b)}catch(j){return L.error("transformTableOptions threw an error; falling back to defaults.",j),b}var Y=new Map;P.forEach(j=>{Y.set(String(j.type),j)});var $=[...Y.values()].map((j,K)=>({item:j,index:K})).sort((j,K)=>{var he,ne;return((he=j.item.order)!==null&&he!==void 0?he:1/0)-((ne=K.item.order)!==null&&ne!==void 0?ne:1/0)||j.index-K.index}).map(j=>{var K=j.item;return K});return Object.freeze($)},{max:1})),M(this,"getCachedHiddenColumns",oe((b,O)=>ce.getHiddenColumns(new Map([...b.initialColumnWidths,...O])),{max:1})),M(this,"getCachedHiddenColumnNames",oe((b,O)=>Object.freeze(b.map(P=>{var Y;return(Y=O[P])===null||Y===void 0?void 0:Y.name}).filter(P=>P!=null)),{max:1})),M(this,"getCachedViewState",oe(b=>Object.freeze({hiddenColumns:b}),{max:1})),M(this,"getAggregationMap",oe((b,O)=>{var P={};return O.forEach(Y=>{var $=Y.operation,j=Y.selected,K=Y.invert;P[$]=dn.getOperationColumnNames(b,$,j,K)}),P},{max:1})),M(this,"getOperationMap",oe((b,O)=>ce.getOperationMap(b,O),{max:1})),M(this,"getOperationOrder",oe(b=>ce.getOperationOrder(b),{max:1})),M(this,"getCachedFormatColumns",oe((b,O,P)=>vo(b,O,P),{max:1e3})),M(this,"getCachedPreviewFormatColumns",oe((b,O,P,Y,$)=>{if(L.debug("getCachedPreviewFormatColumns",P,Y,$),Y!==void 0&&$!==void 0){var j=[...P];return j[$]=Y,this.getCachedFormatColumns(b,O,j)}return this.getCachedFormatColumns(b,O,P)},{max:1})),M(this,"getModelRollupConfig",oe((b,O,P)=>ce.getModelRollupConfig(b,O,P),{max:1})),M(this,"getModelTotalsConfig",oe((b,O,P)=>ce.getModelTotalsConfig(b,O,P),{max:1})),M(this,"getCachedStateOverride",oe((b,O,P,Y,$,j,K,he,ne,ve,Ne,Ye)=>({model:b,theme:O,hoverSelectColumn:P,isFilterBarShown:Y,isSelectingColumn:$,loadingScrimProgress:j,quickFilters:K,advancedFilters:he,sorts:ne,reverse:ve,rollupConfig:Ne,isMenuShown:Ye}),{max:1})),M(this,"getCachedFilter",oe((b,O,P,Y)=>[...b??[],...ce.getFiltersFromFilterMap(O),...ce.getFiltersFromFilterMap(P),...Y!==void 0?[Y]:[]],{max:1})),M(this,"getCachedTheme",oe((b,O,P,Y,$)=>{var j,K=b??Ho(),he=Y>0?(j=O==null?void 0:O.rowFooterWidth)!==null&&j!==void 0?j:K.rowFooterWidth:0,ne=this.state.metricCalculator;ne!=null&&(ne.resetCalculatedColumnWidths(),ne.resetCalculatedRowHeights());var ve={};return $==="compact"?ve=K.density.compact:$==="spacious"&&(ve=K.density.spacious),ue(ue(ue(ue({},K),ve),O),{},{autoSelectRow:!P,rowFooterWidth:he})},{max:1})),M(this,"getCachedKeyHandlers",oe(b=>[...b,...this.keyHandlers].sort((O,P)=>O.order-P.order),{max:1})),M(this,"getCachedMouseHandlers",oe(b=>[...b,...this.mouseHandlers].map(O=>typeof O=="function"?O(this):O),{max:1})),M(this,"getCachedRenderer",oe(b=>b??new $o,{max:1})),M(this,"getAlwaysFetchColumns",oe((b,O,P,Y,$,j)=>{for(var K=[],he=0;he<Y;he+=1)K.push(O[z.getModelIndex(he,P)].name);for(var ne=0;ne<$;ne+=1)K.push(O[z.getModelIndex(O.length-1-ne,P)].name);if(j)for(var ve=j[0];ve<=j[1];ve+=1)K.push(O[z.getModelIndex(ve,P)].name);var Ne=new Set([...b,...K]);return Object.freeze([...Ne])},{max:1})),M(this,"updateSearchFilter",Tt((b,O,P,Y)=>{var $=this.props.model,j=Bt.createSearchFilter($.dh,b,O,P,Y);this.setState({searchFilter:j})},Pd)),M(this,"showViewportLoading",gi(()=>{var b=this.props.model,O=this.state.loadingSpinnerShown;b.isViewportPending&&!O&&this.startLoading("Waiting for viewport...",{loadingCancelShown:!1,loadingBlocksGrid:!1})},_d,{leading:!1,trailing:!0})),M(this,"handleConditionalFormatEditorUpdate",Tt(b=>{this.setState({conditionalFormatPreview:b})},jd)),M(this,"handleDownloadProgressUpdate",gi((b,O)=>{var P=this.state.tableDownloadStatus;P===Ze.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:b,tableDownloadEstimatedTime:O})},Md)),M(this,"getOverflowButtonTooltip",oe(b=>{if(b==null)return null;var O=ue(ue({position:"absolute"},b),{},{pointerEvents:"none"}),P={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return d.jsx("div",{style:O,children:d.jsx(ze,{options:P,ref:this.handleTooltipRef,children:"View full contents"},Date.now())})},{max:1})),M(this,"getExpandCellTooltip",oe(b=>{if(b==null)return null;var O=this.state.expandTooltipDisplayValue,P=this.props.model,Y=ut(P)&&P.isExpandAllAvailable,$=ue(ue({position:"absolute"},b),{},{pointerEvents:"none"}),j={placement:"bottom-start"};return d.jsx("div",{style:$,children:d.jsx(ze,{options:j,ref:this.handleTooltipRef,children:d.jsxs("div",{style:{textAlign:"left"},children:["Click to ",O," row",Y&&d.jsxs(d.Fragment,{children:[d.jsx("br",{}),xt.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children"]})]})},Date.now())})},{max:1})),M(this,"getHoverTooltip",oe(b=>{if(b==null)return null;var O=this.state.hoverDisplayValue,P=ue(ue({position:"absolute"},b),{},{pointerEvents:"none"}),Y={placement:"bottom"};return d.jsx("div",{style:P,children:d.jsx(ze,{options:Y,ref:this.handleTooltipRef,children:d.jsx("div",{className:"link-hover-tooltip",children:O})})})},{max:1})),M(this,"handleGotoValueChanged",b=>{this.setState({gotoValue:b,gotoValueManuallyChanged:!0}),this.debouncedSeekRow(b)}),M(this,"debouncedSeekRow",Tt(b=>{this.seekRow(b)},Id)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedFilterToggleMaximize=this.handleAdvancedFilterToggleMaximize.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handlePending=this.handlePending.bind(this),this.handlePendingCleared=this.handlePendingCleared.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleSchemaChanged=this.handleSchemaChanged.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleColumnAlignmentChange=this.handleColumnAlignmentChange.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.handleViewportUpdated=this.handleViewportUpdated.bind(this),this.handlePendingCommitClicked=this.handlePendingCommitClicked.bind(this),this.handlePendingDiscardClicked=this.handlePendingDiscardClicked.bind(this),this.handleGotoRowSelectedRowNumberSubmit=this.handleGotoRowSelectedRowNumberSubmit.bind(this),this.focusRowInGrid=this.focusRowInGrid.bind(this),this.handleDownloadTable=this.handleDownloadTable.bind(this),this.handleDownloadTableStart=this.handleDownloadTableStart.bind(this),this.handleCancelDownloadTable=this.handleCancelDownloadTable.bind(this),this.handleDownloadCanceled=this.handleDownloadCanceled.bind(this),this.handleDownloadCompleted=this.handleDownloadCompleted.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handleColumnVisibilityChanged=this.handleColumnVisibilityChanged.bind(this),this.handleColumnVisibilityReset=this.handleColumnVisibilityReset.bind(this),this.handleCrossColumnSearch=this.handleCrossColumnSearch.bind(this),this.handleRollupChange=this.handleRollupChange.bind(this),this.handleOverflowClose=this.handleOverflowClose.bind(this),this.handleCloseNoPastePermissionModal=this.handleCloseNoPastePermissionModal.bind(this),this.getColumnBoundingRect=this.getColumnBoundingRect.bind(this),this.handleGotoRowSelectedRowNumberChanged=this.handleGotoRowSelectedRowNumberChanged.bind(this),this.handleGotoValueSelectedColumnNameChanged=this.handleGotoValueSelectedColumnNameChanged.bind(this),this.handleGotoValueSelectedFilterChanged=this.handleGotoValueSelectedFilterChanged.bind(this),this.handleGotoValueChanged=this.handleGotoValueChanged.bind(this),this.handleGotoValueSubmitted=this.handleGotoValueSubmitted.bind(this),this.handleViewportUpdated=this.handleViewportUpdated.bind(this),this.makeQuickFilter=this.makeQuickFilter.bind(this),this.setFilterMap=this.setFilterMap.bind(this),this.handleFrozenColumnsChanged=this.handleFrozenColumnsChanged.bind(this),this.grid=null,this.lastLoadedConfig=null,this.pending=new wr,this.globalColumnFormats=ae,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.showEmptyStrings=!0,this.showNullStrings=!0,this.showExtraGroupColumn=!0,this.tableSaver=null,this.crossColumnRef=De.createRef(),this.isAnimating=!1,this.filterInputRef=De.createRef(),this.gotoRowRef=De.createRef(),this.isCopying=!1,this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:tt.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:tt.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:tt.TABLE.GOTO_ROW},this.discardAction={action:()=>{var b=this.props.model;we(b)&&b.isEditable&&b.pendingDataMap.size>0&&this.discardPending().catch(L.error)},shortcut:tt.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var b=this.props.model;we(b)&&b.isEditable&&b.pendingDataMap.size>0&&b.pendingDataErrors.size===0&&this.commitPending().catch(L.error)},shortcut:tt.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var a=e.aggregationSettings,o=e.conditionalFormats,s=e.customColumnFormatMap,l=e.columnAlignmentMap,u=e.isFilterBarShown,h=e.isSelectingPartition,c=e.partitions,g=e.partitionConfig,m=e.model,p=e.movedColumns,v=e.movedRows,f=e.rollupConfig,S=e.userColumnWidths,C=e.userColumnWidthsByName,E=e.userRowHeights,w=e.showSearchBar,F=e.searchValue,A=e.selectedSearchColumns,y=e.invertSearchColumns,x=e.advancedFilters,D=e.quickFilters,N=e.selectDistinctColumns,I=e.pendingDataMap,R=e.canCopy,U=e.frozenColumns,k=e.columnHeaderGroups,G=e.getMetricCalculator,V=m.dh,W=[new wl(this),new Dl(this),new Pl(this)],B=[new Go(this),new Wo(this),new zo(this),new Ko(this),new Yo(this),new qo(this),new Qo(this),new Xo(this,V),new Zo(this),new Jo(this),new es(this),...R?[new ts(this)]:[]];R&&W.push(new Fl(this));var H=p.length>0?p:m.initialMovedColumns,Z=v.length>0?v:m.initialMovedRows,X=G({userColumnWidths:new Map(S),userColumnWidthsByName:C!=null?new Map(C):void 0,userRowHeights:new Map(E),movedColumns:H,initialColumnWidths:new Map(m==null||(t=m.layoutHints)===null||t===void 0||(t=t.hiddenColumns)===null||t===void 0?void 0:t.map(b=>[m.getColumnIndexByName(b),0]))});this.lastMetricCalculatorFactory=G;var re=A??[],ge=Bt.createSearchFilter(V,F,re,m.columns,y);this.tableUtils=new _(V),this.mouseHandlers=B,this.keyHandlers=W,this.state={isFilterBarShown:u,isSelectingPartition:h,focusedFilterBarColumn:null,metricCalculator:X,metrics:void 0,partitionConfig:g??(c&&c.length?{partitions:c,mode:"partition"}:void 0),quickFilters:D?new Map(D):new Map,advancedFilters:new Map(x),shownAdvancedFilter:null,maximizedAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverse:!1,customColumns:[],selectDistinctColumns:N,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,loadingCancelShown:!1,loadingBlocksGrid:!1,movedColumns:H,movedRows:Z,shownColumnTooltip:null,formatter:new hn(V),isMenuShown:!1,customColumnFormatMap:new Map(s),columnAlignmentMap:new Map(l),conditionalFormats:o,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:w,searchFilter:ge,searchValue:F,selectedSearchColumns:re,invertSearchColumns:y,rollupConfig:f,rollupSelectedColumns:[],aggregationSettings:we(m)&&m.isEditable?ue(ue({},a),{},{showOnTop:!0}):a,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:I??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:U,showOverflowModal:!1,showNoPastePermissionModal:!1,noPastePermissionError:"",overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",hoverTooltipProps:null,hoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(n=(r=m.columns[0])===null||r===void 0?void 0:r.name)!==null&&n!==void 0?n:"",gotoValueSelectedFilter:Oe.eqIgnoreCase,gotoValue:"",gotoValueManuallyChanged:!1,columnHeaderGroups:k??m.initialColumnHeaderGroups}}componentDidMount(){var e=this.props.model;this.initState(),this.startListening(e)}componentDidUpdate(e,t){var n=this.props,r=n.inputFilters,a=n.isSelectingColumn,o=n.settings,s=n.model,l=n.customFilters,u=n.sorts,h=n.getMetricCalculator;s!==e.model&&(this.stopListening(e.model),this.startListening(s)),h!==e.getMetricCalculator&&this.maybeRebuildMetricCalculator();var c=r!==e.inputFilters?r.filter(w=>!e.inputFilters.includes(w)):[];if(c.length>0){var g,m=this.props.advancedSettings,p=(g=m.get(Kt.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&g!==void 0?g:!1;p&&(this.clearGridInputField(),this.clearCrossColumSearch());var v=this.applyInputFilters(c,p);v&&this.startLoading("Filtering...",{resetRanges:!0})}a!==e.isSelectingColumn&&this.resetColumnSelection(),o!==e.settings&&this.updateFormatterSettings(o),l!==e.customFilters&&this.startLoading("Filtering...",{resetRanges:!0}),u!==e.sorts&&this.updateSorts(u);var f=this.loadingScrimStartTime,S=this.loadingScrimFinishTime;f!=null&&S!=null&&window.requestAnimationFrame(()=>{var w=Date.now(),F=w-f,A=S-f,y=Math.min(F/A,1);S<w&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(x=>x.loadingScrimProgress==null?(L.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:y})});var C=this.state.openOptions;if(C!==t.openOptions){var E=w=>w.type===ie.AGGREGATION_EDIT;!C.some(E)&&t.openOptions.some(E)&&this.removeEmptyAggregations()}this.sendStateChange()}componentWillUnmount(){var e=this.props.model;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame),this.showViewportLoading.cancel()}get gridWrapper(){var e,t;return(e=(t=this.grid)===null||t===void 0?void 0:t.canvasWrapper.current)!==null&&e!==void 0?e:null}getKeyHandlers(){var e=this.props.keyHandlers;return this.getCachedKeyHandlers(e)}getMetricState(){var e,t=(e=this.grid)===null||e===void 0?void 0:e.getMetricState();if(t!=null){var n=this.state,r=n.advancedFilters,a=n.hoverSelectColumn,o=n.isFilterBarShown,s=n.isMenuShown,l=n.loadingScrimProgress,u=n.quickFilters,h=n.sorts,c=n.reverse,g=n.rollupConfig,m=this.props,p=m.model,v=m.isSelectingColumn;return ue(ue({},t),this.getCachedStateOverride(p,this.getTheme(),a,o,v,l,u,r,h,c,g,s))}}get renderer(){var e=this.props.renderer;return this.getCachedRenderer(e)}getMouseHandlers(){var e=this.props.mouseHandlers;return this.getCachedMouseHandlers(e)}getValueForCell(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=this.props.model,a=r.dh,o=this.getModelColumn(e),s=this.getModelRow(t);if(n&&o!=null&&s!=null){var l=r.valueForCell(o,s);if(_.isDateType(r.columns[o].type)){var u=r.formatter;return a.i18n.DateTimeFormat.format(kd,l,a.i18n.TimeZone.getTimeZone(u.timeZone))}return l}return n?null:o!=null&&s!=null?r.textForCell(o,s):""}getModelColumn(e){var t=this.state.metrics;q(t);var n=t.modelColumns;return n==null?null:e!=null&&e<0?e:e!=null?n.get(e):null}getModelRow(e){var t=this.state.metrics;q(t);var n=t.modelRows;return n==null?null:e!=null?n.get(e):null}getTheme(){var e,t=this.props,n=t.model,r=t.theme,a=t.density,o=this.context,s=o.theme,l=o.density;return this.getCachedTheme(s,r,(e=we(n)&&n.isEditable)!==null&&e!==void 0?e:!1,n.floatingTopRowCount+n.floatingBottomRowCount,a??l)}getVisibleColumn(e){var t=this.state.movedColumns;return z.getVisibleIndex(e,t)}makeQuickFilter(e,t,n){try{return this.tableUtils.makeQuickFilter(e,t,n)}catch(r){L.error("Error creating quick filter",r)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.props.model,r=this.state,a=r.advancedFilters,o=r.quickFilters,s=t?new Map:new Map(a),l=t?new Map:new Map(o),u=t&&a.size>0;return e.forEach(h=>{var c=h.name,g=h.type,m=h.value,p=n.columns.findIndex(v=>{var f=v.name,S=v.type;return f===c&&S===g});p>=0?(u=s.delete(p)||u,u=this.applyQuickFilter(p,m,l)||u):L.error("Unable to find column for inputFilter",c,g,m)}),u&&this.setState({quickFilters:l,advancedFilters:s}),u}applyQuickFilter(e,t,n){var r=this.props.model,a=r.formatter,o=r.columns[e];if(t!=null&&"".concat(t).trim().length>0){var s=n.get(e);if(s!=null){var l=s.text;if(l===t)return L.debug2("Ignoring change to existing filter"),!1}return n.set(e,{text:t,filter:this.makeQuickFilter(o,t,a.timeZone)}),!0}return n.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,n){L.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",{resetRanges:!0}),this.setState(r=>{var a=r.advancedFilters,o=new Map(a);return t==null?o.delete(e):o.set(e,{filter:t,options:n}),{advancedFilters:o}})}setQuickFilter(e,t,n){L.debug("Setting quick filter",e,t,n),this.startLoading("Filtering...",{resetRanges:!0}),this.setState(r=>{var a=r.quickFilters,o=new Map(a);return o.set(e,{filter:t,text:n}),{quickFilters:o}})}setFilterMap(e){var t;L.debug("setFilterMap",e);var n=this.props.advancedSettings,r=(t=n.get(Kt.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;r&&this.clearAllFilters();var a=this.props.model;e.forEach((o,s)=>{var l=o.columnType,u=o.filterList,h=a.columns.find(p=>p.name===s&&p.type===l);if(h!=null){var c=a.getColumnIndexByName(h.name);q(c);var g=ce.combineFiltersFromList(l,u);if(g.length===0)this.removeQuickFilter(c);else{var m=a.formatter;this.setQuickFilter(c,this.makeQuickFilter(h,g,m.timeZone),"".concat(g))}}})}removeColumnFilter(e){this.startLoading("Filtering...",{resetRanges:!0});var t=Array.isArray(e)?e:[e,e];this.setState(n=>{var r=n.advancedFilters,a=n.quickFilters,o=r?new Map(r):new Map,s=a?new Map(a):new Map;return o.forEach((l,u)=>{u>=t[0]&&u<=t[1]&&o.delete(u)}),s.forEach((l,u)=>{u>=t[0]&&u<=t[1]&&s.delete(u)}),{quickFilters:s,advancedFilters:o}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",{resetRanges:!0}),this.setState(t=>{var n=t.quickFilters,r=new Map(n);return r.delete(e),{quickFilters:r}})}clearAllFilters(){L.debug("Clearing all filters");var e=this.state,t=e.advancedFilters,n=e.quickFilters,r=e.searchFilter;n.size===0&&t.size===0&&r===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",{resetRanges:!0}),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearAllAggregations(){L.debug("Clearing all aggregations"),this.setState({aggregationSettings:Dn})}clearCrossColumSearch(){L.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){var e=this.props.model,t=this.state,n=t.advancedFilters,r=t.quickFilters;if(n.size===0&&r.size===0){L.debug("No filters to rebuild");return}var a=e.columns,o=e.formatter;L.debug("Rebuilding filters");var s=new Map,l=new Map;n.forEach((u,h)=>{var c=u.options,g=a[h],m=this.tableUtils.makeAdvancedFilter(g,c,o.timeZone);s.set(h,{options:c,filter:m})}),r.forEach((u,h)=>{var c=u.text,g=a[h];l.set(h,{text:c,filter:this.makeQuickFilter(g,c,o.timeZone)})}),this.startLoading("Rebuilding filters...",{resetRanges:!0}),this.setState({quickFilters:l,advancedFilters:s})}setFilters(e){var t=e.quickFilters,n=e.advancedFilters;this.setState({quickFilters:t,advancedFilters:n})}updateFormatterSettings(e){var t,n,r,a,o,s,l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,u=yi.getColumnFormats(e),h=yi.getDateTimeFormatterOptions(e),c=(t=e==null?void 0:e.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},g=(n=e==null?void 0:e.defaultIntegerFormatOptions)!==null&&n!==void 0?n:{},m=(r=e==null?void 0:e.truncateNumbersWithPound)!==null&&r!==void 0?r:!1,p=(a=e==null?void 0:e.showEmptyStrings)!==null&&a!==void 0?a:!0,v=(o=e==null?void 0:e.showNullStrings)!==null&&o!==void 0?o:!0,f=(s=e==null?void 0:e.showExtraGroupColumn)!==null&&s!==void 0?s:!0,S=!et(this.globalColumnFormats,u),C=!et(this.dateTimeFormatterOptions,h),E=!et(this.decimalFormatOptions,e==null?void 0:e.defaultDecimalFormatOptions),w=!et(this.integerFormatOptions,g),F=this.truncateNumbersWithPound!==m,A=this.showEmptyStrings!==p,y=this.showNullStrings!==v,x=this.showExtraGroupColumn!==f;(S||C||E||w||F||A||y||x)&&(this.globalColumnFormats=u,this.dateTimeFormatterOptions=h,this.decimalFormatOptions=c,this.integerFormatOptions=g,this.truncateNumbersWithPound=m,this.showEmptyStrings=p,this.showNullStrings=v,this.showExtraGroupColumn=f,this.updateFormatter({},l),C&&l&&this.rebuildFilters())}updateFormatter(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this.state.customColumnFormatMap,a=this.props.model,o=ue({customColumnFormatMap:r},e),s=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...o.customColumnFormatMap.values()],l=new hn(a.dh,s,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound,this.showEmptyStrings,this.showNullStrings);L.debug("updateFormatter",this.globalColumnFormats,s),this.setState(ue(ue({},o),{},{formatter:l}),()=>{n&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var e=this.props.settings;this.updateFormatterSettings(e)}initState(){var e=this.props.model;try{yt(e)&&e.isPartitionRequired?this.loadPartitionsTable(e):this.loadTableState()}catch(t){this.handleTableLoadError(t)}}loadTableState(){var e=this.props,t=e.applyInputFiltersOnInit,n=e.inputFilters,r=e.sorts,a=e.model,o=e.reverse,s=e.reverseType,l=e.customColumns,u=e.searchValue,h=e.selectedSearchColumns,c=e.invertSearchColumns,g=h??[],m=Bt.createSearchFilter(a.dh,u,g,a.columns,c);if(t){var p=n.filter(v=>v.value!=null);this.applyInputFilters(p)}this.setState({sorts:r,reverse:o||s===_.REVERSE_TYPE.POST_SORT,customColumns:l,isReady:!0,searchFilter:m}),this.initFormatter()}loadPartitionsTable(e){var t=this;return bt(function*(){try{var n=t.state.partitionConfig;n||(t.startLoading("Loading partitions...",{loadingCancelShown:!1,resetRanges:!0}),t.initializePartitionConfig(e)),t.setState({isSelectingPartition:!0},t.loadTableState)}catch(r){Me.isCanceled(r)||t.handleTableLoadError(r)}})()}initializePartitionConfig(e){var t=this;return bt(function*(){var n=yield t.pending.add(e.partitionKeysTable(),o=>o.close()),r=e.dh,a=n.columns.map(o=>o.sort().desc());n.applySort(a),n.setViewport(0,0),n.addEventListener(r.Table.EVENT_UPDATED,o=>{try{var s=o.detail;if(s.rows.length===0){t.stopLoading();return}var l=s.rows[0],u=n.columns.map(c=>l.get(c)),h={partitions:u,mode:e.isPartitionAwareSourceTable?"partition":"keys"};n.close(),t.setState({loadingSpinnerShown:!1,partitionConfig:h})}catch(c){n.close(),L.error("Error getting initial partition config",c)}})})()}selectPartitionKeyFromTable(e){var t=this.props.model;if(q(e),yt(t)){var n=this.getRowDataMap(e),r=new Set(t.partitionColumns.map(s=>s.name)),a=Object.entries(n).filter(s=>{var l=st(s,2),u=l[0];return l[1],r.has(u)}).map(s=>{var l=st(s,2);l[0];var u=l[1];return u.value}),o={partitions:a,mode:"partition"};this.setState({isSelectingPartition:!0,partitionConfig:o})}}copyCell(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=this.props.canCopy;if(r){var a=String(this.getValueForCell(e,t,n));Sr(a).catch(o=>L.error("Unable to copy cell",o))}else L.error("Attempted to copyCell for user without copy permission.")}copyColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(e!==null){var n=this.props.canCopy,r=this.state.movedColumns;if(n){var a={columnIndex:e,columnDepth:t,movedColumns:r};this.setState({copyOperation:a})}else L.error("Attempted copyColumnHeader for user without copy permission.")}}copyRanges(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0,a=this.props,o=a.model,s=a.canCopy,l=this.state,u=l.metricCalculator,h=l.movedColumns,c=u.getUserColumnWidths();if(s){var g={ranges:J.boundedRanges(e,o.columnCount,o.rowCount),includeHeaders:t,formatValues:n,movedColumns:h,userColumnWidths:c,error:r};this.setState({copyOperation:g})}else L.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.resetRanges,r=n===void 0?!1:n,a=t.loadingCancelShown,o=a===void 0?!0:a,s=t.loadingBlocksGrid,l=s===void 0?!0:s;this.setState({loadingText:e,loadingCancelShown:o,loadingBlocksGrid:l});var u=this.getTheme();if(r&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var h,c,g=u.minScrimTransitionTime,m=u.maxScrimTransitionTime;q(g),q(m);var p=(h=(c=this.gridWrapper)===null||c===void 0?void 0:c.getBoundingClientRect().height)!==null&&h!==void 0?h:0,v=Math.max(g,Math.min(p/2,m));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+v,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},Be.loadingSpinnerDelay)}}stopLoading(){this.showViewportLoading.cancel(),this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0,this.setState({loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,loadingCancelShown:!1}),this.loadingTimer!=null&&(clearTimeout(this.loadingTimer),this.loadingTimer=void 0)}rollback(){if(this.lastLoadedConfig){L.debug("loading last loading config",this.lastLoadedConfig);var e=this.lastLoadedConfig,t=e.advancedFilters,n=e.aggregationSettings,r=e.customColumns,a=e.quickFilters,o=e.reverse,s=e.rollupConfig,l=e.searchFilter,u=e.selectDistinctColumns,h=e.sorts;this.lastLoadedConfig=null,this.setState({advancedFilters:t,aggregationSettings:n,customColumns:r,quickFilters:a,reverse:o,rollupConfig:s,searchFilter:l,selectDistinctColumns:u,sorts:h})}else L.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:Dn,customColumns:[],quickFilters:new Map,reverse:!1,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!ur(this.state)}startListening(e){e.addEventListener(fe.EVENT.UPDATED,this.handleUpdate),e.addEventListener(fe.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(fe.EVENT.PENDING,this.handlePending),e.addEventListener(fe.EVENT.PENDING_CLEARED,this.handlePendingCleared),e.addEventListener(fe.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(fe.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated),e.addEventListener(fe.EVENT.VIEWPORT_UPDATED,this.handleViewportUpdated),e.addEventListener(fe.EVENT.TABLE_CHANGED,this.handleTableChanged),e.addEventListener(fe.EVENT.SCHEMA_CHANGED,this.handleSchemaChanged)}stopListening(e){e.removeEventListener(fe.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(fe.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(fe.EVENT.PENDING,this.handlePending),e.removeEventListener(fe.EVENT.PENDING_CLEARED,this.handlePendingCleared),e.removeEventListener(fe.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(fe.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated),e.removeEventListener(fe.EVENT.VIEWPORT_UPDATED,this.handleViewportUpdated),e.removeEventListener(fe.EVENT.TABLE_CHANGED,this.handleTableChanged),e.removeEventListener(fe.EVENT.SCHEMA_CHANGED,this.handleSchemaChanged)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var t=this.state.movedColumns,n=this.props.model,r=n.columnCount,a=z.getModelIndex(e,t);if(e==null||r<=e||!n.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var o=this.state,s=o.metricCalculator,l=o.metrics;q(l);var u=this.getMetricState();q(u);var h=s.getScrollLeftForColumn(e,u,l);if(h!=null){var c;(c=this.grid)===null||c===void 0||c.setViewState({left:h,leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,n=this.state,r=n.metricCalculator,a=n.movedColumns;r.setColumnWidth(z.getModelIndex(e,a),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var t=this.state,n=t.frozenColumns,r=t.movedColumns,a=this.props.model;L.debug2("freezing column",e);var o=n==null?new Set(a.frozenColumns):new Set(n);o.add(e);var s=a.getColumnIndexByName(e);q(s);var l=z.getVisibleIndex(s,r),u=z.moveItem(l,o.size-1,r);this.setState({frozenColumns:[...o],movedColumns:u})}unFreezeColumnByColumnName(e){var t=this.state,n=t.frozenColumns,r=t.movedColumns,a=this.props.model;L.debug2("unfreezing column",e);var o=n==null?new Set(a.frozenColumns):new Set(n);o.delete(e);var s=a.getColumnIndexByName(e);q(s);var l=z.getVisibleIndex(s,r),u=z.moveItem(l,o.size+a.frontColumns.length,r);this.setState({frozenColumns:[...o],movedColumns:u})}handleFrozenColumnsChanged(e){this.setState({frozenColumns:e})}toggleExpandColumn(e,t){L.debug2("Toggle expand column",e);var n=this.props.model;gn(n)&&n.hasExpandableColumns&&n.setColumnExpanded(e,!n.isColumnExpanded(e),t)}expandAllColumns(){L.debug2("Expand all columns");var e=this.props.model;gn(e)&&e.isExpandAllColumnsAvailable&&e.expandAllColumns()}collapseAllColumns(){L.debug2("Collapse all columns");var e=this.props.model;gn(e)&&e.isExpandAllColumnsAvailable&&e.collapseAllColumns()}handleColumnVisibilityChanged(e,t){var n,r=this.state,a=r.metricCalculator,o=r.metrics;q(o),t?e.forEach(s=>{var l=a.initialColumnWidths.get(s),u=o.calculatedColumnWidths.get(s);l!==u&&u!=null?a.setColumnWidth(s,u):a.resetColumnWidth(s)}):e.forEach(s=>{a.setColumnWidth(s,0)}),(n=this.grid)===null||n===void 0||n.forceUpdate()}handleColumnVisibilityReset(){var e,t,n=this.state.metricCalculator,r=this.props.model;n.resetAllColumnWidths(),this.handleMovedColumnsChanged(r.initialMovedColumns),this.handleHeaderGroupsChanged(r.initialColumnHeaderGroups),this.setState({frozenColumns:(e=(t=r.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:ae})}handleCrossColumnSearch(e,t,n){var r=this.props.model;this.startLoading("Searching..."),this.updateSearchFilter(e,t,r.columns,n),this.setState({searchValue:e,selectedSearchColumns:t,invertSearchColumns:n})}handleAnimationLoop(){var e;(e=this.grid)===null||e===void 0||e.updateCanvas(),this.isAnimating&&(this.animationFrame=requestAnimationFrame(this.handleAnimationLoop))}handleAnimationStart(){L.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){L.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionChange(e){this.startLoading("Partitioning...");var t=this.state.partitionConfig;t!==e&&this.setState({partitionConfig:e})}handleTableLoadError(e){if(!Me.isCanceled(e)){L.error(e);var t=this.props.onError;t(e)}}handleViewportUpdated(){var e=this.props.model,t=this.state,n=t.loadingText,r=t.loadingSpinnerShown,a="Waiting for viewport...";e.isViewportPending&&!r?this.showViewportLoading():n===a&&!e.isViewportPending&&this.stopLoading()}showAllColumns(){for(var e,t=this.state.metricCalculator,n=t.getUserColumnWidths(),r=[...n.entries()],a=0;a<r.length;a+=1){var o=st(r[a],2),s=o[0],l=o[1];l===0&&t.resetColumnWidth(s)}(e=this.grid)===null||e===void 0||e.forceUpdate()}updateMetrics(){var e;this.setState({metrics:(e=this.grid)===null||e===void 0?void 0:e.updateMetrics()})}toggleSort(e,t){L.info("Toggling sort for column",e);var n=this.props.model,r=this.getModelColumn(e);if(q(r),n.isColumnSortable(e)){var a=this.state.sorts,o=_.toggleSortForColumn(a,n.columns,r,t);this.updateSorts(o)}else L.debug("Column type was not sortable",n.columns[e])}updateSorts(e){var t;this.startLoading("Sorting..."),this.setState({sorts:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}sortColumn(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.sortDirection.none,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;q(e);var o=this.props.model,s=_.sortColumn(o.sort,o.columns,e,n,r,a);this.startLoading("Sorting..."),this.setState({sorts:s}),(t=this.grid)===null||t===void 0||t.forceUpdate()}reverse(e){var t;this.startLoading("Reversing..."),this.setState({reverse:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}isReversible(){var e=this.props.model;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,t=this.state.isFilterBarShown;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var n=0,r=this.props.model,a=r.columnCount,o=0;o<a;o+=1){var s=this.getModelColumn(o);if(s!=null){var l=r.columns[s];if(l!=null&&_.isTextType(l.type)){n=o;break}}}this.focusFilterBar(n)}else{var u;(u=this.grid)===null||u===void 0||u.focus()}}isTableSearchAvailable(){var e,t,n,r=this.props,a=r.model,o=r.canToggleSearch,s=a.dh,l=a==null||(e=a.layoutHints)===null||e===void 0?void 0:e.searchDisplayMode;return l===((t=s.SearchDisplayMode)===null||t===void 0?void 0:t.SEARCH_DISPLAY_HIDE)?!1:l===((n=s.SearchDisplayMode)===null||n===void 0?void 0:n.SEARCH_DISPLAY_SHOW)?!0:o}toggleSearchBar(){var e=this.state.showSearchBar;if(this.isTableSearchAvailable()){var t=!e;this.setState({showSearchBar:t},()=>{var n;if(t&&(n=this.crossColumnRef)!==null&&n!==void 0&&n.current){var r;(r=this.crossColumnRef)===null||r===void 0||r.current.focus()}else{var a;(a=this.grid)===null||a===void 0||a.focus()}})}}toggleGotoRow(){var e,t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",o=this.state.isGotoShown;if(n||r){var s;this.setState({isGotoShown:!0,gotoValue:r,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1}),this.focusRowInGrid(n),(s=this.gotoRowRef.current)===null||s===void 0||s.focus();return}var l=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,u=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(l==null||u==null){this.setState({isGotoShown:!o,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1});return}var h=this.props.model,c=h.columns[u].name,g=String(this.getValueForCell(u,l,!0));this.setState({isGotoShown:!o,gotoRow:"".concat(l+1),gotoValue:g,gotoValueSelectedColumnName:c,gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1})}commitPending(){var e=this;return bt(function*(){var t,n=e.props.model;if(!we(n)||!n.isEditable)throw new Error("Cannot save, table is not editable");var r=e.state.pendingSavePromise;if(r!=null)throw new Error("Save already in progress");var a=(t=document)===null||t===void 0||(t=t.activeElement)===null||t===void 0?void 0:t.classList.contains("grid-cell-input-field");if(a!=null&&a){var o;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new Fo("Current input is invalid");(o=e.grid)===null||o===void 0||o.focus()}var s=e.pending.add(n.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(l=>{Me.isCanceled(l)||e.setState({pendingSaveError:l,pendingSavePromise:null})});return e.setState({pendingSavePromise:s}),s})()}discardPending(){var e=this;return bt(function*(){var t=e.state.pendingSavePromise;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var t=this.props.onColumnSelected;t(e)}selectData(e,t){var n=this.getRowDataMap(t),r=this.props.onDataSelected;r(t,n)}getRowDataMap(e){for(var t=this,n=this.props.model,r=n.columns,a=n.groupedColumns,o={},s=function(){var h=r[l],c=h.name,g=h.type,m=n.valueForCell(l,e),p=n.textForCell(l,e),v=t.getVisibleColumn(l),f=ut(n)&&n.isRowExpandable(e),S=a.find(C=>C.name===c)!=null;o[c]={value:m,text:p,type:g,isGrouped:S,isExpandable:f,visibleIndex:v}},l=0;l<r.length;l+=1)s();return o}handleAdvancedFilterChange(e,t,n){var r=this.props.model,a=r.getColumnIndexByName(e.name);q(a),this.setAdvancedFilter(a,t,n)}handleAdvancedFilterSortChange(e,t){var n,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=this.props.model,o=a.getColumnIndexByName(e.name);q(o);var s=a.columns[o].name,l=_.getSortForColumn(a.sort,s),u=null;(l==null||l.direction!==t)&&(t===_.sortDirection.descending?u=e.sort().desc():u=e.sort().asc());var h=_.setSortForColumn(a.sort,s,u,r);L.info("Setting table sorts",h),this.startLoading("Sorting..."),this.setState({sorts:h}),(n=this.grid)===null||n===void 0||n.forceUpdate()}handleAdvancedFilterDone(){var e;(e=this.grid)===null||e===void 0||e.focus()}handleAdvancedFilterToggleMaximize(e){this.setState(t=>{var n=t.maximizedAdvancedFilter;return{maximizedAdvancedFilter:n===e?null:e}})}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e,maximizedAdvancedFilter:null})}handleGotoRowOpened(){this.setState({isGotoShown:!0,gotoValueManuallyChanged:!1})}handleGotoRowClosed(){this.setState({isGotoShown:!1,gotoValueManuallyChanged:!1})}handleAdvancedMenuClosed(e){var t,n=this.state,r=n.focusedFilterBarColumn,a=n.isFilterBarShown;if(a&&r===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var o;(o=this.filterInputRef)===null||o===void 0||o.current.focus(),this.setState({shownAdvancedFilter:null,maximizedAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null,maximizedAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var t=this.props,n=t.model,r=t.onCreateChart;r(e,n)}handleGridError(e){L.warn("Grid Error",e),this.setState({toastMessage:d.jsx("div",{className:"error-message",children:"".concat(e)})})}handleFilterBarChange(e){this.startLoading("Filtering...",{resetRanges:!0}),this.setState(t=>{var n=t.focusedFilterBarColumn,r=t.quickFilters,a=new Map(r);if(n!=null){var o=this.getModelColumn(n);q(o),this.applyQuickFilter(o,e,a)}return{quickFilters:a}})}handleFilterBarDone(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e){var n;(n=this.grid)===null||n===void 0||n.focus()}t&&this.setState({focusedFilterBarColumn:null})}handleFilterBarTab(e){var t=this.state.focusedFilterBarColumn;q(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var n=this.props.model,r=n.columns[e],a=this.state.customColumnFormatMap,o=new Map(a);if(t!=null){var s=_.getNormalizedType(r.type);q(s);var l=hn.makeColumnFormattingRule(s,r.name,t);o.set(r.name,l)}else o.delete(r.name);this.updateFormatter({customColumnFormatMap:o})}handleColumnAlignmentChange(e,t){var n=this.props.model,r=n.columns[e];this.setState(a=>{var o=a.columnAlignmentMap,s=o===void 0?Ie:o,l=new Map(s);return t!=null?l.set(r.name,t):l.delete(r.name),{columnAlignmentMap:l}})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var t=e.openOptions,n=[...t];return n.pop(),{openOptions:n}})}handleMenuSelect(e){this.setState(t=>{var n=t.openOptions;return{openOptions:[...n,e]}})}handleRequestFailed(e){var t=e,n=t.detail;L.error("request failed:",n),this.stopLoading();var r=this.state.partitionConfig;if(fo(n)&&r!=null)this.startLoading("Reloading partition...",{resetRanges:!0}),this.setState({partitionConfig:void 0},()=>{this.initState()});else if(this.canRollback())this.startLoading("Rolling back changes...",{resetRanges:!0}),this.rollback();else{L.error("Table failed and unable to rollback");var a=this.props.onError;a(new Error("Error displaying table: ".concat(n)))}}handlePending(e){var t=e,n=t.detail,r=n??{},a=r.text,o=r.options;this.loadingScrimStartTime==null&&this.startLoading(a??"Loading...",ue({loadingCancelShown:!1},o))}handlePendingCleared(){this.stopLoading()}handleUpdate(){var e;L.debug2("Received model update");var t=this.state,n=t.advancedFilters,r=t.aggregationSettings,a=t.customColumns,o=t.quickFilters,s=t.reverse,l=t.rollupConfig,u=t.searchFilter,h=t.selectDistinctColumns,c=t.sorts,g={advancedFilters:n,aggregationSettings:r,customColumns:a,quickFilters:o,reverse:s,rollupConfig:l,searchFilter:u,selectDistinctColumns:h,sorts:c};ur(g)?this.lastLoadedConfig=null:this.lastLoadedConfig=g,(e=this.grid)===null||e===void 0||e.forceUpdate(),this.stopLoading()}handleTableChanged(){var e=this.props.model,t=this.state.partitionConfig;yt(e)&&(t==null?void 0:t.mode)!=="keys"&&this.rebuildFilters()}handleSchemaChanged(){var e=this.props.model;this.setState({movedColumns:e.initialMovedColumns})}handleViewChanged(e){var t,n,r=this.props.model,a=(t=(n=this.grid)===null||n===void 0?void 0:n.state)!==null&&t!==void 0?t:{},o=a.selectionEndRow,s=o===void 0?0:o,l=0;if(we(r)&&r.isEditable){q(e);var u=e.bottomViewport,h=r.rowCount-r.floatingBottomRowCount;s===h-1?l=r.pendingRowCount+1:s===h-2?l=r.pendingRowCount:l=Math.max(0,u-(r.rowCount-r.pendingRowCount)-r.floatingTopRowCount-r.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:l})}handleSelectionChanged(e){q(e);var t=this.props.onSelectionChanged,n=this.state.copyOperation;this.setState({selectedRanges:e}),n!=null&&this.setState({copyOperation:null}),J.rowCount(J.consolidate(e))===1&&e[0].startRow!=null&&this.setState({gotoRow:"".concat(e[0].startRow+1)}),t(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var t=this.props.model,n=this.state.columnHeaderGroups;n!==e&&this.setState({columnHeaderGroups:e.every(r=>po(r)&&r.isValid())?e:ce.parseColumnHeaderGroups(t,e).groups},()=>{var r;return(r=this.grid)===null||r===void 0?void 0:r.forceUpdate()})}handleTooltipRef(e){e!=null&&e.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){L.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){L.debug("Create new conditional format");var e=this.state,t=e.openOptions,n=e.conditionalFormats;this.setState({openOptions:[...t,{type:ie.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:n.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){L.debug("Edit conditional format",e);var t=this.state,n=t.openOptions,r=t.conditionalFormats;this.setState({openOptions:[...n,{type:ie.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:ue({},r[e])})}handleConditionalFormatEditorSave(e){L.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return L.debug("Invalid format index"),null;var n=[...t.conditionalFormats];return n[t.conditionalFormatEditIndex]=e,{conditionalFormats:n}},()=>{this.handleMenuBack()})}handleConditionalFormatEditorCancel(){this.handleMenuBack(),this.setState({conditionalFormatEditIndex:null})}handleUpdateCustomColumns(e){L.info("handleUpdateCustomColumns:",e);var t=this.props.model,n=this.state,r=n.movedColumns,a=n.sorts,o=n.quickFilters,s=n.advancedFilters,l=n.selectDistinctColumns,u=t.columns,h=t.customColumns.map(S=>"".concat(S)),c=ce.getRemovedCustomColumnNames(h,e);if(c.length>0){var g=ce.removeSortsInColumns(a,c),m=ce.removeFiltersInColumns(u,o,c),p=ce.removeFiltersInColumns(u,s,c),v=ce.removeColumnFromMovedColumns(u,r,c),f=ce.removeColumnsFromSelectDistinctColumns(l,c);g.length!==a.length&&(L.debug("removing sorts from removed custom columns..."),this.setState({sorts:g})),(m.size!==o.size||p.size!==s.size)&&(L.debug("removing filters from removed custom columns..."),this.setState({quickFilters:m,advancedFilters:p})),et(r,v)||(L.debug("change moved columns for removed custom columns",v),this.setState({movedColumns:v})),et(l,f)||(L.debug("change selectDistinct columns for removed custom columns",v),this.setState({selectDistinctColumns:f}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){L.debug("Model columns changed");var e=this.state.isReady;e?(this.updateMetrics(),this.stopLoading()):this.loadTableState()}maybeRebuildMetricCalculator(){var e,t=this.props.getMetricCalculator;if(t!==this.lastMetricCalculatorFactory){var n=this.props.model,r=this.state.movedColumns,a=t({userColumnWidths:new Map,userRowHeights:new Map,movedColumns:r,initialColumnWidths:new Map(n==null||(e=n.layoutHints)===null||e===void 0||(e=e.hiddenColumns)===null||e===void 0?void 0:e.map(o=>[n.getColumnIndexByName(o),0]))});this.lastMetricCalculatorFactory=t,L.debug("Swapping metric calculator",a),this.grid!=null&&(this.grid.metricCalculator=a),this.setState({metricCalculator:a})}}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;L.debug("pending data updated");var t=this.props.model,n=t.pendingDataMap,r=t.pendingDataErrors;this.setState({pendingDataMap:n,pendingDataErrors:r,pendingSaveError:null}),(e=this.grid)===null||e===void 0||e.forceUpdate()}handleResizeColumn(e){var t,n=this.state,r=n.metrics,a=n.metricCalculator;if(!r)throw new Error("Metrics not set");var o=_e(r.contentColumnWidths,e),s=a.getUserColumnWidths();s.has(e)?(a.resetColumnWidth(e),a.setCalculatedColumnWidth(e,o)):a.setColumnWidth(e,o),(t=this.grid)===null||t===void 0||t.forceUpdate()}handleResizeAllColumns(){var e,t=this.state,n=t.metrics,r=t.metricCalculator;if(!n)throw new Error("Metrics not set");var a=[...n.allColumnWidths.entries()],o=a.filter(f=>{var S=st(f,2);S[0];var C=S[1];return C!==0}).map(f=>{var S=st(f,1),C=S[0];return C}),s=n.contentColumnWidths,l=r.getUserColumnWidths(),u=o.filter(f=>l.has(f));if(o.length===u.length)for(var h=0;h<o.length;h+=1){var c=o[h],g=_e(s,c);r.resetColumnWidth(c),r.setCalculatedColumnWidth(c,g)}else for(var m=0;m<o.length;m+=1){var p=o[m],v=_e(s,p);r.setColumnWidth(p,v)}(e=this.grid)===null||e===void 0||e.forceUpdate()}handleAggregationsChange(e){var t,n,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];L.debug("handleAggregationsChange",e,r,a);var o=this.state.rollupConfig,s=((t=o==null||(n=o.columns)===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0)>0,l=[...r,...a],u=!(s&&l.length>0&&l.every(h=>dn.isRollupProhibited(h)));u&&this.startLoading("Aggregating ".concat(e.aggregations.map(h=>h.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){var t,n;L.debug("handleAggregationChange",e);var r=this.state.rollupConfig,a=((t=r==null||(n=r.columns)===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0)>0,o=!(a&&dn.isRollupProhibited(e.operation));o&&this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(s=>{var l=s.aggregationSettings;return{selectedAggregation:e,aggregationSettings:ue(ue({},l),{},{aggregations:l.aggregations.map(u=>u.operation===e.operation?e:u)})}})}handleAggregationEdit(e){L.debug("handleAggregationEdit",e);var t=this.state.openOptions;this.setState({openOptions:[...t,{type:ie.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,n;if(L.info("Rollup change",e),(e==null?void 0:e.columns)!=null&&e.columns.length>0){var r=this.state.metricCalculator,a=r.getUserColumnWidthsByName();e.columns.forEach(o=>{a.get(o)===0&&r.resetColumnWidthByName(o)})}this.resetGridViewState(),this.clearAllFilters(),this.startLoading("Grouping by columns ".concat((t=e==null||(n=e.columns)===null||n===void 0?void 0:n.join(", "))!==null&&t!==void 0?t:"","...")),this.setState({rollupConfig:e,movedColumns:ae,frozenColumns:ae,sorts:ae,reverse:!1,selectDistinctColumns:ae})}handleSelectDistinctChanged(e){L.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.clearAllAggregations(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverse:!1})}handleDownloadTableStart(){var e=this.props.canDownloadCsv;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:Ze.DOWNLOAD_STATUS.INITIATING}):L.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,n,r,a,o,s){var l=this.props.canDownloadCsv;l?(L.info("start table downloading",e,t,n,r,a,o,s),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,n,r,a,o,s),{tableDownloadStatus:Ze.DOWNLOAD_STATUS.DOWNLOADING}))):L.error("Attempted to handleDownloadTable for user without download CSV permission.")}removeEmptyAggregations(){L.debug("removeEmptyAggregations"),this.setState(e=>{var t=e.aggregationSettings,n=t.aggregations,r=n.filter(a=>a.selected.length>0||a.invert);return r.length!==n.length?{selectedAggregation:null,aggregationSettings:ue(ue({},t),{},{aggregations:r})}:{selectedAggregation:null,aggregationSettings:t}})}seekRow(e){var t=arguments,n=this;return bt(function*(){var r,a=t.length>1&&t[1]!==void 0?t[1]:!1,o=n.state,s=o.gotoValueSelectedColumnName,l=o.gotoValueSelectedFilter,u=n.props.model,h=u.dh;if(u.isSeekRowAvailable&&e!==""){var c=ce.getColumnByName(u.columns,s);if(c!==void 0){var g=(r=n.grid)===null||r===void 0?void 0:r.state.cursorRow;g==null&&(g=0);var m=l===Oe.contains||l===Oe.containsIgnoreCase,p=l===Oe.eqIgnoreCase||l===Oe.containsIgnoreCase;try{var v,f=u.formatter,S=_.getNormalizedType(c.type),C;switch(S){case _.dataType.CHAR:case _.dataType.STRING:{C=yield u.seekRow(g,c,h.ValueType.STRING,e,p,m,a??!1);break}case _.dataType.DATETIME:{var E=pr.parseDateRange(h,e,f.timeZone),w=st(E,1),F=w[0];C=yield u.seekRow(g,c,h.ValueType.DATETIME,F,void 0,void 0,a??!1);break}case _.dataType.DECIMAL:case _.dataType.INT:{if(!_.isBigDecimalType(c.type)&&!_.isBigIntegerType(c.type)){var A=parseInt(e,10);e==="-Infinity"?A=Number.NEGATIVE_INFINITY:e==="Infinity"&&(A=Number.POSITIVE_INFINITY),C=yield u.seekRow(g,c,h.ValueType.NUMBER,A,void 0,void 0,a??!1)}else C=yield u.seekRow(g,c,h.ValueType.STRING,e,void 0,void 0,a??!1);break}default:C=yield u.seekRow(g,c,h.ValueType.STRING,n.tableUtils.makeValue(c.type,e,f.timeZone),void 0,void 0,a??!1)}(v=n.grid)===null||v===void 0||v.setFocusRow(C),n.setState({gotoValueError:""})}catch{n.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:Ze.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:Ze.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var t=this.props.model;if(!ns(t)||!t.isDeletable)throw new Error("Model does not support deleting ranges");this.pending.add(t.delete(e)).catch(n=>{Me.isCanceled(n)||L.error("Unable to delete ranges",e,n)})}resetColumnSelection(){if(this.grid!=null){var e=this.props.isSelectingColumn;if(e){var t=this.props.columnAllowedCursor;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var e=this.state,t=this.grid.state,n=this.props.onStateChange;n(e,t)}}handleOverflowClose(){var e;this.setState({showOverflowModal:!1}),(e=this.grid)===null||e===void 0||e.focus()}handleOpenNoPastePermissionModal(e){this.setState({showNoPastePermissionModal:!0,noPastePermissionError:e})}handleCloseNoPastePermissionModal(){this.setState({showNoPastePermissionModal:!1})}getColumnBoundingRect(){var e,t=this.state,n=t.metrics,r=t.shownColumnTooltip;q(n),q(r);var a=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),o=20;q(a);var s=n.columnHeaderHeight,l=n.allColumnXs,u=n.allColumnWidths,h=n.width,c=n.columnHeaderMaxDepth,g=l.get(r),m=u.get(r);q(g),q(m);var p=a.left+Le(g+m/2,o,h-o);return{top:a.top+(c-1)*s,left:a.left+Le(g+m/2,o,h-o),bottom:a.top+c*s,right:a.left+Le(g+m/2,o,h-o)+1,width:1,height:s,x:p,y:a.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var e=this.state.gotoRow;this.focusRowInGrid(e)}focusRowInGrid(e){var t=this.props.model,n=t.rowCount;if(this.setState({gotoRow:e}),e===""){this.setState({gotoRowError:"",gotoValueError:""});return}var r=parseInt(e,10);if(r>n||r<-n)this.setState({gotoRowError:"Invalid row index"});else if(r===0){var a;this.setState({gotoRowError:"",gotoValueError:""}),(a=this.grid)===null||a===void 0||a.setFocusRow(0)}else if(r<0){var o;this.setState({gotoRowError:"",gotoValueError:""}),(o=this.grid)===null||o===void 0||o.setFocusRow(r+n)}else{var s;(s=this.grid)===null||s===void 0||s.setFocusRow(r-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,n){var r=t.columnHeaderHeight,a=t.columnHeaderMaxDepth,o=t.allColumnXs,s=t.allColumnWidths,l=t.width,u=o.get(e),h=s.get(e);if(u==null||h==null)return null;var c=Math.max(0,u),g=h;u+h>l?g=l-u:u<0&&(g=h-Math.abs(u));var m={position:"absolute",top:(a-1)*r,left:c,width:g,height:r,pointerEvents:"none"},p={clientWidth:1,clientHeight:r,getBoundingClientRect:this.getColumnBoundingRect},v={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},f=this.getModelColumn(e);if(f==null)return null;var S=n.columns[f];return S==null?null:d.jsx("div",{style:m,children:d.jsx(ze,{timeout:400,interactive:!0,options:v,ref:this.handleTooltipRef,referenceObject:p,onExited:()=>{this.setState({shownColumnTooltip:null})},children:d.jsx(At,{model:n,column:S,onStatistics:()=>{var C;(C=this.tooltip)===null||C===void 0||C.update()}})},S.name)})}handleGotoValueSelectedColumnNameChanged(e){var t,n=this.props.model,r=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow,a=this.state,o=a.gotoValueSelectedColumnName,s=a.gotoValueManuallyChanged;if(r!=null){var l=n.getColumnIndexByName(e),u=ce.getColumnByName(n.columns,e),h=ce.getColumnByName(n.columns,o);if(l==null||u==null)return;var c=n.valueForCell(l,r),g=ce.convertValueToText(c,u.type);s&&u.type===(h==null?void 0:h.type)?this.setState({gotoValueSelectedColumnName:e,gotoValueError:""}):this.setState({gotoValueSelectedColumnName:e,gotoValue:g,gotoValueError:"",gotoValueManuallyChanged:!1})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var t=this.state.gotoValue;this.seekRow(t,e)}getFilterBarInput(e,t,n,r,a){var o;if(e==null||n==null)return null;var s=this.getMetricState();if(s==null)return null;var l=t.getFilterInputCoordinates(n,s,e);if(l==null)return null;var u=Math.min(Math.max(Be.minDebounce,Math.round(e.rowCount/200)),Be.maxDebounce),h=l.x,c=l.y,g=l.width,m=l.height,p=e.width,v={top:c,left:h,minWidth:Math.min(g,p-h),height:m},f="",S=!0,C=this.getModelColumn(n);q(C);var E=r.get(C),w=a.get(C);E!=null&&(f=E.text,S=E.filter!=null);var F=r.size!==0||a.size!==0,A=t.getAdvancedFilterButtonCoordinates(n,s,e)!=null;return d.jsx(Er,{ref:this.filterInputRef,style:v,className:ee({error:!S,active:f!==""||w!=null,"iris-grid-has-filter":F}),showAdvancedFilterButton:A,isAdvancedFilterSet:w!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:n})},onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(o=this.grid)===null||o===void 0?void 0:o.handleContextMenu,debounceMs:u,value:f},n)}render(){var e,t,n=this,r,a,o=this.props,s=o.children,l=o.customFilters,u=o.getDownloadWorker,h=o.isSelectingColumn,c=o.isStuckToBottom,g=o.isStuckToRight,m=o.model,p=o.name,v=o.onlyFetchVisibleColumns,f=o.alwaysFetchColumns,S=o.advancedSettings,C=o.onAdvancedSettingsChange,E=o.canDownloadCsv,w=o.onCreateChart,F=o.transformTableOptions,A=this.context.cellInputRendererRegistry,y=this.state,x=y.metricCalculator,D=y.metrics,N=y.isFilterBarShown,I=y.isSelectingPartition,R=y.isMenuShown,U=y.isReady,k=y.copyOperation,G=y.focusedFilterBarColumn,V=y.loadingText,W=y.loadingScrimProgress,B=y.loadingSpinnerShown,H=y.loadingCancelShown,Z=y.loadingBlocksGrid,X=y.shownColumnTooltip,re=y.hoverAdvancedFilter,ge=y.shownAdvancedFilter,b=y.maximizedAdvancedFilter,O=y.hoverSelectColumn,P=y.quickFilters,Y=y.advancedFilters,$=y.searchFilter,j=y.selectDistinctColumns,K=y.movedColumns,he=y.movedRows,ne=y.formatter,ve=y.conditionalFormats,Ne=y.conditionalFormatPreview,Ye=y.conditionalFormatEditIndex,Xt=y.columnAlignmentMap,Nt=y.sorts,_t=y.reverse,Mt=y.customColumns,Zt=y.selectedRanges,Ce=y.isTableDownloading,Un=y.tableDownloadStatus,Mr=y.tableDownloadProgress,Jt=y.tableDownloadEstimatedTime,Bn=y.showSearchBar,Pr=y.searchValue,Ir=y.selectedSearchColumns,jr=y.invertSearchColumns,en=y.aggregationSettings,Hn=y.selectedAggregation,qe=y.rollupConfig,ht=y.openOptions,kr=y.pendingSavePromise,Lr=y.pendingSaveError,Vr=y.pendingRowCount,Ur=y.pendingDataErrors,$n=y.pendingDataMap,Br=y.toastMessage,Hr=y.frozenColumns,Gn=y.columnHeaderGroups,$r=y.showOverflowModal,Gr=y.showNoPastePermissionModal,Wr=y.noPastePermissionError,zr=y.overflowText,Wn=y.overflowButtonTooltipProps,zn=y.expandCellTooltipProps,Kn=y.hoverTooltipProps,Yn=y.isGotoShown,Kr=y.gotoRow,Yr=y.gotoRowError,qr=y.gotoValueError,Qr=y.gotoValueSelectedColumnName,Xr=y.gotoValue,Zr=y.gotoValueSelectedFilter,qn=y.partitionConfig;if(!U)return null;var Pt=this.getTheme(),Qn=Pt.columnHeaderHeight,Jr=this.getCachedFilter(l,P,Y,$),Xn=x.getUserColumnWidths(),ea=this.getCachedStateOverride(m,Pt,O,N,h,W,P,Y,Nt,_t,qe,R),ta=D?D.top:0,na=D?D.bottomViewport:0,Zn=null,Jn=null;v&&(Zn=D?D.left:0,Jn=D?D.right:0);var ia=D!=null&&D.width>0&&D.height>0,ei=((e=qe==null||(t=qe.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,ra=N?this.getFilterBarInput(D,x,G,P,Y):null,ti=null;if(V!=null){var aa=d.jsxs("div",{className:"iris-grid-loading-status",children:[d.jsx("div",{className:ee("iris-grid-loading-status-bar",{show:B}),children:V}),d.jsxs("button",{type:"button",onClick:this.handleCancel,className:ee("iris-grid-btn-cancel",{show:H}),children:[d.jsx(se,{icon:gr,transform:"down-1"}),"Cancel"]})]}),oa=D?D.gridY:0;ti=d.jsx("div",{className:"iris-grid-loading",style:Z?{top:oa}:{},children:aa})}var ni=null;if(X!=null&&D){var tn;ni=this.getColumnTooltip(X,D,m),(tn=this.tooltip)===null||tn===void 0||tn.update()}var ii=[];if(D&&N)for(var ri=this.getMetricState(),ai=D.visibleColumns,sa=function(){var le=ai[nn],Qe=n.getModelColumn(le);if(Qe!=null){var it=m.isFilterable(Qe),ct=it&&ri?x.getAdvancedFilterButtonCoordinates(le,ri,D):null;if(ct!=null){var on=ct.x,sn=ct.y,rt={position:"absolute",top:sn,left:on},mt=Y.get(Qe),It=mt!=null,jt=le===re||le===G||It,ln=d.jsx("div",{className:ee("advanced-filter-button-container",{hidden:!jt}),style:rt,children:jt&&d.jsx(te,{kind:"ghost",className:ee("btn-link-icon advanced-filter-button",{"filter-set":It}),onClick:()=>{n.setState({shownAdvancedFilter:le,maximizedAdvancedFilter:null})},onContextMenu:kt=>{var Xe;(Xe=n.grid)===null||Xe===void 0||Xe.handleContextMenu(kt)},onMouseEnter:()=>{n.setState({hoverAdvancedFilter:le})},onMouseLeave:()=>{n.setState({hoverAdvancedFilter:null})},children:d.jsxs("div",{className:"fa-layers",children:[d.jsx(se,{icon:dr,className:"filter-solid"}),d.jsx(se,{icon:Fn,className:"filter-light"})]})})},le);ii.push(ln)}}},nn=0;nn<ai.length;nn+=1)sa();var oi=[];if(D)for(var si=D.gridX,li=D.visibleColumns,la=D.allColumnXs,ua=D.allColumnWidths,ui=D.columnHeaderHeight,da=function(){var le=li[rn],Qe=la.get(le),it=ua.get(le);if(Qe!=null&&it!=null&&it>0){var ct=si+Qe,on=si+Qe+it-20,sn=N?{position:"absolute",top:ui,left:on,width:20,height:Pt.filterBarHeight}:{position:"absolute",top:0,left:ct,width:it,height:ui},rt=n.getModelColumn(le);if(rt!=null){var mt=m.columns[rt];if(mt==null)return L.warn("Column does not exist at index ".concat(rt," for column array of length ").concat(m.columns.length)),1;var It=Y.get(rt),jt=It||{},ln=jt.options,kt=_.getSortForColumn(m.sort,mt.name),Xe=kt?kt.direction:null;if(!Co(Xe))throw new Error("Invalid sort direction: ".concat(Xe));var ma=d.jsx("div",{className:"advanced-filter-menu-container",style:sn,children:d.jsx(yr,{className:"advanced-filter-menu-popper",isMaximized:ge===le&&b===le,onEntered:n.getAdvancedMenuOpenedHandler(le),onExited:()=>{n.handleAdvancedMenuClosed(le)},isShown:ge===le,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0},children:n.getCachedAdvancedFilterMenuActions(m,mt,ln,Xe,ne,ge===le&&b===le,n.getAdvancedMenuToggleMaximizeHandler(le))})},le);oi.push(ma)}}},rn=0;rn<li.length;rn+=1)da();var ha=this.getCachedOptionItems(w!==void 0&&m.isChartBuilderAvailable,m.isCustomColumnsAvailable,m.isFormatColumnsAvailable,m.isOrganizeColumnsAvailable,m.isRollupAvailable,m.isTotalsAvailable||ei,m.isSelectDistinctAvailable,m.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,N,Bn,E,this.isTableSearchAvailable(),Yn,S.size>0),di=this.getCachedTransformedOptionItems(ha,F),an=this.getCachedHiddenColumns(x,Xn),ca=ht.map(Se=>{switch(Se.type){case ie.CHART_BUILDER:return d.jsx(ls,{model:m,onChange:this.handleChartChange,onSubmit:this.handleChartCreate},ie.CHART_BUILDER);case ie.VISIBILITY_ORDERING_BUILDER:return d.jsx(ss,{model:m,movedColumns:K,hiddenColumns:an,columnHeaderGroups:Gn,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged,onFrozenColumnsChanged:this.handleFrozenColumnsChanged},ie.VISIBILITY_ORDERING_BUILDER);case ie.CONDITIONAL_FORMATTING:return d.jsx(gu,{rules:ve,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case ie.CONDITIONAL_FORMATTING_EDIT:return q(m.columns),q(this.handleConditionalFormatEditorUpdate),d.jsx(md,{dh:m.dh,columns:m.columns,rule:Ne,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case ie.CUSTOM_COLUMN_BUILDER:return d.jsx(os,{model:m,customColumns:Mt,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack},ie.CUSTOM_COLUMN_BUILDER);case ie.ROLLUP_ROWS:return d.jsx(as,{model:m,onChange:this.handleRollupChange,config:qe},ie.ROLLUP_ROWS);case ie.AGGREGATIONS:return d.jsx(rs,{settings:en,isRollup:ei,availablePlacements:we(m)&&m.isEditable?["top"]:["top","bottom"],onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit,dh:m.dh});case ie.AGGREGATION_EDIT:return Hn&&d.jsx(is,{aggregation:Hn,columns:m.originalColumns,onChange:this.handleAggregationChange});case ie.TABLE_EXPORTER:return d.jsx(Ze,{model:m,name:p,userColumnWidths:Xn,movedColumns:K,isDownloading:Ce,tableDownloadStatus:Un,tableDownloadProgress:Mr,tableDownloadEstimatedTime:Jt??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:Zt},ie.TABLE_EXPORTER);case ie.SELECT_DISTINCT:return d.jsx(xr,{model:m,selectDistinctColumns:j,onChange:this.handleSelectDistinctChanged});case ie.ADVANCED_SETTINGS:return d.jsx(Vn,{items:S,onChange:C});default:{var le=Se.configPage;if(le==null)throw Error("Unexpected option type ".concat(Se.type));return d.jsx(iu,{itemType:String(Se.type),children:d.jsx(le,{model:m,viewState:this.getCachedViewState(this.getCachedHiddenColumnNames(an,m.columns)),onBack:this.handleMenuBack})},String(Se.type))}}});return d.jsxs("div",{className:"iris-grid",role:"presentation",children:[d.jsxs("div",{className:"iris-grid-column",children:[s!=null&&d.jsx("div",{className:"iris-grid-bar",children:s}),d.jsx(En,{in:I,timeout:Rn.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,nodeRef:this.slideTransitionRef,children:d.jsx("div",{ref:this.slideTransitionRef,className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",children:yt(m)&&m.isPartitionRequired&&d.jsx(Xl,{model:m,partitionConfig:qn,onChange:this.handlePartitionChange})})}),d.jsx(En,{in:Bn,timeout:Rn.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,nodeRef:this.bottomTransitionRef,children:d.jsx("div",{ref:this.bottomTransitionRef,className:"iris-grid-bar",children:d.jsx(Bt,{value:Pr,selectedColumns:Ir,invertSelection:jr,onChange:this.handleCrossColumnSearch,columns:m.columns,ref:this.crossColumnRef})})}),d.jsxs(Ae,{ref:Se=>{this.grid=Se},isStickyBottom:!we(m)||!m.isEditable,isStuckToBottom:c,isStuckToRight:g,metricCalculator:x,model:m,keyHandlers:this.getKeyHandlers(),mouseHandlers:this.getMouseHandlers(),movedColumns:K,movedRows:he,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,cellInputRendererRegistry:A??us,stateOverride:ea,theme:Pt,children:[d.jsx(Cd,{isOpen:$r,text:zr,onClose:this.handleOverflowClose}),ia&&d.jsx(Rr,{model:m,top:ta,bottom:na,left:Zn,right:Jn,filter:Jr,formatter:ne,columnAlignmentMap:Xt,sorts:Nt,reverse:_t,movedColumns:K,customColumns:Mt,hiddenColumns:an,alwaysFetchColumns:this.getAlwaysFetchColumns(f,m.columns,K,m.floatingLeftColumnCount,m.floatingRightColumnCount,(r=this.grid)===null||r===void 0||(r=r.state.draggingColumn)===null||r===void 0?void 0:r.range),formatColumns:this.getCachedPreviewFormatColumns(m.dh,m.columns,ve,Ne,((a=ht[ht.length-1])===null||a===void 0?void 0:a.type)===ie.CONDITIONAL_FORMATTING_EDIT?Ye??void 0:void 0),rollupConfig:this.getModelRollupConfig(m.originalColumns,qe,en),totalsConfig:this.getModelTotalsConfig(m.columns,qe,en),selectDistinctColumns:j,pendingRowCount:Vr,pendingDataMap:$n,frozenColumns:Hr,columnHeaderGroups:Gn,partitionConfig:qn,showExtraGroupColumn:this.showExtraGroupColumn}),!R&&d.jsx("div",{className:"grid-settings-button",style:{height:"".concat(Qn,"px"),width:"".concat(Qn,"px")},children:d.jsx(te,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(p),onClick:this.handleMenu,icon:d.jsx(se,{icon:Ya,transform:"up-1"}),tooltip:"Table Options"})}),ra,ti,ii,ni,oi,Wn&&this.getOverflowButtonTooltip(Wn),zn&&this.getExpandCellTooltip(zn),Kn&&this.getHoverTooltip(Kn)]}),d.jsx(_r,{ref:this.gotoRowRef,model:m,isShown:Yn,gotoRow:Kr,gotoRowError:Yr,gotoValueError:qr,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:Qr,gotoValue:Xr,gotoValueFilter:Zr,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),d.jsx(cl,{error:Lr,isSaving:kr!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:Ur,pendingDataMap:$n,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),d.jsx(Bl,{children:Br}),d.jsx(Q,{model:m,copyOperation:k??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),d.jsx(ds,{dh:m.dh,ref:Se=>{this.tableSaver=Se},getDownloadWorker:u,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:Un===Ze.DOWNLOAD_STATUS.DOWNLOADING,formatter:ne})]}),d.jsx(hs,{in:R,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:d.jsx("div",{className:"table-sidebar",children:d.jsx(cs,{children:[d.jsx(Fi,{title:"Table Options",onClose:this.handleMenuClose,children:d.jsx(Tr,{onSelect:Se=>this.handleMenuSelect(di[Se]),items:di})},"table-options"),...ca.map((Se,le)=>d.jsx(Fi,{title:ht[le].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,children:Se},ht[le].type))]})})}),d.jsx(Ro,{actions:this.contextActions}),d.jsx(Rd,{isOpen:Gr,onClose:this.handleCloseNoPastePermissionModal,errorMessage:Wr})]})}}M(Be,"contextType",ms);M(Be,"minDebounce",150);M(Be,"maxDebounce",500);M(Be,"loadingSpinnerDelay",800);M(Be,"defaultProps",{advancedFilters:Ie,advancedSettings:Ie,alwaysFetchColumns:ae,conditionalFormats:ae,customColumnFormatMap:Ie,columnAlignmentMap:Ie,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:ae,movedRows:ae,inputFilters:ae,customFilters:ae,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onAdvancedSettingsChange:()=>{},partitions:void 0,partitionConfig:void 0,quickFilters:Ie,selectDistinctColumns:ae,sorts:ae,reverse:!1,customColumns:ae,aggregationSettings:Dn,rollupConfig:void 0,userColumnWidths:Ie,userColumnWidthsByName:void 0,userRowHeights:Ie,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",invertSearchColumns:!0,onContextMenu:()=>ae,pendingDataMap:Ie,getDownloadWorker:gs.getServiceWorker,settings:{timeZone:"America/New_York",defaultDateTimeFormat:pr.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,showEmptyStrings:!0,showNullStrings:!0,showExtraGroupColumn:!0,formatter:ae},canCopy:!0,canDownloadCsv:!0,frozenColumns:void 0,density:void 0,canToggleSearch:!0,mouseHandlers:ae,keyHandlers:ae,getMetricCalculator:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return new vs(...t)}});export{Be as default};
17
- //# sourceMappingURL=IrisGrid-SZMAp3mH.js.map
1
+ import{r as T,D as d,G as ee,ai as Le,J as De,bD as xt,C as Tn,I as oe,H as En,ag as Et,af as se,bG as et,ak as va,al as fa,aj as pa,S as hi,b8 as ci,a8 as mi,bt as gi}from"./vendor-yMTyZX60.js";import{u as q,as as _e,v as Nn,a as Te,f as qt,aB as _n,bD as vi,bE as Ca,bF as Sa,T as Rn,k as ur,at as ba,bw as dr,bx as Fn,bG as ya,bH as wa,bI as fi,ay as Ta,bJ as pi,bK as un,bi as Ci,bL as Ea,aA as Ra,bM as Fa,q as xa,bN as Oa,bO as Aa,aM as Da,aU as Na,h as _a,d as hr,G as cr,bP as Ma,bQ as Pa,e as mr,n as gr,bR as Ia,bS as ja,bT as ka,bj as La,ax as Va,bU as Ua,bV as Ba,bW as Ha,bX as $a,bY as Ga,bZ as Wa,aS as za,b_ as Ka,b$ as Ya}from"./index-Cay9nogS.js";import{as as Ue,ao as z,aq as J,an as ut,ar as qa,T as _,at as Qa,au as Xa,av as Za,aw as Ja,F as Mn,ax as vt,ay as eo,W as ue,ac as to,af as wt,_ as Yt,az as He,aA as xn,aB as On,aC as me,aD as no,aE as pe,aF as Fe,aG as io,aH as ro,aI as Si,aJ as ao,aK as oo,aL as so,aM as lo,aN as uo,aO as ho,aP as We,aQ as Re,aR as Ie,aS as bi,aT as vr,aU as Qt,aV as fr,aW as co,R as mo,ab as go,aX as Oe,a0 as dn,aY as vo,c as hn,d as yi,a3 as fe,aZ as fo,aa as po,x as Co,D as pr}from"./index-B4UF2WoJ.js";import{x as cn,E as ae,_ as Rt,J as te,B as Pe,C as Ot,t as Cr,cG as Sr,bO as So,cF as Me,L as br,Q as bo,A as ze,P as yr,N as yo,cR as wr,G as wo,U as To,Z as Eo,O as Ro,dh as Fo}from"./LogPanel-C_z4zUw7.js";import{bf as xo,bg as dt,bh as Oo,bi as we,bj as nt,bk as mn,bl as wi,bm as Ao,bn as Do,bo as No,bp as _o,bq as Mo,br as Ti,bs as Po,_ as Io,b9 as tt,k as xe,ay as jo,R as Tr,E as Ei,H as Pn,X as ko,Z as Ri,M as Lo,aN as Vo,aM as Uo,I as Bo,b5 as ie,be as Ho,b0 as $o,bb as Ze,aQ as Go,b1 as Wo,b3 as zo,aS as Ko,aT as Yo,b2 as qo,aZ as Qo,aV as Xo,aY as Zo,b6 as Jo,a$ as es,aX as ts,bt as gn,bu as ns,aE as is,aF as rs,b8 as as,aJ as os,bd as ss,aI as ls,aK as us,bc as ds,$ as hs,a0 as cs,W as Fi,aU as ms,aL as gs,a_ as vs}from"./IrisGridContextProvider-w99fOPzy.js";import"./helpers-BosuxZz1.js";import"./useMergeRef-DkP-96bB.js";import"./useResizeObserver-ZdS10WC4.js";function xi(i,e){var t=new Set([...Object.keys(i),...Object.keys(e)]),n=[];return t.forEach(r=>{i[r]!==e[r]&&n.push(r)}),n}function Vt(i,e){return Ss(i)||Cs(i,e)||ps(i,e)||fs()}function fs(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ps(i,e){if(i){if(typeof i=="string")return Oi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Oi(i,e):void 0}}function Oi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Cs(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e===0){if(Object(t)!==t)return;l=!1}else for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Ss(i){if(Array.isArray(i))return i}var bs=i=>{switch(i){case"ArrowDown":return Ue.DOWN;case"ArrowUp":return Ue.UP;case"ArrowLeft":return Ue.LEFT;case"ArrowRight":return Ue.RIGHT;default:return}};function ys(i){var e=i.selectionRange,t=i.className,n=t===void 0?"":t,r=i.disabled,a=r===void 0?!1:r,o=i.value,s=o===void 0?"":o,l=i.isQuickEdit,u=l===void 0?!0:l,h=i.onChange,c=h===void 0?cn:h,g=i.onCancel,m=g===void 0?cn:g,p=i.onDone,v=p===void 0?cn:p,f=i.style,C=T.useRef(null),S=T.useRef(!1),E=T.useState(s),w=Vt(E,1),R=w[0],O=T.useState(!1),y=Vt(O,2),F=y[0],D=y[1],N=T.useState(u),L=Vt(N,2),A=L[0],j=L[1],I=T.useState(s),G=Vt(I,2),U=G[0],W=G[1];T.useEffect(function(){var P=C.current;P!=null&&(P.focus(),e?P.setSelectionRange(e[0],e[1]):P.setSelectionRange(P.value.length,P.value.length))},[e]);var B=T.useCallback(x=>{c(x)},[c]),H=T.useCallback(x=>{var P=x.target.value;W(P),D(!0),B(P)},[B,W,D]),Z=T.useCallback(()=>{S.current=!0,F&&B(R),D(!1),m()},[R,F,m,B]),X=T.useCallback(()=>{j(!1)},[j]),re=T.useCallback(function(x){var P=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;v(U,{direction:x,fillRange:P})},[v,U]),ge=T.useCallback(()=>{S.current||re(null)},[S,re]),b=T.useCallback(x=>{switch(x.stopPropagation(),x.key){case"Escape":x.preventDefault(),Z();break;case"Enter":if(x.preventDefault(),z.isModifierKeyDown(x))re(void 0,!0);else if(x.altKey){var P="".concat(U,`
3
+ `);W(P),D(!0),B(P)}else re(x.shiftKey?Ue.UP:Ue.DOWN);break;case"Tab":x.preventDefault(),re(x.shiftKey?Ue.LEFT:Ue.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":A&&(x.preventDefault(),re(bs(x.key)));break}},[Z,re,A,W,D,B,U]);return d.jsx("textarea",{ref:C,className:ee("grid-cell-input-field",n),value:U,onBlur:ge,onChange:H,onKeyDown:b,onClick:X,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:a,style:f})}function Ai(i){if(i==null)throw new xo("Expected 'val' to be defined, but received ".concat(i))}function ws(i,e,t){return(e=Ts(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ts(i){var e=Es(i,"string");return typeof e=="symbol"?e:e+""}function Es(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class vn extends Error{constructor(){super(...arguments),ws(this,"isPasteError",!0)}}function Di(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Ee(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Di(Object(t),!0).forEach(function(n){Ge(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Di(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ge(i,e,t){return(e=Rs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Rs(i){var e=Fs(i,"string");return typeof e=="symbol"?e:e+""}function Fs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function xs(i,e){return Ns(i)||Ds(i,e)||As(i,e)||Os()}function Os(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
4
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function As(i,e){if(i){if(typeof i=="string")return Ni(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Ni(i,e):void 0}}function Ni(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Ds(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Ns(i){if(Array.isArray(i))return i}var _i=5,_s=1e3/60,Ut=10;function $e(i,e,t,n){var r,a=t.modelColumns,o=t.movedColumns,s=t.allColumnXs,l=t.columnCount,u=t.allColumnWidths,h=t.userColumnWidths,c=t.calculatedColumnWidths,g=t.floatingLeftWidth,m=t.maxX;if(e==null||i==null||i>l||i<0)return null;var p=(r=a.get(i))!==null&&r!==void 0?r:z.getModelIndex(i,o),v=n.getColumnHeaderGroup(p,e),f=v!=null,C,S,E;if(v!=null){var w,R,O,y=v.getVisibleRange(o),F=xs(y,2),D=F[0],N=F[1];C=(w=s.get(D))!==null&&w!==void 0?w:g,S=((R=s.get(N))!==null&&R!==void 0?R:m)+((O=u.get(N))!==null&&O!==void 0?O:0),E=[D,N]}else{var L,A,j,I=s.get(i);if(I==null)return null;C=I,S=C+((L=(A=(j=u.get(i))!==null&&j!==void 0?j:h.get(p))!==null&&A!==void 0?A:c.get(p))!==null&&L!==void 0?L:0),E=[i,i]}return{visibleIndex:i,modelIndex:p,left:C,right:S,width:S-C,isColumnGroup:f,range:E,depth:e}}class Ms extends dt{constructor(){super(...arguments),Ge(this,"cursor",null),Ge(this,"draggingOffset",void 0),Ge(this,"initialOffset",void 0),Ge(this,"initialGridPoint",void 0),Ge(this,"scrollingInterval",void 0),Ge(this,"scrollingDirection",void 0),Ge(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var n=e.metrics;if(n){var r=n.left,a=n.lastLeft,o=n.leftOffset,s=n.userColumnWidths,l=n.calculatedColumnWidths,u=n.movedColumns,h=n.allColumnWidths,c=r,g=o;if(t==="left")for(g-=Ut;g<0;){var m;c-=1;var p=z.getModelIndex(r-1,u),v=(m=s.get(p))!==null&&m!==void 0?m:l.get(p);v===void 0?g=0:g+=v,c<0&&(g=0,c=0)}else{g+=Ut;for(var f=h.get(r);f!==void 0&&g>f;){var C;c+=1,g-=f;var S=z.getModelIndex(r+1,u);f=(C=s.get(S))!==null&&C!==void 0?C:l.get(S),c>a&&(g=0,c=a)}}var E=e.state,w=E.mouseX,R=E.mouseY;n==null||w==null||R==null||(this.moveDraggingColumn(w,e,t==="left"?-Ut:Ut),e.setState({left:c,leftOffset:g}),(t==="left"&&c===0&&o===0||t==="right"&&c===a)&&this.clearScrollInterval())}},_s))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var n=t.props.model,r=e.x,a=e.column,o=e.columnHeaderDepth,s=t.metrics;if(!s)throw new Error("Metrics not set");var l=$e(a,o,s,n);if(a==null||l==null||o==null||o>0&&!l.isColumnGroup)return!1;var u=s.rowHeaderWidth;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,l.modelIndex!=null&&o!=null&&n.isColumnMovable(l.modelIndex,o)&&(this.draggingOffset=r-l.left-u,this.initialOffset=this.draggingOffset),!1}onDrag(e,t,n){if(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0)return!1;var r=e.x,a=e.y,o=this.initialGridPoint.columnHeaderDepth,s=t.props.model,l=this.draggingColumn,u=t.metrics;if(!u)throw new Error("Metrics not set");if(!l&&Math.abs(this.initialGridPoint.x-r)<_i&&Math.abs(this.initialGridPoint.y-a)<_i)return!1;if(l==null){var h=$e(this.initialGridPoint.column,o,u,s);if(!h||o==null||!s.isColumnMovable(h.modelIndex)||o>0&&!h.isColumnGroup||h.range[0]==null)return!1;l={range:h.range,depth:o,left:h.left,width:h.width};var c=$e(l.range[0],0,u,s),g=$e(l.range[1],0,u,s);if(!c||!g)return!1;this.draggingColumn=l,t.setState({draggingColumn:l,isDragging:!0})}return this.cursor="move",this.moveDraggingColumn(e.x,t,n.movementX),!0}moveDraggingColumn(e,t,n){var r;if(!(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0||this.draggingColumn==null||n===0)){var a=t.metrics;q(a,"Metrics not set");var o=a.gridX;if(this.initialOffset!==this.draggingOffset){this.draggingOffset<this.initialOffset&&this.initialOffset<this.draggingOffset+n||this.draggingOffset>this.initialOffset&&this.initialOffset>this.draggingOffset+n?this.draggingOffset=this.initialOffset:this.draggingOffset+=n,this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:e-this.draggingOffset-o}),t.setState({draggingColumn:this.draggingColumn});return}var s=this.draggingColumn.depth,l=t.props.model,u=t.state.movedColumns,h=a.floatingLeftWidth,c=a.width,g=a.columnHeaderMaxDepth,m=a.allColumnXs,p=n<0,v=$e(this.draggingColumn.range[0],s,a,l);if(v){var f=e-this.draggingOffset-o,C=f+v.width;this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:f}),t.setState({draggingColumn:this.draggingColumn});var S=$e(z.getColumnAtX(Le(p?f:C,h,c)+o,a,!0),s,a,l),E=l.getColumnHeaderParentGroup(v.modelIndex,v.depth);if(S){if(E!==void 0){var w=E.getVisibleRange(u);if(S.visibleIndex<w[0]){var R,O=this.moveColumn(v,w[0],u);this.draggingOffset=e-((R=m.get(w[0]))!==null&&R!==void 0?R:0),this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:e-this.draggingOffset-o}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:O});return}if(S.visibleIndex>w[1]){var y,F=this.moveColumn(v,w[1]-(v.range[1]-v.range[0]),u),D=(y=$e(w[1],0,a,l))!==null&&y!==void 0?y:{},N=D.right,L=N===void 0?0:N;this.draggingOffset=e-(L-v.width),this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:e-this.draggingOffset-o}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:F});return}}if(!l.isColumnMovable(S.modelIndex)){var A=S.visibleIndex;if(p)for(A+=1;A<v.visibleIndex&&!l.isColumnMovable(z.getModelIndex(A,u));)A+=1;else for(A-=1;A>v.visibleIndex&&!l.isColumnMovable(z.getModelIndex(A,u));)A-=1;if(A!==v.visibleIndex){p||(A-=v.range[1]-v.range[0]);var j=this.moveColumn(v,A,u);t.setState({movedColumns:j,draggingColumn:this.draggingColumn})}var I=$e(A,0,a,l);if(p){var G;this.draggingOffset=e-((G=I==null?void 0:I.left)!==null&&G!==void 0?G:0)}else{var U;this.draggingOffset=e-(((U=I==null?void 0:I.right)!==null&&U!==void 0?U:0)-v.width)}this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:e-this.draggingOffset-o}),t.setState({draggingColumn:this.draggingColumn});return}if(f<=h?this.setScrollInterval(t,"left"):C>c?this.setScrollInterval(t,"right"):this.clearScrollInterval(),S.visibleIndex!==v.visibleIndex&&!(p&&v.visibleIndex<S.visibleIndex||!p&&v.visibleIndex>S.visibleIndex)){for(var W=S.left+S.width*.5,B=l.getColumnHeaderParentGroup(v.modelIndex,v.depth),H,Z=((r=B==null?void 0:B.depth)!==null&&r!==void 0?r:g)-1;Z>=0&&H===void 0;)H=l.getColumnHeaderGroup(S.modelIndex,Z),Z-=1;var X;p&&f<W&&(!H||S.visibleIndex===H.getVisibleRange(u)[0])&&(X=this.moveColumn(v,S.range[0],u)),!p&&C>W&&(!H||S.visibleIndex===H.getVisibleRange(u)[1])&&(X=this.moveColumn(v,S.range[1]-(v.range[1]-v.range[0]),u)),X&&(this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{left:f}),t.setState({movedColumns:X,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,n){var r=e.isColumnGroup?z.moveRange(e.range,t,n):z.moveItem(e.visibleIndex,t,n),a=t-e.range[0],o=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=Ee(Ee({},this.draggingColumn),{},{range:o})),r}onUp(e,t){return this.cursor=null,this.clearScrollInterval(),this.draggingOffset!=null?(this.draggingOffset=void 0,t.setState({draggingColumn:null,isDragging:!1}),!0):!1}}function Mi(i,e,t){return(e=Ps(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ps(i){var e=Is(i,"string");return typeof e=="symbol"?e:e+""}function Is(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class In extends dt{constructor(){super(...arguments),Mi(this,"dragOffset",void 0),Mi(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var n=e.getTheme(),r=e.metrics,a=e.metricCalculator;if(!r)throw new Error("metrics not set");if(n.scrollSnapToColumn){var o=Math.round(t),s=0;return{left:o,leftOffset:s}}var l=Math.floor(t),u=t-l,h=r.allColumnWidths.get(l);if(h==null){var c=e.getMetricState();h=a.getVisibleColumnWidth(l,c)}var g=h*u;return{left:l,leftOffset:g}}isInScrollBar(e,t){var n=t.getTheme(),r=n.scrollBarSize,a=n.scrollBarHoverSize,o=t.metrics;if(!o)throw new Error("metrics not set");var s=e.x,l=e.y,u=o.barLeft,h=o.barWidth,c=o.height,g=o.hasHorizontalBar;return g&&r>0&&l>=c-a&&l<c&&s>u&&s<u+h}getLeftWithOffset(e,t){var n,r=t.metrics;if(!r)throw new Error("metrics not set");var a=e.x,o=r.barWidth,s=r.handleWidth,l=r.lastLeft,u=r.barLeft,h=r.columnCount,c=r.scrollableContentWidth,g=r.scrollableViewportWidth,m=a-u,p=Le((m-((n=this.dragOffset)!==null&&n!==void 0?n:0))/(o-s),0,1);if(h===1)return{left:0,leftOffset:p*(c-g)};var v=p*l;return In.getLeftWithOffsetFromRawLeft(t,v)}onDown(e,t){var n=t.metrics;if(!n)throw new Error("metrics not set");var r=e.x,a=n.handleWidth,o=n.barLeft,s=n.scrollX;if(!this.isInScrollBar(e,t))return!1;var l=r-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var u=this.getLeftWithOffset(e,t),h=u.left,c=u.leftOffset;t.setViewState({left:h,leftOffset:c,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var n=this.getLeftWithOffset(e,t),r=n.left,a=n.leftOffset;return t.setViewState({left:r,leftOffset:a,isDraggingHorizontalScrollBar:!0,isDragging:!0}),!0}return!1}onMove(e,t){return this.isInScrollBar(e,t)}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingHorizontalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}function Pi(i,e,t){return(e=js(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function js(i){var e=ks(i,"string");return typeof e=="symbol"?e:e+""}function ks(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ls extends dt{constructor(){super(...arguments),Pi(this,"cursor","move"),Pi(this,"draggingOffset",void 0)}onDown(e,t){var n=t.props.model,r=e.x,a=e.y,o=e.row,s=t.metrics;if(!s)throw new Error("metrics not set");var l=s.columnHeaderHeight,u=s.rowHeaderWidth,h=s.allRowYs;if(r<=u&&o!==null&&n.isRowMovable(o)){var c=_e(h,o);this.draggingOffset=a-c-l,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var n=t.props.model,r=t.state.draggingRow,a=t.state,o=a.mouseX,s=a.mouseY;if(o==null||s==null)return!1;if(r==null){var l=t.getGridPointFromXY(o,s),u=l.row;if(u!=null&&!n.isRowMovable(u)||(r=u,t.setState({draggingRow:r,isDragging:!0}),r==null))return!1}var h=t.metrics;if(!h)throw new Error("metrics not set");var c=h.top,g=h.lastTop,m=h.bottom,p=h.bottomVisible,v=h.rowCount,f=h.columnHeaderHeight,C=h.allRowHeights,S=h.allRowYs,E=h.height,w=f;if(c<r){var R=r-1;w=_e(S,R)+_e(C,R)*.5+f}var O=E;if(r<m){var y=r+1;O=_e(S,y)+_e(C,y)*.5+f}var F=t.state.movedRows;s<w&&r>0&&n.isRowMovable(r-1)?(F=z.moveItem(r,r-1,F),r-=1):O<s&&r<v-1&&n.isRowMovable(r+1)&&(F=z.moveItem(r,r+1,F),r+=1),t.setState({movedRows:F,draggingRow:r});var D=f+_e(C,c)*.5,N=f+_e(S,p)+_e(C,p)*.5;return s<D&&c>0?t.setState({top:c-1}):s>N&&c<g&&t.setState({top:c+1}),!0}onUp(e,t){return this.draggingOffset!==void 0?(this.draggingOffset=void 0,t.setState({draggingRowOffset:null,draggingRow:null,isDragging:!1}),!0):!1}}function be(i,e,t){return(e=Vs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Vs(i){var e=Us(i,"string");return typeof e=="symbol"?e:e+""}function Us(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class jn extends Oo{constructor(){super(...arguments),be(this,"hiddenCursor","s-resize"),be(this,"defaultCursor","row-resize"),be(this,"pointProperty","y"),be(this,"userSizesProperty","userRowHeights"),be(this,"visibleOffsetProperty","visibleRowYs"),be(this,"visibleSizesProperty","visibleRowHeights"),be(this,"marginProperty","columnHeaderHeight"),be(this,"calculatedSizesProperty","calculatedRowHeights"),be(this,"initialSizesProperty","initialRowHeights"),be(this,"modelIndexesProperty","modelRows"),be(this,"firstIndexProperty","firstRow"),be(this,"treePaddingProperty","treePaddingY"),be(this,"getHiddenItems",z.getHiddenRows),be(this,"getNextShownItem",z.getNextShownRow),be(this,"getSeparator",jn.getRowSeparator)}static getRowSeparator(e,t,n,r){if(!r.allowRowResize)return null;var a=e.x,o=e.y,s=z.getRowSeparatorIndex(a,o,t,r);return s!=null?{index:s,depth:0}:null}setSize(e,t,n){e.setRowHeight(t,n)}resetSize(e,t){e.resetRowHeight(t)}updateSeparator(e,t){e.setState({draggingRowSeparator:t,isDragging:t!==null})}}class Bs extends dt{isInCorner(e,t){var n=t.getTheme(),r=n.scrollBarSize,a=t.metrics;if(!a)throw new Error("metrics not set");var o=e.x,s=e.y,l=a.width,u=a.height,h=a.hasVerticalBar,c=a.hasHorizontalBar;return r>0&&h&&c&&o>=l-r&&s>=u-r&&o<=l&&s<=u}onDown(e,t){return this.isInCorner(e,t)}onUp(e,t){return this.isInCorner(e,t)}onClick(e,t){return this.isInCorner(e,t)}}function Ii(i,e,t){return(e=Hs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Hs(i){var e=$s(i,"string");return typeof e=="symbol"?e:e+""}function $s(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class kn extends dt{constructor(){super(...arguments),Ii(this,"dragOffset",void 0),Ii(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var n=e.getTheme(),r=e.metrics,a=e.metricCalculator;if(!r)throw new Error("metrics not set");if(n.scrollSnapToRow){var o=Math.round(t),s=0;return{top:o,topOffset:s}}var l=Math.floor(t),u=t-l,h=r.allRowHeights.get(l);if(h==null){var c=e.getMetricState();h=a.getVisibleRowHeight(l,c)}var g=h*u;return{top:l,topOffset:g}}isInScrollBar(e,t){var n=t.getTheme(),r=n.scrollBarSize,a=n.scrollBarHoverSize,o=t.metrics;if(!o)throw new Error("metrics not set");var s=e.x,l=e.y,u=o.barTop,h=o.barHeight,c=o.width,g=o.hasVerticalBar;return g&&r>0&&s>=c-a&&s<c&&l>u&&l<u+h}getTopWithOffset(e,t){var n,r=t.metrics;if(!r)throw new Error("metrics not set");var a=e.y,o=r.barHeight,s=r.handleHeight,l=r.lastTop,u=r.barTop,h=r.rowCount,c=r.scrollableContentHeight,g=r.scrollableViewportHeight,m=a-u,p=Le((m-((n=this.dragOffset)!==null&&n!==void 0?n:0))/(o-s),0,1);if(h===1)return{top:0,topOffset:p*(c-g)};var v=p*l;return kn.getTopWithOffsetFromRawTop(t,v)}onDown(e,t){var n=t.metrics;if(!n)throw new Error("metrics not set");var r=e.y,a=n.handleHeight,o=n.barTop,s=n.scrollY;if(!this.isInScrollBar(e,t))return!1;var l=r-o;if(l>=s&&l<=s+a)this.dragOffset=l-s,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var u=this.getTopWithOffset(e,t),h=u.top,c=u.topOffset;t.setViewState({top:h,topOffset:c,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var n=this.getTopWithOffset(e,t),r=n.top,a=n.topOffset;return t.setViewState({top:r,topOffset:a,isDraggingVerticalScrollBar:!0,isDragging:!0}),!0}return!1}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingVerticalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}class Gs extends dt{onDoubleClick(e,t){var n=e.column,r=e.row,a=t.props.model;return we(a)&&n!=null&&r!=null&&a.isEditableRange(J.makeCell(n,r))?(t.startEditing(n,r),!0):!1}}class Ws extends nt{onDown(e,t){switch(e.key){case"a":if(z.isModifierKeyDown(e))return t.selectAll(),!0;break;case"ArrowUp":return this.handleArrowMove(0,-1,e,t);case"ArrowDown":return this.handleArrowMove(0,1,e,t);case"ArrowRight":return this.handleArrowMove(1,0,e,t);case"ArrowLeft":return this.handleArrowMove(-1,0,e,t);case"k":case"K":return z.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return z.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return z.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(z.isModifierKeyDown(e))return!1;var n=t.props.model,r=n.columnCount;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(r-1,t.state.cursorRow,e.shiftKey),!0}case"PageDown":return this.handlePageDown(e,t);case"PageUp":return this.handlePageUp(e,t);case"Home":return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(z.isModifierKeyDown(e)?t.state.cursorColumn:0,z.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var a=t.props.model,o=a.columnCount,s=a.rowCount;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(z.isModifierKeyDown(e)?t.state.cursorColumn:o-1,z.isModifierKeyDown(e)?s-1:t.state.cursorRow,e.shiftKey,!0,!0),!0}case"Escape":return t.state.selectedRanges.length===0?!1:(t.clearSelectedRanges(),{preventDefault:!1,stopPropagation:!0});case"Enter":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?J.SELECTION_DIRECTION.UP:J.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?J.SELECTION_DIRECTION.LEFT:J.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,n,r){var a=n.shiftKey,o=z.isModifierKeyDown(n);a?r.trimSelectedRanges():r.clearSelectedRanges();var s=r.state,l=s.cursorRow,u=s.cursorColumn,h=s.selectionEndColumn,c=s.selectionEndRow,g=a?h:u,m=a?c:l;if(o){var p=r.props.model,v=p.columnCount,f=p.rowCount,C=o&&a,S=null,E=null;e<0?(S=0,E=m):e>0?(S=v-1,E=m):t<0?(S=g,E=0):t>0&&(S=g,E=f-1),S!=null&&E!=null&&r.moveCursorToPosition(S,E,a,!0,C)}else{if(!r.metrics)throw new Error("grid.metrics are not set");var w=r.props.theme,R=w.autoSelectRow,O=R===void 0?!1:R,y=w.autoSelectColumn,F=y===void 0?!1:y;if(O&&e!==0){var D=r.metrics.lastLeft,N=r.state.left;N=Le(N+e,0,D),r.moveCursorToPosition(N,l,a,!1),r.setViewState({left:N})}else if(F&&t!==0){var L=r.metrics.lastTop,A=r.state.top;A=Le(A+t,0,L),r.moveCursorToPosition(A,u,a,!1),r.setViewState({top:A})}else r.moveCursor(e,t,a)}return!0}handlePageUp(e,t){var n=e.shiftKey;n?t.trimSelectedRanges():t.clearSelectedRanges();var r=t.state,a=r.cursorColumn,o=r.selectionEndRow,s=o,l=a;if(s==null)return!1;var u=t.getMetricState(),h=t.metricCalculator,c=h.getMetrics(u),g=c.bottomVisible,m=c.topVisible,p=c.hasHorizontalBar,v=s-(g-m);v-=p?0:1,v=Math.max(v,0);var f=Math.max(v-(s-m),0);return t.moveCursorToPosition(l,v,n,!1),t.setViewState({top:f}),!0}handlePageDown(e,t){var n=e.shiftKey;n?t.trimSelectedRanges():t.clearSelectedRanges();var r=t.state,a=r.selectionEndRow,o=r.cursorColumn,s=a,l=o;if(s===null)return!1;var u=t.getMetricState(),h=t.metricCalculator,c=h.getMetrics(u),g=c.bottomVisible,m=c.topVisible,p=c.hasHorizontalBar,v=c.rowCount,f=c.lastTop,C=v-1,S=g-m+s;S+=p?0:1,S=Math.min(S,C);var E=Math.min(f,S-(s-m));return t.moveCursorToPosition(l,S,n,!1),t.setViewState({top:E}),!0}}class zs extends nt{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var n=t.state.selectedRanges;if(n.length===1){var r=n[0];if(r.startRow===r.endRow&&r.startColumn===r.endColumn){if(!t.metrics)throw new Error("grid.metrics not set");var a=t.props.model,o=r.startRow,s=r.startColumn;if(o!=null){var l=t.getModelRow(o);if((s===0||s==null)&&ut(a)&&a.isRowExpandable(l))return t.toggleRowExpanded(o),!0}}}return!1}}class Ks extends nt{onDown(e,t){if(z.isModifierKeyDown(e))return!1;var n=t.props.model,r=t.state,a=r.cursorColumn,o=r.cursorRow;if(a==null||o==null||!we(n))return!1;var s,l;try{s=t.getModelColumn(a),l=t.getModelRow(o)}catch{return!1}if(!n.isEditableRange(J.makeCell(s,l)))return!1;if(e.key.length===1){var u=t.props.cellInputRendererRegistry,h=n.getColumnRestrictions(s);if(h.length===1){var c=u==null?void 0:u.get(h[0].type);if((c==null?void 0:c.preservesExistingValue)===!0)return t.startEditing(a,o),!0}return t.startEditing(a,o,!0,[1,1],e.key),!0}return e.key==="F2"||e.key==="Enter"?(t.startEditing(a,o),!0):e.key==="Backspace"?(t.startEditing(a,o,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(a,o,""),!0):!1}}var Ys=De.createContext({});function ji(i,e,t,n,r,a,o){try{var s=i[a](o),l=s.value}catch(u){return void t(u)}s.done?e(l):Promise.resolve(l).then(n,r)}function qs(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function o(l){ji(a,n,r,o,s,"next",l)}function s(l){ji(a,n,r,o,s,"throw",l)}o(void 0)})}}function ki(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function je(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ki(Object(t),!0).forEach(function(n){he(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):ki(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function he(i,e,t){return(e=Qs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Qs(i){var e=Xs(i,"string");return typeof e=="symbol"?e:e+""}function Xs(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ae extends T.PureComponent{static getScale(e){var t,n,r,a,o,s=window.devicePixelRatio||1,l=e,u=(t=(n=(r=(a=(o=l.webkitBackingStorePixelRatio)!==null&&o!==void 0?o:l.mozBackingStorePixelRatio)!==null&&a!==void 0?a:l.msBackingStorePixelRatio)!==null&&r!==void 0?r:l.oBackingStorePixelRatio)!==null&&n!==void 0?n:l.backingStorePixelRatio)!==null&&t!==void 0?t:1;return s/u}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),he(this,"renderer",void 0),he(this,"metricCalculator",void 0),he(this,"canvas",void 0),he(this,"canvasContext",void 0),he(this,"canvasWrapper",void 0),he(this,"resizeObserver",void 0),he(this,"animationFrame",void 0),he(this,"prevMetrics",void 0),he(this,"metrics",void 0),he(this,"renderState",void 0),he(this,"documentCursor",void 0),he(this,"hasAddedBlockEvents",void 0),he(this,"dragTimer",void 0),he(this,"keyHandlers",void 0),he(this,"mouseHandlers",void 0),he(this,"getCachedKeyHandlers",xt(l=>[...l,...this.keyHandlers].sort((u,h)=>u.order-h.order))),he(this,"getCachedMouseHandlers",xt(l=>[...l,...this.mouseHandlers].sort((u,h)=>u.order-h.order))),this.handleClick=this.handleClick.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handleEditCellCancel=this.handleEditCellCancel.bind(this),this.handleEditCellChange=this.handleEditCellChange.bind(this),this.handleEditCellCommit=this.handleEditCellCommit.bind(this),this.handleDoubleClick=this.handleDoubleClick.bind(this),this.notifyKeyboardHandlers=this.notifyKeyboardHandlers.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseDrag=this.handleMouseDrag.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleResize=this.handleResize.bind(this),this.handleWheel=this.handleWheel.bind(this),this.getSelectedRanges=this.getSelectedRanges.bind(this);var t=e.isStuckToBottom,n=e.isStuckToRight,r=e.metricCalculator,a=e.movedColumns,o=e.movedRows,s=e.renderer;this.renderer=s||new mn,this.metricCalculator=r||new wi,this.canvas=null,this.canvasContext=null,this.canvasWrapper=De.createRef(),this.resizeObserver=new window.ResizeObserver(this.handleResize),this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.hasAddedBlockEvents=!1,this.dragTimer=null,this.keyHandlers=[new Ks(400),new Ao(450),new Ws(500),new zs(900)],this.mouseHandlers=[new jn(100),new Do(200),new Ls(300),new Ms(400),new Gs(450),new kn(500),new In(600),new Bs(700),new No(800),new _o(875),new Mo(900)],this.state={top:0,left:0,topOffset:0,leftOffset:0,draggingColumn:null,draggingRow:null,draggingRowOffset:null,draggingColumnSeparator:null,draggingRowSeparator:null,isDraggingHorizontalScrollBar:!1,isDraggingVerticalScrollBar:!1,isDragging:!1,mouseX:null,mouseY:null,movedColumns:a,movedRows:o,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:ae,lastSelectedRanges:ae,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:n,updateRevision:0}}componentDidMount(){var e;this.initContext(),(e=this.canvas)===null||e===void 0||e.addEventListener("wheel",this.handleWheel,{passive:!1}),this.canvasWrapper.current!=null&&this.resizeObserver.observe(this.canvasWrapper.current),this.updateCanvas();var t=this.props,n=t.isStuckToBottom,r=t.isStuckToRight,a=this.getStickyScrollPosition(n,r),o=a.top,s=a.left;this.setState({top:o,left:s})}componentDidUpdate(e,t){var n=this.state.renderError;if(n!=null)throw n;var r=xi(e,this.props),a=xi(t,this.state);if(!((r.length===0||r.length===1&&r[0]==="children")&&a.length===0)){var o=this.props,s=o.isStickyBottom,l=o.isStickyRight,u=o.movedColumns,h=o.movedRows,c=o.onMovedColumnsChanged,g=o.onMoveColumnComplete,m=o.onMovedRowsChanged,p=o.onMoveRowComplete,v=o.renderer,f=o.metricCalculator,C=e.isStickyBottom,S=e.isStickyRight,E=e.movedColumns,w=e.movedRows,R=t.movedColumns,O=t.movedRows,y=this.state,F=y.draggingColumn,D=y.draggingRow,N=y.movedColumns,L=y.movedRows,A={};E!==u&&(A.movedColumns=u),w!==h&&(A.movedRows=h),R!==N&&c(N),t.draggingColumn!=null&&F==null&&g(N),O!==L&&m(L),t.draggingRow!=null&&D==null&&p(L),s!==C&&(A.isStuckToBottom=!1),l!==S&&(A.isStuckToRight=!1),v!==e.renderer&&(this.renderer=v??new mn),f!==e.metricCalculator&&(this.metricCalculator=f??new wi);var j=je(je({},this.state),A);if(this.updateMetrics(j),this.requestUpdateCanvas(),this.needToUpdateScroll()){var I=this.getStickyScrollPosition(s,l),G=I.top,U=I.left;j.top=G,j.left=U}this.validateSelection()&&this.checkSelectionChange(t),this.setState(j)}}componentWillUnmount(){var e;this.animationFrame!=null&&cancelAnimationFrame(this.animationFrame),(e=this.canvas)===null||e===void 0||e.removeEventListener("wheel",this.handleWheel),window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),this.resizeObserver.disconnect(),this.stopDragTimer(),this.removeDocumentCursor()}getTheme(){var e=this.props.theme;return Ae.getTheme(this.context,e)}getGridPointFromEvent(e){Ai(this.canvas);var t=this.canvas.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;return this.getGridPointFromXY(n,r)}getGridPointFromXY(e,t){if(!this.metrics)throw new Error("metrics must be set");return z.getGridPointFromXY(e,t,this.metrics)}getMetricState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=this.getTheme(),n=this.props,r=n.model,a=n.stateOverride;if(!this.canvasContext||!this.canvas)throw new Error("Canvas and context must be defined to get metrics");var o=this.canvasContext,s=this.canvas.clientWidth,l=this.canvas.clientHeight,u=e.left,h=e.top,c=e.leftOffset,g=e.topOffset,m=e.movedColumns,p=e.movedRows,v=e.isDraggingHorizontalScrollBar,f=e.isDraggingVerticalScrollBar,C=e.draggingColumn;return je({left:u,top:h,leftOffset:c,topOffset:g,width:s,height:l,context:o,theme:t,model:r,movedColumns:m,movedRows:p,isDraggingHorizontalScrollBar:v,isDraggingVerticalScrollBar:f,draggingColumn:C},a)}getKeyHandlers(){var e=this.props.keyHandlers;return this.getCachedKeyHandlers(e)}getMouseHandlers(){var e=this.props.mouseHandlers;return this.getCachedMouseHandlers(e)}getModelColumn(e){var t,n=(t=this.metrics)===null||t===void 0||(t=t.modelColumns)===null||t===void 0?void 0:t.get(e);if(n===void 0)throw new Error("Unable to get ModelIndex for column ".concat(e));return n}getModelRow(e){var t,n=(t=this.metrics)===null||t===void 0||(t=t.modelRows)===null||t===void 0?void 0:t.get(e);if(n===void 0)throw new Error("Unable to get ModelIndex for row ".concat(e));return n}toggleRowExpanded(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.getModelRow(e),r=this.props.model;ut(r)&&r.isRowExpandable(n)&&r.setRowExpanded(n,!r.isRowExpanded(n),t),this.clearSelectedRanges(),this.commitSelection(),this.moveCursorToPosition(0,e),this.commitSelection(),this.setState({isStuckToBottom:!1})}getStickyScrollPosition(e,t){if(!this.metrics)return{left:this.state.left,top:this.state.top};var n=this.metrics,r=n.bottomVisible,a=n.rowCount,o=n.top,s=n.lastTop,l=n.rightVisible,u=n.columnCount,h=n.left,c=n.lastLeft,g=o,m=h;return e&&(r<a-1&&r>0||o>s)&&(g=s),t&&(l<u-1&&l>0||h>c)&&(m=c),{top:g,left:m}}setSelectedRanges(e){var t=this.props.model,n=t.columnCount,r=t.rowCount,a=this.state,o=a.cursorRow,s=a.cursorColumn,l=a.selectedRanges;if(this.setState({selectedRanges:e,lastSelectedRanges:l}),e.length>0){var u=J.boundedRange(e[0],n,r),h=o,c=s;if(!u.containsCell(s,o)){var g=u.startCell();h=g.row,c=g.column}this.setState({selectionStartColumn:u.startColumn,selectionStartRow:u.startRow,selectionEndColumn:u.endColumn,selectionEndRow:u.endRow,cursorColumn:c,cursorRow:h})}}initContext(){var e=this.canvas,t=this.props.canvasOptions;if(!e)throw new Error("Canvas not set");this.canvasContext=e.getContext("2d",t)}requestUpdateCanvas(){this.animationFrame==null&&(this.animationFrame=requestAnimationFrame(()=>{this.animationFrame=null;try{this.updateCanvas()}catch(e){this.setState({renderError:e})}}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var e=this.canvasContext,t=this.metrics,n=this.renderState;q(e),q(t),q(n),this.renderer.configureContext(e,n);var r=this.props.onViewChanged;r(t),this.drawCanvas()}updateCanvasScale(){var e=this.canvas,t=this.canvasContext,n=this.canvasWrapper;if(!e)throw new Error("canvas not set");if(!t)throw new Error("canvasContext not set");if(!n.current)throw new Error("canvasWrapper not set");var r=n.current.getBoundingClientRect(),a=Math.floor(r.width),o=Math.floor(r.height);if(!(parseFloat(e.style.width)===a&&parseFloat(e.style.height)===o)){var s=Ae.getScale(t);e.style.width="".concat(a,"px"),e.style.height="".concat(o,"px"),e.width=a*s,e.height=o*s,t.scale(s,s)}}updateScrollBounds(){if(!this.metrics)throw new Error("metrics not set");var e=this.state,t=e.left,n=e.top,r=this.metrics,a=r.lastLeft,o=r.lastTop;t>a&&this.setState({left:a,leftOffset:0}),n>o&&this.setState({top:o,topOffset:0})}needToUpdateScroll(){if(!this.metrics||!this.prevMetrics)return!1;var e=this.metrics,t=e.rowCount,n=e.columnCount,r=e.height,a=e.width,o=this.prevMetrics,s=o.rowCount,l=o.columnCount,u=o.height,h=o.width;if(s!==t||r!==u){var c=this.state.isStuckToBottom;if(c)return!0}if(l!==n||a!==h){var g=this.state.isStuckToRight;if(g)return!0}return!1}updateMetrics(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state;this.prevMetrics=this.metrics;var t=this.metricCalculator,n=this.getMetricState(e);return this.metrics=t.getMetrics(n),this.updateScrollBounds(),this.metrics}checkSelectionChange(e){var t=e.selectedRanges,n=this.state.selectedRanges;if(n!==t){var r=this.props.onSelectionChanged;r(n)}}validateSelection(){for(var e=this.props.model,t=this.state.selectedRanges,n=e.columnCount,r=e.rowCount,a=0;a<t.length;a+=1){var o=t[a];if(o.endColumn!=null&&o.endColumn>=n||o.endRow!=null&&o.endRow>=r)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var e=this.state.selectedRanges;this.setState({selectedRanges:ae,lastSelectedRanges:e})}trimSelectedRanges(){var e=this.state.selectedRanges;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}getSelectedRanges(){var e=this.state.selectedRanges;return e}beginSelection(e,t){this.setState({selectionStartColumn:e,selectionStartRow:t,selectionEndColumn:e,selectionEndRow:t,cursorColumn:e,cursorRow:t})}moveSelection(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;this.setState(a=>{var o=a.selectedRanges,s=a.selectionStartRow,l=a.selectionStartColumn,u=this.props.theme,h=u.autoSelectRow,c=u.autoSelectColumn;if(n&&o.length>0){var g=o[o.length-1],m=null,p=null,v=null,f=null;if(r){var C,S,E,w;m=h!==void 0&&h?null:Math.min(e??0,(C=g.startColumn)!==null&&C!==void 0?C:0),p=c!==void 0&&c?null:Math.min(t??0,(S=g.startRow)!==null&&S!==void 0?S:0),v=h!==void 0&&h?null:Math.max(e??0,(E=g.endColumn)!==null&&E!==void 0?E:0),f=c!==void 0&&c?null:Math.max(t??0,(w=g.endRow)!==null&&w!==void 0?w:0)}else m=g.startColumn,p=g.startRow,(l!=null||s!=null)&&((h===void 0||!h)&&(m=l),(c===void 0||!c)&&(p=s)),v=h!==void 0&&h?null:e,f=c!==void 0&&c?null:t;var R=J.makeNormalized(m,p,v,f);if(g.equals(R))return null;var O=[...o];return O[O.length-1]=R,{selectedRanges:O,selectionEndColumn:e,selectionEndRow:t}}var y=[...o],F=h!==void 0&&h?null:e,D=c!==void 0&&c?null:t;return y.push(J.makeNormalized(F,D,F,D)),{selectedRanges:y,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var t=this.props.theme,n=t.autoSelectRow,r=e.selectedRanges,a=e.lastSelectedRanges,o=e.cursorRow,s=e.cursorColumn;if(r.length===1&&(n!==void 0&&n?J.rowCount(r)===1:J.cellCount(r)===1)&&J.rangeArraysEqual(r,a))return{selectedRanges:ae,lastSelectedRanges:ae,cursorColumn:null,cursorRow:null};var l=r.slice();if(l.length>1){for(var u=l[l.length-1],h=0;h<l.length-1;h+=1){var c=l[h];if(c.contains(u)){var g=c.subtract(u);l.pop(),l.splice(h,1),l=l.concat(g);break}}l=J.consolidate(l)}var m=s,p=o;if(!J.containsCell(l,s,o)){var v=this.props.model,f=v.columnCount,C=v.rowCount,S=J.nextCell(J.boundedRanges(r,f,C));S!=null?(m=S.column,p=S.row):(m=null,p=null)}l.length===0&&(m=null,p=null);var E=l.length!==r.length||l.some((w,R)=>!w.equals(r[R]));return{cursorRow:p,cursorColumn:m,selectedRanges:E?l:r,lastSelectedRanges:r}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var n=this.metrics,r=n.gridY,a=n.height,o=n.lastTop,s=n.userRowHeights,l=n.rowHeight,u=a-r,h=Math.round(u/2)+((t=s.get(e))!==null&&t!==void 0?t:l),c=this.getMetricState(),g=this.metricCalculator.getLastTop(c,e+1,h);this.setState({top:Math.min(o,g),selectedRanges:[new J(null,e,null,e)],isStuckToBottom:!1});var m=this.state.cursorColumn;this.moveCursorToPosition(m,e,!1,!1)}}selectAll(){var e=this.props,t=e.model,n=e.theme,r=n.autoSelectRow,a=n.autoSelectColumn,o=a!==void 0&&a?null:0,s=a!==void 0&&a?null:t.rowCount-1,l=r!==void 0&&r?null:0,u=r!==void 0&&r?null:t.columnCount-1;this.setSelectedRanges([new J(l,o,u,s)])}moveCursor(e,t,n){var r=this.state,a=r.cursorRow,o=r.cursorColumn,s=r.selectionEndColumn,l=r.selectionEndRow,u=n?s:o,h=n?l:a;if(h===null||u===null){var c=this.state,g=c.left,m=c.top;this.moveCursorToPosition(g,m,n)}else{var p=this.props.model,v=p.columnCount,f=p.rowCount,C=Le(u+e,0,v-1),S=Le(h+t,0,f-1);this.moveCursorToPosition(C,S,n)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:J.SELECTION_DIRECTION.DOWN,t=this.props.model,n=t.columnCount,r=t.rowCount,a=this.state,o=a.cursorRow,s=a.cursorColumn,l=a.selectedRanges,u=l.length>0?l:[J.makeCell(s,o)],h=null;if(u.length===1&&J.cellCount(u)===1){var c,g=new J(0,0,n-1,r-1);h=(c=g.nextCell(s,o,e))!==null&&c!==void 0?c:g.startCell(e)}else h=J.nextCell(J.boundedRanges(u,n,r),s,o,e);if(h!=null){var m=h,p=m.column,v=m.row;this.setState({cursorColumn:p,cursorRow:v}),J.containsCell(l,p,v)||this.setState({selectedRanges:[J.makeCell(p,v)],selectionStartColumn:p,selectionStartRow:v,selectionEndColumn:p,selectionEndRow:v}),this.moveViewToCell(h.column,h.row)}}moveCursorToPosition(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;n||this.beginSelection(e,t),this.moveSelection(e,t,n,a),r&&this.moveViewToCell(e,t)}moveViewToCell(e,t){if(!this.metrics)throw new Error("metrics not set");var n=this.metricCalculator,r=this.metrics,a=r.bottomVisible,o=r.rightVisible,s=r.topVisible,l=r.leftVisible,u=this.getMetricState(this.state),h=this.state,c=h.top,g=h.left,m=h.topOffset,p=h.leftOffset;t!=null&&!z.isFloatingRow(t,this.metrics)&&(t<s?(c=n.getTopForTopVisible(u,t),m=0):t>a&&(c=n.getTopForBottomVisible(u,t),m=0)),e!=null&&!z.isFloatingColumn(e,this.metrics)&&(e<l?(g=n.getLeftForLeftVisible(u,e),p=0):e>o&&(g=n.getLeftForRightVisible(u,e),p=0)),this.setViewState({top:c,left:g,topOffset:m,leftOffset:p})}setViewState(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!this.metrics)throw new Error("metrics not set");var n=this.props,r=n.isStickyBottom,a=n.isStickyRight,o=e.top,s=e.left,l=this.metrics,u=l.lastTop,h=l.lastLeft,c=l.hasVerticalBar,g=l.hasHorizontalBar;o!=null&&c&&this.setState({isStuckToBottom:r&&o>=u}),s!=null&&g&&this.setState({isStuckToRight:a&&s>=h}),this.setState(e),t&&this.forceUpdate()}startEditing(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,o=this.props.model;if(!we(o))throw new Error("model is not editable");var s=this.getModelColumn(e),l=this.getModelRow(t),u={column:e,row:t,selectionRange:r,value:a!==void 0?a:o.editValueForCell(s,l),isQuickEdit:n};this.setState({editingCell:u,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,n){var r=this.props.model,a=this.getModelColumn(e),o=this.getModelRow(t);return we(r)&&r.isValidForCell(a,o,n)}pasteValue(e){var t=this;return qs(function*(){var n=t.props.model,r=t.state,a=r.movedColumns,o=r.movedRows,s=r.selectedRanges;try{if(Ti(n),!n.isEditable||!s.every(C=>n.isEditableRange(C)))throw new vn("Can't paste in to read-only area.");if(s.length<=0)throw new vn("Select an area to paste to.");if(typeof e=="string"){var l=[],u=z.getModelRanges(s,a,o);J.forEachCell(u,(C,S)=>{l.push({column:C,row:S,text:e})}),yield n.setValues(l);return}var h=e.length,c=e[0].length,g=n.columnCount,m=n.rowCount,p=s;p.every(C=>{var S,E;return J.cellCount([C])===1&&((S=C.startColumn)!==null&&S!==void 0?S:0)+c<=g&&((E=C.startRow)!==null&&E!==void 0?E:0)+h<=m})&&(p=p.map(C=>{var S,E;return new J(C.startColumn,C.startRow,((S=C.startColumn)!==null&&S!==void 0?S:0)+c-1,((E=C.startRow)!==null&&E!==void 0?E:0)+h-1)}),t.setSelectedRanges(p));var v=[];p.forEach(C=>{var S;if(((S=C.startColumn)!==null&&S!==void 0?S:0)+c>g)throw new vn("Pasted content would overflow columns.");for(var E=0;E<c;E+=1)for(var w=0;w<h;w+=1){var R,O;v.push({column:((R=C.startColumn)!==null&&R!==void 0?R:0)+E,row:((O=C.startRow)!==null&&O!==void 0?O:0)+w,text:e[w][E]})}}),yield n.setValues(v)}catch(C){var f=t.props.onError;f(C instanceof Error?C:new Error("".concat(C)))}})()}setValueForCell(e,t,n){var r=this.props,a=r.model,o=r.onError;Ti(a);var s=this.getModelColumn(e),l=this.getModelRow(t);return a.isValidForCell(s,l,n)?(a.setValueForCell(s,l,n).catch(u=>{o(u instanceof Error?u:new Error("".concat(u)))}),!0):!1}setValueForRanges(e,t){var n=this.props,r=n.model,a=n.onError,o=this.state,s=o.movedColumns,l=o.movedRows,u=z.getModelRanges(e,s,l);we(r)&&r.setValueForRanges(u,t).catch(h=>{a(h instanceof Error?h:new Error("".concat(h)))})}isSelected(e,t){for(var n=this.state.selectedRanges,r=0;r<n.length;r+=1){var a,o,s=n[r],l=s.startRow===null||s.startRow<=e&&e<=((a=s.endRow)!==null&&a!==void 0?a:0),u=s.startColumn===null||s.startColumn<=t&&t<=((o=s.endColumn)!==null&&o!==void 0?o:0);if(l&&u)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==Ae.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=Ae.getCursorClassName(e),this.documentCursor!=null&&document.documentElement.classList.add(this.documentCursor),document.documentElement.classList.add("grid-block-events"),this.hasAddedBlockEvents=!0)}removeDocumentCursor(){this.documentCursor!=null&&(document.documentElement.classList.remove(this.documentCursor),this.documentCursor=null),this.hasAddedBlockEvents&&(document.documentElement.classList.remove("grid-block-events"),this.hasAddedBlockEvents=!1)}startDragTimer(e){this.stopDragTimer();var t=new MouseEvent("custom",e.nativeEvent);this.dragTimer=setTimeout(()=>{this.handleMouseDrag(t)},Ae.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var e=this.renderer,t=this.canvasContext,n=this.renderState;t.save(),e.drawCanvas(n),t.restore()}focus(){var e;(e=this.canvas)===null||e===void 0||e.focus()}isFocused(){return document.activeElement===this.canvas}handleClick(e){for(var t,n=this.getGridPointFromEvent(e),r=this.getMouseHandlers(),a=0;a<r.length;a+=1){var o=r[a];if(o.onClick(n,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}(t=this.canvas)===null||t===void 0||t.focus()}handleContextMenu(e){for(var t=this.getGridPointFromEvent(e),n=this.getMouseHandlers(),r=0;r<n.length;r+=1){var a=n[r];if(a.onContextMenu(t,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}}notifyKeyboardHandlers(e,t){for(var n=this.getKeyHandlers(),r=null,a=0;a<n.length;a+=1){var o=n[a],s=o[e]!=null&&o[e](t,this);if(s!==!1){var l,u;o.cursor!=null&&(r=o.cursor);var h=s;(!((l=h==null?void 0:h.stopPropagation)!==null&&l!==void 0)||l)&&t.stopPropagation(),(!((u=h==null?void 0:h.preventDefault)!==null&&u!==void 0)||u)&&t.preventDefault();break}}this.setState({cursor:r})}handleKeyDown(e){this.notifyKeyboardHandlers("onDown",e)}handleKeyUp(e){this.notifyKeyboardHandlers("onUp",e)}notifyMouseHandlers(e,t){for(var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=this.getGridPointFromEvent(t),o=this.getMouseHandlers(),s=null,l=0;l<o.length;l+=1){var u=o[l],h=u[e]!=null&&u[e](a,this,t);if(h!==!1){var c,g;u.cursor!=null&&(s=u.cursor,r&&this.addDocumentCursor(s));var m=h;(!((c=m==null?void 0:m.stopPropagation)!==null&&c!==void 0)||c)&&t.stopPropagation(),(!((g=m==null?void 0:m.preventDefault)!==null&&g!==void 0)||g)&&t.preventDefault();break}}if(this.setState({cursor:s}),n){var p=a.x,v=a.y;this.setState({mouseX:p,mouseY:v})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){var t=this.state.isDragging;t&&e.button!==0||(window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),this.stopDragTimer(),this.removeDocumentCursor(),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onUp",e,!1),t&&this.setState({isDragging:!1})))}handleResize(){if(this.updateCanvas(),!this.metrics)throw new Error("metrics not set");this.forceUpdate()}forceUpdate(e){this.setState(t=>{var n=t.updateRevision,r=n===void 0?0:n;return{updateRevision:(r+1)%Number.MAX_SAFE_INTEGER}}),super.forceUpdate(e)}handleWheel(e){if(this.notifyMouseHandlers("onWheel",e),!e.defaultPrevented){var t=this.metricCalculator,n=this.metrics,r=this.getMetricState();if(!n)throw new Error("metrics not set");for(var a=n.lastTop,o=n.lastLeft,s=n.columnCount,l=n.rowCount,u=n.scrollableContentWidth,h=n.scrollableViewportWidth,c=n.scrollableContentHeight,g=n.scrollableViewportHeight,m=n.hasHorizontalBar,p=n.hasVerticalBar,v=n.top,f=n.left,C=n.topOffset,S=n.leftOffset,E=this.getTheme(),w=z.getScrollDelta(e,n.barWidth,n.barHeight,n.rowHeight,n.rowHeight),R=w.deltaX,O=w.deltaY;m&&R!==0;){if(S+=R,R=0,s>1){if(S>0&&f>=o||S<0&&f<=0){S=0;break}}else{if(S<=0){S=0;break}var y=u-h;if(S>=y){S=y;break}}if(S>0){var F,D=(F=n.allColumnWidths.get(f))!==null&&F!==void 0?F:t.getVisibleColumnWidth(f,r);S>=D?(R=S-D,S=0,f+=1):E.scrollSnapToColumn&&s>1&&(S=0,f+=1)}else if(S<0){var N,L=(N=n.allColumnWidths.get(f-1))!==null&&N!==void 0?N:t.getVisibleColumnWidth(f-1,r);Math.abs(S)<=L&&E.scrollSnapToColumn&&s>1?(S=0,f-=1):(R=S+L,S=0,f-=1)}}for(;p&&O!==0;){if(C+=O,O=0,l>1){if(C>0&&v>=a||C<0&&v<=0){C=0;break}}else{if(C<=0){C=0;break}var A=c-g;if(C>=A){C=A;break}}if(C>0){var j,I=(j=n.allRowHeights.get(v))!==null&&j!==void 0?j:t.getVisibleRowHeight(v,r);C>=I?(O=C-I,C=0,v+=1):E.scrollSnapToRow&&l>1&&(C=0,v+=1)}else if(C<0){var G,U=(G=n.allRowHeights.get(v-1))!==null&&G!==void 0?G:t.getVisibleRowHeight(v-1,r);Math.abs(C)<=U&&E.scrollSnapToRow&&l>1?(C=0,v-=1):(O=C+U,C=0,v-=1)}}(n.top!==v||n.left!==f||n.topOffset!==C||n.leftOffset!==S)&&(this.setViewState({top:v,left:f,topOffset:C,leftOffset:S}),e.stopPropagation(),e.preventDefault())}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var n=t.editingCell;try{return Ai(n),{editingCell:je(je({},n),{},{value:e})}}catch(a){var r=this.props.onError;return r(a instanceof Error?a:new Error("".concat(a))),null}})}handleEditCellCommit(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.direction,r=n===void 0?Ue.DOWN:n,a=t.fillRange,o=a===void 0?!1:a,s=this.state,l=s.editingCell,u=s.selectedRanges;if(!l)throw new Error("editingCell not set");var h=l.column,c=l.row;if(!this.isValidForCell(h,c,e)){r===null&&this.setState({editingCell:null});return}o?this.setValueForRanges(u,e):this.setValueForCell(h,c,e),r!==null&&this.moveCursorInDirection(r),this.setState({editingCell:null}),this.focus()}renderInputField(){var e=this.props.model,t=this.state.editingCell,n=this.metrics;if(t==null||n==null||!we(e))return null;var r=t.selectionRange,a=t.value,o=t.isQuickEdit,s=t.column,l=t.row,u=n.scrollX,h=n.gridX,c=n.gridY,g=n.allColumnXs,m=n.allRowYs,p=n.allColumnWidths,v=n.allRowHeights,f=this.getTheme(),C=f.activeCellSelectionBorderWidth,S=f.rowBackgroundColors,E=f.maxDepth,w=f.cellHorizontalPadding,R=g.get(s),O=m.get(l),y=p.get(s),F=v.get(l),D=h+(R??0)<=0&&u<=0?C:0,N,L;try{N=this.getModelColumn(s),L=this.getModelRow(l)}catch{return null}var A,j;if(N!=null&&L!=null){var I;A=(I=e.backgroundColorForCell(N,L,f))!==null&&I!==void 0?I:void 0,j=e.colorForCell(N,L,f)}if(A==null&&S){var G=mn.getCachedBackgroundColors(S,E),U=ut(e)?e.depthForRow(l):0,W=G[l%G.length];A=W[Math.min(U,W.length-1)]}var B=R!=null&&O!=null&&y!=null&&F!=null?{position:"absolute",left:h+R+D,top:c+O,width:y-D,height:F,"--grid-cell-bg":A,"--grid-cell-fg":j,"--grid-row-height":"".concat(F,"px"),"--grid-font-size":f.font.split(" ")[0],"--grid-cell-horizontal-padding":"".concat(w,"px")}:{opacity:0},H=N!=null&&L!=null?{textAlign:e.textAlignForCell(N,L)}:void 0,Z=N!=null&&L!=null?e.isValidForCell(N,L,a):!1,X=this.props.cellInputRendererRegistry,re=N!=null?e.getColumnRestrictions(N):ae,ge={selectionRange:r,className:ee({error:!Z}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:o,style:H,value:a,restrictions:re},b=re.length===1?X==null?void 0:X.get(re[0].type):void 0;return d.jsx("div",{style:B,children:b!=null?b(ge):d.jsx(ys,je({},ge))},"".concat(s,",").concat(l))}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var e=this.state,t=e.cursorColumn,n=e.cursorRow,r=e.draggingColumn,a=e.draggingColumnSeparator,o=e.draggingRow,s=e.draggingRowOffset,l=e.draggingRowSeparator,u=e.editingCell,h=e.isDraggingHorizontalScrollBar,c=e.isDraggingVerticalScrollBar,g=e.isDragging,m=e.mouseX,p=e.mouseY,v=e.selectedRanges,f=this.props,C=f.model,S=f.stateOverride,E=this.metrics,w=this.canvasContext,R=this.getTheme(),O=this.canvas.clientWidth,y=this.canvas.clientHeight;return q(E),this.renderState=je({width:O,height:y,context:w,theme:R,model:C,metrics:E,mouseX:m,mouseY:p,selectedRanges:v,draggingColumn:r,draggingColumnSeparator:a,draggingRow:o,draggingRowOffset:s,draggingRowSeparator:l,editingCell:u,isDraggingHorizontalScrollBar:h,isDraggingVerticalScrollBar:c,isDragging:g,cursorColumn:t,cursorRow:n},S),this.renderState}render(){var e=this.props.children,t=this.state.cursor;return d.jsxs("div",{className:"grid-wrapper",ref:this.canvasWrapper,children:[d.jsx("canvas",{className:ee("grid-canvas",Ae.getCursorClassName(t)),ref:n=>{this.canvas=n},onClick:this.handleClick,onContextMenu:this.handleContextMenu,onDoubleClick:this.handleDoubleClick,onKeyDown:this.handleKeyDown,onKeyUp:this.handleKeyUp,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,tabIndex:0,children:"Your browser does not support HTML canvas. Update your browser?"}),this.renderInputField(),e]})}}he(Ae,"contextType",Ys);he(Ae,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:ae,mouseHandlers:ae,movedColumns:ae,movedRows:ae,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:i=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:i=>{},onTokenClicked:i=>{qa(i)&&window.open(i.href,"_blank","noopener,noreferrer")},cellInputRendererRegistry:new Map,stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});he(Ae,"pixelsPerLine",100/3);he(Ae,"dragTimeout",1e3);he(Ae,"getTheme",xt((i,e)=>je(je(je({},Po),i),e)));function Li(i,e,t){return(e=Zs(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Zs(i){var e=Js(i,"string");return typeof e=="symbol"?e:e+""}function Js(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Bt=Te.module("AdvancedFilterCreatorFilterItem");class Ln extends T.PureComponent{static getLabelForFilter(e,t){try{if(_.isNumberType(e)||_.isCharType(e))return Qa(t);if(_.isTextType(e))return Xa(t);if(_.isDateType(e))return Za(t);if(_.isBooleanType(e))return Ja(t);throw new Error("Unrecognized column type: ".concat(e))}catch(n){return Bt.warn(n),""}}constructor(e){super(e),Li(this,"typeDropdown",void 0),Li(this,"getCachedIsValid",xt((s,l,u,h,c)=>{try{return!u||c.makeAdvancedValueFilter(s,l,u,h)!=null}catch{return!1}})),this.handleDelete=this.handleDelete.bind(this),this.handleTypeChange=this.handleTypeChange.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.typeDropdown=null;var t=e.value,n=t===void 0?"":t,r=e.filterTypes,a=e.selectedType,o=a===void 0?r[0]:a;this.state={selectedType:o,value:n}}componentDidMount(){var e;(e=this.typeDropdown)===null||e===void 0||e.focus()}componentDidUpdate(e){var t=this.props,n=t.value,r=t.selectedType;r!==void 0&&e.selectedType!==r&&this.setState({selectedType:r}),n!==void 0&&e.value!==n&&this.setState({value:n})}handleTypeChange(e){var t=e;Bt.debug2("typeChange",t),this.setState({selectedType:t});var n=this.props.onChange,r=this.state.value;r!=null&&r.length>0&&n(t,r)}handleValueChange(e){Bt.debug2("valueChange");var t=e.target.value;this.setState({value:t});var n=this.props.onChange,r=this.state.selectedType;r!=null&&n(r,t)}handleDelete(){Bt.debug("delete");var e=this.props.onDelete;e()}render(){for(var e=this.props,t=e.column,n=e.filterTypes,r=e.formatter,a=e.tableUtils,o=this.state,s=o.selectedType,l=o.value,u=!_.isBooleanType(t.type),h=[],c=this.getCachedIsValid(t,s,l,r.timeZone,a),g=0;g<n.length;g+=1){var m=n[g],p=Ln.getLabelForFilter(t.type,m),v=d.jsx("option",{value:m,children:p},m);h.push(v)}return d.jsx("div",{className:"advanced-filter-creator-filter-item",children:d.jsxs("div",{className:"form-row",children:[d.jsx("div",{className:"form-group col",children:d.jsx(Rt,{className:"form-control",value:s,onChange:this.handleTypeChange,ref:f=>{this.typeDropdown=f},children:h})}),u&&d.jsx("div",{className:"form-group col",children:d.jsx("div",{className:"input-group",children:d.jsx("input",{type:"text",className:ee("form-control",{error:!c}),placeholder:"Enter value",value:l,onChange:this.handleValueChange})})}),d.jsx("div",{className:"form-group col-1 px-0",children:d.jsx(te,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:Nn,tooltip:"Remove Filter"})})]})})}}function An(i,e,t){return(e=el(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function el(i){var e=tl(i,"string");return typeof e=="symbol"?e:e+""}function tl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Vi=Te.module("AdvancedFilterCreatorSelectValueList");class At extends T.PureComponent{static indexOf(e,t){for(var n=0;n<t.length;n+=1){var r=t[n];if(r===e||r!=null&&r.valueOf!=null&&e!=null&&e.valueOf!=null&&r.valueOf()===e.valueOf())return n}return-1}constructor(e){super(e),An(this,"dh",void 0),An(this,"list",void 0),this.handleSelect=this.handleSelect.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this);var t=this.props,n=t.selectedValues,r=t.dh;this.dh=r,this.list=null,this.state={itemCount:0,items:[],offset:0,selectedValues:n,isLoading:!0}}componentDidMount(){var e=this.props.table;e&&this.startListening(e)}componentDidUpdate(e){var t=this.props,n=t.filters,r=t.invertSelection,a=t.selectedValues,o=t.table;e.table!==o&&(e.table&&this.stopListening(e.table),o&&this.startListening(o),this.resetViewport()),e.invertSelection!==r&&this.setState({selectedValues:[]},this.handleSelectionUpdate),e.selectedValues!==a&&this.setState({selectedValues:a},this.handleSelectionUpdate),e.filters!==n&&(o==null||o.applyFilter(n),this.resetViewport())}componentWillUnmount(){var e=this.props.table;e&&this.stopListening(e)}handleSelect(e,t){var n=this.props.invertSelection,r=this.state.selectedValues;r=[...r];var a=At.indexOf(t,r);a>=0?r.splice(a,1):r.push(t);var o=a<0;n&&(o=!o);var s=this.state.offset,l=this.state.items;l=[...l];var u=e-s;u>=0&&u<l.length&&(l[u].isSelected=o),this.setState({items:l,selectedValues:r});var h=this.props.onChange;h(r,n)}handleViewportChange(e,t){this.updateViewport(e,t)}handleSelectionUpdate(){this.updateItemSelection()}handleTableUpdate(e){var t=this.props,n=t.table,r=t.formatter;if(n){for(var a=e.detail,o=a.offset,s=[],l=n.columns[0],u=0;u<a.rows.length;u+=1){var h=a.rows[u],c=h.get(l),g=void 0;c==null?g=d.jsx("i",{className:"text-muted",children:"null"}):c===""?g=d.jsx("i",{className:"text-muted",children:"empty"}):g=r.getFormattedString(c,l.type,l.name);var m=this.isValueSelected(c);s.push({displayValue:g,value:c,isSelected:m})}Vi.debug2("Received table update:",o,s.length);var p=n.size;this.setState({itemCount:p,items:s,offset:o,isLoading:!1})}}isValueSelected(e){var t=this.props.invertSelection,n=this.state.selectedValues,r=At.indexOf(e,n);return t?r<0:r>=0}startListening(e){e.addEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}stopListening(e){e.removeEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}resetViewport(){this.list&&this.list.topRow!=null&&this.list.bottomRow!=null&&this.updateViewport(this.list.topRow,this.list.bottomRow,!0)}updateItemSelection(){var e=this.state.items;e=[...e];for(var t=0;t<e.length;t+=1){var n=e[t],r=n.value;n.isSelected=this.isValueSelected(r)}this.setState({items:e})}updateViewport(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=this.props.table;if(r!=null){n&&this.setState({isLoading:!0});var a=t-e+1,o=Math.max(0,e-a*3),s=Math.max(o,t+a*3);Vi.debug2("Setting viewport",o,",",s),r.setViewport(o,s)}}render(){var e=this.state,t=e.offset,n=e.isLoading,r=e.items,a=e.itemCount;return d.jsxs("div",{className:"select-value-list-wrapper",children:[d.jsx(Io,{itemCount:a,items:r,offset:t,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:o=>{this.list=o}}),d.jsx(Mn,{in:n,mountOnEnter:!0,unmountOnExit:!0,children:d.jsx("div",{className:"loading-list",children:d.jsx(qt,{className:"loading-spinner-large"})})})]})}}An(At,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});function Ft(i,e,t){return(e=nl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function nl(i){var e=il(i,"string");return typeof e=="symbol"?e:e+""}function il(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Nt extends T.PureComponent{constructor(e){super(e),Ft(this,"searchTablePromise",void 0),Ft(this,"tableUtils",void 0),Ft(this,"updateFilterTimer",void 0),this.handleSelectAllClick=this.handleSelectAllClick.bind(this),this.handleClearAllClick=this.handleClearAllClick.bind(this),this.handleListChange=this.handleListChange.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUpdateFilterTimeout=this.handleUpdateFilterTimeout.bind(this);var t=e.dh,n=e.invertSelection,r=e.selectedValues;this.tableUtils=new _(t),this.state={filters:[],invertSelection:n,selectedValues:r,searchText:""}}componentDidMount(){this.initSearchTable()}componentDidUpdate(e,t){var n=this.props,r=n.invertSelection,a=n.selectedValues,o=n.table;e.table!==o&&this.initSearchTable(),e.invertSelection!==r&&this.setState({invertSelection:r}),e.selectedValues!==a&&this.setState({selectedValues:a});var s=this.state,l=s.table,u=s.searchText;l!==t.table&&(t.table!=null&&t.table.close(),l!=null&&this.startUpdateFilterTimer()),u!==t.searchText&&this.startUpdateFilterTimer()}componentWillUnmount(){var e=this.state.table;e!=null&&e.close(),this.searchTablePromise=void 0,this.stopUpdateFilterTimer()}getColumnName(){var e=this.props.table;return e!=null?e.columns[0].name:""}getDisplayedValuesCount(){var e=this.state,t=e.invertSelection,n=e.selectedValues,r=e.table;return r==null?null:t?r.totalSize-n.length:n.length}getDisplayedValueText(){var e=this.getDisplayedValuesCount(),t=this.state.table,n=this.props.formatter;if(e!=null&&t!=null){var r=n.getFormattedString(e,"long"),a=n.getFormattedString(t.totalSize,"long"),o="";return e<1e6&&(o="Displaying "),"".concat(o).concat(r," of ").concat(a)}return null}initSearchTable(){var e=this.props.table;if(e!=null){var t=e.copy();this.searchTablePromise=t,this.searchTablePromise.then(n=>{this.searchTablePromise===t?(this.setState({table:n}),this.searchTablePromise=void 0):n.close()})}}handleListChange(e,t){this.setState({selectedValues:e,invertSelection:t});var n=this.props.onChange;n(e,t)}handleSearchChange(e){var t=e.target.value;this.setState({searchText:t})}handleSelectAllClick(){this.resetSelection(!0)}handleClearAllClick(){this.resetSelection(!1)}handleUpdateFilterTimeout(){this.updateFilterTimer=void 0,this.updateTableFilter()}resetSelection(e){var t=[];this.setState({invertSelection:e,selectedValues:t});var n=this.props.onChange;n(t,e)}startUpdateFilterTimer(){this.stopUpdateFilterTimer(),this.updateFilterTimer=setTimeout(this.handleUpdateFilterTimeout,Nt.searchDebounceTime)}stopUpdateFilterTimer(){this.updateFilterTimer!=null&&(clearTimeout(this.updateFilterTimer),this.updateFilterTimer=void 0)}updateTableFilter(){var e=this.state,t=e.table,n=e.searchText,r=this.props.timeZone,a=this.tableUtils,o=t==null?void 0:t.columns[0],s=[];if(o!=null){var l;if(n.length>0){var u=null;_.isCharType(o.type)?u=a.makeQuickFilter(o,n):_.isTextType(o.type)?u=a.makeQuickFilter(o,"~".concat(n),r):u=a.makeQuickFilter(o,">=".concat(n),r),u!=null?s.push(u):l="Invalid search text"}this.setState({filters:s,error:l})}}render(){var e=this.state,t=e.error,n=e.filters,r=e.invertSelection,a=e.selectedValues,o=e.searchText,s=e.table,l=this.props,u=l.dh,h=l.formatter,c=l.showSearch,g=this.getColumnName(),m=this.getDisplayedValueText(),p=g?"Find ".concat(g,"..."):"";return d.jsxs("div",{className:"advanced-filter-creator-select-value",children:[d.jsxs("div",{className:c?"form-group":"",children:[d.jsx("label",{htmlFor:"advanced-filter-creator-select-value-input",children:"Select Values"}),c&&d.jsx("input",{type:"text",className:ee("form-control",{"is-invalid":t!=null}),id:"advanced-filter-creator-select-value-input",placeholder:p,value:o,onChange:this.handleSearchChange})]}),d.jsx(At,{dh:u,table:s,filters:n,invertSelection:r,selectedValues:a,formatter:h,onChange:this.handleListChange}),d.jsxs("div",{className:"advanced-filter-creator-select-meta-row",children:[d.jsxs("div",{children:[d.jsx(te,{kind:"ghost",onClick:this.handleSelectAllClick,children:"Select All"}),d.jsx(te,{kind:"ghost",onClick:this.handleClearAllClick,children:"Clear"})]}),d.jsx(Mn,{in:m!=null,mountOnEnter:!0,unmountOnExit:!0,children:d.jsx("div",{className:"row-count-info",children:m})})]})]})}}Ft(Nt,"searchDebounceTime",250);Ft(Nt,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});function lt(i,e,t){return(e=rl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function rl(i){var e=al(i,"string");return typeof e=="symbol"?e:e+""}function al(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var ft=Te.module("AdvancedFilterCreator");class ke extends T.PureComponent{static makeFilterItem(){return{key:Tn()}}constructor(e){var t,n;super(e),lt(this,"focusTrapContainer",void 0),lt(this,"debounceTimeout",void 0),lt(this,"valuesTablePromise",void 0),lt(this,"getFilterTypes",xt(m=>_.getFilterTypes(m))),this.handleAddAnd=this.handleAddAnd.bind(this),this.handleAddOr=this.handleAddOr.bind(this),this.handleChangeFilterOperator=this.handleChangeFilterOperator.bind(this),this.handleDone=this.handleDone.bind(this),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleFilterDelete=this.handleFilterDelete.bind(this),this.handleSelectValueChange=this.handleSelectValueChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSortDown=this.handleSortDown.bind(this),this.handleSortUp=this.handleSortUp.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleFocusTrapStart=this.handleFocusTrapStart.bind(this),this.handleFocusTrapEnd=this.handleFocusTrapEnd.bind(this),this.handleUpdateTimeout=this.handleUpdateTimeout.bind(this),this.focusTrapContainer=De.createRef();var r=e.model,a=e.column,o=e.options,s=o.filterOperators,l=o.invertSelection,u=o.selectedValues,h=(t=(n=o.filterItems)===null||n===void 0?void 0:n.map(m=>{var p=m.selectedType,v=m.value;return{selectedType:p,value:v,key:Tn()}}))!==null&&t!==void 0?t:[];h.length===0&&h.push(ke.makeFilterItem()),s==null&&(s=[]),l==null&&(l=!0),u==null&&(u=[]);var c=r.getColumnIndexByName(a.name);q(c);var g=r.isColumnSortable(c);this.state={filterItems:h,filterOperators:s,invertSelection:l,selectedValues:u,valuesTableError:null,valuesTable:void 0,isSortable:g}}componentDidMount(){this.initValuesTable()}componentWillUnmount(){this.debounceTimeout!=null&&(clearTimeout(this.debounceTimeout),this.sendUpdate()),this.valuesTablePromise!=null&&this.valuesTablePromise.cancel()}getFilterChangeHandler(e){return this.handleFilterChange.bind(this,e)}getFilterDeleteHandler(e){return this.handleFilterDelete.bind(this,e)}initValuesTable(){var e=this.props,t=e.model,n=e.column;if(!t.isValuesTableAvailable){ft.debug("No values table for this model, just ignore");return}this.valuesTablePromise=_.makeCancelableTablePromise(t.valuesTable(n)),this.valuesTablePromise.then(r=>{var a;if(!((a=r.columns[0].isSortable)!==null&&a!==void 0)||a){var o=r.columns[0].sort().asc();r.applySort([o])}this.setState({valuesTable:r})}).catch(r=>{Pe.isCanceled(r)||(ft.error("Unable to open values table",r),this.setState({valuesTableError:r}))})}handleFocusTrapEnd(){var e;((e=this.focusTrapContainer)===null||e===void 0||(e=e.current)===null||e===void 0?void 0:e.querySelector("button,select,input,textarea")).focus()}handleFocusTrapStart(){var e,t=(e=this.focusTrapContainer)===null||e===void 0||(e=e.current)===null||e===void 0?void 0:e.querySelectorAll("button,select,input,textarea");if(t&&t.length>0){var n=t[t.length-1];n.focus()}}handleAddAnd(){var e=this.state,t=e.filterItems,n=e.filterOperators;t=t.concat(ke.makeFilterItem()),n=n.concat(vt.and),this.setState({filterItems:t,filterOperators:n})}handleAddOr(){var e=this.state,t=e.filterItems,n=e.filterOperators;t=t.concat(ke.makeFilterItem()),n=n.concat(vt.or),this.setState({filterItems:t,filterOperators:n})}handleChangeFilterOperator(e,t){var n=this.state.filterOperators;n=[...n],eo(t),n[e]=t,this.setState({filterOperators:n}),this.startUpdateTimer()}handleFilterChange(e,t,n){var r=this.state.filterItems;r=[...r];var a=r[e].key;r[e]={key:a,selectedType:t,value:n},this.setState({filterItems:r}),this.startUpdateTimer()}handleFilterDelete(e){var t=this.state,n=t.filterItems,r=t.filterOperators;n=[...n],r=[...r],e<n.length&&n.splice(e,1),e<r.length?r.splice(e,1):e===r.length&&r.splice(r.length-1,1),n.length===0&&n.push(ke.makeFilterItem()),this.setState({filterItems:n,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){ft.debug("Resetting Advanced Filter"),this.setState({filterItems:[ke.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=Ot.isModifierKeyDown(e);this.sortTable(_.sortDirection.descending,t)}handleSortUp(e){var t=Ot.isModifierKeyDown(e);this.sortTable(_.sortDirection.ascending,t)}handleSubmit(e){ft.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){ft.debug("Submitting and Closing Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate();var t=this.props.onDone;t(),e.preventDefault()}handleUpdateTimeout(){this.debounceTimeout=void 0,this.sendUpdate()}shouldShowAddFilter(){var e=this.state.filterItems;if(e.length===0)return!1;var t=e[e.length-1],n=t.selectedType,r=t.value;return n!=null&&n.length>0&&r!=null&&r.length>0}sortTable(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.props,r=n.column,a=n.onSortChange,o=this.state.isSortable;o&&a(r,e,t)}startUpdateTimer(){this.stopUpdateTimer(),this.debounceTimeout=setTimeout(this.handleUpdateTimeout,ke.debounceFilterUpdate)}stopUpdateTimer(){this.debounceTimeout!==void 0&&(clearTimeout(this.debounceTimeout),this.debounceTimeout=void 0)}sendUpdate(){var e=this.state,t=e.filterItems,n=e.filterOperators,r=e.invertSelection,a=e.selectedValues,o=this.props,s=o.column,l=o.onFilterChange,u=o.model,h=o.tableUtils,c=u.formatter,g=t.filter(f=>{var C=f.selectedType,S=f.value;return C!=null&&S!=null&&S!==""}),m=n.filter((f,C)=>f!=null&&t[C].selectedType!=null&&t[C].value!=null&&t[C].value!=="").slice(0,g.length-1),p={filterItems:g,filterOperators:m,invertSelection:r,selectedValues:a},v=h.makeAdvancedFilter(s,p,c.timeZone);l(s,v,p)}render(){var e=this,t=this.props,n=t.column,r=t.model,a=t.sortDirection,o=t.formatter,s=t.tableUtils,l=t.isMaximized,u=t.onToggleMaximize,h=this.state,c=h.filterItems,g=h.filterOperators,m=h.invertSelection,p=h.selectedValues,v=h.valuesTable,f=h.valuesTableError,C=h.isSortable,S=r.dh,E=r.isValuesTableAvailable,w=_.isBooleanType(n.type),R=_.isDateType(n.type),O=this.getFilterTypes(n.type),y=n.type.substring(n.type.lastIndexOf(".")+1),F=[];if(!w&&O.length)for(var D=function(I){var G=c[I],U=G.key,W=G.selectedType,B=G.value,H=d.jsx(Ln,{column:n,filterTypes:O,onChange:e.getFilterChangeHandler(I),onDelete:e.getFilterDeleteHandler(I),selectedType:W,value:B,formatter:o,tableUtils:s},U);if(F.push(H),I<g.length){var Z=g[I],X=Z===vt.and,re=d.jsxs("div",{className:"form-row justify-content-end advanced-filter-creator-filter-operator",children:[d.jsx(te,{kind:"ghost",className:ee("filter-operator",{active:X}),onClick:()=>e.handleChangeFilterOperator(I,vt.and),children:"AND"}),d.jsx(te,{kind:"ghost",className:ee("filter-operator",{active:!X}),onClick:()=>e.handleChangeFilterOperator(I,vt.or),children:"OR"})]},"filterOperator".concat(U));F.push(re)}},N=0;N<c.length;N+=1)D(N);var L=this.shouldShowAddFilter(),A=d.jsxs("div",{className:ee("form-row justify-content-end add-filter-item",{hidden:!L}),children:[d.jsx("span",{className:"text-muted",children:d.jsx(oe,{icon:_n})}),d.jsx(te,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!L,tooltip:"Add filter with AND",children:"AND"}),d.jsx(te,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!L,tooltip:"Add filter with OR",children:"OR"})]},"addFilterItem");return F.push(A),d.jsxs("div",{className:"advanced-filter-creator",role:"presentation",children:[d.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),d.jsxs("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer,children:[d.jsxs("div",{className:"title-bar",children:[d.jsx("h6",{className:"advanced-filter-title",children:"Advanced Filters"}),d.jsxs("div",{className:"advanced-filter-menu-buttons",children:[d.jsx(te,{kind:"ghost",className:ee("sort-operator",{active:a===_.sortDirection.descending}),onClick:this.handleSortDown,icon:vi,tooltip:C?"Sort ".concat(n.name," Descending"):"Not sortable",disabled:!C}),d.jsx(te,{kind:"ghost",className:ee("sort-operator",{active:a===_.sortDirection.ascending}),onClick:this.handleSortUp,icon:d.jsx(oe,{icon:vi,rotation:180}),tooltip:C?"Sort ".concat(n.name," Ascending"):"Not sortable",disabled:!C}),d.jsx(te,{kind:"ghost",className:ee("sort-operator",{active:l}),onClick:u,icon:l?Ca:Sa,tooltip:l?"Restore dialog size":"Maximize dialog"})]})]}),d.jsx("hr",{}),d.jsxs("div",{className:"advanced-filter-column-name",children:[n.name," ",d.jsxs("span",{className:"column-type",children:["(",y,")"]})]}),F,E&&f==null&&d.jsxs(d.Fragment,{children:[!w&&d.jsx("hr",{}),d.jsx("div",{className:"form-group advanced-filter-values-group",children:d.jsx(Nt,{dh:S,table:v,onChange:this.handleSelectValueChange,invertSelection:m,selectedValues:p,formatter:o,showSearch:!R,timeZone:o.timeZone})})]}),d.jsxs("div",{className:"form-row justify-content-end",children:[d.jsx(te,{kind:"secondary",className:"mr-2",onClick:this.handleReset,children:"Reset"}),d.jsx(te,{kind:"primary",onClick:this.handleDone,children:"Done"})]})]}),d.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd})]})}}lt(ke,"debounceFilterUpdate",250);lt(ke,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});function Xt(i){var e=i.animation,t=e===void 0?"iris-grid-bottom-bar-slide-up":e,n=i.children,r=i.className,a=i.isShown,o=i.onClick,s=i.onEntering,l=i.onEntered,u=i.onExiting,h=i.onExited,c=T.useRef(null);return d.jsx(En,{in:a,timeout:Rn.transitionMs,classNames:t,onEntering:s,onEntered:l,onExiting:u,onExited:h,mountOnEnter:!0,unmountOnExit:!0,nodeRef:c,children:d.jsx("div",{ref:c,className:ee("iris-grid-bottom-bar",r),role:"presentation",onClick:o,onKeyPress:o,children:n})})}function Ui(i,e){return ul(i)||ll(i,e)||sl(i,e)||ol()}function ol(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
5
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function sl(i,e){if(i){if(typeof i=="string")return Bi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Bi(i,e):void 0}}function Bi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function ll(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function ul(i){if(Array.isArray(i))return i}var dl=3e3,hl=5;function cl(i){var e=i.isSaving,t=e===void 0?!1:e,n=i.onSave,r=i.onDiscard,a=i.discardTooltip,o=i.saveTooltip,s=i.error,l=i.pendingDataErrors,u=i.pendingDataMap,h=i.onEntering,c=i.onEntered,g=i.onExiting,m=i.onExited,p=T.useState(!1),v=Ui(p,2),f=v[0],C=v[1],S=T.useState(!1),E=Ui(S,2),w=E[0],R=E[1],O=T.useRef(),y=Cr(t),F=T.useMemo(()=>l.size===0?s:l.size<=hl?"Key can't be empty (on pending row".concat(l.size>1?"s":""," ").concat(Array.from(l.keys()).join(", ").trim(),")"):"Key can't be empty (on ".concat(l.size," rows)"),[s,l]);T.useEffect(function(){y!=null&&y&&!t&&F==null&&(C(!0),R(!0),O.current=setTimeout(()=>{C(!1)},dl))},[F,t,y]),T.useEffect(function(){O.current&&u.size>0&&(clearTimeout(O.current),C(!1),R(!1))},[u]),T.useEffect(function(){return()=>O.current?clearTimeout(O.current):void 0},[]);var D=u.size,N;return t?N=d.jsx(qt,{className:"loading-spinner-vertical-align"}):w&&(N=ba),d.jsxs(Xt,{className:"pending-data-bottom-bar",isShown:D>0||f||F!=null,onEntering:h,onEntered:c,onExiting:g,onExited:()=>{R(!1),m&&m()},children:[F!=null&&F!==""&&d.jsxs("div",{className:"error-message",children:[d.jsx(oe,{icon:ur}),d.jsx("span",{children:"".concat(F)})]}),(F==null||F==="")&&d.jsx("div",{className:"status-message",children:D>0&&d.jsx("span",{children:"".concat(D," row").concat(D>1?"s":""," pending")})}),d.jsxs("div",{className:"buttons-container",children:[!t&&!w&&d.jsx(te,{kind:"secondary",onClick:r,tooltip:a,children:"Discard"}),d.jsxs(te,{kind:w?"success":"primary",onClick:n,icon:N,disabled:t||w||F!=null,tooltip:o,children:[t&&"Committing...",!t&&w&&"Success",!t&&!w&&"Commit"]})]})]})}function Hi(i,e,t,n,r,a,o){try{var s=i[a](o),l=s.value}catch(u){return void t(u)}s.done?e(l):Promise.resolve(l).then(n,r)}function fn(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function o(l){Hi(a,n,r,o,s,"next",l)}function s(l){Hi(a,n,r,o,s,"throw",l)}o(void 0)})}}function Ke(i,e,t){return(e=ml(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ml(i){var e=gl(i,"string");return typeof e=="symbol"?e:e+""}function gl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var ye=Te.module("IrisGridCopyHandler");function vl(i){return i.ranges!=null}function fl(i){return i.columnIndex!=null}class Q extends T.Component{static getStatusMessageText(e,t){switch(e){case Q.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Q.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Q.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Q.COPY_STATES.FETCH_RANGES_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Q.COPY_STATES.FETCH_HEADER_IN_PROGRESS:return"Fetching header for clipboard...";case Q.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Q.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Q.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Q.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),Ke(this,"textData",void 0),Ke(this,"hideTimer",void 0),Ke(this,"fetchPromise",void 0),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleCopyClick=this.handleCopyClick.bind(this),this.handleHideTimeout=this.handleHideTimeout.bind(this),this.state={error:void 0,copyState:Q.COPY_STATES.IDLE,buttonState:Q.BUTTON_STATES.COPY,isShown:!1,rowCount:0}}componentDidMount(){var e=this.props.copyOperation;e!=null&&this.startCopy()}componentDidUpdate(e){var t=this.props.copyOperation;e.copyOperation!==t&&this.startCopy()}componentWillUnmount(){this.stopCopy()}startCopy(){ye.debug2("startCopy"),this.stopCopy();var e=this.props.copyOperation;if(e==null){ye.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var t=e.error;if(t!=null){ye.debug("Showing copy error",t),this.setState({isShown:!0,copyState:Q.COPY_STATES.DONE,error:t}),this.startHideTimer();return}if(this.setState({isShown:!0,error:void 0}),vl(e)){var n=e.ranges,r=J.rowCount(n);if(this.setState({rowCount:r}),r>Q.NO_PROMPT_THRESHOLD){this.setState({buttonState:Q.BUTTON_STATES.COPY,copyState:Q.COPY_STATES.CONFIRMATION_REQUIRED});return}}this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){ye.debug2("handleBackgroundClick");var e=this.state.copyState;e===Q.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){ye.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){var e=this;return fn(function*(){if(ye.debug2("handleCopyClick"),e.textData!=null)try{yield e.copyText(e.textData),e.showCopyDone()}catch(t){ye.error("Error copying text",t),e.setState({error:"Unable to copy. Verify your browser permissions."})}else e.startFetch()})()}handleHideTimeout(){ye.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){var t=this;return fn(function*(){ye.debug2("copyText",e),t.textData=e,yield Sr(e)})()}showCopyDone(){this.setState({copyState:Q.COPY_STATES.DONE}),this.startHideTimer()}startFetch(){var e=this;return fn(function*(){e.stopFetch();var t=e.props,n=t.model,r=t.copyOperation;if(fl(r)){var a=r.columnIndex,o=r.columnDepth,s=r.movedColumns;ye.debug("startFetch copyHeader",a,o),e.setState({buttonState:Q.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Q.COPY_STATES.FETCH_HEADER_IN_PROGRESS});var l=z.getModelIndex(a,s),u=n.textForColumnHeader(l,o);if(u===void 0){e.fetchPromise=void 0,e.setState({error:"Invalid column header selected.",copyState:Q.COPY_STATES.DONE});return}e.fetchPromise=Pe.makeCancelable(u)}else{var h=r.ranges,c=r.includeHeaders,g=r.userColumnWidths,m=r.movedColumns,p=r.formatValues;ye.debug("startFetch copyRanges",h),e.setState({buttonState:Q.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Q.COPY_STATES.FETCH_RANGES_IN_PROGRESS});var v=ue.getHiddenColumns(g),f=z.getModelRanges(h,m);if(v.length>0){var C=v.map(J.makeColumn);f=J.subtractRangesFromRanges(f,C)}var S=p!=null&&p?(w,R)=>n.displayString(w,R.type,R.name):w=>"".concat(w);e.fetchPromise=Pe.makeCancelable(n.textSnapshot(f,c,S))}try{var E=yield e.fetchPromise;e.fetchPromise=void 0;try{yield e.copyText(E),e.showCopyDone()}catch(w){ye.error("Error copying text",w),e.setState({buttonState:Q.BUTTON_STATES.CLICK_TO_COPY,copyState:Q.COPY_STATES.CLICK_REQUIRED})}}catch(w){w instanceof So?ye.debug("User cancelled copy."):(ye.error("Error fetching contents",w),e.fetchPromise=void 0,e.setState({buttonState:Q.BUTTON_STATES.RETRY,copyState:Q.COPY_STATES.FETCH_ERROR}))}})()}stopFetch(){this.fetchPromise&&(ye.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Q.HIDE_TIMEOUT)}stopHideTimer(){this.hideTimer!=null&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}render(){var e=this.props,t=e.onEntering,n=e.onEntered,r=e.onExiting,a=e.onExited,o=this.state,s=o.buttonState,l=o.copyState,u=o.isShown,h=o.rowCount,c=o.error,g=l===Q.COPY_STATES.DONE?"fade":"copy-slide-up",m=Q.getCopyButtonText(s),p=c??Q.getStatusMessageText(l,h),v=l!==Q.COPY_STATES.DONE,f=s===Q.BUTTON_STATES.FETCH_IN_PROGRESS,C=l===Q.COPY_STATES.DONE;return d.jsxs(Xt,{animation:g,isShown:u,className:ee("iris-grid-copy-handler",{"copy-done":C}),onClick:this.handleBackgroundClick,onEntering:t,onEntered:n,onExiting:r,onExited:a,children:[d.jsx("div",{className:"status-message",children:d.jsx("span",{children:p})}),d.jsx(Mn,{in:v,mountOnEnter:!0,unmountOnExit:!0,children:d.jsxs("div",{className:"buttons-container",children:[d.jsx("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick,children:"Cancel"}),d.jsxs(te,{kind:f?"tertiary":"primary",className:ee("btn-copy",{"btn-spinner":f}),onClick:this.handleCopyClick,disabled:f,children:[f&&d.jsx(qt,{className:"loading-spinner-vertical-align"}),m]})]})})]})}}Ke(Q,"NO_PROMPT_THRESHOLD",1e4);Ke(Q,"HIDE_TIMEOUT",3e3);Ke(Q,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_RANGES_IN_PROGRESS:"FETCH_RANGES_IN_PROGRESS",FETCH_HEADER_IN_PROGRESS:"FETCH_HEADER_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});Ke(Q,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});Ke(Q,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});function Kt(i,e,t){return(e=pl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function pl(i){var e=Cl(i,"string");return typeof e=="symbol"?e:e+""}function Cl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Er extends T.PureComponent{constructor(e){super(e),Kt(this,"inputField",void 0),Kt(this,"initialValue",void 0),Kt(this,"debouncedSendUpdate",void 0);var t=e.debounceMs;this.debouncedSendUpdate=Et(this.sendUpdate.bind(this),t),this.handleCancel=this.handleCancel.bind(this),this.handleChange=this.handleChange.bind(this),this.handleCommit=this.handleCommit.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.inputField=null;var n=e.value;this.initialValue=n,this.state={isChanged:!1,value:n}}componentDidMount(){var e;(e=this.inputField)===null||e===void 0||e.focus()}componentDidUpdate(e){var t=this.props.debounceMs;e.debounceMs!==t&&(this.debouncedSendUpdate.flush(),this.debouncedSendUpdate=Et(this.sendUpdate.bind(this),t))}componentWillUnmount(){this.debouncedSendUpdate.cancel()}setValue(e){this.initialValue=e,this.setState({value:e})}focus(){var e;(e=this.inputField)===null||e===void 0||e.focus()}handleChange(e){var t=e.target.value;this.setState({value:t,isChanged:!0}),this.debouncedSendUpdate(t)}handleCancel(){this.debouncedSendUpdate.cancel();var e=this.initialValue,t=this.state.isChanged;t&&this.sendUpdate(e);var n=this.props.onDone;n()}handleCommit(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.debouncedSendUpdate.flush();var n=this.props.onDone;n(e,t)}handleFocus(){var e;(e=this.inputField)===null||e===void 0||e.select()}handleBlur(e){var t=e.relatedTarget;t!=null&&t.classList.contains("context-menu-container")?this.handleCommit(!1,!0):t!=null&&t.classList.contains("advanced-filter-button")?this.handleCommit(!1,!1):this.handleCommit(!0,!0)}handleTab(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.debouncedSendUpdate.flush();var t=this.props.onTab;t(e)}handleKeyDown(e){switch(e.key){case"Escape":e.stopPropagation(),e.preventDefault(),this.handleCancel();break;case"Enter":e.stopPropagation(),e.preventDefault(),this.handleCommit();break;case"Tab":e.stopPropagation(),e.preventDefault(),this.handleTab(e.shiftKey);break}}handleContextMenu(e){var t=this.props.onContextMenu;t(e)}sendUpdate(e){var t=this.props.onChange;t(e)}render(){var e=this.props,t=e.className,n=e.style,r=e.showAdvancedFilterButton,a=e.isAdvancedFilterSet,o=e.onAdvancedFiltersTriggered,s=this.state.value;return d.jsxs("div",{style:n,className:"iris-grid-input-autosized-wrapper","data-value":s,children:[d.jsx("input",{ref:l=>{this.inputField=l},className:ee("iris-grid-input-field",t),type:"text",value:s,onBlur:this.handleBlur,onFocus:this.handleFocus,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onContextMenu:this.handleContextMenu,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"}),r&&d.jsx("div",{className:"advanced-filter-button-container",children:d.jsx(te,{kind:"ghost",className:ee("btn-link-icon advanced-filter-button",{"filter-set":a}),onClick:o,onContextMenu:this.handleContextMenu,children:d.jsxs("div",{className:"fa-layers ",children:[d.jsx(oe,{icon:dr,className:"filter-solid"}),d.jsx(oe,{icon:Fn,className:"filter-light"})]})})})]})}}Kt(Er,"defaultProps",{style:{},className:"",value:"",showAdvancedFilterButton:!1,isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});function Sl(i,e,t){return(e=bl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function bl(i){var e=yl(i,"string");return typeof e=="symbol"?e:e+""}function yl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class wl extends nt{constructor(e){super(),Sl(this,"irisGrid",void 0),this.irisGrid=e,this.cursor=null}onDown(e,t){if(e.altKey&&!Ot.isModifierKeyDown(e)&&!e.shiftKey){var n=t.state,r=n.mouseX,a=n.mouseY;if(r==null||a==null)return!1;var o=t.getGridPointFromXY(r,a);if(o.column!=null&&o.row!=null)return this.cursor=this.irisGrid.props.copyCursor,!0}return!1}onUp(e,t){return this.cursor===this.irisGrid.props.copyCursor?(this.cursor=null,!0):!1}}function Tl(i,e,t){return(e=El(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function El(i){var e=Rl(i,"string");return typeof e=="symbol"?e:e+""}function Rl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Fl extends nt{constructor(e){super(),Tl(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var t=this.irisGrid.state.selectedRanges;return e.key==="c"&&Ot.isModifierKeyDown(e)?(ue.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}function xl(i,e,t){return(e=Ol(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ol(i){var e=Al(i,"string");return typeof e=="symbol"?e:e+""}function Al(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Dl extends nt{constructor(e){super(),xl(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if(tt.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var t=this.irisGrid.state.reverse;return this.irisGrid.reverse(!t),!0}return!1}}function Nl(i,e,t){return(e=_l(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function _l(i){var e=Ml(i,"string");return typeof e=="symbol"?e:e+""}function Ml(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Pl extends nt{constructor(e){super(),Nl(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return tt.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}function Il(i,e){return Vl(i)||Ll(i,e)||kl(i,e)||jl()}function jl(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
6
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kl(i,e){if(i){if(typeof i=="string")return $i(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?$i(i,e):void 0}}function $i(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Ll(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Vl(i){if(Array.isArray(i))return i}var Ul=3e3;function Bl(i){var e=i.children,t=e===void 0?null:e,n=i.onEntering,r=i.onEntered,a=i.onExiting,o=i.onExited,s=T.useState(!1),l=Il(s,2),u=l[0],h=l[1],c=T.useRef(),g=Cr(t),m=T.useCallback(()=>{h(!0),c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{h(!1)},Ul)},[h,c]);return T.useEffect(()=>{g!==t&&t!=null&&m()},[t,g,h,m]),T.useEffect(()=>()=>c.current?clearTimeout(c.current):void 0,[]),d.jsx(Xt,{className:"toast-bottom-bar",isShown:u,onEntering:n,onEntered:r,onExiting:a,onExited:o,children:t})}var Hl=1;function Rr(i){var e=i.model,t=i.top,n=i.bottom,r=i.left,a=i.right,o=i.filter,s=i.formatter,l=i.columnAlignmentMap,u=i.reverse,h=u===void 0?!1:u,c=i.sorts,g=i.customColumns,m=i.movedColumns,p=i.hiddenColumns,v=i.alwaysFetchColumns,f=i.rollupConfig,C=f===void 0?null:f,S=i.totalsConfig,E=S===void 0?null:S,w=i.selectDistinctColumns,R=w===void 0?ae:w,O=i.pendingRowCount,y=O===void 0?0:O,F=i.pendingDataMap,D=F===void 0?Me:F,N=i.frozenColumns,L=i.formatColumns,A=i.columnHeaderGroups,j=i.partitionConfig,I=i.showExtraGroupColumn,G=e.isTotalsAvailable,U=e.isRollupAvailable;xe(()=>{to(e)&&I!=null&&(e.showExtraGroupColumn=I)},[e,I]);var W=T.useMemo(()=>ue.getModelViewportColumns(e.columns,r,a,m,p,v,Hl),[e.columns,r,a,m,p,v]);return xe(function(){e.filter=o},[e,o]),xe(function(){var H=[...c];h&&H.push(e.dh.Table.reverse()),e.sort=H},[e,c,h]),xe(function(){e.formatter=s},[e,s]),xe(function(){e.columnAlignmentMap=l},[e,l]),xe(function(){e.isCustomColumnsAvailable&&(e.customColumns=g)},[e,g]),xe(function(){e.isFormatColumnsAvailable&&(e.formatColumns=L)},[e,L]),xe(function(){e.setViewport(t,n,W)},[e,t,n,W]),xe(function(){U&&(e.rollupConfig=C)},[e,U,C]),xe(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=R)},[e,R]),xe(function(){G&&(e.totalsConfig=E)},[e,G,E]),xe(function(){e.columnHeaderGroups=A},[e,A]),xe(function(){j&&wt(e)&&(e.partitionConfig=j)},[e,j]),T.useEffect(function(){N&&e.updateFrozenColumns(N)},[e,N]),T.useEffect(function(){e.pendingRowCount=y},[e,y]),T.useEffect(function(){e.pendingDataMap=D},[e,D]),null}Rr.displayName="IrisGridModelUpdater";function Fr(i,e,t){return(e=$l(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function $l(i){var e=Gl(i,"string");return typeof e=="symbol"?e:e+""}function Gl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var pn=Te.module("ColumnStatistics"),Wl={SIZE:"Number of Rows"};class Dt extends T.Component{static getStatsLabel(e){var t;return(t=Wl[e])!==null&&t!==void 0?t:e.split(" ").map(n=>n[0].toUpperCase()+n.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),Fr(this,"cancelablePromise",void 0),this.handleError=this.handleError.bind(this),this.handleGenerateStatistics=this.handleGenerateStatistics.bind(this),this.handleStatistics=this.handleStatistics.bind(this),this.cancelablePromise=null,this.state={error:null,loading:!1,statistics:null,numRows:0}}componentDidMount(){this.maybeGenerateStatistics()}componentWillUnmount(){this.cancelablePromise&&this.cancelablePromise.cancel()}maybeGenerateStatistics(){var e=this.props,t=e.column,n=e.model,r=n.rowCount-n.pendingRowCount-n.floatingBottomRowCount-n.floatingTopRowCount;this.setState({numRows:r}),!n.isColumnStatisticsAvailable||t.isProxy===!0?this.setState({loading:!1}):r<Dt.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics()}handleGenerateStatistics(){this.setState({loading:!0});var e=this.props,t=e.column,n=e.model;this.cancelablePromise=Pe.makeCancelable(n.columnStatistics(t)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){pn.debug("Received statistics",e);var t=this.props,n=t.model,r=t.onStatistics,a=[];e.statisticsMap.forEach((o,s)=>{a.push({operation:Dt.getStatsLabel(s),value:o,type:e.getType(s)})}),e.uniqueValues.forEach((o,s)=>{a.push({operation:s,className:"column-statistics-unique-value",value:o,type:"long"})}),this.setState({loading:!1,statistics:a,numRows:n.rowCount-n.pendingRowCount-n.floatingBottomRowCount-n.floatingTopRowCount}),r()}handleError(e){if(e!=null&&Pe.isCanceled(e)){pn.debug("Called handleError on a cancelled promise result");return}pn.error("Error generating statistics",e),this.setState({error:e,loading:!1,statistics:null})}render(){var e,t=this.props,n=t.column,r=t.model,a=this.state,o=a.error,s=a.loading,l=a.statistics,u=a.numRows,h=!s&&o==null&&l==null&&r.isColumnStatisticsAvailable,c=[],g=n.type.substring(n.type.lastIndexOf(".")+1),m=n.description===null?null:n.description;if(l!=null)for(var p=0;p<l.length;p+=1){var v=l[p],f=v.operation,C=v.className,S=v.value,E=v.type,w=E?r.displayString(S,E):r.displayString(S,n.type,n.name),R=d.jsxs(De.Fragment,{children:[d.jsx("div",{className:ee("column-statistic-operation",C),children:f}),d.jsx("div",{className:"column-statistic-value",children:w})]},f);c.push(R)}var O=ut(r)&&r.hasExpandableRows?"Expanded Rows":"Number of Rows",y=r.displayString(u,"long"),F=r.getColumnIndexByName(n.name);return d.jsxs("div",{className:"column-statistics",children:[d.jsxs("div",{className:"column-statistics-title",children:[(e=n.displayName)!==null&&e!==void 0?e:n.name,d.jsxs("span",{className:"column-statistics-type",children:[" (",g,")"]}),d.jsx(br,{tooltip:"Copy column name",copy:n.name,isQuiet:!0})]}),m!=null&&d.jsx("div",{className:"column-statistics-description",children:m}),F!=null&&!r.isColumnSortable(F)&&d.jsxs("div",{className:"column-statistics-status",children:[d.jsx(oe,{icon:ya,className:"mr-1"}),"Not sortable"]}),F!=null&&!r.isColumnMovable(F)&&d.jsxs("div",{className:"column-statistics-status",children:[d.jsx(oe,{icon:r.isColumnFrozen(F)?wa:fi,className:"mr-1"}),r.isColumnFrozen(F)?"Frozen":"Not movable"]}),F!=null&&we(r)&&r.isEditable&&!r.keyColumnSet.has(n.name)&&!r.valueColumnSet.has(n.name)&&d.jsxs("div",{className:"column-statistics-status",children:[d.jsx(oe,{icon:fi,className:"mr-1"}),"Not editable"]}),d.jsxs("div",{className:"column-statistics-grid",children:[l==null&&d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"column-statistic-operation",children:O}),d.jsx("div",{className:"column-statistic-value",children:y})]}),c]}),h&&d.jsx(te,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,children:"Generate Stats"}),o!=null&&d.jsx("div",{className:"error-message",children:"".concat(o)}),l&&!s&&d.jsx(te,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:Ta,children:"Refresh"}),s&&d.jsxs("div",{className:"column-statistics-loading",children:[d.jsx(qt,{className:"loading-spinner-vertical-align"}),"Calculating Stats..."]})]})}}Fr(Dt,"AUTO_GENERATE_LIMIT",1e5);function zl(i,e,t){return(e=Kl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Kl(i){var e=Yl(i,"string");return typeof e=="symbol"?e:e+""}function Yl(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}class Ht extends T.PureComponent{static createSearchFilter(e,t,n,r,a){var o=a?r.filter(u=>!n.includes(u.name)).map(u=>u.name):n;if(t&&o.length>0){var s=e.FilterValue.ofString(t),l=o.length===r.length?e.FilterCondition.search(s):e.FilterCondition.search(s,r.filter(u=>o.includes(u.name)).map(u=>u.filter()));return l}}constructor(e){super(e),zl(this,"searchField",void 0),this.handleSearchValueChange=this.handleSearchValueChange.bind(this),this.toggleColumn=this.toggleColumn.bind(this),this.selectAll=this.selectAll.bind(this),this.clear=this.clear.bind(this),this.selectNumbers=this.selectNumbers.bind(this),this.searchField=De.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var t=this.props,n=t.onChange,r=t.selectedColumns,a=t.invertSelection;n(e.target.value,r,a)}sendColumnChange(e,t){var n=this.props,r=n.onChange,a=n.value;r(a,e,t)}setInvertSelection(e){var t=this.props,n=t.onChange,r=t.value;n(r,[],e)}toggleColumn(e){var t=this.props,n=t.selectedColumns,r=t.invertSelection;if(n.includes(e))this.sendColumnChange(n.filter(o=>o!==e),r);else{var a=n.slice();a.push(e),this.sendColumnChange(a,r)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var e=this.props.columns;this.sendColumnChange(e.filter(t=>_.isNumberType(t.type)).map(t=>t.name),!1)}render(){var e=this.props,t=e.value,n=e.selectedColumns,r=e.invertSelection,a=e.columns,o=this.state.isConfigureColumnsShown,s=n.length===0&&r===!0||n.length===a.length&&r===!1,l=n.length===0&&r===!1||n.length===a.length&&r===!0,u;return s?u=d.jsxs(d.Fragment,{children:[d.jsx(oe,{icon:Ci,mask:un,transform:"shrink-2 down-5 right-7"}),d.jsx(oe,{icon:Ea,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}):l?u=d.jsxs(d.Fragment,{children:[d.jsx(oe,{icon:Ra,mask:un,transform:"shrink-1 down-5 right-7"}),d.jsx(oe,{icon:pi,className:"text-danger",transform:"shrink-4 down-5 right-7"})]}):u=d.jsxs(d.Fragment,{children:[d.jsx(oe,{icon:Ci,mask:un,transform:"shrink-2 down-5 right-7"}),d.jsx(oe,{icon:Fa,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}),d.jsxs("div",{className:"cross-column-container",children:[d.jsx(bo,{className:"cross-column-search",placeholder:"Search Data...","data-testid":"cross-column-search",value:t,onChange:this.handleSearchValueChange,ref:this.searchField}),d.jsxs("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{o?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})},children:[d.jsx("div",{className:"fa-layers",children:u}),d.jsx(ze,{children:"Configure Columns"}),d.jsx(yr,{isShown:o,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0,children:d.jsxs("div",{className:"cross-column-popup",children:["Searched Columns",d.jsx("div",{className:"cross-column-scroll",children:a.map(h=>h.isProxy===!0?null:d.jsxs(De.Fragment,{children:[d.jsx(yo,{className:"cross-column-checkbox",checked:r?!n.includes(h.name):n.includes(h.name),onChange:()=>this.toggleColumn(h.name),children:h.name}),h.type.substring(h.type.lastIndexOf(".")+1)]},h.name))}),d.jsxs("div",{className:"cross-column-button-bar",children:[d.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectAll,children:"Select All"}),d.jsx("button",{type:"button",className:"btn btn-link",onClick:this.clear,children:"Clear"}),d.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers,children:"Numbers Only"})]}),l&&d.jsxs("p",{className:"text-danger",children:[d.jsx(oe,{icon:pi})," Select at least one column to search."]})]})})]})]})}}function Gi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Wi(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gi(Object(t),!0).forEach(function(n){Tt(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Gi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function zi(i,e,t,n,r,a,o){try{var s=i[a](o),l=s.value}catch(u){return void t(u)}s.done?e(l):Promise.resolve(l).then(n,r)}function $t(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function o(l){zi(a,n,r,o,s,"next",l)}function s(l){zi(a,n,r,o,s,"throw",l)}o(void 0)})}}function Tt(i,e,t){return(e=ql(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ql(i){var e=Ql(i,"string");return typeof e=="symbol"?e:e+""}function Ql(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var at=Te.module("IrisGridPartitionSelector");class Xl extends T.Component{constructor(e){super(e),Tt(this,"pending",void 0),Tt(this,"tableUtils",void 0),Tt(this,"getCachedChangeCallback",se(n=>r=>this.handlePartitionSelect(n,r),{max:100})),Tt(this,"getCachedFormatValueCallback",se(n=>r=>this.getDisplayValue(n,r),{max:100})),this.handlePartitionTableClick=this.handlePartitionTableClick.bind(this),this.handleMergeClick=this.handleMergeClick.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this);var t=e.model;this.tableUtils=new _(t.dh),this.pending=new wr,this.state={isLoading:!0,baseTable:null,keysTable:null,partitionTables:null}}componentDidMount(){var e=this;return $t(function*(){var t=e.props.model;try{var n=yield e.pending.add(t.partitionKeysTable().then(a=>a),a=>a.close()),r=yield e.pending.add(t.partitionBaseTable(),a=>a.close());e.setState({keysTable:n,baseTable:r,isLoading:!1},e.updatePartitionOptions)}catch(a){if(!Pe.isCanceled(a))throw a}})()}componentDidUpdate(e){var t=e.partitionConfig,n=this.props.partitionConfig;t!==n&&this.updatePartitionOptions()}componentWillUnmount(){this.pending.cancel();var e=this.state,t=e.keysTable,n=e.baseTable,r=e.partitionTables;n==null||n.close(),t==null||t.close(),r==null||r.forEach(a=>a.close())}handlePartitionTableClick(){at.debug2("handlePartitionTableClick");var e=this.props.partitionConfig;q(e);var t=Wi({},e);t.mode=e.mode==="keys"?"partition":"keys",this.sendUpdate(t)}handleMergeClick(){at.debug2("handleMergeClick");var e=this.props.partitionConfig;q(e);var t=Wi({},e);t.mode=e.mode==="merged"?"partition":"merged",this.sendUpdate(t)}handlePartitionSelect(e,t){var n=this;return $t(function*(){var r=n.props.partitionConfig;q(r),at.debug("handlePartitionSelect",e,t,r);var a=[...r.partitions];a[e]=t;var o=n.state.baseTable,s=n.state.keysTable;q(o),q(s);try{n.setState({isLoading:!0});var l=yield n.pending.add(o.copy(),g=>g.close()),u=a.slice(0,e+1).map((g,m)=>{var p=l.columns[m];return n.tableUtils.makeNullableEqFilter(p,g)});l.applyFilter(u),l.setViewport(0,0,l.columns);var h=yield n.pending.add(l.getViewportData()),c={partitions:s.columns.map(g=>h.rows[0].get(g)),mode:"partition"};l.close(),n.sendUpdate(c)}catch(g){Pe.isCanceled(g)||at.error("Unable to get partition tables",g)}finally{n.setState({isLoading:!1})}})()}sendUpdate(e){at.debug2("sendUpdate",e);var t=this.props.onChange;t(e)}getDisplayValue(e,t){var n=this.props.model;if(t===null)return"(null)";if(t===void 0||t==="")return"";var r=n.partitionColumns[e];return _.isCharType(r.type)&&t.toString().length>0?String.fromCharCode(parseInt(t.toString(),10)):n.displayString(t,r.type,r.name)}updatePartitionOptions(){var e=this;return $t(function*(){var t=e.props.model,n=e.props.partitionConfig;if(n!=null){var r=e.state.keysTable;q(r);var a=[...n.partitions].map((s,l)=>{var u=r.columns[l];return e.tableUtils.makeNullableEqFilter(u,s)}),o=yield Promise.all(t.partitionColumns.map(function(){var s=$t(function*(l,u){return r.applyFilter(a.slice(0,u)),r.selectDistinct(t.partitionColumns.slice(0,u+1))});return function(l,u){return s.apply(this,arguments)}}()));e.setState({partitionTables:o})}})()}getPartitionFilters(e){var t=this.props,n=t.model,r=t.partitionConfig;q(r);var a=r.partitions;if(at.debug("getPartitionFilters",r),a.length!==e.length)throw new Error("Invalid partition config set. Expected ".concat(e.length," partitions, but got ").concat(a.length));for(var o=[],s=0;s<a.length;s+=1)if(s===0)o.push([]);else{var l=o[s-1],u=a[s-1],h=n.partitionColumns[s-1],c=[...l,this.tableUtils.makeNullableEqFilter(h,u)];o.push(c)}return o}render(){var e=this.props,t=e.model,n=e.partitionConfig,r=this.state,a=r.isLoading,o=r.partitionTables,s=t.partitionColumns.map((l,u)=>d.jsxs("div",{className:"column-selector",children:[(o==null?void 0:o[u])&&d.jsx(jo,{label:l.name,labelPosition:"side",table:o[u],direction:"bottom",shouldFlip:!1,keyColumn:o[u].columns[u].name,selectedKey:(n==null?void 0:n.mode)==="partition"?n.partitions[u]:null,placeholder:"Select a key",labelColumn:o[u].columns[u].name,onChange:this.getCachedChangeCallback(u),isDisabled:a||n==null}),t.partitionColumns.length-1===u||d.jsx(oe,{icon:xa})]},"selector-".concat(l.name)));return d.jsxs("div",{className:"iris-grid-partition-selector",children:[d.jsxs("div",{className:"partition-button-group",children:[d.jsx(te,{onClick:this.handlePartitionTableClick,kind:"inline",tooltip:t.isPartitionAwareSourceTable?"View keys as table":"View underlying partition table",icon:Oa,active:(n==null?void 0:n.mode)==="keys",disabled:a||n==null,children:"Partitions"}),d.jsx(te,{onClick:this.handleMergeClick,kind:"inline",tooltip:"View all partitions as one merged table",icon:d.jsx(oe,{icon:Aa,rotation:90}),active:(n==null?void 0:n.mode)==="merged",disabled:a||n==null,children:t.isPartitionAwareSourceTable?"Coalesce":"Merge"})]}),s]})}}function Zl(i,e,t){return(e=Jl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Jl(i){var e=eu(i,"string");return typeof e=="symbol"?e:e+""}function eu(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var tu=Te.module("SelectDistinctBuilder");class xr extends T.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var t=this.props,n=t.model,r=t.selectDistinctColumns;this.state={inputs:r.length>0?[...r]:[""],columns:n.originalColumns}}componentDidUpdate(e,t){var n=this.state.inputs,r=this.props.onChange;if(t.inputs!==n){var a=n.filter(o=>o!=="");et(t.inputs.filter(o=>o!==""),a)||r(a)}}handleAddColumnClick(){this.setState(e=>{var t=e.inputs;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var n=t.inputs;return{inputs:n.length===1&&e===0?[""]:n.filter((r,a)=>e!==a)}})}handleDropdownChanged(e,t){tu.debug("handleDropdownChanged",e,t),this.setState(n=>{var r=n.inputs,a=[...r];return a[e]=t,{inputs:a}})}renderInputs(){var e=this.state,t=e.columns,n=e.inputs;return n.map((r,a)=>{var o=t.filter(s=>{var l=s.name;return l===r||!n.includes(l)}).map(s=>{var l=s.name;return d.jsx("option",{value:l,children:l},l)});return d.jsxs("div",{className:"form-inline px-3 pb-3",children:[d.jsxs(Rt,{className:"form-control custom-select col",value:r,onChange:s=>this.handleDropdownChanged(a,s),children:[d.jsx("option",{value:"",children:"Select a column"}),o]}),(n.length>1||r!=="")&&d.jsx(te,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(a)},icon:d.jsx(oe,{icon:Nn,transform:"grow-3"}),tooltip:"Delete column"})]},a)})}render(){var e=this.state,t=e.columns,n=e.inputs,r=n.length>=t.length;return d.jsxs("div",{role:"presentation",className:"select-distinct-builder-container h-100",children:[d.jsx("div",{className:"select-distinct-title",children:"Display Unique Values From"}),this.renderInputs(),d.jsx("hr",{}),d.jsx("div",{className:"pt-1 px-3",children:d.jsx(te,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:r,icon:_n,children:"Add Additional Column"})}),d.jsx("div",{className:"select-distinct-builder-footer",children:d.jsx("div",{className:"select-distinct-builder-hint",children:"Display only unique values from the selected table columns. Note that this will reset any filters and display only the selected columns."})})]})}}Zl(xr,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});var nu=Te.module("PluginTableOptionsErrorBoundary");class iu extends De.Component{static getDerivedStateFromError(e){return{error:e}}constructor(e){super(e),this.state={error:null}}componentDidCatch(e,t){var n=this.props.itemType;nu.error('Plugin sidebar page "'.concat(n,'" threw during render; suppressing.'),e,t)}render(){var e=this.state.error,t=this.props,n=t.children,r=t.itemType;return e==null?n:d.jsxs("div",{className:"plugin-sidebar-error",role:"alert","data-testid":"plugin-sidebar-error",children:[d.jsxs("p",{children:[r," failed to render:"]}),d.jsx("p",{children:e.message})]})}}function ru(i,e){return lu(i)||su(i,e)||ou(i,e)||au()}function au(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
7
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ou(i,e){if(i){if(typeof i=="string")return Ki(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Ki(i,e):void 0}}function Ki(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function su(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function lu(i){if(Array.isArray(i))return i}function Vn(i){var e=i.items,t=i.onChange,n=t===void 0?()=>{}:t;return d.jsx(Tr,{items:Array.from(e.entries()).map(r=>{var a=ru(r,2),o=a[0],s=a[1];return{title:Vn.getAdvancedSettingsTitleForKey(o),isOn:s,onChange:l=>n(o,l)}})})}Vn.getAdvancedSettingsTitleForKey=i=>{switch(i){case Yt.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case Yt.LINK_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from an incoming link filter"}};function Yi(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function ot(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Yi(Object(t),!0).forEach(function(n){uu(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Yi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function uu(i,e,t){return(e=du(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function du(i){var e=hu(i,"string");return typeof e=="symbol"?e:e+""}function hu(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var qi=Te.module("ConditionalFormattingMenu"),Cn=()=>{};function cu(i){var e,t=i.leftHandValue.type;if(i.condition===pe.IS_NULL||i.condition===pe.IS_NOT_NULL||_.isBooleanType(t)&&(i.condition===Fe.IS_TRUE||i.condition===Fe.IS_FALSE))return"";if(!_.isNumberType(t)&&!_.isCharType(t)&&!_.isStringType(t)&&!_.isDateType(t)&&!_.isBooleanType(t))throw new Error("Invalid column type ".concat(t," in getRuleValue"));var n=_.isStringType(t)?'"':"";return(e=io(i.rightHandValue,n))!==null&&e!==void 0?e:""}function mu(i){var e=i.leftHandValue,t=e.name,n=e.type,r=i.formattedColumns,a=r.length>0?"[".concat(r.map(o=>o.name).join(", "),"] = "):"";return _.isNumberType(n)&&i.condition===me.IS_BETWEEN?"".concat(a).concat(i.start," < ").concat(t," < ").concat(i.end):"".concat(a).concat(t," ").concat(no(n,i.condition),`
8
+ `).concat(cu(i))}function gu(i){var e=i.rules,t=e===void 0?[]:e,n=i.onChange,r=n===void 0?Cn:n,a=i.onCreate,o=a===void 0?Cn:a,s=i.onSelect,l=s===void 0?Cn:s,u=T.useCallback((m,p,v)=>{m.stopPropagation(),qi.debug("Rule clicked",p,v),l(v)},[l]),h=T.useCallback((m,p,v)=>{m.stopPropagation(),qi.debug("Delete button clicked",p,v);var f=[...t];f.splice(v,1),r(f)},[r,t]),c=T.useCallback(m=>{m.stopPropagation()},[]),g=T.useCallback(m=>{if(Ei.stopDragging(),m.destination!=null){var p=m.source.index,v=m.destination.index,f=[...t],C=t[p];f.splice(p,1),f.splice(v,0,C),r(f)}},[r,t]);return d.jsxs("div",{className:"conditional-formatting-rules",children:[d.jsx(va,{onDragStart:Ei.startDragging,onDragEnd:g,children:d.jsx(fa,{droppableId:"droppable-custom-columns",children:(m,p)=>d.jsxs("div",ot(ot({ref:m.innerRef},m.droppableProps),{},{className:ee("droppable-container",{dragging:p.draggingFromThisWith}),children:[t.length===0&&d.jsx("div",{className:"text-muted pl-2",children:"No formats defined"}),t.map((v,f)=>d.jsx(pa,{draggableId:"".concat(f,"-").concat(v.type),index:f,disableInteractiveElementBlocking:!0,children:(C,S)=>d.jsx("div",ot(ot({role:"menuitem",tabIndex:0,onClick:E=>u(E,v,f),className:ee("draggable-container",{dragging:S.isDragging}),ref:C.innerRef},C.draggableProps),{},{children:d.jsx("div",{className:"conditional-formatting-list-item",children:d.jsxs("div",{className:"formatting-item",children:[d.jsx("div",{className:"rule-icon",children:d.jsx("span",{className:"rule-icon-bg",style:{backgroundColor:On(v.config.style),color:xn(v.config.style)},children:v.type===He.ROWS?"row":"col"})}),d.jsx("div",{className:"rule-title",children:mu(v.config)}),d.jsx(te,{kind:"ghost",className:"ml-1 px-2",onClick:E=>h(E,v,f),icon:Nn,tooltip:"Delete rule"}),d.jsxs("button",ot(ot({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:c},C.dragHandleProps),{},{children:[d.jsx(ze,{children:"Drag to re-order"}),d.jsx(oe,{icon:Da})]}))]})})}))},"".concat(f,"-").concat(v.type))),m.placeholder]}))})}),d.jsx("hr",{}),d.jsx(te,{kind:"ghost",onClick:o,icon:_n,children:"Add New Rule"})]})}function Je(i,e){return Cu(i)||pu(i,e)||fu(i,e)||vu()}function vu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
9
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function fu(i,e){if(i){if(typeof i=="string")return Qi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Qi(i,e):void 0}}function Qi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function pu(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Cu(i){if(Array.isArray(i))return i}var Ve=Te.module("ConditionEditor"),Su=()=>{},Sn="value-",Gt="column-",bu=[me.IS_EQUAL,me.IS_NOT_EQUAL,me.IS_BETWEEN,me.GREATER_THAN,me.GREATER_THAN_OR_EQUAL,me.LESS_THAN,me.LESS_THAN_OR_EQUAL,me.IS_NULL,me.IS_NOT_NULL],yu=[me.IS_EQUAL,me.IS_NOT_EQUAL,me.GREATER_THAN,me.GREATER_THAN_OR_EQUAL,me.LESS_THAN,me.LESS_THAN_OR_EQUAL],wu=[pe.IS_EXACTLY,pe.IS_NOT_EXACTLY,pe.CONTAINS,pe.DOES_NOT_CONTAIN,pe.STARTS_WITH,pe.ENDS_WITH,pe.IS_NULL,pe.IS_NOT_NULL],Tu=[pe.IS_EXACTLY,pe.IS_NOT_EXACTLY,pe.CONTAINS,pe.DOES_NOT_CONTAIN,pe.STARTS_WITH,pe.ENDS_WITH],Eu=[Re.IS_EXACTLY,Re.IS_NOT_EXACTLY,Re.IS_BEFORE,Re.IS_BEFORE_OR_EQUAL,Re.IS_AFTER,Re.IS_AFTER_OR_EQUAL,Re.IS_NULL,Re.IS_NOT_NULL],Ru=[Re.IS_EXACTLY,Re.IS_NOT_EXACTLY,Re.IS_BEFORE,Re.IS_BEFORE_OR_EQUAL,Re.IS_AFTER,Re.IS_AFTER_OR_EQUAL],Fu=[Fe.IS_TRUE,Fe.IS_FALSE,Fe.IS_EQUAL,Fe.IS_NOT_EQUAL,Fe.IS_NULL,Fe.IS_NOT_NULL],xu=[Fe.IS_EQUAL,Fe.IS_NOT_EQUAL],Ou=[We.IS_EQUAL,We.IS_NOT_EQUAL,We.IS_NULL,We.IS_NOT_NULL],Au=[We.IS_EQUAL,We.IS_NOT_EQUAL];function Du(i,e,t,n){return i===me.IS_NULL||i===me.IS_NOT_NULL||i===me.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&n!=null&&n!==""&&!Number.isNaN(Number.parseFloat(n))||i!==me.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function Or(i){var e=i.column,t=i.columns,n=i.config,r=i.dh,a=i.onChange,o=a===void 0?Su:a,s=e.type,l=T.useState(s),u=Je(l,2),h=u[0],c=u[1],g=T.useState(()=>"".concat(typeof n.rightHandValue=="object"?Gt:Sn).concat(n.condition)),m=Je(g,2),p=m[0],v=m[1],f=p.replace(/^(value|column)-/,""),C=p.startsWith(Gt),S=T.useState(n.rightHandValue),E=Je(S,2),w=E[0],R=E[1],O=T.useState(n.start),y=Je(O,2),F=y[0],D=y[1],N=T.useState(n.end),L=Je(N,2),A=L[0],j=L[1],I=T.useState(!0),G=Je(I,2),U=G[0],W=G[1];s!==h&&(v("".concat(Sn).concat(ro(s))),R(Si(s)),D(void 0),j(void 0),c(s));var B=T.useCallback($=>_.isNumberType(s)?ao($):_.isCharType(s)?oo($):_.isStringType(s)?so($):_.isDateType(s)?lo($):uo($),[s]),H=T.useMemo(()=>{var $=[],k=[];return _.isNumberType(s)?($=bu,k=yu):_.isCharType(s)?($=Ou,k=Au):_.isStringType(s)?($=wu,k=Tu):_.isDateType(s)?($=Eu,k=Ru):_.isBooleanType(s)&&($=Fu,k=xu),[$.map(K=>d.jsx(hi,{children:B(K)},"".concat(Sn).concat(K))),k.map(K=>d.jsx(hi,{children:B(K)},"".concat(Gt).concat(K)))]},[s,B]),Z=Je(H,2),X=Z[0],re=Z[1],ge=T.useCallback($=>{if($!=null){var k=String($);Ve.debug("handleConditionKeyChange",k);var K=k.startsWith(Gt);if(K&&typeof w!="object"){var ce=t.find(ne=>_.isNumberType(s)?_.isNumberType(ne.type):_.getNormalizedType(s)===_.getNormalizedType(ne.type));R(ce!=null?{name:ce.name,type:ce.type}:void 0)}else!K&&typeof w=="object"&&R(Si(s));v(k)}},[t,s,w]),b=T.useCallback($=>{Ve.debug("handleRightHandValueChange",$),R($)},[]),x=T.useCallback($=>{var k=$.target.value;Ve.debug("handleStartValueChange",k),D(k)},[]),P=T.useCallback($=>{var k=$.target.value;Ve.debug("handleEndValueChange",k),j(k)},[]);T.useEffect(function(){var k=!0;f===void 0?(Ve.debug("Unable to create formatting rule. Condition is not selected."),k=!1):_.isNumberType(e.type)&&(f===me.IS_BETWEEN||typeof w!="object")&&!Du(f,typeof w=="string"?w:void 0,F,A)?(Ve.debug("Unable to create formatting rule. Invalid value",w),k=!1):_.isDateType(e.type)&&typeof w!="object"&&!ho(r,f,w)?(Ve.debug("Unable to create formatting rule. Invalid date condition",w),k=!1):_.isCharType(e.type)&&typeof w!="object"&&f!==We.IS_NULL&&f!==We.IS_NOT_NULL&&(w===void 0||w.length!==1)?(Ve.debug("Unable to create formatting rule. Char value must be a single character",w),k=!1):_.isBooleanType(e.type)&&typeof w!="object"&&(f===Fe.IS_EQUAL||f===Fe.IS_NOT_EQUAL)&&w!=="true"&&w!=="false"&&w!=="null"&&(Ve.debug("Unable to create formatting rule. Boolean comparison requires a column, true, false, or null",w),k=!1),W(k),o({condition:f,rightHandValue:w,start:F,end:A},k)},[o,e.type,r,f,w,F,A]);var Y=T.useMemo(()=>{if(s===void 0||f===pe.IS_NULL||f===pe.IS_NOT_NULL||f===Fe.IS_TRUE||f===Fe.IS_FALSE)return null;var $=typeof w=="object",k=!$&&!U&&w!==void 0&&w!=="",K=t.filter(ne=>_.isNumberType(s)?_.isNumberType(ne.type):_.getNormalizedType(s)===_.getNormalizedType(ne.type));if(_.isNumberType(s)&&f===me.IS_BETWEEN){var ce=!$&&!U&&(F!==void 0&&F!==""||A!==void 0&&A!=="");return d.jsxs("div",{className:"d-flex flex-row",children:[d.jsx("input",{type:"number",className:ee("form-control","d-flex","mr-2",{"is-invalid":ce}),placeholder:"Start value",value:F??"",onChange:x}),d.jsx("input",{type:"number",className:ee("form-control","d-flex",{"is-invalid":ce}),placeholder:"End value",value:A??"",onChange:P})]})}return C?d.jsx(Pn,{"aria-label":"Select a column",selectedKey:typeof w=="object"?w.name:null,onChange:ne=>{if(ne!=null){var ve=K.find(Ne=>Ne.name===String(ne));ve!=null&&b({name:ve.name,type:ve.type})}},children:K.map(ne=>ne.name)}):d.jsx("input",{type:_.isNumberType(s)?"number":"text",className:ee("form-control",{"is-invalid":k}),value:typeof w=="string"?w:"",placeholder:"Enter a value",onChange:ne=>b(ne.target.value)})},[t,s,f,w,F,A,U,b,x,P,C]);return d.jsxs("div",{className:"condition-editor mb-2",children:[d.jsxs(ko,{selectedKey:p,"aria-label":"Select condition","data-testid":"condition-select",width:"100%",UNSAFE_className:"mb-2",onChange:ge,children:[d.jsx(Ri,{title:"Value",children:X}),d.jsx(Ri,{title:"Column",children:re})]}),Y]})}function Wt(i,e){return Pu(i)||Mu(i,e)||_u(i,e)||Nu()}function Nu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
10
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _u(i,e){if(i){if(typeof i=="string")return Xi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Xi(i,e):void 0}}function Xi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Mu(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Pu(i){if(Array.isArray(i))return i}var Iu=Te.module("StyleEditor"),ju="#fcfcfa",ku="#f0f0ee",Lu="#1a171a",Vu=200,Uu=()=>{};function Ar(i){var e,t,n=i.config,r=i.onChange,a=r===void 0?Uu:r,o=T.useState(n.type),s=Wt(o,2),l=s[0],u=s[1],h=T.useState((e=(t=n.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:ju),c=Wt(h,2),g=c[0],m=c[1],p=T.useState(!1),v=Wt(p,2),f=v[0],C=v[1],S=T.useState(Vu),E=Wt(S,2),w=E[0],R=E[1],O=T.useRef(null),y=T.useCallback(I=>{var G=I.target.value;Iu.debug("handleBackgroundChange",G),m(G)},[]),F=T.useCallback(()=>{f&&C(!1)},[f]),D=T.useCallback(()=>{f||L(),C(!f)},[f]),N=T.useMemo(()=>[Ie.NO_FORMATTING,Ie.POSITIVE,Ie.NEGATIVE,Ie.WARN,Ie.NEUTRAL,Ie.ACCENT_1,Ie.ACCENT_2,Ie.CUSTOM],[]);function L(){O.current&&R(O.current.getBoundingClientRect().width)}T.useEffect(function(){a({type:l,customConfig:{color:Na.isDark(g)?ku:Lu,background:g}})},[a,l,g]);var A=T.useCallback(()=>{for(var I=[],G=function(){var B=N[U],H="option-".concat(U,"-").concat(B);I.push(d.jsxs(te,{kind:"inline",className:"style-option-btn",onClick:()=>{u(B),C(!1)},style:{color:xn({type:B}),background:On({type:B})},children:[B===l&&d.jsx(oe,{icon:_a,className:"mr-2"}),B!==l&&d.jsx("span",{className:"mr-4"}),bi(B)]},H))},U=0;U<N.length;U+=1)G();return I},[N,l]),j=T.useCallback(()=>d.jsx("div",{className:"style-menu-container",role:"presentation",style:{width:w},children:d.jsx("div",{className:"style-options",children:A()})}),[w,A]);return d.jsxs("div",{className:"style-editor",children:[d.jsxs("div",{className:"mb-2",ref:O,children:[d.jsx("label",{className:"mb-0 mt-1",children:"Style"}),d.jsxs(te,{kind:"inline",className:"cs-dropdown custom-select",style:{color:xn({type:l}),background:On({type:l})},onClick:D,children:[bi(l),d.jsx(wo,{isShown:f,actions:{menuElement:j()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:F,menuStyle:{maxWidth:"100rem"}})]})]}),l===Ie.CUSTOM&&d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0",children:"Background"}),d.jsx("input",{type:"color",value:g,className:"custom-select color-select",onChange:y})]})]})}function pt(i,e){return Gu(i)||$u(i,e)||Hu(i,e)||Bu()}function Bu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
11
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Hu(i,e){if(i){if(typeof i=="string")return Zi(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Zi(i,e):void 0}}function Zi(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function $u(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Gu(i){if(Array.isArray(i))return i}function Ji(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Dr(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ji(Object(t),!0).forEach(function(n){Wu(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ji(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Wu(i,e,t){return(e=zu(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function zu(i){var e=Ku(i,"string");return typeof e=="symbol"?e:e+""}function Ku(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var Ct=Te.module("MultiColumnFormatEditor"),Yu=()=>{};function qu(i){var e=i[0],t=e.type,n=e.name,r={type:t,name:n},a=Dr({leftHandValue:r,formattedColumns:[],style:fr()},Qt(t));return a}function Qu(i){var e,t=i.columns,n=i.config,r=n===void 0?qu(t):n,a=i.dh,o=i.onChange,s=o===void 0?Yu:o,l=T.useState((e=t.find(H=>H.name===r.leftHandValue.name&&H.type===r.leftHandValue.type))!==null&&e!==void 0?e:t[0]),u=pt(l,2),h=u[0],c=u[1],g=T.useState(()=>{var H=r.formattedColumns,Z=r.leftHandValue,X=H.length>1||H.length===1&&H[0].name!==Z.name;return X?H.map(re=>{var ge;return(ge=t.find(b=>b.name===re.name&&b.type===re.type))!==null&&ge!==void 0?ge:t[0]}):[]}),m=pt(g,2),p=m[0],v=m[1],f=T.useMemo(()=>p.length>0?p:[h],[p,h]),C=T.useState(vr(r)),S=pt(C,2),E=S[0],w=S[1],R=T.useState(!1),O=pt(R,2),y=O[0],F=O[1],D=T.useState(r.style),N=pt(D,2),L=N[0],A=N[1],j=T.useCallback(H=>{var Z=t.find(X=>{var re=X.name;return re===H});Z!==void 0?(c(Z),h.type!==Z.type&&(w(Qt(Z.type)),F(!1))):Ct.error("Column ".concat(H," not found."))},[t,h]),I=T.useCallback(H=>{if(H!=="all"){var Z=[...H].map(X=>t.find(re=>re.name===String(X))).filter(X=>X!==void 0);v(Z)}},[t]),G=T.useCallback((H,Z)=>{Ct.debug("handleConditionChange",H,Z),w(H),F(Z)},[]),U=T.useCallback(H=>{Ct.debug("handleStyleChange",H),A(H)},[]);T.useEffect(function(){var Z=y;h===void 0&&(Ct.debug("Column is not selected, invalidating update."),Z=!1),(L===void 0||L.type===Ie.NO_FORMATTING)&&(Ct.debug("Style is not selected, invalidating update."),Z=!1);var X=h.type,re=h.name,ge={type:X,name:re};s(Dr({leftHandValue:ge,formattedColumns:f.map(b=>{var x=b.type,P=b.name;return{type:x,name:P}}),style:L},E),Z)},[s,h,f,L,E,y]);var W=T.useMemo(()=>t.map(H=>{var Z=H.name;return Z}),[t]),B=T.useMemo(()=>f.map(H=>H.name),[f]);return d.jsxs("div",{className:"conditional-rule-editor form",children:[d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0",children:"Format Cell If"}),d.jsx(Pn,{"aria-label":"Select column to format",defaultSelectedKey:h==null?void 0:h.name,onChange:j,children:W})]}),h!==void 0&&d.jsxs(d.Fragment,{children:[d.jsx(Or,{dh:a,column:h,columns:t,config:E,onChange:G}),d.jsx(Ar,{config:L,onChange:U})]}),d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0 mt-1",children:"Apply to Columns"}),d.jsx(Lo,{"aria-label":"Select columns to apply formatting to",width:"100%",selectedKeys:B,onChange:I,children:W})]})]})}function zt(i,e){return ed(i)||Ju(i,e)||Zu(i,e)||Xu()}function Xu(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
12
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Zu(i,e){if(i){if(typeof i=="string")return er(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?er(i,e):void 0}}function er(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Ju(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function ed(i){if(Array.isArray(i))return i}function tr(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function Nr(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?tr(Object(t),!0).forEach(function(n){td(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):tr(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function td(i,e,t){return(e=nd(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function nd(i){var e=id(i,"string");return typeof e=="symbol"?e:e+""}function id(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var St=Te.module("RowFormatEditor"),rd=()=>{};function ad(i){var e=i[0],t=e.type,n=e.name,r={type:t,name:n},a=Nr({leftHandValue:r,formattedColumns:[],style:fr()},Qt(t));return a}function od(i){var e,t=i.columns,n=i.config,r=n===void 0?ad(t):n,a=i.dh,o=i.onChange,s=o===void 0?rd:o,l=T.useState((e=t.find(A=>A.name===r.leftHandValue.name&&A.type===r.leftHandValue.type))!==null&&e!==void 0?e:t[0]),u=zt(l,2),h=u[0],c=u[1],g=T.useState(vr(r)),m=zt(g,2),p=m[0],v=m[1],f=T.useState(!1),C=zt(f,2),S=C[0],E=C[1],w=T.useState(r.style),R=zt(w,2),O=R[0],y=R[1],F=T.useCallback(A=>{var j=t.find(I=>{var G=I.name;return G===A});j!==void 0?(c(j),h.type!==j.type&&(v(Qt(j.type)),E(!1))):St.error("Column ".concat(A," not found."))},[t,h]),D=T.useCallback((A,j)=>{St.debug("handleConditionChange",A,j),v(A),E(j)},[]),N=T.useCallback(A=>{St.debug("handleStyleChange",A),y(A)},[]);T.useEffect(function(){if(h===void 0){St.debug("Column is not selected, skip update.");return}if(O===void 0){St.debug("Style is not selected, skip update.");return}var j=h.type,I=h.name,G={type:j,name:I};s(Nr({leftHandValue:G,formattedColumns:[],style:O},p),S)},[s,h,O,p,S]);var L=T.useMemo(()=>t.map(A=>{var j=A.name;return j}),[t]);return d.jsxs("div",{className:"conditional-rule-editor form",children:[d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0",children:"Format Row If"}),d.jsx(Pn,{"aria-label":"Select column to format row by",defaultSelectedKey:h==null?void 0:h.name,onChange:F,children:L})]}),h!==void 0&&d.jsxs(d.Fragment,{children:[d.jsx(Or,{column:h,columns:t,config:p,dh:a,onChange:D}),d.jsx(Ar,{config:O,onChange:N})]})]})}function bn(i,e){return dd(i)||ud(i,e)||ld(i,e)||sd()}function sd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
13
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ld(i,e){if(i){if(typeof i=="string")return nr(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?nr(i,e):void 0}}function nr(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function ud(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function dd(i){if(Array.isArray(i))return i}var yn=Te.module("ConditionalFormatEditor"),wn=()=>{};function hd(i){switch(i){case He.CONDITIONAL:return d.jsx(Uo,{});case He.ROWS:return d.jsx(Vo,{})}}function cd(i){switch(i){case He.CONDITIONAL:return"Conditional";case He.ROWS:return"Rows"}}var ir=[He.CONDITIONAL,He.ROWS];function md(i){var e,t=i.columns,n=i.dh,r=i.errorMessage,a=i.onSave,o=a===void 0?wn:a,s=i.onUpdate,l=s===void 0?wn:s,u=i.onCancel,h=u===void 0?wn:u,c=i.rule,g=t.filter(co),m=T.useState((e=c==null?void 0:c.type)!==null&&e!==void 0?e:ir[0]),p=bn(m,2),v=p[0],f=p[1],C=T.useState(c),S=bn(C,2),E=S[0],w=S[1],R=T.useState(!1),O=bn(R,2),y=O[0],F=O[1],D=T.useCallback(()=>{h()},[h]),N=T.useCallback(()=>{if(E===void 0){yn.error("Rule is not defined.");return}o(E)},[o,E]),L=T.useCallback(j=>{yn.debug("handleFormatterChange",j),f(j)},[]),A=T.useCallback((j,I)=>{yn.debug("handleRuleChange",j,I,v);var G={type:v,config:j};w(G),F(I),l(I?G:void 0)},[l,v]);return d.jsxs("div",{className:"conditional-format-editor form",children:[d.jsxs("div",{className:"mb-2",children:[d.jsx("label",{className:"mb-0",htmlFor:"formatter-select",children:"Select Formatter"}),d.jsx("div",{className:"formatter-list",children:ir.map((j,I)=>d.jsx("div",{className:"formatter-type",children:d.jsxs("button",{type:"button",className:ee("btn","btn-icon","btn-formatter-type",{active:j===v}),"data-index":I,onClick:()=>L(j),children:[hd(j),cd(j)]})},j))})]}),v===He.CONDITIONAL&&d.jsx(Qu,{columns:g,dh:n,config:E==null?void 0:E.config,onChange:A}),v===He.ROWS&&d.jsx(od,{columns:g,config:E==null?void 0:E.config,dh:n,onChange:A}),d.jsx("hr",{}),r!=null&&r!==""&&d.jsxs("div",{className:"error-message",children:[d.jsxs("p",{children:[d.jsx(oe,{icon:ur})," Failed to preview conditional formatting."]}),d.jsx("div",{className:"error-box",children:r})]}),d.jsxs("div",{className:"d-flex justify-content-end my-3",children:[d.jsx(te,{kind:"secondary",onClick:D,className:"mr-2",children:"Cancel"}),d.jsx(te,{kind:"primary",onClick:N,disabled:E===void 0||!y||r!=null,children:"Done"})]})]})}function bt(i,e){return pd(i)||fd(i,e)||vd(i,e)||gd()}function gd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
14
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function vd(i,e){if(i){if(typeof i=="string")return rr(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?rr(i,e):void 0}}function rr(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function fd(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function pd(i){if(Array.isArray(i))return i}function Cd(i){var e,t,n=i.text,r=i.isOpen,a=i.onClose,o=T.useState(!1),s=bt(o,2),l=s[0],u=s[1],h=T.useState(0),c=bt(h,2),g=c[0],m=c[1],p=T.useState(!1),v=bt(p,2),f=v[0],C=v[1],S=T.useState(!1),E=bt(S,2),w=E[0],R=E[1],O=T.useState(!1),y=bt(O,2),F=y[0],D=y[1],N=T.useRef();T.useEffect(function(){if(r){try{JSON.parse(n),D(!0)}catch{D(!1)}R(!1)}},[r,n]),T.useEffect(function(){N.current&&N.current.layout()},[g]),T.useEffect(function(){N.current&&N.current.updateOptions({lineNumbers:f?"on":"off"})},[f]);function L(){C(!f)}function A(){var U,W=(U=N.current)===null||U===void 0?void 0:U.getModel();!F||!W||(w?(W.setValue(n),R(!1)):(W.setValue(JSON.stringify(JSON.parse(n),void 0,2)),R(!0)),j())}function j(){var U,W,B=N.current;B&&C(((U=(W=B.getModel())===null||W===void 0?void 0:W.getLineCount())!==null&&U!==void 0?U:0)>1)}function I(){l&&(N.current=void 0,a())}function G(U){var W;N.current=U,m(U.getContentHeight()),U.onDidContentSizeChange(B=>{var H=B.contentHeight;return m(H)}),j(),(W=document.activeElement)===null||W===void 0||W.blur()}return!r&&!l?null:d.jsxs(hr,{isOpen:r,centered:!0,keyboard:!0,toggle:I,onOpened:()=>u(!0),onClosed:()=>{u(!1),m(0)},className:"cell-overflow-modal",size:"xl",children:[d.jsxs(cr,{toggle:a,children:[d.jsx("h5",{className:"overflow-modal-title",children:"Cell Contents"}),d.jsx(br,{tooltip:"Copy cell contents",copy:(e=(t=N.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:n}),d.jsxs(ci,{isSelected:f,"aria-label":"Toggle line numbers",onChange:L,children:[d.jsx(mi,{UNSAFE_className:"action-button-icon-with-tooltip",children:d.jsx(oe,{icon:Ma})}),d.jsx(ze,{children:"Toggle line numbers"})]}),F&&d.jsxs(ci,{isSelected:w,"aria-label":"Format as JSON",onChange:A,children:[d.jsx(mi,{UNSAFE_className:"action-button-icon-with-tooltip",children:d.jsx(oe,{icon:Pa})}),d.jsx(ze,{children:"Format as JSON"})]})]}),d.jsx(mr,{style:{height:g},children:d.jsx(mo,{onEditorInitialized:G,settings:{value:n,readOnly:!0,wordWrap:"on",language:F?"typescript":"plaintext",folding:F,padding:{bottom:16},lineNumbers:f?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})})]})}function Sd(i,e){return Td(i)||wd(i,e)||yd(i,e)||bd()}function bd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
15
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function yd(i,e){if(i){if(typeof i=="string")return ar(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?ar(i,e):void 0}}function ar(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function wd(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e!==0)for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Td(i){if(Array.isArray(i))return i}var Ed="###,##0",_r=T.forwardRef((i,e)=>{var t=i.gotoRow,n=i.gotoRowError,r=i.gotoValueError,a=i.onGotoRowSubmit,o=i.isShown,s=i.onEntering,l=i.onEntered,u=i.onExiting,h=i.onExited,c=i.model,g=i.onGotoRowNumberChanged,m=i.onClose,p=i.gotoValueSelectedColumnName,v=i.gotoValue,f=i.gotoValueFilter,C=i.onGotoValueSelectedColumnNameChanged,S=i.onGotoValueSelectedFilterChanged,E=i.onGotoValueChanged,w=i.onGotoValueSubmit,R=T.useRef(null),O=T.useRef(null),y=T.useState(!1),F=Sd(y,2),D=F[0],N=F[1],L=[];go(c)&&(L=c.table.columns);var A=c.dh,j=c.rowCount,I=T.useMemo(()=>"goto-row-input-".concat(Tn()),[]),G=b=>{b.key==="Enter"?(b.stopPropagation(),b.preventDefault(),w()):(b.key==="Backspace"||b.key==="Delete")&&(v==="".concat(Number.POSITIVE_INFINITY)||v==="".concat(Number.NEGATIVE_INFINITY))&&X("")},U=b=>{b.key==="Enter"&&(b.stopPropagation(),b.preventDefault(),w(b.shiftKey))},W=c.getColumnIndexByName(p),B=L[W??0],H=B==null?void 0:B.type,Z=_.getNormalizedType(H),X=b=>{E(b??"")};T.useImperativeHandle(e,()=>({focus(){var b;N(!0),(b=R.current)===null||b===void 0||b.select()}}));var re=()=>{if(D&&document.activeElement!==R.current){var b;(b=R.current)===null||b===void 0||b.select()}else if(!D&&document.activeElement!==O.current){var x;(x=O.current)===null||x===void 0||x.select()}};T.useEffect(re,[D]);var ge=()=>{switch(Z){case _.dataType.DECIMAL:case _.dataType.INT:return d.jsx("div",{className:"goto-row-input",children:d.jsx("input",{ref:O,className:ee("form-control",{"is-invalid":r!==""}),onKeyDown:G,placeholder:"value",onChange:b=>{var x=b.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(b.target.value)?X(b.target.value):x==="-i"||x==="-infinity"?X("".concat(Number.NEGATIVE_INFINITY)):(x==="i"||x==="infinity")&&X("".concat(Number.POSITIVE_INFINITY))},value:v,"aria-label":"Value Input"})});case _.dataType.DATETIME:return d.jsx("div",{className:"goto-value-date-time-input",children:d.jsx(Bo,{ref:O,className:ee("form-control","goto-value-date-time-input",{"is-invalid":r!==""}),defaultValue:v,onChange:X,onSubmit:U,"aria-label":"Value Input"})});case _.dataType.STRING:return d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"goto-row-input",children:d.jsxs(Rt,{className:"custom-select",onChange:b=>{S(b)},value:f,"aria-label":"filter-type-select",children:[d.jsx("option",{value:Oe.eqIgnoreCase,children:"Equals (case-insensitive)"},Oe.eqIgnoreCase),d.jsx("option",{value:Oe.containsIgnoreCase,children:"Contains (case-insensitive)"},Oe.containsIgnoreCase),d.jsx("option",{value:Oe.eq,children:"Equals"},Oe.eq),d.jsx("option",{value:Oe.contains,children:"Contains"},Oe.contains)]})}),d.jsx("div",{className:"goto-row-input",children:d.jsx("input",{ref:O,className:ee("form-control",{"is-invalid":r!==""}),onKeyDown:U,placeholder:"value",onChange:b=>X(b.target.value),value:v,"aria-label":"Value Input"})})]});case _.dataType.BOOLEAN:return d.jsx("div",{className:"goto-row-input",children:d.jsxs(Rt,{className:"custom-select",onChange:b=>{X(b)},value:v,"aria-label":"Value Input",children:[d.jsx("option",{"aria-label":"null value",value:""},"null"),d.jsx("option",{value:"true",children:"true"},"true"),d.jsx("option",{value:"false",children:"false"},"false")]})});default:return d.jsx("div",{className:"goto-row-input",children:d.jsx("input",{ref:O,className:"form-control",onKeyDown:U,placeholder:"value",onChange:b=>X(b.target.value),value:v,"aria-label":"Value Input"})})}};return d.jsx(Xt,{isShown:o,className:ee("goto-row"),onEntering:s,onEntered:()=>{l(),re()},onExiting:u,onExited:h,children:d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"goto-row-row",children:[d.jsxs("div",{className:ee("goto-row-wrapper",{"is-inactive":!D}),onClick:()=>N(!0),onFocus:()=>N(!0),role:"group",children:[d.jsx("label",{className:"goto-row-text",htmlFor:I,children:"Go to row"}),d.jsx("div",{className:"goto-row-input",children:d.jsx("input",{ref:R,"data-testid":"goto-row-input",type:"number",onKeyDown:b=>{b.key==="Enter"&&(b.stopPropagation(),b.preventDefault(),a())},className:ee("form-control",{"is-invalid":n!==""}),placeholder:"Row number",onChange:b=>{g(b)},value:t,id:I})}),d.jsxs("div",{className:"goto-row-text",children:["of"," ",A.i18n.NumberFormat.format(Ed,j)]}),n&&d.jsx("div",{className:"text-danger",children:n})]}),d.jsx("div",{className:"goto-row-close",children:d.jsx(te,{kind:"ghost",onClick:m,children:d.jsx(oe,{icon:gr,style:{marginRight:"0"}})})})]}),c.isSeekRowAvailable&&d.jsx("div",{className:"goto-row-row",children:d.jsxs("div",{className:ee("goto-row-wrapper",{"is-inactive":D}),onClick:()=>N(!1),onFocus:()=>N(!1),role:"group",children:[d.jsx("div",{className:"goto-row-text",children:"Go to value"}),d.jsx("div",{className:"goto-row-input",children:d.jsx(Rt,{className:"custom-select",onChange:b=>{var x=b;C(x)},value:p,"aria-label":"column-name-select",id:"column-name-select",children:L.map(b=>d.jsx("option",{value:b.name,children:b.name},b.name))})}),ge(),d.jsxs("div",{children:[d.jsx(te,{tooltip:"Previous match",icon:Ia,kind:"ghost",disabled:v==="",onClick:()=>{w(!0)}}),d.jsx(te,{tooltip:"Next match",icon:ja,kind:"ghost",disabled:v==="",onClick:()=>{w(!1)}})]}),r&&d.jsx("div",{className:"text-danger",children:r})]})})]})})});_r.displayName="GotoRow";function Rd(i){var e=i.isOpen,t=i.onClose,n=i.errorMessage,r=To.PASTE.getDisplayText();return d.jsxs(hr,{isOpen:e,toggle:t,centered:!0,children:[d.jsx(cr,{closeButton:!1,children:"No Paste Permission"}),d.jsxs(mr,{children:[d.jsx("p",{children:n}),d.jsxs("p",{children:["You can still use ",r," to paste."]})]}),d.jsx(Eo,{children:d.jsx(te,{kind:"primary",onClick:t,children:"Dismiss"})})]})}function st(i,e){return Ad(i)||Od(i,e)||xd(i,e)||Fd()}function Fd(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
16
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xd(i,e){if(i){if(typeof i=="string")return or(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?or(i,e):void 0}}function or(i,e){(e==null||e>i.length)&&(e=i.length);for(var t=0,n=Array(e);t<e;t++)n[t]=i[t];return n}function Od(i,e){var t=i==null?null:typeof Symbol<"u"&&i[Symbol.iterator]||i["@@iterator"];if(t!=null){var n,r,a,o,s=[],l=!0,u=!1;try{if(a=(t=t.call(i)).next,e===0){if(Object(t)!==t)return;l=!1}else for(;!(l=(n=a.call(t)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(h){u=!0,r=h}finally{try{if(!l&&t.return!=null&&(o=t.return(),Object(o)!==o))return}finally{if(u)throw r}}return s}}function Ad(i){if(Array.isArray(i))return i}function sr(i,e,t,n,r,a,o){try{var s=i[a](o),l=s.value}catch(u){return void t(u)}s.done?e(l):Promise.resolve(l).then(n,r)}function yt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function o(l){sr(a,n,r,o,s,"next",l)}function s(l){sr(a,n,r,o,s,"throw",l)}o(void 0)})}}function lr(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function de(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?lr(Object(t),!0).forEach(function(n){M(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):lr(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function M(i,e,t){return(e=Dd(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Dd(i){var e=Nd(i,"string");return typeof e=="symbol"?e:e+""}function Nd(i,e){if(typeof i!="object"||!i)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var n=t.call(i,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}var V=Te.module("IrisGrid"),_d=500,Md=500,Pd=250,Id=250,jd=250,Dn=Object.freeze({aggregations:ae,showOnTop:!1}),kd="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";class Be extends T.Component{constructor(e){var t,n,r;super(e),M(this,"grid",void 0),M(this,"lastFocusedFilterBarColumn",void 0),M(this,"lastLoadedConfig",void 0),M(this,"tooltip",void 0),M(this,"pending",void 0),M(this,"globalColumnFormats",void 0),M(this,"dateTimeFormatterOptions",void 0),M(this,"decimalFormatOptions",void 0),M(this,"integerFormatOptions",void 0),M(this,"truncateNumbersWithPound",void 0),M(this,"showEmptyStrings",void 0),M(this,"showNullStrings",void 0),M(this,"showExtraGroupColumn",void 0),M(this,"loadingScrimStartTime",void 0),M(this,"loadingScrimFinishTime",void 0),M(this,"animationFrame",void 0),M(this,"loadingTimer",void 0),M(this,"tableSaver",void 0),M(this,"crossColumnRef",void 0),M(this,"isAnimating",void 0),M(this,"filterInputRef",void 0),M(this,"gotoRowRef",void 0),M(this,"isCopying",void 0),M(this,"toggleFilterBarAction",void 0),M(this,"toggleSearchBarAction",void 0),M(this,"toggleGotoRowAction",void 0),M(this,"discardAction",void 0),M(this,"commitAction",void 0),M(this,"contextActions",void 0),M(this,"tableUtils",void 0),M(this,"keyHandlers",void 0),M(this,"mouseHandlers",void 0),M(this,"lastMetricCalculatorFactory",void 0),M(this,"slideTransitionRef",De.createRef()),M(this,"bottomTransitionRef",De.createRef()),M(this,"getAdvancedMenuOpenedHandler",se(b=>this.handleAdvancedMenuOpened.bind(this,b),{max:100})),M(this,"getAdvancedMenuToggleMaximizeHandler",se(b=>this.handleAdvancedFilterToggleMaximize.bind(this,b),{max:100})),M(this,"getCachedAdvancedFilterMenuActions",se((b,x,P,Y,$,k,K)=>d.jsx(ke,{model:b,column:x,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:P,sortDirection:Y,formatter:$,tableUtils:this.tableUtils,isMaximized:k,onToggleMaximize:K}),{max:50})),M(this,"getCachedOptionItems",se((b,x,P,Y,$,k,K,ce,ne,ve,Ne,Ye,ht,Zt,_t,Mt,Pt)=>{var Ce=[];return b&&Ce.push({type:ie.CHART_BUILDER,title:"Chart Builder",icon:ka,order:100}),Y&&Ce.push({type:ie.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:La,order:200}),P&&Ce.push({type:ie.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:Va,order:300}),x&&Ce.push({type:ie.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:Ua,order:400}),$&&Ce.push({type:ie.ROLLUP_ROWS,title:"Rollup Rows",icon:Ba,order:500}),k&&Ce.push({type:ie.AGGREGATIONS,title:"Aggregate Columns",icon:Ha,order:600}),K&&Ce.push({type:ie.SELECT_DISTINCT,title:"Select Distinct Values",icon:$a,order:700}),ce&&Zt&&Ce.push({type:ie.TABLE_EXPORTER,title:"Download CSV",icon:Ga,order:800}),Pt&&Ce.push({type:ie.ADVANCED_SETTINGS,title:"Advanced Settings",icon:Wa,order:900}),Ce.push({type:ie.QUICK_FILTERS,title:"Quick Filters",subtitle:ne.shortcut.getDisplayText(),icon:Fn,isOn:Ye,onChange:ne.action,order:1e3}),_t&&Ce.push({type:ie.SEARCH_BAR,title:"Search Bar",subtitle:ve.shortcut.getDisplayText(),icon:za,isOn:ht,onChange:ve.action,order:1100}),Ce.push({type:ie.GOTO,title:"Go to",subtitle:Ne.shortcut.getDisplayText(),icon:Ka,isOn:Mt,onChange:Ne.action,order:1200}),Object.freeze(Ce)},{max:1})),M(this,"getCachedTransformedOptionItems",se((b,x)=>{if(x==null)return b;var P;try{P=x(b)}catch(k){return V.error("transformTableOptions threw an error; falling back to defaults.",k),b}var Y=new Map;P.forEach(k=>{Y.set(String(k.type),k)});var $=[...Y.values()].map((k,K)=>({item:k,index:K})).sort((k,K)=>{var ce,ne;return((ce=k.item.order)!==null&&ce!==void 0?ce:1/0)-((ne=K.item.order)!==null&&ne!==void 0?ne:1/0)||k.index-K.index}).map(k=>{var K=k.item;return K});return Object.freeze($)},{max:1})),M(this,"getCachedHiddenColumns",se((b,x)=>ue.getHiddenColumns(new Map([...b.initialColumnWidths,...x])),{max:1})),M(this,"getCachedHiddenColumnNames",se((b,x)=>Object.freeze(b.map(P=>{var Y;return(Y=x[P])===null||Y===void 0?void 0:Y.name}).filter(P=>P!=null)),{max:1})),M(this,"getCachedViewState",se(b=>Object.freeze({hiddenColumns:b}),{max:1})),M(this,"getAggregationMap",se((b,x)=>{var P={};return x.forEach(Y=>{var $=Y.operation,k=Y.selected,K=Y.invert;P[$]=dn.getOperationColumnNames(b,$,k,K)}),P},{max:1})),M(this,"getOperationMap",se((b,x)=>ue.getOperationMap(b,x),{max:1})),M(this,"getOperationOrder",se(b=>ue.getOperationOrder(b),{max:1})),M(this,"getCachedFormatColumns",se((b,x,P)=>vo(b,x,P),{max:1e3})),M(this,"getCachedPreviewFormatColumns",se((b,x,P,Y,$)=>{if(V.debug("getCachedPreviewFormatColumns",P,Y,$),Y!==void 0&&$!==void 0){var k=[...P];return k[$]=Y,this.getCachedFormatColumns(b,x,k)}return this.getCachedFormatColumns(b,x,P)},{max:1})),M(this,"getModelRollupConfig",se((b,x,P)=>ue.getModelRollupConfig(b,x,P),{max:1})),M(this,"getModelTotalsConfig",se((b,x,P)=>ue.getModelTotalsConfig(b,x,P),{max:1})),M(this,"getCachedStateOverride",se((b,x,P,Y,$,k,K,ce,ne,ve,Ne,Ye)=>({model:b,theme:x,hoverSelectColumn:P,isFilterBarShown:Y,isSelectingColumn:$,loadingScrimProgress:k,quickFilters:K,advancedFilters:ce,sorts:ne,reverse:ve,rollupConfig:Ne,isMenuShown:Ye}),{max:1})),M(this,"getCachedFilter",se((b,x,P,Y)=>[...b??[],...ue.getFiltersFromFilterMap(x),...ue.getFiltersFromFilterMap(P),...Y!==void 0?[Y]:[]],{max:1})),M(this,"getCachedTheme",se((b,x,P,Y,$)=>{var k,K=b??Ho(),ce=Y>0?(k=x==null?void 0:x.rowFooterWidth)!==null&&k!==void 0?k:K.rowFooterWidth:0,ne=this.state.metricCalculator;ne!=null&&(ne.resetCalculatedColumnWidths(),ne.resetCalculatedRowHeights());var ve={};return $==="compact"?ve=K.density.compact:$==="spacious"&&(ve=K.density.spacious),de(de(de(de({},K),ve),x),{},{autoSelectRow:!P,rowFooterWidth:ce})},{max:1})),M(this,"getCachedKeyHandlers",se(b=>[...b,...this.keyHandlers].sort((x,P)=>x.order-P.order),{max:1})),M(this,"getCachedMouseHandlers",se(b=>[...b,...this.mouseHandlers].map(x=>typeof x=="function"?x(this):x),{max:1})),M(this,"getCachedRenderer",se(b=>b??new $o,{max:1})),M(this,"getAlwaysFetchColumns",se((b,x,P,Y,$,k)=>{for(var K=[],ce=0;ce<Y;ce+=1)K.push(x[z.getModelIndex(ce,P)].name);for(var ne=0;ne<$;ne+=1)K.push(x[z.getModelIndex(x.length-1-ne,P)].name);if(k)for(var ve=k[0];ve<=k[1];ve+=1)K.push(x[z.getModelIndex(ve,P)].name);var Ne=new Set([...b,...K]);return Object.freeze([...Ne])},{max:1})),M(this,"updateSearchFilter",Et((b,x,P,Y)=>{var $=this.props.model,k=Ht.createSearchFilter($.dh,b,x,P,Y);this.setState({searchFilter:k})},Pd)),M(this,"showViewportLoading",gi(()=>{var b=this.props.model,x=this.state.loadingSpinnerShown;b.isViewportPending&&!x&&this.startLoading("Waiting for viewport...",{loadingCancelShown:!1,loadingBlocksGrid:!1})},_d,{leading:!1,trailing:!0})),M(this,"handleConditionalFormatEditorUpdate",Et(b=>{this.setState({conditionalFormatPreview:b,conditionalFormatError:null})},jd)),M(this,"handleDownloadProgressUpdate",gi((b,x)=>{var P=this.state.tableDownloadStatus;P===Ze.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:b,tableDownloadEstimatedTime:x})},Md)),M(this,"getOverflowButtonTooltip",se(b=>{if(b==null)return null;var x=de(de({position:"absolute"},b),{},{pointerEvents:"none"}),P={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return d.jsx("div",{style:x,children:d.jsx(ze,{options:P,ref:this.handleTooltipRef,children:"View full contents"},Date.now())})},{max:1})),M(this,"getExpandCellTooltip",se(b=>{if(b==null)return null;var x=this.state.expandTooltipDisplayValue,P=this.props.model,Y=ut(P)&&P.isExpandAllAvailable,$=de(de({position:"absolute"},b),{},{pointerEvents:"none"}),k={placement:"bottom-start"};return d.jsx("div",{style:$,children:d.jsx(ze,{options:k,ref:this.handleTooltipRef,children:d.jsxs("div",{style:{textAlign:"left"},children:["Click to ",x," row",Y&&d.jsxs(d.Fragment,{children:[d.jsx("br",{}),Ot.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children"]})]})},Date.now())})},{max:1})),M(this,"getHoverTooltip",se(b=>{if(b==null)return null;var x=this.state.hoverDisplayValue,P=de(de({position:"absolute"},b),{},{pointerEvents:"none"}),Y={placement:"bottom"};return d.jsx("div",{style:P,children:d.jsx(ze,{options:Y,ref:this.handleTooltipRef,children:d.jsx("div",{className:"link-hover-tooltip",children:x})})})},{max:1})),M(this,"handleGotoValueChanged",b=>{this.setState({gotoValue:b,gotoValueManuallyChanged:!0}),this.debouncedSeekRow(b)}),M(this,"debouncedSeekRow",Et(b=>{this.seekRow(b)},Id)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedFilterToggleMaximize=this.handleAdvancedFilterToggleMaximize.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handlePending=this.handlePending.bind(this),this.handlePendingCleared=this.handlePendingCleared.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleSchemaChanged=this.handleSchemaChanged.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleColumnAlignmentChange=this.handleColumnAlignmentChange.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.handleViewportUpdated=this.handleViewportUpdated.bind(this),this.handlePendingCommitClicked=this.handlePendingCommitClicked.bind(this),this.handlePendingDiscardClicked=this.handlePendingDiscardClicked.bind(this),this.handleGotoRowSelectedRowNumberSubmit=this.handleGotoRowSelectedRowNumberSubmit.bind(this),this.focusRowInGrid=this.focusRowInGrid.bind(this),this.handleDownloadTable=this.handleDownloadTable.bind(this),this.handleDownloadTableStart=this.handleDownloadTableStart.bind(this),this.handleCancelDownloadTable=this.handleCancelDownloadTable.bind(this),this.handleDownloadCanceled=this.handleDownloadCanceled.bind(this),this.handleDownloadCompleted=this.handleDownloadCompleted.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handleColumnVisibilityChanged=this.handleColumnVisibilityChanged.bind(this),this.handleColumnVisibilityReset=this.handleColumnVisibilityReset.bind(this),this.handleCrossColumnSearch=this.handleCrossColumnSearch.bind(this),this.handleRollupChange=this.handleRollupChange.bind(this),this.handleOverflowClose=this.handleOverflowClose.bind(this),this.handleCloseNoPastePermissionModal=this.handleCloseNoPastePermissionModal.bind(this),this.getColumnBoundingRect=this.getColumnBoundingRect.bind(this),this.handleGotoRowSelectedRowNumberChanged=this.handleGotoRowSelectedRowNumberChanged.bind(this),this.handleGotoValueSelectedColumnNameChanged=this.handleGotoValueSelectedColumnNameChanged.bind(this),this.handleGotoValueSelectedFilterChanged=this.handleGotoValueSelectedFilterChanged.bind(this),this.handleGotoValueChanged=this.handleGotoValueChanged.bind(this),this.handleGotoValueSubmitted=this.handleGotoValueSubmitted.bind(this),this.handleViewportUpdated=this.handleViewportUpdated.bind(this),this.makeQuickFilter=this.makeQuickFilter.bind(this),this.setFilterMap=this.setFilterMap.bind(this),this.handleFrozenColumnsChanged=this.handleFrozenColumnsChanged.bind(this),this.grid=null,this.lastLoadedConfig=null,this.pending=new wr,this.globalColumnFormats=ae,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.showEmptyStrings=!0,this.showNullStrings=!0,this.showExtraGroupColumn=!0,this.tableSaver=null,this.crossColumnRef=De.createRef(),this.isAnimating=!1,this.filterInputRef=De.createRef(),this.gotoRowRef=De.createRef(),this.isCopying=!1,this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:tt.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:tt.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:tt.TABLE.GOTO_ROW},this.discardAction={action:()=>{var b=this.props.model;we(b)&&b.isEditable&&b.pendingDataMap.size>0&&this.discardPending().catch(V.error)},shortcut:tt.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var b=this.props.model;we(b)&&b.isEditable&&b.pendingDataMap.size>0&&b.pendingDataErrors.size===0&&this.commitPending().catch(V.error)},shortcut:tt.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var a=e.aggregationSettings,o=e.conditionalFormats,s=e.customColumnFormatMap,l=e.columnAlignmentMap,u=e.isFilterBarShown,h=e.isSelectingPartition,c=e.partitions,g=e.partitionConfig,m=e.model,p=e.movedColumns,v=e.movedRows,f=e.rollupConfig,C=e.userColumnWidths,S=e.userColumnWidthsByName,E=e.userRowHeights,w=e.showSearchBar,R=e.searchValue,O=e.selectedSearchColumns,y=e.invertSearchColumns,F=e.advancedFilters,D=e.quickFilters,N=e.selectDistinctColumns,L=e.pendingDataMap,A=e.canCopy,j=e.frozenColumns,I=e.columnHeaderGroups,G=e.getMetricCalculator,U=m.dh,W=[new wl(this),new Dl(this),new Pl(this)],B=[new Go(this),new Wo(this),new zo(this),new Ko(this),new Yo(this),new qo(this),new Qo(this),new Xo(this,U),new Zo(this),new Jo(this),new es(this),...A?[new ts(this)]:[]];A&&W.push(new Fl(this));var H=p.length>0?p:m.initialMovedColumns,Z=v.length>0?v:m.initialMovedRows,X=G({userColumnWidths:new Map(C),userColumnWidthsByName:S!=null?new Map(S):void 0,userRowHeights:new Map(E),movedColumns:H,initialColumnWidths:new Map(m==null||(t=m.layoutHints)===null||t===void 0||(t=t.hiddenColumns)===null||t===void 0?void 0:t.map(b=>[m.getColumnIndexByName(b),0]))});this.lastMetricCalculatorFactory=G;var re=O??[],ge=Ht.createSearchFilter(U,R,re,m.columns,y);this.tableUtils=new _(U),this.mouseHandlers=B,this.keyHandlers=W,this.state={isFilterBarShown:u,isSelectingPartition:h,focusedFilterBarColumn:null,metricCalculator:X,metrics:void 0,partitionConfig:g??(c&&c.length?{partitions:c,mode:"partition"}:void 0),quickFilters:D?new Map(D):new Map,advancedFilters:new Map(F),shownAdvancedFilter:null,maximizedAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverse:!1,customColumns:[],selectDistinctColumns:N,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,loadingCancelShown:!1,loadingBlocksGrid:!1,movedColumns:H,movedRows:Z,shownColumnTooltip:null,formatter:new hn(U),isMenuShown:!1,customColumnFormatMap:new Map(s),columnAlignmentMap:new Map(l),conditionalFormats:o,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,conditionalFormatError:null,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:w,searchFilter:ge,searchValue:R,selectedSearchColumns:re,invertSearchColumns:y,rollupConfig:f,rollupSelectedColumns:[],aggregationSettings:we(m)&&m.isEditable?de(de({},a),{},{showOnTop:!0}):a,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:L??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:j,showOverflowModal:!1,showNoPastePermissionModal:!1,noPastePermissionError:"",overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",hoverTooltipProps:null,hoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(n=(r=m.columns[0])===null||r===void 0?void 0:r.name)!==null&&n!==void 0?n:"",gotoValueSelectedFilter:Oe.eqIgnoreCase,gotoValue:"",gotoValueManuallyChanged:!1,columnHeaderGroups:I??m.initialColumnHeaderGroups}}componentDidMount(){var e=this.props.model;this.initState(),this.startListening(e)}componentDidUpdate(e,t){var n=this.props,r=n.inputFilters,a=n.isSelectingColumn,o=n.settings,s=n.model,l=n.customFilters,u=n.quickFilters,h=n.sorts,c=n.getMetricCalculator;s!==e.model&&(this.stopListening(e.model),this.startListening(s)),c!==e.getMetricCalculator&&this.maybeRebuildMetricCalculator();var g=r!==e.inputFilters?r.filter(R=>!e.inputFilters.includes(R)):[];if(g.length>0){var m,p=this.props.advancedSettings,v=(m=p.get(Yt.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&m!==void 0?m:!1;v&&(this.clearGridInputField(),this.clearCrossColumSearch());var f=this.applyInputFilters(g,v);f&&this.startLoading("Filtering...",{resetRanges:!0})}a!==e.isSelectingColumn&&this.resetColumnSelection(),o!==e.settings&&this.updateFormatterSettings(o),l!==e.customFilters&&this.startLoading("Filtering...",{resetRanges:!0}),h!==e.sorts&&this.updateSorts(h),u!==e.quickFilters&&this.updateQuickFilters(u);var C=this.loadingScrimStartTime,S=this.loadingScrimFinishTime;C!=null&&S!=null&&window.requestAnimationFrame(()=>{var R=Date.now(),O=R-C,y=S-C,F=Math.min(O/y,1);S<R&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(D=>D.loadingScrimProgress==null?(V.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:F})});var E=this.state.openOptions;if(E!==t.openOptions){var w=R=>R.type===ie.AGGREGATION_EDIT;!E.some(w)&&t.openOptions.some(w)&&this.removeEmptyAggregations()}this.sendStateChange()}componentWillUnmount(){var e=this.props.model;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame),this.showViewportLoading.cancel()}get gridWrapper(){var e,t;return(e=(t=this.grid)===null||t===void 0?void 0:t.canvasWrapper.current)!==null&&e!==void 0?e:null}getKeyHandlers(){var e=this.props.keyHandlers;return this.getCachedKeyHandlers(e)}getMetricState(){var e,t=(e=this.grid)===null||e===void 0?void 0:e.getMetricState();if(t!=null){var n=this.state,r=n.advancedFilters,a=n.hoverSelectColumn,o=n.isFilterBarShown,s=n.isMenuShown,l=n.loadingScrimProgress,u=n.quickFilters,h=n.sorts,c=n.reverse,g=n.rollupConfig,m=this.props,p=m.model,v=m.isSelectingColumn;return de(de({},t),this.getCachedStateOverride(p,this.getTheme(),a,o,v,l,u,r,h,c,g,s))}}get renderer(){var e=this.props.renderer;return this.getCachedRenderer(e)}getMouseHandlers(){var e=this.props.mouseHandlers;return this.getCachedMouseHandlers(e)}getValueForCell(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=this.props.model,a=r.dh,o=this.getModelColumn(e),s=this.getModelRow(t);if(n&&o!=null&&s!=null){var l=r.valueForCell(o,s);if(_.isDateType(r.columns[o].type)){var u=r.formatter;return a.i18n.DateTimeFormat.format(kd,l,a.i18n.TimeZone.getTimeZone(u.timeZone))}return l}return n?null:o!=null&&s!=null?r.textForCell(o,s):""}getModelColumn(e){var t=this.state.metrics;q(t);var n=t.modelColumns;return n==null?null:e!=null&&e<0?e:e!=null?n.get(e):null}getModelRow(e){var t=this.state.metrics;q(t);var n=t.modelRows;return n==null?null:e!=null?n.get(e):null}getTheme(){var e,t=this.props,n=t.model,r=t.theme,a=t.density,o=this.context,s=o.theme,l=o.density;return this.getCachedTheme(s,r,(e=we(n)&&n.isEditable)!==null&&e!==void 0?e:!1,n.floatingTopRowCount+n.floatingBottomRowCount,a??l)}getVisibleColumn(e){var t=this.state.movedColumns;return z.getVisibleIndex(e,t)}makeQuickFilter(e,t,n){try{return this.tableUtils.makeQuickFilter(e,t,n)}catch(r){V.error("Error creating quick filter",r)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.props.model,r=this.state,a=r.advancedFilters,o=r.quickFilters,s=t?new Map:new Map(a),l=t?new Map:new Map(o),u=t&&a.size>0;return e.forEach(h=>{var c=h.name,g=h.type,m=h.value,p=n.columns.findIndex(v=>{var f=v.name,C=v.type;return f===c&&C===g});p>=0?(u=s.delete(p)||u,u=this.applyQuickFilter(p,m,l)||u):V.error("Unable to find column for inputFilter",c,g,m)}),u&&this.setState({quickFilters:l,advancedFilters:s}),u}applyQuickFilter(e,t,n){var r=this.props.model,a=r.formatter,o=r.columns[e];if(t!=null&&"".concat(t).trim().length>0){var s=n.get(e);if(s!=null){var l=s.text;if(l===t)return V.debug2("Ignoring change to existing filter"),!1}return n.set(e,{text:t,filter:this.makeQuickFilter(o,t,a.timeZone)}),!0}return n.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,n){V.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",{resetRanges:!0}),this.setState(r=>{var a=r.advancedFilters,o=new Map(a);return t==null?o.delete(e):o.set(e,{filter:t,options:n}),{advancedFilters:o}})}setQuickFilter(e,t,n){V.debug("Setting quick filter",e,t,n),this.startLoading("Filtering...",{resetRanges:!0}),this.setState(r=>{var a=r.quickFilters,o=new Map(a);return o.set(e,{filter:t,text:n}),{quickFilters:o}})}setFilterMap(e){var t;V.debug("setFilterMap",e);var n=this.props.advancedSettings,r=(t=n.get(Yt.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;r&&this.clearAllFilters();var a=this.props.model;e.forEach((o,s)=>{var l=o.columnType,u=o.filterList,h=a.columns.find(p=>p.name===s&&p.type===l);if(h!=null){var c=a.getColumnIndexByName(h.name);q(c);var g=ue.combineFiltersFromList(l,u);if(g.length===0)this.removeQuickFilter(c);else{var m=a.formatter;this.setQuickFilter(c,this.makeQuickFilter(h,g,m.timeZone),"".concat(g))}}})}removeColumnFilter(e){this.startLoading("Filtering...",{resetRanges:!0});var t=Array.isArray(e)?e:[e,e];this.setState(n=>{var r=n.advancedFilters,a=n.quickFilters,o=r?new Map(r):new Map,s=a?new Map(a):new Map;return o.forEach((l,u)=>{u>=t[0]&&u<=t[1]&&o.delete(u)}),s.forEach((l,u)=>{u>=t[0]&&u<=t[1]&&s.delete(u)}),{quickFilters:s,advancedFilters:o}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",{resetRanges:!0}),this.setState(t=>{var n=t.quickFilters,r=new Map(n);return r.delete(e),{quickFilters:r}})}clearAllFilters(){V.debug("Clearing all filters");var e=this.state,t=e.advancedFilters,n=e.quickFilters,r=e.searchFilter;n.size===0&&t.size===0&&r===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",{resetRanges:!0}),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearAllAggregations(){V.debug("Clearing all aggregations"),this.setState({aggregationSettings:Dn})}clearCrossColumSearch(){V.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){var e=this.props.model,t=this.state,n=t.advancedFilters,r=t.quickFilters;if(n.size===0&&r.size===0){V.debug("No filters to rebuild");return}var a=e.columns,o=e.formatter;V.debug("Rebuilding filters");var s=new Map,l=new Map;n.forEach((u,h)=>{var c=u.options,g=a[h],m=this.tableUtils.makeAdvancedFilter(g,c,o.timeZone);s.set(h,{options:c,filter:m})}),r.forEach((u,h)=>{var c=u.text,g=a[h];l.set(h,{text:c,filter:this.makeQuickFilter(g,c,o.timeZone)})}),this.startLoading("Rebuilding filters...",{resetRanges:!0}),this.setState({quickFilters:l,advancedFilters:s})}setFilters(e){var t=e.quickFilters,n=e.advancedFilters;this.setState({quickFilters:t,advancedFilters:n})}updateFormatterSettings(e){var t,n,r,a,o,s,l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,u=yi.getColumnFormats(e),h=yi.getDateTimeFormatterOptions(e),c=(t=e==null?void 0:e.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},g=(n=e==null?void 0:e.defaultIntegerFormatOptions)!==null&&n!==void 0?n:{},m=(r=e==null?void 0:e.truncateNumbersWithPound)!==null&&r!==void 0?r:!1,p=(a=e==null?void 0:e.showEmptyStrings)!==null&&a!==void 0?a:!0,v=(o=e==null?void 0:e.showNullStrings)!==null&&o!==void 0?o:!0,f=(s=e==null?void 0:e.showExtraGroupColumn)!==null&&s!==void 0?s:!0,C=!et(this.globalColumnFormats,u),S=!et(this.dateTimeFormatterOptions,h),E=!et(this.decimalFormatOptions,e==null?void 0:e.defaultDecimalFormatOptions),w=!et(this.integerFormatOptions,g),R=this.truncateNumbersWithPound!==m,O=this.showEmptyStrings!==p,y=this.showNullStrings!==v,F=this.showExtraGroupColumn!==f;(C||S||E||w||R||O||y||F)&&(this.globalColumnFormats=u,this.dateTimeFormatterOptions=h,this.decimalFormatOptions=c,this.integerFormatOptions=g,this.truncateNumbersWithPound=m,this.showEmptyStrings=p,this.showNullStrings=v,this.showExtraGroupColumn=f,this.updateFormatter({},l),S&&l&&this.rebuildFilters())}updateFormatter(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this.state.customColumnFormatMap,a=this.props.model,o=de({customColumnFormatMap:r},e),s=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...o.customColumnFormatMap.values()],l=new hn(a.dh,s,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound,this.showEmptyStrings,this.showNullStrings);V.debug("updateFormatter",this.globalColumnFormats,s),this.setState(de(de({},o),{},{formatter:l}),()=>{n&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var e=this.props.settings;this.updateFormatterSettings(e)}initState(){var e=this.props.model;try{wt(e)&&e.isPartitionRequired?this.loadPartitionsTable(e):this.loadTableState()}catch(t){this.handleTableLoadError(t)}}loadTableState(){var e=this.props,t=e.applyInputFiltersOnInit,n=e.inputFilters,r=e.sorts,a=e.model,o=e.reverse,s=e.reverseType,l=e.customColumns,u=e.searchValue,h=e.selectedSearchColumns,c=e.invertSearchColumns,g=h??[],m=Ht.createSearchFilter(a.dh,u,g,a.columns,c);if(t){var p=n.filter(v=>v.value!=null);this.applyInputFilters(p)}this.setState({sorts:r,reverse:o||s===_.REVERSE_TYPE.POST_SORT,customColumns:l,isReady:!0,searchFilter:m}),this.initFormatter()}loadPartitionsTable(e){var t=this;return yt(function*(){try{var n=t.state.partitionConfig;n||(t.startLoading("Loading partitions...",{loadingCancelShown:!1,resetRanges:!0}),t.initializePartitionConfig(e)),t.setState({isSelectingPartition:!0},t.loadTableState)}catch(r){Pe.isCanceled(r)||t.handleTableLoadError(r)}})()}initializePartitionConfig(e){var t=this;return yt(function*(){var n=yield t.pending.add(e.partitionKeysTable(),o=>o.close()),r=e.dh,a=n.columns.map(o=>o.sort().desc());n.applySort(a),n.setViewport(0,0),n.addEventListener(r.Table.EVENT_UPDATED,o=>{try{var s=o.detail;if(s.rows.length===0){t.stopLoading();return}var l=s.rows[0],u=n.columns.map(c=>l.get(c)),h={partitions:u,mode:e.isPartitionAwareSourceTable?"partition":"keys"};n.close(),t.setState({loadingSpinnerShown:!1,partitionConfig:h})}catch(c){n.close(),V.error("Error getting initial partition config",c)}})})()}selectPartitionKeyFromTable(e){var t=this.props.model;if(q(e),wt(t)){var n=this.getRowDataMap(e),r=new Set(t.partitionColumns.map(s=>s.name)),a=Object.entries(n).filter(s=>{var l=st(s,2),u=l[0];return l[1],r.has(u)}).map(s=>{var l=st(s,2);l[0];var u=l[1];return u.value}),o={partitions:a,mode:"partition"};this.setState({isSelectingPartition:!0,partitionConfig:o})}}copyCell(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,r=this.props.canCopy;if(r){var a=String(this.getValueForCell(e,t,n));Sr(a).catch(o=>V.error("Unable to copy cell",o))}else V.error("Attempted to copyCell for user without copy permission.")}copyColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(e!==null){var n=this.props.canCopy,r=this.state.movedColumns;if(n){var a={columnIndex:e,columnDepth:t,movedColumns:r};this.setState({copyOperation:a})}else V.error("Attempted copyColumnHeader for user without copy permission.")}}copyRanges(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0,a=this.props,o=a.model,s=a.canCopy,l=this.state,u=l.metricCalculator,h=l.movedColumns,c=u.getUserColumnWidths();if(s){var g={ranges:J.boundedRanges(e,o.columnCount,o.rowCount),includeHeaders:t,formatValues:n,movedColumns:h,userColumnWidths:c,error:r};this.setState({copyOperation:g})}else V.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.resetRanges,r=n===void 0?!1:n,a=t.loadingCancelShown,o=a===void 0?!0:a,s=t.loadingBlocksGrid,l=s===void 0?!0:s;this.setState({loadingText:e,loadingCancelShown:o,loadingBlocksGrid:l});var u=this.getTheme();if(r&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var h,c,g=u.minScrimTransitionTime,m=u.maxScrimTransitionTime;q(g),q(m);var p=(h=(c=this.gridWrapper)===null||c===void 0?void 0:c.getBoundingClientRect().height)!==null&&h!==void 0?h:0,v=Math.max(g,Math.min(p/2,m));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+v,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},Be.loadingSpinnerDelay)}}stopLoading(){this.showViewportLoading.cancel(),this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0,this.setState({loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,loadingCancelShown:!1}),this.loadingTimer!=null&&(clearTimeout(this.loadingTimer),this.loadingTimer=void 0)}rollback(){if(this.lastLoadedConfig){V.debug("loading last loading config",this.lastLoadedConfig);var e=this.lastLoadedConfig,t=e.advancedFilters,n=e.aggregationSettings,r=e.conditionalFormats,a=e.conditionalFormatEditIndex,o=e.conditionalFormatPreview,s=e.customColumns,l=e.quickFilters,u=e.reverse,h=e.rollupConfig,c=e.searchFilter,g=e.selectDistinctColumns,m=e.sorts;this.lastLoadedConfig=null,this.setState({advancedFilters:t,aggregationSettings:n,conditionalFormats:r,conditionalFormatEditIndex:a,conditionalFormatPreview:o,customColumns:s,quickFilters:l,reverse:u,rollupConfig:h,searchFilter:c,selectDistinctColumns:g,sorts:m})}else V.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:Dn,conditionalFormats:[],conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,customColumns:[],quickFilters:new Map,reverse:!1,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!ue.isEmptyConfig(this.state)}startListening(e){e.addEventListener(fe.EVENT.UPDATED,this.handleUpdate),e.addEventListener(fe.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(fe.EVENT.PENDING,this.handlePending),e.addEventListener(fe.EVENT.PENDING_CLEARED,this.handlePendingCleared),e.addEventListener(fe.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(fe.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated),e.addEventListener(fe.EVENT.VIEWPORT_UPDATED,this.handleViewportUpdated),e.addEventListener(fe.EVENT.TABLE_CHANGED,this.handleTableChanged),e.addEventListener(fe.EVENT.SCHEMA_CHANGED,this.handleSchemaChanged)}stopListening(e){e.removeEventListener(fe.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(fe.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(fe.EVENT.PENDING,this.handlePending),e.removeEventListener(fe.EVENT.PENDING_CLEARED,this.handlePendingCleared),e.removeEventListener(fe.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(fe.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated),e.removeEventListener(fe.EVENT.VIEWPORT_UPDATED,this.handleViewportUpdated),e.removeEventListener(fe.EVENT.TABLE_CHANGED,this.handleTableChanged),e.removeEventListener(fe.EVENT.SCHEMA_CHANGED,this.handleSchemaChanged)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var t=this.state.movedColumns,n=this.props.model,r=n.columnCount,a=z.getModelIndex(e,t);if(e==null||r<=e||!n.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var o=this.state,s=o.metricCalculator,l=o.metrics;q(l);var u=this.getMetricState();q(u);var h=s.getScrollLeftForColumn(e,u,l);if(h!=null){var c;(c=this.grid)===null||c===void 0||c.setViewState({left:h,leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,n=this.state,r=n.metricCalculator,a=n.movedColumns;r.setColumnWidth(z.getModelIndex(e,a),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var t=this.state,n=t.frozenColumns,r=t.movedColumns,a=this.props.model;V.debug2("freezing column",e);var o=n==null?new Set(a.frozenColumns):new Set(n);o.add(e);var s=a.getColumnIndexByName(e);q(s);var l=z.getVisibleIndex(s,r),u=z.moveItem(l,o.size-1,r);this.setState({frozenColumns:[...o],movedColumns:u})}unFreezeColumnByColumnName(e){var t=this.state,n=t.frozenColumns,r=t.movedColumns,a=this.props.model;V.debug2("unfreezing column",e);var o=n==null?new Set(a.frozenColumns):new Set(n);o.delete(e);var s=a.getColumnIndexByName(e);q(s);var l=z.getVisibleIndex(s,r),u=z.moveItem(l,o.size+a.frontColumns.length,r);this.setState({frozenColumns:[...o],movedColumns:u})}handleFrozenColumnsChanged(e){this.setState({frozenColumns:e})}toggleExpandColumn(e,t){V.debug2("Toggle expand column",e);var n=this.props.model;gn(n)&&n.hasExpandableColumns&&n.setColumnExpanded(e,!n.isColumnExpanded(e),t)}expandAllColumns(){V.debug2("Expand all columns");var e=this.props.model;gn(e)&&e.isExpandAllColumnsAvailable&&e.expandAllColumns()}collapseAllColumns(){V.debug2("Collapse all columns");var e=this.props.model;gn(e)&&e.isExpandAllColumnsAvailable&&e.collapseAllColumns()}handleColumnVisibilityChanged(e,t){var n,r=this.state,a=r.metricCalculator,o=r.metrics;q(o),t?e.forEach(s=>{var l=a.initialColumnWidths.get(s),u=o.calculatedColumnWidths.get(s);l!==u&&u!=null?a.setColumnWidth(s,u):a.resetColumnWidth(s)}):e.forEach(s=>{a.setColumnWidth(s,0)}),(n=this.grid)===null||n===void 0||n.forceUpdate()}handleColumnVisibilityReset(){var e,t,n=this.state.metricCalculator,r=this.props.model;n.resetAllColumnWidths(),this.handleMovedColumnsChanged(r.initialMovedColumns),this.handleHeaderGroupsChanged(r.initialColumnHeaderGroups),this.setState({frozenColumns:(e=(t=r.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:ae})}handleCrossColumnSearch(e,t,n){var r=this.props.model;this.startLoading("Searching..."),this.updateSearchFilter(e,t,r.columns,n),this.setState({searchValue:e,selectedSearchColumns:t,invertSearchColumns:n})}handleAnimationLoop(){var e;(e=this.grid)===null||e===void 0||e.updateCanvas(),this.isAnimating&&(this.animationFrame=requestAnimationFrame(this.handleAnimationLoop))}handleAnimationStart(){V.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){V.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionChange(e){this.startLoading("Partitioning...");var t=this.state.partitionConfig;t!==e&&this.setState({partitionConfig:e})}handleTableLoadError(e){if(!Pe.isCanceled(e)){V.error(e);var t=this.props.onError;t(e)}}handleViewportUpdated(){var e=this.props.model,t=this.state,n=t.loadingText,r=t.loadingSpinnerShown,a="Waiting for viewport...";e.isViewportPending&&!r?this.showViewportLoading():n===a&&!e.isViewportPending&&this.stopLoading()}showAllColumns(){for(var e,t=this.state.metricCalculator,n=t.getUserColumnWidths(),r=[...n.entries()],a=0;a<r.length;a+=1){var o=st(r[a],2),s=o[0],l=o[1];l===0&&t.resetColumnWidth(s)}(e=this.grid)===null||e===void 0||e.forceUpdate()}updateMetrics(){var e;this.setState({metrics:(e=this.grid)===null||e===void 0?void 0:e.updateMetrics()})}toggleSort(e,t){V.info("Toggling sort for column",e);var n=this.props.model,r=this.getModelColumn(e);if(q(r),n.isColumnSortable(e)){var a=this.state.sorts,o=_.toggleSortForColumn(a,n.columns,r,t);this.updateSorts(o)}else V.debug("Column type was not sortable",n.columns[e])}updateSorts(e){var t;this.startLoading("Sorting..."),this.setState({sorts:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}updateQuickFilters(e){var t,n=this.state.quickFilters;if(e==null){if(n.size===0)return}else if(e===n)return;this.startLoading("Filtering...",{resetRanges:!0}),this.setState({quickFilters:e??Me}),(t=this.grid)===null||t===void 0||t.forceUpdate()}sortColumn(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:_.sortDirection.none,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;q(e);var o=this.props.model,s=_.sortColumn(o.sort,o.columns,e,n,r,a);this.startLoading("Sorting..."),this.setState({sorts:s}),(t=this.grid)===null||t===void 0||t.forceUpdate()}reverse(e){var t;this.startLoading("Reversing..."),this.setState({reverse:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}isReversible(){var e=this.props.model;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,t=this.state.isFilterBarShown;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var n=0,r=this.props.model,a=r.columnCount,o=0;o<a;o+=1){var s=this.getModelColumn(o);if(s!=null){var l=r.columns[s];if(l!=null&&_.isTextType(l.type)){n=o;break}}}this.focusFilterBar(n)}else{var u;(u=this.grid)===null||u===void 0||u.focus()}}isTableSearchAvailable(){var e,t,n,r=this.props,a=r.model,o=r.canToggleSearch,s=a.dh,l=a==null||(e=a.layoutHints)===null||e===void 0?void 0:e.searchDisplayMode;return l===((t=s.SearchDisplayMode)===null||t===void 0?void 0:t.SEARCH_DISPLAY_HIDE)?!1:l===((n=s.SearchDisplayMode)===null||n===void 0?void 0:n.SEARCH_DISPLAY_SHOW)?!0:o}toggleSearchBar(){var e=this.state.showSearchBar;if(this.isTableSearchAvailable()){var t=!e;this.setState({showSearchBar:t},()=>{var n;if(t&&(n=this.crossColumnRef)!==null&&n!==void 0&&n.current){var r;(r=this.crossColumnRef)===null||r===void 0||r.current.focus()}else{var a;(a=this.grid)===null||a===void 0||a.focus()}})}}toggleGotoRow(){var e,t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",o=this.state.isGotoShown;if(n||r){var s;this.setState({isGotoShown:!0,gotoValue:r,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1}),this.focusRowInGrid(n),(s=this.gotoRowRef.current)===null||s===void 0||s.focus();return}var l=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,u=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(l==null||u==null){this.setState({isGotoShown:!o,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1});return}var h=this.props.model,c=h.columns[u].name,g=String(this.getValueForCell(u,l,!0));this.setState({isGotoShown:!o,gotoRow:"".concat(l+1),gotoValue:g,gotoValueSelectedColumnName:c,gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1})}commitPending(){var e=this;return yt(function*(){var t,n=e.props.model;if(!we(n)||!n.isEditable)throw new Error("Cannot save, table is not editable");var r=e.state.pendingSavePromise;if(r!=null)throw new Error("Save already in progress");var a=(t=document)===null||t===void 0||(t=t.activeElement)===null||t===void 0?void 0:t.classList.contains("grid-cell-input-field");if(a!=null&&a){var o;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new Fo("Current input is invalid");(o=e.grid)===null||o===void 0||o.focus()}var s=e.pending.add(n.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(l=>{Pe.isCanceled(l)||e.setState({pendingSaveError:l,pendingSavePromise:null})});return e.setState({pendingSavePromise:s}),s})()}discardPending(){var e=this;return yt(function*(){var t=e.state.pendingSavePromise;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var t=this.props.onColumnSelected;t(e)}selectData(e,t){var n=this.getRowDataMap(t),r=this.props.onDataSelected;r(t,n)}getRowDataMap(e){for(var t=this,n=this.props.model,r=n.columns,a=n.groupedColumns,o={},s=function(){var h=r[l],c=h.name,g=h.type,m=n.valueForCell(l,e),p=n.textForCell(l,e),v=t.getVisibleColumn(l),f=ut(n)&&n.isRowExpandable(e),C=a.find(S=>S.name===c)!=null;o[c]={value:m,text:p,type:g,isGrouped:C,isExpandable:f,visibleIndex:v}},l=0;l<r.length;l+=1)s();return o}handleAdvancedFilterChange(e,t,n){var r=this.props.model,a=r.getColumnIndexByName(e.name);q(a),this.setAdvancedFilter(a,t,n)}handleAdvancedFilterSortChange(e,t){var n,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=this.props.model,o=a.getColumnIndexByName(e.name);q(o);var s=a.columns[o].name,l=_.getSortForColumn(a.sort,s),u=null;(l==null||l.direction!==t)&&(t===_.sortDirection.descending?u=e.sort().desc():u=e.sort().asc());var h=_.setSortForColumn(a.sort,s,u,r);V.info("Setting table sorts",h),this.startLoading("Sorting..."),this.setState({sorts:h}),(n=this.grid)===null||n===void 0||n.forceUpdate()}handleAdvancedFilterDone(){var e;(e=this.grid)===null||e===void 0||e.focus()}handleAdvancedFilterToggleMaximize(e){this.setState(t=>{var n=t.maximizedAdvancedFilter;return{maximizedAdvancedFilter:n===e?null:e}})}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e,maximizedAdvancedFilter:null})}handleGotoRowOpened(){this.setState({isGotoShown:!0,gotoValueManuallyChanged:!1})}handleGotoRowClosed(){this.setState({isGotoShown:!1,gotoValueManuallyChanged:!1})}handleAdvancedMenuClosed(e){var t,n=this.state,r=n.focusedFilterBarColumn,a=n.isFilterBarShown;if(a&&r===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var o;(o=this.filterInputRef)===null||o===void 0||o.current.focus(),this.setState({shownAdvancedFilter:null,maximizedAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null,maximizedAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var t=this.props,n=t.model,r=t.onCreateChart;r(e,n)}handleGridError(e){V.warn("Grid Error",e),this.setState({toastMessage:d.jsx("div",{className:"error-message",children:"".concat(e)})})}handleFilterBarChange(e){this.startLoading("Filtering...",{resetRanges:!0}),this.setState(t=>{var n=t.focusedFilterBarColumn,r=t.quickFilters,a=new Map(r);if(n!=null){var o=this.getModelColumn(n);q(o),this.applyQuickFilter(o,e,a)}return{quickFilters:a}})}handleFilterBarDone(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e){var n;(n=this.grid)===null||n===void 0||n.focus()}t&&this.setState({focusedFilterBarColumn:null})}handleFilterBarTab(e){var t=this.state.focusedFilterBarColumn;q(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var n=this.props.model,r=n.columns[e],a=this.state.customColumnFormatMap,o=new Map(a);if(t!=null){var s=_.getNormalizedType(r.type);q(s);var l=hn.makeColumnFormattingRule(s,r.name,t);o.set(r.name,l)}else o.delete(r.name);this.updateFormatter({customColumnFormatMap:o})}handleColumnAlignmentChange(e,t){var n=this.props.model,r=n.columns[e];this.setState(a=>{var o=a.columnAlignmentMap,s=o===void 0?Me:o,l=new Map(s);return t!=null?l.set(r.name,t):l.delete(r.name),{columnAlignmentMap:l}})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var t=e.openOptions,n=[...t];return n.pop(),{openOptions:n}})}handleMenuSelect(e){this.setState(t=>{var n=t.openOptions;return{openOptions:[...n,e]}})}handleRequestFailed(e){var t=e,n=t.detail;V.error("request failed:",n),this.stopLoading();var r=this.state,a=r.partitionConfig,o=r.conditionalFormatEditIndex;if(fo(n)&&a!=null)this.startLoading("Reloading partition...",{resetRanges:!0}),this.setState({partitionConfig:void 0},()=>{this.initState()});else if(o!==null){var s,l=(s=n==null?void 0:n.errorMessage)!==null&&s!==void 0?s:String(n);this.setState({conditionalFormatError:l,conditionalFormatPreview:void 0})}else if(this.canRollback())this.startLoading("Rolling back changes...",{resetRanges:!0}),this.rollback();else{V.error("Table failed and unable to rollback");var u=this.props.onError;u(new Error("Error displaying table: ".concat(n)))}}handlePending(e){var t=e,n=t.detail,r=n??{},a=r.text,o=r.options;this.loadingScrimStartTime==null&&this.startLoading(a??"Loading...",de({loadingCancelShown:!1},o))}handlePendingCleared(){this.stopLoading()}handleUpdate(){var e;V.debug2("Received model update");var t=this.state,n=t.advancedFilters,r=t.aggregationSettings,a=t.conditionalFormats,o=t.conditionalFormatEditIndex,s=t.conditionalFormatPreview,l=t.customColumns,u=t.quickFilters,h=t.reverse,c=t.rollupConfig,g=t.searchFilter,m=t.selectDistinctColumns,p=t.sorts,v={advancedFilters:n,aggregationSettings:r,conditionalFormats:a,conditionalFormatEditIndex:o,conditionalFormatPreview:s,customColumns:l,quickFilters:u,reverse:h,rollupConfig:c,searchFilter:g,selectDistinctColumns:m,sorts:p};ue.isEmptyConfig(v)?this.lastLoadedConfig=null:this.lastLoadedConfig=v,(e=this.grid)===null||e===void 0||e.forceUpdate(),this.stopLoading()}handleTableChanged(){var e=this.props.model,t=this.state.partitionConfig;wt(e)&&(t==null?void 0:t.mode)!=="keys"&&this.rebuildFilters()}handleSchemaChanged(){var e=this.props.model;this.setState({movedColumns:e.initialMovedColumns})}handleViewChanged(e){var t,n,r=this.props.model,a=(t=(n=this.grid)===null||n===void 0?void 0:n.state)!==null&&t!==void 0?t:{},o=a.selectionEndRow,s=o===void 0?0:o,l=0;if(we(r)&&r.isEditable){q(e);var u=e.bottomViewport,h=r.rowCount-r.floatingBottomRowCount;s===h-1?l=r.pendingRowCount+1:s===h-2?l=r.pendingRowCount:l=Math.max(0,u-(r.rowCount-r.pendingRowCount)-r.floatingTopRowCount-r.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:l})}handleSelectionChanged(e){q(e);var t=this.props.onSelectionChanged,n=this.state.copyOperation;this.setState({selectedRanges:e}),n!=null&&this.setState({copyOperation:null}),J.rowCount(J.consolidate(e))===1&&e[0].startRow!=null&&this.setState({gotoRow:"".concat(e[0].startRow+1)}),t(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var t=this.props.model,n=this.state.columnHeaderGroups;n!==e&&this.setState({columnHeaderGroups:e.every(r=>po(r)&&r.isValid())?e:ue.parseColumnHeaderGroups(t,e).groups},()=>{var r;return(r=this.grid)===null||r===void 0?void 0:r.forceUpdate()})}handleTooltipRef(e){e!=null&&e.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){V.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){V.debug("Create new conditional format");var e=this.state,t=e.openOptions,n=e.conditionalFormats;this.setState({openOptions:[...t,{type:ie.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:n.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){V.debug("Edit conditional format",e);var t=this.state,n=t.openOptions,r=t.conditionalFormats;this.setState({openOptions:[...n,{type:ie.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:de({},r[e])})}handleConditionalFormatEditorSave(e){V.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return V.debug("Invalid format index"),null;var n=[...t.conditionalFormats];return n[t.conditionalFormatEditIndex]=e,{conditionalFormats:n}},()=>{this.handleMenuBack()})}handleConditionalFormatEditorCancel(){this.handleMenuBack(),this.setState({conditionalFormatEditIndex:null,conditionalFormatError:null})}handleUpdateCustomColumns(e){V.info("handleUpdateCustomColumns:",e);var t=this.props.model,n=this.state,r=n.movedColumns,a=n.sorts,o=n.quickFilters,s=n.advancedFilters,l=n.selectDistinctColumns,u=t.columns,h=t.customColumns.map(C=>"".concat(C)),c=ue.getRemovedCustomColumnNames(h,e);if(c.length>0){var g=ue.removeSortsInColumns(a,c),m=ue.removeFiltersInColumns(u,o,c),p=ue.removeFiltersInColumns(u,s,c),v=ue.removeColumnFromMovedColumns(u,r,c),f=ue.removeColumnsFromSelectDistinctColumns(l,c);g.length!==a.length&&(V.debug("removing sorts from removed custom columns..."),this.setState({sorts:g})),(m.size!==o.size||p.size!==s.size)&&(V.debug("removing filters from removed custom columns..."),this.setState({quickFilters:m,advancedFilters:p})),et(r,v)||(V.debug("change moved columns for removed custom columns",v),this.setState({movedColumns:v})),et(l,f)||(V.debug("change selectDistinct columns for removed custom columns",v),this.setState({selectDistinctColumns:f}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){V.debug("Model columns changed");var e=this.state.isReady;e?(this.updateMetrics(),this.stopLoading()):this.loadTableState()}maybeRebuildMetricCalculator(){var e,t=this.props.getMetricCalculator;if(t!==this.lastMetricCalculatorFactory){var n=this.props.model,r=this.state.movedColumns,a=t({userColumnWidths:new Map,userRowHeights:new Map,movedColumns:r,initialColumnWidths:new Map(n==null||(e=n.layoutHints)===null||e===void 0||(e=e.hiddenColumns)===null||e===void 0?void 0:e.map(o=>[n.getColumnIndexByName(o),0]))});this.lastMetricCalculatorFactory=t,V.debug("Swapping metric calculator",a),this.grid!=null&&(this.grid.metricCalculator=a),this.setState({metricCalculator:a})}}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;V.debug("pending data updated");var t=this.props.model,n=t.pendingDataMap,r=t.pendingDataErrors;this.setState({pendingDataMap:n,pendingDataErrors:r,pendingSaveError:null}),(e=this.grid)===null||e===void 0||e.forceUpdate()}handleResizeColumn(e){var t,n=this.state,r=n.metrics,a=n.metricCalculator;if(!r)throw new Error("Metrics not set");var o=_e(r.contentColumnWidths,e),s=a.getUserColumnWidths();s.has(e)?(a.resetColumnWidth(e),a.setCalculatedColumnWidth(e,o)):a.setColumnWidth(e,o),(t=this.grid)===null||t===void 0||t.forceUpdate()}handleResizeAllColumns(){var e,t=this.state,n=t.metrics,r=t.metricCalculator;if(!n)throw new Error("Metrics not set");var a=[...n.allColumnWidths.entries()],o=a.filter(f=>{var C=st(f,2);C[0];var S=C[1];return S!==0}).map(f=>{var C=st(f,1),S=C[0];return S}),s=n.contentColumnWidths,l=r.getUserColumnWidths(),u=o.filter(f=>l.has(f));if(o.length===u.length)for(var h=0;h<o.length;h+=1){var c=o[h],g=_e(s,c);r.resetColumnWidth(c),r.setCalculatedColumnWidth(c,g)}else for(var m=0;m<o.length;m+=1){var p=o[m],v=_e(s,p);r.setColumnWidth(p,v)}(e=this.grid)===null||e===void 0||e.forceUpdate()}handleAggregationsChange(e){var t,n,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];V.debug("handleAggregationsChange",e,r,a);var o=this.state.rollupConfig,s=((t=o==null||(n=o.columns)===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0)>0,l=[...r,...a],u=!(s&&l.length>0&&l.every(h=>dn.isRollupProhibited(h)));u&&this.startLoading("Aggregating ".concat(e.aggregations.map(h=>h.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){var t,n;V.debug("handleAggregationChange",e);var r=this.state.rollupConfig,a=((t=r==null||(n=r.columns)===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0)>0,o=!(a&&dn.isRollupProhibited(e.operation));o&&this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(s=>{var l=s.aggregationSettings;return{selectedAggregation:e,aggregationSettings:de(de({},l),{},{aggregations:l.aggregations.map(u=>u.operation===e.operation?e:u)})}})}handleAggregationEdit(e){V.debug("handleAggregationEdit",e);var t=this.state.openOptions;this.setState({openOptions:[...t,{type:ie.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,n;if(V.info("Rollup change",e),(e==null?void 0:e.columns)!=null&&e.columns.length>0){var r=this.state.metricCalculator,a=r.getUserColumnWidthsByName();e.columns.forEach(o=>{a.get(o)===0&&r.resetColumnWidthByName(o)})}this.resetGridViewState(),this.clearAllFilters(),this.startLoading("Grouping by columns ".concat((t=e==null||(n=e.columns)===null||n===void 0?void 0:n.join(", "))!==null&&t!==void 0?t:"","...")),this.setState({rollupConfig:e,movedColumns:ae,frozenColumns:ae,sorts:ae,reverse:!1,selectDistinctColumns:ae})}handleSelectDistinctChanged(e){V.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.clearAllAggregations(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverse:!1})}handleDownloadTableStart(){var e=this.props.canDownloadCsv;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:Ze.DOWNLOAD_STATUS.INITIATING}):V.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,n,r,a,o,s){var l=this.props.canDownloadCsv;l?(V.info("start table downloading",e,t,n,r,a,o,s),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,n,r,a,o,s),{tableDownloadStatus:Ze.DOWNLOAD_STATUS.DOWNLOADING}))):V.error("Attempted to handleDownloadTable for user without download CSV permission.")}removeEmptyAggregations(){V.debug("removeEmptyAggregations"),this.setState(e=>{var t=e.aggregationSettings,n=t.aggregations,r=n.filter(a=>a.selected.length>0||a.invert);return r.length!==n.length?{selectedAggregation:null,aggregationSettings:de(de({},t),{},{aggregations:r})}:{selectedAggregation:null,aggregationSettings:t}})}seekRow(e){var t=arguments,n=this;return yt(function*(){var r,a=t.length>1&&t[1]!==void 0?t[1]:!1,o=n.state,s=o.gotoValueSelectedColumnName,l=o.gotoValueSelectedFilter,u=n.props.model,h=u.dh;if(u.isSeekRowAvailable&&e!==""){var c=ue.getColumnByName(u.columns,s);if(c!==void 0){var g=(r=n.grid)===null||r===void 0?void 0:r.state.cursorRow;g==null&&(g=0);var m=l===Oe.contains||l===Oe.containsIgnoreCase,p=l===Oe.eqIgnoreCase||l===Oe.containsIgnoreCase;try{var v,f=u.formatter,C=_.getNormalizedType(c.type),S;switch(C){case _.dataType.CHAR:case _.dataType.STRING:{S=yield u.seekRow(g,c,h.ValueType.STRING,e,p,m,a??!1);break}case _.dataType.DATETIME:{var E=pr.parseDateRange(h,e,f.timeZone),w=st(E,1),R=w[0];S=yield u.seekRow(g,c,h.ValueType.DATETIME,R,void 0,void 0,a??!1);break}case _.dataType.DECIMAL:case _.dataType.INT:{if(!_.isBigDecimalType(c.type)&&!_.isBigIntegerType(c.type)){var O=parseInt(e,10);e==="-Infinity"?O=Number.NEGATIVE_INFINITY:e==="Infinity"&&(O=Number.POSITIVE_INFINITY),S=yield u.seekRow(g,c,h.ValueType.NUMBER,O,void 0,void 0,a??!1)}else S=yield u.seekRow(g,c,h.ValueType.STRING,e,void 0,void 0,a??!1);break}default:S=yield u.seekRow(g,c,h.ValueType.STRING,n.tableUtils.makeValue(c.type,e,f.timeZone),void 0,void 0,a??!1)}(v=n.grid)===null||v===void 0||v.setFocusRow(S),n.setState({gotoValueError:""})}catch{n.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:Ze.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:Ze.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var t=this.props.model;if(!ns(t)||!t.isDeletable)throw new Error("Model does not support deleting ranges");this.pending.add(t.delete(e)).catch(n=>{Pe.isCanceled(n)||V.error("Unable to delete ranges",e,n)})}resetColumnSelection(){if(this.grid!=null){var e=this.props.isSelectingColumn;if(e){var t=this.props.columnAllowedCursor;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var e=this.state,t=this.grid.state,n=this.props.onStateChange;n(e,t)}}handleOverflowClose(){var e;this.setState({showOverflowModal:!1}),(e=this.grid)===null||e===void 0||e.focus()}handleOpenNoPastePermissionModal(e){this.setState({showNoPastePermissionModal:!0,noPastePermissionError:e})}handleCloseNoPastePermissionModal(){this.setState({showNoPastePermissionModal:!1})}getColumnBoundingRect(){var e,t=this.state,n=t.metrics,r=t.shownColumnTooltip;q(n),q(r);var a=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),o=20;q(a);var s=n.columnHeaderHeight,l=n.allColumnXs,u=n.allColumnWidths,h=n.width,c=n.columnHeaderMaxDepth,g=l.get(r),m=u.get(r);q(g),q(m);var p=a.left+Le(g+m/2,o,h-o);return{top:a.top+(c-1)*s,left:a.left+Le(g+m/2,o,h-o),bottom:a.top+c*s,right:a.left+Le(g+m/2,o,h-o)+1,width:1,height:s,x:p,y:a.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var e=this.state.gotoRow;this.focusRowInGrid(e)}focusRowInGrid(e){var t=this.props.model,n=t.rowCount;if(this.setState({gotoRow:e}),e===""){this.setState({gotoRowError:"",gotoValueError:""});return}var r=parseInt(e,10);if(r>n||r<-n)this.setState({gotoRowError:"Invalid row index"});else if(r===0){var a;this.setState({gotoRowError:"",gotoValueError:""}),(a=this.grid)===null||a===void 0||a.setFocusRow(0)}else if(r<0){var o;this.setState({gotoRowError:"",gotoValueError:""}),(o=this.grid)===null||o===void 0||o.setFocusRow(r+n)}else{var s;(s=this.grid)===null||s===void 0||s.setFocusRow(r-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,n){var r=t.columnHeaderHeight,a=t.columnHeaderMaxDepth,o=t.allColumnXs,s=t.allColumnWidths,l=t.width,u=o.get(e),h=s.get(e);if(u==null||h==null)return null;var c=Math.max(0,u),g=h;u+h>l?g=l-u:u<0&&(g=h-Math.abs(u));var m={position:"absolute",top:(a-1)*r,left:c,width:g,height:r,pointerEvents:"none"},p={clientWidth:1,clientHeight:r,getBoundingClientRect:this.getColumnBoundingRect},v={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},f=this.getModelColumn(e);if(f==null)return null;var C=n.columns[f];return C==null?null:d.jsx("div",{style:m,children:d.jsx(ze,{timeout:400,interactive:!0,options:v,ref:this.handleTooltipRef,referenceObject:p,onExited:()=>{this.setState({shownColumnTooltip:null})},children:d.jsx(Dt,{model:n,column:C,onStatistics:()=>{var S;(S=this.tooltip)===null||S===void 0||S.update()}})},C.name)})}handleGotoValueSelectedColumnNameChanged(e){var t,n=this.props.model,r=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow,a=this.state,o=a.gotoValueSelectedColumnName,s=a.gotoValueManuallyChanged;if(r!=null){var l=n.getColumnIndexByName(e),u=ue.getColumnByName(n.columns,e),h=ue.getColumnByName(n.columns,o);if(l==null||u==null)return;var c=n.valueForCell(l,r),g=ue.convertValueToText(c,u.type);s&&u.type===(h==null?void 0:h.type)?this.setState({gotoValueSelectedColumnName:e,gotoValueError:""}):this.setState({gotoValueSelectedColumnName:e,gotoValue:g,gotoValueError:"",gotoValueManuallyChanged:!1})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var t=this.state.gotoValue;this.seekRow(t,e)}getFilterBarInput(e,t,n,r,a){var o;if(e==null||n==null)return null;var s=this.getMetricState();if(s==null)return null;var l=t.getFilterInputCoordinates(n,s,e);if(l==null)return null;var u=Math.min(Math.max(Be.minDebounce,Math.round(e.rowCount/200)),Be.maxDebounce),h=l.x,c=l.y,g=l.width,m=l.height,p=e.width,v={top:c,left:h,minWidth:Math.min(g,p-h),height:m},f="",C=!0,S=this.getModelColumn(n);q(S);var E=r.get(S),w=a.get(S);E!=null&&(f=E.text,C=E.filter!=null);var R=r.size!==0||a.size!==0,O=t.getAdvancedFilterButtonCoordinates(n,s,e)!=null;return d.jsx(Er,{ref:this.filterInputRef,style:v,className:ee({error:!C,active:f!==""||w!=null,"iris-grid-has-filter":R}),showAdvancedFilterButton:O,isAdvancedFilterSet:w!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:n})},onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(o=this.grid)===null||o===void 0?void 0:o.handleContextMenu,debounceMs:u,value:f},n)}render(){var e,t,n=this,r,a,o=this.props,s=o.children,l=o.customFilters,u=o.getDownloadWorker,h=o.isSelectingColumn,c=o.isStuckToBottom,g=o.isStuckToRight,m=o.model,p=o.name,v=o.onlyFetchVisibleColumns,f=o.alwaysFetchColumns,C=o.advancedSettings,S=o.onAdvancedSettingsChange,E=o.canDownloadCsv,w=o.onCreateChart,R=o.transformTableOptions,O=this.context.cellInputRendererRegistry,y=this.state,F=y.metricCalculator,D=y.metrics,N=y.isFilterBarShown,L=y.isSelectingPartition,A=y.isMenuShown,j=y.isReady,I=y.copyOperation,G=y.focusedFilterBarColumn,U=y.loadingText,W=y.loadingScrimProgress,B=y.loadingSpinnerShown,H=y.loadingCancelShown,Z=y.loadingBlocksGrid,X=y.shownColumnTooltip,re=y.hoverAdvancedFilter,ge=y.shownAdvancedFilter,b=y.maximizedAdvancedFilter,x=y.hoverSelectColumn,P=y.quickFilters,Y=y.advancedFilters,$=y.searchFilter,k=y.selectDistinctColumns,K=y.movedColumns,ce=y.movedRows,ne=y.formatter,ve=y.conditionalFormats,Ne=y.conditionalFormatPreview,Ye=y.conditionalFormatEditIndex,ht=y.conditionalFormatError,Zt=y.columnAlignmentMap,_t=y.sorts,Mt=y.reverse,Pt=y.customColumns,Ce=y.selectedRanges,Mr=y.isTableDownloading,Un=y.tableDownloadStatus,Pr=y.tableDownloadProgress,Jt=y.tableDownloadEstimatedTime,Bn=y.showSearchBar,Ir=y.searchValue,jr=y.selectedSearchColumns,kr=y.invertSearchColumns,en=y.aggregationSettings,Hn=y.selectedAggregation,qe=y.rollupConfig,ct=y.openOptions,Lr=y.pendingSavePromise,Vr=y.pendingSaveError,Ur=y.pendingRowCount,Br=y.pendingDataErrors,$n=y.pendingDataMap,Hr=y.toastMessage,$r=y.frozenColumns,Gn=y.columnHeaderGroups,Gr=y.showOverflowModal,Wr=y.showNoPastePermissionModal,zr=y.noPastePermissionError,Kr=y.overflowText,Wn=y.overflowButtonTooltipProps,zn=y.expandCellTooltipProps,Kn=y.hoverTooltipProps,Yn=y.isGotoShown,Yr=y.gotoRow,qr=y.gotoRowError,Qr=y.gotoValueError,Xr=y.gotoValueSelectedColumnName,Zr=y.gotoValue,Jr=y.gotoValueSelectedFilter,qn=y.partitionConfig;if(!j)return null;var It=this.getTheme(),Qn=It.columnHeaderHeight,ea=this.getCachedFilter(l,P,Y,$),Xn=F.getUserColumnWidths(),ta=this.getCachedStateOverride(m,It,x,N,h,W,P,Y,_t,Mt,qe,A),na=D?D.top:0,ia=D?D.bottomViewport:0,Zn=null,Jn=null;v&&(Zn=D?D.left:0,Jn=D?D.right:0);var ra=D!=null&&D.width>0&&D.height>0,ei=((e=qe==null||(t=qe.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,aa=N?this.getFilterBarInput(D,F,G,P,Y):null,ti=null;if(U!=null){var oa=d.jsxs("div",{className:"iris-grid-loading-status",children:[d.jsx("div",{className:ee("iris-grid-loading-status-bar",{show:B}),children:U}),d.jsxs("button",{type:"button",onClick:this.handleCancel,className:ee("iris-grid-btn-cancel",{show:H}),children:[d.jsx(oe,{icon:gr,transform:"down-1"}),"Cancel"]})]}),sa=D?D.gridY:0;ti=d.jsx("div",{className:"iris-grid-loading",style:Z?{top:sa}:{},children:oa})}var ni=null;if(X!=null&&D){var tn;ni=this.getColumnTooltip(X,D,m),(tn=this.tooltip)===null||tn===void 0||tn.update()}var ii=[];if(D&&N)for(var ri=this.getMetricState(),ai=D.visibleColumns,la=function(){var le=ai[nn],Qe=n.getModelColumn(le);if(Qe!=null){var it=m.isFilterable(Qe),mt=it&&ri?F.getAdvancedFilterButtonCoordinates(le,ri,D):null;if(mt!=null){var on=mt.x,sn=mt.y,rt={position:"absolute",top:sn,left:on},gt=Y.get(Qe),jt=gt!=null,kt=le===re||le===G||jt,ln=d.jsx("div",{className:ee("advanced-filter-button-container",{hidden:!kt}),style:rt,children:kt&&d.jsx(te,{kind:"ghost",className:ee("btn-link-icon advanced-filter-button",{"filter-set":jt}),onClick:()=>{n.setState({shownAdvancedFilter:le,maximizedAdvancedFilter:null})},onContextMenu:Lt=>{var Xe;(Xe=n.grid)===null||Xe===void 0||Xe.handleContextMenu(Lt)},onMouseEnter:()=>{n.setState({hoverAdvancedFilter:le})},onMouseLeave:()=>{n.setState({hoverAdvancedFilter:null})},children:d.jsxs("div",{className:"fa-layers",children:[d.jsx(oe,{icon:dr,className:"filter-solid"}),d.jsx(oe,{icon:Fn,className:"filter-light"})]})})},le);ii.push(ln)}}},nn=0;nn<ai.length;nn+=1)la();var oi=[];if(D)for(var si=D.gridX,li=D.visibleColumns,ua=D.allColumnXs,da=D.allColumnWidths,ui=D.columnHeaderHeight,ha=function(){var le=li[rn],Qe=ua.get(le),it=da.get(le);if(Qe!=null&&it!=null&&it>0){var mt=si+Qe,on=si+Qe+it-20,sn=N?{position:"absolute",top:ui,left:on,width:20,height:It.filterBarHeight}:{position:"absolute",top:0,left:mt,width:it,height:ui},rt=n.getModelColumn(le);if(rt!=null){var gt=m.columns[rt];if(gt==null)return V.warn("Column does not exist at index ".concat(rt," for column array of length ").concat(m.columns.length)),1;var jt=Y.get(rt),kt=jt||{},ln=kt.options,Lt=_.getSortForColumn(m.sort,gt.name),Xe=Lt?Lt.direction:null;if(!Co(Xe))throw new Error("Invalid sort direction: ".concat(Xe));var ga=d.jsx("div",{className:"advanced-filter-menu-container",style:sn,children:d.jsx(yr,{className:"advanced-filter-menu-popper",isMaximized:ge===le&&b===le,onEntered:n.getAdvancedMenuOpenedHandler(le),onExited:()=>{n.handleAdvancedMenuClosed(le)},isShown:ge===le,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0},children:n.getCachedAdvancedFilterMenuActions(m,gt,ln,Xe,ne,ge===le&&b===le,n.getAdvancedMenuToggleMaximizeHandler(le))})},le);oi.push(ga)}}},rn=0;rn<li.length;rn+=1)ha();var ca=this.getCachedOptionItems(w!==void 0&&m.isChartBuilderAvailable,m.isCustomColumnsAvailable,m.isFormatColumnsAvailable,m.isOrganizeColumnsAvailable,m.isRollupAvailable,m.isTotalsAvailable||ei,m.isSelectDistinctAvailable,m.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,N,Bn,E,this.isTableSearchAvailable(),Yn,C.size>0),di=this.getCachedTransformedOptionItems(ca,R),an=this.getCachedHiddenColumns(F,Xn),ma=ct.map(Se=>{switch(Se.type){case ie.CHART_BUILDER:return d.jsx(ls,{model:m,onChange:this.handleChartChange,onSubmit:this.handleChartCreate},ie.CHART_BUILDER);case ie.VISIBILITY_ORDERING_BUILDER:return d.jsx(ss,{model:m,movedColumns:K,hiddenColumns:an,columnHeaderGroups:Gn,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged,onFrozenColumnsChanged:this.handleFrozenColumnsChanged},ie.VISIBILITY_ORDERING_BUILDER);case ie.CONDITIONAL_FORMATTING:return d.jsx(gu,{rules:ve,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case ie.CONDITIONAL_FORMATTING_EDIT:return q(m.columns),q(this.handleConditionalFormatEditorUpdate),d.jsx(md,{dh:m.dh,columns:m.columns,rule:Ne,errorMessage:ht??void 0,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case ie.CUSTOM_COLUMN_BUILDER:return d.jsx(os,{model:m,customColumns:Pt,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack},ie.CUSTOM_COLUMN_BUILDER);case ie.ROLLUP_ROWS:return d.jsx(as,{model:m,onChange:this.handleRollupChange,config:qe},ie.ROLLUP_ROWS);case ie.AGGREGATIONS:return d.jsx(rs,{settings:en,isRollup:ei,availablePlacements:we(m)&&m.isEditable?["top"]:["top","bottom"],onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit,dh:m.dh});case ie.AGGREGATION_EDIT:return Hn&&d.jsx(is,{aggregation:Hn,columns:m.originalColumns,onChange:this.handleAggregationChange});case ie.TABLE_EXPORTER:return d.jsx(Ze,{model:m,name:p,userColumnWidths:Xn,movedColumns:K,isDownloading:Mr,tableDownloadStatus:Un,tableDownloadProgress:Pr,tableDownloadEstimatedTime:Jt??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:Ce},ie.TABLE_EXPORTER);case ie.SELECT_DISTINCT:return d.jsx(xr,{model:m,selectDistinctColumns:k,onChange:this.handleSelectDistinctChanged});case ie.ADVANCED_SETTINGS:return d.jsx(Vn,{items:C,onChange:S});default:{var le=Se.configPage;if(le==null)throw Error("Unexpected option type ".concat(Se.type));return d.jsx(iu,{itemType:String(Se.type),children:d.jsx(le,{model:m,viewState:this.getCachedViewState(this.getCachedHiddenColumnNames(an,m.columns)),onBack:this.handleMenuBack})},String(Se.type))}}});return d.jsxs("div",{className:"iris-grid",role:"presentation",children:[d.jsxs("div",{className:"iris-grid-column",children:[s!=null&&d.jsx("div",{className:"iris-grid-bar",children:s}),d.jsx(En,{in:L,timeout:Rn.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,nodeRef:this.slideTransitionRef,children:d.jsx("div",{ref:this.slideTransitionRef,className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",children:wt(m)&&m.isPartitionRequired&&d.jsx(Xl,{model:m,partitionConfig:qn,onChange:this.handlePartitionChange})})}),d.jsx(En,{in:Bn,timeout:Rn.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,nodeRef:this.bottomTransitionRef,children:d.jsx("div",{ref:this.bottomTransitionRef,className:"iris-grid-bar",children:d.jsx(Ht,{value:Ir,selectedColumns:jr,invertSelection:kr,onChange:this.handleCrossColumnSearch,columns:m.columns,ref:this.crossColumnRef})})}),d.jsxs(Ae,{ref:Se=>{this.grid=Se},isStickyBottom:!we(m)||!m.isEditable,isStuckToBottom:c,isStuckToRight:g,metricCalculator:F,model:m,keyHandlers:this.getKeyHandlers(),mouseHandlers:this.getMouseHandlers(),movedColumns:K,movedRows:ce,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,cellInputRendererRegistry:O??us,stateOverride:ta,theme:It,children:[d.jsx(Cd,{isOpen:Gr,text:Kr,onClose:this.handleOverflowClose}),ra&&d.jsx(Rr,{model:m,top:na,bottom:ia,left:Zn,right:Jn,filter:ea,formatter:ne,columnAlignmentMap:Zt,sorts:_t,reverse:Mt,movedColumns:K,customColumns:Pt,hiddenColumns:an,alwaysFetchColumns:this.getAlwaysFetchColumns(f,m.columns,K,m.floatingLeftColumnCount,m.floatingRightColumnCount,(r=this.grid)===null||r===void 0||(r=r.state.draggingColumn)===null||r===void 0?void 0:r.range),formatColumns:this.getCachedPreviewFormatColumns(m.dh,m.columns,ve,Ne,((a=ct[ct.length-1])===null||a===void 0?void 0:a.type)===ie.CONDITIONAL_FORMATTING_EDIT?Ye??void 0:void 0),rollupConfig:this.getModelRollupConfig(m.originalColumns,qe,en),totalsConfig:this.getModelTotalsConfig(m.columns,qe,en),selectDistinctColumns:k,pendingRowCount:Ur,pendingDataMap:$n,frozenColumns:$r,columnHeaderGroups:Gn,partitionConfig:qn,showExtraGroupColumn:this.showExtraGroupColumn}),!A&&d.jsx("div",{className:"grid-settings-button",style:{height:"".concat(Qn,"px"),width:"".concat(Qn,"px")},children:d.jsx(te,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(p),onClick:this.handleMenu,icon:d.jsx(oe,{icon:Ya,transform:"up-1"}),tooltip:"Table Options"})}),aa,ti,ii,ni,oi,Wn&&this.getOverflowButtonTooltip(Wn),zn&&this.getExpandCellTooltip(zn),Kn&&this.getHoverTooltip(Kn)]}),d.jsx(_r,{ref:this.gotoRowRef,model:m,isShown:Yn,gotoRow:Yr,gotoRowError:qr,gotoValueError:Qr,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:Xr,gotoValue:Zr,gotoValueFilter:Jr,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),d.jsx(cl,{error:Vr,isSaving:Lr!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:Br,pendingDataMap:$n,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),d.jsx(Bl,{children:Hr}),d.jsx(Q,{model:m,copyOperation:I??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),d.jsx(ds,{dh:m.dh,ref:Se=>{this.tableSaver=Se},getDownloadWorker:u,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:Un===Ze.DOWNLOAD_STATUS.DOWNLOADING,formatter:ne})]}),d.jsx(hs,{in:A,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:d.jsx("div",{className:"table-sidebar",children:d.jsx(cs,{children:[d.jsx(Fi,{title:"Table Options",onClose:this.handleMenuClose,children:d.jsx(Tr,{onSelect:Se=>this.handleMenuSelect(di[Se]),items:di})},"table-options"),...ma.map((Se,le)=>d.jsx(Fi,{title:ct[le].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,children:Se},ct[le].type))]})})}),d.jsx(Ro,{actions:this.contextActions}),d.jsx(Rd,{isOpen:Wr,onClose:this.handleCloseNoPastePermissionModal,errorMessage:zr})]})}}M(Be,"contextType",ms);M(Be,"minDebounce",150);M(Be,"maxDebounce",500);M(Be,"loadingSpinnerDelay",800);M(Be,"defaultProps",{advancedFilters:Me,advancedSettings:Me,alwaysFetchColumns:ae,conditionalFormats:ae,customColumnFormatMap:Me,columnAlignmentMap:Me,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:ae,movedRows:ae,inputFilters:ae,customFilters:ae,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onAdvancedSettingsChange:()=>{},partitions:void 0,partitionConfig:void 0,quickFilters:Me,selectDistinctColumns:ae,sorts:ae,reverse:!1,customColumns:ae,aggregationSettings:Dn,rollupConfig:void 0,userColumnWidths:Me,userColumnWidthsByName:void 0,userRowHeights:Me,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",invertSearchColumns:!0,onContextMenu:()=>ae,pendingDataMap:Me,getDownloadWorker:gs.getServiceWorker,settings:{timeZone:"America/New_York",defaultDateTimeFormat:pr.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,showEmptyStrings:!0,showNullStrings:!0,showExtraGroupColumn:!0,formatter:ae},canCopy:!0,canDownloadCsv:!0,frozenColumns:void 0,density:void 0,canToggleSearch:!0,mouseHandlers:ae,keyHandlers:ae,getMetricCalculator:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return new vs(...t)}});export{Be as default};
17
+ //# sourceMappingURL=IrisGrid-BWBMT9kS.js.map