@deephaven/embed-widget 0.85.40 → 0.85.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/assets/{App-DRqwOzQL.js → App-Bm8waigR.js} +2 -2
- package/build/assets/{App-DRqwOzQL.js.map → App-Bm8waigR.js.map} +1 -1
- package/build/assets/{Chart-DxW5bXEk.js → Chart-uDj1SWnk.js} +2 -2
- package/build/assets/{Chart-DxW5bXEk.js.map → Chart-uDj1SWnk.js.map} +1 -1
- package/build/assets/IrisGrid-DI0ZPxfS.js +5 -0
- package/build/assets/IrisGrid-DI0ZPxfS.js.map +1 -0
- package/build/assets/{IrisGridThemeProvider-PNEJtFC6.js → IrisGridThemeProvider-CGeAIOXA.js} +5 -5
- package/build/assets/IrisGridThemeProvider-CGeAIOXA.js.map +1 -0
- package/build/assets/{LocalWorkspaceStorage-xyQ1ahXg.js → LocalWorkspaceStorage-D8Nkjm_H.js} +2 -2
- package/build/assets/{LocalWorkspaceStorage-xyQ1ahXg.js.map → LocalWorkspaceStorage-D8Nkjm_H.js.map} +1 -1
- package/build/assets/{LogPanel-B7vf2Smo.js → LogPanel-DHULO3aD.js} +2 -2
- package/build/assets/{LogPanel-B7vf2Smo.js.map → LogPanel-DHULO3aD.js.map} +1 -1
- package/build/assets/{MarkdownEditor-bsAoPmqj.js → MarkdownEditor-BL5tU_c8.js} +2 -2
- package/build/assets/{MarkdownEditor-bsAoPmqj.js.map → MarkdownEditor-BL5tU_c8.js.map} +1 -1
- package/build/assets/{MarkdownNotebook-BCGTX62X.js → MarkdownNotebook-BX7MT55g.js} +2 -2
- package/build/assets/{MarkdownNotebook-BCGTX62X.js.map → MarkdownNotebook-BX7MT55g.js.map} +1 -1
- package/build/assets/{index-BArY9Jcd.js → index-C6uNMsJo.js} +2 -2
- package/build/assets/{index-BArY9Jcd.js.map → index-C6uNMsJo.js.map} +1 -1
- package/build/assets/{index-DBzTT7kE.js → index-CmctFa0c.js} +3 -3
- package/build/assets/{index-DBzTT7kE.js.map → index-CmctFa0c.js.map} +1 -1
- package/build/assets/{index-CfEZqZ0N.js → index-DPW3FCzI.js} +10 -10
- package/build/assets/index-DPW3FCzI.js.map +1 -0
- package/build/index.html +2 -2
- package/package.json +7 -7
- package/build/assets/IrisGrid-B0PHjRRj.js +0 -5
- package/build/assets/IrisGrid-B0PHjRRj.js.map +0 -1
- package/build/assets/IrisGridThemeProvider-PNEJtFC6.js.map +0 -1
- package/build/assets/index-CfEZqZ0N.js.map +0 -1
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{af as Ie,r as w,E as u,H as Q,ad as Se,J as Le,bu as Tt,D as cn,I as J,G as mn,ac as St,ab as te,bv as Ye,ah as _r,ai as Ir,ag as Lr,bg as Xn}from"./vendor-DrtWDXhi.js";import{l as V,a2 as De,a as be,v as pn,q as Gt,ab as Cn,b8 as Zn,T as vn,e as Pr,a3 as Mr,b0 as Ai,b1 as gn,b9 as kr,ba as jr,bb as Ur,a8 as Vr,bc as Jn,bd as rn,aR as ei,be as Br,aa as Hr,bf as Gr,k as Wr,bg as Kr,bh as $r,al as zr,as as Yr,c as Qr,M as qr,s as Xr,bi as Zr,bj as Jr,b as ea,h as _i,bk as ta,bl as na,bm as ia,aS as ra,a7 as aa,bn as sa,bo as oa,bp as la,bq as ua,br as da,bs as ha,aq as ca,bt as ma,bu as va}from"./index-CmctFa0c.js";import{al as j,an as K,ao as Ii,ak as yt,ap as Me,T as N,aq as ga,ar as fa,as as pa,at as Ca,F as Sn,au as ct,av as Sa,D as bn,V as oe,ac as jt,C as Li,Z as Vt,N as ba,a9 as wa,aw as Re,$ as tt,_ as Ta,d as an,e as ti,a2 as xe,ax as ya,y as Ea}from"./index-DPW3FCzI.js";import{E as ne,N as st,B as $,a5 as Ae,z as Et,n as Pi,bw as Mi,an as Ra,bL as Ue,L as Oa,T as rt,v as ki,C as Na,bX as ji,D as Fa,x as xa,cf as Da}from"./LogPanel-DHULO3aD.js";import{bc as Aa,bd as qe,be as _a,bf as Oe,bg as Ia,bh as La,bi as Pa,bj as Ma,bk as ka,bl as ja,bm as ni,bn as Ua,_ as Va,b6 as Qe,ax as Ba,Q as Ui,B as ii,G as Vi,aK as Ha,aJ as Ga,H as Wa,b2 as z,bb as Ka,aX as $a,b8 as $e,aN as za,aY as Ya,b0 as Qa,aP as qa,aQ as Xa,aZ as Za,aU as Ja,aR as es,aT as ts,b3 as ns,aW as is,aS as rs,bo as sn,bp as as,aD as ss,aE as os,b5 as ls,aH as us,ba as ds,aG as hs,b9 as cs,$ as ms,a0 as vs,W as ri,a_ as gs,aI as fs,aV as ps}from"./IrisGridThemeProvider-CGeAIOXA.js";import"./helpers-BosuxZz1.js";import"./useMergeRef-CfC_oXTp.js";function ai(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 si(i){if(i==null)throw new Aa("Expected 'val' to be defined, but received ".concat(i))}function Cs(i,e,t){return(e=Ss(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ss(i){var e=bs(i,"string");return typeof e=="symbol"?e:e+""}function bs(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 oi extends Error{constructor(){super(...arguments),Cs(this,"isPasteError",!0)}}function li(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 Te(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?li(Object(t),!0).forEach(function(n){Ve(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):li(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ve(i,e,t){return(e=ws(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ws(i){var e=Ts(i,"string");return typeof e=="symbol"?e:e+""}function Ts(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 ui=5,ys=1e3/60,Lt=10;function je(i,e,t,n){var r,{modelColumns:a,movedColumns:s,allColumnXs:l,columnCount:o,allColumnWidths:d,userColumnWidths:h,calculatedColumnWidths:c,floatingLeftWidth:v,maxX:m}=t;if(e==null||i==null||i>o||i<0)return null;var p=(r=a.get(i))!==null&&r!==void 0?r:j.getModelIndex(i,s),g=n.getColumnHeaderGroup(p,e),C=g!=null,S,f,b;if(g!=null){var y,E,T,[O,D]=g.getVisibleRange(s);S=(y=l.get(O))!==null&&y!==void 0?y:v,f=((E=l.get(D))!==null&&E!==void 0?E:m)+((T=d.get(D))!==null&&T!==void 0?T:0),b=[O,D]}else{var A,P,Z,M=l.get(i);if(M==null)return null;S=M,f=S+((A=(P=(Z=d.get(i))!==null&&Z!==void 0?Z:h.get(p))!==null&&P!==void 0?P:c.get(p))!==null&&A!==void 0?A:0),b=[i,i]}return{visibleIndex:i,modelIndex:p,left:S,right:f,width:f-S,isColumnGroup:C,range:b,depth:e}}class Es extends qe{constructor(){super(...arguments),Ve(this,"cursor",null),Ve(this,"draggingOffset",void 0),Ve(this,"initialOffset",void 0),Ve(this,"initialGridPoint",void 0),Ve(this,"scrollingInterval",void 0),Ve(this,"scrollingDirection",void 0),Ve(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var{metrics:n}=e;if(n){var{left:r,lastLeft:a,leftOffset:s,userColumnWidths:l,calculatedColumnWidths:o,movedColumns:d,allColumnWidths:h}=n,c=r,v=s;if(t==="left")for(v-=Lt;v<0;){var m;c-=1;var p=j.getModelIndex(r-1,d),g=(m=l.get(p))!==null&&m!==void 0?m:o.get(p);g===void 0?v=0:v+=g,c<0&&(v=0,c=0)}else{v+=Lt;for(var C=h.get(r);C!==void 0&&v>C;){var S;c+=1,v-=C;var f=j.getModelIndex(r+1,d);C=(S=l.get(f))!==null&&S!==void 0?S:o.get(f),c>a&&(v=0,c=a)}}var{mouseX:b,mouseY:y}=e.state;n==null||b==null||y==null||(this.moveDraggingColumn(b,e,t==="left"?-Lt:Lt),e.setState({left:c,leftOffset:v}),(t==="left"&&c===0&&s===0||t==="right"&&c===a)&&this.clearScrollInterval())}},ys))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var{model:n}=t.props,{x:r,column:a,columnHeaderDepth:s}=e,{metrics:l}=t;if(!l)throw new Error("Metrics not set");var o=je(a,s,l,n);if(a==null||o==null||s==null||s>0&&!o.isColumnGroup)return!1;var{rowHeaderWidth:d}=l;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,o.modelIndex!=null&&s!=null&&n.isColumnMovable(o.modelIndex,s)&&(this.draggingOffset=r-o.left-d,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{x:r,y:a}=e,{columnHeaderDepth:s}=this.initialGridPoint,{model:l}=t.props,{draggingColumn:o}=this,{metrics:d}=t;if(!d)throw new Error("Metrics not set");if(!o&&Math.abs(this.initialGridPoint.x-r)<ui&&Math.abs(this.initialGridPoint.y-a)<ui)return!1;if(o==null){var h=je(this.initialGridPoint.column,s,d,l);if(!h||s==null||!l.isColumnMovable(h.modelIndex)||s>0&&!h.isColumnGroup||h.range[0]==null)return!1;o={range:h.range,depth:s,left:h.left,width:h.width};var c=je(o.range[0],0,d,l),v=je(o.range[1],0,d,l);if(!c||!v)return!1;this.draggingColumn=o,t.setState({draggingColumn:o,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{metrics:a}=t;V(a,"Metrics not set");var{gridX:s}=a;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=Te(Te({},this.draggingColumn),{},{left:e-this.draggingOffset-s}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:l}=this.draggingColumn,{model:o}=t.props,{movedColumns:d}=t.state,{floatingLeftWidth:h,width:c,columnHeaderMaxDepth:v,allColumnXs:m}=a,p=n<0,g=je(this.draggingColumn.range[0],l,a,o);if(g){var C=e-this.draggingOffset-s,S=C+g.width;this.draggingColumn=Te(Te({},this.draggingColumn),{},{left:C}),t.setState({draggingColumn:this.draggingColumn});var f=je(j.getColumnAtX(Ie(p?C:S,h,c)+s,a,!0),l,a,o),b=o.getColumnHeaderParentGroup(g.modelIndex,g.depth);if(f){if(b!==void 0){var y=b.getVisibleRange(d);if(f.visibleIndex<y[0]){var E,T=this.moveColumn(g,y[0],d);this.draggingOffset=e-((E=m.get(y[0]))!==null&&E!==void 0?E:0),this.draggingColumn=Te(Te({},this.draggingColumn),{},{left:e-this.draggingOffset-s}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:T});return}if(f.visibleIndex>y[1]){var O,D=this.moveColumn(g,y[1]-(g.range[1]-g.range[0]),d),{right:A=0}=(O=je(y[1],0,a,o))!==null&&O!==void 0?O:{};this.draggingOffset=e-(A-g.width),this.draggingColumn=Te(Te({},this.draggingColumn),{},{left:e-this.draggingOffset-s}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:D});return}}if(!o.isColumnMovable(f.modelIndex)){var P=f.visibleIndex;if(p)for(P+=1;P<g.visibleIndex&&!o.isColumnMovable(j.getModelIndex(P,d));)P+=1;else for(P-=1;P>g.visibleIndex&&!o.isColumnMovable(j.getModelIndex(P,d));)P-=1;if(P!==g.visibleIndex){p||(P-=g.range[1]-g.range[0]);var Z=this.moveColumn(g,P,d);t.setState({movedColumns:Z,draggingColumn:this.draggingColumn})}var M=je(P,0,a,o);if(p){var Y;this.draggingOffset=e-((Y=M==null?void 0:M.left)!==null&&Y!==void 0?Y:0)}else{var he;this.draggingOffset=e-(((he=M==null?void 0:M.right)!==null&&he!==void 0?he:0)-g.width)}this.draggingColumn=Te(Te({},this.draggingColumn),{},{left:e-this.draggingOffset-s}),t.setState({draggingColumn:this.draggingColumn});return}if(C<=h?this.setScrollInterval(t,"left"):S>c?this.setScrollInterval(t,"right"):this.clearScrollInterval(),f.visibleIndex!==g.visibleIndex&&!(p&&g.visibleIndex<f.visibleIndex||!p&&g.visibleIndex>f.visibleIndex)){for(var ue=f.left+f.width*.5,we=o.getColumnHeaderParentGroup(g.modelIndex,g.depth),fe,Ee=((r=we==null?void 0:we.depth)!==null&&r!==void 0?r:v)-1;Ee>=0&&fe===void 0;)fe=o.getColumnHeaderGroup(f.modelIndex,Ee),Ee-=1;var ce;p&&C<ue&&(!fe||f.visibleIndex===fe.getVisibleRange(d)[0])&&(ce=this.moveColumn(g,f.range[0],d)),!p&&S>ue&&(!fe||f.visibleIndex===fe.getVisibleRange(d)[1])&&(ce=this.moveColumn(g,f.range[1]-(g.range[1]-g.range[0]),d)),ce&&(this.draggingColumn=Te(Te({},this.draggingColumn),{},{left:C}),t.setState({movedColumns:ce,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,n){var r=e.isColumnGroup?j.moveRange(e.range,t,n):j.moveItem(e.visibleIndex,t,n),a=t-e.range[0],s=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=Te(Te({},this.draggingColumn),{},{range:s})),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 di(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=Os(i,"string");return typeof e=="symbol"?e:e+""}function Os(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 wn extends qe{constructor(){super(...arguments),di(this,"dragOffset",void 0),di(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var n=e.getTheme(),{metrics:r,metricCalculator:a}=e;if(!r)throw new Error("metrics not set");if(n.scrollSnapToColumn){var s=Math.round(t),l=0;return{left:s,leftOffset:l}}var o=Math.floor(t),d=t-o,h=r.allColumnWidths.get(o);if(h==null){var c=e.getMetricState();h=a.getVisibleColumnWidth(o,c)}var v=h*d;return{left:o,leftOffset:v}}isInScrollBar(e,t){var n=t.getTheme(),{scrollBarSize:r,scrollBarHoverSize:a}=n,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{x:l,y:o}=e,{barLeft:d,barWidth:h,height:c,hasHorizontalBar:v}=s;return v&&r>0&&o>=c-a&&o<c&&l>d&&l<d+h}getLeftWithOffset(e,t){var n,{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:a}=e,{barWidth:s,handleWidth:l,lastLeft:o,barLeft:d,columnCount:h,scrollableContentWidth:c,scrollableViewportWidth:v}=r,m=a-d,p=Ie((m-((n=this.dragOffset)!==null&&n!==void 0?n:0))/(s-l),0,1);if(h===1)return{left:0,leftOffset:p*(c-v)};var g=p*o;return wn.getLeftWithOffsetFromRawLeft(t,g)}onDown(e,t){var{metrics:n}=t;if(!n)throw new Error("metrics not set");var{x:r}=e,{handleWidth:a,barLeft:s,scrollX:l}=n;if(!this.isInScrollBar(e,t))return!1;var o=r-s;if(o>=l&&o<=l+a)this.dragOffset=o-l,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:d,leftOffset:h}=this.getLeftWithOffset(e,t);t.setViewState({left:d,leftOffset:h,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var{left:n,leftOffset:r}=this.getLeftWithOffset(e,t);return t.setViewState({left:n,leftOffset:r,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 hi(i,e,t){return(e=Ns(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ns(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)}class xs extends qe{constructor(){super(...arguments),hi(this,"cursor","move"),hi(this,"draggingOffset",void 0)}onDown(e,t){var{model:n}=t.props,{x:r,y:a,row:s}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{columnHeaderHeight:o,rowHeaderWidth:d,allRowYs:h}=l;if(r<=d&&s!==null&&n.isRowMovable(s)){var c=De(h,s);this.draggingOffset=a-c-o,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var{model:n}=t.props,{draggingRow:r}=t.state,{mouseX:a,mouseY:s}=t.state;if(a==null||s==null)return!1;if(r==null){var{row:l}=t.getGridPointFromXY(a,s);if(l!=null&&!n.isRowMovable(l)||(r=l,t.setState({draggingRow:r,isDragging:!0}),r==null))return!1}var{metrics:o}=t;if(!o)throw new Error("metrics not set");var{top:d,lastTop:h,bottom:c,bottomVisible:v,rowCount:m,columnHeaderHeight:p,allRowHeights:g,allRowYs:C,height:S}=o,f=p;if(d<r){var b=r-1;f=De(C,b)+De(g,b)*.5+p}var y=S;if(r<c){var E=r+1;y=De(C,E)+De(g,E)*.5+p}var{movedRows:T}=t.state;s<f&&r>0&&n.isRowMovable(r-1)?(T=j.moveItem(r,r-1,T),r-=1):y<s&&r<m-1&&n.isRowMovable(r+1)&&(T=j.moveItem(r,r+1,T),r+=1),t.setState({movedRows:T,draggingRow:r});var O=p+De(g,d)*.5,D=p+De(C,v)+De(g,v)*.5;return s<O&&d>0?t.setState({top:d-1}):s>D&&d<h&&t.setState({top:d+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 pe(i,e,t){return(e=Ds(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ds(i){var e=As(i,"string");return typeof e=="symbol"?e:e+""}function As(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 Tn extends _a{constructor(){super(...arguments),pe(this,"hiddenCursor","s-resize"),pe(this,"defaultCursor","row-resize"),pe(this,"pointProperty","y"),pe(this,"userSizesProperty","userRowHeights"),pe(this,"visibleOffsetProperty","visibleRowYs"),pe(this,"visibleSizesProperty","visibleRowHeights"),pe(this,"marginProperty","columnHeaderHeight"),pe(this,"calculatedSizesProperty","calculatedRowHeights"),pe(this,"initialSizesProperty","initialRowHeights"),pe(this,"modelIndexesProperty","modelRows"),pe(this,"firstIndexProperty","firstRow"),pe(this,"treePaddingProperty","treePaddingY"),pe(this,"getHiddenItems",j.getHiddenRows),pe(this,"getNextShownItem",j.getNextShownRow),pe(this,"getSeparator",Tn.getRowSeparator)}static getRowSeparator(e,t,n,r){if(!r.allowRowResize)return null;var{x:a,y:s}=e,l=j.getRowSeparatorIndex(a,s,t,r);return l!=null?{index:l,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 _s extends qe{isInCorner(e,t){var n=t.getTheme(),{scrollBarSize:r}=n,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:s,y:l}=e,{width:o,height:d,hasVerticalBar:h,hasHorizontalBar:c}=a;return r>0&&h&&c&&s>=o-r&&l>=d-r&&s<=o&&l<=d}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 ci(i,e,t){return(e=Is(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Is(i){var e=Ls(i,"string");return typeof e=="symbol"?e:e+""}function Ls(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 yn extends qe{constructor(){super(...arguments),ci(this,"dragOffset",void 0),ci(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var n=e.getTheme(),{metrics:r,metricCalculator:a}=e;if(!r)throw new Error("metrics not set");if(n.scrollSnapToRow){var s=Math.round(t),l=0;return{top:s,topOffset:l}}var o=Math.floor(t),d=t-o,h=r.allRowHeights.get(o);if(h==null){var c=e.getMetricState();h=a.getVisibleRowHeight(o,c)}var v=h*d;return{top:o,topOffset:v}}isInScrollBar(e,t){var n=t.getTheme(),{scrollBarSize:r,scrollBarHoverSize:a}=n,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{x:l,y:o}=e,{barTop:d,barHeight:h,width:c,hasVerticalBar:v}=s;return v&&r>0&&l>=c-a&&l<c&&o>d&&o<d+h}getTopWithOffset(e,t){var n,{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:a}=e,{barHeight:s,handleHeight:l,lastTop:o,barTop:d,rowCount:h,scrollableContentHeight:c,scrollableViewportHeight:v}=r,m=a-d,p=Ie((m-((n=this.dragOffset)!==null&&n!==void 0?n:0))/(s-l),0,1);if(h===1)return{top:0,topOffset:p*(c-v)};var g=p*o;return yn.getTopWithOffsetFromRawTop(t,g)}onDown(e,t){var{metrics:n}=t;if(!n)throw new Error("metrics not set");var{y:r}=e,{handleHeight:a,barTop:s,scrollY:l}=n;if(!this.isInScrollBar(e,t))return!1;var o=r-s;if(o>=l&&o<=l+a)this.dragOffset=o-l,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:d,topOffset:h}=this.getTopWithOffset(e,t);t.setViewState({top:d,topOffset:h,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top:n,topOffset:r}=this.getTopWithOffset(e,t);return t.setViewState({top:n,topOffset:r,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 Ps extends qe{onDoubleClick(e,t){var{column:n,row:r}=e,{model:a}=t.props;return Oe(a)&&n!=null&&r!=null&&a.isEditableRange(K.makeCell(n,r))?(t.startEditing(n,r),!0):!1}}function pt(i,e,t){return(e=Ms(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Ms(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 Wt extends qe{constructor(){super(...arguments),pt(this,"timeoutId",void 0),pt(this,"isHold",!1),pt(this,"isDown",!1),pt(this,"currentLinkBox",void 0)}isHoveringLink(e,t){var{column:n,row:r,x:a,y:s}=e,{renderer:l,metrics:o,props:d}=t,{model:h}=d;if(n==null||r==null||o==null)return this.currentLinkBox=void 0,!1;var{modelRows:c,modelColumns:v}=o,m=De(c,r),p=De(v,n),g=h.renderTypeForCell(p,m),C=l.getCellRenderer(g);if(!Ia(C))return!1;if(this.currentLinkBox!=null){var{x1:S,y1:f,x2:b,y2:y}=this.currentLinkBox;if(a>=S&&a<=b&&s>=f&&s<=y)return!0}for(var E=t.updateRenderState(),T=C.getTokenBoxesForVisibleCell(n,r,E),O=0;O<T.length;O+=1)if(Ii(T[O].token)){var D=j.translateTokenBox(T[O],o),{x1:A,x2:P,y1:Z,y2:M}=D;if(a>=A&&a<=P&&s>=Z&&s<=M)return this.currentLinkBox=D,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?this.cursor="pointer":this.cursor=null,!1}onMove(e,t){return this.setCursor(e,t)}onDown(e,t,n){var r=this.isHoveringLink(e,t);return j.isModifierKeyDown(n)||n.shiftKey||!r?!1:(this.isDown=!0,this.timeoutId!=null&&clearTimeout(this.timeoutId),this.isHold=!1,this.timeoutId=setTimeout(()=>{this.isHold=!0;var{column:a,row:s}=e,{model:l}=t.props;t.clearSelectedRanges(),t.focus(),t.moveCursorToPosition(a,s),Oe(l)&&a!=null&&s!=null&&l.isEditableRange(K.makeCell(a,s))&&t.startEditing(a,s)},Wt.HOLD_LENGTH),!0)}onClick(e,t){var n=this.isHoveringLink(e,t);if(!n||!this.isDown||this.currentLinkBox==null)return this.isDown=!1,this.isHold=!1,!1;if(!this.isHold){var r;this.timeoutId!=null&&clearTimeout(this.timeoutId),this.timeoutId=void 0,t.props.onTokenClicked((r=this.currentLinkBox)===null||r===void 0?void 0:r.token)}return this.isHold=!1,this.isDown=!1,!0}}pt(Wt,"HOLD_LENGTH",1e3);function mi(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=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 He{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;mi(this,"order",void 0),mi(this,"cursor",null),this.order=e}onDown(e,t){return!1}onUp(e,t){return!1}}class Vs extends He{onDown(e,t){switch(e.key){case"a":if(j.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 j.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return j.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return j.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(j.isModifierKeyDown(e))return!1;var{model:n}=t.props,{columnCount:r}=n;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(j.isModifierKeyDown(e)?t.state.cursorColumn:0,j.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:s,rowCount:l}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(j.isModifierKeyDown(e)?t.state.cursorColumn:s-1,j.isModifierKeyDown(e)?l-1:t.state.cursorRow,e.shiftKey,!0,!0),!0}case"Escape":return t.clearSelectedRanges(),{preventDefault:!1,stopPropagation:!1};case"Enter":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?K.SELECTION_DIRECTION.UP:K.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?K.SELECTION_DIRECTION.LEFT:K.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,n,r){var a=n.shiftKey,s=j.isModifierKeyDown(n);a?r.trimSelectedRanges():r.clearSelectedRanges();var{cursorRow:l,cursorColumn:o,selectionEndColumn:d,selectionEndRow:h}=r.state,c=a?d:o,v=a?h:l;if(s){var{model:m}=r.props,{columnCount:p,rowCount:g}=m,C=s&&a,S=null,f=null;e<0?(S=0,f=v):e>0?(S=p-1,f=v):t<0?(S=c,f=0):t>0&&(S=c,f=g-1),S!=null&&f!=null&&r.moveCursorToPosition(S,f,a,!0,C)}else{if(!r.metrics)throw new Error("grid.metrics are not set");var{theme:b}=r.props,{autoSelectRow:y=!1,autoSelectColumn:E=!1}=b;if(y&&e!==0){var{lastLeft:T}=r.metrics,{left:O}=r.state;O=Ie(O+e,0,T),r.moveCursorToPosition(O,l,a,!1),r.setViewState({left:O})}else if(E&&t!==0){var{lastTop:D}=r.metrics,{top:A}=r.state;A=Ie(A+t,0,D),r.moveCursorToPosition(A,o,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{cursorColumn:r,selectionEndRow:a}=t.state,s=a,l=r;if(s==null)return!1;var o=t.getMetricState(),{metricCalculator:d}=t,{bottomVisible:h,topVisible:c,hasHorizontalBar:v}=d.getMetrics(o),m=s-(h-c);m-=v?0:1,m=Math.max(m,0);var p=Math.max(m-(s-c),0);return t.moveCursorToPosition(l,m,n,!1),t.setViewState({top:p}),!0}handlePageDown(e,t){var n=e.shiftKey;n?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:r,cursorColumn:a}=t.state,s=r,l=a;if(s===null)return!1;var o=t.getMetricState(),{metricCalculator:d}=t,{bottomVisible:h,topVisible:c,hasHorizontalBar:v,rowCount:m,lastTop:p}=d.getMetrics(o),g=m-1,C=h-c+s;C+=v?0:1,C=Math.min(C,g);var S=Math.min(p,C-(s-c));return t.moveCursorToPosition(l,C,n,!1),t.setViewState({top:S}),!0}}class Bs extends He{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var{selectedRanges:n}=t.state;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{model:a}=t.props,{startRow:s,startColumn:l}=r;if(s!=null){var o=t.getModelRow(s);if((l===0||l==null)&&yt(a)&&a.isRowExpandable(o))return t.toggleRowExpanded(s),!0}}}return!1}}class Hs extends He{onDown(e,t){if(j.isModifierKeyDown(e))return!1;var{model:n}=t.props,{cursorColumn:r,cursorRow:a}=t.state;if(r==null||a==null||!Oe(n)||!n.isEditableRange(K.makeCell(r,a)))return!1;var s=r,l=a;return s==null||l==null?!1:e.key.length===1?(t.startEditing(s,l,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(s,l),!0):e.key==="Backspace"?(t.startEditing(s,l,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(s,l,""),!0):!1}}function Gs(i){for(var e=[],t=i.querySelectorAll("tr"),n=0;n<t.length;n+=1){for(var r=t[n],a=r.querySelectorAll("td"),s=[],l=0;l<a.length;l+=1){var o,d,h=a[l];s.push((o=(d=h.textContent)===null||d===void 0?void 0:d.trim())!==null&&o!==void 0?o:"")}e.push(s)}return e}function Ws(i){var e=[];return i.forEach(t=>{var n,r=(n=t.textContent)!==null&&n!==void 0?n:"";r.length>0&&e.push(r.split(/\t|\u00a0\u00a0 \u00a0/))}),e}function Ks(i){var e,t,n=i.querySelector("table");if(n!=null)return Gs(n);var r=(e=(t=i.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(r.length>0){var{childNodes:a}=i,s=r.includes(" "),l=r.includes(" ");return s&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?r.split(`
|
|
2
|
+
`).map(o=>o.split(" ")):a.length>1||l?Ws(i.childNodes):r}return null}class $s extends He{onDown(e,t){switch(e.key){case"v":if(j.isModifierKeyDown(e)){var n=document.createElement("div");document.body.appendChild(n),n.setAttribute("contenteditable","true"),n.setAttribute("style",'clip-path: "inset(50%)"; height: 1px; width: 1px; margin: -1px; overflow: hidden; padding 0; position: absolute;');var r=()=>{n.removeEventListener("input",r),n.remove(),t.focus();var a=Ks(n);a!=null&&t.pasteValue(a)};return n.addEventListener("input",r),n.focus(),{preventDefault:!1,stopPropagation:!0}}break}return!1}}var zs=i=>{switch(i){case"ArrowDown":return Me.DOWN;case"ArrowUp":return Me.UP;case"ArrowLeft":return Me.LEFT;case"ArrowRight":return Me.RIGHT;default:return}};function En(i){var{selectionRange:e=void 0,className:t="",disabled:n=!1,value:r="",isQuickEdit:a=!0,onChange:s=()=>{},onCancel:l=()=>{},onDone:o=()=>{},onContextMenu:d=()=>{},style:h={}}=i,c=w.useRef(null),v=w.useRef(!1),[m]=w.useState(r),[p,g]=w.useState(!1),[C,S]=w.useState(a),[f,b]=w.useState(r);w.useEffect(function(){var{current:Y}=c;Y!=null&&(Y.focus(),e?Y.setSelectionRange(e[0],e[1]):Y.setSelectionRange(Y.value.length,Y.value.length))},[e]);var y=w.useCallback(M=>{s(M)},[s]),E=w.useCallback(M=>{var{value:Y}=M.target;b(Y),g(!0),y(Y)},[y,b,g]),T=w.useCallback(()=>{v.current=!0,p&&y(m),g(!1),l()},[m,p,l,y]),O=w.useCallback(()=>{S(!1)},[S]),D=w.useCallback(function(M){var Y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;o(f,{direction:M,fillRange:Y})},[o,f]),A=w.useCallback(()=>{v.current||D(null)},[v,D]),P=w.useCallback(M=>{switch(M.stopPropagation(),M.key){case"Escape":M.preventDefault(),T();break;case"Enter":if(M.preventDefault(),j.isModifierKeyDown(M))D(void 0,!0);else if(M.altKey){var Y="".concat(f,`
|
|
3
|
+
`);b(Y),g(!0),y(Y)}else D(M.shiftKey?Me.UP:Me.DOWN);break;case"Tab":M.preventDefault(),D(M.shiftKey?Me.LEFT:Me.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":C&&(M.preventDefault(),D(zs(M.key)));break}},[T,D,C,b,g,y,f]),Z=w.useCallback(M=>{d(M)},[d]);return u.jsx("textarea",{ref:c,className:Q("grid-cell-input-field",t),value:f,onBlur:A,onChange:E,onKeyDown:P,onContextMenu:Z,onClick:O,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:n,style:h})}En.propTypes={selectionRange:Se.arrayOf(Se.number),className:Se.string,disabled:Se.bool,isQuickEdit:Se.bool,value:Se.string,onChange:Se.func,onCancel:Se.func,onDone:Se.func,onContextMenu:Se.func,style:Se.shape({})};En.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var Ys=Le.createContext({});function vi(i,e,t,n,r,a,s){try{var l=i[a](s),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).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 s(o){vi(a,n,r,s,l,"next",o)}function l(o){vi(a,n,r,s,l,"throw",o)}s(void 0)})}}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 Pe(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){re(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 re(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 Ne extends w.PureComponent{static getScale(e){var t,n,r,a,s,l=window.devicePixelRatio||1,o=e,d=(t=(n=(r=(a=(s=o.webkitBackingStorePixelRatio)!==null&&s!==void 0?s:o.mozBackingStorePixelRatio)!==null&&a!==void 0?a:o.msBackingStorePixelRatio)!==null&&r!==void 0?r:o.oBackingStorePixelRatio)!==null&&n!==void 0?n:o.backingStorePixelRatio)!==null&&t!==void 0?t:1;return l/d}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),re(this,"renderer",void 0),re(this,"metricCalculator",void 0),re(this,"canvas",void 0),re(this,"canvasContext",void 0),re(this,"canvasWrapper",void 0),re(this,"resizeObserver",void 0),re(this,"animationFrame",void 0),re(this,"prevMetrics",void 0),re(this,"metrics",void 0),re(this,"renderState",void 0),re(this,"documentCursor",void 0),re(this,"dragTimer",void 0),re(this,"keyHandlers",void 0),re(this,"mouseHandlers",void 0),re(this,"getCachedKeyHandlers",Tt(o=>[...o,...this.keyHandlers].sort((d,h)=>d.order-h.order))),re(this,"getCachedMouseHandlers",Tt(o=>[...o,...this.mouseHandlers].sort((d,h)=>d.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{isStuckToBottom:t,isStuckToRight:n,metricCalculator:r,movedColumns:a,movedRows:s,renderer:l}=e;this.renderer=l||new La,this.metricCalculator=r||new Pa,this.canvas=null,this.canvasContext=null,this.canvasWrapper=Le.createRef(),this.resizeObserver=new window.ResizeObserver(this.handleResize),this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.dragTimer=null,this.keyHandlers=[new Hs(400),new $s(450),new Vs(500),new Bs(900)],this.mouseHandlers=[new Tn(100),new Ma(200),new xs(300),new Es(400),new Ps(450),new yn(500),new wn(600),new _s(700),new ka(800),new Wt(875),new ja(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:s,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:ne,lastSelectedRanges:ne,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:n}}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{isStuckToBottom:t,isStuckToRight:n}=this.props,{top:r,left:a}=this.getStickyScrollPosition(t,n);this.setState({top:r,left:a})}componentDidUpdate(e,t){var n=ai(e,this.props),r=ai(t,this.state);if(!(n.length===1&&n[0]==="children"&&r.length===0)){var{isStickyBottom:a,isStickyRight:s,movedColumns:l,movedRows:o,onMovedColumnsChanged:d,onMoveColumnComplete:h,onMovedRowsChanged:c,onMoveRowComplete:v}=this.props,{isStickyBottom:m,isStickyRight:p,movedColumns:g,movedRows:C}=e,{movedColumns:S,movedRows:f}=t,{draggingColumn:b,draggingRow:y,movedColumns:E,movedRows:T}=this.state,O={};g!==l&&(O.movedColumns=l),C!==o&&(O.movedRows=o),S!==E&&d(E),t.draggingColumn!=null&&b==null&&h(E),f!==T&&c(T),t.draggingRow!=null&&y==null&&v(T),a!==m&&(O.isStuckToBottom=!1),s!==p&&(O.isStuckToRight=!1);var D=Pe(Pe({},this.state),O);if(this.updateMetrics(D),this.requestUpdateCanvas(),this.needToUpdateScroll()){var{top:A,left:P}=this.getStickyScrollPosition(a,s);D.top=A,D.left=P}this.validateSelection()&&this.checkSelectionChange(t),this.setState(D)}}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{theme:e}=this.props;return Ne.getTheme(this.context,e)}getGridPointFromEvent(e){si(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 j.getGridPointFromXY(e,t,this.metrics)}getMetricState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=this.getTheme(),{model:n,stateOverride:r}=this.props;if(!this.canvasContext||!this.canvas)throw new Error("Canvas and context must be defined to get metrics");var a=this.canvasContext,s=this.canvas.clientWidth,l=this.canvas.clientHeight,{left:o,top:d,leftOffset:h,topOffset:c,movedColumns:v,movedRows:m,isDraggingHorizontalScrollBar:p,isDraggingVerticalScrollBar:g,draggingColumn:C}=e;return Pe({left:o,top:d,leftOffset:h,topOffset:c,width:s,height:l,context:a,theme:t,model:n,movedColumns:v,movedRows:m,isDraggingHorizontalScrollBar:p,isDraggingVerticalScrollBar:g,draggingColumn:C},r)}getKeyHandlers(){var{keyHandlers:e}=this.props;return this.getCachedKeyHandlers(e)}getMouseHandlers(){var{mouseHandlers:e}=this.props;return this.getCachedMouseHandlers(e)}getModelColumn(e){var t,n,r=(t=this.metrics)===null||t===void 0||(n=t.modelColumns)===null||n===void 0?void 0:n.get(e);if(r===void 0)throw new Error("Unable to get ModelIndex for column ".concat(e));return r}getModelRow(e){var t,n,r=(t=this.metrics)===null||t===void 0||(n=t.modelRows)===null||n===void 0?void 0:n.get(e);if(r===void 0)throw new Error("Unable to get ModelIndex for row ".concat(e));return r}toggleRowExpanded(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.getModelRow(e),{model:r}=this.props;yt(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{bottomVisible:n,rowCount:r,top:a,lastTop:s,rightVisible:l,columnCount:o,left:d,lastLeft:h}=this.metrics,c=a,v=d;return e&&(n<r-1&&n>0||a>s)&&(c=s),t&&(l<o-1&&l>0||d>h)&&(v=h),{top:c,left:v}}setSelectedRanges(e){var{model:t}=this.props,{columnCount:n,rowCount:r}=t,{cursorRow:a,cursorColumn:s,selectedRanges:l}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:l}),e.length>0){var o=K.boundedRange(e[0],n,r),d=a,h=s;o.containsCell(s,a)||({row:d,column:h}=o.startCell()),this.setState({selectionStartColumn:o.startColumn,selectionStartRow:o.startRow,selectionEndColumn:o.endColumn,selectionEndRow:o.endRow,cursorColumn:h,cursorRow:d})}}initContext(){var{canvas:e}=this,{canvasOptions:t}=this.props;if(!e)throw new Error("Canvas not set");this.canvasContext=e.getContext("2d",t)}requestUpdateCanvas(){this.animationFrame==null&&(this.animationFrame=requestAnimationFrame(()=>{this.animationFrame=null,this.updateCanvas()}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var{canvasContext:e,metrics:t,renderState:n}=this;V(e),V(t),V(n),this.renderer.configureContext(e,n);var{onViewChanged:r}=this.props;r(t),this.drawCanvas(t)}updateCanvasScale(){var{canvas:e,canvasContext:t,canvasWrapper:n}=this;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),s=Math.floor(r.height);if(!(parseFloat(e.style.width)===a&&parseFloat(e.style.height)===s)){var l=Ne.getScale(t);e.style.width="".concat(a,"px"),e.style.height="".concat(s,"px"),e.width=a*l,e.height=s*l,t.scale(l,l)}}updateScrollBounds(){if(!this.metrics)throw new Error("metrics not set");var{left:e,top:t}=this.state,{lastLeft:n,lastTop:r}=this.metrics;e>n&&this.setState({left:n,leftOffset:0}),t>r&&this.setState({top:r,topOffset:0})}needToUpdateScroll(){if(!this.metrics||!this.prevMetrics)return!1;var{rowCount:e,columnCount:t,height:n,width:r}=this.metrics,{rowCount:a,columnCount:s,height:l,width:o}=this.prevMetrics;if(a!==e||n!==l){var{isStuckToBottom:d}=this.state;if(d)return!0}if(s!==t||r!==o){var{isStuckToRight:h}=this.state;if(h)return!0}return!1}updateMetrics(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state;this.prevMetrics=this.metrics;var{metricCalculator:t}=this,n=this.getMetricState(e);return this.metrics=t.getMetrics(n),this.updateScrollBounds(),this.metrics}checkSelectionChange(e){var{selectedRanges:t}=e,{selectedRanges:n}=this.state;if(n!==t){var{onSelectionChanged:r}=this.props;r(n)}}validateSelection(){for(var{model:e}=this.props,{selectedRanges:t}=this.state,{columnCount:n,rowCount:r}=e,a=0;a<t.length;a+=1){var s=t[a];if(s.endColumn!=null&&s.endColumn>=n||s.endRow!=null&&s.endRow>=r)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var{selectedRanges:e}=this.state;this.setState({selectedRanges:ne,lastSelectedRanges:e})}trimSelectedRanges(){var{selectedRanges:e}=this.state;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}getSelectedRanges(){var{selectedRanges:e}=this.state;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{selectedRanges:s,selectionStartRow:l,selectionStartColumn:o}=a,{theme:d}=this.props,{autoSelectRow:h,autoSelectColumn:c}=d;if(n&&s.length>0){var v=s[s.length-1],m=null,p=null,g=null,C=null;if(r){var S,f,b,y;m=h!==void 0&&h?null:Math.min(e??0,(S=v.startColumn)!==null&&S!==void 0?S:0),p=c!==void 0&&c?null:Math.min(t??0,(f=v.startRow)!==null&&f!==void 0?f:0),g=h!==void 0&&h?null:Math.max(e??0,(b=v.endColumn)!==null&&b!==void 0?b:0),C=c!==void 0&&c?null:Math.max(t??0,(y=v.endRow)!==null&&y!==void 0?y:0)}else m=v.startColumn,p=v.startRow,(o!=null||l!=null)&&((h===void 0||!h)&&(m=o),(c===void 0||!c)&&(p=l)),g=h!==void 0&&h?null:e,C=c!==void 0&&c?null:t;var E=K.makeNormalized(m,p,g,C);if(v.equals(E))return null;var T=[...s];return T[T.length-1]=E,{selectedRanges:T,selectionEndColumn:e,selectionEndRow:t}}var O=[...s],D=h!==void 0&&h?null:e,A=c!==void 0&&c?null:t;return O.push(K.makeNormalized(D,A,D,A)),{selectedRanges:O,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:n}=t,{selectedRanges:r,lastSelectedRanges:a,cursorRow:s,cursorColumn:l}=e;if(r.length===1&&(n!==void 0&&n?K.rowCount(r)===1:K.cellCount(r)===1)&&K.rangeArraysEqual(r,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var o=r.slice();if(o.length>1){for(var d=o[o.length-1],h=0;h<o.length-1;h+=1){var c=o[h];if(c.contains(d)){var v=c.subtract(d);o.pop(),o.splice(h,1),o=o.concat(v);break}}o=K.consolidate(o)}var m=l,p=s;if(!K.containsCell(o,l,s)){var{model:g}=this.props,{columnCount:C,rowCount:S}=g,f=K.nextCell(K.boundedRanges(r,C,S));f!=null?{column:m,row:p}=f:(m=null,p=null)}o.length===0&&(m=null,p=null);var b=o.length!==r.length||o.some((y,E)=>!y.equals(r[E]));return{cursorRow:p,cursorColumn:m,selectedRanges:b?o:r,lastSelectedRanges:r}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:n,height:r,lastTop:a,userRowHeights:s,rowHeight:l}=this.metrics,o=r-n,d=Math.round(o/2)+((t=s.get(e))!==null&&t!==void 0?t:l),h=this.getMetricState(),c=this.metricCalculator.getLastTop(h,e+1,d);this.setState({top:Math.min(a,c),selectedRanges:[new K(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:v}=this.state;this.moveCursorToPosition(v,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:n,autoSelectColumn:r}=t,a=r!==void 0&&r?null:0,s=r!==void 0&&r?null:e.rowCount-1,l=n!==void 0&&n?null:0,o=n!==void 0&&n?null:e.columnCount-1;this.setSelectedRanges([new K(l,a,o,s)])}moveCursor(e,t,n){var{cursorRow:r,cursorColumn:a,selectionEndColumn:s,selectionEndRow:l}=this.state,o=n?s:a,d=n?l:r;if(d===null||o===null){var{left:h,top:c}=this.state;this.moveCursorToPosition(h,c,n)}else{var{model:v}=this.props,{columnCount:m,rowCount:p}=v,g=Ie(o+e,0,m-1),C=Ie(d+t,0,p-1);this.moveCursorToPosition(g,C,n)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:K.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:n,rowCount:r}=t,{cursorRow:a,cursorColumn:s,selectedRanges:l}=this.state,o=l.length>0?l:[K.makeCell(s,a)],d=null;if(o.length===1&&K.cellCount(o)===1){var h,c=new K(0,0,n-1,r-1);d=(h=c.nextCell(s,a,e))!==null&&h!==void 0?h:c.startCell(e)}else d=K.nextCell(K.boundedRanges(o,n,r),s,a,e);if(d!=null){var{column:v,row:m}=d;this.setState({cursorColumn:v,cursorRow:m}),K.containsCell(l,v,m)||this.setState({selectedRanges:[K.makeCell(v,m)],selectionStartColumn:v,selectionStartRow:m,selectionEndColumn:v,selectionEndRow:m}),this.moveViewToCell(d.column,d.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{metricCalculator:n}=this,{bottomVisible:r,rightVisible:a,topVisible:s,leftVisible:l}=this.metrics,o=this.getMetricState(this.state),{top:d,left:h,topOffset:c,leftOffset:v}=this.state;t!=null&&!j.isFloatingRow(t,this.metrics)&&(t<s?(d=n.getTopForTopVisible(o,t),c=0):t>r&&(d=n.getTopForBottomVisible(o,t),c=0)),e!=null&&!j.isFloatingColumn(e,this.metrics)&&(e<l?(h=n.getLeftForLeftVisible(o,e),v=0):e>a&&(h=n.getLeftForRightVisible(o,e),v=0)),this.setViewState({top:d,left:h,topOffset:c,leftOffset:v})}setViewState(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!this.metrics)throw new Error("metrics not set");var{isStickyBottom:n,isStickyRight:r}=this.props,{top:a,left:s}=e,{lastTop:l,lastLeft:o,hasVerticalBar:d,hasHorizontalBar:h}=this.metrics;a!=null&&d&&this.setState({isStuckToBottom:n&&a>=l}),s!=null&&h&&this.setState({isStuckToRight:r&&s>=o}),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,{model:s}=this.props;if(!Oe(s))throw new Error("model is not editable");var l=this.getModelColumn(e),o=this.getModelRow(t),d={column:e,row:t,selectionRange:r,value:a!==void 0?a:s.editValueForCell(l,o),isQuickEdit:n};this.setState({editingCell:d,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,n){var{model:r}=this.props,a=this.getModelColumn(e),s=this.getModelRow(t);return Oe(r)&&r.isValidForCell(a,s,n)}pasteValue(e){var t=this;return Qs(function*(){var{model:n}=t.props,{movedColumns:r,movedRows:a,selectedRanges:s}=t.state;try{if(ni(n),!n.isEditable||!s.every(C=>n.isEditableRange(C)))throw new oi("Can't paste in to read-only area.");if(s.length<=0)throw new oi("Select an area to paste to.");if(typeof e=="string"){var l=[],o=j.getModelRanges(s,r,a);K.forEachCell(o,(C,S)=>{l.push({column:C,row:S,text:e})}),yield n.setValues(l);return}var d=e.length,h=e[0].length,{columnCount:c,rowCount:v}=n,m=s;m.every(C=>{var S,f;return K.cellCount([C])===1&&((S=C.startColumn)!==null&&S!==void 0?S:0)+h<=c&&((f=C.startRow)!==null&&f!==void 0?f:0)+d<=v})&&(m=m.map(C=>{var S,f;return new K(C.startColumn,C.startRow,((S=C.startColumn)!==null&&S!==void 0?S:0)+h-1,((f=C.startRow)!==null&&f!==void 0?f:0)+d-1)}),t.setSelectedRanges(m));var p=[];m.forEach(C=>{for(var S=0;S<h;S+=1)for(var f=0;f<d;f+=1){var b,y;p.push({column:((b=C.startColumn)!==null&&b!==void 0?b:0)+S,row:((y=C.startRow)!==null&&y!==void 0?y:0)+f,text:e[f][S]})}}),yield n.setValues(p)}catch(C){var{onError:g}=t.props;g(C instanceof Error?C:new Error("".concat(C)))}})()}setValueForCell(e,t,n){var{model:r}=this.props;ni(r);var a=this.getModelColumn(e),s=this.getModelRow(t);return r.isValidForCell(a,s,n)?(r.setValueForCell(a,s,n),!0):!1}setValueForRanges(e,t){var{model:n}=this.props,{movedColumns:r,movedRows:a}=this.state,s=j.getModelRanges(e,r,a);Oe(n)&&n.setValueForRanges(s,t)}isSelected(e,t){for(var{selectedRanges:n}=this.state,r=0;r<n.length;r+=1){var a,s,l=n[r],o=l.startRow===null||l.startRow<=e&&e<=((a=l.endRow)!==null&&a!==void 0?a:0),d=l.startColumn===null||l.startColumn<=t&&t<=((s=l.endColumn)!==null&&s!==void 0?s:0);if(o&&d)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==Ne.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=Ne.getCursorClassName(e),this.documentCursor!=null&&document.documentElement.classList.add(this.documentCursor),document.documentElement.classList.add("grid-block-events"))}removeDocumentCursor(){this.documentCursor!=null&&(document.documentElement.classList.remove(this.documentCursor),document.documentElement.classList.remove("grid-block-events"),this.documentCursor=null)}startDragTimer(e){this.stopDragTimer();var t=new MouseEvent("custom",e.nativeEvent);this.dragTimer=setTimeout(()=>{this.handleMouseDrag(t)},Ne.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.updateMetrics(),!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{renderer:e,canvasContext:t,renderState:n}=this;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 s=r[a];if(s.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 s=n[a],l=s[e]!=null&&s[e](t,this);if(l!==!1){var o,d;s.cursor!=null&&({cursor:r}=s);var h=l;(!((o=h==null?void 0:h.stopPropagation)!==null&&o!==void 0)||o)&&t.stopPropagation(),(!((d=h==null?void 0:h.preventDefault)!==null&&d!==void 0)||d)&&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),s=this.getMouseHandlers(),l=null,o=0;o<s.length;o+=1){var d=s[o],h=d[e]!=null&&d[e](a,this,t);if(h!==!1){var c,v;d.cursor!=null&&({cursor:l}=d,r&&this.addDocumentCursor(l));var m=h;(!((c=m==null?void 0:m.stopPropagation)!==null&&c!==void 0)||c)&&t.stopPropagation(),(!((v=m==null?void 0:m.preventDefault)!==null&&v!==void 0)||v)&&t.preventDefault();break}}if(this.setState({cursor:l}),n){var{x:p,y:g}=a;this.setState({mouseX:p,mouseY:g})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onUp",e,!1),this.stopDragTimer(),this.removeDocumentCursor())}handleResize(){if(this.updateCanvas(),!this.metrics)throw new Error("metrics not set");this.forceUpdate()}handleWheel(e){if(this.notifyMouseHandlers("onWheel",e),!e.defaultPrevented){var{metricCalculator:t,metrics:n}=this,r=this.getMetricState();if(!n)throw new Error("metrics not set");for(var{lastTop:a,lastLeft:s,columnCount:l,rowCount:o,scrollableContentWidth:d,scrollableViewportWidth:h,scrollableContentHeight:c,scrollableViewportHeight:v,hasHorizontalBar:m,hasVerticalBar:p}=n,{top:g,left:C,topOffset:S,leftOffset:f}=n,b=this.getTheme(),{deltaX:y,deltaY:E}=j.getScrollDelta(e,n.barWidth,n.barHeight,n.rowHeight,n.rowHeight);m&&y!==0;){if(f+=y,y=0,l>1){if(f>0&&C>=s||f<0&&C<=0){f=0;break}}else{if(f<=0){f=0;break}var T=d-h;if(f>=T){f=T;break}}if(f>0){var O,D=(O=n.allColumnWidths.get(C))!==null&&O!==void 0?O:t.getVisibleColumnWidth(C,r);f>=D?(y=f-D,f=0,C+=1):b.scrollSnapToColumn&&l>1&&(f=0,C+=1)}else if(f<0){var A,P=(A=n.allColumnWidths.get(C-1))!==null&&A!==void 0?A:t.getVisibleColumnWidth(C-1,r);Math.abs(f)<=P&&b.scrollSnapToColumn&&l>1?(f=0,C-=1):(y=f+P,f=0,C-=1)}}for(;p&&E!==0;){if(S+=E,E=0,o>1){if(S>0&&g>=a||S<0&&g<=0){S=0;break}}else{if(S<=0){S=0;break}var Z=c-v;if(S>=Z){S=Z;break}}if(S>0){var M,Y=(M=n.allRowHeights.get(g))!==null&&M!==void 0?M:t.getVisibleRowHeight(g,r);S>=Y?(E=S-Y,S=0,g+=1):b.scrollSnapToRow&&o>1&&(S=0,g+=1)}else if(S<0){var he,ue=(he=n.allRowHeights.get(g-1))!==null&&he!==void 0?he:t.getVisibleRowHeight(g-1,r);Math.abs(S)<=ue&&b.scrollSnapToRow&&o>1?(S=0,g-=1):(E=S+ue,S=0,g-=1)}}this.setViewState({top:g,left:C,leftOffset:f,topOffset:S}),e.stopPropagation(),e.preventDefault()}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:n}=t;try{return si(n),{editingCell:Pe(Pe({},n),{},{value:e})}}catch(a){var{onError:r}=this.props;return r(a instanceof Error?a:new Error("".concat(a))),null}})}handleEditCellCommit(e){var{direction:t=Me.DOWN,fillRange:n=!1}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{editingCell:r,selectedRanges:a}=this.state;if(!r)throw new Error("editingCell not set");var{column:s,row:l}=r;if(!this.isValidForCell(s,l,e)){t===null&&this.setState({editingCell:null});return}n?this.setValueForRanges(a,e):this.setValueForCell(s,l,e),t!==null&&this.moveCursorInDirection(t),this.setState({editingCell:null}),this.focus()}renderInputField(){var{model:e}=this.props,{editingCell:t}=this.state,{metrics:n}=this;if(t==null||n==null||!Oe(e))return null;var{selectionRange:r,value:a,isQuickEdit:s}=t,{column:l,row:o}=t,{scrollX:d,gridX:h,gridY:c,allColumnXs:v,allRowYs:m,allColumnWidths:p,allRowHeights:g}=n,{activeCellSelectionBorderWidth:C}=this.getTheme(),S=v.get(l),f=m.get(o),b=p.get(l),y=g.get(o),E=h+(S??0)<=0&&d<=0?C:0,T=S!=null&&f!=null&&b!=null&&y!=null?{position:"absolute",left:h+S+E,top:c+f,width:b-E,height:y}:{opacity:0},O,D;try{O=this.getModelColumn(l),D=this.getModelRow(o)}catch{return null}var A=O!=null&&D!=null?{textAlign:e.textAlignForCell(O,D)}:void 0,P=O!=null&&D!=null?e.isValidForCell(O,D,a):!1;return u.jsx("div",{style:T,children:u.jsx(En,{selectionRange:r,className:Q({error:!P}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:s,style:A,value:a},"".concat(l,",").concat(o))})}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{cursorColumn:e,cursorRow:t,draggingColumn:n,draggingColumnSeparator:r,draggingRow:a,draggingRowOffset:s,draggingRowSeparator:l,editingCell:o,isDraggingHorizontalScrollBar:d,isDraggingVerticalScrollBar:h,isDragging:c,mouseX:v,mouseY:m,selectedRanges:p}=this.state,{model:g,stateOverride:C}=this.props,{metrics:S}=this,f=this.canvasContext,b=this.getTheme(),y=this.canvas.clientWidth,E=this.canvas.clientHeight;return V(S),this.renderState=Pe({width:y,height:E,context:f,theme:b,model:g,metrics:S,mouseX:v,mouseY:m,selectedRanges:p,draggingColumn:n,draggingColumnSeparator:r,draggingRow:a,draggingRowOffset:s,draggingRowSeparator:l,editingCell:o,isDraggingHorizontalScrollBar:d,isDraggingVerticalScrollBar:h,isDragging:c,cursorColumn:e,cursorRow:t},C),this.renderState}render(){var{children:e}=this.props,{cursor:t}=this.state;return u.jsxs("div",{className:"grid-wrapper",ref:this.canvasWrapper,children:[u.jsx("canvas",{className:Q("grid-canvas",Ne.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]})}}re(Ne,"contextType",Ys);re(Ne,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:ne,mouseHandlers:ne,movedColumns:ne,movedRows:ne,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:i=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:i=>{},onTokenClicked:i=>{Ii(i)&&window.open(i.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});re(Ne,"pixelsPerLine",100/3);re(Ne,"dragTimeout",1e3);re(Ne,"getTheme",Tt((i,e)=>Pe(Pe(Pe({},Ua),i),e)));function fi(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 Pt=be.module("AdvancedFilterCreatorFilterItem");class Rn extends w.PureComponent{static getLabelForFilter(e,t){try{if(N.isNumberType(e)||N.isCharType(e))return ga(t);if(N.isTextType(e))return fa(t);if(N.isDateType(e))return pa(t);if(N.isBooleanType(e))return Ca(t);throw new Error("Unrecognized column type: ".concat(e))}catch(n){return Pt.warn(n),""}}constructor(e){super(e),fi(this,"typeDropdown",void 0),fi(this,"getCachedIsValid",Tt((a,s,l,o,d)=>{try{return!l||d.makeAdvancedValueFilter(a,s,l,o)!=null}catch{return!1}})),this.handleDelete=this.handleDelete.bind(this),this.handleTypeChange=this.handleTypeChange.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.typeDropdown=null;var{value:t="",filterTypes:n,selectedType:r=n[0]}=e;this.state={selectedType:r,value:t}}componentDidMount(){var e;(e=this.typeDropdown)===null||e===void 0||e.focus()}componentDidUpdate(e){var{value:t,selectedType:n}=this.props;n!==void 0&&e.selectedType!==n&&this.setState({selectedType:n}),t!==void 0&&e.value!==t&&this.setState({value:t})}handleTypeChange(e){var t=e;Pt.debug2("typeChange",t),this.setState({selectedType:t});var{onChange:n}=this.props,{value:r}=this.state;r!=null&&r.length>0&&n(t,r)}handleValueChange(e){Pt.debug2("valueChange");var{value:t}=e.target;this.setState({value:t});var{onChange:n}=this.props,{selectedType:r}=this.state;r!=null&&n(r,t)}handleDelete(){Pt.debug("delete");var{onDelete:e}=this.props;e()}render(){for(var{column:e,filterTypes:t,formatter:n,tableUtils:r}=this.props,{selectedType:a,value:s}=this.state,l=!N.isBooleanType(e.type),o=[],d=this.getCachedIsValid(e,a,s,n.timeZone,r),h=0;h<t.length;h+=1){var c=t[h],v=Rn.getLabelForFilter(e.type,c),m=u.jsx("option",{value:c,children:v},c);o.push(m)}return u.jsx("div",{className:"advanced-filter-creator-filter-item",children:u.jsxs("div",{className:"form-row",children:[u.jsx("div",{className:"form-group col",children:u.jsx(st,{className:"form-control",value:a,onChange:this.handleTypeChange,ref:p=>{this.typeDropdown=p},children:o})}),l&&u.jsx("div",{className:"form-group col",children:u.jsx("div",{className:"input-group",children:u.jsx("input",{type:"text",className:Q("form-control",{error:!d}),placeholder:"Enter value",value:s,onChange:this.handleValueChange})})}),u.jsx("div",{className:"form-group col-1 px-0",children:u.jsx($,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:pn,tooltip:"Remove Filter"})})]})})}}function fn(i,e,t){return(e=eo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function eo(i){var e=to(i,"string");return typeof e=="symbol"?e:e+""}function to(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 pi=be.module("AdvancedFilterCreatorSelectValueList");class Rt extends w.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),fn(this,"dh",void 0),fn(this,"list",void 0),this.handleSelect=this.handleSelect.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this);var{selectedValues:t,dh:n}=this.props;this.dh=n,this.list=null,this.state={itemCount:0,items:[],offset:0,selectedValues:t,isLoading:!0}}componentDidMount(){var{table:e}=this.props;e&&this.startListening(e)}componentDidUpdate(e){var{filters:t,invertSelection:n,selectedValues:r,table:a}=this.props;e.table!==a&&(e.table&&this.stopListening(e.table),a&&this.startListening(a),this.resetViewport()),e.invertSelection!==n&&this.setState({selectedValues:[]},this.handleSelectionUpdate),e.selectedValues!==r&&this.setState({selectedValues:r},this.handleSelectionUpdate),e.filters!==t&&(a==null||a.applyFilter(t),this.resetViewport())}componentWillUnmount(){var{table:e}=this.props;e&&this.stopListening(e)}handleSelect(e,t){var{invertSelection:n}=this.props,{selectedValues:r}=this.state;r=[...r];var a=Rt.indexOf(t,r);a>=0?r.splice(a,1):r.push(t);var s=a<0;n&&(s=!s);var{offset:l}=this.state,{items:o}=this.state;o=[...o];var d=e-l;d>=0&&d<o.length&&(o[d].isSelected=s),this.setState({items:o,selectedValues:r});var{onChange:h}=this.props;h(r,n)}handleViewportChange(e,t){this.updateViewport(e,t)}handleSelectionUpdate(){this.updateItemSelection()}handleTableUpdate(e){var{table:t,formatter:n}=this.props;if(t){for(var r=e.detail,{offset:a}=r,s=[],l=t.columns[0],o=0;o<r.rows.length;o+=1){var d=r.rows[o],h=d.get(l),c=void 0;h==null?c=u.jsx("i",{className:"text-muted",children:"null"}):h===""?c=u.jsx("i",{className:"text-muted",children:"empty"}):c=n.getFormattedString(h,l.type,l.name);var v=this.isValueSelected(h);s.push({displayValue:c,value:h,isSelected:v})}pi.debug2("Received table update:",a,s.length);var m=t.size;this.setState({itemCount:m,items:s,offset:a,isLoading:!1})}}isValueSelected(e){var{invertSelection:t}=this.props,{selectedValues:n}=this.state,r=Rt.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{items:e}=this.state;e=[...e];for(var t=0;t<e.length;t+=1){var n=e[t],{value:r}=n;n.isSelected=this.isValueSelected(r)}this.setState({items:e})}updateViewport(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{table:r}=this.props;if(r!=null){n&&this.setState({isLoading:!0});var a=t-e+1,s=Math.max(0,e-a*3),l=Math.max(s,t+a*3);pi.debug2("Setting viewport",s,",",l),r.setViewport(s,l)}}render(){var{offset:e,isLoading:t,items:n,itemCount:r}=this.state;return u.jsxs("div",{className:"select-value-list-wrapper",children:[u.jsx(Va,{itemCount:r,items:n,offset:e,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:a=>{this.list=a}}),u.jsx(Sn,{in:t,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"loading-list",children:u.jsx(Gt,{className:"loading-spinner-large"})})})]})}}fn(Rt,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});function bt(i,e,t){return(e=no(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function no(i){var e=io(i,"string");return typeof e=="symbol"?e:e+""}function io(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 w.PureComponent{constructor(e){super(e),bt(this,"searchTablePromise",void 0),bt(this,"tableUtils",void 0),bt(this,"updateFilterTimer",void 0),this.handleSelectAllClick=this.handleSelectAllClick.bind(this),this.handleClearAllClick=this.handleClearAllClick.bind(this),this.handleListChange=this.handleListChange.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUpdateFilterTimeout=this.handleUpdateFilterTimeout.bind(this);var{dh:t,invertSelection:n,selectedValues:r}=e;this.tableUtils=new N(t),this.state={filters:[],invertSelection:n,selectedValues:r,searchText:""}}componentDidMount(){this.initSearchTable()}componentDidUpdate(e,t){var{invertSelection:n,selectedValues:r,table:a}=this.props;e.table!==a&&this.initSearchTable(),e.invertSelection!==n&&this.setState({invertSelection:n}),e.selectedValues!==r&&this.setState({selectedValues:r});var{table:s,searchText:l}=this.state;s!==t.table&&(t.table!=null&&t.table.close(),s!=null&&this.startUpdateFilterTimer()),l!==t.searchText&&this.startUpdateFilterTimer()}componentWillUnmount(){var{table:e}=this.state;e!=null&&e.close(),this.searchTablePromise=void 0,this.stopUpdateFilterTimer()}getColumnName(){var{table:e}=this.props;return e!=null?e.columns[0].name:""}getDisplayedValuesCount(){var{invertSelection:e,selectedValues:t,table:n}=this.state;return n==null?null:e?n.totalSize-t.length:t.length}getDisplayedValueText(){var e=this.getDisplayedValuesCount(),{table:t}=this.state,{formatter:n}=this.props;if(e!=null&&t!=null){var r=n.getFormattedString(e,"long"),a=n.getFormattedString(t.totalSize,"long"),s="";return e<1e6&&(s="Displaying "),"".concat(s).concat(r," of ").concat(a)}return null}initSearchTable(){var{table:e}=this.props;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{onChange:n}=this.props;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{onChange:n}=this.props;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{table:e,searchText:t}=this.state,{timeZone:n}=this.props,{tableUtils:r}=this,a=e==null?void 0:e.columns[0],s=[];if(a!=null){var l;if(t.length>0){var o=null;N.isCharType(a.type)?o=r.makeQuickFilter(a,t):N.isTextType(a.type)?o=r.makeQuickFilter(a,"~".concat(t),n):o=r.makeQuickFilter(a,">=".concat(t),n),o!=null?s.push(o):l="Invalid search text"}this.setState({filters:s,error:l})}}render(){var{error:e,filters:t,invertSelection:n,selectedValues:r,searchText:a,table:s}=this.state,{dh:l,formatter:o,showSearch:d}=this.props,h=this.getColumnName(),c=this.getDisplayedValueText(),v=h?"Find ".concat(h,"..."):"";return u.jsxs("div",{className:"advanced-filter-creator-select-value",children:[u.jsxs("div",{className:d?"form-group":"",children:[u.jsx("label",{htmlFor:"advanced-filter-creator-select-value-input",children:"Select Values"}),d&&u.jsx("input",{type:"text",className:Q("form-control",{"is-invalid":e!=null}),id:"advanced-filter-creator-select-value-input",placeholder:v,value:a,onChange:this.handleSearchChange})]}),u.jsx(Rt,{dh:l,table:s,filters:t,invertSelection:n,selectedValues:r,formatter:o,onChange:this.handleListChange}),u.jsxs("div",{className:"advanced-filter-creator-select-meta-row",children:[u.jsxs("div",{children:[u.jsx($,{kind:"ghost",onClick:this.handleSelectAllClick,children:"Select All"}),u.jsx($,{kind:"ghost",onClick:this.handleClearAllClick,children:"Clear"})]}),u.jsx(Sn,{in:c!=null,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"row-count-info",children:c})})]})]})}}bt(Nt,"searchDebounceTime",250);bt(Nt,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});function at(i,e,t){return(e=ro(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function ro(i){var e=ao(i,"string");return typeof e=="symbol"?e:e+""}function ao(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 mt=be.module("AdvancedFilterCreator");class _e extends w.PureComponent{static makeFilterItem(){return{key:cn()}}constructor(e){var t,n;super(e),at(this,"focusTrapContainer",void 0),at(this,"debounceTimeout",void 0),at(this,"valuesTablePromise",void 0),at(this,"getFilterTypes",Tt(m=>N.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=Le.createRef();var{model:r,column:a,options:s}=e,{filterOperators:l,invertSelection:o,selectedValues:d}=s,h=(t=(n=s.filterItems)===null||n===void 0?void 0:n.map(m=>{var{selectedType:p,value:g}=m;return{selectedType:p,value:g,key:cn()}}))!==null&&t!==void 0?t:[];h.length===0&&h.push(_e.makeFilterItem()),l==null&&(l=[]),o==null&&(o=!0),d==null&&(d=[]);var c=r.getColumnIndexByName(a.name);V(c);var v=r.isColumnSortable(c);this.state={filterItems:h,filterOperators:l,invertSelection:o,selectedValues:d,valuesTableError:null,valuesTable:void 0,isSortable:v}}componentDidMount(){this.initValuesTable()}componentWillUnmount(){this.debounceTimeout!=null&&(clearTimeout(this.debounceTimeout),this.sendUpdate()),this.valuesTablePromise!=null&&this.valuesTablePromise.cancel()}getFilterChangeHandler(e){return this.handleFilterChange.bind(this,e)}getFilterDeleteHandler(e){return this.handleFilterDelete.bind(this,e)}initValuesTable(){var{model:e,column:t}=this.props;if(!e.isValuesTableAvailable){mt.debug("No values table for this model, just ignore");return}this.valuesTablePromise=N.makeCancelableTablePromise(e.valuesTable(t)),this.valuesTablePromise.then(n=>{var r;if(!((r=n.columns[0].isSortable)!==null&&r!==void 0)||r){var a=n.columns[0].sort().asc();n.applySort([a])}this.setState({valuesTable:n})}).catch(n=>{Ae.isCanceled(n)||(mt.error("Unable to open values table",n),this.setState({valuesTableError:n}))})}handleFocusTrapEnd(){var e,t;((e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelector("button,select,input,textarea")).focus()}handleFocusTrapStart(){var e,t,n=(e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelectorAll("button,select,input,textarea");if(n&&n.length>0){var r=n[n.length-1];r.focus()}}handleAddAnd(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(_e.makeFilterItem()),t=t.concat(ct.and),this.setState({filterItems:e,filterOperators:t})}handleAddOr(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(_e.makeFilterItem()),t=t.concat(ct.or),this.setState({filterItems:e,filterOperators:t})}handleChangeFilterOperator(e,t){var{filterOperators:n}=this.state;n=[...n],Sa(t),n[e]=t,this.setState({filterOperators:n}),this.startUpdateTimer()}handleFilterChange(e,t,n){var{filterItems:r}=this.state;r=[...r];var{key:a}=r[e];r[e]={key:a,selectedType:t,value:n},this.setState({filterItems:r}),this.startUpdateTimer()}handleFilterDelete(e){var{filterItems:t,filterOperators:n}=this.state;t=[...t],n=[...n],e<t.length&&t.splice(e,1),e<n.length?n.splice(e,1):e===n.length&&n.splice(n.length-1,1),t.length===0&&t.push(_e.makeFilterItem()),this.setState({filterItems:t,filterOperators:n}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){mt.debug("Resetting Advanced Filter"),this.setState({filterItems:[_e.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=Et.isModifierKeyDown(e);this.sortTable(N.sortDirection.descending,t)}handleSortUp(e){var t=Et.isModifierKeyDown(e);this.sortTable(N.sortDirection.ascending,t)}handleSubmit(e){mt.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){mt.debug("Submitting and Closing Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate();var{onDone:t}=this.props;t(),e.preventDefault()}handleUpdateTimeout(){this.debounceTimeout=void 0,this.sendUpdate()}shouldShowAddFilter(){var{filterItems:e}=this.state;if(e.length===0)return!1;var t=e[e.length-1],{selectedType:n,value:r}=t;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,{column:n,onSortChange:r}=this.props,{isSortable:a}=this.state;a&&r(n,e,t)}startUpdateTimer(){this.stopUpdateTimer(),this.debounceTimeout=setTimeout(this.handleUpdateTimeout,_e.debounceFilterUpdate)}stopUpdateTimer(){this.debounceTimeout!==void 0&&(clearTimeout(this.debounceTimeout),this.debounceTimeout=void 0)}sendUpdate(){var{filterItems:e,filterOperators:t,invertSelection:n,selectedValues:r}=this.state,{column:a,onFilterChange:s,model:l,tableUtils:o}=this.props,{formatter:d}=l,h=e.filter(p=>{var{selectedType:g,value:C}=p;return g!=null&&C!=null&&C!==""}),c=t.filter((p,g)=>p!=null&&e[g].selectedType!=null&&e[g].value!=null&&e[g].value!=="").slice(0,h.length-1),v={filterItems:h,filterOperators:c,invertSelection:n,selectedValues:r},m=o.makeAdvancedFilter(a,v,d.timeZone);s(a,m,v)}render(){var e=this,{column:t,model:n,sortDirection:r,formatter:a,tableUtils:s}=this.props,{filterItems:l,filterOperators:o,invertSelection:d,selectedValues:h,valuesTable:c,valuesTableError:v,isSortable:m}=this.state,{dh:p,isValuesTableAvailable:g}=n,C=N.isBooleanType(t.type),S=N.isDateType(t.type),f=this.getFilterTypes(t.type),b=t.type.substring(t.type.lastIndexOf(".")+1),y=[];if(!C&&f.length)for(var E=function(P){var Z=l[P],{key:M,selectedType:Y,value:he}=Z,ue=u.jsx(Rn,{column:t,filterTypes:f,onChange:e.getFilterChangeHandler(P),onDelete:e.getFilterDeleteHandler(P),selectedType:Y,value:he,formatter:a,tableUtils:s},M);if(y.push(ue),P<o.length){var we=o[P],fe=we===ct.and,Ee=u.jsxs("div",{className:"form-row justify-content-end advanced-filter-creator-filter-operator",children:[u.jsx($,{kind:"ghost",className:Q("filter-operator",{active:fe}),onClick:()=>e.handleChangeFilterOperator(P,ct.and),children:"AND"}),u.jsx($,{kind:"ghost",className:Q("filter-operator",{active:!fe}),onClick:()=>e.handleChangeFilterOperator(P,ct.or),children:"OR"})]},"filterOperator".concat(M));y.push(Ee)}},T=0;T<l.length;T+=1)E(T);var O=this.shouldShowAddFilter(),D=u.jsxs("div",{className:Q("form-row justify-content-end add-filter-item",{hidden:!O}),children:[u.jsx("span",{className:"text-muted",children:u.jsx(J,{icon:Cn})}),u.jsx($,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!O,tooltip:"Add filter with AND",children:"AND"}),u.jsx($,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!O,tooltip:"Add filter with OR",children:"OR"})]},"addFilterItem");return y.push(D),u.jsxs("div",{className:"advanced-filter-creator",role:"presentation",children:[u.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),u.jsxs("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer,children:[u.jsxs("div",{className:"title-bar",children:[u.jsx("h6",{className:"advanced-filter-title",children:"Advanced Filters"}),u.jsxs("div",{className:"advanced-filter-menu-buttons",children:[u.jsx($,{kind:"ghost",className:Q("sort-operator",{active:r===N.sortDirection.descending}),onClick:this.handleSortDown,icon:Zn,tooltip:m?"Sort ".concat(t.name," Descending"):"Not sortable",disabled:!m}),u.jsx($,{kind:"ghost",className:Q("sort-operator",{active:r===N.sortDirection.ascending}),onClick:this.handleSortUp,icon:u.jsx(J,{icon:Zn,rotation:180}),tooltip:m?"Sort ".concat(t.name," Ascending"):"Not sortable",disabled:!m})]})]}),u.jsx("hr",{}),u.jsxs("div",{className:"advanced-filter-column-name",children:[t.name," ",u.jsxs("span",{className:"column-type",children:["(",b,")"]})]}),y,g&&v==null&&u.jsxs(u.Fragment,{children:[!C&&u.jsx("hr",{}),u.jsx("div",{className:"form-group",children:u.jsx(Nt,{dh:p,table:c,onChange:this.handleSelectValueChange,invertSelection:d,selectedValues:h,formatter:a,showSearch:!S,timeZone:a.timeZone})})]}),u.jsxs("div",{className:"form-row justify-content-end",children:[u.jsx($,{kind:"secondary",className:"mr-2",onClick:this.handleReset,children:"Reset"}),u.jsx($,{kind:"primary",onClick:this.handleDone,children:"Done"})]})]}),u.jsx("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd})]})}}at(_e,"debounceFilterUpdate",250);at(_e,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});function so(i,e){var t=uo(i);if(t!==void 0){var n=fo(i);return"".concat(n," ? ").concat(t," : ").concat(e)}}function oo(i,e){return i.Column.formatRowColor(e)}function lo(i,e){return i.formatColor(e)}var wt=be.module("ConditionalFormattingUtils"),ye;(function(i){i.CONDITIONAL="conditional",i.ROWS="rows"})(ye||(ye={}));var I;(function(i){i.IS_EQUAL="is-equal",i.IS_NOT_EQUAL="is-not-equal",i.IS_BETWEEN="is-between",i.GREATER_THAN="greater-than",i.GREATER_THAN_OR_EQUAL="greater-than-or-equal",i.LESS_THAN="less-than",i.LESS_THAN_OR_EQUAL="less-than-or-equal",i.IS_NULL="is-null",i.IS_NOT_NULL="is-not-null"})(I||(I={}));var H;(function(i){i.IS_EXACTLY="is-exactly",i.IS_NOT_EXACTLY="is-not-exactly",i.CONTAINS="contains",i.DOES_NOT_CONTAIN="does-not-contain",i.STARTS_WITH="starts-with",i.ENDS_WITH="ends-with",i.IS_NULL="is-null",i.IS_NOT_NULL="is-not-null"})(H||(H={}));var U;(function(i){i.IS_EXACTLY="is-exactly",i.IS_NOT_EXACTLY="is-not-exactly",i.IS_BEFORE="is-before",i.IS_BEFORE_OR_EQUAL="is-before-or-equal",i.IS_AFTER="is-after",i.IS_AFTER_OR_EQUAL="is-after-or-equal",i.IS_NULL="is-null",i.IS_NOT_NULL="is-not-null"})(U||(U={}));var le;(function(i){i.IS_TRUE="is-true",i.IS_FALSE="is-false",i.IS_NULL="is-null",i.IS_NOT_NULL="is-not-null"})(le||(le={}));var ae;(function(i){i.IS_EQUAL="is-equal",i.IS_NOT_EQUAL="is-not-equal",i.IS_NULL="is-null",i.IS_NOT_NULL="is-not-null"})(ae||(ae={}));var W;(function(i){i.NO_FORMATTING="no-formatting",i.POSITIVE="positive",i.NEGATIVE="negative",i.WARN="warn",i.NEUTRAL="neutral",i.ACCENT_1="accent-1",i.ACCENT_2="accent-2",i.CUSTOM="custom"})(W||(W={}));function Ci(i){switch(i){case W.NO_FORMATTING:return"No formatting";case W.POSITIVE:return"Positive";case W.NEGATIVE:return"Negative";case W.WARN:return"Warn";case W.NEUTRAL:return"Neutral";case W.ACCENT_1:return"Accent 1";case W.ACCENT_2:return"Accent 2";case W.CUSTOM:return"Custom..."}}function Bt(i){var{type:e,customConfig:t}=i;switch(e){case W.NO_FORMATTING:return;case W.POSITIVE:return"#9fde6f";case W.NEGATIVE:return"#ff6087";case W.WARN:return"#f67f40";case W.NEUTRAL:return"#ffd95c";case W.ACCENT_1:return"#78dce8";case W.ACCENT_2:return"#ab9bf5";case W.CUSTOM:return t==null?void 0:t.background;default:return}}function Ht(i){var{type:e,customConfig:t}=i;switch(e){case W.NO_FORMATTING:return;case W.POSITIVE:return"#526a3f";case W.NEGATIVE:return"#802f44";case W.WARN:return"#663318";case W.NEUTRAL:return"#63562b";case W.ACCENT_1:return"#3f6469";case W.ACCENT_2:return"#554d72";case W.CUSTOM:return t==null?void 0:t.color;default:return}}function uo(i){var e=Ht(i.style),t=Bt(i.style);if(!(e===void 0||t===void 0))return"bgfg(`".concat(t,"`, `").concat(e,"`)")}function ho(i){var{column:e,value:t,start:n,end:r}=i;return No(e.name,i.condition,t,n,r)}function co(i){var{column:e,value:t}=i;return Fo(e.name,i.condition,t)}function mo(i){var{column:e,value:t}=i;return xo(e.name,i.condition,t)}function vo(i){var{column:e}=i;return Do(e.name,i.condition)}function go(i){var{column:e,value:t}=i;return Ao(e.name,i.condition,t)}function fo(i){var{column:e}=i;if(N.isNumberType(e.type))return ho(i);if(N.isCharType(e.type))return go(i);if(N.isStringType(e.type))return co(i);if(N.isDateType(e.type))return mo(i);if(N.isBooleanType(e.type))return vo(i);throw new Error("Invalid column type")}function po(i){switch(i){case I.IS_EQUAL:return"is equal to";case I.IS_NOT_EQUAL:return"is not equal to";case I.IS_BETWEEN:return"is between";case I.GREATER_THAN:return"greater than";case I.GREATER_THAN_OR_EQUAL:return"greater than or equal to";case I.LESS_THAN:return"less than";case I.LESS_THAN_OR_EQUAL:return"less than or equal to";case I.IS_NULL:return"is null";case I.IS_NOT_NULL:return"is not null"}}function Co(i){switch(i){case H.IS_EXACTLY:return"is exactly";case H.IS_NOT_EXACTLY:return"is not exactly";case H.CONTAINS:return"contains";case H.DOES_NOT_CONTAIN:return"does not contain";case H.STARTS_WITH:return"starts with";case H.ENDS_WITH:return"ends with";case H.IS_NULL:return"is null";case H.IS_NOT_NULL:return"is not null"}}function So(i){switch(i){case U.IS_EXACTLY:return"is";case U.IS_NOT_EXACTLY:return"is not";case U.IS_BEFORE:return"is before";case U.IS_BEFORE_OR_EQUAL:return"is before or equal";case U.IS_AFTER:return"is after";case U.IS_AFTER_OR_EQUAL:return"is after or equal";case U.IS_NULL:return"is null";case U.IS_NOT_NULL:return"is not null"}}function bo(i){switch(i){case le.IS_TRUE:return"is true";case le.IS_FALSE:return"is false";case le.IS_NULL:return"is null";case le.IS_NOT_NULL:return"is not null"}}function wo(i){switch(i){case ae.IS_EQUAL:return"is";case ae.IS_NOT_EQUAL:return"is not";case ae.IS_NULL:return"is null";case ae.IS_NOT_NULL:return"is not null"}}function Bi(i){if(N.isNumberType(i))return I.IS_EQUAL;if(N.isCharType(i))return ae.IS_EQUAL;if(N.isStringType(i))return H.IS_EXACTLY;if(N.isDateType(i))return U.IS_EXACTLY;if(N.isBooleanType(i))return le.IS_TRUE;throw new Error("Invalid column type")}function Hi(i){if(N.isCharType(i)||N.isStringType(i))return""}function Gi(i){var{condition:e,value:t,start:n,end:r}=i;return{condition:e,value:t,start:n,end:r}}function Kt(i){return{condition:Bi(i),value:Hi(i),start:void 0,end:void 0}}function Wi(){return{type:W.NO_FORMATTING}}function To(i){switch(i){case H.IS_EXACTLY:return"==";case H.IS_NOT_EXACTLY:return"!=";case H.CONTAINS:return"contains";case H.DOES_NOT_CONTAIN:return"does not contain";case H.STARTS_WITH:return"starts with";case H.ENDS_WITH:return"ends with";case H.IS_NULL:return"is null";case H.IS_NOT_NULL:return"is not null"}}function yo(i){switch(i){case U.IS_EXACTLY:return"==";case U.IS_NOT_EXACTLY:return"!=";case U.IS_BEFORE:return"<";case U.IS_BEFORE_OR_EQUAL:return"<=";case U.IS_AFTER:return">";case U.IS_AFTER_OR_EQUAL:return">=";case U.IS_NULL:return"is null";case U.IS_NOT_NULL:return"is not null"}}function Eo(i){switch(i){case le.IS_TRUE:return"is true";case le.IS_FALSE:return"is false";case le.IS_NULL:return"is null";case le.IS_NOT_NULL:return"is not null"}}function Ro(i){switch(i){case ae.IS_EQUAL:return"==";case ae.IS_NOT_EQUAL:return"!=";case ae.IS_NULL:return"is null";case ae.IS_NOT_NULL:return"is not null"}}function Oo(i){switch(i){case I.IS_EQUAL:return"==";case I.IS_NOT_EQUAL:return"!=";case I.IS_BETWEEN:return"==";case I.GREATER_THAN:return">";case I.GREATER_THAN_OR_EQUAL:return">=";case I.LESS_THAN:return"<";case I.LESS_THAN_OR_EQUAL:return"<=";case I.IS_NULL:return"is null";case I.IS_NOT_NULL:return"is not null"}}function No(i,e,t,n,r){switch(e){case I.IS_EQUAL:return"".concat(i," == ").concat(t);case I.IS_NOT_EQUAL:return"".concat(i," != ").concat(t);case I.IS_BETWEEN:return"".concat(i," > ").concat(n," && ").concat(i," < ").concat(r);case I.GREATER_THAN:return"".concat(i," > ").concat(t);case I.GREATER_THAN_OR_EQUAL:return"".concat(i," >= ").concat(t);case I.LESS_THAN:return"".concat(i," < ").concat(t);case I.LESS_THAN_OR_EQUAL:return"".concat(i," <= ").concat(t);case I.IS_NULL:return"".concat(i," == null");case I.IS_NOT_NULL:return"".concat(i," != null")}}function Fo(i,e,t){switch(e){case H.IS_EXACTLY:return"".concat(i,' == "').concat(t,'"');case H.IS_NOT_EXACTLY:return"".concat(i,' != "').concat(t,'"');case H.CONTAINS:return"".concat(i," != null && ").concat(i,'.contains("').concat(t,'")');case H.DOES_NOT_CONTAIN:return"".concat(i," != null && !").concat(i,'.contains("').concat(t,'")');case H.STARTS_WITH:return"".concat(i," != null && ").concat(i,'.startsWith("').concat(t,'")');case H.ENDS_WITH:return"".concat(i," != null && ").concat(i,'.endsWith("').concat(t,'")');case H.IS_NULL:return"".concat(i," == null");case H.IS_NOT_NULL:return"".concat(i," != null")}}function xo(i,e,t){switch(e){case U.IS_EXACTLY:return"".concat(i,' == convertDateTime("').concat(t,'")');case U.IS_NOT_EXACTLY:return"".concat(i," != convertDateTime(`").concat(t,"`)");case U.IS_BEFORE:return"".concat(i," < convertDateTime(`").concat(t,"`)");case U.IS_BEFORE_OR_EQUAL:return"".concat(i,' <= convertDateTime("').concat(t,'")');case U.IS_AFTER:return"".concat(i," > convertDateTime(`").concat(t,"`)");case U.IS_AFTER_OR_EQUAL:return"".concat(i," >= convertDateTime(`").concat(t,"`)");case U.IS_NULL:return"".concat(i," == null");case U.IS_NOT_NULL:return"".concat(i," != null")}}function Do(i,e){switch(e){case le.IS_TRUE:return"".concat(i," == true");case le.IS_FALSE:return"".concat(i," == false");case le.IS_NULL:return"".concat(i," == null");case le.IS_NOT_NULL:return"".concat(i," != null")}}function Ao(i,e,t){switch(e){case ae.IS_EQUAL:return"".concat(i," == '").concat(t,"'");case ae.IS_NOT_EQUAL:return"".concat(i," != '").concat(t,"'");case ae.IS_NULL:return"isNull(".concat(i,")");case ae.IS_NOT_NULL:return"!isNull(".concat(i,")")}}function _o(i,e){if(N.isNumberType(i))return Oo(e);if(N.isCharType(i))return Ro(e);if(N.isStringType(i))return To(e);if(N.isDateType(i))return yo(e);if(N.isBooleanType(i))return Eo(e);throw new Error("Invalid column type")}function Io(i,e,t){if(t===void 0)return wt.debug("no rules passed."),[];var n=[],r,a=new Map;return t.forEach(s=>{var l,{config:o,type:d}=s,{column:h}=o,c=e.find(S=>{var{name:f,type:b}=S;return f===h.name&&b===h.type});if(c===void 0){wt.debug("Column ".concat(h.name,":").concat(h.type," not found. Ignoring format rule."),o);return}var[v,m]=(l=d===ye.CONDITIONAL?a.get(c.name):r)!==null&&l!==void 0?l:["null",void 0],p=so(o,v);if(p===void 0){wt.debug("Ignoring format rule.",o);return}var g=m===void 0?-1:n.indexOf(m);g>-1&&n.splice(g,1);var C=d===ye.CONDITIONAL?lo(c,p):oo(i,p);n.push(C),d===ye.CONDITIONAL?a.set(c.name,[p,C]):r=[p,C]}),n}function Lo(i,e,t){switch(e){case U.IS_NULL:case U.IS_NOT_NULL:return!0;default:{var[n,...r]=(t??"").split(" "),a=r.join(" ");try{bn.parseDateTimeString(n)}catch{return wt.debug("Invalid datetime string",n),!1}try{i.i18n.TimeZone.getTimeZone(a)}catch{return wt.debug("Invalid timezone string",a),!1}return!0}}}function Po(i){var{type:e}=i;return N.isNumberType(e)||N.isCharType(e)||N.isStringType(e)||N.isDateType(e)||N.isBooleanType(e)}function $t(i){var{animation:e="iris-grid-bottom-bar-slide-up",children:t,className:n,isShown:r,onClick:a,onEntering:s,onEntered:l,onExiting:o,onExited:d}=i;return u.jsx(mn,{in:r,timeout:vn.transitionMs,classNames:e,onEntering:s,onEntered:l,onExiting:o,onExited:d,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:Q("iris-grid-bottom-bar",n),role:"presentation",onClick:a,onKeyPress:a,children:t})})}var Mo=3e3,ko=5;function jo(i){var{isSaving:e=!1,onSave:t,onDiscard:n,discardTooltip:r,saveTooltip:a,error:s,pendingDataErrors:l,pendingDataMap:o,onEntering:d,onEntered:h,onExiting:c,onExited:v}=i,[m,p]=w.useState(!1),[g,C]=w.useState(!1),S=w.useRef(),f=Pi(e),b=w.useMemo(()=>l.size===0?s:l.size<=ko?"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]);w.useEffect(function(){f!=null&&f&&!e&&b==null&&(p(!0),C(!0),S.current=setTimeout(()=>{p(!1)},Mo))},[b,e,f]),w.useEffect(function(){S.current&&o.size>0&&(clearTimeout(S.current),p(!1),C(!1))},[o]),w.useEffect(function(){return()=>S.current?clearTimeout(S.current):void 0},[]);var y=o.size,E;return e?E=u.jsx(Gt,{className:"loading-spinner-vertical-align"}):g&&(E=Mr),u.jsxs($t,{className:"pending-data-bottom-bar",isShown:y>0||m||b!=null,onEntering:d,onEntered:h,onExiting:c,onExited:()=>{C(!1),v&&v()},children:[b!=null&&b!==""&&u.jsxs("div",{className:"error-message",children:[u.jsx(J,{icon:Pr}),u.jsx("span",{children:"".concat(b)})]}),(b==null||b==="")&&u.jsx("div",{className:"status-message",children:y>0&&u.jsx("span",{children:"".concat(y," row").concat(y>1?"s":""," pending")})}),u.jsxs("div",{className:"buttons-container",children:[!e&&!g&&u.jsx($,{kind:"secondary",onClick:n,tooltip:r,children:"Discard"}),u.jsxs($,{kind:g?"success":"primary",onClick:t,icon:E,disabled:e||g||b!=null,tooltip:a,children:[e&&"Committing...",!e&&g&&"Success",!e&&!g&&"Commit"]})]})]})}function Si(i,e,t,n,r,a,s){try{var l=i[a](s),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function on(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function s(o){Si(a,n,r,s,l,"next",o)}function l(o){Si(a,n,r,s,l,"throw",o)}s(void 0)})}}function Be(i,e,t){return(e=Uo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Uo(i){var e=Vo(i,"string");return typeof e=="symbol"?e:e+""}function Vo(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 Ce=be.module("IrisGridCopyHandler");function Bo(i){return i.ranges!=null}function Ho(i){return i.columnIndex!=null}class B extends w.Component{static getStatusMessageText(e,t){switch(e){case B.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case B.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case B.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case B.COPY_STATES.FETCH_RANGES_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case B.COPY_STATES.FETCH_HEADER_IN_PROGRESS:return"Fetching header for clipboard...";case B.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case B.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case B.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case B.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),Be(this,"textData",void 0),Be(this,"hideTimer",void 0),Be(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:B.COPY_STATES.IDLE,buttonState:B.BUTTON_STATES.COPY,isShown:!1,rowCount:0}}componentDidMount(){var{copyOperation:e}=this.props;e!=null&&this.startCopy()}componentDidUpdate(e){var{copyOperation:t}=this.props;e.copyOperation!==t&&this.startCopy()}componentWillUnmount(){this.stopCopy()}startCopy(){Ce.debug2("startCopy"),this.stopCopy();var{copyOperation:e}=this.props;if(e==null){Ce.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var{error:t}=e;if(t!=null){Ce.debug("Showing copy error",t),this.setState({isShown:!0,copyState:B.COPY_STATES.DONE,error:t}),this.startHideTimer();return}if(this.setState({isShown:!0,error:void 0}),Bo(e)){var{ranges:n}=e,r=K.rowCount(n);if(this.setState({rowCount:r}),r>B.NO_PROMPT_THRESHOLD){this.setState({buttonState:B.BUTTON_STATES.COPY,copyState:B.COPY_STATES.CONFIRMATION_REQUIRED});return}}this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){Ce.debug2("handleBackgroundClick");var{copyState:e}=this.state;e===B.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){Ce.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){var e=this;return on(function*(){if(Ce.debug2("handleCopyClick"),e.textData!=null)try{yield e.copyText(e.textData),e.showCopyDone()}catch(t){Ce.error("Error copying text",t),e.setState({error:"Unable to copy. Verify your browser permissions."})}else e.startFetch()})()}handleHideTimeout(){Ce.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){var t=this;return on(function*(){Ce.debug2("copyText",e),t.textData=e,yield Mi(e)})()}showCopyDone(){this.setState({copyState:B.COPY_STATES.DONE}),this.startHideTimer()}startFetch(){var e=this;return on(function*(){e.stopFetch();var{model:t,copyOperation:n}=e.props;if(Ho(n)){var{columnIndex:r,columnDepth:a,movedColumns:s}=n;Ce.debug("startFetch copyHeader",r,a),e.setState({buttonState:B.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:B.COPY_STATES.FETCH_HEADER_IN_PROGRESS});var l=j.getModelIndex(r,s),o=t.textForColumnHeader(l,a);if(o===void 0){e.fetchPromise=void 0,e.setState({error:"Invalid column header selected.",copyState:B.COPY_STATES.DONE});return}e.fetchPromise=Ae.makeCancelable(o)}else{var{ranges:d,includeHeaders:h,userColumnWidths:c,movedColumns:v,formatValues:m}=n;Ce.debug("startFetch copyRanges",d),e.setState({buttonState:B.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:B.COPY_STATES.FETCH_RANGES_IN_PROGRESS});var p=oe.getHiddenColumns(c),g=j.getModelRanges(d,v);if(p.length>0){var C=p.map(K.makeColumn);g=K.subtractRangesFromRanges(g,C)}var S=m!=null&&m?(b,y)=>t.displayString(b,y.type,y.name):b=>"".concat(b);e.fetchPromise=Ae.makeCancelable(t.textSnapshot(g,h,S))}try{var f=yield e.fetchPromise;e.fetchPromise=void 0;try{yield e.copyText(f),e.showCopyDone()}catch(b){Ce.error("Error copying text",b),e.setState({buttonState:B.BUTTON_STATES.CLICK_TO_COPY,copyState:B.COPY_STATES.CLICK_REQUIRED})}}catch(b){b instanceof Ra?Ce.debug("User cancelled copy."):(Ce.error("Error fetching contents",b),e.fetchPromise=void 0,e.setState({buttonState:B.BUTTON_STATES.RETRY,copyState:B.COPY_STATES.FETCH_ERROR}))}})()}stopFetch(){this.fetchPromise&&(Ce.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,B.HIDE_TIMEOUT)}stopHideTimer(){this.hideTimer!=null&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}render(){var{onEntering:e,onEntered:t,onExiting:n,onExited:r}=this.props,{buttonState:a,copyState:s,isShown:l,rowCount:o,error:d}=this.state,h=s===B.COPY_STATES.DONE?"fade":"copy-slide-up",c=B.getCopyButtonText(a),v=d??B.getStatusMessageText(s,o),m=s!==B.COPY_STATES.DONE,p=a===B.BUTTON_STATES.FETCH_IN_PROGRESS,g=s===B.COPY_STATES.DONE;return u.jsxs($t,{animation:h,isShown:l,className:Q("iris-grid-copy-handler",{"copy-done":g}),onClick:this.handleBackgroundClick,onEntering:e,onEntered:t,onExiting:n,onExited:r,children:[u.jsx("div",{className:"status-message",children:u.jsx("span",{children:v})}),u.jsx(Sn,{in:m,mountOnEnter:!0,unmountOnExit:!0,children:u.jsxs("div",{className:"buttons-container",children:[u.jsx("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick,children:"Cancel"}),u.jsxs($,{kind:p?"tertiary":"primary",className:Q("btn-copy",{"btn-spinner":p}),onClick:this.handleCopyClick,disabled:p,children:[p&&u.jsx(Gt,{className:"loading-spinner-vertical-align"}),c]})]})})]})}}Be(B,"NO_PROMPT_THRESHOLD",1e4);Be(B,"HIDE_TIMEOUT",3e3);Be(B,"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"});Be(B,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});Be(B,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});function Ut(i,e,t){return(e=Go(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Go(i){var e=Wo(i,"string");return typeof e=="symbol"?e:e+""}function Wo(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 Ki extends w.PureComponent{constructor(e){super(e),Ut(this,"inputField",void 0),Ut(this,"initialValue",void 0),Ut(this,"debouncedSendUpdate",void 0);var{debounceMs:t}=e;this.debouncedSendUpdate=St(this.sendUpdate.bind(this),t),this.handleCancel=this.handleCancel.bind(this),this.handleChange=this.handleChange.bind(this),this.handleCommit=this.handleCommit.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.inputField=null;var{value:n}=e;this.initialValue=n,this.state={isChanged:!1,value:n}}componentDidMount(){var e;(e=this.inputField)===null||e===void 0||e.focus()}componentDidUpdate(e){var{debounceMs:t}=this.props;e.debounceMs!==t&&(this.debouncedSendUpdate.flush(),this.debouncedSendUpdate=St(this.sendUpdate.bind(this),t))}componentWillUnmount(){this.debouncedSendUpdate.cancel()}setValue(e){this.initialValue=e,this.setState({value:e})}focus(){var e;(e=this.inputField)===null||e===void 0||e.focus()}handleChange(e){var{value:t}=e.target;this.setState({value:t,isChanged:!0}),this.debouncedSendUpdate(t)}handleCancel(){this.debouncedSendUpdate.cancel();var{initialValue:e}=this,{isChanged:t}=this.state;t&&this.sendUpdate(e);var{onDone:n}=this.props;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{onDone:n}=this.props;n(e,t)}handleFocus(){var e;(e=this.inputField)===null||e===void 0||e.select()}handleBlur(e){var{relatedTarget:t}=e;t!=null&&t.classList.contains("context-menu-container")?this.handleCommit(!1,!0):t!=null&&t.classList.contains("advanced-filter-button")?this.handleCommit(!1,!1):this.handleCommit(!0,!0)}handleTab(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.debouncedSendUpdate.flush();var{onTab:t}=this.props;t(e)}handleKeyDown(e){switch(e.key){case"Escape":e.stopPropagation(),e.preventDefault(),this.handleCancel();break;case"Enter":e.stopPropagation(),e.preventDefault(),this.handleCommit();break;case"Tab":e.stopPropagation(),e.preventDefault(),this.handleTab(e.shiftKey);break}}handleContextMenu(e){var{onContextMenu:t}=this.props;t(e)}sendUpdate(e){var{onChange:t}=this.props;t(e)}render(){var{className:e,style:t,showAdvancedFilterButton:n,isAdvancedFilterSet:r,onAdvancedFiltersTriggered:a}=this.props,{value:s}=this.state;return u.jsxs("div",{style:t,className:"iris-grid-input-autosized-wrapper","data-value":s,children:[u.jsx("input",{ref:l=>{this.inputField=l},className:Q("iris-grid-input-field",e),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"}),n&&u.jsx("div",{className:"advanced-filter-button-container",children:u.jsx($,{kind:"ghost",className:Q("btn-link-icon advanced-filter-button",{"filter-set":r}),onClick:a,onContextMenu:this.handleContextMenu,children:u.jsxs("div",{className:"fa-layers ",children:[u.jsx(J,{icon:Ai,className:"filter-solid"}),u.jsx(J,{icon:gn,className:"filter-light"})]})})})]})}}Ut(Ki,"defaultProps",{style:{},className:"",value:"",showAdvancedFilterButton:!1,isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});function Ko(i,e,t){return(e=$o(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function $o(i){var e=zo(i,"string");return typeof e=="symbol"?e:e+""}function zo(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 Yo extends He{constructor(e){super(),Ko(this,"irisGrid",void 0),this.irisGrid=e,this.cursor=null}onDown(e,t){if(e.altKey&&!Et.isModifierKeyDown(e)&&!e.shiftKey){var{mouseX:n,mouseY:r}=t.state;if(n==null||r==null)return!1;var a=t.getGridPointFromXY(n,r);if(a.column!=null&&a.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 Qo(i,e,t){return(e=qo(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function qo(i){var e=Xo(i,"string");return typeof e=="symbol"?e:e+""}function Xo(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 Zo extends He{constructor(e){super(),Qo(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{selectedRanges:t}=this.irisGrid.state;return e.key==="c"&&Et.isModifierKeyDown(e)?(oe.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}function Jo(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)}class nl extends He{constructor(e){super(),Jo(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if(Qe.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var{reverse:t}=this.irisGrid.state;return this.irisGrid.reverse(!t),!0}return!1}}function il(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)}class sl extends He{constructor(e){super(),il(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return Qe.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}var ol=3e3;function ll(i){var{children:e=null,onEntering:t,onEntered:n,onExiting:r,onExited:a}=i,[s,l]=w.useState(!1),o=w.useRef(),d=Pi(e),h=w.useCallback(()=>{l(!0),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{l(!1)},ol)},[l,o]);return w.useEffect(()=>{d!==e&&e!=null&&h()},[e,d,l,h]),w.useEffect(()=>()=>o.current?clearTimeout(o.current):void 0,[]),u.jsx($t,{className:"toast-bottom-bar",isShown:s,onEntering:t,onEntered:n,onExiting:r,onExited:a,children:e})}var ul=1,$i=Le.memo(i=>{var{model:e,modelColumns:t,top:n,bottom:r,left:a,right:s,filter:l,formatter:o,reverse:d=!1,sorts:h,customColumns:c,movedColumns:v,hiddenColumns:m,alwaysFetchColumns:p,rollupConfig:g=null,totalsConfig:C=null,selectDistinctColumns:S=ne,pendingRowCount:f=0,pendingDataMap:b=Ue,frozenColumns:y,formatColumns:E,columnHeaderGroups:T,partitionConfig:O}=i,D=w.useMemo(()=>oe.getModelViewportColumns(t,a,s,v,m,p,ul),[t,a,s,v,m,p]);return w.useEffect(function(){e.filter=l},[e,l]),w.useEffect(function(){var P=[...h];d&&P.push(e.dh.Table.reverse()),e.sort=P},[e,h,d]),w.useEffect(function(){e.formatter=o},[e,o]),w.useEffect(function(){e.isCustomColumnsAvailable&&(e.customColumns=c)},[e,c]),w.useEffect(function(){e.isFormatColumnsAvailable&&(e.formatColumns=E)},[e,E]),w.useEffect(function(){e.setViewport(n,r,D)},[e,n,r,D]),w.useEffect(function(){e.isRollupAvailable&&(e.rollupConfig=g)},[e,e.isRollupAvailable,g]),w.useEffect(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=S)},[e,S]),w.useEffect(function(){e.isTotalsAvailable&&(e.totalsConfig=C)},[e,e.isTotalsAvailable,C]),w.useEffect(function(){e.pendingRowCount=f},[e,f]),w.useEffect(function(){e.pendingDataMap=b},[e,b]),w.useEffect(function(){y&&e.updateFrozenColumns(y)},[e,y]),w.useEffect(function(){e.columnHeaderGroups=T},[e,T]),w.useEffect(function(){O&&jt(e)&&(e.partitionConfig=O)},[e,O]),null});$i.displayName="IrisGridModelUpdater";function zi(i,e,t){return(e=dl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function dl(i){var e=hl(i,"string");return typeof e=="symbol"?e:e+""}function hl(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 ln=be.module("ColumnStatistics"),cl={SIZE:"Number of Rows"};class Ot extends w.Component{static getStatsLabel(e){var t;return(t=cl[e])!==null&&t!==void 0?t:e.split(" ").map(n=>n[0].toUpperCase()+n.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),zi(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{column:e,model:t}=this.props,n=t.rowCount-t.pendingRowCount-t.floatingBottomRowCount-t.floatingTopRowCount;this.setState({numRows:n}),!t.isColumnStatisticsAvailable||e.isProxy===!0?this.setState({loading:!1}):n<Ot.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics()}handleGenerateStatistics(){this.setState({loading:!0});var{column:e,model:t}=this.props;this.cancelablePromise=Ae.makeCancelable(t.columnStatistics(e)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){ln.debug("Received statistics",e);var{model:t,onStatistics:n}=this.props,r=[];e.statisticsMap.forEach((a,s)=>{r.push({operation:Ot.getStatsLabel(s),value:a,type:e.getType(s)})}),e.uniqueValues.forEach((a,s)=>{r.push({operation:s,className:"column-statistics-unique-value",value:a,type:"long"})}),this.setState({loading:!1,statistics:r,numRows:t.rowCount-t.pendingRowCount-t.floatingBottomRowCount-t.floatingTopRowCount}),n()}handleError(e){if(e!=null&&Ae.isCanceled(e)){ln.debug("Called handleError on a cancelled promise result");return}ln.error("Error generating statistics",e),this.setState({error:e,loading:!1,statistics:null})}render(){var e,{column:t,model:n}=this.props,{error:r,loading:a,statistics:s,numRows:l}=this.state,o=!a&&r==null&&s==null&&n.isColumnStatisticsAvailable,d=[],h=t.type.substring(t.type.lastIndexOf(".")+1),c=t.description===null?null:t.description;if(s!=null)for(var v=0;v<s.length;v+=1){var{operation:m,className:p,value:g,type:C}=s[v],S=C?n.displayString(g,C):n.displayString(g,t.type,t.name),f=u.jsxs(Le.Fragment,{children:[u.jsx("div",{className:Q("column-statistic-operation",p),children:m}),u.jsx("div",{className:"column-statistic-value",children:S})]},m);d.push(f)}var b=yt(n)&&n.hasExpandableRows?"Expanded Rows":"Number of Rows",y=n.displayString(l,"long"),E=n.getColumnIndexByName(t.name);return u.jsxs("div",{className:"column-statistics",children:[u.jsxs("div",{className:"column-statistics-title",children:[(e=t.displayName)!==null&&e!==void 0?e:t.name,u.jsxs("span",{className:"column-statistics-type",children:[" (",h,")"]}),u.jsx(Li,{className:"column-statistics-copy",tooltip:"Copy column name",copy:t.name})]}),c!=null&&u.jsx("div",{className:"column-statistics-description",children:c}),E!=null&&!n.isColumnSortable(E)&&u.jsxs("div",{className:"column-statistics-status",children:[u.jsx(J,{icon:kr,className:"mr-1"}),"Not sortable"]}),E!=null&&!n.isColumnMovable(E)&&u.jsxs("div",{className:"column-statistics-status",children:[u.jsx(J,{icon:n.isColumnFrozen(E)?jr:Ur,className:"mr-1"}),n.isColumnFrozen(E)?"Frozen":"Not movable"]}),u.jsxs("div",{className:"column-statistics-grid",children:[s==null&&u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"column-statistic-operation",children:b}),u.jsx("div",{className:"column-statistic-value",children:y})]}),d]}),o&&u.jsx($,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,children:"Generate Stats"}),r!=null&&u.jsx("div",{className:"error-message",children:"".concat(r)}),s&&!a&&u.jsx($,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:Vr,children:"Refresh"}),a&&u.jsxs("div",{className:"column-statistics-loading",children:[u.jsx(Gt,{className:"loading-spinner-vertical-align"}),"Calculating Stats..."]})]})}}zi(Ot,"AUTO_GENERATE_LIMIT",1e5);function ml(i,e,t){return(e=vl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function vl(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)}class Mt extends w.PureComponent{static createSearchFilter(e,t,n,r,a){var s=a?r.filter(d=>!n.includes(d.name)).map(d=>d.name):n;if(t&&s.length>0){var l=e.FilterValue.ofString(t),o=s.length===r.length?e.FilterCondition.search(l):e.FilterCondition.search(l,r.filter(d=>s.includes(d.name)).map(d=>d.filter()));return o}}constructor(e){super(e),ml(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=Le.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var{onChange:t,selectedColumns:n,invertSelection:r}=this.props;t(e.target.value,n,r)}sendColumnChange(e,t){var{onChange:n,value:r}=this.props;n(r,e,t)}setInvertSelection(e){var{onChange:t,value:n}=this.props;t(n,[],e)}toggleColumn(e){var{selectedColumns:t,invertSelection:n}=this.props;if(t.includes(e))this.sendColumnChange(t.filter(a=>a!==e),n);else{var r=t.slice();r.push(e),this.sendColumnChange(r,n)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var{columns:e}=this.props;this.sendColumnChange(e.filter(t=>N.isNumberType(t.type)).map(t=>t.name),!1)}render(){var{value:e,selectedColumns:t,invertSelection:n,columns:r}=this.props,{isConfigureColumnsShown:a}=this.state,s=t.length===0&&n===!0||t.length===r.length&&n===!1,l=t.length===0&&n===!1||t.length===r.length&&n===!0,o;return s?o=u.jsxs(u.Fragment,{children:[u.jsx(J,{icon:ei,mask:rn,transform:"shrink-2 down-5 right-7"}),u.jsx(J,{icon:Br,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}):l?o=u.jsxs(u.Fragment,{children:[u.jsx(J,{icon:Hr,mask:rn,transform:"shrink-1 down-5 right-7"}),u.jsx(J,{icon:Jn,className:"text-danger",transform:"shrink-4 down-5 right-7"})]}):o=u.jsxs(u.Fragment,{children:[u.jsx(J,{icon:ei,mask:rn,transform:"shrink-2 down-5 right-7"}),u.jsx(J,{icon:Gr,className:"text-primary",transform:"shrink-4 down-5 right-7"})]}),u.jsxs("div",{className:"cross-column-container",children:[u.jsx(Oa,{className:"cross-column-search",placeholder:"Search Data...","data-testid":"cross-column-search",value:e,onChange:this.handleSearchValueChange,ref:this.searchField}),u.jsxs("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{a?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})},children:[u.jsx("div",{className:"fa-layers",children:o}),u.jsx(rt,{children:"Configure Columns"}),u.jsx(ki,{isShown:a,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0,children:u.jsxs("div",{className:"cross-column-popup",children:["Searched Columns",u.jsx("div",{className:"cross-column-scroll",children:r.map(d=>d.isProxy===!0?null:u.jsxs(Le.Fragment,{children:[u.jsx(Na,{className:"cross-column-checkbox",checked:n?!t.includes(d.name):t.includes(d.name),onChange:()=>this.toggleColumn(d.name),children:d.name}),d.type.substring(d.type.lastIndexOf(".")+1)]},d.name))}),u.jsxs("div",{className:"cross-column-button-bar",children:[u.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectAll,children:"Select All"}),u.jsx("button",{type:"button",className:"btn btn-link",onClick:this.clear,children:"Clear"}),u.jsx("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers,children:"Numbers Only"})]}),l&&u.jsxs("p",{className:"text-danger",children:[u.jsx(J,{icon:Jn})," Select at least one column to search."]})]})})]})]})}}function bi(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?bi(Object(t),!0).forEach(function(n){Ct(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):bi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Ti(i,e,t,n,r,a,s){try{var l=i[a](s),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function kt(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function s(o){Ti(a,n,r,s,l,"next",o)}function l(o){Ti(a,n,r,s,l,"throw",o)}s(void 0)})}}function Ct(i,e,t){return(e=fl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function fl(i){var e=pl(i,"string");return typeof e=="symbol"?e:e+""}function pl(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 nt=be.module("IrisGridPartitionSelector");class Cl extends w.Component{constructor(e){super(e),Ct(this,"pending",void 0),Ct(this,"tableUtils",void 0),Ct(this,"getCachedChangeCallback",te(n=>r=>this.handlePartitionSelect(n,r))),Ct(this,"getCachedFormatValueCallback",te(n=>r=>this.getDisplayValue(n,r))),this.handlePartitionTableClick=this.handlePartitionTableClick.bind(this),this.handleMergeClick=this.handleMergeClick.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this);var{model:t}=e;this.tableUtils=new N(t.dh),this.pending=new ji,this.state={isLoading:!0,baseTable:null,keysTable:null,partitionTables:null}}componentDidMount(){var e=this;return kt(function*(){var{model:t}=e.props;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(!Ae.isCanceled(a))throw a}})()}componentDidUpdate(e){var{partitionConfig:t}=e,{partitionConfig:n}=this.props;t!==n&&this.updatePartitionOptions()}componentWillUnmount(){this.pending.cancel();var{keysTable:e,baseTable:t,partitionTables:n}=this.state;t==null||t.close(),e==null||e.close(),n==null||n.forEach(r=>r.close())}handlePartitionTableClick(){nt.debug2("handlePartitionTableClick");var{partitionConfig:e}=this.props;V(e);var t=wi({},e);t.mode=e.mode==="keys"?"partition":"keys",this.sendUpdate(t)}handleMergeClick(){nt.debug2("handleMergeClick");var{partitionConfig:e}=this.props;V(e);var t=wi({},e);t.mode=e.mode==="merged"?"partition":"merged",this.sendUpdate(t)}handlePartitionSelect(e,t){var n=this;return kt(function*(){var{partitionConfig:r}=n.props;V(r),nt.debug("handlePartitionSelect",e,t,r);var a=[...r.partitions];a[e]=t;var{baseTable:s}=n.state,{keysTable:l}=n.state;V(s),V(l);try{n.setState({isLoading:!0});var o=yield n.pending.add(s.copy(),v=>v.close()),d=a.slice(0,e+1).map((v,m)=>{var p=o.columns[m];return n.tableUtils.makeNullableEqFilter(p,v)});o.applyFilter(d),o.setViewport(0,0,o.columns);var h=yield n.pending.add(o.getViewportData()),c={partitions:l.columns.map(v=>h.rows[0].get(v)),mode:"partition"};o.close(),n.sendUpdate(c)}catch(v){Ae.isCanceled(v)||nt.error("Unable to get partition tables",v)}finally{n.setState({isLoading:!1})}})()}sendUpdate(e){nt.debug2("sendUpdate",e);var{onChange:t}=this.props;t(e)}getDisplayValue(e,t){var{model:n}=this.props;if(t===null)return"(null)";if(t===void 0||t==="")return"";var r=n.partitionColumns[e];return N.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 kt(function*(){var{model:t}=e.props,{partitionConfig:n}=e.props;if(n!=null){var{keysTable:r}=e.state;V(r);var a=[...n.partitions].map((l,o)=>{var d=r.columns[o];return e.tableUtils.makeNullableEqFilter(d,l)}),s=yield Promise.all(t.partitionColumns.map(function(){var l=kt(function*(o,d){return r.applyFilter(a.slice(0,d)),r.selectDistinct(t.partitionColumns.slice(0,d+1))});return function(o,d){return l.apply(this,arguments)}}()));e.setState({partitionTables:s})}})()}getPartitionFilters(e){var{model:t,partitionConfig:n}=this.props;V(n);var{partitions:r}=n;if(nt.debug("getPartitionFilters",n),r.length!==e.length)throw new Error("Invalid partition config set. Expected ".concat(e.length," partitions, but got ").concat(r.length));for(var a=[],s=0;s<r.length;s+=1)if(s===0)a.push([]);else{var l=a[s-1],o=r[s-1],d=t.partitionColumns[s-1],h=[...l,this.tableUtils.makeNullableEqFilter(d,o)];a.push(h)}return a}render(){var{model:e,partitionConfig:t}=this.props,{isLoading:n,partitionTables:r}=this.state,a=e.partitionColumns.map((s,l)=>u.jsxs("div",{className:"column-selector",children:[(r==null?void 0:r[l])&&u.jsx(Ba,{label:s.name,labelPosition:"side",table:r[l],direction:"bottom",shouldFlip:!1,keyColumn:r[l].columns[l].name,selectedKey:(t==null?void 0:t.mode)==="partition"?t.partitions[l]:null,placeholder:"Select a key",labelColumn:r[l].columns[l].name,onChange:this.getCachedChangeCallback(l),isDisabled:n||t==null}),e.partitionColumns.length-1===l||u.jsx(J,{icon:Wr})]},"selector-".concat(s.name)));return u.jsxs("div",{className:"iris-grid-partition-selector",children:[u.jsxs("div",{className:"partition-button-group",children:[u.jsx($,{onClick:this.handlePartitionTableClick,kind:"inline",tooltip:e.isPartitionAwareSourceTable?"View keys as table":"View underlying partition table",icon:Kr,active:(t==null?void 0:t.mode)==="keys",disabled:n||t==null,children:"Partitions"}),u.jsx($,{onClick:this.handleMergeClick,kind:"inline",tooltip:"View all partitions as one merged table",icon:u.jsx(J,{icon:$r,rotation:90}),active:(t==null?void 0:t.mode)==="merged",disabled:n||t==null,children:e.isPartitionAwareSourceTable?"Coalesce":"Merge"})]}),a]})}}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=wl(i,"string");return typeof e=="symbol"?e:e+""}function wl(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 Tl=be.module("SelectDistinctBuilder");class Yi extends w.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var{model:t,selectDistinctColumns:n}=this.props;this.state={inputs:n.length>0?[...n]:[""],columns:t.originalColumns}}componentDidUpdate(e,t){var{inputs:n}=this.state,{onChange:r}=this.props;if(t.inputs!==n){var a=n.filter(s=>s!=="");Ye(t.inputs.filter(s=>s!==""),a)||r(a)}}handleAddColumnClick(){this.setState(e=>{var{inputs:t}=e;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var{inputs:n}=t;return{inputs:n.length===1&&e===0?[""]:n.filter((r,a)=>e!==a)}})}handleDropdownChanged(e,t){Tl.debug("handleDropdownChanged",e,t),this.setState(n=>{var{inputs:r}=n,a=[...r];return a[e]=t,{inputs:a}})}renderInputs(){var{columns:e,inputs:t}=this.state;return t.map((n,r)=>{var a=e.filter(s=>{var{name:l}=s;return l===n||!t.includes(l)}).map(s=>{var{name:l}=s;return u.jsx("option",{value:l,children:l},l)});return u.jsxs("div",{className:"form-inline px-3 pb-3",children:[u.jsxs(st,{className:"form-control custom-select col",value:n,onChange:s=>this.handleDropdownChanged(r,s),children:[u.jsx("option",{value:"",children:"Select a column"}),a]}),(t.length>1||n!=="")&&u.jsx($,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(r)},icon:u.jsx(J,{icon:pn,transform:"grow-3"}),tooltip:"Delete column"})]},r)})}render(){var{columns:e,inputs:t}=this.state,n=t.length>=e.length;return u.jsxs("div",{role:"presentation",className:"select-distinct-builder-container h-100",children:[u.jsx("div",{className:"select-distinct-title",children:"Display Unique Values From"}),this.renderInputs(),u.jsx("hr",{}),u.jsx("div",{className:"pt-1 px-3",children:u.jsx($,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:n,icon:Cn,children:"Add Additional Column"})}),u.jsx("div",{className:"select-distinct-builder-footer",children:u.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."})})]})}}Sl(Yi,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});function On(i){var{items:e,onChange:t=()=>{}}=i;return u.jsx(Ui,{items:Array.from(e.entries()).map(n=>{var[r,a]=n;return{title:On.getAdvancedSettingsTitleForKey(r),isOn:a,onChange:s=>t(r,s)}})})}On.getAdvancedSettingsTitleForKey=i=>{switch(i){case Vt.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case Vt.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 it(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){yl(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 yl(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)}var Ei=be.module("ConditionalFormattingMenu"),un=()=>{};function Ol(i){var{column:{type:e}}=i;if(N.isNumberType(e))return i.condition===I.IS_NULL||i.condition===I.IS_NOT_NULL?"":"".concat(i.value);if(N.isCharType(e))return i.condition===U.IS_NULL||i.condition===U.IS_NOT_NULL?"":"".concat(i.value);if(N.isStringType(e))return i.condition===H.IS_NULL||i.condition===H.IS_NOT_NULL?"":'"'.concat(i.value,'"');if(N.isDateType(e))return i.condition===U.IS_NULL||i.condition===U.IS_NOT_NULL?"":"".concat(i.value);if(N.isBooleanType(e))return"";throw new Error("Invalid column type ".concat(e," in getRuleValue"))}function Nl(i){return N.isNumberType(i.column.type)&&i.condition===I.IS_BETWEEN?"".concat(i.start," < ").concat(i.column.name," < ").concat(i.end):"".concat(i.column.name," ").concat(_o(i.column.type,i.condition),`
|
|
4
|
+
`).concat(Ol(i))}function Fl(i){var{rules:e=[],onChange:t=un,onCreate:n=un,onSelect:r=un}=i,a=w.useCallback((d,h,c)=>{d.stopPropagation(),Ei.debug("Rule clicked",h,c),r(c)},[r]),s=w.useCallback((d,h,c)=>{d.stopPropagation(),Ei.debug("Delete button clicked",h,c);var v=[...e];v.splice(c,1),t(v)},[t,e]),l=w.useCallback(d=>{d.stopPropagation()},[]),o=w.useCallback(d=>{if(ii.stopDragging(),d.destination!=null){var h=d.source.index,c=d.destination.index,v=[...e],m=e[h];v.splice(h,1),v.splice(c,0,m),t(v)}},[t,e]);return u.jsxs("div",{className:"conditional-formatting-rules",children:[u.jsx(_r,{onDragStart:ii.startDragging,onDragEnd:o,children:u.jsx(Ir,{droppableId:"droppable-custom-columns",children:(d,h)=>u.jsxs("div",it(it({ref:d.innerRef},d.droppableProps),{},{className:Q("droppable-container",{dragging:h.draggingFromThisWith}),children:[e.length===0&&u.jsx("div",{className:"text-muted pl-2",children:"No formats defined"}),e.map((c,v)=>u.jsx(Lr,{draggableId:"".concat(v,"-").concat(c.type),index:v,disableInteractiveElementBlocking:!0,children:(m,p)=>u.jsx("div",it(it({role:"menuitem",tabIndex:0,onClick:g=>a(g,c,v),className:Q("draggable-container",{dragging:p.isDragging}),ref:m.innerRef},m.draggableProps),{},{children:u.jsx("div",{className:"conditional-formatting-list-item",children:u.jsxs("div",{className:"formatting-item",children:[u.jsx("div",{className:"rule-icon",children:u.jsx("span",{className:"rule-icon-bg",style:{backgroundColor:Bt(c.config.style),color:Ht(c.config.style)},children:c.type===ye.ROWS?"row":"col"})}),u.jsx("div",{className:"rule-title",children:Nl(c.config)}),u.jsx($,{kind:"ghost",className:"ml-1 px-2",onClick:g=>s(g,c,v),icon:pn,tooltip:"Delete rule"}),u.jsxs("button",it(it({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:l},m.dragHandleProps),{},{children:[u.jsx(rt,{children:"Drag to re-order"}),u.jsx(J,{icon:zr})]}))]})})}))},"".concat(v,"-").concat(c.type))),d.placeholder]}))})}),u.jsx("hr",{}),u.jsx($,{kind:"ghost",onClick:n,icon:Cn,children:"Add New Rule"})]})}var ze=be.module("ConditionEditor"),xl=()=>{},Dl=[I.IS_EQUAL,I.IS_NOT_EQUAL,I.IS_BETWEEN,I.GREATER_THAN,I.GREATER_THAN_OR_EQUAL,I.LESS_THAN,I.LESS_THAN_OR_EQUAL,I.IS_NULL,I.IS_NOT_NULL].map(i=>u.jsx("option",{value:i,children:po(i)},i)),Al=[H.IS_EXACTLY,H.IS_NOT_EXACTLY,H.CONTAINS,H.DOES_NOT_CONTAIN,H.STARTS_WITH,H.ENDS_WITH,H.IS_NULL,H.IS_NOT_NULL].map(i=>u.jsx("option",{value:i,children:Co(i)},i)),_l=[U.IS_EXACTLY,U.IS_NOT_EXACTLY,U.IS_BEFORE,U.IS_BEFORE_OR_EQUAL,U.IS_AFTER,U.IS_AFTER_OR_EQUAL,U.IS_NULL,U.IS_NOT_NULL].map(i=>u.jsx("option",{value:i,children:So(i)},i)),Il=[le.IS_TRUE,le.IS_FALSE,le.IS_NULL,le.IS_NOT_NULL].map(i=>u.jsx("option",{value:i,children:bo(i)},i)),Ll=[ae.IS_EQUAL,ae.IS_NOT_EQUAL,ae.IS_NULL,ae.IS_NOT_NULL].map(i=>u.jsx("option",{value:i,children:wo(i)},i));function Pl(i,e,t,n){return i===I.IS_NULL||i===I.IS_NOT_NULL||i===I.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&n!=null&&n!==""&&!Number.isNaN(Number.parseFloat(n))||i!==I.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function Ml(i,e,t,n,r,a,s){switch(i){case I.IS_EQUAL:case I.IS_NOT_EQUAL:case I.GREATER_THAN:case I.GREATER_THAN_OR_EQUAL:case I.LESS_THAN:case I.LESS_THAN_OR_EQUAL:return u.jsx("input",{type:"number",className:"form-control",placeholder:"Enter value",value:r??"",onChange:e});case I.IS_BETWEEN:return u.jsxs("div",{className:"d-flex flex-row",children:[u.jsx("input",{type:"number",className:"form-control d-flex mr-2",placeholder:"Start value",value:a??"",onChange:t}),u.jsx("input",{type:"number",className:"form-control d-flex",placeholder:"End value",value:s??"",onChange:n})]});case I.IS_NULL:case I.IS_NOT_NULL:return null}}function kl(i,e,t){switch(i){case H.IS_NULL:case H.IS_NOT_NULL:return null;default:return u.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function jl(i,e,t){switch(i){case U.IS_NULL:case U.IS_NOT_NULL:return null;default:return u.jsx("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function Ul(){return null}function Vl(i,e,t){switch(i){case ae.IS_NULL:case ae.IS_NOT_NULL:return null;default:return u.jsx("input",{type:"text",className:"form-control",maxLength:1,placeholder:"Enter value",value:t??"",onChange:e})}}function Qi(i){var{column:e,config:t,dh:n,onChange:r=xl}=i,a=e.type,[s,l]=w.useState(a),[o,d]=w.useState(t.condition),[h,c]=w.useState(t.value),[v,m]=w.useState(t.start),[p,g]=w.useState(t.end);a!==s&&(d(Bi(a)),c(Hi(a)),m(void 0),g(void 0),l(a));var C=w.useMemo(()=>{if(a===void 0)return[];if(N.isNumberType(a))return Dl;if(N.isCharType(a))return Ll;if(N.isStringType(a))return Al;if(N.isDateType(a))return _l;if(N.isBooleanType(a))return Il},[a]),S=w.useCallback(T=>{ze.debug("handleConditionChange",T),d(T)},[]),f=w.useCallback(T=>{var{value:O}=T.target;ze.debug("handleValueChange",O),c(O)},[]),b=w.useCallback(T=>{var{value:O}=T.target;ze.debug("handleStartValueChange",O),m(O)},[]),y=w.useCallback(T=>{var{value:O}=T.target;ze.debug("handleEndValueChange",O),g(O)},[]);w.useEffect(function(){var O=!0;o===void 0?(ze.debug("Unable to create formatting rule. Condition is not selected."),O=!1):N.isNumberType(e.type)&&!Pl(o,h,v,p)?(ze.debug("Unable to create formatting rule. Invalid value",h),O=!1):N.isDateType(e.type)&&!Lo(n,o,h)&&(ze.debug("Unable to create formatting rule. Invalid date condition",h),O=!1),r({condition:o,value:h,start:v,end:p},O)},[r,e.type,n,o,h,v,p]);var E=w.useMemo(()=>{if(a===void 0)return null;if(N.isNumberType(a))return Ml(o,f,b,y,h,v,p);if(N.isCharType(a))return Vl(o,f,h);if(N.isStringType(a))return kl(o,f,h);if(N.isDateType(a))return jl(o,f,h);if(N.isBooleanType(a))return Ul()},[a,o,h,v,p,f,b,y]);return u.jsxs("div",{className:"condition-editor mb-2",children:[u.jsx(st,{value:o,"data-testid":"condition-select",className:"custom-select mb-2",onChange:S,children:C}),E]})}var Bl=be.module("StyleEditor"),Hl="#fcfcfa",Gl="#f0f0ee",Wl="#1a171a",Kl=200,$l=()=>{};function qi(i){var e,t,{config:n,onChange:r=$l}=i,[a,s]=w.useState(n.type),[l,o]=w.useState((e=(t=n.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:Hl),[d,h]=w.useState(!1),[c,v]=w.useState(Kl),m=w.useRef(null),p=w.useCallback(E=>{var{value:T}=E.target;Bl.debug("handleBackgroundChange",T),o(T)},[]),g=w.useCallback(()=>{d&&h(!1)},[d]),C=w.useCallback(()=>{d||f(),h(!d)},[d]),S=w.useMemo(()=>[W.NO_FORMATTING,W.POSITIVE,W.NEGATIVE,W.WARN,W.NEUTRAL,W.ACCENT_1,W.ACCENT_2,W.CUSTOM],[]);function f(){m.current&&v(m.current.getBoundingClientRect().width)}w.useEffect(function(){r({type:a,customConfig:{color:Yr.isDark(l)?Gl:Wl,background:l}})},[r,a,l]);var b=w.useCallback(()=>{for(var E=[],T=function(){var A=S[O],P="option-".concat(O,"-").concat(A);E.push(u.jsxs($,{kind:"inline",className:"style-option-btn",onClick:()=>{s(A),h(!1)},style:{color:Ht({type:A}),background:Bt({type:A})},children:[A===a&&u.jsx(J,{icon:Qr,className:"mr-2"}),A!==a&&u.jsx("span",{className:"mr-4"}),Ci(A)]},P))},O=0;O<S.length;O+=1)T();return E},[S,a]),y=w.useCallback(()=>u.jsx("div",{className:"style-menu-container",role:"presentation",style:{width:c},children:u.jsx("div",{className:"style-options",children:b()})}),[c,b]);return u.jsxs("div",{className:"style-editor",children:[u.jsxs("div",{className:"mb-2",ref:m,children:[u.jsx("label",{className:"mb-0",children:"Style"}),u.jsxs($,{kind:"inline",className:"cs-dropdown custom-select",style:{color:Ht({type:a}),background:Bt({type:a})},onClick:C,children:[Ci(a),u.jsx(Fa,{isShown:d,actions:{menuElement:y()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:g,menuStyle:{maxWidth:"100rem"}})]})]}),a===W.CUSTOM&&u.jsxs("div",{className:"mb-2",children:[u.jsx("label",{className:"mb-0",children:"Background"}),u.jsx("input",{type:"color",value:l,className:"custom-select color-select",onChange:p})]})]})}function Ri(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 Xi(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ri(Object(t),!0).forEach(function(n){zl(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Ri(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function zl(i,e,t){return(e=Yl(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function Yl(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 vt=be.module("ColumnFormatEditor"),ql=()=>{};function Xl(i){var{type:e,name:t}=i[0],n={type:e,name:t},r=Xi({column:n,style:Wi()},Kt(e));return r}function Zl(i){var e,{columns:t,config:n=Xl(t),dh:r,onChange:a=ql}=i,[s,l]=w.useState((e=t.find(f=>f.name===n.column.name&&f.type===n.column.type))!==null&&e!==void 0?e:t[0]),[o,d]=w.useState(Gi(n)),[h,c]=w.useState(!1),[v,m]=w.useState(n.style),p=w.useCallback(f=>{var b=t.find(y=>{var{name:E}=y;return E===f});b!==void 0?(l(b),s.type!==b.type&&(d(Kt(b.type)),c(!1))):vt.error("Column ".concat(f," not found."))},[t,s]),g=w.useCallback((f,b)=>{vt.debug("handleConditionChange",f,b),d(f),c(b)},[]),C=w.useCallback(f=>{vt.debug("handleStyleChange",f),m(f)},[]);w.useEffect(function(){var b=h;s===void 0&&(vt.debug("Column is not selected, invalidating update."),b=!1),(v===void 0||v.type===W.NO_FORMATTING)&&(vt.debug("Style is not selected, invalidating update."),b=!1);var{type:y,name:E}=s,T={type:y,name:E};a(Xi({column:T,style:v},o),b)},[a,s,v,o,h]);var S=w.useMemo(()=>t.map(f=>{var{name:b}=f;return b}),[t]);return u.jsxs("div",{className:"conditional-rule-editor form",children:[u.jsxs("div",{className:"mb-2",children:[u.jsx("label",{className:"mb-0",children:"Format Cell If"}),u.jsx(Vi,{"aria-label":"Select column to format",defaultSelectedKey:s==null?void 0:s.name,onChange:p,children:S})]}),s!==void 0&&u.jsxs(u.Fragment,{children:[u.jsx(Qi,{dh:r,column:s,config:o,onChange:g}),u.jsx(qi,{config:v,onChange:C})]})]})}function Oi(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 Zi(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Oi(Object(t),!0).forEach(function(n){Jl(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Oi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function Jl(i,e,t){return(e=eu(e))in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function eu(i){var e=tu(i,"string");return typeof e=="symbol"?e:e+""}function tu(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 gt=be.module("RowFormatEditor"),nu=()=>{};function iu(i){var{type:e,name:t}=i[0],n={type:e,name:t},r=Zi({column:n,style:Wi()},Kt(e));return r}function ru(i){var e,{columns:t,config:n=iu(t),dh:r,onChange:a=nu}=i,[s,l]=w.useState((e=t.find(f=>f.name===n.column.name&&f.type===n.column.type))!==null&&e!==void 0?e:t[0]),[o,d]=w.useState(Gi(n)),[h,c]=w.useState(!1),[v,m]=w.useState(n.style),p=w.useCallback(f=>{var b=t.find(y=>{var{name:E}=y;return E===f});b!==void 0?(l(b),s.type!==b.type&&(d(Kt(b.type)),c(!1))):gt.error("Column ".concat(f," not found."))},[t,s]),g=w.useCallback((f,b)=>{gt.debug("handleConditionChange",f,b),d(f),c(b)},[]),C=w.useCallback(f=>{gt.debug("handleStyleChange",f),m(f)},[]);w.useEffect(function(){if(s===void 0){gt.debug("Column is not selected, skip update.");return}if(v===void 0){gt.debug("Style is not selected, skip update.");return}var{type:b,name:y}=s,E={type:b,name:y};a(Zi({column:E,style:v},o),h)},[a,s,v,o,h]);var S=w.useMemo(()=>t.map(f=>{var{name:b}=f;return b}),[t]);return u.jsxs("div",{className:"conditional-rule-editor form",children:[u.jsxs("div",{className:"mb-2",children:[u.jsx("label",{className:"mb-0",children:"Format Row If"}),u.jsx(Vi,{"aria-label":"Select column to format row by",defaultSelectedKey:s==null?void 0:s.name,onChange:p,children:S})]}),s!==void 0&&u.jsxs(u.Fragment,{children:[u.jsx(Qi,{column:s,config:o,dh:r,onChange:g}),u.jsx(qi,{config:v,onChange:C})]})]})}var dn=be.module("ConditionalFormatEditor"),hn=()=>{};function au(i){switch(i){case ye.CONDITIONAL:return u.jsx(Ga,{});case ye.ROWS:return u.jsx(Ha,{})}}function su(i){switch(i){case ye.CONDITIONAL:return"Conditional";case ye.ROWS:return"Rows"}}var Ni=[ye.CONDITIONAL,ye.ROWS];function ou(i){var e,{columns:t,dh:n,onSave:r=hn,onUpdate:a=hn,onCancel:s=hn,rule:l}=i,o=t.filter(Po),[d,h]=w.useState((e=l==null?void 0:l.type)!==null&&e!==void 0?e:Ni[0]),[c,v]=w.useState(l),[m,p]=w.useState(!1),g=w.useCallback(()=>{s()},[s]),C=w.useCallback(()=>{if(c===void 0){dn.error("Rule is not defined.");return}r(c)},[r,c]),S=w.useCallback(b=>{dn.debug("handleFormatterChange",b),h(b)},[]),f=w.useCallback((b,y)=>{dn.debug("handleRuleChange",b,y,d);var E={type:d,config:b};v(E),p(y),a(y?E:void 0)},[a,d]);return u.jsxs("div",{className:"conditional-format-editor form",children:[u.jsxs("div",{className:"mb-2",children:[u.jsx("label",{className:"mb-0",htmlFor:"formatter-select",children:"Select Formatter"}),u.jsx("div",{className:"formatter-list",children:Ni.map((b,y)=>u.jsx("div",{className:"formatter-type",children:u.jsxs("button",{type:"button",className:Q("btn","btn-icon","btn-formatter-type",{active:b===d}),"data-index":y,onClick:()=>S(b),children:[au(b),su(b)]})},b))})]}),d===ye.CONDITIONAL&&u.jsx(Zl,{columns:o,dh:n,config:c==null?void 0:c.config,onChange:f}),d===ye.ROWS&&u.jsx(ru,{columns:o,config:c==null?void 0:c.config,dh:n,onChange:f}),u.jsx("hr",{}),u.jsxs("div",{className:"d-flex justify-content-end my-3",children:[u.jsx($,{kind:"secondary",onClick:g,className:"mr-2",children:"Cancel"}),u.jsx($,{kind:"primary",onClick:C,disabled:c===void 0||!m,children:"Done"})]})]})}function lu(i){var e,t,{text:n,isOpen:r,onClose:a}=i,[s,l]=w.useState(!1),[o,d]=w.useState(0),[h,c]=w.useState(!1),[v,m]=w.useState(!1),[p,g]=w.useState(!1),C=w.useRef();w.useEffect(function(){if(r){try{JSON.parse(n),g(!0)}catch{g(!1)}m(!1)}},[r,n]),w.useEffect(function(){C.current&&C.current.layout()},[o]),w.useEffect(function(){C.current&&C.current.updateOptions({lineNumbers:h?"on":"off"})},[h]);function S(){c(!h)}function f(){var T,O=(T=C.current)===null||T===void 0?void 0:T.getModel();!p||!O||(v?(O.setValue(n),m(!1)):(O.setValue(JSON.stringify(JSON.parse(n),void 0,2)),m(!0)),b())}function b(){var T,O,D=C.current;D&&c(((T=(O=D.getModel())===null||O===void 0?void 0:O.getLineCount())!==null&&T!==void 0?T:0)>1)}function y(){s&&(C.current=void 0,a())}function E(T){C.current=T,d(T.getContentHeight()),T.onDidContentSizeChange(O=>{var{contentHeight:D}=O;return d(D)}),b()}return!r&&!s?null:u.jsxs(qr,{isOpen:r,centered:!0,keyboard:!0,toggle:y,onOpened:()=>l(!0),onClosed:()=>{l(!1),d(0)},className:"cell-overflow-modal",size:"xl",children:[u.jsxs(Xr,{toggle:a,children:[u.jsx("h5",{className:"overflow-modal-title",children:"Cell Contents"}),u.jsx(Li,{kind:"inline",tooltip:"Copy cell contents",copy:(e=(t=C.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:n}),u.jsx($,{kind:"inline",active:h,icon:Zr,tooltip:"Toggle line numbers",onClick:S}),p&&u.jsx($,{kind:"inline",icon:Jr,active:v,tooltip:"Format as JSON",onClick:f})]}),u.jsx(ea,{style:{height:o},children:u.jsx(ba,{onEditorInitialized:E,settings:{value:n,readOnly:!0,wordWrap:"on",language:p?"typescript":"plaintext",folding:p,padding:{bottom:16},lineNumbers:h?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})})]})}var uu="###,##0",Ji=w.forwardRef((i,e)=>{var{gotoRow:t,gotoRowError:n,gotoValueError:r,onGotoRowSubmit:a,isShown:s,onEntering:l,onEntered:o,onExiting:d,onExited:h,model:c,onGotoRowNumberChanged:v,onClose:m,gotoValueSelectedColumnName:p,gotoValue:g,gotoValueFilter:C,onGotoValueSelectedColumnNameChanged:S,onGotoValueSelectedFilterChanged:f,onGotoValueChanged:b,onGotoValueSubmit:y}=i,E=w.useRef(null),T=w.useRef(null),[O,D]=w.useState(!1),A=[];wa(c)&&({columns:A}=c.table);var{dh:P,rowCount:Z}=c,M=w.useMemo(()=>"goto-row-input-".concat(cn()),[]),Y=L=>{L.key==="Enter"?(L.stopPropagation(),L.preventDefault(),y()):(L.key==="Backspace"||L.key==="Delete")&&(g==="".concat(Number.POSITIVE_INFINITY)||g==="".concat(Number.NEGATIVE_INFINITY))&&ce("")},he=L=>{L.key==="Enter"&&(L.stopPropagation(),L.preventDefault(),y(L.shiftKey))},ue=c.getColumnIndexByName(p),we=A[ue??0],fe=we==null?void 0:we.type,Ee=N.getNormalizedType(fe),ce=L=>{b(L??"")};w.useImperativeHandle(e,()=>({focus(){var L;D(!0),(L=E.current)===null||L===void 0||L.select()}}));var Xe=()=>{if(O&&document.activeElement!==E.current){var L;(L=E.current)===null||L===void 0||L.select()}else if(!O&&document.activeElement!==T.current){var R;(R=T.current)===null||R===void 0||R.select()}};w.useEffect(Xe,[O]);var Ze=()=>{switch(Ee){case N.dataType.DECIMAL:case N.dataType.INT:return u.jsx("div",{className:"goto-row-input",children:u.jsx("input",{ref:T,className:Q("form-control",{"is-invalid":r!==""}),onKeyDown:Y,placeholder:"value",onChange:L=>{var R=L.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(L.target.value)?ce(L.target.value):R==="-i"||R==="-infinity"?ce("".concat(Number.NEGATIVE_INFINITY)):(R==="i"||R==="infinity")&&ce("".concat(Number.POSITIVE_INFINITY))},value:g,"aria-label":"Value Input"})});case N.dataType.DATETIME:return u.jsx("div",{className:"goto-value-date-time-input",children:u.jsx(Wa,{ref:T,className:Q("form-control","goto-value-date-time-input",{"is-invalid":r!==""}),defaultValue:g,onChange:ce,onSubmit:he,"aria-label":"Value Input"})});case N.dataType.STRING:return u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"goto-row-input",children:u.jsxs(st,{className:"custom-select",onChange:L=>{f(L)},value:C,"aria-label":"filter-type-select",children:[u.jsx("option",{value:Re.eqIgnoreCase,children:"Equals (case-insensitive)"},Re.eqIgnoreCase),u.jsx("option",{value:Re.containsIgnoreCase,children:"Contains (case-insensitive)"},Re.containsIgnoreCase),u.jsx("option",{value:Re.eq,children:"Equals"},Re.eq),u.jsx("option",{value:Re.contains,children:"Contains"},Re.contains)]})}),u.jsx("div",{className:"goto-row-input",children:u.jsx("input",{ref:T,className:Q("form-control",{"is-invalid":r!==""}),onKeyDown:he,placeholder:"value",onChange:L=>ce(L.target.value),value:g,"aria-label":"Value Input"})})]});case N.dataType.BOOLEAN:return u.jsx("div",{className:"goto-row-input",children:u.jsxs(st,{className:"custom-select",onChange:L=>{ce(L)},value:g,"aria-label":"Value Input",children:[u.jsx("option",{"aria-label":"null value",value:""},"null"),u.jsx("option",{value:"true",children:"true"},"true"),u.jsx("option",{value:"false",children:"false"},"false")]})});default:return u.jsx("div",{className:"goto-row-input",children:u.jsx("input",{ref:T,className:"form-control",onKeyDown:he,placeholder:"value",onChange:L=>ce(L.target.value),value:g,"aria-label":"Value Input"})})}};return u.jsx($t,{isShown:s,className:Q("goto-row"),onEntering:l,onEntered:()=>{o(),Xe()},onExiting:d,onExited:h,children:u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"goto-row-row",children:[u.jsxs("div",{className:Q("goto-row-wrapper",{"is-inactive":!O}),onClick:()=>D(!0),onFocus:()=>D(!0),role:"group",children:[u.jsx("label",{className:"goto-row-text",htmlFor:M,children:"Go to row"}),u.jsx("div",{className:"goto-row-input",children:u.jsx("input",{ref:E,"data-testid":"goto-row-input",type:"number",onKeyDown:L=>{L.key==="Enter"&&(L.stopPropagation(),L.preventDefault(),a())},className:Q("form-control",{"is-invalid":n!==""}),placeholder:"Row number",onChange:L=>{v(L)},value:t,id:M})}),u.jsxs("div",{className:"goto-row-text",children:["of"," ",P.i18n.NumberFormat.format(uu,Z)]}),n&&u.jsx("div",{className:"text-danger",children:n})]}),u.jsx("div",{className:"goto-row-close",children:u.jsx($,{kind:"ghost",onClick:m,children:u.jsx(J,{icon:_i,style:{marginRight:"0"}})})})]}),c.isSeekRowAvailable&&u.jsx("div",{className:"goto-row-row",children:u.jsxs("div",{className:Q("goto-row-wrapper",{"is-inactive":O}),onClick:()=>D(!1),onFocus:()=>D(!1),role:"group",children:[u.jsx("div",{className:"goto-row-text",children:"Go to value"}),u.jsx("div",{className:"goto-row-input",children:u.jsx(st,{className:"custom-select",onChange:L=>{var R=L;S(R)},value:p,"aria-label":"column-name-select",id:"column-name-select",children:A.map(L=>u.jsx("option",{value:L.name,children:L.name},L.name))})}),Ze(),u.jsxs("div",{children:[u.jsx($,{tooltip:"Previous match",icon:ta,kind:"ghost",disabled:g==="",onClick:()=>{y(!0)}}),u.jsx($,{tooltip:"Next match",icon:na,kind:"ghost",disabled:g==="",onClick:()=>{y(!1)}})]}),r&&u.jsx("div",{className:"text-danger",children:r})]})})]})})});Ji.displayName="GotoRow";function Fi(i,e,t,n,r,a,s){try{var l=i[a](s),o=l.value}catch(d){return void t(d)}l.done?e(o):Promise.resolve(o).then(n,r)}function ft(i){return function(){var e=this,t=arguments;return new Promise(function(n,r){var a=i.apply(e,t);function s(o){Fi(a,n,r,s,l,"next",o)}function l(o){Fi(a,n,r,s,l,"throw",o)}s(void 0)})}}function xi(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 se(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xi(Object(t),!0).forEach(function(n){F(i,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):xi(Object(t)).forEach(function(n){Object.defineProperty(i,n,Object.getOwnPropertyDescriptor(t,n))})}return i}function F(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 x=be.module("IrisGrid"),cu=500,mu=500,vu=250,gu=250,fu=250,er=Object.freeze({aggregations:ne,showOnTop:!1}),pu="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function Di(i){var{advancedFilters:e,aggregationSettings:t,customColumns:n,quickFilters:r,reverse:a,rollupConfig:s,searchFilter:l,selectDistinctColumns:o,sorts:d}=i;return e.size===0&&t.aggregations.length===0&&n.length===0&&r.size===0&&!a&&s==null&&l==null&&o.length===0&&d.length===0}class ke extends w.Component{constructor(e){var t,n,r,a;super(e),F(this,"grid",void 0),F(this,"lastFocusedFilterBarColumn",void 0),F(this,"lastLoadedConfig",void 0),F(this,"tooltip",void 0),F(this,"pending",void 0),F(this,"globalColumnFormats",void 0),F(this,"dateTimeFormatterOptions",void 0),F(this,"decimalFormatOptions",void 0),F(this,"integerFormatOptions",void 0),F(this,"truncateNumbersWithPound",void 0),F(this,"showEmptyStrings",void 0),F(this,"showNullStrings",void 0),F(this,"loadingScrimStartTime",void 0),F(this,"loadingScrimFinishTime",void 0),F(this,"animationFrame",void 0),F(this,"loadingTimer",void 0),F(this,"tableSaver",void 0),F(this,"crossColumnRef",void 0),F(this,"isAnimating",void 0),F(this,"filterInputRef",void 0),F(this,"gotoRowRef",void 0),F(this,"isCopying",void 0),F(this,"toggleFilterBarAction",void 0),F(this,"toggleSearchBarAction",void 0),F(this,"toggleGotoRowAction",void 0),F(this,"discardAction",void 0),F(this,"commitAction",void 0),F(this,"contextActions",void 0),F(this,"tableUtils",void 0),F(this,"keyHandlers",void 0),F(this,"mouseHandlers",void 0),F(this,"getAdvancedMenuOpenedHandler",te(R=>this.handleAdvancedMenuOpened.bind(this,R),{max:100})),F(this,"getCachedAdvancedFilterMenuActions",te((R,_,k,G,q)=>u.jsx(_e,{model:R,column:_,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:k,sortDirection:G,formatter:q,tableUtils:this.tableUtils}),{max:50})),F(this,"getCachedOptionItems",te((R,_,k,G,q,X,ie,me,ee,ve,Ge,Ft,zt,Yt,xt,Qt,ot)=>{var ge=[];return R&&ge.push({type:z.CHART_BUILDER,title:"Chart Builder",icon:ia}),_&&ge.push({type:z.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:ra}),G&&ge.push({type:z.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:aa}),k&&ge.push({type:z.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:sa}),q&&ge.push({type:z.ROLLUP_ROWS,title:"Rollup Rows",icon:oa}),X&&ge.push({type:z.AGGREGATIONS,title:"Aggregate Columns",icon:la}),ie&&ge.push({type:z.SELECT_DISTINCT,title:"Select Distinct Values",icon:ua}),me&&Yt&&ge.push({type:z.TABLE_EXPORTER,title:"Download CSV",icon:da}),ot&&ge.push({type:z.ADVANCED_SETTINGS,title:"Advanced Settings",icon:ha}),ge.push({type:z.QUICK_FILTERS,title:"Quick Filters",subtitle:ee.shortcut.getDisplayText(),icon:gn,isOn:Ft,onChange:ee.action}),xt&&ge.push({type:z.SEARCH_BAR,title:"Search Bar",subtitle:ve.shortcut.getDisplayText(),icon:ca,isOn:zt,onChange:ve.action}),ge.push({type:z.GOTO,title:"Go to",subtitle:Ge.shortcut.getDisplayText(),icon:ma,isOn:Qt,onChange:Ge.action}),Object.freeze(ge)},{max:1})),F(this,"getCachedHiddenColumns",te((R,_)=>oe.getHiddenColumns(new Map([...R.initialColumnWidths,..._])),{max:1})),F(this,"getAggregationMap",te((R,_)=>{var k={};return _.forEach(G=>{var{operation:q,selected:X,invert:ie}=G;k[q]=tt.getOperationColumnNames(R,q,X,ie)}),k})),F(this,"getOperationMap",te((R,_)=>{var k={};return _.filter(G=>!tt.isRollupOperation(G.operation)).forEach(G=>{var{operation:q,selected:X,invert:ie}=G;tt.getOperationColumnNames(R,q,X,ie).forEach(me=>{var ee,ve=[...(ee=k[me])!==null&&ee!==void 0?ee:[],q];k[me]=Object.freeze(ve)})}),k})),F(this,"getOperationOrder",te(R=>R.map(_=>_.operation).filter(_=>!tt.isRollupOperation(_)))),F(this,"getCachedFormatColumns",te((R,_,k)=>Io(R,_,k))),F(this,"getCachedPreviewFormatColumns",te((R,_,k,G,q)=>{if(x.debug("getCachedPreviewFormatColumns",k,G,q),G!==void 0&&q!==void 0){var X=[...k];return X[q]=G,this.getCachedFormatColumns(R,_,X)}return this.getCachedFormatColumns(R,_,k)})),F(this,"getModelRollupConfig",te((R,_,k)=>oe.getModelRollupConfig(R,_,k))),F(this,"getModelTotalsConfig",te((R,_,k)=>{var G,q;if(((G=_==null||(q=_.columns)===null||q===void 0?void 0:q.length)!==null&&G!==void 0?G:0)>0)return null;var X=k.aggregations.filter(ee=>ee.selected.length>0||ee.invert);if(X.length===0)return null;var ie=this.getOperationMap(R,X),me=this.getOperationOrder(X);return{operationMap:ie,operationOrder:me,showOnTop:k.showOnTop,defaultOperation:Ta.SKIP}})),F(this,"getCachedStateOverride",te((R,_,k,G,q,X,ie,me,ee,ve)=>({hoverSelectColumn:R,isFilterBarShown:_,isSelectingColumn:k,loadingScrimProgress:G,quickFilters:q,advancedFilters:X,sorts:ie,reverse:me,rollupConfig:ee,isMenuShown:ve}),{max:1})),F(this,"getCachedFilter",te((R,_,k,G)=>[...R??[],...oe.getFiltersFromFilterMap(_),...oe.getFiltersFromFilterMap(k),...G!==void 0?[G]:[]],{max:1})),F(this,"getCachedTheme",te((R,_,k,G,q)=>{var X,ie=R??Ka(),me=G>0?(X=_==null?void 0:_.rowFooterWidth)!==null&&X!==void 0?X:ie.rowFooterWidth:0,{metricCalculator:ee}=this.state;ee!=null&&(ee.resetCalculatedColumnWidths(),ee.resetCalculatedRowHeights());var ve={};return q==="compact"?ve=ie.density.compact:q==="spacious"&&(ve=ie.density.spacious),se(se(se(se({},ie),ve),_),{},{autoSelectRow:!k,rowFooterWidth:me})},{max:1})),F(this,"getCachedKeyHandlers",te(R=>[...R,...this.keyHandlers].sort((_,k)=>_.order-k.order))),F(this,"getCachedMouseHandlers",te(R=>[...R,...this.mouseHandlers].map(_=>typeof _=="function"?_(this):_),{max:1})),F(this,"getCachedRenderer",te(R=>R??new $a,{max:1})),F(this,"getAlwaysFetchColumns",te((R,_,k,G,q,X)=>{for(var ie=[],me=0;me<G;me+=1)ie.push(_[j.getModelIndex(me,k)].name);for(var ee=0;ee<q;ee+=1)ie.push(_[j.getModelIndex(_.length-1-ee,k)].name);if(X)for(var ve=X[0];ve<=X[1];ve+=1)ie.push(_[j.getModelIndex(ve,k)].name);var Ge=new Set([...R,...ie]);return Object.freeze([...Ge])})),F(this,"updateSearchFilter",St((R,_,k,G)=>{var{model:q}=this.props,X=Mt.createSearchFilter(q.dh,R,_,k,G);this.setState({searchFilter:X})},vu)),F(this,"showViewportLoading",Xn(()=>{var{model:R}=this.props,{loadingSpinnerShown:_}=this.state;R.isViewportPending&&!_&&this.startLoading("Waiting for viewport...",{loadingCancelShown:!1,loadingBlocksGrid:!1})},cu,{leading:!1,trailing:!0})),F(this,"handleConditionalFormatEditorUpdate",St(R=>{this.setState({conditionalFormatPreview:R})},fu)),F(this,"handleDownloadProgressUpdate",Xn((R,_)=>{var{tableDownloadStatus:k}=this.state;k===$e.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:R,tableDownloadEstimatedTime:_})},mu)),F(this,"getOverflowButtonTooltip",te(R=>{if(R==null)return null;var _=se(se({position:"absolute"},R),{},{pointerEvents:"none"}),k={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return u.jsx("div",{style:_,children:u.jsx(rt,{options:k,ref:this.handleTooltipRef,children:"View full contents"},Date.now())})})),F(this,"getExpandCellTooltip",te(R=>{if(R==null)return null;var{expandTooltipDisplayValue:_}=this.state,{model:k}=this.props,G=yt(k)&&k.isExpandAllAvailable,q=se(se({position:"absolute"},R),{},{pointerEvents:"none"}),X={placement:"bottom-start"};return u.jsx("div",{style:q,children:u.jsx(rt,{options:X,ref:this.handleTooltipRef,children:u.jsxs("div",{style:{textAlign:"left"},children:["Click to ",_," row",G&&u.jsxs(u.Fragment,{children:[u.jsx("br",{}),Et.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children"]})]})},Date.now())})})),F(this,"getLinkHoverTooltip",te(R=>{if(R==null)return null;var{linkHoverDisplayValue:_}=this.state,k=se(se({position:"absolute"},R),{},{pointerEvents:"none"}),G={placement:"bottom"};return u.jsx("div",{style:k,children:u.jsx(rt,{options:G,ref:this.handleTooltipRef,children:u.jsxs("div",{className:"link-hover-tooltip",children:[_," - Click once to follow.",u.jsx("br",{}),"Click and hold to select this cell."]})})})})),F(this,"handleGotoValueChanged",R=>{this.setState({gotoValue:R,gotoValueManuallyChanged:!0}),this.debouncedSeekRow(R)}),F(this,"debouncedSeekRow",St(R=>{this.seekRow(R)},gu)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTableChanged=this.handleTableChanged.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.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.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.grid=null,this.lastLoadedConfig=null,this.pending=new ji,this.globalColumnFormats=ne,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.showEmptyStrings=!0,this.showNullStrings=!0,this.tableSaver=null,this.crossColumnRef=Le.createRef(),this.isAnimating=!1,this.filterInputRef=Le.createRef(),this.gotoRowRef=Le.createRef(),this.isCopying=!1,this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:Qe.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:Qe.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:Qe.TABLE.GOTO_ROW},this.discardAction={action:()=>{var{model:R}=this.props;Oe(R)&&R.isEditable&&R.pendingDataMap.size>0&&this.discardPending().catch(x.error)},shortcut:Qe.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var{model:R}=this.props;Oe(R)&&R.isEditable&&R.pendingDataMap.size>0&&R.pendingDataErrors.size===0&&this.commitPending().catch(x.error)},shortcut:Qe.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var{aggregationSettings:s,conditionalFormats:l,customColumnFormatMap:o,isFilterBarShown:d,isSelectingPartition:h,partitions:c,partitionConfig:v,model:m,movedColumns:p,movedRows:g,rollupConfig:C,userColumnWidths:S,userRowHeights:f,showSearchBar:b,searchValue:y,selectedSearchColumns:E,invertSearchColumns:T,advancedFilters:O,quickFilters:D,selectDistinctColumns:A,pendingDataMap:P,canCopy:Z,frozenColumns:M,columnHeaderGroups:Y,getMetricCalculator:he}=e,{dh:ue}=m,we=[new Yo(this),new nl(this),new sl(this)],fe=[new za(this),new Ya(this),new Qa(this),new qa(this),new Xa(this),new Za(this),new Ja(this),new es(this,ue),new ts(this),new ns(this),new is(this),...Z?[new rs(this)]:[]];Z&&we.push(new Zo(this));var Ee=p.length>0?p:m.initialMovedColumns,ce=g.length>0?g:m.initialMovedRows,Xe=he({userColumnWidths:new Map(S),userRowHeights:new Map(f),movedColumns:Ee,initialColumnWidths:new Map(m==null||(t=m.layoutHints)===null||t===void 0||(n=t.hiddenColumns)===null||n===void 0?void 0:n.map(R=>[m.getColumnIndexByName(R),0]))}),Ze=E??[],L=Mt.createSearchFilter(ue,y,Ze,m.columns,T);this.tableUtils=new N(ue),this.mouseHandlers=fe,this.keyHandlers=we,this.state={isFilterBarShown:d,isSelectingPartition:h,focusedFilterBarColumn:null,metricCalculator:Xe,metrics:void 0,partitionConfig:v??(c&&c.length?{partitions:c,mode:"partition"}:void 0),quickFilters:D?new Map(D):new Map,advancedFilters:new Map(O),shownAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverse:!1,customColumns:[],selectDistinctColumns:A,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,loadingCancelShown:!1,loadingBlocksGrid:!1,movedColumns:Ee,movedRows:ce,shownColumnTooltip:null,formatter:new an(ue),isMenuShown:!1,customColumnFormatMap:new Map(o),conditionalFormats:l,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:b,searchFilter:L,searchValue:y,selectedSearchColumns:Ze,invertSearchColumns:T,rollupConfig:C,rollupSelectedColumns:[],aggregationSettings:s,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:P??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:M,showOverflowModal:!1,overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",linkHoverTooltipProps:null,linkHoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(r=(a=m.columns[0])===null||a===void 0?void 0:a.name)!==null&&r!==void 0?r:"",gotoValueSelectedFilter:Re.eqIgnoreCase,gotoValue:"",gotoValueManuallyChanged:!1,columnHeaderGroups:Y??m.initialColumnHeaderGroups}}componentDidMount(){var{model:e}=this.props;this.initState(),this.startListening(e)}componentDidUpdate(e,t){var{inputFilters:n,isSelectingColumn:r,settings:a,model:s,customFilters:l,sorts:o}=this.props;s!==e.model&&(this.stopListening(e.model),this.startListening(s));var d=n!==e.inputFilters?n.filter(S=>!e.inputFilters.includes(S)):[];if(d.length>0){var h,{advancedSettings:c}=this.props,v=(h=c.get(Vt.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&h!==void 0?h:!1;v&&(this.clearGridInputField(),this.clearCrossColumSearch()),this.startLoading("Filtering...",{resetRanges:!0}),this.applyInputFilters(d,v)}r!==e.isSelectingColumn&&this.resetColumnSelection(),a!==e.settings&&this.updateFormatterSettings(a),l!==e.customFilters&&this.startLoading("Filtering...",{resetRanges:!0}),o!==e.sorts&&this.updateSorts(o);var{loadingScrimStartTime:m,loadingScrimFinishTime:p}=this;m!=null&&p!=null&&window.requestAnimationFrame(()=>{var S=Date.now(),f=S-m,b=p-m,y=Math.min(f/b,1);p<S&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(E=>E.loadingScrimProgress==null?(x.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:y})});var{openOptions:g}=this.state;if(g!==t.openOptions){var C=S=>S.type===z.AGGREGATION_EDIT;!g.some(C)&&t.openOptions.some(C)&&this.removeEmptyAggregations()}this.sendStateChange()}componentWillUnmount(){var{model:e}=this.props;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame),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{keyHandlers:e}=this.props;return this.getCachedKeyHandlers(e)}getMetricState(){var e,t=(e=this.grid)===null||e===void 0?void 0:e.getMetricState();if(t!=null){var{isFilterBarShown:n,advancedFilters:r,quickFilters:a,sorts:s,reverse:l}=this.state,{model:o}=this.props;return se(se({},t),{},{model:o,theme:this.getTheme(),isFilterBarShown:n,advancedFilters:r,quickFilters:a,sorts:s,reverse:l})}}get renderer(){var{renderer:e}=this.props;return this.getCachedRenderer(e)}getMouseHandlers(){var{mouseHandlers:e}=this.props;return this.getCachedMouseHandlers(e)}getValueForCell(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:r}=this.props,{dh:a}=r,s=this.getModelColumn(e),l=this.getModelRow(t);if(n&&s!=null&&l!=null){var o=r.valueForCell(s,l);if(N.isDateType(r.columns[s].type)){var{formatter:d}=r;return a.i18n.DateTimeFormat.format(pu,o,a.i18n.TimeZone.getTimeZone(d.timeZone))}return o}return n?null:s!=null&&l!=null?r.textForCell(s,l):""}getModelColumn(e){var{metrics:t}=this.state;V(t);var{modelColumns:n}=t;return n==null?null:e!=null&&e<0?e:e!=null?n.get(e):null}getModelRow(e){var{metrics:t}=this.state;V(t);var{modelRows:n}=t;return n==null?null:e!=null?n.get(e):null}getTheme(){var e,{model:t,theme:n,density:r}=this.props,{theme:a,density:s}=this.context;return this.getCachedTheme(a,n,(e=Oe(t)&&t.isEditable)!==null&&e!==void 0?e:!1,t.floatingTopRowCount+t.floatingBottomRowCount,r??s)}getVisibleColumn(e){var{movedColumns:t}=this.state;return j.getVisibleIndex(e,t)}makeQuickFilter(e,t,n){try{return this.tableUtils.makeQuickFilter(e,t,n)}catch(r){x.error("Error creating quick filter",r)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{model:n}=this.props,{advancedFilters:r,quickFilters:a}=this.state,s=t?new Map:new Map(r),l=t?new Map:new Map(a),o=t&&r.size>0;e.forEach(d=>{var{name:h,type:c,value:v}=d,m=n.columns.findIndex(p=>{var{name:g,type:C}=p;return g===h&&C===c});m>=0?(o=s.delete(m)||o,o=this.applyQuickFilter(m,v,l)||o):x.error("Unable to find column for inputFilter",h,c,v)}),o&&this.setState({quickFilters:l,advancedFilters:s})}applyQuickFilter(e,t,n){var{model:r}=this.props,{formatter:a}=r,s=r.columns[e];if(t!=null&&"".concat(t).trim().length>0){var l=n.get(e);if(l!=null){var{text:o}=l;if(o===t)return x.debug2("Ignoring change to existing filter"),!1}return n.set(e,{text:t,filter:this.makeQuickFilter(s,t,a.timeZone)}),!0}return n.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,n){x.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",{resetRanges:!0}),this.setState(r=>{var{advancedFilters:a}=r,s=new Map(a);return t==null?s.delete(e):s.set(e,{filter:t,options:n}),{advancedFilters:s}})}setQuickFilter(e,t,n){x.debug("Setting quick filter",e,t,n),this.startLoading("Filtering...",{resetRanges:!0}),this.setState(r=>{var{quickFilters:a}=r,s=new Map(a);return s.set(e,{filter:t,text:n}),{quickFilters:s}})}setFilterMap(e){var t;x.debug("setFilterMap",e);var{advancedSettings:n}=this.props,r=(t=n.get(Vt.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;r&&this.clearAllFilters();var{model:a}=this.props;e.forEach((s,l)=>{var{columnType:o,filterList:d}=s,h=a.columns.find(p=>p.name===l&&p.type===o);if(h!=null){var c=a.getColumnIndexByName(h.name);V(c);var v=oe.combineFiltersFromList(o,d);if(v.length===0)this.removeQuickFilter(c);else{var{formatter:m}=a;this.setQuickFilter(c,this.makeQuickFilter(h,v,m.timeZone),"".concat(v))}}})}removeColumnFilter(e){this.startLoading("Filtering...",{resetRanges:!0});var t=Array.isArray(e)?e:[e,e];this.setState(n=>{var{advancedFilters:r,quickFilters:a}=n,s=r?new Map(r):new Map,l=a?new Map(a):new Map;return s.forEach((o,d)=>{d>=t[0]&&d<=t[1]&&s.delete(d)}),l.forEach((o,d)=>{d>=t[0]&&d<=t[1]&&l.delete(d)}),{quickFilters:l,advancedFilters:s}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",{resetRanges:!0}),this.setState(t=>{var{quickFilters:n}=t,r=new Map(n);return r.delete(e),{quickFilters:r}})}clearAllFilters(){x.debug("Clearing all filters");var{advancedFilters:e,quickFilters:t,searchFilter:n}=this.state;t.size===0&&e.size===0&&n===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",{resetRanges:!0}),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearCrossColumSearch(){x.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){var{model:e}=this.props,{advancedFilters:t,quickFilters:n}=this.state;if(t.size===0&&n.size===0){x.debug("No filters to rebuild");return}var{columns:r,formatter:a}=e;x.debug("Rebuilding filters");var s=new Map,l=new Map;t.forEach((o,d)=>{var{options:h}=o,c=r[d],v=this.tableUtils.makeAdvancedFilter(c,h,a.timeZone);s.set(d,{options:h,filter:v})}),n.forEach((o,d)=>{var{text:h}=o,c=r[d];l.set(d,{text:h,filter:this.makeQuickFilter(c,h,a.timeZone)})}),this.startLoading("Rebuilding filters...",{resetRanges:!0}),this.setState({quickFilters:l,advancedFilters:s})}setFilters(e){var{quickFilters:t,advancedFilters:n}=e;this.setState({quickFilters:t,advancedFilters:n})}updateFormatterSettings(e){var t,n,r,a,s,l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,o=ti.getColumnFormats(e),d=ti.getDateTimeFormatterOptions(e),h=(t=e==null?void 0:e.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},c=(n=e==null?void 0:e.defaultIntegerFormatOptions)!==null&&n!==void 0?n:{},v=(r=e==null?void 0:e.truncateNumbersWithPound)!==null&&r!==void 0?r:!1,m=(a=e==null?void 0:e.showEmptyStrings)!==null&&a!==void 0?a:!0,p=(s=e==null?void 0:e.showNullStrings)!==null&&s!==void 0?s:!0,g=!Ye(this.globalColumnFormats,o),C=!Ye(this.dateTimeFormatterOptions,d),S=!Ye(this.decimalFormatOptions,e==null?void 0:e.defaultDecimalFormatOptions),f=!Ye(this.integerFormatOptions,c),b=this.truncateNumbersWithPound!==v,y=this.showEmptyStrings!==m,E=this.showNullStrings!==p;(g||C||S||f||b||y||E)&&(this.globalColumnFormats=o,this.dateTimeFormatterOptions=d,this.decimalFormatOptions=h,this.integerFormatOptions=c,this.truncateNumbersWithPound=v,this.showEmptyStrings=m,this.showNullStrings=p,this.updateFormatter({},l),C&&l&&this.rebuildFilters())}updateFormatter(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{customColumnFormatMap:r}=this.state,{model:a}=this.props,s=se({customColumnFormatMap:r},e),l=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...s.customColumnFormatMap.values()],o=new an(a.dh,l,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound,this.showEmptyStrings,this.showNullStrings);x.debug("updateFormatter",this.globalColumnFormats,l),this.setState(se(se({},s),{},{formatter:o}),()=>{n&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}initState(){var{model:e}=this.props;try{jt(e)&&e.isPartitionRequired?this.loadPartitionsTable(e):this.loadTableState()}catch(t){this.handleTableLoadError(t)}}loadTableState(){var{applyInputFiltersOnInit:e,inputFilters:t,sorts:n,model:r,reverse:a,reverseType:s,customColumns:l,searchValue:o,selectedSearchColumns:d,invertSearchColumns:h}=this.props,c=d??[],v=Mt.createSearchFilter(r.dh,o,c,r.columns,h);if(e){var m=t.filter(p=>p.value!=null);this.applyInputFilters(m)}this.setState({sorts:n,reverse:a||s===N.REVERSE_TYPE.POST_SORT,customColumns:l,isReady:!0,searchFilter:v}),this.initFormatter()}loadPartitionsTable(e){var t=this;return ft(function*(){try{var{partitionConfig:n}=t.state;n||(t.startLoading("Loading partitions...",{loadingCancelShown:!1,resetRanges:!0}),t.initializePartitionConfig(e)),t.setState({isSelectingPartition:!0},t.loadTableState)}catch(r){Ae.isCanceled(r)||t.handleTableLoadError(r)}})()}initializePartitionConfig(e){var t=this;return ft(function*(){var n=yield t.pending.add(e.partitionKeysTable(),s=>s.close()),{dh:r}=e,a=n.columns.map(s=>s.sort().desc());n.applySort(a),n.setViewport(0,0),n.addEventListener(r.Table.EVENT_UPDATED,s=>{try{var{detail:l}=s;if(l.rows.length===0){t.stopLoading();return}var o=l.rows[0],d=n.columns.map(c=>o.get(c)),h={partitions:d,mode:e.isPartitionAwareSourceTable?"partition":"keys"};n.close(),t.setState({loadingSpinnerShown:!1,partitionConfig:h})}catch(c){n.close(),x.error("Error getting initial partition config",c)}})})()}selectPartitionKeyFromTable(e){var{model:t}=this.props;if(V(e),jt(t)){var n=this.getRowDataMap(e),r=new Set(t.partitionColumns.map(l=>l.name)),a=Object.entries(n).filter(l=>{var[o,d]=l;return r.has(o)}).map(l=>{var[o,d]=l;return d.value}),s={partitions:a,mode:"partition"};this.setState({isSelectingPartition:!0,partitionConfig:s})}}copyCell(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{canCopy:r}=this.props;if(r){var a=String(this.getValueForCell(e,t,n));Mi(a).catch(s=>x.error("Unable to copy cell",s))}else x.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{canCopy:n}=this.props,{movedColumns:r}=this.state;if(n){var a={columnIndex:e,columnDepth:t,movedColumns:r};this.setState({copyOperation:a})}else x.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,{model:a,canCopy:s}=this.props,{metricCalculator:l,movedColumns:o}=this.state,d=l.getUserColumnWidths();if(s){var h={ranges:K.boundedRanges(e,a.columnCount,a.rowCount),includeHeaders:t,formatValues:n,movedColumns:o,userColumnWidths:d,error:r};this.setState({copyOperation:h})}else x.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var{resetRanges:t=!1,loadingCancelShown:n=!0,loadingBlocksGrid:r=!0}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.setState({loadingText:e,loadingCancelShown:n,loadingBlocksGrid:r});var a=this.getTheme();if(t&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var s,l,{minScrimTransitionTime:o,maxScrimTransitionTime:d}=a;V(o),V(d);var h=(s=(l=this.gridWrapper)===null||l===void 0?void 0:l.getBoundingClientRect().height)!==null&&s!==void 0?s:0,c=Math.max(o,Math.min(h/2,d));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+c,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},ke.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){x.debug("loading last loading config",this.lastLoadedConfig);var{advancedFilters:e,aggregationSettings:t,customColumns:n,quickFilters:r,reverse:a,rollupConfig:s,searchFilter:l,selectDistinctColumns:o,sorts:d}=this.lastLoadedConfig;this.lastLoadedConfig=null,this.setState({advancedFilters:e,aggregationSettings:t,customColumns:n,quickFilters:r,reverse:a,rollupConfig:s,searchFilter:l,selectDistinctColumns:o,sorts:d})}else x.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:er,customColumns:[],quickFilters:new Map,reverse:!1,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!Di(this.state)}startListening(e){e.addEventListener(xe.EVENT.UPDATED,this.handleUpdate),e.addEventListener(xe.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(xe.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(xe.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated),e.addEventListener(xe.EVENT.VIEWPORT_UPDATED,this.handleViewportUpdated),e.addEventListener(xe.EVENT.TABLE_CHANGED,this.handleTableChanged)}stopListening(e){e.removeEventListener(xe.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(xe.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(xe.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(xe.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated),e.removeEventListener(xe.EVENT.VIEWPORT_UPDATED,this.handleViewportUpdated),e.removeEventListener(xe.EVENT.TABLE_CHANGED,this.handleTableChanged)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var{movedColumns:t}=this.state,{model:n}=this.props,{columnCount:r}=n,a=j.getModelIndex(e,t);if(e==null||r<=e||!n.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var{metricCalculator:s,metrics:l}=this.state;V(l);var o=this.getMetricState();V(o);var d=s.getScrollLeftForColumn(e,o,l);if(d!=null){var h;(h=this.grid)===null||h===void 0||h.setViewState({left:d,leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,{metricCalculator:n,movedColumns:r}=this.state;n.setColumnWidth(j.getModelIndex(e,r),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:n}=this.state,{model:r}=this.props;x.debug2("freezing column",e);var a=t==null?new Set(r.frozenColumns):new Set(t);a.add(e);var s=r.getColumnIndexByName(e);V(s);var l=j.getVisibleIndex(s,n),o=j.moveItem(l,a.size-1,n);this.setState({frozenColumns:[...a],movedColumns:o})}unFreezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:n}=this.state,{model:r}=this.props;x.debug2("unfreezing column",e);var a=t==null?new Set(r.frozenColumns):new Set(t);a.delete(e);var s=r.getColumnIndexByName(e);V(s);var l=j.getVisibleIndex(s,n),o=j.moveItem(l,a.size+r.frontColumns.length,n);this.setState({frozenColumns:[...a],movedColumns:o})}toggleExpandColumn(e,t){x.debug2("Toggle expand column",e);var{model:n}=this.props;sn(n)&&n.hasExpandableColumns&&n.setColumnExpanded(e,!n.isColumnExpanded(e),t)}expandAllColumns(){x.debug2("Expand all columns");var{model:e}=this.props;sn(e)&&e.isExpandAllColumnsAvailable&&e.expandAllColumns()}collapseAllColumns(){x.debug2("Collapse all columns");var{model:e}=this.props;sn(e)&&e.isExpandAllColumnsAvailable&&e.collapseAllColumns()}handleColumnVisibilityChanged(e,t){var n,{metricCalculator:r,metrics:a}=this.state;V(a),t?e.forEach(s=>{var l=r.initialColumnWidths.get(s),o=De(a.calculatedColumnWidths,s);l!==o?r.setColumnWidth(s,o):r.resetColumnWidth(s)}):e.forEach(s=>{r.setColumnWidth(s,0)}),(n=this.grid)===null||n===void 0||n.forceUpdate()}handleColumnVisibilityReset(){var e,t,{metricCalculator:n}=this.state,{model:r}=this.props;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:[]})}handleCrossColumnSearch(e,t,n){var{model:r}=this.props;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(){x.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){x.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionChange(e){this.startLoading("Partitioning...");var{partitionConfig:t}=this.state;t!==e&&this.setState({partitionConfig:e})}handleTableLoadError(e){if(!Ae.isCanceled(e)){x.error(e);var{onError:t}=this.props;t(e)}}handleViewportUpdated(){var{model:e}=this.props,{loadingText:t,loadingSpinnerShown:n}=this.state,r="Waiting for viewport...";e.isViewportPending&&!n?this.showViewportLoading():t===r&&!e.isViewportPending&&this.stopLoading()}showAllColumns(){for(var e,{metricCalculator:t}=this.state,n=t.getUserColumnWidths(),r=[...n.entries()],a=0;a<r.length;a+=1){var[s,l]=r[a];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){x.info("Toggling sort for column",e);var{model:n}=this.props,r=this.getModelColumn(e);if(V(r),n.isColumnSortable(e)){var{sorts:a}=this.state,s=N.toggleSortForColumn(a,n.columns,r,t);this.updateSorts(s)}else x.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]:N.sortDirection.none,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;V(e);var{model:s}=this.props,l=N.sortColumn(s.sort,s.columns,e,n,r,a);this.startLoading("Sorting..."),this.setState({sorts:l}),(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{model:e}=this.props;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,{isFilterBarShown:t}=this.state;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var n=0,{model:r}=this.props,{columnCount:a}=r,s=0;s<a;s+=1){var l=this.getModelColumn(s);if(l!=null){var o=r.columns[l];if(o!=null&&N.isTextType(o.type)){n=s;break}}}this.focusFilterBar(n)}else{var d;(d=this.grid)===null||d===void 0||d.focus()}}isTableSearchAvailable(){var e,t,n,{model:r,canToggleSearch:a}=this.props,{dh:s}=r,l=r==null||(e=r.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:a}toggleSearchBar(){var{showSearchBar:e}=this.state;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]:"",{isGotoShown:s}=this.state;if(n||r){var l;this.setState({isGotoShown:!0,gotoValue:r,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1}),this.focusRowInGrid(n),(l=this.gotoRowRef.current)===null||l===void 0||l.focus();return}var o=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,d=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(o==null||d==null){this.setState({isGotoShown:!s,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1});return}var{model:h}=this.props,{name:c,type:v}=h.columns[d],m=h.valueForCell(d,o),p=oe.convertValueToText(m,v);this.setState({isGotoShown:!s,gotoRow:"".concat(o+1),gotoValue:p,gotoValueSelectedColumnName:c,gotoRowError:"",gotoValueError:"",gotoValueManuallyChanged:!1})}commitPending(){var e=this;return ft(function*(){var t,n,{model:r}=e.props;if(!Oe(r)||!r.isEditable)throw new Error("Cannot save, table is not editable");var{pendingSavePromise:a}=e.state;if(a!=null)throw new Error("Save already in progress");var s=(t=document)===null||t===void 0||(n=t.activeElement)===null||n===void 0?void 0:n.classList.contains("grid-cell-input-field");if(s!=null&&s){var l;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new Da("Current input is invalid");(l=e.grid)===null||l===void 0||l.focus()}var o=e.pending.add(r.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(d=>{Ae.isCanceled(d)||e.setState({pendingSaveError:d,pendingSavePromise:null})});return e.setState({pendingSavePromise:o}),o})()}discardPending(){var e=this;return ft(function*(){var{pendingSavePromise:t}=e.state;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var{onColumnSelected:t}=this.props;t(e)}selectData(e,t){var n=this.getRowDataMap(t),{onDataSelected:r}=this.props;r(t,n)}getRowDataMap(e){for(var t=this,{model:n}=this.props,{columns:r,groupedColumns:a}=n,s={},l=function(){var h=r[o],{name:c,type:v}=h,m=n.valueForCell(o,e),p=n.textForCell(o,e),g=t.getVisibleColumn(o),C=yt(n)&&n.isRowExpandable(e),S=a.find(f=>f.name===c)!=null;s[c]={value:m,text:p,type:v,isGrouped:S,isExpandable:C,visibleIndex:g}},o=0;o<r.length;o+=1)l();return s}handleAdvancedFilterChange(e,t,n){var{model:r}=this.props,a=r.getColumnIndexByName(e.name);V(a),this.setAdvancedFilter(a,t,n)}handleAdvancedFilterSortChange(e,t){var n,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:a}=this.props,s=a.getColumnIndexByName(e.name);V(s);var l=a.columns[s].name,o=N.getSortForColumn(a.sort,l),d=null;(o==null||o.direction!==t)&&(t===N.sortDirection.descending?d=e.sort().desc():d=e.sort().asc());var h=N.setSortForColumn(a.sort,l,d,r);x.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()}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e})}handleGotoRowOpened(){this.setState({isGotoShown:!0,gotoValueManuallyChanged:!1})}handleGotoRowClosed(){this.setState({isGotoShown:!1,gotoValueManuallyChanged:!1})}handleAdvancedMenuClosed(e){var t,{focusedFilterBarColumn:n,isFilterBarShown:r}=this.state;if(r&&n===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var a;(a=this.filterInputRef)===null||a===void 0||a.current.focus(),this.setState({shownAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var{model:t,onCreateChart:n}=this.props;n(e,t)}handleGridError(e){x.warn("Grid Error",e),this.setState({toastMessage:u.jsx("div",{className:"error-message",children:"".concat(e)})})}handleFilterBarChange(e){this.startLoading("Filtering...",{resetRanges:!0}),this.setState(t=>{var{focusedFilterBarColumn:n,quickFilters:r}=t,a=new Map(r);if(n!=null){var s=this.getModelColumn(n);V(s),this.applyQuickFilter(s,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{focusedFilterBarColumn:t}=this.state;V(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var{model:n}=this.props,r=n.columns[e],{customColumnFormatMap:a}=this.state,s=new Map(a);if(t!=null){var l=N.getNormalizedType(r.type);V(l);var o=an.makeColumnFormattingRule(l,r.name,t);s.set(r.name,o)}else s.delete(r.name);this.updateFormatter({customColumnFormatMap:s})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var{openOptions:t}=e,n=[...t];return n.pop(),{openOptions:n}})}handleMenuSelect(e){this.setState(t=>{var{openOptions:n}=t;return{openOptions:[...n,e]}})}handleRequestFailed(e){var{detail:t}=e;x.error("request failed:",t),this.stopLoading();var{partitionConfig:n}=this.state;if(ya(t)&&n!=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{x.error("Table failed and unable to rollback");var{onError:r}=this.props;r(new Error("Error displaying table: ".concat(t)))}}handleUpdate(){var e;x.debug2("Received model update");var{advancedFilters:t,aggregationSettings:n,customColumns:r,quickFilters:a,reverse:s,rollupConfig:l,searchFilter:o,selectDistinctColumns:d,sorts:h}=this.state,c={advancedFilters:t,aggregationSettings:n,customColumns:r,quickFilters:a,reverse:s,rollupConfig:l,searchFilter:o,selectDistinctColumns:d,sorts:h};Di(c)?this.lastLoadedConfig=null:this.lastLoadedConfig=c,(e=this.grid)===null||e===void 0||e.forceUpdate(),this.stopLoading()}handleTableChanged(){var{model:e}=this.props;this.setState({movedColumns:e.initialMovedColumns})}handleViewChanged(e){var t,n,{model:r}=this.props,{selectionEndRow:a=0}=(t=(n=this.grid)===null||n===void 0?void 0:n.state)!==null&&t!==void 0?t:{},s=0;if(Oe(r)&&r.isEditable){V(e);var{bottomViewport:l}=e,o=r.rowCount-r.floatingBottomRowCount;a===o-1?s=r.pendingRowCount+1:a===o-2?s=r.pendingRowCount:s=Math.max(0,l-(r.rowCount-r.pendingRowCount)-r.floatingTopRowCount-r.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:s})}handleSelectionChanged(e){var t;V(e);var{onSelectionChanged:n}=this.props,{copyOperation:r}=this.state;this.setState({selectedRanges:e}),r!=null&&this.setState({copyOperation:null}),((t=this.grid)===null||t===void 0?void 0:t.state.cursorRow)!=null&&this.setState({gotoRow:"".concat(this.grid.state.cursorRow+1)}),n(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var{model:t}=this.props;this.setState({columnHeaderGroups:oe.parseColumnHeaderGroups(t,e).groups},()=>{var n;return(n=this.grid)===null||n===void 0?void 0:n.forceUpdate()})}handleTooltipRef(e){e!=null&&e.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){x.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){x.debug("Create new conditional format");var{openOptions:e,conditionalFormats:t}=this.state;this.setState({openOptions:[...e,{type:z.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:t.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){x.debug("Edit conditional format",e);var{openOptions:t,conditionalFormats:n}=this.state;this.setState({openOptions:[...t,{type:z.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:se({},n[e])})}handleConditionalFormatEditorSave(e){x.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return x.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){x.info("handleUpdateCustomColumns:",e);var{model:t}=this.props,{movedColumns:n,sorts:r,quickFilters:a,advancedFilters:s,selectDistinctColumns:l}=this.state,{columns:o}=t,d=t.customColumns.map(C=>"".concat(C)),h=oe.getRemovedCustomColumnNames(d,e);if(h.length>0){var c=oe.removeSortsInColumns(r,h),v=oe.removeFiltersInColumns(o,a,h),m=oe.removeFiltersInColumns(o,s,h),p=oe.removeColumnFromMovedColumns(o,n,h),g=oe.removeColumnsFromSelectDistinctColumns(l,h);c.length!==r.length&&(x.debug("removing sorts from removed custom columns..."),this.setState({sorts:c})),(v.size!==a.size||m.size!==s.size)&&(x.debug("removing filters from removed custom columns..."),this.setState({quickFilters:v,advancedFilters:m})),Ye(n,p)||(x.debug("change moved columns for removed custom columns",p),this.setState({movedColumns:p})),Ye(l,g)||(x.debug("change selectDistinct columns for removed custom columns",p),this.setState({selectDistinctColumns:g}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){x.debug("Model columns changed");var{isReady:e}=this.state;e?(this.updateMetrics(),this.stopLoading()):this.loadTableState()}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;x.debug("pending data updated");var{model:t}=this.props,{pendingDataMap:n,pendingDataErrors:r}=t;this.setState({pendingDataMap:n,pendingDataErrors:r,pendingSaveError:null}),(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]:[];x.debug("handleAggregationsChange",e,r,a);var{rollupConfig:s}=this.state,l=((t=s==null||(n=s.columns)===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0)>0,o=[...r,...a],d=!(l&&o.length>0&&o.every(h=>tt.isRollupProhibited(h)));d&&this.startLoading("Aggregating ".concat(e.aggregations.map(h=>h.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){var t,n;x.debug("handleAggregationChange",e);var{rollupConfig:r}=this.state,a=((t=r==null||(n=r.columns)===null||n===void 0?void 0:n.length)!==null&&t!==void 0?t:0)>0,s=!(a&&tt.isRollupProhibited(e.operation));s&&this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(l=>{var{aggregationSettings:o}=l;return{selectedAggregation:e,aggregationSettings:se(se({},o),{},{aggregations:o.aggregations.map(d=>d.operation===e.operation?e:d)})}})}handleAggregationEdit(e){x.debug("handleAggregationEdit",e);var{openOptions:t}=this.state;this.setState({openOptions:[...t,{type:z.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,n;x.info("Rollup change",e),this.resetGridViewState(),this.showAllColumns(),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:[],frozenColumns:[],sorts:[],reverse:!1,selectDistinctColumns:[]})}handleSelectDistinctChanged(e){x.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverse:!1})}handleDownloadTableStart(){var{canDownloadCsv:e}=this.props;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:$e.DOWNLOAD_STATUS.INITIATING}):x.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,n,r,a,s,l){var{canDownloadCsv:o}=this.props;o?(x.info("start table downloading",e,t,n,r,a,s,l),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,n,r,a,s,l),{tableDownloadStatus:$e.DOWNLOAD_STATUS.DOWNLOADING}))):x.error("Attempted to handleDownloadTable for user without download CSV permission.")}removeEmptyAggregations(){x.debug("removeEmptyAggregations"),this.setState(e=>{var{aggregationSettings:t}=e,{aggregations:n}=t,r=n.filter(a=>a.selected.length>0||a.invert);return r.length!==n.length?{selectedAggregation:null,aggregationSettings:se(se({},t),{},{aggregations:r})}:{selectedAggregation:null,aggregationSettings:t}})}seekRow(e){var t=arguments,n=this;return ft(function*(){var r,a=t.length>1&&t[1]!==void 0?t[1]:!1,{gotoValueSelectedColumnName:s,gotoValueSelectedFilter:l}=n.state,{model:o}=n.props,{dh:d}=o;if(o.isSeekRowAvailable&&e!==""){var h=oe.getColumnByName(o.columns,s);if(h!==void 0){var c=(r=n.grid)===null||r===void 0?void 0:r.state.cursorRow;c==null&&(c=0);var v=l===Re.contains||l===Re.containsIgnoreCase,m=l===Re.eqIgnoreCase||l===Re.containsIgnoreCase;try{var p,{formatter:g}=o,C=N.getNormalizedType(h.type),S;switch(C){case N.dataType.CHAR:case N.dataType.STRING:{S=yield o.seekRow(c,h,d.ValueType.STRING,e,m,v,a??!1);break}case N.dataType.DATETIME:{var[f]=bn.parseDateRange(d,e,g.timeZone);S=yield o.seekRow(c,h,d.ValueType.DATETIME,f,void 0,void 0,a??!1);break}case N.dataType.DECIMAL:case N.dataType.INT:{if(!N.isBigDecimalType(h.type)&&!N.isBigIntegerType(h.type)){var b=parseInt(e,10);e==="-Infinity"?b=Number.NEGATIVE_INFINITY:e==="Infinity"&&(b=Number.POSITIVE_INFINITY),S=yield o.seekRow(c,h,d.ValueType.NUMBER,b,void 0,void 0,a??!1)}else S=yield o.seekRow(c,h,d.ValueType.STRING,e,void 0,void 0,a??!1);break}default:S=yield o.seekRow(c,h,d.ValueType.STRING,n.tableUtils.makeValue(h.type,e,g.timeZone),void 0,void 0,a??!1)}(p=n.grid)===null||p===void 0||p.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:$e.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:$e.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var{model:t}=this.props;if(!as(t)||!t.isDeletable)throw new Error("Model does not support deleting ranges");this.pending.add(t.delete(e)).catch(n=>{Ae.isCanceled(n)||x.error("Unable to delete ranges",e,n)})}resetColumnSelection(){if(this.grid!=null){var{isSelectingColumn:e}=this.props;if(e){var{columnAllowedCursor:t}=this.props;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var{state:e}=this,{state:t}=this.grid,{onStateChange:n}=this.props;n(e,t)}}handleOverflowClose(){this.setState({showOverflowModal:!1})}getColumnBoundingRect(){var e,{metrics:t,shownColumnTooltip:n}=this.state;V(t),V(n);var r=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),a=20;V(r);var{columnHeaderHeight:s,allColumnXs:l,allColumnWidths:o,width:d,columnHeaderMaxDepth:h}=t,c=l.get(n),v=o.get(n);V(c),V(v);var m=r.left+Ie(c+v/2,a,d-a);return{top:r.top+(h-1)*s,left:r.left+Ie(c+v/2,a,d-a),bottom:r.top+h*s,right:r.left+Ie(c+v/2,a,d-a)+1,width:1,height:s,x:m,y:r.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var{gotoRow:e}=this.state;this.focusRowInGrid(e)}focusRowInGrid(e){var{model:t}=this.props,{rowCount:n}=t;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 s;this.setState({gotoRowError:"",gotoValueError:""}),(s=this.grid)===null||s===void 0||s.setFocusRow(r+n)}else{var l;(l=this.grid)===null||l===void 0||l.setFocusRow(r-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,n){var{columnHeaderHeight:r,columnHeaderMaxDepth:a,allColumnXs:s,allColumnWidths:l,width:o}=t,d=s.get(e),h=l.get(e);if(d==null||h==null)return null;var c=Math.max(0,d),v=h;d+h>o?v=o-d:d<0&&(v=h-Math.abs(d));var m={position:"absolute",top:(a-1)*r,left:c,width:v,height:r,pointerEvents:"none"},p={clientWidth:1,clientHeight:r,getBoundingClientRect:this.getColumnBoundingRect},g={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},C=this.getModelColumn(e);if(C==null)return null;var S=n.columns[C];return S==null?null:u.jsx("div",{style:m,children:u.jsx(rt,{timeout:400,interactive:!0,options:g,ref:this.handleTooltipRef,referenceObject:p,onExited:()=>{this.setState({shownColumnTooltip:null})},children:u.jsx(Ot,{model:n,column:S,onStatistics:()=>{var f;(f=this.tooltip)===null||f===void 0||f.update()}})},S.name)})}handleGotoValueSelectedColumnNameChanged(e){var t,{model:n}=this.props,r=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow,{gotoValueSelectedColumnName:a,gotoValueManuallyChanged:s}=this.state;if(r!=null){var l=n.getColumnIndexByName(e),o=oe.getColumnByName(n.columns,e),d=oe.getColumnByName(n.columns,a);if(l==null||o==null)return;var h=n.valueForCell(l,r),c=oe.convertValueToText(h,o.type);s&&o.type===(d==null?void 0:d.type)?this.setState({gotoValueSelectedColumnName:e,gotoValueError:""}):this.setState({gotoValueSelectedColumnName:e,gotoValue:c,gotoValueError:"",gotoValueManuallyChanged:!1})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var{gotoValue:t}=this.state;this.seekRow(t,e)}getFilterBarInput(e,t,n,r,a){var s;if(e==null||n==null)return null;var l=this.getMetricState();if(l==null)return null;var o=t.getFilterInputCoordinates(n,l,e);if(o==null)return null;var d=Math.min(Math.max(ke.minDebounce,Math.round(e.rowCount/200)),ke.maxDebounce),{x:h,y:c,width:v,height:m}=o,{width:p}=e,g={top:c,left:h,minWidth:Math.min(v,p-h),height:m},C="",S=!0,f=this.getModelColumn(n);V(f);var b=r.get(f),y=a.get(f);b!=null&&(C=b.text,S=b.filter!=null);var E=r.size!==0||a.size!==0,T=t.getAdvancedFilterButtonCoordinates(n,l,e)!=null;return u.jsx(Ki,{ref:this.filterInputRef,style:g,className:Q({error:!S,active:C!==""||y!=null,"iris-grid-has-filter":E}),showAdvancedFilterButton:T,isAdvancedFilterSet:y!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:n})},onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(s=this.grid)===null||s===void 0?void 0:s.handleContextMenu,debounceMs:d,value:C},n)}render(){var e,t,n=this,r,a,s,{children:l,customFilters:o,getDownloadWorker:d,isSelectingColumn:h,isStuckToBottom:c,isStuckToRight:v,model:m,name:p,onlyFetchVisibleColumns:g,alwaysFetchColumns:C,advancedSettings:S,onAdvancedSettingsChange:f,canDownloadCsv:b,onCreateChart:y}=this.props,{metricCalculator:E,metrics:T,isFilterBarShown:O,isSelectingPartition:D,isMenuShown:A,isReady:P,copyOperation:Z,focusedFilterBarColumn:M,loadingText:Y,loadingScrimProgress:he,loadingSpinnerShown:ue,loadingCancelShown:we,loadingBlocksGrid:fe,shownColumnTooltip:Ee,hoverAdvancedFilter:ce,shownAdvancedFilter:Xe,hoverSelectColumn:Ze,quickFilters:L,advancedFilters:R,searchFilter:_,selectDistinctColumns:k,movedColumns:G,movedRows:q,formatter:X,conditionalFormats:ie,conditionalFormatPreview:me,conditionalFormatEditIndex:ee,sorts:ve,reverse:Ge,customColumns:Ft,selectedRanges:zt,isTableDownloading:Yt,tableDownloadStatus:xt,tableDownloadProgress:Qt,tableDownloadEstimatedTime:ot,showSearchBar:ge,searchValue:tr,selectedSearchColumns:nr,invertSearchColumns:ir,aggregationSettings:qt,selectedAggregation:Nn,rollupConfig:We,openOptions:lt,pendingSavePromise:rr,pendingSaveError:ar,pendingRowCount:sr,pendingDataErrors:or,pendingDataMap:Fn,toastMessage:lr,frozenColumns:ur,columnHeaderGroups:xn,showOverflowModal:dr,overflowText:hr,overflowButtonTooltipProps:Dn,expandCellTooltipProps:An,linkHoverTooltipProps:_n,isGotoShown:In,gotoRow:cr,gotoRowError:mr,gotoValueError:vr,gotoValueSelectedColumnName:gr,gotoValue:fr,gotoValueSelectedFilter:pr,partitionConfig:Ln}=this.state;if(!P)return null;var Xt=this.getTheme(),{columnHeaderHeight:Pn}=Xt,Cr=this.getCachedFilter(o,L,R,_),Mn=E.getUserColumnWidths(),Sr=this.getCachedStateOverride(Ze,O,h,he,L,R,ve,Ge,We,A),br=T?T.top:0,wr=T?T.bottomViewport:0,kn=null,jn=null;g&&(kn=T?T.left:0,jn=T?T.right:0);var Tr=T!=null&&T.width>0&&T.height>0,Un=((e=We==null||(t=We.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,yr=O?this.getFilterBarInput(T,E,M,L,R):null,Vn=null;if(Y!=null){var Er=u.jsxs("div",{className:"iris-grid-loading-status",children:[u.jsx("div",{className:Q("iris-grid-loading-status-bar",{show:ue}),children:Y}),u.jsxs("button",{type:"button",onClick:this.handleCancel,className:Q("iris-grid-btn-cancel",{show:we}),children:[u.jsx(J,{icon:_i,transform:"down-1"}),"Cancel"]})]}),Rr=T?T.gridY:0;Vn=u.jsx("div",{className:"iris-grid-loading",style:fe?{top:Rr}:{},children:Er})}var Bn=null;if(Ee!=null&&T){var Zt;Bn=this.getColumnTooltip(Ee,T,m),(Zt=this.tooltip)===null||Zt===void 0||Zt.update()}var Hn=[];if(T&&O)for(var Gn=this.getMetricState(),{visibleColumns:Wn}=T,Or=function(){var de=Wn[Jt],Ke=n.getModelColumn(de);if(Ke!=null){var Je=m.isFilterable(Ke),Dt=Je&&Gn?E.getAdvancedFilterButtonCoordinates(de,Gn,T):null;if(Dt!=null){var{x:tn,y:nn}=Dt,et={position:"absolute",top:nn,left:tn},ut=R.get(Ke),At=ut!=null,_t=de===ce||de===M||At,It=u.jsx("div",{className:Q("advanced-filter-button-container",{hidden:!_t}),style:et,children:_t&&u.jsx($,{kind:"ghost",className:Q("btn-link-icon advanced-filter-button",{"filter-set":At}),onClick:()=>{n.setState({shownAdvancedFilter:de})},onContextMenu:dt=>{var ht;(ht=n.grid)===null||ht===void 0||ht.handleContextMenu(dt)},onMouseEnter:()=>{n.setState({hoverAdvancedFilter:de})},onMouseLeave:()=>{n.setState({hoverAdvancedFilter:null})},children:u.jsxs("div",{className:"fa-layers",children:[u.jsx(J,{icon:Ai,className:"filter-solid"}),u.jsx(J,{icon:gn,className:"filter-light"})]})})},de);Hn.push(It)}}},Jt=0;Jt<Wn.length;Jt+=1)Or();var Kn=[];if(T)for(var{gridX:$n,visibleColumns:zn,allColumnXs:Nr,allColumnWidths:Fr,columnHeaderHeight:Yn}=T,xr=function(){var de=zn[en],Ke=Nr.get(de),Je=Fr.get(de);if(Ke!=null&&Je!=null&&Je>0){var Dt=$n+Ke,tn=$n+Ke+Je-20,nn=O?{position:"absolute",top:Yn,left:tn,width:20,height:Xt.filterBarHeight}:{position:"absolute",top:0,left:Dt,width:Je,height:Yn},et=n.getModelColumn(de);if(et!=null){var ut=m.columns[et];if(ut==null)return x.warn("Column does not exist at index ".concat(et," for column array of length ").concat(m.columns.length)),"continue";var At=R.get(et),{options:_t}=At||{},It=N.getSortForColumn(m.sort,ut.name),dt=It?It.direction:null;if(!Ea(dt))throw new Error("Invalid sort direction: ".concat(dt));var ht=u.jsx("div",{className:"advanced-filter-menu-container",style:nn,children:u.jsx(ki,{className:"advanced-filter-menu-popper",onEntered:n.getAdvancedMenuOpenedHandler(de),onExited:()=>{n.handleAdvancedMenuClosed(de)},isShown:Xe===de,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0},children:n.getCachedAdvancedFilterMenuActions(m,ut,_t,dt,X)})},de);Kn.push(ht)}}},en=0;en<zn.length;en+=1)var Dr=xr();var Qn=this.getCachedOptionItems(y!==void 0&&m.isChartBuilderAvailable,m.isOrganizeColumnsAvailable,m.isCustomColumnsAvailable,m.isFormatColumnsAvailable,m.isRollupAvailable,m.isTotalsAvailable||Un,m.isSelectDistinctAvailable,m.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,O,ge,b,this.isTableSearchAvailable(),In,S.size>0),qn=this.getCachedHiddenColumns(E,Mn),Ar=lt.map(Fe=>{switch(Fe.type){case z.CHART_BUILDER:return u.jsx(hs,{model:m,onChange:this.handleChartChange,onSubmit:this.handleChartCreate},z.CHART_BUILDER);case z.VISIBILITY_ORDERING_BUILDER:return u.jsx(ds,{model:m,movedColumns:G,hiddenColumns:qn,columnHeaderGroups:xn,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged},z.VISIBILITY_ORDERING_BUILDER);case z.CONDITIONAL_FORMATTING:return u.jsx(Fl,{rules:ie,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case z.CONDITIONAL_FORMATTING_EDIT:return V(m.columns),V(this.handleConditionalFormatEditorUpdate),u.jsx(ou,{dh:m.dh,columns:m.columns,rule:me,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case z.CUSTOM_COLUMN_BUILDER:return u.jsx(us,{model:m,customColumns:Ft,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack},z.CUSTOM_COLUMN_BUILDER);case z.ROLLUP_ROWS:return u.jsx(ls,{model:m,onChange:this.handleRollupChange,config:We},z.ROLLUP_ROWS);case z.AGGREGATIONS:return u.jsx(os,{settings:qt,isRollup:Un,onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit,dh:m.dh});case z.AGGREGATION_EDIT:return Nn&&u.jsx(ss,{aggregation:Nn,columns:m.originalColumns,onChange:this.handleAggregationChange});case z.TABLE_EXPORTER:return u.jsx($e,{model:m,name:p,userColumnWidths:Mn,movedColumns:G,isDownloading:Yt,tableDownloadStatus:xt,tableDownloadProgress:Qt,tableDownloadEstimatedTime:ot??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:zt},z.TABLE_EXPORTER);case z.SELECT_DISTINCT:return u.jsx(Yi,{model:m,selectDistinctColumns:k,onChange:this.handleSelectDistinctChanged});case z.ADVANCED_SETTINGS:return u.jsx(On,{items:S,onChange:f});default:throw Error("Unexpected option type ".concat(Fe.type))}});return u.jsxs("div",{className:"iris-grid",role:"presentation",children:[u.jsxs("div",{className:"iris-grid-column",children:[l!=null&&u.jsx("div",{className:"iris-grid-bar",children:l}),u.jsx(mn,{in:D,timeout:vn.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary",children:jt(m)&&m.isPartitionRequired&&u.jsx(Cl,{model:m,partitionConfig:Ln,onChange:this.handlePartitionChange})})}),u.jsx(mn,{in:ge,timeout:vn.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"iris-grid-bar",children:u.jsx(Mt,{value:tr,selectedColumns:nr,invertSelection:ir,onChange:this.handleCrossColumnSearch,columns:m.columns,ref:this.crossColumnRef})})}),u.jsxs(Ne,{ref:Fe=>{this.grid=Fe},isStickyBottom:!Oe(m)||!m.isEditable,isStuckToBottom:c,isStuckToRight:v,metricCalculator:E,model:m,keyHandlers:this.getKeyHandlers(),mouseHandlers:this.getMouseHandlers(),movedColumns:G,movedRows:q,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,stateOverride:Sr,theme:Xt,children:[u.jsx(lu,{isOpen:dr,text:hr,onClose:this.handleOverflowClose}),Tr&&u.jsx($i,{model:m,modelColumns:m.columns,top:br,bottom:wr,left:kn,right:jn,filter:Cr,formatter:X,sorts:ve,reverse:Ge,movedColumns:G,customColumns:Ft,hiddenColumns:qn,alwaysFetchColumns:this.getAlwaysFetchColumns(C,m.columns,G,m.floatingLeftColumnCount,m.floatingRightColumnCount,(r=this.grid)===null||r===void 0||(a=r.state.draggingColumn)===null||a===void 0?void 0:a.range),formatColumns:this.getCachedPreviewFormatColumns(m.dh,m.columns,ie,me,((s=lt[lt.length-1])===null||s===void 0?void 0:s.type)===z.CONDITIONAL_FORMATTING_EDIT?ee??void 0:void 0),rollupConfig:this.getModelRollupConfig(m.originalColumns,We,qt),totalsConfig:this.getModelTotalsConfig(m.columns,We,qt),selectDistinctColumns:k,pendingRowCount:sr,pendingDataMap:Fn,frozenColumns:ur,columnHeaderGroups:xn,partitionConfig:Ln}),!A&&u.jsx("div",{className:"grid-settings-button",style:{height:"".concat(Pn,"px"),width:"".concat(Pn,"px")},children:u.jsx($,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(p),onClick:this.handleMenu,icon:u.jsx(J,{icon:va,transform:"up-1"}),tooltip:"Table Options"})}),yr,Vn,Hn,Bn,Kn,Dn&&this.getOverflowButtonTooltip(Dn),An&&this.getExpandCellTooltip(An),_n&&this.getLinkHoverTooltip(_n)]}),u.jsx(Ji,{ref:this.gotoRowRef,model:m,isShown:In,gotoRow:cr,gotoRowError:mr,gotoValueError:vr,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:gr,gotoValue:fr,gotoValueFilter:pr,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),u.jsx(jo,{error:ar,isSaving:rr!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:or,pendingDataMap:Fn,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),u.jsx(ll,{children:lr}),u.jsx(B,{model:m,copyOperation:Z??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),u.jsx(cs,{dh:m.dh,ref:Fe=>{this.tableSaver=Fe},getDownloadWorker:d,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:xt===$e.DOWNLOAD_STATUS.DOWNLOADING,formatter:X})]}),u.jsx(ms,{in:A,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0,children:u.jsx("div",{className:"table-sidebar",children:u.jsxs(vs,{children:[u.jsx(ri,{title:"Table Options",onClose:this.handleMenuClose,children:u.jsx(Ui,{onSelect:Fe=>this.handleMenuSelect(Qn[Fe]),items:Qn})}),Ar.map((Fe,de)=>u.jsx(ri,{title:lt[de].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,children:Fe},lt[de].type))]})})}),u.jsx(xa,{actions:this.contextActions})]})}}F(ke,"contextType",gs);F(ke,"minDebounce",150);F(ke,"maxDebounce",500);F(ke,"loadingSpinnerDelay",800);F(ke,"defaultProps",{children:null,advancedFilters:Ue,advancedSettings:Ue,alwaysFetchColumns:ne,conditionalFormats:ne,customColumnFormatMap:Ue,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:ne,movedRows:ne,inputFilters:ne,customFilters:ne,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onAdvancedSettingsChange:()=>{},partitions:void 0,partitionConfig:void 0,quickFilters:Ue,selectDistinctColumns:ne,sorts:ne,reverse:!1,customColumns:ne,aggregationSettings:er,rollupConfig:void 0,userColumnWidths:Ue,userRowHeights:Ue,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnSelectionValidator:null,columnAllowedCursor:"linker",columnNotAllowedCursor:"linker-not-allowed",copyCursor:"copy",name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",selectedSearchColumns:null,invertSearchColumns:!0,onContextMenu:()=>ne,pendingDataMap:Ue,getDownloadWorker:fs.getServiceWorker,settings:{timeZone:"America/New_York",defaultDateTimeFormat:bn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,showEmptyStrings:!0,showNullStrings:!0,formatter:ne,decimalFormatOptions:Se.shape({defaultFormatString:Se.string}),integerFormatOptions:Se.shape({defaultFormatString:Se.string})},canCopy:!0,canDownloadCsv:!0,frozenColumns:null,theme:null,density:void 0,canToggleSearch:!0,mouseHandlers:ne,keyHandlers:ne,getMetricCalculator:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return new ps(...t)}});export{ke as default};
|
|
5
|
+
//# sourceMappingURL=IrisGrid-DI0ZPxfS.js.map
|