@deephaven/embed-grid 0.41.2-beta.3 → 0.41.2-beta.8

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.
@@ -1,6 +1,6 @@
1
- import{b as Ie,f as Jl,m as Pe,d as ba,r as y,a as m,c as ie,P as Oe,e as je,E as hu,C as Or,F as ue,g as Jt,h as Vt,s as Nr,D as Ii,i as es,k as Ga,l as mu,K as Xt,n as vu,o as gu,p as fu,u as pu,q as Sa,t as Cu,v as wu,w as bu,x as No,y as Su,z as Po,A as Eu,B as Tu,S as yu,G as Ru,M as Ou,H as Fu,I as fi,j as Qn}from"./vendor-a75bc0d2.js";import{L as Fe,T as qe,v as In,a as zr,b as ts,d as Wa,c as pi,e as nr,f as Ci,g as Du,h as Nu,i as rs,j as Pu,k as Iu,l as Au,m as Mu,n as Lu,o as Pr,p as dn,q as Io,r as ku,s as za,t as ja,u as Ka,w as _u,x as Ya,y as Hu,z as xu,A as qa,B as Bu,C as wi,D as Uu,E as Xa,F as ns,G as Vu,H as $u,I as Gu,J as Wu,K as zu,M as ju,N as Ku,O as oa,P as Yu,Q as Ao,R as qu,S as Qa,U as Xu,V as Qu,W as Zu,X as Ju,Y as ed,Z as td,_ as rd,$ as nd,a0 as id,a1 as ad,a2 as od,a3 as ld,a4 as sd,a5 as ud,a6 as dd,a7 as cd,a8 as hd,a9 as md,aa as vd}from"./index-fb90bef9.js";import{P as ot,T as pe,g as N,E as Ee,a as _,b as M,D as Hn,u as is,B as Z,c as lr,d as Za,C as as,e as ln,S as Er,M as xe,K as tt,f as Gt,h as mi,i as An,j as Ft,I as Mr,k as ce,G as gd,l as os,m as fd,O as wn,n as pd,o as Wt,p as Ut,q as Cd,r as wd,R as Ja,s as $r,t as Fr,v as Ea,w as eo,x as bd,F as bi,y as Sd,z as ls,A as ss,H as us,J as ds,L as Ed,N as Gr,Q as Td,U as Mo,V as Le,W as yd,X as Rd,Y as Od}from"./useConnection-49673e26.js";import{e as on,l as rn,K as or,a as Lo,R as Fd,b as Dd}from"./monaco-f56a0d1b.js";import"./helpers-042e6b4d.js";class to{static isDark(e){var t=document.createElement("div");t.style.display="none",t.style.color=e;var r=getComputedStyle(document.body.appendChild(t)).color,i=r.match(/\d+/g),a=[];if(i)a=i.map(l=>parseInt(l,10));else throw new Error("Invalid color received. Got ".concat(r));document.body.removeChild(t);var o=to.getBrightness(a);return o<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const cs=to;function cn(n,e,t){return e=Nd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nd(n){var e=Pd(n,"string");return typeof e=="symbol"?e:String(e)}function Pd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Id="table_",hs="column_",Ad=new Set(["in","not","i","ii","k"]),Md=new Set(["abstract","continue","for","new","switch","assert","default","if","package","synchronized","boolean","do","goto","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","null","true","false"]),Ld=/[^a-zA-Z0-9_$+@-]/g,kd=/[^A-Za-z0-9_$]/g;class At{}cn(At,"legalize",(n,e,t,r,i)=>{var a=n.trim().replace(/[- ]/g,"_");return r&&(Ad.has(a)||Md.has(a))&&(a=e+a),a=a.replace(t,""),a||(a=e+i),Number.isNaN(Number(a.charAt(0)))||(a=e+a),a});cn(At,"legalizeTableName",n=>At.legalize(n,Id,Ld,!1,0));cn(At,"legalizeColumnNames",n=>{var e=[];return n.forEach((t,r)=>{var i=At.legalizeColumnName(t,r);e.includes(i)&&(i=hs+r),e.push(i)}),e});cn(At,"legalizeColumnName",function(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return At.legalize(n,hs,kd,!0,e)});cn(At,"isValidTableName",n=>At.legalizeTableName(n)===n);cn(At,"isValidColumnName",n=>At.legalizeColumnName(n)===n);const ro=At;function _d(n,e){return n?n.closest(".".concat(e)):null}const Hd={getClosestByClassName:_d};function ko(n,e,t){return e=xd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xd(n){var e=Bd(n,"string");return typeof e=="symbol"?e:String(e)}function Bd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ud{constructor(){ko(this,"pending",[]),ko(this,"resolved",[])}add(e,t){var r=ot.makeCancelable(e,t);return this.pending.push(r),r.then(()=>{this.resolve(r)},()=>{this.resolve(r)}),r}remove(e){for(var t=0;t<this.pending.length;t+=1)if(this.pending[t]===e){this.pending.splice(t,1);return}}resolve(e){this.remove(e),this.resolved.push(e)}cancel(){for(var e=[...this.pending,...this.resolved],t=0;t<e.length;t+=1)e[t].cancel();this.pending=[],this.resolved=[]}}const Vd=Ud;function $d(n,e,t){return e=Gd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gd(n){var e=Wd(n,"string");return typeof e=="symbol"?e:String(e)}function Wd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class zd extends Error{constructor(){super(...arguments),$d(this,"isInvalid",!0)}}const jd=zd;function Kd(n){switch(n){case pe.eq:return"is exactly";case pe.eqIgnoreCase:return"is exactly (ignore case)";case pe.notEq:return"is not exactly";case pe.notEqIgnoreCase:return"is not exactly (ignore case)";case pe.contains:return"contains";case pe.notContains:return"does not contain";case pe.startsWith:return"starts with";case pe.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function Yd(n){switch(n){case pe.eq:return"is equal to";case pe.notEq:return"is not equal to";case pe.greaterThan:return"greater than";case pe.greaterThanOrEqualTo:return"greater than or equal to";case pe.lessThan:return"less than";case pe.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function qd(n){switch(n){case pe.eq:return"date is";case pe.notEq:return"date is not";case pe.notEqIgnoreCase:case pe.greaterThan:return"date is after";case pe.greaterThanOrEqualTo:return"date is after or equal";case pe.lessThan:return"date is before";case pe.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function Xd(n){switch(n){case pe.isTrue:return"Is True";case pe.isFalse:return"Is False";case pe.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}function Qd(n,e,t){return e=Zd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zd(n){var e=Jd(n,"string");return typeof e=="symbol"?e:String(e)}function Jd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ec extends Error{constructor(){super(...arguments),Qd(this,"isAssertionFailed",!0)}}const ms=ec;function _o(n){if(n==null)throw new ms("Expected 'val' to be defined, but received ".concat(n))}function tc(n,e,t){return e=rc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rc(n){var e=nc(n,"string");return typeof e=="symbol"?e:String(e)}function nc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ic extends Error{constructor(){super(...arguments),tc(this,"isPasteError",!0)}}const la=ic;function ke(n){return(n==null?void 0:n.isEditable)!==void 0}function Ho(n){if(!ke(n))throw new ms("Expected 'model' to be editable, but received ".concat(n))}function Ne(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function Fn(n,e,t){return e=ac(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ac(n){var e=oc(n,"string");return typeof e=="symbol"?e:String(e)}function oc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var It;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(It||(It={}));class B{static normalize(e,t,r,i){var a=e,o=t,l=r,s=i;return a!=null&&l!=null&&l<a&&(a=l,l=e),o!=null&&s!=null&&s<o&&(o=s,s=t),[a,o,l,s]}static makeNormalized(e,t,r,i){return new B(...B.normalize(e,t,r,i))}static makeCell(e,t){return new B(e,t,e,t)}static makeColumn(e){return new B(e,null,e,null)}static makeRow(e){return new B(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],o=t.length-1;o>i;o-=1){var l=t[o];if(a.contains(l))t.splice(o,1);else if(l.contains(a)){r=!0,t[i]=l,t.splice(o,1);break}else if(a.startRow===l.startRow&&a.endRow===l.endRow){if(a.touches(l)){var{startRow:s,endRow:u}=a,d=B.minOrNull(a.startColumn,l.startColumn),c=B.maxOrNull(a.endColumn,l.endColumn);r=!0,t[i]=new B(d,s,c,u),t.splice(o,1);break}}else if(a.startColumn===l.startColumn&&a.endColumn===l.endColumn&&a.touches(l)){var{startColumn:h,endColumn:v}=a,g=B.minOrNull(a.startRow,l.startRow),f=B.maxOrNull(a.endRow,l.endRow);r=!0,t[i]=new B(h,g,v,f),t.splice(o,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){var r,i,a,o,l,s;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:c,endRow:h}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,c=c!=null&&t.endColumn!=null?Math.min(c,t.endColumn):(i=c)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,h=h!=null&&t.endRow!=null?Math.min(h,t.endRow):(o=h)!==null&&o!==void 0?o:t.endRow,u!=null&&u>((l=c)!==null&&l!==void 0?l:-1)||d!=null&&d>((s=h)!==null&&s!==void 0?s:-1)?null:new B(u,d,c,h)}static subtractFromRange(e,t){var r=[],i=B.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new B(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new B(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new B(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new B(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...B.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=B.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,o,l;return B.isBounded(e)?e:new B((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(o=e.endColumn)!==null&&o!==void 0?o:t-1,(l=e.endRow)!==null&&l!==void 0?l:r-1)}static boundedRanges(e,t,r){return e.map(i=>B.boundedRange(i,t,r))}static offset(e,t,r){return new B(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:B.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(h=>h.containsCell(t,r)),a>=0)){var o=e[a],l=o.nextCell(t,r,i);if(l!=null)return l}switch(i){case B.SELECTION_DIRECTION.DOWN:case B.SELECTION_DIRECTION.RIGHT:{var s=a<e.length-1?a+1:0,u=e[s];return u.startCell(i)}case B.SELECTION_DIRECTION.LEFT:case B.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,c=e[d];return c.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,o,l;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((o=r.endColumn)!==null&&o!==void 0?o:NaN)-((l=r.startColumn)!==null&&l!==void 0?l:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:B.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){Fn(this,"startColumn",void 0),Fn(this,"startRow",void 0),Fn(this,"endColumn",void 0),Fn(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=r,this.endRow=i}equals(e){return this.startColumn===e.startColumn&&this.startRow===e.startRow&&this.endColumn===e.endColumn&&this.endRow===e.endRow}contains(e){return(this.startColumn==null||e.startColumn!=null&&this.startColumn<=e.startColumn)&&(this.startRow==null||e.startRow!=null&&this.startRow<=e.startRow)&&(this.endColumn==null||e.endColumn!=null&&this.endColumn>=e.endColumn)&&(this.endRow==null||e.endRow!=null&&this.endRow>=e.endRow)}containsCell(e,t){return e==null||t==null?!1:(this.startColumn==null||this.startColumn<=e)&&(this.endColumn==null||this.endColumn>=e)&&(this.startRow==null||this.startRow<=t)&&(this.endRow==null||this.endRow>=t)}touches(e){return B.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&B.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return B.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:B.SELECTION_DIRECTION.DOWN;if(!B.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case B.SELECTION_DIRECTION.DOWN:case B.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case B.SELECTION_DIRECTION.LEFT:case B.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!B.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:o,endRow:l}=this;switch(r){case B.SELECTION_DIRECTION.DOWN:if(t<l)return{column:e,row:Math.max(t+1,o)};if(e<a)return{column:Math.max(e+1,i),row:o};break;case B.SELECTION_DIRECTION.UP:if(t>o)return{column:e,row:Math.min(t-1,l)};if(e>i)return{column:Math.min(e-1,a),row:l};break;case B.SELECTION_DIRECTION.RIGHT:if(e<a)return{column:Math.max(e+1,i),row:t};if(t<l)return{column:i,row:Math.max(t+1,o)};break;case B.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>o)return{column:a,row:Math.min(t-1,l)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:B.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var o;e(i,a,r),r+=1,{column:i,row:a}=(o=this.nextCell(i,a,t))!==null&&o!==void 0?o:{}}}}Fn(B,"SELECTION_DIRECTION",It);function lc(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function Zn(n){return lc(n)&&n[0]!=null&&n[1]!=null}function xo(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Jn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xo(Object(t),!0).forEach(function(r){vs(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function vs(n,e,t){return e=sc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sc(n){var e=uc(n,"string");return typeof e=="symbol"?e:String(e)}function uc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Si(n){return(n==null?void 0:n.href)!==void 0}class j{static getGridPointFromXY(e,t,r){var i=j.getColumnAtX(e,r),a=j.getRowAtY(t,r),o=j.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:o}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=j.getGridPointFromXY(e,t,r),{allColumnWidths:o,allRowHeights:l,allColumnXs:s,allRowYs:u,modelColumns:d,modelRows:c}=r,h=i!==null?c.get(i):null,v=a!==null?d.get(a):null,g=a!==null?s.get(a):null,f=i!==null?u.get(i):null,p=a!==null?o.get(a):null,C=i!==null?l.get(i):null;return{row:i,column:a,modelRow:h??null,modelColumn:v??null,left:g??null,top:f??null,columnWidth:p??null,rowHeight:C??null}}static getColumnHeaderDepthAtY(e,t){var r=j.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ie(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=j.iterateFloatingStart(e,r,i);return a!==void 0?a:j.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,o){var l=Math.max(e,r),s=Math.min(t,a-i-1),u=j.iterateFloating(r,i,a,o);if(u!==void 0)return u;for(var d=l;d<=s;d+=1)if(u=o(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,o,l=(a=t.get(e))!==null&&a!==void 0?a:0,s=(o=r.get(e))!==null&&o!==void 0?o:0;return l<=i&&i<=l+s}static getItemAtOffset(e,t,r,i,a,o,l){var s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=s?void 0:j.iterateFloating(r,i,t,h=>{if(j.isInItem(h,o,l,e))return h});if(!s&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var c=a[d];if(j.isInItem(c,o,l,e))return c}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:o,visibleColumns:l,allColumnXs:s,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,o,l,s,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:o,allRowYs:l,allRowHeights:s,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,o,l,s)}static getNextShownItem(e,t,r,i){var a=r.findIndex(s=>s===e)||0;for(a-=1;a!=null&&a>=0;){var o=r[a],l=t.get(o);if(l!=null&&i.get(l)!==0)return o;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return j.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return j.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,floatingColumns:l,floatingLeftWidth:s,visibleColumns:u,allColumnXs:d,allColumnWidths:c,columnHeaderMaxDepth:h}=r,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(h*o<t||!v||g<=0)return null;for(var f=e-a,p=g*.5,C=!1,w=l.length-1;w>=0;w-=1){var b,E,T=l[w],S=(b=d.get(T))!==null&&b!==void 0?b:0,O=(E=c.get(T))!==null&&E!==void 0?E:0,F=O===0;if(!C||!F){var R=S+O;F?R+=p:C&&(R-=p);var D=R-p,P=R+p;if(D<=f&&f<=P)return T;C=F}}C=!1;for(var I=u.length-1;I>=0;I-=1){var A,x,H=u[I],W=(A=d.get(H))!==null&&A!==void 0?A:0,z=(x=c.get(H))!==null&&x!==void 0?x:0,G=z===0;if(W<s-z)return null;if(!C||!G){var K=W+z;G?K+=p:C&&(K-=p);var q=K-p,k=K+p;if(q<=f&&f<=k)return H;C=G}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return j.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!j.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(s=>s===e),o=a-1;o>=0;o-=1){var l=r[o];if(!j.isItemHidden(l,t))break;i.push(l)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return j.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,visibleRows:l,allRowYs:s,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:c}=i;if(a<e||!d||c<=0)return null;for(var h=t-o,v=c*.5,g=!1,f=l.length-1;f>=0;f-=1){var p,C,w=l[f],b=(p=s.get(w))!==null&&p!==void 0?p:0,E=(C=u.get(w))!==null&&C!==void 0?C:0,T=E===0;if(!g||!T){var S=b+E;T?S+=v:g&&(S-=v);var O=S-v,F=S+v;if(O<=h&&h<=F)return w;g=T}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return j.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return j.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return[...r];var i=[...r],a=i[i.length-1];return a!=null&&!Zn(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Jn(Jn({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return j.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var o=[...r],l=o[o.length-1];l!=null&&Zn(l.from)&&l.from[1]-l.from[0]===e[1]-e[0]&&l.to===e[0]?o[o.length-1]=Jn(Jn({},l),{},{to:a}):o.push({from:e,to:a});var s=o[o.length-1];return Zn(s.from)&&s.from[0]===s.to&&o.pop(),o}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?j.moveRange(e,t,r,i):j.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],o=function(){var{from:u,to:d}=r[l],c=1,h;Zn(u)?(c=u[1]-u[0]+1,[h]=u):h=u;for(var v=i?d:h,g=v+c-1,f=i?h:d,p=f-v,C=[],w=function(){var T,S,O=(T=a[b][0])!==null&&T!==void 0?T:Number.NEGATIVE_INFINITY,F=(S=a[b][1])!==null&&S!==void 0?S:Number.POSITIVE_INFINITY,R,D=[[O,v-1],[v,g],[g+1,F]].map(P=>{var[I,A]=P;return[Math.max(I,O),Math.min(A,F)]}).filter(P=>{var[I,A]=P;return I<=A}).map(P=>{var[I,A]=P;return v<=I&&g>=A?(R=[I+p,A+p],R):g<I?[I-c,A-c]:P}).map(P=>{var[I,A]=P;return f>I&&f<=A?[[I,f-1],[f+c,A+c]]:P===R?[P]:f<=I?[[I+c,A+c]]:[P]}).flat();C.push(...D)},b=0;b<a.length;b+=1)w();a=C.map(E=>{var[T,S]=E;return[Number.isFinite(T)?T:null,Number.isFinite(S)?S:null]})},l=i?r.length-1:0;i?l>=0:l<r.length;i?l-=1:l+=1)o();return a}static translateRange(e,t,r,i){for(var a=j.applyItemMoves(e.startColumn,e.endColumn,t,i),o=j.applyItemMoves(e.startRow,e.endRow,r,i),l=[],s=0;s<a.length;s+=1)for(var u=a[s],d=0;d<o.length;d+=1){var c=o[d];l.push(new B(u[0],c[0],u[1],c[1]))}return l}static getModelIndex(e,t){var r=j.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>j.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return j.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ee;return j.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ee,i=[],a=0;a<e.length;a+=1)i.push(...j.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return j.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ee;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ee,i=[],a=0;a<e.length;a+=1)i.push(...j.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=j.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>j.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return j.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=j.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:o,height:l,floatingTopRowCount:s,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:c,floatingLeftWidth:h,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:f,columnCount:p,rowCount:C}=e,w=i,b=a,E=o,T=l;return r!=null&&(r>d&&(w+=h),r<p-c&&(E-=v)),t!=null&&(t>s&&(b+=g),t<C-u&&(T-=f)),{x1:w,y1:b,x2:E,y2:T}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:o,deltaY:l}=e;return!j.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(o=e.deltaY,l=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(o*=t,l*=r):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(j.isMacPlatform()?(o=Math.round(o*i),l=Math.round(l*a)):(o=Math.round(o*this.PIXELS_PER_LINE),l=Math.round(l*this.PIXELS_PER_LINE))),{deltaX:o,deltaY:l}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],o=i[1];r===0?t.push([a,o]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],o):t.push([a,o])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:o}=e,{gridX:l,gridY:s,width:u,height:d,verticalBarWidth:c,horizontalBarHeight:h}=t,v=Ie(l+r,l,u-c),g=Ie(l+a,l,u-c),f=Ie(s+i,s,d-h),p=Ie(s+o,s,d-h);return{x1:v,y1:f,x2:g,y2:p,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:o}=e,{firstColumn:l,allColumnXs:s,allColumnWidths:u,allRowYs:d,allRowHeights:c,modelRows:h,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:f,treeHorizontalPadding:p}=o,C=N(h,r),w=N(v,t),b=a.textAlignForCell(w,C),E=N(s,t),T=N(d,r),S=N(u,t),O=N(c,r),F=t===l,R=0;Ne(a)&&a.hasExpandableRows&&F&&(R=f*(a.depthForRow(r)+1)+p);var D=S-R,P=E+g,I=T+O*.5;return b==="right"?P=E+D-g:b==="center"&&(P=E+D*.5),P+=R,{width:D-g*2,x:P,y:I}}static findTokensWithProtocolInText(e){var t=Jl(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}vs(j,"PIXELS_PER_LINE",100/3);const Q=j;function wt(n,e,t){return e=dc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dc(n){var e=cc(n,"string");return typeof e=="symbol"?e:String(e)}function cc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ei(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:jr.CACHE_SIZE,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Math.floor(e/2);if(n.size>e)for(var r=n.keys();n.size>t;)n.delete(r.next().value)}function Bo(n,e,t,r,i){for(var a=new Map,o=0,l=0;l<n&&l<t;l+=1)a.set(l,o),o+=N(i,l);o=r;for(var s=0;s<e&&t-s-1>=0;s+=1)o-=N(i,t-s-1),a.set(t-s-1,o);return a}class jr{constructor(){var{userColumnWidths:e=new Map,userRowHeights:t=new Map,calculatedColumnWidths:r=new Map,calculatedRowHeights:i=new Map,fontWidths:a=new Map,modelRows:o=new Map,modelColumns:l=new Map,movedRows:s=[],movedColumns:u=[],initialRowHeights:d=new Map,initialColumnWidths:c=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};wt(this,"initialRowHeights",void 0),wt(this,"initialColumnWidths",void 0),wt(this,"userColumnWidths",void 0),wt(this,"userRowHeights",void 0),wt(this,"calculatedColumnWidths",void 0),wt(this,"calculatedRowHeights",void 0),wt(this,"fontWidths",void 0),wt(this,"modelRows",void 0),wt(this,"modelColumns",void 0),wt(this,"movedRows",void 0),wt(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=t,this.calculatedRowHeights=i,this.calculatedColumnWidths=r,this.fontWidths=a,this.modelRows=o,this.modelColumns=l,this.movedRows=s,this.movedColumns=u,this.initialRowHeights=d,this.initialColumnWidths=c}getMetrics(e){var{left:t,top:r,leftOffset:i,topOffset:a,width:o,height:l,theme:s,model:u,movedRows:d,movedColumns:c,draggingColumn:h}=e,{rowHeight:v,rowHeaderWidth:g,rowFooterWidth:f,columnWidth:p,columnHeaderHeight:C,minScrollHandleSize:w,scrollBarSize:b}=s;d!==this.movedRows&&(this.movedRows=d,this.modelRows.clear()),c!==this.movedColumns&&(this.movedColumns=c,this.modelColumns.clear());var{columnCount:E,rowCount:T,floatingTopRowCount:S,floatingBottomRowCount:O,floatingLeftColumnCount:F,floatingRightColumnCount:R,columnHeaderMaxDepth:D}=u,P=this.getFirstRow(e),I=this.getFirstColumn(e),A=this.getGridX(e),x=this.getGridY(e),H=Ne(u)&&u.hasExpandableRows?this.calculateTreePaddingX(e):0,W=0,z=this.getVisibleRowHeights(e),G=this.getVisibleColumnWidths(e,I,H),K=Array.from(z.keys()),q=Array.from(G.keys()),k=new Map([...z,...this.getFloatingRowHeights(e)]),L=new Map([...G,...this.getFloatingColumnWidths(e)]),$=this.getVisibleColumnXs(L,q,i),U=this.getVisibleRowYs(k,K,a),Y=K.length>0?K[K.length-1]:r,X=q.length>0?q[q.length-1]:t,ae=this.getBottomViewport(e,K,U,k),de=this.getRightViewport(e,q,$,L),ee=this.getFloatingTopHeight(e,k),oe=this.getFloatingBottomHeight(e,k),se=this.getFloatingLeftWidth(e,L),Ae=this.getFloatingRightWidth(e,L),Je=Array.from(L.values()),Xe=Array.from(k.values()),ze=Je.reduce((rr,gn)=>rr+gn,0)-i,Ve=Xe.reduce((rr,gn)=>rr+gn,0)-a,Qe=i+ze+f,De=a+Ve,lt=o-A,st=l-x,Mt=this.getLastLeft(e,null,lt-f),Lt=this.getLastLeft(e,null,lt-f-b),er=this.getLastTop(e,null,st-oe),ur=this.getLastTop(e,null,st-oe-b),Tt=Lt,Ze=ur;Mt===0&&er===0&&(Tt=0,Ze=0);var kt=Tt>0,ut=kt?b:0,dt=Ze>0,Ye=dt?b:0,yt=A,_t=D*C,Rt=o-yt-Ye,ct=l-_t-ut,dr=E===1?Rt/Qe:(E-Tt)/E,jt=T===1?ct/De:(T-Ze)/T,tr=kt?Ie(Rt*dr,w,Rt-1):0,Ot=dt?Ie(ct*jt,w,ct-1):0,Ht=N(L,t,0),Ir=N(k,r,0),qr=Ht>0?i/Ht:0,Xr=Ir>0?a/Ir:0,Qr=E===1?i/(Qe-lt):(t+qr)/Tt,Zr=T===1?a/(De-st):(r+Xr)/Ze,Jr=kt?Qr*(Rt-tr):0,_e=dt?Zr*(ct-Ot):0,Vn=[...Array(S).keys(),...[...Array(O).keys()].map(rr=>T-rr-1)],mn=new Map([...U,...this.getFloatingRowYs(e,k,Math.floor(l-x-ut))]),$n=[...Array(F).keys(),...[...Array(R).keys()].map(rr=>E-rr-1)],Ar=new Map([...$,...this.getFloatingColumnXs(e,L,Math.floor(o-A-Ye))]),Gn=[];if(h)for(var ht=h.range[0];ht<=h.range[1];ht+=1)Gn.push(ht),L.has(ht)||L.set(ht,this.getVisibleColumnWidth(ht,e)),Ar.has(ht)||Ar.set(ht,0);var Wn=K.concat(Vn),vn=q.concat($n).concat(Gn),zn=this.getModelRows(Wn,e),Hi=this.getModelColumns(vn,e),xi=this.getVisibleRowTreeBoxes(k,zn,e),jn=this.getTopVisible(e,mn,k,K),Kn=this.getLeftVisible(e,Ar,L,q),Bi=Ze>0?this.getBottomVisible(e,mn,k,K,x):Y,Yn=Tt>0?this.getRightVisible(e,Ar,L,q,A):X,{fontWidths:qn,userColumnWidths:Ui,userRowHeights:Vi,calculatedRowHeights:$i,calculatedColumnWidths:Gi}=this;return{rowHeight:v,rowHeaderWidth:g,rowFooterWidth:f,rowCount:T,columnWidth:p,columnCount:E,columnHeaderHeight:C,floatingTopRowCount:S,floatingBottomRowCount:O,floatingLeftColumnCount:F,floatingRightColumnCount:R,gridX:A,gridY:x,firstRow:P,firstColumn:I,treePaddingX:H,treePaddingY:W,left:t,top:r,bottom:Y,right:X,topOffset:a,leftOffset:i,topVisible:jn,leftVisible:Kn,bottomVisible:Bi,rightVisible:Yn,bottomViewport:ae,rightViewport:de,width:o,height:l,maxX:ze,maxY:Ve,lastLeft:Tt,lastTop:Ze,barHeight:ct,barTop:_t,barWidth:Rt,barLeft:yt,handleHeight:Ot,handleWidth:tr,hasHorizontalBar:kt,hasVerticalBar:dt,verticalBarWidth:Ye,horizontalBarHeight:ut,scrollX:Jr,scrollY:_e,scrollableContentWidth:Qe,scrollableContentHeight:De,scrollableViewportWidth:lt,scrollableViewportHeight:st,visibleRows:K,visibleColumns:q,visibleRowHeights:z,visibleColumnWidths:G,floatingRows:Vn,floatingColumns:$n,allRows:Wn,allColumns:vn,allRowHeights:k,allColumnWidths:L,floatingTopHeight:ee,floatingBottomHeight:oe,floatingLeftWidth:se,floatingRightWidth:Ae,visibleRowYs:U,visibleColumnXs:$,allRowYs:mn,allColumnXs:Ar,visibleRowTreeBoxes:xi,modelRows:zn,modelColumns:Hi,movedRows:d,movedColumns:c,fontWidths:qn,userColumnWidths:Ui,userRowHeights:Vi,calculatedRowHeights:$i,calculatedColumnWidths:Gi,columnHeaderMaxDepth:D}}getGridX(e){var{theme:t}=e,{rowHeaderWidth:r}=t;return r}getGridY(e){var{theme:t,model:r}=e,{columnHeaderHeight:i}=t,{columnHeaderMaxDepth:a}=r;return a*i}getVisibleHeight(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{height:r,theme:i}=e,{scrollBarSize:a}=i,o=this.getGridY(e),l=this.getFloatingBottomHeight(e,t),s=this.getFloatingTopHeight(e,t);return r-l-s-o-a}getVisibleWidth(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{width:r,theme:i}=e,{scrollBarSize:a,rowFooterWidth:o}=i,l=this.getGridX(e),s=this.getFloatingRightWidth(e,t),u=this.getFloatingLeftWidth(e,t);return r-u-s-l-a-o}getFirstIndex(e,t,r){for(var i=e.size+1,a=0;a<i;a+=1){var o=t(a,r);if(e.get(o)!==0)return a}return 0}getFirstColumn(e){return this.getFirstIndex(this.userColumnWidths,this.getModelColumn.bind(this),e)}getFirstRow(e){return this.getFirstIndex(this.userRowHeights,this.getModelRow.bind(this),e)}getLastLeft(e,t,r){var{model:i}=e,{columnCount:a,floatingRightColumnCount:o}=i,l=Math.max(0,a-o-1);t!=null&&(l=t);for(var s=0;l>=0;){var u=this.getVisibleColumnWidth(l,e);if(s+=u,s>=r)return Ie(l+1,0,t??a-1);l-=1}return 0}getLastTop(e,t,r){var{model:i}=e,{rowCount:a,floatingBottomRowCount:o}=i,l=Math.max(0,a-o-1);t!=null&&(l=t);for(var s=0;l>=0;){var u=this.getVisibleRowHeight(l,e);if(s+=u,s>=r)return Ie(l+1,0,a-1);l-=1}return 0}getTopForTopVisible(e,t){for(var r=this.getFloatingTopHeight(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleRowHeight(i,e);return i}getTopForBottomVisible(e,t){var{height:r}=e,i=this.getGridY(e),a=this.getFloatingBottomHeight(e),o=r-i-a;return this.getLastTop(e,t,o)}getLeftForLeftVisible(e,t){for(var r=this.getFloatingLeftWidth(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleColumnWidth(i,e);return i}getLeftForRightVisible(e,t){var{width:r}=e,i=this.getGridX(e),a=this.getFloatingRightWidth(e),o=r-i-a;return this.getLastLeft(e,t,o)}getFloatingRowHeights(e){for(var{model:t}=e,{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t,o=new Map,l=0;l<r&&l<a;l+=1)o.set(l,this.getVisibleRowHeight(l,e));for(var s=0;s<i&&a-s-1>=0;s+=1){var u=a-s-1;o.set(u,this.getVisibleRowHeight(u,e))}return o}getVisibleRowHeights(e){for(var{top:t,topOffset:r,height:i,model:a}=e,o=0,l=t,s=new Map,{rowCount:u}=a;o<i+r&&l<u;){var d=this.getVisibleRowHeight(l,e);s.set(l,d),o+=d,l+=1}return s}getFloatingColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:l}=i,s=new Map,u=0;u<o&&u<a;u+=1)s.set(u,this.getVisibleColumnWidth(u,e,t,r));for(var d=0;d<l&&a-d-1>=0;d+=1){var c=a-d-1;s.set(c,this.getVisibleColumnWidth(c,e,t,r))}return s}getVisibleColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{left:i,leftOffset:a,width:o,model:l}=e,s=0,u=i,d=new Map,{columnCount:c}=l;s<o+a&&u<c;){var h=this.getVisibleColumnWidth(u,e,t,r);d.set(u,h),s+=h,u+=1}return d}getFloatingColumnXs(e,t,r){var{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:l}=i;return Bo(o,l,a,r,t)}getVisibleColumnXs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var l=t[o],s=N(e,l);i.set(l,a),a+=s}return i}getFloatingRowYs(e,t,r){var{model:i}=e,{floatingTopRowCount:a,floatingBottomRowCount:o,rowCount:l}=i;return Bo(a,o,l,r,t)}getVisibleRowYs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var l=t[o],s=N(e,l);i.set(l,a),a+=s}return i}getVisibleRowTreeBoxes(e,t,r){var i=new Map,{model:a,theme:o}=r,{treeDepthIndent:l,treeHorizontalPadding:s}=o;return Ne(a)&&a.hasExpandableRows&&e.forEach((u,d)=>{var c=N(t,d);if(a.isRowExpandable(c)){var h=a.depthForRow(c),v=h*l+s,g=(h+1)*l+s,f=0,p=u;i.set(d,{x1:v,y1:f,x2:g,y2:p})}}),i}getFloatingLeftWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingLeftColumnCount:i}=r,a=0,o=0;o<i;o+=1)a+=N(t,o);return a}getFloatingRightWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingRightColumnCount:i,columnCount:a}=r,o=0,l=0;l<i;l+=1)o+=N(t,a-l-1);return o}getFloatingTopHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingTopRowCount:i}=r,a=0,o=0;o<i;o+=1)a+=N(t,o);return a}getFloatingBottomHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingBottomRowCount:i,rowCount:a}=r,o=0,l=0;l<i;l+=1)o+=N(t,a-l-1);return o}getTopVisible(e,t,r,i){for(var a=this.getFloatingTopHeight(e,r),o=0;o<i.length;o+=1){var l=i[o],s=N(t,l);if(s>=a)return l}return 0}getLeftVisible(e,t,r,i){for(var a=this.getFloatingLeftWidth(e,r),o=0;o<i.length;o+=1){var l=i[o],s=N(t,l);if(s>=a)return l}return 0}getBottomVisible(e,t,r,i,a){for(var{height:o,theme:l}=e,{scrollBarSize:s}=l,u=this.getFloatingBottomHeight(e,r),d=o-a-s-u,c=i.length-1;c>=0;c-=1){var h=i[c],v=N(t,h),g=N(r,h);if(v+g<=d)return h}return 0}getRightVisible(e,t,r,i,a){for(var{width:o,theme:l}=e,{scrollBarSize:s}=l,u=this.getFloatingRightWidth(e,r),d=o-a-s-u,c=i.length-1;c>=0;c-=1){var h=i[c],v=N(t,h),g=N(r,h);if(v+g<=d)return h}return 0}getBottomViewport(e,t,r,i){var{height:a,theme:o}=e,{rowHeight:l}=o;return this.getLastIndexViewport(t,r,i,a,l)}getRightViewport(e,t,r,i){var{width:a,theme:o}=e,{columnWidth:l}=o;return this.getLastIndexViewport(t,r,i,a,l)}getLastIndexViewport(e,t,r,i,a){var o=0,l=0;return e.length>0&&(o=e[e.length-1],l=N(t,o)+N(r,o)),l<i&&(o+=Math.ceil((i-l)/a)),o}getVisibleItemSize(e,t,r){var i;return(i=t.get(e))!==null&&i!==void 0?i:r()}getVisibleRowHeight(e,t){var r=this.getModelRow(e,t),i=this.calculateRowHeight(e,r,t);return this.getVisibleItemSize(r,this.userRowHeights,()=>{var a=this.initialRowHeights.get(r);return a!==void 0?a:i})}getVisibleColumnWidth(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.getFirstColumn(t),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.calculateTreePaddingX(t),a=this.getModelColumn(e,t),o=this.calculateColumnWidth(e,a,t,r,i);return this.getVisibleItemSize(a,this.userColumnWidths,()=>{var l=this.initialColumnWidths.get(a);return l!==void 0?l:o})}getModelRows(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelRow(a,t);r.set(a,o)}return r}getModelRow(e,t){if(this.modelRows.has(e))return N(this.modelRows,e);var{movedRows:r}=t,i=Q.getModelIndex(e,r);return this.modelRows.set(e,i),i}getModelColumns(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelColumn(a,t);r.set(a,o)}return r}getModelColumn(e,t){var r=this.modelColumns.has(e);if(r)return N(this.modelColumns,e);var{movedColumns:i}=t,a=Q.getModelIndex(e,i);return this.modelColumns.set(e,a),a}calculateRowHeight(e,t,r){var{theme:i}=r,{autoSizeRows:a,rowHeight:o}=i;if(!a)return o;var l=this.calculatedRowHeights.get(t);return l??(this.calculatedRowHeights.set(t,Math.ceil(o)),ei(this.calculatedRowHeights),o)}calculateColumnWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.getFirstColumn(r),a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.calculateTreePaddingX(r),{theme:o}=r,{autoSizeColumns:l,minColumnWidth:s}=o;if(!l){var{columnWidth:u}=o;return u}var d=this.calculateColumnHeaderWidth(t,r),c=this.calculateColumnDataWidth(t,r),h=this.calculatedColumnWidths.get(t),v=Math.ceil(Math.max(d,c));return v=Math.max(s,v),h!=null&&h>v?v=h:(this.calculatedColumnWidths.set(t,v),ei(this.calculatedColumnWidths)),e===i&&(v+=a),v}calculateColumnHeaderWidth(e,t){var{model:r,theme:i}=t,{headerFont:a,headerHorizontalPadding:o}=i,l=r.textForColumnHeader(e,0);if(l!==void 0&&l!==""){var s=this.getWidthForFont(a,t);return l.length*s+o*2}return o*2}calculateColumnDataWidth(e,t){var{top:r,height:i,width:a,model:o,theme:l}=t,{floatingTopRowCount:s,floatingBottomRowCount:u,rowCount:d}=o,{font:c,cellHorizontalPadding:h,rowHeight:v,rowHeaderWidth:g,rowFooterWidth:f,scrollBarSize:p,dataBarHorizontalPadding:C}=l,w=0,b=this.getWidthForFont(c,t),E=i/v,T=Math.ceil(r+E);return Q.iterateAllItems(r,T,s,u,d,S=>{var O=this.getModelRow(S,t),F=o.textForCell(e,O),R=o.renderTypeForCell(e,O),D=0;if(F){var P=h*2;D=F.length*b+P}R==="dataBar"&&(D+=C),w=Math.max(w,D)}),w=Math.max(Math.min(w,(a-g-p-f)*jr.MAX_COLUMN_WIDTH),h*2),w}calculateTreePaddingX(e){var{top:t,height:r,model:i,theme:a}=e,{rowHeight:o,treeDepthIndent:l}=a;if(!Ne(i)||!i.hasExpandableRows)return 0;for(var s=0,u=r/o,d=Math.ceil(t+u),c=t;c<=d;c+=1){var h=this.getModelRow(c,e),v=i.depthForRow(h);s=Math.max(s,l*(v+1))}return s}getWidthForFont(e,t){if(this.fontWidths.has(e))return N(this.fontWidths,e);var{context:r}=t;r.font=e;var i=r.measureText("8"),{width:a}=i;return this.fontWidths.set(e,a),this.fontWidths.set(r.font,a),a}setColumnWidth(e,t){var r=new Map(this.userColumnWidths);r.set(e,Math.ceil(t)),ei(r),this.userColumnWidths=r}resetColumnWidth(e){var t=new Map(this.userColumnWidths);t.delete(e),this.userColumnWidths=t}setRowHeight(e,t){var r=new Map(this.userRowHeights);r.set(e,Math.ceil(t)),ei(r),this.userRowHeights=r}resetRowHeight(e){var t=new Map(this.userRowHeights);t.delete(e),this.userRowHeights=t,this.calculatedRowHeights.delete(e)}}wt(jr,"CACHE_SIZE",1e4);wt(jr,"MAX_COLUMN_WIDTH",.8);const hc=jr;var mc=Object.freeze({allowColumnResize:!0,allowRowResize:!0,autoSelectRow:!1,autoSelectColumn:!1,autoSizeColumns:!0,autoSizeRows:!0,backgroundColor:"#000000",black:"#000000",white:"#ffffff",cellHorizontalPadding:5,headerHorizontalPadding:5,font:"12px Arial, sans serif",gridColumnColor:"#8f8f8f66",gridRowColor:"#8f8f8f66",headerBackgroundColor:"#222222",headerSeparatorColor:"#000000",headerSeparatorHoverColor:"#888888",headerSeparatorHandleSize:5,headerHiddenSeparatorSize:5,headerHiddenSeparatorHoverColor:"#8888FF",headerColor:"#d5d5d5",headerFont:"10px Arial, sans serif",columnHoverBackgroundColor:"#444444",selectedColumnHoverBackgroundColor:"#494949",rowBackgroundColors:"#333333 #222222",rowHoverBackgroundColor:"#444444",selectedRowHoverBackgroundColor:"#494949",minScrollHandleSize:50,scrollBarBackgroundColor:"#111111",scrollBarHoverBackgroundColor:"#333333",scrollBarCasingColor:"#000000",scrollBarCornerColor:"#000000",scrollBarColor:"#555555",scrollBarHoverColor:"#888888",scrollBarActiveColor:"#AAAAAA",scrollBarSize:12,scrollBarHoverSize:16,scrollBarCasingWidth:1,scrollSnapToColumn:!1,scrollSnapToRow:!1,selectionColor:"#4286f433",selectionOutlineColor:"#4286f4",selectionOutlineCasingColor:"#222222",scrollBarSelectionTick:!0,scrollBarSelectionTickColor:"#4286f433",scrollBarActiveSelectionTickColor:"#4286f480",shadowBlur:8,shadowColor:"#000000",textColor:"#ffffff",hyperlinkColor:"#4878ea",maxDepth:6,treeDepthIndent:10,treeHorizontalPadding:5,treeLineColor:"#888888",treeMarkerColor:"#cccccc",treeMarkerHoverColor:"#ffffff",rowHeight:20,columnWidth:100,minRowHeight:20,minColumnWidth:55,columnHeaderHeight:20,rowHeaderWidth:30,rowFooterWidth:0,headerResizeSnapThreshold:10,headerResizeHiddenSnapThreshold:8,allowColumnReorder:!0,allowRowReorder:!0,reorderOffset:2,floatingGridColumnColor:"#8f8f8f66",floatingGridRowColor:"#8f8f8f66",floatingRowBackgroundColors:"#393939 #292929",floatingDividerOuterColor:"#000000",floatingDividerInnerColor:"#cccccc",zeroLineColor:"#888888",positiveBarColor:"#00ff00",negativeBarColor:"#ff0000",dataBarHorizontalPadding:90});const vc=mc;function Uo(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Vo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Uo(Object(t),!0).forEach(function(r){gc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Uo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gc(n,e,t){return e=fc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fc(n){var e=pc(n,"string");return typeof e=="symbol"?e:String(e)}function pc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cc=(n,e)=>{var t=!1,r=Pe(n,Vo(Vo({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const zt=Cc;function wc(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,r=ba.hex.lab.raw(n);return r[0]=Math.max(r[0]-r[0]/t*e,0),"#".concat(ba.lab.hex(r))}function bc(n,e){var[t,r,i]=ba.hex.rgb(n);return"rgba(".concat(t,", ").concat(r,", ").concat(i,", ").concat(e,")")}var Sc=n=>{var{r:e,g:t,b:r}=n,i=.4122214708*e+.5363325363*t+.0514459929*r,a=.2119034982*e+.6806995451*t+.1073969566*r,o=.0883024619*e+.2817188376*t+.6299787005*r,l=Math.cbrt(i),s=Math.cbrt(a),u=Math.cbrt(o);return{L:.2104542553*l+.793617785*s-.0040720468*u,a:1.9779984951*l-2.428592205*s+.4505937099*u,b:.0259040371*l+.7827717662*s-.808675766*u}},Ec=n=>{var{L:e,a:t,b:r}=n,i=e+.3963377774*t+.2158037573*r,a=e-.1055613458*t-.0638541728*r,o=e-.0894841775*t-1.291485548*r,l=i*i*i,s=a*a*a,u=o*o*o;return{r:Ie(4.0767416621*l-3.3077115913*s+.2309699292*u,0,255),g:Ie(-1.2684380046*l+2.6097574011*s-.3413193965*u,0,255),b:Ie(-.0041960863*l-.7034186147*s+1.707614701*u,0,255)}},Tc=n=>{var e,t,r=(e=(t=n.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(i,a,o,l)=>"#".concat(a).concat(a).concat(o).concat(o).concat(l).concat(l)).substring(1).match(/.{2}/g))===null||t===void 0?void 0:t.map(i=>parseInt(i,16)))!==null&&e!==void 0?e:[0,0,0];return{r:r[0],g:r[1],b:r[2]}},yc=n=>{var e=Math.round(n.r),t=Math.round(n.g),r=Math.round(n.b);return"#".concat([e,t,r].map(i=>{var a=i.toString(16);return a.length===1?"0".concat(a):a}).join(""))},Rc=(n,e,t)=>{var{L:r,a:i,b:a}=n,{L:o,a:l,b:s}=e,u=r+(o-r)*t,d=i+(l-i)*t,c=a+(s-a)*t;return{L:u,a:d,b:c}};const Hr={colorWithAlpha:bc,darkenForDepth:wc,linearSRGBToOklab:Sc,OklabToLinearSRGB:Ec,hexToRgb:Tc,rgbToHex:yc,lerpColor:Rc};function $o(n,e,t){return e=Oc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Oc(n){var e=Fc(n,"string");return typeof e=="symbol"?e:String(e)}function Fc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class We{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;$o(this,"order",void 0),$o(this,"cursor",null),this.order=e}onDown(e,t,r){return!1}onMove(e,t,r){return!1}onDrag(e,t,r){return!1}onLeave(e,t,r){return!1}onClick(e,t,r){return!1}onContextMenu(e,t,r){return!1}onDoubleClick(e,t,r){return!1}onUp(e,t,r){return!1}onWheel(e,t,r){return!1}}function bn(n,e,t){return e=Dc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dc(n){var e=Nc(n,"string");return typeof e=="symbol"?e:String(e)}function Nc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Pc extends We{constructor(){super(...arguments),bn(this,"draggingIndex",void 0),bn(this,"resizingItems",[]),bn(this,"hiddenItems",[]),bn(this,"targetSizes",new Map),bn(this,"dragOffset",0)}onDown(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var o=this.getSeparator(e,r,i,a);if(o!=null){var l=o.index;return this.dragOffset=0,this.draggingIndex=l,this.resizingItems=[l],this.hiddenItems=this.getHiddenItems(l,r).reverse(),this.targetSizes.clear(),this.addTargetSize(r,l),this.updateCursor(r,l),this.updateSeparator(t,o),!0}return!1}onMove(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var o=this.getSeparator(e,r,i,a);return o!=null?(this.updateCursor(r,o.index),!0):!1}onDrag(e,t){if(this.draggingIndex==null)return!1;var r=e[this.pointProperty],{metricCalculator:i,metrics:a}=t;if(!a)throw new Error("metrics not set");for(var o=t.getTheme(),l=a[this.visibleOffsetProperty],s=a[this.marginProperty],u=a[this.calculatedSizesProperty],d=a[this.modelIndexesProperty],c=a[this.firstIndexProperty],h=a[this.treePaddingProperty],v=new Map,g=this.resizingItems[this.resizingItems.length-1];g!=null;){var f=N(l,g),p=r-s-f-this.dragOffset,C=N(d,g),w=this.targetSizes.get(C),b=this.resizingItems.length>1,E=this.hiddenItems.indexOf(g),T=N(u,C);g===c&&(T+=h);var S=p;if(Math.abs(p-T)<=o.headerResizeSnapThreshold?S=T:w!==void 0&&p>w&&(b&&E!==0||E>0)?S=w:p<=o.headerResizeHiddenSnapThreshold&&(S=0),v.set(C,S),p<-o.headerResizeSnapThreshold&&S===0)if(E>=0&&b){var O;this.resizingItems.pop(),this.removeTargetSize(a,g),g=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(O=this.targetSizes.get(N(d,g)))!==null&&O!==void 0?O:0}else g=this.getNextShownItem(g,a),g!==null&&(this.resizingItems.push(g),this.addTargetSize(a,g));else w!==void 0&&p>w+o.headerResizeSnapThreshold&&S===w?E>0?(this.dragOffset+=S,g=this.hiddenItems[E-1],this.resizingItems.push(g),this.addTargetSize(a,g)):b?(this.resizingItems.pop(),this.removeTargetSize(a,g),g=this.resizingItems[this.resizingItems.length-1]):g=null:g=null}return v.forEach((F,R)=>{var D,P=(D=i[this.initialSizesProperty].get(R))!==null&&D!==void 0?D:u.get(R);F===P?this.resetSize(i,R):this.setSize(i,R,F)}),this.updateCursor(a,this.draggingIndex),!0}onUp(e,t){return this.draggingIndex!=null&&(this.draggingIndex=void 0,this.resizingItems=[],this.hiddenItems=[],this.targetSizes.clear(),this.updateSeparator(t,null)),!1}onDoubleClick(e,t){var{metrics:r,metricCalculator:i}=t,{model:a}=t.props,o=t.getTheme();if(!r)throw new Error("metrics not set");var l=this.getSeparator(e,r,a,o);if(l!=null){var s=r[this.modelIndexesProperty],u=N(s,l.index),d=N(r[this.calculatedSizesProperty],u),c=i[this.initialSizesProperty].get(u);return d===c?this.resetSize(i,u):this.setSize(i,u,d),t.forceUpdate(),!0}return!1}updateCursor(e,t){var r=e[this.visibleSizesProperty],i=N(r,t);i===0?this.cursor=this.hiddenCursor:this.cursor=this.defaultCursor}addTargetSize(e,t){var r=e[this.modelIndexesProperty],i=e[this.userSizesProperty],a=e[this.calculatedSizesProperty],o=t===0?e[this.treePaddingProperty]:0,l=N(r,t),s=i.get(l);(s==null||s===0)&&(s=N(a,l)+o),this.targetSizes.set(l,s)}removeTargetSize(e,t){var r=e[this.modelIndexesProperty],i=N(r,t);this.targetSizes.delete(i)}}const gs=Pc;function rt(n,e,t){return e=Ic(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ic(n){var e=Ac(n,"string");return typeof e=="symbol"?e:String(e)}function Ac(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class no extends gs{constructor(){super(...arguments),rt(this,"hiddenCursor","e-resize"),rt(this,"defaultCursor","col-resize"),rt(this,"pointProperty","x"),rt(this,"userSizesProperty","userColumnWidths"),rt(this,"visibleOffsetProperty","visibleColumnXs"),rt(this,"visibleSizesProperty","visibleColumnWidths"),rt(this,"marginProperty","rowHeaderWidth"),rt(this,"calculatedSizesProperty","calculatedColumnWidths"),rt(this,"initialSizesProperty","initialColumnWidths"),rt(this,"modelIndexesProperty","modelColumns"),rt(this,"firstIndexProperty","firstColumn"),rt(this,"treePaddingProperty","treePaddingX"),rt(this,"getHiddenItems",Q.getHiddenColumns),rt(this,"getNextShownItem",Q.getNextShownColumn),rt(this,"getSeparator",no.getColumnSeparator)}static getColumnSeparator(e,t,r,i){if(!i.allowColumnResize)return null;var{x:a,y:o,columnHeaderDepth:l}=e,{modelColumns:s}=t,u=Q.getColumnSeparatorIndex(a,o,t,i);if(u==null||l==null||l>0)return null;var d=s.get(u);return d!=null?{index:u,depth:0}:null}setSize(e,t,r){e.setColumnWidth(t,r)}resetSize(e,t){e.resetColumnWidth(t)}updateSeparator(e,t){e.setState({draggingColumnSeparator:t,isDragging:t!==null})}}const fs=no;var Wr=10;function Mc(n,e,t){return e=Lc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lc(n){var e=kc(n,"string");return typeof e=="symbol"?e:String(e)}function kc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class _c{constructor(){Mc(this,"getCachedTruncatedString",zt((e,t,r,i,a)=>bs.truncateToWidth(e,t,r,i,a),{max:1e4}))}drawCellRowTreeMarker(e,t,r){var{metrics:i,model:a,mouseX:o,mouseY:l,theme:s}=t,{firstColumn:u,gridX:d,gridY:c,allColumnXs:h,allColumnWidths:v,allRowYs:g,allRowHeights:f,visibleRowTreeBoxes:p}=i,{treeMarkerColor:C,treeMarkerHoverColor:w}=s,b=N(h,u),E=N(v,u),T=N(g,r),S=N(f,r);if(!(!Ne(a)||!a.isRowExpandable(r))){var O=N(p,r),F=o!=null&&l!=null&&o>=d+b&&o<=d+b+E&&l>=c+T&&l<=c+T+S?w:C;this.drawTreeMarker(e,t,b,T,O,F,a.isRowExpanded(r))}}drawTreeMarker(e,t,r,i,a,o,l){var{x1:s,y1:u,x2:d,y2:c}=a,h=l?"⊟":"⊞",v=r+(s+d)*.5+.5,g=i+(u+c)*.5+.5;e.fillStyle=o,e.textAlign="center",e.fillText(h,v,g)}}const ps=_c;function Go(n){return(n==null?void 0:n.dataBarOptionsForCell)!==void 0}function Wo(n,e,t){return e=Hc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hc(n){var e=xc(n,"string");return typeof e=="symbol"?e:String(e)}function xc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Bc extends ps{constructor(){super(...arguments),Wo(this,"heightOfDigits",void 0),Wo(this,"getCachedWidestValueForColumn",zt((e,t,r,i,a)=>{for(var o=0,l=0;l<t.length;l+=1){var s=t[l],u=N(r,s),d=i.textForCell(a,u);o=Math.max(o,e.measureText(d).width)}return o},{max:1e3}))}drawCellContent(e,t,r,i){var a,{metrics:o,model:l,theme:s}=t;if(Go(l)){var{modelColumns:u,modelRows:d,allRowHeights:c,allRowYs:h,firstColumn:v,fontWidths:g}=o,f=r===v,p=N(c,i),C=N(d,i),w=N(u,r),b=N(h,i),E=l.textAlignForCell(w,C),T=l.textForCell(w,C),{x:S,width:O}=Q.getTextRenderMetrics(t,r,i),F=(a=g==null?void 0:g.get(e.font))!==null&&a!==void 0?a:Wr,R=l.truncationCharForCell(w,C),D=this.getCachedTruncatedString(e,T,O,F,R),{columnMin:P,columnMax:I,axis:A,color:x,valuePlacement:H,opacity:W,markers:z,direction:G,value:K}=l.dataBarOptionsForCell(w,C),q=Array.isArray(x);if(!(P==null||I==null)){var{maxWidth:k,x:L,y:$,zeroPosition:U,leftmostPosition:Y,markerXs:X,totalValueRange:ae,dataBarWidth:de}=this.getDataBarRenderMetrics(e,t,r,i);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:ee,actualBoundingBoxDescent:oe}=e.measureText("1234567890");this.heightOfDigits=ee+oe}if(e.save(),e.textAlign=E,q){var se=K>=0?x[x.length-1]:x[0];e.fillStyle=se}else e.fillStyle=x;if(e.textBaseline="top",e.font=s.font,H!=="hide"&&e.fillText(D,S,b+(p-this.heightOfDigits)/2),q){var Ae=x.map(Ot=>Hr.linearSRGBToOklab(Hr.hexToRgb(Ot)));if(e.save(),e.beginPath(),e.roundRect(L,$,de,p-2,1),e.clip(),K<0){if(G==="LTR")for(var Je=Math.round(Math.abs(P)/ae*k),Xe=Je/(x.length-1),ze=Math.round(Y),Ve=0;Ve<x.length-1;Ve+=1){var Qe=Ae[Ve],De=Ae[Ve+1];this.drawGradient(e,Qe,De,ze,b+1,Xe,p),ze+=Xe}else if(G==="RTL")for(var lt=Math.round(k-Math.abs(I)/ae*k),st=lt/(x.length-1),Mt=Math.round(U),Lt=x.length-1;Lt>0;Lt-=1){var er=Ae[Lt],ur=Ae[Lt-1];this.drawGradient(e,er,ur,Mt,b+1,st,p),Mt+=st}}else if(G==="LTR")for(var Tt=Math.round(k-Math.abs(P)/ae*k)-1,Ze=Tt/(x.length-1),kt=Math.round(U),ut=0;ut<x.length-1;ut+=1){var dt=Ae[ut],Ye=Ae[ut+1];this.drawGradient(e,dt,Ye,kt,b+1,Ze,p-2),kt+=Ze}else if(G==="RTL")for(var yt=Math.round(Math.abs(I)/ae*k),_t=yt/(x.length-1),Rt=Math.round(Y),ct=x.length-1;ct>0;ct-=1){var dr=Ae[ct],jt=Ae[ct-1];this.drawGradient(e,dr,jt,Rt,b+1,_t,p-2),Rt+=_t}e.restore()}else e.save(),e.globalAlpha=W,e.beginPath(),e.roundRect(L,$,de,p-2,1),e.fill(),e.restore();k>0&&X.forEach((Ot,Ht)=>{e.fillStyle=z[Ht].color,e.fillRect(Ot,$,1,p-2)});var tr=!(A==="directional"&&(H==="beside"&&E==="right"&&G==="LTR"||H==="beside"&&E==="left"&&G==="RTL"||H!=="beside"));tr&&(e.strokeStyle=s.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(U,b),e.lineTo(U,b+p),e.stroke()),e.restore(),f&&Ne(l)&&l.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}}}getDataBarRenderMetrics(e,t,r,i){var{metrics:a,model:o,theme:l}=t;if(!Go(o))throw new Error("Grid model is not a data bar grid model");var{firstColumn:s,allColumnXs:u,allColumnWidths:d,allRowYs:c,modelColumns:h,modelRows:v,visibleRows:g}=a,{cellHorizontalPadding:f,treeDepthIndent:p,treeHorizontalPadding:C}=l,w=N(h,r),b=N(v,i),E=N(u,r),T=N(c,i),S=N(d,r),O=r===s,F=0;Ne(o)&&o.hasExpandableRows&&O&&(F=p*(o.depthForRow(i)+1)+C);var R=o.textAlignForCell(w,b),{columnMin:D,columnMax:P,axis:I,valuePlacement:A,markers:x,direction:H,value:W}=o.dataBarOptionsForCell(w,b),z=this.getCachedWidestValueForColumn(e,g,v,o,w),G=2,K=A==="beside"&&R==="right"?2:1,q=P-D;P>=0&&D>=0||D===P?q=P:P<=0&&D<=0&&(q=Math.abs(D));var k=S-F-K-G;A==="beside"&&(k=k-f-z),k<0&&(k=0);var L=Math.max(Math.abs(D),Math.abs(P)),$=Math.abs(W)/q*k;k===0?$=0:I==="middle"?$=Math.abs(W)/L*(k/2):I==="directional"&&($=Math.abs(W)/L*k);var U=D>=0?0:Math.abs(D)/q*k,Y=W>=0?U:U-Math.abs(W)/q*k,X=x.map(ee=>{var{column:oe}=ee,se=Number(o.textForCell(oe,b));return se>=0?U+Math.abs(se)/q*k:U-Math.abs(se)/q*k}),ae=A==="beside"&&R==="left"?f+z+G:G,de=A==="beside"&&R==="right"?S-f-z-K:K;return H==="RTL"&&(U=D>=0?S:S-Math.abs(D)/q*k,Y=W>=0?U-W/q*k:U,X=x.map(ee=>{var{column:oe}=ee,se=Number(o.textForCell(oe,b));return se>=0?U-Math.abs(se)/q*k:U+Math.abs(se)/q*k})),I==="middle"?(U=k/2,H==="LTR"?(Y=W>=0?U:U-Math.abs(W)/L*(k/2),X=x.map(ee=>{var{column:oe}=ee,se=Number(o.textForCell(oe,b));return se>=0?U+Math.abs(se)/L*(k/2):U-Math.abs(se)/L*(k/2)})):H==="RTL"&&(Y=W<=0?U:U-Math.abs(W)/L*(k/2),X=x.map(ee=>{var{column:oe}=ee,se=Number(o.textForCell(oe,b));return se<=0?U+Math.abs(se)/L*(k/2):U-Math.abs(se)/L*(k/2)}))):I==="directional"&&(H==="LTR"?(U=0,Y=U,X=x.map(ee=>{var{column:oe}=ee,se=Number(o.textForCell(oe,b));return U+Math.abs(se)/L*k})):H==="RTL"&&(U=S,Y=U-Math.abs(W)/L*k,X=x.map(ee=>{var{column:oe}=ee,se=Number(o.textForCell(oe,b));return U-Math.abs(se)/L*k}))),H==="LTR"?(U+=E+G+F,Y+=E+G+F,X=X.map(ee=>ee+E+G+F),A==="beside"&&R==="left"&&(U+=z+f,Y+=z+f,X=X.map(ee=>ee+z+f))):H==="RTL"&&(U=U+E-K,Y=Y+E-K,X=X.map(ee=>ee+E-K),A==="beside"&&R==="right"&&(U=U-f-z,Y=Y-f-z,X=X.map(ee=>ee-f-z))),ae+=E+F,de+=E,{maxWidth:k,x:Y,y:T+1.5,zeroPosition:U,leftmostPosition:ae,rightmostPosition:de,totalValueRange:q,dataBarWidth:$,markerXs:X}}drawGradient(e,t,r,i,a,o,l){for(var s=t,u=i;u<=i+o;u+=.5)this.drawGradientPart(e,u,a,1,l,Hr.rgbToHex(Hr.OklabToLinearSRGB(s))),s=Hr.lerpColor(t,r,(u-i)/o)}drawGradientPart(e,t,r,i,a,o){e.fillStyle=o,e.fillRect(t,r,i,a)}}const Cs=Bc;function Uc(n,e,t){return e=Vc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vc(n){var e=$c(n,"string");return typeof e=="symbol"?e:String(e)}function $c(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Gc extends ps{constructor(){super(...arguments),Uc(this,"getCachedTokenBoxesForVisibleCell",zt((e,t,r,i,a,o)=>{for(var l=0,s=a,u=[],d=0,c=0,h=0;h<t.length;h+=1){var v=t[h],{start:g,end:f}=v,p=f>e.length?e.substring(g):v.value;c+=o.measureText(e.substring(d,g)).width;var C=o.measureText(p).width,w=c,b=w+C,E={x1:w,y1:l,x2:b,y2:s,token:v};u.push(E),d=f,c+=C}return u},{max:1e4}))}drawCellContent(e,t,r,i){var{metrics:a,model:o,theme:l}=t,{fontWidths:s,modelColumns:u,modelRows:d,allRowHeights:c,firstColumn:h}=a,v=r===h,{textColor:g}=l,f=N(c,i),p=N(d,i),C=N(u,r),w=o.textForCell(C,p),b=o.truncationCharForCell(C,p);if(w&&f>0){var E,T=o.textAlignForCell(C,p)||"left";e.textAlign=T;var S=o.colorForCell(C,p,l)||g;e.fillStyle=S,e.save();var{width:O,x:F,y:R}=Q.getTextRenderMetrics(t,r,i),D=(E=s.get(e.font))!==null&&E!==void 0?E:Wr,P=this.getCachedTruncatedString(e,w,O,D,b),I=o.tokensForCell(C,p,P.length);if(P)for(var A=0,x=0,H=F,{actualBoundingBoxDescent:W}=e.measureText(P);x<P.length;){var z,G,K=I[A],q=x===(K==null?void 0:K.start)?K:null,k=(z=(G=q==null?void 0:q.end)!==null&&G!==void 0?G:K==null?void 0:K.start)!==null&&z!==void 0?z:P.length,L=P.substring(x,k),{width:$}=e.measureText(L),U=L.endsWith("…")?e.measureText(L.substring(0,L.length-1)).width:$;q!=null?(e.fillStyle=l.hyperlinkColor,e.fillText(L,H,R),e.fillRect(H,R+W,U,1)):(e.fillStyle=S,e.fillText(L,H,R)),H+=$,x=k,q!=null&&(A+=1)}e.restore()}v&&Ne(o)&&o.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}getTokenBoxesForVisibleCell(e,t,r){var i,{metrics:a,context:o,model:l,theme:s}=r;if(o==null||a==null)return Ee;var{modelRows:u,modelColumns:d}=a,c=N(u,t),h=N(d,e),v=l.textForCell(h,c),{width:g,x:f,y:p}=Q.getTextRenderMetrics(r,e,t),{fontWidths:C}=a;o.save(),this.configureContext(o,r);var w=(i=C==null?void 0:C.get(o.font))!==null&&i!==void 0?i:Wr,b=l.truncationCharForCell(h,c),E=this.getCachedTruncatedString(o,v,g,w,b),{actualBoundingBoxAscent:T,actualBoundingBoxDescent:S}=o.measureText(E),O=T+S,F=l.tokensForCell(h,c,E.length);if(F.length===0)return o.restore(),Ee;var R=this.getCachedTokenBoxesForVisibleCell(E,F,s.font,"middle",O,o).map(D=>({x1:D.x1+f,y1:D.y1+(p-T),x2:D.x2+f,y2:D.y2+(p-T),token:D.token}));return o.restore(),R}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}}const ws=Gc;function xr(n,e,t){return e=Wc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wc(n){var e=zc(n,"string");return typeof e=="symbol"?e:String(e)}function zc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qt{constructor(){xr(this,"textCellRenderer",new ws),xr(this,"dataBarCellRenderer",new Cs),xr(this,"getCachedBackgroundColors",zt((e,t)=>e.split(" ").map(r=>{for(var i=[],a=0;a<t;a+=1)i.push(Hr.darkenForDepth(r,a,t));return i}),{max:1e3})),xr(this,"getCachedColorWithAlpha",zt((e,t)=>Hr.colorWithAlpha(e,t),{max:1e3})),xr(this,"getCachedColorIsDark",zt(e=>cs.isDark(e),{max:1e3}))}static truncate(e,t){return t<e.length?e.substr(0,t)+"…":e}static binaryTruncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:t.length,o=arguments.length>5?arguments[5]:void 0;if(a>=t.length&&e.measureText(t).width<=r)return t;if(o!==void 0){var l=e.measureText(o).width;return o.repeat(Math.max(1,Math.floor(r/l)))}for(var s=i,u=Math.min(t.length-1,a),d=t;u>=s;){var c=Math.ceil((u+s)/2),h=Qt.truncate(t,c);if(e.measureText(h).width<=r){if(d=h,s===c)break;s=c}else if(c===0){d=h;break}else u=c-1}return d}static truncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:Wr,a=arguments.length>4?arguments[4]:void 0;if(r<=0||t.length<=0)return"";var o=Math.min(Math.max(0,Math.floor(r/i/2)-5),t.length),l=Math.min(Math.ceil(r/i*2),t.length);return Qt.binaryTruncateToWidth(e,t,r,o,l,a)}drawCanvas(e){var{context:t}=e;t.save(),this.configureContext(t,e),this.drawBackground(t,e),this.drawGrid(t,e),this.drawHeaders(t,e),this.drawFooters(t,e),this.drawDraggingColumn(t,e),this.drawDraggingRow(t,e),this.drawScrollBars(t,e),t.restore()}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}drawBackground(e,t){var{theme:r,metrics:i}=t,{width:a,height:o}=i;e.fillStyle=r.backgroundColor,e.fillRect(0,0,a,o)}drawGrid(e,t){var{metrics:r,draggingRow:i,draggingColumn:a}=t,{gridX:o,gridY:l}=r;e.translate(o,l),this.drawGridBackground(e,t,i==null&&a==null),this.drawCellContents(e,t),this.drawFloatingRows(e,t),this.drawFloatingColumns(e,t),e.translate(-o,-l)}drawFloatingRows(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingTopRowCount:l,floatingBottomRowCount:s,floatingRows:u,rowCount:d,visibleColumns:c,allRowYs:h,allRowHeights:v}=a;if(u.length!==0){o.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,t,u,o.floatingRowBackgroundColors),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),this.drawGridLinesForItems(e,t,c,u,o.floatingGridColumnColor,o.floatingGridRowColor),this.drawCellBackgroundsForItems(e,t,c,u),this.drawFloatingBorders(e,t),l>0&&this.drawSelectedRanges(e,t,{top:0,bottom:l-1,maxY:N(h,l-1)+N(v,l-1)-.5}),s>0&&this.drawSelectedRanges(e,t,{top:d-s-1,bottom:d-1,minY:N(h,d-s)+.5,maxY:N(h,d-1)+N(v,d-1)-.5});for(var g=0;g<c.length;g+=1)for(var f=c[g],p=0;p<u.length;p+=1){var C=u[p];this.drawCellContent(e,t,f,C)}}}drawFloatingColumns(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingLeftColumnCount:l,floatingRightColumnCount:s,floatingLeftWidth:u,floatingRightWidth:d,floatingColumns:c,gridX:h,maxX:v,columnCount:g,visibleRows:f,allColumnXs:p,allColumnWidths:C,width:w,height:b}=a;if(c.length!==0){o.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,t,f,o.floatingRowBackgroundColors,0,u),this.drawRowStripesForRows(e,t,f,o.floatingRowBackgroundColors,w-h-d,v)),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),e.save(),e.beginPath(),e.rect(0,0,u,b),e.clip(),this.drawGridLinesForItems(e,t,c,f,o.floatingGridColumnColor,o.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,t,c,f),this.drawFloatingBorders(e,t),l>0&&this.drawSelectedRanges(e,t,{left:0,maxX:N(p,l-1)+N(C,l-1)}),s>0&&this.drawSelectedRanges(e,t,{left:g-s,right:g-1,minX:N(p,g-s)+.5,maxX:N(p,g-1)+N(C,g-1)});for(var E=0;E<c.length;E+=1)for(var T=c[E],S=0;S<f.length;S+=1){var O=f[S];this.drawCellContent(e,t,T,O)}}}drawFloatingBorders(e,t){var{metrics:r,theme:i}=t,{floatingTopRowCount:a,floatingBottomRowCount:o,floatingLeftColumnCount:l,floatingRightColumnCount:s,rowCount:u,columnCount:d,allRowYs:c,allColumnXs:h,allRowHeights:v,allColumnWidths:g,maxX:f,maxY:p}=r,{floatingDividerOuterColor:C,floatingDividerInnerColor:w}=i;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=C,a>0){var b=N(c,a-1)+N(v,a-1)+.5;e.moveTo(0,b),e.lineTo(f,b)}if(o>0){var E=N(c,u-o)-.5;e.moveTo(0,E),e.lineTo(f,E)}if(l>0){var T=N(h,l-1)+N(g,l-1)+.5;e.moveTo(T,0),e.lineTo(T,p)}if(s>0){var S=N(h,d-s)-.5;e.moveTo(S,0),e.lineTo(S,p)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=w,a>0){var O=N(c,a-1)+N(v,a-1)+.5;e.moveTo(0,O),e.lineTo(f,O)}if(o>0){var F=N(c,u-o)-.5;e.moveTo(0,F),e.lineTo(f,F)}if(l>0){var R=N(h,l-1)+N(g,l-1)+.5;e.moveTo(R,0),e.lineTo(R,p)}if(s>0){var D=N(h,d-s)-.5;e.moveTo(D,0),e.lineTo(D,p)}e.stroke()}drawGridBackground(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.drawRowStripes(e,t),r&&(this.drawMouseColumnHover(e,t),this.drawMouseRowHover(e,t)),this.drawGridLines(e,t),this.drawCellBackgrounds(e,t);var{metrics:i}=t,{bottom:a,right:o,floatingBottomRowCount:l,floatingLeftColumnCount:s,floatingRightColumnCount:u,floatingTopRowCount:d,columnCount:c,rowCount:h,allRowHeights:v,allRowYs:g,allColumnXs:f,allColumnWidths:p,width:C,height:w}=i;this.drawSelectedRanges(e,t,{bottom:Math.min(a,h-l-1),right:Math.min(o,c-u-1),minX:s>0&&f.has(s+1)?N(f,s+1):-10,minY:d>0&&g.has(d+1)?N(g,d+1):-10,maxX:u>0&&f.has(c-u-1)?N(f,c-u-1)+N(p,c-u-1)-.5:C+10,maxY:l>0&&g.has(h-l-1)?N(g,h-l-1)+N(v,h-l-1)-.5:w+10})}drawRowStripes(e,t){var{metrics:r,theme:i}=t,{visibleRows:a}=r,{rowBackgroundColors:o}=i;o&&this.drawRowStripesForRows(e,t,a,o)}drawRowStripesForRows(e,t,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:t.metrics.maxX,{theme:l,metrics:s,model:u}=t,{maxDepth:d,shadowBlur:c,shadowColor:h}=l,v=this.getCachedBackgroundColors(i,d),{allRowYs:g,allRowHeights:f}=s,p=new Map,C=[],w=[],b=(k,L)=>{var $=Ne(u)?u.depthForRow(k):0,U=v[k%v.length],Y=U[Math.min($,U.length-1)];if(p.has(Y)||p.set(Y,[]),p.get(Y).push(k),L!=null){var X=Ne(u)?u.depthForRow(L):0;X<$?C.push(k):X>$&&w.push(L)}},E=0;E<r.length;E+=1){var T=r[E],S=E>0?r[E-1]:void 0;b(T,S)}if(p.forEach((k,L)=>{e.fillStyle=L,e.beginPath();for(var $=0;$<k.length;$+=1){var U=k[$],Y=N(g,U),X=N(f,U);e.rect(a,Y,o,X)}e.fill()}),C.length>0){e.save();var O=this.getCachedColorWithAlpha(h,.15),F=this.getCachedColorWithAlpha(h,0),R=e.createLinearGradient(0,0,0,c);R.addColorStop(0,O),R.addColorStop(1,F),e.fillStyle=R;for(var D=0;D<C.length;D+=1){var P=C[D],I=N(g,P);e.translate(0,I),e.fillRect(a,0,o,c),e.translate(0,-I)}e.restore()}if(w.length>0){e.save();var A=this.getCachedColorWithAlpha(h,0),x=this.getCachedColorWithAlpha(h,.15),H=e.createLinearGradient(0,0,0,c);H.addColorStop(0,A),H.addColorStop(1,x),e.fillStyle=H;for(var W=0;W<w.length;W+=1){var z=w[W],G=N(g,z),K=N(f,z),q=G+K-c;e.translate(0,q),e.fillRect(a,0,o,c),e.translate(0,-q)}e.restore()}}drawMouseColumnHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var l=Q.getColumnAtX(r,o);if(!(l==null||a.columnHoverBackgroundColor==null)){var{allColumnWidths:s,allColumnXs:u,maxY:d}=o;if(!(i>d)){var c=N(u,l),h=N(s,l);e.fillStyle=a.columnHoverBackgroundColor,e.fillRect(c,0,h,d)}}}}drawMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var{maxX:l}=o;if(!(r>l||a.rowHoverBackgroundColor==null)){var s=Q.getRowAtY(i,o);s!=null&&this.drawMouseRowHoverForRow(e,t,s)}}}drawFloatingMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t,{maxX:l,floatingTopRowCount:s,floatingBottomRowCount:u,rowCount:d,rowFooterWidth:c}=o;if(!(r==null||i==null||r>l+c||a.rowHoverBackgroundColor==null)){var h=Q.getRowAtY(i,o);h!=null&&(h<s||d-u<=h)&&this.drawMouseRowHoverForRow(e,t,h)}}drawMouseRowHoverForRow(e,t,r){var{metrics:i,selectedRanges:a,theme:o}=t,{allRowHeights:l,allRowYs:s,maxX:u}=i,d=N(s,r),c=N(l,r);o.rowHoverBackgroundColor!=null&&(e.fillStyle=o.rowHoverBackgroundColor);for(var h=0;h<a.length;h+=1){var{startRow:v,endRow:g}=a[h];if(v!=null&&g!=null&&v<=r&&g>=r){o.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=o.selectedRowHoverBackgroundColor);break}}e.fillRect(0,d,u,c)}drawGridLines(e,t){var{metrics:r,theme:i}=t,{visibleColumns:a,visibleRows:o}=r;this.drawGridLinesForItems(e,t,a,o,i.gridColumnColor,i.gridRowColor)}drawGridLinesForItems(e,t,r,i,a,o){a==null&&o==null||(e.lineWidth=1,e.beginPath(),a!=null&&(e.strokeStyle=a,this.drawGridLinesForColumns(e,t,r)),o!=null&&(e.strokeStyle=o,this.drawGridLinesForRows(e,t,i)),e.stroke())}drawGridLinesForColumns(e,t,r){for(var{metrics:i}=t,{allColumnXs:a,maxY:o}=i,l=0;l<r.length;l+=1){var s=r[l],u=N(a,s)+.5;e.moveTo(u,0),e.lineTo(u,o)}}drawGridLinesForRows(e,t,r){for(var{metrics:i}=t,{allRowYs:a,maxX:o}=i,l=o,s=0;s<r.length;s+=1){var u=r[s],d=N(a,u)+.5;e.moveTo(.5,d),e.lineTo(l-.5,d)}}drawCellBackgrounds(e,t){var{metrics:r}=t,{visibleColumns:i,visibleRows:a}=r;this.drawCellBackgroundsForItems(e,t,i,a)}drawCellBackgroundsForItems(e,t,r,i){e.save();for(var a=0;a<r.length;a+=1)for(var o=r[a],l=0;l<i.length;l+=1){var s=i[l],u=l+1<i.length?i[l+1]:void 0;this.drawCellBackground(e,t,o,s,u)}e.restore()}drawCellBackground(e,t,r,i,a){var{metrics:o,model:l,theme:s}=t,{firstColumn:u,modelColumns:d,modelRows:c,allColumnXs:h,allColumnWidths:v,allRowYs:g,allRowHeights:f}=o,p=N(c,i),C=N(d,r),w=l.backgroundColorForCell(C,p,s),b=r===u,E=Ne(l)&&l.hasExpandableRows;if(w!=null){var T=N(h,r)+1,S=N(g,i)+1,O=N(v,r)-1,F=N(f,i)-1;e.fillStyle=w,e.fillRect(T,S,O,F)}b&&E&&this.drawCellRowTreeDepthLines(e,t,i,a)}drawCellContents(e,t){for(var{metrics:r}=t,{visibleColumns:i}=r,a=0;a<i.length;a+=1){var o=i[a];this.drawColumnCellContents(e,t,o)}}drawColumnCellContents(e,t,r){var{metrics:i}=t,{allColumnXs:a,allColumnWidths:o,visibleRows:l,height:s}=i,u=N(a,r),d=N(o,r);e.save(),e.beginPath(),e.rect(u,0,d,s),e.clip();for(var c=0;c<l.length;c+=1){var h=l[c];this.drawCellContent(e,t,r,h)}e.restore()}drawCellContent(e,t,r,i){var{metrics:a,model:o}=t,{modelColumns:l,modelRows:s}=a,u=N(s,i),d=N(l,r),c=o.renderTypeForCell(d,u),h=this.getCellRenderer(c);h.drawCellContent(e,t,r,i)}getCellRenderer(e){switch(e){case"dataBar":return this.dataBarCellRenderer;default:return this.textCellRenderer}}drawCellRowTreeDepthLines(e,t,r,i){var{metrics:a,model:o,theme:l}=t;if(Ne(o)){var s=o.depthForRow(r);if(s!==0){var{firstColumn:u,allColumnXs:d,allRowYs:c,allRowHeights:h}=a,{treeDepthIndent:v,treeHorizontalPadding:g,treeLineColor:f}=l,p=N(d,u),C=N(c,r),w=N(h,r),b=i!==void 0?o.depthForRow(i):0,E=s>b?s-b:0;if(e.strokeStyle=f,e.lineWidth=1,s-E>0){e.beginPath();for(var T=0;T<s-E;T+=1){var S=p+T*v+v*.5+g+.5;e.moveTo(S,C),e.lineTo(S,C+w)}e.stroke()}if(E>0){e.beginPath();for(var O=s-E;O<s;O+=1){var F=p+O*v+v*.5+g+.5;e.moveTo(F,C),e.lineTo(F,C+Math.ceil(w/2)),e.moveTo(F-.5,C+Math.ceil(w/2)+.5),e.lineTo(F+v-.5,C+Math.ceil(w/2)+.5)}e.stroke()}}}}drawHeaders(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawColumnHeaders(e,t),this.drawRowHeaders(e,t)}drawFooters(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawRowFooters(e,t)}drawColumnHeaders(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o,draggingColumnSeparator:l,isDragging:s,model:u}=t,{columnHeaderHeight:d,floatingColumns:c,gridX:h,width:v,visibleColumns:g,allColumnWidths:f,allColumnXs:p,floatingLeftColumnCount:C,floatingLeftWidth:w,floatingRightWidth:b,modelColumns:E,columnHeaderMaxDepth:T}=o;if(!(d<=0)){var{headerHiddenSeparatorSize:S,headerHiddenSeparatorHoverColor:O,headerSeparatorColor:F,headerSeparatorHoverColor:R}=a,D=d*.5,P=d*(T-1)+d*.5-D*.5,I=C>0;if(e.save(),this.drawColumnHeadersForRange(e,t,[g[0],g[g.length-1]],{minX:h+w,maxX:v-b}),I&&this.drawColumnHeadersForRange(e,t,[c[0],c[c.length-1]],{minX:h,maxX:h+w}),F){e.strokeStyle=F;var A=[...f.entries()].filter(Je=>{var[Xe,ze]=Je;return ze===0}).map(Je=>{var[Xe]=Je;return Xe});e.beginPath(),e.fillStyle=F;for(var x=0;x<A.length;x+=1){var H=A[x],W=N(p,H),z=N(f,H),G=h+W+z+.5-S*.5;e.rect(G,P,S,D)}e.fill()}if(R){var{index:K,depth:q}=l??{};if(K==null&&r!=null&&i!=null){var k=fs.getColumnSeparator(Q.getGridPointFromXY(r,i,o),o,u,a);K=k==null?void 0:k.index,q=k==null?void 0:k.depth}var L;if(K==null)L=!1;else{var $=E.get(K),U=E.get(K+1);$==null||U==null?L=!1:L=u.textForColumnHeader($,q)!==u.textForColumnHeader(U,q)}if(L&&K!=null&&q!=null&&(!s||l!=null)){e.strokeStyle=R;var Y=N(p,K),X=N(f,K),ae=h+Y+X+.5,de=g.indexOf(K),ee=de<g.length-1?g[de+1]:null,oe=ee!=null?f.get(ee):null,se=X===0,Ae=oe!=null&&oe===0;se?(e.strokeStyle=O,e.fillStyle=O,e.fillRect(ae,P,S*.5,D)):Ae&&(e.fillStyle=R,e.fillRect(ae-S*.5,P,S*.5,D)),e.beginPath(),e.moveTo(ae,(T-q-1)*d),e.lineTo(ae,(T-q)*d-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,t,r,i){var{model:a}=t,{columnHeaderMaxDepth:o}=a;if(o!==0)for(var l=0;l<=o;l+=1)this.drawColumnHeadersAtDepth(e,t,r,i,l)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:l,theme:s}=t,{modelColumns:u,allColumnXs:d,gridX:c,userColumnWidths:h,allColumnWidths:v,movedColumns:g}=o,{columnHeaderHeight:f,columnWidth:p}=s,{columnHeaderMaxDepth:C}=l,{minX:w,maxX:b}=i,E=b-w;if(C!==0){var T=r[0],S=r[1];if(e.save(),e.translate(0,(C-a-1)*f),a===0){this.drawColumnHeader(e,t,"",w,b);for(var O=T;O<=S;O+=1)this.drawColumnHeaderAtIndex(e,t,O,i)}if(a>0)for(var F=T;F<=S;){var{columnCount:R}=o,D=N(u,F),P=l.textForColumnHeader(D,a),I=l.colorForColumnHeader(D,a),A=N(d,F)+c,x=A+N(v,F);if(P!=null){for(var H=F-1;H>=0&&(x-A<E||A>w);){var W,z,G,K=(W=u.get(H))!==null&&W!==void 0?W:Q.getModelIndex(H,g);if(K==null||l.textForColumnHeader(K,a)!==P)break;var q=(z=(G=h.get(K))!==null&&G!==void 0?G:v.get(H))!==null&&z!==void 0?z:p;A-=q,H-=1}for(var k=F+1;k<R&&(x-A<E||x<b);){var L,$,U,Y=(L=u.get(k))!==null&&L!==void 0?L:Q.getModelIndex(k,g);if(l.textForColumnHeader(Y,a)!==P)break;var X=($=(U=h.get(Y))!==null&&U!==void 0?U:v.get(k))!==null&&$!==void 0?$:p;x+=X,k+=1}F=k-1;var ae=x-A>=E,de=A;ae&&(x<b?de=x-E:A<w&&(de=w)),this.drawColumnHeader(e,t,P,de,Math.min(x-A,E),{backgroundColor:I??void 0},i)}F+=1}e.restore()}}drawColumnHeaderAtIndex(e,t,r,i){var a,{metrics:o,model:l}=t,{modelColumns:s,allColumnWidths:u,allColumnXs:d,gridX:c}=o,h=N(u,r),v=N(d,r)+c,g=N(s,r),f=l.textForColumnHeader(g);f!=null&&this.drawColumnHeader(e,t,f,v,h,{backgroundColor:(a=l.colorForColumnHeader(g))!==null&&a!==void 0?a:void 0},i)}drawColumnHeader(e,t,r,i,a,o,l){var s;if(!(a<=0)){var{metrics:u,theme:d}=t,{headerHorizontalPadding:c,columnHeaderHeight:h,headerBackgroundColor:v,headerColor:g,headerSeparatorColor:f,black:p,white:C}=d,{fontWidths:w,width:b}=u,E=(s=w.get(e.font))!==null&&s!==void 0?s:Wr,T=a-c*2,S=T/E,{backgroundColor:O=v,separatorColor:F=f}=o??{},{textColor:R=g}=o??{};try{var D=this.getCachedColorIsDark(O),P=this.getCachedColorIsDark(R);D&&P?R=C:!D&&!P&&(R=p)}catch{}var{minX:I=0,maxX:A=b}=l??{};e.save(),e.rect(I,0,A-I,h),e.clip(),O!=null&&(e.fillStyle=O,e.fillRect(i,0,a,h)),F!=null&&(e.strokeStyle=F,e.beginPath(),i>0&&(e.moveTo(i+.5,0),e.lineTo(i+.5,h)),e.moveTo(i+a+.5,0),e.lineTo(i+a+.5,h),e.moveTo(i,h-.5),e.lineTo(i+a,h-.5),e.stroke()),e.beginPath(),e.rect(i,0,a,h),e.clip(),e.fillStyle=R;var x=r;S<=0?x="":x.length>S&&(x="".concat(x.substring(0,S-1),"…"));var H=x.length*E,W=i+a*.5,z=h*.5;I+=c,A-=c;var G=i+c,K=Ie(G,I,A),q=i+a-c,k=Ie(q,I,A),L=k-K,$=W-H*.5<I,U=W+H*.5>A;$?H<L?W=I+H*.5:W=q-H*.5:U&&(H<L?W=A-H*.5:W=G+H*.5),e.textAlign="center",e.fillText(x,W,z),e.restore()}}drawRowHeaders(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o,draggingRowSeparator:l}=t,{gridY:s,rowHeaderWidth:u,height:d,visibleRows:c,allRowHeights:h,allRowYs:v}=a;if(!(u<=0)){var{headerBackgroundColor:g,headerColor:f,headerHiddenSeparatorSize:p,headerHiddenSeparatorHoverColor:C,headerSeparatorColor:w,headerSeparatorHoverColor:b}=o,E=u*.5,T=u*.5-E*.5;if(e.save(),e.beginPath(),e.fillStyle=g,e.fillRect(0,0,u,d),w){e.strokeStyle=w,e.beginPath(),e.moveTo(0,s+.5),e.lineTo(u,s+.5);for(var S=[],O=!1,F=0;F<c.length;F+=1){var R=c[F],D=N(v,R),P=N(h,R);if(P>0){var I=s+D+P+.5;e.moveTo(0,I),e.lineTo(u,I),O=!1}else O||(O=!0,S.push(R))}e.moveTo(u-.5,0),e.lineTo(u-.5,d),e.stroke(),e.beginPath(),e.fillStyle=w;for(var A=0;A<S.length;A+=1){var x=S[A],H=N(v,x),W=N(h,x),z=s+H+W+.5-p*.5;e.rect(T,z,E,p)}e.fill()}if(b){var{index:G=null}=l??{};if(G==null&&r!=null&&i!=null&&(G=Q.getRowSeparatorIndex(r,i,a,o)),G!=null){e.strokeStyle=b;var K=N(v,G),q=N(h,G),k=s+K+q+.5,L=c.indexOf(G),$=L<c.length-1?c[L+1]:null,U=$!=null?h.get($):null,Y=q===0,X=U!=null&&U===0;Y?(e.strokeStyle=C,e.fillStyle=C,e.fillRect(T,k,E,p*.5)):X&&(e.fillStyle=b,e.fillRect(T,k-p*.5,E,p*.5)),e.beginPath(),e.moveTo(.5,k),e.lineTo(u+.5,k),e.stroke()}}e.beginPath(),e.rect(0,s,u,d),e.clip(),e.fillStyle=f,e.textAlign="right";for(var ae=0;ae<c.length;ae+=1){var de=c[ae],ee=N(h,de),oe=N(v,de)+s;this.drawRowHeader(e,t,de,oe,ee)}e.restore()}}drawRowHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,model:l,theme:s}=t,{modelRows:u,rowHeaderWidth:d}=o,c=N(u,r),h=d-s.cellHorizontalPadding,v=i+a*.5;e.fillText(l.textForRowHeader(c),h,v)}}drawRowFooters(e,t){var{mouseX:r,mouseY:i,metrics:a,model:o,theme:l,draggingRowSeparator:s}=t,{gridY:u,gridX:d,maxX:c,modelRows:h,rowFooterWidth:v,height:g,verticalBarWidth:f,visibleRows:p,allRowHeights:C,allRowYs:w,width:b}=a;if(!(v<=0)){var{cellHorizontalPadding:E,headerBackgroundColor:T,headerColor:S,headerHiddenSeparatorSize:O,headerHiddenSeparatorHoverColor:F,headerSeparatorColor:R,headerSeparatorHoverColor:D}=l,P=v*.5,I=v*.5-P*.5,A=Math.min(d+c,b-v-f);if(e.save(),e.beginPath(),e.fillStyle=T,e.fillRect(A,u,v,g),R){e.strokeStyle=R,e.beginPath(),e.moveTo(A,u+.5),e.lineTo(v,u+.5);for(var x=[],H=!1,W=0;W<p.length;W+=1){var z=p[W],G=N(w,z),K=N(C,z);if(K>0){var q=u+G+K+.5;e.moveTo(A+.5,q),e.lineTo(A+v-.5,q),H=!1}else H||(H=!0,x.push(z))}e.moveTo(A+.5,u),e.lineTo(A+.5,g),e.stroke(),e.beginPath(),e.fillStyle=R;for(var k=0;k<x.length;k+=1){var L=x[k],$=N(w,L),U=N(C,L),Y=u+$+U+.5-O*.5;e.rect(A+I,Y,P,O)}e.fill()}if(D){var{index:X=null}=s??{};if(X==null&&r!=null&&i!=null&&(X=Q.getRowSeparatorIndex(r,i,a,l)),X!=null){e.strokeStyle=D;var ae=N(w,X),de=N(C,X),ee=u+ae+de+.5,oe=p.indexOf(X),se=oe<p.length-1?p[oe+1]:null,Ae=se!=null?C.get(se):null,Je=de===0,Xe=Ae!=null&&Ae===0;Je?(e.strokeStyle=F,e.fillStyle=F,e.fillRect(I,ee,P,O*.5)):Xe&&(e.fillStyle=D,e.fillRect(I,ee-O*.5,P,O*.5)),e.beginPath(),e.moveTo(A+.5,ee),e.lineTo(A+v+.5,ee),e.stroke()}}e.beginPath(),e.rect(A,u,v,g),e.clip(),e.fillStyle=S,e.textAlign="left";for(var ze=A+E,Ve=0;Ve<p.length;Ve+=1){var Qe=p[Ve],De=N(C,Qe);if(De>0){var lt=N(w,Qe)+u,st=N(h,Qe),Mt=lt+De*.5;e.fillText(o.textForRowFooter(st),ze,Mt)}}e.restore()}}drawSelectedRanges(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:i,cursorRow:a,draggingRow:o,draggingColumn:l,editingCell:s,metrics:u,model:d,selectedRanges:c,theme:h}=t,{allColumnWidths:v,allColumnXs:g,allRowHeights:f,allRowYs:p,width:C,height:w}=u,{left:b=u.left,top:E=u.top,right:T=u.right,bottom:S=u.bottom,minY:O=-10,maxY:F=w+10,minX:R=-10,maxX:D=C+10}=r;if(c.length!==0){var P=ke(d)&&d.isEditable&&s==null&&o==null&&l==null&&i!=null&&a!=null&&g.has(i)&&p.has(a);if(P){var I=N(g,i),A=N(p,a),x=N(v,i),H=N(f,a);e.save(),e.beginPath(),e.rect(0,0,C,w),e.rect(I,A,x,H),e.clip("evenodd")}e.beginPath();for(var W=0;W<c.length;W+=1){var z=c[W],G=z.startColumn!==null?z.startColumn:b,K=z.startRow!==null?z.startRow:E,q=z.endColumn!==null?z.endColumn:T,k=z.endRow!==null?z.endRow:S;if(k>=E&&S>=K&&q>=b&&T>=G){var L=G>=b&&g.has(G)?Math.round(N(g,G))+.5:R,$=K>=E&&p.has(K)?Math.max(Math.round(N(p,K))+.5,.5):O,U=q<=T&&g.has(q)?Math.round(N(g,q)+N(v,q))-.5:D,Y=k<=S&&p.has(k)?Math.round(N(p,k)+N(f,k))-.5:F;e.rect(L,$,U-L,Y-$)}e.fillStyle=h.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=h.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=h.selectionOutlineColor,e.lineWidth=1,e.stroke()}P&&i!=null&&a!=null&&(e.restore(),this.drawActiveCell(e,t,i,a))}}drawActiveCell(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:Qt.ACTIVE_CELL_BORDER_WIDTH,{metrics:o,theme:l}=t,{allColumnWidths:s,allColumnXs:u,allRowHeights:d,allRowYs:c}=o,h=N(u,r),v=N(c,i),g=N(s,r),f=N(d,i),p=h-a*.5,C=v-a*.5,w=g+a,b=f+a;p<=0&&(w+=p-1,p=1),C<=0&&(b+=C-1,C=1);var{lineWidth:E}=e;e.beginPath(),e.lineWidth=a,e.strokeStyle=l.selectionOutlineColor,this.drawRoundedRect(e,p,C,w,b),e.stroke(),e.lineWidth=E}drawRoundedRect(e,t,r,i,a){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Qt.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(t+o,r),e.lineTo(t+i-o,r),e.quadraticCurveTo(t+i,r,t+i,r+o),e.lineTo(t+i,r+a-o),e.quadraticCurveTo(t+i,r+a,t+i-o,r+a),e.lineTo(t+o,r+a),e.quadraticCurveTo(t,r+a,t,r+a-o),e.lineTo(t,r+o),e.quadraticCurveTo(t,r,t+o,r),e.closePath()}drawDraggingColumn(e,t){var r,{draggingColumn:i,metrics:a,mouseX:o,theme:l,model:s}=t;if(!(i==null||o==null)){var{range:u,depth:d}=i,{gridX:c,gridY:h,allColumnXs:v,allColumnWidths:g,height:f,width:p,columnHeaderMaxDepth:C,columnHeaderHeight:w,movedColumns:b,modelColumns:E,floatingLeftWidth:T}=a,S=(r=E.get(u[0]))!==null&&r!==void 0?r:Q.getModelIndex(u[0],b),O=s.getColumnHeaderGroup(S,d);if(!(d>0&&!O)){var[F,R]=u,D=N(v,F),P=N(v,R)+N(g,R),I=P-D,A=i.left,{backgroundColor:x,font:H,headerFont:W,reorderOffset:z,shadowBlur:G,shadowColor:K}=l,q=(C-d-1)*w;e.save(),e.translate(c,0),e.save(),e.beginPath(),e.rect(T,0,p,f),e.clip(),e.fillStyle=x,e.fillRect(D,q,I,f),e.restore(),e.translate(0,z),e.save(),e.shadowColor=K,e.shadowBlur=G,e.fillStyle=x,e.fillRect(i.left,q+z,i.width,f),e.restore(),e.beginPath(),e.rect(i.left,q,i.width+1,f),e.clip(),e.translate(A-D,0),e.font=W;for(var k=[],L=i.range[0];L<=i.range[1];L+=1)k.push(L);this.drawColumnHeaders(e,t),this.drawColumnHeadersForRange(e,t,[k[0],k[k.length-1]],{minX:D,maxX:p}),e.translate(0,h),e.font=H,this.drawGridBackground(e,t);for(var $=F;$<=R;$+=1)this.drawColumnCellContents(e,t,$);e.restore()}}}drawDraggingRow(e,t){var{draggingRow:r,draggingRowOffset:i,metrics:a,mouseY:o,theme:l}=t;if(!(r==null||o==null)){var{gridX:s,gridY:u,allRowYs:d,allRowHeights:c,width:h}=a,v=N(d,r),g=N(c,r)+1,{backgroundColor:f,font:p,headerFont:C,reorderOffset:w,shadowBlur:b,shadowColor:E}=l;e.save(),e.translate(0,u),e.fillStyle=f,e.fillRect(0,v,h,g),e.translate(s+w,o-v-u-(i??0)),e.save(),e.shadowColor=E,e.shadowBlur=b,e.fillStyle=f,e.fillRect(-s,v,h,g),e.restore(),e.beginPath(),e.rect(-s,v,h,g),e.clip(),e.font=p,this.drawGridBackground(e,t),this.drawCellContents(e,t),e.translate(-s,-u),e.font=C,this.drawRowHeaders(e,t),e.restore()}}drawScrollBars(e,t){var{isDraggingHorizontalScrollBar:r,isDraggingVerticalScrollBar:i,isDragging:a,metrics:o,mouseX:l,mouseY:s,theme:u}=t;if(!(u.scrollBarSize<=0)){var{width:d,height:c,handleHeight:h,handleWidth:v,scrollX:g,scrollY:f,hasHorizontalBar:p,hasVerticalBar:C,barWidth:w,barHeight:b,barLeft:E,barTop:T}=o,{scrollBarBackgroundColor:S,scrollBarHoverBackgroundColor:O,scrollBarCasingColor:F,scrollBarCornerColor:R,scrollBarColor:D,scrollBarHoverColor:P,scrollBarActiveColor:I,scrollBarSize:A,scrollBarHoverSize:x,scrollBarCasingWidth:H,scrollBarSelectionTick:W,scrollBarSelectionTickColor:z,scrollBarActiveSelectionTickColor:G,autoSelectRow:K,autoSelectColumn:q}=u,k=l!=null&&s!=null&&l<=d&&s<=c,L=i||C&&!r&&!a&&l!=null&&s!=null&&l>=d-x&&s>=T&&k,$=r||p&&!i&&!a&&!L&&l!=null&&s!=null&&s>=c-x&&l>=E&&k,U=$?x:A,Y=L?x:A;if(e.translate(E,T),p&&C&&(e.fillStyle=F,e.fillRect(d-E-A,c-T-A,A,A),e.fillStyle=R,e.fillRect(d-E-A+H,c-T-A+H,A-H,A-H)),p){var X=g,ae=c-T-U;if(e.fillStyle=F,e.fillRect(0,ae,w,U-H),e.fillStyle=$?O:S,e.fillRect(0,ae+H,w,U-H),r?e.fillStyle=I:$?e.fillStyle=P:e.fillStyle=D,e.fillRect(X,ae+H,v,U-H),!K&&W&&z!=null&&G!=null){e.fillStyle=z;for(var{selectedRanges:de,cursorColumn:ee}=t,{lastLeft:oe,columnCount:se}=o,Ae=[...de].filter(_e=>_e.startColumn!=null&&_e.endColumn!=null),Je=Ae.map(_e=>[_e.startColumn,_e.endColumn]).sort(Q.compareRanges),Xe=Q.mergeSortedRanges(Je),ze=_e=>_e<=oe?_e/oe*(w-v):w-v+(_e-oe)/(se-oe)*v,Ve=0;Ve<Xe.length;Ve+=1){var Qe=Xe[Ve],De=Qe[0],lt=Qe[1];if(De!=null&&lt!=null&&(De!==ee||lt!==ee)){var st=ze(De),Mt=Math.max(1,Math.round(ze(lt+1)-st)),Lt=U-H;e.fillRect(st,ae+H+Math.round(Lt/3),Mt,Math.round(Lt/3))}}if(ee!=null){var er=ze(ee),ur=2,Tt=U-H;e.fillStyle=G,e.fillRect(er,ae+H,ur,Tt)}}}if(C){var Ze=d-E-Y,kt=f;if(e.fillStyle=F,e.fillRect(Ze,0,Y-H,b),e.fillStyle=L?O:S,e.fillRect(Ze+H,0,Y-H,b),i?e.fillStyle=I:L?e.fillStyle=P:e.fillStyle=D,e.fillRect(Ze+H,kt,Y-H,h),!q&&W&&z!=null&&G!=null){var{selectedRanges:ut,cursorRow:dt}=t,{lastTop:Ye,rowCount:yt}=o,_t=_e=>_e<=Ye?_e/Ye*(b-h):b-h+(_e-Ye)/(yt-Ye)*h;e.fillStyle=z;for(var Rt=[...ut].filter(_e=>_e.startRow!=null&&_e.endRow!=null),ct=Rt.map(_e=>[_e.startRow,_e.endRow]).sort(Q.compareRanges),dr=Q.mergeSortedRanges(ct),jt=0;jt<dr.length;jt+=1){var tr=dr[jt],Ot=tr[0],Ht=tr[1];if(Ot!=null&&Ht!=null&&(Ot!==dt||Ht!==dt)){var Ir=_t(Ot),qr=Y-H,Xr=Math.max(1,Math.round(_t(Ht+1)-Ir));e.fillRect(Ze+H+Math.round(qr/3),Ir,Math.round(qr/3),Xr)}}if(dt!=null){var Qr=Math.round(_t(dt)),Zr=Y-H,Jr=2;e.fillStyle=G,e.fillRect(Ze+H,Qr,Zr,Jr)}}}e.translate(-E,-T)}}}xr(Qt,"DEFAULT_EDGE_RADIUS",2);xr(Qt,"ACTIVE_CELL_BORDER_WIDTH",2);const bs=Qt;function Sn(n,e,t){return e=jc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jc(n){var e=Kc(n,"string");return typeof e=="symbol"?e:String(e)}function Kc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var zo=100;class Yc extends We{constructor(){super(...arguments),Sn(this,"startPoint",void 0),Sn(this,"hasExtendedFloating",!1),Sn(this,"timer",void 0),Sn(this,"lastTriggerTime",void 0),Sn(this,"dragBounds",void 0)}onDown(e,t,r){var{x:i,y:a,column:o,row:l}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{gridX:u,gridY:d,maxX:c,maxY:h}=s,v=i-u,g=a-d;if(v<0||g<0||o==null&&v>c||l==null&&g>h)return!1;var f=Q.isModifierKeyDown(r),p=r.shiftKey;f||(p?t.trimSelectedRanges():t.clearSelectedRanges());var C=t.getTheme(),{autoSelectRow:w,autoSelectColumn:b}=C;return(o!==null||!b)&&(l!==null||!w)&&(t.focus(),t.moveCursorToPosition(o,l,p,!1,p&&f)),this.startPoint=e,this.hasExtendedFloating=!1,this.dragBounds=Q.getScrollDragBounds(s,l,o),!0}onDrag(e,t){if(this.startPoint===void 0)return!1;this.stopTimer();var{row:r,column:i}=this.startPoint,{x:a,y:o}=e,{row:l,column:s}=e,{metrics:u}=t;if(!u)throw new Error("metrics not set");var{left:d,lastLeft:c,top:h,lastTop:v,columnWidth:g,rowHeight:f}=u,p=Q.getScrollDragBounds(u,r,i),C=0,w=0;if(d<c&&(a<p.x1?C=a-p.x1:a>p.x2&&(C=a-p.x2)),h<v&&(o<p.y1?w=o-p.y1:o>p.y2&&(w=o-p.y2)),C!==0||w!==0)this.startTimer(t,e,C>0?Math.ceil(C/g):Math.floor(C/g),w>0?Math.ceil(w/f):Math.floor(w/f));else if(l!=null&&s!=null){var{floatingTopRowCount:b,floatingBottomRowCount:E,floatingLeftColumnCount:T,floatingRightColumnCount:S,columnCount:O,rowCount:F,bottom:R,right:D,topVisible:P,bottomVisible:I,leftVisible:A,rightVisible:x}=u;this.hasExtendedFloating||(r!==null&&r<b&&l>=b?(l=b,this.hasExtendedFloating=!0):r!==null&&r>=F-E&&l<F-E&&(l=F-E-1,this.hasExtendedFloating=!0),i!==null&&i<T&&s>=T?(s=T,this.hasExtendedFloating=!0):i!==null&&i>=O-S&&s<O-S&&(s=O-S-1,this.hasExtendedFloating=!0)),r!==null&&!Q.isFloatingRow(r,u)&&Q.isFloatingRow(l,u)&&(r>l&&l<h?l=P-1:r<l&&l>R&&(l=I+1)),i!==null&&!Q.isFloatingColumn(i,u)&&Q.isFloatingColumn(s,u)&&(i>s&&s<d?s=A-1:i<s&&s>D&&(s=x+1)),t.moveCursorToPosition(s,l,!0,!0)}return!0}onUp(e,t){return this.startPoint!==void 0&&(this.startPoint=void 0,this.dragBounds=void 0,this.stopTimer(),t.commitSelection()),!1}moveSelection(e,t,r,i){var{row:a,column:o}=t,{metrics:l}=e;if(!l)throw new Error("metrics not set");var{selectionEndRow:s,selectionEndColumn:u}=e.state;if(s==null||u==null)throw new Error("selection not set");var{rowCount:d,columnCount:c}=l,h=r<0&&o!=null?o:0,v=r>0&&o!=null?o:c-1,g=i<0&&a!=null?a:0,f=i>0&&a!=null?a:d-1;e.moveCursorToPosition(Math.min(Math.max(h,u+r),v),Math.min(Math.max(g,s+i),f),!0),this.lastTriggerTime=Date.now()}startTimer(e,t,r,i){this.stopTimer();var a=this.lastTriggerTime!=null?zo-Math.min(zo,Date.now()-this.lastTriggerTime):0;this.timer=setTimeout(()=>{this.moveSelection(e,t,r,i),this.startTimer(e,t,r,i)},a)}stopTimer(){this.timer!==void 0&&(clearTimeout(this.timer),this.timer=void 0)}}const qc=Yc;function jo(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function mt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?jo(Object(t),!0).forEach(function(r){br(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):jo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function br(n,e,t){return e=Xc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xc(n){var e=Qc(n,"string");return typeof e=="symbol"?e:String(e)}function Qc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ko=5,Zc=1e3/60,ti=10;function mr(n,e,t,r){var i,{modelColumns:a,movedColumns:o,allColumnXs:l,columnCount:s,allColumnWidths:u,userColumnWidths:d,calculatedColumnWidths:c,floatingLeftWidth:h,maxX:v}=t;if(e==null||n==null||n>s||n<0)return null;var g=(i=a.get(n))!==null&&i!==void 0?i:Q.getModelIndex(n,o),f=r.getColumnHeaderGroup(g,e),p=f!=null,C,w,b;if(f!=null){var E,T,S,[O,F]=f.getVisibleRange(o);C=(E=l.get(O))!==null&&E!==void 0?E:h,w=((T=l.get(F))!==null&&T!==void 0?T:v)+((S=u.get(F))!==null&&S!==void 0?S:0),b=[O,F]}else{var R,D,P,I=l.get(n);if(I==null)return null;C=I,w=C+((R=(D=(P=u.get(n))!==null&&P!==void 0?P:d.get(g))!==null&&D!==void 0?D:c.get(g))!==null&&R!==void 0?R:0),b=[n,n]}return{visibleIndex:n,modelIndex:g,left:C,right:w,width:w-C,isColumnGroup:p,range:b,depth:e}}class Jc extends We{constructor(){super(...arguments),br(this,"cursor",null),br(this,"draggingOffset",void 0),br(this,"initialOffset",void 0),br(this,"initialGridPoint",void 0),br(this,"scrollingInterval",void 0),br(this,"scrollingDirection",void 0),br(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var{metrics:r}=e;if(r){var{left:i,lastLeft:a,leftOffset:o,userColumnWidths:l,calculatedColumnWidths:s,movedColumns:u,allColumnWidths:d}=r,c=i,h=o;if(t==="left")for(h-=ti;h<0;){var v;c-=1;var g=Q.getModelIndex(i-1,u),f=(v=l.get(g))!==null&&v!==void 0?v:s.get(g);f===void 0?h=0:h+=f,c<0&&(h=0,c=0)}else{h+=ti;for(var p=d.get(i);p!==void 0&&h>p;){var C;c+=1,h-=p;var w=Q.getModelIndex(i+1,u);p=(C=l.get(w))!==null&&C!==void 0?C:s.get(w),c>a&&(h=0,c=a)}}var{mouseX:b,mouseY:E}=e.state;r==null||b==null||E==null||(this.moveDraggingColumn(b,e,t==="left"?-ti:ti),e.setState({left:c,leftOffset:h}),(t==="left"&&c===0&&o===0||t==="right"&&c===a)&&this.clearScrollInterval())}},Zc))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var{model:r}=t.props,{x:i,column:a,columnHeaderDepth:o}=e,{metrics:l}=t;if(!l)throw new Error("Metrics not set");var s=mr(a,o,l,r);if(a==null||s==null||o==null||o>0&&!s.isColumnGroup)return!1;var{rowHeaderWidth:u}=l;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,s.modelIndex!=null&&o!=null&&r.isColumnMovable(s.modelIndex,o)&&(this.draggingOffset=i-s.left-u,this.initialOffset=this.draggingOffset),!1}onDrag(e,t,r){if(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0)return!1;var{x:i,y:a}=e,{columnHeaderDepth:o}=this.initialGridPoint,{model:l}=t.props,{draggingColumn:s}=this,{metrics:u}=t;if(!u)throw new Error("Metrics not set");if(!s&&Math.abs(this.initialGridPoint.x-i)<Ko&&Math.abs(this.initialGridPoint.y-a)<Ko)return!1;if(s==null){var d=mr(this.initialGridPoint.column,o,u,l);if(!d||o==null||!l.isColumnMovable(d.modelIndex)||o>0&&!d.isColumnGroup||d.range[0]==null)return!1;s={range:d.range,depth:o,left:d.left,width:d.width};var c=mr(s.range[0],0,u,l),h=mr(s.range[1],0,u,l);if(!c||!h)return!1;this.draggingColumn=s,t.setState({draggingColumn:s,isDragging:!0})}return this.cursor="move",this.moveDraggingColumn(e.x,t,r.movementX),!0}moveDraggingColumn(e,t,r){var i;if(!(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0||this.draggingColumn==null||r===0)){if(this.initialOffset!==this.draggingOffset){this.draggingOffset<this.initialOffset&&this.initialOffset<this.draggingOffset+r||this.draggingOffset>this.initialOffset&&this.initialOffset>this.draggingOffset+r?this.draggingOffset=this.initialOffset:this.draggingOffset+=r,this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:a}=this.draggingColumn,{model:o}=t.props,{movedColumns:l}=t.state,{metrics:s}=t;if(!s)throw new Error("Metrics not set");var{floatingLeftWidth:u,width:d,columnHeaderMaxDepth:c,allColumnXs:h}=s,v=r<0,g=mr(this.draggingColumn.range[0],a,s,o);if(g){var f=e-this.draggingOffset,p=f+g.width;this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:f}),t.setState({draggingColumn:this.draggingColumn});var C=mr(Q.getColumnAtX(Ie(v?f:p,u,d),s,!0),a,s,o),w=o.getColumnHeaderParentGroup(g.modelIndex,g.depth);if(C){if(w!==void 0){var b=w.getVisibleRange(l);if(C.visibleIndex<b[0]){var E,T=this.moveColumn(g,b[0],l);this.draggingOffset=e-((E=h.get(b[0]))!==null&&E!==void 0?E:0),this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:T});return}if(C.visibleIndex>b[1]){var S,O=this.moveColumn(g,b[1]-(g.range[1]-g.range[0]),l),{right:F=0}=(S=mr(b[1],0,s,o))!==null&&S!==void 0?S:{};this.draggingOffset=e-(F-g.width),this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:O});return}}if(!o.isColumnMovable(C.modelIndex)){var R=C.visibleIndex;if(v)for(R+=1;R<g.visibleIndex&&!o.isColumnMovable(Q.getModelIndex(R,l));)R+=1;else for(R-=1;R>g.visibleIndex&&!o.isColumnMovable(Q.getModelIndex(R,l));)R-=1;if(R!==g.visibleIndex){v||(R-=g.range[1]-g.range[0]);var D=this.moveColumn(g,R,l);t.setState({movedColumns:D,draggingColumn:this.draggingColumn})}var P=mr(R,0,s,o);if(v){var I;this.draggingOffset=e-((I=P==null?void 0:P.left)!==null&&I!==void 0?I:0)}else{var A;this.draggingOffset=e-(((A=P==null?void 0:P.right)!==null&&A!==void 0?A:0)-g.width)}this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}if(f<=u?this.setScrollInterval(t,"left"):p>d?this.setScrollInterval(t,"right"):this.clearScrollInterval(),C.visibleIndex!==g.visibleIndex&&!(v&&g.visibleIndex<C.visibleIndex||!v&&g.visibleIndex>C.visibleIndex)){for(var x=C.left+C.width*.5,H=o.getColumnHeaderParentGroup(g.modelIndex,g.depth),W,z=((i=H==null?void 0:H.depth)!==null&&i!==void 0?i:c)-1;z>=0&&W===void 0;)W=o.getColumnHeaderGroup(C.modelIndex,z),z-=1;var G;v&&f<x&&(!W||C.visibleIndex===W.getVisibleRange(l)[0])&&(G=this.moveColumn(g,C.range[0],l)),!v&&p>x&&(!W||C.visibleIndex===W.getVisibleRange(l)[1])&&(G=this.moveColumn(g,C.range[1]-(g.range[1]-g.range[0]),l)),G&&(this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:f}),t.setState({movedColumns:G,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?Q.moveRange(e.range,t,r):Q.moveItem(e.visibleIndex,t,r),a=t-e.range[0],o=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=mt(mt({},this.draggingColumn),{},{range:o})),i}onUp(e,t){return this.cursor=null,this.clearScrollInterval(),this.draggingOffset!=null?(this.draggingOffset=void 0,t.setState({draggingColumn:null,isDragging:!1}),!0):!1}}const eh=Jc;function Yo(n,e,t){return e=th(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function th(n){var e=rh(n,"string");return typeof e=="symbol"?e:String(e)}function rh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class io extends We{constructor(){super(...arguments),Yo(this,"dragOffset",void 0),Yo(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToColumn){var o=Math.round(t),l=0;return{left:o,leftOffset:l}}var s=Math.floor(t),u=t-s,d=i.allColumnWidths.get(s);if(d==null){var c=e.getMetricState();d=a.getVisibleColumnWidth(s,c)}var h=d*u;return{left:s,leftOffset:h}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:l,y:s}=e,{barLeft:u,barWidth:d,height:c,hasHorizontalBar:h}=o;return h&&i>0&&s>=c-a&&s<c&&l>u&&l<u+d}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:o,handleWidth:l,lastLeft:s,barLeft:u,columnCount:d,scrollableContentWidth:c,scrollableViewportWidth:h}=i,v=a-u,g=Ie((v-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-l),0,1);if(d===1)return{left:0,leftOffset:g*(c-h)};var f=g*s;return io.getLeftWithOffsetFromRawLeft(t,f)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:i}=e,{handleWidth:a,barLeft:o,scrollX:l}=r;if(!this.isInScrollBar(e,t))return!1;var s=i-o;if(s>=l&&s<=l+a)this.dragOffset=s-l,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:u,leftOffset:d}=this.getLeftWithOffset(e,t);t.setViewState({left:u,leftOffset:d,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var{left:r,leftOffset:i}=this.getLeftWithOffset(e,t);return t.setViewState({left:r,leftOffset:i,isDraggingHorizontalScrollBar:!0,isDragging:!0}),!0}return!1}onMove(e,t){return this.isInScrollBar(e,t)}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingHorizontalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const nh=io;function qo(n,e,t){return e=ih(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ih(n){var e=ah(n,"string");return typeof e=="symbol"?e:String(e)}function ah(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class oh extends We{constructor(){super(...arguments),qo(this,"cursor","move"),qo(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:o}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{columnHeaderHeight:s,rowHeaderWidth:u,allRowYs:d}=l;if(i<=u&&o!==null&&r.isRowMovable(o)){var c=N(d,o);this.draggingOffset=a-c-s,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var{model:r}=t.props,{draggingRow:i}=t.state,{mouseX:a,mouseY:o}=t.state;if(a==null||o==null)return!1;if(i==null){var{row:l}=t.getGridPointFromXY(a,o);if(l!=null&&!r.isRowMovable(l)||(i=l,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:s}=t;if(!s)throw new Error("metrics not set");var{top:u,lastTop:d,bottom:c,bottomVisible:h,rowCount:v,columnHeaderHeight:g,allRowHeights:f,allRowYs:p,height:C}=s,w=g;if(u<i){var b=i-1;w=N(p,b)+N(f,b)*.5+g}var E=C;if(i<c){var T=i+1;E=N(p,T)+N(f,T)*.5+g}var{movedRows:S}=t.state;o<w&&i>0&&r.isRowMovable(i-1)?(S=Q.moveItem(i,i-1,S),i-=1):E<o&&i<v-1&&r.isRowMovable(i+1)&&(S=Q.moveItem(i,i+1,S),i+=1),t.setState({movedRows:S,draggingRow:i});var O=g+N(f,u)*.5,F=g+N(p,h)+N(f,h)*.5;return o<O&&u>0?t.setState({top:u-1}):o>F&&u<d&&t.setState({top:u+1}),!0}onUp(e,t){return this.draggingOffset!==void 0?(this.draggingOffset=void 0,t.setState({draggingRowOffset:null,draggingRow:null,isDragging:!1}),!0):!1}}const lh=oh;function nt(n,e,t){return e=sh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sh(n){var e=uh(n,"string");return typeof e=="symbol"?e:String(e)}function uh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ao extends gs{constructor(){super(...arguments),nt(this,"hiddenCursor","s-resize"),nt(this,"defaultCursor","row-resize"),nt(this,"pointProperty","y"),nt(this,"userSizesProperty","userRowHeights"),nt(this,"visibleOffsetProperty","visibleRowYs"),nt(this,"visibleSizesProperty","visibleRowHeights"),nt(this,"marginProperty","columnHeaderHeight"),nt(this,"calculatedSizesProperty","calculatedRowHeights"),nt(this,"initialSizesProperty","initialRowHeights"),nt(this,"modelIndexesProperty","modelRows"),nt(this,"firstIndexProperty","firstRow"),nt(this,"treePaddingProperty","treePaddingY"),nt(this,"getHiddenItems",Q.getHiddenRows),nt(this,"getNextShownItem",Q.getNextShownRow),nt(this,"getSeparator",ao.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:o}=e,l=Q.getRowSeparatorIndex(a,o,t,i);return l!=null?{index:l,depth:0}:null}setSize(e,t,r){e.setRowHeight(t,r)}resetSize(e,t){e.resetRowHeight(t)}updateSeparator(e,t){e.setState({draggingRowSeparator:t,isDragging:t!==null})}}const dh=ao;class Ei extends We{static isInTreeBox(e,t){var{column:r,row:i,x:a,y:o}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{gridX:s,gridY:u,firstColumn:d,allColumnXs:c,allColumnWidths:h,allRowHeights:v,allRowYs:g,visibleRowTreeBoxes:f}=l;if(r===d&&i!=null&&f.get(i)!=null&&a>s&&o>u){var p=N(c,r),C=N(h,r),w=N(g,i),b=N(v,i);if(a>=s+p&&a<=s+p+C&&o>=u+w&&o<=u+w+b)return!0}return!1}onDown(e,t){return Ei.isInTreeBox(e,t)}onClick(e,t,r){if(Ei.isInTreeBox(e,t)){var{row:i}=e;if(i!==null)return t.toggleRowExpanded(i,Q.isModifierKeyDown(r)),!0}return!1}}const Ta=Ei;class ch extends We{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:o,y:l}=e,{width:s,height:u,hasVerticalBar:d,hasHorizontalBar:c}=a;return i>0&&d&&c&&o>=s-i&&l>=u-i&&o<=s&&l<=u}onDown(e,t){return this.isInCorner(e,t)}onUp(e,t){return this.isInCorner(e,t)}onClick(e,t){return this.isInCorner(e,t)}}const hh=ch;function Xo(n,e,t){return e=mh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mh(n){var e=vh(n,"string");return typeof e=="symbol"?e:String(e)}function vh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class oo extends We{constructor(){super(...arguments),Xo(this,"dragOffset",void 0),Xo(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToRow){var o=Math.round(t),l=0;return{top:o,topOffset:l}}var s=Math.floor(t),u=t-s,d=i.allRowHeights.get(s);if(d==null){var c=e.getMetricState();d=a.getVisibleRowHeight(s,c)}var h=d*u;return{top:s,topOffset:h}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:l,y:s}=e,{barTop:u,barHeight:d,width:c,hasVerticalBar:h}=o;return h&&i>0&&l>=c-a&&l<c&&s>u&&s<u+d}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:o,handleHeight:l,lastTop:s,barTop:u,rowCount:d,scrollableContentHeight:c,scrollableViewportHeight:h}=i,v=a-u,g=Ie((v-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-l),0,1);if(d===1)return{top:0,topOffset:g*(c-h)};var f=g*s;return oo.getTopWithOffsetFromRawTop(t,f)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:i}=e,{handleHeight:a,barTop:o,scrollY:l}=r;if(!this.isInScrollBar(e,t))return!1;var s=i-o;if(s>=l&&s<=l+a)this.dragOffset=s-l,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:u,topOffset:d}=this.getTopWithOffset(e,t);t.setViewState({top:u,topOffset:d,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top:r,topOffset:i}=this.getTopWithOffset(e,t);return t.setViewState({top:r,topOffset:i,isDraggingVerticalScrollBar:!0,isDragging:!0}),!0}return!1}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingVerticalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const gh=oo;class fh extends We{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return ke(a)&&r!=null&&i!=null&&a.isEditableRange(B.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}const ph=fh;function Ss(n){return(n==null?void 0:n.getTokenBoxesForVisibleCell)!==void 0}function Dn(n,e,t){return e=Ch(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ch(n){var e=wh(n,"string");return typeof e=="symbol"?e:String(e)}function wh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ai extends We{constructor(){super(...arguments),Dn(this,"timeoutId",void 0),Dn(this,"isHold",!1),Dn(this,"isDown",!1),Dn(this,"currentLinkBox",void 0)}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:l,metrics:s,props:u}=t,{model:d}=u;if(r==null||i==null||s==null)return this.currentLinkBox=void 0,!1;var{modelRows:c,modelColumns:h}=s,v=N(c,i),g=N(h,r),f=d.renderTypeForCell(g,v),p=l.getCellRenderer(f);if(!Ss(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:w,x2:b,y2:E}=this.currentLinkBox;if(a>=C&&a<=b&&o>=w&&o<=E)return!0}for(var T=t.updateRenderState(),S=p.getTokenBoxesForVisibleCell(r,i,T),O=0;O<S.length;O+=1)if(Si(S[O].token)){var F=Q.translateTokenBox(S[O],s),{x1:R,x2:D,y1:P,y2:I}=F;if(a>=R&&a<=D&&o>=P&&o<=I)return this.currentLinkBox=F,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?this.cursor="pointer":this.cursor=null,!1}onMove(e,t){return this.setCursor(e,t)}onDown(e,t,r){var i=this.isHoveringLink(e,t);return Q.isModifierKeyDown(r)||r.shiftKey||!i?!1:(this.isDown=!0,this.timeoutId!=null&&clearTimeout(this.timeoutId),this.isHold=!1,this.timeoutId=setTimeout(()=>{this.isHold=!0;var{column:a,row:o}=e,{model:l}=t.props;t.clearSelectedRanges(),t.focus(),t.moveCursorToPosition(a,o),ke(l)&&a!=null&&o!=null&&l.isEditableRange(B.makeCell(a,o))&&t.startEditing(a,o)},Ai.HOLD_LENGTH),!0)}onClick(e,t){var r=this.isHoveringLink(e,t);if(!r||!this.isDown||this.currentLinkBox==null)return this.isDown=!1,this.isHold=!1,!1;if(!this.isHold){var i;this.timeoutId!=null&&clearTimeout(this.timeoutId),this.timeoutId=void 0,t.props.onTokenClicked((i=this.currentLinkBox)===null||i===void 0?void 0:i.token)}return this.isHold=!1,this.isDown=!1,!0}}Dn(Ai,"HOLD_LENGTH",1e3);const bh=Ai;function Sh(n,e,t){return e=Eh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eh(n){var e=Th(n,"string");return typeof e=="symbol"?e:String(e)}function Th(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class yh{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Sh(this,"order",void 0),this.order=e}onDown(e,t){return!1}}const Kr=yh;class Rh extends Kr{onDown(e,t){switch(e.key){case"a":if(Q.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 Q.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return Q.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return Q.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(Q.isModifierKeyDown(e))return!1;var{model:r}=t.props,{columnCount:i}=r;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(i-1,t.state.cursorRow,e.shiftKey),!0}case"PageDown":return this.handlePageDown(e,t);case"PageUp":return this.handlePageUp(e,t);case"Home":return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(Q.isModifierKeyDown(e)?t.state.cursorColumn:0,Q.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:o,rowCount:l}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(Q.isModifierKeyDown(e)?t.state.cursorColumn:o-1,Q.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?B.SELECTION_DIRECTION.UP:B.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?B.SELECTION_DIRECTION.LEFT:B.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,o=Q.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:l,cursorColumn:s,selectionEndColumn:u,selectionEndRow:d}=i.state,c=a?u:s,h=a?d:l;if(o){var{model:v}=i.props,{columnCount:g,rowCount:f}=v,p=o&&a,C=null,w=null;e<0?(C=0,w=h):e>0?(C=g-1,w=h):t<0?(C=c,w=0):t>0&&(C=c,w=f-1),C!=null&&w!=null&&i.moveCursorToPosition(C,w,a,!0,p)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:b}=i.props,{autoSelectRow:E=!1,autoSelectColumn:T=!1}=b;if(E&&e!==0){var{lastLeft:S}=i.metrics,{left:O}=i.state;O=Ie(O+e,0,S),i.moveCursorToPosition(O,l,a,!1),i.setViewState({left:O})}else if(T&&t!==0){var{lastTop:F}=i.metrics,{top:R}=i.state;R=Ie(R+t,0,F),i.moveCursorToPosition(R,s,a,!1),i.setViewState({top:R})}else i.moveCursor(e,t,a)}return!0}handlePageUp(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{cursorColumn:i,selectionEndRow:a}=t.state,o=a,l=i;if(o==null)return!1;var s=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:c,hasHorizontalBar:h}=u.getMetrics(s),v=o-(d-c);v-=h?0:1,v=Math.max(v,0);var g=Math.max(v-(o-c),0);return t.moveCursorToPosition(l,v,r,!1),t.setViewState({top:g}),!0}handlePageDown(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:i,cursorColumn:a}=t.state,o=i,l=a;if(o===null)return!1;var s=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:c,hasHorizontalBar:h,rowCount:v,lastTop:g}=u.getMetrics(s),f=v-1,p=d-c+o;p+=h?0:1,p=Math.min(p,f);var C=Math.min(g,p-(o-c));return t.moveCursorToPosition(l,p,r,!1),t.setViewState({top:C}),!0}}const Oh=Rh;class Fh extends Kr{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var{selectedRanges:r}=t.state;if(r.length===1){var i=r[0];if(i.startRow===i.endRow&&i.startColumn===i.endColumn){if(!t.metrics)throw new Error("grid.metrics not set");var{model:a}=t.props,{startRow:o,startColumn:l}=i;if(o!=null){var s=t.getModelRow(o);if((l===0||l==null)&&Ne(a)&&a.isRowExpandable(s))return t.toggleRowExpanded(o),!0}}}return!1}}const Dh=Fh;class Nh extends Kr{onDown(e,t){if(Q.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!ke(r)||!r.isEditableRange(B.makeCell(i,a)))return!1;var o=i,l=a;return o==null||l==null?!1:e.key.length===1?(t.startEditing(o,l,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(o,l),!0):e.key==="Backspace"?(t.startEditing(o,l,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(o,l,""),!0):!1}}const Ph=Nh;function Ih(n){for(var e=[],t=n.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),o=[],l=0;l<a.length;l+=1){var s,u,d=a[l];o.push((s=(u=d.textContent)===null||u===void 0?void 0:u.trim())!==null&&s!==void 0?s:"")}e.push(o)}return e}function Ah(n){var e=[];return n.forEach(t=>{var r,i=(r=t.textContent)!==null&&r!==void 0?r:"";i.length>0&&e.push(i.split(/\t|\u00a0\u00a0 \u00a0/))}),e}function Mh(n){var e,t,r=n.querySelector("table");if(r!=null)return Ih(r);var i=(e=(t=n.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(i.length>0){var{childNodes:a}=n,o=i.includes(" "),l=i.includes("    ");return o&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
2
- `).map(s=>s.split(" ")):a.length>1||l?Ah(n.childNodes):i}return null}class Lh extends Kr{onDown(e,t){switch(e.key){case"v":if(Q.isModifierKeyDown(e)){var r=document.createElement("div");document.body.appendChild(r),r.setAttribute("contenteditable","true"),r.setAttribute("style",'clip-path: "inset(50%)"; height: 1px; width: 1px; margin: -1px; overflow: hidden; padding 0; position: absolute;');var i=()=>{r.removeEventListener("input",i),r.remove(),t.focus();var a=Mh(r);a!=null&&t.pasteValue(a)};return r.addEventListener("input",i),r.focus(),{preventDefault:!1,stopPropagation:!0}}break}return!1}}const kh=Lh;var _h=n=>{switch(n){case"ArrowDown":return It.DOWN;case"ArrowUp":return It.UP;case"ArrowLeft":return It.LEFT;case"ArrowRight":return It.RIGHT;default:return}};function lo(n){var{selectionRange:e=void 0,className:t="",disabled:r=!1,value:i="",isQuickEdit:a=!0,onChange:o=()=>{},onCancel:l=()=>{},onDone:s=()=>{},onContextMenu:u=()=>{},style:d={}}=n,c=y.useRef(null),h=y.useRef(!1),[v]=y.useState(i),[g,f]=y.useState(!1),[p,C]=y.useState(a),[w,b]=y.useState(i);y.useEffect(function(){var{current:A}=c;A!=null&&(A.focus(),e?A.setSelectionRange(e[0],e[1]):A.setSelectionRange(A.value.length,A.value.length))},[e]);var E=y.useCallback(I=>{o(I)},[o]),T=y.useCallback(I=>{var{value:A}=I.target;b(A),f(!0),E(A)},[E,b,f]),S=y.useCallback(()=>{h.current=!0,g&&E(v),f(!1),l()},[v,g,l,E]),O=y.useCallback(()=>{C(!1)},[C]),F=y.useCallback(function(I){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;s(w,{direction:I,fillRange:A})},[s,w]),R=y.useCallback(()=>{h.current||F(null)},[h,F]),D=y.useCallback(I=>{switch(I.stopPropagation(),I.key){case"Escape":I.preventDefault(),S();break;case"Enter":if(I.preventDefault(),Q.isModifierKeyDown(I))F(void 0,!0);else if(I.altKey){var A="".concat(w,`
3
- `);b(A),f(!0),E(A)}else F(I.shiftKey?It.UP:It.DOWN);break;case"Tab":I.preventDefault(),F(I.shiftKey?It.LEFT:It.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":p&&(I.preventDefault(),F(_h(I.key)));break}},[S,F,p,b,f,E,w]),P=y.useCallback(I=>{u(I)},[u]);return m.createElement("textarea",{ref:c,className:ie("grid-cell-input-field",t),value:w,onBlur:R,onChange:T,onKeyDown:D,onContextMenu:P,onClick:O,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:r,style:d})}lo.propTypes={selectionRange:Oe.arrayOf(Oe.number),className:Oe.string,disabled:Oe.bool,isQuickEdit:Oe.bool,value:Oe.string,onChange:Oe.func,onCancel:Oe.func,onDone:Oe.func,onContextMenu:Oe.func,style:Oe.shape({})};lo.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var Hh=m.createContext({});const xh=Hh;function Qo(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Bh(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Qo(a,r,i,o,l,"next",s)}function l(s){Qo(a,r,i,o,l,"throw",s)}o(void 0)})}}function Zo(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ur(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zo(Object(t),!0).forEach(function(r){Ge(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ge(n,e,t){return e=Uh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uh(n){var e=Vh(n,"string");return typeof e=="symbol"?e:String(e)}function Vh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class bt extends y.PureComponent{static getScale(e){var t,r,i,a,o,l=window.devicePixelRatio||1,s=e,u=(t=(r=(i=(a=(o=s.webkitBackingStorePixelRatio)!==null&&o!==void 0?o:s.mozBackingStorePixelRatio)!==null&&a!==void 0?a:s.msBackingStorePixelRatio)!==null&&i!==void 0?i:s.oBackingStorePixelRatio)!==null&&r!==void 0?r:s.backingStorePixelRatio)!==null&&t!==void 0?t:1;return l/u}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),Ge(this,"renderer",void 0),Ge(this,"metricCalculator",void 0),Ge(this,"canvas",void 0),Ge(this,"canvasContext",void 0),Ge(this,"animationFrame",void 0),Ge(this,"prevMetrics",void 0),Ge(this,"metrics",void 0),Ge(this,"renderState",void 0),Ge(this,"documentCursor",void 0),Ge(this,"dragTimer",void 0),Ge(this,"keyHandlers",void 0),Ge(this,"mouseHandlers",void 0),Ge(this,"getCachedKeyHandlers",je(s=>[...s,...this.keyHandlers].sort((u,d)=>u.order-d.order))),Ge(this,"getCachedMouseHandlers",je(s=>[...s,...this.mouseHandlers].sort((u,d)=>u.order-d.order))),this.handleClick=this.handleClick.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handleEditCellCancel=this.handleEditCellCancel.bind(this),this.handleEditCellChange=this.handleEditCellChange.bind(this),this.handleEditCellCommit=this.handleEditCellCommit.bind(this),this.handleDoubleClick=this.handleDoubleClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseDrag=this.handleMouseDrag.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleResize=this.handleResize.bind(this),this.handleWheel=this.handleWheel.bind(this);var{isStuckToBottom:t,isStuckToRight:r,metricCalculator:i,movedColumns:a,movedRows:o,renderer:l}=e;this.renderer=l||new bs,this.metricCalculator=i||new hc,this.canvas=null,this.canvasContext=null,this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.dragTimer=null,this.keyHandlers=[new Ph(400),new kh(450),new Oh(500),new Dh(900)],this.mouseHandlers=[new dh(100),new fs(200),new lh(300),new eh(400),new ph(450),new gh(500),new nh(600),new hh(700),new Ta(800),new bh(825),new qc(900)],this.state={top:0,left:0,topOffset:0,leftOffset:0,draggingColumn:null,draggingRow:null,draggingRowOffset:null,draggingColumnSeparator:null,draggingRowSeparator:null,isDraggingHorizontalScrollBar:!1,isDraggingVerticalScrollBar:!1,isDragging:!1,mouseX:null,mouseY:null,movedColumns:a,movedRows:o,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:Ee,lastSelectedRanges:Ee,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:r}}componentDidMount(){var e;this.initContext(),(e=this.canvas)===null||e===void 0||e.addEventListener("wheel",this.handleWheel,{passive:!1}),window.addEventListener("resize",this.handleResize),this.updateCanvas();var{isStuckToBottom:t,isStuckToRight:r}=this.props;t&&this.scrollToBottom(),r&&this.scrollToRight()}componentDidUpdate(e,t){var{isStickyBottom:r,isStickyRight:i,movedColumns:a,movedRows:o,onMovedColumnsChanged:l,onMoveColumnComplete:s,onMovedRowsChanged:u,onMoveRowComplete:d}=this.props,{isStickyBottom:c,isStickyRight:h,movedColumns:v,movedRows:g}=e,{movedColumns:f,movedRows:p}=t,{draggingColumn:C,draggingRow:w,movedColumns:b,movedRows:E}=this.state;v!==a&&this.setState({movedColumns:a}),g!==o&&this.setState({movedRows:o}),f!==b&&l(b),t.draggingColumn!=null&&C==null&&s(b),p!==E&&u(E),t.draggingRow!=null&&w==null&&d(E),r!==c&&this.setState({isStuckToBottom:!1}),i!==h&&this.setState({isStuckToRight:!1}),this.updateMetrics(),this.requestUpdateCanvas(),this.checkStickyScroll(),this.validateSelection()&&this.checkSelectionChange(t)}componentWillUnmount(){var e;this.animationFrame!=null&&cancelAnimationFrame(this.animationFrame),(e=this.canvas)===null||e===void 0||e.removeEventListener("wheel",this.handleWheel),window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("resize",this.handleResize),this.stopDragTimer()}getTheme(){var{theme:e}=this.props;return bt.getTheme(this.context,e)}getGridPointFromEvent(e){_o(this.canvas);var t=this.canvas.getBoundingClientRect(),r=e.clientX-t.left,i=e.clientY-t.top;return this.getGridPointFromXY(r,i)}getGridPointFromXY(e,t){if(!this.metrics)throw new Error("metrics must be set");return Q.getGridPointFromXY(e,t,this.metrics)}getMetricState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=this.getTheme(),{model:r,stateOverride:i}=this.props;if(!this.canvasContext||!this.canvas)throw new Error("Canvas and context must be defined to get metrics");var a=this.canvasContext,o=this.canvas.clientWidth,l=this.canvas.clientHeight,{left:s,top:u,leftOffset:d,topOffset:c,movedColumns:h,movedRows:v,isDraggingHorizontalScrollBar:g,isDraggingVerticalScrollBar:f,draggingColumn:p}=e;return Ur({left:s,top:u,leftOffset:d,topOffset:c,width:o,height:l,context:a,theme:t,model:r,movedColumns:h,movedRows:v,isDraggingHorizontalScrollBar:g,isDraggingVerticalScrollBar:f,draggingColumn:p},i)}getKeyHandlers(){var{keyHandlers:e}=this.props;return this.getCachedKeyHandlers(e)}getMouseHandlers(){var{mouseHandlers:e}=this.props;return this.getCachedMouseHandlers(e)}getModelColumn(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelColumns)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for column ".concat(e));return i}getModelRow(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelRows)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for row ".concat(e));return i}toggleRowExpanded(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=this.getModelRow(e),{model:i}=this.props;Ne(i)&&i.isRowExpandable(r)&&i.setRowExpanded(r,!i.isRowExpanded(r),t),this.clearSelectedRanges(),this.commitSelection(),this.moveCursorToPosition(0,e),this.commitSelection(),this.setState({isStuckToBottom:!1})}scrollToBottom(){if(this.metrics){var{bottomVisible:e,rowCount:t,top:r,lastTop:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({top:i})}}scrollToRight(){if(this.metrics){var{rightVisible:e,columnCount:t,left:r,lastLeft:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({left:i})}}setSelectedRanges(e){var{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:o,selectedRanges:l}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:l}),e.length>0){var s=B.boundedRange(e[0],r,i),u=a,d=o;s.containsCell(o,a)||({row:u,column:d}=s.startCell()),this.setState({selectionStartColumn:s.startColumn,selectionStartRow:s.startRow,selectionEndColumn:s.endColumn,selectionEndRow:s.endRow,cursorColumn:d,cursorRow:u})}}initContext(){var{canvas:e}=this,{canvasOptions:t}=this.props;if(!e)throw new Error("Canvas not set");this.canvasContext=e.getContext("2d",t)}requestUpdateCanvas(){this.animationFrame==null&&(this.animationFrame=requestAnimationFrame(()=>{this.animationFrame=null,this.updateCanvas()}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var{canvasContext:e,metrics:t,renderState:r}=this;_(e),_(t),_(r),this.renderer.configureContext(e,r);var{onViewChanged:i}=this.props;i(t),this.drawCanvas(t)}updateCanvasScale(){var{canvas:e,canvasContext:t}=this;if(!e)throw new Error("canvas not set");if(!t)throw new Error("canvasContext not set");if(!e.parentElement)throw new Error("Canvas has no parent element");var r=bt.getScale(t),i=e.parentElement.getBoundingClientRect(),a=Math.floor(i.width),o=Math.floor(i.height);e.style.width="".concat(a,"px"),e.style.height="".concat(o,"px"),e.width=a*r,e.height=o*r,t.scale(r,r)}updateScrollBounds(){if(!this.metrics)throw new Error("metrics not set");var{left:e,top:t}=this.state,{lastLeft:r,lastTop:i}=this.metrics;e>r&&this.setState({left:r,leftOffset:0}),t>i&&this.setState({top:i,topOffset:0})}checkStickyScroll(){if(this.metrics){if(this.prevMetrics){var{rowCount:e,columnCount:t,height:r,width:i}=this.metrics,{rowCount:a,columnCount:o,height:l,width:s}=this.prevMetrics;if(a!==e||r!==l){var{isStuckToBottom:u}=this.state;u&&this.scrollToBottom()}if(o!==t||i!==s){var{isStuckToRight:d}=this.state;d&&this.scrollToRight()}}this.prevMetrics=this.metrics}}updateMetrics(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state;this.prevMetrics=this.metrics;var{metricCalculator:t}=this,r=this.getMetricState(e);return this.metrics=t.getMetrics(r),this.updateScrollBounds(),this.metrics}checkSelectionChange(e){var{selectedRanges:t}=e,{selectedRanges:r}=this.state;if(r!==t){var{onSelectionChanged:i}=this.props;i(r)}}validateSelection(){for(var{model:e}=this.props,{selectedRanges:t}=this.state,{columnCount:r,rowCount:i}=e,a=0;a<t.length;a+=1){var o=t[a];if(o.endColumn!=null&&o.endColumn>=r||o.endRow!=null&&o.endRow>=i)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var{selectedRanges:e}=this.state;this.setState({selectedRanges:[],lastSelectedRanges:e})}trimSelectedRanges(){var{selectedRanges:e}=this.state;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}beginSelection(e,t){this.setState({selectionStartColumn:e,selectionStartRow:t,selectionEndColumn:e,selectionEndRow:t,cursorColumn:e,cursorRow:t})}moveSelection(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;this.setState(a=>{var{selectedRanges:o,selectionStartRow:l,selectionStartColumn:s}=a,{theme:u}=this.props,{autoSelectRow:d,autoSelectColumn:c}=u;if(r&&o.length>0){var h=o[o.length-1],v=null,g=null,f=null,p=null;if(i){var C,w,b,E;v=d!==void 0&&d?null:Math.min(e??0,(C=h.startColumn)!==null&&C!==void 0?C:0),g=c!==void 0&&c?null:Math.min(t??0,(w=h.startRow)!==null&&w!==void 0?w:0),f=d!==void 0&&d?null:Math.max(e??0,(b=h.endColumn)!==null&&b!==void 0?b:0),p=c!==void 0&&c?null:Math.max(t??0,(E=h.endRow)!==null&&E!==void 0?E:0)}else v=h.startColumn,g=h.startRow,(s!=null||l!=null)&&((d===void 0||!d)&&(v=s),(c===void 0||!c)&&(g=l)),f=d!==void 0&&d?null:e,p=c!==void 0&&c?null:t;var T=B.makeNormalized(v,g,f,p);if(h.equals(T))return null;var S=[...o];return S[S.length-1]=T,{selectedRanges:S,selectionEndColumn:e,selectionEndRow:t}}var O=[...o],F=d!==void 0&&d?null:e,R=c!==void 0&&c?null:t;return O.push(B.makeNormalized(F,R,F,R)),{selectedRanges:O,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:r}=t,{selectedRanges:i,lastSelectedRanges:a,cursorRow:o,cursorColumn:l}=e;if(i.length===1&&(r!==void 0&&r?B.rowCount(i)===1:B.cellCount(i)===1)&&B.rangeArraysEqual(i,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var s=i.slice();if(s.length>1){for(var u=s[s.length-1],d=0;d<s.length-1;d+=1){var c=s[d];if(c.contains(u)){var h=c.subtract(u);s.pop(),s.splice(d,1),s=s.concat(h);break}}s=B.consolidate(s)}var v=l,g=o;if(!B.containsCell(s,l,o)){var{model:f}=this.props,{columnCount:p,rowCount:C}=f,w=B.nextCell(B.boundedRanges(i,p,C));w!=null?{column:v,row:g}=w:(v=null,g=null)}return s.length===0&&(v=null,g=null),{cursorRow:g,cursorColumn:v,selectedRanges:s,lastSelectedRanges:i}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:r,height:i,lastTop:a,userRowHeights:o,rowHeight:l}=this.metrics,s=i-r,u=Math.round(s/2)+((t=o.get(e))!==null&&t!==void 0?t:l),d=this.getMetricState(),c=this.metricCalculator.getLastTop(d,e+1,u);this.setState({top:Math.min(a,c),selectedRanges:[new B(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:h}=this.state;this.moveCursorToPosition(h,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:r,autoSelectColumn:i}=t,a=i!==void 0&&i?null:0,o=i!==void 0&&i?null:e.rowCount-1,l=r!==void 0&&r?null:0,s=r!==void 0&&r?null:e.columnCount-1;this.setSelectedRanges([new B(l,a,s,o)])}moveCursor(e,t,r){var{cursorRow:i,cursorColumn:a,selectionEndColumn:o,selectionEndRow:l}=this.state,s=r?o:a,u=r?l:i;if(u===null||s===null){var{left:d,top:c}=this.state;this.moveCursorToPosition(d,c,r)}else{var{model:h}=this.props,{columnCount:v,rowCount:g}=h,f=Ie(s+e,0,v-1),p=Ie(u+t,0,g-1);this.moveCursorToPosition(f,p,r)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:B.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:o,selectedRanges:l}=this.state,s=l.length>0?l:[B.makeCell(o,a)],u=null;if(s.length===1&&B.cellCount(s)===1){var d,c=new B(0,0,r-1,i-1);u=(d=c.nextCell(o,a,e))!==null&&d!==void 0?d:c.startCell(e)}else u=B.nextCell(B.boundedRanges(s,r,i),o,a,e);if(u!=null){var{column:h,row:v}=u;this.setState({cursorColumn:h,cursorRow:v}),B.containsCell(l,h,v)||this.setState({selectedRanges:[B.makeCell(h,v)],selectionStartColumn:h,selectionStartRow:v,selectionEndColumn:h,selectionEndRow:v}),this.moveViewToCell(u.column,u.row)}}moveCursorToPosition(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;r||this.beginSelection(e,t),this.moveSelection(e,t,r,a),i&&this.moveViewToCell(e,t)}moveViewToCell(e,t){if(!this.metrics)throw new Error("metrics not set");var{metricCalculator:r}=this,{bottomVisible:i,rightVisible:a,topVisible:o,leftVisible:l}=this.metrics,s=this.getMetricState(this.state),{top:u,left:d,topOffset:c,leftOffset:h}=this.state;t!=null&&!Q.isFloatingRow(t,this.metrics)&&(t<o?(u=r.getTopForTopVisible(s,t),c=0):t>i&&(u=r.getTopForBottomVisible(s,t),c=0)),e!=null&&!Q.isFloatingColumn(e,this.metrics)&&(e<l?(d=r.getLeftForLeftVisible(s,e),h=0):e>a&&(d=r.getLeftForRightVisible(s,e),h=0)),this.setViewState({top:u,left:d,topOffset:c,leftOffset:h})}setViewState(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!this.metrics)throw new Error("metrics not set");var{isStickyBottom:r,isStickyRight:i}=this.props,{top:a,left:o}=e,{lastTop:l,lastLeft:s}=this.metrics;a!=null&&this.setState({isStuckToBottom:r&&a>=l}),o!=null&&this.setState({isStuckToRight:i&&o>=s}),this.setState(e),t&&this.forceUpdate()}startEditing(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,{model:o}=this.props;if(!ke(o))throw new Error("model is not editable");var l=this.getModelColumn(e),s=this.getModelRow(t),u={column:e,row:t,selectionRange:i,value:a!==void 0?a:o.editValueForCell(l,s),isQuickEdit:r};this.setState({editingCell:u,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,r){var{model:i}=this.props,a=this.getModelColumn(e),o=this.getModelRow(t);return ke(i)&&i.isValidForCell(a,o,r)}pasteValue(e){var t=this;return Bh(function*(){var{model:r}=t.props,{movedColumns:i,movedRows:a,selectedRanges:o}=t.state;try{if(Ho(r),!r.isEditable||!o.every(p=>r.isEditableRange(p)))throw new la("Can't paste in to read-only area.");if(o.length<=0)throw new la("Select an area to paste to.");if(typeof e=="string"){var l=[],s=Q.getModelRanges(o,i,a);B.forEachCell(s,(p,C)=>{l.push({column:p,row:C,text:e})}),yield r.setValues(l);return}var u=e.length,d=e[0].length,{columnCount:c,rowCount:h}=r,v=o;if(v.every(p=>{var C,w;return B.cellCount([p])===1&&((C=p.startColumn)!==null&&C!==void 0?C:0)+d<=c&&((w=p.startRow)!==null&&w!==void 0?w:0)+u<=h})&&(v=v.map(p=>{var C,w;return new B(p.startColumn,p.startRow,((C=p.startColumn)!==null&&C!==void 0?C:0)+d-1,((w=p.startRow)!==null&&w!==void 0?w:0)+u-1)}),t.setSelectedRanges(v)),!v.every(p=>B.rowCount([p])===u&&B.columnCount([p])===d))throw new la("Copy and paste area are not same size.");var g=[];v.forEach(p=>{for(var C=0;C<d;C+=1)for(var w=0;w<u;w+=1){var b,E;g.push({column:((b=p.startColumn)!==null&&b!==void 0?b:0)+C,row:((E=p.startRow)!==null&&E!==void 0?E:0)+w,text:e[w][C]})}}),yield r.setValues(g)}catch(p){var{onError:f}=t.props;f(p instanceof Error?p:new Error("".concat(p)))}})()}setValueForCell(e,t,r){var{model:i}=this.props;Ho(i);var a=this.getModelColumn(e),o=this.getModelRow(t);return i.isValidForCell(a,o,r)?(i.setValueForCell(a,o,r),!0):!1}setValueForRanges(e,t){var{model:r}=this.props,{movedColumns:i,movedRows:a}=this.state,o=Q.getModelRanges(e,i,a);ke(r)&&r.setValueForRanges(o,t)}isSelected(e,t){for(var{selectedRanges:r}=this.state,i=0;i<r.length;i+=1){var a,o,l=r[i],s=l.startRow===null||l.startRow<=e&&e<=((a=l.endRow)!==null&&a!==void 0?a:0),u=l.startColumn===null||l.startColumn<=t&&t<=((o=l.endColumn)!==null&&o!==void 0?o:0);if(s&&u)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==bt.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=bt.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)},bt.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.updateMetrics(),!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{renderer:e,canvasContext:t,renderState:r}=this;t.save(),e.drawCanvas(r),t.restore()}focus(){var e;(e=this.canvas)===null||e===void 0||e.focus()}isFocused(){return document.activeElement===this.canvas}handleClick(e){for(var t,r=this.getGridPointFromEvent(e),i=this.getMouseHandlers(),a=0;a<i.length;a+=1){var o=i[a];if(o.onClick(r,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}(t=this.canvas)===null||t===void 0||t.focus()}handleContextMenu(e){for(var t=this.getGridPointFromEvent(e),r=this.getMouseHandlers(),i=0;i<r.length;i+=1){var a=r[i];if(a.onContextMenu(t,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}}handleKeyDown(e){for(var t=this.getKeyHandlers(),r=0;r<t.length;r+=1){var i=t[r],a=i.onDown(e,this);if(a!==!1){var o,l,s=a;(!((o=s==null?void 0:s.stopPropagation)!==null&&o!==void 0)||o)&&e.stopPropagation(),(!((l=s==null?void 0:s.preventDefault)!==null&&l!==void 0)||l)&&e.preventDefault();break}}}notifyMouseHandlers(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=this.getGridPointFromEvent(t),o=this.getMouseHandlers(),l=null,s=0;s<o.length;s+=1){var u=o[s],d=u[e]!=null&&u[e](a,this,t);if(d!==!1){var c,h;u.cursor!=null&&({cursor:l}=u,i&&this.addDocumentCursor(l));var v=d;(!((c=v==null?void 0:v.stopPropagation)!==null&&c!==void 0)||c)&&t.stopPropagation(),(!((h=v==null?void 0:v.preventDefault)!==null&&h!==void 0)||h)&&t.preventDefault();break}}if(this.setState({cursor:l}),r){var{x:g,y:f}=a;this.setState({mouseX:g,mouseY:f})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onUp",e,!1),this.stopDragTimer(),this.removeDocumentCursor())}handleResize(){if(this.updateCanvas(),!this.metrics)throw new Error("metrics not set");this.forceUpdate()}handleWheel(e){if(this.notifyMouseHandlers("onWheel",e),!e.defaultPrevented){var{metricCalculator:t,metrics:r}=this,i=this.getMetricState();if(!r)throw new Error("metrics not set");for(var{lastTop:a,lastLeft:o,columnCount:l,rowCount:s,scrollableContentWidth:u,scrollableViewportWidth:d,scrollableContentHeight:c,scrollableViewportHeight:h,hasHorizontalBar:v,hasVerticalBar:g}=r,{top:f,left:p,topOffset:C,leftOffset:w}=r,b=this.getTheme(),{deltaX:E,deltaY:T}=Q.getScrollDelta(e,r.barWidth,r.barHeight,r.rowHeight,r.rowHeight);v&&E!==0;){if(w+=E,E=0,l>1){if(w>0&&p>=o||w<0&&p<=0){w=0;break}}else{if(w<=0){w=0;break}var S=u-d;if(w>=S){w=S;break}}if(w>0){var O,F=(O=r.allColumnWidths.get(p))!==null&&O!==void 0?O:t.getVisibleColumnWidth(p,i);w>=F?(E=w-F,w=0,p+=1):b.scrollSnapToColumn&&l>1&&(w=0,p+=1)}else if(w<0){var R,D=(R=r.allColumnWidths.get(p-1))!==null&&R!==void 0?R:t.getVisibleColumnWidth(p-1,i);Math.abs(w)<=D&&b.scrollSnapToColumn&&l>1?(w=0,p-=1):(E=w+D,w=0,p-=1)}}for(;g&&T!==0;){if(C+=T,T=0,s>1){if(C>0&&f>=a||C<0&&f<=0){C=0;break}}else{if(C<=0){C=0;break}var P=c-h;if(C>=P){C=P;break}}if(C>0){var I,A=(I=r.allRowHeights.get(f))!==null&&I!==void 0?I:t.getVisibleRowHeight(f,i);C>=A?(T=C-A,C=0,f+=1):b.scrollSnapToRow&&s>1&&(C=0,f+=1)}else if(C<0){var x,H=(x=r.allRowHeights.get(f-1))!==null&&x!==void 0?x:t.getVisibleRowHeight(f-1,i);Math.abs(C)<=H&&b.scrollSnapToRow&&s>1?(C=0,f-=1):(T=C+H,C=0,f-=1)}}this.setViewState({top:f,left:p,leftOffset:w,topOffset:C}),e.stopPropagation(),e.preventDefault()}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:r}=t;try{return _o(r),{editingCell:Ur(Ur({},r),{},{value:e})}}catch(a){var{onError:i}=this.props;return i(a instanceof Error?a:new Error("".concat(a))),null}})}handleEditCellCommit(e){var{direction:t=It.DOWN,fillRange:r=!1}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{editingCell:i,selectedRanges:a}=this.state;if(!i)throw new Error("editingCell not set");var{column:o,row:l}=i;if(!this.isValidForCell(o,l,e)){t===null&&this.setState({editingCell:null});return}r?this.setValueForRanges(a,e):this.setValueForCell(o,l,e),t!==null&&this.moveCursorInDirection(t),this.setState({editingCell:null}),this.focus()}renderInputField(){var{model:e}=this.props,{editingCell:t}=this.state,{metrics:r}=this;if(t==null||r==null||!ke(e))return null;var{selectionRange:i,value:a,isQuickEdit:o}=t,{column:l,row:s}=t,{gridX:u,gridY:d,allColumnXs:c,allRowYs:h,allColumnWidths:v,allRowHeights:g}=r,f=c.get(l),p=h.get(s),C=v.get(l),w=g.get(s),b=f!=null&&p!=null&&C!=null&&w!=null?{position:"absolute",left:u+f,top:d+p,width:C,height:w}:{opacity:0},E=this.getModelColumn(l),T=this.getModelRow(s),S=E!=null&&T!=null?{textAlign:e.textAlignForCell(E,T)}:void 0,O=e.isValidForCell(E,T,a);return m.createElement("div",{style:b},m.createElement(lo,{key:"".concat(l,",").concat(s),selectionRange:i,className:ie({error:!O}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:o,style:S,value:a}))}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{cursorColumn:e,cursorRow:t,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:o,draggingRowSeparator:l,editingCell:s,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:c,mouseX:h,mouseY:v,selectedRanges:g}=this.state,{model:f,stateOverride:p}=this.props,{metrics:C}=this,w=this.canvasContext,b=this.getTheme(),E=this.canvas.clientWidth,T=this.canvas.clientHeight;return _(C),this.renderState=Ur({width:E,height:T,context:w,theme:b,model:f,metrics:C,mouseX:h,mouseY:v,selectedRanges:g,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:o,draggingRowSeparator:l,editingCell:s,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:c,cursorColumn:e,cursorRow:t},p),this.renderState}render(){var{cursor:e}=this.state;return m.createElement(m.Fragment,null,m.createElement("canvas",{className:ie("grid-canvas",bt.getCursorClassName(e)),ref:t=>{this.canvas=t},onClick:this.handleClick,onContextMenu:this.handleContextMenu,onDoubleClick:this.handleDoubleClick,onKeyDown:this.handleKeyDown,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,tabIndex:0},"Your browser does not support HTML canvas. Update your browser?"),this.renderInputField())}}Ge(bt,"contextType",xh);Ge(bt,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:Ee,mouseHandlers:Ee,movedColumns:Ee,movedRows:Ee,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:n=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:()=>{},onTokenClicked:n=>{Si(n)&&window.open(n.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});Ge(bt,"pixelsPerLine",100/3);Ge(bt,"dragTimeout",1e3);Ge(bt,"getTheme",je((n,e)=>Ur(Ur(Ur({},vc),n),e)));const $h=bt;function Gh(n,e,t){return e=Wh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wh(n){var e=zh(n,"string");return typeof e=="symbol"?e:String(e)}function zh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var sa=5e3;class jh extends hu{constructor(){super(...arguments),Gh(this,"getCachedTokensInText",zt((e,t)=>{if(t>=e.length)return Q.findTokensWithProtocolInText(e);var r=e.slice(t-1,sa).search(/\s/),i=t+r;r===-1&&(i=Math.min(sa,e.length));var a=e.substring(0,i);return Q.findTokensWithProtocolInText(a)}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:sa,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const Kh=jh;function Yh(n,e){var t=Qh(n);if(t!==void 0){var r=nm(n);return"".concat(r," ? ").concat(t," : ").concat(e)}}function qh(n,e){return n.Column.formatRowColor(e)}function Xh(n,e){return n.formatColor(e)}var Mn=Fe.module("ConditionalFormattingUtils"),pt;(function(n){n.CONDITIONAL="conditional",n.ROWS="rows"})(pt||(pt={}));var re;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_BETWEEN="is-between",n.GREATER_THAN="greater-than",n.GREATER_THAN_OR_EQUAL="greater-than-or-equal",n.LESS_THAN="less-than",n.LESS_THAN_OR_EQUAL="less-than-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(re||(re={}));var ge;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.CONTAINS="contains",n.DOES_NOT_CONTAIN="does-not-contain",n.STARTS_WITH="starts-with",n.ENDS_WITH="ends-with",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(ge||(ge={}));var he;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.IS_BEFORE="is-before",n.IS_BEFORE_OR_EQUAL="is-before-or-equal",n.IS_AFTER="is-after",n.IS_AFTER_OR_EQUAL="is-after-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(he||(he={}));var Ke;(function(n){n.IS_TRUE="is-true",n.IS_FALSE="is-false",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(Ke||(Ke={}));var Ue;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(Ue||(Ue={}));var fe;(function(n){n.NO_FORMATTING="no-formatting",n.POSITIVE="positive",n.NEGATIVE="negative",n.WARN="warn",n.NEUTRAL="neutral",n.ACCENT_1="accent-1",n.ACCENT_2="accent-2",n.CUSTOM="custom"})(fe||(fe={}));function Jo(n){switch(n){case fe.NO_FORMATTING:return"No formatting";case fe.POSITIVE:return"Positive";case fe.NEGATIVE:return"Negative";case fe.WARN:return"Warn";case fe.NEUTRAL:return"Neutral";case fe.ACCENT_1:return"Accent 1";case fe.ACCENT_2:return"Accent 2";case fe.CUSTOM:return"Custom..."}}function Ti(n){var{type:e,customConfig:t}=n;switch(e){case fe.NO_FORMATTING:return;case fe.POSITIVE:return"#9fde6f";case fe.NEGATIVE:return"#ff6087";case fe.WARN:return"#f67f40";case fe.NEUTRAL:return"#ffd95c";case fe.ACCENT_1:return"#78dce8";case fe.ACCENT_2:return"#ab9bf5";case fe.CUSTOM:return t==null?void 0:t.background;default:return}}function yi(n){var{type:e,customConfig:t}=n;switch(e){case fe.NO_FORMATTING:return;case fe.POSITIVE:return"#526a3f";case fe.NEGATIVE:return"#802f44";case fe.WARN:return"#663318";case fe.NEUTRAL:return"#63562b";case fe.ACCENT_1:return"#3f6469";case fe.ACCENT_2:return"#554d72";case fe.CUSTOM:return t==null?void 0:t.color;default:return}}function Qh(n){var e=yi(n.style),t=Ti(n.style);if(!(e===void 0||t===void 0))return"bgfg(`".concat(t,"`, `").concat(e,"`)")}function Zh(n){var{column:e,value:t,start:r,end:i}=n;return vm(e.name,n.condition,t,r,i)}function Jh(n){var{column:e,value:t}=n;return gm(e.name,n.condition,t)}function em(n){var{column:e,value:t}=n;return fm(e.name,n.condition,t)}function tm(n){var{column:e}=n;return pm(e.name,n.condition)}function rm(n){var{column:e,value:t}=n;return Cm(e.name,n.condition,t)}function nm(n){var{column:e}=n;if(M.isNumberType(e.type))return Zh(n);if(M.isCharType(e.type))return rm(n);if(M.isStringType(e.type))return Jh(n);if(M.isDateType(e.type))return em(n);if(M.isBooleanType(e.type))return tm(n);throw new Error("Invalid column type")}function im(n){switch(n){case re.IS_EQUAL:return"is equal to";case re.IS_NOT_EQUAL:return"is not equal to";case re.IS_BETWEEN:return"is between";case re.GREATER_THAN:return"greater than";case re.GREATER_THAN_OR_EQUAL:return"greater than or equal to";case re.LESS_THAN:return"less than";case re.LESS_THAN_OR_EQUAL:return"less than or equal to";case re.IS_NULL:return"is null";case re.IS_NOT_NULL:return"is not null"}}function am(n){switch(n){case ge.IS_EXACTLY:return"is exactly";case ge.IS_NOT_EXACTLY:return"is not exactly";case ge.CONTAINS:return"contains";case ge.DOES_NOT_CONTAIN:return"does not contain";case ge.STARTS_WITH:return"starts with";case ge.ENDS_WITH:return"ends with";case ge.IS_NULL:return"is null";case ge.IS_NOT_NULL:return"is not null"}}function om(n){switch(n){case he.IS_EXACTLY:return"is";case he.IS_NOT_EXACTLY:return"is not";case he.IS_BEFORE:return"is before";case he.IS_BEFORE_OR_EQUAL:return"is before or equal";case he.IS_AFTER:return"is after";case he.IS_AFTER_OR_EQUAL:return"is after or equal";case he.IS_NULL:return"is null";case he.IS_NOT_NULL:return"is not null"}}function lm(n){switch(n){case Ke.IS_TRUE:return"is true";case Ke.IS_FALSE:return"is false";case Ke.IS_NULL:return"is null";case Ke.IS_NOT_NULL:return"is not null"}}function sm(n){switch(n){case Ue.IS_EQUAL:return"is";case Ue.IS_NOT_EQUAL:return"is not";case Ue.IS_NULL:return"is null";case Ue.IS_NOT_NULL:return"is not null"}}function Es(n){if(M.isNumberType(n))return re.IS_EQUAL;if(M.isCharType(n))return Ue.IS_EQUAL;if(M.isStringType(n))return ge.IS_EXACTLY;if(M.isDateType(n))return he.IS_EXACTLY;if(M.isBooleanType(n))return Ke.IS_TRUE;throw new Error("Invalid column type")}function Ts(n){if(M.isCharType(n)||M.isStringType(n))return""}function ys(n){var{condition:e,value:t,start:r,end:i}=n;return{condition:e,value:t,start:r,end:i}}function Mi(n){return{condition:Es(n),value:Ts(n),start:void 0,end:void 0}}function Rs(){return{type:fe.NO_FORMATTING}}function um(n){switch(n){case ge.IS_EXACTLY:return"==";case ge.IS_NOT_EXACTLY:return"!=";case ge.CONTAINS:return"contains";case ge.DOES_NOT_CONTAIN:return"does not contain";case ge.STARTS_WITH:return"starts with";case ge.ENDS_WITH:return"ends with";case ge.IS_NULL:return"is null";case ge.IS_NOT_NULL:return"is not null"}}function dm(n){switch(n){case he.IS_EXACTLY:return"==";case he.IS_NOT_EXACTLY:return"!=";case he.IS_BEFORE:return"<";case he.IS_BEFORE_OR_EQUAL:return"<=";case he.IS_AFTER:return">";case he.IS_AFTER_OR_EQUAL:return">=";case he.IS_NULL:return"is null";case he.IS_NOT_NULL:return"is not null"}}function cm(n){switch(n){case Ke.IS_TRUE:return"is true";case Ke.IS_FALSE:return"is false";case Ke.IS_NULL:return"is null";case Ke.IS_NOT_NULL:return"is not null"}}function hm(n){switch(n){case Ue.IS_EQUAL:return"==";case Ue.IS_NOT_EQUAL:return"!=";case Ue.IS_NULL:return"is null";case Ue.IS_NOT_NULL:return"is not null"}}function mm(n){switch(n){case re.IS_EQUAL:return"==";case re.IS_NOT_EQUAL:return"!=";case re.IS_BETWEEN:return"==";case re.GREATER_THAN:return">";case re.GREATER_THAN_OR_EQUAL:return">=";case re.LESS_THAN:return"<";case re.LESS_THAN_OR_EQUAL:return"<=";case re.IS_NULL:return"is null";case re.IS_NOT_NULL:return"is not null"}}function vm(n,e,t,r,i){switch(e){case re.IS_EQUAL:return"".concat(n," == ").concat(t);case re.IS_NOT_EQUAL:return"".concat(n," != ").concat(t);case re.IS_BETWEEN:return"".concat(n," > ").concat(r," && ").concat(n," < ").concat(i);case re.GREATER_THAN:return"".concat(n," > ").concat(t);case re.GREATER_THAN_OR_EQUAL:return"".concat(n," >= ").concat(t);case re.LESS_THAN:return"".concat(n," < ").concat(t);case re.LESS_THAN_OR_EQUAL:return"".concat(n," <= ").concat(t);case re.IS_NULL:return"".concat(n," == null");case re.IS_NOT_NULL:return"".concat(n," != null")}}function gm(n,e,t){switch(e){case ge.IS_EXACTLY:return"".concat(n,' == "').concat(t,'"');case ge.IS_NOT_EXACTLY:return"".concat(n,' != "').concat(t,'"');case ge.CONTAINS:return"".concat(n," != null && ").concat(n,'.contains("').concat(t,'")');case ge.DOES_NOT_CONTAIN:return"".concat(n," != null && !").concat(n,'.contains("').concat(t,'")');case ge.STARTS_WITH:return"".concat(n," != null && ").concat(n,'.startsWith("').concat(t,'")');case ge.ENDS_WITH:return"".concat(n," != null && ").concat(n,'.endsWith("').concat(t,'")');case ge.IS_NULL:return"".concat(n," == null");case ge.IS_NOT_NULL:return"".concat(n," != null")}}function fm(n,e,t){switch(e){case he.IS_EXACTLY:return"".concat(n,' == convertDateTime("').concat(t,'")');case he.IS_NOT_EXACTLY:return"".concat(n," != convertDateTime(`").concat(t,"`)");case he.IS_BEFORE:return"".concat(n," < convertDateTime(`").concat(t,"`)");case he.IS_BEFORE_OR_EQUAL:return"".concat(n,' <= convertDateTime("').concat(t,'")');case he.IS_AFTER:return"".concat(n," > convertDateTime(`").concat(t,"`)");case he.IS_AFTER_OR_EQUAL:return"".concat(n," >= convertDateTime(`").concat(t,"`)");case he.IS_NULL:return"".concat(n," == null");case he.IS_NOT_NULL:return"".concat(n," != null")}}function pm(n,e){switch(e){case Ke.IS_TRUE:return"".concat(n," == true");case Ke.IS_FALSE:return"".concat(n," == false");case Ke.IS_NULL:return"".concat(n," == null");case Ke.IS_NOT_NULL:return"".concat(n," != null")}}function Cm(n,e,t){switch(e){case Ue.IS_EQUAL:return"".concat(n," == '").concat(t,"'");case Ue.IS_NOT_EQUAL:return"".concat(n," != '").concat(t,"'");case Ue.IS_NULL:return"isNull(".concat(n,")");case Ue.IS_NOT_NULL:return"!isNull(".concat(n,")")}}function wm(n,e){if(M.isNumberType(n))return mm(e);if(M.isCharType(n))return hm(e);if(M.isStringType(n))return um(e);if(M.isDateType(n))return dm(e);if(M.isBooleanType(n))return cm(e);throw new Error("Invalid column type")}function bm(n,e,t){if(t===void 0)return Mn.debug("no rules passed."),[];var r=[],i,a=new Map;return t.forEach(o=>{var l,{config:s,type:u}=o,{column:d}=s,c=e.find(C=>{var{name:w,type:b}=C;return w===d.name&&b===d.type});if(c===void 0){Mn.debug("Column ".concat(d.name,":").concat(d.type," not found. Ignoring format rule."),s);return}var[h,v]=(l=u===pt.CONDITIONAL?a.get(c.name):i)!==null&&l!==void 0?l:["null",void 0],g=Yh(s,h);if(g===void 0){Mn.debug("Ignoring format rule.",s);return}var f=v===void 0?-1:r.indexOf(v);f>-1&&r.splice(f,1);var p=u===pt.CONDITIONAL?Xh(c,g):qh(n,g);r.push(p),u===pt.CONDITIONAL?a.set(c.name,[g,p]):i=[g,p]}),r}function Sm(n,e,t){switch(e){case he.IS_NULL:case he.IS_NOT_NULL:return!0;default:{var[r,...i]=(t??"").split(" "),a=i.join(" ");try{Hn.parseDateTimeString(r)}catch{return Mn.debug("Invalid datetime string",r),!1}try{n.i18n.TimeZone.getTimeZone(a)}catch{return Mn.debug("Invalid timezone string",a),!1}return!0}}}function Em(n){var{type:e}=n;return M.isNumberType(e)||M.isCharType(e)||M.isStringType(e)||M.isDateType(e)||M.isBooleanType(e)}function Li(n){var{animation:e="iris-grid-bottom-bar-slide-up",children:t,className:r,isShown:i,onClick:a,onEntering:o,onEntered:l,onExiting:s,onExited:u}=n;return m.createElement(Or,{in:i,timeout:qe.transitionMs,classNames:e,onEntering:o,onEntered:l,onExiting:s,onExited:u,mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:ie("iris-grid-bottom-bar",r),role:"presentation",onClick:a,onKeyPress:a},t))}var Tm=3e3,ym=5;function Rm(n){var{isSaving:e=!1,onSave:t,onDiscard:r,discardTooltip:i,saveTooltip:a,error:o,pendingDataErrors:l,pendingDataMap:s,onEntering:u,onEntered:d,onExiting:c,onExited:h}=n,[v,g]=y.useState(!1),[f,p]=y.useState(!1),C=y.useRef(),w=is(e),b=y.useMemo(()=>l.size===0?o:l.size<=ym?"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)"),[o,l]);y.useEffect(function(){w!=null&&w&&!e&&b==null&&(g(!0),p(!0),C.current=setTimeout(()=>{g(!1)},Tm))},[b,e,w]),y.useEffect(function(){C.current&&s.size>0&&(clearTimeout(C.current),g(!1),p(!1))},[s]),y.useEffect(function(){return()=>C.current?clearTimeout(C.current):void 0},[]);var E=s.size,T;return e?T=m.createElement(zr,null):f&&(T=ts),m.createElement(Li,{className:"pending-data-bottom-bar",isShown:E>0||v||b!=null,onEntering:u,onEntered:d,onExiting:c,onExited:()=>{p(!1),h&&h()}},b!=null&&b!==""&&m.createElement("div",{className:"error-message"},m.createElement(ue,{icon:In}),m.createElement("span",null,"".concat(b))),(b==null||b==="")&&m.createElement("div",{className:"status-message"},E>0&&m.createElement("span",null,"".concat(E," row").concat(E>1?"s":""," pending"))),m.createElement("div",{className:"buttons-container"},!e&&!f&&m.createElement(Z,{kind:"secondary",onClick:r,tooltip:i},"Discard"),m.createElement(Z,{kind:f?"success":"primary",onClick:t,icon:T,disabled:e||f||b!=null,tooltip:a},e&&"Committing...",!e&&f&&"Success",!e&&!f&&"Commit")))}var ya;(function(n){n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique"})(ya||(ya={}));const ye=ya;var Om=[ye.SUM,ye.ABS_SUM,ye.MIN,ye.MAX,ye.VAR,ye.AVG,ye.STD,ye.FIRST,ye.LAST,ye.COUNT_DISTINCT,ye.DISTINCT,ye.COUNT,ye.UNIQUE],Fm=n=>{switch(n){default:return!1}},Dm=(n,e)=>{switch(n){case ye.COUNT:case ye.FIRST:case ye.LAST:case ye.COUNT_DISTINCT:case ye.DISTINCT:case ye.UNIQUE:return!0;case ye.MIN:case ye.MAX:return M.isNumberType(e)||M.isDateType(e)||M.isTextType(e);case ye.SUM:case ye.ABS_SUM:case ye.VAR:case ye.AVG:case ye.STD:return M.isNumberType(e);case ye.SKIP:return!1}},so=(n,e)=>n.filter(t=>Dm(e,t.type)),Nm=(n,e,t,r)=>so(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const Rr={isRollupOperation:Fm,filterValidColumns:so,getOperationColumnNames:Nm};var Ra;(function(n){n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(Ra||(Ra={}));const sn=Ra;var Pm=Object.freeze([[sn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[sn.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const Im={DEFAULTS:Pm};function Sr(n,e,t){return e=Am(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Am(n){var e=Mm(n,"string");return typeof e=="symbol"?e:String(e)}function Mm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Lm=Fe.module("ColumnHeaderGroup");function ua(n){return n instanceof Pt}class Pt{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:o,parent:l}=e;Sr(this,"name",void 0),Sr(this,"children",void 0),Sr(this,"depth",void 0),Sr(this,"parent",void 0),Sr(this,"color",void 0),Sr(this,"childIndexes",void 0),Sr(this,"getVisibleRange",je(s=>{var u=this.childIndexes.flat(),d=j.getVisibleIndexes(u,s),c=Math.min(...d),h=Math.max(...d);return h-c!==u.length-1&&Lm.warn("Column header group ".concat(this.name," is not contiguous")),[c,h]})),this.name=t,this.children=r,this.color=i,this.depth=a,this.childIndexes=o,this.parent=l}setParent(e){this.parent=e}addChildren(e){var t=new Set(this.children.concat(e));this.children=[...t]}removeChildren(e){var t=new Set(this.children);e.forEach(r=>t.delete(r)),this.children=[...t]}get isNew(){return this.name.startsWith(Pt.NEW_GROUP_PREFIX)}}Sr(Pt,"NEW_GROUP_PREFIX",":newGroup");var km=["selectedValues"],_m=["selectedValues"];function el(n,e){if(n==null)return{};var t=Hm(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function Hm(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function tl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ir(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?tl(Object(t),!0).forEach(function(r){Oa(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):tl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oa(n,e,t){return e=xm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xm(n){var e=Bm(n,"string");return typeof e=="symbol"?e:String(e)}function Bm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var En=Fe.module("IrisGridUtils");function vr(n,e){return n>=0&&n<e.length}function Um(n){return n.asDate!=null}class Me{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:o}=t,{columns:l}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(s=>{var{to:u,from:d}=s;return vr(u,l)&&(typeof d=="number"&&vr(d,l)||Array.isArray(d)&&vr(d[0],l)&&vr(d[1],l))}).map(s=>{var{to:u,from:d}=s;return{to:l[u].name,from:Array.isArray(d)?[l[d[0]].name,l[d[1]].name]:l[d].name}}),movedRows:[...o]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:o,movedRows:l}=t,{columns:s}=e,u=Me.parseCustomColumnNames(r),d=s.map(c=>{var{name:h}=c;return h}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...o].map(c=>{var{to:h,from:v}=c,g=f=>typeof f=="string"?d.findIndex(p=>p===f):f;return{to:g(h),from:Array.isArray(v)?[g(v[0]),g(v[1])]:g(v)}}).filter(c=>{var{to:h,from:v}=c;return vr(h,d)&&(typeof v=="number"&&vr(v,d)||Array.isArray(v)&&vr(v[0],d)&&vr(v[1],d))}),movedRows:[...l]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partition:i,partitionColumn:a,advancedSettings:o}=t;return{isSelectingPartition:r,partition:i,partitionColumn:a!=null?a.name:null,advancedSettings:[...o]}}static hydrateIrisGridPanelState(e,t){var r,{isSelectingPartition:i,partition:a,partitionColumn:o,advancedSettings:l}=t,{columns:s}=e;return{isSelectingPartition:i,partition:a??null,partitionColumn:o!=null&&(r=Me.getColumnByName(s,o))!==null&&r!==void 0?r:null,advancedSettings:new Map([...Im.DEFAULTS,...l])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[r,i]=t,{text:a}=i;return[r,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:r,isAbs:i,direction:a}=t;return{column:r.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:r,irisGridState:i}=e,{partitionColumn:a,partition:o}=r,{advancedFilters:l,quickFilters:s,sorts:u}=i;return{advancedFilters:l,inputFilters:t,partition:o,partitionColumn:a,quickFilters:s,sorts:u}}static getInputFiltersForColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.filter(r=>{var{name:i,type:a}=r;return e.find(o=>{var{name:l,type:s}=o;return l===i&&s===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],o=e.get(a);(o==null?void 0:o.filter)!=null&&t.push(o.filter)}return t}static getHiddenColumns(e){return[...e.entries()].filter(t=>{var[,r]=t;return r===0}).map(t=>{var[r]=t;return r})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var r=Me.parseCustomColumnNames(e),i=Me.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(o=>{var{name:l}=o;return l}),a=new Map(t);return r.forEach(o=>a.delete(i.indexOf(o))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(s=>{var{name:u}=s;return u}),a=[...t],o=function(){for(var u=r[l],d=i.findIndex(C=>C===u),c=[],h=0;h<a.length;h+=1){var v=a[h],g=ir({},v),[f,p]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<f&&(f-=1),d<=p&&(p-=1),f<=p&&f!==g.to&&(f===p?c.push(ir(ir({},g),{},{from:f})):c.push(ir(ir({},g),{},{from:[f,p]}))),d=j.applyItemMoves(d,d,[v])[0][0]}a=c,i.splice(i.findIndex(C=>C===u),1)},l=0;l<r.length;l+=1)o();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var o=[],l=t;l<=r;l+=1){var s=j.getModelIndex(l,i);s>=0&&s<e.length&&!a.includes(s)&&o.push(e[s])}return o}static getPrevVisibleColumns(e,t,r,i,a){for(var o=[],l=t;l>=0&&o.length<r;){var s=j.getModelIndex(l,i);s>=0&&s<e.length&&!a.includes(s)&&o.unshift(e[s]),l-=1}return o}static getNextVisibleColumns(e,t,r,i,a){for(var o=[],l=t;l<e.length&&o.length<r;){var s=j.getModelIndex(l,i);s>=0&&s<e.length&&!a.includes(s)&&o.push(e[s]),l+=1}return o}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var o=e.find(l=>{var{name:s}=l;return s===a});o!=null&&!t.includes(o)&&i.push(o)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],l=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(t==null||r==null)return null;var s=Me.getVisibleColumnsInRange(e,t,r,i,a),u=s.length*l,d=Me.getPrevVisibleColumns(e,t-1,u,i,a),c=Me.getNextVisibleColumns(e,r+1,u,i,a),h=[...d,...s,...c];return Me.getColumnsToFetch(e,h,o)}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,r=0;r<e.length;r+=1){var i=e[r],a="".concat(i.startRow,":").concat(i.endRow),o="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(o)}for(var l=[...t.keys()],s=t.get(l[0]).sort().join(","),u=1;u<l.length;u+=1)if(t.get(l[u]).sort().join(",")!==s)return!1;return!0}static isValidIndex(e){return!Number.isInteger(e)||typeof e!="number"?!1:e>=0}static columnsFromRanges(e,t){if(e==null||e.length===0)return[];if(e[0].startColumn===null&&e[0].endColumn===null)return[...t];for(var r=new Set,i=0;i<e.length;i+=1){var a=e[i];_(a.startColumn),_(a.endColumn);for(var o=(l=a.startColumn)!==null&&l!==void 0?l:0;o<=((s=a.endColumn)!==null&&s!==void 0?s:t.length-1);o+=1){var l,s;r.add(o)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var o=r[a],l=[],s=0;s<t.length;s+=1){var u=t[s],d=o.get(u);l.push(d)}i.push(l)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:o=[],showConstituents:l=!0,showNonAggregatedColumns:s=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},c=d.map(C=>{var{operation:w,selected:b,invert:E}=C;return Rr.isRollupOperation(w)?[]:Rr.getOperationColumnNames(e,w,b,E)}),h={},v=0;v<d.length;v+=1)h[d[v].operation]=c[v];if(s){var g=new Set(e.map(C=>C.name).filter(C=>!o.includes(C)));if(c.forEach(C=>{C.forEach(w=>g.delete(w))}),g.size>0){var f,p=(f=h[ye.FIRST])!==null&&f!==void 0?f:[];h[ye.FIRST]=[...p,...g]}}return{groupingColumns:o,includeConstituents:l,includeDescriptions:u,aggregations:h}}static getPendingErrors(e){e.forEach((t,r)=>{if(!Me.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!Me.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})})}static getColumn(e,t){return t<e.length?e[t]:(En.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=e.find(i=>{var{name:a}=i;return a===t});return r==null&&En.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),r}static changeFilterColumnNamesToIndexes(e,t){return t.map(r=>{var{name:i,filter:a}=r,o=e.findIndex(l=>l.name===i);return o<0?null:[o,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((d,c)=>d.operator==="eq"&&c.operator!=="eq"?1:d.operator!=="eq"&&c.operator==="eq"?-1:d.startColumnIndex-c.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:o,operator:l}=t[i];if(o!==void 0){var s="";l!==void 0&&(o==null&&l==="eq"?s="=":l!=="eq"&&(l==="startsWith"||l==="endsWith"?s="*":s=M.getFilterOperatorString(l)));var u="".concat(s).concat(a);l==="startsWith"&&(u="".concat(a).concat(s)),e!=null&&o!==null&&M.isCharType(e)&&(u="".concat(s).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=l==="eq"?" || ":" && "),r+=u}}return r}static parseColumnHeaderGroups(e,t){var r=1,i=new Map,a=new Map,o=t==null?void 0:t.filter(c=>{var{children:h}=c;return h.length>0});if(o.length===0)return{groups:[],maxDepth:r,parentMap:i,groupMap:a};var l=new Map(o.map(c=>[c.name,c])),s=new Set,u=c=>{var{name:h}=c;if(e.getColumnIndexByName(h)!=null)throw new Error("Column header group has same name as column: ".concat(h));var v=a.get(h);if(v)return v;var g=[],f=1;c.children.forEach(C=>{if(s.has(C))throw new Error("Column group child ".concat(C," specified in multiple groups"));s.add(C);var w=l.get(C),b=e.getColumnIndexByName(C);if(w){var E=u(w);g.push(...E.childIndexes),f=Math.max(f,E.depth+1)}else if(b!=null)g.push(b),f=Math.max(f,1);else throw new Error("Unknown child ".concat(C," in group ").concat(h))});var p=new Pt(ir(ir({},c),{},{depth:f,childIndexes:g.flat()}));return a.set(h,p),c.children.forEach(C=>i.set(C,p)),r=Math.max(r,p.depth+1),p},d=new Set;return o.forEach(c=>{var{name:h}=c;if(d.has(h))throw new Error("Duplicate column group name: ".concat(h));d.add(h),u(c)}),a.forEach(c=>{var h;c.setParent((h=i.get(c.name))===null||h===void 0?void 0:h.name)}),{groups:[...a.values()],maxDepth:r,groupMap:a,parentMap:i}}static convertValueToText(e,t){if(t!=null&&M.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(M.isDateType(t)&&Um(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),o=a.toISOString(),l=o.replace("T"," ").substring(0,23);return l}return e==null?"":"".concat(e)}constructor(e){Oa(this,"dh",void 0),Oa(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new M(e)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:Ee,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:o,metrics:l,quickFilters:s,customColumns:u,conditionalFormats:d=Ee,reverseType:c,rollupConfig:h=void 0,showSearchBar:v,searchValue:g,selectDistinctColumns:f=Ee,selectedSearchColumns:p,sorts:C,invertSearchColumns:w,pendingDataMap:b=lr,frozenColumns:E,columnHeaderGroups:T}=t;_(l);var{userColumnWidths:S,userRowHeights:O}=l,{columns:F}=e;return{advancedFilters:this.dehydrateAdvancedFilters(F,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:o,quickFilters:Me.dehydrateQuickFilters(s),sorts:Me.dehydrateSort(C),userColumnWidths:[...S].filter(R=>{var[D]=R;return D!=null&&D>=0&&D<F.length}).map(R=>{var[D,P]=R;return[F[D].name,P]}),userRowHeights:[...O],customColumns:[...u],conditionalFormats:[...d],reverseType:c,rollupConfig:h,showSearchBar:v,searchValue:g,selectDistinctColumns:[...f],selectedSearchColumns:p,invertSearchColumns:w,pendingDataMap:this.dehydratePendingDataMap(F,b),frozenColumns:E,columnHeaderGroups:T==null?void 0:T.map(R=>({name:R.name,children:R.children,color:R.color}))}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:o={aggregations:[],showOnTop:!1},customColumnFormatMap:l,isFilterBarShown:s,quickFilters:u,sorts:d,customColumns:c,conditionalFormats:h,userColumnWidths:v,userRowHeights:g,reverseType:f,rollupConfig:p=void 0,showSearchBar:C,searchValue:w,selectDistinctColumns:b,selectedSearchColumns:E,invertSearchColumns:T=!0,pendingDataMap:S=[],frozenColumns:O,columnHeaderGroups:F}=t,{columns:R,formatter:D}=e;return{advancedFilters:this.hydrateAdvancedFilters(R,a,D.timeZone),aggregationSettings:o,customColumnFormatMap:new Map(l),isFilterBarShown:s,quickFilters:this.hydrateQuickFilters(R,u,D.timeZone),sorts:this.hydrateSort(R,d),userColumnWidths:new Map(v.map(P=>{var[I,A]=P;return typeof I=="string"||I instanceof String?[R.findIndex(x=>{var{name:H}=x;return H===I}),A]:[I,A]}).filter(P=>{var[I]=P;return I!=null&&I>=0&&I<R.length})),customColumns:c,conditionalFormats:h,userRowHeights:new Map(g),reverseType:f,rollupConfig:p,showSearchBar:C,searchValue:w,selectDistinctColumns:b,selectedSearchColumns:E,invertSearchColumns:T,pendingDataMap:this.hydratePendingDataMap(R,S),frozenColumns:O,columnHeaderGroups:Me.parseColumnHeaderGroups(e,(r=F??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[o,l]=a,{text:s}=l,u=null;try{var d=Me.getColumn(e,o);d!=null&&(u=this.tableUtils.makeQuickFilter(d,s,r))}catch(c){En.error("hydrateQuickFilters error with",s,c)}return[o,{text:s,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,o=Me.getColumn(e,i);_(o);var l=this.dehydrateAdvancedFilterOptions(o,a.options);return[i,{options:l}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[o,l]=a,s=Me.getColumn(e,o);_(s);var u=this.hydrateAdvancedFilterOptions(s,l.options),d=null;try{var c=Me.getColumn(e,o);c!=null&&(d=this.tableUtils.makeAdvancedFilter(s,u,r))}catch(h){En.error("hydrateAdvancedFilters error with",u,h)}return[o,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=el(t,km);return ir({selectedValues:r==null?void 0:r.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=el(t,_m);return ir({selectedValues:r==null?void 0:r.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].map(o=>{var[l,s]=o;return[e[l].name,this.dehydrateValue(s,e[l].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(o=>{var{name:l}=o;return l===a})),r.get(a));return new Map(t.map(a=>{var[o,{data:l}]=a;return[o,{data:new Map(l.map(s=>{var u,[d,c]=s,h=i(d);return _(h),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(c,e[h].type)]}))}]}))}dehydrateValue(e,t){return M.isDateType(t)?this.dehydrateDateTime(e):M.isLongType(t)?Me.dehydrateLong(e):e}hydrateValue(e,t){return M.isDateType(t)?this.hydrateDateTime(e):M.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(Hn.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(Hn.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh:r}=this;return t.map(i=>{var{column:a,isAbs:o,direction:l}=i;if(l===M.sortDirection.reverse)return r.Table.reverse();var s=typeof a=="string"?Me.getColumnByName(e,a):Me.getColumn(e,a);if(s!=null){var u=s.sort();return o&&(u=u.abs()),l===M.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(i=>i!=null&&i.direction!==M.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=Me.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var o=[];t.advancedFilters&&(o=Me.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var l=this.getFiltersFromInputFilters(i,t.inputFilters,r),s=[];t.sorts&&(s=this.hydrateSort(i,t.sorts));var u=[...a,...o],{partition:d,partitionColumn:c}=t;if(d!=null&&c!=null){var h=Me.getColumnByName(i,c);if(h){var v=h.filter().eq(this.dh.FilterValue.ofString(d));u=[v,...u]}}u=[...l,...u],e.applyFilter(u),e.applySort(s)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t.map(i=>{var{name:a,type:o,value:l}=i,s=e.find(u=>{var{name:d,type:c}=u;return d===a&&c===o});if(s)try{return this.tableUtils.makeQuickFilter(s,l,r)}catch(u){En.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(_(i.startRow),_(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:o}=i;return _(a),_(o),t.RangeSet.ofRange(a,o)});return t.RangeSet.ofRanges(r)}}const Re=Me;function Dr(n,e,t){return e=Vm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vm(n){var e=$m(n,"string");return typeof e=="symbol"?e:String(e)}function $m(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ct=Fe.module("IrisGridCopyHandler");class Ce extends y.Component{static getStatusMessageText(e,t){switch(e){case Ce.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Ce.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Ce.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Ce.COPY_STATES.FETCH_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Ce.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Ce.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Ce.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Ce.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),Dr(this,"textData",void 0),Dr(this,"hideTimer",void 0),Dr(this,"fetchPromise",void 0),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleCopyClick=this.handleCopyClick.bind(this),this.handleHideTimeout=this.handleHideTimeout.bind(this),this.state={error:void 0,copyState:Ce.COPY_STATES.IDLE,buttonState:Ce.BUTTON_STATES.COPY,isShown:!1,rowCount:0}}componentDidMount(){var{copyOperation:e}=this.props;e!=null&&this.startCopy()}componentDidUpdate(e){var{copyOperation:t}=this.props;e.copyOperation!==t&&this.startCopy()}componentWillUnmount(){this.stopCopy()}startCopy(){Ct.debug2("startCopy"),this.stopCopy();var{copyOperation:e}=this.props;if(e==null){Ct.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var{ranges:t,error:r}=e;if(r!=null){Ct.debug("Showing copy error",r),this.setState({isShown:!0,copyState:Ce.COPY_STATES.DONE,error:r}),this.startHideTimer();return}var i=B.rowCount(t);this.setState({rowCount:i,isShown:!0,error:void 0}),i>Ce.NO_PROMPT_THRESHOLD?this.setState({buttonState:Ce.BUTTON_STATES.COPY,copyState:Ce.COPY_STATES.CONFIRMATION_REQUIRED}):this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){Ct.debug2("handleBackgroundClick");var{copyState:e}=this.state;e===Ce.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){Ct.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){Ct.debug2("handleCopyClick"),this.textData!=null?this.copyText(this.textData):this.startFetch()}handleHideTimeout(){Ct.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){Ct.debug2("copyText",e),this.textData=e,Za(e).then(()=>{this.setState({copyState:Ce.COPY_STATES.DONE}),this.startHideTimer()},t=>{Ct.error("copyText error",t),this.setState({buttonState:Ce.BUTTON_STATES.CLICK_TO_COPY,copyState:Ce.COPY_STATES.CLICK_REQUIRED})})}startFetch(){this.stopFetch(),this.setState({buttonState:Ce.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Ce.COPY_STATES.FETCH_IN_PROGRESS});var{model:e,copyOperation:t}=this.props,{ranges:r,includeHeaders:i,userColumnWidths:a,movedColumns:o,formatValues:l}=t;Ct.debug("startFetch",r);var s=Re.getHiddenColumns(a),u=j.getModelRanges(r,o);if(s.length>0){var d=s.map(B.makeColumn);u=B.subtractRangesFromRanges(u,d)}var c=l!=null&&l?(h,v)=>e.displayString(h,v.type,v.name):h=>"".concat(h);this.fetchPromise=ot.makeCancelable(e.textSnapshot(u,i,c)),this.fetchPromise.then(h=>{this.fetchPromise=void 0,this.copyText(h)}).catch(h=>{h instanceof as?Ct.debug("User cancelled copy."):(Ct.error("Error fetching contents",h),this.fetchPromise=void 0,this.setState({buttonState:Ce.BUTTON_STATES.RETRY,copyState:Ce.COPY_STATES.FETCH_ERROR}))})}stopFetch(){this.fetchPromise&&(Ct.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Ce.HIDE_TIMEOUT)}stopHideTimer(){this.hideTimer!=null&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}render(){var{onEntering:e,onEntered:t,onExiting:r,onExited:i}=this.props,{buttonState:a,copyState:o,isShown:l,rowCount:s,error:u}=this.state,d=o===Ce.COPY_STATES.DONE?"fade":"copy-slide-up",c=Ce.getCopyButtonText(a),h=u??Ce.getStatusMessageText(o,s),v=o!==Ce.COPY_STATES.DONE,g=a===Ce.BUTTON_STATES.FETCH_IN_PROGRESS,f=o===Ce.COPY_STATES.DONE;return m.createElement(Li,{animation:d,isShown:l,className:ie("iris-grid-copy-handler",{"copy-done":f}),onClick:this.handleBackgroundClick,onEntering:e,onEntered:t,onExiting:r,onExited:i},m.createElement("div",{className:"status-message"},m.createElement("span",null,h)),m.createElement(Or,{in:v,timeout:qe.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"buttons-container"},m.createElement("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick},"Cancel"),m.createElement(Z,{kind:g?"tertiary":"primary",className:ie("btn-copy",{"btn-spinner":g}),onClick:this.handleCopyClick,disabled:g},g&&m.createElement(zr,null),c))))}}Dr(Ce,"NO_PROMPT_THRESHOLD",1e4);Dr(Ce,"HIDE_TIMEOUT",3e3);Dr(Ce,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});Dr(Ce,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});Dr(Ce,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});const Gm=Ce;function vi(n,e,t){return e=Wm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wm(n){var e=zm(n,"string");return typeof e=="symbol"?e:String(e)}function zm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Os extends y.PureComponent{constructor(e){super(e),vi(this,"inputField",void 0),vi(this,"initialValue",void 0),vi(this,"debouncedSendUpdate",void 0);var{debounceMs:t}=e;this.debouncedSendUpdate=Jt(this.sendUpdate.bind(this),t),this.handleCancel=this.handleCancel.bind(this),this.handleChange=this.handleChange.bind(this),this.handleCommit=this.handleCommit.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.inputField=null;var{value:r}=e;this.initialValue=r,this.state={isChanged:!1,value:r}}componentDidMount(){var e;(e=this.inputField)===null||e===void 0||e.focus()}componentDidUpdate(e){var{debounceMs:t}=this.props;e.debounceMs!==t&&(this.debouncedSendUpdate.flush(),this.debouncedSendUpdate=Jt(this.sendUpdate.bind(this),t))}componentWillUnmount(){this.debouncedSendUpdate.cancel()}setValue(e){this.initialValue=e,this.setState({value:e})}focus(){var e;(e=this.inputField)===null||e===void 0||e.focus()}handleChange(e){var{value:t}=e.target;this.setState({value:t,isChanged:!0}),this.debouncedSendUpdate(t)}handleCancel(){this.debouncedSendUpdate.cancel();var{initialValue:e}=this,{isChanged:t}=this.state;t&&this.sendUpdate(e);var{onDone:r}=this.props;r()}handleCommit(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.debouncedSendUpdate.flush();var{onDone:r}=this.props;r(e,t)}handleFocus(){var e;(e=this.inputField)===null||e===void 0||e.select()}handleBlur(e){var{relatedTarget:t}=e;t!=null&&t.classList.contains("context-menu-container")?this.handleCommit(!1,!0):t!=null&&t.classList.contains("advanced-filter-button")?this.handleCommit(!1,!1):this.handleCommit(!0,!0)}handleTab(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.debouncedSendUpdate.flush();var{onTab:t}=this.props;t(e)}handleKeyDown(e){switch(e.key){case"Escape":e.stopPropagation(),e.preventDefault(),this.handleCancel();break;case"Enter":e.stopPropagation(),e.preventDefault(),this.handleCommit();break;case"Tab":e.stopPropagation(),e.preventDefault(),this.handleTab(e.shiftKey);break}}handleContextMenu(e){var{onContextMenu:t}=this.props;t(e)}sendUpdate(e){var{onChange:t}=this.props;t(e)}render(){var{className:e,style:t,isAdvancedFilterSet:r,onAdvancedFiltersTriggered:i}=this.props,{value:a}=this.state;return m.createElement("div",{style:t,className:"iris-grid-input-autosized-wrapper","data-value":a},m.createElement("input",{ref:o=>{this.inputField=o},className:ie("iris-grid-input-field",e),type:"text",value:a,onBlur:this.handleBlur,onFocus:this.handleFocus,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onContextMenu:this.handleContextMenu,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"}),m.createElement("div",{className:"advanced-filter-button-container"},m.createElement(Z,{kind:"ghost",className:ie("btn-link-icon advanced-filter-button",{"filter-set":r}),onClick:i,onContextMenu:this.handleContextMenu},m.createElement("div",{className:"fa-layers "},m.createElement(ue,{icon:Wa,className:"filter-solid"}),m.createElement(ue,{icon:pi,className:"filter-light"})))))}}vi(Os,"defaultProps",{style:{},className:"",value:"",isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});const jm=Os;function Km(n,e,t){return e=Ym(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ym(n){var e=qm(n,"string");return typeof e=="symbol"?e:String(e)}function qm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Xm extends Kr{constructor(e){super(),Km(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{selectedRanges:t}=this.irisGrid.state;return e.key==="c"&&ln.isModifierKeyDown(e)?(Re.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}const Qm=Xm;var Zm={TOGGLE_QUICK_FILTER:Er.createAndAdd({id:"TABLE.TOGGLE_QUICK_FILTER",name:"Toggle Quick Filter",shortcut:[xe.CTRL,tt.F],macShortcut:[xe.CMD,tt.F]}),CLEAR_ALL_FILTERS:Er.createAndAdd({id:"TABLE.CLEAR_ALL_FILTERS",name:"Clear All Table Filters",shortcut:[xe.CTRL,tt.E],macShortcut:[xe.CMD,tt.E]}),CLEAR_FILTERS:Er.createAndAdd({id:"TABLE.CLEAR_FILTERS",name:"Clear Active Table Filters",shortcut:[xe.CTRL,xe.SHIFT,tt.E],macShortcut:[xe.CMD,xe.SHIFT,tt.E]}),REVERSE:Er.createAndAdd({id:"TABLE.REVERSE",name:"Reverse",shortcut:[xe.CTRL,tt.I],macShortcut:[xe.CMD,tt.I]}),TOGGLE_SEARCH:Er.createAndAdd({id:"TABLE.TOGGLE_SEARCH",name:"Toggle Search",shortcut:[xe.CTRL,xe.SHIFT,tt.F],macShortcut:[xe.CMD,xe.SHIFT,tt.F]}),GOTO_ROW:Er.createAndAdd({id:"TABLE.GOTO_ROW",name:"Go to Row",shortcut:[xe.CTRL,tt.G],macShortcut:[xe.CMD,tt.G]})},Jm={COMMIT:Er.createAndAdd({id:"INPUT_TABLE.COMMIT",name:"Commit",shortcut:[xe.CTRL,tt.S],macShortcut:[xe.CMD,tt.S]}),DISCARD:Er.createAndAdd({id:"INPUT_TABLE.DISCARD",name:"Discard",shortcut:[xe.CTRL,xe.ALT,tt.S],macShortcut:[xe.CMD,xe.OPTION,tt.S]})},ev={TABLE:Zm,INPUT_TABLE:Jm};const $t=ev;function tv(n,e,t){return e=rv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rv(n){var e=nv(n,"string");return typeof e=="symbol"?e:String(e)}function nv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class iv extends Kr{constructor(e){super(),tv(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if($t.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var{reverseType:t}=this.irisGrid.state;return t===M.REVERSE_TYPE.NONE?this.irisGrid.reverse(M.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(M.REVERSE_TYPE.NONE),!0}return!1}}const av=iv;function ov(n,e,t){return e=lv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lv(n){var e=sv(n,"string");return typeof e=="symbol"?e:String(e)}function sv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class uv extends Kr{constructor(e){super(),ov(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return $t.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}const dv=uv;function cv(n,e,t){return e=hv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hv(n){var e=mv(n,"string");return typeof e=="symbol"?e:String(e)}function mv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class vv extends We{constructor(e){super(850),cv(this,"irisGrid",void 0),this.irisGrid=e}destroyColumnTooltip(){this.irisGrid.setState({overflowButtonTooltipProps:null})}setCursor(e){return this.isHoveringOverflowButton(e)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:o,grid:l,state:s,props:u}=this.irisGrid;if(!l)return null;var{metrics:d}=s,{model:c}=u,{canvasContext:h}=l,v=l.getTheme(),g={context:h,mouseX:t,mouseY:r,metrics:d,model:c,theme:v},{left:f,top:p,width:C,height:w}=o.getCellOverflowButtonPosition(g);return f==null||C==null||p==null||w==null?null:{left:f,top:p,width:C,height:w}}isHoveringOverflowButton(e){var t,{x:r,y:i}=e,{left:a,top:o,width:l,height:s}=(t=this.getButtonPosition(e))!==null&&t!==void 0?t:{};if(a==null||l==null||o==null||s==null)return!1;var{renderer:u,grid:d,state:c,props:h}=this.irisGrid;if(!d)return!1;var{metrics:v}=c,{model:g}=h,{canvasContext:f}=d,p=d.getTheme(),C={context:f,mouseX:r,mouseY:i,metrics:v,model:g,theme:p};return u.shouldRenderOverflowButton(C)&&r>=a&&r<=a+l&&i>=o&&i<=o+s}onMove(e){if(this.isHoveringOverflowButton(e)){var{overflowButtonTooltipProps:t}=this.irisGrid.state,r=this.getButtonPosition(e);Vt(t,r)||this.irisGrid.setState({overflowButtonTooltipProps:r})}else this.destroyColumnTooltip();return this.setCursor(e)}onWheel(e){return this.destroyColumnTooltip(),this.onMove(e)}onDown(e){this.destroyColumnTooltip();var{column:t,row:r}=e;return this.isHoveringOverflowButton(e)&&this.irisGrid.setState({showOverflowModal:!0,overflowText:this.irisGrid.getValueForCell(t,r)}),!1}onContextMenu(){return this.destroyColumnTooltip(),!1}onLeave(){return this.destroyColumnTooltip(),!1}}const gv=vv;function fv(n,e,t){return e=pv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pv(n){var e=Cv(n,"string");return typeof e=="symbol"?e:String(e)}function Cv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class wv extends We{constructor(e){super(),fv(this,"irisGrid",void 0),this.irisGrid=e,this.cursor=null}isActive(){var{isSelectingColumn:e}=this.irisGrid.props;return e}isValidColumn(e){if(e==null)return!1;var{columnSelectionValidator:t}=this.irisGrid.props;return t!=null?t(e):!0}updateColumnSelectionStatus(){var{columnSelectionValidator:e}=this.irisGrid.props;e!=null&&e(null)}getTableColumn(e){if(e==null)return null;var{model:t}=this.irisGrid.props,r=this.irisGrid.getModelColumn(e);return r==null?null:t.columns[r]}onMove(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),!0}onWheel(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),{preventDefault:!1,stopPropagation:!1}}onLeave(){return this.isActive()&&this.irisGrid.setState({hoverSelectColumn:null}),this.updateColumnSelectionStatus(),!1}onDown(){return this.isActive()}onClick(e){if(!this.isActive())return!1;var{column:t}=e,r=this.getTableColumn(t);return r!=null&&this.isValidColumn(r)&&this.irisGrid.selectColumn(r),!0}}const bv=wv;function Sv(n,e,t){return e=Ev(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ev(n){var e=Tv(n,"string");return typeof e=="symbol"?e:String(e)}function Tv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class yv extends We{constructor(e){super(),Sv(this,"irisGrid",void 0),this.irisGrid=e}hideColumnTooltip(){var{tooltip:e}=this.irisGrid;e&&(e.stopTimer(),e.hide())}onDown(){return this.hideColumnTooltip(),!1}onContextMenu(){return this.hideColumnTooltip(),!1}onWheel(){return this.hideColumnTooltip(),!1}onLeave(e,t,r){var{relatedTarget:i}=r instanceof MouseEvent?r:r.nativeEvent,{tooltip:a}=this.irisGrid;if(!a)return!1;var o=a.popper.current;return o&&i instanceof Element&&o.element.contains(i)||this.hideColumnTooltip(),!1}onMove(e){var{column:t,row:r,columnHeaderDepth:i}=e,{shownColumnTooltip:a}=this.irisGrid.state,o=null;return t!==null&&r===null&&i===0&&(o=t),o!==a&&this.irisGrid.setState({shownColumnTooltip:o}),!1}}const Rv=yv;function Fs(n,e,t){return e=Ov(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ov(n){var e=Fv(n,"string");return typeof e=="symbol"?e:String(e)}function Fv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ki extends y.Component{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ki.defaultProps;super(e),Fs(this,"inputRef",void 0),this.handleInputChange=this.handleInputChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.inputRef=m.createRef()}handleInputChange(){var{onChange:e}=this.props;this.inputRef.current&&e(this.inputRef.current.value)}closeContextMenu(){var{forwardedProps:e}=this.props,{closeMenu:t}=e;t(!0)}revertToDefault(){var{onChange:e}=this.props;e(null)}returnFocusToContextMenu(){var e=Hd.getClosestByClassName(this.inputRef.current,"context-menu-container");e instanceof HTMLElement&&e.focus()}handleKeyDown(e){switch(e.key){case"Enter":e.stopPropagation(),this.closeContextMenu();break;case"Escape":e.stopPropagation(),this.revertToDefault(),this.closeContextMenu();break;case"ArrowRight":case"ArrowLeft":e.stopPropagation();break;case"ArrowUp":case"ArrowDown":this.returnFocusToContextMenu();break;default:e.stopPropagation()}}render(){var{formatString:e,forwardedProps:t,placeholder:r,title:i}=this.props,{menuItem:{description:a},iconElement:o}=t;return m.createElement("div",{className:"form-group flex-grow mb-0"},m.createElement("div",{className:"custom-format-title"},m.createElement("span",{className:"icon"},o),m.createElement("label",{className:"title mb-0",htmlFor:"custom-format-input"},i,a!=null&&m.createElement(Gt,null,a))),m.createElement("div",{className:"pl-2 pr-2 pb-2"},m.createElement("input",{id:"custom-format-input",className:"form-control text-right mb-0",type:"text",defaultValue:e,ref:this.inputRef,placeholder:r,onKeyDown:this.handleKeyDown,onChange:this.handleInputChange,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"})))}}Fs(ki,"defaultProps",{formatString:"",forwardedProps:{menuItem:{},closeMenu(n){},iconElement:null},placeholder:"",title:"",onChange(n){}});const Dv=ki;class Nv{static isDefaultSelected(e){return!e||![mi.TYPE_CONTEXT_CUSTOM,mi.TYPE_CONTEXT_PRESET].includes(e.type)}static isCustomSelected(e){return e!=null&&e.type===mi.TYPE_CONTEXT_CUSTOM}static makeOption(e,t,r,i){return{title:e,description:e,group:r,format:t,isSelected:i}}static makeCustomFormatOption(e,t,r,i,a){return{title:e.label,description:e.label,format:e,group:t,isSelected:i,menuElement:m.createElement(Dv,{formatString:e.formatString,title:e.label,placeholder:r,onChange:a})}}}const St=Nv;function uo(n,e,t){return e=Pv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pv(n){var e=Iv(n,"string");return typeof e=="symbol"?e:String(e)}function Iv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class gt{static getOptions(e,t){var r=new Date,i=[{group:gt.dateGroup,formatString:"yyyy-MM-dd"},{group:gt.dateGroup,formatString:"MM-dd-yyyy"},{group:gt.timeGroup,formatString:"HH:mm:ss"},{group:gt.timeGroup,formatString:"HH:mm:ss.SSS"},{group:gt.timeGroup,formatString:"HH:mm:ss.SSSSSSSSS"},{group:gt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss"},{group:gt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSS"},{group:gt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"}],a=i.map(l=>{var s=An.makeFormat("",l.formatString,An.TYPE_CONTEXT_PRESET),u=e.getFormattedString(r,M.dataType.DATETIME,"",s);return St.makeOption(u,s,l.group,An.isSameFormat(s,t))}),o=St.makeOption("Default",null,gt.dateGroup,St.isDefaultSelected(t));return[o,...a]}}uo(gt,"dateGroup",10);uo(gt,"timeGroup",20);uo(gt,"dateTimeGroup",30);const Av=gt;function _i(n,e,t){return e=Mv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mv(n){var e=Lv(n,"string");return typeof e=="symbol"?e:String(e)}function Lv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class at{static getOptions(e,t,r){var i=[{format:Ft.FORMAT_PERCENT,group:at.presetGroup},{format:Ft.FORMAT_BASIS_POINTS,group:at.presetGroup},{format:Ft.FORMAT_MILLIONS,group:at.presetGroup},{format:Ft.FORMAT_SCIENTIFIC_NOTATION,group:at.presetGroup},{format:Ft.FORMAT_ROUND,group:at.presetRoundGroup},{format:Ft.FORMAT_ROUND_TWO_DECIMALS,group:at.presetRoundGroup},{format:Ft.FORMAT_ROUND_FOUR_DECIMALS,group:at.presetRoundGroup}],a=St.makeOption("Default",null,at.defaultGroup,St.isDefaultSelected(t)),o=i.map(d=>St.makeOption(d.format.label,d.format,d.group,Ft.isSameFormat(d.format,t))),l=St.isCustomSelected(t),s=l?t:Ft.makeCustomFormat(),u=St.makeCustomFormatOption(s,at.customGroup,Ft.DEFAULT_FORMAT_STRING,l,d=>{if(d!=null){var c=Ft.makeCustomFormat(d);Ft.isValid(e,c)&&r(c)}else r(null)});return[a,...o,u]}}_i(at,"defaultGroup",10);_i(at,"presetGroup",20);_i(at,"presetRoundGroup",30);_i(at,"customGroup",40);const kv=at;function co(n,e,t){return e=_v(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _v(n){var e=Hv(n,"string");return typeof e=="symbol"?e:String(e)}function Hv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class sr{static getOptions(e,t,r){var i=[{format:Mr.FORMAT_MILLIONS,group:sr.presetGroup},{format:Mr.FORMAT_SCIENTIFIC_NOTATION,group:sr.presetGroup}],a=St.makeOption("Default",null,sr.defaultGroup,St.isDefaultSelected(t)),o=i.map(d=>St.makeOption(d.format.label,d.format,d.group,Mr.isSameFormat(d.format,t))),l=St.isCustomSelected(t),s=l?t:Mr.makeCustomFormat(),u=St.makeCustomFormatOption(s,sr.customGroup,Mr.DEFAULT_FORMAT_STRING,l,d=>{if(d!=null){var c=Mr.makeCustomFormat(d);Mr.isValid(e,c)&&r(c)}else r(null)});return[a,...o,u]}}co(sr,"defaultGroup",10);co(sr,"presetGroup",20);co(sr,"customGroup",30);const xv=sr;function rl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function nl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rl(Object(t),!0).forEach(function(r){Et(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Et(n,e,t){return e=Bv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bv(n){var e=Uv(n,"string");return typeof e=="symbol"?e:String(e)}function Uv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var il=Fe.module("IrisGridContextMenuHandler"),Vv=150,al="yyyy-MM-dd HH:mm:ss.SSSSSSSSS";class V extends We{static getQuickFilterCondition(e,t,r){return e&&r==="&&"?e.and(t):e&&r==="||"?e.or(t):t}static getQuickFilterText(e,t,r){return r&&e!=null?"".concat(e," ").concat(r," ").concat(t):t}static getOperatorAsText(e){return e==="&&"?"And":"Or"}static getRowOptionFormatted(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:30;return"".concat(e,' "').concat(Qt.truncate(t,r-e.length-3),'"')}constructor(e,t){super(),Et(this,"irisGrid",void 0),Et(this,"debouncedUpdateCustomFormat",void 0),Et(this,"dh",void 0),this.debouncedUpdateCustomFormat=Jt(e.handleFormatSelection,Vv),this.dh=t,this.irisGrid=e}componentWillUnmount(){this.debouncedUpdateCustomFormat.flush()}getHeaderActions(e,t){var{irisGrid:r}=this,{column:i}=t;_(i);var{model:a}=r.props,{columns:o}=a,l=o[e],s=[],{metrics:u,reverseType:d,quickFilters:c,advancedFilters:h,searchFilter:v}=r.state,g=r.getTheme();_(u);var{filterIconColor:f,filterBarActiveColor:p,contextMenuSortIconColor:C,contextMenuReverseIconColor:w}=g,b=a.sort,E=M.getSortForColumn(b,l.name),T=d!==M.REVERSE_TYPE.NONE,{userColumnWidths:S}=u,O=[...S.values()].some(P=>P===0),F=a.getColumnHeaderParentGroup(e,0)===void 0&&!(Ne(a)&&a.hasExpandableRows),R=a.isColumnFrozen(e);if(s.push({title:"Hide Column",group:V.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.hideColumnByVisibleIndex(i)}}),s.push({title:R?"Unfreeze Column":"Freeze Column",group:V.GROUP_HIDE_COLUMNS,disabled:!F,action:()=>{R?this.irisGrid.unFreezeColumnByColumnName(l.name):this.irisGrid.freezeColumnByColumnName(l.name)},order:10}),s.push({title:"Show All Columns",group:V.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.showAllColumns()},disabled:!O}),s.push({title:"Quick Filters",icon:nr,iconColor:p,shortcut:$t.TABLE.TOGGLE_QUICK_FILTER,group:V.GROUP_FILTER,order:10,action:()=>{this.irisGrid.toggleFilterBar(i)}}),s.push({title:"Advanced Filters",icon:h.get(e)?Wa:pi,iconColor:f,group:V.GROUP_FILTER,order:20,action:()=>{this.irisGrid.handleAdvancedMenuOpened(i)}}),s.push({title:"Clear Table Filters",group:V.GROUP_FILTER,order:40,shortcut:$t.TABLE.CLEAR_FILTERS,action:()=>{this.irisGrid.clearAllFilters()},disabled:!(c.size>0||h.size>0||v!=null)}),s.push({title:"Sort by",icon:nr,iconColor:C,group:V.GROUP_SORT,order:10,actions:this.sortByActions(l,e,E)}),s.push({title:"Add Additional Sort",disabled:E&&b.length===1||T&&b.length===1||E&&T&&b.length===2||b.length===0,group:V.GROUP_SORT,order:20,actions:this.additionalSortActions(l,e)}),s.push({title:"Clear Table Sorting",disabled:b.length===0||T&&b.length===1,group:V.GROUP_SORT,action:()=>{this.irisGrid.sortColumn(i,V.COLUMN_SORT_DIRECTION.none)},order:30}),s.push({title:d===M.REVERSE_TYPE.NONE?"Reverse Table":"Clear Reverse Table",icon:nr,iconColor:w,group:V.GROUP_SORT,order:40,disabled:!a.isReversible,shortcut:$t.TABLE.REVERSE,action:()=>{d===M.REVERSE_TYPE.NONE?this.irisGrid.reverse(M.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(M.REVERSE_TYPE.NONE)}}),s.push({title:"Copy Column Name",group:V.GROUP_COPY,action:()=>{var P;Za((P=a.textForColumnHeader(e))!==null&&P!==void 0?P:"").catch(I=>il.error("Unable to copy header",I))}}),M.isDateType(l.type))s.push({title:"Date/Time Format",group:V.GROUP_FORMAT,actions:this.dateFormatActions(l)});else if(M.isNumberType(l.type)){var D;s.push({title:"Number Format",group:V.GROUP_FORMAT,actions:(D=this.numberFormatActions(l))!==null&&D!==void 0?D:void 0})}return s}getCellActions(e,t,r){_(e);var{dh:i,irisGrid:a}=this,{column:o,row:l}=r,{model:s,canCopy:u}=a.props,{columns:d}=s,c=a.getModelRow(l);_(c);var h=s.valueForCell(e,c),v=s.textForCell(e,c),g=d[e],f=[],{quickFilters:p}=a.state,C=a.getTheme(),{filterIconColor:w}=C,{settings:b}=a.props,E=new An(i,{timeZone:b==null?void 0:b.timeZone,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:al}),T=new An(i,{timeZone:b==null?void 0:b.timeZone,showTimeZone:b==null?void 0:b.showTimeZone,showTSeparator:b==null?void 0:b.showTSeparator,defaultDateTimeFormatString:al});if(g==null||l==null)return f;if(s.isFilterable(e)){var S={title:"Filter by Value",icon:nr,iconColor:w,group:V.GROUP_FILTER,order:10,actions:[]};if(h==null)p.get(e)&&S.actions.push({title:"And",actions:this.nullFilterActions(g,p.get(e),"&&"),order:2,group:ce.groups.high}),S.actions.push(...this.nullFilterActions(g));else if(M.isBooleanType(g.type))p.get(e)&&S.actions.push({title:"Or",actions:this.booleanFilterActions(g,v,p.get(e),"||"),order:2,group:ce.groups.high}),S.actions.push(...this.booleanFilterActions(g,v));else if(M.isNumberType(g.type)||M.isCharType(g.type)){_(e);var O=M.isCharType(g.type)?String.fromCharCode(h):"".concat(h);p.get(e)&&S.actions.push({title:"And",actions:this.numberFilterActions(g,O,h,p.get(e),"&&"),order:2,group:ce.groups.high}),S.actions.push(...this.numberFilterActions(g,O,h,p.get(e)))}else if(M.isDateType(g.type)){var F=E.format(h),R=T.format(h);p.get(e)&&S.actions.push({title:"And",actions:this.dateFilterActions(g,F,R,h,p.get(e),"&&"),order:2,group:ce.groups.high}),S.actions.push(...this.dateFilterActions(g,F,R,h,p.get(e)))}else p.get(e)&&S.actions.push({title:"And",actions:this.stringFilterActions(g,v,h,p.get(e),"&&"),order:2,group:ce.groups.high}),S.actions.push(...this.stringFilterActions(g,v,h));S.actions!=null&&S.actions.length>0&&f.push(S)}if(Ne(s)&&s.isRowExpandable(c)){var D=s.groupedColumns.length>0?s.depthForRow(c)-1:0,P=s.valueForCell(D,c),I=P==null?"null":s.textForCell(D,c);f.push({title:V.getRowOptionFormatted(s.isRowExpanded(c)?"Collapse":"Expand",I),group:V.GROUP_EXPAND_COLLAPSE,order:10,action:()=>{s.setRowExpanded(c,!s.isRowExpanded(c))}}),s.isExpandAllAvailable===!0&&f.push({title:V.getRowOptionFormatted("Expand All in",I),group:V.GROUP_EXPAND_COLLAPSE,order:20,action:()=>{s.setRowExpanded(c,!0,!0)}})}Ne(s)&&s.hasExpandableRows&&s.isExpandAllAvailable===!0&&(f.push({title:"Expand Entire Table",group:V.GROUP_EXPAND_COLLAPSE,order:30,action:()=>{s.expandAll()}}),f.push({title:"Collapse Entire Table",group:V.GROUP_EXPAND_COLLAPSE,order:40,action:()=>{s.collapseAll()}}));var A={title:"Go to",iconColor:w,shortcut:$t.TABLE.GOTO_ROW,group:V.GROUP_GOTO,order:10,action:()=>this.irisGrid.toggleGotoRow("".concat(l+1),"".concat(h),g.name)};return f.push(A),u&&(f.push({title:"Copy Cell",group:V.GROUP_COPY,order:10,action:()=>{a.copyCell(o,l)}}),f.push({title:"Copy Cell Unformatted",group:V.GROUP_COPY,order:20,action:()=>{a.copyCell(o,l,!0)}})),f}getNumberValueEqualsFilter(e,t){var{dh:r}=this,i=e.filter();if(t===Number.POSITIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.greaterThan(r.FilterValue.ofNumber(0)));if(t===Number.NEGATIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.lessThan(r.FilterValue.ofNumber(0)));if(Number.isNaN(t))return r.FilterCondition.invoke("isNaN",i);var a=this.getFilterValueForNumberOrChar(e.type,t);return i.eq(a)}getFilterValueForNumberOrChar(e,t){var{dh:r}=this;return M.isCharType(e)?r.FilterValue.ofString(String.fromCharCode(t)):r.FilterValue.ofNumber(t)}onContextMenu(e,t,r){var{irisGrid:i}=this,{y:a,column:o,row:l,columnHeaderDepth:s}=e,u=i.getModelColumn(o),d=i.getModelRow(l),{model:c,canCopy:h}=i.props,{columns:v}=c,{metrics:g,isFilterBarShown:f,quickFilters:p,advancedFilters:C,selectedRanges:w}=i.state;_(g);var{columnHeaderHeight:b,gridY:E,columnHeaderMaxDepth:T}=g,S=[];if(u!=null&&d!=null){var O=c.valueForCell(u,d),F=c.textForCell(u,d),R=v[u],{onContextMenu:D}=i.props;R!=null&&S.push(D({model:c,value:O,valueText:F,column:R,rowIndex:l,columnIndex:o,modelRow:d,modelColumn:u}))}return u!=null&&c.isFilterable(u)&&S.push({title:"Clear Column Filter",group:V.GROUP_FILTER,order:30,action:()=>{this.irisGrid.removeColumnFilter(u)},disabled:!(p.has(u)||C.has(u))}),(f?a<=E:a<=b*T&&s===0)?u!=null&&S.push(...this.getHeaderActions(u,e)):(u!=null&&d!=null&&S.push(...this.getCellActions(u,t,e)),h&&w.length>0&&(S.push({title:"Copy Selection",shortcut:gd.COPY,group:V.GROUP_COPY,order:30,action:()=>{i.copyRanges(w)}}),S.push({title:"Copy Selection w/ Headers",group:V.GROUP_COPY,order:40,action:()=>{i.copyRanges(w,!0)}})),ke(c)&&c.isEditable&&w.length>0&&S.push({title:"Delete Selected Rows",group:V.GROUP_EDIT,order:50,action:()=>{this.irisGrid.deleteRanges(w)}})),S.length===0?!1:(_(i.gridWrapper),ce.triggerMenu(i.gridWrapper,r.clientX,r.clientY,S),!0)}dateFormatActions(e){for(var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,a=i.getColumnFormat(e.type,e.name),o=Av.getOptions(i,a),l=[],s=function(){var{description:c,format:h,group:v,isSelected:g,title:f}=o[u];l.push({title:f,description:c,icon:g?Ci:void 0,group:v,order:u,action:()=>{var p=r.getColumnIndexByName(e.name);_(p),t.irisGrid.handleFormatSelection(p,h)}})},u=0;u<o.length;u+=1)s();return l}numberFormatActions(e){var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,{dh:a}=this,o=i.getColumnFormat(e.type,e.name),l,s=r.getColumnIndexByName(e.name);if(M.isDecimalType(e.type))l=kv.getOptions(a,o,h=>{_(s),this.debouncedUpdateCustomFormat(s,h)});else if(M.isIntegerType(e.type))l=xv.getOptions(a,o,h=>{_(s),this.debouncedUpdateCustomFormat(s,h)});else return il.error("Invalid column type in numberFormatActions"),null;for(var u=[],d=function(){var{format:v,isSelected:g}=l[c];u.push(nl(nl({},l[c]),{},{icon:g?Ci:void 0,order:c,action:()=>{s===void 0&&v&&v.type===mi.TYPE_CONTEXT_CUSTOM||(_(s),t.irisGrid.handleFormatSelection(s,v))}}))},c=0;c<l.length;c+=1)d();return u}stringFilterActions(e,t,r,i,a){var{dh:o}=this,l=o.FilterValue.ofString(r),s=i;s||(s={filter:null,text:null});var{filter:u,text:d}=s,c=[],{model:h}=this.irisGrid.props,v=h.getColumnIndexByName(e.name);return _(v),c.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},a?V.getOperatorAsText(a):""," ",'"',t,'"'),order:1,group:ce.groups.high}),c.push({title:"text is exactly",description:"Show only rows where ".concat(e.name," is ").concat(r," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().eq(l),a),V.getQuickFilterText(d,"=".concat(t),a))},order:10,group:ce.groups.low}),c.push({title:"text is not exactly",description:"Show only rows where ".concat(e.name," is not ").concat(t," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().notEq(l),a),V.getQuickFilterText(d,"!=".concat(t),a))},order:20,group:ce.groups.low}),c.push({title:"text contains",description:"Show only rows where ".concat(e.name," contains ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().contains(l),a),V.getQuickFilterText(d,"~".concat(t),a))},order:30,group:ce.groups.low}),c.push({title:"text does not contain",description:"Show only rows where ".concat(e.name," does not contain ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().contains(l).not(),a),V.getQuickFilterText(d,"!~".concat(t),a))},order:40,group:ce.groups.low}),c.push({title:"text starts with",description:"Show only rows where ".concat(e.name," starts with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().invoke("startsWith",l),a),V.getQuickFilterText(d,"".concat(t,"*"),a))},order:50,group:ce.groups.low}),c.push({title:"text ends with",description:"Show only rows where ".concat(e.name," ends with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().invoke("endsWith",l),a),V.getQuickFilterText(d,"*".concat(t),a))},order:60,group:ce.groups.low}),c}numberFilterActions(e,t,r,i,a){var o=this.getFilterValueForNumberOrChar(e.type,r),l=null,s=null;i&&(l=i.filter,s=i.text);var u=[],d=r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&!Number.isNaN(r),{model:c}=this.irisGrid.props,h=c.getColumnIndexByName(e.name);return _(h),u.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},a?V.getOperatorAsText(a):""," ",'"',t,'"'),order:1,group:ce.groups.high}),u.push({title:"is equal to",description:"Show only rows where ".concat(e.name," is ").concat(t),action:()=>{var v=this.getNumberValueEqualsFilter(e,r);this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,v,a),V.getQuickFilterText(s,"=".concat(t),a))},order:10,group:ce.groups.low}),u.push({title:"is not equal to",description:"Show only rows where ".concat(e.name," is not ").concat(t),action:()=>{var v=this.getNumberValueEqualsFilter(e,r).not();this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,v,a),V.getQuickFilterText(s,"!=".concat(t),a))},order:20,group:ce.groups.low}),d&&!M.isCharType(e.type)&&(u.push({title:"greater than",description:"Show only rows where ".concat(e.name," is greater than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,e.filter().greaterThan(o),a),V.getQuickFilterText(s,">".concat(t),a))},order:30,group:ce.groups.low}),u.push({title:"greater than or equal to",description:"Show only rows where ".concat(e.name," is greater than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,e.filter().greaterThanOrEqualTo(o),a),V.getQuickFilterText(s,">=".concat(t),a))},order:40,group:ce.groups.low}),u.push({title:"less than",description:"Show only rows where ".concat(e.name," is less than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,e.filter().lessThan(o),a),V.getQuickFilterText(s,"<".concat(t),a))},order:50,group:ce.groups.low}),u.push({title:"less than or equal to",description:"Show only rows where ".concat(e.name," is less than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,e.filter().lessThanOrEqualTo(o),a),V.getQuickFilterText(s,"<=".concat(t),a))},order:60,group:ce.groups.low})),u}booleanFilterActions(e,t,r,i){var a=[],{model:o}=this.irisGrid.props,{filter:l,text:s}=r||{},u=o.getColumnIndexByName(e.name);return _(u),a.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},i?V.getOperatorAsText(i):""," ",'"',t??"null",'"'),order:1,group:ce.groups.high}),a.push({title:"true",description:"Show only rows where ".concat(e.name," is true"),action:()=>{this.irisGrid.setQuickFilter(u,V.getQuickFilterCondition(l,e.filter().isTrue(),i),V.getQuickFilterText(s,"true",i))},order:10,group:ce.groups.low}),a.push({title:"false",description:"Show only rows where ".concat(e.name," is false"),action:()=>{this.irisGrid.setQuickFilter(u,V.getQuickFilterCondition(l,e.filter().isFalse(),i),V.getQuickFilterText(s,"false",i))},order:20,group:ce.groups.low}),a.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(u,V.getQuickFilterCondition(l,e.filter().isNull(),i),V.getQuickFilterText(s,"null",i))},order:30,group:ce.groups.low}),a.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(u,V.getQuickFilterCondition(l,e.filter().isNull().not(),i),V.getQuickFilterText(s,"!null",i))},order:40,group:ce.groups.low}),a}dateFilterActions(e,t,r,i,a,o){var{dh:l}=this,s=l.FilterValue.ofNumber(i),u=null,d=null;a&&(u=a.filter,d=a.text);var{model:c}=this.irisGrid.props,h=c.getColumnIndexByName(e.name);_(h);var v=[];return v.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},o?V.getOperatorAsText(o):""," ",'"',r,'"'),order:1,group:ce.groups.high}),v.push({title:"date is",description:"Show only rows where ".concat(e.name," is ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().eq(s),o),V.getQuickFilterText(d,"=".concat(t),o))},order:10,group:ce.groups.low}),v.push({title:"date is not",description:"Show only rows where ".concat(e.name," is not ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().notEq(s),o),V.getQuickFilterText(d,"!=".concat(t),o))},order:20,group:ce.groups.low}),v.push({title:"date is before",description:"Show only rows where ".concat(e.name," is before ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().lessThan(s),o),V.getQuickFilterText(d,"<".concat(t),o))},order:30,group:ce.groups.low}),v.push({title:"date is before or equal",description:"Show only rows where ".concat(e.name," is before or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().lessThanOrEqualTo(s),o),V.getQuickFilterText(d,"<=".concat(t),o))},order:40,group:ce.groups.low}),v.push({title:"date is after",description:"Show only rows where ".concat(e.name," is greater than ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().greaterThan(s),o),V.getQuickFilterText(d,">".concat(t),o))},order:50,group:ce.groups.low}),v.push({title:"date is after or equal",description:"Show only rows where ".concat(e.name," is after or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().greaterThanOrEqualTo(s),o),V.getQuickFilterText(d,">=".concat(t),o))},order:60,group:ce.groups.low}),v}nullFilterActions(e,t,r){var i=null,a=null;t&&(i=t.filter,a=t.text);var o=[],{model:l}=this.irisGrid.props,s=l.getColumnIndexByName(e.name);return _(s),o.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},r?V.getOperatorAsText(r):""," ",'"null"'),order:1,group:ce.groups.high}),o.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(s,V.getQuickFilterCondition(i,e.filter().isNull(),r),V.getQuickFilterText(a,"null",r))},order:10,group:ce.groups.low}),o.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(s,V.getQuickFilterCondition(i,e.filter().isNull().not(),r),V.getQuickFilterText(a,"!null",r))},order:20,group:ce.groups.low}),o}sortByActions(e,t,r){var i=this.irisGrid.getTheme(),{contextMenuSortIconColor:a}=i,o=[{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.ascending)},icon:this.checkColumnSort(r,V.COLUMN_SORT_DIRECTION.ascending)?nr:void 0,iconColor:a},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.descending)},icon:this.checkColumnSort(r,V.COLUMN_SORT_DIRECTION.descending)?nr:void 0,iconColor:a},{title:"Remove Sort",order:50,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.none,!1,!0)},disabled:!r}];return M.isNumberType(e.type)&&(o.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.ascending,!0)},icon:this.checkColumnSort(r,V.COLUMN_SORT_DIRECTION.ascending,!0)?nr:void 0,iconColor:a}),o.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.descending,!0)},icon:this.checkColumnSort(r,V.COLUMN_SORT_DIRECTION.descending,!0)?nr:void 0,iconColor:a})),o}additionalSortActions(e,t){var r=this.irisGrid.getTheme(),{contextMenuSortIconColor:i}=r,a=[{title:"Add Sort By",menuElement:m.createElement("div",{className:"btn-context-menu menu-title"},m.createElement("span",{className:"icon"},m.createElement(ue,{icon:nr,style:{color:i??void 0}})),m.createElement("span",{className:"title"},"Add Additional Sort"),m.createElement("span",{className:"shortcut"},ln.isMacPlatform()?"⌘Click":"Ctrl+Click")),order:1},{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.ascending,!1,!0)}},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.descending,!1,!0)}}];return M.isNumberType(e.type)&&(a.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.ascending,!0,!0)}}),a.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.descending,!0,!0)}})),a}checkColumnSort(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return e?e.direction===t&&e.isAbs===r:!1}}Et(V,"GROUP_EDIT",ce.groups.high+10);Et(V,"GROUP_HIDE_COLUMNS",ce.groups.high+25);Et(V,"GROUP_FILTER",ce.groups.high+50);Et(V,"GROUP_EXPAND_COLLAPSE",ce.groups.high+55);Et(V,"GROUP_GOTO",ce.groups.high+60);Et(V,"GROUP_SORT",ce.groups.high+75);Et(V,"GROUP_COPY",ce.groups.high+100);Et(V,"GROUP_FORMAT",ce.groups.high+150);Et(V,"COLUMN_SORT_DIRECTION",{ascending:"ASC",descending:"DESC",none:null});const $v=V;function Gv(n,e,t){return e=Wv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wv(n){var e=zv(n,"string");return typeof e=="symbol"?e:String(e)}function zv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class jv extends We{constructor(e){super(),Gv(this,"irisGrid",void 0),this.irisGrid=e}onDoubleClick(e){var{column:t,row:r}=e;return r==null||t==null?!1:(this.irisGrid.selectData(t,r),!0)}}const Kv=jv;function Yv(n,e,t){return e=qv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qv(n){var e=Xv(n,"string");return typeof e=="symbol"?e:String(e)}function Xv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qv extends We{constructor(e){super(),Yv(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{y:t,column:r,row:i}=e;if(r!==null&&i===null){var{isFilterBarShown:a,metrics:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:l}=o,s=this.irisGrid.getTheme();if(a&&s.columnHeaderHeight!=null&&s.filterBarHeight!=null&&t>s.columnHeaderHeight*l&&t<=s.columnHeaderHeight*l+s.filterBarHeight)return this.irisGrid.focusFilterBar(r),!0}return!1}onMove(e){var{y:t,column:r}=e,{isFilterBarShown:i,hoverAdvancedFilter:a,metrics:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:l}=o,s=this.irisGrid.getTheme(),u=null;return i&&s.columnHeaderHeight!=null&&s.filterBarHeight!=null&&r!==null&&t>=s.columnHeaderHeight*l&&t<=s.columnHeaderHeight*l+s.filterBarHeight&&(u=r),u!==a&&this.irisGrid.setState({hoverAdvancedFilter:u}),!1}onLeave(e){var{column:t}=e,{hoverAdvancedFilter:r}=this.irisGrid.state;return r!==null&&t!==r&&this.irisGrid.setState({hoverAdvancedFilter:null}),!1}}const Zv=Qv;function Jv(n,e,t){return e=eg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eg(n){var e=tg(n,"string");return typeof e=="symbol"?e:String(e)}function tg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class rg extends We{constructor(e){super(750),Jv(this,"irisGrid",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({expandCellTooltipProps:null})}setCursor(e,t){return Ta.isInTreeBox(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:o,grid:l,state:s,props:u}=this.irisGrid;if(!l)return null;var{metrics:d}=s,{model:c}=u,{canvasContext:h}=l,v=l.getTheme(),g={context:h,mouseX:t,mouseY:r,metrics:d,model:c,theme:v},f=Ne(c)?c.depthForRow(a):null,{left:p,top:C,width:w,height:b}=o.getExpandButtonPosition(g,f);return p==null||w==null||C==null||b==null?null:{left:p,top:C,width:w,height:b}}onMove(e,t){if(Ta.isInTreeBox(e,t)){var{expandCellTooltipProps:r}=this.irisGrid.state,{model:i}=this.irisGrid.props,a=this.getButtonPosition(e),{row:o}=e;_(o);var l=Ne(i)&&i.isRowExpanded(o);Vt(r,a)||this.irisGrid.setState({expandCellTooltipProps:a,expandTooltipDisplayValue:l?"collapse":"expand"})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const ng=rg;function ol(n,e,t){return e=ig(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ig(n){var e=ag(n,"string");return typeof e=="symbol"?e:String(e)}function ag(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class og extends We{constructor(e){super(),ol(this,"irisGrid",void 0),ol(this,"column",void 0),this.column=null,this.irisGrid=e}getColumnFromGridPoint(e){var{column:t,row:r,columnHeaderDepth:i}=e;return t!==null&&r===null&&i===0?t:null}onDown(e){return this.column=this.getColumnFromGridPoint(e),!1}onClick(e,t,r){var i=this.getColumnFromGridPoint(e);if(i!=null&&i===this.column){var a=ln.isModifierKeyDown(r);return this.irisGrid.toggleSort(i,a),!0}return!1}}const lg=og;class sg extends We{constructor(e){super(),this.irisGrid=e}onWheel(e,t,r){var{irisGrid:i}=this,{model:a}=i.props,{metrics:o,pendingRowCount:l}=i.state;_(o);var{bottom:s,rowCount:u,rowHeight:d}=o,{deltaY:c}=j.getScrollDelta(r);return ke(a)&&a.isEditable&&s>=u-1&&c>0&&i.setState({pendingRowCount:l+Math.ceil(c/d)}),!1}}const ug=sg;function ll(n,e,t){return e=dg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dg(n){var e=cg(n,"string");return typeof e=="symbol"?e:String(e)}function cg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class hg extends We{constructor(e){super(),ll(this,"irisGrid",void 0),ll(this,"currentLinkBox",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({linkHoverTooltipProps:null})}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:l,metrics:s,props:u}=t,{model:d}=u;if(r==null||i==null||s==null)return this.currentLinkBox=void 0,!1;var{modelRows:c,modelColumns:h}=s,v=N(c,i),g=N(h,r),f=d.renderTypeForCell(g,v),p=l.getCellRenderer(f);if(!Ss(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:w,x2:b,y2:E}=this.currentLinkBox;if(a>=C&&a<=b&&o>=w&&o<=E)return!0}for(var T=t.updateRenderState(),S=p.getTokenBoxesForVisibleCell(r,i,T),O=0;O<S.length;O+=1)if(Si(S[O].token)){var F=j.translateTokenBox(S[O],s),{x1:R,x2:D,y1:P,y2:I}=F;if(a>=R&&a<=D&&o>=P&&o<=I)return this.currentLinkBox=F,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}onMove(e,t){var r=this.isHoveringLink(e,t);if(r&&this.currentLinkBox!=null&&Si(this.currentLinkBox.token)){var{linkHoverTooltipProps:i}=this.irisGrid.state;if(this.currentLinkBox==null)return!1;var{x1:a,y1:o,x2:l,y2:s}=this.currentLinkBox,{href:u}=this.currentLinkBox.token,d=l-a,c=s-o,h={left:a,top:o+1,width:d,height:c};Vt(i,h)||this.irisGrid.setState({linkHoverTooltipProps:h,linkHoverDisplayValue:u})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const mg=hg;var vg=3e3;function gg(n){var{children:e=null,onEntering:t,onEntered:r,onExiting:i,onExited:a}=n,[o,l]=y.useState(!1),s=y.useRef(),u=is(e),d=y.useCallback(()=>{l(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{l(!1)},vg)},[l,s]);return y.useEffect(()=>{u!==e&&e!=null&&d()},[e,u,l,d]),y.useEffect(()=>()=>s.current?clearTimeout(s.current):void 0,[]),m.createElement(Li,{className:"toast-bottom-bar",isShown:o,onEntering:t,onEntered:r,onExiting:i,onExited:a},e)}class fg extends jr{getGridY(e){var t=super.getGridY(e),{isFilterBarShown:r,theme:i,advancedFilters:a,quickFilters:o,sorts:l,reverseType:s}=e;return r?t+=i.filterBarHeight:(o!=null&&o.size>0||a!=null&&a.size>0)&&(t+=i.filterBarCollapsedHeight),s!==M.REVERSE_TYPE.NONE&&l!=null&&l.length>0&&(t+=i.reverseHeaderBarHeight),t}getUserColumnWidths(){return this.userColumnWidths}}const pg=fg;var Cg=1,Ds=m.memo(n=>{var{model:e,modelColumns:t,top:r,bottom:i,left:a,right:o,filter:l,formatter:s,reverseType:u=M.REVERSE_TYPE.NONE,sorts:d,customColumns:c,movedColumns:h,hiddenColumns:v,alwaysFetchColumns:g,rollupConfig:f=null,totalsConfig:p=null,selectDistinctColumns:C=Ee,pendingRowCount:w=0,pendingDataMap:b=lr,frozenColumns:E,formatColumns:T,columnHeaderGroups:S}=n,O=y.useMemo(()=>Re.getModelViewportColumns(t,a,o,h,v,g,Cg),[t,a,o,h,v,g]);return y.useEffect(function(){e.filter=l},[e,l]),y.useEffect(function(){var R=[...d];u!==M.REVERSE_TYPE.NONE&&R.push(e.dh.Table.reverse()),e.sort=R},[e,d,u]),y.useEffect(function(){e.formatter=s},[e,s]),y.useEffect(function(){e.isCustomColumnsAvailable&&(e.customColumns=c)},[e,c]),y.useEffect(function(){e.isFormatColumnsAvailable&&(e.formatColumns=T)},[e,T]),y.useEffect(function(){e.setViewport(r,i,O)},[e,r,i,O]),y.useEffect(function(){e.isRollupAvailable&&(e.rollupConfig=f)},[e,e.isRollupAvailable,f]),y.useEffect(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=C)},[e,C]),y.useEffect(function(){e.isTotalsAvailable&&(e.totalsConfig=p)},[e,e.isTotalsAvailable,p]),y.useEffect(function(){e.pendingRowCount=w},[e,w]),y.useEffect(function(){e.pendingDataMap=b},[e,b]),y.useEffect(function(){E&&e.updateFrozenColumns(E)},[e,E]),y.useEffect(function(){e.columnHeaderGroups=S},[e,S]),null});Ds.displayName="IrisGridModelUpdater";const wg=Ds;var Fa=16,bg=new Map([["sortUp",Du],["sortDown",Nu],["caretDown",rs],["caretRight",Pu],["cellOverflow",Iu]]),Sg=zt(n=>{var e=bg.get(n);if(e===void 0)throw new Error("Icon is undefined");var t=Array.isArray(e.icon[4])?e.icon[4][0]:e.icon[4],r=new Path2D(t),i=new Path2D,a={a:Fa/e.icon[0],d:Fa/e.icon[1]};return i.addPath(r,a),i},{max:1e3});function Ln(n){return Sg(n)}class Eg{static drawTreeMarker(e,t,r,i,a,o,l){e.save();var{x1:s,y1:u}=a,d=Ln(l?"caretDown":"caretRight"),c=r+s-2,h=i+u+2.5;e.fillStyle=o,e.textAlign="center",e.translate(c,h),e.fill(d),e.restore()}}const Ns=Eg;class Tg extends ws{drawCellContent(e,t,r,i){var a,{metrics:o,model:l}=t,{modelColumns:s,modelRows:u}=o,d=N(u,i),c=s.get(r);if(c!==void 0){var h=l.valueForCell(c,d);if(M.isTextType((a=l.columns[c])===null||a===void 0?void 0:a.type)&&(h===null||h==="")){var v=e.font;e.font="italic ".concat(v),super.drawCellContent(e,t,r,i),e.font=v;return}super.drawCellContent(e,t,r,i)}}getTextRenderMetrics(e,t,r){var i=j.getTextRenderMetrics(e,t,r),{mouseX:a,mouseY:o,metrics:l,theme:s}=e;if(a==null||o==null)return i;var{column:u,row:d}=j.getGridPointFromXY(a,o,l);if(t===u&&r===d){var{left:c}=this.getCellOverflowButtonPosition(a,o,l,s);this.shouldRenderOverflowButton(e)&&c!=null&&(i.width=c-l.gridX-i.x)}return i}getCellOverflowButtonPosition(e,t,r,i){var a={left:null,top:null,width:null,height:null};if(e==null||t==null||r==null)return a;var{rowHeight:o,columnWidth:l,left:s,top:u}=j.getCellInfoFromXY(e,t,r);if(s==null||l==null||u==null)return a;var{width:d,verticalBarWidth:c}=r,{cellHorizontalPadding:h}=i,v=Fa+2*h,g=o,f=Math.min(r.gridX+s+l,d-c),p=f-v,C=r.gridY+u;return{left:p,top:C,width:v,height:g}}shouldRenderOverflowButton(e){var t,r,{context:i,mouseX:a,mouseY:o,metrics:l,model:s,theme:u}=e;if(a==null||o==null)return!1;var{row:d,column:c,modelRow:h,modelColumn:v}=j.getCellInfoFromXY(a,o,l);if(d==null||c==null||h==null||v==null||!M.isStringType(s.columns[v].type))return!1;var g=(t=s.textForCell(v,h))!==null&&t!==void 0?t:"",{width:f}=j.getTextRenderMetrics(e,c,d),p=(r=l.fontWidths.get(u.font))!==null&&r!==void 0?r:Wr;i.save(),i.font=u.font;var C=this.getCachedTruncatedString(i,g,f,p,s.truncationCharForCell(v,h));return i.restore(),g!==""&&C!==g}drawTreeMarker(e,t,r,i,a,o,l){Ns.drawTreeMarker(e,t,r,i,a,o,l)}}const yg=Tg;class Rg extends Cs{drawTreeMarker(e,t,r,i,a,o,l){Ns.drawTreeMarker(e,t,r,i,a,o,l)}}const Og=Rg;function sl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ul(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?sl(Object(t),!0).forEach(function(r){Da(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):sl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Da(n,e,t){return e=Fg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fg(n){var e=Dg(n,"string");return typeof e=="symbol"?e:String(e)}function Dg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var da=Object.freeze({SORT_UP:"sortUp",SORT_DOWN:"sortDown",CARET_DOWN:"caretDown",CARET_RIGHT:"caretRight",CELL_OVERFLOW:"cellOverflow"}),dl=10;class Ri extends Qt{constructor(){super(...arguments),Da(this,"textCellRenderer",new yg),Da(this,"dataBarCellRenderer",new Og)}static isFilterValid(e,t){var r=e==null||e.filter!=null,i=t==null||t.filter!=null;return r&&i}getSortIcon(e){return e?e.direction===M.sortDirection.ascending?Ln(da.SORT_UP):e.direction===M.sortDirection.descending?Ln(da.SORT_DOWN):null:null}drawCanvas(e){super.drawCanvas(e),this.drawScrim(e)}drawGrid(e,t){super.drawGrid(e,t),this.drawCellOverflowButton(t)}drawGridLines(e,t){super.drawGridLines(e,t),this.drawGroupedColumnLine(e,t),this.drawPendingRowLine(e,t)}drawCellContent(e,t,r,i){var{metrics:a,model:o}=t,{modelColumns:l,modelRows:s}=a,u=l.get(r),d=N(s,i);if(u!==void 0){var c=o.renderTypeForCell(u,d),h=this.getCellRenderer(c);h.drawCellContent(e,t,r,i)}}getCellOverflowButtonPosition(e){var{mouseX:t,mouseY:r,metrics:i,theme:a}=e;return this.textCellRenderer.getCellOverflowButtonPosition(t,r,i,a)}shouldRenderOverflowButton(e){return this.textCellRenderer.shouldRenderOverflowButton(e)}drawCellOverflowButton(e){var{context:t,mouseX:r,mouseY:i,theme:a}=e;if(!(r==null||i==null)&&this.shouldRenderOverflowButton(e)){var{left:o,top:l,width:s,height:u}=this.getCellOverflowButtonPosition(e),{cellHorizontalPadding:d,overflowButtonColor:c,overflowButtonHoverColor:h}=a;t.save(),h!=null&&o!=null&&s!=null&&l!=null&&u!=null&&r>=o&&r<=o+s&&i>=l&&i<=l+u?t.fillStyle=h:c!=null&&(t.fillStyle=c);var v=Ln(da.CELL_OVERFLOW);o!=null&&l!=null&&t.translate(o+d,l+2),t.fill(v),t.restore()}}drawGroupedColumnLine(e,t){var{metrics:r,model:i,theme:a}=t,{groupedColumns:o}=i,{maxY:l,allColumnWidths:s,allColumnXs:u}=r;if(!(o.length===0||a.groupedColumnDividerColor==null)){var d=o.length-1,c=u.get(d),h=s.get(d);if(!(c==null||h==null)){var v=c+h+.5;e.strokeStyle=a.groupedColumnDividerColor,e.lineWidth=1,e.beginPath(),e.moveTo(v,0),e.lineTo(v,l),e.stroke()}}}drawPendingRowLine(e,t){var{metrics:r,model:i,theme:a}=t,{allRowYs:o,maxX:l}=r,{pendingRowCount:s}=i;if(!(s<=0)){var u=i.rowCount-i.pendingRowCount-i.floatingBottomRowCount,d=o.get(u);d!=null&&(d-=.5,e.save(),e.setLineDash([4,2]),e.strokeStyle=a.pendingTextColor,e.lineWidth=1,e.beginPath(),e.moveTo(0,d),e.lineTo(l,d),e.stroke(),e.restore())}}drawMouseColumnHover(e,t){var{theme:r,metrics:i,hoverSelectColumn:a}=t;if(!(a==null||r.linkerColumnHoverBackgroundColor==null)){var{allColumnWidths:o,allColumnXs:l,maxY:s}=i,u=N(l,a),d=N(o,a);e.fillStyle=r.linkerColumnHoverBackgroundColor,e.fillRect(u,0,d,s)}}drawMouseRowHover(e,t){var{isSelectingColumn:r}=t;r||super.drawMouseRowHover(e,t)}drawScrim(e){var{context:t,loadingScrimProgress:r,metrics:i,theme:a}=e;if(r!=null){var{width:o,height:l,gridY:s}=i,{scrimBlurSize:u,scrimColor:d}=a;t.save(),t.globalCompositeOperation="color",t.filter="blur(".concat(u,"px)"),d!=null&&(t.fillStyle=d),t.beginPath(),t.rect(0,s,o,l-s),t.clip(),t.fillRect(-u,-u+s,u*2+o,(u*2+(l-s))*r),t.globalCompositeOperation="overlay",t.filter="blur(".concat(u,"px) opacity(15%)"),t.fillRect(-u,-u+s,u*2+o,(u*2+(l-s))*r),t.restore()}}drawColumnHeaders(e,t){super.drawColumnHeaders(e,t);var{theme:r,metrics:i,model:a,reverseType:o}=t,{columnHeaderHeight:l}=i;if(this.drawFilterHeaders(e,t),!(l<=0)){var{sort:s}=a;if(s.length===1){var u=o!==M.REVERSE_TYPE.NONE,d;u?d=r.headerReverseBarColor:d=r.headerSortBarColor,this.drawHeaderBar(e,t,d,u?r.reverseHeaderBarHeight:r.sortHeaderBarHeight)}else s.length>1&&(o!==M.REVERSE_TYPE.NONE&&this.drawHeaderBar(e,t,r.headerReverseBarColor,r.reverseHeaderBarHeight,!1),this.drawHeaderBar(e,t,r.headerSortBarColor,r.sortHeaderBarHeight))}}drawHeaderBar(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{theme:o,metrics:l,model:s}=t,{columnHeaderHeight:u,width:d}=l,c=0;a||(c=i),e.fillStyle=o.headerBarCasingColor,e.fillRect(0,s.columnHeaderMaxDepth*u-i-2+c,d,i+2),e.fillStyle=r,e.fillRect(0,s.columnHeaderMaxDepth*u-i-1+c,d,i)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:l,isMenuShown:s}=t,{columnHeaderMaxDepth:u}=l,{width:d}=o,c=ul(ul({},i),{},{maxX:a===u-1&&i.maxX===d?d-(s?0:30):i.maxX});super.drawColumnHeadersAtDepth(e,t,r,c,a)}drawColumnHeaderAtIndex(e,t,r,i){var a,o;super.drawColumnHeaderAtIndex(e,t,r,i);var{metrics:l,model:s,theme:u}=t,{modelColumns:d,allColumnWidths:c,allColumnXs:h,gridX:v,columnHeaderHeight:g,fontWidths:f}=l,{headerHorizontalPadding:p}=u,C=N(c,r,0),w=N(h,r)+v,b=d.get(r);if(b!=null){var E=(a=s.columns[b])===null||a===void 0?void 0:a.name;if(E!=null){var T=M.getSortForColumn(s.sort,E);if(T){var S=this.getSortIcon(T);if(S){var O=s.textForColumnHeader(b);if(O!==void 0){var F=(o=f.get(e.font))!==null&&o!==void 0?o:Wr;_(F);var R=O.length*F,D=v+w+R+p,{maxX:P}=i;P-=p;var I=v+w+C-p-1,A=D>P?D+1:Math.min(P,I),x=T.direction===M.sortDirection.ascending?-6:-12,H=g*.5+x;e.save(),e.beginPath(),e.rect(w,0,C,g),e.clip(),e.fillStyle=u.headerSortBarColor,e.translate(A,H),e.fill(S),e.restore()}}}}}}drawFilterHeaders(e,t){var{isFilterBarShown:r,quickFilters:i,advancedFilters:a}=t;r?this.drawExpandedFilterHeaders(e,t):(i!=null&&i.size>0||a!=null&&a.size>0)&&this.drawCollapsedFilterHeaders(e,t)}drawExpandedFilterHeaders(e,t){var{metrics:r,model:i,theme:a,quickFilters:o,advancedFilters:l}=t,{filterBarHeight:s}=a;if(!(s<=0)){var{gridX:u,gridY:d,maxX:c,modelColumns:h,visibleColumns:v,allColumnWidths:g,allColumnXs:f}=r,p=d-s;e.save(),e.font=a.font,e.textAlign="left",o!=null&&o.size>0||l!=null&&l.size>0?e.fillStyle=a.filterBarExpandedActiveBackgroundColor:e.fillStyle=a.filterBarExpandedBackgroundColor,e.fillRect(u,p,c,s-1),e.fillStyle=a.headerBarCasingColor,e.fillRect(u,p+s-1,c,1);var C=p;e.strokeStyle=a.filterBarSeparatorColor,e.beginPath();for(var w=0;w<v.length;w+=1){var b=v[w],E=N(h,b),T=N(f,b),S=N(g,b);if(i.isFilterable(E)&&S>0){var O=u+(T??0);e.rect(O+.5,C+.5,S,s-2)}}e.stroke();for(var F=0;F<v.length;F+=1){var R=v[F],D=N(g,R),P=N(f,R),I=P+u;this.drawExpandedFilterHeader(e,t,R,I,D)}e.restore()}}drawExpandedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:l,quickFilters:s,advancedFilters:u}=t,{modelColumns:d,gridY:c}=o,{filterBarHeight:h,filterBarExpandedActiveCellBackgroundColor:v,filterBarErrorColor:g,filterBarHorizontalPadding:f,headerColor:p}=l,C=c-h,w=d.get(r);if(w!==void 0){var b=s.get(w),E=u.get(w);if(!(b==null&&E==null)){var T=null;if(b!=null){var{text:S}=b;if(T=S,T||(T=M.getFilterText(b.filter)),T!=null){var{fontWidths:O}=o,F=O.get(e.font);(F==null||F===0)&&(F=e.measureText("8").width,F||(F=10));var R=(a-f*2)/F;R<=0?T="":T.length>R&&(T="".concat(T.substring(0,R-1),"…"))}}e.save();var D=Ri.isFilterValid(E,b);if(D&&v!=null)e.fillStyle=v,e.fillRect(i+1,C+1,a-1,h-3);else if(g!=null){e.fillStyle=g,e.lineWidth=2,e.strokeStyle=g;var P=i+2,I=C+2,A=a-3,x=h-5;e.strokeRect(P,I,A,x)}if(T!=null&&T!==""){var H=i+f,W=C+h*.5+1;e.fillStyle=p,e.fillText(T,H,W)}e.restore()}}}}drawCollapsedFilterHeaders(e,t){var{metrics:r,theme:i}=t,{headerSeparatorColor:a,filterBarCollapsedHeight:o}=i;if(!(o<=0)){var{gridX:l,gridY:s,maxX:u,visibleColumns:d,allColumnWidths:c,allColumnXs:h}=r,v=s-o;e.save(),e.fillStyle=a,e.fillRect(l,v,u,o);for(var g=0;g<d.length;g+=1){var f=d[g],p=c.get(f),C=h.get(f);if(C!=null&&p!=null){var w=C+l;this.drawCollapsedFilterHeader(e,t,f,w,p)}}e.restore()}}drawCollapsedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:l,quickFilters:s,advancedFilters:u}=t,{modelColumns:d,gridY:c}=o,h=d.get(r);if(h!==void 0){var v=s.get(h),g=u.get(h),{filterBarCollapsedHeight:f,filterBarActiveColor:p,filterBarActiveBackgroundColor:C,filterBarErrorColor:w}=l;e.save();var b=Ri.isFilterValid(g,v);C!=null&&v==null&&g==null?e.fillStyle=C:p!=null&&b?e.fillStyle=p:w!=null&&(e.fillStyle=w);var E=i+1,T=c-f,S=a-1,O=f-1;e.fillRect(E,T,S,O),e.restore()}}}drawRowFooters(e,t){var{metrics:r,model:i,mouseX:a,mouseY:o,theme:l}=t,{gridY:s,gridX:u,maxX:d,modelRows:c,floatingTopHeight:h,floatingBottomHeight:v,floatingRows:g,rowFooterWidth:f,height:p,horizontalBarHeight:C,verticalBarWidth:w,allRowHeights:b,allRowYs:E,width:T}=r;if(!(f<=0||g.length===0)){var{cellHorizontalPadding:S,floatingGridRowColor:O,floatingRowBackgroundColors:F,headerColor:R,rowHoverBackgroundColor:D}=l;e.translate(u,s),e.beginPath();var P=Math.min(d,T-f-w-u);e.fillStyle=F,h>0&&e.rect(P,0,f,h),v>0&&e.rect(P,p-s-C-v,f,v),e.fill();var I=a!=null&&o!=null&&a>=u&&a<=d+f?j.getRowAtY(o,r):null;if(D!=null&&I!==null&&g.includes(I)){e.fillStyle=D;var A=E.get(I),x=b.get(I);_(A),_(x),e.fillRect(P,A,f,x)}if(e.beginPath(),O!=null&&(e.strokeStyle=O),h>0&&(e.moveTo(P+.5,.5),e.lineTo(P+.5,h-.5)),v>0){var H=p-s-C-v;e.moveTo(P-.5,H+.5),e.lineTo(P-.5,H+v-.5)}e.stroke(),e.fillStyle=R,e.textAlign="left";for(var W=P+S,z=0;z<g.length;z+=1){var G=g[z],K=b.get(G),q=E.get(G),k=c.get(G);if(q!=null&&K!=null&&k!=null){var L=q+K*.5;e.fillText(i.textForRowFooter(k),W,L)}}e.translate(-u,-s)}}getExpandButtonPosition(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o}=e,l={left:null,top:null,width:null,height:null};if(r==null||i==null||t==null||!a)return l;var{rowHeight:s,left:u,top:d}=j.getCellInfoFromXY(r,i,a);_(u),_(s),_(d);var{cellHorizontalPadding:c}=o,h=dl+2*c,v=Math.max(u+dl*t,a.gridX),g=a.gridY+d;return{left:v,top:g,width:h,height:s}}}const Ng=Ri,Pg="12px Fira Sans, sans-serif",Ig="#f0f0ee",Ag="#1a171a",J={"grid-bg":"#211f22",font:Pg,white:Ig,black:Ag,"header-bg":"#2d2a2e","header-color":"#f0f0ee","header-height":"30px","header-separator-color":"#211f22","header-separator-hover-color":"#929192","header-hidden-separator-hover-color":"#4878ea","header-sort-bar-color":"#aa9af4","header-reverse-bar-color":"#548d29","header-bar-casing-color":"#211f22","header-font":"600 12px Fira Sans, sans-serif","row-height":"19px","row-background-colors":"#373438 #2d2a2e","selection-color":"rgba(118, 217, 228, 0.09)","selection-outline-color":"#76d9e4","selection-outline-casing-color":"#211f22","row-hover-bg":"#4b494c","selected-row-hover-bg":"rgba(118, 217, 228, 0.25)","scroll-bar-active-selection-tick-color":"rgba(118, 217, 228, 0.5)","scroll-bar-bg":"#322f33","scroll-bar-hover-bg":"#373438","scroll-bar-casing-color":"#555356","scroll-bar-corner-color":"#322f33","scroll-bar-color":"#5b5a5c","scroll-bar-hover-color":"#929192","scroll-bar-active-color":"#c0bfbf","text-color":"#f0f0ee","hyperlink-color":"#4878ea","positive-number-color":"#9edc6f","negative-number-color":"#f95d84","zero-number-color":"#fcd65b","date-color":"#fcd65b","pending-text-color":"#fde38d","error-text-color":"#f95d84","null-string-color":"#929192","filter-bar-active-bg":"#425175","filter-bar-active-color":"#4878ea","filter-bar-expanded-bg":"#373438","filter-bar-expanded-active-bg":"#313849","filter-bar-expanded-active-cell-bg":"#374d80","filter-bar-separator-color":"#929192","filter-bar-error-color":"#f95d84","filter-icon-color":"#4878ea","scrim-color":"#211f22","context-menu-sort-icon-color":"#aa9af4","context-menu-reverse-icon-color":"#548d29","linker-column-hover-bg":"rgba(118, 217, 228, 0.09)","tree-line-color":"#5b5a5c","tree-marker-color":"#c0bfbf","tree-marker-hover-color":"#fcfcfa","grouped-column-divider-color":"#1a171a","floating-grid-row-color":"#555356","floating-row-background-colors":"#403e41","floating-divider-inner-color":"#403e41","floating-divider-outer-color":"#211f22","overflow-button-color":"#c0bfbf","overflow-button-hover-color":"#fcfcfa","zero-line-color":"#5b5a5c","positive-bar-color":"#9edc6f","negative-bar-color":"#f95d84"};var Mg=Object.freeze({backgroundColor:J["grid-bg"],white:J.white,black:J.black,font:J.font,headerBackgroundColor:J["header-bg"],headerColor:J["header-color"],headerSeparatorColor:J["header-separator-color"],headerSeparatorHoverColor:J["header-separator-hover-color"],headerHiddenSeparatorHoverColor:J["header-hidden-separator-hover-color"],headerSortBarColor:J["header-sort-bar-color"],headerReverseBarColor:J["header-reverse-bar-color"],headerBarCasingColor:J["header-bar-casing-color"],headerFont:J["header-font"],rowBackgroundColors:J["row-background-colors"],rowHoverBackgroundColor:J["row-hover-bg"],selectionColor:J["selection-color"],selectionOutlineColor:J["selection-outline-color"],selectionOutlineCasingColor:J["selection-outline-casing-color"],selectedRowHoverBackgroundColor:J["selected-row-hover-bg"],scrollBarBackgroundColor:J["scroll-bar-bg"],scrollBarHoverBackgroundColor:J["scroll-bar-hover-bg"],scrollBarCasingColor:J["scroll-bar-casing-color"],scrollBarCornerColor:J["scroll-bar-corner-color"],scrollBarColor:J["scroll-bar-color"],scrollBarHoverColor:J["scroll-bar-hover-color"],scrollBarActiveColor:J["scroll-bar-active-color"],scrollBarSelectionTickColor:J["selected-row-hover-bg"],scrollBarActiveSelectionTickColor:J["scroll-bar-active-selection-tick-color"],textColor:J["text-color"],hyperlinkColor:J["hyperlink-color"],positiveNumberColor:J["positive-number-color"],negativeNumberColor:J["negative-number-color"],zeroNumberColor:J["zero-number-color"],dateColor:J["date-color"],pendingTextColor:J["pending-text-color"],errorTextColor:J["error-text-color"],nullStringColor:J["null-string-color"],filterBarActiveBackgroundColor:J["filter-bar-active-bg"],filterBarExpandedBackgroundColor:J["filter-bar-expanded-bg"],filterBarExpandedActiveBackgroundColor:J["filter-bar-expanded-active-bg"],filterBarExpandedActiveCellBackgroundColor:J["filter-bar-expanded-active-cell-bg"],filterBarSeparatorColor:J["filter-bar-separator-color"],filterBarActiveColor:J["filter-bar-active-color"],filterBarErrorColor:J["filter-bar-error-color"],filterIconColor:J["filter-icon-color"],scrimColor:J["scrim-color"],contextMenuSortIconColor:J["context-menu-sort-icon-color"],contextMenuReverseIconColor:J["context-menu-reverse-icon-color"],allowRowResize:!1,autoSelectRow:!0,gridColumnColor:null,gridRowColor:null,groupedColumnDividerColor:J["grouped-column-divider-color"],columnHoverBackgroundColor:null,headerHorizontalPadding:12,scrollBarSize:13,scrollBarHoverSize:16,minScrollHandleSize:24,rowHeight:parseInt(J["row-height"],10)||19,columnWidth:100,rowHeaderWidth:0,rowFooterWidth:60,columnHeaderHeight:parseInt(J["header-height"],10)||30,filterBarHeight:30,filterBarCollapsedHeight:5,sortHeaderBarHeight:2,reverseHeaderBarHeight:4,filterBarHorizontalPadding:4,scrimBlurSize:25,minScrimTransitionTime:150,maxScrimTransitionTime:350,scrollSnapToRow:!0,linkerColumnHoverBackgroundColor:J["linker-column-hover-bg"],treeLineColor:J["tree-line-color"],treeMarkerColor:J["tree-marker-color"],treeMarkerHoverColor:J["tree-marker-hover-color"],floatingGridColumnColor:null,floatingGridRowColor:J["floating-grid-row-color"],floatingRowBackgroundColors:J["floating-row-background-colors"],floatingDividerInnerColor:J["floating-divider-inner-color"],floatingDividerOuterColor:J["floating-divider-outer-color"],overflowButtonColor:J["overflow-button-color"],overflowButtonHoverColor:J["overflow-button-hover-color"],zeroLineColor:J["zero-line-color"],positiveBarColor:J["positive-bar-color"],negativeBarColor:J["negative-bar-color"]});const Ps=Mg;function Is(n,e,t){return e=Lg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lg(n){var e=kg(n,"string");return typeof e=="symbol"?e:String(e)}function kg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ca=Fe.module("ColumnStatistics"),_g={SIZE:"Number of Rows"};class xn extends y.Component{static getStatsLabel(e){var t;return(t=_g[e])!==null&&t!==void 0?t:e.split(" ").map(r=>r[0].toUpperCase()+r.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),Is(this,"cancelablePromise",void 0),this.handleError=this.handleError.bind(this),this.handleGenerateStatistics=this.handleGenerateStatistics.bind(this),this.handleStatistics=this.handleStatistics.bind(this),this.cancelablePromise=null,this.state={error:null,loading:!1,statistics:null,numRows:0}}componentDidMount(){this.maybeGenerateStatistics()}componentWillUnmount(){this.cancelablePromise&&this.cancelablePromise.cancel()}maybeGenerateStatistics(){var{model:e}=this.props,t=e.rowCount-e.pendingRowCount;this.setState({numRows:t}),e.isColumnStatisticsAvailable?t<xn.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics():this.setState({loading:!1})}handleGenerateStatistics(){this.setState({loading:!0});var{column:e,model:t}=this.props;this.cancelablePromise=ot.makeCancelable(t.columnStatistics(e)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){ca.debug("Received statistics",e);var{model:t,onStatistics:r}=this.props,i=[];e.statisticsMap.forEach((a,o)=>{i.push({operation:xn.getStatsLabel(o),value:a,type:e.getType(o)})}),e.uniqueValues.forEach((a,o)=>{i.push({operation:o,className:"column-statistics-unique-value",value:a,type:"long"})}),this.setState({loading:!1,statistics:i,numRows:t.rowCount-t.pendingRowCount}),r()}handleError(e){if(e!=null&&ot.isCanceled(e)){ca.debug("Called handleError on a cancelled promise result");return}ca.error("Error generating statistics",e),this.setState({error:e,loading:!1,statistics:null})}render(){var{column:e,model:t}=this.props,{error:r,loading:i,statistics:a,numRows:o}=this.state,l=!i&&r==null&&a==null&&t.isColumnStatisticsAvailable,s=[],u=e.type.substring(e.type.lastIndexOf(".")+1),d=e.description===null?null:e.description;if(a!=null)for(var c=0;c<a.length;c+=1){var{operation:h,className:v,value:g,type:f}=a[c],p=f?t.displayString(g,f):t.displayString(g,e.type,e.name),C=m.createElement(m.Fragment,{key:h},m.createElement("div",{className:ie("column-statistic-operation",v)},h),m.createElement("div",{className:"column-statistic-value"},p));s.push(C)}var w=Ne(t)&&t.hasExpandableRows?"Expanded Rows":"Number of Rows",b=t.displayString(o,"long"),E=t.getColumnIndexByName(e.name);return m.createElement("div",{className:"column-statistics"},m.createElement("div",{className:"column-statistics-title"},e.name,m.createElement("span",{className:"column-statistics-type"}," (",u,")"),m.createElement(os,{className:"column-statistics-copy",tooltip:"Copy column name",copy:e.name})),d!=null&&m.createElement("div",{className:"column-statistics-description"},d),E!=null&&!t.isColumnMovable(E)&&m.createElement("div",{className:"column-statistics-status"},m.createElement(ue,{icon:t.isColumnFrozen(E)?Au:Mu,className:"mr-1"}),t.isColumnFrozen(E)?"Frozen":"Not movable"),m.createElement("div",{className:"column-statistics-grid"},a==null&&m.createElement(m.Fragment,null,m.createElement("div",{className:"column-statistic-operation"},w),m.createElement("div",{className:"column-statistic-value"},b)),s),l&&m.createElement(Z,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics},"Generate Stats"),r!=null&&m.createElement("div",{className:"error-message"},"".concat(r)),a&&!i&&m.createElement(Z,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:m.createElement(ue,{icon:Lu,className:"mr-1"})},"Refresh"),i&&m.createElement("div",{className:"column-statistics-loading"},m.createElement(zr,{className:"mr-2"}),"Calculating Stats..."))}}Is(xn,"AUTO_GENERATE_LIMIT",1e5);const Hg=xn;function cl(n,e,t){return e=xg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xg(n){var e=Bg(n,"string");return typeof e=="symbol"?e:String(e)}function Bg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ri=Fe.module("AdvancedFilterCreatorFilterItem");class ho extends y.PureComponent{static getLabelForFilter(e,t){try{if(M.isNumberType(e)||M.isCharType(e))return Yd(t);if(M.isTextType(e))return Kd(t);if(M.isDateType(e))return qd(t);if(M.isBooleanType(e))return Xd(t);throw new Error("Unrecognized column type: ".concat(e))}catch(r){return ri.warn(r),""}}constructor(e){super(e),cl(this,"typeDropdown",void 0),cl(this,"getCachedIsValid",je((a,o,l,s,u)=>{try{return!l||u.makeAdvancedValueFilter(a,o,l,s)!=null}catch{return!1}})),this.handleDelete=this.handleDelete.bind(this),this.handleTypeChange=this.handleTypeChange.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.typeDropdown=null;var{value:t="",filterTypes:r,selectedType:i=r[0]}=e;this.state={selectedType:i,value:t}}componentDidMount(){var e;(e=this.typeDropdown)===null||e===void 0||e.focus()}componentDidUpdate(e){var{value:t,selectedType:r}=this.props;r!==void 0&&e.selectedType!==r&&this.setState({selectedType:r}),t!==void 0&&e.value!==t&&this.setState({value:t})}handleTypeChange(e){var t=e.target.value;ri.debug2("typeChange",t),this.setState({selectedType:t});var{onChange:r}=this.props,{value:i}=this.state;i!=null&&i.length>0&&r(t,i)}handleValueChange(e){ri.debug2("valueChange");var{value:t}=e.target;this.setState({value:t});var{onChange:r}=this.props,{selectedType:i}=this.state;i!=null&&r(i,t)}handleDelete(){ri.debug("delete");var{onDelete:e}=this.props;e()}render(){for(var{column:e,filterTypes:t,formatter:r,tableUtils:i}=this.props,{selectedType:a,value:o}=this.state,l=!M.isBooleanType(e.type),s=[],u=this.getCachedIsValid(e,a,o,r.timeZone,i),d=0;d<t.length;d+=1){var c=t[d],h=ho.getLabelForFilter(e.type,c),v=m.createElement("option",{key:c,value:c},h);s.push(v)}return m.createElement("div",{className:"advanced-filter-creator-filter-item"},m.createElement("div",{className:"form-row"},m.createElement("div",{className:"form-group col"},m.createElement("select",{className:"form-control custom-select",value:a,onChange:this.handleTypeChange,ref:g=>{this.typeDropdown=g}},s)),l&&m.createElement("div",{className:"form-group col"},m.createElement("div",{className:"input-group"},m.createElement("input",{type:"text",className:ie("form-control",{error:!u}),placeholder:"Enter value",value:o,onChange:this.handleValueChange}))),m.createElement("div",{className:"form-group col-1 px-0"},m.createElement(Z,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:Pr,tooltip:"Remove Filter"}))))}}const Ug=ho;function Na(n,e,t){return e=Vg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vg(n){var e=$g(n,"string");return typeof e=="symbol"?e:String(e)}function $g(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var hl=Fe.module("AdvancedFilterCreatorSelectValueList");class Bn extends y.PureComponent{static indexOf(e,t){for(var r=0;r<t.length;r+=1){var i=t[r];if(i===e||i!=null&&i.valueOf!=null&&e!=null&&e.valueOf!=null&&i.valueOf()===e.valueOf())return r}return-1}constructor(e){super(e),Na(this,"dh",void 0),Na(this,"list",void 0),this.handleSelect=this.handleSelect.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this);var{selectedValues:t,dh:r}=this.props;this.dh=r,this.list=null,this.state={itemCount:0,items:[],offset:0,selectedValues:t,isLoading:!0}}componentDidMount(){var{table:e}=this.props;e&&this.startListening(e)}componentDidUpdate(e){var{filters:t,invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&(e.table&&this.stopListening(e.table),a&&this.startListening(a),this.resetViewport()),e.invertSelection!==r&&this.setState({selectedValues:[]},this.handleSelectionUpdate),e.selectedValues!==i&&this.setState({selectedValues:i},this.handleSelectionUpdate),e.filters!==t&&(a==null||a.applyFilter(t),this.resetViewport())}componentWillUnmount(){var{table:e}=this.props;e&&this.stopListening(e)}handleSelect(e,t){var{invertSelection:r}=this.props,{selectedValues:i}=this.state;i=[...i];var a=Bn.indexOf(t,i);a>=0?i.splice(a,1):i.push(t);var o=a<0;r&&(o=!o);var{offset:l}=this.state,{items:s}=this.state;s=[...s];var u=e-l;u>=0&&u<s.length&&(s[u].isSelected=o),this.setState({items:s,selectedValues:i});var{onChange:d}=this.props;d(i,r)}handleViewportChange(e,t){this.updateViewport(e,t)}handleSelectionUpdate(){this.updateItemSelection()}handleTableUpdate(e){var{table:t,formatter:r}=this.props;if(t){for(var i=e.detail,{offset:a}=i,o=[],l=t.columns[0],s=0;s<i.rows.length;s+=1){var u=i.rows[s],d=u.get(l),c=r.getFormattedString(d,l.type,l.name),h=this.isValueSelected(d);o.push({displayValue:c,value:d,isSelected:h})}hl.debug2("Received table update:",a,o.length);var v=t.size;this.setState({itemCount:v,items:o,offset:a,isLoading:!1})}}isValueSelected(e){var{invertSelection:t}=this.props,{selectedValues:r}=this.state,i=Bn.indexOf(e,r);return t?i<0:i>=0}startListening(e){e.addEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}stopListening(e){e.removeEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}resetViewport(){this.list&&this.list.topRow!=null&&this.list.bottomRow!=null&&this.updateViewport(this.list.topRow,this.list.bottomRow,!0)}updateItemSelection(){var{items:e}=this.state;e=[...e];for(var t=0;t<e.length;t+=1){var r=e[t],{value:i}=r;r.isSelected=this.isValueSelected(i)}this.setState({items:e})}updateViewport(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{table:i}=this.props;if(i!=null){r&&this.setState({isLoading:!0});var a=t-e+1,o=Math.max(0,e-a*3),l=Math.max(o,t+a*3);hl.debug2("Setting viewport",o,",",l),i.setViewport(o,l)}}render(){var{offset:e,isLoading:t,items:r,itemCount:i}=this.state;return m.createElement("div",{className:"select-value-list-wrapper"},m.createElement(fd,{itemCount:i,items:r,offset:e,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:a=>{this.list=a}}),m.createElement(Or,{in:t,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"loading-list"},m.createElement(zr,{className:"loading-spinner-large"}))))}}Na(Bn,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});const Gg=Bn;function kn(n,e,t){return e=Wg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wg(n){var e=zg(n,"string");return typeof e=="symbol"?e:String(e)}function zg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Un extends y.PureComponent{constructor(e){super(e),kn(this,"searchTablePromise",void 0),kn(this,"tableUtils",void 0),kn(this,"updateFilterTimer",void 0),this.handleSelectAllClick=this.handleSelectAllClick.bind(this),this.handleClearAllClick=this.handleClearAllClick.bind(this),this.handleListChange=this.handleListChange.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUpdateFilterTimeout=this.handleUpdateFilterTimeout.bind(this);var{dh:t,invertSelection:r,selectedValues:i}=e;this.tableUtils=new M(t),this.state={filters:[],invertSelection:r,selectedValues:i,searchText:""}}componentDidMount(){this.initSearchTable()}componentDidUpdate(e,t){var{invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&this.initSearchTable(),e.invertSelection!==r&&this.setState({invertSelection:r}),e.selectedValues!==i&&this.setState({selectedValues:i});var{table:o,searchText:l}=this.state;o!==t.table&&(t.table!=null&&t.table.close(),o!=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:r}=this.state;return r==null?null:e?r.totalSize-t.length:t.length}getDisplayedValueText(){var e=this.getDisplayedValuesCount(),{table:t}=this.state,{formatter:r}=this.props;if(e!=null&&t!=null){var i=r.getFormattedString(e,"long"),a=r.getFormattedString(t.totalSize,"long"),o="";return e<1e6&&(o="Displaying "),"".concat(o).concat(i," of ").concat(a)}return null}initSearchTable(){var{table:e}=this.props;if(e!=null){var t=e.copy();this.searchTablePromise=t,this.searchTablePromise.then(r=>{this.searchTablePromise===t?(this.setState({table:r}),this.searchTablePromise=void 0):r.close()})}}handleListChange(e,t){this.setState({selectedValues:e,invertSelection:t});var{onChange:r}=this.props;r(e,t)}handleSearchChange(e){var t=e.target.value;this.setState({searchText:t})}handleSelectAllClick(){this.resetSelection(!0)}handleClearAllClick(){this.resetSelection(!1)}handleUpdateFilterTimeout(){this.updateFilterTimer=void 0,this.updateTableFilter()}resetSelection(e){var t=[];this.setState({invertSelection:e,selectedValues:t});var{onChange:r}=this.props;r(t,e)}startUpdateFilterTimer(){this.stopUpdateFilterTimer(),this.updateFilterTimer=setTimeout(this.handleUpdateFilterTimeout,Un.searchDebounceTime)}stopUpdateFilterTimer(){this.updateFilterTimer!=null&&(clearTimeout(this.updateFilterTimer),this.updateFilterTimer=void 0)}updateTableFilter(){var{table:e,searchText:t}=this.state,{timeZone:r}=this.props,{tableUtils:i}=this,a=e==null?void 0:e.columns[0],o=[];if(a!=null){var l;if(t.length>0){var s=null;M.isCharType(a.type)?s=i.makeQuickFilter(a,t):M.isTextType(a.type)?s=i.makeQuickFilter(a,"~".concat(t),r):s=i.makeQuickFilter(a,">=".concat(t),r),s!=null?o.push(s):l="Invalid search text"}this.setState({filters:o,error:l})}}render(){var{error:e,filters:t,invertSelection:r,selectedValues:i,searchText:a,table:o}=this.state,{dh:l,formatter:s,showSearch:u}=this.props,d=this.getColumnName(),c=this.getDisplayedValueText(),h=d?"Find ".concat(d,"..."):"";return m.createElement("div",{className:"advanced-filter-creator-select-value"},m.createElement("div",{className:u?"form-group":""},m.createElement("label",{htmlFor:"advanced-filter-creator-select-value-input"},"Select Values"),u&&m.createElement("input",{type:"text",className:ie("form-control",{"is-invalid":e!=null}),id:"advanced-filter-creator-select-value-input",placeholder:h,value:a,onChange:this.handleSearchChange})),m.createElement(Gg,{dh:l,table:o,filters:t,invertSelection:r,selectedValues:i,formatter:s,onChange:this.handleListChange}),m.createElement("div",{className:"advanced-filter-creator-select-meta-row"},m.createElement("div",null,m.createElement(Z,{kind:"ghost",onClick:this.handleSelectAllClick},"Select All"),m.createElement(Z,{kind:"ghost",onClick:this.handleClearAllClick},"Clear")),m.createElement(Or,{in:c!=null,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"row-count-info"},c))))}}kn(Un,"searchDebounceTime",250);kn(Un,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});const jg=Un;function nn(n,e,t){return e=Kg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kg(n){var e=Yg(n,"string");return typeof e=="symbol"?e:String(e)}function Yg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Tn=Fe.module("AdvancedFilterCreator");class qt extends y.PureComponent{static makeFilterItem(){return{key:Nr()}}constructor(e){var t,r;super(e),nn(this,"focusTrapContainer",void 0),nn(this,"debounceTimeout",void 0),nn(this,"valuesTablePromise",void 0),nn(this,"getFilterTypes",je(u=>M.getFilterTypes(u))),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=m.createRef();var{options:i}=e,{filterOperators:a,invertSelection:o,selectedValues:l}=i,s=(t=(r=i.filterItems)===null||r===void 0?void 0:r.map(u=>{var{selectedType:d,value:c}=u;return{selectedType:d,value:c,key:Nr()}}))!==null&&t!==void 0?t:[];s.length===0&&s.push(qt.makeFilterItem()),a==null&&(a=[]),o==null&&(o=!0),l==null&&(l=[]),this.state={filterItems:s,filterOperators:a,invertSelection:o,selectedValues:l,valuesTableError:null,valuesTable:void 0}}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){Tn.debug("No values table for this model, just ignore");return}this.valuesTablePromise=M.makeCancelableTablePromise(e.valuesTable(t)),this.valuesTablePromise.then(r=>{var i=r.columns[0].sort().asc();r.applySort([i]),this.setState({valuesTable:r})}).catch(r=>{ot.isCanceled(r)||(Tn.error("Unable to open values table",r),this.setState({valuesTableError:r}))})}handleFocusTrapEnd(){var e,t;((e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelector("button,select,input,textarea")).focus()}handleFocusTrapStart(){var e,t,r=(e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelectorAll("button,select,input,textarea");if(r&&r.length>0){var i=r[r.length-1];i.focus()}}handleAddAnd(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(qt.makeFilterItem()),t=t.concat(wn.and),this.setState({filterItems:e,filterOperators:t})}handleAddOr(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(qt.makeFilterItem()),t=t.concat(wn.or),this.setState({filterItems:e,filterOperators:t})}handleChangeFilterOperator(e,t){var{filterOperators:r}=this.state;r=[...r],pd(t),r[e]=t,this.setState({filterOperators:r}),this.startUpdateTimer()}handleFilterChange(e,t,r){var{filterItems:i}=this.state;i=[...i];var{key:a}=i[e];i[e]={key:a,selectedType:t,value:r},this.setState({filterItems:i}),this.startUpdateTimer()}handleFilterDelete(e){var{filterItems:t,filterOperators:r}=this.state;t=[...t],r=[...r],e<t.length&&t.splice(e,1),e<r.length?r.splice(e,1):e===r.length&&r.splice(r.length-1,1),t.length===0&&t.push(qt.makeFilterItem()),this.setState({filterItems:t,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){Tn.debug("Resetting Advanced Filter"),this.setState({filterItems:[qt.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=ln.isModifierKeyDown(e);this.sortTable(M.sortDirection.descending,t)}handleSortUp(e){var t=ln.isModifierKeyDown(e);this.sortTable(M.sortDirection.ascending,t)}handleSubmit(e){Tn.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){Tn.debug("Submitting and Closing Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate();var{onDone:t}=this.props;t(),e.preventDefault()}handleUpdateTimeout(){this.debounceTimeout=void 0,this.sendUpdate()}shouldShowAddFilter(){var{filterItems:e}=this.state;if(e.length===0)return!1;var t=e[e.length-1],{selectedType:r,value:i}=t;return r!=null&&r.length>0&&i!=null&&i.length>0}sortTable(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{column:r,onSortChange:i}=this.props;i(r,e,t)}startUpdateTimer(){this.stopUpdateTimer(),this.debounceTimeout=setTimeout(this.handleUpdateTimeout,qt.debounceFilterUpdate)}stopUpdateTimer(){this.debounceTimeout!==void 0&&(clearTimeout(this.debounceTimeout),this.debounceTimeout=void 0)}sendUpdate(){var{filterItems:e,filterOperators:t,invertSelection:r,selectedValues:i}=this.state,{column:a,onFilterChange:o,model:l,tableUtils:s}=this.props,{formatter:u}=l,d=e.filter(g=>{var{selectedType:f,value:p}=g;return f!=null&&p!=null&&p!==""}),c=t.filter((g,f)=>g!=null&&e[f].selectedType!=null&&e[f].value!=null&&e[f].value!=="").slice(0,d.length-1),h={filterItems:d,filterOperators:c,invertSelection:r,selectedValues:i},v=s.makeAdvancedFilter(a,h,u.timeZone);o(a,v,h)}render(){var e=this,{column:t,model:r,sortDirection:i,formatter:a,tableUtils:o}=this.props,{filterItems:l,filterOperators:s,invertSelection:u,selectedValues:d,valuesTable:c,valuesTableError:h}=this.state,{dh:v,isValuesTableAvailable:g}=r,f=M.isBooleanType(t.type),p=M.isDateType(t.type),C=this.getFilterTypes(t.type),w=t.type.substring(t.type.lastIndexOf(".")+1),b=[];if(!f&&C.length)for(var E=function(R){var D=l[R],{key:P,selectedType:I,value:A}=D,x=m.createElement(Ug,{key:P,column:t,filterTypes:C,onChange:e.getFilterChangeHandler(R),onDelete:e.getFilterDeleteHandler(R),selectedType:I,value:A,formatter:a,tableUtils:o});if(b.push(x),R<s.length){var H=s[R],W=H===wn.and,z=m.createElement("div",{key:"filterOperator".concat(P),className:"form-row justify-content-end advanced-filter-creator-filter-operator"},m.createElement(Z,{kind:"ghost",className:ie("filter-operator",{active:W}),onClick:()=>e.handleChangeFilterOperator(R,wn.and)},"AND"),m.createElement(Z,{kind:"ghost",className:ie("filter-operator",{active:!W}),onClick:()=>e.handleChangeFilterOperator(R,wn.or)},"OR"));b.push(z)}},T=0;T<l.length;T+=1)E(T);var S=this.shouldShowAddFilter(),O=m.createElement("div",{key:"addFilterItem",className:ie("form-row justify-content-end add-filter-item",{hidden:!S})},m.createElement("span",{className:"text-muted"},m.createElement(ue,{icon:dn})),m.createElement(Z,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!S,tooltip:"Add filter with AND"},"AND"),m.createElement(Z,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!S,tooltip:"Add filter with OR"},"OR"));return b.push(O),m.createElement("div",{className:"advanced-filter-creator",role:"presentation"},m.createElement("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),m.createElement("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer},m.createElement("div",{className:"title-bar"},m.createElement("h6",{className:"advanced-filter-title"},"Advanced Filters"),m.createElement("div",{className:"advanced-filter-menu-buttons"},m.createElement(Z,{kind:"ghost",className:ie("sort-operator",{active:i===M.sortDirection.descending}),onClick:this.handleSortDown,icon:Io,tooltip:"Sort ".concat(t.name," Descending")}),m.createElement(Z,{kind:"ghost",className:ie("sort-operator",{active:i===M.sortDirection.ascending}),onClick:this.handleSortUp,icon:m.createElement(ue,{icon:Io,rotation:180}),tooltip:"Sort ".concat(t.name," Ascending")}))),m.createElement("hr",null),m.createElement("div",{className:"advanced-filter-column-name"},t.name," ",m.createElement("span",{className:"column-type"},"(",w,")")),b,g&&h==null&&m.createElement(m.Fragment,null,!f&&m.createElement("hr",null),m.createElement("div",{className:"form-group"},m.createElement(jg,{dh:v,table:c,onChange:this.handleSelectValueChange,invertSelection:u,selectedValues:d,formatter:a,showSearch:!p,timeZone:a.timeZone}))),m.createElement("div",{className:"form-row justify-content-end"},m.createElement(Z,{kind:"secondary",className:"mr-2",onClick:this.handleReset},"Reset"),m.createElement(Z,{kind:"primary",onClick:this.handleDone},"Done"))),m.createElement("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd}))}}nn(qt,"debounceFilterUpdate",250);nn(qt,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});const qg=qt;function ml(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ml(Object(t),!0).forEach(function(r){Xg(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ml(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xg(n,e,t){return e=Qg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qg(n){var e=Zg(n,"string");return typeof e=="symbol"?e:String(e)}function Zg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gl=Fe.module("Aggregations");function Jg(n){var{isRollup:e,settings:t,onChange:r,onEdit:i}=n,{aggregations:a,showOnTop:o}=t,l=y.useMemo(()=>Om.filter(D=>!a.some(P=>P.operation===D)),[a]),[s,u]=y.useState(l[0]),[d,c]=y.useState([]),h=y.useCallback(D=>{r(vl(vl({},t),D))},[r,t]),v=y.useCallback(D=>{h({aggregations:D})},[h]),g=y.useCallback(D=>{h({showOnTop:D})},[h]),f=y.useCallback(()=>{gl.debug("handleDragStart"),Wt.startDragging()},[]),p=y.useCallback(D=>{var{destination:P,source:I}=D;if(gl.debug("handleDragEnd",P,I),Wt.stopDragging(),P!==null){var A=P.index;I.index<P.index&&(A+=1);var x=[...a],H=Wt.reorder(x,d,x,A),W=Wt.adjustDestinationIndex(A,d),z=[[W,W+H.length-1]];v(x),c(z)}},[v,a,d,c]),C=y.useCallback(D=>{u(D)},[u]),w=y.useCallback(()=>{v([...a,{operation:s,selected:[],invert:!0}])},[a,s,v]),b=y.useCallback(D=>{v(a.filter((P,I)=>I!==D))},[a,v]),E=y.useCallback(D=>{c(D)},[c]),T=y.useCallback(D=>{var P=a[D];Rr.isRollupOperation(P.operation)||i(P)},[a,i]),S=y.useCallback(D=>{g(D.target.value==="true")},[g]);y.useEffect(function(){l.length>0&&!l.includes(s)&&u(l[0])},[l,s]);var O=y.useCallback(D=>{var{item:P,itemIndex:I,isClone:A=!1,selectedCount:x}=D,H=P.operation,W=A?"".concat(x):void 0,z=A?"item-list-item-clone":void 0,G=Rr.isRollupOperation(P.operation),K=!A&&!G;return m.createElement(m.Fragment,null,m.createElement("div",{className:ie("item-list-item-content","draggable-item-list-item-content",z)},m.createElement("span",{className:"title"},H,!e&&G&&m.createElement("span",{className:"small text-warning"},m.createElement(ue,{icon:ku})," Requires rollup")),Ut.renderBadge({text:W}),Ut.renderHandle()),!A&&m.createElement(m.Fragment,null,m.createElement(Z,{kind:"ghost",className:"btn-edit",icon:za,tooltip:"Edit Columns",onClick:()=>i(P),disabled:!K}),m.createElement(Z,{kind:"ghost",className:"btn-delete",icon:Pr,tooltip:"Delete Aggregation",onClick:()=>b(I)})))},[b,i,e]),F=l.length>0,R=a.length>0;return m.createElement("div",{className:"aggregations"},F&&m.createElement("div",{className:"form-inline"},m.createElement(Cd,{onChange:C,value:s},l.map(D=>m.createElement(wd,{value:D,key:D},D))),m.createElement("button",{type:"button",className:"btn btn-link btn-add",onClick:w},m.createElement(ue,{icon:dn}),"Add Aggregation")),F&&R&&m.createElement("hr",null),R&&m.createElement(m.Fragment,null,!e&&m.createElement("div",{className:"form-inline"},m.createElement("label",null,"Placement: "),m.createElement(Ja,{onChange:S,value:"".concat(o)},m.createElement($r,{value:"true"},"Top"),m.createElement($r,{value:"false"},"Bottom"))),m.createElement(Ii,{onDragStart:f,onDragEnd:p},m.createElement(Ut,{className:"selected-aggregations",itemCount:a.length,items:a,renderItem:O,offset:0,onSelectionChange:E,onSelect:T,selectedRanges:d,isMultiSelect:!0}))))}function fl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function gr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fl(Object(t),!0).forEach(function(r){ef(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ef(n,e,t){return e=tf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tf(n){var e=rf(n,"string");return typeof e=="symbol"?e:String(e)}function rf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xt;(function(n){n[n.NONE=0]="NONE",n[n.ASCENDING=1]="ASCENDING",n[n.DESCENDING=2]="DESCENDING"})(xt||(xt={}));var nf=30;function af(n){var{aggregation:e,columns:t,onChange:r}=n,[i,a]=y.useState(-1),[o,l]=y.useState(-1),[s,u]=y.useState(xt.NONE),{invert:d,selected:c}=e,h=y.useRef(null),v=y.useCallback(S=>c.includes(S)?!d:d,[d,c]),g=y.useMemo(()=>{var S=so(t,e.operation);return s!==xt.NONE&&(S=M.sortColumns(S,s===xt.ASCENDING)),S},[t,e.operation,s]),f=y.useMemo(()=>i>=0?g.slice(i,o+1).map(S=>({value:S.name,displayValue:S.name,isSelected:v(S.name)})):[],[g,v,o,i]),p=y.useCallback(S=>{var{name:O}=g[S],F=c.indexOf(O),R=[...c],D=d;F>=0?R.splice(F,1):(R.push(O),R.length===g.length&&(R=[],D=!d)),r(gr(gr({},e),{},{selected:R,invert:D}))},[e,d,g,c,r]),C=y.useCallback(()=>{u(xt.NONE),r(gr(gr({},e),{},{selected:[],invert:!0}))},[e,r]),w=y.useCallback((S,O)=>{a(S),l(O)},[a,l]),b=y.useCallback(()=>{c.length===0?r(gr(gr({},e),{},{invert:!d})):r(gr(gr({},e),{},{selected:[],invert:!0}))},[e,d,r,c]),E=c.length===0?d:null,T=c.length!==0||!d||s!==xt.NONE;return m.createElement("div",{role:"menu",className:"aggregation-edit"},m.createElement("div",{className:"top-menu"},m.createElement("div",{className:"form-inline"},m.createElement(Fr,{checked:E,onChange:b},"Toggle All"),m.createElement("div",{className:"spacer"}),m.createElement(Or,{in:T,timeout:qe.transitionSlowMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},m.createElement(Z,{kind:"ghost",className:"btn-reset",onClick:C},"Reset")),m.createElement(Z,{kind:"ghost",className:ie({active:s===xt.ASCENDING}),icon:ja,tooltip:"Sort ascending",onClick:()=>u(xt.ASCENDING)}),m.createElement(Z,{kind:"ghost",className:ie({active:s===xt.DESCENDING}),icon:Ka,tooltip:"Sort descending",onClick:()=>u(xt.DESCENDING)}))),m.createElement("div",{className:"aggregation-edit-item-list"},m.createElement(Ea,{itemCount:g.length,items:f,offset:i,renderItem:S=>{var{item:O}=S;return m.createElement(Fr,{checked:v(O.value)},O.displayValue)},onSelect:p,onViewportChange:w,rowHeight:nf,focusSelector:"input",ref:h})))}function Pa(){return Pa=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Pa.apply(this,arguments)}function of(n){return y.createElement("svg",Pa({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),y.createElement("path",{fill:"#7DA4FF",d:"M8 26h4v15H8zM15 17h4v24h-4zM22 21h4v20h-4zM29 17h4v24h-4zM36 11h4v30h-4z"})))}function Ia(){return Ia=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Ia.apply(this,arguments)}function lf(n){return y.createElement("svg",Ia({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),y.createElement("path",{fill:"#7DA4FF",d:"M7 34h4v8H7zM12 31h4v11h-4zM17 27h4v15h-4zM22 22h4v20h-4zM27 27h4v15h-4zM32 29h4v13h-4zM37 31h4v11h-4z"})))}function Aa(){return Aa=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Aa.apply(this,arguments)}function sf(n){return y.createElement("svg",Aa({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{fill:"#C1C0C0",d:"M4 4h1v40H4zM44 43v1H5v-1z"}),y.createElement("path",{stroke:"#7DA4FF",d:"M7.984 32.44l7.982-11.378 5.273 3.739 9.952-10.838 2.826 1.894 7.45-5.802"}),y.createElement("path",{stroke:"#BECDEF",d:"M8.244 37.926L17 33.496l5 .87 10.637-10.35 10.615-1.381"})))}function Ma(){return Ma=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Ma.apply(this,arguments)}function uf(n){return y.createElement("svg",Ma({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{d:"M24 10c7.732 0 14 6.268 14 14s-6.268 14-14 14-14-6.268-14-14h14V10z",fill:"#80A6FF"}),y.createElement("path",{d:"M10 24c0-7.732 6.268-14 14-14v14H10z",fill:"#C1C0C0"})))}function La(){return La=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},La.apply(this,arguments)}function df(n){return y.createElement("svg",La({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),y.createElement("path",{fill:"#939293",d:"M44 34v1H4v-1zM44 25v1H4v-1zM44 16v1H4v-1z"}),y.createElement("circle",{fill:"#7DA4FF",cx:9.5,cy:37.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:16.5,cy:30.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:22.5,cy:36.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:28.5,cy:30.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:15.5,cy:38.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:23.5,cy:25.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:19.5,cy:19.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:29.5,cy:19.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:32.5,cy:26.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:36.5,cy:13.5,r:1.5})))}function ka(){return ka=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},ka.apply(this,arguments)}function cf(n){return y.createElement("svg",ka({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("rect",{width:"48",height:"48",fill:"none"}),y.createElement("rect",{x:"26",y:"10",width:"15",height:"4",fill:"#9FDE70"}),y.createElement("rect",{x:"26",y:"22",width:"15",height:"4",fill:"#9FDE70"}),y.createElement("rect",{x:"26",y:"28",width:"15",height:"4",fill:"#FFD95C"}),y.createElement("rect",{x:"26",y:"34",width:"15",height:"4",fill:"#9FDE70"}))}function _a(){return _a=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},_a.apply(this,arguments)}function hf(n){return y.createElement("svg",_a({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("rect",{width:"48",height:"48",fill:"none"}),y.createElement("rect",{x:"4",y:"16",width:"40",height:"4",fill:"#FFD95C"}),y.createElement("rect",{x:"4",y:"10",width:"40",height:"4",fill:"#78DCE8"}),y.createElement("rect",{x:"4",y:"34",width:"40",height:"4",fill:"#78DCE8"}))}var pl=Fe.module("ChartBuilder");class Bt extends y.PureComponent{static getMaxSeriesCount(e,t){switch(t){case e.plot.SeriesPlotStyle.PIE:return 1;case e.plot.SeriesPlotStyle.HISTOGRAM:return 0;default:return 100}}static makeSeriesItem(e){return{id:Nr.generate(),value:e}}static makeDefaultSeriesItems(e,t,r){var i=Bt.getMaxSeriesCount(e,t);if(i===0||r==null||r.length===0)return[];var a=r.length>1?r[1].name:r[0].name;return[Bt.makeSeriesItem(a)]}static getDefaultXAxis(e,t){return t!=null&&t.length>0?t[0].name:null}constructor(e){super(e),this.handleAddSeries=this.handleAddSeries.bind(this),this.handleLinkStateChange=this.handleLinkStateChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSeriesChange=this.handleSeriesChange.bind(this),this.handleSeriesDeleteClick=this.handleSeriesDeleteClick.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleTypeClick=this.handleTypeClick.bind(this),this.handleXAxisChange=this.handleXAxisChange.bind(this),this.sendChange=this.sendChange.bind(this);var{model:t}=e,{columns:r,dh:i}=t,a=this.getTypes()[0],o=Bt.getDefaultXAxis(a,r),l=Bt.makeDefaultSeriesItems(i,a,r);this.state={type:a,seriesItems:l,xAxis:o,isLinked:!0}}getTypes(){var{model:e}=this.props,{dh:t}=e;return[t.plot.SeriesPlotStyle.LINE,t.plot.SeriesPlotStyle.BAR,t.plot.SeriesPlotStyle.SCATTER,t.plot.SeriesPlotStyle.PIE]}getTypeName(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return"Line";case r.plot.SeriesPlotStyle.BAR:return"Bar";case r.plot.SeriesPlotStyle.SCATTER:return"Scatter";case r.plot.SeriesPlotStyle.PIE:return"Pie";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Histogram";default:return e}}getTypeIcon(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return m.createElement(sf,null);case r.plot.SeriesPlotStyle.BAR:return m.createElement(of,null);case r.plot.SeriesPlotStyle.SCATTER:return m.createElement(df,null);case r.plot.SeriesPlotStyle.PIE:return m.createElement(uf,null);case r.plot.SeriesPlotStyle.HISTOGRAM:return m.createElement(lf,null);default:return null}}getXAxisLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Labels";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Data";default:return"X-Axis"}}getSeriesLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Values";default:return"Series"}}handleAddSeries(){this.setState(e=>{var{seriesItems:t}=e,r=[...t],{model:i}=this.props,{columns:a}=i;return r.push({id:Nr.generate(),value:a[0].name}),{seriesItems:r}},this.sendChange)}handleLinkStateChange(e){this.setState({isLinked:e.target.value==="true"},this.sendChange)}handleReset(){var{model:e}=this.props,{columns:t,dh:r}=e,i=this.getTypes()[0],a=Bt.getDefaultXAxis(i,t),o=Bt.makeDefaultSeriesItems(r,i,t),l=!0;this.setState({type:i,seriesItems:o,xAxis:a,isLinked:l},this.sendChange)}handleSeriesChange(e){var{value:t}=e.target,r=e.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:o}=a;return o=[...o],o[i].value=t,{seriesItems:o}},this.sendChange)}handleSeriesDeleteClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:o}=a,l=[...o];return l.splice(i,1),{seriesItems:l}},this.sendChange)}handleSubmit(e){e.preventDefault();var{onSubmit:t}=this.props,{type:r,seriesItems:i,xAxis:a,isLinked:o}=this.state,l=i.map(s=>s.value);t({type:r,series:l,xAxis:a,isLinked:o})}handleTypeClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10),a=this.getTypes()[i];pl.debug2("handleTypeSelect",a),this.setState(o=>{var{model:l}=this.props,{dh:s}=l,u=Bt.getMaxSeriesCount(s,a),{seriesItems:d}=o;if(d=d.slice(0,u),d.length===0&&u>0){var{columns:c}=l;d=Bt.makeDefaultSeriesItems(s,a,c)}return{type:a,seriesItems:d}},this.sendChange)}handleXAxisChange(e){var t=e.target.value;pl.debug2("x-axis change",t),this.setState({xAxis:t},this.sendChange)}sendChange(){var{onChange:e}=this.props,{isLinked:t,type:r,seriesItems:i,xAxis:a}=this.state,o=i.map(l=>l.value);e({type:r,series:o,xAxis:a,isLinked:t})}render(){var{model:e}=this.props,{columns:t,dh:r}=e,{seriesItems:i,type:a,xAxis:o,isLinked:l}=this.state,s=Bt.getMaxSeriesCount(r,a),u=this.getXAxisLabel(a),d=this.getSeriesLabel(a),c=i.length>0,h=i.length<s;return m.createElement("div",{className:"chart-builder"},m.createElement("form",{onSubmit:this.handleSubmit},m.createElement("div",{className:"form-row"},m.createElement("label",null,"Select Chart Type"),m.createElement("div",{className:"form-row"},this.getTypes().map((v,g)=>{var f=v;return m.createElement("div",{key:f,className:"col col-chart-type"},m.createElement("button",{type:"button",className:ie("btn","btn-icon","btn-chart-type",{active:v===a}),"data-index":g,onClick:this.handleTypeClick},this.getTypeIcon(v),this.getTypeName(v)))}))),m.createElement("hr",null),m.createElement("div",{className:"form-row form-inline"},m.createElement("label",{className:"col-2 label-left"},u),m.createElement("select",{className:"form-control custom-select select-x-axis col",value:o,onChange:this.handleXAxisChange},t.map(v=>m.createElement("option",{key:v.name,value:v.name},v.name)))),c&&m.createElement("hr",null),i.map((v,g)=>m.createElement("div",{className:"form-row form-inline form-series-item",key:v.id,"data-testid":"form-series-item-".concat(g)},m.createElement("label",{className:"col-2 label-left"},g===0?d:""),m.createElement("select",{className:"form-control custom-select select-series col",value:v.value,onChange:this.handleSeriesChange,"data-testid":"select-series-item-".concat(g),"data-index":g},t.map(f=>m.createElement("option",{key:f.name,value:f.name,"data-index":g},f.name))),i.length>1&&m.createElement(Z,{kind:"ghost",className:"btn-delete-series ml-2 px-2","data-index":g,"data-testid":"delete-series-".concat(g),onClick:this.handleSeriesDeleteClick,icon:Pr,tooltip:"Delete"}))),h&&m.createElement("div",{className:"form-row"},m.createElement("div",{className:"col-2"}),m.createElement(Z,{kind:"ghost",className:"btn-add-series mt-1",onClick:this.handleAddSeries,icon:dn},"Add Series")),m.createElement("div",{className:"form-row chart-builder-link"},m.createElement("label",{className:"col-2 label-right"},m.createElement("div",{className:"fa-md fa-layers"},m.createElement(ue,{mask:_u,icon:Ya,transform:"right-5 down-5"}),m.createElement(ue,{icon:l?Hu:xu,transform:"grow-2 right-8 down-6"}))),m.createElement(Ja,{onChange:this.handleLinkStateChange,value:"".concat(l)},m.createElement($r,{value:"true"},"Sync State"),m.createElement($r,{value:"false"},"Freeze State"))),m.createElement("div",{className:"form-row"},m.createElement("div",{className:"col-2 label-right"}),m.createElement("div",{className:"col chart-builder-link-info"},l?"Charts with synced state will update to match any filters or user modifications applied to the parent table.":"Freeze State disconnects the chart state from the parent table. New filters or user modifications on the parent table will not be applied.")),m.createElement("div",{className:ie("form-row","justify-content-end","my-3")},m.createElement(Z,{kind:"secondary",className:"btn-reset",onClick:this.handleReset},"Reset"),m.createElement(Z,{kind:"primary",type:"submit",className:"btn-submit"},"Create"))))}}const mf=Bt;function Cl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Cl(Object(t),!0).forEach(function(r){Oi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Cl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oi(n,e,t){return e=gf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gf(n){var e=ff(n,"string");return typeof e=="symbol"?e:String(e)}function ff(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class As extends y.Component{constructor(e){super(e),Oi(this,"editorContainer",void 0),Oi(this,"editor",void 0),this.handleContentChanged=this.handleContentChanged.bind(this),this.handleEditorFocus=this.handleEditorFocus.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleContainerClick=this.handleContainerClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.state={isEditorFocused:!1,isEditorEmpty:!0},this.editorContainer=null}componentDidMount(){this.initEditor()}componentWillUnmount(){this.destroyEditor()}initEditor(){var e,{value:t,editorSettings:r}=this.props,i=vf({copyWithSyntaxHighlighting:"false",fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"groovyDB",lineDecorationsWidth:8,lineNumbers:"off",minimap:{enabled:!1},renderLineHighlight:"none",scrollbar:{arrowSize:0,horizontal:"hidden",horizontalScrollbarSize:0},scrollBeyondLastLine:!1,padding:{top:6,bottom:6},tabCompletion:"off",useTabStops:!0,value:t,wordWrap:"on",automaticLayout:!0},r);if(!this.editorContainer)throw new Error("editorContainer is null");this.editor=on.create(this.editorContainer,i),this.editor.layout(),(e=this.editor.getModel())===null||e===void 0||e.updateOptions({tabSize:0}),this.editor.onKeyDown(this.handleKeyDown),this.editor.onDidChangeModelContent(this.handleContentChanged),this.editor.onDidFocusEditorText(this.handleEditorFocus),this.editor.onDidBlurEditorText(this.handleEditorBlur)}destroyEditor(){var e;(e=this.editor)===null||e===void 0||e.dispose(),this.editor=void 0}handleContentChanged(){var e,t,{onContentChanged:r}=this.props,i=(e=this.editor)===null||e===void 0||(t=e.getModel())===null||t===void 0?void 0:t.getValue();i!==void 0&&this.setState({isEditorEmpty:i.length===0}),r(i)}handleEditorFocus(){this.setState({isEditorFocused:!0})}handleEditorBlur(){var e,t,r,i=(e=(t=this.editor)===null||t===void 0||(r=t.getModel())===null||r===void 0?void 0:r.getValue())!==null&&e!==void 0?e:"";this.setState({isEditorEmpty:i.length===0,isEditorFocused:!1})}handleContainerClick(){var e,{isEditorFocused:t}=this.state;t||(e=this.editor)===null||e===void 0||e.focus()}handleKeyDown(e){var{onTab:t,editorIndex:r}=this.props;e.code==="Tab"&&(e.stopPropagation(),e.preventDefault(),t(r,e.shiftKey))}render(){var{value:e,invalid:t}=this.props,{isEditorFocused:r,isEditorEmpty:i}=this.state;return m.createElement("div",{className:ie("input-editor-wrapper",{focused:r,invalid:t}),role:"presentation",onClick:this.handleContainerClick},m.createElement("div",{className:"editor-container",ref:a=>{this.editorContainer=a},"data-testid":"custom-column-formula"}),i&&!e&&m.createElement("div",{className:"editor-placeholder text-muted"},"Column Formula"))}}Oi(As,"defaultProps",{value:"",onContentChanged:()=>{},editorSettings:{},editorIndex:0,onTab:()=>{},invalid:!1});function Fi(){return Fi=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Fi.apply(this,arguments)}var wl=Object.freeze({NAME:"name",FORMULA:"formula"}),pf=()=>{};function Cf(n){var{eventKey:e,name:t,inputIndex:r,formula:i,onChange:a,onDeleteColumn:o,onTabInEditor:l,invalid:s,isDuplicate:u}=n,d=t===""||ro.isValidColumnName(t),c=y.useCallback(h=>{h!==void 0&&(h.replace(/(\r\n|\n|\r)/gm,""),a(e,wl.FORMULA,h))},[a,e]);return m.createElement(es,{draggableId:e,index:r,disableInteractiveElementBlocking:!0},(h,v)=>m.createElement("div",Fi({className:ie("draggable-container",{dragging:v.isDragging}),ref:h.innerRef},h.draggableProps),m.createElement("div",{className:"custom-column-input-container"},m.createElement("div",{className:"pb-3"},m.createElement("div",{className:"d-flex flex-row custom-column-name"},m.createElement("input",{className:ie("form-control custom-column-input",{"is-invalid":s||!d||u}),placeholder:"Column Name",value:t,onChange:g=>{a(e,wl.NAME,g.target.value)}}),m.createElement(Z,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{o(e)},icon:Pr,tooltip:"Delete custom column"}),m.createElement(Z,Fi({kind:"ghost",className:"btn-drag-handle",onClick:pf},h.dragHandleProps,{icon:qa,tooltip:"Drag column to re-order"}))),(!d||u)&&m.createElement("p",{className:"validate-label-error text-danger mb-0 mt-2 pl-1"},d?"Duplicate name":"Invalid name")),m.createElement(As,{editorSettings:{language:"deephavenDb"},editorIndex:r,value:i,onContentChanged:c,onTab:l,invalid:s})),m.createElement("hr",null)))}function Ha(n,e,t){return e=wf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wf(n){var e=bf(n,"string");return typeof e=="symbol"?e:String(e)}function bf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ha=[];class Ms extends Kh{constructor(e){super(),Ha(this,"dh",void 0),Ha(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,r){super.addEventListener(e,t,r),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,r){super.removeEventListener(e,t,r),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get originalColumns(){return this.columns}get layoutHints(){return null}get frontColumns(){return ha}get backColumns(){return ha}get frozenColumns(){return ha}isColumnFrozen(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}}Ha(Ms,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED"}));const me=Ms;function xa(){return xa=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},xa.apply(this,arguments)}function bl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Sf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bl(Object(t),!0).forEach(function(r){an(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function an(n,e,t){return e=Ef(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ef(n){var e=Tf(n,"string");return typeof e=="symbol"?e:String(e)}function Tf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class yr extends y.Component{static makeCustomColumnInputEventKey(){return Nr.generate()}static createCustomColumnInput(){return{eventKey:Nr.generate(),name:"",formula:""}}constructor(e){super(e),an(this,"container",void 0),an(this,"successButtonTimer",void 0),an(this,"getInput",je((t,r)=>t.find(i=>i.eventKey===r))),an(this,"getInputIndex",je((t,r)=>t.findIndex(i=>i.eventKey===r))),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleSaveClick=this.handleSaveClick.bind(this),this.handleInputChange=this.handleInputChange.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleCustomColumnUpdated=this.handleCustomColumnUpdated.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.resetRequestFailed=this.resetRequestFailed.bind(this),this.handleEditorTabNavigation=this.handleEditorTabNavigation.bind(this),this.state={inputs:[],isCustomColumnApplying:!1,errorMessage:null,hasRequestFailed:!1,isSuccessShowing:!1},this.container=null,this.successButtonTimer=null}componentDidMount(){var{customColumns:e}=this.props;this.parseCustomColumns(e),this.startListening()}componentWillUnmount(){this.stopListening(),this.successButtonTimer&&clearTimeout(this.successButtonTimer)}resetErrorMessage(){this.setState({errorMessage:null})}startListening(){var{model:e}=this.props;e.addEventListener(me.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.addEventListener(me.EVENT.UPDATED,this.handleCustomColumnUpdated),e.addEventListener(me.EVENT.REQUEST_FAILED,this.handleRequestFailed)}stopListening(){var{model:e}=this.props;e.removeEventListener(me.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.removeEventListener(me.EVENT.UPDATED,this.handleCustomColumnUpdated),e.removeEventListener(me.EVENT.REQUEST_FAILED,this.handleRequestFailed)}parseCustomColumns(e){if(e.length>0){var t=e.map(r=>{var i=r.split(/=(.+)/,2);return{eventKey:yr.makeCustomColumnInputEventKey(),name:i[0],formula:i[1]}});this.setState({inputs:t})}else this.setState({inputs:[yr.createCustomColumnInput()]})}handleAddColumnClick(){var{inputs:e}=this.state,t=[...e];t.push(yr.createCustomColumnInput()),this.setState({inputs:t})}handleDeleteColumn(e){var{inputs:t}=this.state,r=this.getInputIndex(t,e),i=[...t];i.splice(r,1),i.length===0&&i.push(yr.createCustomColumnInput()),this.setState({inputs:i})}handleInputChange(e,t,r){var{inputs:i}=this.state,a=this.getInputIndex(i,e),o=this.getInput(i,e),l=Sf({},o);l[t]=r;var s=[...i];s.splice(a,1,l),this.setState({inputs:s})}handleCustomColumnUpdated(){var{isCustomColumnApplying:e}=this.state;e&&this.setState({isCustomColumnApplying:!1,isSuccessShowing:!0},()=>{this.successButtonTimer=setTimeout(()=>this.setState({isSuccessShowing:!1}),yr.SUCCESS_SHOW_DURATION)})}handleRequestFailed(e){var t=e,{isCustomColumnApplying:r}=this.state;r&&this.setState({isCustomColumnApplying:!1,errorMessage:m.createElement(m.Fragment,null,m.createElement("p",null,m.createElement(ue,{icon:In})," Failed to apply custom columns."),m.createElement("div",{className:"error-box"},t.detail.errorMessage,m.createElement("br",null),"Table configuration:"," ",JSON.stringify(t.detail.configuration))),hasRequestFailed:!0})}handleDragEnd(e){if(Wt.stopDragging(),!!e.destination){var{inputs:t}=this.state,r=e.source.index,i=e.destination.index,a=[...t],o=t[r];a.splice(r,1),a.splice(i,0,o),this.setState({inputs:a})}}handleEditorTabNavigation(e,t){var{inputs:r}=this.state;if(t){var i;((i=this.container)===null||i===void 0?void 0:i.querySelectorAll(".btn-drag-handle")[e]).focus();return}if(e===r.length-1){var a,o;(a=this.container)===null||a===void 0||(o=a.querySelector(".btn-add-column"))===null||o===void 0||o.focus()}else{var l,s=e+1;((l=this.container)===null||l===void 0?void 0:l.querySelectorAll(".custom-column-input")[s]).focus()}}handleSaveClick(){var{onSave:e,customColumns:t}=this.props,{inputs:r,isCustomColumnApplying:i}=this.state;if(!i){var a=[];r.forEach(o=>{var{name:l,formula:s}=o;l&&s&&a.push("".concat(l,"=").concat(s))}),this.resetErrorMessage(),this.setState({isCustomColumnApplying:a.length>0||t.length>0}),e(a)}}resetRequestFailed(){this.setState(e=>{var{hasRequestFailed:t}=e;return t?{hasRequestFailed:!1}:null})}renderInputs(){var{inputs:e,hasRequestFailed:t}=this.state,r=new Map;return e.forEach(i=>{var a,{name:o}=i;return r.set(o,((a=r.get(o))!==null&&a!==void 0?a:0)+1)}),e.map((i,a)=>{var o,{eventKey:l,name:s,formula:u}=i,d=((o=r.get(s))!==null&&o!==void 0?o:0)>1;return m.createElement(Cf,{key:l,inputIndex:a,eventKey:l,name:s,formula:u,onChange:this.handleInputChange,onDeleteColumn:this.handleDeleteColumn,onTabInEditor:this.handleEditorTabNavigation,invalid:t,isDuplicate:d})})}renderSaveButton(){var{inputs:e,isCustomColumnApplying:t,isSuccessShowing:r}=this.state,i=e.length>1?"Save Columns":"Save Column",a=e.every(s=>{var{name:u}=s;return u===""||ro.isValidColumnName(u)}),o=e.filter(s=>{var{name:u}=s;return u!==""}).map(s=>{var{name:u}=s;return u}),l=new Set(o).size===o.length;return m.createElement(Z,{kind:r?"success":"primary",className:ie("btn-apply",{"btn-spinner":t}),disabled:r||t||!a||!l,onClick:this.handleSaveClick},t&&m.createElement("span",null,m.createElement(zr,null),m.createElement("span",{className:"btn-normal-content"},"Applying")),!r&&!t&&i,r&&m.createElement(m.Fragment,null,m.createElement(ue,{icon:ts})," Success"))}render(){var{onCancel:e}=this.props,{errorMessage:t}=this.state;return m.createElement("div",{role:"presentation",className:"custom-column-builder-container",ref:r=>{this.container=r},onClick:this.resetRequestFailed,onFocus:this.resetRequestFailed},m.createElement("hr",null),m.createElement(Ii,{onDragStart:Wt.startDragging,onDragEnd:this.handleDragEnd},m.createElement(Ga,{droppableId:"droppable-custom-columns"},(r,i)=>m.createElement("div",xa({ref:r.innerRef},r.droppableProps,{className:ie("droppable-container",{dragging:i.draggingFromThisWith})}),this.renderInputs(),r.placeholder))),m.createElement("div",{className:"pt-1 px-3"},m.createElement(Z,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,icon:dn},"Add Another Column")),m.createElement("div",{className:"custom-column-builder-footer"},t&&m.createElement("div",{className:"error-message"},t),m.createElement("div",{className:"d-flex justify-content-end"},m.createElement(Z,{kind:"secondary",className:"mr-2",onClick:e},"Cancel"),this.renderSaveButton())))}}an(yr,"SUCCESS_SHOW_DURATION",750);const yf=yr;var Ba;(function(n){n.ADVANCED_SETTINGS="ADVANCED_SETTINGS",n.AGGREGATIONS="AGGREGATIONS",n.AGGREGATION_EDIT="AGGREGATIONS_EDIT",n.CHART_BUILDER="CHART_BUILDER",n.CUSTOM_COLUMN_BUILDER="CUSTOM_COLUMN_BUILDER",n.QUICK_FILTERS="QUICK_FILTERS",n.ROLLUP_ROWS="ROLLUP_ROWS",n.SEARCH_BAR="SEARCH_BAR",n.SELECT_DISTINCT="SELECT_DISTINCT",n.TABLE_EXPORTER="TABLE_EXPORTER",n.VISIBILITY_ORDERING_BUILDER="VISIBILITY_ORDERING_BUILDER",n.CONDITIONAL_FORMATTING="CONDITIONAL_FORMATTING",n.CONDITIONAL_FORMATTING_EDIT="CONDITIONAL_FORMATTING_EDIT",n.GOTO="GOTO"})(Ba||(Ba={}));const Se=Ba;function Ua(){return Ua=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Ua.apply(this,arguments)}function Br(n,e,t){return e=Rf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rf(n){var e=Of(n,"string");return typeof e=="symbol"?e:String(e)}function Of(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yn=Fe.module("RollupRows"),Ff=150,ni="grouped-rollup-rows",ii="ungrouped-rollup-rows";class vt extends y.Component{static renderColumn(e){var{item:t,isClone:r,selectedCount:i}=e,a=t==null?void 0:t.name,o=r!==void 0&&r?"".concat(i):void 0,l=r!==void 0&&r?"item-list-item-clone":"";return Ut.renderTextItem({text:a,badgeText:o,className:l})}static addGroupings(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length;if(t==null||t.length===0)return e;var i=r,a=e.filter((o,l)=>t.includes(o)?(l<i&&(i-=1),!1):!0);return a.splice(i,0,...t),a}static isGroupable(e){return!M.isDecimalType(e.type)}constructor(e){super(e),Br(this,"ungroupedList",void 0),Br(this,"groupedList",void 0),Br(this,"search",Jt(o=>{for(var l=this.getSortedUngroupedColumns(),s=[],u=null,d=0;d<l.length;d+=1){var c=l[d];c.name.toLowerCase().includes(o.toLowerCase())&&(u==null&&(u=d),s.push([d,d]))}_(u),this.setState({ungroupedSelectedRanges:s}),s.length>0&&this.ungroupedList.current&&this.ungroupedList.current.scrollToItem(u)},Ff)),Br(this,"getCachedUngroupedColumns",Pe((o,l)=>o.filter(s=>vt.isGroupable(s)&&l.find(u=>u===s.name)==null))),Br(this,"getCachedSortedColumns",Pe((o,l)=>l==null?[...o]:M.sortColumns(o,l===vt.SORT.ASCENDING))),this.handleDeleteClicked=this.handleDeleteClicked.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUngroupedSelect=this.handleUngroupedSelect.bind(this),this.handleUngroupedSelectionChange=this.handleUngroupedSelectionChange.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupedSelectionChange=this.handleGroupedSelectionChange.bind(this),this.handleShowConstituentsChange=this.handleShowConstituentsChange.bind(this),this.handleShowNonAggregatedColumnsChange=this.handleShowNonAggregatedColumnsChange.bind(this),this.handleSortAscending=this.handleSortAscending.bind(this),this.handleSortDescending=this.handleSortDescending.bind(this),this.renderGroupedItem=this.renderGroupedItem.bind(this),this.ungroupedList=m.createRef(),this.groupedList=m.createRef();var{config:t}=e,{columns:r=[],showConstituents:i=!0,showNonAggregatedColumns:a=!0}=t??{};this.state={ungroupedSelectedRanges:[],columns:r,groupedSelectedRanges:[],searchFilter:"",showConstituents:i,showNonAggregatedColumns:a,dragSource:null,sort:null}}componentDidUpdate(e,t){var{config:r}=this.props,{columns:i,showConstituents:a,showNonAggregatedColumns:o}=this.state;r!==e.config?this.updateFromConfig():(i!==t.columns||a!==t.showConstituents||o!==t.showNonAggregatedColumns)&&(r==null||i!==r.columns||a!==r.showConstituents||o!==r.showNonAggregatedColumns)&&this.sendChange()}componentWillUnmount(){this.search.cancel()}handleSearchChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.search.cancel(),this.resetSelection();return}this.search(t)}handleSortAscending(){this.setState(e=>{var{sort:t}=e;return{sort:t===vt.SORT.ASCENDING?null:vt.SORT.ASCENDING}})}handleSortDescending(){this.setState(e=>{var{sort:t}=e;return{sort:t===vt.SORT.DESCENDING?null:vt.SORT.DESCENDING}})}resetSelection(){this.setState({ungroupedSelectedRanges:[],groupedSelectedRanges:[]})}handleDragStart(e){yn.debug("handleDragStart",e),document.documentElement.classList.add("drag-pointer-events-none"),this.setState({dragSource:e.source})}handleDragEnd(e){yn.debug("handleDragEnd",e),document.documentElement.classList.remove("drag-pointer-events-none"),this.setState({dragSource:null});var{destination:t,source:r}=e;if(!(t==null||r==null)){if(t.droppableId===ii){this.setState(o=>{var{groupedSelectedRanges:l,columns:s}=o,u=[...s];return Wt.reorder(u,l,[],0),{columns:u,ungroupedSelectedRanges:[],groupedSelectedRanges:[]}});return}var i=r.droppableId===ni,a=t.index;i&&r.index<t.index&&(a+=1),this.setState(o=>{var{columns:l,ungroupedSelectedRanges:s,groupedSelectedRanges:u}=o,d=[...l],c=i?d:this.getSortedUngroupedColumns().map(p=>p.name),h=i?u:s,v=Wt.reorder(c,h,d,a),g=i?Wt.adjustDestinationIndex(a,u):a,f=[[g,g+v.length-1]];return{columns:d,ungroupedSelectedRanges:[],groupedSelectedRanges:f}}),this.resetSelection()}}handleUngroupedSelect(e){yn.debug("handleUngroupedSelect"),this.setState(t=>{var{columns:r}=t;return{columns:vt.addGroupings(r,[this.getSortedUngroupedColumns()[e].name]),ungroupedSelectedRanges:[],groupedSelectedRanges:[]}})}handleUngroupedSelectionChange(e){yn.debug2("handleUngroupedSelectionChange",e),this.setState(t=>{var{ungroupedSelectedRanges:r}=t;return e===r?null:{ungroupedSelectedRanges:e,groupedSelectedRanges:[]}})}handleGroupedSelectionChange(e){yn.debug2("handleGroupedSelectedRanges",e),this.setState(t=>{var{groupedSelectedRanges:r}=t;return e===r?null:{groupedSelectedRanges:e,ungroupedSelectedRanges:[]}})}handleDeleteClicked(e){this.setState(t=>{var{columns:r}=t,i=r.slice();return i.splice(e,1),{columns:i}})}handleShowConstituentsChange(){this.setState(e=>{var{showConstituents:t}=e;return{showConstituents:!t}})}handleShowNonAggregatedColumnsChange(){this.setState(e=>{var{showNonAggregatedColumns:t}=e;return{showNonAggregatedColumns:!t}})}updateFromConfig(){var{config:e}=this.props,{columns:t=[],showConstituents:r=!0,showNonAggregatedColumns:i=!0}=e??{};this.setState({columns:t,showConstituents:r,showNonAggregatedColumns:i})}sendChange(){var{onChange:e}=this.props,{columns:t,showConstituents:r,showNonAggregatedColumns:i}=this.state;e({columns:t,showConstituents:r,showNonAggregatedColumns:i})}getUngroupedColumns(){var{model:e}=this.props,{columns:t}=this.state,{originalColumns:r}=e;return this.getCachedUngroupedColumns(r,t)}getSortedUngroupedColumns(){var{sort:e}=this.state,t=this.getUngroupedColumns();return this.getCachedSortedColumns(t,e)}renderGroupedItem(e){var{item:t,itemIndex:r,isClone:i,selectedCount:a}=e,o=i!==void 0&&i?"":"  ".repeat(r),l="".concat(o).concat(t),s=i!==void 0&&i?"".concat(a):void 0,u=i!==void 0&&i?"item-list-item-clone":"";return m.createElement(m.Fragment,null,Ut.renderTextItem({text:l,badgeText:s,className:u}),(i===void 0||!i)&&m.createElement(Z,{kind:"ghost",className:"btn btn-link btn-link-icon btn-delete-grouping float-right",onClick:()=>this.handleDeleteClicked(r)},m.createElement(ue,{icon:Pr})))}render(){var{columns:e,dragSource:t,searchFilter:r,groupedSelectedRanges:i,ungroupedSelectedRanges:a,showConstituents:o,showNonAggregatedColumns:l,sort:s}=this.state,u=this.getSortedUngroupedColumns(),d=e.length*Ut.DEFAULT_ROW_HEIGHT;(t==null?void 0:t.droppableId)===ii&&(d+=Ut.DEFAULT_ROW_HEIGHT);var c=u.length*Ut.DEFAULT_ROW_HEIGHT+10,h=Math.min(3*Ut.DEFAULT_ROW_HEIGHT,c);return m.createElement("div",{role:"menu",className:ie("rollup-rows",{"is-dragging":t!=null}),tabIndex:0},m.createElement(Ii,{onDragEnd:this.handleDragEnd,onDragStart:this.handleDragStart},m.createElement("div",{className:"rollup-rows-group-by"},m.createElement("div",{className:"section-title"},"Group By"),e.length===0&&m.createElement(Ga,{droppableId:"placeholder"},(v,g)=>m.createElement("div",Ua({className:ie("placeholder","text-muted",{"is-dragging-from-this":g.draggingFromThisWith,"is-dragging-over":g.isDraggingOver,"is-dropping":g.draggingOverWith}),ref:v.innerRef},v.droppableProps),"To create a rollup, drag columns from the list below and drop them into this area.")),e.length>0&&m.createElement(Ut,{draggingItemClassName:"rollup-rows-dragging-grouped-item",draggablePrefix:ni,droppableId:ni,itemCount:e.length,items:e,offset:0,onSelectionChange:this.handleGroupedSelectionChange,ref:this.groupedList,renderItem:this.renderGroupedItem,selectedRanges:i,style:{height:d},isMultiSelect:!0})),m.createElement("div",{className:"rollup-rows-available-columns"},m.createElement("div",{className:"section-title"},"Available Grouping Columns"),m.createElement("div",{className:"top-menu"},m.createElement(eo,{className:"w-100",value:r,matchCount:r?a.length:void 0,placeholder:"Find column...",onChange:this.handleSearchChange}),m.createElement(Z,{kind:"ghost",className:ie("btn-link btn-link-icon",{active:s===vt.SORT.ASCENDING}),onClick:this.handleSortAscending},m.createElement(ue,{icon:ja}),m.createElement(Gt,null,"Sort ascending")),m.createElement(Z,{kind:"ghost",className:ie("btn-link btn-link-icon",{active:s===vt.SORT.DESCENDING}),onClick:this.handleSortDescending},m.createElement(ue,{icon:Ka}),m.createElement(Gt,null,"Sort descending"))),m.createElement(Ut,{className:"rollup-available-grouping-columns",draggablePrefix:ii,droppableId:ii,itemCount:u.length,items:u,renderItem:vt.renderColumn,offset:0,onSelect:this.handleUngroupedSelect,onSelectionChange:this.handleUngroupedSelectionChange,ref:this.ungroupedList,selectedRanges:a,style:{maxHeight:c,minHeight:h},isDropDisabled:(t==null?void 0:t.droppableId)!==ni,isMultiSelect:!0}),m.createElement("div",{className:"bottom-menu"},m.createElement("div",{className:"label"},"Show:"),m.createElement(Fr,{checked:o,onChange:this.handleShowConstituentsChange},"Constituents"),m.createElement(Fr,{checked:l,onChange:this.handleShowNonAggregatedColumnsChange},"Non-Aggregated Columns")))))}}Br(vt,"SORT",Object.freeze({ASCENDING:"ASC",DESCENDING:"DESC"}));Br(vt,"defaultProps",{config:null,onChange:()=>{}});const Df=vt;function Sl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Nf(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Sl(a,r,i,o,l,"next",s)}function l(s){Sl(a,r,i,o,l,"throw",s)}o(void 0)})}}function El(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?El(Object(t),!0).forEach(function(r){Yr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):El(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yr(n,e,t){return e=Pf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pf(n){var e=If(n,"string");return typeof e=="symbol"?e:String(e)}function If(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Af=Fe.module("TableCsvExporter");class be extends y.Component{static getDateString(e){return e.i18n.DateTimeFormat.format(be.FILENAME_DATE_FORMAT,new Date)}constructor(e){super(e),this.handleDownloadClick=this.handleDownloadClick.bind(this),this.handleDownloadRowOptionChanged=this.handleDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowOptionChanged=this.handleCustomizedDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowsChanged=this.handleCustomizedDownloadRowsChanged.bind(this),this.handleIncludeColumnHeadersChanged=this.handleIncludeColumnHeadersChanged.bind(this),this.handleIncludeHiddenColumnsChanged=this.handleIncludeHiddenColumnsChanged.bind(this),this.handleUseUnformattedValuesChanged=this.handleUseUnformattedValuesChanged.bind(this);var{model:t,name:r}=e;this.state={fileName:"".concat(r,"-").concat(be.getDateString(t.dh),".csv"),downloadRowOption:be.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,customizedDownloadRowOption:be.CUSTOMIZED_ROWS_OPTIONS.FIRST,customizedDownloadRows:be.DEFAULT_DOWNLOAD_ROWS,includeColumnHeaders:!0,includeHiddenColumns:!1,useUnformattedValues:!1,errorMessage:null,id:Nr.generate()}}getSnapshotRanges(){var{model:e,selectedRanges:t}=this.props,{downloadRowOption:r,customizedDownloadRowOption:i,customizedDownloadRows:a}=this.state,{rowCount:o,columnCount:l}=e,s=[];switch(r){case be.DOWNLOAD_ROW_OPTIONS.ALL_ROWS:s.push(new B(0,0,l-1,o-1));break;case be.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS:s=t.map(u=>Tl(Tl({},u),{},{startColumn:0,endColumn:l-1})).sort((u,d)=>u.startRow!=null&&d.startRow!=null?u.startRow-d.startRow:0);break;case be.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS:switch(i){case be.CUSTOMIZED_ROWS_OPTIONS.FIRST:s.push(new B(0,0,l-1,Math.min(a-1,o-1)));break;case be.CUSTOMIZED_ROWS_OPTIONS.LAST:s.push(new B(0,Math.max(0,o-a),l-1,o-1));break}break}return s}getModelRanges(e){var{userColumnWidths:t,movedColumns:r}=this.props,{includeHiddenColumns:i}=this.state,a=Re.getHiddenColumns(t),o=j.getModelRanges(e,r);if(!i&&a.length>0){var l=a.map(B.makeColumn);o=B.subtractRangesFromRanges(o,l)}return o}resetDownloadState(){this.setState({errorMessage:null})}handleDownloadClick(){var e=this;return Nf(function*(){var{model:t,isDownloading:r,onDownloadStart:i,onDownload:a,onCancel:o}=e.props,{fileName:l,includeColumnHeaders:s,useUnformattedValues:u}=e.state;if(r){o();return}e.resetDownloadState();var d=e.getSnapshotRanges(),c=e.getModelRanges(d);if(e.validateOptionInput()){i();try{var h=yield t.export(),v=h.setViewport(0,0);yield v.getViewportData(),a(l,h,v,d,c,s,u)}catch(g){Af.error("CSV download failed",g),e.setState({errorMessage:m.createElement("p",null,m.createElement(ue,{icon:In})," ","".concat(g))}),o()}}})()}handleDownloadRowOptionChanged(e){this.setState({downloadRowOption:e.target.value})}handleCustomizedDownloadRowOptionChanged(e){this.setState({customizedDownloadRowOption:e.target.value})}handleCustomizedDownloadRowsChanged(e){this.setState({customizedDownloadRows:parseInt(e.target.value,10)})}handleIncludeColumnHeadersChanged(){this.setState(e=>{var{includeColumnHeaders:t}=e;return{includeColumnHeaders:!t}})}handleIncludeHiddenColumnsChanged(){this.setState(e=>{var{includeHiddenColumns:t}=e;return{includeHiddenColumns:!t}})}handleUseUnformattedValuesChanged(){this.setState(e=>{var{useUnformattedValues:t}=e;return{useUnformattedValues:!t}})}validateOptionInput(){var{selectedRanges:e}=this.props,{downloadRowOption:t,customizedDownloadRows:r}=this.state;return t===be.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS&&e.length===0?(this.setState({errorMessage:m.createElement("p",null,m.createElement(ue,{icon:In})," No rows selected. Please select some rows in the table.")}),!1):t===be.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS&&r<=0?(this.setState({errorMessage:m.createElement("p",null,m.createElement(ue,{icon:In})," Number of rows to output must be greater than 0")}),!1):!0}render(){var{model:e,isDownloading:t,tableDownloadProgress:r,tableDownloadEstimatedTime:i,selectedRanges:a,tableDownloadStatus:o}=this.props,{fileName:l,downloadRowOption:s,customizedDownloadRowOption:u,customizedDownloadRows:d,includeColumnHeaders:c,includeHiddenColumns:h,useUnformattedValues:v,errorMessage:g,id:f}=this.state,{rowCount:p}=e;return m.createElement("div",{className:"table-csv-exporter"},m.createElement("div",{className:"section-title"},"Download Rows"),m.createElement("div",{className:"form-group"},m.createElement(Ja,{onChange:this.handleDownloadRowOptionChanged,value:s,disabled:t},m.createElement($r,{value:be.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,"data-testid":"radio-csv-exporter-download-all"},"All Rows",m.createElement("span",{className:"text-muted ml-2"},"(".concat(p.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"))),m.createElement($r,{value:be.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS,"data-testid":"radio-csv-exporter-only-selected"},"Only Selected Rows",m.createElement("span",{className:"text-muted ml-2"},a.length>0?"(".concat(B.rowCount(a).toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"):null)),m.createElement($r,{value:be.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS,"data-testid":"radio-csv-exporter-customized-rows"},m.createElement("div",{className:"radio-input-row",role:"presentation",onClick:()=>{this.setState({downloadRowOption:be.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS})}},m.createElement("select",{value:u,"data-testid":"select-csv-exporter-customized-rows",className:"custom-select",disabled:t,onChange:this.handleCustomizedDownloadRowOptionChanged},m.createElement("option",{value:"FIRST"},"First"),m.createElement("option",{value:"LAST"},"Last")),m.createElement("input",{type:"number",className:"form-control",id:"customizedRows-".concat(f),"data-testid":"input-csv-exporter-customized-rows",name:"customizedRows-".concat(f),placeholder:"100",value:d,disabled:t,onChange:this.handleCustomizedDownloadRowsChanged}),m.createElement("div",null,"Rows"))))),m.createElement("div",{className:"form-group"},m.createElement("label",{htmlFor:"customizedRows-".concat(f)},"File Name"),m.createElement("input",{type:"text",className:"form-control",id:"filename-".concat(f),"data-testid":"input-csv-exporter-file-name",name:"filename-".concat(f),value:l,onChange:C=>{this.setState({fileName:C.target.value})},disabled:t})),m.createElement("div",{className:"checkbox-options"},m.createElement(Fr,{checked:c,onChange:this.handleIncludeColumnHeadersChanged},"Include column headers"),m.createElement(Fr,{checked:h,onChange:this.handleIncludeHiddenColumnsChanged},"Include hidden columns"),m.createElement(Fr,{checked:v,onChange:this.handleUseUnformattedValuesChanged},"Use unformatted values")),m.createElement("div",{className:"section-footer flex-column"},g!=null&&m.createElement("div",{className:"error-message"},g),o&&m.createElement("div",{className:"download-status"},(o===be.DOWNLOAD_STATUS.DOWNLOADING||o===be.DOWNLOAD_STATUS.INITIATING)&&m.createElement(m.Fragment,null,o===be.DOWNLOAD_STATUS.INITIATING&&m.createElement("div",{className:"text-muted"},"Starting Download..."),o===be.DOWNLOAD_STATUS.DOWNLOADING&&m.createElement("div",{className:"text-muted d-flex justify-content-between"},m.createElement("span",null,i||i===0?"Estimated time: ".concat(bd.formatElapsedTime(i)):null),m.createElement("span",null,"".concat(r,"%")))),o===be.DOWNLOAD_STATUS.FINISHED&&m.createElement("div",{className:"text-muted text-right"},"Download Completed"),o===be.DOWNLOAD_STATUS.CANCELED&&m.createElement("div",{className:"text-muted"},"Download Canceled"),(o===be.DOWNLOAD_STATUS.DOWNLOADING||o===be.DOWNLOAD_STATUS.INITIATING)&&m.createElement("div",{className:"progress"},m.createElement("div",{className:"progress-bar progress-bar-striped progress-bar-animated",style:{width:"".concat(r,"%")}})),o===be.DOWNLOAD_STATUS.FINISHED&&m.createElement("div",{className:"progress"},m.createElement("div",{className:"progress-bar bg-success",style:{width:"".concat(r,"%")}}))),m.createElement(Z,{kind:"primary","data-testid":"btn-csv-exporter-download",className:ie("btn-downloading",{"btn-spinner btn-cancelable":t}),onClick:this.handleDownloadClick},t&&m.createElement("span",null,m.createElement(zr,null),m.createElement("span",{className:"btn-normal-content"},"Downloading"),m.createElement("span",{className:"btn-hover-content"},"Cancel")),!t&&"Download")))}}Yr(be,"FILENAME_DATE_FORMAT","yyyy-MM-dd-HHmmss");Yr(be,"DOWNLOAD_STATUS",{INITIATING:"INITIATING",DOWNLOADING:"DOWNLOADING",FINISHED:"FINISHED",CANCELED:"CANCELED"});Yr(be,"DOWNLOAD_ROW_OPTIONS",{ALL_ROWS:"ALL_ROWS",SELECTED_ROWS:"SELECTED_ROWS",CUSTOMIZED_ROWS:"CUSTOMIZED_ROWS"});Yr(be,"CUSTOMIZED_ROWS_OPTIONS",{FIRST:"FIRST",LAST:"LAST"});Yr(be,"DEFAULT_DOWNLOAD_ROWS",100);Yr(be,"defaultProps",{onDownloadStart:()=>{},isDownloading:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:null,selectedRanges:[]});const Lr=be;function Te(n,e,t){return e=Mf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mf(n){var e=Lf(n,"string");return typeof e=="symbol"?e:String(e)}function Lf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ar=Fe.module("TableSaver"),kf="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function _f(n){return n.added!==void 0}function Hf(n){if(!_f(n))throw new Error("event is not UpdateEventData")}class ft extends y.PureComponent{static csvEscapeString(e){return'"'.concat(e.replace(/"/g,'""'),'"')}constructor(e){super(e),Te(this,"sw",void 0),Te(this,"port",void 0),Te(this,"fileWriter",void 0),Te(this,"table",void 0),Te(this,"tableSubscription",void 0),Te(this,"columns",void 0),Te(this,"fileName",void 0),Te(this,"includeColumnHeaders",void 0),Te(this,"useUnformattedValues",void 0),Te(this,"chunkRows",void 0),Te(this,"gridRanges",void 0),Te(this,"gridRangeCounter",void 0),Te(this,"rangedSnapshotsTotal",void 0),Te(this,"rangedSnapshotCounter",void 0),Te(this,"snapshotsTotal",void 0),Te(this,"snapshotCounter",void 0),Te(this,"snapshotsBuffer",void 0),Te(this,"currentSnapshotIndex",void 0),Te(this,"snapshotPending",void 0),Te(this,"cancelableSnapshots",void 0),Te(this,"streamTimeout",void 0),Te(this,"snapshotHandlerTimeout",void 0),Te(this,"downloadStartTime",void 0),Te(this,"iframes",void 0),Te(this,"useBlobFallback",void 0),Te(this,"getCachedCustomColumnFormatFlag",zt(bi.isCustomColumnFormatDefined,{max:1e4})),this.handlePortMessage=this.handlePortMessage.bind(this),this.handleSnapshotResolved=this.handleSnapshotResolved.bind(this),this.handleDownloadTimeout=this.handleDownloadTimeout.bind(this),this.state={},this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.iframes=[],this.useBlobFallback=!1}componentDidMount(){var{getDownloadWorker:e}=this.props;e().then(t=>{ar.info("found active service worker"),this.sw=t,this.sw.postMessage("ping")}).catch(t=>{ar.warn("Download csv is not optimized.",t),this.useBlobFallback=!0})}componentWillUnmount(){this.iframes.length>0&&this.iframes.forEach(e=>{e.remove()}),this.streamTimeout&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout&&clearTimeout(this.snapshotHandlerTimeout)}createWriterStream(e){var t=this.useBlobFallback,r=[],i=null;t&&(i=TextEncoder.prototype.encode.bind(new TextEncoder));var{fileName:a}=this,o={};return t?(o.write=l=>{_(i),l.header!==void 0&&r.push(i(l.header)),l.rows!==void 0&&r.push(i(l.rows))},o.close=()=>{_(a);var l=new Blob(r,{type:"application/octet-stream; charset=utf-8"}),s=document.createElement("a");s.href=URL.createObjectURL(l),s.download=a,s.click()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}):(o.write=l=>{e.postMessage(l)},o.close=()=>{e.postMessage({end:!0}),e.close()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}),new WritableStream(o)}startDownload(e,t,r,i,a,o,l){var{isDownloading:s}=this.props;if(!s){this.downloadStartTime=Date.now(),ar.info("start downloading ".concat(e)),this.table=t,this.columns=Re.columnsFromRanges(a,t.columns),this.tableSubscription=r,this.gridRanges=i,this.includeColumnHeaders=o,this.useUnformattedValues=l;var u=encodeURIComponent(e.replace(/\//g,":")).replace(/['()]/g,escape).replace(/\*/g,"%2A"),d=new MessageChannel;if(this.port=d.port1,this.fileName=e,this.fileWriter=this.createWriterStream(this.port).getWriter(),this.useBlobFallback){this.writeCsvTable(o);return}this.sw&&this.sw.postMessage({encodedFileName:u},[d.port2]),this.port.onmessage=this.handlePortMessage}}finishDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.close();var{onDownloadCompleted:e}=this.props;e(),this.resetTableSaver(),this.downloadStartTime!==void 0&&ar.info("download finished, total elapsed time ".concat((Date.now()-this.downloadStartTime)/1e3," seconds"))}cancelDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.abort(),this.cancelableSnapshots.forEach(t=>{t&&(t.catch(()=>null),t.cancel())});var{onDownloadCanceled:e}=this.props;e(),this.resetTableSaver()}resetTableSaver(){this.table=void 0,this.tableSubscription=void 0,this.columns=void 0,this.chunkRows=void 0,this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout!=null&&clearTimeout(this.snapshotHandlerTimeout),this.streamTimeout=void 0,this.snapshotHandlerTimeout=void 0}handleDownloadTimeout(){ar.info("download canceled"),this.cancelDownload()}writeTableHeader(){var e,t="";if(this.columns)for(var r=0;r<this.columns.length;r+=1)t+=this.columns[r].name,t+=r===this.columns.length-1?`
1
+ import{b as Ie,f as Jl,m as Pe,d as ba,r as y,a as m,c as ie,P as Oe,e as je,E as hu,C as Or,F as de,g as Jt,h as Vt,s as Dr,D as Ii,i as es,k as Ga,l as mu,K as Xt,n as vu,o as gu,p as fu,u as pu,q as Sa,t as Cu,v as wu,w as bu,x as Do,y as Su,z as Po,A as Eu,B as Tu,S as yu,G as Ru,M as Ou,H as Fu,I as fi,j as Qn}from"./vendor-a75bc0d2.js";import{L as Fe,T as qe,v as In,a as zr,b as ts,d as Wa,c as pi,e as nr,f as Ci,g as Nu,h as Du,i as rs,j as Pu,k as Iu,l as Au,m as Mu,n as Lu,o as Pr,p as dn,q as Io,r as ku,s as za,t as ja,u as Ka,w as _u,x as Ya,y as xu,z as Hu,A as qa,B as Bu,C as wi,D as Uu,E as Xa,F as ns,G as Vu,H as $u,I as Gu,J as Wu,K as zu,M as ju,N as Ku,O as oa,P as Yu,Q as Ao,R as qu,S as Qa,U as Xu,V as Qu,W as Zu,X as Ju,Y as ed,Z as td,_ as rd,$ as nd,a0 as id,a1 as ad,a2 as od,a3 as ld,a4 as sd,a5 as ud,a6 as dd,a7 as cd,a8 as hd,a9 as md,aa as vd}from"./index-a5050634.js";import{P as ot,T as pe,g as D,E as Ee,a as _,b as M,D as xn,u as is,B as Z,c as lr,d as Za,C as as,e as ln,S as Er,M as He,K as tt,f as Gt,h as mi,i as An,j as Ft,I as Mr,k as se,G as gd,l as os,m as fd,O as wn,n as pd,o as Wt,p as Ut,q as Cd,r as wd,R as Ja,s as $r,t as Fr,v as Ea,w as eo,x as bd,F as bi,y as Sd,z as ls,A as ss,H as us,J as ds,L as Ed,N as Gr,Q as Td,U as Mo,V as Le,W as yd,X as Rd,Y as Od}from"./useConnection-4e03b3a6.js";import{e as on,l as rn,K as or,a as Lo,R as Fd,b as Nd}from"./monaco-f56a0d1b.js";import"./helpers-042e6b4d.js";class to{static isDark(e){var t=document.createElement("div");t.style.display="none",t.style.color=e;var r=getComputedStyle(document.body.appendChild(t)).color,i=r.match(/\d+/g),a=[];if(i)a=i.map(l=>parseInt(l,10));else throw new Error("Invalid color received. Got ".concat(r));document.body.removeChild(t);var o=to.getBrightness(a);return o<125}static getBrightness(e){return Math.round((e[0]*299+e[1]*587+e[2]*114)/1e3)}}const cs=to;function cn(n,e,t){return e=Dd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dd(n){var e=Pd(n,"string");return typeof e=="symbol"?e:String(e)}function Pd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Id="table_",hs="column_",Ad=new Set(["in","not","i","ii","k"]),Md=new Set(["abstract","continue","for","new","switch","assert","default","if","package","synchronized","boolean","do","goto","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","null","true","false"]),Ld=/[^a-zA-Z0-9_$+@-]/g,kd=/[^A-Za-z0-9_$]/g;class At{}cn(At,"legalize",(n,e,t,r,i)=>{var a=n.trim().replace(/[- ]/g,"_");return r&&(Ad.has(a)||Md.has(a))&&(a=e+a),a=a.replace(t,""),a||(a=e+i),Number.isNaN(Number(a.charAt(0)))||(a=e+a),a});cn(At,"legalizeTableName",n=>At.legalize(n,Id,Ld,!1,0));cn(At,"legalizeColumnNames",n=>{var e=[];return n.forEach((t,r)=>{var i=At.legalizeColumnName(t,r);e.includes(i)&&(i=hs+r),e.push(i)}),e});cn(At,"legalizeColumnName",function(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return At.legalize(n,hs,kd,!0,e)});cn(At,"isValidTableName",n=>At.legalizeTableName(n)===n);cn(At,"isValidColumnName",n=>At.legalizeColumnName(n)===n);const ro=At;function _d(n,e){return n?n.closest(".".concat(e)):null}const xd={getClosestByClassName:_d};function ko(n,e,t){return e=Hd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hd(n){var e=Bd(n,"string");return typeof e=="symbol"?e:String(e)}function Bd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ud{constructor(){ko(this,"pending",[]),ko(this,"resolved",[])}add(e,t){var r=ot.makeCancelable(e,t);return this.pending.push(r),r.then(()=>{this.resolve(r)},()=>{this.resolve(r)}),r}remove(e){for(var t=0;t<this.pending.length;t+=1)if(this.pending[t]===e){this.pending.splice(t,1);return}}resolve(e){this.remove(e),this.resolved.push(e)}cancel(){for(var e=[...this.pending,...this.resolved],t=0;t<e.length;t+=1)e[t].cancel();this.pending=[],this.resolved=[]}}const Vd=Ud;function $d(n,e,t){return e=Gd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gd(n){var e=Wd(n,"string");return typeof e=="symbol"?e:String(e)}function Wd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class zd extends Error{constructor(){super(...arguments),$d(this,"isInvalid",!0)}}const jd=zd;function Kd(n){switch(n){case pe.eq:return"is exactly";case pe.eqIgnoreCase:return"is exactly (ignore case)";case pe.notEq:return"is not exactly";case pe.notEqIgnoreCase:return"is not exactly (ignore case)";case pe.contains:return"contains";case pe.notContains:return"does not contain";case pe.startsWith:return"starts with";case pe.endsWith:return"ends with";default:throw new Error("Unrecognized text filter type ".concat(n))}}function Yd(n){switch(n){case pe.eq:return"is equal to";case pe.notEq:return"is not equal to";case pe.greaterThan:return"greater than";case pe.greaterThanOrEqualTo:return"greater than or equal to";case pe.lessThan:return"less than";case pe.lessThanOrEqualTo:return"less than or equal to";default:throw new Error("Unrecognized number filter type ".concat(n))}}function qd(n){switch(n){case pe.eq:return"date is";case pe.notEq:return"date is not";case pe.notEqIgnoreCase:case pe.greaterThan:return"date is after";case pe.greaterThanOrEqualTo:return"date is after or equal";case pe.lessThan:return"date is before";case pe.lessThanOrEqualTo:return"date is before or equal";default:throw new Error("Unrecognized date filter type ".concat(n))}}function Xd(n){switch(n){case pe.isTrue:return"Is True";case pe.isFalse:return"Is False";case pe.isNull:return"Is Null";default:throw new Error("Unrecognized boolean filter type ".concat(n))}}function Qd(n,e,t){return e=Zd(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zd(n){var e=Jd(n,"string");return typeof e=="symbol"?e:String(e)}function Jd(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ec extends Error{constructor(){super(...arguments),Qd(this,"isAssertionFailed",!0)}}const ms=ec;function _o(n){if(n==null)throw new ms("Expected 'val' to be defined, but received ".concat(n))}function tc(n,e,t){return e=rc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rc(n){var e=nc(n,"string");return typeof e=="symbol"?e:String(e)}function nc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ic extends Error{constructor(){super(...arguments),tc(this,"isPasteError",!0)}}const la=ic;function ke(n){return(n==null?void 0:n.isEditable)!==void 0}function xo(n){if(!ke(n))throw new ms("Expected 'model' to be editable, but received ".concat(n))}function De(n){return(n==null?void 0:n.hasExpandableRows)!==void 0}function Fn(n,e,t){return e=ac(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ac(n){var e=oc(n,"string");return typeof e=="symbol"?e:String(e)}function oc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var It;(function(n){n.DOWN="DOWN",n.UP="UP",n.LEFT="LEFT",n.RIGHT="RIGHT"})(It||(It={}));class B{static normalize(e,t,r,i){var a=e,o=t,l=r,s=i;return a!=null&&l!=null&&l<a&&(a=l,l=e),o!=null&&s!=null&&s<o&&(o=s,s=t),[a,o,l,s]}static makeNormalized(e,t,r,i){return new B(...B.normalize(e,t,r,i))}static makeCell(e,t){return new B(e,t,e,t)}static makeColumn(e){return new B(e,null,e,null)}static makeRow(e){return new B(null,e,null,e)}static minOrNull(e,t){return e==null||t==null?null:Math.min(e,t)}static maxOrNull(e,t){return e==null||t==null?null:Math.max(e,t)}static consolidate(e){for(var t=e.slice(),r=!0;r;){r=!1;for(var i=0;i<t.length&&!r;i+=1)for(var a=t[i],o=t.length-1;o>i;o-=1){var l=t[o];if(a.contains(l))t.splice(o,1);else if(l.contains(a)){r=!0,t[i]=l,t.splice(o,1);break}else if(a.startRow===l.startRow&&a.endRow===l.endRow){if(a.touches(l)){var{startRow:s,endRow:u}=a,d=B.minOrNull(a.startColumn,l.startColumn),c=B.maxOrNull(a.endColumn,l.endColumn);r=!0,t[i]=new B(d,s,c,u),t.splice(o,1);break}}else if(a.startColumn===l.startColumn&&a.endColumn===l.endColumn&&a.touches(l)){var{startColumn:h,endColumn:v}=a,g=B.minOrNull(a.startRow,l.startRow),f=B.maxOrNull(a.endRow,l.endRow);r=!0,t[i]=new B(h,g,v,f),t.splice(o,1);break}}}return t}static isAxisRangeTouching(e,t,r,i){return e==null?t==null||r==null?!0:r<=t+1:t==null?i==null?!0:i>=e-1:r==null?i==null?!0:e<=i+1:i==null?t>=r-1:r>=e-1?r<=t+1:i>=e-1}static rangeArraysEqual(e,t){if(e===t)return!0;if(e==null||t==null||e.length!==t.length)return!1;for(var r=0;r<e.length;r+=1)if(!e[r].equals(t[r]))return!1;return!0}static intersection(e,t){var r,i,a,o,l,s;if(e.equals(t))return e;var{startColumn:u,startRow:d,endColumn:c,endRow:h}=e;return u=u!=null&&t.startColumn!=null?Math.max(u,t.startColumn):(r=u)!==null&&r!==void 0?r:t.startColumn,c=c!=null&&t.endColumn!=null?Math.min(c,t.endColumn):(i=c)!==null&&i!==void 0?i:t.endColumn,d=d!=null&&t.startRow!=null?Math.max(d,t.startRow):(a=d)!==null&&a!==void 0?a:t.startRow,h=h!=null&&t.endRow!=null?Math.min(h,t.endRow):(o=h)!==null&&o!==void 0?o:t.endRow,u!=null&&u>((l=c)!==null&&l!==void 0?l:-1)||d!=null&&d>((s=h)!==null&&s!==void 0?s:-1)?null:new B(u,d,c,h)}static subtractFromRange(e,t){var r=[],i=B.intersection(e,t);return i==null?[e]:(i.startRow!=null&&(e.startRow==null||e.startRow<i.startRow)&&r.push(new B(e.startColumn,e.startRow,e.endColumn,i.startRow-1)),i.startColumn!=null&&(e.startColumn==null||e.startColumn<i.startColumn)&&r.push(new B(e.startColumn,i.startRow,i.startColumn-1,i.endRow)),i.endColumn!=null&&(e.endColumn==null||e.endColumn>i.endColumn)&&r.push(new B(i.endColumn+1,i.startRow,e.endColumn,i.endRow)),i.endRow!=null&&(e.endRow==null||e.endRow>i.endRow)&&r.push(new B(e.startColumn,i.endRow+1,e.endColumn,e.endRow)),r)}static subtractFromRanges(e,t){for(var r=[],i=0;i<e.length;i+=1)r.push(...B.subtractFromRange(e[i],t));return r}static subtractRangesFromRanges(e,t){for(var r=[...e],i=0;i<t.length;i+=1)r=B.subtractFromRanges(r,t[i]);return r}static isBounded(e){return e.startRow!=null&&e.startColumn!=null&&e.endRow!=null&&e.endColumn!=null}static boundedRange(e,t,r){var i,a,o,l;return B.isBounded(e)?e:new B((i=e.startColumn)!==null&&i!==void 0?i:0,(a=e.startRow)!==null&&a!==void 0?a:0,(o=e.endColumn)!==null&&o!==void 0?o:t-1,(l=e.endRow)!==null&&l!==void 0?l:r-1)}static boundedRanges(e,t,r){return e.map(i=>B.boundedRange(i,t,r))}static offset(e,t,r){return new B(e.startColumn!=null?e.startColumn+t:null,e.startRow!=null?e.startRow+r:null,e.endColumn!=null?e.endColumn+t:null,e.endRow!=null?e.endRow+r:null)}static nextCell(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:B.SELECTION_DIRECTION.DOWN;if(e.length===0)return null;var a=-1;if(t!=null&&r!=null&&(a=e.findIndex(h=>h.containsCell(t,r)),a>=0)){var o=e[a],l=o.nextCell(t,r,i);if(l!=null)return l}switch(i){case B.SELECTION_DIRECTION.DOWN:case B.SELECTION_DIRECTION.RIGHT:{var s=a<e.length-1?a+1:0,u=e[s];return u.startCell(i)}case B.SELECTION_DIRECTION.LEFT:case B.SELECTION_DIRECTION.UP:{var d=a>0?a-1:e.length-1,c=e[d];return c.startCell(i)}default:throw new Error("Invalid direction: ".concat(i))}}static cellCount(e){return e.reduce((t,r)=>{var i,a,o,l;return t+(((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1)*(((o=r.endColumn)!==null&&o!==void 0?o:NaN)-((l=r.startColumn)!==null&&l!==void 0?l:NaN)+1)},0)}static rowCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endRow)!==null&&i!==void 0?i:NaN)-((a=r.startRow)!==null&&a!==void 0?a:NaN)+1},0)}static columnCount(e){return e.reduce((t,r)=>{var i,a;return t+((i=r.endColumn)!==null&&i!==void 0?i:NaN)-((a=r.startColumn)!==null&&a!==void 0?a:NaN)+1},0)}static containsCell(e,t,r){for(var i=0;i<e.length;i+=1){var a=e[i];if(a.containsCell(t,r))return!0}return!1}static forEachCell(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:B.SELECTION_DIRECTION.RIGHT,i=0;i<e.length;i+=1)e[i].forEach(t,r)}constructor(e,t,r,i){Fn(this,"startColumn",void 0),Fn(this,"startRow",void 0),Fn(this,"endColumn",void 0),Fn(this,"endRow",void 0),this.startColumn=e,this.startRow=t,this.endColumn=r,this.endRow=i}equals(e){return this.startColumn===e.startColumn&&this.startRow===e.startRow&&this.endColumn===e.endColumn&&this.endRow===e.endRow}contains(e){return(this.startColumn==null||e.startColumn!=null&&this.startColumn<=e.startColumn)&&(this.startRow==null||e.startRow!=null&&this.startRow<=e.startRow)&&(this.endColumn==null||e.endColumn!=null&&this.endColumn>=e.endColumn)&&(this.endRow==null||e.endRow!=null&&this.endRow>=e.endRow)}containsCell(e,t){return e==null||t==null?!1:(this.startColumn==null||this.startColumn<=e)&&(this.endColumn==null||this.endColumn>=e)&&(this.startRow==null||this.startRow<=t)&&(this.endRow==null||this.endRow>=t)}touches(e){return B.isAxisRangeTouching(this.startRow,this.endRow,e.startRow,e.endRow)&&B.isAxisRangeTouching(this.startColumn,this.endColumn,e.startColumn,e.endColumn)}subtract(e){return B.subtractFromRange(this,e)}startCell(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:B.SELECTION_DIRECTION.DOWN;if(!B.isBounded(this))throw new Error("Cannot get the startCell of an unbounded range");switch(e){case B.SELECTION_DIRECTION.DOWN:case B.SELECTION_DIRECTION.RIGHT:return{column:this.startColumn,row:this.startRow};case B.SELECTION_DIRECTION.LEFT:case B.SELECTION_DIRECTION.UP:return{column:this.endColumn,row:this.endRow};default:throw new Error("Invalid direction: ".concat(e))}}nextCell(e,t,r){if(!B.isBounded(this))throw new Error("Bounded range required");if(e==null||t==null)throw new Error("Require a non-null cursor");var{startColumn:i,endColumn:a,startRow:o,endRow:l}=this;switch(r){case B.SELECTION_DIRECTION.DOWN:if(t<l)return{column:e,row:Math.max(t+1,o)};if(e<a)return{column:Math.max(e+1,i),row:o};break;case B.SELECTION_DIRECTION.UP:if(t>o)return{column:e,row:Math.min(t-1,l)};if(e>i)return{column:Math.min(e-1,a),row:l};break;case B.SELECTION_DIRECTION.RIGHT:if(e<a)return{column:Math.max(e+1,i),row:t};if(t<l)return{column:i,row:Math.max(t+1,o)};break;case B.SELECTION_DIRECTION.LEFT:if(e>i)return{column:Math.min(e-1,a),row:t};if(t>o)return{column:a,row:Math.min(t-1,l)};break;default:throw new Error("Invalid direction: ".concat(r))}return null}forEach(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:B.SELECTION_DIRECTION.RIGHT,r=0,{column:i,row:a}=this.startCell(t);i!=null&&a!=null;){var o;e(i,a,r),r+=1,{column:i,row:a}=(o=this.nextCell(i,a,t))!==null&&o!==void 0?o:{}}}}Fn(B,"SELECTION_DIRECTION",It);function lc(n){return Array.isArray(n)&&n.length===2&&(n[0]===null||typeof n[0]=="number")&&(n[1]===null||typeof n[1]=="number")}function Zn(n){return lc(n)&&n[0]!=null&&n[1]!=null}function Ho(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Jn(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ho(Object(t),!0).forEach(function(r){vs(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ho(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function vs(n,e,t){return e=sc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sc(n){var e=uc(n,"string");return typeof e=="symbol"?e:String(e)}function uc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Si(n){return(n==null?void 0:n.href)!==void 0}class j{static getGridPointFromXY(e,t,r){var i=j.getColumnAtX(e,r),a=j.getRowAtY(t,r),o=j.getColumnHeaderDepthAtY(t,r);return{x:e,y:t,row:a,column:i,columnHeaderDepth:o}}static getCellInfoFromXY(e,t,r){var{row:i,column:a}=j.getGridPointFromXY(e,t,r),{allColumnWidths:o,allRowHeights:l,allColumnXs:s,allRowYs:u,modelColumns:d,modelRows:c}=r,h=i!==null?c.get(i):null,v=a!==null?d.get(a):null,g=a!==null?s.get(a):null,f=i!==null?u.get(i):null,p=a!==null?o.get(a):null,C=i!==null?l.get(i):null;return{row:i,column:a,modelRow:h??null,modelColumn:v??null,left:g??null,top:f??null,columnWidth:p??null,rowHeight:C??null}}static getColumnHeaderDepthAtY(e,t){var r=j.getRowAtY(e,t),{columnHeaderHeight:i,columnHeaderMaxDepth:a}=t;if(r===null&&e<=i*a)return Ie(a-Math.ceil(e/i),0,a-1)}static iterateFloatingStart(e,t,r){for(var i=0;i<e&&i<t;i+=1){var a=r(i);if(a!==void 0)return a}}static iterateFloatingEnd(e,t,r){for(var i=0;i<e&&t-(e-i)>=0;i+=1){var a=r(t-(e-i));if(a!==void 0)return a}}static iterateFloating(e,t,r,i){var a=j.iterateFloatingStart(e,r,i);return a!==void 0?a:j.iterateFloatingEnd(t,r,i)}static iterateAllItems(e,t,r,i,a,o){var l=Math.max(e,r),s=Math.min(t,a-i-1),u=j.iterateFloating(r,i,a,o);if(u!==void 0)return u;for(var d=l;d<=s;d+=1)if(u=o(d),u!==void 0)return u}static isInItem(e,t,r,i){var a,o,l=(a=t.get(e))!==null&&a!==void 0?a:0,s=(o=r.get(e))!==null&&o!==void 0?o:0;return l<=i&&i<=l+s}static getItemAtOffset(e,t,r,i,a,o,l){var s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,u=s?void 0:j.iterateFloating(r,i,t,h=>{if(j.isInItem(h,o,l,e))return h});if(!s&&u!==void 0)return u;for(var d=0;d<a.length;d+=1){var c=a[d];if(j.isInItem(c,o,l,e))return c}return null}static getColumnAtX(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{columnCount:i,floatingLeftColumnCount:a,floatingRightColumnCount:o,visibleColumns:l,allColumnXs:s,allColumnWidths:u,gridX:d}=t;return e<d?null:this.getItemAtOffset(e-d,i,a,o,l,s,u,r)}static getRowAtY(e,t){var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a,visibleRows:o,allRowYs:l,allRowHeights:s,gridY:u}=t;return e<u?null:this.getItemAtOffset(e-u,a,r,i,o,l,s)}static getNextShownItem(e,t,r,i){var a=r.findIndex(s=>s===e)||0;for(a-=1;a!=null&&a>=0;){var o=r[a],l=t.get(o);if(l!=null&&i.get(l)!==0)return o;a-=1}return null}static getNextShownColumn(e,t){var{modelColumns:r,visibleColumns:i,userColumnWidths:a}=t;return j.getNextShownItem(e,r,i,a)}static getNextShownRow(e,t){var{modelRows:r,visibleRows:i,userRowHeights:a}=t;return j.getNextShownItem(e,r,i,a)}static getColumnSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,floatingColumns:l,floatingLeftWidth:s,visibleColumns:u,allColumnXs:d,allColumnWidths:c,columnHeaderMaxDepth:h}=r,{allowColumnResize:v,headerSeparatorHandleSize:g}=i;if(h*o<t||!v||g<=0)return null;for(var f=e-a,p=g*.5,C=!1,w=l.length-1;w>=0;w-=1){var b,E,T=l[w],S=(b=d.get(T))!==null&&b!==void 0?b:0,O=(E=c.get(T))!==null&&E!==void 0?E:0,F=O===0;if(!C||!F){var R=S+O;F?R+=p:C&&(R-=p);var N=R-p,P=R+p;if(N<=f&&f<=P)return T;C=F}}C=!1;for(var I=u.length-1;I>=0;I-=1){var A,H,x=u[I],W=(A=d.get(x))!==null&&A!==void 0?A:0,z=(H=c.get(x))!==null&&H!==void 0?H:0,G=z===0;if(W<s-z)return null;if(!C||!G){var K=W+z;G?K+=p:C&&(K-=p);var q=K-p,k=K+p;if(q<=f&&f<=k)return x;C=G}}return null}static isItemHidden(e,t){return t.get(e)===0}static isColumnHidden(e,t){var{allColumnWidths:r}=t;return j.isItemHidden(e,r)}static isFloatingRow(e,t){if(e==null)return!1;var{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t;return e<r||e>=a-i}static isFloatingColumn(e,t){if(e==null)return!1;var{floatingLeftColumnCount:r,floatingRightColumnCount:i,columnCount:a}=t;return e<r||e>=a-i}static getHiddenItems(e,t,r){if(!j.isItemHidden(e,t))return[];for(var i=[e],a=r.findIndex(s=>s===e),o=a-1;o>=0;o-=1){var l=r[o];if(!j.isItemHidden(l,t))break;i.push(l)}return i}static getHiddenColumns(e,t){var{visibleColumns:r,allColumnWidths:i}=t;return j.getHiddenItems(e,i,r)}static getRowSeparatorIndex(e,t,r,i){var{rowHeaderWidth:a,columnHeaderHeight:o,visibleRows:l,allRowYs:s,allRowHeights:u}=r,{allowRowResize:d,headerSeparatorHandleSize:c}=i;if(a<e||!d||c<=0)return null;for(var h=t-o,v=c*.5,g=!1,f=l.length-1;f>=0;f-=1){var p,C,w=l[f],b=(p=s.get(w))!==null&&p!==void 0?p:0,E=(C=u.get(w))!==null&&C!==void 0?C:0,T=E===0;if(!g||!T){var S=b+E;T?S+=v:g&&(S-=v);var O=S-v,F=S+v;if(O<=h&&h<=F)return w;g=T}}return null}static isRowHidden(e,t){var{allRowHeights:r}=t;return j.isItemHidden(e,r)}static getHiddenRows(e,t){var{visibleRows:r,allRowHeights:i}=t;return j.getHiddenItems(e,i,r)}static moveItem(e,t,r){if(e===t)return[...r];var i=[...r],a=i[i.length-1];return a!=null&&!Zn(a.from)&&a.to===e?a.from===t?i.pop():i[i.length-1]=Jn(Jn({},a),{},{to:t}):i.push({from:e,to:t}),i}static moveRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e[0]===e[1])return j.moveItem(e[0],t,r);var a=t;if(i&&e[0]<t&&(a-=e[1]-e[0]),e[0]===a)return[...r];var o=[...r],l=o[o.length-1];l!=null&&Zn(l.from)&&l.from[1]-l.from[0]===e[1]-e[0]&&l.to===e[0]?o[o.length-1]=Jn(Jn({},l),{},{to:a}):o.push({from:e,to:a});var s=o[o.length-1];return Zn(s.from)&&s.from[0]===s.to&&o.pop(),o}static moveItemOrRange(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return Array.isArray(e)?j.moveRange(e,t,r,i):j.moveItem(e,t,r)}static applyItemMoves(e,t,r){for(var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=[[e,t]],o=function(){var{from:u,to:d}=r[l],c=1,h;Zn(u)?(c=u[1]-u[0]+1,[h]=u):h=u;for(var v=i?d:h,g=v+c-1,f=i?h:d,p=f-v,C=[],w=function(){var T,S,O=(T=a[b][0])!==null&&T!==void 0?T:Number.NEGATIVE_INFINITY,F=(S=a[b][1])!==null&&S!==void 0?S:Number.POSITIVE_INFINITY,R,N=[[O,v-1],[v,g],[g+1,F]].map(P=>{var[I,A]=P;return[Math.max(I,O),Math.min(A,F)]}).filter(P=>{var[I,A]=P;return I<=A}).map(P=>{var[I,A]=P;return v<=I&&g>=A?(R=[I+p,A+p],R):g<I?[I-c,A-c]:P}).map(P=>{var[I,A]=P;return f>I&&f<=A?[[I,f-1],[f+c,A+c]]:P===R?[P]:f<=I?[[I+c,A+c]]:[P]}).flat();C.push(...N)},b=0;b<a.length;b+=1)w();a=C.map(E=>{var[T,S]=E;return[Number.isFinite(T)?T:null,Number.isFinite(S)?S:null]})},l=i?r.length-1:0;i?l>=0:l<r.length;i?l-=1:l+=1)o();return a}static translateRange(e,t,r,i){for(var a=j.applyItemMoves(e.startColumn,e.endColumn,t,i),o=j.applyItemMoves(e.startRow,e.endRow,r,i),l=[],s=0;s<a.length;s+=1)for(var u=a[s],d=0;d<o.length;d+=1){var c=o[d];l.push(new B(u[0],c[0],u[1],c[1]))}return l}static getModelIndex(e,t){var r=j.applyItemMoves(e,e,t,!0)[0][0];return r}static getModelIndexes(e,t){return e.map(r=>j.getModelIndex(r,t))}static getModelRangeIndexes(e,t,r){return j.applyItemMoves(e,t,r,!0)}static getModelRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ee;return j.translateRange(e,t,r,!0)}static getModelRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ee,i=[],a=0;a<e.length;a+=1)i.push(...j.getModelRange(e[a],t,r));return i}static getVisibleRangeIndexes(e,t,r){return j.applyItemMoves(e,t,r,!1)}static getVisibleRange(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ee;return this.translateRange(e,t,r,!1)}static getVisibleRanges(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ee,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ee,i=[],a=0;a<e.length;a+=1)i.push(...j.getVisibleRange(e[a],t,r));return i}static getVisibleIndex(e,t){var r=j.applyItemMoves(e,e,t)[0][0];return r}static getVisibleIndexes(e,t){return e.map(r=>j.getVisibleIndex(r,t))}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static getModifierKey(){return j.isMacPlatform()?"metaKey":"ctrlKey"}static isModifierKeyDown(e){var t=j.getModifierKey();return e[t]}static checkColumnHidden(e,t){return t.get(e)===0}static checkAllColumnsHidden(e,t){return t.size===0?!1:e.every(r=>t.get(r)===0)}static getScrollDragBounds(e,t,r){var{gridX:i,gridY:a,width:o,height:l,floatingTopRowCount:s,floatingBottomRowCount:u,floatingLeftColumnCount:d,floatingRightColumnCount:c,floatingLeftWidth:h,floatingRightWidth:v,floatingTopHeight:g,floatingBottomHeight:f,columnCount:p,rowCount:C}=e,w=i,b=a,E=o,T=l;return r!=null&&(r>d&&(w+=h),r<p-c&&(E-=v)),t!=null&&(t>s&&(b+=g),t<C-u&&(T-=f)),{x1:w,y1:b,x2:E,y2:T}}static getScrollDelta(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1024,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:768,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:20,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:20,{deltaX:o,deltaY:l}=e;return!j.isMacPlatform()&&e.shiftKey&&e.deltaX===0&&e.deltaY!==0&&(o=e.deltaY,l=e.deltaX),(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_PAGE?(o*=t,l*=r):(e==null?void 0:e.deltaMode)===WheelEvent.DOM_DELTA_LINE&&(j.isMacPlatform()?(o=Math.round(o*i),l=Math.round(l*a)):(o=Math.round(o*this.PIXELS_PER_LINE),l=Math.round(l*this.PIXELS_PER_LINE))),{deltaX:o,deltaY:l}}static compareRanges(e,t){return e[0]==null||e[1]==null||t[0]==null||t[1]==null?0:e[0]!==t[0]?e[0]-t[0]:e[1]-t[1]}static mergeSortedRanges(e){for(var t=[],r=0;r<e.length;r+=1){var i=e[r],a=i[0],o=i[1];r===0?t.push([a,o]):a-1<=t[t.length-1][1]?t[t.length-1][1]=Math.max(t[t.length-1][1],o):t.push([a,o])}return t}static translateTokenBox(e,t){var{x1:r,y1:i,x2:a,y2:o}=e,{gridX:l,gridY:s,width:u,height:d,verticalBarWidth:c,horizontalBarHeight:h}=t,v=Ie(l+r,l,u-c),g=Ie(l+a,l,u-c),f=Ie(s+i,s,d-h),p=Ie(s+o,s,d-h);return{x1:v,y1:f,x2:g,y2:p,token:e.token}}static getTextRenderMetrics(e,t,r){var{metrics:i,model:a,theme:o}=e,{firstColumn:l,allColumnXs:s,allColumnWidths:u,allRowYs:d,allRowHeights:c,modelRows:h,modelColumns:v}=i,{cellHorizontalPadding:g,treeDepthIndent:f,treeHorizontalPadding:p}=o,C=D(h,r),w=D(v,t),b=a.textAlignForCell(w,C),E=D(s,t),T=D(d,r),S=D(u,t),O=D(c,r),F=t===l,R=0;De(a)&&a.hasExpandableRows&&F&&(R=f*(a.depthForRow(r)+1)+p);var N=S-R,P=E+g,I=T+O*.5;return b==="right"?P=E+N-g:b==="center"&&(P=E+N*.5),P+=R,{width:N-g*2,x:P,y:I}}static findTokensWithProtocolInText(e){var t=Jl(e);return t.filter(r=>r.type==="url"?/^https?:\/\//.test(r.value):!0)}}vs(j,"PIXELS_PER_LINE",100/3);const Q=j;function wt(n,e,t){return e=dc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dc(n){var e=cc(n,"string");return typeof e=="symbol"?e:String(e)}function cc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ei(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:jr.CACHE_SIZE,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Math.floor(e/2);if(n.size>e)for(var r=n.keys();n.size>t;)n.delete(r.next().value)}function Bo(n,e,t,r,i){for(var a=new Map,o=0,l=0;l<n&&l<t;l+=1)a.set(l,o),o+=D(i,l);o=r;for(var s=0;s<e&&t-s-1>=0;s+=1)o-=D(i,t-s-1),a.set(t-s-1,o);return a}class jr{constructor(){var{userColumnWidths:e=new Map,userRowHeights:t=new Map,calculatedColumnWidths:r=new Map,calculatedRowHeights:i=new Map,fontWidths:a=new Map,modelRows:o=new Map,modelColumns:l=new Map,movedRows:s=[],movedColumns:u=[],initialRowHeights:d=new Map,initialColumnWidths:c=new Map}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};wt(this,"initialRowHeights",void 0),wt(this,"initialColumnWidths",void 0),wt(this,"userColumnWidths",void 0),wt(this,"userRowHeights",void 0),wt(this,"calculatedColumnWidths",void 0),wt(this,"calculatedRowHeights",void 0),wt(this,"fontWidths",void 0),wt(this,"modelRows",void 0),wt(this,"modelColumns",void 0),wt(this,"movedRows",void 0),wt(this,"movedColumns",void 0),this.userColumnWidths=e,this.userRowHeights=t,this.calculatedRowHeights=i,this.calculatedColumnWidths=r,this.fontWidths=a,this.modelRows=o,this.modelColumns=l,this.movedRows=s,this.movedColumns=u,this.initialRowHeights=d,this.initialColumnWidths=c}getMetrics(e){var{left:t,top:r,leftOffset:i,topOffset:a,width:o,height:l,theme:s,model:u,movedRows:d,movedColumns:c,draggingColumn:h}=e,{rowHeight:v,rowHeaderWidth:g,rowFooterWidth:f,columnWidth:p,columnHeaderHeight:C,minScrollHandleSize:w,scrollBarSize:b}=s;d!==this.movedRows&&(this.movedRows=d,this.modelRows.clear()),c!==this.movedColumns&&(this.movedColumns=c,this.modelColumns.clear());var{columnCount:E,rowCount:T,floatingTopRowCount:S,floatingBottomRowCount:O,floatingLeftColumnCount:F,floatingRightColumnCount:R,columnHeaderMaxDepth:N}=u,P=this.getFirstRow(e),I=this.getFirstColumn(e),A=this.getGridX(e),H=this.getGridY(e),x=De(u)&&u.hasExpandableRows?this.calculateTreePaddingX(e):0,W=0,z=this.getVisibleRowHeights(e),G=this.getVisibleColumnWidths(e,I,x),K=Array.from(z.keys()),q=Array.from(G.keys()),k=new Map([...z,...this.getFloatingRowHeights(e)]),L=new Map([...G,...this.getFloatingColumnWidths(e)]),$=this.getVisibleColumnXs(L,q,i),U=this.getVisibleRowYs(k,K,a),Y=K.length>0?K[K.length-1]:r,X=q.length>0?q[q.length-1]:t,ae=this.getBottomViewport(e,K,U,k),ce=this.getRightViewport(e,q,$,L),ee=this.getFloatingTopHeight(e,k),oe=this.getFloatingBottomHeight(e,k),ue=this.getFloatingLeftWidth(e,L),Ae=this.getFloatingRightWidth(e,L),Je=Array.from(L.values()),Xe=Array.from(k.values()),ze=Je.reduce((rr,gn)=>rr+gn,0)-i,Ve=Xe.reduce((rr,gn)=>rr+gn,0)-a,Qe=i+ze+f,Ne=a+Ve,lt=o-A,st=l-H,Mt=this.getLastLeft(e,null,lt-f),Lt=this.getLastLeft(e,null,lt-f-b),er=this.getLastTop(e,null,st-oe),ur=this.getLastTop(e,null,st-oe-b),Tt=Lt,Ze=ur;Mt===0&&er===0&&(Tt=0,Ze=0);var kt=Tt>0,ut=kt?b:0,dt=Ze>0,Ye=dt?b:0,yt=A,_t=N*C,Rt=o-yt-Ye,ct=l-_t-ut,dr=E===1?Rt/Qe:(E-Tt)/E,jt=T===1?ct/Ne:(T-Ze)/T,tr=kt?Ie(Rt*dr,w,Rt-1):0,Ot=dt?Ie(ct*jt,w,ct-1):0,xt=D(L,t,0),Ir=D(k,r,0),qr=xt>0?i/xt:0,Xr=Ir>0?a/Ir:0,Qr=E===1?i/(Qe-lt):(t+qr)/Tt,Zr=T===1?a/(Ne-st):(r+Xr)/Ze,Jr=kt?Qr*(Rt-tr):0,_e=dt?Zr*(ct-Ot):0,Vn=[...Array(S).keys(),...[...Array(O).keys()].map(rr=>T-rr-1)],mn=new Map([...U,...this.getFloatingRowYs(e,k,Math.floor(l-H-ut))]),$n=[...Array(F).keys(),...[...Array(R).keys()].map(rr=>E-rr-1)],Ar=new Map([...$,...this.getFloatingColumnXs(e,L,Math.floor(o-A-Ye))]),Gn=[];if(h)for(var ht=h.range[0];ht<=h.range[1];ht+=1)Gn.push(ht),L.has(ht)||L.set(ht,this.getVisibleColumnWidth(ht,e)),Ar.has(ht)||Ar.set(ht,0);var Wn=K.concat(Vn),vn=q.concat($n).concat(Gn),zn=this.getModelRows(Wn,e),xi=this.getModelColumns(vn,e),Hi=this.getVisibleRowTreeBoxes(k,zn,e),jn=this.getTopVisible(e,mn,k,K),Kn=this.getLeftVisible(e,Ar,L,q),Bi=Ze>0?this.getBottomVisible(e,mn,k,K,H):Y,Yn=Tt>0?this.getRightVisible(e,Ar,L,q,A):X,{fontWidths:qn,userColumnWidths:Ui,userRowHeights:Vi,calculatedRowHeights:$i,calculatedColumnWidths:Gi}=this;return{rowHeight:v,rowHeaderWidth:g,rowFooterWidth:f,rowCount:T,columnWidth:p,columnCount:E,columnHeaderHeight:C,floatingTopRowCount:S,floatingBottomRowCount:O,floatingLeftColumnCount:F,floatingRightColumnCount:R,gridX:A,gridY:H,firstRow:P,firstColumn:I,treePaddingX:x,treePaddingY:W,left:t,top:r,bottom:Y,right:X,topOffset:a,leftOffset:i,topVisible:jn,leftVisible:Kn,bottomVisible:Bi,rightVisible:Yn,bottomViewport:ae,rightViewport:ce,width:o,height:l,maxX:ze,maxY:Ve,lastLeft:Tt,lastTop:Ze,barHeight:ct,barTop:_t,barWidth:Rt,barLeft:yt,handleHeight:Ot,handleWidth:tr,hasHorizontalBar:kt,hasVerticalBar:dt,verticalBarWidth:Ye,horizontalBarHeight:ut,scrollX:Jr,scrollY:_e,scrollableContentWidth:Qe,scrollableContentHeight:Ne,scrollableViewportWidth:lt,scrollableViewportHeight:st,visibleRows:K,visibleColumns:q,visibleRowHeights:z,visibleColumnWidths:G,floatingRows:Vn,floatingColumns:$n,allRows:Wn,allColumns:vn,allRowHeights:k,allColumnWidths:L,floatingTopHeight:ee,floatingBottomHeight:oe,floatingLeftWidth:ue,floatingRightWidth:Ae,visibleRowYs:U,visibleColumnXs:$,allRowYs:mn,allColumnXs:Ar,visibleRowTreeBoxes:Hi,modelRows:zn,modelColumns:xi,movedRows:d,movedColumns:c,fontWidths:qn,userColumnWidths:Ui,userRowHeights:Vi,calculatedRowHeights:$i,calculatedColumnWidths:Gi,columnHeaderMaxDepth:N}}getGridX(e){var{theme:t}=e,{rowHeaderWidth:r}=t;return r}getGridY(e){var{theme:t,model:r}=e,{columnHeaderHeight:i}=t,{columnHeaderMaxDepth:a}=r;return a*i}getVisibleHeight(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{height:r,theme:i}=e,{scrollBarSize:a}=i,o=this.getGridY(e),l=this.getFloatingBottomHeight(e,t),s=this.getFloatingTopHeight(e,t);return r-l-s-o-a}getVisibleWidth(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{width:r,theme:i}=e,{scrollBarSize:a,rowFooterWidth:o}=i,l=this.getGridX(e),s=this.getFloatingRightWidth(e,t),u=this.getFloatingLeftWidth(e,t);return r-u-s-l-a-o}getFirstIndex(e,t,r){for(var i=e.size+1,a=0;a<i;a+=1){var o=t(a,r);if(e.get(o)!==0)return a}return 0}getFirstColumn(e){return this.getFirstIndex(this.userColumnWidths,this.getModelColumn.bind(this),e)}getFirstRow(e){return this.getFirstIndex(this.userRowHeights,this.getModelRow.bind(this),e)}getLastLeft(e,t,r){var{model:i}=e,{columnCount:a,floatingRightColumnCount:o}=i,l=Math.max(0,a-o-1);t!=null&&(l=t);for(var s=0;l>=0;){var u=this.getVisibleColumnWidth(l,e);if(s+=u,s>=r)return Ie(l+1,0,t??a-1);l-=1}return 0}getLastTop(e,t,r){var{model:i}=e,{rowCount:a,floatingBottomRowCount:o}=i,l=Math.max(0,a-o-1);t!=null&&(l=t);for(var s=0;l>=0;){var u=this.getVisibleRowHeight(l,e);if(s+=u,s>=r)return Ie(l+1,0,a-1);l-=1}return 0}getTopForTopVisible(e,t){for(var r=this.getFloatingTopHeight(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleRowHeight(i,e);return i}getTopForBottomVisible(e,t){var{height:r}=e,i=this.getGridY(e),a=this.getFloatingBottomHeight(e),o=r-i-a;return this.getLastTop(e,t,o)}getLeftForLeftVisible(e,t){for(var r=this.getFloatingLeftWidth(e),i=t,a=0;i>0&&a<r;)i-=1,a+=this.getVisibleColumnWidth(i,e);return i}getLeftForRightVisible(e,t){var{width:r}=e,i=this.getGridX(e),a=this.getFloatingRightWidth(e),o=r-i-a;return this.getLastLeft(e,t,o)}getFloatingRowHeights(e){for(var{model:t}=e,{floatingTopRowCount:r,floatingBottomRowCount:i,rowCount:a}=t,o=new Map,l=0;l<r&&l<a;l+=1)o.set(l,this.getVisibleRowHeight(l,e));for(var s=0;s<i&&a-s-1>=0;s+=1){var u=a-s-1;o.set(u,this.getVisibleRowHeight(u,e))}return o}getVisibleRowHeights(e){for(var{top:t,topOffset:r,height:i,model:a}=e,o=0,l=t,s=new Map,{rowCount:u}=a;o<i+r&&l<u;){var d=this.getVisibleRowHeight(l,e);s.set(l,d),o+=d,l+=1}return s}getFloatingColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:l}=i,s=new Map,u=0;u<o&&u<a;u+=1)s.set(u,this.getVisibleColumnWidth(u,e,t,r));for(var d=0;d<l&&a-d-1>=0;d+=1){var c=a-d-1;s.set(c,this.getVisibleColumnWidth(c,e,t,r))}return s}getVisibleColumnWidths(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFirstColumn(e),r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.calculateTreePaddingX(e),{left:i,leftOffset:a,width:o,model:l}=e,s=0,u=i,d=new Map,{columnCount:c}=l;s<o+a&&u<c;){var h=this.getVisibleColumnWidth(u,e,t,r);d.set(u,h),s+=h,u+=1}return d}getFloatingColumnXs(e,t,r){var{model:i}=e,{columnCount:a,floatingLeftColumnCount:o,floatingRightColumnCount:l}=i;return Bo(o,l,a,r,t)}getVisibleColumnXs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var l=t[o],s=D(e,l);i.set(l,a),a+=s}return i}getFloatingRowYs(e,t,r){var{model:i}=e,{floatingTopRowCount:a,floatingBottomRowCount:o,rowCount:l}=i;return Bo(a,o,l,r,t)}getVisibleRowYs(e,t,r){for(var i=new Map,a=-r,o=0;o<t.length;o+=1){var l=t[o],s=D(e,l);i.set(l,a),a+=s}return i}getVisibleRowTreeBoxes(e,t,r){var i=new Map,{model:a,theme:o}=r,{treeDepthIndent:l,treeHorizontalPadding:s}=o;return De(a)&&a.hasExpandableRows&&e.forEach((u,d)=>{var c=D(t,d);if(a.isRowExpandable(c)){var h=a.depthForRow(c),v=h*l+s,g=(h+1)*l+s,f=0,p=u;i.set(d,{x1:v,y1:f,x2:g,y2:p})}}),i}getFloatingLeftWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingLeftColumnCount:i}=r,a=0,o=0;o<i;o+=1)a+=D(t,o);return a}getFloatingRightWidth(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingColumnWidths(e),{model:r}=e,{floatingRightColumnCount:i,columnCount:a}=r,o=0,l=0;l<i;l+=1)o+=D(t,a-l-1);return o}getFloatingTopHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingTopRowCount:i}=r,a=0,o=0;o<i;o+=1)a+=D(t,o);return a}getFloatingBottomHeight(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.getFloatingRowHeights(e),{model:r}=e,{floatingBottomRowCount:i,rowCount:a}=r,o=0,l=0;l<i;l+=1)o+=D(t,a-l-1);return o}getTopVisible(e,t,r,i){for(var a=this.getFloatingTopHeight(e,r),o=0;o<i.length;o+=1){var l=i[o],s=D(t,l);if(s>=a)return l}return 0}getLeftVisible(e,t,r,i){for(var a=this.getFloatingLeftWidth(e,r),o=0;o<i.length;o+=1){var l=i[o],s=D(t,l);if(s>=a)return l}return 0}getBottomVisible(e,t,r,i,a){for(var{height:o,theme:l}=e,{scrollBarSize:s}=l,u=this.getFloatingBottomHeight(e,r),d=o-a-s-u,c=i.length-1;c>=0;c-=1){var h=i[c],v=D(t,h),g=D(r,h);if(v+g<=d)return h}return 0}getRightVisible(e,t,r,i,a){for(var{width:o,theme:l}=e,{scrollBarSize:s}=l,u=this.getFloatingRightWidth(e,r),d=o-a-s-u,c=i.length-1;c>=0;c-=1){var h=i[c],v=D(t,h),g=D(r,h);if(v+g<=d)return h}return 0}getBottomViewport(e,t,r,i){var{height:a,theme:o}=e,{rowHeight:l}=o;return this.getLastIndexViewport(t,r,i,a,l)}getRightViewport(e,t,r,i){var{width:a,theme:o}=e,{columnWidth:l}=o;return this.getLastIndexViewport(t,r,i,a,l)}getLastIndexViewport(e,t,r,i,a){var o=0,l=0;return e.length>0&&(o=e[e.length-1],l=D(t,o)+D(r,o)),l<i&&(o+=Math.ceil((i-l)/a)),o}getVisibleItemSize(e,t,r){var i;return(i=t.get(e))!==null&&i!==void 0?i:r()}getVisibleRowHeight(e,t){var r=this.getModelRow(e,t),i=this.calculateRowHeight(e,r,t);return this.getVisibleItemSize(r,this.userRowHeights,()=>{var a=this.initialRowHeights.get(r);return a!==void 0?a:i})}getVisibleColumnWidth(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.getFirstColumn(t),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.calculateTreePaddingX(t),a=this.getModelColumn(e,t),o=this.calculateColumnWidth(e,a,t,r,i);return this.getVisibleItemSize(a,this.userColumnWidths,()=>{var l=this.initialColumnWidths.get(a);return l!==void 0?l:o})}getModelRows(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelRow(a,t);r.set(a,o)}return r}getModelRow(e,t){if(this.modelRows.has(e))return D(this.modelRows,e);var{movedRows:r}=t,i=Q.getModelIndex(e,r);return this.modelRows.set(e,i),i}getModelColumns(e,t){for(var r=new Map,i=0;i<e.length;i+=1){var a=e[i],o=this.getModelColumn(a,t);r.set(a,o)}return r}getModelColumn(e,t){var r=this.modelColumns.has(e);if(r)return D(this.modelColumns,e);var{movedColumns:i}=t,a=Q.getModelIndex(e,i);return this.modelColumns.set(e,a),a}calculateRowHeight(e,t,r){var{theme:i}=r,{autoSizeRows:a,rowHeight:o}=i;if(!a)return o;var l=this.calculatedRowHeights.get(t);return l??(this.calculatedRowHeights.set(t,Math.ceil(o)),ei(this.calculatedRowHeights),o)}calculateColumnWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.getFirstColumn(r),a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.calculateTreePaddingX(r),{theme:o}=r,{autoSizeColumns:l,minColumnWidth:s}=o;if(!l){var{columnWidth:u}=o;return u}var d=this.calculateColumnHeaderWidth(t,r),c=this.calculateColumnDataWidth(t,r),h=this.calculatedColumnWidths.get(t),v=Math.ceil(Math.max(d,c));return v=Math.max(s,v),h!=null&&h>v?v=h:(this.calculatedColumnWidths.set(t,v),ei(this.calculatedColumnWidths)),e===i&&(v+=a),v}calculateColumnHeaderWidth(e,t){var{model:r,theme:i}=t,{headerFont:a,headerHorizontalPadding:o}=i,l=r.textForColumnHeader(e,0);if(l!==void 0&&l!==""){var s=this.getWidthForFont(a,t);return l.length*s+o*2}return o*2}calculateColumnDataWidth(e,t){var{top:r,height:i,width:a,model:o,theme:l}=t,{floatingTopRowCount:s,floatingBottomRowCount:u,rowCount:d}=o,{font:c,cellHorizontalPadding:h,rowHeight:v,rowHeaderWidth:g,rowFooterWidth:f,scrollBarSize:p,dataBarHorizontalPadding:C}=l,w=0,b=this.getWidthForFont(c,t),E=i/v,T=Math.ceil(r+E);return Q.iterateAllItems(r,T,s,u,d,S=>{var O=this.getModelRow(S,t),F=o.textForCell(e,O),R=o.renderTypeForCell(e,O),N=0;if(F){var P=h*2;N=F.length*b+P}R==="dataBar"&&(N+=C),w=Math.max(w,N)}),w=Math.max(Math.min(w,(a-g-p-f)*jr.MAX_COLUMN_WIDTH),h*2),w}calculateTreePaddingX(e){var{top:t,height:r,model:i,theme:a}=e,{rowHeight:o,treeDepthIndent:l}=a;if(!De(i)||!i.hasExpandableRows)return 0;for(var s=0,u=r/o,d=Math.ceil(t+u),c=t;c<=d;c+=1){var h=this.getModelRow(c,e),v=i.depthForRow(h);s=Math.max(s,l*(v+1))}return s}getWidthForFont(e,t){if(this.fontWidths.has(e))return D(this.fontWidths,e);var{context:r}=t;r.font=e;var i=r.measureText("8"),{width:a}=i;return this.fontWidths.set(e,a),this.fontWidths.set(r.font,a),a}setColumnWidth(e,t){var r=new Map(this.userColumnWidths);r.set(e,Math.ceil(t)),ei(r),this.userColumnWidths=r}resetColumnWidth(e){var t=new Map(this.userColumnWidths);t.delete(e),this.userColumnWidths=t}setRowHeight(e,t){var r=new Map(this.userRowHeights);r.set(e,Math.ceil(t)),ei(r),this.userRowHeights=r}resetRowHeight(e){var t=new Map(this.userRowHeights);t.delete(e),this.userRowHeights=t,this.calculatedRowHeights.delete(e)}}wt(jr,"CACHE_SIZE",1e4);wt(jr,"MAX_COLUMN_WIDTH",.8);const hc=jr;var mc=Object.freeze({allowColumnResize:!0,allowRowResize:!0,autoSelectRow:!1,autoSelectColumn:!1,autoSizeColumns:!0,autoSizeRows:!0,backgroundColor:"#000000",black:"#000000",white:"#ffffff",cellHorizontalPadding:5,headerHorizontalPadding:5,font:"12px Arial, sans serif",gridColumnColor:"#8f8f8f66",gridRowColor:"#8f8f8f66",headerBackgroundColor:"#222222",headerSeparatorColor:"#000000",headerSeparatorHoverColor:"#888888",headerSeparatorHandleSize:5,headerHiddenSeparatorSize:5,headerHiddenSeparatorHoverColor:"#8888FF",headerColor:"#d5d5d5",headerFont:"10px Arial, sans serif",columnHoverBackgroundColor:"#444444",selectedColumnHoverBackgroundColor:"#494949",rowBackgroundColors:"#333333 #222222",rowHoverBackgroundColor:"#444444",selectedRowHoverBackgroundColor:"#494949",minScrollHandleSize:50,scrollBarBackgroundColor:"#111111",scrollBarHoverBackgroundColor:"#333333",scrollBarCasingColor:"#000000",scrollBarCornerColor:"#000000",scrollBarColor:"#555555",scrollBarHoverColor:"#888888",scrollBarActiveColor:"#AAAAAA",scrollBarSize:12,scrollBarHoverSize:16,scrollBarCasingWidth:1,scrollSnapToColumn:!1,scrollSnapToRow:!1,selectionColor:"#4286f433",selectionOutlineColor:"#4286f4",selectionOutlineCasingColor:"#222222",scrollBarSelectionTick:!0,scrollBarSelectionTickColor:"#4286f433",scrollBarActiveSelectionTickColor:"#4286f480",shadowBlur:8,shadowColor:"#000000",textColor:"#ffffff",hyperlinkColor:"#4878ea",maxDepth:6,treeDepthIndent:10,treeHorizontalPadding:5,treeLineColor:"#888888",treeMarkerColor:"#cccccc",treeMarkerHoverColor:"#ffffff",rowHeight:20,columnWidth:100,minRowHeight:20,minColumnWidth:55,columnHeaderHeight:20,rowHeaderWidth:30,rowFooterWidth:0,headerResizeSnapThreshold:10,headerResizeHiddenSnapThreshold:8,allowColumnReorder:!0,allowRowReorder:!0,reorderOffset:2,floatingGridColumnColor:"#8f8f8f66",floatingGridRowColor:"#8f8f8f66",floatingRowBackgroundColors:"#393939 #292929",floatingDividerOuterColor:"#000000",floatingDividerInnerColor:"#cccccc",zeroLineColor:"#888888",positiveBarColor:"#00ff00",negativeBarColor:"#ff0000",dataBarHorizontalPadding:90});const vc=mc;function Uo(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Vo(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Uo(Object(t),!0).forEach(function(r){gc(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Uo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gc(n,e,t){return e=fc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fc(n){var e=pc(n,"string");return typeof e=="symbol"?e:String(e)}function pc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cc=(n,e)=>{var t=!1,r=Pe(n,Vo(Vo({},e),{},{dispose:()=>{t||(t=!0,r.clear(),t=!1)}}));return r};const zt=Cc;function wc(n,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:6,r=ba.hex.lab.raw(n);return r[0]=Math.max(r[0]-r[0]/t*e,0),"#".concat(ba.lab.hex(r))}function bc(n,e){var[t,r,i]=ba.hex.rgb(n);return"rgba(".concat(t,", ").concat(r,", ").concat(i,", ").concat(e,")")}var Sc=n=>{var{r:e,g:t,b:r}=n,i=.4122214708*e+.5363325363*t+.0514459929*r,a=.2119034982*e+.6806995451*t+.1073969566*r,o=.0883024619*e+.2817188376*t+.6299787005*r,l=Math.cbrt(i),s=Math.cbrt(a),u=Math.cbrt(o);return{L:.2104542553*l+.793617785*s-.0040720468*u,a:1.9779984951*l-2.428592205*s+.4505937099*u,b:.0259040371*l+.7827717662*s-.808675766*u}},Ec=n=>{var{L:e,a:t,b:r}=n,i=e+.3963377774*t+.2158037573*r,a=e-.1055613458*t-.0638541728*r,o=e-.0894841775*t-1.291485548*r,l=i*i*i,s=a*a*a,u=o*o*o;return{r:Ie(4.0767416621*l-3.3077115913*s+.2309699292*u,0,255),g:Ie(-1.2684380046*l+2.6097574011*s-.3413193965*u,0,255),b:Ie(-.0041960863*l-.7034186147*s+1.707614701*u,0,255)}},Tc=n=>{var e,t,r=(e=(t=n.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(i,a,o,l)=>"#".concat(a).concat(a).concat(o).concat(o).concat(l).concat(l)).substring(1).match(/.{2}/g))===null||t===void 0?void 0:t.map(i=>parseInt(i,16)))!==null&&e!==void 0?e:[0,0,0];return{r:r[0],g:r[1],b:r[2]}},yc=n=>{var e=Math.round(n.r),t=Math.round(n.g),r=Math.round(n.b);return"#".concat([e,t,r].map(i=>{var a=i.toString(16);return a.length===1?"0".concat(a):a}).join(""))},Rc=(n,e,t)=>{var{L:r,a:i,b:a}=n,{L:o,a:l,b:s}=e,u=r+(o-r)*t,d=i+(l-i)*t,c=a+(s-a)*t;return{L:u,a:d,b:c}};const xr={colorWithAlpha:bc,darkenForDepth:wc,linearSRGBToOklab:Sc,OklabToLinearSRGB:Ec,hexToRgb:Tc,rgbToHex:yc,lerpColor:Rc};function $o(n,e,t){return e=Oc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Oc(n){var e=Fc(n,"string");return typeof e=="symbol"?e:String(e)}function Fc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class We{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;$o(this,"order",void 0),$o(this,"cursor",null),this.order=e}onDown(e,t,r){return!1}onMove(e,t,r){return!1}onDrag(e,t,r){return!1}onLeave(e,t,r){return!1}onClick(e,t,r){return!1}onContextMenu(e,t,r){return!1}onDoubleClick(e,t,r){return!1}onUp(e,t,r){return!1}onWheel(e,t,r){return!1}}function bn(n,e,t){return e=Nc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Nc(n){var e=Dc(n,"string");return typeof e=="symbol"?e:String(e)}function Dc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Pc extends We{constructor(){super(...arguments),bn(this,"draggingIndex",void 0),bn(this,"resizingItems",[]),bn(this,"hiddenItems",[]),bn(this,"targetSizes",new Map),bn(this,"dragOffset",0)}onDown(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var o=this.getSeparator(e,r,i,a);if(o!=null){var l=o.index;return this.dragOffset=0,this.draggingIndex=l,this.resizingItems=[l],this.hiddenItems=this.getHiddenItems(l,r).reverse(),this.targetSizes.clear(),this.addTargetSize(r,l),this.updateCursor(r,l),this.updateSeparator(t,o),!0}return!1}onMove(e,t){var{metrics:r}=t,{model:i}=t.props,a=t.getTheme();if(!r)throw new Error("metrics not set");var o=this.getSeparator(e,r,i,a);return o!=null?(this.updateCursor(r,o.index),!0):!1}onDrag(e,t){if(this.draggingIndex==null)return!1;var r=e[this.pointProperty],{metricCalculator:i,metrics:a}=t;if(!a)throw new Error("metrics not set");for(var o=t.getTheme(),l=a[this.visibleOffsetProperty],s=a[this.marginProperty],u=a[this.calculatedSizesProperty],d=a[this.modelIndexesProperty],c=a[this.firstIndexProperty],h=a[this.treePaddingProperty],v=new Map,g=this.resizingItems[this.resizingItems.length-1];g!=null;){var f=D(l,g),p=r-s-f-this.dragOffset,C=D(d,g),w=this.targetSizes.get(C),b=this.resizingItems.length>1,E=this.hiddenItems.indexOf(g),T=D(u,C);g===c&&(T+=h);var S=p;if(Math.abs(p-T)<=o.headerResizeSnapThreshold?S=T:w!==void 0&&p>w&&(b&&E!==0||E>0)?S=w:p<=o.headerResizeHiddenSnapThreshold&&(S=0),v.set(C,S),p<-o.headerResizeSnapThreshold&&S===0)if(E>=0&&b){var O;this.resizingItems.pop(),this.removeTargetSize(a,g),g=this.resizingItems[this.resizingItems.length-1],this.dragOffset-=(O=this.targetSizes.get(D(d,g)))!==null&&O!==void 0?O:0}else g=this.getNextShownItem(g,a),g!==null&&(this.resizingItems.push(g),this.addTargetSize(a,g));else w!==void 0&&p>w+o.headerResizeSnapThreshold&&S===w?E>0?(this.dragOffset+=S,g=this.hiddenItems[E-1],this.resizingItems.push(g),this.addTargetSize(a,g)):b?(this.resizingItems.pop(),this.removeTargetSize(a,g),g=this.resizingItems[this.resizingItems.length-1]):g=null:g=null}return v.forEach((F,R)=>{var N,P=(N=i[this.initialSizesProperty].get(R))!==null&&N!==void 0?N:u.get(R);F===P?this.resetSize(i,R):this.setSize(i,R,F)}),this.updateCursor(a,this.draggingIndex),!0}onUp(e,t){return this.draggingIndex!=null&&(this.draggingIndex=void 0,this.resizingItems=[],this.hiddenItems=[],this.targetSizes.clear(),this.updateSeparator(t,null)),!1}onDoubleClick(e,t){var{metrics:r,metricCalculator:i}=t,{model:a}=t.props,o=t.getTheme();if(!r)throw new Error("metrics not set");var l=this.getSeparator(e,r,a,o);if(l!=null){var s=r[this.modelIndexesProperty],u=D(s,l.index),d=D(r[this.calculatedSizesProperty],u),c=i[this.initialSizesProperty].get(u);return d===c?this.resetSize(i,u):this.setSize(i,u,d),t.forceUpdate(),!0}return!1}updateCursor(e,t){var r=e[this.visibleSizesProperty],i=D(r,t);i===0?this.cursor=this.hiddenCursor:this.cursor=this.defaultCursor}addTargetSize(e,t){var r=e[this.modelIndexesProperty],i=e[this.userSizesProperty],a=e[this.calculatedSizesProperty],o=t===0?e[this.treePaddingProperty]:0,l=D(r,t),s=i.get(l);(s==null||s===0)&&(s=D(a,l)+o),this.targetSizes.set(l,s)}removeTargetSize(e,t){var r=e[this.modelIndexesProperty],i=D(r,t);this.targetSizes.delete(i)}}const gs=Pc;function rt(n,e,t){return e=Ic(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ic(n){var e=Ac(n,"string");return typeof e=="symbol"?e:String(e)}function Ac(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class no extends gs{constructor(){super(...arguments),rt(this,"hiddenCursor","e-resize"),rt(this,"defaultCursor","col-resize"),rt(this,"pointProperty","x"),rt(this,"userSizesProperty","userColumnWidths"),rt(this,"visibleOffsetProperty","visibleColumnXs"),rt(this,"visibleSizesProperty","visibleColumnWidths"),rt(this,"marginProperty","rowHeaderWidth"),rt(this,"calculatedSizesProperty","calculatedColumnWidths"),rt(this,"initialSizesProperty","initialColumnWidths"),rt(this,"modelIndexesProperty","modelColumns"),rt(this,"firstIndexProperty","firstColumn"),rt(this,"treePaddingProperty","treePaddingX"),rt(this,"getHiddenItems",Q.getHiddenColumns),rt(this,"getNextShownItem",Q.getNextShownColumn),rt(this,"getSeparator",no.getColumnSeparator)}static getColumnSeparator(e,t,r,i){if(!i.allowColumnResize)return null;var{x:a,y:o,columnHeaderDepth:l}=e,{modelColumns:s}=t,u=Q.getColumnSeparatorIndex(a,o,t,i);if(u==null||l==null||l>0)return null;var d=s.get(u);return d!=null?{index:u,depth:0}:null}setSize(e,t,r){e.setColumnWidth(t,r)}resetSize(e,t){e.resetColumnWidth(t)}updateSeparator(e,t){e.setState({draggingColumnSeparator:t,isDragging:t!==null})}}const fs=no;var Wr=10;function Mc(n,e,t){return e=Lc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lc(n){var e=kc(n,"string");return typeof e=="symbol"?e:String(e)}function kc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class _c{constructor(){Mc(this,"getCachedTruncatedString",zt((e,t,r,i,a)=>bs.truncateToWidth(e,t,r,i,a),{max:1e4}))}drawCellRowTreeMarker(e,t,r){var{metrics:i,model:a,mouseX:o,mouseY:l,theme:s}=t,{firstColumn:u,gridX:d,gridY:c,allColumnXs:h,allColumnWidths:v,allRowYs:g,allRowHeights:f,visibleRowTreeBoxes:p}=i,{treeMarkerColor:C,treeMarkerHoverColor:w}=s,b=D(h,u),E=D(v,u),T=D(g,r),S=D(f,r);if(!(!De(a)||!a.isRowExpandable(r))){var O=D(p,r),F=o!=null&&l!=null&&o>=d+b&&o<=d+b+E&&l>=c+T&&l<=c+T+S?w:C;this.drawTreeMarker(e,t,b,T,O,F,a.isRowExpanded(r))}}drawTreeMarker(e,t,r,i,a,o,l){var{x1:s,y1:u,x2:d,y2:c}=a,h=l?"⊟":"⊞",v=r+(s+d)*.5+.5,g=i+(u+c)*.5+.5;e.fillStyle=o,e.textAlign="center",e.fillText(h,v,g)}}const ps=_c;function Go(n){return(n==null?void 0:n.dataBarOptionsForCell)!==void 0}function Wo(n,e,t){return e=xc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function xc(n){var e=Hc(n,"string");return typeof e=="symbol"?e:String(e)}function Hc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Bc extends ps{constructor(){super(...arguments),Wo(this,"heightOfDigits",void 0),Wo(this,"getCachedWidestValueForColumn",zt((e,t,r,i,a)=>{for(var o=0,l=0;l<t.length;l+=1){var s=t[l],u=D(r,s),d=i.textForCell(a,u);o=Math.max(o,e.measureText(d).width)}return o},{max:1e3}))}drawCellContent(e,t,r,i){var a,{metrics:o,model:l,theme:s}=t;if(Go(l)){var{modelColumns:u,modelRows:d,allRowHeights:c,allRowYs:h,firstColumn:v,fontWidths:g}=o,f=r===v,p=D(c,i),C=D(d,i),w=D(u,r),b=D(h,i),E=l.textAlignForCell(w,C),T=l.textForCell(w,C),{x:S,width:O}=Q.getTextRenderMetrics(t,r,i),F=(a=g==null?void 0:g.get(e.font))!==null&&a!==void 0?a:Wr,R=l.truncationCharForCell(w,C),N=this.getCachedTruncatedString(e,T,O,F,R),{columnMin:P,columnMax:I,axis:A,color:H,valuePlacement:x,opacity:W,markers:z,direction:G,value:K}=l.dataBarOptionsForCell(w,C),q=Array.isArray(H);if(!(P==null||I==null)){var{maxWidth:k,x:L,y:$,zeroPosition:U,leftmostPosition:Y,markerXs:X,totalValueRange:ae,dataBarWidth:ce}=this.getDataBarRenderMetrics(e,t,r,i);if(this.heightOfDigits===void 0){var{actualBoundingBoxAscent:ee,actualBoundingBoxDescent:oe}=e.measureText("1234567890");this.heightOfDigits=ee+oe}if(e.save(),e.textAlign=E,q){var ue=K>=0?H[H.length-1]:H[0];e.fillStyle=ue}else e.fillStyle=H;if(e.textBaseline="top",e.font=s.font,x!=="hide"&&e.fillText(N,S,b+(p-this.heightOfDigits)/2),q){var Ae=H.map(Ot=>xr.linearSRGBToOklab(xr.hexToRgb(Ot)));if(e.save(),e.beginPath(),e.roundRect(L,$,ce,p-2,1),e.clip(),K<0){if(G==="LTR")for(var Je=Math.round(Math.abs(P)/ae*k),Xe=Je/(H.length-1),ze=Math.round(Y),Ve=0;Ve<H.length-1;Ve+=1){var Qe=Ae[Ve],Ne=Ae[Ve+1];this.drawGradient(e,Qe,Ne,ze,b+1,Xe,p),ze+=Xe}else if(G==="RTL")for(var lt=Math.round(k-Math.abs(I)/ae*k),st=lt/(H.length-1),Mt=Math.round(U),Lt=H.length-1;Lt>0;Lt-=1){var er=Ae[Lt],ur=Ae[Lt-1];this.drawGradient(e,er,ur,Mt,b+1,st,p),Mt+=st}}else if(G==="LTR")for(var Tt=Math.round(k-Math.abs(P)/ae*k)-1,Ze=Tt/(H.length-1),kt=Math.round(U),ut=0;ut<H.length-1;ut+=1){var dt=Ae[ut],Ye=Ae[ut+1];this.drawGradient(e,dt,Ye,kt,b+1,Ze,p-2),kt+=Ze}else if(G==="RTL")for(var yt=Math.round(Math.abs(I)/ae*k),_t=yt/(H.length-1),Rt=Math.round(Y),ct=H.length-1;ct>0;ct-=1){var dr=Ae[ct],jt=Ae[ct-1];this.drawGradient(e,dr,jt,Rt,b+1,_t,p-2),Rt+=_t}e.restore()}else e.save(),e.globalAlpha=W,e.beginPath(),e.roundRect(L,$,ce,p-2,1),e.fill(),e.restore();k>0&&X.forEach((Ot,xt)=>{e.fillStyle=z[xt].color,e.fillRect(Ot,$,1,p-2)});var tr=!(A==="directional"&&(x==="beside"&&E==="right"&&G==="LTR"||x==="beside"&&E==="left"&&G==="RTL"||x!=="beside"));tr&&(e.strokeStyle=s.zeroLineColor,e.beginPath(),e.setLineDash([2,1]),e.moveTo(U,b),e.lineTo(U,b+p),e.stroke()),e.restore(),f&&De(l)&&l.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}}}getDataBarRenderMetrics(e,t,r,i){var{metrics:a,model:o,theme:l}=t;if(!Go(o))throw new Error("Grid model is not a data bar grid model");var{firstColumn:s,allColumnXs:u,allColumnWidths:d,allRowYs:c,modelColumns:h,modelRows:v,visibleRows:g}=a,{cellHorizontalPadding:f,treeDepthIndent:p,treeHorizontalPadding:C}=l,w=D(h,r),b=D(v,i),E=D(u,r),T=D(c,i),S=D(d,r),O=r===s,F=0;De(o)&&o.hasExpandableRows&&O&&(F=p*(o.depthForRow(i)+1)+C);var R=o.textAlignForCell(w,b),{columnMin:N,columnMax:P,axis:I,valuePlacement:A,markers:H,direction:x,value:W}=o.dataBarOptionsForCell(w,b),z=this.getCachedWidestValueForColumn(e,g,v,o,w),G=2,K=A==="beside"&&R==="right"?2:1,q=P-N;P>=0&&N>=0||N===P?q=P:P<=0&&N<=0&&(q=Math.abs(N));var k=S-F-K-G;A==="beside"&&(k=k-f-z),k<0&&(k=0);var L=Math.max(Math.abs(N),Math.abs(P)),$=Math.abs(W)/q*k;k===0?$=0:I==="middle"?$=Math.abs(W)/L*(k/2):I==="directional"&&($=Math.abs(W)/L*k);var U=N>=0?0:Math.abs(N)/q*k,Y=W>=0?U:U-Math.abs(W)/q*k,X=H.map(ee=>{var{column:oe}=ee,ue=Number(o.textForCell(oe,b));return ue>=0?U+Math.abs(ue)/q*k:U-Math.abs(ue)/q*k}),ae=A==="beside"&&R==="left"?f+z+G:G,ce=A==="beside"&&R==="right"?S-f-z-K:K;return x==="RTL"&&(U=N>=0?S:S-Math.abs(N)/q*k,Y=W>=0?U-W/q*k:U,X=H.map(ee=>{var{column:oe}=ee,ue=Number(o.textForCell(oe,b));return ue>=0?U-Math.abs(ue)/q*k:U+Math.abs(ue)/q*k})),I==="middle"?(U=k/2,x==="LTR"?(Y=W>=0?U:U-Math.abs(W)/L*(k/2),X=H.map(ee=>{var{column:oe}=ee,ue=Number(o.textForCell(oe,b));return ue>=0?U+Math.abs(ue)/L*(k/2):U-Math.abs(ue)/L*(k/2)})):x==="RTL"&&(Y=W<=0?U:U-Math.abs(W)/L*(k/2),X=H.map(ee=>{var{column:oe}=ee,ue=Number(o.textForCell(oe,b));return ue<=0?U+Math.abs(ue)/L*(k/2):U-Math.abs(ue)/L*(k/2)}))):I==="directional"&&(x==="LTR"?(U=0,Y=U,X=H.map(ee=>{var{column:oe}=ee,ue=Number(o.textForCell(oe,b));return U+Math.abs(ue)/L*k})):x==="RTL"&&(U=S,Y=U-Math.abs(W)/L*k,X=H.map(ee=>{var{column:oe}=ee,ue=Number(o.textForCell(oe,b));return U-Math.abs(ue)/L*k}))),x==="LTR"?(U+=E+G+F,Y+=E+G+F,X=X.map(ee=>ee+E+G+F),A==="beside"&&R==="left"&&(U+=z+f,Y+=z+f,X=X.map(ee=>ee+z+f))):x==="RTL"&&(U=U+E-K,Y=Y+E-K,X=X.map(ee=>ee+E-K),A==="beside"&&R==="right"&&(U=U-f-z,Y=Y-f-z,X=X.map(ee=>ee-f-z))),ae+=E+F,ce+=E,{maxWidth:k,x:Y,y:T+1.5,zeroPosition:U,leftmostPosition:ae,rightmostPosition:ce,totalValueRange:q,dataBarWidth:$,markerXs:X}}drawGradient(e,t,r,i,a,o,l){for(var s=t,u=i;u<=i+o;u+=.5)this.drawGradientPart(e,u,a,1,l,xr.rgbToHex(xr.OklabToLinearSRGB(s))),s=xr.lerpColor(t,r,(u-i)/o)}drawGradientPart(e,t,r,i,a,o){e.fillStyle=o,e.fillRect(t,r,i,a)}}const Cs=Bc;function Uc(n,e,t){return e=Vc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vc(n){var e=$c(n,"string");return typeof e=="symbol"?e:String(e)}function $c(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Gc extends ps{constructor(){super(...arguments),Uc(this,"getCachedTokenBoxesForVisibleCell",zt((e,t,r,i,a,o)=>{for(var l=0,s=a,u=[],d=0,c=0,h=0;h<t.length;h+=1){var v=t[h],{start:g,end:f}=v,p=f>e.length?e.substring(g):v.value;c+=o.measureText(e.substring(d,g)).width;var C=o.measureText(p).width,w=c,b=w+C,E={x1:w,y1:l,x2:b,y2:s,token:v};u.push(E),d=f,c+=C}return u},{max:1e4}))}drawCellContent(e,t,r,i){var{metrics:a,model:o,theme:l}=t,{fontWidths:s,modelColumns:u,modelRows:d,allRowHeights:c,firstColumn:h}=a,v=r===h,{textColor:g}=l,f=D(c,i),p=D(d,i),C=D(u,r),w=o.textForCell(C,p),b=o.truncationCharForCell(C,p);if(w&&f>0){var E,T=o.textAlignForCell(C,p)||"left";e.textAlign=T;var S=o.colorForCell(C,p,l)||g;e.fillStyle=S,e.save();var{width:O,x:F,y:R}=Q.getTextRenderMetrics(t,r,i),N=(E=s.get(e.font))!==null&&E!==void 0?E:Wr,P=this.getCachedTruncatedString(e,w,O,N,b),I=o.tokensForCell(C,p,P.length);if(P)for(var A=0,H=0,x=F,{actualBoundingBoxDescent:W}=e.measureText(P);H<P.length;){var z,G,K=I[A],q=H===(K==null?void 0:K.start)?K:null,k=(z=(G=q==null?void 0:q.end)!==null&&G!==void 0?G:K==null?void 0:K.start)!==null&&z!==void 0?z:P.length,L=P.substring(H,k),{width:$}=e.measureText(L),U=L.endsWith("…")?e.measureText(L.substring(0,L.length-1)).width:$;q!=null?(e.fillStyle=l.hyperlinkColor,e.fillText(L,x,R),e.fillRect(x,R+W,U,1)):(e.fillStyle=S,e.fillText(L,x,R)),x+=$,H=k,q!=null&&(A+=1)}e.restore()}v&&De(o)&&o.hasExpandableRows&&this.drawCellRowTreeMarker(e,t,i)}getTokenBoxesForVisibleCell(e,t,r){var i,{metrics:a,context:o,model:l,theme:s}=r;if(o==null||a==null)return Ee;var{modelRows:u,modelColumns:d}=a,c=D(u,t),h=D(d,e),v=l.textForCell(h,c),{width:g,x:f,y:p}=Q.getTextRenderMetrics(r,e,t),{fontWidths:C}=a;o.save(),this.configureContext(o,r);var w=(i=C==null?void 0:C.get(o.font))!==null&&i!==void 0?i:Wr,b=l.truncationCharForCell(h,c),E=this.getCachedTruncatedString(o,v,g,w,b),{actualBoundingBoxAscent:T,actualBoundingBoxDescent:S}=o.measureText(E),O=T+S,F=l.tokensForCell(h,c,E.length);if(F.length===0)return o.restore(),Ee;var R=this.getCachedTokenBoxesForVisibleCell(E,F,s.font,"middle",O,o).map(N=>({x1:N.x1+f,y1:N.y1+(p-T),x2:N.x2+f,y2:N.y2+(p-T),token:N.token}));return o.restore(),R}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}}const ws=Gc;function Hr(n,e,t){return e=Wc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wc(n){var e=zc(n,"string");return typeof e=="symbol"?e:String(e)}function zc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qt{constructor(){Hr(this,"textCellRenderer",new ws),Hr(this,"dataBarCellRenderer",new Cs),Hr(this,"getCachedBackgroundColors",zt((e,t)=>e.split(" ").map(r=>{for(var i=[],a=0;a<t;a+=1)i.push(xr.darkenForDepth(r,a,t));return i}),{max:1e3})),Hr(this,"getCachedColorWithAlpha",zt((e,t)=>xr.colorWithAlpha(e,t),{max:1e3})),Hr(this,"getCachedColorIsDark",zt(e=>cs.isDark(e),{max:1e3}))}static truncate(e,t){return t<e.length?e.substr(0,t)+"…":e}static binaryTruncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:t.length,o=arguments.length>5?arguments[5]:void 0;if(a>=t.length&&e.measureText(t).width<=r)return t;if(o!==void 0){var l=e.measureText(o).width;return o.repeat(Math.max(1,Math.floor(r/l)))}for(var s=i,u=Math.min(t.length-1,a),d=t;u>=s;){var c=Math.ceil((u+s)/2),h=Qt.truncate(t,c);if(e.measureText(h).width<=r){if(d=h,s===c)break;s=c}else if(c===0){d=h;break}else u=c-1}return d}static truncateToWidth(e,t,r){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:Wr,a=arguments.length>4?arguments[4]:void 0;if(r<=0||t.length<=0)return"";var o=Math.min(Math.max(0,Math.floor(r/i/2)-5),t.length),l=Math.min(Math.ceil(r/i*2),t.length);return Qt.binaryTruncateToWidth(e,t,r,o,l,a)}drawCanvas(e){var{context:t}=e;t.save(),this.configureContext(t,e),this.drawBackground(t,e),this.drawGrid(t,e),this.drawHeaders(t,e),this.drawFooters(t,e),this.drawDraggingColumn(t,e),this.drawDraggingRow(t,e),this.drawScrollBars(t,e),t.restore()}configureContext(e,t){var{theme:r}=t;e.font=r.font,e.textBaseline="middle",e.lineCap="butt"}drawBackground(e,t){var{theme:r,metrics:i}=t,{width:a,height:o}=i;e.fillStyle=r.backgroundColor,e.fillRect(0,0,a,o)}drawGrid(e,t){var{metrics:r,draggingRow:i,draggingColumn:a}=t,{gridX:o,gridY:l}=r;e.translate(o,l),this.drawGridBackground(e,t,i==null&&a==null),this.drawCellContents(e,t),this.drawFloatingRows(e,t),this.drawFloatingColumns(e,t),e.translate(-o,-l)}drawFloatingRows(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingTopRowCount:l,floatingBottomRowCount:s,floatingRows:u,rowCount:d,visibleColumns:c,allRowYs:h,allRowHeights:v}=a;if(u.length!==0){o.floatingRowBackgroundColors&&this.drawRowStripesForRows(e,t,u,o.floatingRowBackgroundColors),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),this.drawGridLinesForItems(e,t,c,u,o.floatingGridColumnColor,o.floatingGridRowColor),this.drawCellBackgroundsForItems(e,t,c,u),this.drawFloatingBorders(e,t),l>0&&this.drawSelectedRanges(e,t,{top:0,bottom:l-1,maxY:D(h,l-1)+D(v,l-1)-.5}),s>0&&this.drawSelectedRanges(e,t,{top:d-s-1,bottom:d-1,minY:D(h,d-s)+.5,maxY:D(h,d-1)+D(v,d-1)-.5});for(var g=0;g<c.length;g+=1)for(var f=c[g],p=0;p<u.length;p+=1){var C=u[p];this.drawCellContent(e,t,f,C)}}}drawFloatingColumns(e,t){var{draggingRow:r,draggingColumn:i,metrics:a,theme:o}=t,{floatingLeftColumnCount:l,floatingRightColumnCount:s,floatingLeftWidth:u,floatingRightWidth:d,floatingColumns:c,gridX:h,maxX:v,columnCount:g,visibleRows:f,allColumnXs:p,allColumnWidths:C,width:w,height:b}=a;if(c.length!==0){o.floatingRowBackgroundColors&&(this.drawRowStripesForRows(e,t,f,o.floatingRowBackgroundColors,0,u),this.drawRowStripesForRows(e,t,f,o.floatingRowBackgroundColors,w-h-d,v)),r==null&&i==null&&this.drawFloatingMouseRowHover(e,t),e.save(),e.beginPath(),e.rect(0,0,u,b),e.clip(),this.drawGridLinesForItems(e,t,c,f,o.floatingGridColumnColor,o.floatingGridRowColor),e.restore(),this.drawCellBackgroundsForItems(e,t,c,f),this.drawFloatingBorders(e,t),l>0&&this.drawSelectedRanges(e,t,{left:0,maxX:D(p,l-1)+D(C,l-1)}),s>0&&this.drawSelectedRanges(e,t,{left:g-s,right:g-1,minX:D(p,g-s)+.5,maxX:D(p,g-1)+D(C,g-1)});for(var E=0;E<c.length;E+=1)for(var T=c[E],S=0;S<f.length;S+=1){var O=f[S];this.drawCellContent(e,t,T,O)}}}drawFloatingBorders(e,t){var{metrics:r,theme:i}=t,{floatingTopRowCount:a,floatingBottomRowCount:o,floatingLeftColumnCount:l,floatingRightColumnCount:s,rowCount:u,columnCount:d,allRowYs:c,allColumnXs:h,allRowHeights:v,allColumnWidths:g,maxX:f,maxY:p}=r,{floatingDividerOuterColor:C,floatingDividerInnerColor:w}=i;if(e.lineWidth=3,e.beginPath(),e.strokeStyle=C,a>0){var b=D(c,a-1)+D(v,a-1)+.5;e.moveTo(0,b),e.lineTo(f,b)}if(o>0){var E=D(c,u-o)-.5;e.moveTo(0,E),e.lineTo(f,E)}if(l>0){var T=D(h,l-1)+D(g,l-1)+.5;e.moveTo(T,0),e.lineTo(T,p)}if(s>0){var S=D(h,d-s)-.5;e.moveTo(S,0),e.lineTo(S,p)}if(e.stroke(),e.beginPath(),e.lineWidth=1,e.strokeStyle=w,a>0){var O=D(c,a-1)+D(v,a-1)+.5;e.moveTo(0,O),e.lineTo(f,O)}if(o>0){var F=D(c,u-o)-.5;e.moveTo(0,F),e.lineTo(f,F)}if(l>0){var R=D(h,l-1)+D(g,l-1)+.5;e.moveTo(R,0),e.lineTo(R,p)}if(s>0){var N=D(h,d-s)-.5;e.moveTo(N,0),e.lineTo(N,p)}e.stroke()}drawGridBackground(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.drawRowStripes(e,t),r&&(this.drawMouseColumnHover(e,t),this.drawMouseRowHover(e,t)),this.drawGridLines(e,t),this.drawCellBackgrounds(e,t);var{metrics:i}=t,{bottom:a,right:o,floatingBottomRowCount:l,floatingLeftColumnCount:s,floatingRightColumnCount:u,floatingTopRowCount:d,columnCount:c,rowCount:h,allRowHeights:v,allRowYs:g,allColumnXs:f,allColumnWidths:p,width:C,height:w}=i;this.drawSelectedRanges(e,t,{bottom:Math.min(a,h-l-1),right:Math.min(o,c-u-1),minX:s>0&&f.has(s+1)?D(f,s+1):-10,minY:d>0&&g.has(d+1)?D(g,d+1):-10,maxX:u>0&&f.has(c-u-1)?D(f,c-u-1)+D(p,c-u-1)-.5:C+10,maxY:l>0&&g.has(h-l-1)?D(g,h-l-1)+D(v,h-l-1)-.5:w+10})}drawRowStripes(e,t){var{metrics:r,theme:i}=t,{visibleRows:a}=r,{rowBackgroundColors:o}=i;o&&this.drawRowStripesForRows(e,t,a,o)}drawRowStripesForRows(e,t,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:t.metrics.maxX,{theme:l,metrics:s,model:u}=t,{maxDepth:d,shadowBlur:c,shadowColor:h}=l,v=this.getCachedBackgroundColors(i,d),{allRowYs:g,allRowHeights:f}=s,p=new Map,C=[],w=[],b=(k,L)=>{var $=De(u)?u.depthForRow(k):0,U=v[k%v.length],Y=U[Math.min($,U.length-1)];if(p.has(Y)||p.set(Y,[]),p.get(Y).push(k),L!=null){var X=De(u)?u.depthForRow(L):0;X<$?C.push(k):X>$&&w.push(L)}},E=0;E<r.length;E+=1){var T=r[E],S=E>0?r[E-1]:void 0;b(T,S)}if(p.forEach((k,L)=>{e.fillStyle=L,e.beginPath();for(var $=0;$<k.length;$+=1){var U=k[$],Y=D(g,U),X=D(f,U);e.rect(a,Y,o,X)}e.fill()}),C.length>0){e.save();var O=this.getCachedColorWithAlpha(h,.15),F=this.getCachedColorWithAlpha(h,0),R=e.createLinearGradient(0,0,0,c);R.addColorStop(0,O),R.addColorStop(1,F),e.fillStyle=R;for(var N=0;N<C.length;N+=1){var P=C[N],I=D(g,P);e.translate(0,I),e.fillRect(a,0,o,c),e.translate(0,-I)}e.restore()}if(w.length>0){e.save();var A=this.getCachedColorWithAlpha(h,0),H=this.getCachedColorWithAlpha(h,.15),x=e.createLinearGradient(0,0,0,c);x.addColorStop(0,A),x.addColorStop(1,H),e.fillStyle=x;for(var W=0;W<w.length;W+=1){var z=w[W],G=D(g,z),K=D(f,z),q=G+K-c;e.translate(0,q),e.fillRect(a,0,o,c),e.translate(0,-q)}e.restore()}}drawMouseColumnHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var l=Q.getColumnAtX(r,o);if(!(l==null||a.columnHoverBackgroundColor==null)){var{allColumnWidths:s,allColumnXs:u,maxY:d}=o;if(!(i>d)){var c=D(u,l),h=D(s,l);e.fillStyle=a.columnHoverBackgroundColor,e.fillRect(c,0,h,d)}}}}drawMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t;if(!(r==null||i==null)){var{maxX:l}=o;if(!(r>l||a.rowHoverBackgroundColor==null)){var s=Q.getRowAtY(i,o);s!=null&&this.drawMouseRowHoverForRow(e,t,s)}}}drawFloatingMouseRowHover(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o}=t,{maxX:l,floatingTopRowCount:s,floatingBottomRowCount:u,rowCount:d,rowFooterWidth:c}=o;if(!(r==null||i==null||r>l+c||a.rowHoverBackgroundColor==null)){var h=Q.getRowAtY(i,o);h!=null&&(h<s||d-u<=h)&&this.drawMouseRowHoverForRow(e,t,h)}}drawMouseRowHoverForRow(e,t,r){var{metrics:i,selectedRanges:a,theme:o}=t,{allRowHeights:l,allRowYs:s,maxX:u}=i,d=D(s,r),c=D(l,r);o.rowHoverBackgroundColor!=null&&(e.fillStyle=o.rowHoverBackgroundColor);for(var h=0;h<a.length;h+=1){var{startRow:v,endRow:g}=a[h];if(v!=null&&g!=null&&v<=r&&g>=r){o.selectedRowHoverBackgroundColor!=null&&(e.fillStyle=o.selectedRowHoverBackgroundColor);break}}e.fillRect(0,d,u,c)}drawGridLines(e,t){var{metrics:r,theme:i}=t,{visibleColumns:a,visibleRows:o}=r;this.drawGridLinesForItems(e,t,a,o,i.gridColumnColor,i.gridRowColor)}drawGridLinesForItems(e,t,r,i,a,o){a==null&&o==null||(e.lineWidth=1,e.beginPath(),a!=null&&(e.strokeStyle=a,this.drawGridLinesForColumns(e,t,r)),o!=null&&(e.strokeStyle=o,this.drawGridLinesForRows(e,t,i)),e.stroke())}drawGridLinesForColumns(e,t,r){for(var{metrics:i}=t,{allColumnXs:a,maxY:o}=i,l=0;l<r.length;l+=1){var s=r[l],u=D(a,s)+.5;e.moveTo(u,0),e.lineTo(u,o)}}drawGridLinesForRows(e,t,r){for(var{metrics:i}=t,{allRowYs:a,maxX:o}=i,l=o,s=0;s<r.length;s+=1){var u=r[s],d=D(a,u)+.5;e.moveTo(.5,d),e.lineTo(l-.5,d)}}drawCellBackgrounds(e,t){var{metrics:r}=t,{visibleColumns:i,visibleRows:a}=r;this.drawCellBackgroundsForItems(e,t,i,a)}drawCellBackgroundsForItems(e,t,r,i){e.save();for(var a=0;a<r.length;a+=1)for(var o=r[a],l=0;l<i.length;l+=1){var s=i[l],u=l+1<i.length?i[l+1]:void 0;this.drawCellBackground(e,t,o,s,u)}e.restore()}drawCellBackground(e,t,r,i,a){var{metrics:o,model:l,theme:s}=t,{firstColumn:u,modelColumns:d,modelRows:c,allColumnXs:h,allColumnWidths:v,allRowYs:g,allRowHeights:f}=o,p=D(c,i),C=D(d,r),w=l.backgroundColorForCell(C,p,s),b=r===u,E=De(l)&&l.hasExpandableRows;if(w!=null){var T=D(h,r)+1,S=D(g,i)+1,O=D(v,r)-1,F=D(f,i)-1;e.fillStyle=w,e.fillRect(T,S,O,F)}b&&E&&this.drawCellRowTreeDepthLines(e,t,i,a)}drawCellContents(e,t){for(var{metrics:r}=t,{visibleColumns:i}=r,a=0;a<i.length;a+=1){var o=i[a];this.drawColumnCellContents(e,t,o)}}drawColumnCellContents(e,t,r){var{metrics:i}=t,{allColumnXs:a,allColumnWidths:o,visibleRows:l,height:s}=i,u=D(a,r),d=D(o,r);e.save(),e.beginPath(),e.rect(u,0,d,s),e.clip();for(var c=0;c<l.length;c+=1){var h=l[c];this.drawCellContent(e,t,r,h)}e.restore()}drawCellContent(e,t,r,i){var{metrics:a,model:o}=t,{modelColumns:l,modelRows:s}=a,u=D(s,i),d=D(l,r),c=o.renderTypeForCell(d,u),h=this.getCellRenderer(c);h.drawCellContent(e,t,r,i)}getCellRenderer(e){switch(e){case"dataBar":return this.dataBarCellRenderer;default:return this.textCellRenderer}}drawCellRowTreeDepthLines(e,t,r,i){var{metrics:a,model:o,theme:l}=t;if(De(o)){var s=o.depthForRow(r);if(s!==0){var{firstColumn:u,allColumnXs:d,allRowYs:c,allRowHeights:h}=a,{treeDepthIndent:v,treeHorizontalPadding:g,treeLineColor:f}=l,p=D(d,u),C=D(c,r),w=D(h,r),b=i!==void 0?o.depthForRow(i):0,E=s>b?s-b:0;if(e.strokeStyle=f,e.lineWidth=1,s-E>0){e.beginPath();for(var T=0;T<s-E;T+=1){var S=p+T*v+v*.5+g+.5;e.moveTo(S,C),e.lineTo(S,C+w)}e.stroke()}if(E>0){e.beginPath();for(var O=s-E;O<s;O+=1){var F=p+O*v+v*.5+g+.5;e.moveTo(F,C),e.lineTo(F,C+Math.ceil(w/2)),e.moveTo(F-.5,C+Math.ceil(w/2)+.5),e.lineTo(F+v-.5,C+Math.ceil(w/2)+.5)}e.stroke()}}}}drawHeaders(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawColumnHeaders(e,t),this.drawRowHeaders(e,t)}drawFooters(e,t){var{theme:r}=t;e.font=r.headerFont,this.drawRowFooters(e,t)}drawColumnHeaders(e,t){var{mouseX:r,mouseY:i,theme:a,metrics:o,draggingColumnSeparator:l,isDragging:s,model:u}=t,{columnHeaderHeight:d,floatingColumns:c,gridX:h,width:v,visibleColumns:g,allColumnWidths:f,allColumnXs:p,floatingLeftColumnCount:C,floatingLeftWidth:w,floatingRightWidth:b,modelColumns:E,columnHeaderMaxDepth:T}=o;if(!(d<=0)){var{headerHiddenSeparatorSize:S,headerHiddenSeparatorHoverColor:O,headerSeparatorColor:F,headerSeparatorHoverColor:R}=a,N=d*.5,P=d*(T-1)+d*.5-N*.5,I=C>0;if(e.save(),this.drawColumnHeadersForRange(e,t,[g[0],g[g.length-1]],{minX:h+w,maxX:v-b}),I&&this.drawColumnHeadersForRange(e,t,[c[0],c[c.length-1]],{minX:h,maxX:h+w}),F){e.strokeStyle=F;var A=[...f.entries()].filter(Je=>{var[Xe,ze]=Je;return ze===0}).map(Je=>{var[Xe]=Je;return Xe});e.beginPath(),e.fillStyle=F;for(var H=0;H<A.length;H+=1){var x=A[H],W=D(p,x),z=D(f,x),G=h+W+z+.5-S*.5;e.rect(G,P,S,N)}e.fill()}if(R){var{index:K,depth:q}=l??{};if(K==null&&r!=null&&i!=null){var k=fs.getColumnSeparator(Q.getGridPointFromXY(r,i,o),o,u,a);K=k==null?void 0:k.index,q=k==null?void 0:k.depth}var L;if(K==null)L=!1;else{var $=E.get(K),U=E.get(K+1);$==null||U==null?L=!1:L=u.textForColumnHeader($,q)!==u.textForColumnHeader(U,q)}if(L&&K!=null&&q!=null&&(!s||l!=null)){e.strokeStyle=R;var Y=D(p,K),X=D(f,K),ae=h+Y+X+.5,ce=g.indexOf(K),ee=ce<g.length-1?g[ce+1]:null,oe=ee!=null?f.get(ee):null,ue=X===0,Ae=oe!=null&&oe===0;ue?(e.strokeStyle=O,e.fillStyle=O,e.fillRect(ae,P,S*.5,N)):Ae&&(e.fillStyle=R,e.fillRect(ae-S*.5,P,S*.5,N)),e.beginPath(),e.moveTo(ae,(T-q-1)*d),e.lineTo(ae,(T-q)*d-1),e.stroke()}}e.restore()}}drawColumnHeadersForRange(e,t,r,i){var{model:a}=t,{columnHeaderMaxDepth:o}=a;if(o!==0)for(var l=0;l<=o;l+=1)this.drawColumnHeadersAtDepth(e,t,r,i,l)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:l,theme:s}=t,{modelColumns:u,allColumnXs:d,gridX:c,userColumnWidths:h,allColumnWidths:v,movedColumns:g}=o,{columnHeaderHeight:f,columnWidth:p}=s,{columnHeaderMaxDepth:C}=l,{minX:w,maxX:b}=i,E=b-w;if(C!==0){var T=r[0],S=r[1];if(e.save(),e.translate(0,(C-a-1)*f),a===0){this.drawColumnHeader(e,t,"",w,b);for(var O=T;O<=S;O+=1)this.drawColumnHeaderAtIndex(e,t,O,i)}if(a>0)for(var F=T;F<=S;){var{columnCount:R}=o,N=D(u,F),P=l.textForColumnHeader(N,a),I=l.colorForColumnHeader(N,a),A=D(d,F)+c,H=A+D(v,F);if(P!=null){for(var x=F-1;x>=0&&(H-A<E||A>w);){var W,z,G,K=(W=u.get(x))!==null&&W!==void 0?W:Q.getModelIndex(x,g);if(K==null||l.textForColumnHeader(K,a)!==P)break;var q=(z=(G=h.get(K))!==null&&G!==void 0?G:v.get(x))!==null&&z!==void 0?z:p;A-=q,x-=1}for(var k=F+1;k<R&&(H-A<E||H<b);){var L,$,U,Y=(L=u.get(k))!==null&&L!==void 0?L:Q.getModelIndex(k,g);if(l.textForColumnHeader(Y,a)!==P)break;var X=($=(U=h.get(Y))!==null&&U!==void 0?U:v.get(k))!==null&&$!==void 0?$:p;H+=X,k+=1}F=k-1;var ae=H-A>=E,ce=A;ae&&(H<b?ce=H-E:A<w&&(ce=w)),this.drawColumnHeader(e,t,P,ce,Math.min(H-A,E),{backgroundColor:I??void 0},i)}F+=1}e.restore()}}drawColumnHeaderAtIndex(e,t,r,i){var a,{metrics:o,model:l}=t,{modelColumns:s,allColumnWidths:u,allColumnXs:d,gridX:c}=o,h=D(u,r),v=D(d,r)+c,g=D(s,r),f=l.textForColumnHeader(g);f!=null&&this.drawColumnHeader(e,t,f,v,h,{backgroundColor:(a=l.colorForColumnHeader(g))!==null&&a!==void 0?a:void 0},i)}drawColumnHeader(e,t,r,i,a,o,l){var s;if(!(a<=0)){var{metrics:u,theme:d}=t,{headerHorizontalPadding:c,columnHeaderHeight:h,headerBackgroundColor:v,headerColor:g,headerSeparatorColor:f,black:p,white:C}=d,{fontWidths:w,width:b}=u,E=(s=w.get(e.font))!==null&&s!==void 0?s:Wr,T=a-c*2,S=T/E,{backgroundColor:O=v,separatorColor:F=f}=o??{},{textColor:R=g}=o??{};try{var N=this.getCachedColorIsDark(O),P=this.getCachedColorIsDark(R);N&&P?R=C:!N&&!P&&(R=p)}catch{}var{minX:I=0,maxX:A=b}=l??{};e.save(),e.rect(I,0,A-I,h),e.clip(),O!=null&&(e.fillStyle=O,e.fillRect(i,0,a,h)),F!=null&&(e.strokeStyle=F,e.beginPath(),i>0&&(e.moveTo(i+.5,0),e.lineTo(i+.5,h)),e.moveTo(i+a+.5,0),e.lineTo(i+a+.5,h),e.moveTo(i,h-.5),e.lineTo(i+a,h-.5),e.stroke()),e.beginPath(),e.rect(i,0,a,h),e.clip(),e.fillStyle=R;var H=r;S<=0?H="":H.length>S&&(H="".concat(H.substring(0,S-1),"…"));var x=H.length*E,W=i+a*.5,z=h*.5;I+=c,A-=c;var G=i+c,K=Ie(G,I,A),q=i+a-c,k=Ie(q,I,A),L=k-K,$=W-x*.5<I,U=W+x*.5>A;$?x<L?W=I+x*.5:W=q-x*.5:U&&(x<L?W=A-x*.5:W=G+x*.5),e.textAlign="center",e.fillText(H,W,z),e.restore()}}drawRowHeaders(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o,draggingRowSeparator:l}=t,{gridY:s,rowHeaderWidth:u,height:d,visibleRows:c,allRowHeights:h,allRowYs:v}=a;if(!(u<=0)){var{headerBackgroundColor:g,headerColor:f,headerHiddenSeparatorSize:p,headerHiddenSeparatorHoverColor:C,headerSeparatorColor:w,headerSeparatorHoverColor:b}=o,E=u*.5,T=u*.5-E*.5;if(e.save(),e.beginPath(),e.fillStyle=g,e.fillRect(0,0,u,d),w){e.strokeStyle=w,e.beginPath(),e.moveTo(0,s+.5),e.lineTo(u,s+.5);for(var S=[],O=!1,F=0;F<c.length;F+=1){var R=c[F],N=D(v,R),P=D(h,R);if(P>0){var I=s+N+P+.5;e.moveTo(0,I),e.lineTo(u,I),O=!1}else O||(O=!0,S.push(R))}e.moveTo(u-.5,0),e.lineTo(u-.5,d),e.stroke(),e.beginPath(),e.fillStyle=w;for(var A=0;A<S.length;A+=1){var H=S[A],x=D(v,H),W=D(h,H),z=s+x+W+.5-p*.5;e.rect(T,z,E,p)}e.fill()}if(b){var{index:G=null}=l??{};if(G==null&&r!=null&&i!=null&&(G=Q.getRowSeparatorIndex(r,i,a,o)),G!=null){e.strokeStyle=b;var K=D(v,G),q=D(h,G),k=s+K+q+.5,L=c.indexOf(G),$=L<c.length-1?c[L+1]:null,U=$!=null?h.get($):null,Y=q===0,X=U!=null&&U===0;Y?(e.strokeStyle=C,e.fillStyle=C,e.fillRect(T,k,E,p*.5)):X&&(e.fillStyle=b,e.fillRect(T,k-p*.5,E,p*.5)),e.beginPath(),e.moveTo(.5,k),e.lineTo(u+.5,k),e.stroke()}}e.beginPath(),e.rect(0,s,u,d),e.clip(),e.fillStyle=f,e.textAlign="right";for(var ae=0;ae<c.length;ae+=1){var ce=c[ae],ee=D(h,ce),oe=D(v,ce)+s;this.drawRowHeader(e,t,ce,oe,ee)}e.restore()}}drawRowHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,model:l,theme:s}=t,{modelRows:u,rowHeaderWidth:d}=o,c=D(u,r),h=d-s.cellHorizontalPadding,v=i+a*.5;e.fillText(l.textForRowHeader(c),h,v)}}drawRowFooters(e,t){var{mouseX:r,mouseY:i,metrics:a,model:o,theme:l,draggingRowSeparator:s}=t,{gridY:u,gridX:d,maxX:c,modelRows:h,rowFooterWidth:v,height:g,verticalBarWidth:f,visibleRows:p,allRowHeights:C,allRowYs:w,width:b}=a;if(!(v<=0)){var{cellHorizontalPadding:E,headerBackgroundColor:T,headerColor:S,headerHiddenSeparatorSize:O,headerHiddenSeparatorHoverColor:F,headerSeparatorColor:R,headerSeparatorHoverColor:N}=l,P=v*.5,I=v*.5-P*.5,A=Math.min(d+c,b-v-f);if(e.save(),e.beginPath(),e.fillStyle=T,e.fillRect(A,u,v,g),R){e.strokeStyle=R,e.beginPath(),e.moveTo(A,u+.5),e.lineTo(v,u+.5);for(var H=[],x=!1,W=0;W<p.length;W+=1){var z=p[W],G=D(w,z),K=D(C,z);if(K>0){var q=u+G+K+.5;e.moveTo(A+.5,q),e.lineTo(A+v-.5,q),x=!1}else x||(x=!0,H.push(z))}e.moveTo(A+.5,u),e.lineTo(A+.5,g),e.stroke(),e.beginPath(),e.fillStyle=R;for(var k=0;k<H.length;k+=1){var L=H[k],$=D(w,L),U=D(C,L),Y=u+$+U+.5-O*.5;e.rect(A+I,Y,P,O)}e.fill()}if(N){var{index:X=null}=s??{};if(X==null&&r!=null&&i!=null&&(X=Q.getRowSeparatorIndex(r,i,a,l)),X!=null){e.strokeStyle=N;var ae=D(w,X),ce=D(C,X),ee=u+ae+ce+.5,oe=p.indexOf(X),ue=oe<p.length-1?p[oe+1]:null,Ae=ue!=null?C.get(ue):null,Je=ce===0,Xe=Ae!=null&&Ae===0;Je?(e.strokeStyle=F,e.fillStyle=F,e.fillRect(I,ee,P,O*.5)):Xe&&(e.fillStyle=N,e.fillRect(I,ee-O*.5,P,O*.5)),e.beginPath(),e.moveTo(A+.5,ee),e.lineTo(A+v+.5,ee),e.stroke()}}e.beginPath(),e.rect(A,u,v,g),e.clip(),e.fillStyle=S,e.textAlign="left";for(var ze=A+E,Ve=0;Ve<p.length;Ve+=1){var Qe=p[Ve],Ne=D(C,Qe);if(Ne>0){var lt=D(w,Qe)+u,st=D(h,Qe),Mt=lt+Ne*.5;e.fillText(o.textForRowFooter(st),ze,Mt)}}e.restore()}}drawSelectedRanges(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{cursorColumn:i,cursorRow:a,draggingRow:o,draggingColumn:l,editingCell:s,metrics:u,model:d,selectedRanges:c,theme:h}=t,{allColumnWidths:v,allColumnXs:g,allRowHeights:f,allRowYs:p,width:C,height:w}=u,{left:b=u.left,top:E=u.top,right:T=u.right,bottom:S=u.bottom,minY:O=-10,maxY:F=w+10,minX:R=-10,maxX:N=C+10}=r;if(c.length!==0){var P=ke(d)&&d.isEditable&&s==null&&o==null&&l==null&&i!=null&&a!=null&&g.has(i)&&p.has(a);if(P){var I=D(g,i),A=D(p,a),H=D(v,i),x=D(f,a);e.save(),e.beginPath(),e.rect(0,0,C,w),e.rect(I,A,H,x),e.clip("evenodd")}e.beginPath();for(var W=0;W<c.length;W+=1){var z=c[W],G=z.startColumn!==null?z.startColumn:b,K=z.startRow!==null?z.startRow:E,q=z.endColumn!==null?z.endColumn:T,k=z.endRow!==null?z.endRow:S;if(k>=E&&S>=K&&q>=b&&T>=G){var L=G>=b&&g.has(G)?Math.round(D(g,G))+.5:R,$=K>=E&&p.has(K)?Math.max(Math.round(D(p,K))+.5,.5):O,U=q<=T&&g.has(q)?Math.round(D(g,q)+D(v,q))-.5:N,Y=k<=S&&p.has(k)?Math.round(D(p,k)+D(f,k))-.5:F;e.rect(L,$,U-L,Y-$)}e.fillStyle=h.selectionColor,e.fill(),e.save(),e.clip(),e.strokeStyle=h.selectionOutlineCasingColor,e.lineWidth=3,e.stroke(),e.restore(),e.strokeStyle=h.selectionOutlineColor,e.lineWidth=1,e.stroke()}P&&i!=null&&a!=null&&(e.restore(),this.drawActiveCell(e,t,i,a))}}drawActiveCell(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:Qt.ACTIVE_CELL_BORDER_WIDTH,{metrics:o,theme:l}=t,{allColumnWidths:s,allColumnXs:u,allRowHeights:d,allRowYs:c}=o,h=D(u,r),v=D(c,i),g=D(s,r),f=D(d,i),p=h-a*.5,C=v-a*.5,w=g+a,b=f+a;p<=0&&(w+=p-1,p=1),C<=0&&(b+=C-1,C=1);var{lineWidth:E}=e;e.beginPath(),e.lineWidth=a,e.strokeStyle=l.selectionOutlineColor,this.drawRoundedRect(e,p,C,w,b),e.stroke(),e.lineWidth=E}drawRoundedRect(e,t,r,i,a){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:Qt.DEFAULT_EDGE_RADIUS;e.beginPath(),e.moveTo(t+o,r),e.lineTo(t+i-o,r),e.quadraticCurveTo(t+i,r,t+i,r+o),e.lineTo(t+i,r+a-o),e.quadraticCurveTo(t+i,r+a,t+i-o,r+a),e.lineTo(t+o,r+a),e.quadraticCurveTo(t,r+a,t,r+a-o),e.lineTo(t,r+o),e.quadraticCurveTo(t,r,t+o,r),e.closePath()}drawDraggingColumn(e,t){var r,{draggingColumn:i,metrics:a,mouseX:o,theme:l,model:s}=t;if(!(i==null||o==null)){var{range:u,depth:d}=i,{gridX:c,gridY:h,allColumnXs:v,allColumnWidths:g,height:f,width:p,columnHeaderMaxDepth:C,columnHeaderHeight:w,movedColumns:b,modelColumns:E,floatingLeftWidth:T}=a,S=(r=E.get(u[0]))!==null&&r!==void 0?r:Q.getModelIndex(u[0],b),O=s.getColumnHeaderGroup(S,d);if(!(d>0&&!O)){var[F,R]=u,N=D(v,F),P=D(v,R)+D(g,R),I=P-N,A=i.left,{backgroundColor:H,font:x,headerFont:W,reorderOffset:z,shadowBlur:G,shadowColor:K}=l,q=(C-d-1)*w;e.save(),e.translate(c,0),e.save(),e.beginPath(),e.rect(T,0,p,f),e.clip(),e.fillStyle=H,e.fillRect(N,q,I,f),e.restore(),e.translate(0,z),e.save(),e.shadowColor=K,e.shadowBlur=G,e.fillStyle=H,e.fillRect(i.left,q+z,i.width,f),e.restore(),e.beginPath(),e.rect(i.left,q,i.width+1,f),e.clip(),e.translate(A-N,0),e.font=W;for(var k=[],L=i.range[0];L<=i.range[1];L+=1)k.push(L);this.drawColumnHeaders(e,t),this.drawColumnHeadersForRange(e,t,[k[0],k[k.length-1]],{minX:N,maxX:p}),e.translate(0,h),e.font=x,this.drawGridBackground(e,t);for(var $=F;$<=R;$+=1)this.drawColumnCellContents(e,t,$);e.restore()}}}drawDraggingRow(e,t){var{draggingRow:r,draggingRowOffset:i,metrics:a,mouseY:o,theme:l}=t;if(!(r==null||o==null)){var{gridX:s,gridY:u,allRowYs:d,allRowHeights:c,width:h}=a,v=D(d,r),g=D(c,r)+1,{backgroundColor:f,font:p,headerFont:C,reorderOffset:w,shadowBlur:b,shadowColor:E}=l;e.save(),e.translate(0,u),e.fillStyle=f,e.fillRect(0,v,h,g),e.translate(s+w,o-v-u-(i??0)),e.save(),e.shadowColor=E,e.shadowBlur=b,e.fillStyle=f,e.fillRect(-s,v,h,g),e.restore(),e.beginPath(),e.rect(-s,v,h,g),e.clip(),e.font=p,this.drawGridBackground(e,t),this.drawCellContents(e,t),e.translate(-s,-u),e.font=C,this.drawRowHeaders(e,t),e.restore()}}drawScrollBars(e,t){var{isDraggingHorizontalScrollBar:r,isDraggingVerticalScrollBar:i,isDragging:a,metrics:o,mouseX:l,mouseY:s,theme:u}=t;if(!(u.scrollBarSize<=0)){var{width:d,height:c,handleHeight:h,handleWidth:v,scrollX:g,scrollY:f,hasHorizontalBar:p,hasVerticalBar:C,barWidth:w,barHeight:b,barLeft:E,barTop:T}=o,{scrollBarBackgroundColor:S,scrollBarHoverBackgroundColor:O,scrollBarCasingColor:F,scrollBarCornerColor:R,scrollBarColor:N,scrollBarHoverColor:P,scrollBarActiveColor:I,scrollBarSize:A,scrollBarHoverSize:H,scrollBarCasingWidth:x,scrollBarSelectionTick:W,scrollBarSelectionTickColor:z,scrollBarActiveSelectionTickColor:G,autoSelectRow:K,autoSelectColumn:q}=u,k=l!=null&&s!=null&&l<=d&&s<=c,L=i||C&&!r&&!a&&l!=null&&s!=null&&l>=d-H&&s>=T&&k,$=r||p&&!i&&!a&&!L&&l!=null&&s!=null&&s>=c-H&&l>=E&&k,U=$?H:A,Y=L?H:A;if(e.translate(E,T),p&&C&&(e.fillStyle=F,e.fillRect(d-E-A,c-T-A,A,A),e.fillStyle=R,e.fillRect(d-E-A+x,c-T-A+x,A-x,A-x)),p){var X=g,ae=c-T-U;if(e.fillStyle=F,e.fillRect(0,ae,w,U-x),e.fillStyle=$?O:S,e.fillRect(0,ae+x,w,U-x),r?e.fillStyle=I:$?e.fillStyle=P:e.fillStyle=N,e.fillRect(X,ae+x,v,U-x),!K&&W&&z!=null&&G!=null){e.fillStyle=z;for(var{selectedRanges:ce,cursorColumn:ee}=t,{lastLeft:oe,columnCount:ue}=o,Ae=[...ce].filter(_e=>_e.startColumn!=null&&_e.endColumn!=null),Je=Ae.map(_e=>[_e.startColumn,_e.endColumn]).sort(Q.compareRanges),Xe=Q.mergeSortedRanges(Je),ze=_e=>_e<=oe?_e/oe*(w-v):w-v+(_e-oe)/(ue-oe)*v,Ve=0;Ve<Xe.length;Ve+=1){var Qe=Xe[Ve],Ne=Qe[0],lt=Qe[1];if(Ne!=null&&lt!=null&&(Ne!==ee||lt!==ee)){var st=ze(Ne),Mt=Math.max(1,Math.round(ze(lt+1)-st)),Lt=U-x;e.fillRect(st,ae+x+Math.round(Lt/3),Mt,Math.round(Lt/3))}}if(ee!=null){var er=ze(ee),ur=2,Tt=U-x;e.fillStyle=G,e.fillRect(er,ae+x,ur,Tt)}}}if(C){var Ze=d-E-Y,kt=f;if(e.fillStyle=F,e.fillRect(Ze,0,Y-x,b),e.fillStyle=L?O:S,e.fillRect(Ze+x,0,Y-x,b),i?e.fillStyle=I:L?e.fillStyle=P:e.fillStyle=N,e.fillRect(Ze+x,kt,Y-x,h),!q&&W&&z!=null&&G!=null){var{selectedRanges:ut,cursorRow:dt}=t,{lastTop:Ye,rowCount:yt}=o,_t=_e=>_e<=Ye?_e/Ye*(b-h):b-h+(_e-Ye)/(yt-Ye)*h;e.fillStyle=z;for(var Rt=[...ut].filter(_e=>_e.startRow!=null&&_e.endRow!=null),ct=Rt.map(_e=>[_e.startRow,_e.endRow]).sort(Q.compareRanges),dr=Q.mergeSortedRanges(ct),jt=0;jt<dr.length;jt+=1){var tr=dr[jt],Ot=tr[0],xt=tr[1];if(Ot!=null&&xt!=null&&(Ot!==dt||xt!==dt)){var Ir=_t(Ot),qr=Y-x,Xr=Math.max(1,Math.round(_t(xt+1)-Ir));e.fillRect(Ze+x+Math.round(qr/3),Ir,Math.round(qr/3),Xr)}}if(dt!=null){var Qr=Math.round(_t(dt)),Zr=Y-x,Jr=2;e.fillStyle=G,e.fillRect(Ze+x,Qr,Zr,Jr)}}}e.translate(-E,-T)}}}Hr(Qt,"DEFAULT_EDGE_RADIUS",2);Hr(Qt,"ACTIVE_CELL_BORDER_WIDTH",2);const bs=Qt;function Sn(n,e,t){return e=jc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function jc(n){var e=Kc(n,"string");return typeof e=="symbol"?e:String(e)}function Kc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var zo=100;class Yc extends We{constructor(){super(...arguments),Sn(this,"startPoint",void 0),Sn(this,"hasExtendedFloating",!1),Sn(this,"timer",void 0),Sn(this,"lastTriggerTime",void 0),Sn(this,"dragBounds",void 0)}onDown(e,t,r){var{x:i,y:a,column:o,row:l}=e,{metrics:s}=t;if(!s)throw new Error("metrics not set");var{gridX:u,gridY:d,maxX:c,maxY:h}=s,v=i-u,g=a-d;if(v<0||g<0||o==null&&v>c||l==null&&g>h)return!1;var f=Q.isModifierKeyDown(r),p=r.shiftKey;f||(p?t.trimSelectedRanges():t.clearSelectedRanges());var C=t.getTheme(),{autoSelectRow:w,autoSelectColumn:b}=C;return(o!==null||!b)&&(l!==null||!w)&&(t.focus(),t.moveCursorToPosition(o,l,p,!1,p&&f)),this.startPoint=e,this.hasExtendedFloating=!1,this.dragBounds=Q.getScrollDragBounds(s,l,o),!0}onDrag(e,t){if(this.startPoint===void 0)return!1;this.stopTimer();var{row:r,column:i}=this.startPoint,{x:a,y:o}=e,{row:l,column:s}=e,{metrics:u}=t;if(!u)throw new Error("metrics not set");var{left:d,lastLeft:c,top:h,lastTop:v,columnWidth:g,rowHeight:f}=u,p=Q.getScrollDragBounds(u,r,i),C=0,w=0;if(d<c&&(a<p.x1?C=a-p.x1:a>p.x2&&(C=a-p.x2)),h<v&&(o<p.y1?w=o-p.y1:o>p.y2&&(w=o-p.y2)),C!==0||w!==0)this.startTimer(t,e,C>0?Math.ceil(C/g):Math.floor(C/g),w>0?Math.ceil(w/f):Math.floor(w/f));else if(l!=null&&s!=null){var{floatingTopRowCount:b,floatingBottomRowCount:E,floatingLeftColumnCount:T,floatingRightColumnCount:S,columnCount:O,rowCount:F,bottom:R,right:N,topVisible:P,bottomVisible:I,leftVisible:A,rightVisible:H}=u;this.hasExtendedFloating||(r!==null&&r<b&&l>=b?(l=b,this.hasExtendedFloating=!0):r!==null&&r>=F-E&&l<F-E&&(l=F-E-1,this.hasExtendedFloating=!0),i!==null&&i<T&&s>=T?(s=T,this.hasExtendedFloating=!0):i!==null&&i>=O-S&&s<O-S&&(s=O-S-1,this.hasExtendedFloating=!0)),r!==null&&!Q.isFloatingRow(r,u)&&Q.isFloatingRow(l,u)&&(r>l&&l<h?l=P-1:r<l&&l>R&&(l=I+1)),i!==null&&!Q.isFloatingColumn(i,u)&&Q.isFloatingColumn(s,u)&&(i>s&&s<d?s=A-1:i<s&&s>N&&(s=H+1)),t.moveCursorToPosition(s,l,!0,!0)}return!0}onUp(e,t){return this.startPoint!==void 0&&(this.startPoint=void 0,this.dragBounds=void 0,this.stopTimer(),t.commitSelection()),!1}moveSelection(e,t,r,i){var{row:a,column:o}=t,{metrics:l}=e;if(!l)throw new Error("metrics not set");var{selectionEndRow:s,selectionEndColumn:u}=e.state;if(s==null||u==null)throw new Error("selection not set");var{rowCount:d,columnCount:c}=l,h=r<0&&o!=null?o:0,v=r>0&&o!=null?o:c-1,g=i<0&&a!=null?a:0,f=i>0&&a!=null?a:d-1;e.moveCursorToPosition(Math.min(Math.max(h,u+r),v),Math.min(Math.max(g,s+i),f),!0),this.lastTriggerTime=Date.now()}startTimer(e,t,r,i){this.stopTimer();var a=this.lastTriggerTime!=null?zo-Math.min(zo,Date.now()-this.lastTriggerTime):0;this.timer=setTimeout(()=>{this.moveSelection(e,t,r,i),this.startTimer(e,t,r,i)},a)}stopTimer(){this.timer!==void 0&&(clearTimeout(this.timer),this.timer=void 0)}}const qc=Yc;function jo(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function mt(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?jo(Object(t),!0).forEach(function(r){br(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):jo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function br(n,e,t){return e=Xc(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Xc(n){var e=Qc(n,"string");return typeof e=="symbol"?e:String(e)}function Qc(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ko=5,Zc=1e3/60,ti=10;function mr(n,e,t,r){var i,{modelColumns:a,movedColumns:o,allColumnXs:l,columnCount:s,allColumnWidths:u,userColumnWidths:d,calculatedColumnWidths:c,floatingLeftWidth:h,maxX:v}=t;if(e==null||n==null||n>s||n<0)return null;var g=(i=a.get(n))!==null&&i!==void 0?i:Q.getModelIndex(n,o),f=r.getColumnHeaderGroup(g,e),p=f!=null,C,w,b;if(f!=null){var E,T,S,[O,F]=f.getVisibleRange(o);C=(E=l.get(O))!==null&&E!==void 0?E:h,w=((T=l.get(F))!==null&&T!==void 0?T:v)+((S=u.get(F))!==null&&S!==void 0?S:0),b=[O,F]}else{var R,N,P,I=l.get(n);if(I==null)return null;C=I,w=C+((R=(N=(P=u.get(n))!==null&&P!==void 0?P:d.get(g))!==null&&N!==void 0?N:c.get(g))!==null&&R!==void 0?R:0),b=[n,n]}return{visibleIndex:n,modelIndex:g,left:C,right:w,width:w-C,isColumnGroup:p,range:b,depth:e}}class Jc extends We{constructor(){super(...arguments),br(this,"cursor",null),br(this,"draggingOffset",void 0),br(this,"initialOffset",void 0),br(this,"initialGridPoint",void 0),br(this,"scrollingInterval",void 0),br(this,"scrollingDirection",void 0),br(this,"draggingColumn",null)}setScrollInterval(e,t){this.scrollingInterval!=null&&t===this.scrollingDirection||(this.scrollingDirection=t,this.scrollingInterval=window.setInterval(()=>{var{metrics:r}=e;if(r){var{left:i,lastLeft:a,leftOffset:o,userColumnWidths:l,calculatedColumnWidths:s,movedColumns:u,allColumnWidths:d}=r,c=i,h=o;if(t==="left")for(h-=ti;h<0;){var v;c-=1;var g=Q.getModelIndex(i-1,u),f=(v=l.get(g))!==null&&v!==void 0?v:s.get(g);f===void 0?h=0:h+=f,c<0&&(h=0,c=0)}else{h+=ti;for(var p=d.get(i);p!==void 0&&h>p;){var C;c+=1,h-=p;var w=Q.getModelIndex(i+1,u);p=(C=l.get(w))!==null&&C!==void 0?C:s.get(w),c>a&&(h=0,c=a)}}var{mouseX:b,mouseY:E}=e.state;r==null||b==null||E==null||(this.moveDraggingColumn(b,e,t==="left"?-ti:ti),e.setState({left:c,leftOffset:h}),(t==="left"&&c===0&&o===0||t==="right"&&c===a)&&this.clearScrollInterval())}},Zc))}clearScrollInterval(){this.scrollingDirection=void 0,window.clearInterval(this.scrollingInterval),this.scrollingInterval=void 0}onLeave(){return this.clearScrollInterval(),!1}onDown(e,t){var{model:r}=t.props,{x:i,column:a,columnHeaderDepth:o}=e,{metrics:l}=t;if(!l)throw new Error("Metrics not set");var s=mr(a,o,l,r);if(a==null||s==null||o==null||o>0&&!s.isColumnGroup)return!1;var{rowHeaderWidth:u}=l;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,s.modelIndex!=null&&o!=null&&r.isColumnMovable(s.modelIndex,o)&&(this.draggingOffset=i-s.left-u,this.initialOffset=this.draggingOffset),!1}onDrag(e,t,r){if(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0)return!1;var{x:i,y:a}=e,{columnHeaderDepth:o}=this.initialGridPoint,{model:l}=t.props,{draggingColumn:s}=this,{metrics:u}=t;if(!u)throw new Error("Metrics not set");if(!s&&Math.abs(this.initialGridPoint.x-i)<Ko&&Math.abs(this.initialGridPoint.y-a)<Ko)return!1;if(s==null){var d=mr(this.initialGridPoint.column,o,u,l);if(!d||o==null||!l.isColumnMovable(d.modelIndex)||o>0&&!d.isColumnGroup||d.range[0]==null)return!1;s={range:d.range,depth:o,left:d.left,width:d.width};var c=mr(s.range[0],0,u,l),h=mr(s.range[1],0,u,l);if(!c||!h)return!1;this.draggingColumn=s,t.setState({draggingColumn:s,isDragging:!0})}return this.cursor="move",this.moveDraggingColumn(e.x,t,r.movementX),!0}moveDraggingColumn(e,t,r){var i;if(!(this.draggingOffset===void 0||this.initialGridPoint===void 0||this.initialOffset===void 0||this.draggingColumn==null||r===0)){if(this.initialOffset!==this.draggingOffset){this.draggingOffset<this.initialOffset&&this.initialOffset<this.draggingOffset+r||this.draggingOffset>this.initialOffset&&this.initialOffset>this.draggingOffset+r?this.draggingOffset=this.initialOffset:this.draggingOffset+=r,this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:a}=this.draggingColumn,{model:o}=t.props,{movedColumns:l}=t.state,{metrics:s}=t;if(!s)throw new Error("Metrics not set");var{floatingLeftWidth:u,width:d,columnHeaderMaxDepth:c,allColumnXs:h}=s,v=r<0,g=mr(this.draggingColumn.range[0],a,s,o);if(g){var f=e-this.draggingOffset,p=f+g.width;this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:f}),t.setState({draggingColumn:this.draggingColumn});var C=mr(Q.getColumnAtX(Ie(v?f:p,u,d),s,!0),a,s,o),w=o.getColumnHeaderParentGroup(g.modelIndex,g.depth);if(C){if(w!==void 0){var b=w.getVisibleRange(l);if(C.visibleIndex<b[0]){var E,T=this.moveColumn(g,b[0],l);this.draggingOffset=e-((E=h.get(b[0]))!==null&&E!==void 0?E:0),this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:T});return}if(C.visibleIndex>b[1]){var S,O=this.moveColumn(g,b[1]-(g.range[1]-g.range[0]),l),{right:F=0}=(S=mr(b[1],0,s,o))!==null&&S!==void 0?S:{};this.draggingOffset=e-(F-g.width),this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:e-this.draggingOffset}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:O});return}}if(!o.isColumnMovable(C.modelIndex)){var R=C.visibleIndex;if(v)for(R+=1;R<g.visibleIndex&&!o.isColumnMovable(Q.getModelIndex(R,l));)R+=1;else for(R-=1;R>g.visibleIndex&&!o.isColumnMovable(Q.getModelIndex(R,l));)R-=1;if(R!==g.visibleIndex){v||(R-=g.range[1]-g.range[0]);var N=this.moveColumn(g,R,l);t.setState({movedColumns:N,draggingColumn:this.draggingColumn})}var P=mr(R,0,s,o);if(v){var I;this.draggingOffset=e-((I=P==null?void 0:P.left)!==null&&I!==void 0?I:0)}else{var A;this.draggingOffset=e-(((A=P==null?void 0:P.right)!==null&&A!==void 0?A:0)-g.width)}this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:e-this.draggingOffset}),t.setState({draggingColumn:this.draggingColumn});return}if(f<=u?this.setScrollInterval(t,"left"):p>d?this.setScrollInterval(t,"right"):this.clearScrollInterval(),C.visibleIndex!==g.visibleIndex&&!(v&&g.visibleIndex<C.visibleIndex||!v&&g.visibleIndex>C.visibleIndex)){for(var H=C.left+C.width*.5,x=o.getColumnHeaderParentGroup(g.modelIndex,g.depth),W,z=((i=x==null?void 0:x.depth)!==null&&i!==void 0?i:c)-1;z>=0&&W===void 0;)W=o.getColumnHeaderGroup(C.modelIndex,z),z-=1;var G;v&&f<H&&(!W||C.visibleIndex===W.getVisibleRange(l)[0])&&(G=this.moveColumn(g,C.range[0],l)),!v&&p>H&&(!W||C.visibleIndex===W.getVisibleRange(l)[1])&&(G=this.moveColumn(g,C.range[1]-(g.range[1]-g.range[0]),l)),G&&(this.draggingColumn=mt(mt({},this.draggingColumn),{},{left:f}),t.setState({movedColumns:G,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?Q.moveRange(e.range,t,r):Q.moveItem(e.visibleIndex,t,r),a=t-e.range[0],o=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=mt(mt({},this.draggingColumn),{},{range:o})),i}onUp(e,t){return this.cursor=null,this.clearScrollInterval(),this.draggingOffset!=null?(this.draggingOffset=void 0,t.setState({draggingColumn:null,isDragging:!1}),!0):!1}}const eh=Jc;function Yo(n,e,t){return e=th(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function th(n){var e=rh(n,"string");return typeof e=="symbol"?e:String(e)}function rh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class io extends We{constructor(){super(...arguments),Yo(this,"dragOffset",void 0),Yo(this,"cursor","default")}static getLeftWithOffsetFromRawLeft(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToColumn){var o=Math.round(t),l=0;return{left:o,leftOffset:l}}var s=Math.floor(t),u=t-s,d=i.allColumnWidths.get(s);if(d==null){var c=e.getMetricState();d=a.getVisibleColumnWidth(s,c)}var h=d*u;return{left:s,leftOffset:h}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:l,y:s}=e,{barLeft:u,barWidth:d,height:c,hasHorizontalBar:h}=o;return h&&i>0&&s>=c-a&&s<c&&l>u&&l<u+d}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:o,handleWidth:l,lastLeft:s,barLeft:u,columnCount:d,scrollableContentWidth:c,scrollableViewportWidth:h}=i,v=a-u,g=Ie((v-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-l),0,1);if(d===1)return{left:0,leftOffset:g*(c-h)};var f=g*s;return io.getLeftWithOffsetFromRawLeft(t,f)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:i}=e,{handleWidth:a,barLeft:o,scrollX:l}=r;if(!this.isInScrollBar(e,t))return!1;var s=i-o;if(s>=l&&s<=l+a)this.dragOffset=s-l,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:u,leftOffset:d}=this.getLeftWithOffset(e,t);t.setViewState({left:u,leftOffset:d,isDraggingHorizontalScrollBar:!0,isDragging:!0})}return!0}onDrag(e,t){if(this.dragOffset!=null){var{left:r,leftOffset:i}=this.getLeftWithOffset(e,t);return t.setViewState({left:r,leftOffset:i,isDraggingHorizontalScrollBar:!0,isDragging:!0}),!0}return!1}onMove(e,t){return this.isInScrollBar(e,t)}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingHorizontalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const nh=io;function qo(n,e,t){return e=ih(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ih(n){var e=ah(n,"string");return typeof e=="symbol"?e:String(e)}function ah(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class oh extends We{constructor(){super(...arguments),qo(this,"cursor","move"),qo(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:o}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{columnHeaderHeight:s,rowHeaderWidth:u,allRowYs:d}=l;if(i<=u&&o!==null&&r.isRowMovable(o)){var c=D(d,o);this.draggingOffset=a-c-s,t.setState({draggingRowOffset:this.draggingOffset})}return!1}onDrag(e,t){if(this.draggingOffset==null)return!1;var{model:r}=t.props,{draggingRow:i}=t.state,{mouseX:a,mouseY:o}=t.state;if(a==null||o==null)return!1;if(i==null){var{row:l}=t.getGridPointFromXY(a,o);if(l!=null&&!r.isRowMovable(l)||(i=l,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:s}=t;if(!s)throw new Error("metrics not set");var{top:u,lastTop:d,bottom:c,bottomVisible:h,rowCount:v,columnHeaderHeight:g,allRowHeights:f,allRowYs:p,height:C}=s,w=g;if(u<i){var b=i-1;w=D(p,b)+D(f,b)*.5+g}var E=C;if(i<c){var T=i+1;E=D(p,T)+D(f,T)*.5+g}var{movedRows:S}=t.state;o<w&&i>0&&r.isRowMovable(i-1)?(S=Q.moveItem(i,i-1,S),i-=1):E<o&&i<v-1&&r.isRowMovable(i+1)&&(S=Q.moveItem(i,i+1,S),i+=1),t.setState({movedRows:S,draggingRow:i});var O=g+D(f,u)*.5,F=g+D(p,h)+D(f,h)*.5;return o<O&&u>0?t.setState({top:u-1}):o>F&&u<d&&t.setState({top:u+1}),!0}onUp(e,t){return this.draggingOffset!==void 0?(this.draggingOffset=void 0,t.setState({draggingRowOffset:null,draggingRow:null,isDragging:!1}),!0):!1}}const lh=oh;function nt(n,e,t){return e=sh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function sh(n){var e=uh(n,"string");return typeof e=="symbol"?e:String(e)}function uh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ao extends gs{constructor(){super(...arguments),nt(this,"hiddenCursor","s-resize"),nt(this,"defaultCursor","row-resize"),nt(this,"pointProperty","y"),nt(this,"userSizesProperty","userRowHeights"),nt(this,"visibleOffsetProperty","visibleRowYs"),nt(this,"visibleSizesProperty","visibleRowHeights"),nt(this,"marginProperty","columnHeaderHeight"),nt(this,"calculatedSizesProperty","calculatedRowHeights"),nt(this,"initialSizesProperty","initialRowHeights"),nt(this,"modelIndexesProperty","modelRows"),nt(this,"firstIndexProperty","firstRow"),nt(this,"treePaddingProperty","treePaddingY"),nt(this,"getHiddenItems",Q.getHiddenRows),nt(this,"getNextShownItem",Q.getNextShownRow),nt(this,"getSeparator",ao.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:o}=e,l=Q.getRowSeparatorIndex(a,o,t,i);return l!=null?{index:l,depth:0}:null}setSize(e,t,r){e.setRowHeight(t,r)}resetSize(e,t){e.resetRowHeight(t)}updateSeparator(e,t){e.setState({draggingRowSeparator:t,isDragging:t!==null})}}const dh=ao;class Ei extends We{static isInTreeBox(e,t){var{column:r,row:i,x:a,y:o}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{gridX:s,gridY:u,firstColumn:d,allColumnXs:c,allColumnWidths:h,allRowHeights:v,allRowYs:g,visibleRowTreeBoxes:f}=l;if(r===d&&i!=null&&f.get(i)!=null&&a>s&&o>u){var p=D(c,r),C=D(h,r),w=D(g,i),b=D(v,i);if(a>=s+p&&a<=s+p+C&&o>=u+w&&o<=u+w+b)return!0}return!1}onDown(e,t){return Ei.isInTreeBox(e,t)}onClick(e,t,r){if(Ei.isInTreeBox(e,t)){var{row:i}=e;if(i!==null)return t.toggleRowExpanded(i,Q.isModifierKeyDown(r)),!0}return!1}}const Ta=Ei;class ch extends We{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:o,y:l}=e,{width:s,height:u,hasVerticalBar:d,hasHorizontalBar:c}=a;return i>0&&d&&c&&o>=s-i&&l>=u-i&&o<=s&&l<=u}onDown(e,t){return this.isInCorner(e,t)}onUp(e,t){return this.isInCorner(e,t)}onClick(e,t){return this.isInCorner(e,t)}}const hh=ch;function Xo(n,e,t){return e=mh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mh(n){var e=vh(n,"string");return typeof e=="symbol"?e:String(e)}function vh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class oo extends We{constructor(){super(...arguments),Xo(this,"dragOffset",void 0),Xo(this,"cursor","default")}static getTopWithOffsetFromRawTop(e,t){var r=e.getTheme(),{metrics:i,metricCalculator:a}=e;if(!i)throw new Error("metrics not set");if(r.scrollSnapToRow){var o=Math.round(t),l=0;return{top:o,topOffset:l}}var s=Math.floor(t),u=t-s,d=i.allRowHeights.get(s);if(d==null){var c=e.getMetricState();d=a.getVisibleRowHeight(s,c)}var h=d*u;return{top:s,topOffset:h}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:o}=t;if(!o)throw new Error("metrics not set");var{x:l,y:s}=e,{barTop:u,barHeight:d,width:c,hasVerticalBar:h}=o;return h&&i>0&&l>=c-a&&l<c&&s>u&&s<u+d}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:o,handleHeight:l,lastTop:s,barTop:u,rowCount:d,scrollableContentHeight:c,scrollableViewportHeight:h}=i,v=a-u,g=Ie((v-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(o-l),0,1);if(d===1)return{top:0,topOffset:g*(c-h)};var f=g*s;return oo.getTopWithOffsetFromRawTop(t,f)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:i}=e,{handleHeight:a,barTop:o,scrollY:l}=r;if(!this.isInScrollBar(e,t))return!1;var s=i-o;if(s>=l&&s<=l+a)this.dragOffset=s-l,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:u,topOffset:d}=this.getTopWithOffset(e,t);t.setViewState({top:u,topOffset:d,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top:r,topOffset:i}=this.getTopWithOffset(e,t);return t.setViewState({top:r,topOffset:i,isDraggingVerticalScrollBar:!0,isDragging:!0}),!0}return!1}onUp(e,t){return this.dragOffset!==void 0&&(this.dragOffset=void 0,t.setState({isDraggingVerticalScrollBar:!1,isDragging:!1})),this.isInScrollBar(e,t)}onClick(e,t){return this.isInScrollBar(e,t)}}const gh=oo;class fh extends We{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return ke(a)&&r!=null&&i!=null&&a.isEditableRange(B.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}const ph=fh;function Ss(n){return(n==null?void 0:n.getTokenBoxesForVisibleCell)!==void 0}function Nn(n,e,t){return e=Ch(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ch(n){var e=wh(n,"string");return typeof e=="symbol"?e:String(e)}function wh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Ai extends We{constructor(){super(...arguments),Nn(this,"timeoutId",void 0),Nn(this,"isHold",!1),Nn(this,"isDown",!1),Nn(this,"currentLinkBox",void 0)}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:l,metrics:s,props:u}=t,{model:d}=u;if(r==null||i==null||s==null)return this.currentLinkBox=void 0,!1;var{modelRows:c,modelColumns:h}=s,v=D(c,i),g=D(h,r),f=d.renderTypeForCell(g,v),p=l.getCellRenderer(f);if(!Ss(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:w,x2:b,y2:E}=this.currentLinkBox;if(a>=C&&a<=b&&o>=w&&o<=E)return!0}for(var T=t.updateRenderState(),S=p.getTokenBoxesForVisibleCell(r,i,T),O=0;O<S.length;O+=1)if(Si(S[O].token)){var F=Q.translateTokenBox(S[O],s),{x1:R,x2:N,y1:P,y2:I}=F;if(a>=R&&a<=N&&o>=P&&o<=I)return this.currentLinkBox=F,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?this.cursor="pointer":this.cursor=null,!1}onMove(e,t){return this.setCursor(e,t)}onDown(e,t,r){var i=this.isHoveringLink(e,t);return Q.isModifierKeyDown(r)||r.shiftKey||!i?!1:(this.isDown=!0,this.timeoutId!=null&&clearTimeout(this.timeoutId),this.isHold=!1,this.timeoutId=setTimeout(()=>{this.isHold=!0;var{column:a,row:o}=e,{model:l}=t.props;t.clearSelectedRanges(),t.focus(),t.moveCursorToPosition(a,o),ke(l)&&a!=null&&o!=null&&l.isEditableRange(B.makeCell(a,o))&&t.startEditing(a,o)},Ai.HOLD_LENGTH),!0)}onClick(e,t){var r=this.isHoveringLink(e,t);if(!r||!this.isDown||this.currentLinkBox==null)return this.isDown=!1,this.isHold=!1,!1;if(!this.isHold){var i;this.timeoutId!=null&&clearTimeout(this.timeoutId),this.timeoutId=void 0,t.props.onTokenClicked((i=this.currentLinkBox)===null||i===void 0?void 0:i.token)}return this.isHold=!1,this.isDown=!1,!0}}Nn(Ai,"HOLD_LENGTH",1e3);const bh=Ai;function Sh(n,e,t){return e=Eh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Eh(n){var e=Th(n,"string");return typeof e=="symbol"?e:String(e)}function Th(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class yh{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;Sh(this,"order",void 0),this.order=e}onDown(e,t){return!1}}const Kr=yh;class Rh extends Kr{onDown(e,t){switch(e.key){case"a":if(Q.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 Q.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return Q.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return Q.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(Q.isModifierKeyDown(e))return!1;var{model:r}=t.props,{columnCount:i}=r;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(i-1,t.state.cursorRow,e.shiftKey),!0}case"PageDown":return this.handlePageDown(e,t);case"PageUp":return this.handlePageUp(e,t);case"Home":return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(Q.isModifierKeyDown(e)?t.state.cursorColumn:0,Q.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:o,rowCount:l}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(Q.isModifierKeyDown(e)?t.state.cursorColumn:o-1,Q.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?B.SELECTION_DIRECTION.UP:B.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?B.SELECTION_DIRECTION.LEFT:B.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,o=Q.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:l,cursorColumn:s,selectionEndColumn:u,selectionEndRow:d}=i.state,c=a?u:s,h=a?d:l;if(o){var{model:v}=i.props,{columnCount:g,rowCount:f}=v,p=o&&a,C=null,w=null;e<0?(C=0,w=h):e>0?(C=g-1,w=h):t<0?(C=c,w=0):t>0&&(C=c,w=f-1),C!=null&&w!=null&&i.moveCursorToPosition(C,w,a,!0,p)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:b}=i.props,{autoSelectRow:E=!1,autoSelectColumn:T=!1}=b;if(E&&e!==0){var{lastLeft:S}=i.metrics,{left:O}=i.state;O=Ie(O+e,0,S),i.moveCursorToPosition(O,l,a,!1),i.setViewState({left:O})}else if(T&&t!==0){var{lastTop:F}=i.metrics,{top:R}=i.state;R=Ie(R+t,0,F),i.moveCursorToPosition(R,s,a,!1),i.setViewState({top:R})}else i.moveCursor(e,t,a)}return!0}handlePageUp(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{cursorColumn:i,selectionEndRow:a}=t.state,o=a,l=i;if(o==null)return!1;var s=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:c,hasHorizontalBar:h}=u.getMetrics(s),v=o-(d-c);v-=h?0:1,v=Math.max(v,0);var g=Math.max(v-(o-c),0);return t.moveCursorToPosition(l,v,r,!1),t.setViewState({top:g}),!0}handlePageDown(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:i,cursorColumn:a}=t.state,o=i,l=a;if(o===null)return!1;var s=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:d,topVisible:c,hasHorizontalBar:h,rowCount:v,lastTop:g}=u.getMetrics(s),f=v-1,p=d-c+o;p+=h?0:1,p=Math.min(p,f);var C=Math.min(g,p-(o-c));return t.moveCursorToPosition(l,p,r,!1),t.setViewState({top:C}),!0}}const Oh=Rh;class Fh extends Kr{onDown(e,t){switch(e.key){case"Enter":case" ":return this.handleExpandKey(e,t)}return!1}handleExpandKey(e,t){var{selectedRanges:r}=t.state;if(r.length===1){var i=r[0];if(i.startRow===i.endRow&&i.startColumn===i.endColumn){if(!t.metrics)throw new Error("grid.metrics not set");var{model:a}=t.props,{startRow:o,startColumn:l}=i;if(o!=null){var s=t.getModelRow(o);if((l===0||l==null)&&De(a)&&a.isRowExpandable(s))return t.toggleRowExpanded(o),!0}}}return!1}}const Nh=Fh;class Dh extends Kr{onDown(e,t){if(Q.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!ke(r)||!r.isEditableRange(B.makeCell(i,a)))return!1;var o=i,l=a;return o==null||l==null?!1:e.key.length===1?(t.startEditing(o,l,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(o,l),!0):e.key==="Backspace"?(t.startEditing(o,l,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(o,l,""),!0):!1}}const Ph=Dh;function Ih(n){for(var e=[],t=n.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),o=[],l=0;l<a.length;l+=1){var s,u,d=a[l];o.push((s=(u=d.textContent)===null||u===void 0?void 0:u.trim())!==null&&s!==void 0?s:"")}e.push(o)}return e}function Ah(n){var e=[];return n.forEach(t=>{var r,i=(r=t.textContent)!==null&&r!==void 0?r:"";i.length>0&&e.push(i.split(/\t|\u00a0\u00a0 \u00a0/))}),e}function Mh(n){var e,t,r=n.querySelector("table");if(r!=null)return Ih(r);var i=(e=(t=n.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(i.length>0){var{childNodes:a}=n,o=i.includes(" "),l=i.includes("    ");return o&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
2
+ `).map(s=>s.split(" ")):a.length>1||l?Ah(n.childNodes):i}return null}class Lh extends Kr{onDown(e,t){switch(e.key){case"v":if(Q.isModifierKeyDown(e)){var r=document.createElement("div");document.body.appendChild(r),r.setAttribute("contenteditable","true"),r.setAttribute("style",'clip-path: "inset(50%)"; height: 1px; width: 1px; margin: -1px; overflow: hidden; padding 0; position: absolute;');var i=()=>{r.removeEventListener("input",i),r.remove(),t.focus();var a=Mh(r);a!=null&&t.pasteValue(a)};return r.addEventListener("input",i),r.focus(),{preventDefault:!1,stopPropagation:!0}}break}return!1}}const kh=Lh;var _h=n=>{switch(n){case"ArrowDown":return It.DOWN;case"ArrowUp":return It.UP;case"ArrowLeft":return It.LEFT;case"ArrowRight":return It.RIGHT;default:return}};function lo(n){var{selectionRange:e=void 0,className:t="",disabled:r=!1,value:i="",isQuickEdit:a=!0,onChange:o=()=>{},onCancel:l=()=>{},onDone:s=()=>{},onContextMenu:u=()=>{},style:d={}}=n,c=y.useRef(null),h=y.useRef(!1),[v]=y.useState(i),[g,f]=y.useState(!1),[p,C]=y.useState(a),[w,b]=y.useState(i);y.useEffect(function(){var{current:A}=c;A!=null&&(A.focus(),e?A.setSelectionRange(e[0],e[1]):A.setSelectionRange(A.value.length,A.value.length))},[e]);var E=y.useCallback(I=>{o(I)},[o]),T=y.useCallback(I=>{var{value:A}=I.target;b(A),f(!0),E(A)},[E,b,f]),S=y.useCallback(()=>{h.current=!0,g&&E(v),f(!1),l()},[v,g,l,E]),O=y.useCallback(()=>{C(!1)},[C]),F=y.useCallback(function(I){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;s(w,{direction:I,fillRange:A})},[s,w]),R=y.useCallback(()=>{h.current||F(null)},[h,F]),N=y.useCallback(I=>{switch(I.stopPropagation(),I.key){case"Escape":I.preventDefault(),S();break;case"Enter":if(I.preventDefault(),Q.isModifierKeyDown(I))F(void 0,!0);else if(I.altKey){var A="".concat(w,`
3
+ `);b(A),f(!0),E(A)}else F(I.shiftKey?It.UP:It.DOWN);break;case"Tab":I.preventDefault(),F(I.shiftKey?It.LEFT:It.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":p&&(I.preventDefault(),F(_h(I.key)));break}},[S,F,p,b,f,E,w]),P=y.useCallback(I=>{u(I)},[u]);return m.createElement("textarea",{ref:c,className:ie("grid-cell-input-field",t),value:w,onBlur:R,onChange:T,onKeyDown:N,onContextMenu:P,onClick:O,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:r,style:d})}lo.propTypes={selectionRange:Oe.arrayOf(Oe.number),className:Oe.string,disabled:Oe.bool,isQuickEdit:Oe.bool,value:Oe.string,onChange:Oe.func,onCancel:Oe.func,onDone:Oe.func,onContextMenu:Oe.func,style:Oe.shape({})};lo.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var xh=m.createContext({});const Hh=xh;function Qo(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Bh(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Qo(a,r,i,o,l,"next",s)}function l(s){Qo(a,r,i,o,l,"throw",s)}o(void 0)})}}function Zo(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ur(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Zo(Object(t),!0).forEach(function(r){Ge(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Zo(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ge(n,e,t){return e=Uh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Uh(n){var e=Vh(n,"string");return typeof e=="symbol"?e:String(e)}function Vh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class bt extends y.PureComponent{static getScale(e){var t,r,i,a,o,l=window.devicePixelRatio||1,s=e,u=(t=(r=(i=(a=(o=s.webkitBackingStorePixelRatio)!==null&&o!==void 0?o:s.mozBackingStorePixelRatio)!==null&&a!==void 0?a:s.msBackingStorePixelRatio)!==null&&i!==void 0?i:s.oBackingStorePixelRatio)!==null&&r!==void 0?r:s.backingStorePixelRatio)!==null&&t!==void 0?t:1;return l/u}static getCursorClassName(e){return e!=null&&e!==""?"grid-cursor-".concat(e):null}constructor(e){super(e),Ge(this,"renderer",void 0),Ge(this,"metricCalculator",void 0),Ge(this,"canvas",void 0),Ge(this,"canvasContext",void 0),Ge(this,"animationFrame",void 0),Ge(this,"prevMetrics",void 0),Ge(this,"metrics",void 0),Ge(this,"renderState",void 0),Ge(this,"documentCursor",void 0),Ge(this,"dragTimer",void 0),Ge(this,"keyHandlers",void 0),Ge(this,"mouseHandlers",void 0),Ge(this,"getCachedKeyHandlers",je(s=>[...s,...this.keyHandlers].sort((u,d)=>u.order-d.order))),Ge(this,"getCachedMouseHandlers",je(s=>[...s,...this.mouseHandlers].sort((u,d)=>u.order-d.order))),this.handleClick=this.handleClick.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handleEditCellCancel=this.handleEditCellCancel.bind(this),this.handleEditCellChange=this.handleEditCellChange.bind(this),this.handleEditCellCommit=this.handleEditCellCommit.bind(this),this.handleDoubleClick=this.handleDoubleClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseDrag=this.handleMouseDrag.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleResize=this.handleResize.bind(this),this.handleWheel=this.handleWheel.bind(this);var{isStuckToBottom:t,isStuckToRight:r,metricCalculator:i,movedColumns:a,movedRows:o,renderer:l}=e;this.renderer=l||new bs,this.metricCalculator=i||new hc,this.canvas=null,this.canvasContext=null,this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.dragTimer=null,this.keyHandlers=[new Ph(400),new kh(450),new Oh(500),new Nh(900)],this.mouseHandlers=[new dh(100),new fs(200),new lh(300),new eh(400),new ph(450),new gh(500),new nh(600),new hh(700),new Ta(800),new bh(825),new qc(900)],this.state={top:0,left:0,topOffset:0,leftOffset:0,draggingColumn:null,draggingRow:null,draggingRowOffset:null,draggingColumnSeparator:null,draggingRowSeparator:null,isDraggingHorizontalScrollBar:!1,isDraggingVerticalScrollBar:!1,isDragging:!1,mouseX:null,mouseY:null,movedColumns:a,movedRows:o,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:Ee,lastSelectedRanges:Ee,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:r}}componentDidMount(){var e;this.initContext(),(e=this.canvas)===null||e===void 0||e.addEventListener("wheel",this.handleWheel,{passive:!1}),window.addEventListener("resize",this.handleResize),this.updateCanvas();var{isStuckToBottom:t,isStuckToRight:r}=this.props;t&&this.scrollToBottom(),r&&this.scrollToRight()}componentDidUpdate(e,t){var{isStickyBottom:r,isStickyRight:i,movedColumns:a,movedRows:o,onMovedColumnsChanged:l,onMoveColumnComplete:s,onMovedRowsChanged:u,onMoveRowComplete:d}=this.props,{isStickyBottom:c,isStickyRight:h,movedColumns:v,movedRows:g}=e,{movedColumns:f,movedRows:p}=t,{draggingColumn:C,draggingRow:w,movedColumns:b,movedRows:E}=this.state;v!==a&&this.setState({movedColumns:a}),g!==o&&this.setState({movedRows:o}),f!==b&&l(b),t.draggingColumn!=null&&C==null&&s(b),p!==E&&u(E),t.draggingRow!=null&&w==null&&d(E),r!==c&&this.setState({isStuckToBottom:!1}),i!==h&&this.setState({isStuckToRight:!1}),this.updateMetrics(),this.requestUpdateCanvas(),this.checkStickyScroll(),this.validateSelection()&&this.checkSelectionChange(t)}componentWillUnmount(){var e;this.animationFrame!=null&&cancelAnimationFrame(this.animationFrame),(e=this.canvas)===null||e===void 0||e.removeEventListener("wheel",this.handleWheel),window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),window.removeEventListener("resize",this.handleResize),this.stopDragTimer()}getTheme(){var{theme:e}=this.props;return bt.getTheme(this.context,e)}getGridPointFromEvent(e){_o(this.canvas);var t=this.canvas.getBoundingClientRect(),r=e.clientX-t.left,i=e.clientY-t.top;return this.getGridPointFromXY(r,i)}getGridPointFromXY(e,t){if(!this.metrics)throw new Error("metrics must be set");return Q.getGridPointFromXY(e,t,this.metrics)}getMetricState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state,t=this.getTheme(),{model:r,stateOverride:i}=this.props;if(!this.canvasContext||!this.canvas)throw new Error("Canvas and context must be defined to get metrics");var a=this.canvasContext,o=this.canvas.clientWidth,l=this.canvas.clientHeight,{left:s,top:u,leftOffset:d,topOffset:c,movedColumns:h,movedRows:v,isDraggingHorizontalScrollBar:g,isDraggingVerticalScrollBar:f,draggingColumn:p}=e;return Ur({left:s,top:u,leftOffset:d,topOffset:c,width:o,height:l,context:a,theme:t,model:r,movedColumns:h,movedRows:v,isDraggingHorizontalScrollBar:g,isDraggingVerticalScrollBar:f,draggingColumn:p},i)}getKeyHandlers(){var{keyHandlers:e}=this.props;return this.getCachedKeyHandlers(e)}getMouseHandlers(){var{mouseHandlers:e}=this.props;return this.getCachedMouseHandlers(e)}getModelColumn(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelColumns)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for column ".concat(e));return i}getModelRow(e){var t,r,i=(t=this.metrics)===null||t===void 0||(r=t.modelRows)===null||r===void 0?void 0:r.get(e);if(i===void 0)throw new Error("Unable to get ModelIndex for row ".concat(e));return i}toggleRowExpanded(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=this.getModelRow(e),{model:i}=this.props;De(i)&&i.isRowExpandable(r)&&i.setRowExpanded(r,!i.isRowExpanded(r),t),this.clearSelectedRanges(),this.commitSelection(),this.moveCursorToPosition(0,e),this.commitSelection(),this.setState({isStuckToBottom:!1})}scrollToBottom(){if(this.metrics){var{bottomVisible:e,rowCount:t,top:r,lastTop:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({top:i})}}scrollToRight(){if(this.metrics){var{rightVisible:e,columnCount:t,left:r,lastLeft:i}=this.metrics;(e<t-1&&e>0||r>i)&&this.setState({left:i})}}setSelectedRanges(e){var{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:o,selectedRanges:l}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:l}),e.length>0){var s=B.boundedRange(e[0],r,i),u=a,d=o;s.containsCell(o,a)||({row:u,column:d}=s.startCell()),this.setState({selectionStartColumn:s.startColumn,selectionStartRow:s.startRow,selectionEndColumn:s.endColumn,selectionEndRow:s.endRow,cursorColumn:d,cursorRow:u})}}initContext(){var{canvas:e}=this,{canvasOptions:t}=this.props;if(!e)throw new Error("Canvas not set");this.canvasContext=e.getContext("2d",t)}requestUpdateCanvas(){this.animationFrame==null&&(this.animationFrame=requestAnimationFrame(()=>{this.animationFrame=null,this.updateCanvas()}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var{canvasContext:e,metrics:t,renderState:r}=this;_(e),_(t),_(r),this.renderer.configureContext(e,r);var{onViewChanged:i}=this.props;i(t),this.drawCanvas(t)}updateCanvasScale(){var{canvas:e,canvasContext:t}=this;if(!e)throw new Error("canvas not set");if(!t)throw new Error("canvasContext not set");if(!e.parentElement)throw new Error("Canvas has no parent element");var r=bt.getScale(t),i=e.parentElement.getBoundingClientRect(),a=Math.floor(i.width),o=Math.floor(i.height);e.style.width="".concat(a,"px"),e.style.height="".concat(o,"px"),e.width=a*r,e.height=o*r,t.scale(r,r)}updateScrollBounds(){if(!this.metrics)throw new Error("metrics not set");var{left:e,top:t}=this.state,{lastLeft:r,lastTop:i}=this.metrics;e>r&&this.setState({left:r,leftOffset:0}),t>i&&this.setState({top:i,topOffset:0})}checkStickyScroll(){if(this.metrics){if(this.prevMetrics){var{rowCount:e,columnCount:t,height:r,width:i}=this.metrics,{rowCount:a,columnCount:o,height:l,width:s}=this.prevMetrics;if(a!==e||r!==l){var{isStuckToBottom:u}=this.state;u&&this.scrollToBottom()}if(o!==t||i!==s){var{isStuckToRight:d}=this.state;d&&this.scrollToRight()}}this.prevMetrics=this.metrics}}updateMetrics(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.state;this.prevMetrics=this.metrics;var{metricCalculator:t}=this,r=this.getMetricState(e);return this.metrics=t.getMetrics(r),this.updateScrollBounds(),this.metrics}checkSelectionChange(e){var{selectedRanges:t}=e,{selectedRanges:r}=this.state;if(r!==t){var{onSelectionChanged:i}=this.props;i(r)}}validateSelection(){for(var{model:e}=this.props,{selectedRanges:t}=this.state,{columnCount:r,rowCount:i}=e,a=0;a<t.length;a+=1){var o=t[a];if(o.endColumn!=null&&o.endColumn>=r||o.endRow!=null&&o.endRow>=i)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var{selectedRanges:e}=this.state;this.setState({selectedRanges:[],lastSelectedRanges:e})}trimSelectedRanges(){var{selectedRanges:e}=this.state;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}beginSelection(e,t){this.setState({selectionStartColumn:e,selectionStartRow:t,selectionEndColumn:e,selectionEndRow:t,cursorColumn:e,cursorRow:t})}moveSelection(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;this.setState(a=>{var{selectedRanges:o,selectionStartRow:l,selectionStartColumn:s}=a,{theme:u}=this.props,{autoSelectRow:d,autoSelectColumn:c}=u;if(r&&o.length>0){var h=o[o.length-1],v=null,g=null,f=null,p=null;if(i){var C,w,b,E;v=d!==void 0&&d?null:Math.min(e??0,(C=h.startColumn)!==null&&C!==void 0?C:0),g=c!==void 0&&c?null:Math.min(t??0,(w=h.startRow)!==null&&w!==void 0?w:0),f=d!==void 0&&d?null:Math.max(e??0,(b=h.endColumn)!==null&&b!==void 0?b:0),p=c!==void 0&&c?null:Math.max(t??0,(E=h.endRow)!==null&&E!==void 0?E:0)}else v=h.startColumn,g=h.startRow,(s!=null||l!=null)&&((d===void 0||!d)&&(v=s),(c===void 0||!c)&&(g=l)),f=d!==void 0&&d?null:e,p=c!==void 0&&c?null:t;var T=B.makeNormalized(v,g,f,p);if(h.equals(T))return null;var S=[...o];return S[S.length-1]=T,{selectedRanges:S,selectionEndColumn:e,selectionEndRow:t}}var O=[...o],F=d!==void 0&&d?null:e,R=c!==void 0&&c?null:t;return O.push(B.makeNormalized(F,R,F,R)),{selectedRanges:O,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:r}=t,{selectedRanges:i,lastSelectedRanges:a,cursorRow:o,cursorColumn:l}=e;if(i.length===1&&(r!==void 0&&r?B.rowCount(i)===1:B.cellCount(i)===1)&&B.rangeArraysEqual(i,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var s=i.slice();if(s.length>1){for(var u=s[s.length-1],d=0;d<s.length-1;d+=1){var c=s[d];if(c.contains(u)){var h=c.subtract(u);s.pop(),s.splice(d,1),s=s.concat(h);break}}s=B.consolidate(s)}var v=l,g=o;if(!B.containsCell(s,l,o)){var{model:f}=this.props,{columnCount:p,rowCount:C}=f,w=B.nextCell(B.boundedRanges(i,p,C));w!=null?{column:v,row:g}=w:(v=null,g=null)}return s.length===0&&(v=null,g=null),{cursorRow:g,cursorColumn:v,selectedRanges:s,lastSelectedRanges:i}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:r,height:i,lastTop:a,userRowHeights:o,rowHeight:l}=this.metrics,s=i-r,u=Math.round(s/2)+((t=o.get(e))!==null&&t!==void 0?t:l),d=this.getMetricState(),c=this.metricCalculator.getLastTop(d,e+1,u);this.setState({top:Math.min(a,c),selectedRanges:[new B(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:h}=this.state;this.moveCursorToPosition(h,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:r,autoSelectColumn:i}=t,a=i!==void 0&&i?null:0,o=i!==void 0&&i?null:e.rowCount-1,l=r!==void 0&&r?null:0,s=r!==void 0&&r?null:e.columnCount-1;this.setSelectedRanges([new B(l,a,s,o)])}moveCursor(e,t,r){var{cursorRow:i,cursorColumn:a,selectionEndColumn:o,selectionEndRow:l}=this.state,s=r?o:a,u=r?l:i;if(u===null||s===null){var{left:d,top:c}=this.state;this.moveCursorToPosition(d,c,r)}else{var{model:h}=this.props,{columnCount:v,rowCount:g}=h,f=Ie(s+e,0,v-1),p=Ie(u+t,0,g-1);this.moveCursorToPosition(f,p,r)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:B.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:o,selectedRanges:l}=this.state,s=l.length>0?l:[B.makeCell(o,a)],u=null;if(s.length===1&&B.cellCount(s)===1){var d,c=new B(0,0,r-1,i-1);u=(d=c.nextCell(o,a,e))!==null&&d!==void 0?d:c.startCell(e)}else u=B.nextCell(B.boundedRanges(s,r,i),o,a,e);if(u!=null){var{column:h,row:v}=u;this.setState({cursorColumn:h,cursorRow:v}),B.containsCell(l,h,v)||this.setState({selectedRanges:[B.makeCell(h,v)],selectionStartColumn:h,selectionStartRow:v,selectionEndColumn:h,selectionEndRow:v}),this.moveViewToCell(u.column,u.row)}}moveCursorToPosition(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;r||this.beginSelection(e,t),this.moveSelection(e,t,r,a),i&&this.moveViewToCell(e,t)}moveViewToCell(e,t){if(!this.metrics)throw new Error("metrics not set");var{metricCalculator:r}=this,{bottomVisible:i,rightVisible:a,topVisible:o,leftVisible:l}=this.metrics,s=this.getMetricState(this.state),{top:u,left:d,topOffset:c,leftOffset:h}=this.state;t!=null&&!Q.isFloatingRow(t,this.metrics)&&(t<o?(u=r.getTopForTopVisible(s,t),c=0):t>i&&(u=r.getTopForBottomVisible(s,t),c=0)),e!=null&&!Q.isFloatingColumn(e,this.metrics)&&(e<l?(d=r.getLeftForLeftVisible(s,e),h=0):e>a&&(d=r.getLeftForRightVisible(s,e),h=0)),this.setViewState({top:u,left:d,topOffset:c,leftOffset:h})}setViewState(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!this.metrics)throw new Error("metrics not set");var{isStickyBottom:r,isStickyRight:i}=this.props,{top:a,left:o}=e,{lastTop:l,lastLeft:s}=this.metrics;a!=null&&this.setState({isStuckToBottom:r&&a>=l}),o!=null&&this.setState({isStuckToRight:i&&o>=s}),this.setState(e),t&&this.forceUpdate()}startEditing(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0,{model:o}=this.props;if(!ke(o))throw new Error("model is not editable");var l=this.getModelColumn(e),s=this.getModelRow(t),u={column:e,row:t,selectionRange:i,value:a!==void 0?a:o.editValueForCell(l,s),isQuickEdit:r};this.setState({editingCell:u,cursorColumn:e,cursorRow:t}),this.moveViewToCell(e,t)}isValidForCell(e,t,r){var{model:i}=this.props,a=this.getModelColumn(e),o=this.getModelRow(t);return ke(i)&&i.isValidForCell(a,o,r)}pasteValue(e){var t=this;return Bh(function*(){var{model:r}=t.props,{movedColumns:i,movedRows:a,selectedRanges:o}=t.state;try{if(xo(r),!r.isEditable||!o.every(p=>r.isEditableRange(p)))throw new la("Can't paste in to read-only area.");if(o.length<=0)throw new la("Select an area to paste to.");if(typeof e=="string"){var l=[],s=Q.getModelRanges(o,i,a);B.forEachCell(s,(p,C)=>{l.push({column:p,row:C,text:e})}),yield r.setValues(l);return}var u=e.length,d=e[0].length,{columnCount:c,rowCount:h}=r,v=o;if(v.every(p=>{var C,w;return B.cellCount([p])===1&&((C=p.startColumn)!==null&&C!==void 0?C:0)+d<=c&&((w=p.startRow)!==null&&w!==void 0?w:0)+u<=h})&&(v=v.map(p=>{var C,w;return new B(p.startColumn,p.startRow,((C=p.startColumn)!==null&&C!==void 0?C:0)+d-1,((w=p.startRow)!==null&&w!==void 0?w:0)+u-1)}),t.setSelectedRanges(v)),!v.every(p=>B.rowCount([p])===u&&B.columnCount([p])===d))throw new la("Copy and paste area are not same size.");var g=[];v.forEach(p=>{for(var C=0;C<d;C+=1)for(var w=0;w<u;w+=1){var b,E;g.push({column:((b=p.startColumn)!==null&&b!==void 0?b:0)+C,row:((E=p.startRow)!==null&&E!==void 0?E:0)+w,text:e[w][C]})}}),yield r.setValues(g)}catch(p){var{onError:f}=t.props;f(p instanceof Error?p:new Error("".concat(p)))}})()}setValueForCell(e,t,r){var{model:i}=this.props;xo(i);var a=this.getModelColumn(e),o=this.getModelRow(t);return i.isValidForCell(a,o,r)?(i.setValueForCell(a,o,r),!0):!1}setValueForRanges(e,t){var{model:r}=this.props,{movedColumns:i,movedRows:a}=this.state,o=Q.getModelRanges(e,i,a);ke(r)&&r.setValueForRanges(o,t)}isSelected(e,t){for(var{selectedRanges:r}=this.state,i=0;i<r.length;i+=1){var a,o,l=r[i],s=l.startRow===null||l.startRow<=e&&e<=((a=l.endRow)!==null&&a!==void 0?a:0),u=l.startColumn===null||l.startColumn<=t&&t<=((o=l.endColumn)!==null&&o!==void 0?o:0);if(s&&u)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==bt.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=bt.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)},bt.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.updateMetrics(),!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{renderer:e,canvasContext:t,renderState:r}=this;t.save(),e.drawCanvas(r),t.restore()}focus(){var e;(e=this.canvas)===null||e===void 0||e.focus()}isFocused(){return document.activeElement===this.canvas}handleClick(e){for(var t,r=this.getGridPointFromEvent(e),i=this.getMouseHandlers(),a=0;a<i.length;a+=1){var o=i[a];if(o.onClick(r,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}(t=this.canvas)===null||t===void 0||t.focus()}handleContextMenu(e){for(var t=this.getGridPointFromEvent(e),r=this.getMouseHandlers(),i=0;i<r.length;i+=1){var a=r[i];if(a.onContextMenu(t,this,e)!==!1){e.stopPropagation(),e.preventDefault();break}}}handleKeyDown(e){for(var t=this.getKeyHandlers(),r=0;r<t.length;r+=1){var i=t[r],a=i.onDown(e,this);if(a!==!1){var o,l,s=a;(!((o=s==null?void 0:s.stopPropagation)!==null&&o!==void 0)||o)&&e.stopPropagation(),(!((l=s==null?void 0:s.preventDefault)!==null&&l!==void 0)||l)&&e.preventDefault();break}}}notifyMouseHandlers(e,t){for(var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,a=this.getGridPointFromEvent(t),o=this.getMouseHandlers(),l=null,s=0;s<o.length;s+=1){var u=o[s],d=u[e]!=null&&u[e](a,this,t);if(d!==!1){var c,h;u.cursor!=null&&({cursor:l}=u,i&&this.addDocumentCursor(l));var v=d;(!((c=v==null?void 0:v.stopPropagation)!==null&&c!==void 0)||c)&&t.stopPropagation(),(!((h=v==null?void 0:v.preventDefault)!==null&&h!==void 0)||h)&&t.preventDefault();break}}if(this.setState({cursor:l}),r){var{x:g,y:f}=a;this.setState({mouseX:g,mouseY:f})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onUp",e,!1),this.stopDragTimer(),this.removeDocumentCursor())}handleResize(){if(this.updateCanvas(),!this.metrics)throw new Error("metrics not set");this.forceUpdate()}handleWheel(e){if(this.notifyMouseHandlers("onWheel",e),!e.defaultPrevented){var{metricCalculator:t,metrics:r}=this,i=this.getMetricState();if(!r)throw new Error("metrics not set");for(var{lastTop:a,lastLeft:o,columnCount:l,rowCount:s,scrollableContentWidth:u,scrollableViewportWidth:d,scrollableContentHeight:c,scrollableViewportHeight:h,hasHorizontalBar:v,hasVerticalBar:g}=r,{top:f,left:p,topOffset:C,leftOffset:w}=r,b=this.getTheme(),{deltaX:E,deltaY:T}=Q.getScrollDelta(e,r.barWidth,r.barHeight,r.rowHeight,r.rowHeight);v&&E!==0;){if(w+=E,E=0,l>1){if(w>0&&p>=o||w<0&&p<=0){w=0;break}}else{if(w<=0){w=0;break}var S=u-d;if(w>=S){w=S;break}}if(w>0){var O,F=(O=r.allColumnWidths.get(p))!==null&&O!==void 0?O:t.getVisibleColumnWidth(p,i);w>=F?(E=w-F,w=0,p+=1):b.scrollSnapToColumn&&l>1&&(w=0,p+=1)}else if(w<0){var R,N=(R=r.allColumnWidths.get(p-1))!==null&&R!==void 0?R:t.getVisibleColumnWidth(p-1,i);Math.abs(w)<=N&&b.scrollSnapToColumn&&l>1?(w=0,p-=1):(E=w+N,w=0,p-=1)}}for(;g&&T!==0;){if(C+=T,T=0,s>1){if(C>0&&f>=a||C<0&&f<=0){C=0;break}}else{if(C<=0){C=0;break}var P=c-h;if(C>=P){C=P;break}}if(C>0){var I,A=(I=r.allRowHeights.get(f))!==null&&I!==void 0?I:t.getVisibleRowHeight(f,i);C>=A?(T=C-A,C=0,f+=1):b.scrollSnapToRow&&s>1&&(C=0,f+=1)}else if(C<0){var H,x=(H=r.allRowHeights.get(f-1))!==null&&H!==void 0?H:t.getVisibleRowHeight(f-1,i);Math.abs(C)<=x&&b.scrollSnapToRow&&s>1?(C=0,f-=1):(T=C+x,C=0,f-=1)}}this.setViewState({top:f,left:p,leftOffset:w,topOffset:C}),e.stopPropagation(),e.preventDefault()}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:r}=t;try{return _o(r),{editingCell:Ur(Ur({},r),{},{value:e})}}catch(a){var{onError:i}=this.props;return i(a instanceof Error?a:new Error("".concat(a))),null}})}handleEditCellCommit(e){var{direction:t=It.DOWN,fillRange:r=!1}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{editingCell:i,selectedRanges:a}=this.state;if(!i)throw new Error("editingCell not set");var{column:o,row:l}=i;if(!this.isValidForCell(o,l,e)){t===null&&this.setState({editingCell:null});return}r?this.setValueForRanges(a,e):this.setValueForCell(o,l,e),t!==null&&this.moveCursorInDirection(t),this.setState({editingCell:null}),this.focus()}renderInputField(){var{model:e}=this.props,{editingCell:t}=this.state,{metrics:r}=this;if(t==null||r==null||!ke(e))return null;var{selectionRange:i,value:a,isQuickEdit:o}=t,{column:l,row:s}=t,{gridX:u,gridY:d,allColumnXs:c,allRowYs:h,allColumnWidths:v,allRowHeights:g}=r,f=c.get(l),p=h.get(s),C=v.get(l),w=g.get(s),b=f!=null&&p!=null&&C!=null&&w!=null?{position:"absolute",left:u+f,top:d+p,width:C,height:w}:{opacity:0},E=this.getModelColumn(l),T=this.getModelRow(s),S=E!=null&&T!=null?{textAlign:e.textAlignForCell(E,T)}:void 0,O=e.isValidForCell(E,T,a);return m.createElement("div",{style:b},m.createElement(lo,{key:"".concat(l,",").concat(s),selectionRange:i,className:ie({error:!O}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:o,style:S,value:a}))}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{cursorColumn:e,cursorRow:t,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:o,draggingRowSeparator:l,editingCell:s,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:c,mouseX:h,mouseY:v,selectedRanges:g}=this.state,{model:f,stateOverride:p}=this.props,{metrics:C}=this,w=this.canvasContext,b=this.getTheme(),E=this.canvas.clientWidth,T=this.canvas.clientHeight;return _(C),this.renderState=Ur({width:E,height:T,context:w,theme:b,model:f,metrics:C,mouseX:h,mouseY:v,selectedRanges:g,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:o,draggingRowSeparator:l,editingCell:s,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:d,isDragging:c,cursorColumn:e,cursorRow:t},p),this.renderState}render(){var{cursor:e}=this.state;return m.createElement(m.Fragment,null,m.createElement("canvas",{className:ie("grid-canvas",bt.getCursorClassName(e)),ref:t=>{this.canvas=t},onClick:this.handleClick,onContextMenu:this.handleContextMenu,onDoubleClick:this.handleDoubleClick,onKeyDown:this.handleKeyDown,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,tabIndex:0},"Your browser does not support HTML canvas. Update your browser?"),this.renderInputField())}}Ge(bt,"contextType",Hh);Ge(bt,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:Ee,mouseHandlers:Ee,movedColumns:Ee,movedRows:Ee,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:n=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:()=>{},onTokenClicked:n=>{Si(n)&&window.open(n.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});Ge(bt,"pixelsPerLine",100/3);Ge(bt,"dragTimeout",1e3);Ge(bt,"getTheme",je((n,e)=>Ur(Ur(Ur({},vc),n),e)));const $h=bt;function Gh(n,e,t){return e=Wh(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wh(n){var e=zh(n,"string");return typeof e=="symbol"?e:String(e)}function zh(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var sa=5e3;class jh extends hu{constructor(){super(...arguments),Gh(this,"getCachedTokensInText",zt((e,t)=>{if(t>=e.length)return Q.findTokensWithProtocolInText(e);var r=e.slice(t-1,sa).search(/\s/),i=t+r;r===-1&&(i=Math.min(sa,e.length));var a=e.substring(0,i);return Q.findTokensWithProtocolInText(a)}))}get floatingTopRowCount(){return 0}get floatingBottomRowCount(){return 0}get floatingLeftColumnCount(){return 0}get floatingRightColumnCount(){return 0}get columnHeaderMaxDepth(){return 1}truncationCharForCell(e,t){}textAlignForCell(e,t){return"left"}colorForCell(e,t,r){return r.textColor}backgroundColorForCell(e,t,r){return null}colorForColumnHeader(e){return null}textForRowHeader(e){return""}textForRowFooter(e){return""}isColumnMovable(e){return!0}isRowMovable(e){return!0}getColumnHeaderGroup(e,t){}getColumnHeaderParentGroup(e,t){}tokensForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:sa,i=this.textForCell(e,t);return this.getCachedTokensInText(i,r)}renderTypeForCell(e,t){return"text"}}const Kh=jh;function Yh(n,e){var t=Qh(n);if(t!==void 0){var r=nm(n);return"".concat(r," ? ").concat(t," : ").concat(e)}}function qh(n,e){return n.Column.formatRowColor(e)}function Xh(n,e){return n.formatColor(e)}var Mn=Fe.module("ConditionalFormattingUtils"),pt;(function(n){n.CONDITIONAL="conditional",n.ROWS="rows"})(pt||(pt={}));var re;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_BETWEEN="is-between",n.GREATER_THAN="greater-than",n.GREATER_THAN_OR_EQUAL="greater-than-or-equal",n.LESS_THAN="less-than",n.LESS_THAN_OR_EQUAL="less-than-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(re||(re={}));var ge;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.CONTAINS="contains",n.DOES_NOT_CONTAIN="does-not-contain",n.STARTS_WITH="starts-with",n.ENDS_WITH="ends-with",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(ge||(ge={}));var he;(function(n){n.IS_EXACTLY="is-exactly",n.IS_NOT_EXACTLY="is-not-exactly",n.IS_BEFORE="is-before",n.IS_BEFORE_OR_EQUAL="is-before-or-equal",n.IS_AFTER="is-after",n.IS_AFTER_OR_EQUAL="is-after-or-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(he||(he={}));var Ke;(function(n){n.IS_TRUE="is-true",n.IS_FALSE="is-false",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(Ke||(Ke={}));var Ue;(function(n){n.IS_EQUAL="is-equal",n.IS_NOT_EQUAL="is-not-equal",n.IS_NULL="is-null",n.IS_NOT_NULL="is-not-null"})(Ue||(Ue={}));var fe;(function(n){n.NO_FORMATTING="no-formatting",n.POSITIVE="positive",n.NEGATIVE="negative",n.WARN="warn",n.NEUTRAL="neutral",n.ACCENT_1="accent-1",n.ACCENT_2="accent-2",n.CUSTOM="custom"})(fe||(fe={}));function Jo(n){switch(n){case fe.NO_FORMATTING:return"No formatting";case fe.POSITIVE:return"Positive";case fe.NEGATIVE:return"Negative";case fe.WARN:return"Warn";case fe.NEUTRAL:return"Neutral";case fe.ACCENT_1:return"Accent 1";case fe.ACCENT_2:return"Accent 2";case fe.CUSTOM:return"Custom..."}}function Ti(n){var{type:e,customConfig:t}=n;switch(e){case fe.NO_FORMATTING:return;case fe.POSITIVE:return"#9fde6f";case fe.NEGATIVE:return"#ff6087";case fe.WARN:return"#f67f40";case fe.NEUTRAL:return"#ffd95c";case fe.ACCENT_1:return"#78dce8";case fe.ACCENT_2:return"#ab9bf5";case fe.CUSTOM:return t==null?void 0:t.background;default:return}}function yi(n){var{type:e,customConfig:t}=n;switch(e){case fe.NO_FORMATTING:return;case fe.POSITIVE:return"#526a3f";case fe.NEGATIVE:return"#802f44";case fe.WARN:return"#663318";case fe.NEUTRAL:return"#63562b";case fe.ACCENT_1:return"#3f6469";case fe.ACCENT_2:return"#554d72";case fe.CUSTOM:return t==null?void 0:t.color;default:return}}function Qh(n){var e=yi(n.style),t=Ti(n.style);if(!(e===void 0||t===void 0))return"bgfg(`".concat(t,"`, `").concat(e,"`)")}function Zh(n){var{column:e,value:t,start:r,end:i}=n;return vm(e.name,n.condition,t,r,i)}function Jh(n){var{column:e,value:t}=n;return gm(e.name,n.condition,t)}function em(n){var{column:e,value:t}=n;return fm(e.name,n.condition,t)}function tm(n){var{column:e}=n;return pm(e.name,n.condition)}function rm(n){var{column:e,value:t}=n;return Cm(e.name,n.condition,t)}function nm(n){var{column:e}=n;if(M.isNumberType(e.type))return Zh(n);if(M.isCharType(e.type))return rm(n);if(M.isStringType(e.type))return Jh(n);if(M.isDateType(e.type))return em(n);if(M.isBooleanType(e.type))return tm(n);throw new Error("Invalid column type")}function im(n){switch(n){case re.IS_EQUAL:return"is equal to";case re.IS_NOT_EQUAL:return"is not equal to";case re.IS_BETWEEN:return"is between";case re.GREATER_THAN:return"greater than";case re.GREATER_THAN_OR_EQUAL:return"greater than or equal to";case re.LESS_THAN:return"less than";case re.LESS_THAN_OR_EQUAL:return"less than or equal to";case re.IS_NULL:return"is null";case re.IS_NOT_NULL:return"is not null"}}function am(n){switch(n){case ge.IS_EXACTLY:return"is exactly";case ge.IS_NOT_EXACTLY:return"is not exactly";case ge.CONTAINS:return"contains";case ge.DOES_NOT_CONTAIN:return"does not contain";case ge.STARTS_WITH:return"starts with";case ge.ENDS_WITH:return"ends with";case ge.IS_NULL:return"is null";case ge.IS_NOT_NULL:return"is not null"}}function om(n){switch(n){case he.IS_EXACTLY:return"is";case he.IS_NOT_EXACTLY:return"is not";case he.IS_BEFORE:return"is before";case he.IS_BEFORE_OR_EQUAL:return"is before or equal";case he.IS_AFTER:return"is after";case he.IS_AFTER_OR_EQUAL:return"is after or equal";case he.IS_NULL:return"is null";case he.IS_NOT_NULL:return"is not null"}}function lm(n){switch(n){case Ke.IS_TRUE:return"is true";case Ke.IS_FALSE:return"is false";case Ke.IS_NULL:return"is null";case Ke.IS_NOT_NULL:return"is not null"}}function sm(n){switch(n){case Ue.IS_EQUAL:return"is";case Ue.IS_NOT_EQUAL:return"is not";case Ue.IS_NULL:return"is null";case Ue.IS_NOT_NULL:return"is not null"}}function Es(n){if(M.isNumberType(n))return re.IS_EQUAL;if(M.isCharType(n))return Ue.IS_EQUAL;if(M.isStringType(n))return ge.IS_EXACTLY;if(M.isDateType(n))return he.IS_EXACTLY;if(M.isBooleanType(n))return Ke.IS_TRUE;throw new Error("Invalid column type")}function Ts(n){if(M.isCharType(n)||M.isStringType(n))return""}function ys(n){var{condition:e,value:t,start:r,end:i}=n;return{condition:e,value:t,start:r,end:i}}function Mi(n){return{condition:Es(n),value:Ts(n),start:void 0,end:void 0}}function Rs(){return{type:fe.NO_FORMATTING}}function um(n){switch(n){case ge.IS_EXACTLY:return"==";case ge.IS_NOT_EXACTLY:return"!=";case ge.CONTAINS:return"contains";case ge.DOES_NOT_CONTAIN:return"does not contain";case ge.STARTS_WITH:return"starts with";case ge.ENDS_WITH:return"ends with";case ge.IS_NULL:return"is null";case ge.IS_NOT_NULL:return"is not null"}}function dm(n){switch(n){case he.IS_EXACTLY:return"==";case he.IS_NOT_EXACTLY:return"!=";case he.IS_BEFORE:return"<";case he.IS_BEFORE_OR_EQUAL:return"<=";case he.IS_AFTER:return">";case he.IS_AFTER_OR_EQUAL:return">=";case he.IS_NULL:return"is null";case he.IS_NOT_NULL:return"is not null"}}function cm(n){switch(n){case Ke.IS_TRUE:return"is true";case Ke.IS_FALSE:return"is false";case Ke.IS_NULL:return"is null";case Ke.IS_NOT_NULL:return"is not null"}}function hm(n){switch(n){case Ue.IS_EQUAL:return"==";case Ue.IS_NOT_EQUAL:return"!=";case Ue.IS_NULL:return"is null";case Ue.IS_NOT_NULL:return"is not null"}}function mm(n){switch(n){case re.IS_EQUAL:return"==";case re.IS_NOT_EQUAL:return"!=";case re.IS_BETWEEN:return"==";case re.GREATER_THAN:return">";case re.GREATER_THAN_OR_EQUAL:return">=";case re.LESS_THAN:return"<";case re.LESS_THAN_OR_EQUAL:return"<=";case re.IS_NULL:return"is null";case re.IS_NOT_NULL:return"is not null"}}function vm(n,e,t,r,i){switch(e){case re.IS_EQUAL:return"".concat(n," == ").concat(t);case re.IS_NOT_EQUAL:return"".concat(n," != ").concat(t);case re.IS_BETWEEN:return"".concat(n," > ").concat(r," && ").concat(n," < ").concat(i);case re.GREATER_THAN:return"".concat(n," > ").concat(t);case re.GREATER_THAN_OR_EQUAL:return"".concat(n," >= ").concat(t);case re.LESS_THAN:return"".concat(n," < ").concat(t);case re.LESS_THAN_OR_EQUAL:return"".concat(n," <= ").concat(t);case re.IS_NULL:return"".concat(n," == null");case re.IS_NOT_NULL:return"".concat(n," != null")}}function gm(n,e,t){switch(e){case ge.IS_EXACTLY:return"".concat(n,' == "').concat(t,'"');case ge.IS_NOT_EXACTLY:return"".concat(n,' != "').concat(t,'"');case ge.CONTAINS:return"".concat(n," != null && ").concat(n,'.contains("').concat(t,'")');case ge.DOES_NOT_CONTAIN:return"".concat(n," != null && !").concat(n,'.contains("').concat(t,'")');case ge.STARTS_WITH:return"".concat(n," != null && ").concat(n,'.startsWith("').concat(t,'")');case ge.ENDS_WITH:return"".concat(n," != null && ").concat(n,'.endsWith("').concat(t,'")');case ge.IS_NULL:return"".concat(n," == null");case ge.IS_NOT_NULL:return"".concat(n," != null")}}function fm(n,e,t){switch(e){case he.IS_EXACTLY:return"".concat(n,' == convertDateTime("').concat(t,'")');case he.IS_NOT_EXACTLY:return"".concat(n," != convertDateTime(`").concat(t,"`)");case he.IS_BEFORE:return"".concat(n," < convertDateTime(`").concat(t,"`)");case he.IS_BEFORE_OR_EQUAL:return"".concat(n,' <= convertDateTime("').concat(t,'")');case he.IS_AFTER:return"".concat(n," > convertDateTime(`").concat(t,"`)");case he.IS_AFTER_OR_EQUAL:return"".concat(n," >= convertDateTime(`").concat(t,"`)");case he.IS_NULL:return"".concat(n," == null");case he.IS_NOT_NULL:return"".concat(n," != null")}}function pm(n,e){switch(e){case Ke.IS_TRUE:return"".concat(n," == true");case Ke.IS_FALSE:return"".concat(n," == false");case Ke.IS_NULL:return"".concat(n," == null");case Ke.IS_NOT_NULL:return"".concat(n," != null")}}function Cm(n,e,t){switch(e){case Ue.IS_EQUAL:return"".concat(n," == '").concat(t,"'");case Ue.IS_NOT_EQUAL:return"".concat(n," != '").concat(t,"'");case Ue.IS_NULL:return"isNull(".concat(n,")");case Ue.IS_NOT_NULL:return"!isNull(".concat(n,")")}}function wm(n,e){if(M.isNumberType(n))return mm(e);if(M.isCharType(n))return hm(e);if(M.isStringType(n))return um(e);if(M.isDateType(n))return dm(e);if(M.isBooleanType(n))return cm(e);throw new Error("Invalid column type")}function bm(n,e,t){if(t===void 0)return Mn.debug("no rules passed."),[];var r=[],i,a=new Map;return t.forEach(o=>{var l,{config:s,type:u}=o,{column:d}=s,c=e.find(C=>{var{name:w,type:b}=C;return w===d.name&&b===d.type});if(c===void 0){Mn.debug("Column ".concat(d.name,":").concat(d.type," not found. Ignoring format rule."),s);return}var[h,v]=(l=u===pt.CONDITIONAL?a.get(c.name):i)!==null&&l!==void 0?l:["null",void 0],g=Yh(s,h);if(g===void 0){Mn.debug("Ignoring format rule.",s);return}var f=v===void 0?-1:r.indexOf(v);f>-1&&r.splice(f,1);var p=u===pt.CONDITIONAL?Xh(c,g):qh(n,g);r.push(p),u===pt.CONDITIONAL?a.set(c.name,[g,p]):i=[g,p]}),r}function Sm(n,e,t){switch(e){case he.IS_NULL:case he.IS_NOT_NULL:return!0;default:{var[r,...i]=(t??"").split(" "),a=i.join(" ");try{xn.parseDateTimeString(r)}catch{return Mn.debug("Invalid datetime string",r),!1}try{n.i18n.TimeZone.getTimeZone(a)}catch{return Mn.debug("Invalid timezone string",a),!1}return!0}}}function Em(n){var{type:e}=n;return M.isNumberType(e)||M.isCharType(e)||M.isStringType(e)||M.isDateType(e)||M.isBooleanType(e)}function Li(n){var{animation:e="iris-grid-bottom-bar-slide-up",children:t,className:r,isShown:i,onClick:a,onEntering:o,onEntered:l,onExiting:s,onExited:u}=n;return m.createElement(Or,{in:i,timeout:qe.transitionMs,classNames:e,onEntering:o,onEntered:l,onExiting:s,onExited:u,mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:ie("iris-grid-bottom-bar",r),role:"presentation",onClick:a,onKeyPress:a},t))}var Tm=3e3,ym=5;function Rm(n){var{isSaving:e=!1,onSave:t,onDiscard:r,discardTooltip:i,saveTooltip:a,error:o,pendingDataErrors:l,pendingDataMap:s,onEntering:u,onEntered:d,onExiting:c,onExited:h}=n,[v,g]=y.useState(!1),[f,p]=y.useState(!1),C=y.useRef(),w=is(e),b=y.useMemo(()=>l.size===0?o:l.size<=ym?"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)"),[o,l]);y.useEffect(function(){w!=null&&w&&!e&&b==null&&(g(!0),p(!0),C.current=setTimeout(()=>{g(!1)},Tm))},[b,e,w]),y.useEffect(function(){C.current&&s.size>0&&(clearTimeout(C.current),g(!1),p(!1))},[s]),y.useEffect(function(){return()=>C.current?clearTimeout(C.current):void 0},[]);var E=s.size,T;return e?T=m.createElement(zr,null):f&&(T=ts),m.createElement(Li,{className:"pending-data-bottom-bar",isShown:E>0||v||b!=null,onEntering:u,onEntered:d,onExiting:c,onExited:()=>{p(!1),h&&h()}},b!=null&&b!==""&&m.createElement("div",{className:"error-message"},m.createElement(de,{icon:In}),m.createElement("span",null,"".concat(b))),(b==null||b==="")&&m.createElement("div",{className:"status-message"},E>0&&m.createElement("span",null,"".concat(E," row").concat(E>1?"s":""," pending"))),m.createElement("div",{className:"buttons-container"},!e&&!f&&m.createElement(Z,{kind:"secondary",onClick:r,tooltip:i},"Discard"),m.createElement(Z,{kind:f?"success":"primary",onClick:t,icon:T,disabled:e||f||b!=null,tooltip:a},e&&"Committing...",!e&&f&&"Success",!e&&!f&&"Commit")))}var ya;(function(n){n.COUNT="Count",n.MIN="Min",n.MAX="Max",n.SUM="Sum",n.ABS_SUM="AbsSum",n.VAR="Var",n.AVG="Avg",n.STD="Std",n.FIRST="First",n.LAST="Last",n.SKIP="Skip",n.COUNT_DISTINCT="CountDistinct",n.DISTINCT="Distinct",n.UNIQUE="Unique"})(ya||(ya={}));const ye=ya;var Om=[ye.SUM,ye.ABS_SUM,ye.MIN,ye.MAX,ye.VAR,ye.AVG,ye.STD,ye.FIRST,ye.LAST,ye.COUNT_DISTINCT,ye.DISTINCT,ye.COUNT,ye.UNIQUE],Fm=n=>{switch(n){default:return!1}},Nm=(n,e)=>{switch(n){case ye.COUNT:case ye.FIRST:case ye.LAST:case ye.COUNT_DISTINCT:case ye.DISTINCT:case ye.UNIQUE:return!0;case ye.MIN:case ye.MAX:return M.isNumberType(e)||M.isDateType(e)||M.isTextType(e);case ye.SUM:case ye.ABS_SUM:case ye.VAR:case ye.AVG:case ye.STD:return M.isNumberType(e);case ye.SKIP:return!1}},so=(n,e)=>n.filter(t=>Nm(e,t.type)),Dm=(n,e,t,r)=>so(n,e).map(i=>{var{name:a}=i;return a}).filter(i=>t.includes(i)?!r:r);const Rr={isRollupOperation:Fm,filterValidColumns:so,getOperationColumnNames:Dm};var Ra;(function(n){n.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS="filter-control-change-clears-all-filters",n.LINK_CHANGE_CLEARS_ALL_FILTERS="link-change-clears-all-filters"})(Ra||(Ra={}));const sn=Ra;var Pm=Object.freeze([[sn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS,!1],[sn.LINK_CHANGE_CLEARS_ALL_FILTERS,!1]]);const Im={DEFAULTS:Pm};function Sr(n,e,t){return e=Am(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Am(n){var e=Mm(n,"string");return typeof e=="symbol"?e:String(e)}function Mm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Lm=Fe.module("ColumnHeaderGroup");function ua(n){return n instanceof Pt}class Pt{constructor(e){var{name:t,children:r,color:i,depth:a,childIndexes:o,parent:l}=e;Sr(this,"name",void 0),Sr(this,"children",void 0),Sr(this,"depth",void 0),Sr(this,"parent",void 0),Sr(this,"color",void 0),Sr(this,"childIndexes",void 0),Sr(this,"getVisibleRange",je(s=>{var u=this.childIndexes.flat(),d=j.getVisibleIndexes(u,s),c=Math.min(...d),h=Math.max(...d);return h-c!==u.length-1&&Lm.warn("Column header group ".concat(this.name," is not contiguous")),[c,h]})),this.name=t,this.children=r,this.color=i,this.depth=a,this.childIndexes=o,this.parent=l}setParent(e){this.parent=e}addChildren(e){var t=new Set(this.children.concat(e));this.children=[...t]}removeChildren(e){var t=new Set(this.children);e.forEach(r=>t.delete(r)),this.children=[...t]}get isNew(){return this.name.startsWith(Pt.NEW_GROUP_PREFIX)}}Sr(Pt,"NEW_GROUP_PREFIX",":newGroup");var km=["selectedValues"],_m=["selectedValues"];function el(n,e){if(n==null)return{};var t=xm(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function xm(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}function tl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ir(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?tl(Object(t),!0).forEach(function(r){Oa(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):tl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oa(n,e,t){return e=Hm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hm(n){var e=Bm(n,"string");return typeof e=="symbol"?e:String(e)}function Bm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var En=Fe.module("IrisGridUtils");function vr(n,e){return n>=0&&n<e.length}function Um(n){return n.asDate!=null}class Me{static dehydrateGridState(e,t){var{isStuckToBottom:r,isStuckToRight:i,movedColumns:a,movedRows:o}=t,{columns:l}=e;return{isStuckToBottom:r,isStuckToRight:i,movedColumns:[...a].filter(s=>{var{to:u,from:d}=s;return vr(u,l)&&(typeof d=="number"&&vr(d,l)||Array.isArray(d)&&vr(d[0],l)&&vr(d[1],l))}).map(s=>{var{to:u,from:d}=s;return{to:l[u].name,from:Array.isArray(d)?[l[d[0]].name,l[d[1]].name]:l[d].name}}),movedRows:[...o]}}static hydrateGridState(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],{isStuckToBottom:i,isStuckToRight:a,movedColumns:o,movedRows:l}=t,{columns:s}=e,u=Me.parseCustomColumnNames(r),d=s.map(c=>{var{name:h}=c;return h}).concat(u);return{isStuckToBottom:i,isStuckToRight:a,movedColumns:[...o].map(c=>{var{to:h,from:v}=c,g=f=>typeof f=="string"?d.findIndex(p=>p===f):f;return{to:g(h),from:Array.isArray(v)?[g(v[0]),g(v[1])]:g(v)}}).filter(c=>{var{to:h,from:v}=c;return vr(h,d)&&(typeof v=="number"&&vr(v,d)||Array.isArray(v)&&vr(v[0],d)&&vr(v[1],d))}),movedRows:[...l]}}static dehydrateIrisGridPanelState(e,t){var{isSelectingPartition:r,partition:i,partitionColumn:a,advancedSettings:o}=t;return{isSelectingPartition:r,partition:i,partitionColumn:a!=null?a.name:null,advancedSettings:[...o]}}static hydrateIrisGridPanelState(e,t){var r,{isSelectingPartition:i,partition:a,partitionColumn:o,advancedSettings:l}=t,{columns:s}=e;return{isSelectingPartition:i,partition:a??null,partitionColumn:o!=null&&(r=Me.getColumnByName(s,o))!==null&&r!==void 0?r:null,advancedSettings:new Map([...Im.DEFAULTS,...l])}}static dehydrateQuickFilters(e){return[...e].map(t=>{var[r,i]=t,{text:a}=i;return[r,{text:a}]})}static dehydrateLong(e){return e!=null?"".concat(e):null}static dehydrateSort(e){return e.map(t=>{var{column:r,isAbs:i,direction:a}=t;return{column:r.name,isAbs:i,direction:a}})}static extractTableSettings(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],{irisGridPanelState:r,irisGridState:i}=e,{partitionColumn:a,partition:o}=r,{advancedFilters:l,quickFilters:s,sorts:u}=i;return{advancedFilters:l,inputFilters:t,partition:o,partitionColumn:a,quickFilters:s,sorts:u}}static getInputFiltersForColumns(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.filter(r=>{var{name:i,type:a}=r;return e.find(o=>{var{name:l,type:s}=o;return l===i&&s===a})})}static getFiltersFromFilterMap(e){for(var t=[],r=Array.from(e.keys()),i=0;i<r.length;i+=1){var a=r[i],o=e.get(a);(o==null?void 0:o.filter)!=null&&t.push(o.filter)}return t}static getHiddenColumns(e){return[...e.entries()].filter(t=>{var[,r]=t;return r===0}).map(t=>{var[r]=t;return r})}static parseCustomColumnNames(e){return e.map(t=>t.split("=")[0])}static getRemovedCustomColumnNames(e,t){var r=Me.parseCustomColumnNames(e),i=Me.parseCustomColumnNames(t);return r.filter(a=>!i.includes(a))}static removeSortsInColumns(e,t){return e.filter(r=>!t.includes(r.column.name))}static removeFiltersInColumns(e,t,r){var i=e.map(o=>{var{name:l}=o;return l}),a=new Map(t);return r.forEach(o=>a.delete(i.indexOf(o))),a}static removeColumnFromMovedColumns(e,t,r){for(var i=e.map(s=>{var{name:u}=s;return u}),a=[...t],o=function(){for(var u=r[l],d=i.findIndex(C=>C===u),c=[],h=0;h<a.length;h+=1){var v=a[h],g=ir({},v),[f,p]=Array.isArray(v.from)?v.from:[v.from,v.from];d<=v.to&&(g.to-=1),d<f&&(f-=1),d<=p&&(p-=1),f<=p&&f!==g.to&&(f===p?c.push(ir(ir({},g),{},{from:f})):c.push(ir(ir({},g),{},{from:[f,p]}))),d=j.applyItemMoves(d,d,[v])[0][0]}a=c,i.splice(i.findIndex(C=>C===u),1)},l=0;l<r.length;l+=1)o();return a}static removeColumnsFromSelectDistinctColumns(e,t){return e.filter(r=>!t.includes(r))}static getVisibleColumnsInRange(e,t,r,i,a){for(var o=[],l=t;l<=r;l+=1){var s=j.getModelIndex(l,i);s>=0&&s<e.length&&!a.includes(s)&&o.push(e[s])}return o}static getPrevVisibleColumns(e,t,r,i,a){for(var o=[],l=t;l>=0&&o.length<r;){var s=j.getModelIndex(l,i);s>=0&&s<e.length&&!a.includes(s)&&o.unshift(e[s]),l-=1}return o}static getNextVisibleColumns(e,t,r,i,a){for(var o=[],l=t;l<e.length&&o.length<r;){var s=j.getModelIndex(l,i);s>=0&&s<e.length&&!a.includes(s)&&o.push(e[s]),l+=1}return o}static getColumnsToFetch(e,t,r){var i=[...t];return r.forEach(a=>{var o=e.find(l=>{var{name:s}=l;return s===a});o!=null&&!t.includes(o)&&i.push(o)}),i}static getModelViewportColumns(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:[],l=arguments.length>6&&arguments[6]!==void 0?arguments[6]:0;if(t==null||r==null)return null;var s=Me.getVisibleColumnsInRange(e,t,r,i,a),u=s.length*l,d=Me.getPrevVisibleColumns(e,t-1,u,i,a),c=Me.getNextVisibleColumns(e,r+1,u,i,a),h=[...d,...s,...c];return Me.getColumnsToFetch(e,h,o)}static isValidSnapshotRanges(e){if(e==null||e.length===0)return!1;for(var t=new Map,r=0;r<e.length;r+=1){var i=e[r],a="".concat(i.startRow,":").concat(i.endRow),o="".concat(i.startColumn,":").concat(i.endColumn);t.has(a)||t.set(a,[]),t.get(a).push(o)}for(var l=[...t.keys()],s=t.get(l[0]).sort().join(","),u=1;u<l.length;u+=1)if(t.get(l[u]).sort().join(",")!==s)return!1;return!0}static isValidIndex(e){return!Number.isInteger(e)||typeof e!="number"?!1:e>=0}static columnsFromRanges(e,t){if(e==null||e.length===0)return[];if(e[0].startColumn===null&&e[0].endColumn===null)return[...t];for(var r=new Set,i=0;i<e.length;i+=1){var a=e[i];_(a.startColumn),_(a.endColumn);for(var o=(l=a.startColumn)!==null&&l!==void 0?l:0;o<=((s=a.endColumn)!==null&&s!==void 0?s:t.length-1);o+=1){var l,s;r.add(o)}}return[...r].map(u=>t[u])}static snapshotDataToMatrix(e){for(var{columns:t,rows:r}=e,i=[],a=0;a<r.length;a+=1){for(var o=r[a],l=[],s=0;s<t.length;s+=1){var u=t[s],d=o.get(u);l.push(d)}i.push(l)}return i}static getModelRollupConfig(e,t,r){var i,a;if(((i=t==null||(a=t.columns)===null||a===void 0?void 0:a.length)!==null&&i!==void 0?i:0)===0)return null;for(var{columns:o=[],showConstituents:l=!0,showNonAggregatedColumns:s=!0,includeDescriptions:u=!0}=t??{},{aggregations:d=[]}=r??{},c=d.map(C=>{var{operation:w,selected:b,invert:E}=C;return Rr.isRollupOperation(w)?[]:Rr.getOperationColumnNames(e,w,b,E)}),h={},v=0;v<d.length;v+=1)h[d[v].operation]=c[v];if(s){var g=new Set(e.map(C=>C.name).filter(C=>!o.includes(C)));if(c.forEach(C=>{C.forEach(w=>g.delete(w))}),g.size>0){var f,p=(f=h[ye.FIRST])!==null&&f!==void 0?f:[];h[ye.FIRST]=[...p,...g]}}return{groupingColumns:o,includeConstituents:l,includeDescriptions:u,aggregations:h}}static getPendingErrors(e){e.forEach((t,r)=>{if(!Me.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!Me.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})})}static getColumn(e,t){return t<e.length?e[t]:(En.error("Unable to retrieve column",t,">=",e.length),null)}static getColumnByName(e,t){var r=e.find(i=>{var{name:a}=i;return a===t});return r==null&&En.error("Unable to retrieve column by name",t,e.map(i=>{var{name:a}=i;return a})),r}static changeFilterColumnNamesToIndexes(e,t){return t.map(r=>{var{name:i,filter:a}=r,o=e.findIndex(l=>l.name===i);return o<0?null:[o,a]}).filter(r=>r!=null)}static combineFiltersFromList(e,t){t.sort((d,c)=>d.operator==="eq"&&c.operator!=="eq"?1:d.operator!=="eq"&&c.operator==="eq"?-1:d.startColumnIndex-c.startColumnIndex);for(var r="",i=0;i<t.length;i+=1){var{text:a,value:o,operator:l}=t[i];if(o!==void 0){var s="";l!==void 0&&(o==null&&l==="eq"?s="=":l!=="eq"&&(l==="startsWith"||l==="endsWith"?s="*":s=M.getFilterOperatorString(l)));var u="".concat(s).concat(a);l==="startsWith"&&(u="".concat(a).concat(s)),e!=null&&o!==null&&M.isCharType(e)&&(u="".concat(s).concat(String.fromCharCode(parseInt(a,10)))),i!==0&&(r+=l==="eq"?" || ":" && "),r+=u}}return r}static parseColumnHeaderGroups(e,t){var r=1,i=new Map,a=new Map,o=t==null?void 0:t.filter(c=>{var{children:h}=c;return h.length>0});if(o.length===0)return{groups:[],maxDepth:r,parentMap:i,groupMap:a};var l=new Map(o.map(c=>[c.name,c])),s=new Set,u=c=>{var{name:h}=c;if(e.getColumnIndexByName(h)!=null)throw new Error("Column header group has same name as column: ".concat(h));var v=a.get(h);if(v)return v;var g=[],f=1;c.children.forEach(C=>{if(s.has(C))throw new Error("Column group child ".concat(C," specified in multiple groups"));s.add(C);var w=l.get(C),b=e.getColumnIndexByName(C);if(w){var E=u(w);g.push(...E.childIndexes),f=Math.max(f,E.depth+1)}else if(b!=null)g.push(b),f=Math.max(f,1);else throw new Error("Unknown child ".concat(C," in group ").concat(h))});var p=new Pt(ir(ir({},c),{},{depth:f,childIndexes:g.flat()}));return a.set(h,p),c.children.forEach(C=>i.set(C,p)),r=Math.max(r,p.depth+1),p},d=new Set;return o.forEach(c=>{var{name:h}=c;if(d.has(h))throw new Error("Duplicate column group name: ".concat(h));d.add(h),u(c)}),a.forEach(c=>{var h;c.setParent((h=i.get(c.name))===null||h===void 0?void 0:h.name)}),{groups:[...a.values()],maxDepth:r,groupMap:a,parentMap:i}}static convertValueToText(e,t){if(t!=null&&M.isCharType(t)&&e!=null&&typeof e=="number")return String.fromCharCode(e);if(M.isDateType(t)&&Um(e)){var r=new Date(e.asDate()),i=r.getTimezoneOffset(),a=new Date(r.getTime()-i*60*1e3),o=a.toISOString(),l=o.replace("T"," ").substring(0,23);return l}return e==null?"":"".concat(e)}constructor(e){Oa(this,"dh",void 0),Oa(this,"tableUtils",void 0),this.dh=e,this.tableUtils=new M(e)}dehydrateIrisGridState(e,t){var{aggregationSettings:r={aggregations:Ee,showOnTop:!1},advancedFilters:i,customColumnFormatMap:a,isFilterBarShown:o,metrics:l,quickFilters:s,customColumns:u,conditionalFormats:d=Ee,reverseType:c,rollupConfig:h=void 0,showSearchBar:v,searchValue:g,selectDistinctColumns:f=Ee,selectedSearchColumns:p,sorts:C,invertSearchColumns:w,pendingDataMap:b=lr,frozenColumns:E,columnHeaderGroups:T}=t;_(l);var{userColumnWidths:S,userRowHeights:O}=l,{columns:F}=e;return{advancedFilters:this.dehydrateAdvancedFilters(F,i),aggregationSettings:r,customColumnFormatMap:[...a],isFilterBarShown:o,quickFilters:Me.dehydrateQuickFilters(s),sorts:Me.dehydrateSort(C),userColumnWidths:[...S].filter(R=>{var[N]=R;return N!=null&&N>=0&&N<F.length}).map(R=>{var[N,P]=R;return[F[N].name,P]}),userRowHeights:[...O],customColumns:[...u],conditionalFormats:[...d],reverseType:c,rollupConfig:h,showSearchBar:v,searchValue:g,selectDistinctColumns:[...f],selectedSearchColumns:p,invertSearchColumns:w,pendingDataMap:this.dehydratePendingDataMap(F,b),frozenColumns:E,columnHeaderGroups:T==null?void 0:T.map(R=>({name:R.name,children:R.children,color:R.color}))}}hydrateIrisGridState(e,t){var r,i,{advancedFilters:a,aggregationSettings:o={aggregations:[],showOnTop:!1},customColumnFormatMap:l,isFilterBarShown:s,quickFilters:u,sorts:d,customColumns:c,conditionalFormats:h,userColumnWidths:v,userRowHeights:g,reverseType:f,rollupConfig:p=void 0,showSearchBar:C,searchValue:w,selectDistinctColumns:b,selectedSearchColumns:E,invertSearchColumns:T=!0,pendingDataMap:S=[],frozenColumns:O,columnHeaderGroups:F}=t,{columns:R,formatter:N}=e;return{advancedFilters:this.hydrateAdvancedFilters(R,a,N.timeZone),aggregationSettings:o,customColumnFormatMap:new Map(l),isFilterBarShown:s,quickFilters:this.hydrateQuickFilters(R,u,N.timeZone),sorts:this.hydrateSort(R,d),userColumnWidths:new Map(v.map(P=>{var[I,A]=P;return typeof I=="string"||I instanceof String?[R.findIndex(H=>{var{name:x}=H;return x===I}),A]:[I,A]}).filter(P=>{var[I]=P;return I!=null&&I>=0&&I<R.length})),customColumns:c,conditionalFormats:h,userRowHeights:new Map(g),reverseType:f,rollupConfig:p,showSearchBar:C,searchValue:w,selectDistinctColumns:b,selectedSearchColumns:E,invertSearchColumns:T,pendingDataMap:this.hydratePendingDataMap(R,S),frozenColumns:O,columnHeaderGroups:Me.parseColumnHeaderGroups(e,(r=F??((i=e.layoutHints)===null||i===void 0?void 0:i.columnGroups))!==null&&r!==void 0?r:[]).groups}}hydrateQuickFilters(e,t,r){var i=t.map(a=>{var[o,l]=a,{text:s}=l,u=null;try{var d=Me.getColumn(e,o);d!=null&&(u=this.tableUtils.makeQuickFilter(d,s,r))}catch(c){En.error("hydrateQuickFilters error with",s,c)}return[o,{text:s,filter:u}]});return new Map(i)}dehydrateAdvancedFilters(e,t){return[...t].map(r=>{var[i,a]=r,o=Me.getColumn(e,i);_(o);var l=this.dehydrateAdvancedFilterOptions(o,a.options);return[i,{options:l}]})}hydrateAdvancedFilters(e,t,r){var i=t.map(a=>{var[o,l]=a,s=Me.getColumn(e,o);_(s);var u=this.hydrateAdvancedFilterOptions(s,l.options),d=null;try{var c=Me.getColumn(e,o);c!=null&&(d=this.tableUtils.makeAdvancedFilter(s,u,r))}catch(h){En.error("hydrateAdvancedFilters error with",u,h)}return[o,{options:u,filter:d}]});return new Map(i)}dehydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=el(t,km);return ir({selectedValues:r==null?void 0:r.map(a=>this.dehydrateValue(a,e==null?void 0:e.type))},i)}hydrateAdvancedFilterOptions(e,t){var{selectedValues:r}=t,i=el(t,_m);return ir({selectedValues:r==null?void 0:r.map(a=>this.hydrateValue(a,e==null?void 0:e.type))},i)}dehydratePendingDataMap(e,t){return[...t].map(r=>{var[i,{data:a}]=r;return[i,{data:[...a].map(o=>{var[l,s]=o;return[e[l].name,this.dehydrateValue(s,e[l].type)]})}]})}hydratePendingDataMap(e,t){var r=new Map,i=a=>(r.has(a)||r.set(a,e.findIndex(o=>{var{name:l}=o;return l===a})),r.get(a));return new Map(t.map(a=>{var[o,{data:l}]=a;return[o,{data:new Map(l.map(s=>{var u,[d,c]=s,h=i(d);return _(h),[(u=i(d))!==null&&u!==void 0?u:null,this.hydrateValue(c,e[h].type)]}))}]}))}dehydrateValue(e,t){return M.isDateType(t)?this.dehydrateDateTime(e):M.isLongType(t)?Me.dehydrateLong(e):e}hydrateValue(e,t){return M.isDateType(t)?this.hydrateDateTime(e):M.isLongType(t)?this.hydrateLong(e):e}dehydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.format(xn.FULL_DATE_FORMAT,e):null}hydrateDateTime(e){return e!=null?this.dh.i18n.DateTimeFormat.parse(xn.FULL_DATE_FORMAT,e):null}hydrateLong(e){return e!=null?this.dh.LongWrapper.ofString(e):null}hydrateSort(e,t){var{dh:r}=this;return t.map(i=>{var{column:a,isAbs:o,direction:l}=i;if(l===M.sortDirection.reverse)return r.Table.reverse();var s=typeof a=="string"?Me.getColumnByName(e,a):Me.getColumn(e,a);if(s!=null){var u=s.sort();return o&&(u=u.abs()),l===M.sortDirection.descending?u=u.desc():u=u.asc(),u}return null}).filter(i=>i!=null&&i.direction!==M.sortDirection.reverse)}applyTableSettings(e,t,r){var{columns:i}=e,a=[];t.quickFilters&&(a=Me.getFiltersFromFilterMap(this.hydrateQuickFilters(i,t.quickFilters,r)));var o=[];t.advancedFilters&&(o=Me.getFiltersFromFilterMap(this.hydrateAdvancedFilters(i,t.advancedFilters,r)));var l=this.getFiltersFromInputFilters(i,t.inputFilters,r),s=[];t.sorts&&(s=this.hydrateSort(i,t.sorts));var u=[...a,...o],{partition:d,partitionColumn:c}=t;if(d!=null&&c!=null){var h=Me.getColumnByName(i,c);if(h){var v=h.filter().eq(this.dh.FilterValue.ofString(d));u=[v,...u]}}u=[...l,...u],e.applyFilter(u),e.applySort(s)}getFiltersFromInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t.map(i=>{var{name:a,type:o,value:l}=i,s=e.find(u=>{var{name:d,type:c}=u;return d===a&&c===o});if(s)try{return this.tableUtils.makeQuickFilter(s,l,r)}catch(u){En.debug("Unable to create input filter",u)}return null}).filter(i=>i!=null)}rangeSetFromRanges(e){var{dh:t}=this,r=e.slice().sort((i,a)=>(_(i.startRow),_(a.startRow),i.startRow-a.startRow)).map(i=>{var{startRow:a,endRow:o}=i;return _(a),_(o),t.RangeSet.ofRange(a,o)});return t.RangeSet.ofRanges(r)}}const Re=Me;function Nr(n,e,t){return e=Vm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vm(n){var e=$m(n,"string");return typeof e=="symbol"?e:String(e)}function $m(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ct=Fe.module("IrisGridCopyHandler");class Ce extends y.Component{static getStatusMessageText(e,t){switch(e){case Ce.COPY_STATES.CONFIRMATION_REQUIRED:return"Are you sure you want to copy ".concat(t.toLocaleString()," rows to your clipboard?");case Ce.COPY_STATES.CLICK_REQUIRED:return"Fetched ".concat(t.toLocaleString()," rows!");case Ce.COPY_STATES.FETCH_ERROR:return"Unable to copy data.";case Ce.COPY_STATES.FETCH_IN_PROGRESS:return"Fetching ".concat(t.toLocaleString()," rows for clipboard...");case Ce.COPY_STATES.DONE:return"Copied to Clipboard!";default:return""}}static getCopyButtonText(e){switch(e){case Ce.BUTTON_STATES.FETCH_IN_PROGRESS:return"Fetching";case Ce.BUTTON_STATES.CLICK_TO_COPY:return"Click to Copy";case Ce.BUTTON_STATES.RETRY:return"Retry";default:return"Copy"}}constructor(e){super(e),Nr(this,"textData",void 0),Nr(this,"hideTimer",void 0),Nr(this,"fetchPromise",void 0),this.handleBackgroundClick=this.handleBackgroundClick.bind(this),this.handleCancelClick=this.handleCancelClick.bind(this),this.handleCopyClick=this.handleCopyClick.bind(this),this.handleHideTimeout=this.handleHideTimeout.bind(this),this.state={error:void 0,copyState:Ce.COPY_STATES.IDLE,buttonState:Ce.BUTTON_STATES.COPY,isShown:!1,rowCount:0}}componentDidMount(){var{copyOperation:e}=this.props;e!=null&&this.startCopy()}componentDidUpdate(e){var{copyOperation:t}=this.props;e.copyOperation!==t&&this.startCopy()}componentWillUnmount(){this.stopCopy()}startCopy(){Ct.debug2("startCopy"),this.stopCopy();var{copyOperation:e}=this.props;if(e==null){Ct.debug2("No copy operation set, cancelling out"),this.setState({isShown:!1});return}var{ranges:t,error:r}=e;if(r!=null){Ct.debug("Showing copy error",r),this.setState({isShown:!0,copyState:Ce.COPY_STATES.DONE,error:r}),this.startHideTimer();return}var i=B.rowCount(t);this.setState({rowCount:i,isShown:!0,error:void 0}),i>Ce.NO_PROMPT_THRESHOLD?this.setState({buttonState:Ce.BUTTON_STATES.COPY,copyState:Ce.COPY_STATES.CONFIRMATION_REQUIRED}):this.startFetch()}stopCopy(){this.textData=void 0,this.stopFetch(),this.stopHideTimer()}handleBackgroundClick(){Ct.debug2("handleBackgroundClick");var{copyState:e}=this.state;e===Ce.COPY_STATES.DONE&&this.setState({isShown:!1})}handleCancelClick(){Ct.debug2("handleCancelClick"),this.stopFetch(),this.setState({isShown:!1})}handleCopyClick(){Ct.debug2("handleCopyClick"),this.textData!=null?this.copyText(this.textData):this.startFetch()}handleHideTimeout(){Ct.debug2("handleHideTimeout"),this.stopHideTimer(),this.setState({isShown:!1})}copyText(e){Ct.debug2("copyText",e),this.textData=e,Za(e).then(()=>{this.setState({copyState:Ce.COPY_STATES.DONE}),this.startHideTimer()},t=>{Ct.error("copyText error",t),this.setState({buttonState:Ce.BUTTON_STATES.CLICK_TO_COPY,copyState:Ce.COPY_STATES.CLICK_REQUIRED})})}startFetch(){this.stopFetch(),this.setState({buttonState:Ce.BUTTON_STATES.FETCH_IN_PROGRESS,copyState:Ce.COPY_STATES.FETCH_IN_PROGRESS});var{model:e,copyOperation:t}=this.props,{ranges:r,includeHeaders:i,userColumnWidths:a,movedColumns:o,formatValues:l}=t;Ct.debug("startFetch",r);var s=Re.getHiddenColumns(a),u=j.getModelRanges(r,o);if(s.length>0){var d=s.map(B.makeColumn);u=B.subtractRangesFromRanges(u,d)}var c=l!=null&&l?(h,v)=>e.displayString(h,v.type,v.name):h=>"".concat(h);this.fetchPromise=ot.makeCancelable(e.textSnapshot(u,i,c)),this.fetchPromise.then(h=>{this.fetchPromise=void 0,this.copyText(h)}).catch(h=>{h instanceof as?Ct.debug("User cancelled copy."):(Ct.error("Error fetching contents",h),this.fetchPromise=void 0,this.setState({buttonState:Ce.BUTTON_STATES.RETRY,copyState:Ce.COPY_STATES.FETCH_ERROR}))})}stopFetch(){this.fetchPromise&&(Ct.debug2("stopFetch"),this.fetchPromise.cancel(),this.fetchPromise=void 0)}startHideTimer(){this.stopHideTimer(),this.hideTimer=setTimeout(this.handleHideTimeout,Ce.HIDE_TIMEOUT)}stopHideTimer(){this.hideTimer!=null&&(clearTimeout(this.hideTimer),this.hideTimer=void 0)}render(){var{onEntering:e,onEntered:t,onExiting:r,onExited:i}=this.props,{buttonState:a,copyState:o,isShown:l,rowCount:s,error:u}=this.state,d=o===Ce.COPY_STATES.DONE?"fade":"copy-slide-up",c=Ce.getCopyButtonText(a),h=u??Ce.getStatusMessageText(o,s),v=o!==Ce.COPY_STATES.DONE,g=a===Ce.BUTTON_STATES.FETCH_IN_PROGRESS,f=o===Ce.COPY_STATES.DONE;return m.createElement(Li,{animation:d,isShown:l,className:ie("iris-grid-copy-handler",{"copy-done":f}),onClick:this.handleBackgroundClick,onEntering:e,onEntered:t,onExiting:r,onExited:i},m.createElement("div",{className:"status-message"},m.createElement("span",null,h)),m.createElement(Or,{in:v,timeout:qe.transitionMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"buttons-container"},m.createElement("button",{type:"button",className:"btn btn-outline-secondary btn-cancel",onClick:this.handleCancelClick},"Cancel"),m.createElement(Z,{kind:g?"tertiary":"primary",className:ie("btn-copy",{"btn-spinner":g}),onClick:this.handleCopyClick,disabled:g},g&&m.createElement(zr,null),c))))}}Nr(Ce,"NO_PROMPT_THRESHOLD",1e4);Nr(Ce,"HIDE_TIMEOUT",3e3);Nr(Ce,"COPY_STATES",{IDLE:"IDLE",CONFIRMATION_REQUIRED:"CONFIRMATION_REQUIRED",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",FETCH_ERROR:"FETCH_ERROR",CLICK_REQUIRED:"CLICK_REQUIRED",DONE:"DONE"});Nr(Ce,"BUTTON_STATES",{COPY:"COPY",FETCH_IN_PROGRESS:"FETCH_IN_PROGRESS",CLICK_TO_COPY:"CLICK_TO_COPY",RETRY:"RETRY"});Nr(Ce,"defaultProps",{copyOperation:null,onEntering:()=>{},onEntered:()=>{},onExiting:()=>{},onExited:()=>{}});const Gm=Ce;function vi(n,e,t){return e=Wm(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wm(n){var e=zm(n,"string");return typeof e=="symbol"?e:String(e)}function zm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Os extends y.PureComponent{constructor(e){super(e),vi(this,"inputField",void 0),vi(this,"initialValue",void 0),vi(this,"debouncedSendUpdate",void 0);var{debounceMs:t}=e;this.debouncedSendUpdate=Jt(this.sendUpdate.bind(this),t),this.handleCancel=this.handleCancel.bind(this),this.handleChange=this.handleChange.bind(this),this.handleCommit=this.handleCommit.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleBlur=this.handleBlur.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.inputField=null;var{value:r}=e;this.initialValue=r,this.state={isChanged:!1,value:r}}componentDidMount(){var e;(e=this.inputField)===null||e===void 0||e.focus()}componentDidUpdate(e){var{debounceMs:t}=this.props;e.debounceMs!==t&&(this.debouncedSendUpdate.flush(),this.debouncedSendUpdate=Jt(this.sendUpdate.bind(this),t))}componentWillUnmount(){this.debouncedSendUpdate.cancel()}setValue(e){this.initialValue=e,this.setState({value:e})}focus(){var e;(e=this.inputField)===null||e===void 0||e.focus()}handleChange(e){var{value:t}=e.target;this.setState({value:t,isChanged:!0}),this.debouncedSendUpdate(t)}handleCancel(){this.debouncedSendUpdate.cancel();var{initialValue:e}=this,{isChanged:t}=this.state;t&&this.sendUpdate(e);var{onDone:r}=this.props;r()}handleCommit(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;this.debouncedSendUpdate.flush();var{onDone:r}=this.props;r(e,t)}handleFocus(){var e;(e=this.inputField)===null||e===void 0||e.select()}handleBlur(e){var{relatedTarget:t}=e;t!=null&&t.classList.contains("context-menu-container")?this.handleCommit(!1,!0):t!=null&&t.classList.contains("advanced-filter-button")?this.handleCommit(!1,!1):this.handleCommit(!0,!0)}handleTab(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;this.debouncedSendUpdate.flush();var{onTab:t}=this.props;t(e)}handleKeyDown(e){switch(e.key){case"Escape":e.stopPropagation(),e.preventDefault(),this.handleCancel();break;case"Enter":e.stopPropagation(),e.preventDefault(),this.handleCommit();break;case"Tab":e.stopPropagation(),e.preventDefault(),this.handleTab(e.shiftKey);break}}handleContextMenu(e){var{onContextMenu:t}=this.props;t(e)}sendUpdate(e){var{onChange:t}=this.props;t(e)}render(){var{className:e,style:t,isAdvancedFilterSet:r,onAdvancedFiltersTriggered:i}=this.props,{value:a}=this.state;return m.createElement("div",{style:t,className:"iris-grid-input-autosized-wrapper","data-value":a},m.createElement("input",{ref:o=>{this.inputField=o},className:ie("iris-grid-input-field",e),type:"text",value:a,onBlur:this.handleBlur,onFocus:this.handleFocus,onChange:this.handleChange,onKeyDown:this.handleKeyDown,onContextMenu:this.handleContextMenu,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"}),m.createElement("div",{className:"advanced-filter-button-container"},m.createElement(Z,{kind:"ghost",className:ie("btn-link-icon advanced-filter-button",{"filter-set":r}),onClick:i,onContextMenu:this.handleContextMenu},m.createElement("div",{className:"fa-layers "},m.createElement(de,{icon:Wa,className:"filter-solid"}),m.createElement(de,{icon:pi,className:"filter-light"})))))}}vi(Os,"defaultProps",{style:{},className:"",value:"",isAdvancedFilterSet:!1,onAdvancedFiltersTriggered:()=>{},onChange:()=>{},onDone:()=>{},onTab:()=>{},onContextMenu:()=>{},debounceMs:150});const jm=Os;function Km(n,e,t){return e=Ym(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ym(n){var e=qm(n,"string");return typeof e=="symbol"?e:String(e)}function qm(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Xm extends Kr{constructor(e){super(),Km(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{selectedRanges:t}=this.irisGrid.state;return e.key==="c"&&ln.isModifierKeyDown(e)?(Re.isValidSnapshotRanges(t)?this.irisGrid.copyRanges(t):this.irisGrid.copyRanges(t,!1,!1,"Invalid copy ranges"),!0):!1}}const Qm=Xm;var Zm={TOGGLE_QUICK_FILTER:Er.createAndAdd({id:"TABLE.TOGGLE_QUICK_FILTER",name:"Toggle Quick Filter",shortcut:[He.CTRL,tt.F],macShortcut:[He.CMD,tt.F]}),CLEAR_ALL_FILTERS:Er.createAndAdd({id:"TABLE.CLEAR_ALL_FILTERS",name:"Clear All Table Filters",shortcut:[He.CTRL,tt.E],macShortcut:[He.CMD,tt.E]}),CLEAR_FILTERS:Er.createAndAdd({id:"TABLE.CLEAR_FILTERS",name:"Clear Active Table Filters",shortcut:[He.CTRL,He.SHIFT,tt.E],macShortcut:[He.CMD,He.SHIFT,tt.E]}),REVERSE:Er.createAndAdd({id:"TABLE.REVERSE",name:"Reverse",shortcut:[He.CTRL,tt.I],macShortcut:[He.CMD,tt.I]}),TOGGLE_SEARCH:Er.createAndAdd({id:"TABLE.TOGGLE_SEARCH",name:"Toggle Search",shortcut:[He.CTRL,He.SHIFT,tt.F],macShortcut:[He.CMD,He.SHIFT,tt.F]}),GOTO_ROW:Er.createAndAdd({id:"TABLE.GOTO_ROW",name:"Go to Row",shortcut:[He.CTRL,tt.G],macShortcut:[He.CMD,tt.G]})},Jm={COMMIT:Er.createAndAdd({id:"INPUT_TABLE.COMMIT",name:"Commit",shortcut:[He.CTRL,tt.S],macShortcut:[He.CMD,tt.S]}),DISCARD:Er.createAndAdd({id:"INPUT_TABLE.DISCARD",name:"Discard",shortcut:[He.CTRL,He.ALT,tt.S],macShortcut:[He.CMD,He.OPTION,tt.S]})},ev={TABLE:Zm,INPUT_TABLE:Jm};const $t=ev;function tv(n,e,t){return e=rv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function rv(n){var e=nv(n,"string");return typeof e=="symbol"?e:String(e)}function nv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class iv extends Kr{constructor(e){super(),tv(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){if($t.TABLE.REVERSE.matchesEvent(e)){if(!this.irisGrid.isReversible())return!1;var{reverseType:t}=this.irisGrid.state;return t===M.REVERSE_TYPE.NONE?this.irisGrid.reverse(M.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(M.REVERSE_TYPE.NONE),!0}return!1}}const av=iv;function ov(n,e,t){return e=lv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function lv(n){var e=sv(n,"string");return typeof e=="symbol"?e:String(e)}function sv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class uv extends Kr{constructor(e){super(),ov(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){return $t.TABLE.CLEAR_FILTERS.matchesEvent(e)?(this.irisGrid.clearAllFilters(),!0):!1}}const dv=uv;function cv(n,e,t){return e=hv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function hv(n){var e=mv(n,"string");return typeof e=="symbol"?e:String(e)}function mv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class vv extends We{constructor(e){super(850),cv(this,"irisGrid",void 0),this.irisGrid=e}destroyColumnTooltip(){this.irisGrid.setState({overflowButtonTooltipProps:null})}setCursor(e){return this.isHoveringOverflowButton(e)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:o,grid:l,state:s,props:u}=this.irisGrid;if(!l)return null;var{metrics:d}=s,{model:c}=u,{canvasContext:h}=l,v=l.getTheme(),g={context:h,mouseX:t,mouseY:r,metrics:d,model:c,theme:v},{left:f,top:p,width:C,height:w}=o.getCellOverflowButtonPosition(g);return f==null||C==null||p==null||w==null?null:{left:f,top:p,width:C,height:w}}isHoveringOverflowButton(e){var t,{x:r,y:i}=e,{left:a,top:o,width:l,height:s}=(t=this.getButtonPosition(e))!==null&&t!==void 0?t:{};if(a==null||l==null||o==null||s==null)return!1;var{renderer:u,grid:d,state:c,props:h}=this.irisGrid;if(!d)return!1;var{metrics:v}=c,{model:g}=h,{canvasContext:f}=d,p=d.getTheme(),C={context:f,mouseX:r,mouseY:i,metrics:v,model:g,theme:p};return u.shouldRenderOverflowButton(C)&&r>=a&&r<=a+l&&i>=o&&i<=o+s}onMove(e){if(this.isHoveringOverflowButton(e)){var{overflowButtonTooltipProps:t}=this.irisGrid.state,r=this.getButtonPosition(e);Vt(t,r)||this.irisGrid.setState({overflowButtonTooltipProps:r})}else this.destroyColumnTooltip();return this.setCursor(e)}onWheel(e){return this.destroyColumnTooltip(),this.onMove(e)}onDown(e){this.destroyColumnTooltip();var{column:t,row:r}=e;return this.isHoveringOverflowButton(e)&&this.irisGrid.setState({showOverflowModal:!0,overflowText:this.irisGrid.getValueForCell(t,r)}),!1}onContextMenu(){return this.destroyColumnTooltip(),!1}onLeave(){return this.destroyColumnTooltip(),!1}}const gv=vv;function fv(n,e,t){return e=pv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pv(n){var e=Cv(n,"string");return typeof e=="symbol"?e:String(e)}function Cv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class wv extends We{constructor(e){super(),fv(this,"irisGrid",void 0),this.irisGrid=e,this.cursor=null}isActive(){var{isSelectingColumn:e}=this.irisGrid.props;return e}isValidColumn(e){if(e==null)return!1;var{columnSelectionValidator:t}=this.irisGrid.props;return t!=null?t(e):!0}updateColumnSelectionStatus(){var{columnSelectionValidator:e}=this.irisGrid.props;e!=null&&e(null)}getTableColumn(e){if(e==null)return null;var{model:t}=this.irisGrid.props,r=this.irisGrid.getModelColumn(e);return r==null?null:t.columns[r]}onMove(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),!0}onWheel(e){if(!this.isActive())return!1;var{columnAllowedCursor:t,columnNotAllowedCursor:r}=this.irisGrid.props,{column:i}=e,a=this.getTableColumn(i);return this.isValidColumn(a)?(this.cursor=t,this.irisGrid.setState({hoverSelectColumn:i})):(this.cursor=r,this.irisGrid.setState({hoverSelectColumn:null})),{preventDefault:!1,stopPropagation:!1}}onLeave(){return this.isActive()&&this.irisGrid.setState({hoverSelectColumn:null}),this.updateColumnSelectionStatus(),!1}onDown(){return this.isActive()}onClick(e){if(!this.isActive())return!1;var{column:t}=e,r=this.getTableColumn(t);return r!=null&&this.isValidColumn(r)&&this.irisGrid.selectColumn(r),!0}}const bv=wv;function Sv(n,e,t){return e=Ev(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ev(n){var e=Tv(n,"string");return typeof e=="symbol"?e:String(e)}function Tv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class yv extends We{constructor(e){super(),Sv(this,"irisGrid",void 0),this.irisGrid=e}hideColumnTooltip(){var{tooltip:e}=this.irisGrid;e&&(e.stopTimer(),e.hide())}onDown(){return this.hideColumnTooltip(),!1}onContextMenu(){return this.hideColumnTooltip(),!1}onWheel(){return this.hideColumnTooltip(),!1}onLeave(e,t,r){var{relatedTarget:i}=r instanceof MouseEvent?r:r.nativeEvent,{tooltip:a}=this.irisGrid;if(!a)return!1;var o=a.popper.current;return o&&i instanceof Element&&o.element.contains(i)||this.hideColumnTooltip(),!1}onMove(e){var{column:t,row:r,columnHeaderDepth:i}=e,{shownColumnTooltip:a}=this.irisGrid.state,o=null;return t!==null&&r===null&&i===0&&(o=t),o!==a&&this.irisGrid.setState({shownColumnTooltip:o}),!1}}const Rv=yv;function Fs(n,e,t){return e=Ov(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ov(n){var e=Fv(n,"string");return typeof e=="symbol"?e:String(e)}function Fv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class ki extends y.Component{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ki.defaultProps;super(e),Fs(this,"inputRef",void 0),this.handleInputChange=this.handleInputChange.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.inputRef=m.createRef()}handleInputChange(){var{onChange:e}=this.props;this.inputRef.current&&e(this.inputRef.current.value)}closeContextMenu(){var{forwardedProps:e}=this.props,{closeMenu:t}=e;t(!0)}revertToDefault(){var{onChange:e}=this.props;e(null)}returnFocusToContextMenu(){var e=xd.getClosestByClassName(this.inputRef.current,"context-menu-container");e instanceof HTMLElement&&e.focus()}handleKeyDown(e){switch(e.key){case"Enter":e.stopPropagation(),this.closeContextMenu();break;case"Escape":e.stopPropagation(),this.revertToDefault(),this.closeContextMenu();break;case"ArrowRight":case"ArrowLeft":e.stopPropagation();break;case"ArrowUp":case"ArrowDown":this.returnFocusToContextMenu();break;default:e.stopPropagation()}}render(){var{formatString:e,forwardedProps:t,placeholder:r,title:i}=this.props,{menuItem:{description:a},iconElement:o}=t;return m.createElement("div",{className:"form-group flex-grow mb-0"},m.createElement("div",{className:"custom-format-title"},m.createElement("span",{className:"icon"},o),m.createElement("label",{className:"title mb-0",htmlFor:"custom-format-input"},i,a!=null&&m.createElement(Gt,null,a))),m.createElement("div",{className:"pl-2 pr-2 pb-2"},m.createElement("input",{id:"custom-format-input",className:"form-control text-right mb-0",type:"text",defaultValue:e,ref:this.inputRef,placeholder:r,onKeyDown:this.handleKeyDown,onChange:this.handleInputChange,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false"})))}}Fs(ki,"defaultProps",{formatString:"",forwardedProps:{menuItem:{},closeMenu(n){},iconElement:null},placeholder:"",title:"",onChange(n){}});const Nv=ki;class Dv{static isDefaultSelected(e){return!e||![mi.TYPE_CONTEXT_CUSTOM,mi.TYPE_CONTEXT_PRESET].includes(e.type)}static isCustomSelected(e){return e!=null&&e.type===mi.TYPE_CONTEXT_CUSTOM}static makeOption(e,t,r,i){return{title:e,description:e,group:r,format:t,isSelected:i}}static makeCustomFormatOption(e,t,r,i,a){return{title:e.label,description:e.label,format:e,group:t,isSelected:i,menuElement:m.createElement(Nv,{formatString:e.formatString,title:e.label,placeholder:r,onChange:a})}}}const St=Dv;function uo(n,e,t){return e=Pv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pv(n){var e=Iv(n,"string");return typeof e=="symbol"?e:String(e)}function Iv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class gt{static getOptions(e,t){var r=new Date,i=[{group:gt.dateGroup,formatString:"yyyy-MM-dd"},{group:gt.dateGroup,formatString:"MM-dd-yyyy"},{group:gt.timeGroup,formatString:"HH:mm:ss"},{group:gt.timeGroup,formatString:"HH:mm:ss.SSS"},{group:gt.timeGroup,formatString:"HH:mm:ss.SSSSSSSSS"},{group:gt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss"},{group:gt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSS"},{group:gt.dateTimeGroup,formatString:"yyyy-MM-dd HH:mm:ss.SSSSSSSSS"}],a=i.map(l=>{var s=An.makeFormat("",l.formatString,An.TYPE_CONTEXT_PRESET),u=e.getFormattedString(r,M.dataType.DATETIME,"",s);return St.makeOption(u,s,l.group,An.isSameFormat(s,t))}),o=St.makeOption("Default",null,gt.dateGroup,St.isDefaultSelected(t));return[o,...a]}}uo(gt,"dateGroup",10);uo(gt,"timeGroup",20);uo(gt,"dateTimeGroup",30);const Av=gt;function _i(n,e,t){return e=Mv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mv(n){var e=Lv(n,"string");return typeof e=="symbol"?e:String(e)}function Lv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class at{static getOptions(e,t,r){var i=[{format:Ft.FORMAT_PERCENT,group:at.presetGroup},{format:Ft.FORMAT_BASIS_POINTS,group:at.presetGroup},{format:Ft.FORMAT_MILLIONS,group:at.presetGroup},{format:Ft.FORMAT_SCIENTIFIC_NOTATION,group:at.presetGroup},{format:Ft.FORMAT_ROUND,group:at.presetRoundGroup},{format:Ft.FORMAT_ROUND_TWO_DECIMALS,group:at.presetRoundGroup},{format:Ft.FORMAT_ROUND_FOUR_DECIMALS,group:at.presetRoundGroup}],a=St.makeOption("Default",null,at.defaultGroup,St.isDefaultSelected(t)),o=i.map(d=>St.makeOption(d.format.label,d.format,d.group,Ft.isSameFormat(d.format,t))),l=St.isCustomSelected(t),s=l?t:Ft.makeCustomFormat(),u=St.makeCustomFormatOption(s,at.customGroup,Ft.DEFAULT_FORMAT_STRING,l,d=>{if(d!=null){var c=Ft.makeCustomFormat(d);Ft.isValid(e,c)&&r(c)}else r(null)});return[a,...o,u]}}_i(at,"defaultGroup",10);_i(at,"presetGroup",20);_i(at,"presetRoundGroup",30);_i(at,"customGroup",40);const kv=at;function co(n,e,t){return e=_v(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _v(n){var e=xv(n,"string");return typeof e=="symbol"?e:String(e)}function xv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class sr{static getOptions(e,t,r){var i=[{format:Mr.FORMAT_MILLIONS,group:sr.presetGroup},{format:Mr.FORMAT_SCIENTIFIC_NOTATION,group:sr.presetGroup}],a=St.makeOption("Default",null,sr.defaultGroup,St.isDefaultSelected(t)),o=i.map(d=>St.makeOption(d.format.label,d.format,d.group,Mr.isSameFormat(d.format,t))),l=St.isCustomSelected(t),s=l?t:Mr.makeCustomFormat(),u=St.makeCustomFormatOption(s,sr.customGroup,Mr.DEFAULT_FORMAT_STRING,l,d=>{if(d!=null){var c=Mr.makeCustomFormat(d);Mr.isValid(e,c)&&r(c)}else r(null)});return[a,...o,u]}}co(sr,"defaultGroup",10);co(sr,"presetGroup",20);co(sr,"customGroup",30);const Hv=sr;function rl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function nl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?rl(Object(t),!0).forEach(function(r){Et(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):rl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Et(n,e,t){return e=Bv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bv(n){var e=Uv(n,"string");return typeof e=="symbol"?e:String(e)}function Uv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var il=Fe.module("IrisGridContextMenuHandler"),Vv=150,al="yyyy-MM-dd HH:mm:ss.SSSSSSSSS";class V extends We{static getQuickFilterCondition(e,t,r){return e&&r==="&&"?e.and(t):e&&r==="||"?e.or(t):t}static getQuickFilterText(e,t,r){return r&&e!=null?"".concat(e," ").concat(r," ").concat(t):t}static getOperatorAsText(e){return e==="&&"?"And":"Or"}static getRowOptionFormatted(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:30;return"".concat(e,' "').concat(Qt.truncate(t,r-e.length-3),'"')}constructor(e,t){super(),Et(this,"irisGrid",void 0),Et(this,"debouncedUpdateCustomFormat",void 0),Et(this,"dh",void 0),this.debouncedUpdateCustomFormat=Jt(e.handleFormatSelection,Vv),this.dh=t,this.irisGrid=e}componentWillUnmount(){this.debouncedUpdateCustomFormat.flush()}getHeaderActions(e,t){var{irisGrid:r}=this,{column:i}=t;_(i);var{model:a}=r.props,{columns:o}=a,l=o[e],s=[],{metrics:u,reverseType:d,quickFilters:c,advancedFilters:h,searchFilter:v}=r.state,g=r.getTheme();_(u);var{filterIconColor:f,filterBarActiveColor:p,contextMenuSortIconColor:C,contextMenuReverseIconColor:w}=g,b=a.sort,E=M.getSortForColumn(b,l.name),T=d!==M.REVERSE_TYPE.NONE,{userColumnWidths:S}=u,O=[...S.values()].some(P=>P===0),F=a.getColumnHeaderParentGroup(e,0)===void 0&&!(De(a)&&a.hasExpandableRows),R=a.isColumnFrozen(e);if(s.push({title:"Hide Column",group:V.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.hideColumnByVisibleIndex(i)}}),s.push({title:R?"Unfreeze Column":"Freeze Column",group:V.GROUP_HIDE_COLUMNS,disabled:!F,action:()=>{R?this.irisGrid.unFreezeColumnByColumnName(l.name):this.irisGrid.freezeColumnByColumnName(l.name)},order:10}),s.push({title:"Show All Columns",group:V.GROUP_HIDE_COLUMNS,action:()=>{this.irisGrid.showAllColumns()},disabled:!O}),s.push({title:"Quick Filters",icon:nr,iconColor:p,shortcut:$t.TABLE.TOGGLE_QUICK_FILTER,group:V.GROUP_FILTER,order:10,action:()=>{this.irisGrid.toggleFilterBar(i)}}),s.push({title:"Advanced Filters",icon:h.get(e)?Wa:pi,iconColor:f,group:V.GROUP_FILTER,order:20,action:()=>{this.irisGrid.handleAdvancedMenuOpened(i)}}),s.push({title:"Clear Table Filters",group:V.GROUP_FILTER,order:40,shortcut:$t.TABLE.CLEAR_FILTERS,action:()=>{this.irisGrid.clearAllFilters()},disabled:!(c.size>0||h.size>0||v!=null)}),s.push({title:"Sort by",icon:nr,iconColor:C,group:V.GROUP_SORT,order:10,actions:this.sortByActions(l,e,E)}),s.push({title:"Add Additional Sort",disabled:E&&b.length===1||T&&b.length===1||E&&T&&b.length===2||b.length===0,group:V.GROUP_SORT,order:20,actions:this.additionalSortActions(l,e)}),s.push({title:"Clear Table Sorting",disabled:b.length===0||T&&b.length===1,group:V.GROUP_SORT,action:()=>{this.irisGrid.sortColumn(i,V.COLUMN_SORT_DIRECTION.none)},order:30}),s.push({title:d===M.REVERSE_TYPE.NONE?"Reverse Table":"Clear Reverse Table",icon:nr,iconColor:w,group:V.GROUP_SORT,order:40,disabled:!a.isReversible,shortcut:$t.TABLE.REVERSE,action:()=>{d===M.REVERSE_TYPE.NONE?this.irisGrid.reverse(M.REVERSE_TYPE.POST_SORT):this.irisGrid.reverse(M.REVERSE_TYPE.NONE)}}),s.push({title:"Copy Column Name",group:V.GROUP_COPY,action:()=>{var P;Za((P=a.textForColumnHeader(e))!==null&&P!==void 0?P:"").catch(I=>il.error("Unable to copy header",I))}}),M.isDateType(l.type))s.push({title:"Date/Time Format",group:V.GROUP_FORMAT,actions:this.dateFormatActions(l)});else if(M.isNumberType(l.type)){var N;s.push({title:"Number Format",group:V.GROUP_FORMAT,actions:(N=this.numberFormatActions(l))!==null&&N!==void 0?N:void 0})}return s}getCellActions(e,t,r){_(e);var{dh:i,irisGrid:a}=this,{column:o,row:l}=r,{model:s,canCopy:u}=a.props,{columns:d}=s,c=a.getModelRow(l);_(c);var h=s.valueForCell(e,c),v=s.textForCell(e,c),g=d[e],f=[],{quickFilters:p}=a.state,C=a.getTheme(),{filterIconColor:w}=C,{settings:b}=a.props,E=new An(i,{timeZone:b==null?void 0:b.timeZone,showTimeZone:!1,showTSeparator:!0,defaultDateTimeFormatString:al}),T=new An(i,{timeZone:b==null?void 0:b.timeZone,showTimeZone:b==null?void 0:b.showTimeZone,showTSeparator:b==null?void 0:b.showTSeparator,defaultDateTimeFormatString:al});if(g==null||l==null)return f;if(s.isFilterable(e)){var S={title:"Filter by Value",icon:nr,iconColor:w,group:V.GROUP_FILTER,order:10,actions:[]};if(h==null)p.get(e)&&S.actions.push({title:"And",actions:this.nullFilterActions(g,p.get(e),"&&"),order:2,group:se.groups.high}),S.actions.push(...this.nullFilterActions(g));else if(h==="")p.get(e)&&S.actions.push({title:"And",actions:this.emptyStringFilterActions(g,p.get(e),"&&"),order:2,group:se.groups.high}),S.actions.push(...this.emptyStringFilterActions(g));else if(M.isBooleanType(g.type))p.get(e)&&S.actions.push({title:"Or",actions:this.booleanFilterActions(g,v,p.get(e),"||"),order:2,group:se.groups.high}),S.actions.push(...this.booleanFilterActions(g,v));else if(M.isNumberType(g.type)||M.isCharType(g.type)){_(e);var O=M.isCharType(g.type)?String.fromCharCode(h):"".concat(h);p.get(e)&&S.actions.push({title:"And",actions:this.numberFilterActions(g,O,h,p.get(e),"&&"),order:2,group:se.groups.high}),S.actions.push(...this.numberFilterActions(g,O,h,p.get(e)))}else if(M.isDateType(g.type)){var F=E.format(h),R=T.format(h);p.get(e)&&S.actions.push({title:"And",actions:this.dateFilterActions(g,F,R,h,p.get(e),"&&"),order:2,group:se.groups.high}),S.actions.push(...this.dateFilterActions(g,F,R,h,p.get(e)))}else p.get(e)&&S.actions.push({title:"And",actions:this.stringFilterActions(g,v,h,p.get(e),"&&"),order:2,group:se.groups.high}),S.actions.push(...this.stringFilterActions(g,v,h));S.actions!=null&&S.actions.length>0&&f.push(S)}if(De(s)&&s.isRowExpandable(c)){var N=s.groupedColumns.length>0?s.depthForRow(c)-1:0,P=s.valueForCell(N,c),I=P==null?"null":s.textForCell(N,c);f.push({title:V.getRowOptionFormatted(s.isRowExpanded(c)?"Collapse":"Expand",I),group:V.GROUP_EXPAND_COLLAPSE,order:10,action:()=>{s.setRowExpanded(c,!s.isRowExpanded(c))}}),s.isExpandAllAvailable===!0&&f.push({title:V.getRowOptionFormatted("Expand All in",I),group:V.GROUP_EXPAND_COLLAPSE,order:20,action:()=>{s.setRowExpanded(c,!0,!0)}})}De(s)&&s.hasExpandableRows&&s.isExpandAllAvailable===!0&&(f.push({title:"Expand Entire Table",group:V.GROUP_EXPAND_COLLAPSE,order:30,action:()=>{s.expandAll()}}),f.push({title:"Collapse Entire Table",group:V.GROUP_EXPAND_COLLAPSE,order:40,action:()=>{s.collapseAll()}}));var A={title:"Go to",iconColor:w,shortcut:$t.TABLE.GOTO_ROW,group:V.GROUP_GOTO,order:10,action:()=>this.irisGrid.toggleGotoRow("".concat(l+1),"".concat(h),g.name)};return f.push(A),u&&(f.push({title:"Copy Cell",group:V.GROUP_COPY,order:10,action:()=>{a.copyCell(o,l)}}),f.push({title:"Copy Cell Unformatted",group:V.GROUP_COPY,order:20,action:()=>{a.copyCell(o,l,!0)}})),f}getNumberValueEqualsFilter(e,t){var{dh:r}=this,i=e.filter();if(t===Number.POSITIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.greaterThan(r.FilterValue.ofNumber(0)));if(t===Number.NEGATIVE_INFINITY)return r.FilterCondition.invoke("isInf",i).and(i.lessThan(r.FilterValue.ofNumber(0)));if(Number.isNaN(t))return r.FilterCondition.invoke("isNaN",i);var a=this.getFilterValueForNumberOrChar(e.type,t);return i.eq(a)}getFilterValueForNumberOrChar(e,t){var{dh:r}=this;return M.isCharType(e)?r.FilterValue.ofString(String.fromCharCode(t)):r.FilterValue.ofNumber(t)}onContextMenu(e,t,r){var{irisGrid:i}=this,{y:a,column:o,row:l,columnHeaderDepth:s}=e,u=i.getModelColumn(o),d=i.getModelRow(l),{model:c,canCopy:h}=i.props,{columns:v}=c,{metrics:g,isFilterBarShown:f,quickFilters:p,advancedFilters:C,selectedRanges:w}=i.state;_(g);var{columnHeaderHeight:b,gridY:E,columnHeaderMaxDepth:T}=g,S=[];if(u!=null&&d!=null){var O=c.valueForCell(u,d),F=c.textForCell(u,d),R=v[u],{onContextMenu:N}=i.props;R!=null&&S.push(N({model:c,value:O,valueText:F,column:R,rowIndex:l,columnIndex:o,modelRow:d,modelColumn:u}))}return u!=null&&c.isFilterable(u)&&S.push({title:"Clear Column Filter",group:V.GROUP_FILTER,order:30,action:()=>{this.irisGrid.removeColumnFilter(u)},disabled:!(p.has(u)||C.has(u))}),(f?a<=E:a<=b*T&&s===0)?u!=null&&S.push(...this.getHeaderActions(u,e)):(u!=null&&d!=null&&S.push(...this.getCellActions(u,t,e)),h&&w.length>0&&(S.push({title:"Copy Selection",shortcut:gd.COPY,group:V.GROUP_COPY,order:30,action:()=>{i.copyRanges(w)}}),S.push({title:"Copy Selection w/ Headers",group:V.GROUP_COPY,order:40,action:()=>{i.copyRanges(w,!0)}})),ke(c)&&c.isEditable&&w.length>0&&S.push({title:"Delete Selected Rows",group:V.GROUP_EDIT,order:50,action:()=>{this.irisGrid.deleteRanges(w)}})),S.length===0?!1:(_(i.gridWrapper),se.triggerMenu(i.gridWrapper,r.clientX,r.clientY,S),!0)}dateFormatActions(e){for(var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,a=i.getColumnFormat(e.type,e.name),o=Av.getOptions(i,a),l=[],s=function(){var{description:c,format:h,group:v,isSelected:g,title:f}=o[u];l.push({title:f,description:c,icon:g?Ci:void 0,group:v,order:u,action:()=>{var p=r.getColumnIndexByName(e.name);_(p),t.irisGrid.handleFormatSelection(p,h)}})},u=0;u<o.length;u+=1)s();return l}numberFormatActions(e){var t=this,{model:r}=this.irisGrid.props,{formatter:i}=r,{dh:a}=this,o=i.getColumnFormat(e.type,e.name),l,s=r.getColumnIndexByName(e.name);if(M.isDecimalType(e.type))l=kv.getOptions(a,o,h=>{_(s),this.debouncedUpdateCustomFormat(s,h)});else if(M.isIntegerType(e.type))l=Hv.getOptions(a,o,h=>{_(s),this.debouncedUpdateCustomFormat(s,h)});else return il.error("Invalid column type in numberFormatActions"),null;for(var u=[],d=function(){var{format:v,isSelected:g}=l[c];u.push(nl(nl({},l[c]),{},{icon:g?Ci:void 0,order:c,action:()=>{s===void 0&&v&&v.type===mi.TYPE_CONTEXT_CUSTOM||(_(s),t.irisGrid.handleFormatSelection(s,v))}}))},c=0;c<l.length;c+=1)d();return u}stringFilterActions(e,t,r,i,a){var{dh:o}=this,l=o.FilterValue.ofString(r),s=i;s||(s={filter:null,text:null});var{filter:u,text:d}=s,c=[],{model:h}=this.irisGrid.props,v=h.getColumnIndexByName(e.name),g=M.escapeQuickTextFilter(t);return _(v),c.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},a?V.getOperatorAsText(a):""," ",'"',t,'"'),order:1,group:se.groups.high}),c.push({title:"text is exactly",description:"Show only rows where ".concat(e.name," is ").concat(r," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().eq(l),a),V.getQuickFilterText(d,"".concat(g),a))},order:10,group:se.groups.low}),c.push({title:"text is not exactly",description:"Show only rows where ".concat(e.name," is not ").concat(t," (case sensitive)"),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().notEq(l),a),V.getQuickFilterText(d,"!=".concat(g),a))},order:20,group:se.groups.low}),c.push({title:"text contains",description:"Show only rows where ".concat(e.name," contains ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().contains(l)),a),V.getQuickFilterText(d,"~".concat(g),a))},order:30,group:se.groups.low}),c.push({title:"text does not contain",description:"Show only rows where ".concat(e.name," does not contain ").concat(r),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().isNull().or(e.filter().contains(l).not()),a),V.getQuickFilterText(d,"!~".concat(g),a))},order:40,group:se.groups.low}),c.push({title:"text starts with",description:"Show only rows where ".concat(e.name," starts with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().invoke("startsWith",l)),a),V.getQuickFilterText(d,"".concat(g,"*"),a))},order:50,group:se.groups.low}),c.push({title:"text ends with",description:"Show only rows where ".concat(e.name," ends with ").concat(t),action:()=>{this.irisGrid.setQuickFilter(v,V.getQuickFilterCondition(u,e.filter().isNull().not().and(e.filter().invoke("endsWith",l)),a),V.getQuickFilterText(d,"*".concat(g),a))},order:60,group:se.groups.low}),c}numberFilterActions(e,t,r,i,a){var o=this.getFilterValueForNumberOrChar(e.type,r),l=null,s=null;i&&(l=i.filter,s=i.text);var u=[],d=r!==Number.POSITIVE_INFINITY&&r!==Number.NEGATIVE_INFINITY&&!Number.isNaN(r),{model:c}=this.irisGrid.props,h=c.getColumnIndexByName(e.name);return _(h),u.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},a?V.getOperatorAsText(a):""," ",'"',t,'"'),order:1,group:se.groups.high}),u.push({title:"is equal to",description:"Show only rows where ".concat(e.name," is ").concat(t),action:()=>{var v=this.getNumberValueEqualsFilter(e,r);this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,v,a),V.getQuickFilterText(s,"=".concat(t),a))},order:10,group:se.groups.low}),u.push({title:"is not equal to",description:"Show only rows where ".concat(e.name," is not ").concat(t),action:()=>{var v=this.getNumberValueEqualsFilter(e,r).not();this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,v,a),V.getQuickFilterText(s,"!=".concat(t),a))},order:20,group:se.groups.low}),d&&!M.isCharType(e.type)&&(u.push({title:"greater than",description:"Show only rows where ".concat(e.name," is greater than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,e.filter().greaterThan(o),a),V.getQuickFilterText(s,">".concat(t),a))},order:30,group:se.groups.low}),u.push({title:"greater than or equal to",description:"Show only rows where ".concat(e.name," is greater than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,e.filter().greaterThanOrEqualTo(o),a),V.getQuickFilterText(s,">=".concat(t),a))},order:40,group:se.groups.low}),u.push({title:"less than",description:"Show only rows where ".concat(e.name," is less than ").concat(t),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,e.filter().lessThan(o),a),V.getQuickFilterText(s,"<".concat(t),a))},order:50,group:se.groups.low}),u.push({title:"less than or equal to",description:"Show only rows where ".concat(e.name," is less than or equal to ").concat(t),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(l,e.filter().lessThanOrEqualTo(o),a),V.getQuickFilterText(s,"<=".concat(t),a))},order:60,group:se.groups.low})),u}booleanFilterActions(e,t,r,i){var a=[],{model:o}=this.irisGrid.props,{filter:l,text:s}=r||{},u=o.getColumnIndexByName(e.name);return _(u),a.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},i?V.getOperatorAsText(i):""," ",'"',t??"null",'"'),order:1,group:se.groups.high}),a.push({title:"true",description:"Show only rows where ".concat(e.name," is true"),action:()=>{this.irisGrid.setQuickFilter(u,V.getQuickFilterCondition(l,e.filter().isTrue(),i),V.getQuickFilterText(s,"true",i))},order:10,group:se.groups.low}),a.push({title:"false",description:"Show only rows where ".concat(e.name," is false"),action:()=>{this.irisGrid.setQuickFilter(u,V.getQuickFilterCondition(l,e.filter().isFalse(),i),V.getQuickFilterText(s,"false",i))},order:20,group:se.groups.low}),a.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(u,V.getQuickFilterCondition(l,e.filter().isNull(),i),V.getQuickFilterText(s,"null",i))},order:30,group:se.groups.low}),a.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(u,V.getQuickFilterCondition(l,e.filter().isNull().not(),i),V.getQuickFilterText(s,"!null",i))},order:40,group:se.groups.low}),a}dateFilterActions(e,t,r,i,a,o){var{dh:l}=this,s=l.FilterValue.ofNumber(i),u=null,d=null;a&&(u=a.filter,d=a.text);var{model:c}=this.irisGrid.props,h=c.getColumnIndexByName(e.name);_(h);var v=[];return v.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},o?V.getOperatorAsText(o):""," ",'"',r,'"'),order:1,group:se.groups.high}),v.push({title:"date is",description:"Show only rows where ".concat(e.name," is ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().eq(s),o),V.getQuickFilterText(d,"=".concat(t),o))},order:10,group:se.groups.low}),v.push({title:"date is not",description:"Show only rows where ".concat(e.name," is not ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().notEq(s),o),V.getQuickFilterText(d,"!=".concat(t),o))},order:20,group:se.groups.low}),v.push({title:"date is before",description:"Show only rows where ".concat(e.name," is before ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().lessThan(s),o),V.getQuickFilterText(d,"<".concat(t),o))},order:30,group:se.groups.low}),v.push({title:"date is before or equal",description:"Show only rows where ".concat(e.name," is before or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().lessThanOrEqualTo(s),o),V.getQuickFilterText(d,"<=".concat(t),o))},order:40,group:se.groups.low}),v.push({title:"date is after",description:"Show only rows where ".concat(e.name," is greater than ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().greaterThan(s),o),V.getQuickFilterText(d,">".concat(t),o))},order:50,group:se.groups.low}),v.push({title:"date is after or equal",description:"Show only rows where ".concat(e.name," is after or equal to ").concat(r),action:()=>{this.irisGrid.setQuickFilter(h,V.getQuickFilterCondition(u,e.filter().greaterThanOrEqualTo(s),o),V.getQuickFilterText(d,">=".concat(t),o))},order:60,group:se.groups.low}),v}emptyStringFilterActions(e,t,r){var{dh:i}=this,a=i.FilterValue.ofString(""),o=t;o||(o={filter:null,text:null});var{filter:l,text:s}=o,u=[],{model:d}=this.irisGrid.props,c=d.getColumnIndexByName(e.name);return _(c),u.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},r?V.getOperatorAsText(r):""," ",m.createElement("i",{className:"text-muted"},"empty")),order:1,group:se.groups.high}),u.push({title:"is empty string",description:"Show only rows where ".concat(e.name," is empty"),action:()=>{this.irisGrid.setQuickFilter(c,V.getQuickFilterCondition(l,e.filter().eq(a),r),V.getQuickFilterText(s,"=",r))},order:10,group:se.groups.low}),u.push({title:"is not empty string",description:"Show only rows where ".concat(e.name," is not empty"),action:()=>{this.irisGrid.setQuickFilter(c,V.getQuickFilterCondition(l,e.filter().notEq(a),r),V.getQuickFilterText(s,"!=",r))},order:20,group:se.groups.low}),u}nullFilterActions(e,t,r){var i=null,a=null;t&&(i=t.filter,a=t.text);var o=[],{model:l}=this.irisGrid.props,s=l.getColumnIndexByName(e.name);return _(s),o.push({menuElement:m.createElement("div",{className:"iris-grid-filter-menu-item-value"},r?V.getOperatorAsText(r):""," ",m.createElement("i",{className:"text-muted"},"null")),order:1,group:se.groups.high}),o.push({title:"is null",description:"Show only rows where ".concat(e.name," is null"),action:()=>{this.irisGrid.setQuickFilter(s,V.getQuickFilterCondition(i,e.filter().isNull(),r),V.getQuickFilterText(a,"null",r))},order:10,group:se.groups.low}),o.push({title:"is not null",description:"Show only rows where ".concat(e.name," is not null"),action:()=>{this.irisGrid.setQuickFilter(s,V.getQuickFilterCondition(i,e.filter().isNull().not(),r),V.getQuickFilterText(a,"!null",r))},order:20,group:se.groups.low}),o}sortByActions(e,t,r){var i=this.irisGrid.getTheme(),{contextMenuSortIconColor:a}=i,o=[{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.ascending)},icon:this.checkColumnSort(r,V.COLUMN_SORT_DIRECTION.ascending)?nr:void 0,iconColor:a},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.descending)},icon:this.checkColumnSort(r,V.COLUMN_SORT_DIRECTION.descending)?nr:void 0,iconColor:a},{title:"Remove Sort",order:50,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.none,!1,!0)},disabled:!r}];return M.isNumberType(e.type)&&(o.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.ascending,!0)},icon:this.checkColumnSort(r,V.COLUMN_SORT_DIRECTION.ascending,!0)?nr:void 0,iconColor:a}),o.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.descending,!0)},icon:this.checkColumnSort(r,V.COLUMN_SORT_DIRECTION.descending,!0)?nr:void 0,iconColor:a})),o}additionalSortActions(e,t){var r=this.irisGrid.getTheme(),{contextMenuSortIconColor:i}=r,a=[{title:"Add Sort By",menuElement:m.createElement("div",{className:"btn-context-menu menu-title"},m.createElement("span",{className:"icon"},m.createElement(de,{icon:nr,style:{color:i??void 0}})),m.createElement("span",{className:"title"},"Add Additional Sort"),m.createElement("span",{className:"shortcut"},ln.isMacPlatform()?"⌘Click":"Ctrl+Click")),order:1},{title:"".concat(e.name," Ascending"),order:10,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.ascending,!1,!0)}},{title:"".concat(e.name," Descending"),order:20,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.descending,!1,!0)}}];return M.isNumberType(e.type)&&(a.push({title:"ABS(".concat(e.name,") Ascending"),order:30,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.ascending,!0,!0)}}),a.push({title:"ABS(".concat(e.name,") Descending"),order:40,action:()=>{this.irisGrid.sortColumn(t,V.COLUMN_SORT_DIRECTION.descending,!0,!0)}})),a}checkColumnSort(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return e?e.direction===t&&e.isAbs===r:!1}}Et(V,"GROUP_EDIT",se.groups.high+10);Et(V,"GROUP_HIDE_COLUMNS",se.groups.high+25);Et(V,"GROUP_FILTER",se.groups.high+50);Et(V,"GROUP_EXPAND_COLLAPSE",se.groups.high+55);Et(V,"GROUP_GOTO",se.groups.high+60);Et(V,"GROUP_SORT",se.groups.high+75);Et(V,"GROUP_COPY",se.groups.high+100);Et(V,"GROUP_FORMAT",se.groups.high+150);Et(V,"COLUMN_SORT_DIRECTION",{ascending:"ASC",descending:"DESC",none:null});const $v=V;function Gv(n,e,t){return e=Wv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wv(n){var e=zv(n,"string");return typeof e=="symbol"?e:String(e)}function zv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class jv extends We{constructor(e){super(),Gv(this,"irisGrid",void 0),this.irisGrid=e}onDoubleClick(e){var{column:t,row:r}=e;return r==null||t==null?!1:(this.irisGrid.selectData(t,r),!0)}}const Kv=jv;function Yv(n,e,t){return e=qv(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qv(n){var e=Xv(n,"string");return typeof e=="symbol"?e:String(e)}function Xv(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qv extends We{constructor(e){super(),Yv(this,"irisGrid",void 0),this.irisGrid=e}onDown(e){var{y:t,column:r,row:i}=e;if(r!==null&&i===null){var{isFilterBarShown:a,metrics:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:l}=o,s=this.irisGrid.getTheme();if(a&&s.columnHeaderHeight!=null&&s.filterBarHeight!=null&&t>s.columnHeaderHeight*l&&t<=s.columnHeaderHeight*l+s.filterBarHeight)return this.irisGrid.focusFilterBar(r),!0}return!1}onMove(e){var{y:t,column:r}=e,{isFilterBarShown:i,hoverAdvancedFilter:a,metrics:o}=this.irisGrid.state;if(!o)throw new Error("Metrics not set");var{columnHeaderMaxDepth:l}=o,s=this.irisGrid.getTheme(),u=null;return i&&s.columnHeaderHeight!=null&&s.filterBarHeight!=null&&r!==null&&t>=s.columnHeaderHeight*l&&t<=s.columnHeaderHeight*l+s.filterBarHeight&&(u=r),u!==a&&this.irisGrid.setState({hoverAdvancedFilter:u}),!1}onLeave(e){var{column:t}=e,{hoverAdvancedFilter:r}=this.irisGrid.state;return r!==null&&t!==r&&this.irisGrid.setState({hoverAdvancedFilter:null}),!1}}const Zv=Qv;function Jv(n,e,t){return e=eg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eg(n){var e=tg(n,"string");return typeof e=="symbol"?e:String(e)}function tg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class rg extends We{constructor(e){super(750),Jv(this,"irisGrid",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({expandCellTooltipProps:null})}setCursor(e,t){return Ta.isInTreeBox(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}getButtonPosition(e){var{x:t,y:r,column:i,row:a}=e;if(i==null||a==null)return null;var{renderer:o,grid:l,state:s,props:u}=this.irisGrid;if(!l)return null;var{metrics:d}=s,{model:c}=u,{canvasContext:h}=l,v=l.getTheme(),g={context:h,mouseX:t,mouseY:r,metrics:d,model:c,theme:v},f=De(c)?c.depthForRow(a):null,{left:p,top:C,width:w,height:b}=o.getExpandButtonPosition(g,f);return p==null||w==null||C==null||b==null?null:{left:p,top:C,width:w,height:b}}onMove(e,t){if(Ta.isInTreeBox(e,t)){var{expandCellTooltipProps:r}=this.irisGrid.state,{model:i}=this.irisGrid.props,a=this.getButtonPosition(e),{row:o}=e;_(o);var l=De(i)&&i.isRowExpanded(o);Vt(r,a)||this.irisGrid.setState({expandCellTooltipProps:a,expandTooltipDisplayValue:l?"collapse":"expand"})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const ng=rg;function ol(n,e,t){return e=ig(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ig(n){var e=ag(n,"string");return typeof e=="symbol"?e:String(e)}function ag(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class og extends We{constructor(e){super(),ol(this,"irisGrid",void 0),ol(this,"column",void 0),this.column=null,this.irisGrid=e}getColumnFromGridPoint(e){var{column:t,row:r,columnHeaderDepth:i}=e;return t!==null&&r===null&&i===0?t:null}onDown(e){return this.column=this.getColumnFromGridPoint(e),!1}onClick(e,t,r){var i=this.getColumnFromGridPoint(e);if(i!=null&&i===this.column){var a=ln.isModifierKeyDown(r);return this.irisGrid.toggleSort(i,a),!0}return!1}}const lg=og;class sg extends We{constructor(e){super(),this.irisGrid=e}onWheel(e,t,r){var{irisGrid:i}=this,{model:a}=i.props,{metrics:o,pendingRowCount:l}=i.state;_(o);var{bottom:s,rowCount:u,rowHeight:d}=o,{deltaY:c}=j.getScrollDelta(r);return ke(a)&&a.isEditable&&s>=u-1&&c>0&&i.setState({pendingRowCount:l+Math.ceil(c/d)}),!1}}const ug=sg;function ll(n,e,t){return e=dg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dg(n){var e=cg(n,"string");return typeof e=="symbol"?e:String(e)}function cg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class hg extends We{constructor(e){super(),ll(this,"irisGrid",void 0),ll(this,"currentLinkBox",void 0),this.irisGrid=e}destroyTooltip(){this.irisGrid.setState({linkHoverTooltipProps:null})}isHoveringLink(e,t){var{column:r,row:i,x:a,y:o}=e,{renderer:l,metrics:s,props:u}=t,{model:d}=u;if(r==null||i==null||s==null)return this.currentLinkBox=void 0,!1;var{modelRows:c,modelColumns:h}=s,v=D(c,i),g=D(h,r),f=d.renderTypeForCell(g,v),p=l.getCellRenderer(f);if(!Ss(p))return!1;if(this.currentLinkBox!=null){var{x1:C,y1:w,x2:b,y2:E}=this.currentLinkBox;if(a>=C&&a<=b&&o>=w&&o<=E)return!0}for(var T=t.updateRenderState(),S=p.getTokenBoxesForVisibleCell(r,i,T),O=0;O<S.length;O+=1)if(Si(S[O].token)){var F=j.translateTokenBox(S[O],s),{x1:R,x2:N,y1:P,y2:I}=F;if(a>=R&&a<=N&&o>=P&&o<=I)return this.currentLinkBox=F,!0}return this.currentLinkBox=void 0,!1}setCursor(e,t){return this.isHoveringLink(e,t)?(this.cursor="pointer",{stopPropagation:!1,preventDefault:!1}):(this.cursor=null,!1)}onMove(e,t){var r=this.isHoveringLink(e,t);if(r&&this.currentLinkBox!=null&&Si(this.currentLinkBox.token)){var{linkHoverTooltipProps:i}=this.irisGrid.state;if(this.currentLinkBox==null)return!1;var{x1:a,y1:o,x2:l,y2:s}=this.currentLinkBox,{href:u}=this.currentLinkBox.token,d=l-a,c=s-o,h={left:a,top:o+1,width:d,height:c};Vt(i,h)||this.irisGrid.setState({linkHoverTooltipProps:h,linkHoverDisplayValue:u})}else this.destroyTooltip();return this.setCursor(e,t)}onDown(){return this.destroyTooltip(),!1}onContextMenu(){return this.destroyTooltip(),!1}onWheel(){return this.destroyTooltip(),!1}onLeave(){return this.destroyTooltip(),!1}}const mg=hg;var vg=3e3;function gg(n){var{children:e=null,onEntering:t,onEntered:r,onExiting:i,onExited:a}=n,[o,l]=y.useState(!1),s=y.useRef(),u=is(e),d=y.useCallback(()=>{l(!0),s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{l(!1)},vg)},[l,s]);return y.useEffect(()=>{u!==e&&e!=null&&d()},[e,u,l,d]),y.useEffect(()=>()=>s.current?clearTimeout(s.current):void 0,[]),m.createElement(Li,{className:"toast-bottom-bar",isShown:o,onEntering:t,onEntered:r,onExiting:i,onExited:a},e)}class fg extends jr{getGridY(e){var t=super.getGridY(e),{isFilterBarShown:r,theme:i,advancedFilters:a,quickFilters:o,sorts:l,reverseType:s}=e;return r?t+=i.filterBarHeight:(o!=null&&o.size>0||a!=null&&a.size>0)&&(t+=i.filterBarCollapsedHeight),s!==M.REVERSE_TYPE.NONE&&l!=null&&l.length>0&&(t+=i.reverseHeaderBarHeight),t}getUserColumnWidths(){return this.userColumnWidths}}const pg=fg;var Cg=1,Ns=m.memo(n=>{var{model:e,modelColumns:t,top:r,bottom:i,left:a,right:o,filter:l,formatter:s,reverseType:u=M.REVERSE_TYPE.NONE,sorts:d,customColumns:c,movedColumns:h,hiddenColumns:v,alwaysFetchColumns:g,rollupConfig:f=null,totalsConfig:p=null,selectDistinctColumns:C=Ee,pendingRowCount:w=0,pendingDataMap:b=lr,frozenColumns:E,formatColumns:T,columnHeaderGroups:S}=n,O=y.useMemo(()=>Re.getModelViewportColumns(t,a,o,h,v,g,Cg),[t,a,o,h,v,g]);return y.useEffect(function(){e.filter=l},[e,l]),y.useEffect(function(){var R=[...d];u!==M.REVERSE_TYPE.NONE&&R.push(e.dh.Table.reverse()),e.sort=R},[e,d,u]),y.useEffect(function(){e.formatter=s},[e,s]),y.useEffect(function(){e.isCustomColumnsAvailable&&(e.customColumns=c)},[e,c]),y.useEffect(function(){e.isFormatColumnsAvailable&&(e.formatColumns=T)},[e,T]),y.useEffect(function(){e.setViewport(r,i,O)},[e,r,i,O]),y.useEffect(function(){e.isRollupAvailable&&(e.rollupConfig=f)},[e,e.isRollupAvailable,f]),y.useEffect(function(){e.isSelectDistinctAvailable&&(e.selectDistinctColumns=C)},[e,C]),y.useEffect(function(){e.isTotalsAvailable&&(e.totalsConfig=p)},[e,e.isTotalsAvailable,p]),y.useEffect(function(){e.pendingRowCount=w},[e,w]),y.useEffect(function(){e.pendingDataMap=b},[e,b]),y.useEffect(function(){E&&e.updateFrozenColumns(E)},[e,E]),y.useEffect(function(){e.columnHeaderGroups=S},[e,S]),null});Ns.displayName="IrisGridModelUpdater";const wg=Ns;var Fa=16,bg=new Map([["sortUp",Nu],["sortDown",Du],["caretDown",rs],["caretRight",Pu],["cellOverflow",Iu]]),Sg=zt(n=>{var e=bg.get(n);if(e===void 0)throw new Error("Icon is undefined");var t=Array.isArray(e.icon[4])?e.icon[4][0]:e.icon[4],r=new Path2D(t),i=new Path2D,a={a:Fa/e.icon[0],d:Fa/e.icon[1]};return i.addPath(r,a),i},{max:1e3});function Ln(n){return Sg(n)}class Eg{static drawTreeMarker(e,t,r,i,a,o,l){e.save();var{x1:s,y1:u}=a,d=Ln(l?"caretDown":"caretRight"),c=r+s-2,h=i+u+2.5;e.fillStyle=o,e.textAlign="center",e.translate(c,h),e.fill(d),e.restore()}}const Ds=Eg;class Tg extends ws{drawCellContent(e,t,r,i){var a,{metrics:o,model:l}=t,{modelColumns:s,modelRows:u}=o,d=D(u,i),c=s.get(r);if(c!==void 0){var h=l.valueForCell(c,d);if(M.isTextType((a=l.columns[c])===null||a===void 0?void 0:a.type)&&(h===null||h==="")){var v=e.font;e.font="italic ".concat(v),super.drawCellContent(e,t,r,i),e.font=v;return}super.drawCellContent(e,t,r,i)}}getTextRenderMetrics(e,t,r){var i=j.getTextRenderMetrics(e,t,r),{mouseX:a,mouseY:o,metrics:l,theme:s}=e;if(a==null||o==null)return i;var{column:u,row:d}=j.getGridPointFromXY(a,o,l);if(t===u&&r===d){var{left:c}=this.getCellOverflowButtonPosition(a,o,l,s);this.shouldRenderOverflowButton(e)&&c!=null&&(i.width=c-l.gridX-i.x)}return i}getCellOverflowButtonPosition(e,t,r,i){var a={left:null,top:null,width:null,height:null};if(e==null||t==null||r==null)return a;var{rowHeight:o,columnWidth:l,left:s,top:u}=j.getCellInfoFromXY(e,t,r);if(s==null||l==null||u==null)return a;var{width:d,verticalBarWidth:c}=r,{cellHorizontalPadding:h}=i,v=Fa+2*h,g=o,f=Math.min(r.gridX+s+l,d-c),p=f-v,C=r.gridY+u;return{left:p,top:C,width:v,height:g}}shouldRenderOverflowButton(e){var t,r,{context:i,mouseX:a,mouseY:o,metrics:l,model:s,theme:u}=e;if(a==null||o==null)return!1;var{row:d,column:c,modelRow:h,modelColumn:v}=j.getCellInfoFromXY(a,o,l);if(d==null||c==null||h==null||v==null||!M.isStringType(s.columns[v].type))return!1;var g=(t=s.textForCell(v,h))!==null&&t!==void 0?t:"",{width:f}=j.getTextRenderMetrics(e,c,d),p=(r=l.fontWidths.get(u.font))!==null&&r!==void 0?r:Wr;i.save(),i.font=u.font;var C=this.getCachedTruncatedString(i,g,f,p,s.truncationCharForCell(v,h));return i.restore(),g!==""&&C!==g}drawTreeMarker(e,t,r,i,a,o,l){Ds.drawTreeMarker(e,t,r,i,a,o,l)}}const yg=Tg;class Rg extends Cs{drawTreeMarker(e,t,r,i,a,o,l){Ds.drawTreeMarker(e,t,r,i,a,o,l)}}const Og=Rg;function sl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ul(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?sl(Object(t),!0).forEach(function(r){Na(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):sl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Na(n,e,t){return e=Fg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fg(n){var e=Ng(n,"string");return typeof e=="symbol"?e:String(e)}function Ng(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var da=Object.freeze({SORT_UP:"sortUp",SORT_DOWN:"sortDown",CARET_DOWN:"caretDown",CARET_RIGHT:"caretRight",CELL_OVERFLOW:"cellOverflow"}),dl=10;class Ri extends Qt{constructor(){super(...arguments),Na(this,"textCellRenderer",new yg),Na(this,"dataBarCellRenderer",new Og)}static isFilterValid(e,t){var r=e==null||e.filter!=null,i=t==null||t.filter!=null;return r&&i}getSortIcon(e){return e?e.direction===M.sortDirection.ascending?Ln(da.SORT_UP):e.direction===M.sortDirection.descending?Ln(da.SORT_DOWN):null:null}drawCanvas(e){super.drawCanvas(e),this.drawScrim(e)}drawGrid(e,t){super.drawGrid(e,t),this.drawCellOverflowButton(t)}drawGridLines(e,t){super.drawGridLines(e,t),this.drawGroupedColumnLine(e,t),this.drawPendingRowLine(e,t)}drawCellContent(e,t,r,i){var{metrics:a,model:o}=t,{modelColumns:l,modelRows:s}=a,u=l.get(r),d=D(s,i);if(u!==void 0){var c=o.renderTypeForCell(u,d),h=this.getCellRenderer(c);h.drawCellContent(e,t,r,i)}}getCellOverflowButtonPosition(e){var{mouseX:t,mouseY:r,metrics:i,theme:a}=e;return this.textCellRenderer.getCellOverflowButtonPosition(t,r,i,a)}shouldRenderOverflowButton(e){return this.textCellRenderer.shouldRenderOverflowButton(e)}drawCellOverflowButton(e){var{context:t,mouseX:r,mouseY:i,theme:a}=e;if(!(r==null||i==null)&&this.shouldRenderOverflowButton(e)){var{left:o,top:l,width:s,height:u}=this.getCellOverflowButtonPosition(e),{cellHorizontalPadding:d,overflowButtonColor:c,overflowButtonHoverColor:h}=a;t.save(),h!=null&&o!=null&&s!=null&&l!=null&&u!=null&&r>=o&&r<=o+s&&i>=l&&i<=l+u?t.fillStyle=h:c!=null&&(t.fillStyle=c);var v=Ln(da.CELL_OVERFLOW);o!=null&&l!=null&&t.translate(o+d,l+2),t.fill(v),t.restore()}}drawGroupedColumnLine(e,t){var{metrics:r,model:i,theme:a}=t,{groupedColumns:o}=i,{maxY:l,allColumnWidths:s,allColumnXs:u}=r;if(!(o.length===0||a.groupedColumnDividerColor==null)){var d=o.length-1,c=u.get(d),h=s.get(d);if(!(c==null||h==null)){var v=c+h+.5;e.strokeStyle=a.groupedColumnDividerColor,e.lineWidth=1,e.beginPath(),e.moveTo(v,0),e.lineTo(v,l),e.stroke()}}}drawPendingRowLine(e,t){var{metrics:r,model:i,theme:a}=t,{allRowYs:o,maxX:l}=r,{pendingRowCount:s}=i;if(!(s<=0)){var u=i.rowCount-i.pendingRowCount-i.floatingBottomRowCount,d=o.get(u);d!=null&&(d-=.5,e.save(),e.setLineDash([4,2]),e.strokeStyle=a.pendingTextColor,e.lineWidth=1,e.beginPath(),e.moveTo(0,d),e.lineTo(l,d),e.stroke(),e.restore())}}drawMouseColumnHover(e,t){var{theme:r,metrics:i,hoverSelectColumn:a}=t;if(!(a==null||r.linkerColumnHoverBackgroundColor==null)){var{allColumnWidths:o,allColumnXs:l,maxY:s}=i,u=D(l,a),d=D(o,a);e.fillStyle=r.linkerColumnHoverBackgroundColor,e.fillRect(u,0,d,s)}}drawMouseRowHover(e,t){var{isSelectingColumn:r}=t;r||super.drawMouseRowHover(e,t)}drawScrim(e){var{context:t,loadingScrimProgress:r,metrics:i,theme:a}=e;if(r!=null){var{width:o,height:l,gridY:s}=i,{scrimBlurSize:u,scrimColor:d}=a;t.save(),t.globalCompositeOperation="color",t.filter="blur(".concat(u,"px)"),d!=null&&(t.fillStyle=d),t.beginPath(),t.rect(0,s,o,l-s),t.clip(),t.fillRect(-u,-u+s,u*2+o,(u*2+(l-s))*r),t.globalCompositeOperation="overlay",t.filter="blur(".concat(u,"px) opacity(15%)"),t.fillRect(-u,-u+s,u*2+o,(u*2+(l-s))*r),t.restore()}}drawColumnHeaders(e,t){super.drawColumnHeaders(e,t);var{theme:r,metrics:i,model:a,reverseType:o}=t,{columnHeaderHeight:l}=i;if(this.drawFilterHeaders(e,t),!(l<=0)){var{sort:s}=a;if(s.length===1){var u=o!==M.REVERSE_TYPE.NONE,d;u?d=r.headerReverseBarColor:d=r.headerSortBarColor,this.drawHeaderBar(e,t,d,u?r.reverseHeaderBarHeight:r.sortHeaderBarHeight)}else s.length>1&&(o!==M.REVERSE_TYPE.NONE&&this.drawHeaderBar(e,t,r.headerReverseBarColor,r.reverseHeaderBarHeight,!1),this.drawHeaderBar(e,t,r.headerSortBarColor,r.sortHeaderBarHeight))}}drawHeaderBar(e,t,r,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,{theme:o,metrics:l,model:s}=t,{columnHeaderHeight:u,width:d}=l,c=0;a||(c=i),e.fillStyle=o.headerBarCasingColor,e.fillRect(0,s.columnHeaderMaxDepth*u-i-2+c,d,i+2),e.fillStyle=r,e.fillRect(0,s.columnHeaderMaxDepth*u-i-1+c,d,i)}drawColumnHeadersAtDepth(e,t,r,i,a){var{metrics:o,model:l,isMenuShown:s}=t,{columnHeaderMaxDepth:u}=l,{width:d}=o,c=ul(ul({},i),{},{maxX:a===u-1&&i.maxX===d?d-(s?0:30):i.maxX});super.drawColumnHeadersAtDepth(e,t,r,c,a)}drawColumnHeaderAtIndex(e,t,r,i){var a,o;super.drawColumnHeaderAtIndex(e,t,r,i);var{metrics:l,model:s,theme:u}=t,{modelColumns:d,allColumnWidths:c,allColumnXs:h,gridX:v,columnHeaderHeight:g,fontWidths:f}=l,{headerHorizontalPadding:p}=u,C=D(c,r,0),w=D(h,r)+v,b=d.get(r);if(b!=null){var E=(a=s.columns[b])===null||a===void 0?void 0:a.name;if(E!=null){var T=M.getSortForColumn(s.sort,E);if(T){var S=this.getSortIcon(T);if(S){var O=s.textForColumnHeader(b);if(O!==void 0){var F=(o=f.get(e.font))!==null&&o!==void 0?o:Wr;_(F);var R=O.length*F,N=v+w+R+p,{maxX:P}=i;P-=p;var I=v+w+C-p-1,A=N>P?N+1:Math.min(P,I),H=T.direction===M.sortDirection.ascending?-6:-12,x=g*.5+H;e.save(),e.beginPath(),e.rect(w,0,C,g),e.clip(),e.fillStyle=u.headerSortBarColor,e.translate(A,x),e.fill(S),e.restore()}}}}}}drawFilterHeaders(e,t){var{isFilterBarShown:r,quickFilters:i,advancedFilters:a}=t;r?this.drawExpandedFilterHeaders(e,t):(i!=null&&i.size>0||a!=null&&a.size>0)&&this.drawCollapsedFilterHeaders(e,t)}drawExpandedFilterHeaders(e,t){var{metrics:r,model:i,theme:a,quickFilters:o,advancedFilters:l}=t,{filterBarHeight:s}=a;if(!(s<=0)){var{gridX:u,gridY:d,maxX:c,modelColumns:h,visibleColumns:v,allColumnWidths:g,allColumnXs:f}=r,p=d-s;e.save(),e.font=a.font,e.textAlign="left",o!=null&&o.size>0||l!=null&&l.size>0?e.fillStyle=a.filterBarExpandedActiveBackgroundColor:e.fillStyle=a.filterBarExpandedBackgroundColor,e.fillRect(u,p,c,s-1),e.fillStyle=a.headerBarCasingColor,e.fillRect(u,p+s-1,c,1);var C=p;e.strokeStyle=a.filterBarSeparatorColor,e.beginPath();for(var w=0;w<v.length;w+=1){var b=v[w],E=D(h,b),T=D(f,b),S=D(g,b);if(i.isFilterable(E)&&S>0){var O=u+(T??0);e.rect(O+.5,C+.5,S,s-2)}}e.stroke();for(var F=0;F<v.length;F+=1){var R=v[F],N=D(g,R),P=D(f,R),I=P+u;this.drawExpandedFilterHeader(e,t,R,I,N)}e.restore()}}drawExpandedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:l,quickFilters:s,advancedFilters:u}=t,{modelColumns:d,gridY:c}=o,{filterBarHeight:h,filterBarExpandedActiveCellBackgroundColor:v,filterBarErrorColor:g,filterBarHorizontalPadding:f,headerColor:p}=l,C=c-h,w=d.get(r);if(w!==void 0){var b=s.get(w),E=u.get(w);if(!(b==null&&E==null)){var T=null;if(b!=null){var{text:S}=b;if(T=S,T||(T=M.getFilterText(b.filter)),T!=null){var{fontWidths:O}=o,F=O.get(e.font);(F==null||F===0)&&(F=e.measureText("8").width,F||(F=10));var R=(a-f*2)/F;R<=0?T="":T.length>R&&(T="".concat(T.substring(0,R-1),"…"))}}e.save();var N=Ri.isFilterValid(E,b);if(N&&v!=null)e.fillStyle=v,e.fillRect(i+1,C+1,a-1,h-3);else if(g!=null){e.fillStyle=g,e.lineWidth=2,e.strokeStyle=g;var P=i+2,I=C+2,A=a-3,H=h-5;e.strokeRect(P,I,A,H)}if(T!=null&&T!==""){var x=i+f,W=C+h*.5+1;e.fillStyle=p,e.fillText(T,x,W)}e.restore()}}}}drawCollapsedFilterHeaders(e,t){var{metrics:r,theme:i}=t,{headerSeparatorColor:a,filterBarCollapsedHeight:o}=i;if(!(o<=0)){var{gridX:l,gridY:s,maxX:u,visibleColumns:d,allColumnWidths:c,allColumnXs:h}=r,v=s-o;e.save(),e.fillStyle=a,e.fillRect(l,v,u,o);for(var g=0;g<d.length;g+=1){var f=d[g],p=c.get(f),C=h.get(f);if(C!=null&&p!=null){var w=C+l;this.drawCollapsedFilterHeader(e,t,f,w,p)}}e.restore()}}drawCollapsedFilterHeader(e,t,r,i,a){if(!(a<=0)){var{metrics:o,theme:l,quickFilters:s,advancedFilters:u}=t,{modelColumns:d,gridY:c}=o,h=d.get(r);if(h!==void 0){var v=s.get(h),g=u.get(h),{filterBarCollapsedHeight:f,filterBarActiveColor:p,filterBarActiveBackgroundColor:C,filterBarErrorColor:w}=l;e.save();var b=Ri.isFilterValid(g,v);C!=null&&v==null&&g==null?e.fillStyle=C:p!=null&&b?e.fillStyle=p:w!=null&&(e.fillStyle=w);var E=i+1,T=c-f,S=a-1,O=f-1;e.fillRect(E,T,S,O),e.restore()}}}drawRowFooters(e,t){var{metrics:r,model:i,mouseX:a,mouseY:o,theme:l}=t,{gridY:s,gridX:u,maxX:d,modelRows:c,floatingTopHeight:h,floatingBottomHeight:v,floatingRows:g,rowFooterWidth:f,height:p,horizontalBarHeight:C,verticalBarWidth:w,allRowHeights:b,allRowYs:E,width:T}=r;if(!(f<=0||g.length===0)){var{cellHorizontalPadding:S,floatingGridRowColor:O,floatingRowBackgroundColors:F,headerColor:R,rowHoverBackgroundColor:N}=l;e.translate(u,s),e.beginPath();var P=Math.min(d,T-f-w-u);e.fillStyle=F,h>0&&e.rect(P,0,f,h),v>0&&e.rect(P,p-s-C-v,f,v),e.fill();var I=a!=null&&o!=null&&a>=u&&a<=d+f?j.getRowAtY(o,r):null;if(N!=null&&I!==null&&g.includes(I)){e.fillStyle=N;var A=E.get(I),H=b.get(I);_(A),_(H),e.fillRect(P,A,f,H)}if(e.beginPath(),O!=null&&(e.strokeStyle=O),h>0&&(e.moveTo(P+.5,.5),e.lineTo(P+.5,h-.5)),v>0){var x=p-s-C-v;e.moveTo(P-.5,x+.5),e.lineTo(P-.5,x+v-.5)}e.stroke(),e.fillStyle=R,e.textAlign="left";for(var W=P+S,z=0;z<g.length;z+=1){var G=g[z],K=b.get(G),q=E.get(G),k=c.get(G);if(q!=null&&K!=null&&k!=null){var L=q+K*.5;e.fillText(i.textForRowFooter(k),W,L)}}e.translate(-u,-s)}}getExpandButtonPosition(e,t){var{mouseX:r,mouseY:i,metrics:a,theme:o}=e,l={left:null,top:null,width:null,height:null};if(r==null||i==null||t==null||!a)return l;var{rowHeight:s,left:u,top:d}=j.getCellInfoFromXY(r,i,a);_(u),_(s),_(d);var{cellHorizontalPadding:c}=o,h=dl+2*c,v=Math.max(u+dl*t,a.gridX),g=a.gridY+d;return{left:v,top:g,width:h,height:s}}}const Dg=Ri,Pg="12px Fira Sans, sans-serif",Ig="#f0f0ee",Ag="#1a171a",J={"grid-bg":"#211f22",font:Pg,white:Ig,black:Ag,"header-bg":"#2d2a2e","header-color":"#f0f0ee","header-height":"30px","header-separator-color":"#211f22","header-separator-hover-color":"#929192","header-hidden-separator-hover-color":"#4878ea","header-sort-bar-color":"#aa9af4","header-reverse-bar-color":"#548d29","header-bar-casing-color":"#211f22","header-font":"600 12px Fira Sans, sans-serif","row-height":"19px","row-background-colors":"#373438 #2d2a2e","selection-color":"rgba(118, 217, 228, 0.09)","selection-outline-color":"#76d9e4","selection-outline-casing-color":"#211f22","row-hover-bg":"#4b494c","selected-row-hover-bg":"rgba(118, 217, 228, 0.25)","scroll-bar-active-selection-tick-color":"rgba(118, 217, 228, 0.5)","scroll-bar-bg":"#322f33","scroll-bar-hover-bg":"#373438","scroll-bar-casing-color":"#555356","scroll-bar-corner-color":"#322f33","scroll-bar-color":"#5b5a5c","scroll-bar-hover-color":"#929192","scroll-bar-active-color":"#c0bfbf","text-color":"#f0f0ee","hyperlink-color":"#4878ea","positive-number-color":"#9edc6f","negative-number-color":"#f95d84","zero-number-color":"#fcd65b","date-color":"#fcd65b","pending-text-color":"#fde38d","error-text-color":"#f95d84","null-string-color":"#929192","filter-bar-active-bg":"#425175","filter-bar-active-color":"#4878ea","filter-bar-expanded-bg":"#373438","filter-bar-expanded-active-bg":"#313849","filter-bar-expanded-active-cell-bg":"#374d80","filter-bar-separator-color":"#929192","filter-bar-error-color":"#f95d84","filter-icon-color":"#4878ea","scrim-color":"#211f22","context-menu-sort-icon-color":"#aa9af4","context-menu-reverse-icon-color":"#548d29","linker-column-hover-bg":"rgba(118, 217, 228, 0.09)","tree-line-color":"#5b5a5c","tree-marker-color":"#c0bfbf","tree-marker-hover-color":"#fcfcfa","grouped-column-divider-color":"#1a171a","floating-grid-row-color":"#555356","floating-row-background-colors":"#403e41","floating-divider-inner-color":"#403e41","floating-divider-outer-color":"#211f22","overflow-button-color":"#c0bfbf","overflow-button-hover-color":"#fcfcfa","zero-line-color":"#5b5a5c","positive-bar-color":"#9edc6f","negative-bar-color":"#f95d84"};var Mg=Object.freeze({backgroundColor:J["grid-bg"],white:J.white,black:J.black,font:J.font,headerBackgroundColor:J["header-bg"],headerColor:J["header-color"],headerSeparatorColor:J["header-separator-color"],headerSeparatorHoverColor:J["header-separator-hover-color"],headerHiddenSeparatorHoverColor:J["header-hidden-separator-hover-color"],headerSortBarColor:J["header-sort-bar-color"],headerReverseBarColor:J["header-reverse-bar-color"],headerBarCasingColor:J["header-bar-casing-color"],headerFont:J["header-font"],rowBackgroundColors:J["row-background-colors"],rowHoverBackgroundColor:J["row-hover-bg"],selectionColor:J["selection-color"],selectionOutlineColor:J["selection-outline-color"],selectionOutlineCasingColor:J["selection-outline-casing-color"],selectedRowHoverBackgroundColor:J["selected-row-hover-bg"],scrollBarBackgroundColor:J["scroll-bar-bg"],scrollBarHoverBackgroundColor:J["scroll-bar-hover-bg"],scrollBarCasingColor:J["scroll-bar-casing-color"],scrollBarCornerColor:J["scroll-bar-corner-color"],scrollBarColor:J["scroll-bar-color"],scrollBarHoverColor:J["scroll-bar-hover-color"],scrollBarActiveColor:J["scroll-bar-active-color"],scrollBarSelectionTickColor:J["selected-row-hover-bg"],scrollBarActiveSelectionTickColor:J["scroll-bar-active-selection-tick-color"],textColor:J["text-color"],hyperlinkColor:J["hyperlink-color"],positiveNumberColor:J["positive-number-color"],negativeNumberColor:J["negative-number-color"],zeroNumberColor:J["zero-number-color"],dateColor:J["date-color"],pendingTextColor:J["pending-text-color"],errorTextColor:J["error-text-color"],nullStringColor:J["null-string-color"],filterBarActiveBackgroundColor:J["filter-bar-active-bg"],filterBarExpandedBackgroundColor:J["filter-bar-expanded-bg"],filterBarExpandedActiveBackgroundColor:J["filter-bar-expanded-active-bg"],filterBarExpandedActiveCellBackgroundColor:J["filter-bar-expanded-active-cell-bg"],filterBarSeparatorColor:J["filter-bar-separator-color"],filterBarActiveColor:J["filter-bar-active-color"],filterBarErrorColor:J["filter-bar-error-color"],filterIconColor:J["filter-icon-color"],scrimColor:J["scrim-color"],contextMenuSortIconColor:J["context-menu-sort-icon-color"],contextMenuReverseIconColor:J["context-menu-reverse-icon-color"],allowRowResize:!1,autoSelectRow:!0,gridColumnColor:null,gridRowColor:null,groupedColumnDividerColor:J["grouped-column-divider-color"],columnHoverBackgroundColor:null,headerHorizontalPadding:12,scrollBarSize:13,scrollBarHoverSize:16,minScrollHandleSize:24,rowHeight:parseInt(J["row-height"],10)||19,columnWidth:100,rowHeaderWidth:0,rowFooterWidth:60,columnHeaderHeight:parseInt(J["header-height"],10)||30,filterBarHeight:30,filterBarCollapsedHeight:5,sortHeaderBarHeight:2,reverseHeaderBarHeight:4,filterBarHorizontalPadding:4,scrimBlurSize:25,minScrimTransitionTime:150,maxScrimTransitionTime:350,scrollSnapToRow:!0,linkerColumnHoverBackgroundColor:J["linker-column-hover-bg"],treeLineColor:J["tree-line-color"],treeMarkerColor:J["tree-marker-color"],treeMarkerHoverColor:J["tree-marker-hover-color"],floatingGridColumnColor:null,floatingGridRowColor:J["floating-grid-row-color"],floatingRowBackgroundColors:J["floating-row-background-colors"],floatingDividerInnerColor:J["floating-divider-inner-color"],floatingDividerOuterColor:J["floating-divider-outer-color"],overflowButtonColor:J["overflow-button-color"],overflowButtonHoverColor:J["overflow-button-hover-color"],zeroLineColor:J["zero-line-color"],positiveBarColor:J["positive-bar-color"],negativeBarColor:J["negative-bar-color"]});const Ps=Mg;function Is(n,e,t){return e=Lg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Lg(n){var e=kg(n,"string");return typeof e=="symbol"?e:String(e)}function kg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ca=Fe.module("ColumnStatistics"),_g={SIZE:"Number of Rows"};class Hn extends y.Component{static getStatsLabel(e){var t;return(t=_g[e])!==null&&t!==void 0?t:e.split(" ").map(r=>r[0].toUpperCase()+r.substr(1).toLowerCase()).join(" ")}constructor(e){super(e),Is(this,"cancelablePromise",void 0),this.handleError=this.handleError.bind(this),this.handleGenerateStatistics=this.handleGenerateStatistics.bind(this),this.handleStatistics=this.handleStatistics.bind(this),this.cancelablePromise=null,this.state={error:null,loading:!1,statistics:null,numRows:0}}componentDidMount(){this.maybeGenerateStatistics()}componentWillUnmount(){this.cancelablePromise&&this.cancelablePromise.cancel()}maybeGenerateStatistics(){var{model:e}=this.props,t=e.rowCount-e.pendingRowCount;this.setState({numRows:t}),e.isColumnStatisticsAvailable?t<Hn.AUTO_GENERATE_LIMIT&&this.handleGenerateStatistics():this.setState({loading:!1})}handleGenerateStatistics(){this.setState({loading:!0});var{column:e,model:t}=this.props;this.cancelablePromise=ot.makeCancelable(t.columnStatistics(e)),this.cancelablePromise.then(this.handleStatistics).catch(this.handleError)}handleStatistics(e){ca.debug("Received statistics",e);var{model:t,onStatistics:r}=this.props,i=[];e.statisticsMap.forEach((a,o)=>{i.push({operation:Hn.getStatsLabel(o),value:a,type:e.getType(o)})}),e.uniqueValues.forEach((a,o)=>{i.push({operation:o,className:"column-statistics-unique-value",value:a,type:"long"})}),this.setState({loading:!1,statistics:i,numRows:t.rowCount-t.pendingRowCount}),r()}handleError(e){if(e!=null&&ot.isCanceled(e)){ca.debug("Called handleError on a cancelled promise result");return}ca.error("Error generating statistics",e),this.setState({error:e,loading:!1,statistics:null})}render(){var{column:e,model:t}=this.props,{error:r,loading:i,statistics:a,numRows:o}=this.state,l=!i&&r==null&&a==null&&t.isColumnStatisticsAvailable,s=[],u=e.type.substring(e.type.lastIndexOf(".")+1),d=e.description===null?null:e.description;if(a!=null)for(var c=0;c<a.length;c+=1){var{operation:h,className:v,value:g,type:f}=a[c],p=f?t.displayString(g,f):t.displayString(g,e.type,e.name),C=m.createElement(m.Fragment,{key:h},m.createElement("div",{className:ie("column-statistic-operation",v)},h),m.createElement("div",{className:"column-statistic-value"},p));s.push(C)}var w=De(t)&&t.hasExpandableRows?"Expanded Rows":"Number of Rows",b=t.displayString(o,"long"),E=t.getColumnIndexByName(e.name);return m.createElement("div",{className:"column-statistics"},m.createElement("div",{className:"column-statistics-title"},e.name,m.createElement("span",{className:"column-statistics-type"}," (",u,")"),m.createElement(os,{className:"column-statistics-copy",tooltip:"Copy column name",copy:e.name})),d!=null&&m.createElement("div",{className:"column-statistics-description"},d),E!=null&&!t.isColumnMovable(E)&&m.createElement("div",{className:"column-statistics-status"},m.createElement(de,{icon:t.isColumnFrozen(E)?Au:Mu,className:"mr-1"}),t.isColumnFrozen(E)?"Frozen":"Not movable"),m.createElement("div",{className:"column-statistics-grid"},a==null&&m.createElement(m.Fragment,null,m.createElement("div",{className:"column-statistic-operation"},w),m.createElement("div",{className:"column-statistic-value"},b)),s),l&&m.createElement(Z,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics},"Generate Stats"),r!=null&&m.createElement("div",{className:"error-message"},"".concat(r)),a&&!i&&m.createElement(Z,{kind:"ghost",className:"px-0",onClick:this.handleGenerateStatistics,icon:m.createElement(de,{icon:Lu,className:"mr-1"})},"Refresh"),i&&m.createElement("div",{className:"column-statistics-loading"},m.createElement(zr,{className:"mr-2"}),"Calculating Stats..."))}}Is(Hn,"AUTO_GENERATE_LIMIT",1e5);const xg=Hn;function cl(n,e,t){return e=Hg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Hg(n){var e=Bg(n,"string");return typeof e=="symbol"?e:String(e)}function Bg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ri=Fe.module("AdvancedFilterCreatorFilterItem");class ho extends y.PureComponent{static getLabelForFilter(e,t){try{if(M.isNumberType(e)||M.isCharType(e))return Yd(t);if(M.isTextType(e))return Kd(t);if(M.isDateType(e))return qd(t);if(M.isBooleanType(e))return Xd(t);throw new Error("Unrecognized column type: ".concat(e))}catch(r){return ri.warn(r),""}}constructor(e){super(e),cl(this,"typeDropdown",void 0),cl(this,"getCachedIsValid",je((a,o,l,s,u)=>{try{return!l||u.makeAdvancedValueFilter(a,o,l,s)!=null}catch{return!1}})),this.handleDelete=this.handleDelete.bind(this),this.handleTypeChange=this.handleTypeChange.bind(this),this.handleValueChange=this.handleValueChange.bind(this),this.typeDropdown=null;var{value:t="",filterTypes:r,selectedType:i=r[0]}=e;this.state={selectedType:i,value:t}}componentDidMount(){var e;(e=this.typeDropdown)===null||e===void 0||e.focus()}componentDidUpdate(e){var{value:t,selectedType:r}=this.props;r!==void 0&&e.selectedType!==r&&this.setState({selectedType:r}),t!==void 0&&e.value!==t&&this.setState({value:t})}handleTypeChange(e){var t=e.target.value;ri.debug2("typeChange",t),this.setState({selectedType:t});var{onChange:r}=this.props,{value:i}=this.state;i!=null&&i.length>0&&r(t,i)}handleValueChange(e){ri.debug2("valueChange");var{value:t}=e.target;this.setState({value:t});var{onChange:r}=this.props,{selectedType:i}=this.state;i!=null&&r(i,t)}handleDelete(){ri.debug("delete");var{onDelete:e}=this.props;e()}render(){for(var{column:e,filterTypes:t,formatter:r,tableUtils:i}=this.props,{selectedType:a,value:o}=this.state,l=!M.isBooleanType(e.type),s=[],u=this.getCachedIsValid(e,a,o,r.timeZone,i),d=0;d<t.length;d+=1){var c=t[d],h=ho.getLabelForFilter(e.type,c),v=m.createElement("option",{key:c,value:c},h);s.push(v)}return m.createElement("div",{className:"advanced-filter-creator-filter-item"},m.createElement("div",{className:"form-row"},m.createElement("div",{className:"form-group col"},m.createElement("select",{className:"form-control custom-select",value:a,onChange:this.handleTypeChange,ref:g=>{this.typeDropdown=g}},s)),l&&m.createElement("div",{className:"form-group col"},m.createElement("div",{className:"input-group"},m.createElement("input",{type:"text",className:ie("form-control",{error:!u}),placeholder:"Enter value",value:o,onChange:this.handleValueChange}))),m.createElement("div",{className:"form-group col-1 px-0"},m.createElement(Z,{kind:"ghost",className:"w-100 h-100 p-0 m-0",onClick:this.handleDelete,icon:Pr,tooltip:"Remove Filter"}))))}}const Ug=ho;function Da(n,e,t){return e=Vg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Vg(n){var e=$g(n,"string");return typeof e=="symbol"?e:String(e)}function $g(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var hl=Fe.module("AdvancedFilterCreatorSelectValueList");class Bn extends y.PureComponent{static indexOf(e,t){for(var r=0;r<t.length;r+=1){var i=t[r];if(i===e||i!=null&&i.valueOf!=null&&e!=null&&e.valueOf!=null&&i.valueOf()===e.valueOf())return r}return-1}constructor(e){super(e),Da(this,"dh",void 0),Da(this,"list",void 0),this.handleSelect=this.handleSelect.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this);var{selectedValues:t,dh:r}=this.props;this.dh=r,this.list=null,this.state={itemCount:0,items:[],offset:0,selectedValues:t,isLoading:!0}}componentDidMount(){var{table:e}=this.props;e&&this.startListening(e)}componentDidUpdate(e){var{filters:t,invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&(e.table&&this.stopListening(e.table),a&&this.startListening(a),this.resetViewport()),e.invertSelection!==r&&this.setState({selectedValues:[]},this.handleSelectionUpdate),e.selectedValues!==i&&this.setState({selectedValues:i},this.handleSelectionUpdate),e.filters!==t&&(a==null||a.applyFilter(t),this.resetViewport())}componentWillUnmount(){var{table:e}=this.props;e&&this.stopListening(e)}handleSelect(e,t){var{invertSelection:r}=this.props,{selectedValues:i}=this.state;i=[...i];var a=Bn.indexOf(t,i);a>=0?i.splice(a,1):i.push(t);var o=a<0;r&&(o=!o);var{offset:l}=this.state,{items:s}=this.state;s=[...s];var u=e-l;u>=0&&u<s.length&&(s[u].isSelected=o),this.setState({items:s,selectedValues:i});var{onChange:d}=this.props;d(i,r)}handleViewportChange(e,t){this.updateViewport(e,t)}handleSelectionUpdate(){this.updateItemSelection()}handleTableUpdate(e){var{table:t,formatter:r}=this.props;if(t){for(var i=e.detail,{offset:a}=i,o=[],l=t.columns[0],s=0;s<i.rows.length;s+=1){var u=i.rows[s],d=u.get(l),c=void 0;d==null?c=m.createElement("i",{className:"text-muted"},"null"):d===""?c=m.createElement("i",{className:"text-muted"},"empty"):c=r.getFormattedString(d,l.type,l.name);var h=this.isValueSelected(d);o.push({displayValue:c,value:d,isSelected:h})}hl.debug2("Received table update:",a,o.length);var v=t.size;this.setState({itemCount:v,items:o,offset:a,isLoading:!1})}}isValueSelected(e){var{invertSelection:t}=this.props,{selectedValues:r}=this.state,i=Bn.indexOf(e,r);return t?i<0:i>=0}startListening(e){e.addEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}stopListening(e){e.removeEventListener(this.dh.Table.EVENT_UPDATED,this.handleTableUpdate)}resetViewport(){this.list&&this.list.topRow!=null&&this.list.bottomRow!=null&&this.updateViewport(this.list.topRow,this.list.bottomRow,!0)}updateItemSelection(){var{items:e}=this.state;e=[...e];for(var t=0;t<e.length;t+=1){var r=e[t],{value:i}=r;r.isSelected=this.isValueSelected(i)}this.setState({items:e})}updateViewport(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{table:i}=this.props;if(i!=null){r&&this.setState({isLoading:!0});var a=t-e+1,o=Math.max(0,e-a*3),l=Math.max(o,t+a*3);hl.debug2("Setting viewport",o,",",l),i.setViewport(o,l)}}render(){var{offset:e,isLoading:t,items:r,itemCount:i}=this.state;return m.createElement("div",{className:"select-value-list-wrapper"},m.createElement(fd,{itemCount:i,items:r,offset:e,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange,ref:a=>{this.list=a}}),m.createElement(Or,{in:t,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"loading-list"},m.createElement(zr,{className:"loading-spinner-large"}))))}}Da(Bn,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{}});const Gg=Bn;function kn(n,e,t){return e=Wg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wg(n){var e=zg(n,"string");return typeof e=="symbol"?e:String(e)}function zg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Un extends y.PureComponent{constructor(e){super(e),kn(this,"searchTablePromise",void 0),kn(this,"tableUtils",void 0),kn(this,"updateFilterTimer",void 0),this.handleSelectAllClick=this.handleSelectAllClick.bind(this),this.handleClearAllClick=this.handleClearAllClick.bind(this),this.handleListChange=this.handleListChange.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUpdateFilterTimeout=this.handleUpdateFilterTimeout.bind(this);var{dh:t,invertSelection:r,selectedValues:i}=e;this.tableUtils=new M(t),this.state={filters:[],invertSelection:r,selectedValues:i,searchText:""}}componentDidMount(){this.initSearchTable()}componentDidUpdate(e,t){var{invertSelection:r,selectedValues:i,table:a}=this.props;e.table!==a&&this.initSearchTable(),e.invertSelection!==r&&this.setState({invertSelection:r}),e.selectedValues!==i&&this.setState({selectedValues:i});var{table:o,searchText:l}=this.state;o!==t.table&&(t.table!=null&&t.table.close(),o!=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:r}=this.state;return r==null?null:e?r.totalSize-t.length:t.length}getDisplayedValueText(){var e=this.getDisplayedValuesCount(),{table:t}=this.state,{formatter:r}=this.props;if(e!=null&&t!=null){var i=r.getFormattedString(e,"long"),a=r.getFormattedString(t.totalSize,"long"),o="";return e<1e6&&(o="Displaying "),"".concat(o).concat(i," of ").concat(a)}return null}initSearchTable(){var{table:e}=this.props;if(e!=null){var t=e.copy();this.searchTablePromise=t,this.searchTablePromise.then(r=>{this.searchTablePromise===t?(this.setState({table:r}),this.searchTablePromise=void 0):r.close()})}}handleListChange(e,t){this.setState({selectedValues:e,invertSelection:t});var{onChange:r}=this.props;r(e,t)}handleSearchChange(e){var t=e.target.value;this.setState({searchText:t})}handleSelectAllClick(){this.resetSelection(!0)}handleClearAllClick(){this.resetSelection(!1)}handleUpdateFilterTimeout(){this.updateFilterTimer=void 0,this.updateTableFilter()}resetSelection(e){var t=[];this.setState({invertSelection:e,selectedValues:t});var{onChange:r}=this.props;r(t,e)}startUpdateFilterTimer(){this.stopUpdateFilterTimer(),this.updateFilterTimer=setTimeout(this.handleUpdateFilterTimeout,Un.searchDebounceTime)}stopUpdateFilterTimer(){this.updateFilterTimer!=null&&(clearTimeout(this.updateFilterTimer),this.updateFilterTimer=void 0)}updateTableFilter(){var{table:e,searchText:t}=this.state,{timeZone:r}=this.props,{tableUtils:i}=this,a=e==null?void 0:e.columns[0],o=[];if(a!=null){var l;if(t.length>0){var s=null;M.isCharType(a.type)?s=i.makeQuickFilter(a,t):M.isTextType(a.type)?s=i.makeQuickFilter(a,"~".concat(t),r):s=i.makeQuickFilter(a,">=".concat(t),r),s!=null?o.push(s):l="Invalid search text"}this.setState({filters:o,error:l})}}render(){var{error:e,filters:t,invertSelection:r,selectedValues:i,searchText:a,table:o}=this.state,{dh:l,formatter:s,showSearch:u}=this.props,d=this.getColumnName(),c=this.getDisplayedValueText(),h=d?"Find ".concat(d,"..."):"";return m.createElement("div",{className:"advanced-filter-creator-select-value"},m.createElement("div",{className:u?"form-group":""},m.createElement("label",{htmlFor:"advanced-filter-creator-select-value-input"},"Select Values"),u&&m.createElement("input",{type:"text",className:ie("form-control",{"is-invalid":e!=null}),id:"advanced-filter-creator-select-value-input",placeholder:h,value:a,onChange:this.handleSearchChange})),m.createElement(Gg,{dh:l,table:o,filters:t,invertSelection:r,selectedValues:i,formatter:s,onChange:this.handleListChange}),m.createElement("div",{className:"advanced-filter-creator-select-meta-row"},m.createElement("div",null,m.createElement(Z,{kind:"ghost",onClick:this.handleSelectAllClick},"Select All"),m.createElement(Z,{kind:"ghost",onClick:this.handleClearAllClick},"Clear")),m.createElement(Or,{in:c!=null,timeout:250,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"row-count-info"},c))))}}kn(Un,"searchDebounceTime",250);kn(Un,"defaultProps",{invertSelection:!0,selectedValues:[],onChange:()=>{},showSearch:!0});const jg=Un;function nn(n,e,t){return e=Kg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Kg(n){var e=Yg(n,"string");return typeof e=="symbol"?e:String(e)}function Yg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Tn=Fe.module("AdvancedFilterCreator");class qt extends y.PureComponent{static makeFilterItem(){return{key:Dr()}}constructor(e){var t,r;super(e),nn(this,"focusTrapContainer",void 0),nn(this,"debounceTimeout",void 0),nn(this,"valuesTablePromise",void 0),nn(this,"getFilterTypes",je(u=>M.getFilterTypes(u))),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=m.createRef();var{options:i}=e,{filterOperators:a,invertSelection:o,selectedValues:l}=i,s=(t=(r=i.filterItems)===null||r===void 0?void 0:r.map(u=>{var{selectedType:d,value:c}=u;return{selectedType:d,value:c,key:Dr()}}))!==null&&t!==void 0?t:[];s.length===0&&s.push(qt.makeFilterItem()),a==null&&(a=[]),o==null&&(o=!0),l==null&&(l=[]),this.state={filterItems:s,filterOperators:a,invertSelection:o,selectedValues:l,valuesTableError:null,valuesTable:void 0}}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){Tn.debug("No values table for this model, just ignore");return}this.valuesTablePromise=M.makeCancelableTablePromise(e.valuesTable(t)),this.valuesTablePromise.then(r=>{var i=r.columns[0].sort().asc();r.applySort([i]),this.setState({valuesTable:r})}).catch(r=>{ot.isCanceled(r)||(Tn.error("Unable to open values table",r),this.setState({valuesTableError:r}))})}handleFocusTrapEnd(){var e,t;((e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelector("button,select,input,textarea")).focus()}handleFocusTrapStart(){var e,t,r=(e=this.focusTrapContainer)===null||e===void 0||(t=e.current)===null||t===void 0?void 0:t.querySelectorAll("button,select,input,textarea");if(r&&r.length>0){var i=r[r.length-1];i.focus()}}handleAddAnd(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(qt.makeFilterItem()),t=t.concat(wn.and),this.setState({filterItems:e,filterOperators:t})}handleAddOr(){var{filterItems:e,filterOperators:t}=this.state;e=e.concat(qt.makeFilterItem()),t=t.concat(wn.or),this.setState({filterItems:e,filterOperators:t})}handleChangeFilterOperator(e,t){var{filterOperators:r}=this.state;r=[...r],pd(t),r[e]=t,this.setState({filterOperators:r}),this.startUpdateTimer()}handleFilterChange(e,t,r){var{filterItems:i}=this.state;i=[...i];var{key:a}=i[e];i[e]={key:a,selectedType:t,value:r},this.setState({filterItems:i}),this.startUpdateTimer()}handleFilterDelete(e){var{filterItems:t,filterOperators:r}=this.state;t=[...t],r=[...r],e<t.length&&t.splice(e,1),e<r.length?r.splice(e,1):e===r.length&&r.splice(r.length-1,1),t.length===0&&t.push(qt.makeFilterItem()),this.setState({filterItems:t,filterOperators:r}),this.startUpdateTimer()}handleSelectValueChange(e,t){this.setState({selectedValues:e,invertSelection:t}),this.startUpdateTimer()}handleReset(){Tn.debug("Resetting Advanced Filter"),this.setState({filterItems:[qt.makeFilterItem()],filterOperators:[],selectedValues:[],invertSelection:!0}),this.startUpdateTimer()}handleSortDown(e){var t=ln.isModifierKeyDown(e);this.sortTable(M.sortDirection.descending,t)}handleSortUp(e){var t=ln.isModifierKeyDown(e);this.sortTable(M.sortDirection.ascending,t)}handleSubmit(e){Tn.debug("Submitting Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate(),e.preventDefault()}handleDone(e){Tn.debug("Submitting and Closing Advanced Filter"),this.stopUpdateTimer(),this.sendUpdate();var{onDone:t}=this.props;t(),e.preventDefault()}handleUpdateTimeout(){this.debounceTimeout=void 0,this.sendUpdate()}shouldShowAddFilter(){var{filterItems:e}=this.state;if(e.length===0)return!1;var t=e[e.length-1],{selectedType:r,value:i}=t;return r!=null&&r.length>0&&i!=null&&i.length>0}sortTable(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{column:r,onSortChange:i}=this.props;i(r,e,t)}startUpdateTimer(){this.stopUpdateTimer(),this.debounceTimeout=setTimeout(this.handleUpdateTimeout,qt.debounceFilterUpdate)}stopUpdateTimer(){this.debounceTimeout!==void 0&&(clearTimeout(this.debounceTimeout),this.debounceTimeout=void 0)}sendUpdate(){var{filterItems:e,filterOperators:t,invertSelection:r,selectedValues:i}=this.state,{column:a,onFilterChange:o,model:l,tableUtils:s}=this.props,{formatter:u}=l,d=e.filter(g=>{var{selectedType:f,value:p}=g;return f!=null&&p!=null&&p!==""}),c=t.filter((g,f)=>g!=null&&e[f].selectedType!=null&&e[f].value!=null&&e[f].value!=="").slice(0,d.length-1),h={filterItems:d,filterOperators:c,invertSelection:r,selectedValues:i},v=s.makeAdvancedFilter(a,h,u.timeZone);o(a,v,h)}render(){var e=this,{column:t,model:r,sortDirection:i,formatter:a,tableUtils:o}=this.props,{filterItems:l,filterOperators:s,invertSelection:u,selectedValues:d,valuesTable:c,valuesTableError:h}=this.state,{dh:v,isValuesTableAvailable:g}=r,f=M.isBooleanType(t.type),p=M.isDateType(t.type),C=this.getFilterTypes(t.type),w=t.type.substring(t.type.lastIndexOf(".")+1),b=[];if(!f&&C.length)for(var E=function(R){var N=l[R],{key:P,selectedType:I,value:A}=N,H=m.createElement(Ug,{key:P,column:t,filterTypes:C,onChange:e.getFilterChangeHandler(R),onDelete:e.getFilterDeleteHandler(R),selectedType:I,value:A,formatter:a,tableUtils:o});if(b.push(H),R<s.length){var x=s[R],W=x===wn.and,z=m.createElement("div",{key:"filterOperator".concat(P),className:"form-row justify-content-end advanced-filter-creator-filter-operator"},m.createElement(Z,{kind:"ghost",className:ie("filter-operator",{active:W}),onClick:()=>e.handleChangeFilterOperator(R,wn.and)},"AND"),m.createElement(Z,{kind:"ghost",className:ie("filter-operator",{active:!W}),onClick:()=>e.handleChangeFilterOperator(R,wn.or)},"OR"));b.push(z)}},T=0;T<l.length;T+=1)E(T);var S=this.shouldShowAddFilter(),O=m.createElement("div",{key:"addFilterItem",className:ie("form-row justify-content-end add-filter-item",{hidden:!S})},m.createElement("span",{className:"text-muted"},m.createElement(de,{icon:dn})),m.createElement(Z,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddAnd,disabled:!S,tooltip:"Add filter with AND"},"AND"),m.createElement(Z,{kind:"ghost",className:"btn-filter-item",onClick:this.handleAddOr,disabled:!S,tooltip:"Add filter with OR"},"OR"));return b.push(O),m.createElement("div",{className:"advanced-filter-creator",role:"presentation"},m.createElement("div",{tabIndex:0,onFocus:this.handleFocusTrapStart}),m.createElement("form",{onSubmit:this.handleSubmit,ref:this.focusTrapContainer},m.createElement("div",{className:"title-bar"},m.createElement("h6",{className:"advanced-filter-title"},"Advanced Filters"),m.createElement("div",{className:"advanced-filter-menu-buttons"},m.createElement(Z,{kind:"ghost",className:ie("sort-operator",{active:i===M.sortDirection.descending}),onClick:this.handleSortDown,icon:Io,tooltip:"Sort ".concat(t.name," Descending")}),m.createElement(Z,{kind:"ghost",className:ie("sort-operator",{active:i===M.sortDirection.ascending}),onClick:this.handleSortUp,icon:m.createElement(de,{icon:Io,rotation:180}),tooltip:"Sort ".concat(t.name," Ascending")}))),m.createElement("hr",null),m.createElement("div",{className:"advanced-filter-column-name"},t.name," ",m.createElement("span",{className:"column-type"},"(",w,")")),b,g&&h==null&&m.createElement(m.Fragment,null,!f&&m.createElement("hr",null),m.createElement("div",{className:"form-group"},m.createElement(jg,{dh:v,table:c,onChange:this.handleSelectValueChange,invertSelection:u,selectedValues:d,formatter:a,showSearch:!p,timeZone:a.timeZone}))),m.createElement("div",{className:"form-row justify-content-end"},m.createElement(Z,{kind:"secondary",className:"mr-2",onClick:this.handleReset},"Reset"),m.createElement(Z,{kind:"primary",onClick:this.handleDone},"Done"))),m.createElement("div",{tabIndex:0,onFocus:this.handleFocusTrapEnd}))}}nn(qt,"debounceFilterUpdate",250);nn(qt,"defaultProps",{options:{filterItems:null,filterOperators:null,invertSelection:!0,selectedValues:[]},sortDirection:null});const qg=qt;function ml(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ml(Object(t),!0).forEach(function(r){Xg(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ml(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Xg(n,e,t){return e=Qg(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Qg(n){var e=Zg(n,"string");return typeof e=="symbol"?e:String(e)}function Zg(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var gl=Fe.module("Aggregations");function Jg(n){var{isRollup:e,settings:t,onChange:r,onEdit:i}=n,{aggregations:a,showOnTop:o}=t,l=y.useMemo(()=>Om.filter(N=>!a.some(P=>P.operation===N)),[a]),[s,u]=y.useState(l[0]),[d,c]=y.useState([]),h=y.useCallback(N=>{r(vl(vl({},t),N))},[r,t]),v=y.useCallback(N=>{h({aggregations:N})},[h]),g=y.useCallback(N=>{h({showOnTop:N})},[h]),f=y.useCallback(()=>{gl.debug("handleDragStart"),Wt.startDragging()},[]),p=y.useCallback(N=>{var{destination:P,source:I}=N;if(gl.debug("handleDragEnd",P,I),Wt.stopDragging(),P!==null){var A=P.index;I.index<P.index&&(A+=1);var H=[...a],x=Wt.reorder(H,d,H,A),W=Wt.adjustDestinationIndex(A,d),z=[[W,W+x.length-1]];v(H),c(z)}},[v,a,d,c]),C=y.useCallback(N=>{u(N)},[u]),w=y.useCallback(()=>{v([...a,{operation:s,selected:[],invert:!0}])},[a,s,v]),b=y.useCallback(N=>{v(a.filter((P,I)=>I!==N))},[a,v]),E=y.useCallback(N=>{c(N)},[c]),T=y.useCallback(N=>{var P=a[N];Rr.isRollupOperation(P.operation)||i(P)},[a,i]),S=y.useCallback(N=>{g(N.target.value==="true")},[g]);y.useEffect(function(){l.length>0&&!l.includes(s)&&u(l[0])},[l,s]);var O=y.useCallback(N=>{var{item:P,itemIndex:I,isClone:A=!1,selectedCount:H}=N,x=P.operation,W=A?"".concat(H):void 0,z=A?"item-list-item-clone":void 0,G=Rr.isRollupOperation(P.operation),K=!A&&!G;return m.createElement(m.Fragment,null,m.createElement("div",{className:ie("item-list-item-content","draggable-item-list-item-content",z)},m.createElement("span",{className:"title"},x,!e&&G&&m.createElement("span",{className:"small text-warning"},m.createElement(de,{icon:ku})," Requires rollup")),Ut.renderBadge({text:W}),Ut.renderHandle()),!A&&m.createElement(m.Fragment,null,m.createElement(Z,{kind:"ghost",className:"btn-edit",icon:za,tooltip:"Edit Columns",onClick:()=>i(P),disabled:!K}),m.createElement(Z,{kind:"ghost",className:"btn-delete",icon:Pr,tooltip:"Delete Aggregation",onClick:()=>b(I)})))},[b,i,e]),F=l.length>0,R=a.length>0;return m.createElement("div",{className:"aggregations"},F&&m.createElement("div",{className:"form-inline"},m.createElement(Cd,{onChange:C,value:s},l.map(N=>m.createElement(wd,{value:N,key:N},N))),m.createElement("button",{type:"button",className:"btn btn-link btn-add",onClick:w},m.createElement(de,{icon:dn}),"Add Aggregation")),F&&R&&m.createElement("hr",null),R&&m.createElement(m.Fragment,null,!e&&m.createElement("div",{className:"form-inline"},m.createElement("label",null,"Placement: "),m.createElement(Ja,{onChange:S,value:"".concat(o)},m.createElement($r,{value:"true"},"Top"),m.createElement($r,{value:"false"},"Bottom"))),m.createElement(Ii,{onDragStart:f,onDragEnd:p},m.createElement(Ut,{className:"selected-aggregations",itemCount:a.length,items:a,renderItem:O,offset:0,onSelectionChange:E,onSelect:T,selectedRanges:d,isMultiSelect:!0}))))}function fl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function gr(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?fl(Object(t),!0).forEach(function(r){ef(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):fl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function ef(n,e,t){return e=tf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function tf(n){var e=rf(n,"string");return typeof e=="symbol"?e:String(e)}function rf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Ht;(function(n){n[n.NONE=0]="NONE",n[n.ASCENDING=1]="ASCENDING",n[n.DESCENDING=2]="DESCENDING"})(Ht||(Ht={}));var nf=30;function af(n){var{aggregation:e,columns:t,onChange:r}=n,[i,a]=y.useState(-1),[o,l]=y.useState(-1),[s,u]=y.useState(Ht.NONE),{invert:d,selected:c}=e,h=y.useRef(null),v=y.useCallback(S=>c.includes(S)?!d:d,[d,c]),g=y.useMemo(()=>{var S=so(t,e.operation);return s!==Ht.NONE&&(S=M.sortColumns(S,s===Ht.ASCENDING)),S},[t,e.operation,s]),f=y.useMemo(()=>i>=0?g.slice(i,o+1).map(S=>({value:S.name,displayValue:S.name,isSelected:v(S.name)})):[],[g,v,o,i]),p=y.useCallback(S=>{var{name:O}=g[S],F=c.indexOf(O),R=[...c],N=d;F>=0?R.splice(F,1):(R.push(O),R.length===g.length&&(R=[],N=!d)),r(gr(gr({},e),{},{selected:R,invert:N}))},[e,d,g,c,r]),C=y.useCallback(()=>{u(Ht.NONE),r(gr(gr({},e),{},{selected:[],invert:!0}))},[e,r]),w=y.useCallback((S,O)=>{a(S),l(O)},[a,l]),b=y.useCallback(()=>{c.length===0?r(gr(gr({},e),{},{invert:!d})):r(gr(gr({},e),{},{selected:[],invert:!0}))},[e,d,r,c]),E=c.length===0?d:null,T=c.length!==0||!d||s!==Ht.NONE;return m.createElement("div",{role:"menu",className:"aggregation-edit"},m.createElement("div",{className:"top-menu"},m.createElement("div",{className:"form-inline"},m.createElement(Fr,{checked:E,onChange:b},"Toggle All"),m.createElement("div",{className:"spacer"}),m.createElement(Or,{in:T,timeout:qe.transitionSlowMs,classNames:"fade",mountOnEnter:!0,unmountOnExit:!0},m.createElement(Z,{kind:"ghost",className:"btn-reset",onClick:C},"Reset")),m.createElement(Z,{kind:"ghost",className:ie({active:s===Ht.ASCENDING}),icon:ja,tooltip:"Sort ascending",onClick:()=>u(Ht.ASCENDING)}),m.createElement(Z,{kind:"ghost",className:ie({active:s===Ht.DESCENDING}),icon:Ka,tooltip:"Sort descending",onClick:()=>u(Ht.DESCENDING)}))),m.createElement("div",{className:"aggregation-edit-item-list"},m.createElement(Ea,{itemCount:g.length,items:f,offset:i,renderItem:S=>{var{item:O}=S;return m.createElement(Fr,{checked:v(O.value)},O.displayValue)},onSelect:p,onViewportChange:w,rowHeight:nf,focusSelector:"input",ref:h})))}function Pa(){return Pa=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Pa.apply(this,arguments)}function of(n){return y.createElement("svg",Pa({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),y.createElement("path",{fill:"#7DA4FF",d:"M8 26h4v15H8zM15 17h4v24h-4zM22 21h4v20h-4zM29 17h4v24h-4zM36 11h4v30h-4z"})))}function Ia(){return Ia=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Ia.apply(this,arguments)}function lf(n){return y.createElement("svg",Ia({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),y.createElement("path",{fill:"#7DA4FF",d:"M7 34h4v8H7zM12 31h4v11h-4zM17 27h4v15h-4zM22 22h4v20h-4zM27 27h4v15h-4zM32 29h4v13h-4zM37 31h4v11h-4z"})))}function Aa(){return Aa=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Aa.apply(this,arguments)}function sf(n){return y.createElement("svg",Aa({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{fill:"#C1C0C0",d:"M4 4h1v40H4zM44 43v1H5v-1z"}),y.createElement("path",{stroke:"#7DA4FF",d:"M7.984 32.44l7.982-11.378 5.273 3.739 9.952-10.838 2.826 1.894 7.45-5.802"}),y.createElement("path",{stroke:"#BECDEF",d:"M8.244 37.926L17 33.496l5 .87 10.637-10.35 10.615-1.381"})))}function Ma(){return Ma=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Ma.apply(this,arguments)}function uf(n){return y.createElement("svg",Ma({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{d:"M24 10c7.732 0 14 6.268 14 14s-6.268 14-14 14-14-6.268-14-14h14V10z",fill:"#80A6FF"}),y.createElement("path",{d:"M10 24c0-7.732 6.268-14 14-14v14H10z",fill:"#C1C0C0"})))}function La(){return La=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},La.apply(this,arguments)}function df(n){return y.createElement("svg",La({width:48,height:48,xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("g",{fill:"none",fillRule:"evenodd"},y.createElement("path",{fill:"#C1C0C0",d:"M44 43v1H4v-1z"}),y.createElement("path",{fill:"#939293",d:"M44 34v1H4v-1zM44 25v1H4v-1zM44 16v1H4v-1z"}),y.createElement("circle",{fill:"#7DA4FF",cx:9.5,cy:37.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:16.5,cy:30.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:22.5,cy:36.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:28.5,cy:30.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:15.5,cy:38.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:23.5,cy:25.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:19.5,cy:19.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:29.5,cy:19.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:32.5,cy:26.5,r:1.5}),y.createElement("circle",{fill:"#7DA4FF",cx:36.5,cy:13.5,r:1.5})))}function ka(){return ka=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},ka.apply(this,arguments)}function cf(n){return y.createElement("svg",ka({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("rect",{width:"48",height:"48",fill:"none"}),y.createElement("rect",{x:"26",y:"10",width:"15",height:"4",fill:"#9FDE70"}),y.createElement("rect",{x:"26",y:"22",width:"15",height:"4",fill:"#9FDE70"}),y.createElement("rect",{x:"26",y:"28",width:"15",height:"4",fill:"#FFD95C"}),y.createElement("rect",{x:"26",y:"34",width:"15",height:"4",fill:"#9FDE70"}))}function _a(){return _a=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},_a.apply(this,arguments)}function hf(n){return y.createElement("svg",_a({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n),y.createElement("rect",{width:"48",height:"48",fill:"none"}),y.createElement("rect",{x:"4",y:"16",width:"40",height:"4",fill:"#FFD95C"}),y.createElement("rect",{x:"4",y:"10",width:"40",height:"4",fill:"#78DCE8"}),y.createElement("rect",{x:"4",y:"34",width:"40",height:"4",fill:"#78DCE8"}))}var pl=Fe.module("ChartBuilder");class Bt extends y.PureComponent{static getMaxSeriesCount(e,t){switch(t){case e.plot.SeriesPlotStyle.PIE:return 1;case e.plot.SeriesPlotStyle.HISTOGRAM:return 0;default:return 100}}static makeSeriesItem(e){return{id:Dr.generate(),value:e}}static makeDefaultSeriesItems(e,t,r){var i=Bt.getMaxSeriesCount(e,t);if(i===0||r==null||r.length===0)return[];var a=r.length>1?r[1].name:r[0].name;return[Bt.makeSeriesItem(a)]}static getDefaultXAxis(e,t){return t!=null&&t.length>0?t[0].name:null}constructor(e){super(e),this.handleAddSeries=this.handleAddSeries.bind(this),this.handleLinkStateChange=this.handleLinkStateChange.bind(this),this.handleReset=this.handleReset.bind(this),this.handleSeriesChange=this.handleSeriesChange.bind(this),this.handleSeriesDeleteClick=this.handleSeriesDeleteClick.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleTypeClick=this.handleTypeClick.bind(this),this.handleXAxisChange=this.handleXAxisChange.bind(this),this.sendChange=this.sendChange.bind(this);var{model:t}=e,{columns:r,dh:i}=t,a=this.getTypes()[0],o=Bt.getDefaultXAxis(a,r),l=Bt.makeDefaultSeriesItems(i,a,r);this.state={type:a,seriesItems:l,xAxis:o,isLinked:!0}}getTypes(){var{model:e}=this.props,{dh:t}=e;return[t.plot.SeriesPlotStyle.LINE,t.plot.SeriesPlotStyle.BAR,t.plot.SeriesPlotStyle.SCATTER,t.plot.SeriesPlotStyle.PIE]}getTypeName(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return"Line";case r.plot.SeriesPlotStyle.BAR:return"Bar";case r.plot.SeriesPlotStyle.SCATTER:return"Scatter";case r.plot.SeriesPlotStyle.PIE:return"Pie";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Histogram";default:return e}}getTypeIcon(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.LINE:return m.createElement(sf,null);case r.plot.SeriesPlotStyle.BAR:return m.createElement(of,null);case r.plot.SeriesPlotStyle.SCATTER:return m.createElement(df,null);case r.plot.SeriesPlotStyle.PIE:return m.createElement(uf,null);case r.plot.SeriesPlotStyle.HISTOGRAM:return m.createElement(lf,null);default:return null}}getXAxisLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Labels";case r.plot.SeriesPlotStyle.HISTOGRAM:return"Data";default:return"X-Axis"}}getSeriesLabel(e){var{model:t}=this.props,{dh:r}=t;switch(e){case r.plot.SeriesPlotStyle.PIE:return"Values";default:return"Series"}}handleAddSeries(){this.setState(e=>{var{seriesItems:t}=e,r=[...t],{model:i}=this.props,{columns:a}=i;return r.push({id:Dr.generate(),value:a[0].name}),{seriesItems:r}},this.sendChange)}handleLinkStateChange(e){this.setState({isLinked:e.target.value==="true"},this.sendChange)}handleReset(){var{model:e}=this.props,{columns:t,dh:r}=e,i=this.getTypes()[0],a=Bt.getDefaultXAxis(i,t),o=Bt.makeDefaultSeriesItems(r,i,t),l=!0;this.setState({type:i,seriesItems:o,xAxis:a,isLinked:l},this.sendChange)}handleSeriesChange(e){var{value:t}=e.target,r=e.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:o}=a;return o=[...o],o[i].value=t,{seriesItems:o}},this.sendChange)}handleSeriesDeleteClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10);this.setState(a=>{var{seriesItems:o}=a,l=[...o];return l.splice(i,1),{seriesItems:l}},this.sendChange)}handleSubmit(e){e.preventDefault();var{onSubmit:t}=this.props,{type:r,seriesItems:i,xAxis:a,isLinked:o}=this.state,l=i.map(s=>s.value);t({type:r,series:l,xAxis:a,isLinked:o})}handleTypeClick(e){var t=e,r=t.target.getAttribute("data-index"),i=parseInt(r,10),a=this.getTypes()[i];pl.debug2("handleTypeSelect",a),this.setState(o=>{var{model:l}=this.props,{dh:s}=l,u=Bt.getMaxSeriesCount(s,a),{seriesItems:d}=o;if(d=d.slice(0,u),d.length===0&&u>0){var{columns:c}=l;d=Bt.makeDefaultSeriesItems(s,a,c)}return{type:a,seriesItems:d}},this.sendChange)}handleXAxisChange(e){var t=e.target.value;pl.debug2("x-axis change",t),this.setState({xAxis:t},this.sendChange)}sendChange(){var{onChange:e}=this.props,{isLinked:t,type:r,seriesItems:i,xAxis:a}=this.state,o=i.map(l=>l.value);e({type:r,series:o,xAxis:a,isLinked:t})}render(){var{model:e}=this.props,{columns:t,dh:r}=e,{seriesItems:i,type:a,xAxis:o,isLinked:l}=this.state,s=Bt.getMaxSeriesCount(r,a),u=this.getXAxisLabel(a),d=this.getSeriesLabel(a),c=i.length>0,h=i.length<s;return m.createElement("div",{className:"chart-builder"},m.createElement("form",{onSubmit:this.handleSubmit},m.createElement("div",{className:"form-row"},m.createElement("label",null,"Select Chart Type"),m.createElement("div",{className:"form-row"},this.getTypes().map((v,g)=>{var f=v;return m.createElement("div",{key:f,className:"col col-chart-type"},m.createElement("button",{type:"button",className:ie("btn","btn-icon","btn-chart-type",{active:v===a}),"data-index":g,onClick:this.handleTypeClick},this.getTypeIcon(v),this.getTypeName(v)))}))),m.createElement("hr",null),m.createElement("div",{className:"form-row form-inline"},m.createElement("label",{className:"col-2 label-left"},u),m.createElement("select",{className:"form-control custom-select select-x-axis col",value:o,onChange:this.handleXAxisChange},t.map(v=>m.createElement("option",{key:v.name,value:v.name},v.name)))),c&&m.createElement("hr",null),i.map((v,g)=>m.createElement("div",{className:"form-row form-inline form-series-item",key:v.id,"data-testid":"form-series-item-".concat(g)},m.createElement("label",{className:"col-2 label-left"},g===0?d:""),m.createElement("select",{className:"form-control custom-select select-series col",value:v.value,onChange:this.handleSeriesChange,"data-testid":"select-series-item-".concat(g),"data-index":g},t.map(f=>m.createElement("option",{key:f.name,value:f.name,"data-index":g},f.name))),i.length>1&&m.createElement(Z,{kind:"ghost",className:"btn-delete-series ml-2 px-2","data-index":g,"data-testid":"delete-series-".concat(g),onClick:this.handleSeriesDeleteClick,icon:Pr,tooltip:"Delete"}))),h&&m.createElement("div",{className:"form-row"},m.createElement("div",{className:"col-2"}),m.createElement(Z,{kind:"ghost",className:"btn-add-series mt-1",onClick:this.handleAddSeries,icon:dn},"Add Series")),m.createElement("div",{className:"form-row chart-builder-link"},m.createElement("label",{className:"col-2 label-right"},m.createElement("div",{className:"fa-md fa-layers"},m.createElement(de,{mask:_u,icon:Ya,transform:"right-5 down-5"}),m.createElement(de,{icon:l?xu:Hu,transform:"grow-2 right-8 down-6"}))),m.createElement(Ja,{onChange:this.handleLinkStateChange,value:"".concat(l)},m.createElement($r,{value:"true"},"Sync State"),m.createElement($r,{value:"false"},"Freeze State"))),m.createElement("div",{className:"form-row"},m.createElement("div",{className:"col-2 label-right"}),m.createElement("div",{className:"col chart-builder-link-info"},l?"Charts with synced state will update to match any filters or user modifications applied to the parent table.":"Freeze State disconnects the chart state from the parent table. New filters or user modifications on the parent table will not be applied.")),m.createElement("div",{className:ie("form-row","justify-content-end","my-3")},m.createElement(Z,{kind:"secondary",className:"btn-reset",onClick:this.handleReset},"Reset"),m.createElement(Z,{kind:"primary",type:"submit",className:"btn-submit"},"Create"))))}}const mf=Bt;function Cl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function vf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Cl(Object(t),!0).forEach(function(r){Oi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Cl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Oi(n,e,t){return e=gf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function gf(n){var e=ff(n,"string");return typeof e=="symbol"?e:String(e)}function ff(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class As extends y.Component{constructor(e){super(e),Oi(this,"editorContainer",void 0),Oi(this,"editor",void 0),this.handleContentChanged=this.handleContentChanged.bind(this),this.handleEditorFocus=this.handleEditorFocus.bind(this),this.handleEditorBlur=this.handleEditorBlur.bind(this),this.handleContainerClick=this.handleContainerClick.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.state={isEditorFocused:!1,isEditorEmpty:!0},this.editorContainer=null}componentDidMount(){this.initEditor()}componentWillUnmount(){this.destroyEditor()}initEditor(){var e,{value:t,editorSettings:r}=this.props,i=vf({copyWithSyntaxHighlighting:"false",fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"groovyDB",lineDecorationsWidth:8,lineNumbers:"off",minimap:{enabled:!1},renderLineHighlight:"none",scrollbar:{arrowSize:0,horizontal:"hidden",horizontalScrollbarSize:0},scrollBeyondLastLine:!1,padding:{top:6,bottom:6},tabCompletion:"off",useTabStops:!0,value:t,wordWrap:"on",automaticLayout:!0},r);if(!this.editorContainer)throw new Error("editorContainer is null");this.editor=on.create(this.editorContainer,i),this.editor.layout(),(e=this.editor.getModel())===null||e===void 0||e.updateOptions({tabSize:0}),this.editor.onKeyDown(this.handleKeyDown),this.editor.onDidChangeModelContent(this.handleContentChanged),this.editor.onDidFocusEditorText(this.handleEditorFocus),this.editor.onDidBlurEditorText(this.handleEditorBlur)}destroyEditor(){var e;(e=this.editor)===null||e===void 0||e.dispose(),this.editor=void 0}handleContentChanged(){var e,t,{onContentChanged:r}=this.props,i=(e=this.editor)===null||e===void 0||(t=e.getModel())===null||t===void 0?void 0:t.getValue();i!==void 0&&this.setState({isEditorEmpty:i.length===0}),r(i)}handleEditorFocus(){this.setState({isEditorFocused:!0})}handleEditorBlur(){var e,t,r,i=(e=(t=this.editor)===null||t===void 0||(r=t.getModel())===null||r===void 0?void 0:r.getValue())!==null&&e!==void 0?e:"";this.setState({isEditorEmpty:i.length===0,isEditorFocused:!1})}handleContainerClick(){var e,{isEditorFocused:t}=this.state;t||(e=this.editor)===null||e===void 0||e.focus()}handleKeyDown(e){var{onTab:t,editorIndex:r}=this.props;e.code==="Tab"&&(e.stopPropagation(),e.preventDefault(),t(r,e.shiftKey))}render(){var{value:e,invalid:t}=this.props,{isEditorFocused:r,isEditorEmpty:i}=this.state;return m.createElement("div",{className:ie("input-editor-wrapper",{focused:r,invalid:t}),role:"presentation",onClick:this.handleContainerClick},m.createElement("div",{className:"editor-container",ref:a=>{this.editorContainer=a},"data-testid":"custom-column-formula"}),i&&!e&&m.createElement("div",{className:"editor-placeholder text-muted"},"Column Formula"))}}Oi(As,"defaultProps",{value:"",onContentChanged:()=>{},editorSettings:{},editorIndex:0,onTab:()=>{},invalid:!1});function Fi(){return Fi=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Fi.apply(this,arguments)}var wl=Object.freeze({NAME:"name",FORMULA:"formula"}),pf=()=>{};function Cf(n){var{eventKey:e,name:t,inputIndex:r,formula:i,onChange:a,onDeleteColumn:o,onTabInEditor:l,invalid:s,isDuplicate:u}=n,d=t===""||ro.isValidColumnName(t),c=y.useCallback(h=>{h!==void 0&&(h.replace(/(\r\n|\n|\r)/gm,""),a(e,wl.FORMULA,h))},[a,e]);return m.createElement(es,{draggableId:e,index:r,disableInteractiveElementBlocking:!0},(h,v)=>m.createElement("div",Fi({className:ie("draggable-container",{dragging:v.isDragging}),ref:h.innerRef},h.draggableProps),m.createElement("div",{className:"custom-column-input-container"},m.createElement("div",{className:"pb-3"},m.createElement("div",{className:"d-flex flex-row custom-column-name"},m.createElement("input",{className:ie("form-control custom-column-input",{"is-invalid":s||!d||u}),placeholder:"Column Name",value:t,onChange:g=>{a(e,wl.NAME,g.target.value)}}),m.createElement(Z,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{o(e)},icon:Pr,tooltip:"Delete custom column"}),m.createElement(Z,Fi({kind:"ghost",className:"btn-drag-handle",onClick:pf},h.dragHandleProps,{icon:qa,tooltip:"Drag column to re-order"}))),(!d||u)&&m.createElement("p",{className:"validate-label-error text-danger mb-0 mt-2 pl-1"},d?"Duplicate name":"Invalid name")),m.createElement(As,{editorSettings:{language:"deephavenDb"},editorIndex:r,value:i,onContentChanged:c,onTab:l,invalid:s})),m.createElement("hr",null)))}function xa(n,e,t){return e=wf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function wf(n){var e=bf(n,"string");return typeof e=="symbol"?e:String(e)}function bf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ha=[];class Ms extends Kh{constructor(e){super(),xa(this,"dh",void 0),xa(this,"listenerCount",void 0),this.dh=e,this.listenerCount=0}addEventListener(e,t,r){super.addEventListener(e,t,r),this.listenerCount+=1,this.listenerCount===1&&this.startListening()}removeEventListener(e,t,r){super.removeEventListener(e,t,r),this.listenerCount-=1,this.listenerCount===0&&this.stopListening()}startListening(){}stopListening(){}get originalColumns(){return this.columns}get layoutHints(){return null}get frontColumns(){return ha}get backColumns(){return ha}get frozenColumns(){return ha}isColumnFrozen(e){return!1}get isFilterRequired(){return!1}get isReversible(){return!0}get isColumnStatisticsAvailable(){return!1}get description(){return""}get isCustomColumnsAvailable(){return!1}get isFormatColumnsAvailable(){return!1}get isExportAvailable(){return!1}get isValuesTableAvailable(){return!1}get isChartBuilderAvailable(){return!1}get isRollupAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isTotalsAvailable(){return!1}isFilterable(e){return!1}close(){}isRowMovable(){return!1}get isSeekRowAvailable(){return!1}}xa(Ms,"EVENT",Object.freeze({UPDATED:"UPDATED",FORMATTER_UPDATED:"FORMATTER_UPDATED",REQUEST_FAILED:"REQUEST_FAILED",COLUMNS_CHANGED:"COLUMNS_CHANGED",TABLE_CHANGED:"TABLE_CHANGED",FILTERS_CHANGED:"FILTERS_CHANGED",SORTS_CHANGED:"SORTS_CHANGED",DISCONNECT:"DISCONNECT",RECONNECT:"RECONNECT",TOTALS_UPDATED:"TOTALS_UPDATED",PENDING_DATA_UPDATED:"PENDING_DATA_UPDATED"}));const me=Ms;function Ha(){return Ha=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Ha.apply(this,arguments)}function bl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Sf(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?bl(Object(t),!0).forEach(function(r){an(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):bl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function an(n,e,t){return e=Ef(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ef(n){var e=Tf(n,"string");return typeof e=="symbol"?e:String(e)}function Tf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class yr extends y.Component{static makeCustomColumnInputEventKey(){return Dr.generate()}static createCustomColumnInput(){return{eventKey:Dr.generate(),name:"",formula:""}}constructor(e){super(e),an(this,"container",void 0),an(this,"successButtonTimer",void 0),an(this,"getInput",je((t,r)=>t.find(i=>i.eventKey===r))),an(this,"getInputIndex",je((t,r)=>t.findIndex(i=>i.eventKey===r))),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleSaveClick=this.handleSaveClick.bind(this),this.handleInputChange=this.handleInputChange.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleCustomColumnUpdated=this.handleCustomColumnUpdated.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.resetRequestFailed=this.resetRequestFailed.bind(this),this.handleEditorTabNavigation=this.handleEditorTabNavigation.bind(this),this.state={inputs:[],isCustomColumnApplying:!1,errorMessage:null,hasRequestFailed:!1,isSuccessShowing:!1},this.container=null,this.successButtonTimer=null}componentDidMount(){var{customColumns:e}=this.props;this.parseCustomColumns(e),this.startListening()}componentWillUnmount(){this.stopListening(),this.successButtonTimer&&clearTimeout(this.successButtonTimer)}resetErrorMessage(){this.setState({errorMessage:null})}startListening(){var{model:e}=this.props;e.addEventListener(me.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.addEventListener(me.EVENT.UPDATED,this.handleCustomColumnUpdated),e.addEventListener(me.EVENT.REQUEST_FAILED,this.handleRequestFailed)}stopListening(){var{model:e}=this.props;e.removeEventListener(me.EVENT.COLUMNS_CHANGED,this.handleCustomColumnUpdated),e.removeEventListener(me.EVENT.UPDATED,this.handleCustomColumnUpdated),e.removeEventListener(me.EVENT.REQUEST_FAILED,this.handleRequestFailed)}parseCustomColumns(e){if(e.length>0){var t=e.map(r=>{var i=r.split(/=(.+)/,2);return{eventKey:yr.makeCustomColumnInputEventKey(),name:i[0],formula:i[1]}});this.setState({inputs:t})}else this.setState({inputs:[yr.createCustomColumnInput()]})}handleAddColumnClick(){var{inputs:e}=this.state,t=[...e];t.push(yr.createCustomColumnInput()),this.setState({inputs:t})}handleDeleteColumn(e){var{inputs:t}=this.state,r=this.getInputIndex(t,e),i=[...t];i.splice(r,1),i.length===0&&i.push(yr.createCustomColumnInput()),this.setState({inputs:i})}handleInputChange(e,t,r){var{inputs:i}=this.state,a=this.getInputIndex(i,e),o=this.getInput(i,e),l=Sf({},o);l[t]=r;var s=[...i];s.splice(a,1,l),this.setState({inputs:s})}handleCustomColumnUpdated(){var{isCustomColumnApplying:e}=this.state;e&&this.setState({isCustomColumnApplying:!1,isSuccessShowing:!0},()=>{this.successButtonTimer=setTimeout(()=>this.setState({isSuccessShowing:!1}),yr.SUCCESS_SHOW_DURATION)})}handleRequestFailed(e){var t=e,{isCustomColumnApplying:r}=this.state;r&&this.setState({isCustomColumnApplying:!1,errorMessage:m.createElement(m.Fragment,null,m.createElement("p",null,m.createElement(de,{icon:In})," Failed to apply custom columns."),m.createElement("div",{className:"error-box"},t.detail.errorMessage,m.createElement("br",null),"Table configuration:"," ",JSON.stringify(t.detail.configuration))),hasRequestFailed:!0})}handleDragEnd(e){if(Wt.stopDragging(),!!e.destination){var{inputs:t}=this.state,r=e.source.index,i=e.destination.index,a=[...t],o=t[r];a.splice(r,1),a.splice(i,0,o),this.setState({inputs:a})}}handleEditorTabNavigation(e,t){var{inputs:r}=this.state;if(t){var i;((i=this.container)===null||i===void 0?void 0:i.querySelectorAll(".btn-drag-handle")[e]).focus();return}if(e===r.length-1){var a,o;(a=this.container)===null||a===void 0||(o=a.querySelector(".btn-add-column"))===null||o===void 0||o.focus()}else{var l,s=e+1;((l=this.container)===null||l===void 0?void 0:l.querySelectorAll(".custom-column-input")[s]).focus()}}handleSaveClick(){var{onSave:e,customColumns:t}=this.props,{inputs:r,isCustomColumnApplying:i}=this.state;if(!i){var a=[];r.forEach(o=>{var{name:l,formula:s}=o;l&&s&&a.push("".concat(l,"=").concat(s))}),this.resetErrorMessage(),this.setState({isCustomColumnApplying:a.length>0||t.length>0}),e(a)}}resetRequestFailed(){this.setState(e=>{var{hasRequestFailed:t}=e;return t?{hasRequestFailed:!1}:null})}renderInputs(){var{inputs:e,hasRequestFailed:t}=this.state,r=new Map;return e.forEach(i=>{var a,{name:o}=i;return r.set(o,((a=r.get(o))!==null&&a!==void 0?a:0)+1)}),e.map((i,a)=>{var o,{eventKey:l,name:s,formula:u}=i,d=((o=r.get(s))!==null&&o!==void 0?o:0)>1;return m.createElement(Cf,{key:l,inputIndex:a,eventKey:l,name:s,formula:u,onChange:this.handleInputChange,onDeleteColumn:this.handleDeleteColumn,onTabInEditor:this.handleEditorTabNavigation,invalid:t,isDuplicate:d})})}renderSaveButton(){var{inputs:e,isCustomColumnApplying:t,isSuccessShowing:r}=this.state,i=e.length>1?"Save Columns":"Save Column",a=e.every(s=>{var{name:u}=s;return u===""||ro.isValidColumnName(u)}),o=e.filter(s=>{var{name:u}=s;return u!==""}).map(s=>{var{name:u}=s;return u}),l=new Set(o).size===o.length;return m.createElement(Z,{kind:r?"success":"primary",className:ie("btn-apply",{"btn-spinner":t}),disabled:r||t||!a||!l,onClick:this.handleSaveClick},t&&m.createElement("span",null,m.createElement(zr,null),m.createElement("span",{className:"btn-normal-content"},"Applying")),!r&&!t&&i,r&&m.createElement(m.Fragment,null,m.createElement(de,{icon:ts})," Success"))}render(){var{onCancel:e}=this.props,{errorMessage:t}=this.state;return m.createElement("div",{role:"presentation",className:"custom-column-builder-container",ref:r=>{this.container=r},onClick:this.resetRequestFailed,onFocus:this.resetRequestFailed},m.createElement("hr",null),m.createElement(Ii,{onDragStart:Wt.startDragging,onDragEnd:this.handleDragEnd},m.createElement(Ga,{droppableId:"droppable-custom-columns"},(r,i)=>m.createElement("div",Ha({ref:r.innerRef},r.droppableProps,{className:ie("droppable-container",{dragging:i.draggingFromThisWith})}),this.renderInputs(),r.placeholder))),m.createElement("div",{className:"pt-1 px-3"},m.createElement(Z,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,icon:dn},"Add Another Column")),m.createElement("div",{className:"custom-column-builder-footer"},t&&m.createElement("div",{className:"error-message"},t),m.createElement("div",{className:"d-flex justify-content-end"},m.createElement(Z,{kind:"secondary",className:"mr-2",onClick:e},"Cancel"),this.renderSaveButton())))}}an(yr,"SUCCESS_SHOW_DURATION",750);const yf=yr;var Ba;(function(n){n.ADVANCED_SETTINGS="ADVANCED_SETTINGS",n.AGGREGATIONS="AGGREGATIONS",n.AGGREGATION_EDIT="AGGREGATIONS_EDIT",n.CHART_BUILDER="CHART_BUILDER",n.CUSTOM_COLUMN_BUILDER="CUSTOM_COLUMN_BUILDER",n.QUICK_FILTERS="QUICK_FILTERS",n.ROLLUP_ROWS="ROLLUP_ROWS",n.SEARCH_BAR="SEARCH_BAR",n.SELECT_DISTINCT="SELECT_DISTINCT",n.TABLE_EXPORTER="TABLE_EXPORTER",n.VISIBILITY_ORDERING_BUILDER="VISIBILITY_ORDERING_BUILDER",n.CONDITIONAL_FORMATTING="CONDITIONAL_FORMATTING",n.CONDITIONAL_FORMATTING_EDIT="CONDITIONAL_FORMATTING_EDIT",n.GOTO="GOTO"})(Ba||(Ba={}));const Se=Ba;function Ua(){return Ua=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Ua.apply(this,arguments)}function Br(n,e,t){return e=Rf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Rf(n){var e=Of(n,"string");return typeof e=="symbol"?e:String(e)}function Of(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yn=Fe.module("RollupRows"),Ff=150,ni="grouped-rollup-rows",ii="ungrouped-rollup-rows";class vt extends y.Component{static renderColumn(e){var{item:t,isClone:r,selectedCount:i}=e,a=t==null?void 0:t.name,o=r!==void 0&&r?"".concat(i):void 0,l=r!==void 0&&r?"item-list-item-clone":"";return Ut.renderTextItem({text:a,badgeText:o,className:l})}static addGroupings(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length;if(t==null||t.length===0)return e;var i=r,a=e.filter((o,l)=>t.includes(o)?(l<i&&(i-=1),!1):!0);return a.splice(i,0,...t),a}static isGroupable(e){return!M.isDecimalType(e.type)}constructor(e){super(e),Br(this,"ungroupedList",void 0),Br(this,"groupedList",void 0),Br(this,"search",Jt(o=>{for(var l=this.getSortedUngroupedColumns(),s=[],u=null,d=0;d<l.length;d+=1){var c=l[d];c.name.toLowerCase().includes(o.toLowerCase())&&(u==null&&(u=d),s.push([d,d]))}_(u),this.setState({ungroupedSelectedRanges:s}),s.length>0&&this.ungroupedList.current&&this.ungroupedList.current.scrollToItem(u)},Ff)),Br(this,"getCachedUngroupedColumns",Pe((o,l)=>o.filter(s=>vt.isGroupable(s)&&l.find(u=>u===s.name)==null))),Br(this,"getCachedSortedColumns",Pe((o,l)=>l==null?[...o]:M.sortColumns(o,l===vt.SORT.ASCENDING))),this.handleDeleteClicked=this.handleDeleteClicked.bind(this),this.handleSearchChange=this.handleSearchChange.bind(this),this.handleUngroupedSelect=this.handleUngroupedSelect.bind(this),this.handleUngroupedSelectionChange=this.handleUngroupedSelectionChange.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupedSelectionChange=this.handleGroupedSelectionChange.bind(this),this.handleShowConstituentsChange=this.handleShowConstituentsChange.bind(this),this.handleShowNonAggregatedColumnsChange=this.handleShowNonAggregatedColumnsChange.bind(this),this.handleSortAscending=this.handleSortAscending.bind(this),this.handleSortDescending=this.handleSortDescending.bind(this),this.renderGroupedItem=this.renderGroupedItem.bind(this),this.ungroupedList=m.createRef(),this.groupedList=m.createRef();var{config:t}=e,{columns:r=[],showConstituents:i=!0,showNonAggregatedColumns:a=!0}=t??{};this.state={ungroupedSelectedRanges:[],columns:r,groupedSelectedRanges:[],searchFilter:"",showConstituents:i,showNonAggregatedColumns:a,dragSource:null,sort:null}}componentDidUpdate(e,t){var{config:r}=this.props,{columns:i,showConstituents:a,showNonAggregatedColumns:o}=this.state;r!==e.config?this.updateFromConfig():(i!==t.columns||a!==t.showConstituents||o!==t.showNonAggregatedColumns)&&(r==null||i!==r.columns||a!==r.showConstituents||o!==r.showNonAggregatedColumns)&&this.sendChange()}componentWillUnmount(){this.search.cancel()}handleSearchChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.search.cancel(),this.resetSelection();return}this.search(t)}handleSortAscending(){this.setState(e=>{var{sort:t}=e;return{sort:t===vt.SORT.ASCENDING?null:vt.SORT.ASCENDING}})}handleSortDescending(){this.setState(e=>{var{sort:t}=e;return{sort:t===vt.SORT.DESCENDING?null:vt.SORT.DESCENDING}})}resetSelection(){this.setState({ungroupedSelectedRanges:[],groupedSelectedRanges:[]})}handleDragStart(e){yn.debug("handleDragStart",e),document.documentElement.classList.add("drag-pointer-events-none"),this.setState({dragSource:e.source})}handleDragEnd(e){yn.debug("handleDragEnd",e),document.documentElement.classList.remove("drag-pointer-events-none"),this.setState({dragSource:null});var{destination:t,source:r}=e;if(!(t==null||r==null)){if(t.droppableId===ii){this.setState(o=>{var{groupedSelectedRanges:l,columns:s}=o,u=[...s];return Wt.reorder(u,l,[],0),{columns:u,ungroupedSelectedRanges:[],groupedSelectedRanges:[]}});return}var i=r.droppableId===ni,a=t.index;i&&r.index<t.index&&(a+=1),this.setState(o=>{var{columns:l,ungroupedSelectedRanges:s,groupedSelectedRanges:u}=o,d=[...l],c=i?d:this.getSortedUngroupedColumns().map(p=>p.name),h=i?u:s,v=Wt.reorder(c,h,d,a),g=i?Wt.adjustDestinationIndex(a,u):a,f=[[g,g+v.length-1]];return{columns:d,ungroupedSelectedRanges:[],groupedSelectedRanges:f}}),this.resetSelection()}}handleUngroupedSelect(e){yn.debug("handleUngroupedSelect"),this.setState(t=>{var{columns:r}=t;return{columns:vt.addGroupings(r,[this.getSortedUngroupedColumns()[e].name]),ungroupedSelectedRanges:[],groupedSelectedRanges:[]}})}handleUngroupedSelectionChange(e){yn.debug2("handleUngroupedSelectionChange",e),this.setState(t=>{var{ungroupedSelectedRanges:r}=t;return e===r?null:{ungroupedSelectedRanges:e,groupedSelectedRanges:[]}})}handleGroupedSelectionChange(e){yn.debug2("handleGroupedSelectedRanges",e),this.setState(t=>{var{groupedSelectedRanges:r}=t;return e===r?null:{groupedSelectedRanges:e,ungroupedSelectedRanges:[]}})}handleDeleteClicked(e){this.setState(t=>{var{columns:r}=t,i=r.slice();return i.splice(e,1),{columns:i}})}handleShowConstituentsChange(){this.setState(e=>{var{showConstituents:t}=e;return{showConstituents:!t}})}handleShowNonAggregatedColumnsChange(){this.setState(e=>{var{showNonAggregatedColumns:t}=e;return{showNonAggregatedColumns:!t}})}updateFromConfig(){var{config:e}=this.props,{columns:t=[],showConstituents:r=!0,showNonAggregatedColumns:i=!0}=e??{};this.setState({columns:t,showConstituents:r,showNonAggregatedColumns:i})}sendChange(){var{onChange:e}=this.props,{columns:t,showConstituents:r,showNonAggregatedColumns:i}=this.state;e({columns:t,showConstituents:r,showNonAggregatedColumns:i})}getUngroupedColumns(){var{model:e}=this.props,{columns:t}=this.state,{originalColumns:r}=e;return this.getCachedUngroupedColumns(r,t)}getSortedUngroupedColumns(){var{sort:e}=this.state,t=this.getUngroupedColumns();return this.getCachedSortedColumns(t,e)}renderGroupedItem(e){var{item:t,itemIndex:r,isClone:i,selectedCount:a}=e,o=i!==void 0&&i?"":"  ".repeat(r),l="".concat(o).concat(t),s=i!==void 0&&i?"".concat(a):void 0,u=i!==void 0&&i?"item-list-item-clone":"";return m.createElement(m.Fragment,null,Ut.renderTextItem({text:l,badgeText:s,className:u}),(i===void 0||!i)&&m.createElement(Z,{kind:"ghost",className:"btn btn-link btn-link-icon btn-delete-grouping float-right",onClick:()=>this.handleDeleteClicked(r)},m.createElement(de,{icon:Pr})))}render(){var{columns:e,dragSource:t,searchFilter:r,groupedSelectedRanges:i,ungroupedSelectedRanges:a,showConstituents:o,showNonAggregatedColumns:l,sort:s}=this.state,u=this.getSortedUngroupedColumns(),d=e.length*Ut.DEFAULT_ROW_HEIGHT;(t==null?void 0:t.droppableId)===ii&&(d+=Ut.DEFAULT_ROW_HEIGHT);var c=u.length*Ut.DEFAULT_ROW_HEIGHT+10,h=Math.min(3*Ut.DEFAULT_ROW_HEIGHT,c);return m.createElement("div",{role:"menu",className:ie("rollup-rows",{"is-dragging":t!=null}),tabIndex:0},m.createElement(Ii,{onDragEnd:this.handleDragEnd,onDragStart:this.handleDragStart},m.createElement("div",{className:"rollup-rows-group-by"},m.createElement("div",{className:"section-title"},"Group By"),e.length===0&&m.createElement(Ga,{droppableId:"placeholder"},(v,g)=>m.createElement("div",Ua({className:ie("placeholder","text-muted",{"is-dragging-from-this":g.draggingFromThisWith,"is-dragging-over":g.isDraggingOver,"is-dropping":g.draggingOverWith}),ref:v.innerRef},v.droppableProps),"To create a rollup, drag columns from the list below and drop them into this area.")),e.length>0&&m.createElement(Ut,{draggingItemClassName:"rollup-rows-dragging-grouped-item",draggablePrefix:ni,droppableId:ni,itemCount:e.length,items:e,offset:0,onSelectionChange:this.handleGroupedSelectionChange,ref:this.groupedList,renderItem:this.renderGroupedItem,selectedRanges:i,style:{height:d},isMultiSelect:!0})),m.createElement("div",{className:"rollup-rows-available-columns"},m.createElement("div",{className:"section-title"},"Available Grouping Columns"),m.createElement("div",{className:"top-menu"},m.createElement(eo,{className:"w-100",value:r,matchCount:r?a.length:void 0,placeholder:"Find column...",onChange:this.handleSearchChange}),m.createElement(Z,{kind:"ghost",className:ie("btn-link btn-link-icon",{active:s===vt.SORT.ASCENDING}),onClick:this.handleSortAscending},m.createElement(de,{icon:ja}),m.createElement(Gt,null,"Sort ascending")),m.createElement(Z,{kind:"ghost",className:ie("btn-link btn-link-icon",{active:s===vt.SORT.DESCENDING}),onClick:this.handleSortDescending},m.createElement(de,{icon:Ka}),m.createElement(Gt,null,"Sort descending"))),m.createElement(Ut,{className:"rollup-available-grouping-columns",draggablePrefix:ii,droppableId:ii,itemCount:u.length,items:u,renderItem:vt.renderColumn,offset:0,onSelect:this.handleUngroupedSelect,onSelectionChange:this.handleUngroupedSelectionChange,ref:this.ungroupedList,selectedRanges:a,style:{maxHeight:c,minHeight:h},isDropDisabled:(t==null?void 0:t.droppableId)!==ni,isMultiSelect:!0}),m.createElement("div",{className:"bottom-menu"},m.createElement("div",{className:"label"},"Show:"),m.createElement(Fr,{checked:o,onChange:this.handleShowConstituentsChange},"Constituents"),m.createElement(Fr,{checked:l,onChange:this.handleShowNonAggregatedColumnsChange},"Non-Aggregated Columns")))))}}Br(vt,"SORT",Object.freeze({ASCENDING:"ASC",DESCENDING:"DESC"}));Br(vt,"defaultProps",{config:null,onChange:()=>{}});const Nf=vt;function Sl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Df(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Sl(a,r,i,o,l,"next",s)}function l(s){Sl(a,r,i,o,l,"throw",s)}o(void 0)})}}function El(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Tl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?El(Object(t),!0).forEach(function(r){Yr(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):El(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Yr(n,e,t){return e=Pf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Pf(n){var e=If(n,"string");return typeof e=="symbol"?e:String(e)}function If(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Af=Fe.module("TableCsvExporter");class be extends y.Component{static getDateString(e){return e.i18n.DateTimeFormat.format(be.FILENAME_DATE_FORMAT,new Date)}constructor(e){super(e),this.handleDownloadClick=this.handleDownloadClick.bind(this),this.handleDownloadRowOptionChanged=this.handleDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowOptionChanged=this.handleCustomizedDownloadRowOptionChanged.bind(this),this.handleCustomizedDownloadRowsChanged=this.handleCustomizedDownloadRowsChanged.bind(this),this.handleIncludeColumnHeadersChanged=this.handleIncludeColumnHeadersChanged.bind(this),this.handleIncludeHiddenColumnsChanged=this.handleIncludeHiddenColumnsChanged.bind(this),this.handleUseUnformattedValuesChanged=this.handleUseUnformattedValuesChanged.bind(this);var{model:t,name:r}=e;this.state={fileName:"".concat(r,"-").concat(be.getDateString(t.dh),".csv"),downloadRowOption:be.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,customizedDownloadRowOption:be.CUSTOMIZED_ROWS_OPTIONS.FIRST,customizedDownloadRows:be.DEFAULT_DOWNLOAD_ROWS,includeColumnHeaders:!0,includeHiddenColumns:!1,useUnformattedValues:!1,errorMessage:null,id:Dr.generate()}}getSnapshotRanges(){var{model:e,selectedRanges:t}=this.props,{downloadRowOption:r,customizedDownloadRowOption:i,customizedDownloadRows:a}=this.state,{rowCount:o,columnCount:l}=e,s=[];switch(r){case be.DOWNLOAD_ROW_OPTIONS.ALL_ROWS:s.push(new B(0,0,l-1,o-1));break;case be.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS:s=t.map(u=>Tl(Tl({},u),{},{startColumn:0,endColumn:l-1})).sort((u,d)=>u.startRow!=null&&d.startRow!=null?u.startRow-d.startRow:0);break;case be.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS:switch(i){case be.CUSTOMIZED_ROWS_OPTIONS.FIRST:s.push(new B(0,0,l-1,Math.min(a-1,o-1)));break;case be.CUSTOMIZED_ROWS_OPTIONS.LAST:s.push(new B(0,Math.max(0,o-a),l-1,o-1));break}break}return s}getModelRanges(e){var{userColumnWidths:t,movedColumns:r}=this.props,{includeHiddenColumns:i}=this.state,a=Re.getHiddenColumns(t),o=j.getModelRanges(e,r);if(!i&&a.length>0){var l=a.map(B.makeColumn);o=B.subtractRangesFromRanges(o,l)}return o}resetDownloadState(){this.setState({errorMessage:null})}handleDownloadClick(){var e=this;return Df(function*(){var{model:t,isDownloading:r,onDownloadStart:i,onDownload:a,onCancel:o}=e.props,{fileName:l,includeColumnHeaders:s,useUnformattedValues:u}=e.state;if(r){o();return}e.resetDownloadState();var d=e.getSnapshotRanges(),c=e.getModelRanges(d);if(e.validateOptionInput()){i();try{var h=yield t.export(),v=h.setViewport(0,0);yield v.getViewportData(),a(l,h,v,d,c,s,u)}catch(g){Af.error("CSV download failed",g),e.setState({errorMessage:m.createElement("p",null,m.createElement(de,{icon:In})," ","".concat(g))}),o()}}})()}handleDownloadRowOptionChanged(e){this.setState({downloadRowOption:e.target.value})}handleCustomizedDownloadRowOptionChanged(e){this.setState({customizedDownloadRowOption:e.target.value})}handleCustomizedDownloadRowsChanged(e){this.setState({customizedDownloadRows:parseInt(e.target.value,10)})}handleIncludeColumnHeadersChanged(){this.setState(e=>{var{includeColumnHeaders:t}=e;return{includeColumnHeaders:!t}})}handleIncludeHiddenColumnsChanged(){this.setState(e=>{var{includeHiddenColumns:t}=e;return{includeHiddenColumns:!t}})}handleUseUnformattedValuesChanged(){this.setState(e=>{var{useUnformattedValues:t}=e;return{useUnformattedValues:!t}})}validateOptionInput(){var{selectedRanges:e}=this.props,{downloadRowOption:t,customizedDownloadRows:r}=this.state;return t===be.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS&&e.length===0?(this.setState({errorMessage:m.createElement("p",null,m.createElement(de,{icon:In})," No rows selected. Please select some rows in the table.")}),!1):t===be.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS&&r<=0?(this.setState({errorMessage:m.createElement("p",null,m.createElement(de,{icon:In})," Number of rows to output must be greater than 0")}),!1):!0}render(){var{model:e,isDownloading:t,tableDownloadProgress:r,tableDownloadEstimatedTime:i,selectedRanges:a,tableDownloadStatus:o}=this.props,{fileName:l,downloadRowOption:s,customizedDownloadRowOption:u,customizedDownloadRows:d,includeColumnHeaders:c,includeHiddenColumns:h,useUnformattedValues:v,errorMessage:g,id:f}=this.state,{rowCount:p}=e;return m.createElement("div",{className:"table-csv-exporter"},m.createElement("div",{className:"section-title"},"Download Rows"),m.createElement("div",{className:"form-group"},m.createElement(Ja,{onChange:this.handleDownloadRowOptionChanged,value:s,disabled:t},m.createElement($r,{value:be.DOWNLOAD_ROW_OPTIONS.ALL_ROWS,"data-testid":"radio-csv-exporter-download-all"},"All Rows",m.createElement("span",{className:"text-muted ml-2"},"(".concat(p.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"))),m.createElement($r,{value:be.DOWNLOAD_ROW_OPTIONS.SELECTED_ROWS,"data-testid":"radio-csv-exporter-only-selected"},"Only Selected Rows",m.createElement("span",{className:"text-muted ml-2"},a.length>0?"(".concat(B.rowCount(a).toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")," rows)"):null)),m.createElement($r,{value:be.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS,"data-testid":"radio-csv-exporter-customized-rows"},m.createElement("div",{className:"radio-input-row",role:"presentation",onClick:()=>{this.setState({downloadRowOption:be.DOWNLOAD_ROW_OPTIONS.CUSTOMIZED_ROWS})}},m.createElement("select",{value:u,"data-testid":"select-csv-exporter-customized-rows",className:"custom-select",disabled:t,onChange:this.handleCustomizedDownloadRowOptionChanged},m.createElement("option",{value:"FIRST"},"First"),m.createElement("option",{value:"LAST"},"Last")),m.createElement("input",{type:"number",className:"form-control",id:"customizedRows-".concat(f),"data-testid":"input-csv-exporter-customized-rows",name:"customizedRows-".concat(f),placeholder:"100",value:d,disabled:t,onChange:this.handleCustomizedDownloadRowsChanged}),m.createElement("div",null,"Rows"))))),m.createElement("div",{className:"form-group"},m.createElement("label",{htmlFor:"customizedRows-".concat(f)},"File Name"),m.createElement("input",{type:"text",className:"form-control",id:"filename-".concat(f),"data-testid":"input-csv-exporter-file-name",name:"filename-".concat(f),value:l,onChange:C=>{this.setState({fileName:C.target.value})},disabled:t})),m.createElement("div",{className:"checkbox-options"},m.createElement(Fr,{checked:c,onChange:this.handleIncludeColumnHeadersChanged},"Include column headers"),m.createElement(Fr,{checked:h,onChange:this.handleIncludeHiddenColumnsChanged},"Include hidden columns"),m.createElement(Fr,{checked:v,onChange:this.handleUseUnformattedValuesChanged},"Use unformatted values")),m.createElement("div",{className:"section-footer flex-column"},g!=null&&m.createElement("div",{className:"error-message"},g),o&&m.createElement("div",{className:"download-status"},(o===be.DOWNLOAD_STATUS.DOWNLOADING||o===be.DOWNLOAD_STATUS.INITIATING)&&m.createElement(m.Fragment,null,o===be.DOWNLOAD_STATUS.INITIATING&&m.createElement("div",{className:"text-muted"},"Starting Download..."),o===be.DOWNLOAD_STATUS.DOWNLOADING&&m.createElement("div",{className:"text-muted d-flex justify-content-between"},m.createElement("span",null,i||i===0?"Estimated time: ".concat(bd.formatElapsedTime(i)):null),m.createElement("span",null,"".concat(r,"%")))),o===be.DOWNLOAD_STATUS.FINISHED&&m.createElement("div",{className:"text-muted text-right"},"Download Completed"),o===be.DOWNLOAD_STATUS.CANCELED&&m.createElement("div",{className:"text-muted"},"Download Canceled"),(o===be.DOWNLOAD_STATUS.DOWNLOADING||o===be.DOWNLOAD_STATUS.INITIATING)&&m.createElement("div",{className:"progress"},m.createElement("div",{className:"progress-bar progress-bar-striped progress-bar-animated",style:{width:"".concat(r,"%")}})),o===be.DOWNLOAD_STATUS.FINISHED&&m.createElement("div",{className:"progress"},m.createElement("div",{className:"progress-bar bg-success",style:{width:"".concat(r,"%")}}))),m.createElement(Z,{kind:"primary","data-testid":"btn-csv-exporter-download",className:ie("btn-downloading",{"btn-spinner btn-cancelable":t}),onClick:this.handleDownloadClick},t&&m.createElement("span",null,m.createElement(zr,null),m.createElement("span",{className:"btn-normal-content"},"Downloading"),m.createElement("span",{className:"btn-hover-content"},"Cancel")),!t&&"Download")))}}Yr(be,"FILENAME_DATE_FORMAT","yyyy-MM-dd-HHmmss");Yr(be,"DOWNLOAD_STATUS",{INITIATING:"INITIATING",DOWNLOADING:"DOWNLOADING",FINISHED:"FINISHED",CANCELED:"CANCELED"});Yr(be,"DOWNLOAD_ROW_OPTIONS",{ALL_ROWS:"ALL_ROWS",SELECTED_ROWS:"SELECTED_ROWS",CUSTOMIZED_ROWS:"CUSTOMIZED_ROWS"});Yr(be,"CUSTOMIZED_ROWS_OPTIONS",{FIRST:"FIRST",LAST:"LAST"});Yr(be,"DEFAULT_DOWNLOAD_ROWS",100);Yr(be,"defaultProps",{onDownloadStart:()=>{},isDownloading:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:null,selectedRanges:[]});const Lr=be;function Te(n,e,t){return e=Mf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Mf(n){var e=Lf(n,"string");return typeof e=="symbol"?e:String(e)}function Lf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ar=Fe.module("TableSaver"),kf="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function _f(n){return n.added!==void 0}function xf(n){if(!_f(n))throw new Error("event is not UpdateEventData")}class ft extends y.PureComponent{static csvEscapeString(e){return'"'.concat(e.replace(/"/g,'""'),'"')}constructor(e){super(e),Te(this,"sw",void 0),Te(this,"port",void 0),Te(this,"fileWriter",void 0),Te(this,"table",void 0),Te(this,"tableSubscription",void 0),Te(this,"columns",void 0),Te(this,"fileName",void 0),Te(this,"includeColumnHeaders",void 0),Te(this,"useUnformattedValues",void 0),Te(this,"chunkRows",void 0),Te(this,"gridRanges",void 0),Te(this,"gridRangeCounter",void 0),Te(this,"rangedSnapshotsTotal",void 0),Te(this,"rangedSnapshotCounter",void 0),Te(this,"snapshotsTotal",void 0),Te(this,"snapshotCounter",void 0),Te(this,"snapshotsBuffer",void 0),Te(this,"currentSnapshotIndex",void 0),Te(this,"snapshotPending",void 0),Te(this,"cancelableSnapshots",void 0),Te(this,"streamTimeout",void 0),Te(this,"snapshotHandlerTimeout",void 0),Te(this,"downloadStartTime",void 0),Te(this,"iframes",void 0),Te(this,"useBlobFallback",void 0),Te(this,"getCachedCustomColumnFormatFlag",zt(bi.isCustomColumnFormatDefined,{max:1e4})),this.handlePortMessage=this.handlePortMessage.bind(this),this.handleSnapshotResolved=this.handleSnapshotResolved.bind(this),this.handleDownloadTimeout=this.handleDownloadTimeout.bind(this),this.state={},this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.iframes=[],this.useBlobFallback=!1}componentDidMount(){var{getDownloadWorker:e}=this.props;e().then(t=>{ar.info("found active service worker"),this.sw=t,this.sw.postMessage("ping")}).catch(t=>{ar.warn("Download csv is not optimized.",t),this.useBlobFallback=!0})}componentWillUnmount(){this.iframes.length>0&&this.iframes.forEach(e=>{e.remove()}),this.streamTimeout&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout&&clearTimeout(this.snapshotHandlerTimeout)}createWriterStream(e){var t=this.useBlobFallback,r=[],i=null;t&&(i=TextEncoder.prototype.encode.bind(new TextEncoder));var{fileName:a}=this,o={};return t?(o.write=l=>{_(i),l.header!==void 0&&r.push(i(l.header)),l.rows!==void 0&&r.push(i(l.rows))},o.close=()=>{_(a);var l=new Blob(r,{type:"application/octet-stream; charset=utf-8"}),s=document.createElement("a");s.href=URL.createObjectURL(l),s.download=a,s.click()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}):(o.write=l=>{e.postMessage(l)},o.close=()=>{e.postMessage({end:!0}),e.close()},o.abort=()=>{e.postMessage({cancel:!0}),e.close()}),new WritableStream(o)}startDownload(e,t,r,i,a,o,l){var{isDownloading:s}=this.props;if(!s){this.downloadStartTime=Date.now(),ar.info("start downloading ".concat(e)),this.table=t,this.columns=Re.columnsFromRanges(a,t.columns),this.tableSubscription=r,this.gridRanges=i,this.includeColumnHeaders=o,this.useUnformattedValues=l;var u=encodeURIComponent(e.replace(/\//g,":")).replace(/['()]/g,escape).replace(/\*/g,"%2A"),d=new MessageChannel;if(this.port=d.port1,this.fileName=e,this.fileWriter=this.createWriterStream(this.port).getWriter(),this.useBlobFallback){this.writeCsvTable(o);return}this.sw&&this.sw.postMessage({encodedFileName:u},[d.port2]),this.port.onmessage=this.handlePortMessage}}finishDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.close();var{onDownloadCompleted:e}=this.props;e(),this.resetTableSaver(),this.downloadStartTime!==void 0&&ar.info("download finished, total elapsed time ".concat((Date.now()-this.downloadStartTime)/1e3," seconds"))}cancelDownload(){this.table&&this.table.close(),this.tableSubscription&&this.tableSubscription.close(),this.fileWriter&&this.fileWriter.abort(),this.cancelableSnapshots.forEach(t=>{t&&(t.catch(()=>null),t.cancel())});var{onDownloadCanceled:e}=this.props;e(),this.resetTableSaver()}resetTableSaver(){this.table=void 0,this.tableSubscription=void 0,this.columns=void 0,this.chunkRows=void 0,this.gridRanges=[],this.gridRangeCounter=0,this.rangedSnapshotsTotal=[],this.rangedSnapshotCounter=0,this.includeColumnHeaders=!0,this.useUnformattedValues=!1,this.snapshotsTotal=0,this.snapshotCounter=0,this.snapshotsBuffer=new Map,this.currentSnapshotIndex=0,this.snapshotPending=0,this.cancelableSnapshots=[],this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.snapshotHandlerTimeout!=null&&clearTimeout(this.snapshotHandlerTimeout),this.streamTimeout=void 0,this.snapshotHandlerTimeout=void 0}handleDownloadTimeout(){ar.info("download canceled"),this.cancelDownload()}writeTableHeader(){var e,t="";if(this.columns)for(var r=0;r<this.columns.length;r+=1)t+=this.columns[r].name,t+=r===this.columns.length-1?`
4
4
  `:",";(e=this.fileWriter)===null||e===void 0||e.write({header:t}).then(()=>null)}startWriteTableBody(){this.columns&&this.gridRanges!=null&&(this.chunkRows=Math.floor(ft.DOWNLOAD_CELL_CHUNK/this.columns.length),this.rangedSnapshotsTotal=this.gridRanges.map(e=>(_(e.endRow),_(e.startRow),_(this.chunkRows),Math.ceil((e.endRow-e.startRow+1)/this.chunkRows))),this.snapshotsTotal=this.rangedSnapshotsTotal.reduce((e,t)=>e+t),ar.info("start writing table, total snapshots: ",this.snapshotsTotal),this.makeSnapshot(Math.min(ft.SNAPSHOT_BUFFER_SIZE,this.snapshotsTotal)))}writeCsvTable(e){e&&this.writeTableHeader(),this.startWriteTableBody()}writeSnapshot(e,t,r){if(this.currentSnapshotIndex===e&&this.fileWriter){for(;this.snapshotsBuffer.has(this.currentSnapshotIndex);){var i=this.snapshotsBuffer.get(this.currentSnapshotIndex);_(i),this.fileWriter.write({rows:this.convertSnapshotIntoCsv(i)}),this.snapshotsBuffer.delete(this.currentSnapshotIndex),this.currentSnapshotIndex+=1,this.updateDownloadProgress(e)}if(this.snapshotsTotal&&this.currentSnapshotIndex>=this.snapshotsTotal){this.finishDownload();return}}this.snapshotCounter&&this.snapshotsTotal&&this.snapshotCounter<this.snapshotsTotal&&(ar.debug2(`
5
5
  current range index: `.concat(this.gridRangeCounter,`,
6
6
  snapshotIndexCounter: `).concat(this.snapshotCounter,`,
@@ -9,7 +9,7 @@ import{b as Ie,f as Jl,m as Pe,d as ba,r as y,a as m,c as ie,P as Oe,e as je,E a
9
9
  buffered `).concat(this.snapshotsBuffer.size,`
10
10
  making `).concat(Math.min(ft.SNAPSHOT_BUFFER_SIZE-this.snapshotsBuffer.size-this.snapshotPending,this.snapshotsTotal-this.snapshotCounter),` more snapshots
11
11
  `)),this.makeSnapshot(Math.min(ft.SNAPSHOT_BUFFER_SIZE-this.snapshotsBuffer.size-this.snapshotPending,this.snapshotsTotal-this.snapshotCounter)))}updateDownloadProgress(e){if(e!=null&&this.snapshotsTotal!=null&&this.downloadStartTime!=null){var{onDownloadProgressUpdate:t}=this.props,r=Math.floor(e*100/this.snapshotsTotal),i=e>1?Math.floor((Date.now()-this.downloadStartTime)*(this.snapshotsTotal-e)/e/1e3):null;t(r,i)}}convertSnapshotIntoCsv(e){for(var t="",r=e.added.iterator(),{dh:i,formatter:a}=this.props,o=[];r.hasNext();)o.push(r.next().value);_(this.columns);for(var{useUnformattedValues:l}=this,s=0;s<o.length;s+=1)for(var u=o[s],d=0;d<this.columns.length;d+=1){var{type:c,name:h}=this.columns[d],v=null;if(l){var g,f=(g=e.getData(u,this.columns[d]))!==null&&g!==void 0?g:"";f!==""&&M.isDateType(c)&&(f=i.i18n.DateTimeFormat.format(kf,f,i.i18n.TimeZone.getTimeZone(a.timeZone))),v=f.toString()}else{var p=this.getCachedCustomColumnFormatFlag(a,h,c),C=null;if(!p){var w=e.getFormat(u,this.columns[d]);C=(w==null?void 0:w.formatString)!=null?w:null}C?v=a.getFormattedString(e.getData(u,this.columns[d]),c,h,C):v=a.getFormattedString(e.getData(u,this.columns[d]),c,h)}t+=ft.csvEscapeString(v),t+=d===this.columns.length-1?`
12
- `:","}return t}makeSnapshot(e){var t=this;if(!(e<=0)){var{dh:r}=this.props;_(this.gridRangeCounter);var i=0,a=this.gridRanges[this.gridRangeCounter];_(this.tableSubscription),_(this.columns);for(var o=function(){_(a),_(a.startRow),_(a.endRow),_(t.rangedSnapshotCounter),_(t.chunkRows);var s=a.startRow+t.rangedSnapshotCounter*t.chunkRows,u=Math.min(s+t.chunkRows-1,a.endRow),d=t.snapshotCounter;t.cancelableSnapshots.push(ot.makeCancelable(t.tableSubscription.snapshot(r.RangeSet.ofRange(s,u),t.columns).then(c=>(Hf(c),t.handleSnapshotResolved(c,d,s,u),d)).catch(c=>{ar.error(c)}),c=>{ar.info("snapshot ".concat(c," has been canceled"))})),t.rangedSnapshotCounter+=1,t.snapshotCounter+=1,t.snapshotPending+=1,t.rangedSnapshotCounter>=t.rangedSnapshotsTotal[t.gridRangeCounter]&&(t.gridRangeCounter+=1,t.rangedSnapshotCounter=0,a=t.gridRanges[t.gridRangeCounter]),i+=1};i<e;)o()}}handlePortMessage(e){var{data:t}=e,{download:r,readableStreamPulling:i}=t;if(!this.useBlobFallback){if(r!=null){var{includeColumnHeaders:a}=this;this.makeIframe("".concat(r)),this.writeCsvTable(a)}i!=null&&(this.useBlobFallback||(this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.streamTimeout=setTimeout(this.handleDownloadTimeout,ft.STREAM_TIMEOUT)))}}handleSnapshotResolved(e,t,r,i){this.snapshotHandlerTimeout=setTimeout(()=>{this.snapshotsBuffer.set(t,e),this.snapshotPending-=1,this.writeSnapshot(t,r,i),this.cancelableSnapshots[t]=null},ft.SNAPSHOT_HANDLER_TIMEOUT)}makeIframe(e){var t=document.createElement("iframe");t.hidden=!0,t.src="download/".concat(e),t.name="iframe",document.body.appendChild(t),this.iframes.push(t)}render(){return null}}Te(ft,"DOWNLOAD_CELL_CHUNK",6e3);Te(ft,"SNAPSHOT_BUFFER_SIZE",5);Te(ft,"STREAM_TIMEOUT",8e3);Te(ft,"SNAPSHOT_HANDLER_TIMEOUT",5);Te(ft,"defaultProps",{getDownloadWorker:()=>Promise.reject(new Error("Download worker not provided")),isDownloading:!1,onDownloadCompleted:()=>{},onDownloadCanceled:()=>{},onDownloadProgressUpdate:()=>{}});function xf(n){var e,{group:t,onDelete:r,onColorChange:i,onNameChange:a,validateName:o}=n,{isNew:l}=t,s=y.useRef(t),u=y.useRef(null),d=y.useRef(null),[c,h]=y.useState(!1),[v,g]=y.useState(l?"":t.name),[f,p]=y.useState(l),[C,w]=y.useState(!1),b=v!==t.name?o(v):"",E=l&&!C||b==="",T=y.useCallback(()=>{h(!1)},[]);y.useEffect(function(){f&&u.current&&(u.current.focus(),u.current.select())},[f]),y.useEffect(function(){return()=>{s.current.isNew&&r(s.current)}},[r]),y.useEffect(function(){if(c){var D,P;(D=d.current)===null||D===void 0||D.click(),(P=d.current)===null||P===void 0||P.focus(),window.addEventListener("click",T,!0)}return()=>window.removeEventListener("click",T,!0)},[c,T]);var S=()=>{E&&(a(t,v),p(!1))},O=()=>{if(l){r(t);return}g(t.name),p(!1)},F=R=>{w(!0),R.key==="Enter"&&(R.stopPropagation(),S()),R.key===" "&&R.stopPropagation(),R.key==="Escape"&&O()};return f?m.createElement(m.Fragment,null,m.createElement("div",{className:"editing-container"},m.createElement("input",{ref:u,className:ie("form-control",{"is-invalid":!E}),value:v,placeholder:"Group Name",onChange:R=>g(R.target.value),onKeyDown:F,onBlur:()=>w(!0)}),m.createElement(Z,{kind:"ghost",icon:Ci,tooltip:"Confirm",onClick:S}),m.createElement(Z,{kind:"ghost",icon:Bu,tooltip:"Cancel",onClick:O})),!E&&m.createElement("p",{className:"mb-0 validate-label-error text-danger"},b)):m.createElement("div",{className:"group-name-wrapper"},m.createElement("span",{className:"column-name"},v),m.createElement(Z,{className:"p-1 mx-1",kind:"ghost",icon:za,tooltip:"Edit",onClick:()=>{p(!0)}}),m.createElement("span",{className:"right-buttons"},m.createElement(Z,{kind:"ghost",icon:Pr,tooltip:"Delete group",onClick:()=>r(t)}),m.createElement(Z,{kind:"ghost",className:"color-swatch mr-1",icon:t.color!==void 0?m.createElement("span",{className:"fa-layers"},m.createElement(ue,{className:"color-swatch",icon:wi,color:qe.white,transform:"down-1"}),m.createElement(ue,{className:"color-swatch",icon:wi,color:t.color,transform:"shrink-2 down-1"})):Uu,tooltip:"Set color",onClick:()=>h(R=>!R)}),c&&m.createElement(m.Fragment,null,m.createElement("input",{"aria-label":"Color input",ref:d,type:"color",list:"presetColors",value:(e=t.color)!==null&&e!==void 0?e:qe["content-bg"],style:{visibility:"hidden",width:0,height:0,padding:0,border:0},onChange:R=>{t.color=R.target.value,i(t,R.target.value)}}),m.createElement("datalist",{id:"presetColors"},m.createElement("option",null,qe["content-bg"]),m.createElement("option",null,qe.primary),m.createElement("option",null,qe.foreground),m.createElement("option",null,qe.green),m.createElement("option",null,qe.yellow),m.createElement("option",null,qe.orange),m.createElement("option",null,qe.red),m.createElement("option",null,qe.purple),m.createElement("option",null,qe.blue),m.createElement("option",null,qe["gray-400"])))))}function Va(){return Va=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Va.apply(this,arguments)}function Bf(){}var Uf=y.forwardRef(function(e,t){var{value:r,clone:i,childCount:a,item:o,onVisibilityChange:l,onClick:s,onGroupDelete:u,onGroupColorChange:d,onGroupNameChange:c,validateGroupName:h,handleProps:v}=e,{group:g,modelIndex:f,isVisible:p}=o.data,C=y.useRef(null),w=y.useCallback(E=>{if(E.buttons===1){var T;l([f].flat(),!p),(T=C.current)===null||T===void 0||T.focus()}},[l,f,p]),b=y.useCallback(E=>{s(r,E)},[s,r]);return m.createElement("div",Va({ref:t,className:ie("tree-item",{isSelected:o.selected,"two-dragged":a===2,"multiple-dragged":a>2}),onClick:b},v),m.createElement(Z,{ref:C,kind:"ghost",className:"px-1",onClick:Bf,onMouseDown:w,onMouseEnter:w,icon:p?Xa:ns,tooltip:"Toggle visibility"}),m.createElement("span",{className:ie("column-name",g&&"column-group")},g&&!i?m.createElement(xf,{group:g,onDelete:u,onColorChange:d,onNameChange:c,validateName:h}):r),m.createElement("div",null,i&&a>1&&m.createElement("span",{className:"item-count"},a),m.createElement(Gt,null,"Drag to re-order"),m.createElement(ue,{icon:qa})))});const Vf=Uf;function $f(n){return n.parentId!==void 0}function yl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Rl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?yl(Object(t),!0).forEach(function(r){Gf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):yl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Gf(n,e,t){return e=Wf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wf(n){var e=zf(n,"string");return typeof e=="symbol"?e:String(e)}function zf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function jf(n,e){return Math.round(n/e)}function Ls(n,e,t,r,i,a){var o=n.findIndex(u=>u.name===r);if(o===-1){var l=t.get(r);if(l==null)throw new Error("Column or header group not found: ".concat(r));var s=l.childIndexes.flat();return{id:r,selected:a.has(r),children:l.children.map(u=>Ls(n,e,t,u,i,a)).sort((u,d)=>{var c=Array.isArray(u.data.visibleIndex)?u.data.visibleIndex[0]:u.data.visibleIndex,h=Array.isArray(d.data.visibleIndex)?d.data.visibleIndex[0]:d.data.visibleIndex;return c-h}),data:{modelIndex:s,visibleIndex:l.getVisibleRange(e),group:l,isVisible:s.some(u=>!i.has(u))}}}return{id:r,children:[],selected:a.has(r),data:{modelIndex:o,visibleIndex:j.getVisibleIndex(o,e),isVisible:!i.has(o)}}}function Kf(n,e,t,r,i){for(var a=[],o=new Set(i),l=new Map(t.map(c=>[c.name,c])),s=new Set(r),u=0,d=function(){for(var h=j.getModelIndex(u,e),v=n[h].name,g=t.find(p=>{var{children:C}=p;return C.includes(v)});g!==void 0&&g.parent!==void 0;)g=l.get(g.parent);var f=Ls(n,e,l,g?g.name:v,s,o);a.push(f),Array.isArray(f.data.visibleIndex)?u+=f.data.visibleIndex[1]-f.data.visibleIndex[0]+1:u+=1};u<n.length;)d();return a}function Di(n,e,t,r,i){var a=n.findIndex(C=>{var{id:w}=C;return w===t}),o=n.findIndex(C=>{var{id:w}=C;return w===e}),l=n[o],s=mu(n,o,a),u=s[a-1],d=s[a+1],c=jf(r,i),h=l.depth+c,v=Yf({previousItem:u,nextItem:d}),g=qf({nextItem:d}),f=h;return h>=v?f=v:h<g&&(f=g),{depth:f,maxDepth:v,minDepth:g,parentId:p()};function p(){var C;if(f===0||!u)return null;if(f===u.depth)return u.parentId;if(f>u.depth)return u.id;var w=(C=s.slice(0,a).reverse().find(b=>b.depth===f))===null||C===void 0?void 0:C.parentId;return w??null}}function Yf(n){var e,t,{previousItem:r,nextItem:i}=n;return Math.max((e=r==null?void 0:r.depth)!==null&&e!==void 0?e:0,(t=i==null?void 0:i.depth)!==null&&t!==void 0?t:0)}function qf(n){var{nextItem:e}=n;return e?e.depth:0}function ks(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return n.reduce((r,i,a)=>[...r,Rl(Rl({},i),{},{parentId:e,depth:t,index:a}),...ks(i.children,i.id,t+1)],[])}function Dt(n){return n.every($f)?[...n]:ks(n)}function _s(n,e){for(var t=0;t<n.length;t+=1){var r=n[t],{id:i,children:a}=r;if(i===e)return r;if(a.length){var o=_s(a,e);if(o)return o}}}function Hs(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return n.reduce((t,r)=>{var{children:i}=r;return i.length?Hs(i,t+1):t+1},e)}function Xf(n,e){var t=_s(n,e);return t?Hs(t.children):0}function Ol(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ai(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ol(Object(t),!0).forEach(function(r){Qf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ol(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qf(n,e,t){return e=Zf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zf(n){var e=Jf(n,"string");return typeof e=="symbol"?e:String(e)}function Jf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ep=[Xt.Down,Xt.Right,Xt.Up,Xt.Left],tp=[Xt.Left,Xt.Right];function rp(n,e,t){return(r,i)=>{var{currentCoordinates:a,context:{active:o,over:l,collisionRect:s,droppableRects:u,droppableContainers:d}}=i;if(ep.includes(r.code)){if(!o||!s)return;r.preventDefault();var{current:{items:c,offset:h}}=n;if(tp.includes(r.code)&&(l==null?void 0:l.id)!=null){var{depth:v,maxDepth:g,minDepth:f}=Di(c,o.id,l.id,h,t);switch(r.code){case Xt.Left:if(v>f)return ai(ai({},a),{},{x:a.x-t});break;case Xt.Right:if(v<g)return ai(ai({},a),{},{x:a.x+t});break}return}var p=[];d.forEach(H=>{if(!(H!=null&&H.disabled||H.id===(l==null?void 0:l.id))){var W=u.get(H.id);if(W)switch(r.code){case Xt.Down:s.top<W.top&&p.push(H);break;case Xt.Up:s.top>W.top&&p.push(H);break}}});var C=vu({active:o,collisionRect:s,pointerCoordinates:null,droppableRects:u,droppableContainers:p}),w=gu(C,"id");if(w===(l==null?void 0:l.id)&&C.length>1&&(w=C[1].id),w!=null&&(l==null?void 0:l.id)!=null){var b=u.get(o.id),E=u.get(w),T=d.get(w);if(b&&E&&T){var S=c.findIndex(H=>{var{id:W}=H;return W===w}),O=c[S],F=c.findIndex(H=>{var{id:W}=H;return W===o.id}),R=c[F];if(O!=null&&R!=null){var{depth:D}=Di(c,o.id,w,(O.depth-R.depth)*t,t),P=S>F,I=P?1:-1,A=e?(s.height-b.height)/2:0,x={x:E.left+D*t,y:E.top+I*A};return x}}}}}}function np(n,e,t){return e=ip(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ip(n){var e=ap(n,"string");return typeof e=="symbol"?e:String(e)}function ap(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class xs extends fu{}np(xs,"activators",[{eventName:"onPointerDown",handler:n=>{var{nativeEvent:e}=n;return!(!e.isPrimary||e.button!==0||lp(e.target))}}]);var op=["button","input","textarea","select","option"];function lp(n){return!!((n==null?void 0:n.tagName)!=null&&op.includes(n.tagName.toLowerCase()))}function Bs(n){var{clone:e=!1,depth:t,disableInteraction:r=!1,ghost:i=!1,handleProps:a,value:o,dragRef:l=null,wrapperRef:s=null,renderItem:u,item:d,childCount:c}=n,h=y.useMemo(()=>Array(t).fill(0).map((g,f)=>m.createElement("span",{key:"depth-line-".concat(f),className:"depth-line"})),[t]),v=y.useMemo(()=>({ref:l,clone:e,value:o,item:d,childCount:c,handleProps:a}),[l,e,o,d,c,a]);return m.createElement("li",{key:o,className:ie("item-wrapper",{clone:e,ghost:i,disableInteraction:r}),ref:s},!e&&h,u(v))}Bs.displayName="TreeItem";var sp=["id","depth"];function $a(){return $a=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},$a.apply(this,arguments)}function Fl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ma(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fl(Object(t),!0).forEach(function(r){up(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function up(n,e,t){return e=dp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dp(n){var e=cp(n,"string");return typeof e=="symbol"?e:String(e)}function cp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function hp(n,e){if(n==null)return{};var t=mp(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function mp(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}var vp=n=>{var{isSorting:e,wasDragging:t}=n;return!(e||t)};function Dl(n){var{id:e,depth:t}=n,r=hp(n,sp),{attributes:i,isDragging:a,isSorting:o,listeners:l,setDraggableNodeRef:s,setDroppableNodeRef:u,transform:d,transition:c}=pu({id:e,animateLayoutChanges:vp}),h=Sa.Translate.toString(d),v=y.useMemo(()=>({transform:h,transition:c}),[h,c]),g=y.useMemo(()=>ma(ma(ma({},i),l),{},{style:v}),[i,l,v]);return m.createElement(Bs,$a({dragRef:s,wrapperRef:u,depth:t,ghost:a,disableInteraction:o,handleProps:g},r))}function Nl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ni(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Nl(Object(t),!0).forEach(function(r){gp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Nl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gp(n,e,t){return e=fp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fp(n){var e=pp(n,"string");return typeof e=="symbol"?e:String(e)}function pp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cp={keyframes(n){var{transform:e}=n;return[{opacity:1,transform:Sa.Transform.toString(e.initial)},{opacity:0,transform:Sa.Transform.toString(Ni(Ni({},e.final),{},{x:e.final.x+5,y:e.final.y+5}))}]},easing:"ease-out",sideEffects(n){var{active:e}=n;e.node.animate([{opacity:0},{opacity:1}],{duration:No.duration,easing:No.easing})}},oi=null;function wp(n){var e;return oi==null&&n.activeNodeRect&&n.activatorEvent instanceof PointerEvent&&(oi=Math.floor((n.activatorEvent.clientY-n.activeNodeRect.top)/n.activeNodeRect.height)*n.activeNodeRect.height),n.activeNodeRect||(oi=null),Ni(Ni({},n.transform),{},{y:n.transform.y+((e=oi)!==null&&e!==void 0?e:0)})}function bp(n){var{items:e,renderItem:t,indentationWidth:r=30,indicator:i=!1,activeId:a,overId:o,offsetLeft:l}=n,s=Cu(),u=y.useRef(s);y.useEffect(function(){u.current=s},[s]),y.useEffect(function(){u.current.measureDroppableContainers(e.map(g=>{var{id:f}=g;return f}))},[e]);var d=a!=null&&o!=null?Di(e,a,o,l,r):null,c=y.useRef({items:e,offset:l}),h=a!=null?e.find(v=>{var{id:g}=v;return g===a}):null;return y.useEffect(()=>{c.current={items:e,offset:l}},[e,l]),m.createElement(m.Fragment,null,m.createElement("div",{className:ie("tree-container",a!=null&&"marching-ants")},e.map(v=>{var{id:g,depth:f}=v;return m.createElement(Dl,{key:g,id:g,value:g,depth:g===a&&d?d.depth:f,item:v,renderItem:t})})),wu.createPortal(m.createElement(bu,{dropAnimation:Cp,modifiers:[wp],className:"visibility-ordering-list"},a!=null&&h?m.createElement(Dl,{id:a,depth:h.depth,clone:!0,childCount:Xf(e,a)+1,value:a.toString(),renderItem:t,item:h}):null),document.body))}function Pl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function li(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pl(Object(t),!0).forEach(function(r){Sp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Sp(n,e,t){return e=Ep(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ep(n){var e=Tp(n,"string");return typeof e=="symbol"?e:String(e)}function Tp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yp={droppable:{strategy:Ou.Always}},Rp={activationConstraint:{distance:5}};function Op(n){var{items:e,indicator:t=!1,indentationWidth:r=30,onDragStart:i,onDragEnd:a,renderItem:o}=n,[l,s]=y.useState(null),[u,d]=y.useState(null),[c,h]=y.useState(0),v=y.useMemo(()=>{var R=Dt(e);return l!=null?R.filter(D=>{var{id:P,selected:I}=D;return P===l||!I}):R},[l,e]),g=l!=null&&u!=null?Di(v,l,u,c,r):null,f=y.useRef({items:v,offset:c}),p=y.useMemo(()=>({coordinateGetter:rp(f,t,r)}),[r,t]),C=Su(Po(xs,Rp),Po(Fu,p)),w=y.useMemo(()=>v.map(R=>{var{id:D}=R;return D}),[v]);y.useEffect(()=>{f.current={items:v,offset:c}},[v,c]);var b=y.useCallback(R=>{var{active:{id:D}}=R;s(D),d(D),i==null||i(D),document.body.style.setProperty("cursor","grabbing")},[i]),E=y.useCallback(R=>{var{delta:D}=R;h(D.x)},[]),T=y.useCallback(R=>{var D,{over:P}=R;d((D=P==null?void 0:P.id)!==null&&D!==void 0?D:null)},[]),S=y.useCallback(()=>{d(null),s(null),h(0),document.body.style.setProperty("cursor","")},[]),O=y.useCallback(R=>{var{active:D,over:P}=R;if(S(),g&&P){var{depth:I,parentId:A}=g,x=JSON.parse(JSON.stringify(Dt(e))),H=x.findIndex(G=>{var{id:K}=G;return K===P.id}),W=x.findIndex(G=>{var{id:K}=G;return K===D.id}),z=x[W];x[W]=li(li({},z),{},{depth:I,parentId:A}),a==null||a(z,li(li({},x[H]),{},{parentId:g.parentId}))}},[e,a,g,S]),F=y.useCallback(()=>{S()},[S]);return m.createElement(Eu,{sensors:C,collisionDetection:Tu,measuring:yp,onDragStart:b,onDragMove:E,onDragOver:T,onDragEnd:O,onDragCancel:F},m.createElement(yu,{items:w,strategy:Ru},m.createElement(bp,{items:v,renderItem:o,indicator:t,indentationWidth:r,activeId:l,overId:u,offsetLeft:c})))}function Il(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Al(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Il(Object(t),!0).forEach(function(r){Fp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Il(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Fp(n,e,t){return e=Dp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Dp(n){var e=Np(n,"string");return typeof e=="symbol"?e:String(e)}function Np(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Pp(n,e,t,r,i,a,o,l){var s=i.map((E,T)=>Al(Al({},E),{},{index:T})),u=[],d=r,c=a[0].data.visibleIndex,h=s.findIndex(E=>{var{id:T}=E;return T===n.id}),v=s.findIndex(E=>{var{id:T}=E;return T===e.id}),g=Array.isArray(c)?c[1]+1:c+1;d=Tr(a[0],e.parentId,d);for(var f=1;f<a.length;f+=1){var{data:{visibleIndex:p}}=a[f];u=j.moveItemOrRange(p,g,u,!0),g+=Array.isArray(p)?p[1]-p[0]+1:1,d=Tr(a[f],e.parentId,d)}var C=[Array.isArray(c)?c[0]:c,g-1],w=Array.isArray(e.data.visibleIndex)?e.data.visibleIndex[0]:e.data.visibleIndex,b=j.getVisibleIndex(w,u);return h>v&&b>w&&(b-=1),e.children.length>0&&(Array.isArray(c)?c[0]:c)<b&&(b-=1),C[0]<b&&(b-=C[1]-C[0]),u=j.moveItemOrRange(C,Ie(b,o,l),u),{groups:d,movedColumns:t.concat(u)}}function Tr(n,e,t){if(n.parentId===e)return[...t];var r=t.map(p=>new Pt(p)),i=new Map(r.map(p=>[p.name,p])),a=r.find(p=>p.name===n.parentId),o=r.find(p=>p.name===e),l=r.find(p=>p.name===n.id);if(a!=null&&(a.children=a.children.filter(p=>p!==n.id),a.children.length===0)){var s,u=new Set([a.name]),{parent:d=""}=a,c=i.get(d);for((s=c)===null||s===void 0||s.removeChildren([a.name]);c&&c.children.length===0;){var h,v;u.add(c.name);var g=(h=(v=c)===null||v===void 0?void 0:v.parent)!==null&&h!==void 0?h:"",f=i.get(g);f==null||f.removeChildren([c.name]),c=f}r=r.filter(p=>{var{name:C}=p;return!u.has(C)})}return o!=null&&o.addChildren([n.id]),l==null||l.setParent(e??void 0),r}function Ml(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function si(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ml(Object(t),!0).forEach(function(r){Nt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ml(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Nt(n,e,t){return e=Ip(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ip(n){var e=Ap(n,"string");return typeof e=="symbol"?e:String(e)}function Ap(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Mp=150;class $e extends y.Component{constructor(e){super(e),Nt(this,"list",void 0),Nt(this,"debouncedSearchColumns",Jt(this.searchColumns,Mp)),Nt(this,"handleGroupColorChange",fi((t,r)=>{var{columnHeaderGroups:i,onColumnHeaderGroupChanged:a}=this.props,o=[...i],l=new Pt(si(si({},t),{},{color:r}));o.splice(o.findIndex(s=>{var{name:u}=s;return u===t.name}),1,l),a(o)},250)),Nt(this,"renderItem",Pe(t=>{var{value:r,clone:i,item:a,ref:o,handleProps:l}=t,{onColumnVisibilityChanged:s}=this.props,{selectedColumns:u}=this.state,d=r;if(i){var c=this.getSelectedParentItems().map(h=>{var{id:v}=h;return v});d=c.join(", ")}return m.createElement(Vf,{ref:o,value:d,clone:i,item:a,childCount:u.size,onVisibilityChange:s,onClick:this.handleItemClick,onGroupDelete:this.handleGroupDelete,onGroupColorChange:this.handleGroupColorChange,onGroupNameChange:this.handleGroupNameChange,validateGroupName:this.validateGroupName,handleProps:l})})),Nt(this,"getMemoizedFirstMovableIndex",Pe((t,r,i)=>{for(var a=0;a<r.length;a+=1){var o=j.getModelIndex(a,i);if(t.isColumnMovable(o))return a}return null})),Nt(this,"getMemoizedLastMovableIndex",Pe((t,r,i)=>{for(var a=r.length-1;a>=0;a-=1){var o=j.getModelIndex(a,i);if(t.isColumnMovable(o))return a}return null})),Nt(this,"memoizedGetTreeItems",Pe((t,r,i,a,o)=>Kf(t,r,i,a,[...o.values()]))),Nt(this,"makeVisibilityOrderingList",Pe((t,r)=>{var{movedColumns:i}=this.props,a=[],o=this.getFirstMovableIndex(),l=this.getLastMovableIndex(),s=r.findIndex(E=>{var{data:T}=E;return Array.isArray(T.visibleIndex)?T.visibleIndex[0]===o:T.visibleIndex===o}),u=r.findIndex(E=>{var{data:T}=E;return Array.isArray(T.visibleIndex)?T.visibleIndex[1]===l:T.visibleIndex===l}),d=r.slice(s,u+1);if(o==null||l===null){for(var c=0;c<t.length;c+=1){var h=j.getModelIndex(c,i),v=t[h];a.push(this.renderImmovableItem(v.name))}return a}for(var g=0;g<o;g+=1){var f=j.getModelIndex(g,i),p=t[f];a.push(this.renderImmovableItem(p.name))}o!==null&&o>0&&a.push(m.createElement("hr",{key:"top-horizontal-divider"})),a.push(m.createElement(Op,{key:"movable-items",items:d,renderItem:this.renderItem,onDragStart:this.handleDragStart,onDragEnd:this.handleDragEnd})),l!=null&&l<t.length-1&&a.push(m.createElement("hr",{key:"bottom-horizontal-divider"}));for(var C=l+1;C<t.length;C+=1){var w=j.getModelIndex(C,i),b=t[w];a.push(this.renderImmovableItem(b.name))}return a})),Nt(this,"renderImmovableItem",Pe(t=>m.createElement("div",{className:"visibility-ordering-list-item immovable",key:t},m.createElement("div",{className:"column-item"},m.createElement("span",{className:"column-name"},t))))),this.handleSearchInputChange=this.handleSearchInputChange.bind(this),this.searchColumns=this.searchColumns.bind(this),this.handleItemClick=this.handleItemClick.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupDelete=this.handleGroupDelete.bind(this),this.handleGroupNameChange=this.handleGroupNameChange.bind(this),this.handleGroupCreate=this.handleGroupCreate.bind(this),this.validateGroupName=this.validateGroupName.bind(this),this.addColumnToSelected=this.addColumnToSelected.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.state={selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""},this.list=null}componentWillUnmount(){this.debouncedSearchColumns.cancel()}resetVisibilityOrdering(){var{model:e,onReset:t,onMovedColumnsChanged:r,onColumnHeaderGroupChanged:i}=this.props;this.setState({selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""}),t(),i(e.initialColumnHeaderGroups),r(e.initialMovedColumns)}resetSelection(){this.setState({selectedColumns:new Set,lastSelectedColumn:""})}handleSearchInputChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.debouncedSearchColumns.cancel(),this.resetSelection();return}this.debouncedSearchColumns(t)}searchColumns(e){var t=Dt(this.getTreeItems()),r=t.filter(s=>{var u,d,{id:c,data:h}=s;return!((u=(d=h.group)===null||d===void 0?void 0:d.isNew)!==null&&u!==void 0&&u)&&c.toLowerCase().includes(e.toLowerCase())}),i=r.map(s=>{var{id:u}=s;return u}),a=t.findIndex(s=>{var{id:u}=s;return u.toLowerCase().includes(e.toLowerCase())});if(this.addColumnToSelected(i,!1),i.length>0){var o,l=(o=this.list)===null||o===void 0?void 0:o.querySelectorAll(".item-wrapper")[a];l==null||l.scrollIntoView({block:"center"})}}moveSelectedColumns(e){var{columnHeaderGroups:t}=this.props,{selectedColumns:r}=this.state,i=Dt(this.getTreeItems()),a=this.getFirstMovableIndex(),o=this.getLastMovableIndex();_(a),_(o);var l=this.getSelectedParentItems(),s=e===$e.MOVE_OPTIONS.UP||e===$e.MOVE_OPTIONS.TOP;s||l.reverse();for(var u=[],d=t,c=function(){var{id:g,parentId:f,depth:p,data:{visibleIndex:C}}=l[h];switch(e){case $e.MOVE_OPTIONS.TOP:{u=j.moveItemOrRange(C,a,u,!0);var w=Array.isArray(C)?C[1]-C[0]+1:1;a+=w,d=Tr(l[h],null,d);break}case $e.MOVE_OPTIONS.BOTTOM:{u=j.moveItemOrRange(C,o,u,!0);var b=Array.isArray(C)?C[1]-C[0]+1:1;o-=b,d=Tr(l[h],null,d);break}case $e.MOVE_OPTIONS.UP:{var E=i.findIndex(z=>z.id===g),T=i.map((z,G)=>G<E&&!r.has(z.id)).lastIndexOf(!0),S=i[T];if(S!=null&&S.parentId!==f)if(Math.abs(S.depth-p)>1){var O=i.map((z,G)=>G<T&&z.depth===p).lastIndexOf(!0),F=i[O];d=Tr(l[h],F.id,d)}else d=Tr(l[h],S.parentId,d);else{var R=Ie(Array.isArray(C)?C[0]-1:C-1,a,o);u=j.moveItemOrRange(C,R,u,!1);var D=Array.isArray(C)?C[1]-C[0]+1:1;a+=D}break}case $e.MOVE_OPTIONS.DOWN:{var P=i.findIndex(z=>z.id===g),I=i.find((z,G)=>G>P&&!r.has(z.id));if((I==null?void 0:I.parentId)!==f){var A,x=i.find(z=>z.id===f);d=Tr(l[h],(A=x==null?void 0:x.parentId)!==null&&A!==void 0?A:null,d);break}else if((I==null?void 0:I.children.length)>0){d=Tr(l[h],I.id,d);break}var H=Ie(Array.isArray(C)?C[0]+1:C+1,a,o);u=j.moveItemOrRange(C,H,u,!1);var W=Array.isArray(C)?C[1]-C[0]+1:1;o-=W;break}}},h=0;h<l.length;h+=1)c();return{newMoves:u,groups:d}}handleMoveColumns(e){var{onMovedColumnsChanged:t,movedColumns:r,onColumnHeaderGroupChanged:i}=this.props,{newMoves:a,groups:o}=this.moveSelectedColumns(e),l;e===$e.MOVE_OPTIONS.TOP&&(l=()=>{var s,u;(s=this.list)===null||s===void 0||(u=s.parentElement)===null||u===void 0||u.scroll({top:0})}),e===$e.MOVE_OPTIONS.BOTTOM&&(l=()=>{var s,u;(s=this.list)===null||s===void 0||(u=s.parentElement)===null||u===void 0||u.scroll({top:this.list.parentElement.scrollHeight})}),i(o),a.length>0&&t(r.concat(a),l)}getSortMoves(e,t,r){var i=[...e],a=t===$e.SORTING_OPTIONS.ASC;i.sort((h,v)=>{var g=h.id.toUpperCase(),f=v.id.toUpperCase();return Sd.sort(g,f,a)});for(var o=[...r],l=Math.min(...i.flatMap(h=>{var{modelIndex:v}=h.data;return Array.isArray(v)?j.getVisibleIndexes(v,o):j.getVisibleIndex(v,o)})),s=0;s<i.length;s+=1){var u=i[s],{modelIndex:d}=u.data,c=Array.isArray(d)?j.getVisibleIndexes(d,o):j.getVisibleIndex(d,o);o=Array.isArray(c)?j.moveRange([Math.min(...c),Math.max(...c)],l,o,!0):j.moveItem(c,l,o),Array.isArray(c)&&(o=this.getSortMoves(u.children,t,o)),l+=Array.isArray(d)?d.length:1}return o}handleSortColumns(e){var{model:t,onMovedColumnsChanged:r}=this.props,i=this.getSortMoves(this.getTreeItems(),e,t.initialMovedColumns);r(i)}handleItemClick(e,t){if(t.stopPropagation(),!(t.target instanceof HTMLElement&&(t.target.tagName==="BUTTON"||t.target.tagName==="INPUT"))){t.currentTarget.focus();var{selectedColumns:r,lastSelectedColumn:i}=this.state,a=j.isModifierKeyDown(t),o=t.shiftKey,l=r.has(e),s=[e];if(l&&a){this.removeColumnFromSelected(e);return}var u=Dt(this.getTreeItems());if(l&&!o&&i===e){var d=u.find(g=>{var{id:f}=g;return f===e});_(d);var c=Dt(d.children).length;if(c+1===r.size){this.resetSelection();return}}if(o){var h=u.findIndex(g=>g.id===e),v=u.findIndex(g=>g.id===i);s.push(...u.slice(Math.min(v,h),Math.max(v,h)+1).map(g=>g.id))}this.addColumnToSelected(s,a||o),this.setState({lastSelectedColumn:e})}}addColumnToSelected(e,t){var{selectedColumns:r}=this.state,i=new Set(t?[...r.values()].concat(e):e),a=Dt(this.getTreeItems());a.forEach(o=>{var{id:l,children:s}=o;i.has(l)&&s.forEach(u=>i.add(u.id))}),this.setState({selectedColumns:i})}removeColumnFromSelected(e){var{selectedColumns:t}=this.state,r=Dt(this.getTreeItems()),i=r.find(l=>{var{id:s}=l;return s===e});_(i);var a=r.find(l=>{var{id:s}=l;return s===i.parentId});Dt(i==null?void 0:i.children).forEach(l=>t.delete(l.id));for(var o=function(){t.delete(a.id);var s=a.parentId;a=r.find(u=>{var{id:d}=u;return d===s})};a!=null;)o();t.delete(e),this.setState({selectedColumns:new Set(t)})}handleDragStart(e){var{selectedColumns:t}=this.state;t.has(e)||this.addColumnToSelected([e],!1)}handleDragEnd(e,t){var{movedColumns:r,onMovedColumnsChanged:i,columnHeaderGroups:a,onColumnHeaderGroupChanged:o}=this.props,l=this.getSelectedParentItems(),s=Dt(this.getTreeItems()).map((v,g)=>si(si({},v),{},{index:g})),u=this.getFirstMovableIndex(),d=this.getLastMovableIndex();_(u),_(d);var{groups:c,movedColumns:h}=Pp(e,t,r,a,s,l,u,d);o(c),i(h)}handleGroupNameChange(e,t){var{columnHeaderGroups:r,onColumnHeaderGroupChanged:i}=this.props,a=[...r],o=e.name,l=a.findIndex(h=>{var{name:v}=h;return v===o}),s=a[l];_(s);var u=new Pt(s);u.name=t,a.splice(l,1,u);var d=a.findIndex(h=>{var{name:v}=h;return v===u.parent});if(d>=0){var c=new Pt(a[d]);c.removeChildren([o]),c.addChildren([t]),a.splice(d,1,c)}i(a)}handleGroupDelete(e){var{columnHeaderGroups:t,onColumnHeaderGroupChanged:r}=this.props,i=t.filter(l=>l.name!==e.name),a=i.findIndex(l=>l.name===e.parent);if(a>=0){var o=new Pt(i[a]);o.addChildren(e.children),o.removeChildren([e.name]),i.splice(a,1,o)}r(i)}handleGroupCreate(){var{movedColumns:e,onMovedColumnsChanged:t,onColumnHeaderGroupChanged:r}=this.props,{newMoves:i,groups:a}=this.moveSelectedColumns($e.MOVE_OPTIONS.TOP),o=a.filter(c=>!c.isNew),l=this.getSelectedParentItems(),s=l.map(c=>c.data.modelIndex).flat().filter(c=>c>=0),u="".concat(Pt.NEW_GROUP_PREFIX,"-").concat(Date.now()),d=new Pt({name:u,children:l.map(c=>{var{id:h}=c;return h}),depth:0,childIndexes:[...new Set(s)]});t(e.concat(i),()=>{var c,h;(c=this.list)===null||c===void 0||(h=c.parentElement)===null||h===void 0||h.scroll({top:0})}),r(o.concat([d])),this.resetSelection()}validateGroupName(e){var{model:t,columnHeaderGroups:r}=this.props,{columns:i}=t;return ro.isValidColumnName(e)?i.some(a=>{var{name:o}=a;return o===e})||r.some(a=>{var{name:o}=a;return o===e})?"Duplicate name":"":"Invalid name"}getFirstMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedFirstMovableIndex(e,e.columns,t)}getLastMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedLastMovableIndex(e,e.columns,t)}getTreeItems(){var{model:e,movedColumns:t,hiddenColumns:r,columnHeaderGroups:i}=this.props,{selectedColumns:a}=this.state;return this.memoizedGetTreeItems(e.columns,t,i,r,a)}getSelectedParentItems(){var{selectedColumns:e}=this.state,t=Dt(this.getTreeItems());return t.filter(r=>{var{id:i,parentId:a}=r;return e.has(i)&&!e.has(a??"")})}render(){var{model:e,hiddenColumns:t,onColumnVisibilityChanged:r}=this.props,{selectedColumns:i,searchFilter:a}=this.state,o=i.size>0,l=this.getTreeItems(),s=new Map(Dt(l).map(f=>[f.id,f.data.modelIndex])),u=new Set(t),d=[...new Set(o?[...i.values()].map(f=>s.get(f)).filter(f=>f!=null).flat():l.map(f=>f.data.modelIndex).flat())],c=d.some(f=>!u.has(f)),h=c?"Hide All":"Show All",v=c?"Hide Selected":"Show Selected",g=this.makeVisibilityOrderingList(e.columns,l);return m.createElement("div",{role:"menu",className:"visibility-ordering-builder",tabIndex:0},m.createElement("div",{className:"top-menu"},m.createElement(Z,{kind:"ghost",className:"toggle-visibility-btn",onClick:()=>{r(d,!c)},icon:c?Xa:ns,tooltip:"Toggle column visibility"},o?v:h),m.createElement(eo,{className:"visibility-search",value:a,matchCount:a?i.size:void 0,onChange:this.handleSearchInputChange})),m.createElement("div",{className:"top-menu"},m.createElement(Z,{kind:"ghost",icon:Vu,tooltip:"Reset to default",onClick:()=>{this.resetVisibilityOrdering()}},"Reset"),m.createElement("span",{className:"vertical-divider"}),m.createElement(Z,{kind:"ghost",icon:ja,tooltip:"Sort ascending",onClick:()=>{this.handleSortColumns($e.SORTING_OPTIONS.ASC)}}),m.createElement(Z,{kind:"ghost",icon:Ka,tooltip:"Sort descending",onClick:()=>{this.handleSortColumns($e.SORTING_OPTIONS.DSC)}}),m.createElement("span",{className:"vertical-divider"}),m.createElement(Z,{kind:"ghost",tooltip:"Create group from selection",disabled:!o,onClick:this.handleGroupCreate},m.createElement("span",{className:"fa-layers",style:{marginRight:"0.75rem"}},m.createElement(ue,{mask:$u,icon:Ya,transform:"right-7 down-5 shrink-6"}),m.createElement(ue,{icon:Gu,transform:"right-8 down-6 shrink-8"})),"Group"),m.createElement("span",{className:"vertical-divider"}),m.createElement(Z,{kind:"ghost",icon:Wu,tooltip:"Move selection up",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.UP)},disabled:!o}),m.createElement(Z,{kind:"ghost",icon:zu,tooltip:"Move selection down",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.DOWN)},disabled:!o}),m.createElement(Z,{kind:"ghost",icon:ju,tooltip:"Move selection to top",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.TOP)},disabled:!o}),m.createElement(Z,{kind:"ghost",icon:Ku,tooltip:"Move selection to bottom",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.BOTTOM)},disabled:!o})),m.createElement("div",{role:"menu",className:ie("visibility-ordering-list")},m.createElement("div",{className:"column-list",ref:f=>{this.list=f}},g)))}}Nt($e,"SORTING_OPTIONS",{DSC:"DSC",ASC:"ASC"});Nt($e,"MOVE_OPTIONS",{TOP:"TOP",BOTTOM:"BOTTOM",UP:"UP",DOWN:"DOWN"});const Lp=$e;function kp(n,e,t){return e=_p(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _p(n){var e=Hp(n,"string");return typeof e=="symbol"?e:String(e)}function Hp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class xp extends y.PureComponent{static createSearchFilter(e,t,r,i,a){var o=a?i.filter(u=>!r.includes(u.name)).map(u=>u.name):r;if(t&&o.length>0){var l=e.FilterValue.ofString(t),s=o.length===i.length?e.FilterCondition.search(l):e.FilterCondition.search(l,i.filter(u=>o.includes(u.name)).map(u=>u.filter()));return s}}constructor(e){super(e),kp(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=m.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var{onChange:t,selectedColumns:r,invertSelection:i}=this.props;t(e.target.value,r,i)}sendColumnChange(e,t){var{onChange:r,value:i}=this.props;r(i,e,t)}setInvertSelection(e){var{onChange:t,value:r}=this.props;t(r,[],e)}toggleColumn(e){var{selectedColumns:t,invertSelection:r}=this.props;if(t.includes(e))this.sendColumnChange(t.filter(a=>a!==e),r);else{var i=t.slice();i.push(e),this.sendColumnChange(i,r)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var{columns:e}=this.props;this.sendColumnChange(e.filter(t=>M.isNumberType(t.type)).map(t=>t.name),!1)}render(){var{value:e,selectedColumns:t,invertSelection:r,columns:i}=this.props,{isConfigureColumnsShown:a}=this.state,o=t.length===0&&r===!0||t.length===i.length&&r===!1,l=t.length===0&&r===!1||t.length===i.length&&r===!0,s;return o?s=m.createElement(m.Fragment,null,m.createElement(ue,{icon:wi,mask:oa,transform:"shrink-2 down-5 right-7"}),m.createElement(ue,{icon:Yu,className:"text-primary",transform:"shrink-4 down-5 right-7"})):l?s=m.createElement(m.Fragment,null,m.createElement(ue,{icon:Ya,mask:oa,transform:"shrink-1 down-5 right-7"}),m.createElement(ue,{icon:Ao,className:"text-danger",transform:"shrink-4 down-5 right-7"})):s=m.createElement(m.Fragment,null,m.createElement(ue,{icon:wi,mask:oa,transform:"shrink-2 down-5 right-7"}),m.createElement(ue,{icon:qu,className:"text-primary",transform:"shrink-4 down-5 right-7"})),m.createElement("div",{className:"cross-column-container"},m.createElement(eo,{className:"cross-column-search",placeholder:"Search Data...",value:e,onChange:this.handleSearchValueChange,ref:this.searchField}),m.createElement("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{a?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})}},m.createElement("div",{className:"fa-layers"},s),m.createElement(Gt,null,"Configure Columns"),m.createElement(ls,{isShown:a,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0},m.createElement("div",{className:"cross-column-popup"},"Searched Columns",m.createElement("div",{className:"cross-column-scroll"},i.map(u=>m.createElement(m.Fragment,{key:u.name},m.createElement(Fr,{className:"cross-column-checkbox",checked:r?!t.includes(u.name):t.includes(u.name),onChange:()=>this.toggleColumn(u.name)},u.name),u.type.substring(u.type.lastIndexOf(".")+1)))),m.createElement("div",{className:"cross-column-button-bar"},m.createElement("button",{type:"button",className:"btn btn-link",onClick:this.selectAll},"Select All"),m.createElement("button",{type:"button",className:"btn btn-link",onClick:this.clear},"Clear"),m.createElement("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers},"Numbers Only")),l&&m.createElement("p",{className:"text-danger"},m.createElement(ue,{icon:Ao})," Select at least one column to search.")))))}}const ui=xp;function Vr(n,e,t){return e=Bp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bp(n){var e=Up(n,"string");return typeof e=="symbol"?e:String(e)}function Up(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fr=Fe.module("PartitionSelectorSearch"),Vp=150;class hn extends y.Component{static handleError(e){e instanceof as||fr.error(e)}constructor(e){super(e),Vr(this,"itemList",void 0),Vr(this,"searchInput",void 0),Vr(this,"timer",void 0),Vr(this,"debounceUpdateFilter",Jt(()=>{this.updateFilter()},Vp)),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleInputFocus=this.handleInputFocus.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleListKeydown=this.handleListKeydown.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTextChange=this.handleTextChange.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.itemList=null,this.searchInput=null,this.timer=null,this.state={offset:0,itemCount:0,items:[],text:"",isLoading:!0}}componentDidMount(){this.startListening()}componentDidUpdate(e,t){var{isLoading:r,itemCount:i}=this.state,{onListResized:a}=this.props;(i!==t.itemCount||r!==t.isLoading)&&a()}componentWillUnmount(){this.debounceUpdateFilter.cancel(),this.stopListening()}handleKeyDown(e){if(this.itemList==null)return!1;var{items:t,itemCount:r}=this.state;switch(e.key){case"Enter":{var i=null;if(t.length>0)i=t[0].value;else{var{text:a}=this.state;i=a.trim()}if(i.length>0){var{onSelect:o}=this.props;o(i)}return e.stopPropagation(),e.preventDefault(),!0}case"ArrowDown":return r>0&&this.itemList.focusItem(1),e.stopPropagation(),e.preventDefault(),!0;default:return!1}}handleListKeydown(e){switch(e.key){case"Escape":break;default:this.focus();break}}handleFilterChange(){fr.debug2("handleFilterChange");var{table:e}=this.props,t=e.size;this.setState({itemCount:t,isLoading:!0})}handleInputFocus(){this.itemList&&this.itemList.focusItem(0)}handleSelect(e){fr.debug2("handleSelect",e);var{onSelect:t}=this.props,{offset:r,items:i}=this.state,a=e-r;if(a<0||i.length<=a){fr.error("No data for item",e);return}var{value:o}=i[a];t(o)}handleTableUpdate(e){for(var t=e.detail,{offset:r}=t,i=[],{getFormattedString:a,table:o}=this.props,l=o.columns[0],s=0;s<t.rows.length;s+=1){var u=t.rows[s],d=u.get(l),c=a(d,l.type,l.name);i.push({displayValue:c,value:d})}var h=o.size;fr.debug2("handleTableUpdate",h,r,i.length),this.setState({itemCount:h,items:i,offset:r,isLoading:!1})}handleTextChange(e){fr.debug2("handleTextChange");var{value:t}=e.target;this.setState({text:t}),this.debounceUpdateFilter()}handleViewportChange(e,t){fr.debug2("handleViewportChange",e,t);var r=Math.max(1,t-e),i=Math.max(0,e-r),a=t+r,{table:o}=this.props;o.setViewport(i,a)}focus(){this.searchInput&&this.searchInput.focus()}startListening(){var{dh:e,initialPageSize:t,table:r}=this.props;r.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),r.addEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange),r.setViewport(0,t)}stopListening(){var{dh:e,table:t}=this.props;t.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),t.removeEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange)}updateFilter(){var{dh:e,initialPageSize:t,table:r}=this.props,{text:i}=this.state,a=i.trim(),o=[];if(a.length>0){var l=r.columns[0],s=l.filter().invoke("matches",e.FilterValue.ofString("(?s)(?i).*\\Q".concat(a,"\\E.*")));o.push(s)}fr.debug2("updateFilter",o),r.applyFilter(o),r.setViewport(0,t)}render(){var{isLoading:e,itemCount:t,items:r,offset:i,text:a}=this.state,o=Math.min(t,hn.MAX_VISIBLE_ITEMS)*Ea.DEFAULT_ROW_HEIGHT+11;return m.createElement("div",{className:"iris-grid-partition-selector-search"},m.createElement("div",{className:"search-container"},m.createElement("input",{type:"text",ref:l=>{this.searchInput=l},value:a,placeholder:"Available Partitions",onChange:this.handleTextChange,onFocus:this.handleInputFocus,onKeyDown:this.handleKeyDown,className:"form-control input-partition"})),!e&&t>0&&m.createElement("div",{className:"iris-grid-partition-selector-search-list",onKeyDown:this.handleListKeydown,role:"presentation",style:{height:o}},m.createElement(Ea,{ref:l=>{this.itemList=l},itemCount:t,items:r,offset:i,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange})),!e&&t===0&&m.createElement("div",{className:"iris-grid-partition-selector-search-empty"},"No results"),e&&m.createElement("div",{className:"iris-grid-partition-selector-loading"},m.createElement(zr,null)," Loading..."))}}Vr(hn,"MAX_VISIBLE_ITEMS",12);Vr(hn,"defaultProps",{initialPageSize:100,onSelect:()=>{},onListResized:()=>{}});Vr(hn,"propTypes",{getFormattedString:Oe.func.isRequired,table:Oe.shape({addEventListener:Oe.func.isRequired,removeEventListener:Oe.func.isRequired,columns:Oe.arrayOf(Oe.shape({name:Oe.string.isRequired,type:Oe.string.isRequired,filter:Oe.func.isRequired})),size:Oe.number.isRequired,applyFilter:Oe.func.isRequired,setViewport:Oe.func.isRequired}).isRequired,initialPageSize:Oe.number,onSelect:Oe.func,onListResized:Oe.func});const $p=hn;function gi(n,e,t){return e=Gp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gp(n){var e=Wp(n,"string");return typeof e=="symbol"?e:String(e)}function Wp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var tn=Fe.module("IrisGridPartitionSelector"),zp=250;class Us extends y.Component{constructor(e){super(e),gi(this,"searchMenu",void 0),gi(this,"selectorSearch",void 0),gi(this,"debounceUpdate",Jt(()=>{this.sendUpdate()},zp)),this.handleAppendClick=this.handleAppendClick.bind(this),this.handleCloseClick=this.handleCloseClick.bind(this),this.handleIgnoreClick=this.handleIgnoreClick.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this),this.handlePartitionListResized=this.handlePartitionListResized.bind(this),this.handleSearchOpened=this.handleSearchOpened.bind(this),this.handleSearchClosed=this.handleSearchClosed.bind(this),this.searchMenu=null,this.selectorSearch=null;var{partition:t}=e;this.state={partition:t}}componentWillUnmount(){this.debounceUpdate.cancel()}handleAppendClick(){tn.debug2("handleAppendClick");var{onAppend:e}=this.props,{partition:t}=this.state;e(t)}handleCloseClick(){tn.debug2("handleCloseClick"),this.sendDone()}handleIgnoreClick(){tn.debug2("handleIgnoreClick"),this.sendFetchAll()}handlePartitionChange(e){tn.debug2("handlePartitionChange");var{value:t}=e.target;this.setState({partition:t}),this.debounceUpdate()}handlePartitionSelect(e){this.searchMenu&&this.searchMenu.closeMenu(),this.setState({partition:e},()=>{this.sendUpdate()})}handlePartitionListResized(){this.searchMenu&&this.searchMenu.scheduleUpdate()}handleSearchClosed(){var{table:e}=this.props;e.applyFilter([])}handleSearchOpened(){this.selectorSearch&&this.selectorSearch.focus()}sendDone(){this.debounceUpdate.flush();var{onDone:e}=this.props;e()}sendUpdate(){tn.debug2("sendUpdate");var{onChange:e}=this.props,{partition:t}=this.state;e(t)}sendFetchAll(){tn.debug2("sendFetchAll"),this.debounceUpdate.cancel();var{onFetchAll:e}=this.props;e()}render(){var{columnName:e,dh:t,getFormattedString:r,onDone:i,table:a}=this.props,{partition:o}=this.state,l=m.createElement($p,{dh:t,key:"search",getFormattedString:r,table:a,onSelect:this.handlePartitionSelect,onListResized:this.handlePartitionListResized,ref:s=>{this.selectorSearch=s}});return m.createElement("div",{className:"iris-grid-partition-selector"},m.createElement("div",{className:"status-message"},m.createElement("span",null,'Filtering "',e,'" partition to')),m.createElement("div",{className:"input-group"},m.createElement("input",{type:"text",value:o,onChange:this.handlePartitionChange,className:"form-control input-partition"}),m.createElement("div",{className:"input-group-append"},m.createElement("button",{type:"button",className:"btn btn-outline-primary"},m.createElement(ue,{icon:rs}),m.createElement(Gt,null,"Partitions"),m.createElement(ss,{ref:s=>{this.searchMenu=s},actions:[{menuElement:l}],onMenuOpened:this.handleSearchOpened,onMenuClosed:this.handleSearchClosed})))),m.createElement("div",{className:"iris-grid-partition-selector-spacer"}),m.createElement("button",{type:"button",className:"btn btn-outline-primary btn-ignore",onClick:this.handleIgnoreClick},"Ignore & Fetch All"),m.createElement("button",{type:"button",className:"btn btn-outline-primary btn-append",onClick:this.handleAppendClick},"Append Command"),m.createElement("button",{type:"button",className:"btn btn-link btn-link-icon btn-close",onClick:i},m.createElement(ue,{icon:Qa})))}}gi(Us,"defaultProps",{onAppend:()=>{},onChange:()=>{},onFetchAll:()=>{},onDone:()=>{},partition:""});const jp=Us;function Kp(n,e,t){return e=Yp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yp(n){var e=qp(n,"string");return typeof e=="symbol"?e:String(e)}function qp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Xp=Fe.module("SelectDistinctBuilder");class Vs extends y.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var{model:t,selectDistinctColumns:r}=this.props;this.state={inputs:r.length>0?[...r]:[""],columns:t.originalColumns}}componentDidUpdate(e,t){var{inputs:r}=this.state,{onChange:i}=this.props;if(t.inputs!==r){var a=r.filter(o=>o!=="");Vt(t.inputs.filter(o=>o!==""),a)||i(a)}}handleAddColumnClick(){this.setState(e=>{var{inputs:t}=e;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var{inputs:r}=t;return{inputs:r.length===1&&e===0?[""]:r.filter((i,a)=>e!==a)}})}handleDropdownChanged(e,t){Xp.debug("handleDropdownChanged",e,t);var{value:r}=t.target;this.setState(i=>{var{inputs:a}=i,o=[...a];return o[e]=r,{inputs:o}})}renderInputs(){var{columns:e,inputs:t}=this.state;return t.map((r,i)=>{var a=e.filter(o=>{var{name:l}=o;return l===r||!t.includes(l)}).map(o=>{var{name:l}=o;return m.createElement("option",{value:l,key:l},l)});return m.createElement("div",{className:"form-inline px-3 pb-3",key:i},m.createElement("select",{className:"form-control custom-select col",value:r,onChange:o=>this.handleDropdownChanged(i,o)},m.createElement("option",{value:""},"Select a column"),a),(t.length>1||r!=="")&&m.createElement(Z,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(i)},icon:m.createElement(ue,{icon:Pr,transform:"grow-3"}),tooltip:"Delete column"}))})}render(){var{columns:e,inputs:t}=this.state,r=t.length>=e.length;return m.createElement("div",{role:"presentation",className:"select-distinct-builder-container h-100"},m.createElement("div",{className:"select-distinct-title"},"Display Unique Values From"),this.renderInputs(),m.createElement("hr",null),m.createElement("div",{className:"pt-1 px-3"},m.createElement(Z,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:r,icon:dn},"Add Additional Column")),m.createElement("div",{className:"select-distinct-builder-footer"},m.createElement("div",{className:"select-distinct-builder-hint"},"Display only unique values from the selected table columns. Note that this will reset any filters and display only the selected columns.")))}}Kp(Vs,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});const Qp=Vs;function mo(n){var{items:e,onChange:t=()=>{}}=n;return m.createElement(us,{items:Array.from(e.entries()).map(r=>{var[i,a]=r;return{title:mo.getAdvancedSettingsTitleForKey(i),isOn:a,onChange:o=>t(i,o)}})})}mo.getAdvancedSettingsTitleForKey=n=>{switch(n){case sn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case sn.LINK_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from an incoming link filter"}};function _n(){return _n=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},_n.apply(this,arguments)}var Ll=Fe.module("ConditionalFormattingMenu"),va=()=>{};function Zp(n){var{column:{type:e}}=n;if(M.isNumberType(e))return n.condition===re.IS_NULL||n.condition===re.IS_NOT_NULL?"":"".concat(n.value);if(M.isCharType(e))return n.condition===he.IS_NULL||n.condition===he.IS_NOT_NULL?"":"".concat(n.value);if(M.isStringType(e))return n.condition===ge.IS_NULL||n.condition===ge.IS_NOT_NULL?"":'"'.concat(n.value,'"');if(M.isDateType(e))return n.condition===he.IS_NULL||n.condition===he.IS_NOT_NULL?"":"".concat(n.value);if(M.isBooleanType(e))return"";throw new Error("Invalid column type ".concat(e," in getRuleValue"))}function Jp(n){return M.isNumberType(n.column.type)&&n.condition===re.IS_BETWEEN?"".concat(n.start," < ").concat(n.column.name," < ").concat(n.end):"".concat(n.column.name," ").concat(wm(n.column.type,n.condition),`
13
- `).concat(Zp(n))}function eC(n){var{rules:e=[],onChange:t=va,onCreate:r=va,onSelect:i=va}=n,a=y.useCallback((u,d,c)=>{u.stopPropagation(),Ll.debug("Rule clicked",d,c),i(c)},[i]),o=y.useCallback((u,d,c)=>{u.stopPropagation(),Ll.debug("Delete button clicked",d,c);var h=[...e];h.splice(c,1),t(h)},[t,e]),l=y.useCallback(u=>{u.stopPropagation()},[]),s=y.useCallback(u=>{if(Wt.stopDragging(),u.destination!=null){var d=u.source.index,c=u.destination.index,h=[...e],v=e[d];h.splice(d,1),h.splice(c,0,v),t(h)}},[t,e]);return m.createElement("div",{className:"conditional-formatting-rules"},m.createElement(Ii,{onDragStart:Wt.startDragging,onDragEnd:s},m.createElement(Ga,{droppableId:"droppable-custom-columns"},(u,d)=>m.createElement("div",_n({ref:u.innerRef},u.droppableProps,{className:ie("droppable-container",{dragging:d.draggingFromThisWith})}),e.length===0&&m.createElement("div",{className:"text-muted pl-2"},"No formats defined"),e.map((c,h)=>m.createElement(es,{key:"".concat(h,"-").concat(c.type),draggableId:"".concat(h,"-").concat(c.type),index:h,disableInteractiveElementBlocking:!0},(v,g)=>m.createElement("div",_n({role:"menuitem",tabIndex:0,onClick:f=>a(f,c,h),className:ie("draggable-container",{dragging:g.isDragging}),ref:v.innerRef},v.draggableProps),m.createElement("div",{className:"conditional-formatting-list-item"},m.createElement("div",{className:"formatting-item"},m.createElement("div",{className:"rule-icon"},m.createElement("span",{className:"rule-icon-bg",style:{backgroundColor:Ti(c.config.style),color:yi(c.config.style)}},c.type===pt.ROWS?"row":"col")),m.createElement("div",{className:"rule-title"},Jp(c.config)),m.createElement(Z,{kind:"ghost",className:"ml-1 px-2",onClick:f=>o(f,c,h),icon:Pr,tooltip:"Delete rule"}),m.createElement("button",_n({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:l},v.dragHandleProps),m.createElement(Gt,null,"Drag to re-order"),m.createElement(ue,{icon:qa}))))))),u.placeholder))),m.createElement("hr",null),m.createElement(Z,{kind:"ghost",onClick:r,icon:dn},"Add New Rule"))}var kr=Fe.module("ConditionEditor"),tC=()=>{},rC=[re.IS_EQUAL,re.IS_NOT_EQUAL,re.IS_BETWEEN,re.GREATER_THAN,re.GREATER_THAN_OR_EQUAL,re.LESS_THAN,re.LESS_THAN_OR_EQUAL,re.IS_NULL,re.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},im(n))),nC=[ge.IS_EXACTLY,ge.IS_NOT_EXACTLY,ge.CONTAINS,ge.DOES_NOT_CONTAIN,ge.STARTS_WITH,ge.ENDS_WITH,ge.IS_NULL,ge.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},am(n))),iC=[he.IS_EXACTLY,he.IS_NOT_EXACTLY,he.IS_BEFORE,he.IS_BEFORE_OR_EQUAL,he.IS_AFTER,he.IS_AFTER_OR_EQUAL,he.IS_NULL,he.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},om(n))),aC=[Ke.IS_TRUE,Ke.IS_FALSE,Ke.IS_NULL,Ke.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},lm(n))),oC=[Ue.IS_EQUAL,Ue.IS_NOT_EQUAL,Ue.IS_NULL,Ue.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},sm(n)));function lC(n,e,t,r){return n===re.IS_NULL||n===re.IS_NOT_NULL||n===re.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&r!=null&&r!==""&&!Number.isNaN(Number.parseFloat(r))||n!==re.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function sC(n,e,t,r,i,a,o){switch(n){case re.IS_EQUAL:case re.IS_NOT_EQUAL:case re.GREATER_THAN:case re.GREATER_THAN_OR_EQUAL:case re.LESS_THAN:case re.LESS_THAN_OR_EQUAL:return m.createElement("input",{type:"number",className:"form-control",placeholder:"Enter value",value:i??"",onChange:e});case re.IS_BETWEEN:return m.createElement("div",{className:"d-flex flex-row"},m.createElement("input",{type:"number",className:"form-control d-flex mr-2",placeholder:"Start value",value:a??"",onChange:t}),m.createElement("input",{type:"number",className:"form-control d-flex",placeholder:"End value",value:o??"",onChange:r}));case re.IS_NULL:case re.IS_NOT_NULL:return null}}function uC(n,e,t){switch(n){case ge.IS_NULL:case ge.IS_NOT_NULL:return null;default:return m.createElement("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function dC(n,e,t){switch(n){case he.IS_NULL:case he.IS_NOT_NULL:return null;default:return m.createElement("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function cC(){return null}function hC(n,e,t){switch(n){case Ue.IS_NULL:case Ue.IS_NOT_NULL:return null;default:return m.createElement("input",{type:"text",className:"form-control",maxLength:1,placeholder:"Enter value",value:t??"",onChange:e})}}function $s(n){var{column:e,config:t,dh:r,onChange:i=tC}=n,a=e.type,[o,l]=y.useState(a),[s,u]=y.useState(t.condition),[d,c]=y.useState(t.value),[h,v]=y.useState(t.start),[g,f]=y.useState(t.end);a!==o&&(u(Es(a)),c(Ts(a)),v(void 0),f(void 0),l(a));var p=y.useMemo(()=>{if(a===void 0)return[];if(M.isNumberType(a))return rC;if(M.isCharType(a))return oC;if(M.isStringType(a))return nC;if(M.isDateType(a))return iC;if(M.isBooleanType(a))return aC},[a]),C=y.useCallback(S=>{var{value:O}=S.target;kr.debug("handleConditionChange",O),u(O)},[]),w=y.useCallback(S=>{var{value:O}=S.target;kr.debug("handleValueChange",O),c(O)},[]),b=y.useCallback(S=>{var{value:O}=S.target;kr.debug("handleStartValueChange",O),v(O)},[]),E=y.useCallback(S=>{var{value:O}=S.target;kr.debug("handleEndValueChange",O),f(O)},[]);y.useEffect(function(){var O=!0;s===void 0?(kr.debug("Unable to create formatting rule. Condition is not selected."),O=!1):M.isNumberType(e.type)&&!lC(s,d,h,g)?(kr.debug("Unable to create formatting rule. Invalid value",d),O=!1):M.isDateType(e.type)&&!Sm(r,s,d)&&(kr.debug("Unable to create formatting rule. Invalid date condition",d),O=!1),i({condition:s,value:d,start:h,end:g},O)},[i,e.type,r,s,d,h,g]);var T=y.useMemo(()=>{if(a===void 0)return null;if(M.isNumberType(a))return sC(s,w,b,E,d,h,g);if(M.isCharType(a))return hC(s,w,d);if(M.isStringType(a))return uC(s,w,d);if(M.isDateType(a))return dC(s,w,d);if(M.isBooleanType(a))return cC()},[a,s,d,h,g,w,b,E]);return m.createElement("div",{className:"condition-editor mb-2"},m.createElement("select",{value:s,"data-testid":"condition-select",className:"custom-select mb-2",onChange:C},p),T)}var mC=Fe.module("StyleEditor"),vC="#fcfcfa",gC="#f0f0ee",fC="#1a171a",pC=200,CC=()=>{};function Gs(n){var e,t,{config:r,onChange:i=CC}=n,[a,o]=y.useState(r.type),[l,s]=y.useState((e=(t=r.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:vC),[u,d]=y.useState(!1),[c,h]=y.useState(pC),v=y.useRef(null),g=y.useCallback(T=>{var{value:S}=T.target;mC.debug("handleBackgroundChange",S),s(S)},[]),f=y.useCallback(()=>{u&&d(!1)},[u]),p=y.useCallback(()=>{u||w(),d(!u)},[u]),C=y.useMemo(()=>[fe.NO_FORMATTING,fe.POSITIVE,fe.NEGATIVE,fe.WARN,fe.NEUTRAL,fe.ACCENT_1,fe.ACCENT_2,fe.CUSTOM],[]);function w(){v.current&&h(v.current.getBoundingClientRect().width)}y.useEffect(function(){i({type:a,customConfig:{color:cs.isDark(l)?gC:fC,background:l}})},[i,a,l]);var b=y.useCallback(()=>{for(var T=[],S=function(){var R=C[O],D="option-".concat(O,"-").concat(R);T.push(m.createElement(Z,{key:D,kind:"inline",className:"style-option-btn",onClick:()=>{o(R),d(!1)},style:{color:yi({type:R}),background:Ti({type:R})}},R===a&&m.createElement(ue,{icon:Ci,className:"mr-2"}),R!==a&&m.createElement("span",{className:"mr-4"}),Jo(R)))},O=0;O<C.length;O+=1)S();return T},[C,a]),E=y.useCallback(()=>m.createElement("div",{className:"style-menu-container",role:"presentation",style:{width:c}},m.createElement("div",{className:"style-options"},b())),[c,b]);return m.createElement("div",{className:"style-editor"},m.createElement("div",{className:"mb-2",ref:v},m.createElement("label",{className:"mb-0"},"Style"),m.createElement(Z,{kind:"inline",className:"cs-dropdown",style:{color:yi({type:a}),background:Ti({type:a})},onClick:p},Jo(a),m.createElement("span",null,m.createElement(ue,{icon:Xu,className:"cs-caret"})),m.createElement(ss,{isShown:u,actions:{menuElement:E()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:f,menuStyle:{maxWidth:"100rem"}}))),a===fe.CUSTOM&&m.createElement("div",{className:"mb-2"},m.createElement("label",{className:"mb-0"},"Background"),m.createElement("input",{type:"color",value:l,className:"custom-select color-select",onChange:g})))}function kl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ws(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?kl(Object(t),!0).forEach(function(r){wC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):kl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function wC(n,e,t){return e=bC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bC(n){var e=SC(n,"string");return typeof e=="symbol"?e:String(e)}function SC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Rn=Fe.module("ColumnFormatEditor"),EC=()=>{};function TC(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=Ws({column:r,style:Rs()},Mi(e));return i}function yC(n){var e,{columns:t,config:r=TC(t),dh:i,onChange:a=EC}=n,[o,l]=y.useState((e=t.find(w=>w.name===r.column.name&&w.type===r.column.type))!==null&&e!==void 0?e:t[0]),[s,u]=y.useState(ys(r)),[d,c]=y.useState(!1),[h,v]=y.useState(r.style),g=y.useCallback(w=>{var b=t.find(E=>{var{name:T}=E;return T===w});b!==void 0?(l(b),o.type!==b.type&&(u(Mi(b.type)),c(!1))):Rn.error("Column ".concat(w," not found."))},[t,o]),f=y.useCallback((w,b)=>{Rn.debug("handleConditionChange",w,b),u(w),c(b)},[]),p=y.useCallback(w=>{Rn.debug("handleStyleChange",w),v(w)},[]);y.useEffect(function(){var b=d;o===void 0&&(Rn.debug("Column is not selected, invalidating update."),b=!1),(h===void 0||h.type===fe.NO_FORMATTING)&&(Rn.debug("Style is not selected, invalidating update."),b=!1);var{type:E,name:T}=o,S={type:E,name:T};a(Ws({column:S,style:h},s),b)},[a,o,h,s,d]);var C=t.map(w=>{var{name:b}=w;return{title:b,value:b}});return m.createElement("div",{className:"conditional-rule-editor form"},m.createElement("div",{className:"mb-2"},m.createElement("label",{className:"mb-0"},"Format Cell If"),m.createElement(ds,{defaultValue:o==null?void 0:o.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:g,searchPlaceholder:"Filter columns"})),o!==void 0&&m.createElement(m.Fragment,null,m.createElement($s,{dh:i,column:o,config:s,onChange:f}),m.createElement(Gs,{config:h,onChange:p})))}function _l(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function zs(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_l(Object(t),!0).forEach(function(r){RC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):_l(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function RC(n,e,t){return e=OC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function OC(n){var e=FC(n,"string");return typeof e=="symbol"?e:String(e)}function FC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var On=Fe.module("RowFormatEditor"),DC=()=>{};function NC(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=zs({column:r,style:Rs()},Mi(e));return i}function PC(n){var e,{columns:t,config:r=NC(t),dh:i,onChange:a=DC}=n,[o,l]=y.useState((e=t.find(w=>w.name===r.column.name&&w.type===r.column.type))!==null&&e!==void 0?e:t[0]),[s,u]=y.useState(ys(r)),[d,c]=y.useState(!1),[h,v]=y.useState(r.style),g=y.useCallback(w=>{var b=t.find(E=>{var{name:T}=E;return T===w});b!==void 0?(l(b),o.type!==b.type&&(u(Mi(b.type)),c(!1))):On.error("Column ".concat(w," not found."))},[t,o]),f=y.useCallback((w,b)=>{On.debug("handleConditionChange",w,b),u(w),c(b)},[]),p=y.useCallback(w=>{On.debug("handleStyleChange",w),v(w)},[]);y.useEffect(function(){if(o===void 0){On.debug("Column is not selected, skip update.");return}if(h===void 0){On.debug("Style is not selected, skip update.");return}var{type:b,name:E}=o,T={type:b,name:E};a(zs({column:T,style:h},s),d)},[a,o,h,s,d]);var C=t.map(w=>{var{name:b}=w;return{title:b,value:b}});return m.createElement("div",{className:"conditional-rule-editor form"},m.createElement("div",{className:"mb-2"},m.createElement("label",{className:"mb-0"},"Format Row If"),m.createElement(ds,{defaultValue:o==null?void 0:o.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:g,searchPlaceholder:"Filter columns"})),o!==void 0&&m.createElement(m.Fragment,null,m.createElement($s,{column:o,config:s,dh:i,onChange:f}),m.createElement(Gs,{config:h,onChange:p})))}var ga=Fe.module("ConditionalFormatEditor"),fa=()=>{};function IC(n){switch(n){case pt.CONDITIONAL:return m.createElement(cf,null);case pt.ROWS:return m.createElement(hf,null)}}function AC(n){switch(n){case pt.CONDITIONAL:return"Conditional";case pt.ROWS:return"Rows"}}var Hl=[pt.CONDITIONAL,pt.ROWS];function MC(n){var e,{columns:t,dh:r,onSave:i=fa,onUpdate:a=fa,onCancel:o=fa,rule:l}=n,s=t.filter(Em),[u,d]=y.useState((e=l==null?void 0:l.type)!==null&&e!==void 0?e:Hl[0]),[c,h]=y.useState(l),[v,g]=y.useState(!1),f=y.useCallback(()=>{o()},[o]),p=y.useCallback(()=>{if(c===void 0){ga.error("Rule is not defined.");return}i(c)},[i,c]),C=y.useCallback(b=>{ga.debug("handleFormatterChange",b),d(b)},[]),w=y.useCallback((b,E)=>{ga.debug("handleRuleChange",b,E,u);var T={type:u,config:b};h(T),g(E),a(E?T:void 0)},[a,u]);return m.createElement("div",{className:"conditional-format-editor form"},m.createElement("div",{className:"mb-2"},m.createElement("label",{className:"mb-0",htmlFor:"formatter-select"},"Select Formatter"),m.createElement("div",{className:"formatter-list"},Hl.map((b,E)=>m.createElement("div",{key:b,className:"formatter-type"},m.createElement("button",{type:"button",className:ie("btn","btn-icon","btn-formatter-type",{active:b===u}),"data-index":E,onClick:()=>C(b)},IC(b),AC(b)))))),u===pt.CONDITIONAL&&m.createElement(yC,{columns:s,dh:r,config:c==null?void 0:c.config,onChange:w}),u===pt.ROWS&&m.createElement(PC,{columns:s,config:c==null?void 0:c.config,dh:r,onChange:w}),m.createElement("hr",null),m.createElement("div",{className:"d-flex justify-content-end my-3"},m.createElement(Z,{kind:"secondary",onClick:f,className:"mr-2"},"Cancel"),m.createElement(Z,{kind:"primary",onClick:p,disabled:c===void 0||!v},"Done")))}const LC="#2d2a2e",kC="#fcfcfa",_C="#fcd65b",HC="#b2b1b2",xC="#9edc6f",BC="#76d9e4",UC="#f95d84",VC="#aa9af4",$C="#f95d84",GC="#fcfcfa",WC="#7c7b7c",le={"error-foreground":"#f95d84",background:LC,foreground:kC,"line-height":"19px",string:_C,"string-delim":"#929192",delimiter:HC,predefined:xC,keyword:BC,storage:UC,number:VC,operator:$C,identifier:GC,"namespace-identifier":"#f95d84","identifier-js":"#fcd65b",comment:WC,"input-option-active-border":"#929192","focus-border":"rgba(72, 120, 234, 0.85)","input-background":"#555356","input-foreground":"#f0f0ee","input-border":"#929192","editor-line-number-foreground":"#929192","editor-selection-background":"#676368","editor-line-highlight-bg":"#373438","context-menu-background":"#555356","context-menu-foreground":"#f0f0ee","menu-selection-background":"#4878ea","log-date":"#929192","log-error":"#f95d84","log-info":"#76d9e4","log-stdout":"#f0f0ee","log-warn":"#fcd65b","log-debug":"#aa9af4","log-trace":"#9edc6f","editor-find-match-background":"#3c5595","editor-find-match-highlight-background":"#343e5d","editor-widget-background":"#403e41","input-option-active-background":"#4878ea","input-option-active-foreground":"#f0f0ee","editor-suggest-widget-background":"#403e41","editor-suggest-widget-border":"#5b5a5c","editor-suggest-widget-foreground":"#f0f0ee","editor-suggest-widget-selected-background":"#41475a","editor-suggest-widget-highlightForeground":"#4878ea","list-hover-background":"#555356","text-link-foreground":"#929192","text-link-active-foreground":"#f0f0ee","editor-link-active-foreground":"#f0f0ee"};var zC="python",jC={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},KC={keywords:["and","del","from","not","while","as","elif","global","or","with","assert","else","if","pass","yield","break","except","import","print","exec","in","raise","continue","finally","is","return","for","try",":","=","isinstance","__debug__"],storage:["class","def","async","lambda"],operators:["+","-","*","**","/","//","%","<<",">>","&","|","^","~","<",">","<=",">=","==","!=","<>","+=","-=","*=","/","//=","%=","&=","|=","^=",">>=","<<=","**="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~&|+\-*/^%]+/,delimiters:/[;=.@:,`]/,escapes:/\\(?:[abfnrtv\\"'\n\r]|x[0-9A-Fa-f]{2}|[0-7]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\{\w+\})/,rawpre:/(?:[rR]|ur|Ur|uR|UR|br|Br|bR|BR)/,strpre:/(?:[buBU])/,tokenizer:{root:[[/@strpre?("""|''')/,{token:"string.delim",bracket:"@open",next:"@mstring.$1"}],[/@strpre?"([^"\\]|\\.)*$/,"string.invalid"],[/@strpre?'([^'\\]|\\.)*$/,"string.invalid"],[/@strpre?(["])/,{token:"string.delim",bracket:"@open",next:"@sstring.$1",nextEmbedded:"deephavenDb"}],[/@strpre?(["'])/,{token:"string.delim",bracket:"@open",next:"@string.$1"}],[/@rawpre("""|''')/,{token:"string.delim",bracket:"@open",next:"@mrawstring.$1"}],[/@rawpre"([^"\\]|\\.)*$/,"string.invalid"],[/@rawpre'([^'\\]|\\.)*$/,"string.invalid"],[/@rawpre(["'])/,{token:"string.delim",bracket:"@open",next:"@rawstring.$1"}],[/__[\w$]*/,"predefined"],[/[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@storage":"storage","@default":"identifier"}}],[/[A-Z][\w]*/,{cases:{"~[A-Z0-9_]+":"constructor.identifier","@default":"namespace.identifier"}}],{include:"@whitespace"},[/[{}()[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywords":"keyword","@operators":"operator","@default":""}}],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+[lL]?/,"number.hex"],[/0[bB][0-1]+[lL]?/,"number.binary"],[/(0[oO][0-7]+|0[0-7]+)[lL]?/,"number.octal"],[/(0|[1-9]\d*)[lL]?/,"number"],[":",{token:"keyword",bracket:"@open"}],[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}]],comment:[[/[^/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[/*]/,"comment"]],mstring:[{include:"@strcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],sstring:[{include:"@strcontent"},[/["]/,{token:"string.delim",bracket:"@close",next:"@pop",nextEmbedded:"@pop"}],[/./,"string.invalid"]],string:[{include:"@strcontent"},[/[']/,{token:"string.delim",bracket:"@close",next:"@pop"}],[/./,"string.invalid"]],strcontent:[[/[^\\"']+/,"string"],[/\\$/,"string.escape"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"]],mrawstring:[{include:"@rawstrcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],rawstring:[{include:"@rawstrcontent"},[/["']/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/./,"string.invalid"]],rawstrcontent:[[/[^\\"']+/,"string"],[/\\["']/,"string"],[/\\u[0-9A-Fa-f]{4}/,"string.escape"],[/\\/,"string"]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]]}},YC={id:zC,conf:jC,language:KC};const qC=YC;var XC="groovy",QC={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},ZC={keywords:["and","del","from","not","while","as","elif","global","or","with","assert","else","if","pass","yield","break","except","import","print","println","class","exec","in","raise","continue","finally","is","return","def","for","lambda","try",":","=","isinstance","__debug__"],operators:["+","-","*","**","/","//","%","<<",">>","&","|","^","~","<",">","<=",">=","==","!=","<>","+=","-=","*=","/","//=","%=","&=","|=","^=",">>=","<<=","**="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~&|+\-*/^%]+/,delimiters:/[;=.@:,`]/,escapes:/\\(?:[abfnrtv\\"'\n\r]|x[0-9A-Fa-f]{2}|[0-7]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\{\w+\})/,rawpre:/(?:[rR]|ur|Ur|uR|UR|br|Br|bR|BR)/,strpre:/(?:[buBU])/,tokenizer:{root:[[/@strpre?("""|''')/,{token:"string.delim",bracket:"@open",next:"@mstring.$1"}],[/@strpre?"([^"\\]|\\.)*$/,"string.invalid"],[/@strpre?'([^'\\]|\\.)*$/,"string.invalid"],[/@strpre?(["])/,{token:"string.delim",bracket:"@open",next:"@sstring.$1",nextEmbedded:"deephavenDb"}],[/@strpre?(["'])/,{token:"string.delim",bracket:"@open",next:"@string.$1"}],[/@rawpre("""|''')/,{token:"string.delim",bracket:"@open",next:"@mrawstring.$1"}],[/@rawpre"([^"\\]|\\.)*$/,"string.invalid"],[/@rawpre'([^'\\]|\\.)*$/,"string.invalid"],[/@rawpre(["'])/,{token:"string.delim",bracket:"@open",next:"@rawstring.$1"}],[/__[\w$]*/,"predefined"],[/[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[A-Z][\w]*/,{cases:{"~[A-Z0-9_]+":"constructor.identifier","@default":"namespace.identifier"}}],{include:"@whitespace"},[/[{}()[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywords":"keyword","@operators":"operator","@default":""}}],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+[lL]?/,"number.hex"],[/0[bB][0-1]+[lL]?/,"number.binary"],[/(0[oO][0-7]+|0[0-7]+)[lL]?/,"number.octal"],[/(0|[1-9]\d*)[lL]?/,"number"],[":",{token:"keyword",bracket:"@open"}],[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}]],mstring:[{include:"@strcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],sstring:[{include:"@strcontent"},[/["]/,{token:"string.delim",bracket:"@close",next:"@pop",nextEmbedded:"@pop"}],[/./,"string.invalid"]],string:[{include:"@strcontent"},[/[']/,{token:"string.delim",bracket:"@close",next:"@pop"}],[/./,"string.invalid"]],strcontent:[[/[^\\"']+/,"string"],[/\\$/,"string.escape"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"]],mrawstring:[{include:"@rawstrcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],rawstring:[{include:"@rawstrcontent"},[/["']/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/./,"string.invalid"]],rawstrcontent:[[/[^\\"']+/,"string"],[/\\["']/,"string"],[/\\u[0-9A-Fa-f]{4}/,"string.escape"],[/\\/,"string"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],doccomment:[[/[^/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[/*]/,"comment.doc"]]}},JC={id:XC,conf:QC,language:ZC};const ew=JC;var tw="scala",rw={wordPattern:/(unary_[@~!#%^&*()\-=+\\|:<>/?]+)|([a-zA-Z_$][\w$]*?_=)|(`[^`]+`)|([a-zA-Z_$][\w$]*)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:/^\s*\/\/\s*(?:(?:#?region\b)|(?:<editor-fold\b))/,end:/^\s*\/\/\s*(?:(?:#?endregion\b)|(?:<\/editor-fold>))/}}},nw={keywords:["asInstanceOf","catch","class","classOf","def","do","else","extends","finally","for","foreach","forSome","if","import","isInstanceOf","macro","match","new","object","package","return","throw","trait","try","type","until","val","var","while","with","yield","given","enum","then"],softKeywords:["as","export","extension","end","derives","on"],constants:["true","false","null","this","super"],modifiers:["abstract","final","implicit","lazy","override","private","protected","sealed"],softModifiers:["inline","opaque","open","transparent","using"],name:/(?:[a-z_$][\w$]*|`[^`]+`)/,type:/(?:[A-Z][\w$]*)/,symbols:/[=><!~?:&|+\-*/^\\%@#]+/,digits:/\d+(_+\d+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,escapes:/\\(?:[btnfr\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,fstring_conv:/[bBhHsScCdoxXeEfgGaAt]|[Tn](?:[HIklMSLNpzZsQ]|[BbhAaCYyjmde]|[RTrDFC])/,tokenizer:{root:[[/\braw"""/,{token:"string.quote",bracket:"@open",next:"@rawstringt"}],[/\braw"/,{token:"string.quote",bracket:"@open",next:"@rawstring"}],[/\bs"""/,{token:"string.quote",bracket:"@open",next:"@sstringt"}],[/\bs"/,{token:"string.quote",bracket:"@open",next:"@sstring"}],[/\bf""""/,{token:"string.quote",bracket:"@open",next:"@fstringt"}],[/\bf"/,{token:"string.quote",bracket:"@open",next:"@fstring"}],[/"""/,{token:"string.quote",bracket:"@open",next:"@stringt"}],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}],[/(@digits)[eE]([-+]?(@digits))?[fFdD]?/,"number.float","@allowMethod"],[/(@digits)\.(@digits)([eE][-+]?(@digits))?[fFdD]?/,"number.float","@allowMethod"],[/0[xX](@hexdigits)[Ll]?/,"number.hex","@allowMethod"],[/(@digits)[fFdD]/,"number.float","@allowMethod"],[/(@digits)[lL]?/,"number","@allowMethod"],[/\b_\*/,"key"],[/\b(_)\b/,"keyword","@allowMethod"],[/\bimport\b/,"keyword","@import"],[/\b(case)([ \t]+)(class)\b/,["keyword.modifier","white","keyword"]],[/\bcase\b/,"keyword","@case"],[/\bva[lr]\b/,"keyword","@vardef"],[/\b(def)([ \t]+)((?:unary_)?@symbols|@name(?:_=)|@name)/,["keyword","white","identifier"]],[/@name(?=[ \t]*:(?!:))/,"variable"],[/(\.)(@name|@symbols)/,[{token:"operator"},{token:"@rematch",next:"@allowMethod"}]],[/([{(])(\s*)(@name(?=\s*=>))/,["@brackets","white","variable"]],[/@name/,{cases:{"@keywords":"keyword","@softKeywords":"keyword","@modifiers":"keyword.modifier","@softModifiers":"keyword.modifier","@constants":{token:"constant",next:"@allowMethod"},"@default":{token:"identifier",next:"@allowMethod"}}}],[/@type/,"type","@allowMethod"],{include:"@whitespace"},[/@[a-zA-Z_$][\w$]*(?:\.[a-zA-Z_$][\w$]*)*/,"annotation"],[/[{(]/,"@brackets"],[/[})]/,"@brackets","@allowMethod"],[/\[/,"operator.square"],[/](?!\s*(?:va[rl]|def|type)\b)/,"operator.square","@allowMethod"],[/]/,"operator.square"],[/([=-]>|<-|>:|<:|:>|<%)(?=[\s\w()[\]{},."'`])/,"keyword"],[/@symbols/,"operator"],[/[;,.]/,"delimiter"],[/'[a-zA-Z$][\w$]*(?!')/,"attribute.name"],[/'[^\\']'/,"string","@allowMethod"],[/(')(@escapes)(')/,[{token:"string"},{token:"string.escape"},{token:"string",next:"@allowMethod"}]],[/'/,"string.invalid"]],import:[[/;/,"delimiter","@pop"],[/^|$/,"","@pop"],[/[ \t]+/,"white"],[/[\n\r]+/,"white","@pop"],[/\/\*/,"comment","@comment"],[/@name|@type/,"type"],[/[(){}]/,"@brackets"],[/[[\]]/,"operator.square"],[/[.,]/,"delimiter"]],allowMethod:[[/^|$/,"","@pop"],[/[ \t]+/,"white"],[/[\n\r]+/,"white","@pop"],[/\/\*/,"comment","@comment"],[/(?==>[\s\w([{])/,"keyword","@pop"],[/(@name|@symbols)(?=[ \t]*[[({"'`]|[ \t]+(?:[+-]?\.?\d|\w))/,{cases:{"@keywords":{token:"keyword",next:"@pop"},"->|<-|>:|<:|<%":{token:"keyword",next:"@pop"},"@default":{token:"@rematch",next:"@pop"}}}],["","","@pop"]],comment:[[/[^/*]+/,"comment"],[/\/\*/,"comment","@push"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],case:[[/\b_\*/,"key"],[/\b(_|true|false|null|this|super)\b/,"keyword","@allowMethod"],[/\bif\b|=>/,"keyword","@pop"],[/`[^`]+`/,"identifier","@allowMethod"],[/@name/,"variable","@allowMethod"],[/:::?|\||@(?![a-z_$])/,"keyword"],{include:"@root"}],vardef:[[/\b_\*/,"key"],[/\b(_|true|false|null|this|super)\b/,"keyword"],[/@name/,"variable"],[/:::?|\||@(?![a-z_$])/,"keyword"],[/=|:(?!:)/,"operator","@pop"],[/$/,"white","@pop"],{include:"@root"}],string:[[/[^\\"\n\r]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}]],stringt:[[/[^\\"\n\r]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/"/,"string"]],fstring:[[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/%%/,"string"],[/(%)([-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","keyword.modifier","number","metatag"]],[/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","number","metatag"]],[/(%)([-#+ 0,(])(@fstring_conv)/,["metatag","keyword.modifier","metatag"]],[/(%)(@fstring_conv)/,["metatag","metatag"]],[/./,"string"]],fstringt:[[/@escapes/,"string.escape"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/%%/,"string"],[/(%)([-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","keyword.modifier","number","metatag"]],[/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","number","metatag"]],[/(%)([-#+ 0,(])(@fstring_conv)/,["metatag","keyword.modifier","metatag"]],[/(%)(@fstring_conv)/,["metatag","metatag"]],[/./,"string"]],sstring:[[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/./,"string"]],sstringt:[[/@escapes/,"string.escape"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/./,"string"]],interp:[[/{/,"operator","@push"],[/}/,"operator","@pop"],{include:"@root"}],rawstring:[[/[^"]/,"string"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}]],rawstringt:[[/[^"]/,"string"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/"/,"string"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}},iw={id:tw,conf:rw,language:nw};const aw=iw;var ow="deephavenDb",lw={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},sw={tokenPostfix:".js",keywords:["boolean","break","byte","case","catch","char","class","const","continue","debugger","default","delete","do","double","else","enum","export","extends","false","final","finally","float","for","function","goto","if","implements","import","in","instanceof","int","interface","long","native","new","null","package","private","protected","public","return","short","static","super","switch","synchronized","this","throw","throws","transient","true","try","typeof","var","void","volatile","while","with"],builtins:["define","require","window","document","undefined"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[~!@#%\^&*-+=|\\:`<>.?\/]+/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,exponent:/[eE][\-+]?[0-9]+/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/([a-zA-Z_\$][\w\$]*)(\s*)(:?)/,{cases:{"$1@keywords":["keyword","white","delimiter"],$3:["key.identifier","white","delimiter"],"$1@builtins":["predefined.identifier","white","delimiter"],"@default":["identifier","white","delimiter"]}}],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/)/,{token:"regexp.slash",bracket:"@open",next:"@regexp"}],[/[{}()\[\]]/,"@brackets"],[/[;,.]/,"delimiter"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/\d+\.\d*(@exponent)?/,"number.float"],[/\.\d+(@exponent)?/,"number.float"],[/\d+@exponent/,"number.float"],[/0[xX][\da-fA-F]+/,"number.hex"],[/0[0-7]+/,"number.octal"],[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment.invalid"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["@brackets.regexp.escape.control","regexp.escape.control","@brackets.regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,[{token:"@brackets.regexp.escape.control"},{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["@brackets.regexp.escape.control","regexp.escape.control"]],[/[()]/,"@brackets.regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],["/",{token:"regexp.slash",bracket:"@close"},"@pop"]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,"@brackets.regexp.escape.control","@pop"]]}},uw={id:ow,conf:lw,language:sw};const dw=uw;var cw="log",hw={},mw={tokenizer:{root:[[/ FATAL[\s\S]*/,{token:"error",next:"@error"}],[/ ERROR[\s\S]*/,{token:"error",next:"@error"}],[/ STDERR[\s\S]*/,{token:"error",next:"@error"}],[/ STDOUT.*/,{token:"stdout",next:"@stdout"}],[/ INFO[\s\S]*/,{token:"info",next:"@info"}],[/ WARN.*/,{token:"warn",next:"@warn"}],[/ TRACE[\s\S]*/,{token:"trace",next:"@trace"}],[/ DEBUG[.\s\S]*/,{token:"debug",next:"@debug"}],[/^\d{2}:\d{2}:\d{2}.\d{3}/,"date"]],error:[{include:"@body"}],info:[{include:"@body"}],warn:[{include:"@body"}],stdout:[{include:"@body"}],trace:[{include:"@body"}],debug:[{include:"@body"}],body:[[/^\d{2}:\d{2}:\d{2}.\d{3}/,{token:"date",next:"@pop"}],[/[\s\S]*/,{token:"$S0"}]]}},vw={id:cw,conf:hw,language:mw};const gw=vw;function xl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Bl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?xl(Object(t),!0).forEach(function(r){fw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):xl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fw(n,e,t){return e=pw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pw(n){var e=Cw(n,"string");return typeof e=="symbol"?e:String(e)}function Cw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Kt=Fe.module("MonacoUtils");class Yt{static init(){var{getWorker:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Kt.debug("Initializing Monaco..."),e!==void 0&&Yt.registerGetWorker(e);var{registerLanguages:t,removeHashtag:r}=Yt,i=[{token:"",foreground:r(le.foreground)},{token:"string",foreground:r(le.string)},{token:"string.delim",foreground:r(le["string-delim"])},{token:"keyword",foreground:r(le.keyword)},{token:"identifier.js",foreground:r(le["identifier-js"])},{token:"delimiter",foreground:r(le.delimiter)},{token:"comment",foreground:r(le.comment)},{token:"number",foreground:r(le.number)},{token:"storage",foreground:r(le.storage)},{token:"identifier",foreground:r(le.identifier)},{token:"namespace.identifier",foreground:r(le["namespace-identifier"])},{token:"operator",foreground:r(le.operator)},{token:"predefined",foreground:r(le.predefined)},{token:"error.log",foreground:le["log-error"].substring(1)},{token:"warn.log",foreground:r(le["log-warn"])},{token:"info.log",foreground:r(le["log-info"])},{token:"stdout.log",foreground:r(le["log-stdout"])},{token:"trace.log",foreground:r(le["log-trace"])},{token:"debug.log",foreground:r(le["log-debug"])},{token:"date.log",foreground:r(le["log-date"])}],a={errorForeground:le["error-foreground"],"inputOption.activeBorder":le["input-option-active-border"],"editor.background":le.background,"editor.foreground":le.foreground,"editor.lineHighlightBackground":le["editor-line-highlight-bg"],"editorLineNumber.foreground":le["editor-line-number-foreground"],"editor.selectionBackground":le["editor-selection-background"],"editor.findMatchBackground":le["editor-find-match-background"],"editor.findMatchHighlightBackground":le["editor-find-match-highlight-background"],"editorSuggestWidget.background":le["editor-suggest-widget-background"],"editorSuggestWidget.border":le["editor-suggest-widget-border"],"editorSuggestWidget.foreground":le["editor-suggest-widget-foreground"],"editorSuggestWidget.selectedBackground":le["editor-suggest-widget-selected-background"],"editorSuggestWidget.highlightForeground":le["editor-suggest-widget-highlightForeground"],"list.hoverBackground":le["list-hover-background"],"dropdown.background":le["context-menu-background"],"dropdown.foreground":le["context-menu-foreground"],"menu.selectionBackground":le["menu-selection-background"],"list.focusBackground":le["menu-selection-background"],"editorWidget.background":le["editor-widget-background"],"inputOption.activeBackground":le["input-option-active-background"],"inputOption.activeForeground":le["input-option-active-foreground"],focusBorder:le["focus-border"],"input.background":le["input-background"],"input.foreground":le["input-foreground"],"input.border":le["input-border"],"textLink.foreground":le["text-link-foreground"],"textLink.activeForeground":le["text-link-active-foreground"],"editorLink.activeForeground":le["editor-link-active-foreground"]};on.defineTheme("dh-dark",{base:"vs-dark",inherit:!0,rules:i,colors:a}),Kt.debug2("monaco theme: ",le),on.setTheme("dh-dark"),t([dw,qC,ew,gw,aw]),Kt.debug("Monaco initialized.")}static registerGetWorker(e){window.MonacoEnvironment=Bl(Bl({},window.MonacoEnvironment),{},{getWorker:e})}static removeHashtag(e){return e.substring(1)}static registerLanguages(e){var t=e.map(r=>{var{id:i}=r;return i});rn.getLanguages().filter(r=>{var{id:i}=r;return t.includes(i)}).forEach(r=>{var i=r;Kt.debug2("Overriding default language loader:",i.id)}),e.forEach(r=>{Yt.registerLanguage(r)})}static registerLanguage(e){Kt.debug2("Registering language: ",e.id),rn.register(e),rn.onLanguage(e.id,()=>{rn.setLanguageConfiguration(e.id,e.conf),rn.setMonarchTokensProvider(e.id,e.language)})}static setEOL(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:on.EndOfLineSequence.LF;(t=e.getModel())===null||t===void 0||t.setEOL(r)}static openDocument(e,t){var r=e.getModel();_(r);var i={textDocument:{uri:"".concat(r.uri),languageId:r.getLanguageId(),version:r.getVersionId(),text:r.getValue()}};Kt.debug2("didOpenDocumentParams: ",i),t.openDocument(i);var a=e.onDidChangeModelContent(o=>{for(var{changes:l,versionId:s}=o,u=[],d=0;d<l.length;d+=1){var c=l[d],{range:h,rangeLength:v,text:g}=c,f={range:{start:{line:h.startLineNumber-1,character:h.startColumn-1},end:{line:h.endLineNumber-1,character:h.endColumn-1}},rangeLength:v,text:g};u.push(f)}if(u.length>0){var p={textDocument:{version:s,uri:"".concat(r.uri)},contentChanges:u};Kt.debug2("didChangeDocumentParams",p),t.changeDocument(p)}});return a}static closeDocument(e,t){var r=e.getModel();_(r);var i={textDocument:{uri:"".concat(r.uri)}};t.closeDocument(i)}static registerPasteHandler(e){e.onDidPaste(t=>{var r=/“|”/g,i=/\u200b/g,a=/\u00A0/g,o=e.getModel();_(o);var l=o.getValueInRange(t.range);(r.test(l)||i.test(l)||a.test(l))&&o.applyEdits([{range:t.range,text:l.replace(r,'"').replace(i,"").replace(a," ")}])})}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static removeConflictingKeybindings(e){var t=[{windows:"ctrl+D",mac:"meta+D"},{windows:"ctrl+H"}];try{t.forEach(r=>{Yt.isMacPlatform()&&r.mac===""||!Yt.isMacPlatform()&&r.windows===""||Yt.removeKeybinding(e,Yt.isMacPlatform()?r.mac:r.windows)})}catch(r){Kt.error(r)}}static removeKeybinding(e,t){if(t!==void 0){var r=e._standaloneKeybindingService._getResolver()._map.get(t);r!=null?r.forEach(i=>{Kt.debug2("Removing Monaco keybinding ".concat(t," for ").concat(i.command)),e._standaloneKeybindingService.addDynamicKeybinding("-".concat(i.command),null,()=>{})}):Kt.warn("Did not find any keybindings to remove for ".concat(t))}}static getMonacoKeyCodeFromShortcut(e){var{keyState:t}=e,{keyValue:r}=t;if(r===null)return 0;var i=Yt.isMacPlatform();return i?(t.metaKey?or.CtrlCmd:0)|(t.shiftKey?or.Shift:0)|(t.altKey?or.Alt:0)|(t.ctrlKey?or.WinCtrl:0)|Lo.fromString(r):(t.ctrlKey?or.CtrlCmd:0)|(t.shiftKey?or.Shift:0)|(t.altKey?or.Alt:0)|(t.metaKey?or.WinCtrl:0)|Lo.fromString(r)}static provideLinks(e){for(var t=[],r=function(o){var l=e.getLineContent(o),s=Jl(l),u=s.filter(d=>d.type==="url"?/^https?:\/\//.test(d.value):!0);u.forEach(d=>{t.push({url:d.href,range:new Fd(o,d.start+1,o,d.end+1)})})},i=1;i<=e.getLineCount();i+=1)r(i);return{links:t}}}const Ul=Yt;function Vl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ww(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vl(Object(t),!0).forEach(function(r){Pi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pi(n,e,t){return e=bw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bw(n){var e=Sw(n,"string");return typeof e=="symbol"?e:String(e)}function Sw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class js extends y.Component{constructor(e){super(e),Pi(this,"container",void 0),Pi(this,"editor",void 0),this.handleResize=this.handleResize.bind(this),this.container=null,this.state={}}componentDidMount(){this.initEditor(),window.addEventListener("resize",this.handleResize)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),this.destroyEditor()}setLanguage(e){if(this.editor){var t=this.editor.getModel();_(t),on.setModelLanguage(t,e)}}handleResize(){this.updateDimensions()}toggleFind(){this.editor&&(this.editor.focus(),this.editor.trigger("toggleFind","actions.find",void 0))}updateDimensions(){var e;(e=this.editor)===null||e===void 0||e.layout()}initEditor(){var{onEditorInitialized:e}=this.props,{settings:t}=this.props;t=ww({copyWithSyntaxHighlighting:!1,fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"python",lineNumbersMinChars:3,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabCompletion:"on",value:"",wordWrap:"off",links:!0},t),_(this.container),this.editor=on.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[or.CtrlCmd|Dd.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),Ul.removeConflictingKeybindings(this.editor),rn.registerLinkProvider("plaintext",{provideLinks:Ul.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;_(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return m.createElement("div",{className:ie("editor-container",e),ref:t=>{this.container=t}})}}Pi(js,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});const Ew=js;function Tw(n){var e,t,{text:r,isOpen:i,onClose:a}=n,[o,l]=y.useState(!1),[s,u]=y.useState(0),[d,c]=y.useState(!1),[h,v]=y.useState(!1),[g,f]=y.useState(!1),p=y.useRef();y.useEffect(function(){if(i){try{JSON.parse(r),f(!0)}catch{f(!1)}v(!1)}},[i,r]),y.useEffect(function(){p.current&&p.current.layout()},[s]),y.useEffect(function(){p.current&&p.current.updateOptions({lineNumbers:d?"on":"off"})},[d]);function C(){c(!d)}function w(){var S,O=(S=p.current)===null||S===void 0?void 0:S.getModel();!g||!O||(h?(O.setValue(r),v(!1)):(O.setValue(JSON.stringify(JSON.parse(r),void 0,2)),v(!0)),b())}function b(){var S,O,F=p.current;F&&c(((S=(O=F.getModel())===null||O===void 0?void 0:O.getLineCount())!==null&&S!==void 0?S:0)>1)}function E(){o&&(p.current=void 0,a())}function T(S){p.current=S,u(S.getContentHeight()),S.onDidContentSizeChange(O=>{var{contentHeight:F}=O;return u(F)}),b()}return!i&&!o?null:m.createElement(Qu,{isOpen:i,centered:!0,keyboard:!0,toggle:E,onOpened:()=>l(!0),onClosed:()=>{l(!1),u(0)},className:"theme-bg-dark cell-overflow-modal",size:"xl"},m.createElement(Zu,{toggle:a},m.createElement("h5",{className:"overflow-modal-title"},"Cell Contents"),m.createElement(os,{kind:"inline",tooltip:"Copy cell contents",copy:(e=(t=p.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:r}),m.createElement(Z,{kind:"inline",active:d,icon:Ju,tooltip:"Toggle line numbers",onClick:C}),g&&m.createElement(Z,{kind:"inline",icon:ed,active:h,tooltip:"Format as JSON",onClick:w})),m.createElement(td,{style:{height:s}},m.createElement(Ew,{onEditorInitialized:T,settings:{value:r,readOnly:!0,wordWrap:"on",language:g?"typescript":"plaintext",folding:g,padding:{bottom:16},lineNumbers:d?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})))}function yw(n){return n.model!==void 0}var Rw="###,##0";function Ow(n){var{gotoRow:e,gotoRowError:t,gotoValueError:r,onGotoRowSubmit:i,isShown:a,onEntering:o,onEntered:l,onExiting:s,onExited:u,model:d,onGotoRowNumberChanged:c,onClose:h,gotoValueSelectedColumnName:v,gotoValue:g,gotoValueFilter:f,onGotoValueSelectedColumnNameChanged:p,onGotoValueSelectedFilterChanged:C,onGotoValueChanged:w,onGotoValueSubmit:b}=n,E=y.useRef(null),T=y.useRef(null),[S,O]=y.useState(!1),F=[];yw(d)&&d.table!==void 0&&({columns:F}=d.table);var{dh:R,rowCount:D}=d,P=y.useMemo(()=>"goto-row-input-".concat(Nr()),[]),I=k=>{k.key==="Enter"?(k.stopPropagation(),k.preventDefault(),b()):(k.key==="Backspace"||k.key==="Delete")&&(g==="".concat(Number.POSITIVE_INFINITY)||g==="".concat(Number.NEGATIVE_INFINITY))&&G("")},A=k=>{k.key==="Enter"&&(k.stopPropagation(),k.preventDefault(),b(k.shiftKey))},x=d.getColumnIndexByName(v),H=F[x??0],W=H==null?void 0:H.type,z=M.getNormalizedType(W),G=k=>{w(k??"")},K=()=>{if(S&&document.activeElement!==E.current){var k;(k=E.current)===null||k===void 0||k.select()}else if(!S&&document.activeElement!==T.current){var L;(L=T.current)===null||L===void 0||L.select()}};y.useEffect(K,[S,e,g]);var q=()=>{switch(z){case M.dataType.DECIMAL:case M.dataType.INT:return m.createElement("div",{className:"goto-row-input"},m.createElement("input",{ref:T,className:ie("form-control",{"is-invalid":r!==""}),onKeyDown:I,placeholder:"value",onChange:k=>{var L=k.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(k.target.value)?G(k.target.value):L==="-i"||L==="-infinity"?G("".concat(Number.NEGATIVE_INFINITY)):(L==="i"||L==="infinity")&&G("".concat(Number.POSITIVE_INFINITY))},value:g,"aria-label":"Value Input"}));case M.dataType.DATETIME:return m.createElement("div",{className:"goto-value-date-time-input"},m.createElement(Ed,{ref:T,className:ie("form-control","goto-value-date-time-input",{"is-invalid":r!==""}),defaultValue:g,onChange:G,onSubmit:A,"aria-label":"Value Input"}));case M.dataType.STRING:return m.createElement(m.Fragment,null,m.createElement("div",{className:"goto-row-input"},m.createElement("select",{className:"custom-select",onChange:k=>{C(k.target.value)},value:f,"aria-label":"filter-type-select"},m.createElement("option",{key:pe.eqIgnoreCase,value:pe.eqIgnoreCase},"Equals (case-insensitive)"),m.createElement("option",{key:pe.containsIgnoreCase,value:pe.containsIgnoreCase},"Contains (case-insensitive)"),m.createElement("option",{key:pe.eq,value:pe.eq},"Equals"),m.createElement("option",{key:pe.contains,value:pe.contains},"Contains"))),m.createElement("div",{className:"goto-row-input"},m.createElement("input",{ref:T,className:ie("form-control",{"is-invalid":r!==""}),onKeyDown:A,placeholder:"value",onChange:k=>G(k.target.value),value:g,"aria-label":"Value Input"})));case M.dataType.BOOLEAN:return m.createElement("div",{className:"goto-row-input"},m.createElement("select",{className:"custom-select",onChange:k=>{G(k.target.value)},value:g,"aria-label":"Value Input"},m.createElement("option",{"aria-label":"null value",key:"null",value:""}),m.createElement("option",{key:"true",value:"true"},"true"),m.createElement("option",{key:"false",value:"false"},"false")));default:return m.createElement("div",{className:"goto-row-input"},m.createElement("input",{ref:T,className:"form-control",onKeyDown:A,placeholder:"value",onChange:k=>G(k.target.value),value:g,"aria-label":"Value Input"}))}};return m.createElement(Li,{isShown:a,className:ie("goto-row"),onEntering:o,onEntered:()=>{l(),K()},onExiting:s,onExited:u},m.createElement(m.Fragment,null,m.createElement("div",{className:"goto-row-row"},m.createElement("div",{className:ie("goto-row-wrapper",{"is-inactive":!S}),onClick:()=>O(!0),onFocus:()=>O(!0),role:"group"},m.createElement("label",{className:"goto-row-text",htmlFor:P},"Go to row"),m.createElement("div",{className:"goto-row-input"},m.createElement("input",{ref:E,"data-testid":"goto-row-input",type:"number",onKeyDown:k=>{k.key==="Enter"&&(k.stopPropagation(),k.preventDefault(),i())},className:ie("form-control",{"is-invalid":t!==""}),placeholder:"Row number",onChange:k=>{c(k)},value:e,id:P})),m.createElement("div",{className:"goto-row-text"},"of ",R.i18n.NumberFormat.format(Rw,D)),t&&m.createElement("div",{className:"text-danger"},t)),m.createElement("div",{className:"goto-row-close"},m.createElement(Z,{kind:"ghost",onClick:h},m.createElement(ue,{icon:Qa,style:{marginRight:"0"}})))),d.isSeekRowAvailable&&m.createElement("div",{className:"goto-row-row"},m.createElement("div",{className:ie("goto-row-wrapper",{"is-inactive":S}),onClick:()=>O(!1),onFocus:()=>O(!1),role:"group"},m.createElement("div",{className:"goto-row-text"},"Go to value"),m.createElement("div",{className:"goto-row-input"},m.createElement("select",{className:"custom-select",onChange:k=>{var L=k.target.value;p(L)},value:v,"aria-label":"column-name-select"},F.map(k=>m.createElement("option",{key:k.name,value:k.name},k.name)))),q(),m.createElement("div",null,m.createElement(Z,{kind:"ghost",disabled:g==="",onClick:()=>{b(!0)}},m.createElement(ue,{icon:rd})),m.createElement(Z,{kind:"ghost",disabled:g==="",onClick:()=>{b(!1)}},m.createElement(ue,{icon:nd}))),r&&m.createElement("div",{className:"text-danger"},r)))))}function $l(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function di(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){$l(a,r,i,o,l,"next",s)}function l(s){$l(a,r,i,o,l,"throw",s)}o(void 0)})}}function Gl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function it(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gl(Object(t),!0).forEach(function(r){te(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function te(n,e,t){return e=Fw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fw(n){var e=Dw(n,"string");return typeof e=="symbol"?e:String(e)}function Dw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ne=Fe.module("IrisGrid"),Nw=500,Pw=250,Iw=250,Aw=250,Ks=Object.freeze({aggregations:Ee,showOnTop:!1}),Mw="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function Wl(n){var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:l,selectDistinctColumns:s,sorts:u}=n;return e.size===0&&t.aggregations.length===0&&r.length===0&&i.size===0&&a===M.REVERSE_TYPE.NONE&&o==null&&l==null&&s.length===0&&u.length===0}class Zt extends y.Component{constructor(e){var t,r,i,a;super(e),te(this,"grid",void 0),te(this,"gridWrapper",void 0),te(this,"lastFocusedFilterBarColumn",void 0),te(this,"lastLoadedConfig",void 0),te(this,"tooltip",void 0),te(this,"pending",void 0),te(this,"globalColumnFormats",void 0),te(this,"dateTimeFormatterOptions",void 0),te(this,"decimalFormatOptions",void 0),te(this,"integerFormatOptions",void 0),te(this,"truncateNumbersWithPound",void 0),te(this,"loadingScrimStartTime",void 0),te(this,"loadingScrimFinishTime",void 0),te(this,"animationFrame",void 0),te(this,"loadingTimer",void 0),te(this,"renderer",void 0),te(this,"tableSaver",void 0),te(this,"crossColumnRef",void 0),te(this,"isAnimating",void 0),te(this,"filterInputRef",void 0),te(this,"toggleFilterBarAction",void 0),te(this,"toggleSearchBarAction",void 0),te(this,"toggleGotoRowAction",void 0),te(this,"discardAction",void 0),te(this,"commitAction",void 0),te(this,"contextActions",void 0),te(this,"tableUtils",void 0),te(this,"getAdvancedMenuOpenedHandler",Pe(L=>this.handleAdvancedMenuOpened.bind(this,L),{max:100})),te(this,"getCachedAdvancedFilterMenuActions",Pe((L,$,U,Y,X)=>m.createElement(qg,{model:L,column:$,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:U,sortDirection:Y,formatter:X,tableUtils:this.tableUtils}),{max:50})),te(this,"getCachedOptionItems",Pe((L,$,U,Y,X,ae,de,ee,oe,se,Ae,Je,Xe,ze,Ve,Qe)=>{var De=[];return L&&De.push({type:Se.CHART_BUILDER,title:"Chart Builder",icon:id}),De.push({type:Se.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:Xa}),U&&De.push({type:Se.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:za}),$&&De.push({type:Se.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:ad}),Y&&De.push({type:Se.ROLLUP_ROWS,title:"Rollup Rows",icon:od}),X&&De.push({type:Se.AGGREGATIONS,title:"Aggregate Columns",icon:ld}),ae&&De.push({type:Se.SELECT_DISTINCT,title:"Select Distinct Values",icon:sd}),de&&Xe&&De.push({type:Se.TABLE_EXPORTER,title:"Download CSV",icon:ud}),Qe&&De.push({type:Se.ADVANCED_SETTINGS,title:"Advanced Settings",icon:dd}),De.push({type:Se.QUICK_FILTERS,title:"Quick Filters",subtitle:ee.shortcut.getDisplayText(),icon:pi,isOn:Ae,onChange:ee.action}),ze&&De.push({type:Se.SEARCH_BAR,title:"Search Bar",subtitle:oe.shortcut.getDisplayText(),icon:cd,isOn:Je,onChange:oe.action}),De.push({type:Se.GOTO,title:"Go to",subtitle:se.shortcut.getDisplayText(),icon:hd,isOn:Ve,onChange:se.action}),Object.freeze(De)},{max:1})),te(this,"getCachedHiddenColumns",Pe((L,$)=>Re.getHiddenColumns(new Map([...L.initialColumnWidths,...$])),{max:1})),te(this,"getAggregationMap",Pe((L,$)=>{var U={};return $.forEach(Y=>{var{operation:X,selected:ae,invert:de}=Y;U[X]=Rr.getOperationColumnNames(L,X,ae,de)}),U})),te(this,"getOperationMap",Pe((L,$)=>{var U={};return $.filter(Y=>!Rr.isRollupOperation(Y.operation)).forEach(Y=>{var{operation:X,selected:ae,invert:de}=Y;Rr.getOperationColumnNames(L,X,ae,de).forEach(ee=>{var oe,se=[...(oe=U[ee])!==null&&oe!==void 0?oe:[],X];U[ee]=Object.freeze(se)})}),U})),te(this,"getOperationOrder",Pe(L=>L.map($=>$.operation).filter($=>!Rr.isRollupOperation($)))),te(this,"getCachedFormatColumns",Pe((L,$,U)=>bm(L,$,U))),te(this,"getCachedPreviewFormatColumns",Pe((L,$,U,Y,X)=>{if(ne.debug("getCachedPreviewFormatColumns",U,Y,X),Y!==void 0&&X!==void 0){var ae=[...U];return ae[X]=Y,this.getCachedFormatColumns(L,$,ae)}return this.getCachedFormatColumns(L,$,U)})),te(this,"getModelRollupConfig",Pe((L,$,U)=>Re.getModelRollupConfig(L,$,U))),te(this,"getModelTotalsConfig",Pe((L,$,U)=>{var Y,X,ae,{aggregations:de,showOnTop:ee}=U;if(((Y=$==null||(X=$.columns)===null||X===void 0?void 0:X.length)!==null&&Y!==void 0?Y:0)>0||((ae=de==null?void 0:de.length)!==null&&ae!==void 0?ae:0)===0)return null;var oe=this.getOperationMap(L,de),se=this.getOperationOrder(de);return{operationMap:oe,operationOrder:se,showOnTop:ee}})),te(this,"getCachedStateOverride",Pe((L,$,U,Y,X,ae,de,ee,oe,se)=>({hoverSelectColumn:L,isFilterBarShown:$,isSelectingColumn:U,loadingScrimProgress:Y,quickFilters:X,advancedFilters:ae,sorts:de,reverseType:ee,rollupConfig:oe,isMenuShown:se}),{max:1})),te(this,"getCachedFilter",Pe((L,$,U,Y,X)=>[...L??[],...Y??[],...Re.getFiltersFromFilterMap($),...Re.getFiltersFromFilterMap(U),...X!==void 0?[X]:[]],{max:1})),te(this,"getCachedTheme",Pe((L,$,U)=>it(it(it({},Ps),L),{},{autoSelectRow:!$,rowFooterWidth:U>0?L.rowFooterWidth:0}),{max:1})),te(this,"getAlwaysFetchColumns",Pe((L,$,U,Y,X,ae)=>{for(var de=[],ee=0;ee<Y;ee+=1)de.push($[j.getModelIndex(ee,U)].name);for(var oe=0;oe<X;oe+=1)de.push($[j.getModelIndex($.length-1-oe,U)].name);if(ae)for(var se=ae[0];se<=ae[1];se+=1)de.push($[j.getModelIndex(se,U)].name);var Ae=new Set([...L,...de]);return Object.freeze([...Ae])})),te(this,"updateSearchFilter",Jt((L,$,U,Y)=>{var{model:X}=this.props,ae=ui.createSearchFilter(X.dh,L,$,U,Y);this.setState({searchFilter:ae})},Pw)),te(this,"handleConditionalFormatEditorUpdate",Jt(L=>{this.setState({conditionalFormatPreview:L})},Aw)),te(this,"handleDownloadProgressUpdate",fi((L,$)=>{var{tableDownloadStatus:U}=this.state;U===Lr.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:L,tableDownloadEstimatedTime:$})},Nw)),te(this,"getOverflowButtonTooltip",Pe(L=>{if(L==null)return null;var $=it(it({position:"absolute"},L),{},{pointerEvents:"none"}),U={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return m.createElement("div",{style:$},m.createElement(Gt,{key:Date.now(),options:U,ref:this.handleTooltipRef},"View full contents"))})),te(this,"getExpandCellTooltip",Pe(L=>{if(L==null)return null;var{expandTooltipDisplayValue:$}=this.state,U=it(it({position:"absolute"},L),{},{pointerEvents:"none"}),Y={placement:"bottom-start"};return m.createElement("div",{style:U},m.createElement(Gt,{key:Date.now(),options:Y,ref:this.handleTooltipRef},m.createElement("div",{style:{textAlign:"left"}},"Click to ",$," row",m.createElement("br",null),ln.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children")))})),te(this,"getLinkHoverTooltip",Pe(L=>{if(L==null)return null;var{linkHoverDisplayValue:$}=this.state,U=it(it({position:"absolute"},L),{},{pointerEvents:"none"}),Y={placement:"bottom"};return m.createElement("div",{style:U},m.createElement(Gt,{options:Y,ref:this.handleTooltipRef},m.createElement("div",{className:"link-hover-tooltip"},$," - Click once to follow.",m.createElement("br",null),"Click and hold to select this cell.")))})),te(this,"handleGotoValueChanged",L=>{this.setState({gotoValue:L}),this.debouncedSeekRow(L)}),te(this,"debouncedSeekRow",Jt(L=>{this.seekRow(L)},Iw)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.handlePendingCommitClicked=this.handlePendingCommitClicked.bind(this),this.handlePendingDiscardClicked=this.handlePendingDiscardClicked.bind(this),this.handleGotoRowSelectedRowNumberSubmit=this.handleGotoRowSelectedRowNumberSubmit.bind(this),this.focusRowInGrid=this.focusRowInGrid.bind(this),this.handleDownloadTable=this.handleDownloadTable.bind(this),this.handleDownloadTableStart=this.handleDownloadTableStart.bind(this),this.handleCancelDownloadTable=this.handleCancelDownloadTable.bind(this),this.handleDownloadCanceled=this.handleDownloadCanceled.bind(this),this.handleDownloadCompleted=this.handleDownloadCompleted.bind(this),this.handlePartitionAppend=this.handlePartitionAppend.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionFetchAll=this.handlePartitionFetchAll.bind(this),this.handlePartitionDone=this.handlePartitionDone.bind(this),this.handleColumnVisibilityChanged=this.handleColumnVisibilityChanged.bind(this),this.handleColumnVisibilityReset=this.handleColumnVisibilityReset.bind(this),this.handleCrossColumnSearch=this.handleCrossColumnSearch.bind(this),this.handleRollupChange=this.handleRollupChange.bind(this),this.handleOverflowClose=this.handleOverflowClose.bind(this),this.getColumnBoundingRect=this.getColumnBoundingRect.bind(this),this.handleGotoRowSelectedRowNumberChanged=this.handleGotoRowSelectedRowNumberChanged.bind(this),this.handleGotoValueSelectedColumnNameChanged=this.handleGotoValueSelectedColumnNameChanged.bind(this),this.handleGotoValueSelectedFilterChanged=this.handleGotoValueSelectedFilterChanged.bind(this),this.handleGotoValueChanged=this.handleGotoValueChanged.bind(this),this.handleGotoValueSubmitted=this.handleGotoValueSubmitted.bind(this),this.grid=null,this.gridWrapper=null,this.lastLoadedConfig=null,this.pending=new Vd,this.globalColumnFormats=Ee,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.renderer=new Ng,this.tableSaver=null,this.crossColumnRef=m.createRef(),this.isAnimating=!1,this.filterInputRef=m.createRef(),this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:$t.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:$t.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:$t.TABLE.GOTO_ROW},this.discardAction={action:()=>{var{model:L}=this.props;ke(L)&&L.isEditable&&L.pendingDataMap.size>0&&this.discardPending().catch(ne.error)},shortcut:$t.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var{model:L}=this.props;ke(L)&&L.isEditable&&L.pendingDataMap.size>0&&L.pendingDataErrors.size===0&&this.commitPending().catch(ne.error)},shortcut:$t.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var{aggregationSettings:o,conditionalFormats:l,customColumnFormatMap:s,isFilterBarShown:u,isSelectingPartition:d,model:c,movedColumns:h,movedRows:v,partition:g,partitionColumn:f,rollupConfig:p,userColumnWidths:C,userRowHeights:w,showSearchBar:b,searchValue:E,selectedSearchColumns:T,invertSearchColumns:S,advancedFilters:O,quickFilters:F,selectDistinctColumns:R,pendingDataMap:D,canCopy:P,frozenColumns:I,columnHeaderGroups:A}=e,x=[new av(this),new dv(this)];P&&x.push(new Qm(this));var{dh:H}=c,W=[new gv(this),new ng(this),new mg(this),new bv(this),new Rv(this),new lg(this),new Zv(this),new $v(this,H),new Kv(this),new ug(this)],z=h.length>0?h:c.initialMovedColumns,G=v.length>0?v:c.initialMovedRows,K=new pg({userColumnWidths:new Map(C),userRowHeights:new Map(w),movedColumns:z,initialColumnWidths:new Map(c==null||(t=c.layoutHints)===null||t===void 0||(r=t.hiddenColumns)===null||r===void 0?void 0:r.map(L=>[c.getColumnIndexByName(L),0]))}),q=T??[],k=ui.createSearchFilter(H,E,q,c.columns,S);this.tableUtils=new M(H),this.state={isFilterBarShown:u,isSelectingPartition:d,focusedFilterBarColumn:null,metricCalculator:K,metrics:void 0,keyHandlers:x,mouseHandlers:W,partition:g,partitionColumn:f,partitionTable:null,partitionFilters:[],quickFilters:F?new Map(F):new Map,advancedFilters:new Map(O),shownAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverseType:M.REVERSE_TYPE.NONE,customColumns:[],selectDistinctColumns:R,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,movedColumns:z,movedRows:G,shownColumnTooltip:null,formatter:new Gr(H),isMenuShown:!1,customColumnFormatMap:new Map(s),conditionalFormats:l,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:b,searchFilter:k,searchValue:E,selectedSearchColumns:q,invertSearchColumns:S,rollupConfig:p,rollupSelectedColumns:[],aggregationSettings:o,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:D??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:I,showOverflowModal:!1,overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",linkHoverTooltipProps:null,linkHoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(i=(a=c.columns[0])===null||a===void 0?void 0:a.name)!==null&&i!==void 0?i:"",gotoValueSelectedFilter:pe.eqIgnoreCase,gotoValue:"",columnHeaderGroups:A??c.initialColumnHeaderGroups}}componentDidMount(){var{partitionColumn:e,model:t}=this.props,r=e??t.columns.find(i=>i.isPartitionColumn);t.isFilterRequired&&t.isValuesTableAvailable&&r!=null?this.loadPartitionsTable(r):this.initState(),this.startListening(t)}componentDidUpdate(e){var{inputFilters:t,isSelectingColumn:r,settings:i,model:a,customFilters:o,sorts:l}=this.props;a!==e.model&&(this.stopListening(e.model),this.startListening(a));var s=t!==e.inputFilters?t.filter(g=>!e.inputFilters.includes(g)):[];if(s.length>0){var u,{advancedSettings:d}=this.props,c=(u=d.get(sn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&u!==void 0?u:!1;c&&(this.clearGridInputField(),this.clearCrossColumSearch()),this.startLoading("Filtering...",!0),this.applyInputFilters(s,c)}r!==e.isSelectingColumn&&this.resetColumnSelection(),i!==e.settings&&this.updateFormatterSettings(i),o!==e.customFilters&&this.startLoading("Filtering...",!0),l!==e.sorts&&this.updateSorts(l);var{loadingScrimStartTime:h,loadingScrimFinishTime:v}=this;h!=null&&v!=null&&window.requestAnimationFrame(()=>{var g=Date.now(),f=g-h,p=v-h,C=Math.min(f/p,1);v<g&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(w=>w.loadingScrimProgress==null?(ne.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:C})}),this.sendStateChange()}componentWillUnmount(){var{model:e}=this.props;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame)}getValueForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:i}=this.props,{dh:a}=i,o=this.getModelColumn(e),l=this.getModelRow(t);if(r&&o!=null&&l!=null){var s=i.valueForCell(o,l);if(M.isDateType(i.columns[o].type)){var{formatter:u}=i;return a.i18n.DateTimeFormat.format(Mw,s,a.i18n.TimeZone.getTimeZone(u.timeZone))}return s}return r?null:o!=null&&l!=null?i.textForCell(o,l):""}getModelColumn(e){var{metrics:t}=this.state;_(t);var{modelColumns:r}=t;return r==null?null:e!=null?r.get(e):null}getModelRow(e){var{metrics:t}=this.state;_(t);var{modelRows:r}=t;return r==null?null:e!=null?r.get(e):null}getTheme(){var e,{model:t,theme:r}=this.props;return this.getCachedTheme(r,(e=ke(t)&&t.isEditable)!==null&&e!==void 0?e:!1,t.floatingTopRowCount+t.floatingBottomRowCount)}getVisibleColumn(e){var{movedColumns:t}=this.state;return j.getVisibleIndex(e,t)}makeQuickFilter(e,t,r){try{return this.tableUtils.makeQuickFilter(e,t,r)}catch(i){ne.error("Error creating quick filter",i)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{model:r}=this.props,{advancedFilters:i,quickFilters:a}=this.state,o=t?new Map:new Map(i),l=t?new Map:new Map(a),s=t&&i.size>0;e.forEach(u=>{var{name:d,type:c,value:h}=u,v=r.columns.findIndex(g=>{var{name:f,type:p}=g;return f===d&&p===c});v>=0?(s=o.delete(v)||s,s=this.applyQuickFilter(v,h,l)||s):ne.error("Unable to find column for inputFilter",d,c,h)}),s&&this.setState({quickFilters:l,advancedFilters:o})}applyQuickFilter(e,t,r){var{model:i}=this.props,{formatter:a}=i,o=i.columns[e];if(t!=null&&"".concat(t).trim().length>0){var l=r.get(e);if(l!=null){var{text:s}=l;if(s===t)return ne.debug2("Ignoring change to existing filter"),!1}return r.set(e,{text:t,filter:this.makeQuickFilter(o,t,a.timeZone)}),!0}return r.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,r){ne.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",!0),this.setState(i=>{var{advancedFilters:a}=i,o=new Map(a);return t==null?o.delete(e):o.set(e,{filter:t,options:r}),{advancedFilters:o}})}setQuickFilter(e,t,r){ne.debug("Setting quick filter",e,t,r),this.startLoading("Filtering...",!0),this.setState(i=>{var{quickFilters:a}=i,o=new Map(a);return o.set(e,{filter:t,text:r}),{quickFilters:o}})}setFilterMap(e){var t;ne.debug("setFilterMap",e);var{advancedSettings:r}=this.props,i=(t=r.get(sn.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;i&&this.clearAllFilters();var{model:a}=this.props;e.forEach((o,l)=>{var{columnType:s,filterList:u}=o,d=a.columns.find(g=>g.name===l&&g.type===s);if(d!=null){var c=a.getColumnIndexByName(d.name);_(c);var h=Re.combineFiltersFromList(s,u);if(h.length===0)this.removeQuickFilter(c);else{var{formatter:v}=a;this.setQuickFilter(c,this.makeQuickFilter(d,h,v.timeZone),"".concat(h))}}})}removeColumnFilter(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{advancedFilters:r,quickFilters:i}=t,a=r?new Map(r):new Map,o=i?new Map(i):new Map;return o.delete(e),a.delete(e),{quickFilters:o,advancedFilters:a}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",!0),this.setState(t=>{var{quickFilters:r}=t,i=new Map(r);return i.delete(e),{quickFilters:i}})}clearAllFilters(){ne.debug("Clearing all filters");var{advancedFilters:e,quickFilters:t,searchFilter:r}=this.state;t.size===0&&e.size===0&&r===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",!0),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearCrossColumSearch(){ne.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){ne.debug("Rebuilding filters");var{model:e}=this.props,{advancedFilters:t,quickFilters:r}=this.state,{columns:i,formatter:a}=e,o=new Map,l=new Map;t.forEach((s,u)=>{var{options:d}=s,c=i[u],h=this.tableUtils.makeAdvancedFilter(c,d,a.timeZone);o.set(u,{options:d,filter:h})}),r.forEach((s,u)=>{var{text:d}=s,c=i[u];l.set(u,{text:d,filter:this.makeQuickFilter(c,d,a.timeZone)})}),this.startLoading("Rebuilding filters...",!0),this.setState({quickFilters:l,advancedFilters:o})}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;this.setState({quickFilters:t,advancedFilters:r})}updateFormatterSettings(e){var t,r,i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,o=bi.getColumnFormats(e),l=bi.getDateTimeFormatterOptions(e),s=(t=e==null?void 0:e.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},u=(r=e==null?void 0:e.defaultIntegerFormatOptions)!==null&&r!==void 0?r:{},d=(i=e==null?void 0:e.truncateNumbersWithPound)!==null&&i!==void 0?i:!1,c=!Vt(this.globalColumnFormats,o),h=!Vt(this.dateTimeFormatterOptions,l),v=!Vt(this.decimalFormatOptions,e==null?void 0:e.defaultDecimalFormatOptions),g=!Vt(this.integerFormatOptions,u),f=this.truncateNumbersWithPound!==d;(c||h||v||g||f)&&(this.globalColumnFormats=o,this.dateTimeFormatterOptions=l,this.decimalFormatOptions=s,this.integerFormatOptions=u,this.truncateNumbersWithPound=d,this.updateFormatter({},a),h&&a&&this.rebuildFilters())}updateFormatter(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{customColumnFormatMap:i}=this.state,{model:a}=this.props,o=it({customColumnFormatMap:i},e),l=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...o.customColumnFormatMap.values()],s=new Gr(a.dh,l,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound);ne.debug("updateFormatter",this.globalColumnFormats,l),this.setState(it(it({},o),{},{formatter:s}),()=>{r&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}initState(){var{applyInputFiltersOnInit:e,inputFilters:t,sorts:r,model:i,reverseType:a,customColumns:o,searchValue:l,selectedSearchColumns:s,invertSearchColumns:u}=this.props,d=s??[],c=ui.createSearchFilter(i.dh,l,d,i.columns,u);if(e){var h=t.filter(v=>v.value!=null);this.applyInputFilters(h)}this.setState({sorts:r,reverseType:a,customColumns:o,isReady:!0,searchFilter:c}),this.initFormatter()}loadPartitionsTable(e){var t=this;return di(function*(){var{model:r}=t.props;t.setState({isSelectingPartition:!0});try{var i=yield t.pending.add(r.valuesTable(e),d=>d.close()),a=i.columns[0],o=a.sort().desc();i.applySort([o]),i.setViewport(0,0,[a]);var l=yield t.pending.add(i.getViewportData());if(l.rows.length>0){var s=l.rows[0],u=s.get(a);t.updatePartition(u,e),t.setState({isSelectingPartition:!0})}else ne.info("Table does not have any data, just fetching all"),t.setState({isSelectingPartition:!1}),t.handlePartitionFetchAll();t.setState({partitionTable:i,partitionColumn:e},()=>{t.initState()})}catch(d){t.handleTableLoadError(d)}})()}updatePartition(e,t){var{model:r}=this.props,i=t.filter().eq(r.dh.FilterValue.ofString(e)),a=[i];this.setState({partition:e,partitionFilters:a})}copyCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{canCopy:i}=this.props;if(i){var a=String(this.getValueForCell(e,t,r));Za(a).catch(o=>ne.error("Unable to copy cell",o))}else ne.error("Attempted to copyCell for user without copy permission.")}copyRanges(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3?arguments[3]:void 0,{model:a,canCopy:o}=this.props,{metricCalculator:l,movedColumns:s}=this.state,u=l.getUserColumnWidths();if(o){var d={ranges:B.boundedRanges(e,a.columnCount,a.rowCount),includeHeaders:t,formatValues:r,movedColumns:s,userColumnWidths:u,error:i};this.setState({copyOperation:d})}else ne.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({loadingText:e});var r=this.getTheme();if(t&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var i,a,{minScrimTransitionTime:o,maxScrimTransitionTime:l}=r;_(o),_(l);var s=(i=(a=this.gridWrapper)===null||a===void 0?void 0:a.getBoundingClientRect().height)!==null&&i!==void 0?i:0,u=Math.max(o,Math.min(s/2,l));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+u,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},Zt.loadingSpinnerDelay)}}stopLoading(){this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0,this.setState({loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1}),this.loadingTimer!=null&&(clearTimeout(this.loadingTimer),this.loadingTimer=void 0)}rollback(){if(this.lastLoadedConfig){ne.debug("loading last loading config",this.lastLoadedConfig);var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:l,selectDistinctColumns:s,sorts:u}=this.lastLoadedConfig;this.lastLoadedConfig=null,this.setState({advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:l,selectDistinctColumns:s,sorts:u})}else ne.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:Ks,customColumns:[],quickFilters:new Map,reverseType:M.REVERSE_TYPE.NONE,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!Wl(this.state)}startListening(e){e.addEventListener(me.EVENT.UPDATED,this.handleUpdate),e.addEventListener(me.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(me.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(me.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}stopListening(e){e.removeEventListener(me.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(me.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(me.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(me.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var{movedColumns:t}=this.state,{model:r}=this.props,{columnCount:i}=r,a=j.getModelIndex(e,t);if(e==null||e<0||i<=e||!r.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var{metricCalculator:o,metrics:l}=this.state;_(l);var{left:s,rightVisible:u,lastLeft:d}=l;if(e<s){var c;(c=this.grid)===null||c===void 0||c.setViewState({left:e},!0)}else if(u<e){var h,v,g=(h=this.grid)===null||h===void 0?void 0:h.getMetricState();_(g);var f=o.getLastLeft(g,e,o.getVisibleWidth(g));(v=this.grid)===null||v===void 0||v.setViewState({left:Math.min(f,d),leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,{metricCalculator:r,movedColumns:i}=this.state;r.setColumnWidth(j.getModelIndex(e,i),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;ne.debug2("freezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.add(e);var o=i.getColumnIndexByName(e);_(o);var l=j.getVisibleIndex(o,r),s=j.moveItem(l,a.size-1,r);this.setState({frozenColumns:[...a],movedColumns:s})}unFreezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;ne.debug2("unfreezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.delete(e);var o=i.getColumnIndexByName(e);_(o);var l=j.getVisibleIndex(o,r),s=j.moveItem(l,a.size+i.frontColumns.length,r);this.setState({frozenColumns:[...a],movedColumns:s})}handleColumnVisibilityChanged(e,t){var r,{metricCalculator:i,metrics:a}=this.state;_(a),t?e.forEach(o=>{var l=i.initialColumnWidths.get(o),s=N(a.calculatedColumnWidths,o);l!==s?i.setColumnWidth(o,s):i.resetColumnWidth(o)}):e.forEach(o=>{i.setColumnWidth(o,0)}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleColumnVisibilityReset(){var e,t,{metricCalculator:r,metrics:i}=this.state,{model:a}=this.props;_(i);for(var o=0;o<i.columnCount;o+=1)r.resetColumnWidth(o);this.handleMovedColumnsChanged(a.initialMovedColumns),this.handleHeaderGroupsChanged(a.initialColumnHeaderGroups),this.setState({frozenColumns:(e=(t=a.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:[]})}handleCrossColumnSearch(e,t,r){var{model:i}=this.props;this.startLoading("Searching..."),this.updateSearchFilter(e,t,i.columns,r),this.setState({searchValue:e,selectedSearchColumns:t,invertSearchColumns:r})}handleAnimationLoop(){var e;(e=this.grid)===null||e===void 0||e.updateCanvas(),this.isAnimating&&(this.animationFrame=requestAnimationFrame(this.handleAnimationLoop))}handleAnimationStart(){ne.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){ne.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionAppend(e){var{onPartitionAppend:t}=this.props,{partitionColumn:r}=this.state;r!=null&&t(r,e)}handlePartitionChange(e){var{partitionColumn:t}=this.state;t!=null&&this.updatePartition(e,t)}handlePartitionFetchAll(){this.setState({partitionFilters:[],isSelectingPartition:!1})}handlePartitionDone(){this.setState({isSelectingPartition:!1})}handleTableLoadError(e){if(!ot.isCanceled(e)){ne.error(e);var{onError:t}=this.props;t(e)}}showAllColumns(){for(var e,{metricCalculator:t}=this.state,r=t.getUserColumnWidths(),i=[...r.entries()],a=0;a<i.length;a+=1){var[o,l]=i[a];l===0&&t.resetColumnWidth(o)}(e=this.grid)===null||e===void 0||e.forceUpdate()}toggleSort(e,t){ne.info("Toggling sort for column",e);var{model:r}=this.props,{sorts:i}=this.state,a=this.getModelColumn(e);_(a);var o=M.toggleSortForColumn(i,r.columns,a,t);this.updateSorts(o)}updateSorts(e){var t;this.startLoading("Sorting..."),this.setState({sorts:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}sortColumn(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:M.sortDirection.none,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;_(e);var{model:o}=this.props,l=M.sortColumn(o.sort,o.columns,e,r,i,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({reverseType:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}isReversible(){var{model:e}=this.props;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,{isFilterBarShown:t}=this.state;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var r=0,{model:i}=this.props,{columnCount:a}=i,o=0;o<a;o+=1){var l=this.getModelColumn(o);if(l!=null){var s=i.columns[l];if(s!=null&&M.isTextType(s.type)){r=o;break}}}this.focusFilterBar(r)}else{var u;(u=this.grid)===null||u===void 0||u.focus()}}isTableSearchAvailable(){var e,t,r,{model:i,canToggleSearch:a}=this.props,{dh:o}=i,l=i==null||(e=i.layoutHints)===null||e===void 0?void 0:e.searchDisplayMode;return l===((t=o.SearchDisplayMode)===null||t===void 0?void 0:t.SEARCH_DISPLAY_HIDE)?!1:l===((r=o.SearchDisplayMode)===null||r===void 0?void 0:r.SEARCH_DISPLAY_SHOW)?!0:a}toggleSearchBar(){var{showSearchBar:e}=this.state;if(this.isTableSearchAvailable()){var t=!e;this.setState({showSearchBar:t},()=>{var r;if(t&&(r=this.crossColumnRef)!==null&&r!==void 0&&r.current){var i;(i=this.crossColumnRef)===null||i===void 0||i.current.focus()}else{var a;(a=this.grid)===null||a===void 0||a.focus()}})}}toggleGotoRow(){var e,t,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{isGotoShown:o}=this.state;if(r||i){this.setState({isGotoShown:!0,gotoRow:r,gotoValue:i,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:""}),this.focusRowInGrid(r);return}var l=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,s=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(l==null||s==null){this.setState({isGotoShown:!o,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:""});return}var{model:u}=this.props,{name:d,type:c}=u.columns[s],h=u.valueForCell(s,l),v=Re.convertValueToText(h,c);this.setState({isGotoShown:!o,gotoRow:"".concat(l),gotoValue:v,gotoValueSelectedColumnName:d,gotoRowError:"",gotoValueError:""})}commitPending(){var e=this;return di(function*(){var t,r,{model:i}=e.props;if(!ke(i)||!i.isEditable)throw new Error("Cannot save, table is not editable");var{pendingSavePromise:a}=e.state;if(a!=null)throw new Error("Save already in progress");var o=(t=document)===null||t===void 0||(r=t.activeElement)===null||r===void 0?void 0:r.classList.contains("grid-cell-input-field");if(o!=null&&o){var l;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new jd("Current input is invalid");(l=e.grid)===null||l===void 0||l.focus()}var s=e.pending.add(i.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(u=>{ot.isCanceled(u)||e.setState({pendingSaveError:u,pendingSavePromise:null})});return e.setState({pendingSavePromise:s}),s})()}discardPending(){var e=this;return di(function*(){var{pendingSavePromise:t}=e.state;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var{onColumnSelected:t}=this.props;t(e)}selectData(e,t){for(var r=this,{model:i}=this.props,{columns:a,groupedColumns:o}=i,l={},s=function(){var h=a[u],{name:v,type:g}=h,f=i.valueForCell(u,t),p=i.textForCell(u,t),C=r.getVisibleColumn(u),w=Ne(i)&&i.isRowExpandable(t),b=o.find(E=>E.name===v)!=null;l[v]={value:f,text:p,type:g,isGrouped:b,isExpandable:w,visibleIndex:C}},u=0;u<a.length;u+=1)s();var{onDataSelected:d}=this.props;d(t,l)}handleAdvancedFilterChange(e,t,r){var{model:i}=this.props,a=i.getColumnIndexByName(e.name);_(a),this.setAdvancedFilter(a,t,r)}handleAdvancedFilterSortChange(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:a}=this.props,o=a.getColumnIndexByName(e.name);_(o);var l=a.columns[o].name,s=M.getSortForColumn(a.sort,l),u=null;(s==null||s.direction!==t)&&(t===M.sortDirection.descending?u=e.sort().desc():u=e.sort().asc());var d=M.setSortForColumn(a.sort,l,u,i);ne.info("Setting table sorts",d),this.startLoading("Sorting..."),this.setState({sorts:d}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleAdvancedFilterDone(){var e;(e=this.grid)===null||e===void 0||e.focus()}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e})}handleGotoRowOpened(){this.setState({isGotoShown:!0})}handleGotoRowClosed(){this.setState({isGotoShown:!1})}handleAdvancedMenuClosed(e){var t,{focusedFilterBarColumn:r,isFilterBarShown:i}=this.state;if(i&&r===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var a;(a=this.filterInputRef)===null||a===void 0||a.current.focus(),this.setState({shownAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var{model:t,onCreateChart:r}=this.props;r(e,t)}handleGridError(e){ne.warn("Grid Error",e),this.setState({toastMessage:m.createElement("div",{className:"error-message"},"".concat(e))})}handleFilterBarChange(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{focusedFilterBarColumn:r,quickFilters:i}=t,a=new Map(i);if(r!=null){var o=this.getModelColumn(r);_(o),this.applyQuickFilter(o,e,a)}return{quickFilters:a}})}handleFilterBarDone(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e){var r;(r=this.grid)===null||r===void 0||r.focus()}t&&this.setState({focusedFilterBarColumn:null})}handleFilterBarTab(e){var{focusedFilterBarColumn:t}=this.state;_(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var{model:r}=this.props,i=r.columns[e],{customColumnFormatMap:a}=this.state,o=new Map(a);if(t!=null){var l=M.getNormalizedType(i.type);_(l);var s=Gr.makeColumnFormattingRule(l,i.name,t);o.set(i.name,s)}else o.delete(i.name);this.updateFormatter({customColumnFormatMap:o})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var{openOptions:t}=e,r=[...t];return r.pop(),{openOptions:r}})}handleMenuSelect(e){this.setState(t=>{var{openOptions:r}=t;return{openOptions:[...r,e]}})}handleRequestFailed(e){var t=e;if(ne.error("request failed:",t.detail),this.stopLoading(),this.canRollback())this.startLoading("Rolling back changes...",!0),this.rollback();else{ne.error("Table failed and unable to rollback");var{onError:r}=this.props;r(new Error("Error displaying table: ".concat(t.detail)))}}handleUpdate(){var e;this.stopLoading(),ne.debug2("Received model update");var{advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:l,searchFilter:s,selectDistinctColumns:u,sorts:d}=this.state,c={advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:l,searchFilter:s,selectDistinctColumns:u,sorts:d};Wl(c)?this.lastLoadedConfig=null:this.lastLoadedConfig=c,(e=this.grid)===null||e===void 0||e.forceUpdate()}handleViewChanged(e){var t,r,{model:i}=this.props,{selectionEndRow:a=0}=(t=(r=this.grid)===null||r===void 0?void 0:r.state)!==null&&t!==void 0?t:{},o=0;if(ke(i)&&i.isEditable){_(e);var{bottomViewport:l}=e,s=i.rowCount-i.floatingBottomRowCount;a===s-1?o=i.pendingRowCount+1:a===s-2?o=i.pendingRowCount:o=Math.max(0,l-(i.rowCount-i.pendingRowCount)-i.floatingTopRowCount-i.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:o})}handleSelectionChanged(e){_(e);var{onSelectionChanged:t}=this.props,{copyOperation:r}=this.state;this.setState({selectedRanges:e}),r!=null&&this.setState({copyOperation:null}),t(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var{model:t}=this.props;this.setState({columnHeaderGroups:Re.parseColumnHeaderGroups(t,e).groups},()=>{var r;return(r=this.grid)===null||r===void 0?void 0:r.forceUpdate()})}handleTooltipRef(e){e!=null&&e.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){ne.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){ne.debug("Create new conditional format");var{openOptions:e,conditionalFormats:t}=this.state;this.setState({openOptions:[...e,{type:Se.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:t.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){ne.debug("Edit conditional format",e);var{openOptions:t,conditionalFormats:r}=this.state;this.setState({openOptions:[...t,{type:Se.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:it({},r[e])})}handleConditionalFormatEditorSave(e){ne.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return ne.debug("Invalid format index"),null;var r=[...t.conditionalFormats];return r[t.conditionalFormatEditIndex]=e,{conditionalFormats:r}},()=>{this.handleMenuBack()})}handleConditionalFormatEditorCancel(){this.handleMenuBack(),this.setState({conditionalFormatEditIndex:null})}handleUpdateCustomColumns(e){ne.info("handleUpdateCustomColumns:",e);var{model:t}=this.props,{movedColumns:r,sorts:i,quickFilters:a,advancedFilters:o,selectDistinctColumns:l}=this.state,{columns:s}=t,u=t.customColumns.map(p=>"".concat(p)),d=Re.getRemovedCustomColumnNames(u,e);if(d.length>0){var c=Re.removeSortsInColumns(i,d),h=Re.removeFiltersInColumns(s,a,d),v=Re.removeFiltersInColumns(s,o,d),g=Re.removeColumnFromMovedColumns(s,r,d),f=Re.removeColumnsFromSelectDistinctColumns(l,d);c.length!==i.length&&(ne.debug("removing sorts from removed custom columns..."),this.setState({sorts:c})),(h.size!==a.size||v.size!==o.size)&&(ne.debug("removing filters from removed custom columns..."),this.setState({quickFilters:h,advancedFilters:v})),Vt(r,g)||(ne.debug("change moved columns for removed custom columns",g),this.setState({movedColumns:g})),Vt(l,f)||(ne.debug("change selectDistinct columns for removed custom columns",g),this.setState({selectDistinctColumns:f}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){ne.debug("custom columns changed");var{isReady:e}=this.state;if(e){var t;this.stopLoading(),(t=this.grid)===null||t===void 0||t.forceUpdate()}else this.initState()}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;ne.debug("pending data updated");var{model:t}=this.props,{pendingDataMap:r,pendingDataErrors:i}=t;this.setState({pendingDataMap:r,pendingDataErrors:i,pendingSaveError:null}),(e=this.grid)===null||e===void 0||e.forceUpdate()}handleAggregationsChange(e){ne.debug("handleAggregationsChange",e),this.startLoading("Aggregating ".concat(e.aggregations.map(t=>t.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){ne.debug("handleAggregationChange",e),this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(t=>{var{aggregationSettings:r}=t;return{selectedAggregation:e,aggregationSettings:it(it({},r),{},{aggregations:r.aggregations.map(i=>i.operation===e.operation?e:i)})}})}handleAggregationEdit(e){ne.debug("handleAggregationEdit",e);var{openOptions:t}=this.state;this.setState({openOptions:[...t,{type:Se.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,r;ne.info("Rollup change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Grouping by columns ".concat((t=e==null||(r=e.columns)===null||r===void 0?void 0:r.join(", "))!==null&&t!==void 0?t:"","...")),this.setState({rollupConfig:e,movedColumns:[],frozenColumns:[],sorts:[],reverseType:M.REVERSE_TYPE.NONE,selectDistinctColumns:[]})}handleSelectDistinctChanged(e){ne.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverseType:M.REVERSE_TYPE.NONE})}handleDownloadTableStart(){var{canDownloadCsv:e}=this.props;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:Lr.DOWNLOAD_STATUS.INITIATING}):ne.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,r,i,a,o,l){var{canDownloadCsv:s}=this.props;s?(ne.info("start table downloading",e,t,r,i,a,o,l),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,r,i,a,o,l),{tableDownloadStatus:Lr.DOWNLOAD_STATUS.DOWNLOADING}))):ne.error("Attempted to handleDownloadTable for user without download CSV permission.")}seekRow(e){var t=arguments,r=this;return di(function*(){var i,a=t.length>1&&t[1]!==void 0?t[1]:!1,{gotoValueSelectedColumnName:o,gotoValueSelectedFilter:l}=r.state,{model:s}=r.props,{dh:u}=s;if(s.isSeekRowAvailable&&e!==""){var d=Re.getColumnByName(s.columns,o);if(d!==void 0){var c=(i=r.grid)===null||i===void 0?void 0:i.state.cursorRow;c==null&&(c=0);var h=l===pe.contains||l===pe.containsIgnoreCase,v=l===pe.eqIgnoreCase||l===pe.containsIgnoreCase;try{var g,{formatter:f}=s,p=M.getNormalizedType(d.type),C;switch(p){case M.dataType.CHAR:case M.dataType.STRING:{C=yield s.seekRow(c,d,u.ValueType.STRING,e,v,h,a??!1);break}case M.dataType.DATETIME:{var[w]=Hn.parseDateRange(u,e,f.timeZone);C=yield s.seekRow(c,d,u.ValueType.DATETIME,w,void 0,void 0,a??!1);break}case M.dataType.DECIMAL:case M.dataType.INT:{if(!M.isBigDecimalType(d.type)&&!M.isBigIntegerType(d.type)){var b=parseInt(e,10);e==="-Infinity"?b=Number.NEGATIVE_INFINITY:e==="Infinity"&&(b=Number.POSITIVE_INFINITY),C=yield s.seekRow(c,d,u.ValueType.NUMBER,b,void 0,void 0,a??!1)}else C=yield s.seekRow(c,d,u.ValueType.STRING,e,void 0,void 0,a??!1);break}default:C=yield s.seekRow(c,d,u.ValueType.STRING,r.tableUtils.makeValue(d.type,e,f.timeZone),void 0,void 0,a??!1)}(g=r.grid)===null||g===void 0||g.setFocusRow(C),r.setState({gotoValueError:""})}catch{r.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:Lr.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:Lr.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var{model:t}=this.props;this.pending.add(t.delete(e)).catch(r=>{ot.isCanceled(r)||ne.error("Unable to delete ranges",e,r)})}resetColumnSelection(){if(this.grid!=null){var{isSelectingColumn:e}=this.props;if(e){var{columnAllowedCursor:t}=this.props;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var{state:e}=this,{state:t}=this.grid,{onStateChange:r}=this.props;r(e,t)}}handleOverflowClose(){this.setState({showOverflowModal:!1})}getColumnBoundingRect(){var e,{metrics:t,shownColumnTooltip:r}=this.state;_(t),_(r);var i=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),a=20;_(i);var{columnHeaderHeight:o,allColumnXs:l,allColumnWidths:s,width:u,columnHeaderMaxDepth:d}=t,c=l.get(r),h=s.get(r);_(c),_(h);var v=i.left+Ie(c+h/2,a,u-a);return{top:i.top+(d-1)*o,left:i.left+Ie(c+h/2,a,u-a),bottom:i.top+d*o,right:i.left+Ie(c+h/2,a,u-a)+1,width:1,height:o,x:v,y:i.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var{gotoRow:e}=this.state;this.focusRowInGrid(e)}focusRowInGrid(e){var{model:t}=this.props,{rowCount:r}=t;if(this.setState({gotoRow:e}),e===""){this.setState({gotoRowError:"",gotoValueError:""});return}var i=parseInt(e,10);if(i>r||i<-r)this.setState({gotoRowError:"Invalid row index"});else if(i===0){var a;this.setState({gotoRowError:"",gotoValueError:""}),(a=this.grid)===null||a===void 0||a.setFocusRow(0)}else if(i<0){var o;this.setState({gotoRowError:"",gotoValueError:""}),(o=this.grid)===null||o===void 0||o.setFocusRow(i+r)}else{var l;(l=this.grid)===null||l===void 0||l.setFocusRow(i-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,r){var{columnHeaderHeight:i,columnHeaderMaxDepth:a,allColumnXs:o,allColumnWidths:l,width:s}=t,u=o.get(e),d=l.get(e);if(u==null||d==null)return null;var c=Math.max(0,u),h=d;u+d>s?h=s-u:u<0&&(h=d-Math.abs(u));var v={position:"absolute",top:(a-1)*i,left:c,width:h,height:i,pointerEvents:"none"},g={clientWidth:1,clientHeight:i,getBoundingClientRect:this.getColumnBoundingRect},f={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},p=this.getModelColumn(e);if(p==null)return null;var C=r.columns[p];return C==null?null:m.createElement("div",{style:v},m.createElement(Gt,{key:C.name,timeout:400,interactive:!0,options:f,ref:this.handleTooltipRef,referenceObject:g,onExited:()=>{this.setState({shownColumnTooltip:null})}},m.createElement(Hg,{model:r,column:C,onStatistics:()=>{var w;(w=this.tooltip)===null||w===void 0||w.update()}})))}handleGotoValueSelectedColumnNameChanged(e){var t,{model:r}=this.props,i=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow;if(i!=null){var a=r.getColumnIndexByName(e),o=Re.getColumnByName(r.columns,e);if(a==null||o==null)return;var l=r.valueForCell(a,i),s=Re.convertValueToText(l,o.type);this.setState({gotoValueSelectedColumnName:e,gotoValue:s,gotoValueError:""})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var{gotoValue:t}=this.state;this.seekRow(t,e)}render(){var e,t,r=this,i,a,o,{children:l,customFilters:s,getDownloadWorker:u,isSelectingColumn:d,isStuckToBottom:c,isStuckToRight:h,model:v,name:g,onlyFetchVisibleColumns:f,alwaysFetchColumns:p,advancedSettings:C,onAdvancedSettingsChange:w,canDownloadCsv:b,onCreateChart:E}=this.props,{metricCalculator:T,metrics:S,isFilterBarShown:O,isSelectingPartition:F,isMenuShown:R,isReady:D,copyOperation:P,focusedFilterBarColumn:I,loadingText:A,loadingScrimProgress:x,loadingSpinnerShown:H,keyHandlers:W,mouseHandlers:z,shownColumnTooltip:G,hoverAdvancedFilter:K,shownAdvancedFilter:q,hoverSelectColumn:k,quickFilters:L,advancedFilters:$,partition:U,partitionFilters:Y,partitionTable:X,partitionColumn:ae,searchFilter:de,selectDistinctColumns:ee,movedColumns:oe,movedRows:se,formatter:Ae,conditionalFormats:Je,conditionalFormatPreview:Xe,conditionalFormatEditIndex:ze,sorts:Ve,reverseType:Qe,customColumns:De,selectedRanges:lt,isTableDownloading:st,tableDownloadStatus:Mt,tableDownloadProgress:Lt,tableDownloadEstimatedTime:er,showSearchBar:ur,searchValue:Tt,selectedSearchColumns:Ze,invertSearchColumns:kt,aggregationSettings:ut,selectedAggregation:dt,rollupConfig:Ye,openOptions:yt,pendingSavePromise:_t,pendingSaveError:Rt,pendingRowCount:ct,pendingDataErrors:dr,pendingDataMap:jt,toastMessage:tr,frozenColumns:Ot,columnHeaderGroups:Ht,showOverflowModal:Ir,overflowText:qr,overflowButtonTooltipProps:Xr,expandCellTooltipProps:Qr,linkHoverTooltipProps:Zr,isGotoShown:Jr,gotoRow:_e,gotoRowError:Vn,gotoValueError:mn,gotoValueSelectedColumnName:$n,gotoValue:Ar,gotoValueSelectedFilter:Gn}=this.state;if(!D)return null;var ht=this.getTheme(),Wn=this.getCachedFilter(s,L,$,Y,de),vn=T.getUserColumnWidths(),zn=this.getCachedStateOverride(k,O,d,x,L,$,Ve,Qe,Ye,R),Hi=S?S.top:0,xi=S?S.bottomViewport:0,jn=null,Kn=null;f&&(jn=S?S.left:0,Kn=S?S.right:0);var Bi=S!=null&&S.width>0&&S.height>0,Yn=((e=Ye==null||(t=Ye.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,qn=null,Ui=S?Math.min(Math.max(Zt.minDebounce,Math.round(S.rowCount/200)),Zt.maxDebounce):Zt.maxDebounce;if(O&&I!=null&&S!=null){var{gridX:Vi,gridY:$i,allColumnXs:Gi,allColumnWidths:rr,width:gn}=S,vo=Gi.get(I),go=rr.get(I);if(vo!=null&&go!=null){var Wi,zi,ji,fo=Vi+vo,qs=$i-((Wi=ht.filterBarHeight)!==null&&Wi!==void 0?Wi:0),Xs=go+1,Qs=((zi=ht.filterBarHeight)!==null&&zi!==void 0?zi:0)-1,Zs={top:qs,left:fo,minWidth:Math.min(Xs,gn-fo),height:Qs},Ki="",po=!0,Yi=this.getModelColumn(I);_(Yi);var qi=L.get(Yi),Co=$.get(Yi);qi!=null&&(Ki=qi.text,po=qi.filter!=null);var Js=L.size!==0||$.size!==0;qn=m.createElement(jm,{ref:this.filterInputRef,style:Zs,className:ie({error:!po,active:Ki!==""||Co!=null,"iris-grid-has-filter":Js}),isAdvancedFilterSet:Co!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:I})},key:I,onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(ji=this.grid)===null||ji===void 0?void 0:ji.handleContextMenu,debounceMs:Ui,value:Ki})}}var wo=null;if(A!=null){var eu=m.createElement("div",{className:"iris-grid-loading-status"},m.createElement("div",{className:ie("iris-grid-loading-status-bar",{show:H})},A),m.createElement("button",{type:"button",onClick:this.handleCancel,className:ie("iris-grid-btn-cancel",{show:H})},m.createElement(ue,{icon:Qa,transform:"down-1"}),"Cancel")),tu=S?S.gridY:0;wo=m.createElement("div",{className:"iris-grid-loading",style:{top:tu}},eu)}var bo=null;if(G!=null&&S){var Xi;bo=this.getColumnTooltip(G,S,v),(Xi=this.tooltip)===null||Xi===void 0||Xi.update()}var So=[];if(S&&O)for(var{gridX:ru,gridY:nu,visibleColumns:Eo,allColumnXs:iu,allColumnWidths:au}=S,{filterBarHeight:Qi}=ht,ou=function(){var Be=Eo[Zi],cr=iu.get(Be),hr=au.get(Be),fn=r.getModelColumn(Be);if(fn!=null){var ea=v.isFilterable(fn);if(ea&&cr!=null&&hr!=null&&hr>0){var ta=ru+cr+hr-24,en=nu-(Qi??0)+2,pn={position:"absolute",top:en,left:ta},ra=$.get(fn),Xn=ra!=null,Cn=Be===K||Be===I||Xn,na=m.createElement("div",{className:ie("advanced-filter-button-container",{hidden:!Cn}),key:Be,style:pn},Cn&&m.createElement(Z,{kind:"ghost",className:ie("btn-link-icon advanced-filter-button",{"filter-set":Xn}),onClick:()=>{r.setState({shownAdvancedFilter:Be})},onContextMenu:ia=>{var aa;(aa=r.grid)===null||aa===void 0||aa.handleContextMenu(ia)},onMouseEnter:()=>{r.setState({hoverAdvancedFilter:Be})},onMouseLeave:()=>{r.setState({hoverAdvancedFilter:null})}},m.createElement("div",{className:"fa-layers"},m.createElement(ue,{icon:Wa,className:"filter-solid"}),m.createElement(ue,{icon:pi,className:"filter-light"}))));So.push(na)}}},Zi=0;Zi<Eo.length;Zi+=1)ou();var To=[];if(S)for(var{gridX:yo,visibleColumns:Ro,allColumnXs:lu,allColumnWidths:su,columnHeaderHeight:Oo}=S,uu=function(){var Be=Ro[Ji],cr=lu.get(Be),hr=su.get(Be);if(cr!=null&&hr!=null&&hr>0){var fn=yo+cr,ea=yo+cr+hr-20,ta=O?{position:"absolute",top:Oo,left:ea,width:20,height:ht.filterBarHeight}:{position:"absolute",top:0,left:fn,width:hr,height:Oo},en=r.getModelColumn(Be);if(en!=null){var pn=v.columns[en];if(pn==null)return ne.warn("Column does not exist at index ".concat(en," for column array of length ").concat(v.columns.length)),"continue";var ra=$.get(en),{options:Xn}=ra||{},Cn=M.getSortForColumn(v.sort,pn.name),na=Cn?Cn.direction:null,ia=m.createElement("div",{key:Be,className:"advanced-filter-menu-container",style:ta},m.createElement(ls,{className:"advanced-filter-menu-popper",onEntered:r.getAdvancedMenuOpenedHandler(Be),onExited:()=>{r.handleAdvancedMenuClosed(Be)},isShown:q===Be,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0}},r.getCachedAdvancedFilterMenuActions(v,pn,Xn,na,Ae)));To.push(ia)}}},Ji=0;Ji<Ro.length;Ji+=1)var du=uu();var Fo=this.getCachedOptionItems(E!==void 0&&v.isChartBuilderAvailable,v.isCustomColumnsAvailable,v.isFormatColumnsAvailable,v.isRollupAvailable,v.isTotalsAvailable||Yn,v.isSelectDistinctAvailable,v.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,O,ur,b,this.isTableSearchAvailable(),Jr,C.size>0),Do=this.getCachedHiddenColumns(T,vn),cu=yt.map(et=>{switch(et.type){case Se.CHART_BUILDER:return m.createElement(mf,{model:v,onChange:this.handleChartChange,onSubmit:this.handleChartCreate,key:Se.CHART_BUILDER});case Se.VISIBILITY_ORDERING_BUILDER:return m.createElement(Lp,{model:v,movedColumns:oe,hiddenColumns:Do,columnHeaderGroups:Ht,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged,key:Se.VISIBILITY_ORDERING_BUILDER});case Se.CONDITIONAL_FORMATTING:return m.createElement(eC,{rules:Je,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case Se.CONDITIONAL_FORMATTING_EDIT:return _(v.columns),_(this.handleConditionalFormatEditorUpdate),m.createElement(MC,{dh:v.dh,columns:v.columns,rule:Xe,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case Se.CUSTOM_COLUMN_BUILDER:return m.createElement(yf,{model:v,customColumns:De,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack,key:Se.CUSTOM_COLUMN_BUILDER});case Se.ROLLUP_ROWS:return m.createElement(Df,{model:v,onChange:this.handleRollupChange,config:Ye,key:Se.ROLLUP_ROWS});case Se.AGGREGATIONS:return m.createElement(Jg,{settings:ut,isRollup:Yn,onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit});case Se.AGGREGATION_EDIT:return dt&&m.createElement(af,{aggregation:dt,columns:v.originalColumns,onChange:this.handleAggregationChange});case Se.TABLE_EXPORTER:return m.createElement(Lr,{model:v,name:g,userColumnWidths:vn,movedColumns:oe,isDownloading:st,tableDownloadStatus:Mt,tableDownloadProgress:Lt,tableDownloadEstimatedTime:er??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:lt,key:Se.TABLE_EXPORTER});case Se.SELECT_DISTINCT:return m.createElement(Qp,{model:v,selectDistinctColumns:ee,onChange:this.handleSelectDistinctChanged});case Se.ADVANCED_SETTINGS:return m.createElement(mo,{items:C,onChange:w});default:throw Error("Unexpected option type ".concat(et.type))}});return m.createElement("div",{className:"iris-grid",role:"presentation"},m.createElement("div",{className:"iris-grid-column"},l!=null&&m.createElement("div",{className:"iris-grid-bar"},l),m.createElement(Or,{in:F,timeout:qe.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary"},X&&ae&&U!=null&&m.createElement(jp,{dh:v.dh,table:X,getFormattedString:(et,Be,cr)=>v.displayString(et,Be,cr),columnName:ae.name,partition:U,onChange:this.handlePartitionChange,onFetchAll:this.handlePartitionFetchAll,onAppend:this.handlePartitionAppend,onDone:this.handlePartitionDone}))),m.createElement(Or,{in:ur,timeout:qe.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"iris-grid-bar"},m.createElement(ui,{value:Tt,selectedColumns:Ze,invertSelection:kt,onChange:this.handleCrossColumnSearch,columns:v.columns,ref:this.crossColumnRef}))),m.createElement("div",{className:"grid-wrapper",ref:et=>{this.gridWrapper=et}},m.createElement($h,{ref:et=>{this.grid=et},isStickyBottom:!ke(v)||!v.isEditable,isStuckToBottom:c,isStuckToRight:h,metricCalculator:T,model:v,keyHandlers:W,mouseHandlers:z,movedColumns:oe,movedRows:se,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,stateOverride:zn,theme:ht}),m.createElement(Tw,{isOpen:Ir,text:qr,onClose:this.handleOverflowClose}),Bi&&m.createElement(wg,{model:v,modelColumns:v.columns,top:Hi,bottom:xi,left:jn,right:Kn,filter:Wn,formatter:Ae,sorts:Ve,reverseType:Qe,movedColumns:oe,customColumns:De,hiddenColumns:Do,alwaysFetchColumns:this.getAlwaysFetchColumns(p,v.columns,oe,v.floatingLeftColumnCount,v.floatingRightColumnCount,(i=this.grid)===null||i===void 0||(a=i.state.draggingColumn)===null||a===void 0?void 0:a.range),formatColumns:this.getCachedPreviewFormatColumns(v.dh,v.columns,Je,Xe,((o=yt[yt.length-1])===null||o===void 0?void 0:o.type)===Se.CONDITIONAL_FORMATTING_EDIT?ze??void 0:void 0),rollupConfig:this.getModelRollupConfig(v.originalColumns,Ye,ut),totalsConfig:this.getModelTotalsConfig(v.columns,Ye,ut),selectDistinctColumns:ee,pendingRowCount:ct,pendingDataMap:jt,frozenColumns:Ot,columnHeaderGroups:Ht}),!R&&m.createElement("div",{className:"grid-settings-button"},m.createElement(Z,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(g),onClick:this.handleMenu,icon:m.createElement(ue,{icon:md,transform:"up-1"}),tooltip:"Table Options"})),qn,wo,So,bo,To,Xr&&this.getOverflowButtonTooltip(Xr),Qr&&this.getExpandCellTooltip(Qr),Zr&&this.getLinkHoverTooltip(Zr)),m.createElement(Ow,{model:v,isShown:Jr,gotoRow:_e,gotoRowError:Vn,gotoValueError:mn,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:$n,gotoValue:Ar,gotoValueFilter:Gn,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),m.createElement(Rm,{error:Rt,isSaving:_t!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:dr,pendingDataMap:jt,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),m.createElement(gg,null,tr),m.createElement(Gm,{model:v,copyOperation:P??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),m.createElement(ft,{dh:v.dh,ref:et=>{this.tableSaver=et},getDownloadWorker:u,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:Mt===Lr.DOWNLOAD_STATUS.DOWNLOADING,formatter:Ae})),m.createElement(Or,{in:R,timeout:qe.transitionMidMs,classNames:"slide-left",onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"table-sidebar"},m.createElement(Td,null,m.createElement(Mo,{title:"Table Options",onClose:this.handleMenuClose},m.createElement(us,{onSelect:et=>this.handleMenuSelect(Fo[et]),items:Fo})),cu.map((et,Be)=>m.createElement(Mo,{title:yt[Be].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,key:yt[Be].type},et))))),m.createElement(ce,{actions:this.contextActions}))}}te(Zt,"minDebounce",150);te(Zt,"maxDebounce",500);te(Zt,"loadingSpinnerDelay",800);te(Zt,"defaultProps",{children:null,advancedFilters:lr,advancedSettings:lr,alwaysFetchColumns:Ee,conditionalFormats:Ee,customColumnFormatMap:lr,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:Ee,movedRows:Ee,inputFilters:Ee,customFilters:Ee,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onPartitionAppend:()=>{},onAdvancedSettingsChange:()=>{},partition:null,partitionColumn:null,quickFilters:lr,selectDistinctColumns:Ee,sorts:Ee,reverseType:M.REVERSE_TYPE.NONE,customColumns:Ee,aggregationSettings:Ks,rollupConfig:void 0,userColumnWidths:lr,userRowHeights:lr,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnSelectionValidator:null,columnAllowedCursor:null,columnNotAllowedCursor:null,name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",selectedSearchColumns:null,invertSearchColumns:!0,onContextMenu:()=>{},pendingDataMap:lr,getDownloadWorker:void 0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:Hn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,formatter:Ee,decimalFormatOptions:Oe.shape({defaultFormatString:Oe.string}),integerFormatOptions:Oe.shape({defaultFormatString:Oe.string})},canCopy:!0,canDownloadCsv:!0,frozenColumns:null,theme:Ps,canToggleSearch:!0});const Lw=Zt;function pa(n,e,t){return e=kw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kw(n){var e=_w(n,"string");return typeof e=="symbol"?e:String(e)}function _w(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Hw extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),pa(this,"isMissingKey",!0),pa(this,"rowIndex",void 0),pa(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const xw=Hw;function zl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ci(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zl(Object(t),!0).forEach(function(r){we(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function pr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){jl(a,r,i,o,l,"next",s)}function l(s){jl(a,r,i,o,l,"throw",s)}o(void 0)})}}function we(n,e,t){return e=Bw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bw(n){var e=Uw(n,"string");return typeof e=="symbol"?e:String(e)}function Uw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var He=Fe.module("IrisGridTableModel"),Vw=150,$w=0,Gw=[];function hi(n){return n.table!==void 0}class un extends me{seekRow(e,t,r,i,a,o,l){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r,i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Gr(e),o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),we(this,"dh",void 0),we(this,"irisGridUtils",void 0),we(this,"tableUtils",void 0),we(this,"irisFormatter",void 0),we(this,"inputTable",void 0),we(this,"subscription",void 0),we(this,"table",void 0),we(this,"viewport",void 0),we(this,"viewportData",void 0),we(this,"formattedStringData",void 0),we(this,"pendingStringData",void 0),we(this,"isSaveInProgress",void 0),we(this,"totalsTable",void 0),we(this,"totalsTablePromise",void 0),we(this,"totals",void 0),we(this,"totalsDataMap",void 0),we(this,"pendingNewDataMap",void 0),we(this,"pendingNewRowCount",0),we(this,"_columnHeaderGroupMap",new Map),we(this,"columnHeaderParentMap",new Map),we(this,"_columnHeaderMaxDepth",null),we(this,"_columnHeaderGroups",[]),we(this,"_movedColumns",null),we(this,"getMemoizedInitialMovedColumns",je(l=>{var s;if(!l)return[];var u=[],{groupMap:d}=Re.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]),c=(T,S)=>{var O=this.getColumnIndexByName(T);if(O==null)throw new Error("Unknown layout hint column: ".concat(T));var F=j.getVisibleIndex(O,u);u=j.moveItem(F,S,u)},h=(T,S)=>{var O=d.get(T);if(O==null)throw new Error("Unknown layout hint group: ".concat(T));var F=O.getVisibleRange(u);u=j.moveRange(F,S,u)},{frontColumns:v=[],backColumns:g=[],frozenColumns:f=[]}=l;if(v.length||g.length||f.length){var p=new Set,C=0;f.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,C),C+=1}),v.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,C),C+=1});var w=this.columnMap.size-1;g.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,w),w-=1})}var b=l==null?void 0:l.columnGroups;if(b){var E=[...d.values()];E.sort((T,S)=>T.depth-S.depth),E.forEach(T=>{var S=T.children[0],O=this.getColumnIndexByName(S),F;if(O!=null)F=j.getVisibleIndex(O,u);else{var R=d.get(S);if(!R)throw new Error("Unknown column ".concat(S," in group ").concat(T.name));var D=R.getVisibleRange(u);[,F]=D}for(var P=1;P<T.children.length;P+=1){var I=T.children[P],A=d.get(I),x=this.getColumnIndexByName(I);if(A){var H=A.getVisibleRange(u)[0]<F,W=H?F-A.childIndexes.length+1:F+1;h(I,W),F=W+A.childIndexes.length-1}else if(x!=null){var z=j.getVisibleIndex(x,u)<F,G=z?F:F+1;c(I,G),F=G}}})}return this._movedColumns=u,u})),we(this,"getMemoizedInitialColumnHeaderGroups",je(l=>{var s;return Re.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]).groups})),we(this,"getMemoizedColumnMap",je(l=>{var s=new Map;return l.forEach(u=>s.set(u.name,u)),s})),we(this,"getColumnIndicesByNameMap",je(l=>{var s=new Map;return l.forEach((u,d)=>{var{name:c}=u;return s.set(c,d)}),s})),we(this,"setViewport",fi((l,s,u)=>{if(s<l){He.error("Invalid viewport",l,s);return}var{viewport:d}=this;if(d!=null&&d.top===l&&d.bottom===s&&d.columns===u){He.debug2("Ignoring duplicate viewport",d);return}this.viewport={top:l,bottom:s,columns:u},He.debug2("setViewport",this.viewport),this.applyViewport()},Vw)),we(this,"applyViewport",fi(()=>{if(this.viewport){He.debug2("applyViewport",this.viewport);var{top:l,bottom:s,columns:u}=this.viewport,[d,c]=this.getCachedViewportRowRange(l,s);this.applyBufferedViewport(d,c,u)}},$w,{leading:!1})),we(this,"getCachedFormattedString",zt((l,s,u,d,c)=>l.getFormattedString(s,u,d,c),{max:1e4})),we(this,"getCachedCustomColumnFormatFlag",zt(bi.isCustomColumnFormatDefined,{max:1e4})),we(this,"getCachedViewportRowRange",je((l,s)=>{var u=s-l,d=Math.max(0,l-u*un.ROW_BUFFER_PAGES),c=s+u*un.ROW_BUFFER_PAGES;return[d,c]})),we(this,"getCachedPendingErrors",je((l,s,u)=>{var d=new Map;return l.forEach((c,h)=>{for(var{data:v}=c,g=0;g<u;g+=1)if(!v.has(g)){var f;d.has(h)||d.set(h,[]),(f=d.get(h))===null||f===void 0||f.push(new xw(h,s[g].name))}}),d})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=a,this.irisGridUtils=new Re(e),this.inputTable=o,this.subscription=null,this.table=t,this.tableUtils=new M(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0,this.columnHeaderGroups=Re.parseColumnHeaderGroups(this,(r=(i=this.layoutHints)===null||i===void 0?void 0:i.columnGroups)!==null&&r!==void 0?r:[]).groups}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new Le(me.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new Le(me.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new Le(me.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new Le(me.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new Le(me.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new Le(me.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return this.table.size+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!Re.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!Re.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new Le(me.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new Le(me.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a,o=this.valueForCell(e,t);if(o===null)return null;if(o===void 0)return;var l=(a=this.totalsColumn(e,t))!==null&&a!==void 0?a:this.columns[e],s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),u;if(!s){var d=this.formatForCell(e,t);(d==null?void 0:d.formatString)!=null&&(u=d)}var c=this.displayString(o,l.type,l.name,u);this.cacheFormattedValue(e,t,c)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(M.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return"null";if(i==="")return"empty"}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(M.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:o}=i;if(o==null||o==="")return _(r.nullStringColor),r.nullStringColor;if(a&&a.color)return a.color;if(this.isPendingRow(t))return _(r.pendingTextColor),r.pendingTextColor;if(o!=null){var l,s=(l=this.totalsColumn(e,t))!==null&&l!==void 0?l:this.columns[e];if(M.isDateType(s.type)||s.name==="Date")return _(r.dateColor),r.dateColor;if(M.isNumberType(s.type))return o>0?(_(r.positiveNumberColor),r.positiveNumberColor):o<0?(_(r.negativeNumberColor),r.negativeNumberColor):(_(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return _(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t){var r,i;return(r=(i=this.formatForCell(e,t))===null||i===void 0?void 0:i.backgroundColor)!==null&&r!==void 0?r:null}textAlignForCell(e){var t=this.columns[e],{type:r}=t;return M.isNumberType(r)?"right":M.isDateType(r)||t.name==="Date"?"center":"left"}textForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);return ua(r)?r.isNew?"":r.name:r==null?void 0:r.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(ua(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(ua(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var o=a.depth;o<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;o=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialMovedRows(){return Gw}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this._columnHeaderGroupMap}get columnHeaderGroups(){return this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=Re.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a}}get groupedColumns(){return[]}row(e){var t,r,i,a,o,l,s,u,d,c,h=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,v=(a=(o=this.totals)===null||o===void 0?void 0:o.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var f,p,C,w=(f=this.totals)===null||f===void 0?void 0:f.operationOrder[g];return _(w),(p=(C=this.totalsDataMap)===null||C===void 0?void 0:C.get(w))!==null&&p!==void 0?p:null}var b=this.pendingRow(e);if(b!=null){var E;return(E=this.pendingNewDataMap.get(b))!==null&&E!==void 0?E:null}var T=(l=(s=this.viewportData)===null||s===void 0?void 0:s.offset)!==null&&l!==void 0?l:0,S=(v?e-h:e)-T;return(u=(d=this.viewportData)===null||d===void 0||(c=d.rows)===null||c===void 0?void 0:c[S])!==null&&u!==void 0?u:null}totalsColumn(e,t){var r,i,a,o,l=this.totalsRow(t);if(l==null)return null;var s=(r=this.totals)===null||r===void 0?void 0:r.operationOrder[l],u=(i=(a=this.totals)===null||a===void 0?void 0:a.defaultOperation)!==null&&i!==void 0?i:ye.SUM,d=this.columns[e];return(o=this.totalsTable)===null||o===void 0?void 0:o.columns.find(c=>{var h;return c.name==="".concat(d.name,"__").concat(s)||(s===u||((h=this.totals)===null||h===void 0?void 0:h.operationOrder.length)===1)&&c.name===d.name})}totalsRow(e){var t,r,i,a,o,l=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,s=(a=(o=this.totals)===null||o===void 0?void 0:o.showOnTop)!==null&&a!==void 0?a:!1,u=s?e:e-this.table.size;return u>=0&&u<l?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){He.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){He.warn("invalid data!");return}var{columns:o,rows:l}=e;if(l.length!==1){He.error("Unexpected number of rows received for totals table, ignoring update");return}for(var s=new Map,u=l[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:ye.SUM,c=(i=this.totals)===null||i===void 0?void 0:i.operationMap,h=function(){var f,p,C=o[v],[w,b=(f=c==null||(p=c[w])===null||p===void 0?void 0:p[0])!==null&&f!==void 0?f:d]=C.name.split("__");s.has(b)||s.set(b,{data:new Map});var{data:E}=s.get(b),T=a.columns.findIndex(S=>S.name===w);E.set(T,{value:u.get(C),format:u.getFormat(C)})},v=0;v<o.length;v+=1)h();He.debug2("copyTotalsData",s),this.totalsDataMap=s,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],o=this.extractViewportRow(a,r);t.rows.push(o)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],o=this.getColumnIndexByName(a.name);_(o),r.set(o,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){He.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new Le(me.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(He.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Le(me.EVENT.UPDATED));return}this.totalsTablePromise=ot.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{ot.isCanceled(t)||(He.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Le(me.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){He.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){He.debug2("applyBufferedViewport",e,t,r),this.subscription==null?(He.debug2("applyBufferedViewport creating new subscription"),this.subscription=this.table.setViewport(e,t,r)):(He.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r))}snapshot(e){var t=arguments,r=this;return pr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:R=>R,o=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var l=o?B.consolidate(e):e;if(!Re.isValidSnapshotRanges(l))throw new Error("Invalid snapshot ranges ".concat(e));for(var s=new Set,u=[],d=new Set,c=0;c<l.length;c+=1){var h=l[c];_(h.endRow),_(h.startRow);for(var v=h.startRow;v<=h.endRow&&v<r.floatingTopRowCount;v+=1)s.add(v);h.endRow>=r.floatingTopRowCount&&h.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new B(h.startColumn,Math.min(Math.max(0,h.startRow-r.floatingTopRowCount)),h.endColumn,Math.min(Math.max(0,h.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(h.startRow,r.floatingTopRowCount+r.table.size);g<=h.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var f=Re.columnsFromRanges(l,r.columns),p=[];i&&p.push(f.map(R=>R.name));for(var C=[...s].sort(),w=function*(){var D=C[b],P=f.map(I=>{var A=r.getColumnIndexByName(I.name);return _(A),a(r.valueForCell(A,D),I)});i&&P.push(r.textForRowFooter(D)),p.push(P)},b=0;b<C.length;b+=1)yield*w();if(u.length>0){var E=r.irisGridUtils.rangeSetFromRanges(u),T=yield r.subscription.snapshot(E,f);p.push(...T.rows.map(R=>f.map(D=>a(R.get(D),D))))}for(var S=[...d].sort(),O=function*(){var D=S[F],P=f.map(I=>{var A=r.getColumnIndexByName(I.name);return _(A),a(r.valueForCell(A,D),I)});i&&P.push(r.textForRowFooter(D)),p.push(P)},F=0;F<S.length;F+=1)yield*O();return p})()}textSnapshot(e){var t=arguments,r=this;return pr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:l=>"".concat(l);He.debug2("textSnapshot",e,i);var o=yield r.snapshot(e,i,a,!1);return o.map(l=>l.join(" ")).join(`
14
- `)})()}valuesTable(e){var t=this;return pr(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct([e])}finally{r!=null&&r.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isKeyColumn(e){var t,r;return e<((t=(r=this.inputTable)===null||r===void 0?void 0:r.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!B.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new B(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new B(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return pr(function*(){return i.setValueForRanges([new B(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return pr(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];B.forEachCell(e,(f,p)=>{var C=r.columns[f];if(i.add(C),a[f]===void 0){var w=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);a[f]=w!=null?r.displayString(w,C.type,C.name):null}r.cachePendingValue(f,p,a[f])});var o=r.getPendingAreaRange(),l=e.map(f=>B.intersection(o,f)).filter(f=>f!=null).map(f=>(_(f),B.offset(f,0,-(r.floatingTopRowCount+r.table.size))));if(l.length>0){var s=new Map(r.pendingNewDataMap);B.forEachCell(l,(f,p)=>{s.has(p)||s.set(p,{data:new Map});var C=r.columns[f],w=s.get(p);_(w);var{data:b}=w,E=new Map(b),T=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);T!=null?E.set(f,{value:T}):E.delete(f),E.size>0?s.set(p,ci(ci({},w),{},{data:E})):s.delete(p)}),r.pendingDataMap=s}r.dispatchEvent(new Le(me.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(f=>B.intersection(u,f)).filter(f=>f!=null);if(d.length>0){var c,h=yield r.snapshot(d.map(f=>{var p,C;return new B(null,(p=f==null?void 0:f.startRow)!==null&&p!==void 0?p:null,null,(C=f==null?void 0:f.endRow)!==null&&C!==void 0?C:null)})),v=h.map(f=>{for(var p={},C=0;C<r.columns.length;C+=1)p[r.columns[C].name]=f[C];return i.forEach(w=>{p[w.name]=r.tableUtils.makeValue(w.type,t,r.formatter.timeZone)}),p}),g=yield(c=r.inputTable)===null||c===void 0?void 0:c.addRows(v);He.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}B.forEachCell(e,(f,p)=>{var C=a[f];_(C),r.cacheFormattedValue(f,p,C)})}catch(f){He.error("Unable to set ranges",e,t,f)}finally{B.forEachCell(e,(f,p)=>{r.clearPendingValue(f,p)})}})()}setValues(){var e=arguments,t=this;return pr(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(He.debug("setValues(",r,")"),!r.every(v=>{var g,f;return t.isEditableRange(B.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(f=v.row)!==null&&f!==void 0?f:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,f,{text:p}=v,C=(g=v.column)!==null&&g!==void 0?g:v.x,w=(f=v.row)!==null&&f!==void 0?f:v.y,b=t.columns[C],E=t.tableUtils.makeValue(b.type,p,t.formatter.timeZone),T=E!=null?t.displayString(E,b.type,b.name):null;t.cachePendingValue(C,w,T);var S=t.pendingRow(w);if(S!=null){i.has(S)||i.set(S,{data:new Map});var O=i.get(S);_(O);var{data:F}=O,R=new Map(F);E!=null?R.set(C,{value:E}):R.delete(C),R.size>0?i.set(S,ci(ci({},O),{},{data:R})):i.delete(S)}}),t.pendingDataMap=i,t.dispatchEvent(new Le(me.EVENT.UPDATED));var a=r.reduce((v,g)=>{var f,p,C=(f=g.row)!==null&&f!==void 0?f:g.y;return v.has(C)||v.set(C,[]),(p=v.get(C))===null||p===void 0||p.push(g),v},new Map),o=B.consolidate(r.map(v=>{var g,f;return B.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(f=v.row)!==null&&f!==void 0?f:v.y)})),l=t.getTableAreaRange(),s=o.map(v=>B.intersection(l,v)).filter(v=>v!=null);if(s.length>0){var u,d=yield t.snapshot(s.map(v=>(_(v),new B(null,v.startRow,null,v.endRow)))),c=d.map((v,g)=>{for(var f=null,p=g,C=0;C<s.length;C+=1){var w=s[C];_(w);var b=B.rowCount([w]);if(p<b){_(w.startRow),f=w.startRow+p;break}p-=b}for(var E={},T=0;T<t.columns.length;T+=1)E[t.columns[T].name]=v[T];_(f);var S=a.get(f);return S!=null&&S.forEach(O=>{var F,R=t.columns[(F=O.column)!==null&&F!==void 0?F:O.x];E[R.name]=t.tableUtils.makeValue(R.type,O.text,t.formatter.timeZone)}),E});He.info("setValues setting tableRanges",s);var h=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(c);He.info("setValues set tableRanges",s,"SUCCESS",h)}r.forEach(v=>{var g,f,{text:p}=v,C=(g=v.column)!==null&&g!==void 0?g:v.x,w=(f=v.row)!==null&&f!==void 0?f:v.y,b=t.columns[C],E=t.tableUtils.makeValue(b.type,p,t.formatter.timeZone),T=E!=null?t.displayString(E,b.type,b.name):null;t.cacheFormattedValue(C,w,T)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return pr(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(l=>{var s={};l.data.forEach((u,d)=>{var{value:c}=u,h=e.columns[d];s[h.name]=c}),a.push(s)});var o=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);He.debug("commitPending()",e.pendingNewDataMap,"result",o),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new Le(me.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){var t=this;return pr(function*(){if(!t.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));_(t.inputTable);var{keyColumns:r}=t.inputTable;if(r.length===0)throw new Error("No key columns to allow deletion");var i=t.getPendingAreaRange(),a=e.map(p=>B.intersection(i,p)).filter(p=>p!=null).map(p=>(_(p),B.offset(p,0,-(t.floatingTopRowCount+t.table.size))));if(a.length>0){for(var o=new Map(t.pendingNewDataMap),l=0;l<a.length;l+=1){var s=a[l];_(s.startRow),_(s.endRow);for(var u=s.startRow;u<=s.endRow;u+=1)o.delete(u)}t.pendingNewDataMap=o,t.formattedStringData=[],t.dispatchEvent(new Le(me.EVENT.PENDING_DATA_UPDATED)),t.dispatchEvent(new Le(me.EVENT.UPDATED))}var d=t.getTableAreaRange(),c=e.map(p=>B.intersection(d,p)).filter(p=>p!=null);if(!(c.length<=0)){var[h,v]=yield Promise.all([t.snapshot(c.map(p=>(_(p),new B(0,p.startRow,r.length-1,p.endRow)))),t.table.copy()]),g=h.map(p=>{for(var C=[],w=0;w<r.length;w+=1){var b=r[w],E=p[w],T=t.tableUtils.makeFilterRawValue(b.type,E),S=b.filter().eq(T);C.push(S)}return C.reduce((O,F)=>{var R;return(R=O==null?void 0:O.and(F))!==null&&R!==void 0?R:F})}),f=g.reduce((p,C)=>{var w;return(w=p==null?void 0:p.or(C))!==null&&w!==void 0?w:C});v.applyFilter([f]),v.close()}})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}we(un,"ROW_BUFFER_PAGES",1);function Kl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Ca(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Kl(a,r,i,o,l,"next",s)}function l(s){Kl(a,r,i,o,l,"throw",s)}o(void 0)})}}function _r(n,e,t){return e=Ww(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ww(n){var e=zw(n,"string");return typeof e=="symbol"?e:String(e)}function zw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cr=Fe.module("IrisGridTableModel");class jw extends un{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Gr(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),_r(this,"userFrozenColumns",void 0),_r(this,"customColumnList",void 0),_r(this,"formatColumnList",void 0),_r(this,"getMemoizedFrontColumns",je(a=>a??[])),_r(this,"getMemoizedBackColumns",je(a=>a??[])),_r(this,"getMemoizedFrozenColumns",je((a,o)=>{var l;return(l=o??a)!==null&&l!==void 0?l:[]})),_r(this,"getCachedFilterableColumnSet",je(a=>new Set(a.map((o,l)=>l)))),this.customColumnList=[],this.formatColumnList=[]}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get frontColumns(){var e;return this.getMemoizedFrontColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frontColumns)}get backColumns(){var e;return this.getMemoizedBackColumns((e=this.layoutHints)===null||e===void 0?void 0:e.backColumns)}get frozenColumns(){var e;return this.getMemoizedFrozenColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frozenColumns,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){return this.table.description}get customColumns(){return this.customColumnList}set customColumns(e){if(Cr.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Cr.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Cr.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(Cr.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Cr.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Cr.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new Le(me.EVENT.TABLE_CHANGED,{detail:this.table}))}set totalsConfig(e){if(Cr.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Le(me.EVENT.UPDATED));return}this.totalsTablePromise=ot.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{ot.isCanceled(t)||(Cr.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Le(me.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Ca(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return Ca(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));_(i.inputTable);var{keyColumns:o}=i.inputTable;if(o.length===0)throw new Error("No key columns to allow deletion");var l=i.getPendingAreaRange(),s=e.map(b=>B.intersection(l,b)).filter(b=>b!=null).map(b=>(_(b),B.offset(b,0,-(i.floatingTopRowCount+i.table.size))));if(s.length>0){for(var u=new Map(t()),d=0;d<s.length;d+=1){var c=s[d];_(c.startRow),_(c.endRow);for(var h=c.startRow;h<=c.endRow;h+=1)u.delete(h)}r(u),i.formattedStringData=[],i.dispatchEvent(new Le(me.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Le(me.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(b=>B.intersection(v,b)).filter(b=>b!=null);if(!(g.length<=0)){var[f,p]=yield Promise.all([i.snapshot(g.map(b=>(_(b),new B(0,b.startRow,o.length-1,b.endRow)))),i.table.copy()]),C=f.map(b=>{for(var E=[],T=0;T<o.length;T+=1){var S=o[T],O=b[T],F=i.tableUtils.makeFilterRawValue(S.type,O),R=S.filter().eq(F);E.push(R)}return E.reduce((D,P)=>{var I;return(I=D==null?void 0:D.and(P))!==null&&I!==void 0?I:P})}),w=C.reduce((b,E)=>{var T;return(T=b==null?void 0:b.or(E))!==null&&T!==void 0?T:E});p.applyFilter([w]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(p),p.close()}})()}seekRow(e,t,r,i,a,o,l){var s=this;return Ca(function*(){return s.table.seekRow(e,t,r,i,a,o,l)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Kw=jw;function Yl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Yw(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Yl(a,r,i,o,l,"next",s)}function l(s){Yl(a,r,i,o,l,"throw",s)}o(void 0)})}}function ql(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Xl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ql(Object(t),!0).forEach(function(r){Ys(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ql(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ys(n,e,t){return e=qw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qw(n){var e=Xw(n,"string");return typeof e=="symbol"?e:String(e)}function Xw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qw extends un{constructor(){super(...arguments),Ys(this,"getCachedFilterableColumnSet",je((e,t)=>new Set(((t==null?void 0:t.length)>0?t:e).map(r=>e.findIndex(i=>r.name===i.name)))))}applyBufferedViewport(e,t,r){this.table.setViewport(e,t,r)}textForCell(e,t){var r=this.columns[e],i=this.row(t);if(i!=null&&r!=null&&!i.hasChildren&&r.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,r.constituentType,r.name)}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e;return Xl(Xl({},super.extractViewportRow(e,t)),{},{isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t,r){var i=this;return Yw(function*(){var a;_(i.viewport),_(i.viewportData);var{columns:o}=i.viewport,l=[];t!=null&&t&&l.push(o.map(p=>p.name));for(var s=new B(0,(a=i.viewportData)===null||a===void 0?void 0:a.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),u=0;u<e.length;u+=1){var d=B.intersection(s,e[u]);_(d),_(d.startRow),_(d.endRow);for(var c=d.startRow;c<=d.endRow;c+=1){var h=[],v=i.viewportData.rows[c-i.viewportData.offset];_(d.startColumn),_(d.endColumn);for(var g=d.startColumn;g<=d.endColumn;g+=1){var f;_(r),h.push(r((f=v.data.get(g))===null||f===void 0?void 0:f.value,i.columns[g]))}l.push(h)}}return l})()}get groupedColumns(){return this.table.groupedColumns}get hasExpandableRows(){return!0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.groupedColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r==null?void 0:r.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r==null?void 0:r.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,r):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll&&this.table.expandAll()}collapseAll(){this.table.collapseAll&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r==null?void 0:r.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const Zw=Qw;function Ql(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Jw(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Ql(a,r,i,o,l,"next",s)}function l(s){Ql(a,r,i,o,l,"throw",s)}o(void 0)})}}function ve(n,e,t){return e=eb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eb(n){var e=tb(n,"string");return typeof e=="symbol"?e:String(e)}function tb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var wr=Fe.module("IrisGridProxyModel");function wa(n,e,t,r){return M.isTreeTable(e)?new Zw(n,e,t):new Kw(n,e,t,r)}class rb extends me{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Gr(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),r=this,ve(this,"dh",void 0),ve(this,"originalModel",void 0),ve(this,"model",void 0),ve(this,"modelPromise",void 0),ve(this,"rollup",void 0),ve(this,"selectDistinct",void 0),ve(this,"textForCell",function(){return r.model.textForCell(...arguments)}),ve(this,"truncationCharForCell",function(){return r.model.truncationCharForCell(...arguments)}),ve(this,"textAlignForCell",function(){return r.model.textAlignForCell(...arguments)}),ve(this,"colorForCell",function(){return r.model.colorForCell(...arguments)}),ve(this,"backgroundColorForCell",function(){return r.model.backgroundColorForCell(...arguments)}),ve(this,"textForColumnHeader",function(){return r.model.textForColumnHeader(...arguments)}),ve(this,"colorForColumnHeader",function(){return r.model.colorForColumnHeader(...arguments)}),ve(this,"textForRowHeader",function(){return r.model.textForRowHeader(...arguments)}),ve(this,"textForRowFooter",function(){return r.model.textForRowFooter(...arguments)}),ve(this,"isRowMovable",function(){return r.model.isRowMovable(...arguments)}),ve(this,"isColumnMovable",function(){return r.model.isColumnMovable(...arguments)}),ve(this,"isRowExpandable",function(){return Ne(r.model)?r.model.isRowExpandable(...arguments):!1}),ve(this,"isRowExpanded",function(){return Ne(r.model)?r.model.isRowExpanded(...arguments):!1}),ve(this,"setRowExpanded",function(){if(Ne(r.model))return r.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),ve(this,"expandAll",()=>{if(Ne(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),ve(this,"collapseAll",()=>{if(Ne(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),ve(this,"depthForRow",function(){return Ne(r.model)?r.model.depthForRow(...arguments):0}),ve(this,"getColumnHeaderGroup",function(){return r.model.getColumnHeaderGroup(...arguments)}),ve(this,"getColumnHeaderParentGroup",function(){return r.model.getColumnHeaderParentGroup(...arguments)}),ve(this,"formatForCell",function(){return r.model.formatForCell(...arguments)}),ve(this,"valueForCell",function(){return r.model.valueForCell(...arguments)}),ve(this,"displayString",function(){return r.model.displayString(...arguments)}),ve(this,"isEditableRange",function(){return ke(r.model)?r.model.isEditableRange(...arguments):!1}),ve(this,"isFilterable",function(){return r.model.isFilterable(...arguments)}),ve(this,"setViewport",(l,s,u)=>this.model.setViewport(l,s,u)),ve(this,"snapshot",function(){return r.model.snapshot(...arguments)}),ve(this,"textSnapshot",function(){return r.model.textSnapshot(...arguments)}),ve(this,"valuesTable",function(){return r.model.valuesTable(...arguments)}),ve(this,"editValueForCell",function(){return ke(r.model)?r.model.editValueForCell(...arguments):""}),ve(this,"setValueForCell",function(){return ke(r.model)?r.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),ve(this,"setValueForRanges",function(){return ke(r.model)?r.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),ve(this,"setValues",function(){return ke(r.model)?r.model.setValues(...arguments):Promise.resolve()}),ve(this,"isValidForCell",function(){return ke(r.model)?r.model.isValidForCell(...arguments):!1}),ve(this,"delete",function(){return r.model.delete(...arguments)}),ve(this,"commitPending",function(){return r.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var o=wa(e,t,i,a);this.dh=e,this.originalModel=o,this.model=o,this.modelPromise=null,this.rollup=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){wr.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new Le(r,{detail:t}))}setModel(e){wr.debug("setModel",e);var t=this.model;t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),this.dispatchEvent(new Le(me.EVENT.COLUMNS_CHANGED,{detail:e.columns})),hi(e)&&this.dispatchEvent(new Le(me.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){wr.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=ot.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(ot.isCanceled(t)){wr.debug2("setNextModel cancelled");return}wr.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Le(me.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(me.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(me.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}get hasExpandableRows(){return Ne(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(Ne(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(wr.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!Vt(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);hi(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>wa(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(wr.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){wr.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),r=Promise.resolve(this.originalModel);hi(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>wa(this.dh,i,this.formatter))),this.setNextModel(r)}get table(){if(hi(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.model.isFilterRequired}get isEditable(){return ke(this.model)&&this.model.isEditable}export(){if(M.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(M.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,r,i,a,o,l){var s=this;return Jw(function*(){return s.model.seekRow(e,t,r,i,a,o,l)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const nb=rb;function Zl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function ib(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Zl(a,r,i,o,l,"next",s)}function l(s){Zl(a,r,i,o,l,"throw",s)}o(void 0)})}}class ab{static makeModel(e,t){var r=arguments;return ib(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new Gr(e),a=null;return!M.isTreeTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new nb(e,t,i,a)})()}}const ob=ab;var{dh:lb}=globalThis;const Nn=lb;Fe.setLogLevel(parseInt("2",10));const Pn=Fe.module("EmbedGrid.App"),sb=[Nn.VariableType.TABLE,Nn.VariableType.TREETABLE,Nn.VariableType.HIERARCHICALTABLE,Nn.VariableType.PANDAS];async function ub(n,e){Pn.info(`Fetching table ${e}...`);const t=await Od(n,e);if(!sb.includes(t.type))throw new Error(`Unsupported type '${t.type}' for variable named '${e}'`);return await n.getObject(t)}function gb(){const n=yd(),[e,t]=y.useState(),[r,i]=y.useState(),[a,o]=y.useState(),[l,s]=y.useState(),[u,d]=y.useState(!0),c=y.useMemo(()=>new URLSearchParams(window.location.search),[]),h=c.get("canCopy")!=null,v=c.get("canDownloadCsv")!=null;y.useEffect(function(){async function p(){try{const C=c.get("name");if(C==null)throw new Error("No name param provided");Pn.debug("Loading table",C,"...");const w=await ub(n,C);Pn.debug("Creating model...");const b=await ob.makeModel(Nn,w);t(b),Pn.debug("Table successfully loaded!")}catch(C){Pn.error("Unable to load table",C),i(`${C}`)}d(!1)}p()},[n,c]),y.useEffect(function(){function p(C){const{command:w,value:b}=C.data;switch(w){case"filter":{const T=b.map(({name:S,value:O})=>{const F=e==null?void 0:e.columns.find(R=>R.name===S);if(F==null)throw new Error(`Could not find column named ${S}`);return{name:S,value:O,type:M.getNormalizedType(F.type)}});o(T);break}case"sort":{const T=b.map(({name:S,direction:O})=>{const F=e==null?void 0:e.columns.find(R=>R.name===S);if(F==null)throw new Error(`Could not find column named ${S}`);return O==="DESC"?F.sort().desc():F.sort().asc()});s(T);break}}}return window.addEventListener("message",p),()=>{window.removeEventListener("message",p)}},[e]);const g=e!=null;return Qn.jsxs("div",{className:"App",children:[g&&Qn.jsx(Lw,{canCopy:h,canDownloadCsv:v,model:e,inputFilters:a,sorts:l}),!g&&Qn.jsx(vd,{isLoaded:g,isLoading:u,errorMessage:r??null}),Qn.jsx(Rd,{})]})}export{gb as default};
15
- //# sourceMappingURL=App-b9aa3312.js.map
12
+ `:","}return t}makeSnapshot(e){var t=this;if(!(e<=0)){var{dh:r}=this.props;_(this.gridRangeCounter);var i=0,a=this.gridRanges[this.gridRangeCounter];_(this.tableSubscription),_(this.columns);for(var o=function(){_(a),_(a.startRow),_(a.endRow),_(t.rangedSnapshotCounter),_(t.chunkRows);var s=a.startRow+t.rangedSnapshotCounter*t.chunkRows,u=Math.min(s+t.chunkRows-1,a.endRow),d=t.snapshotCounter;t.cancelableSnapshots.push(ot.makeCancelable(t.tableSubscription.snapshot(r.RangeSet.ofRange(s,u),t.columns).then(c=>(xf(c),t.handleSnapshotResolved(c,d,s,u),d)).catch(c=>{ar.error(c)}),c=>{ar.info("snapshot ".concat(c," has been canceled"))})),t.rangedSnapshotCounter+=1,t.snapshotCounter+=1,t.snapshotPending+=1,t.rangedSnapshotCounter>=t.rangedSnapshotsTotal[t.gridRangeCounter]&&(t.gridRangeCounter+=1,t.rangedSnapshotCounter=0,a=t.gridRanges[t.gridRangeCounter]),i+=1};i<e;)o()}}handlePortMessage(e){var{data:t}=e,{download:r,readableStreamPulling:i}=t;if(!this.useBlobFallback){if(r!=null){var{includeColumnHeaders:a}=this;this.makeIframe("".concat(r)),this.writeCsvTable(a)}i!=null&&(this.useBlobFallback||(this.streamTimeout!=null&&clearTimeout(this.streamTimeout),this.streamTimeout=setTimeout(this.handleDownloadTimeout,ft.STREAM_TIMEOUT)))}}handleSnapshotResolved(e,t,r,i){this.snapshotHandlerTimeout=setTimeout(()=>{this.snapshotsBuffer.set(t,e),this.snapshotPending-=1,this.writeSnapshot(t,r,i),this.cancelableSnapshots[t]=null},ft.SNAPSHOT_HANDLER_TIMEOUT)}makeIframe(e){var t=document.createElement("iframe");t.hidden=!0,t.src="download/".concat(e),t.name="iframe",document.body.appendChild(t),this.iframes.push(t)}render(){return null}}Te(ft,"DOWNLOAD_CELL_CHUNK",6e3);Te(ft,"SNAPSHOT_BUFFER_SIZE",5);Te(ft,"STREAM_TIMEOUT",8e3);Te(ft,"SNAPSHOT_HANDLER_TIMEOUT",5);Te(ft,"defaultProps",{getDownloadWorker:()=>Promise.reject(new Error("Download worker not provided")),isDownloading:!1,onDownloadCompleted:()=>{},onDownloadCanceled:()=>{},onDownloadProgressUpdate:()=>{}});function Hf(n){var e,{group:t,onDelete:r,onColorChange:i,onNameChange:a,validateName:o}=n,{isNew:l}=t,s=y.useRef(t),u=y.useRef(null),d=y.useRef(null),[c,h]=y.useState(!1),[v,g]=y.useState(l?"":t.name),[f,p]=y.useState(l),[C,w]=y.useState(!1),b=v!==t.name?o(v):"",E=l&&!C||b==="",T=y.useCallback(()=>{h(!1)},[]);y.useEffect(function(){f&&u.current&&(u.current.focus(),u.current.select())},[f]),y.useEffect(function(){return()=>{s.current.isNew&&r(s.current)}},[r]),y.useEffect(function(){if(c){var N,P;(N=d.current)===null||N===void 0||N.click(),(P=d.current)===null||P===void 0||P.focus(),window.addEventListener("click",T,!0)}return()=>window.removeEventListener("click",T,!0)},[c,T]);var S=()=>{E&&(a(t,v),p(!1))},O=()=>{if(l){r(t);return}g(t.name),p(!1)},F=R=>{w(!0),R.key==="Enter"&&(R.stopPropagation(),S()),R.key===" "&&R.stopPropagation(),R.key==="Escape"&&O()};return f?m.createElement(m.Fragment,null,m.createElement("div",{className:"editing-container"},m.createElement("input",{ref:u,className:ie("form-control",{"is-invalid":!E}),value:v,placeholder:"Group Name",onChange:R=>g(R.target.value),onKeyDown:F,onBlur:()=>w(!0)}),m.createElement(Z,{kind:"ghost",icon:Ci,tooltip:"Confirm",onClick:S}),m.createElement(Z,{kind:"ghost",icon:Bu,tooltip:"Cancel",onClick:O})),!E&&m.createElement("p",{className:"mb-0 validate-label-error text-danger"},b)):m.createElement("div",{className:"group-name-wrapper"},m.createElement("span",{className:"column-name"},v),m.createElement(Z,{className:"p-1 mx-1",kind:"ghost",icon:za,tooltip:"Edit",onClick:()=>{p(!0)}}),m.createElement("span",{className:"right-buttons"},m.createElement(Z,{kind:"ghost",icon:Pr,tooltip:"Delete group",onClick:()=>r(t)}),m.createElement(Z,{kind:"ghost",className:"color-swatch mr-1",icon:t.color!==void 0?m.createElement("span",{className:"fa-layers"},m.createElement(de,{className:"color-swatch",icon:wi,color:qe.white,transform:"down-1"}),m.createElement(de,{className:"color-swatch",icon:wi,color:t.color,transform:"shrink-2 down-1"})):Uu,tooltip:"Set color",onClick:()=>h(R=>!R)}),c&&m.createElement(m.Fragment,null,m.createElement("input",{"aria-label":"Color input",ref:d,type:"color",list:"presetColors",value:(e=t.color)!==null&&e!==void 0?e:qe["content-bg"],style:{visibility:"hidden",width:0,height:0,padding:0,border:0},onChange:R=>{t.color=R.target.value,i(t,R.target.value)}}),m.createElement("datalist",{id:"presetColors"},m.createElement("option",null,qe["content-bg"]),m.createElement("option",null,qe.primary),m.createElement("option",null,qe.foreground),m.createElement("option",null,qe.green),m.createElement("option",null,qe.yellow),m.createElement("option",null,qe.orange),m.createElement("option",null,qe.red),m.createElement("option",null,qe.purple),m.createElement("option",null,qe.blue),m.createElement("option",null,qe["gray-400"])))))}function Va(){return Va=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},Va.apply(this,arguments)}function Bf(){}var Uf=y.forwardRef(function(e,t){var{value:r,clone:i,childCount:a,item:o,onVisibilityChange:l,onClick:s,onGroupDelete:u,onGroupColorChange:d,onGroupNameChange:c,validateGroupName:h,handleProps:v}=e,{group:g,modelIndex:f,isVisible:p}=o.data,C=y.useRef(null),w=y.useCallback(E=>{if(E.buttons===1){var T;l([f].flat(),!p),(T=C.current)===null||T===void 0||T.focus()}},[l,f,p]),b=y.useCallback(E=>{s(r,E)},[s,r]);return m.createElement("div",Va({ref:t,className:ie("tree-item",{isSelected:o.selected,"two-dragged":a===2,"multiple-dragged":a>2}),onClick:b},v),m.createElement(Z,{ref:C,kind:"ghost",className:"px-1",onClick:Bf,onMouseDown:w,onMouseEnter:w,icon:p?Xa:ns,tooltip:"Toggle visibility"}),m.createElement("span",{className:ie("column-name",g&&"column-group")},g&&!i?m.createElement(Hf,{group:g,onDelete:u,onColorChange:d,onNameChange:c,validateName:h}):r),m.createElement("div",null,i&&a>1&&m.createElement("span",{className:"item-count"},a),m.createElement(Gt,null,"Drag to re-order"),m.createElement(de,{icon:qa})))});const Vf=Uf;function $f(n){return n.parentId!==void 0}function yl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Rl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?yl(Object(t),!0).forEach(function(r){Gf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):yl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Gf(n,e,t){return e=Wf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Wf(n){var e=zf(n,"string");return typeof e=="symbol"?e:String(e)}function zf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function jf(n,e){return Math.round(n/e)}function Ls(n,e,t,r,i,a){var o=n.findIndex(u=>u.name===r);if(o===-1){var l=t.get(r);if(l==null)throw new Error("Column or header group not found: ".concat(r));var s=l.childIndexes.flat();return{id:r,selected:a.has(r),children:l.children.map(u=>Ls(n,e,t,u,i,a)).sort((u,d)=>{var c=Array.isArray(u.data.visibleIndex)?u.data.visibleIndex[0]:u.data.visibleIndex,h=Array.isArray(d.data.visibleIndex)?d.data.visibleIndex[0]:d.data.visibleIndex;return c-h}),data:{modelIndex:s,visibleIndex:l.getVisibleRange(e),group:l,isVisible:s.some(u=>!i.has(u))}}}return{id:r,children:[],selected:a.has(r),data:{modelIndex:o,visibleIndex:j.getVisibleIndex(o,e),isVisible:!i.has(o)}}}function Kf(n,e,t,r,i){for(var a=[],o=new Set(i),l=new Map(t.map(c=>[c.name,c])),s=new Set(r),u=0,d=function(){for(var h=j.getModelIndex(u,e),v=n[h].name,g=t.find(p=>{var{children:C}=p;return C.includes(v)});g!==void 0&&g.parent!==void 0;)g=l.get(g.parent);var f=Ls(n,e,l,g?g.name:v,s,o);a.push(f),Array.isArray(f.data.visibleIndex)?u+=f.data.visibleIndex[1]-f.data.visibleIndex[0]+1:u+=1};u<n.length;)d();return a}function Ni(n,e,t,r,i){var a=n.findIndex(C=>{var{id:w}=C;return w===t}),o=n.findIndex(C=>{var{id:w}=C;return w===e}),l=n[o],s=mu(n,o,a),u=s[a-1],d=s[a+1],c=jf(r,i),h=l.depth+c,v=Yf({previousItem:u,nextItem:d}),g=qf({nextItem:d}),f=h;return h>=v?f=v:h<g&&(f=g),{depth:f,maxDepth:v,minDepth:g,parentId:p()};function p(){var C;if(f===0||!u)return null;if(f===u.depth)return u.parentId;if(f>u.depth)return u.id;var w=(C=s.slice(0,a).reverse().find(b=>b.depth===f))===null||C===void 0?void 0:C.parentId;return w??null}}function Yf(n){var e,t,{previousItem:r,nextItem:i}=n;return Math.max((e=r==null?void 0:r.depth)!==null&&e!==void 0?e:0,(t=i==null?void 0:i.depth)!==null&&t!==void 0?t:0)}function qf(n){var{nextItem:e}=n;return e?e.depth:0}function ks(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return n.reduce((r,i,a)=>[...r,Rl(Rl({},i),{},{parentId:e,depth:t,index:a}),...ks(i.children,i.id,t+1)],[])}function Nt(n){return n.every($f)?[...n]:ks(n)}function _s(n,e){for(var t=0;t<n.length;t+=1){var r=n[t],{id:i,children:a}=r;if(i===e)return r;if(a.length){var o=_s(a,e);if(o)return o}}}function xs(n){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return n.reduce((t,r)=>{var{children:i}=r;return i.length?xs(i,t+1):t+1},e)}function Xf(n,e){var t=_s(n,e);return t?xs(t.children):0}function Ol(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ai(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ol(Object(t),!0).forEach(function(r){Qf(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ol(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Qf(n,e,t){return e=Zf(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Zf(n){var e=Jf(n,"string");return typeof e=="symbol"?e:String(e)}function Jf(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ep=[Xt.Down,Xt.Right,Xt.Up,Xt.Left],tp=[Xt.Left,Xt.Right];function rp(n,e,t){return(r,i)=>{var{currentCoordinates:a,context:{active:o,over:l,collisionRect:s,droppableRects:u,droppableContainers:d}}=i;if(ep.includes(r.code)){if(!o||!s)return;r.preventDefault();var{current:{items:c,offset:h}}=n;if(tp.includes(r.code)&&(l==null?void 0:l.id)!=null){var{depth:v,maxDepth:g,minDepth:f}=Ni(c,o.id,l.id,h,t);switch(r.code){case Xt.Left:if(v>f)return ai(ai({},a),{},{x:a.x-t});break;case Xt.Right:if(v<g)return ai(ai({},a),{},{x:a.x+t});break}return}var p=[];d.forEach(x=>{if(!(x!=null&&x.disabled||x.id===(l==null?void 0:l.id))){var W=u.get(x.id);if(W)switch(r.code){case Xt.Down:s.top<W.top&&p.push(x);break;case Xt.Up:s.top>W.top&&p.push(x);break}}});var C=vu({active:o,collisionRect:s,pointerCoordinates:null,droppableRects:u,droppableContainers:p}),w=gu(C,"id");if(w===(l==null?void 0:l.id)&&C.length>1&&(w=C[1].id),w!=null&&(l==null?void 0:l.id)!=null){var b=u.get(o.id),E=u.get(w),T=d.get(w);if(b&&E&&T){var S=c.findIndex(x=>{var{id:W}=x;return W===w}),O=c[S],F=c.findIndex(x=>{var{id:W}=x;return W===o.id}),R=c[F];if(O!=null&&R!=null){var{depth:N}=Ni(c,o.id,w,(O.depth-R.depth)*t,t),P=S>F,I=P?1:-1,A=e?(s.height-b.height)/2:0,H={x:E.left+N*t,y:E.top+I*A};return H}}}}}}function np(n,e,t){return e=ip(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ip(n){var e=ap(n,"string");return typeof e=="symbol"?e:String(e)}function ap(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Hs extends fu{}np(Hs,"activators",[{eventName:"onPointerDown",handler:n=>{var{nativeEvent:e}=n;return!(!e.isPrimary||e.button!==0||lp(e.target))}}]);var op=["button","input","textarea","select","option"];function lp(n){return!!((n==null?void 0:n.tagName)!=null&&op.includes(n.tagName.toLowerCase()))}function Bs(n){var{clone:e=!1,depth:t,disableInteraction:r=!1,ghost:i=!1,handleProps:a,value:o,dragRef:l=null,wrapperRef:s=null,renderItem:u,item:d,childCount:c}=n,h=y.useMemo(()=>Array(t).fill(0).map((g,f)=>m.createElement("span",{key:"depth-line-".concat(f),className:"depth-line"})),[t]),v=y.useMemo(()=>({ref:l,clone:e,value:o,item:d,childCount:c,handleProps:a}),[l,e,o,d,c,a]);return m.createElement("li",{key:o,className:ie("item-wrapper",{clone:e,ghost:i,disableInteraction:r}),ref:s},!e&&h,u(v))}Bs.displayName="TreeItem";var sp=["id","depth"];function $a(){return $a=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},$a.apply(this,arguments)}function Fl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ma(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Fl(Object(t),!0).forEach(function(r){up(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Fl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function up(n,e,t){return e=dp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dp(n){var e=cp(n,"string");return typeof e=="symbol"?e:String(e)}function cp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function hp(n,e){if(n==null)return{};var t=mp(n,e),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(n);for(i=0;i<a.length;i++)r=a[i],!(e.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(n,r)&&(t[r]=n[r])}return t}function mp(n,e){if(n==null)return{};var t={},r=Object.keys(n),i,a;for(a=0;a<r.length;a++)i=r[a],!(e.indexOf(i)>=0)&&(t[i]=n[i]);return t}var vp=n=>{var{isSorting:e,wasDragging:t}=n;return!(e||t)};function Nl(n){var{id:e,depth:t}=n,r=hp(n,sp),{attributes:i,isDragging:a,isSorting:o,listeners:l,setDraggableNodeRef:s,setDroppableNodeRef:u,transform:d,transition:c}=pu({id:e,animateLayoutChanges:vp}),h=Sa.Translate.toString(d),v=y.useMemo(()=>({transform:h,transition:c}),[h,c]),g=y.useMemo(()=>ma(ma(ma({},i),l),{},{style:v}),[i,l,v]);return m.createElement(Bs,$a({dragRef:s,wrapperRef:u,depth:t,ghost:a,disableInteraction:o,handleProps:g},r))}function Dl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Di(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Dl(Object(t),!0).forEach(function(r){gp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Dl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function gp(n,e,t){return e=fp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function fp(n){var e=pp(n,"string");return typeof e=="symbol"?e:String(e)}function pp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cp={keyframes(n){var{transform:e}=n;return[{opacity:1,transform:Sa.Transform.toString(e.initial)},{opacity:0,transform:Sa.Transform.toString(Di(Di({},e.final),{},{x:e.final.x+5,y:e.final.y+5}))}]},easing:"ease-out",sideEffects(n){var{active:e}=n;e.node.animate([{opacity:0},{opacity:1}],{duration:Do.duration,easing:Do.easing})}},oi=null;function wp(n){var e;return oi==null&&n.activeNodeRect&&n.activatorEvent instanceof PointerEvent&&(oi=Math.floor((n.activatorEvent.clientY-n.activeNodeRect.top)/n.activeNodeRect.height)*n.activeNodeRect.height),n.activeNodeRect||(oi=null),Di(Di({},n.transform),{},{y:n.transform.y+((e=oi)!==null&&e!==void 0?e:0)})}function bp(n){var{items:e,renderItem:t,indentationWidth:r=30,indicator:i=!1,activeId:a,overId:o,offsetLeft:l}=n,s=Cu(),u=y.useRef(s);y.useEffect(function(){u.current=s},[s]),y.useEffect(function(){u.current.measureDroppableContainers(e.map(g=>{var{id:f}=g;return f}))},[e]);var d=a!=null&&o!=null?Ni(e,a,o,l,r):null,c=y.useRef({items:e,offset:l}),h=a!=null?e.find(v=>{var{id:g}=v;return g===a}):null;return y.useEffect(()=>{c.current={items:e,offset:l}},[e,l]),m.createElement(m.Fragment,null,m.createElement("div",{className:ie("tree-container",a!=null&&"marching-ants")},e.map(v=>{var{id:g,depth:f}=v;return m.createElement(Nl,{key:g,id:g,value:g,depth:g===a&&d?d.depth:f,item:v,renderItem:t})})),wu.createPortal(m.createElement(bu,{dropAnimation:Cp,modifiers:[wp],className:"visibility-ordering-list"},a!=null&&h?m.createElement(Nl,{id:a,depth:h.depth,clone:!0,childCount:Xf(e,a)+1,value:a.toString(),renderItem:t,item:h}):null),document.body))}function Pl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function li(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Pl(Object(t),!0).forEach(function(r){Sp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Pl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Sp(n,e,t){return e=Ep(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ep(n){var e=Tp(n,"string");return typeof e=="symbol"?e:String(e)}function Tp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var yp={droppable:{strategy:Ou.Always}},Rp={activationConstraint:{distance:5}};function Op(n){var{items:e,indicator:t=!1,indentationWidth:r=30,onDragStart:i,onDragEnd:a,renderItem:o}=n,[l,s]=y.useState(null),[u,d]=y.useState(null),[c,h]=y.useState(0),v=y.useMemo(()=>{var R=Nt(e);return l!=null?R.filter(N=>{var{id:P,selected:I}=N;return P===l||!I}):R},[l,e]),g=l!=null&&u!=null?Ni(v,l,u,c,r):null,f=y.useRef({items:v,offset:c}),p=y.useMemo(()=>({coordinateGetter:rp(f,t,r)}),[r,t]),C=Su(Po(Hs,Rp),Po(Fu,p)),w=y.useMemo(()=>v.map(R=>{var{id:N}=R;return N}),[v]);y.useEffect(()=>{f.current={items:v,offset:c}},[v,c]);var b=y.useCallback(R=>{var{active:{id:N}}=R;s(N),d(N),i==null||i(N),document.body.style.setProperty("cursor","grabbing")},[i]),E=y.useCallback(R=>{var{delta:N}=R;h(N.x)},[]),T=y.useCallback(R=>{var N,{over:P}=R;d((N=P==null?void 0:P.id)!==null&&N!==void 0?N:null)},[]),S=y.useCallback(()=>{d(null),s(null),h(0),document.body.style.setProperty("cursor","")},[]),O=y.useCallback(R=>{var{active:N,over:P}=R;if(S(),g&&P){var{depth:I,parentId:A}=g,H=JSON.parse(JSON.stringify(Nt(e))),x=H.findIndex(G=>{var{id:K}=G;return K===P.id}),W=H.findIndex(G=>{var{id:K}=G;return K===N.id}),z=H[W];H[W]=li(li({},z),{},{depth:I,parentId:A}),a==null||a(z,li(li({},H[x]),{},{parentId:g.parentId}))}},[e,a,g,S]),F=y.useCallback(()=>{S()},[S]);return m.createElement(Eu,{sensors:C,collisionDetection:Tu,measuring:yp,onDragStart:b,onDragMove:E,onDragOver:T,onDragEnd:O,onDragCancel:F},m.createElement(yu,{items:w,strategy:Ru},m.createElement(bp,{items:v,renderItem:o,indicator:t,indentationWidth:r,activeId:l,overId:u,offsetLeft:c})))}function Il(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Al(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Il(Object(t),!0).forEach(function(r){Fp(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Il(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Fp(n,e,t){return e=Np(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Np(n){var e=Dp(n,"string");return typeof e=="symbol"?e:String(e)}function Dp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Pp(n,e,t,r,i,a,o,l){var s=i.map((E,T)=>Al(Al({},E),{},{index:T})),u=[],d=r,c=a[0].data.visibleIndex,h=s.findIndex(E=>{var{id:T}=E;return T===n.id}),v=s.findIndex(E=>{var{id:T}=E;return T===e.id}),g=Array.isArray(c)?c[1]+1:c+1;d=Tr(a[0],e.parentId,d);for(var f=1;f<a.length;f+=1){var{data:{visibleIndex:p}}=a[f];u=j.moveItemOrRange(p,g,u,!0),g+=Array.isArray(p)?p[1]-p[0]+1:1,d=Tr(a[f],e.parentId,d)}var C=[Array.isArray(c)?c[0]:c,g-1],w=Array.isArray(e.data.visibleIndex)?e.data.visibleIndex[0]:e.data.visibleIndex,b=j.getVisibleIndex(w,u);return h>v&&b>w&&(b-=1),e.children.length>0&&(Array.isArray(c)?c[0]:c)<b&&(b-=1),C[0]<b&&(b-=C[1]-C[0]),u=j.moveItemOrRange(C,Ie(b,o,l),u),{groups:d,movedColumns:t.concat(u)}}function Tr(n,e,t){if(n.parentId===e)return[...t];var r=t.map(p=>new Pt(p)),i=new Map(r.map(p=>[p.name,p])),a=r.find(p=>p.name===n.parentId),o=r.find(p=>p.name===e),l=r.find(p=>p.name===n.id);if(a!=null&&(a.children=a.children.filter(p=>p!==n.id),a.children.length===0)){var s,u=new Set([a.name]),{parent:d=""}=a,c=i.get(d);for((s=c)===null||s===void 0||s.removeChildren([a.name]);c&&c.children.length===0;){var h,v;u.add(c.name);var g=(h=(v=c)===null||v===void 0?void 0:v.parent)!==null&&h!==void 0?h:"",f=i.get(g);f==null||f.removeChildren([c.name]),c=f}r=r.filter(p=>{var{name:C}=p;return!u.has(C)})}return o!=null&&o.addChildren([n.id]),l==null||l.setParent(e??void 0),r}function Ml(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function si(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ml(Object(t),!0).forEach(function(r){Dt(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ml(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Dt(n,e,t){return e=Ip(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ip(n){var e=Ap(n,"string");return typeof e=="symbol"?e:String(e)}function Ap(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Mp=150;class $e extends y.Component{constructor(e){super(e),Dt(this,"list",void 0),Dt(this,"debouncedSearchColumns",Jt(this.searchColumns,Mp)),Dt(this,"handleGroupColorChange",fi((t,r)=>{var{columnHeaderGroups:i,onColumnHeaderGroupChanged:a}=this.props,o=[...i],l=new Pt(si(si({},t),{},{color:r}));o.splice(o.findIndex(s=>{var{name:u}=s;return u===t.name}),1,l),a(o)},250)),Dt(this,"renderItem",Pe(t=>{var{value:r,clone:i,item:a,ref:o,handleProps:l}=t,{onColumnVisibilityChanged:s}=this.props,{selectedColumns:u}=this.state,d=r;if(i){var c=this.getSelectedParentItems().map(h=>{var{id:v}=h;return v});d=c.join(", ")}return m.createElement(Vf,{ref:o,value:d,clone:i,item:a,childCount:u.size,onVisibilityChange:s,onClick:this.handleItemClick,onGroupDelete:this.handleGroupDelete,onGroupColorChange:this.handleGroupColorChange,onGroupNameChange:this.handleGroupNameChange,validateGroupName:this.validateGroupName,handleProps:l})})),Dt(this,"getMemoizedFirstMovableIndex",Pe((t,r,i)=>{for(var a=0;a<r.length;a+=1){var o=j.getModelIndex(a,i);if(t.isColumnMovable(o))return a}return null})),Dt(this,"getMemoizedLastMovableIndex",Pe((t,r,i)=>{for(var a=r.length-1;a>=0;a-=1){var o=j.getModelIndex(a,i);if(t.isColumnMovable(o))return a}return null})),Dt(this,"memoizedGetTreeItems",Pe((t,r,i,a,o)=>Kf(t,r,i,a,[...o.values()]))),Dt(this,"makeVisibilityOrderingList",Pe((t,r)=>{var{movedColumns:i}=this.props,a=[],o=this.getFirstMovableIndex(),l=this.getLastMovableIndex(),s=r.findIndex(E=>{var{data:T}=E;return Array.isArray(T.visibleIndex)?T.visibleIndex[0]===o:T.visibleIndex===o}),u=r.findIndex(E=>{var{data:T}=E;return Array.isArray(T.visibleIndex)?T.visibleIndex[1]===l:T.visibleIndex===l}),d=r.slice(s,u+1);if(o==null||l===null){for(var c=0;c<t.length;c+=1){var h=j.getModelIndex(c,i),v=t[h];a.push(this.renderImmovableItem(v.name))}return a}for(var g=0;g<o;g+=1){var f=j.getModelIndex(g,i),p=t[f];a.push(this.renderImmovableItem(p.name))}o!==null&&o>0&&a.push(m.createElement("hr",{key:"top-horizontal-divider"})),a.push(m.createElement(Op,{key:"movable-items",items:d,renderItem:this.renderItem,onDragStart:this.handleDragStart,onDragEnd:this.handleDragEnd})),l!=null&&l<t.length-1&&a.push(m.createElement("hr",{key:"bottom-horizontal-divider"}));for(var C=l+1;C<t.length;C+=1){var w=j.getModelIndex(C,i),b=t[w];a.push(this.renderImmovableItem(b.name))}return a})),Dt(this,"renderImmovableItem",Pe(t=>m.createElement("div",{className:"visibility-ordering-list-item immovable",key:t},m.createElement("div",{className:"column-item"},m.createElement("span",{className:"column-name"},t))))),this.handleSearchInputChange=this.handleSearchInputChange.bind(this),this.searchColumns=this.searchColumns.bind(this),this.handleItemClick=this.handleItemClick.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleGroupDelete=this.handleGroupDelete.bind(this),this.handleGroupNameChange=this.handleGroupNameChange.bind(this),this.handleGroupCreate=this.handleGroupCreate.bind(this),this.validateGroupName=this.validateGroupName.bind(this),this.addColumnToSelected=this.addColumnToSelected.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.state={selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""},this.list=null}componentWillUnmount(){this.debouncedSearchColumns.cancel()}resetVisibilityOrdering(){var{model:e,onReset:t,onMovedColumnsChanged:r,onColumnHeaderGroupChanged:i}=this.props;this.setState({selectedColumns:new Set,lastSelectedColumn:"",searchFilter:""}),t(),i(e.initialColumnHeaderGroups),r(e.initialMovedColumns)}resetSelection(){this.setState({selectedColumns:new Set,lastSelectedColumn:""})}handleSearchInputChange(e){var t=e.target.value;if(this.setState({searchFilter:t}),!t){this.debouncedSearchColumns.cancel(),this.resetSelection();return}this.debouncedSearchColumns(t)}searchColumns(e){var t=Nt(this.getTreeItems()),r=t.filter(s=>{var u,d,{id:c,data:h}=s;return!((u=(d=h.group)===null||d===void 0?void 0:d.isNew)!==null&&u!==void 0&&u)&&c.toLowerCase().includes(e.toLowerCase())}),i=r.map(s=>{var{id:u}=s;return u}),a=t.findIndex(s=>{var{id:u}=s;return u.toLowerCase().includes(e.toLowerCase())});if(this.addColumnToSelected(i,!1),i.length>0){var o,l=(o=this.list)===null||o===void 0?void 0:o.querySelectorAll(".item-wrapper")[a];l==null||l.scrollIntoView({block:"center"})}}moveSelectedColumns(e){var{columnHeaderGroups:t}=this.props,{selectedColumns:r}=this.state,i=Nt(this.getTreeItems()),a=this.getFirstMovableIndex(),o=this.getLastMovableIndex();_(a),_(o);var l=this.getSelectedParentItems(),s=e===$e.MOVE_OPTIONS.UP||e===$e.MOVE_OPTIONS.TOP;s||l.reverse();for(var u=[],d=t,c=function(){var{id:g,parentId:f,depth:p,data:{visibleIndex:C}}=l[h];switch(e){case $e.MOVE_OPTIONS.TOP:{u=j.moveItemOrRange(C,a,u,!0);var w=Array.isArray(C)?C[1]-C[0]+1:1;a+=w,d=Tr(l[h],null,d);break}case $e.MOVE_OPTIONS.BOTTOM:{u=j.moveItemOrRange(C,o,u,!0);var b=Array.isArray(C)?C[1]-C[0]+1:1;o-=b,d=Tr(l[h],null,d);break}case $e.MOVE_OPTIONS.UP:{var E=i.findIndex(z=>z.id===g),T=i.map((z,G)=>G<E&&!r.has(z.id)).lastIndexOf(!0),S=i[T];if(S!=null&&S.parentId!==f)if(Math.abs(S.depth-p)>1){var O=i.map((z,G)=>G<T&&z.depth===p).lastIndexOf(!0),F=i[O];d=Tr(l[h],F.id,d)}else d=Tr(l[h],S.parentId,d);else{var R=Ie(Array.isArray(C)?C[0]-1:C-1,a,o);u=j.moveItemOrRange(C,R,u,!1);var N=Array.isArray(C)?C[1]-C[0]+1:1;a+=N}break}case $e.MOVE_OPTIONS.DOWN:{var P=i.findIndex(z=>z.id===g),I=i.find((z,G)=>G>P&&!r.has(z.id));if((I==null?void 0:I.parentId)!==f){var A,H=i.find(z=>z.id===f);d=Tr(l[h],(A=H==null?void 0:H.parentId)!==null&&A!==void 0?A:null,d);break}else if((I==null?void 0:I.children.length)>0){d=Tr(l[h],I.id,d);break}var x=Ie(Array.isArray(C)?C[0]+1:C+1,a,o);u=j.moveItemOrRange(C,x,u,!1);var W=Array.isArray(C)?C[1]-C[0]+1:1;o-=W;break}}},h=0;h<l.length;h+=1)c();return{newMoves:u,groups:d}}handleMoveColumns(e){var{onMovedColumnsChanged:t,movedColumns:r,onColumnHeaderGroupChanged:i}=this.props,{newMoves:a,groups:o}=this.moveSelectedColumns(e),l;e===$e.MOVE_OPTIONS.TOP&&(l=()=>{var s,u;(s=this.list)===null||s===void 0||(u=s.parentElement)===null||u===void 0||u.scroll({top:0})}),e===$e.MOVE_OPTIONS.BOTTOM&&(l=()=>{var s,u;(s=this.list)===null||s===void 0||(u=s.parentElement)===null||u===void 0||u.scroll({top:this.list.parentElement.scrollHeight})}),i(o),a.length>0&&t(r.concat(a),l)}getSortMoves(e,t,r){var i=[...e],a=t===$e.SORTING_OPTIONS.ASC;i.sort((h,v)=>{var g=h.id.toUpperCase(),f=v.id.toUpperCase();return Sd.sort(g,f,a)});for(var o=[...r],l=Math.min(...i.flatMap(h=>{var{modelIndex:v}=h.data;return Array.isArray(v)?j.getVisibleIndexes(v,o):j.getVisibleIndex(v,o)})),s=0;s<i.length;s+=1){var u=i[s],{modelIndex:d}=u.data,c=Array.isArray(d)?j.getVisibleIndexes(d,o):j.getVisibleIndex(d,o);o=Array.isArray(c)?j.moveRange([Math.min(...c),Math.max(...c)],l,o,!0):j.moveItem(c,l,o),Array.isArray(c)&&(o=this.getSortMoves(u.children,t,o)),l+=Array.isArray(d)?d.length:1}return o}handleSortColumns(e){var{model:t,onMovedColumnsChanged:r}=this.props,i=this.getSortMoves(this.getTreeItems(),e,t.initialMovedColumns);r(i)}handleItemClick(e,t){if(t.stopPropagation(),!(t.target instanceof HTMLElement&&(t.target.tagName==="BUTTON"||t.target.tagName==="INPUT"))){t.currentTarget.focus();var{selectedColumns:r,lastSelectedColumn:i}=this.state,a=j.isModifierKeyDown(t),o=t.shiftKey,l=r.has(e),s=[e];if(l&&a){this.removeColumnFromSelected(e);return}var u=Nt(this.getTreeItems());if(l&&!o&&i===e){var d=u.find(g=>{var{id:f}=g;return f===e});_(d);var c=Nt(d.children).length;if(c+1===r.size){this.resetSelection();return}}if(o){var h=u.findIndex(g=>g.id===e),v=u.findIndex(g=>g.id===i);s.push(...u.slice(Math.min(v,h),Math.max(v,h)+1).map(g=>g.id))}this.addColumnToSelected(s,a||o),this.setState({lastSelectedColumn:e})}}addColumnToSelected(e,t){var{selectedColumns:r}=this.state,i=new Set(t?[...r.values()].concat(e):e),a=Nt(this.getTreeItems());a.forEach(o=>{var{id:l,children:s}=o;i.has(l)&&s.forEach(u=>i.add(u.id))}),this.setState({selectedColumns:i})}removeColumnFromSelected(e){var{selectedColumns:t}=this.state,r=Nt(this.getTreeItems()),i=r.find(l=>{var{id:s}=l;return s===e});_(i);var a=r.find(l=>{var{id:s}=l;return s===i.parentId});Nt(i==null?void 0:i.children).forEach(l=>t.delete(l.id));for(var o=function(){t.delete(a.id);var s=a.parentId;a=r.find(u=>{var{id:d}=u;return d===s})};a!=null;)o();t.delete(e),this.setState({selectedColumns:new Set(t)})}handleDragStart(e){var{selectedColumns:t}=this.state;t.has(e)||this.addColumnToSelected([e],!1)}handleDragEnd(e,t){var{movedColumns:r,onMovedColumnsChanged:i,columnHeaderGroups:a,onColumnHeaderGroupChanged:o}=this.props,l=this.getSelectedParentItems(),s=Nt(this.getTreeItems()).map((v,g)=>si(si({},v),{},{index:g})),u=this.getFirstMovableIndex(),d=this.getLastMovableIndex();_(u),_(d);var{groups:c,movedColumns:h}=Pp(e,t,r,a,s,l,u,d);o(c),i(h)}handleGroupNameChange(e,t){var{columnHeaderGroups:r,onColumnHeaderGroupChanged:i}=this.props,a=[...r],o=e.name,l=a.findIndex(h=>{var{name:v}=h;return v===o}),s=a[l];_(s);var u=new Pt(s);u.name=t,a.splice(l,1,u);var d=a.findIndex(h=>{var{name:v}=h;return v===u.parent});if(d>=0){var c=new Pt(a[d]);c.removeChildren([o]),c.addChildren([t]),a.splice(d,1,c)}i(a)}handleGroupDelete(e){var{columnHeaderGroups:t,onColumnHeaderGroupChanged:r}=this.props,i=t.filter(l=>l.name!==e.name),a=i.findIndex(l=>l.name===e.parent);if(a>=0){var o=new Pt(i[a]);o.addChildren(e.children),o.removeChildren([e.name]),i.splice(a,1,o)}r(i)}handleGroupCreate(){var{movedColumns:e,onMovedColumnsChanged:t,onColumnHeaderGroupChanged:r}=this.props,{newMoves:i,groups:a}=this.moveSelectedColumns($e.MOVE_OPTIONS.TOP),o=a.filter(c=>!c.isNew),l=this.getSelectedParentItems(),s=l.map(c=>c.data.modelIndex).flat().filter(c=>c>=0),u="".concat(Pt.NEW_GROUP_PREFIX,"-").concat(Date.now()),d=new Pt({name:u,children:l.map(c=>{var{id:h}=c;return h}),depth:0,childIndexes:[...new Set(s)]});t(e.concat(i),()=>{var c,h;(c=this.list)===null||c===void 0||(h=c.parentElement)===null||h===void 0||h.scroll({top:0})}),r(o.concat([d])),this.resetSelection()}validateGroupName(e){var{model:t,columnHeaderGroups:r}=this.props,{columns:i}=t;return ro.isValidColumnName(e)?i.some(a=>{var{name:o}=a;return o===e})||r.some(a=>{var{name:o}=a;return o===e})?"Duplicate name":"":"Invalid name"}getFirstMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedFirstMovableIndex(e,e.columns,t)}getLastMovableIndex(){var{model:e,movedColumns:t}=this.props;return this.getMemoizedLastMovableIndex(e,e.columns,t)}getTreeItems(){var{model:e,movedColumns:t,hiddenColumns:r,columnHeaderGroups:i}=this.props,{selectedColumns:a}=this.state;return this.memoizedGetTreeItems(e.columns,t,i,r,a)}getSelectedParentItems(){var{selectedColumns:e}=this.state,t=Nt(this.getTreeItems());return t.filter(r=>{var{id:i,parentId:a}=r;return e.has(i)&&!e.has(a??"")})}render(){var{model:e,hiddenColumns:t,onColumnVisibilityChanged:r}=this.props,{selectedColumns:i,searchFilter:a}=this.state,o=i.size>0,l=this.getTreeItems(),s=new Map(Nt(l).map(f=>[f.id,f.data.modelIndex])),u=new Set(t),d=[...new Set(o?[...i.values()].map(f=>s.get(f)).filter(f=>f!=null).flat():l.map(f=>f.data.modelIndex).flat())],c=d.some(f=>!u.has(f)),h=c?"Hide All":"Show All",v=c?"Hide Selected":"Show Selected",g=this.makeVisibilityOrderingList(e.columns,l);return m.createElement("div",{role:"menu",className:"visibility-ordering-builder",tabIndex:0},m.createElement("div",{className:"top-menu"},m.createElement(Z,{kind:"ghost",className:"toggle-visibility-btn",onClick:()=>{r(d,!c)},icon:c?Xa:ns,tooltip:"Toggle column visibility"},o?v:h),m.createElement(eo,{className:"visibility-search",value:a,matchCount:a?i.size:void 0,onChange:this.handleSearchInputChange})),m.createElement("div",{className:"top-menu"},m.createElement(Z,{kind:"ghost",icon:Vu,tooltip:"Reset to default",onClick:()=>{this.resetVisibilityOrdering()}},"Reset"),m.createElement("span",{className:"vertical-divider"}),m.createElement(Z,{kind:"ghost",icon:ja,tooltip:"Sort ascending",onClick:()=>{this.handleSortColumns($e.SORTING_OPTIONS.ASC)}}),m.createElement(Z,{kind:"ghost",icon:Ka,tooltip:"Sort descending",onClick:()=>{this.handleSortColumns($e.SORTING_OPTIONS.DSC)}}),m.createElement("span",{className:"vertical-divider"}),m.createElement(Z,{kind:"ghost",tooltip:"Create group from selection",disabled:!o,onClick:this.handleGroupCreate},m.createElement("span",{className:"fa-layers",style:{marginRight:"0.75rem"}},m.createElement(de,{mask:$u,icon:Ya,transform:"right-7 down-5 shrink-6"}),m.createElement(de,{icon:Gu,transform:"right-8 down-6 shrink-8"})),"Group"),m.createElement("span",{className:"vertical-divider"}),m.createElement(Z,{kind:"ghost",icon:Wu,tooltip:"Move selection up",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.UP)},disabled:!o}),m.createElement(Z,{kind:"ghost",icon:zu,tooltip:"Move selection down",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.DOWN)},disabled:!o}),m.createElement(Z,{kind:"ghost",icon:ju,tooltip:"Move selection to top",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.TOP)},disabled:!o}),m.createElement(Z,{kind:"ghost",icon:Ku,tooltip:"Move selection to bottom",onClick:()=>{this.handleMoveColumns($e.MOVE_OPTIONS.BOTTOM)},disabled:!o})),m.createElement("div",{role:"menu",className:ie("visibility-ordering-list")},m.createElement("div",{className:"column-list",ref:f=>{this.list=f}},g)))}}Dt($e,"SORTING_OPTIONS",{DSC:"DSC",ASC:"ASC"});Dt($e,"MOVE_OPTIONS",{TOP:"TOP",BOTTOM:"BOTTOM",UP:"UP",DOWN:"DOWN"});const Lp=$e;function kp(n,e,t){return e=_p(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function _p(n){var e=xp(n,"string");return typeof e=="symbol"?e:String(e)}function xp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Hp extends y.PureComponent{static createSearchFilter(e,t,r,i,a){var o=a?i.filter(u=>!r.includes(u.name)).map(u=>u.name):r;if(t&&o.length>0){var l=e.FilterValue.ofString(t),s=o.length===i.length?e.FilterCondition.search(l):e.FilterCondition.search(l,i.filter(u=>o.includes(u.name)).map(u=>u.filter()));return s}}constructor(e){super(e),kp(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=m.createRef(),this.state={isConfigureColumnsShown:!1}}focus(){var e;(e=this.searchField.current)===null||e===void 0||e.focus()}handleSearchValueChange(e){var{onChange:t,selectedColumns:r,invertSelection:i}=this.props;t(e.target.value,r,i)}sendColumnChange(e,t){var{onChange:r,value:i}=this.props;r(i,e,t)}setInvertSelection(e){var{onChange:t,value:r}=this.props;t(r,[],e)}toggleColumn(e){var{selectedColumns:t,invertSelection:r}=this.props;if(t.includes(e))this.sendColumnChange(t.filter(a=>a!==e),r);else{var i=t.slice();i.push(e),this.sendColumnChange(i,r)}}selectAll(){this.setInvertSelection(!0)}clear(){this.setInvertSelection(!1)}selectNumbers(){var{columns:e}=this.props;this.sendColumnChange(e.filter(t=>M.isNumberType(t.type)).map(t=>t.name),!1)}render(){var{value:e,selectedColumns:t,invertSelection:r,columns:i}=this.props,{isConfigureColumnsShown:a}=this.state,o=t.length===0&&r===!0||t.length===i.length&&r===!1,l=t.length===0&&r===!1||t.length===i.length&&r===!0,s;return o?s=m.createElement(m.Fragment,null,m.createElement(de,{icon:wi,mask:oa,transform:"shrink-2 down-5 right-7"}),m.createElement(de,{icon:Yu,className:"text-primary",transform:"shrink-4 down-5 right-7"})):l?s=m.createElement(m.Fragment,null,m.createElement(de,{icon:Ya,mask:oa,transform:"shrink-1 down-5 right-7"}),m.createElement(de,{icon:Ao,className:"text-danger",transform:"shrink-4 down-5 right-7"})):s=m.createElement(m.Fragment,null,m.createElement(de,{icon:wi,mask:oa,transform:"shrink-2 down-5 right-7"}),m.createElement(de,{icon:qu,className:"text-primary",transform:"shrink-4 down-5 right-7"})),m.createElement("div",{className:"cross-column-container"},m.createElement(eo,{className:"cross-column-search",placeholder:"Search Data...",value:e,onChange:this.handleSearchValueChange,ref:this.searchField}),m.createElement("button",{type:"button",className:"btn btn-link btn-link-icon px-2",onClick:()=>{a?this.setState({isConfigureColumnsShown:!1}):this.setState({isConfigureColumnsShown:!0})}},m.createElement("div",{className:"fa-layers"},s),m.createElement(Gt,null,"Configure Columns"),m.createElement(ls,{isShown:a,className:"cross-column-popper",onExited:()=>{this.setState({isConfigureColumnsShown:!1})},closeOnBlur:!0,interactive:!0},m.createElement("div",{className:"cross-column-popup"},"Searched Columns",m.createElement("div",{className:"cross-column-scroll"},i.map(u=>m.createElement(m.Fragment,{key:u.name},m.createElement(Fr,{className:"cross-column-checkbox",checked:r?!t.includes(u.name):t.includes(u.name),onChange:()=>this.toggleColumn(u.name)},u.name),u.type.substring(u.type.lastIndexOf(".")+1)))),m.createElement("div",{className:"cross-column-button-bar"},m.createElement("button",{type:"button",className:"btn btn-link",onClick:this.selectAll},"Select All"),m.createElement("button",{type:"button",className:"btn btn-link",onClick:this.clear},"Clear"),m.createElement("button",{type:"button",className:"btn btn-link",onClick:this.selectNumbers},"Numbers Only")),l&&m.createElement("p",{className:"text-danger"},m.createElement(de,{icon:Ao})," Select at least one column to search.")))))}}const ui=Hp;function Vr(n,e,t){return e=Bp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bp(n){var e=Up(n,"string");return typeof e=="symbol"?e:String(e)}function Up(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var fr=Fe.module("PartitionSelectorSearch"),Vp=150;class hn extends y.Component{static handleError(e){e instanceof as||fr.error(e)}constructor(e){super(e),Vr(this,"itemList",void 0),Vr(this,"searchInput",void 0),Vr(this,"timer",void 0),Vr(this,"debounceUpdateFilter",Jt(()=>{this.updateFilter()},Vp)),this.handleFilterChange=this.handleFilterChange.bind(this),this.handleInputFocus=this.handleInputFocus.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleListKeydown=this.handleListKeydown.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTextChange=this.handleTextChange.bind(this),this.handleViewportChange=this.handleViewportChange.bind(this),this.itemList=null,this.searchInput=null,this.timer=null,this.state={offset:0,itemCount:0,items:[],text:"",isLoading:!0}}componentDidMount(){this.startListening()}componentDidUpdate(e,t){var{isLoading:r,itemCount:i}=this.state,{onListResized:a}=this.props;(i!==t.itemCount||r!==t.isLoading)&&a()}componentWillUnmount(){this.debounceUpdateFilter.cancel(),this.stopListening()}handleKeyDown(e){if(this.itemList==null)return!1;var{items:t,itemCount:r}=this.state;switch(e.key){case"Enter":{var i=null;if(t.length>0)i=t[0].value;else{var{text:a}=this.state;i=a.trim()}if(i.length>0){var{onSelect:o}=this.props;o(i)}return e.stopPropagation(),e.preventDefault(),!0}case"ArrowDown":return r>0&&this.itemList.focusItem(1),e.stopPropagation(),e.preventDefault(),!0;default:return!1}}handleListKeydown(e){switch(e.key){case"Escape":break;default:this.focus();break}}handleFilterChange(){fr.debug2("handleFilterChange");var{table:e}=this.props,t=e.size;this.setState({itemCount:t,isLoading:!0})}handleInputFocus(){this.itemList&&this.itemList.focusItem(0)}handleSelect(e){fr.debug2("handleSelect",e);var{onSelect:t}=this.props,{offset:r,items:i}=this.state,a=e-r;if(a<0||i.length<=a){fr.error("No data for item",e);return}var{value:o}=i[a];t(o)}handleTableUpdate(e){for(var t=e.detail,{offset:r}=t,i=[],{getFormattedString:a,table:o}=this.props,l=o.columns[0],s=0;s<t.rows.length;s+=1){var u=t.rows[s],d=u.get(l),c=a(d,l.type,l.name);i.push({displayValue:c,value:d})}var h=o.size;fr.debug2("handleTableUpdate",h,r,i.length),this.setState({itemCount:h,items:i,offset:r,isLoading:!1})}handleTextChange(e){fr.debug2("handleTextChange");var{value:t}=e.target;this.setState({text:t}),this.debounceUpdateFilter()}handleViewportChange(e,t){fr.debug2("handleViewportChange",e,t);var r=Math.max(1,t-e),i=Math.max(0,e-r),a=t+r,{table:o}=this.props;o.setViewport(i,a)}focus(){this.searchInput&&this.searchInput.focus()}startListening(){var{dh:e,initialPageSize:t,table:r}=this.props;r.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),r.addEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange),r.setViewport(0,t)}stopListening(){var{dh:e,table:t}=this.props;t.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),t.removeEventListener(e.Table.EVENT_FILTERCHANGED,this.handleFilterChange)}updateFilter(){var{dh:e,initialPageSize:t,table:r}=this.props,{text:i}=this.state,a=i.trim(),o=[];if(a.length>0){var l=r.columns[0],s=l.filter().invoke("matches",e.FilterValue.ofString("(?s)(?i).*\\Q".concat(a,"\\E.*")));o.push(s)}fr.debug2("updateFilter",o),r.applyFilter(o),r.setViewport(0,t)}render(){var{isLoading:e,itemCount:t,items:r,offset:i,text:a}=this.state,o=Math.min(t,hn.MAX_VISIBLE_ITEMS)*Ea.DEFAULT_ROW_HEIGHT+11;return m.createElement("div",{className:"iris-grid-partition-selector-search"},m.createElement("div",{className:"search-container"},m.createElement("input",{type:"text",ref:l=>{this.searchInput=l},value:a,placeholder:"Available Partitions",onChange:this.handleTextChange,onFocus:this.handleInputFocus,onKeyDown:this.handleKeyDown,className:"form-control input-partition"})),!e&&t>0&&m.createElement("div",{className:"iris-grid-partition-selector-search-list",onKeyDown:this.handleListKeydown,role:"presentation",style:{height:o}},m.createElement(Ea,{ref:l=>{this.itemList=l},itemCount:t,items:r,offset:i,onSelect:this.handleSelect,onViewportChange:this.handleViewportChange})),!e&&t===0&&m.createElement("div",{className:"iris-grid-partition-selector-search-empty"},"No results"),e&&m.createElement("div",{className:"iris-grid-partition-selector-loading"},m.createElement(zr,null)," Loading..."))}}Vr(hn,"MAX_VISIBLE_ITEMS",12);Vr(hn,"defaultProps",{initialPageSize:100,onSelect:()=>{},onListResized:()=>{}});Vr(hn,"propTypes",{getFormattedString:Oe.func.isRequired,table:Oe.shape({addEventListener:Oe.func.isRequired,removeEventListener:Oe.func.isRequired,columns:Oe.arrayOf(Oe.shape({name:Oe.string.isRequired,type:Oe.string.isRequired,filter:Oe.func.isRequired})),size:Oe.number.isRequired,applyFilter:Oe.func.isRequired,setViewport:Oe.func.isRequired}).isRequired,initialPageSize:Oe.number,onSelect:Oe.func,onListResized:Oe.func});const $p=hn;function gi(n,e,t){return e=Gp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Gp(n){var e=Wp(n,"string");return typeof e=="symbol"?e:String(e)}function Wp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var tn=Fe.module("IrisGridPartitionSelector"),zp=250;class Us extends y.Component{constructor(e){super(e),gi(this,"searchMenu",void 0),gi(this,"selectorSearch",void 0),gi(this,"debounceUpdate",Jt(()=>{this.sendUpdate()},zp)),this.handleAppendClick=this.handleAppendClick.bind(this),this.handleCloseClick=this.handleCloseClick.bind(this),this.handleIgnoreClick=this.handleIgnoreClick.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionSelect=this.handlePartitionSelect.bind(this),this.handlePartitionListResized=this.handlePartitionListResized.bind(this),this.handleSearchOpened=this.handleSearchOpened.bind(this),this.handleSearchClosed=this.handleSearchClosed.bind(this),this.searchMenu=null,this.selectorSearch=null;var{partition:t}=e;this.state={partition:t}}componentWillUnmount(){this.debounceUpdate.cancel()}handleAppendClick(){tn.debug2("handleAppendClick");var{onAppend:e}=this.props,{partition:t}=this.state;e(t)}handleCloseClick(){tn.debug2("handleCloseClick"),this.sendDone()}handleIgnoreClick(){tn.debug2("handleIgnoreClick"),this.sendFetchAll()}handlePartitionChange(e){tn.debug2("handlePartitionChange");var{value:t}=e.target;this.setState({partition:t}),this.debounceUpdate()}handlePartitionSelect(e){this.searchMenu&&this.searchMenu.closeMenu(),this.setState({partition:e},()=>{this.sendUpdate()})}handlePartitionListResized(){this.searchMenu&&this.searchMenu.scheduleUpdate()}handleSearchClosed(){var{table:e}=this.props;e.applyFilter([])}handleSearchOpened(){this.selectorSearch&&this.selectorSearch.focus()}sendDone(){this.debounceUpdate.flush();var{onDone:e}=this.props;e()}sendUpdate(){tn.debug2("sendUpdate");var{onChange:e}=this.props,{partition:t}=this.state;e(t)}sendFetchAll(){tn.debug2("sendFetchAll"),this.debounceUpdate.cancel();var{onFetchAll:e}=this.props;e()}render(){var{columnName:e,dh:t,getFormattedString:r,onDone:i,table:a}=this.props,{partition:o}=this.state,l=m.createElement($p,{dh:t,key:"search",getFormattedString:r,table:a,onSelect:this.handlePartitionSelect,onListResized:this.handlePartitionListResized,ref:s=>{this.selectorSearch=s}});return m.createElement("div",{className:"iris-grid-partition-selector"},m.createElement("div",{className:"status-message"},m.createElement("span",null,'Filtering "',e,'" partition to')),m.createElement("div",{className:"input-group"},m.createElement("input",{type:"text",value:o,onChange:this.handlePartitionChange,className:"form-control input-partition"}),m.createElement("div",{className:"input-group-append"},m.createElement("button",{type:"button",className:"btn btn-outline-primary"},m.createElement(de,{icon:rs}),m.createElement(Gt,null,"Partitions"),m.createElement(ss,{ref:s=>{this.searchMenu=s},actions:[{menuElement:l}],onMenuOpened:this.handleSearchOpened,onMenuClosed:this.handleSearchClosed})))),m.createElement("div",{className:"iris-grid-partition-selector-spacer"}),m.createElement("button",{type:"button",className:"btn btn-outline-primary btn-ignore",onClick:this.handleIgnoreClick},"Ignore & Fetch All"),m.createElement("button",{type:"button",className:"btn btn-outline-primary btn-append",onClick:this.handleAppendClick},"Append Command"),m.createElement("button",{type:"button",className:"btn btn-link btn-link-icon btn-close",onClick:i},m.createElement(de,{icon:Qa})))}}gi(Us,"defaultProps",{onAppend:()=>{},onChange:()=>{},onFetchAll:()=>{},onDone:()=>{},partition:""});const jp=Us;function Kp(n,e,t){return e=Yp(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Yp(n){var e=qp(n,"string");return typeof e=="symbol"?e:String(e)}function qp(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Xp=Fe.module("SelectDistinctBuilder");class Vs extends y.Component{constructor(e){super(e),this.handleAddColumnClick=this.handleAddColumnClick.bind(this),this.handleDeleteColumn=this.handleDeleteColumn.bind(this),this.handleDropdownChanged=this.handleDropdownChanged.bind(this);var{model:t,selectDistinctColumns:r}=this.props;this.state={inputs:r.length>0?[...r]:[""],columns:t.originalColumns}}componentDidUpdate(e,t){var{inputs:r}=this.state,{onChange:i}=this.props;if(t.inputs!==r){var a=r.filter(o=>o!=="");Vt(t.inputs.filter(o=>o!==""),a)||i(a)}}handleAddColumnClick(){this.setState(e=>{var{inputs:t}=e;return{inputs:[...t,""]}})}handleDeleteColumn(e){this.setState(t=>{var{inputs:r}=t;return{inputs:r.length===1&&e===0?[""]:r.filter((i,a)=>e!==a)}})}handleDropdownChanged(e,t){Xp.debug("handleDropdownChanged",e,t);var{value:r}=t.target;this.setState(i=>{var{inputs:a}=i,o=[...a];return o[e]=r,{inputs:o}})}renderInputs(){var{columns:e,inputs:t}=this.state;return t.map((r,i)=>{var a=e.filter(o=>{var{name:l}=o;return l===r||!t.includes(l)}).map(o=>{var{name:l}=o;return m.createElement("option",{value:l,key:l},l)});return m.createElement("div",{className:"form-inline px-3 pb-3",key:i},m.createElement("select",{className:"form-control custom-select col",value:r,onChange:o=>this.handleDropdownChanged(i,o)},m.createElement("option",{value:""},"Select a column"),a),(t.length>1||r!=="")&&m.createElement(Z,{kind:"ghost",className:"ml-1 px-2",onClick:()=>{this.handleDeleteColumn(i)},icon:m.createElement(de,{icon:Pr,transform:"grow-3"}),tooltip:"Delete column"}))})}render(){var{columns:e,inputs:t}=this.state,r=t.length>=e.length;return m.createElement("div",{role:"presentation",className:"select-distinct-builder-container h-100"},m.createElement("div",{className:"select-distinct-title"},"Display Unique Values From"),this.renderInputs(),m.createElement("hr",null),m.createElement("div",{className:"pt-1 px-3"},m.createElement(Z,{kind:"ghost",className:"btn-add-column",onClick:this.handleAddColumnClick,disabled:r,icon:dn},"Add Additional Column")),m.createElement("div",{className:"select-distinct-builder-footer"},m.createElement("div",{className:"select-distinct-builder-hint"},"Display only unique values from the selected table columns. Note that this will reset any filters and display only the selected columns.")))}}Kp(Vs,"defaultProps",{selectDistinctColumns:[],onChange:()=>{}});const Qp=Vs;function mo(n){var{items:e,onChange:t=()=>{}}=n;return m.createElement(us,{items:Array.from(e.entries()).map(r=>{var[i,a]=r;return{title:mo.getAdvancedSettingsTitleForKey(i),isOn:a,onChange:o=>t(i,o)}})})}mo.getAdvancedSettingsTitleForKey=n=>{switch(n){case sn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from a control";case sn.LINK_CHANGE_CLEARS_ALL_FILTERS:return"Clear current table filters before applying new filters from an incoming link filter"}};function _n(){return _n=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},_n.apply(this,arguments)}var Ll=Fe.module("ConditionalFormattingMenu"),va=()=>{};function Zp(n){var{column:{type:e}}=n;if(M.isNumberType(e))return n.condition===re.IS_NULL||n.condition===re.IS_NOT_NULL?"":"".concat(n.value);if(M.isCharType(e))return n.condition===he.IS_NULL||n.condition===he.IS_NOT_NULL?"":"".concat(n.value);if(M.isStringType(e))return n.condition===ge.IS_NULL||n.condition===ge.IS_NOT_NULL?"":'"'.concat(n.value,'"');if(M.isDateType(e))return n.condition===he.IS_NULL||n.condition===he.IS_NOT_NULL?"":"".concat(n.value);if(M.isBooleanType(e))return"";throw new Error("Invalid column type ".concat(e," in getRuleValue"))}function Jp(n){return M.isNumberType(n.column.type)&&n.condition===re.IS_BETWEEN?"".concat(n.start," < ").concat(n.column.name," < ").concat(n.end):"".concat(n.column.name," ").concat(wm(n.column.type,n.condition),`
13
+ `).concat(Zp(n))}function eC(n){var{rules:e=[],onChange:t=va,onCreate:r=va,onSelect:i=va}=n,a=y.useCallback((u,d,c)=>{u.stopPropagation(),Ll.debug("Rule clicked",d,c),i(c)},[i]),o=y.useCallback((u,d,c)=>{u.stopPropagation(),Ll.debug("Delete button clicked",d,c);var h=[...e];h.splice(c,1),t(h)},[t,e]),l=y.useCallback(u=>{u.stopPropagation()},[]),s=y.useCallback(u=>{if(Wt.stopDragging(),u.destination!=null){var d=u.source.index,c=u.destination.index,h=[...e],v=e[d];h.splice(d,1),h.splice(c,0,v),t(h)}},[t,e]);return m.createElement("div",{className:"conditional-formatting-rules"},m.createElement(Ii,{onDragStart:Wt.startDragging,onDragEnd:s},m.createElement(Ga,{droppableId:"droppable-custom-columns"},(u,d)=>m.createElement("div",_n({ref:u.innerRef},u.droppableProps,{className:ie("droppable-container",{dragging:d.draggingFromThisWith})}),e.length===0&&m.createElement("div",{className:"text-muted pl-2"},"No formats defined"),e.map((c,h)=>m.createElement(es,{key:"".concat(h,"-").concat(c.type),draggableId:"".concat(h,"-").concat(c.type),index:h,disableInteractiveElementBlocking:!0},(v,g)=>m.createElement("div",_n({role:"menuitem",tabIndex:0,onClick:f=>a(f,c,h),className:ie("draggable-container",{dragging:g.isDragging}),ref:v.innerRef},v.draggableProps),m.createElement("div",{className:"conditional-formatting-list-item"},m.createElement("div",{className:"formatting-item"},m.createElement("div",{className:"rule-icon"},m.createElement("span",{className:"rule-icon-bg",style:{backgroundColor:Ti(c.config.style),color:yi(c.config.style)}},c.type===pt.ROWS?"row":"col")),m.createElement("div",{className:"rule-title"},Jp(c.config)),m.createElement(Z,{kind:"ghost",className:"ml-1 px-2",onClick:f=>o(f,c,h),icon:Pr,tooltip:"Delete rule"}),m.createElement("button",_n({type:"button",className:"btn btn-link btn-link-icon px-2 btn-drag-handle",onClick:l},v.dragHandleProps),m.createElement(Gt,null,"Drag to re-order"),m.createElement(de,{icon:qa}))))))),u.placeholder))),m.createElement("hr",null),m.createElement(Z,{kind:"ghost",onClick:r,icon:dn},"Add New Rule"))}var kr=Fe.module("ConditionEditor"),tC=()=>{},rC=[re.IS_EQUAL,re.IS_NOT_EQUAL,re.IS_BETWEEN,re.GREATER_THAN,re.GREATER_THAN_OR_EQUAL,re.LESS_THAN,re.LESS_THAN_OR_EQUAL,re.IS_NULL,re.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},im(n))),nC=[ge.IS_EXACTLY,ge.IS_NOT_EXACTLY,ge.CONTAINS,ge.DOES_NOT_CONTAIN,ge.STARTS_WITH,ge.ENDS_WITH,ge.IS_NULL,ge.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},am(n))),iC=[he.IS_EXACTLY,he.IS_NOT_EXACTLY,he.IS_BEFORE,he.IS_BEFORE_OR_EQUAL,he.IS_AFTER,he.IS_AFTER_OR_EQUAL,he.IS_NULL,he.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},om(n))),aC=[Ke.IS_TRUE,Ke.IS_FALSE,Ke.IS_NULL,Ke.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},lm(n))),oC=[Ue.IS_EQUAL,Ue.IS_NOT_EQUAL,Ue.IS_NULL,Ue.IS_NOT_NULL].map(n=>m.createElement("option",{key:n,value:n},sm(n)));function lC(n,e,t,r){return n===re.IS_NULL||n===re.IS_NOT_NULL||n===re.IS_BETWEEN&&t!=null&&t!==""&&!Number.isNaN(Number.parseFloat(t))&&r!=null&&r!==""&&!Number.isNaN(Number.parseFloat(r))||n!==re.IS_BETWEEN&&e!==void 0&&e!==""&&!Number.isNaN(Number.parseFloat(e))}function sC(n,e,t,r,i,a,o){switch(n){case re.IS_EQUAL:case re.IS_NOT_EQUAL:case re.GREATER_THAN:case re.GREATER_THAN_OR_EQUAL:case re.LESS_THAN:case re.LESS_THAN_OR_EQUAL:return m.createElement("input",{type:"number",className:"form-control",placeholder:"Enter value",value:i??"",onChange:e});case re.IS_BETWEEN:return m.createElement("div",{className:"d-flex flex-row"},m.createElement("input",{type:"number",className:"form-control d-flex mr-2",placeholder:"Start value",value:a??"",onChange:t}),m.createElement("input",{type:"number",className:"form-control d-flex",placeholder:"End value",value:o??"",onChange:r}));case re.IS_NULL:case re.IS_NOT_NULL:return null}}function uC(n,e,t){switch(n){case ge.IS_NULL:case ge.IS_NOT_NULL:return null;default:return m.createElement("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function dC(n,e,t){switch(n){case he.IS_NULL:case he.IS_NOT_NULL:return null;default:return m.createElement("input",{type:"text",className:"form-control",placeholder:"Enter value",value:t??"",onChange:e})}}function cC(){return null}function hC(n,e,t){switch(n){case Ue.IS_NULL:case Ue.IS_NOT_NULL:return null;default:return m.createElement("input",{type:"text",className:"form-control",maxLength:1,placeholder:"Enter value",value:t??"",onChange:e})}}function $s(n){var{column:e,config:t,dh:r,onChange:i=tC}=n,a=e.type,[o,l]=y.useState(a),[s,u]=y.useState(t.condition),[d,c]=y.useState(t.value),[h,v]=y.useState(t.start),[g,f]=y.useState(t.end);a!==o&&(u(Es(a)),c(Ts(a)),v(void 0),f(void 0),l(a));var p=y.useMemo(()=>{if(a===void 0)return[];if(M.isNumberType(a))return rC;if(M.isCharType(a))return oC;if(M.isStringType(a))return nC;if(M.isDateType(a))return iC;if(M.isBooleanType(a))return aC},[a]),C=y.useCallback(S=>{var{value:O}=S.target;kr.debug("handleConditionChange",O),u(O)},[]),w=y.useCallback(S=>{var{value:O}=S.target;kr.debug("handleValueChange",O),c(O)},[]),b=y.useCallback(S=>{var{value:O}=S.target;kr.debug("handleStartValueChange",O),v(O)},[]),E=y.useCallback(S=>{var{value:O}=S.target;kr.debug("handleEndValueChange",O),f(O)},[]);y.useEffect(function(){var O=!0;s===void 0?(kr.debug("Unable to create formatting rule. Condition is not selected."),O=!1):M.isNumberType(e.type)&&!lC(s,d,h,g)?(kr.debug("Unable to create formatting rule. Invalid value",d),O=!1):M.isDateType(e.type)&&!Sm(r,s,d)&&(kr.debug("Unable to create formatting rule. Invalid date condition",d),O=!1),i({condition:s,value:d,start:h,end:g},O)},[i,e.type,r,s,d,h,g]);var T=y.useMemo(()=>{if(a===void 0)return null;if(M.isNumberType(a))return sC(s,w,b,E,d,h,g);if(M.isCharType(a))return hC(s,w,d);if(M.isStringType(a))return uC(s,w,d);if(M.isDateType(a))return dC(s,w,d);if(M.isBooleanType(a))return cC()},[a,s,d,h,g,w,b,E]);return m.createElement("div",{className:"condition-editor mb-2"},m.createElement("select",{value:s,"data-testid":"condition-select",className:"custom-select mb-2",onChange:C},p),T)}var mC=Fe.module("StyleEditor"),vC="#fcfcfa",gC="#f0f0ee",fC="#1a171a",pC=200,CC=()=>{};function Gs(n){var e,t,{config:r,onChange:i=CC}=n,[a,o]=y.useState(r.type),[l,s]=y.useState((e=(t=r.customConfig)===null||t===void 0?void 0:t.background)!==null&&e!==void 0?e:vC),[u,d]=y.useState(!1),[c,h]=y.useState(pC),v=y.useRef(null),g=y.useCallback(T=>{var{value:S}=T.target;mC.debug("handleBackgroundChange",S),s(S)},[]),f=y.useCallback(()=>{u&&d(!1)},[u]),p=y.useCallback(()=>{u||w(),d(!u)},[u]),C=y.useMemo(()=>[fe.NO_FORMATTING,fe.POSITIVE,fe.NEGATIVE,fe.WARN,fe.NEUTRAL,fe.ACCENT_1,fe.ACCENT_2,fe.CUSTOM],[]);function w(){v.current&&h(v.current.getBoundingClientRect().width)}y.useEffect(function(){i({type:a,customConfig:{color:cs.isDark(l)?gC:fC,background:l}})},[i,a,l]);var b=y.useCallback(()=>{for(var T=[],S=function(){var R=C[O],N="option-".concat(O,"-").concat(R);T.push(m.createElement(Z,{key:N,kind:"inline",className:"style-option-btn",onClick:()=>{o(R),d(!1)},style:{color:yi({type:R}),background:Ti({type:R})}},R===a&&m.createElement(de,{icon:Ci,className:"mr-2"}),R!==a&&m.createElement("span",{className:"mr-4"}),Jo(R)))},O=0;O<C.length;O+=1)S();return T},[C,a]),E=y.useCallback(()=>m.createElement("div",{className:"style-menu-container",role:"presentation",style:{width:c}},m.createElement("div",{className:"style-options"},b())),[c,b]);return m.createElement("div",{className:"style-editor"},m.createElement("div",{className:"mb-2",ref:v},m.createElement("label",{className:"mb-0"},"Style"),m.createElement(Z,{kind:"inline",className:"cs-dropdown",style:{color:yi({type:a}),background:Ti({type:a})},onClick:p},Jo(a),m.createElement("span",null,m.createElement(de,{icon:Xu,className:"cs-caret"})),m.createElement(ss,{isShown:u,actions:{menuElement:E()},popperOptions:{placement:"bottom-start"},popperClassName:"style-dropdown-menu",onMenuClosed:f,menuStyle:{maxWidth:"100rem"}}))),a===fe.CUSTOM&&m.createElement("div",{className:"mb-2"},m.createElement("label",{className:"mb-0"},"Background"),m.createElement("input",{type:"color",value:l,className:"custom-select color-select",onChange:g})))}function kl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Ws(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?kl(Object(t),!0).forEach(function(r){wC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):kl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function wC(n,e,t){return e=bC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bC(n){var e=SC(n,"string");return typeof e=="symbol"?e:String(e)}function SC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Rn=Fe.module("ColumnFormatEditor"),EC=()=>{};function TC(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=Ws({column:r,style:Rs()},Mi(e));return i}function yC(n){var e,{columns:t,config:r=TC(t),dh:i,onChange:a=EC}=n,[o,l]=y.useState((e=t.find(w=>w.name===r.column.name&&w.type===r.column.type))!==null&&e!==void 0?e:t[0]),[s,u]=y.useState(ys(r)),[d,c]=y.useState(!1),[h,v]=y.useState(r.style),g=y.useCallback(w=>{var b=t.find(E=>{var{name:T}=E;return T===w});b!==void 0?(l(b),o.type!==b.type&&(u(Mi(b.type)),c(!1))):Rn.error("Column ".concat(w," not found."))},[t,o]),f=y.useCallback((w,b)=>{Rn.debug("handleConditionChange",w,b),u(w),c(b)},[]),p=y.useCallback(w=>{Rn.debug("handleStyleChange",w),v(w)},[]);y.useEffect(function(){var b=d;o===void 0&&(Rn.debug("Column is not selected, invalidating update."),b=!1),(h===void 0||h.type===fe.NO_FORMATTING)&&(Rn.debug("Style is not selected, invalidating update."),b=!1);var{type:E,name:T}=o,S={type:E,name:T};a(Ws({column:S,style:h},s),b)},[a,o,h,s,d]);var C=t.map(w=>{var{name:b}=w;return{title:b,value:b}});return m.createElement("div",{className:"conditional-rule-editor form"},m.createElement("div",{className:"mb-2"},m.createElement("label",{className:"mb-0"},"Format Cell If"),m.createElement(ds,{defaultValue:o==null?void 0:o.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:g,searchPlaceholder:"Filter columns"})),o!==void 0&&m.createElement(m.Fragment,null,m.createElement($s,{dh:i,column:o,config:s,onChange:f}),m.createElement(Gs,{config:h,onChange:p})))}function _l(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function zs(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?_l(Object(t),!0).forEach(function(r){RC(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):_l(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function RC(n,e,t){return e=OC(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function OC(n){var e=FC(n,"string");return typeof e=="symbol"?e:String(e)}function FC(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var On=Fe.module("RowFormatEditor"),NC=()=>{};function DC(n){var{type:e,name:t}=n[0],r={type:e,name:t},i=zs({column:r,style:Rs()},Mi(e));return i}function PC(n){var e,{columns:t,config:r=DC(t),dh:i,onChange:a=NC}=n,[o,l]=y.useState((e=t.find(w=>w.name===r.column.name&&w.type===r.column.type))!==null&&e!==void 0?e:t[0]),[s,u]=y.useState(ys(r)),[d,c]=y.useState(!1),[h,v]=y.useState(r.style),g=y.useCallback(w=>{var b=t.find(E=>{var{name:T}=E;return T===w});b!==void 0?(l(b),o.type!==b.type&&(u(Mi(b.type)),c(!1))):On.error("Column ".concat(w," not found."))},[t,o]),f=y.useCallback((w,b)=>{On.debug("handleConditionChange",w,b),u(w),c(b)},[]),p=y.useCallback(w=>{On.debug("handleStyleChange",w),v(w)},[]);y.useEffect(function(){if(o===void 0){On.debug("Column is not selected, skip update.");return}if(h===void 0){On.debug("Style is not selected, skip update.");return}var{type:b,name:E}=o,T={type:b,name:E};a(zs({column:T,style:h},s),d)},[a,o,h,s,d]);var C=t.map(w=>{var{name:b}=w;return{title:b,value:b}});return m.createElement("div",{className:"conditional-rule-editor form"},m.createElement("div",{className:"mb-2"},m.createElement("label",{className:"mb-0"},"Format Row If"),m.createElement(ds,{defaultValue:o==null?void 0:o.name,options:C,inputPlaceholder:"Select a column",spellCheck:!1,onChange:g,searchPlaceholder:"Filter columns"})),o!==void 0&&m.createElement(m.Fragment,null,m.createElement($s,{column:o,config:s,dh:i,onChange:f}),m.createElement(Gs,{config:h,onChange:p})))}var ga=Fe.module("ConditionalFormatEditor"),fa=()=>{};function IC(n){switch(n){case pt.CONDITIONAL:return m.createElement(cf,null);case pt.ROWS:return m.createElement(hf,null)}}function AC(n){switch(n){case pt.CONDITIONAL:return"Conditional";case pt.ROWS:return"Rows"}}var xl=[pt.CONDITIONAL,pt.ROWS];function MC(n){var e,{columns:t,dh:r,onSave:i=fa,onUpdate:a=fa,onCancel:o=fa,rule:l}=n,s=t.filter(Em),[u,d]=y.useState((e=l==null?void 0:l.type)!==null&&e!==void 0?e:xl[0]),[c,h]=y.useState(l),[v,g]=y.useState(!1),f=y.useCallback(()=>{o()},[o]),p=y.useCallback(()=>{if(c===void 0){ga.error("Rule is not defined.");return}i(c)},[i,c]),C=y.useCallback(b=>{ga.debug("handleFormatterChange",b),d(b)},[]),w=y.useCallback((b,E)=>{ga.debug("handleRuleChange",b,E,u);var T={type:u,config:b};h(T),g(E),a(E?T:void 0)},[a,u]);return m.createElement("div",{className:"conditional-format-editor form"},m.createElement("div",{className:"mb-2"},m.createElement("label",{className:"mb-0",htmlFor:"formatter-select"},"Select Formatter"),m.createElement("div",{className:"formatter-list"},xl.map((b,E)=>m.createElement("div",{key:b,className:"formatter-type"},m.createElement("button",{type:"button",className:ie("btn","btn-icon","btn-formatter-type",{active:b===u}),"data-index":E,onClick:()=>C(b)},IC(b),AC(b)))))),u===pt.CONDITIONAL&&m.createElement(yC,{columns:s,dh:r,config:c==null?void 0:c.config,onChange:w}),u===pt.ROWS&&m.createElement(PC,{columns:s,config:c==null?void 0:c.config,dh:r,onChange:w}),m.createElement("hr",null),m.createElement("div",{className:"d-flex justify-content-end my-3"},m.createElement(Z,{kind:"secondary",onClick:f,className:"mr-2"},"Cancel"),m.createElement(Z,{kind:"primary",onClick:p,disabled:c===void 0||!v},"Done")))}const LC="#2d2a2e",kC="#fcfcfa",_C="#fcd65b",xC="#b2b1b2",HC="#9edc6f",BC="#76d9e4",UC="#f95d84",VC="#aa9af4",$C="#f95d84",GC="#fcfcfa",WC="#7c7b7c",le={"error-foreground":"#f95d84",background:LC,foreground:kC,"line-height":"19px",string:_C,"string-delim":"#929192",delimiter:xC,predefined:HC,keyword:BC,storage:UC,number:VC,operator:$C,identifier:GC,"namespace-identifier":"#f95d84","identifier-js":"#fcd65b",comment:WC,"input-option-active-border":"#929192","focus-border":"rgba(72, 120, 234, 0.85)","input-background":"#555356","input-foreground":"#f0f0ee","input-border":"#929192","editor-line-number-foreground":"#929192","editor-selection-background":"#676368","editor-line-highlight-bg":"#373438","context-menu-background":"#555356","context-menu-foreground":"#f0f0ee","menu-selection-background":"#4878ea","log-date":"#929192","log-error":"#f95d84","log-info":"#76d9e4","log-stdout":"#f0f0ee","log-warn":"#fcd65b","log-debug":"#aa9af4","log-trace":"#9edc6f","editor-find-match-background":"#3c5595","editor-find-match-highlight-background":"#343e5d","editor-widget-background":"#403e41","input-option-active-background":"#4878ea","input-option-active-foreground":"#f0f0ee","editor-suggest-widget-background":"#403e41","editor-suggest-widget-border":"#5b5a5c","editor-suggest-widget-foreground":"#f0f0ee","editor-suggest-widget-selected-background":"#41475a","editor-suggest-widget-highlightForeground":"#4878ea","list-hover-background":"#555356","text-link-foreground":"#929192","text-link-active-foreground":"#f0f0ee","editor-link-active-foreground":"#f0f0ee"};var zC="python",jC={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},KC={keywords:["and","del","from","not","while","as","elif","global","or","with","assert","else","if","pass","yield","break","except","import","print","exec","in","raise","continue","finally","is","return","for","try",":","=","isinstance","__debug__"],storage:["class","def","async","lambda"],operators:["+","-","*","**","/","//","%","<<",">>","&","|","^","~","<",">","<=",">=","==","!=","<>","+=","-=","*=","/","//=","%=","&=","|=","^=",">>=","<<=","**="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~&|+\-*/^%]+/,delimiters:/[;=.@:,`]/,escapes:/\\(?:[abfnrtv\\"'\n\r]|x[0-9A-Fa-f]{2}|[0-7]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\{\w+\})/,rawpre:/(?:[rR]|ur|Ur|uR|UR|br|Br|bR|BR)/,strpre:/(?:[buBU])/,tokenizer:{root:[[/@strpre?("""|''')/,{token:"string.delim",bracket:"@open",next:"@mstring.$1"}],[/@strpre?"([^"\\]|\\.)*$/,"string.invalid"],[/@strpre?'([^'\\]|\\.)*$/,"string.invalid"],[/@strpre?(["])/,{token:"string.delim",bracket:"@open",next:"@sstring.$1",nextEmbedded:"deephavenDb"}],[/@strpre?(["'])/,{token:"string.delim",bracket:"@open",next:"@string.$1"}],[/@rawpre("""|''')/,{token:"string.delim",bracket:"@open",next:"@mrawstring.$1"}],[/@rawpre"([^"\\]|\\.)*$/,"string.invalid"],[/@rawpre'([^'\\]|\\.)*$/,"string.invalid"],[/@rawpre(["'])/,{token:"string.delim",bracket:"@open",next:"@rawstring.$1"}],[/__[\w$]*/,"predefined"],[/[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@storage":"storage","@default":"identifier"}}],[/[A-Z][\w]*/,{cases:{"~[A-Z0-9_]+":"constructor.identifier","@default":"namespace.identifier"}}],{include:"@whitespace"},[/[{}()[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywords":"keyword","@operators":"operator","@default":""}}],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+[lL]?/,"number.hex"],[/0[bB][0-1]+[lL]?/,"number.binary"],[/(0[oO][0-7]+|0[0-7]+)[lL]?/,"number.octal"],[/(0|[1-9]\d*)[lL]?/,"number"],[":",{token:"keyword",bracket:"@open"}],[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}]],comment:[[/[^/*]+/,"comment"],[/\/\*/,"comment","@push"],["\\*/","comment","@pop"],[/[/*]/,"comment"]],mstring:[{include:"@strcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],sstring:[{include:"@strcontent"},[/["]/,{token:"string.delim",bracket:"@close",next:"@pop",nextEmbedded:"@pop"}],[/./,"string.invalid"]],string:[{include:"@strcontent"},[/[']/,{token:"string.delim",bracket:"@close",next:"@pop"}],[/./,"string.invalid"]],strcontent:[[/[^\\"']+/,"string"],[/\\$/,"string.escape"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"]],mrawstring:[{include:"@rawstrcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],rawstring:[{include:"@rawstrcontent"},[/["']/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/./,"string.invalid"]],rawstrcontent:[[/[^\\"']+/,"string"],[/\\["']/,"string"],[/\\u[0-9A-Fa-f]{4}/,"string.escape"],[/\\/,"string"]],whitespace:[[/\s+/,"white"],[/(^#.*$)/,"comment"],[/'''/,"string","@endDocString"],[/"""/,"string","@endDblDocString"]],endDocString:[[/[^']+/,"string"],[/\\'/,"string"],[/'''/,"string","@popall"],[/'/,"string"]],endDblDocString:[[/[^"]+/,"string"],[/\\"/,"string"],[/"""/,"string","@popall"],[/"/,"string"]]}},YC={id:zC,conf:jC,language:KC};const qC=YC;var XC="groovy",QC={comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},ZC={keywords:["and","del","from","not","while","as","elif","global","or","with","assert","else","if","pass","yield","break","except","import","print","println","class","exec","in","raise","continue","finally","is","return","def","for","lambda","try",":","=","isinstance","__debug__"],operators:["+","-","*","**","/","//","%","<<",">>","&","|","^","~","<",">","<=",">=","==","!=","<>","+=","-=","*=","/","//=","%=","&=","|=","^=",">>=","<<=","**="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[=><!~&|+\-*/^%]+/,delimiters:/[;=.@:,`]/,escapes:/\\(?:[abfnrtv\\"'\n\r]|x[0-9A-Fa-f]{2}|[0-7]{3}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\{\w+\})/,rawpre:/(?:[rR]|ur|Ur|uR|UR|br|Br|bR|BR)/,strpre:/(?:[buBU])/,tokenizer:{root:[[/@strpre?("""|''')/,{token:"string.delim",bracket:"@open",next:"@mstring.$1"}],[/@strpre?"([^"\\]|\\.)*$/,"string.invalid"],[/@strpre?'([^'\\]|\\.)*$/,"string.invalid"],[/@strpre?(["])/,{token:"string.delim",bracket:"@open",next:"@sstring.$1",nextEmbedded:"deephavenDb"}],[/@strpre?(["'])/,{token:"string.delim",bracket:"@open",next:"@string.$1"}],[/@rawpre("""|''')/,{token:"string.delim",bracket:"@open",next:"@mrawstring.$1"}],[/@rawpre"([^"\\]|\\.)*$/,"string.invalid"],[/@rawpre'([^'\\]|\\.)*$/,"string.invalid"],[/@rawpre(["'])/,{token:"string.delim",bracket:"@open",next:"@rawstring.$1"}],[/__[\w$]*/,"predefined"],[/[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[A-Z][\w]*/,{cases:{"~[A-Z0-9_]+":"constructor.identifier","@default":"namespace.identifier"}}],{include:"@whitespace"},[/[{}()[\]]/,"@brackets"],[/@symbols/,{cases:{"@keywords":"keyword","@operators":"operator","@default":""}}],[/\d*\.\d+([eE][-+]?\d+)?/,"number.float"],[/0[xX][0-9a-fA-F]+[lL]?/,"number.hex"],[/0[bB][0-1]+[lL]?/,"number.binary"],[/(0[oO][0-7]+|0[0-7]+)[lL]?/,"number.octal"],[/(0|[1-9]\d*)[lL]?/,"number"],[":",{token:"keyword",bracket:"@open"}],[/@delimiters/,{cases:{"@keywords":"keyword","@default":"delimiter"}}]],mstring:[{include:"@strcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],sstring:[{include:"@strcontent"},[/["]/,{token:"string.delim",bracket:"@close",next:"@pop",nextEmbedded:"@pop"}],[/./,"string.invalid"]],string:[{include:"@strcontent"},[/[']/,{token:"string.delim",bracket:"@close",next:"@pop"}],[/./,"string.invalid"]],strcontent:[[/[^\\"']+/,"string"],[/\\$/,"string.escape"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"]],mrawstring:[{include:"@rawstrcontent"},[/"""|'''/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/["']/,"string"],[/./,"string.invalid"]],rawstring:[{include:"@rawstrcontent"},[/["']/,{cases:{"$#==$S2":{token:"string.delim",bracket:"@close",next:"@pop"},"@default":{token:"string"}}}],[/./,"string.invalid"]],rawstrcontent:[[/[^\\"']+/,"string"],[/\\["']/,"string"],[/\\u[0-9A-Fa-f]{4}/,"string.escape"],[/\\/,"string"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@doccomment"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],doccomment:[[/[^/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[/*]/,"comment.doc"]]}},JC={id:XC,conf:QC,language:ZC};const ew=JC;var tw="scala",rw={wordPattern:/(unary_[@~!#%^&*()\-=+\\|:<>/?]+)|([a-zA-Z_$][\w$]*?_=)|(`[^`]+`)|([a-zA-Z_$][\w$]*)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:/^\s*\/\/\s*(?:(?:#?region\b)|(?:<editor-fold\b))/,end:/^\s*\/\/\s*(?:(?:#?endregion\b)|(?:<\/editor-fold>))/}}},nw={keywords:["asInstanceOf","catch","class","classOf","def","do","else","extends","finally","for","foreach","forSome","if","import","isInstanceOf","macro","match","new","object","package","return","throw","trait","try","type","until","val","var","while","with","yield","given","enum","then"],softKeywords:["as","export","extension","end","derives","on"],constants:["true","false","null","this","super"],modifiers:["abstract","final","implicit","lazy","override","private","protected","sealed"],softModifiers:["inline","opaque","open","transparent","using"],name:/(?:[a-z_$][\w$]*|`[^`]+`)/,type:/(?:[A-Z][\w$]*)/,symbols:/[=><!~?:&|+\-*/^\\%@#]+/,digits:/\d+(_+\d+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,escapes:/\\(?:[btnfr\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,fstring_conv:/[bBhHsScCdoxXeEfgGaAt]|[Tn](?:[HIklMSLNpzZsQ]|[BbhAaCYyjmde]|[RTrDFC])/,tokenizer:{root:[[/\braw"""/,{token:"string.quote",bracket:"@open",next:"@rawstringt"}],[/\braw"/,{token:"string.quote",bracket:"@open",next:"@rawstring"}],[/\bs"""/,{token:"string.quote",bracket:"@open",next:"@sstringt"}],[/\bs"/,{token:"string.quote",bracket:"@open",next:"@sstring"}],[/\bf""""/,{token:"string.quote",bracket:"@open",next:"@fstringt"}],[/\bf"/,{token:"string.quote",bracket:"@open",next:"@fstring"}],[/"""/,{token:"string.quote",bracket:"@open",next:"@stringt"}],[/"/,{token:"string.quote",bracket:"@open",next:"@string"}],[/(@digits)[eE]([-+]?(@digits))?[fFdD]?/,"number.float","@allowMethod"],[/(@digits)\.(@digits)([eE][-+]?(@digits))?[fFdD]?/,"number.float","@allowMethod"],[/0[xX](@hexdigits)[Ll]?/,"number.hex","@allowMethod"],[/(@digits)[fFdD]/,"number.float","@allowMethod"],[/(@digits)[lL]?/,"number","@allowMethod"],[/\b_\*/,"key"],[/\b(_)\b/,"keyword","@allowMethod"],[/\bimport\b/,"keyword","@import"],[/\b(case)([ \t]+)(class)\b/,["keyword.modifier","white","keyword"]],[/\bcase\b/,"keyword","@case"],[/\bva[lr]\b/,"keyword","@vardef"],[/\b(def)([ \t]+)((?:unary_)?@symbols|@name(?:_=)|@name)/,["keyword","white","identifier"]],[/@name(?=[ \t]*:(?!:))/,"variable"],[/(\.)(@name|@symbols)/,[{token:"operator"},{token:"@rematch",next:"@allowMethod"}]],[/([{(])(\s*)(@name(?=\s*=>))/,["@brackets","white","variable"]],[/@name/,{cases:{"@keywords":"keyword","@softKeywords":"keyword","@modifiers":"keyword.modifier","@softModifiers":"keyword.modifier","@constants":{token:"constant",next:"@allowMethod"},"@default":{token:"identifier",next:"@allowMethod"}}}],[/@type/,"type","@allowMethod"],{include:"@whitespace"},[/@[a-zA-Z_$][\w$]*(?:\.[a-zA-Z_$][\w$]*)*/,"annotation"],[/[{(]/,"@brackets"],[/[})]/,"@brackets","@allowMethod"],[/\[/,"operator.square"],[/](?!\s*(?:va[rl]|def|type)\b)/,"operator.square","@allowMethod"],[/]/,"operator.square"],[/([=-]>|<-|>:|<:|:>|<%)(?=[\s\w()[\]{},."'`])/,"keyword"],[/@symbols/,"operator"],[/[;,.]/,"delimiter"],[/'[a-zA-Z$][\w$]*(?!')/,"attribute.name"],[/'[^\\']'/,"string","@allowMethod"],[/(')(@escapes)(')/,[{token:"string"},{token:"string.escape"},{token:"string",next:"@allowMethod"}]],[/'/,"string.invalid"]],import:[[/;/,"delimiter","@pop"],[/^|$/,"","@pop"],[/[ \t]+/,"white"],[/[\n\r]+/,"white","@pop"],[/\/\*/,"comment","@comment"],[/@name|@type/,"type"],[/[(){}]/,"@brackets"],[/[[\]]/,"operator.square"],[/[.,]/,"delimiter"]],allowMethod:[[/^|$/,"","@pop"],[/[ \t]+/,"white"],[/[\n\r]+/,"white","@pop"],[/\/\*/,"comment","@comment"],[/(?==>[\s\w([{])/,"keyword","@pop"],[/(@name|@symbols)(?=[ \t]*[[({"'`]|[ \t]+(?:[+-]?\.?\d|\w))/,{cases:{"@keywords":{token:"keyword",next:"@pop"},"->|<-|>:|<:|<%":{token:"keyword",next:"@pop"},"@default":{token:"@rematch",next:"@pop"}}}],["","","@pop"]],comment:[[/[^/*]+/,"comment"],[/\/\*/,"comment","@push"],[/\*\//,"comment","@pop"],[/[/*]/,"comment"]],case:[[/\b_\*/,"key"],[/\b(_|true|false|null|this|super)\b/,"keyword","@allowMethod"],[/\bif\b|=>/,"keyword","@pop"],[/`[^`]+`/,"identifier","@allowMethod"],[/@name/,"variable","@allowMethod"],[/:::?|\||@(?![a-z_$])/,"keyword"],{include:"@root"}],vardef:[[/\b_\*/,"key"],[/\b(_|true|false|null|this|super)\b/,"keyword"],[/@name/,"variable"],[/:::?|\||@(?![a-z_$])/,"keyword"],[/=|:(?!:)/,"operator","@pop"],[/$/,"white","@pop"],{include:"@root"}],string:[[/[^\\"\n\r]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}]],stringt:[[/[^\\"\n\r]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/"/,"string"]],fstring:[[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/%%/,"string"],[/(%)([-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","keyword.modifier","number","metatag"]],[/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","number","metatag"]],[/(%)([-#+ 0,(])(@fstring_conv)/,["metatag","keyword.modifier","metatag"]],[/(%)(@fstring_conv)/,["metatag","metatag"]],[/./,"string"]],fstringt:[[/@escapes/,"string.escape"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/%%/,"string"],[/(%)([-#+ 0,(])(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","keyword.modifier","number","metatag"]],[/(%)(\d+|\.\d+|\d+\.\d+)(@fstring_conv)/,["metatag","number","metatag"]],[/(%)([-#+ 0,(])(@fstring_conv)/,["metatag","keyword.modifier","metatag"]],[/(%)(@fstring_conv)/,["metatag","metatag"]],[/./,"string"]],sstring:[[/@escapes/,"string.escape"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/./,"string"]],sstringt:[[/@escapes/,"string.escape"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/\$\$/,"string"],[/(\$)([a-z_]\w*)/,["operator","identifier"]],[/\$\{/,"operator","@interp"],[/./,"string"]],interp:[[/{/,"operator","@push"],[/}/,"operator","@pop"],{include:"@root"}],rawstring:[[/[^"]/,"string"],[/"/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}]],rawstringt:[[/[^"]/,"string"],[/"(?=""")/,"string"],[/"""/,{token:"string.quote",bracket:"@close",switchTo:"@allowMethod"}],[/"/,"string"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]]}},iw={id:tw,conf:rw,language:nw};const aw=iw;var ow="deephavenDb",lw={comments:{lineComment:"#",blockComment:["'''","'''"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],onEnterRules:[{beforeText:/^\s*(?:def|class|for|if|elif|else|while|try|with|finally|except|async).*?:\s*$/,action:{indentAction:1}}],folding:{offSide:!0,markers:{start:/^\s*#region\b/,end:/^\s*#endregion\b/}}},sw={tokenPostfix:".js",keywords:["boolean","break","byte","case","catch","char","class","const","continue","debugger","default","delete","do","double","else","enum","export","extends","false","final","finally","float","for","function","goto","if","implements","import","in","instanceof","int","interface","long","native","new","null","package","private","protected","public","return","short","static","super","switch","synchronized","this","throw","throws","transient","true","try","typeof","var","void","volatile","while","with"],builtins:["define","require","window","document","undefined"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"}],symbols:/[~!@#%\^&*-+=|\\:`<>.?\/]+/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,exponent:/[eE][\-+]?[0-9]+/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/([a-zA-Z_\$][\w\$]*)(\s*)(:?)/,{cases:{"$1@keywords":["keyword","white","delimiter"],$3:["key.identifier","white","delimiter"],"$1@builtins":["predefined.identifier","white","delimiter"],"@default":["identifier","white","delimiter"]}}],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/)/,{token:"regexp.slash",bracket:"@open",next:"@regexp"}],[/[{}()\[\]]/,"@brackets"],[/[;,.]/,"delimiter"],[/@symbols/,{cases:{"@operators":"operator","@default":""}}],[/\d+\.\d*(@exponent)?/,"number.float"],[/\.\d+(@exponent)?/,"number.float"],[/\d+@exponent/,"number.float"],[/0[xX][\da-fA-F]+/,"number.hex"],[/0[0-7]+/,"number.octal"],[/\d+/,"number"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string",'@string."'],[/'/,"string","@string.'"]],whitespace:[[/[ \t\r\n]+/,"white"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\/\*/,"comment.invalid"],["\\*/","comment","@pop"],[/[\/*]/,"comment"]],string:[[/[^\\"']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/["']/,{cases:{"$#==$S2":{token:"string",next:"@pop"},"@default":"string"}}]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["@brackets.regexp.escape.control","regexp.escape.control","@brackets.regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,[{token:"@brackets.regexp.escape.control"},{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["@brackets.regexp.escape.control","regexp.escape.control"]],[/[()]/,"@brackets.regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],["/",{token:"regexp.slash",bracket:"@close"},"@pop"]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,"@brackets.regexp.escape.control","@pop"]]}},uw={id:ow,conf:lw,language:sw};const dw=uw;var cw="log",hw={},mw={tokenizer:{root:[[/ FATAL[\s\S]*/,{token:"error",next:"@error"}],[/ ERROR[\s\S]*/,{token:"error",next:"@error"}],[/ STDERR[\s\S]*/,{token:"error",next:"@error"}],[/ STDOUT.*/,{token:"stdout",next:"@stdout"}],[/ INFO[\s\S]*/,{token:"info",next:"@info"}],[/ WARN.*/,{token:"warn",next:"@warn"}],[/ TRACE[\s\S]*/,{token:"trace",next:"@trace"}],[/ DEBUG[.\s\S]*/,{token:"debug",next:"@debug"}],[/^\d{2}:\d{2}:\d{2}.\d{3}/,"date"]],error:[{include:"@body"}],info:[{include:"@body"}],warn:[{include:"@body"}],stdout:[{include:"@body"}],trace:[{include:"@body"}],debug:[{include:"@body"}],body:[[/^\d{2}:\d{2}:\d{2}.\d{3}/,{token:"date",next:"@pop"}],[/[\s\S]*/,{token:"$S0"}]]}},vw={id:cw,conf:hw,language:mw};const gw=vw;function Hl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Bl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Hl(Object(t),!0).forEach(function(r){fw(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Hl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function fw(n,e,t){return e=pw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function pw(n){var e=Cw(n,"string");return typeof e=="symbol"?e:String(e)}function Cw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Kt=Fe.module("MonacoUtils");class Yt{static init(){var{getWorker:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Kt.debug("Initializing Monaco..."),e!==void 0&&Yt.registerGetWorker(e);var{registerLanguages:t,removeHashtag:r}=Yt,i=[{token:"",foreground:r(le.foreground)},{token:"string",foreground:r(le.string)},{token:"string.delim",foreground:r(le["string-delim"])},{token:"keyword",foreground:r(le.keyword)},{token:"identifier.js",foreground:r(le["identifier-js"])},{token:"delimiter",foreground:r(le.delimiter)},{token:"comment",foreground:r(le.comment)},{token:"number",foreground:r(le.number)},{token:"storage",foreground:r(le.storage)},{token:"identifier",foreground:r(le.identifier)},{token:"namespace.identifier",foreground:r(le["namespace-identifier"])},{token:"operator",foreground:r(le.operator)},{token:"predefined",foreground:r(le.predefined)},{token:"error.log",foreground:le["log-error"].substring(1)},{token:"warn.log",foreground:r(le["log-warn"])},{token:"info.log",foreground:r(le["log-info"])},{token:"stdout.log",foreground:r(le["log-stdout"])},{token:"trace.log",foreground:r(le["log-trace"])},{token:"debug.log",foreground:r(le["log-debug"])},{token:"date.log",foreground:r(le["log-date"])}],a={errorForeground:le["error-foreground"],"inputOption.activeBorder":le["input-option-active-border"],"editor.background":le.background,"editor.foreground":le.foreground,"editor.lineHighlightBackground":le["editor-line-highlight-bg"],"editorLineNumber.foreground":le["editor-line-number-foreground"],"editor.selectionBackground":le["editor-selection-background"],"editor.findMatchBackground":le["editor-find-match-background"],"editor.findMatchHighlightBackground":le["editor-find-match-highlight-background"],"editorSuggestWidget.background":le["editor-suggest-widget-background"],"editorSuggestWidget.border":le["editor-suggest-widget-border"],"editorSuggestWidget.foreground":le["editor-suggest-widget-foreground"],"editorSuggestWidget.selectedBackground":le["editor-suggest-widget-selected-background"],"editorSuggestWidget.highlightForeground":le["editor-suggest-widget-highlightForeground"],"list.hoverBackground":le["list-hover-background"],"dropdown.background":le["context-menu-background"],"dropdown.foreground":le["context-menu-foreground"],"menu.selectionBackground":le["menu-selection-background"],"list.focusBackground":le["menu-selection-background"],"editorWidget.background":le["editor-widget-background"],"inputOption.activeBackground":le["input-option-active-background"],"inputOption.activeForeground":le["input-option-active-foreground"],focusBorder:le["focus-border"],"input.background":le["input-background"],"input.foreground":le["input-foreground"],"input.border":le["input-border"],"textLink.foreground":le["text-link-foreground"],"textLink.activeForeground":le["text-link-active-foreground"],"editorLink.activeForeground":le["editor-link-active-foreground"]};on.defineTheme("dh-dark",{base:"vs-dark",inherit:!0,rules:i,colors:a}),Kt.debug2("monaco theme: ",le),on.setTheme("dh-dark"),t([dw,qC,ew,gw,aw]),Kt.debug("Monaco initialized.")}static registerGetWorker(e){window.MonacoEnvironment=Bl(Bl({},window.MonacoEnvironment),{},{getWorker:e})}static removeHashtag(e){return e.substring(1)}static registerLanguages(e){var t=e.map(r=>{var{id:i}=r;return i});rn.getLanguages().filter(r=>{var{id:i}=r;return t.includes(i)}).forEach(r=>{var i=r;Kt.debug2("Overriding default language loader:",i.id)}),e.forEach(r=>{Yt.registerLanguage(r)})}static registerLanguage(e){Kt.debug2("Registering language: ",e.id),rn.register(e),rn.onLanguage(e.id,()=>{rn.setLanguageConfiguration(e.id,e.conf),rn.setMonarchTokensProvider(e.id,e.language)})}static setEOL(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:on.EndOfLineSequence.LF;(t=e.getModel())===null||t===void 0||t.setEOL(r)}static openDocument(e,t){var r=e.getModel();_(r);var i={textDocument:{uri:"".concat(r.uri),languageId:r.getLanguageId(),version:r.getVersionId(),text:r.getValue()}};Kt.debug2("didOpenDocumentParams: ",i),t.openDocument(i);var a=e.onDidChangeModelContent(o=>{for(var{changes:l,versionId:s}=o,u=[],d=0;d<l.length;d+=1){var c=l[d],{range:h,rangeLength:v,text:g}=c,f={range:{start:{line:h.startLineNumber-1,character:h.startColumn-1},end:{line:h.endLineNumber-1,character:h.endColumn-1}},rangeLength:v,text:g};u.push(f)}if(u.length>0){var p={textDocument:{version:s,uri:"".concat(r.uri)},contentChanges:u};Kt.debug2("didChangeDocumentParams",p),t.changeDocument(p)}});return a}static closeDocument(e,t){var r=e.getModel();_(r);var i={textDocument:{uri:"".concat(r.uri)}};t.closeDocument(i)}static registerPasteHandler(e){e.onDidPaste(t=>{var r=/“|”/g,i=/\u200b/g,a=/\u00A0/g,o=e.getModel();_(o);var l=o.getValueInRange(t.range);(r.test(l)||i.test(l)||a.test(l))&&o.applyEdits([{range:t.range,text:l.replace(r,'"').replace(i,"").replace(a," ")}])})}static isMacPlatform(){var{platform:e}=window.navigator;return e.startsWith("Mac")}static removeConflictingKeybindings(e){var t=[{windows:"ctrl+D",mac:"meta+D"},{windows:"ctrl+H"}];try{t.forEach(r=>{Yt.isMacPlatform()&&r.mac===""||!Yt.isMacPlatform()&&r.windows===""||Yt.removeKeybinding(e,Yt.isMacPlatform()?r.mac:r.windows)})}catch(r){Kt.error(r)}}static removeKeybinding(e,t){if(t!==void 0){var r=e._standaloneKeybindingService._getResolver()._map.get(t);r!=null?r.forEach(i=>{Kt.debug2("Removing Monaco keybinding ".concat(t," for ").concat(i.command)),e._standaloneKeybindingService.addDynamicKeybinding("-".concat(i.command),null,()=>{})}):Kt.warn("Did not find any keybindings to remove for ".concat(t))}}static getMonacoKeyCodeFromShortcut(e){var{keyState:t}=e,{keyValue:r}=t;if(r===null)return 0;var i=Yt.isMacPlatform();return i?(t.metaKey?or.CtrlCmd:0)|(t.shiftKey?or.Shift:0)|(t.altKey?or.Alt:0)|(t.ctrlKey?or.WinCtrl:0)|Lo.fromString(r):(t.ctrlKey?or.CtrlCmd:0)|(t.shiftKey?or.Shift:0)|(t.altKey?or.Alt:0)|(t.metaKey?or.WinCtrl:0)|Lo.fromString(r)}static provideLinks(e){for(var t=[],r=function(o){var l=e.getLineContent(o),s=Jl(l),u=s.filter(d=>d.type==="url"?/^https?:\/\//.test(d.value):!0);u.forEach(d=>{t.push({url:d.href,range:new Fd(o,d.start+1,o,d.end+1)})})},i=1;i<=e.getLineCount();i+=1)r(i);return{links:t}}}const Ul=Yt;function Vl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ww(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Vl(Object(t),!0).forEach(function(r){Pi(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Vl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Pi(n,e,t){return e=bw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function bw(n){var e=Sw(n,"string");return typeof e=="symbol"?e:String(e)}function Sw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class js extends y.Component{constructor(e){super(e),Pi(this,"container",void 0),Pi(this,"editor",void 0),this.handleResize=this.handleResize.bind(this),this.container=null,this.state={}}componentDidMount(){this.initEditor(),window.addEventListener("resize",this.handleResize)}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),this.destroyEditor()}setLanguage(e){if(this.editor){var t=this.editor.getModel();_(t),on.setModelLanguage(t,e)}}handleResize(){this.updateDimensions()}toggleFind(){this.editor&&(this.editor.focus(),this.editor.trigger("toggleFind","actions.find",void 0))}updateDimensions(){var e;(e=this.editor)===null||e===void 0||e.layout()}initEditor(){var{onEditorInitialized:e}=this.props,{settings:t}=this.props;t=ww({copyWithSyntaxHighlighting:!1,fixedOverflowWidgets:!0,folding:!1,fontFamily:"Fira Mono",glyphMargin:!1,language:"python",lineNumbersMinChars:3,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabCompletion:"on",value:"",wordWrap:"off",links:!0},t),_(this.container),this.editor=on.create(this.container,t),this.editor.addAction({id:"find",label:"Find",keybindings:[or.CtrlCmd|Nd.KeyF],precondition:void 0,keybindingContext:void 0,contextMenuGroupId:"navigation",contextMenuOrder:1,run:()=>{this.toggleFind()}}),this.editor.layout(),Ul.removeConflictingKeybindings(this.editor),rn.registerLinkProvider("plaintext",{provideLinks:Ul.provideLinks}),e(this.editor)}destroyEditor(){var{onEditorWillDestroy:e}=this.props;_(this.editor),e(this.editor),this.editor.dispose(),this.editor=void 0}render(){var{className:e}=this.props;return m.createElement("div",{className:ie("editor-container",e),ref:t=>{this.container=t}})}}Pi(js,"defaultProps",{className:"fill-parent-absolute",onEditorInitialized:()=>{},onEditorWillDestroy:()=>{},settings:{}});const Ew=js;function Tw(n){var e,t,{text:r,isOpen:i,onClose:a}=n,[o,l]=y.useState(!1),[s,u]=y.useState(0),[d,c]=y.useState(!1),[h,v]=y.useState(!1),[g,f]=y.useState(!1),p=y.useRef();y.useEffect(function(){if(i){try{JSON.parse(r),f(!0)}catch{f(!1)}v(!1)}},[i,r]),y.useEffect(function(){p.current&&p.current.layout()},[s]),y.useEffect(function(){p.current&&p.current.updateOptions({lineNumbers:d?"on":"off"})},[d]);function C(){c(!d)}function w(){var S,O=(S=p.current)===null||S===void 0?void 0:S.getModel();!g||!O||(h?(O.setValue(r),v(!1)):(O.setValue(JSON.stringify(JSON.parse(r),void 0,2)),v(!0)),b())}function b(){var S,O,F=p.current;F&&c(((S=(O=F.getModel())===null||O===void 0?void 0:O.getLineCount())!==null&&S!==void 0?S:0)>1)}function E(){o&&(p.current=void 0,a())}function T(S){p.current=S,u(S.getContentHeight()),S.onDidContentSizeChange(O=>{var{contentHeight:F}=O;return u(F)}),b()}return!i&&!o?null:m.createElement(Qu,{isOpen:i,centered:!0,keyboard:!0,toggle:E,onOpened:()=>l(!0),onClosed:()=>{l(!1),u(0)},className:"theme-bg-dark cell-overflow-modal",size:"xl"},m.createElement(Zu,{toggle:a},m.createElement("h5",{className:"overflow-modal-title"},"Cell Contents"),m.createElement(os,{kind:"inline",tooltip:"Copy cell contents",copy:(e=(t=p.current)===null||t===void 0?void 0:t.getValue())!==null&&e!==void 0?e:r}),m.createElement(Z,{kind:"inline",active:d,icon:Ju,tooltip:"Toggle line numbers",onClick:C}),g&&m.createElement(Z,{kind:"inline",icon:ed,active:h,tooltip:"Format as JSON",onClick:w})),m.createElement(td,{style:{height:s}},m.createElement(Ew,{onEditorInitialized:T,settings:{value:r,readOnly:!0,wordWrap:"on",language:g?"typescript":"plaintext",folding:g,padding:{bottom:16},lineNumbers:d?"on":"off",overviewRulerLanes:0,renderLineHighlight:"none",find:{seedSearchStringFromSelection:"never"}}})))}function yw(n){return n.model!==void 0}var Rw="###,##0";function Ow(n){var{gotoRow:e,gotoRowError:t,gotoValueError:r,onGotoRowSubmit:i,isShown:a,onEntering:o,onEntered:l,onExiting:s,onExited:u,model:d,onGotoRowNumberChanged:c,onClose:h,gotoValueSelectedColumnName:v,gotoValue:g,gotoValueFilter:f,onGotoValueSelectedColumnNameChanged:p,onGotoValueSelectedFilterChanged:C,onGotoValueChanged:w,onGotoValueSubmit:b}=n,E=y.useRef(null),T=y.useRef(null),[S,O]=y.useState(!1),F=[];yw(d)&&d.table!==void 0&&({columns:F}=d.table);var{dh:R,rowCount:N}=d,P=y.useMemo(()=>"goto-row-input-".concat(Dr()),[]),I=k=>{k.key==="Enter"?(k.stopPropagation(),k.preventDefault(),b()):(k.key==="Backspace"||k.key==="Delete")&&(g==="".concat(Number.POSITIVE_INFINITY)||g==="".concat(Number.NEGATIVE_INFINITY))&&G("")},A=k=>{k.key==="Enter"&&(k.stopPropagation(),k.preventDefault(),b(k.shiftKey))},H=d.getColumnIndexByName(v),x=F[H??0],W=x==null?void 0:x.type,z=M.getNormalizedType(W),G=k=>{w(k??"")},K=()=>{if(S&&document.activeElement!==E.current){var k;(k=E.current)===null||k===void 0||k.select()}else if(!S&&document.activeElement!==T.current){var L;(L=T.current)===null||L===void 0||L.select()}};y.useEffect(K,[S,e,g]);var q=()=>{switch(z){case M.dataType.DECIMAL:case M.dataType.INT:return m.createElement("div",{className:"goto-row-input"},m.createElement("input",{ref:T,className:ie("form-control",{"is-invalid":r!==""}),onKeyDown:I,placeholder:"value",onChange:k=>{var L=k.target.value.toLowerCase();/^-?[0-9]*\.?[0-9]*$/.test(k.target.value)?G(k.target.value):L==="-i"||L==="-infinity"?G("".concat(Number.NEGATIVE_INFINITY)):(L==="i"||L==="infinity")&&G("".concat(Number.POSITIVE_INFINITY))},value:g,"aria-label":"Value Input"}));case M.dataType.DATETIME:return m.createElement("div",{className:"goto-value-date-time-input"},m.createElement(Ed,{ref:T,className:ie("form-control","goto-value-date-time-input",{"is-invalid":r!==""}),defaultValue:g,onChange:G,onSubmit:A,"aria-label":"Value Input"}));case M.dataType.STRING:return m.createElement(m.Fragment,null,m.createElement("div",{className:"goto-row-input"},m.createElement("select",{className:"custom-select",onChange:k=>{C(k.target.value)},value:f,"aria-label":"filter-type-select"},m.createElement("option",{key:pe.eqIgnoreCase,value:pe.eqIgnoreCase},"Equals (case-insensitive)"),m.createElement("option",{key:pe.containsIgnoreCase,value:pe.containsIgnoreCase},"Contains (case-insensitive)"),m.createElement("option",{key:pe.eq,value:pe.eq},"Equals"),m.createElement("option",{key:pe.contains,value:pe.contains},"Contains"))),m.createElement("div",{className:"goto-row-input"},m.createElement("input",{ref:T,className:ie("form-control",{"is-invalid":r!==""}),onKeyDown:A,placeholder:"value",onChange:k=>G(k.target.value),value:g,"aria-label":"Value Input"})));case M.dataType.BOOLEAN:return m.createElement("div",{className:"goto-row-input"},m.createElement("select",{className:"custom-select",onChange:k=>{G(k.target.value)},value:g,"aria-label":"Value Input"},m.createElement("option",{"aria-label":"null value",key:"null",value:""}),m.createElement("option",{key:"true",value:"true"},"true"),m.createElement("option",{key:"false",value:"false"},"false")));default:return m.createElement("div",{className:"goto-row-input"},m.createElement("input",{ref:T,className:"form-control",onKeyDown:A,placeholder:"value",onChange:k=>G(k.target.value),value:g,"aria-label":"Value Input"}))}};return m.createElement(Li,{isShown:a,className:ie("goto-row"),onEntering:o,onEntered:()=>{l(),K()},onExiting:s,onExited:u},m.createElement(m.Fragment,null,m.createElement("div",{className:"goto-row-row"},m.createElement("div",{className:ie("goto-row-wrapper",{"is-inactive":!S}),onClick:()=>O(!0),onFocus:()=>O(!0),role:"group"},m.createElement("label",{className:"goto-row-text",htmlFor:P},"Go to row"),m.createElement("div",{className:"goto-row-input"},m.createElement("input",{ref:E,"data-testid":"goto-row-input",type:"number",onKeyDown:k=>{k.key==="Enter"&&(k.stopPropagation(),k.preventDefault(),i())},className:ie("form-control",{"is-invalid":t!==""}),placeholder:"Row number",onChange:k=>{c(k)},value:e,id:P})),m.createElement("div",{className:"goto-row-text"},"of ",R.i18n.NumberFormat.format(Rw,N)),t&&m.createElement("div",{className:"text-danger"},t)),m.createElement("div",{className:"goto-row-close"},m.createElement(Z,{kind:"ghost",onClick:h},m.createElement(de,{icon:Qa,style:{marginRight:"0"}})))),d.isSeekRowAvailable&&m.createElement("div",{className:"goto-row-row"},m.createElement("div",{className:ie("goto-row-wrapper",{"is-inactive":S}),onClick:()=>O(!1),onFocus:()=>O(!1),role:"group"},m.createElement("div",{className:"goto-row-text"},"Go to value"),m.createElement("div",{className:"goto-row-input"},m.createElement("select",{className:"custom-select",onChange:k=>{var L=k.target.value;p(L)},value:v,"aria-label":"column-name-select"},F.map(k=>m.createElement("option",{key:k.name,value:k.name},k.name)))),q(),m.createElement("div",null,m.createElement(Z,{kind:"ghost",disabled:g==="",onClick:()=>{b(!0)}},m.createElement(de,{icon:rd})),m.createElement(Z,{kind:"ghost",disabled:g==="",onClick:()=>{b(!1)}},m.createElement(de,{icon:nd}))),r&&m.createElement("div",{className:"text-danger"},r)))))}function $l(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function di(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){$l(a,r,i,o,l,"next",s)}function l(s){$l(a,r,i,o,l,"throw",s)}o(void 0)})}}function Gl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function it(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Gl(Object(t),!0).forEach(function(r){te(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Gl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function te(n,e,t){return e=Fw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Fw(n){var e=Nw(n,"string");return typeof e=="symbol"?e:String(e)}function Nw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var ne=Fe.module("IrisGrid"),Dw=500,Pw=250,Iw=250,Aw=250,Ks=Object.freeze({aggregations:Ee,showOnTop:!1}),Mw="yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z";function Wl(n){var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:l,selectDistinctColumns:s,sorts:u}=n;return e.size===0&&t.aggregations.length===0&&r.length===0&&i.size===0&&a===M.REVERSE_TYPE.NONE&&o==null&&l==null&&s.length===0&&u.length===0}class Zt extends y.Component{constructor(e){var t,r,i,a;super(e),te(this,"grid",void 0),te(this,"gridWrapper",void 0),te(this,"lastFocusedFilterBarColumn",void 0),te(this,"lastLoadedConfig",void 0),te(this,"tooltip",void 0),te(this,"pending",void 0),te(this,"globalColumnFormats",void 0),te(this,"dateTimeFormatterOptions",void 0),te(this,"decimalFormatOptions",void 0),te(this,"integerFormatOptions",void 0),te(this,"truncateNumbersWithPound",void 0),te(this,"loadingScrimStartTime",void 0),te(this,"loadingScrimFinishTime",void 0),te(this,"animationFrame",void 0),te(this,"loadingTimer",void 0),te(this,"renderer",void 0),te(this,"tableSaver",void 0),te(this,"crossColumnRef",void 0),te(this,"isAnimating",void 0),te(this,"filterInputRef",void 0),te(this,"toggleFilterBarAction",void 0),te(this,"toggleSearchBarAction",void 0),te(this,"toggleGotoRowAction",void 0),te(this,"discardAction",void 0),te(this,"commitAction",void 0),te(this,"contextActions",void 0),te(this,"tableUtils",void 0),te(this,"getAdvancedMenuOpenedHandler",Pe(L=>this.handleAdvancedMenuOpened.bind(this,L),{max:100})),te(this,"getCachedAdvancedFilterMenuActions",Pe((L,$,U,Y,X)=>m.createElement(qg,{model:L,column:$,onFilterChange:this.handleAdvancedFilterChange,onSortChange:this.handleAdvancedFilterSortChange,onDone:this.handleAdvancedFilterDone,options:U,sortDirection:Y,formatter:X,tableUtils:this.tableUtils}),{max:50})),te(this,"getCachedOptionItems",Pe((L,$,U,Y,X,ae,ce,ee,oe,ue,Ae,Je,Xe,ze,Ve,Qe)=>{var Ne=[];return L&&Ne.push({type:Se.CHART_BUILDER,title:"Chart Builder",icon:id}),Ne.push({type:Se.VISIBILITY_ORDERING_BUILDER,title:"Organize Columns",icon:Xa}),U&&Ne.push({type:Se.CONDITIONAL_FORMATTING,title:"Conditional Formatting",icon:za}),$&&Ne.push({type:Se.CUSTOM_COLUMN_BUILDER,title:"Custom Columns",icon:ad}),Y&&Ne.push({type:Se.ROLLUP_ROWS,title:"Rollup Rows",icon:od}),X&&Ne.push({type:Se.AGGREGATIONS,title:"Aggregate Columns",icon:ld}),ae&&Ne.push({type:Se.SELECT_DISTINCT,title:"Select Distinct Values",icon:sd}),ce&&Xe&&Ne.push({type:Se.TABLE_EXPORTER,title:"Download CSV",icon:ud}),Qe&&Ne.push({type:Se.ADVANCED_SETTINGS,title:"Advanced Settings",icon:dd}),Ne.push({type:Se.QUICK_FILTERS,title:"Quick Filters",subtitle:ee.shortcut.getDisplayText(),icon:pi,isOn:Ae,onChange:ee.action}),ze&&Ne.push({type:Se.SEARCH_BAR,title:"Search Bar",subtitle:oe.shortcut.getDisplayText(),icon:cd,isOn:Je,onChange:oe.action}),Ne.push({type:Se.GOTO,title:"Go to",subtitle:ue.shortcut.getDisplayText(),icon:hd,isOn:Ve,onChange:ue.action}),Object.freeze(Ne)},{max:1})),te(this,"getCachedHiddenColumns",Pe((L,$)=>Re.getHiddenColumns(new Map([...L.initialColumnWidths,...$])),{max:1})),te(this,"getAggregationMap",Pe((L,$)=>{var U={};return $.forEach(Y=>{var{operation:X,selected:ae,invert:ce}=Y;U[X]=Rr.getOperationColumnNames(L,X,ae,ce)}),U})),te(this,"getOperationMap",Pe((L,$)=>{var U={};return $.filter(Y=>!Rr.isRollupOperation(Y.operation)).forEach(Y=>{var{operation:X,selected:ae,invert:ce}=Y;Rr.getOperationColumnNames(L,X,ae,ce).forEach(ee=>{var oe,ue=[...(oe=U[ee])!==null&&oe!==void 0?oe:[],X];U[ee]=Object.freeze(ue)})}),U})),te(this,"getOperationOrder",Pe(L=>L.map($=>$.operation).filter($=>!Rr.isRollupOperation($)))),te(this,"getCachedFormatColumns",Pe((L,$,U)=>bm(L,$,U))),te(this,"getCachedPreviewFormatColumns",Pe((L,$,U,Y,X)=>{if(ne.debug("getCachedPreviewFormatColumns",U,Y,X),Y!==void 0&&X!==void 0){var ae=[...U];return ae[X]=Y,this.getCachedFormatColumns(L,$,ae)}return this.getCachedFormatColumns(L,$,U)})),te(this,"getModelRollupConfig",Pe((L,$,U)=>Re.getModelRollupConfig(L,$,U))),te(this,"getModelTotalsConfig",Pe((L,$,U)=>{var Y,X,ae,{aggregations:ce,showOnTop:ee}=U;if(((Y=$==null||(X=$.columns)===null||X===void 0?void 0:X.length)!==null&&Y!==void 0?Y:0)>0||((ae=ce==null?void 0:ce.length)!==null&&ae!==void 0?ae:0)===0)return null;var oe=this.getOperationMap(L,ce),ue=this.getOperationOrder(ce);return{operationMap:oe,operationOrder:ue,showOnTop:ee}})),te(this,"getCachedStateOverride",Pe((L,$,U,Y,X,ae,ce,ee,oe,ue)=>({hoverSelectColumn:L,isFilterBarShown:$,isSelectingColumn:U,loadingScrimProgress:Y,quickFilters:X,advancedFilters:ae,sorts:ce,reverseType:ee,rollupConfig:oe,isMenuShown:ue}),{max:1})),te(this,"getCachedFilter",Pe((L,$,U,Y,X)=>[...L??[],...Y??[],...Re.getFiltersFromFilterMap($),...Re.getFiltersFromFilterMap(U),...X!==void 0?[X]:[]],{max:1})),te(this,"getCachedTheme",Pe((L,$,U)=>it(it(it({},Ps),L),{},{autoSelectRow:!$,rowFooterWidth:U>0?L.rowFooterWidth:0}),{max:1})),te(this,"getAlwaysFetchColumns",Pe((L,$,U,Y,X,ae)=>{for(var ce=[],ee=0;ee<Y;ee+=1)ce.push($[j.getModelIndex(ee,U)].name);for(var oe=0;oe<X;oe+=1)ce.push($[j.getModelIndex($.length-1-oe,U)].name);if(ae)for(var ue=ae[0];ue<=ae[1];ue+=1)ce.push($[j.getModelIndex(ue,U)].name);var Ae=new Set([...L,...ce]);return Object.freeze([...Ae])})),te(this,"updateSearchFilter",Jt((L,$,U,Y)=>{var{model:X}=this.props,ae=ui.createSearchFilter(X.dh,L,$,U,Y);this.setState({searchFilter:ae})},Pw)),te(this,"handleConditionalFormatEditorUpdate",Jt(L=>{this.setState({conditionalFormatPreview:L})},Aw)),te(this,"handleDownloadProgressUpdate",fi((L,$)=>{var{tableDownloadStatus:U}=this.state;U===Lr.DOWNLOAD_STATUS.DOWNLOADING&&this.setState({tableDownloadProgress:L,tableDownloadEstimatedTime:$})},Dw)),te(this,"getOverflowButtonTooltip",Pe(L=>{if(L==null)return null;var $=it(it({position:"absolute"},L),{},{pointerEvents:"none"}),U={placement:"left",modifiers:{flip:{behavior:["left","right"]}}};return m.createElement("div",{style:$},m.createElement(Gt,{key:Date.now(),options:U,ref:this.handleTooltipRef},"View full contents"))})),te(this,"getExpandCellTooltip",Pe(L=>{if(L==null)return null;var{expandTooltipDisplayValue:$}=this.state,U=it(it({position:"absolute"},L),{},{pointerEvents:"none"}),Y={placement:"bottom-start"};return m.createElement("div",{style:U},m.createElement(Gt,{key:Date.now(),options:Y,ref:this.handleTooltipRef},m.createElement("div",{style:{textAlign:"left"}},"Click to ",$," row",m.createElement("br",null),ln.isMacPlatform()?"⌘":"Ctrl+","Click to expand row and all children")))})),te(this,"getLinkHoverTooltip",Pe(L=>{if(L==null)return null;var{linkHoverDisplayValue:$}=this.state,U=it(it({position:"absolute"},L),{},{pointerEvents:"none"}),Y={placement:"bottom"};return m.createElement("div",{style:U},m.createElement(Gt,{options:Y,ref:this.handleTooltipRef},m.createElement("div",{className:"link-hover-tooltip"},$," - Click once to follow.",m.createElement("br",null),"Click and hold to select this cell.")))})),te(this,"handleGotoValueChanged",L=>{this.setState({gotoValue:L}),this.debouncedSeekRow(L)}),te(this,"debouncedSeekRow",Jt(L=>{this.seekRow(L)},Iw)),this.handleAdvancedFilterChange=this.handleAdvancedFilterChange.bind(this),this.handleAdvancedFilterSortChange=this.handleAdvancedFilterSortChange.bind(this),this.handleAdvancedFilterDone=this.handleAdvancedFilterDone.bind(this),this.handleAdvancedMenuOpened=this.handleAdvancedMenuOpened.bind(this),this.handleGotoRowOpened=this.handleGotoRowOpened.bind(this),this.handleGotoRowClosed=this.handleGotoRowClosed.bind(this),this.handleAdvancedMenuClosed=this.handleAdvancedMenuClosed.bind(this),this.handleAggregationChange=this.handleAggregationChange.bind(this),this.handleAggregationsChange=this.handleAggregationsChange.bind(this),this.handleAggregationEdit=this.handleAggregationEdit.bind(this),this.handleAnimationLoop=this.handleAnimationLoop.bind(this),this.handleAnimationStart=this.handleAnimationStart.bind(this),this.handleAnimationEnd=this.handleAnimationEnd.bind(this),this.handleChartChange=this.handleChartChange.bind(this),this.handleChartCreate=this.handleChartCreate.bind(this),this.handleGridError=this.handleGridError.bind(this),this.handleFilterBarChange=this.handleFilterBarChange.bind(this),this.handleFilterBarDone=this.handleFilterBarDone.bind(this),this.handleFilterBarTab=this.handleFilterBarTab.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleMenu=this.handleMenu.bind(this),this.handleMenuClose=this.handleMenuClose.bind(this),this.handleMenuSelect=this.handleMenuSelect.bind(this),this.handleMenuBack=this.handleMenuBack.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleSelectionChanged=this.handleSelectionChanged.bind(this),this.handleMovedColumnsChanged=this.handleMovedColumnsChanged.bind(this),this.handleHeaderGroupsChanged=this.handleHeaderGroupsChanged.bind(this),this.handleUpdate=this.handleUpdate.bind(this),this.handleTooltipRef=this.handleTooltipRef.bind(this),this.handleViewChanged=this.handleViewChanged.bind(this),this.handleFormatSelection=this.handleFormatSelection.bind(this),this.handleConditionalFormatCreate=this.handleConditionalFormatCreate.bind(this),this.handleConditionalFormatEdit=this.handleConditionalFormatEdit.bind(this),this.handleConditionalFormatsChange=this.handleConditionalFormatsChange.bind(this),this.handleConditionalFormatEditorSave=this.handleConditionalFormatEditorSave.bind(this),this.handleConditionalFormatEditorCancel=this.handleConditionalFormatEditorCancel.bind(this),this.handleUpdateCustomColumns=this.handleUpdateCustomColumns.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.handleSelectDistinctChanged=this.handleSelectDistinctChanged.bind(this),this.handlePendingDataUpdated=this.handlePendingDataUpdated.bind(this),this.handlePendingCommitClicked=this.handlePendingCommitClicked.bind(this),this.handlePendingDiscardClicked=this.handlePendingDiscardClicked.bind(this),this.handleGotoRowSelectedRowNumberSubmit=this.handleGotoRowSelectedRowNumberSubmit.bind(this),this.focusRowInGrid=this.focusRowInGrid.bind(this),this.handleDownloadTable=this.handleDownloadTable.bind(this),this.handleDownloadTableStart=this.handleDownloadTableStart.bind(this),this.handleCancelDownloadTable=this.handleCancelDownloadTable.bind(this),this.handleDownloadCanceled=this.handleDownloadCanceled.bind(this),this.handleDownloadCompleted=this.handleDownloadCompleted.bind(this),this.handlePartitionAppend=this.handlePartitionAppend.bind(this),this.handlePartitionChange=this.handlePartitionChange.bind(this),this.handlePartitionFetchAll=this.handlePartitionFetchAll.bind(this),this.handlePartitionDone=this.handlePartitionDone.bind(this),this.handleColumnVisibilityChanged=this.handleColumnVisibilityChanged.bind(this),this.handleColumnVisibilityReset=this.handleColumnVisibilityReset.bind(this),this.handleCrossColumnSearch=this.handleCrossColumnSearch.bind(this),this.handleRollupChange=this.handleRollupChange.bind(this),this.handleOverflowClose=this.handleOverflowClose.bind(this),this.getColumnBoundingRect=this.getColumnBoundingRect.bind(this),this.handleGotoRowSelectedRowNumberChanged=this.handleGotoRowSelectedRowNumberChanged.bind(this),this.handleGotoValueSelectedColumnNameChanged=this.handleGotoValueSelectedColumnNameChanged.bind(this),this.handleGotoValueSelectedFilterChanged=this.handleGotoValueSelectedFilterChanged.bind(this),this.handleGotoValueChanged=this.handleGotoValueChanged.bind(this),this.handleGotoValueSubmitted=this.handleGotoValueSubmitted.bind(this),this.grid=null,this.gridWrapper=null,this.lastLoadedConfig=null,this.pending=new Vd,this.globalColumnFormats=Ee,this.decimalFormatOptions={},this.integerFormatOptions={},this.truncateNumbersWithPound=!1,this.renderer=new Dg,this.tableSaver=null,this.crossColumnRef=m.createRef(),this.isAnimating=!1,this.filterInputRef=m.createRef(),this.toggleFilterBarAction={action:()=>this.toggleFilterBar(),shortcut:$t.TABLE.TOGGLE_QUICK_FILTER},this.toggleSearchBarAction={action:()=>this.toggleSearchBar(),shortcut:$t.TABLE.TOGGLE_SEARCH},this.toggleGotoRowAction={action:()=>this.toggleGotoRow(),shortcut:$t.TABLE.GOTO_ROW},this.discardAction={action:()=>{var{model:L}=this.props;ke(L)&&L.isEditable&&L.pendingDataMap.size>0&&this.discardPending().catch(ne.error)},shortcut:$t.INPUT_TABLE.DISCARD},this.commitAction={action:()=>{var{model:L}=this.props;ke(L)&&L.isEditable&&L.pendingDataMap.size>0&&L.pendingDataErrors.size===0&&this.commitPending().catch(ne.error)},shortcut:$t.INPUT_TABLE.COMMIT},this.contextActions=[this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,this.discardAction,this.commitAction];var{aggregationSettings:o,conditionalFormats:l,customColumnFormatMap:s,isFilterBarShown:u,isSelectingPartition:d,model:c,movedColumns:h,movedRows:v,partition:g,partitionColumn:f,rollupConfig:p,userColumnWidths:C,userRowHeights:w,showSearchBar:b,searchValue:E,selectedSearchColumns:T,invertSearchColumns:S,advancedFilters:O,quickFilters:F,selectDistinctColumns:R,pendingDataMap:N,canCopy:P,frozenColumns:I,columnHeaderGroups:A}=e,H=[new av(this),new dv(this)];P&&H.push(new Qm(this));var{dh:x}=c,W=[new gv(this),new ng(this),new mg(this),new bv(this),new Rv(this),new lg(this),new Zv(this),new $v(this,x),new Kv(this),new ug(this)],z=h.length>0?h:c.initialMovedColumns,G=v.length>0?v:c.initialMovedRows,K=new pg({userColumnWidths:new Map(C),userRowHeights:new Map(w),movedColumns:z,initialColumnWidths:new Map(c==null||(t=c.layoutHints)===null||t===void 0||(r=t.hiddenColumns)===null||r===void 0?void 0:r.map(L=>[c.getColumnIndexByName(L),0]))}),q=T??[],k=ui.createSearchFilter(x,E,q,c.columns,S);this.tableUtils=new M(x),this.state={isFilterBarShown:u,isSelectingPartition:d,focusedFilterBarColumn:null,metricCalculator:K,metrics:void 0,keyHandlers:H,mouseHandlers:W,partition:g,partitionColumn:f,partitionTable:null,partitionFilters:[],quickFilters:F?new Map(F):new Map,advancedFilters:new Map(O),shownAdvancedFilter:null,hoverAdvancedFilter:null,sorts:[],reverseType:M.REVERSE_TYPE.NONE,customColumns:[],selectDistinctColumns:R,selectedRanges:[],copyOperation:null,loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1,movedColumns:z,movedRows:G,shownColumnTooltip:null,formatter:new Gr(x),isMenuShown:!1,customColumnFormatMap:new Map(s),conditionalFormats:l,conditionalFormatEditIndex:null,conditionalFormatPreview:void 0,hoverSelectColumn:null,isTableDownloading:!1,isReady:!1,tableDownloadStatus:"",tableDownloadProgress:0,tableDownloadEstimatedTime:0,showSearchBar:b,searchFilter:k,searchValue:E,selectedSearchColumns:q,invertSearchColumns:S,rollupConfig:p,rollupSelectedColumns:[],aggregationSettings:o,selectedAggregation:null,openOptions:[],pendingRowCount:0,pendingDataMap:N??new Map,pendingDataErrors:new Map,pendingSavePromise:null,pendingSaveError:null,toastMessage:null,frozenColumns:I,showOverflowModal:!1,overflowText:"",overflowButtonTooltipProps:null,expandCellTooltipProps:null,expandTooltipDisplayValue:"expand",linkHoverTooltipProps:null,linkHoverDisplayValue:"",isGotoShown:!1,gotoRow:"",gotoRowError:"",gotoValueError:"",gotoValueSelectedColumnName:(i=(a=c.columns[0])===null||a===void 0?void 0:a.name)!==null&&i!==void 0?i:"",gotoValueSelectedFilter:pe.eqIgnoreCase,gotoValue:"",columnHeaderGroups:A??c.initialColumnHeaderGroups}}componentDidMount(){var{partitionColumn:e,model:t}=this.props,r=e??t.columns.find(i=>i.isPartitionColumn);t.isFilterRequired&&t.isValuesTableAvailable&&r!=null?this.loadPartitionsTable(r):this.initState(),this.startListening(t)}componentDidUpdate(e){var{inputFilters:t,isSelectingColumn:r,settings:i,model:a,customFilters:o,sorts:l}=this.props;a!==e.model&&(this.stopListening(e.model),this.startListening(a));var s=t!==e.inputFilters?t.filter(g=>!e.inputFilters.includes(g)):[];if(s.length>0){var u,{advancedSettings:d}=this.props,c=(u=d.get(sn.FILTER_CONTROL_CHANGE_CLEARS_ALL_FILTERS))!==null&&u!==void 0?u:!1;c&&(this.clearGridInputField(),this.clearCrossColumSearch()),this.startLoading("Filtering...",!0),this.applyInputFilters(s,c)}r!==e.isSelectingColumn&&this.resetColumnSelection(),i!==e.settings&&this.updateFormatterSettings(i),o!==e.customFilters&&this.startLoading("Filtering...",!0),l!==e.sorts&&this.updateSorts(l);var{loadingScrimStartTime:h,loadingScrimFinishTime:v}=this;h!=null&&v!=null&&window.requestAnimationFrame(()=>{var g=Date.now(),f=g-h,p=v-h,C=Math.min(f/p,1);v<g&&(this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0),this.setState(w=>w.loadingScrimProgress==null?(ne.debug2("Ignoring scrim update because loading cancelled."),null):{loadingScrimProgress:C})}),this.sendStateChange()}componentWillUnmount(){var{model:e}=this.props;this.stopListening(e),this.pending.cancel(),this.updateSearchFilter.cancel(),this.loadingTimer&&clearTimeout(this.loadingTimer),this.handleDownloadProgressUpdate.cancel(),this.animationFrame!==void 0&&cancelAnimationFrame(this.animationFrame)}getValueForCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:i}=this.props,{dh:a}=i,o=this.getModelColumn(e),l=this.getModelRow(t);if(r&&o!=null&&l!=null){var s=i.valueForCell(o,l);if(M.isDateType(i.columns[o].type)){var{formatter:u}=i;return a.i18n.DateTimeFormat.format(Mw,s,a.i18n.TimeZone.getTimeZone(u.timeZone))}return s}return r?null:o!=null&&l!=null?i.textForCell(o,l):""}getModelColumn(e){var{metrics:t}=this.state;_(t);var{modelColumns:r}=t;return r==null?null:e!=null?r.get(e):null}getModelRow(e){var{metrics:t}=this.state;_(t);var{modelRows:r}=t;return r==null?null:e!=null?r.get(e):null}getTheme(){var e,{model:t,theme:r}=this.props;return this.getCachedTheme(r,(e=ke(t)&&t.isEditable)!==null&&e!==void 0?e:!1,t.floatingTopRowCount+t.floatingBottomRowCount)}getVisibleColumn(e){var{movedColumns:t}=this.state;return j.getVisibleIndex(e,t)}makeQuickFilter(e,t,r){try{return this.tableUtils.makeQuickFilter(e,t,r)}catch(i){ne.error("Error creating quick filter",i)}return null}applyInputFilters(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,{model:r}=this.props,{advancedFilters:i,quickFilters:a}=this.state,o=t?new Map:new Map(i),l=t?new Map:new Map(a),s=t&&i.size>0;e.forEach(u=>{var{name:d,type:c,value:h}=u,v=r.columns.findIndex(g=>{var{name:f,type:p}=g;return f===d&&p===c});v>=0?(s=o.delete(v)||s,s=this.applyQuickFilter(v,h,l)||s):ne.error("Unable to find column for inputFilter",d,c,h)}),s&&this.setState({quickFilters:l,advancedFilters:o})}applyQuickFilter(e,t,r){var{model:i}=this.props,{formatter:a}=i,o=i.columns[e];if(t!=null&&"".concat(t).trim().length>0){var l=r.get(e);if(l!=null){var{text:s}=l;if(s===t)return ne.debug2("Ignoring change to existing filter"),!1}return r.set(e,{text:t,filter:this.makeQuickFilter(o,t,a.timeZone)}),!0}return r.delete(e)}setAdvancedFilterMap(e){this.setState({advancedFilters:e})}setAdvancedFilter(e,t,r){ne.debug("Setting advanced filter",e,t),this.startLoading("Filtering...",!0),this.setState(i=>{var{advancedFilters:a}=i,o=new Map(a);return t==null?o.delete(e):o.set(e,{filter:t,options:r}),{advancedFilters:o}})}setQuickFilter(e,t,r){ne.debug("Setting quick filter",e,t,r),this.startLoading("Filtering...",!0),this.setState(i=>{var{quickFilters:a}=i,o=new Map(a);return o.set(e,{filter:t,text:r}),{quickFilters:o}})}setFilterMap(e){var t;ne.debug("setFilterMap",e);var{advancedSettings:r}=this.props,i=(t=r.get(sn.LINK_CHANGE_CLEARS_ALL_FILTERS))!==null&&t!==void 0?t:!1;i&&this.clearAllFilters();var{model:a}=this.props;e.forEach((o,l)=>{var{columnType:s,filterList:u}=o,d=a.columns.find(g=>g.name===l&&g.type===s);if(d!=null){var c=a.getColumnIndexByName(d.name);_(c);var h=Re.combineFiltersFromList(s,u);if(h.length===0)this.removeQuickFilter(c);else{var{formatter:v}=a;this.setQuickFilter(c,this.makeQuickFilter(d,h,v.timeZone),"".concat(h))}}})}removeColumnFilter(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{advancedFilters:r,quickFilters:i}=t,a=r?new Map(r):new Map,o=i?new Map(i):new Map;return o.delete(e),a.delete(e),{quickFilters:o,advancedFilters:a}})}removeQuickFilter(e){this.startLoading("Clearing Filter...",!0),this.setState(t=>{var{quickFilters:r}=t,i=new Map(r);return i.delete(e),{quickFilters:i}})}clearAllFilters(){ne.debug("Clearing all filters");var{advancedFilters:e,quickFilters:t,searchFilter:r}=this.state;t.size===0&&e.size===0&&r===null||(this.clearGridInputField(),this.startLoading("Clearing Filters...",!0),this.setState({quickFilters:new Map,advancedFilters:new Map,searchValue:"",searchFilter:void 0}))}clearCrossColumSearch(){ne.debug("Clearing cross-column search"),this.setState({searchValue:"",searchFilter:void 0})}clearGridInputField(){this.filterInputRef.current!=null&&this.filterInputRef.current.setValue("")}rebuildFilters(){ne.debug("Rebuilding filters");var{model:e}=this.props,{advancedFilters:t,quickFilters:r}=this.state,{columns:i,formatter:a}=e,o=new Map,l=new Map;t.forEach((s,u)=>{var{options:d}=s,c=i[u],h=this.tableUtils.makeAdvancedFilter(c,d,a.timeZone);o.set(u,{options:d,filter:h})}),r.forEach((s,u)=>{var{text:d}=s,c=i[u];l.set(u,{text:d,filter:this.makeQuickFilter(c,d,a.timeZone)})}),this.startLoading("Rebuilding filters...",!0),this.setState({quickFilters:l,advancedFilters:o})}setFilters(e){var{quickFilters:t,advancedFilters:r}=e;this.setState({quickFilters:t,advancedFilters:r})}updateFormatterSettings(e){var t,r,i,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,o=bi.getColumnFormats(e),l=bi.getDateTimeFormatterOptions(e),s=(t=e==null?void 0:e.defaultDecimalFormatOptions)!==null&&t!==void 0?t:{},u=(r=e==null?void 0:e.defaultIntegerFormatOptions)!==null&&r!==void 0?r:{},d=(i=e==null?void 0:e.truncateNumbersWithPound)!==null&&i!==void 0?i:!1,c=!Vt(this.globalColumnFormats,o),h=!Vt(this.dateTimeFormatterOptions,l),v=!Vt(this.decimalFormatOptions,e==null?void 0:e.defaultDecimalFormatOptions),g=!Vt(this.integerFormatOptions,u),f=this.truncateNumbersWithPound!==d;(c||h||v||g||f)&&(this.globalColumnFormats=o,this.dateTimeFormatterOptions=l,this.decimalFormatOptions=s,this.integerFormatOptions=u,this.truncateNumbersWithPound=d,this.updateFormatter({},a),h&&a&&this.rebuildFilters())}updateFormatter(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,{customColumnFormatMap:i}=this.state,{model:a}=this.props,o=it({customColumnFormatMap:i},e),l=[...(t=this.globalColumnFormats)!==null&&t!==void 0?t:[],...o.customColumnFormatMap.values()],s=new Gr(a.dh,l,this.dateTimeFormatterOptions,this.decimalFormatOptions,this.integerFormatOptions,this.truncateNumbersWithPound);ne.debug("updateFormatter",this.globalColumnFormats,l),this.setState(it(it({},o),{},{formatter:s}),()=>{r&&this.grid&&this.grid.forceUpdate()})}initFormatter(){var{settings:e}=this.props;this.updateFormatterSettings(e)}initState(){var{applyInputFiltersOnInit:e,inputFilters:t,sorts:r,model:i,reverseType:a,customColumns:o,searchValue:l,selectedSearchColumns:s,invertSearchColumns:u}=this.props,d=s??[],c=ui.createSearchFilter(i.dh,l,d,i.columns,u);if(e){var h=t.filter(v=>v.value!=null);this.applyInputFilters(h)}this.setState({sorts:r,reverseType:a,customColumns:o,isReady:!0,searchFilter:c}),this.initFormatter()}loadPartitionsTable(e){var t=this;return di(function*(){var{model:r}=t.props;t.setState({isSelectingPartition:!0});try{var i=yield t.pending.add(r.valuesTable(e),d=>d.close()),a=i.columns[0],o=a.sort().desc();i.applySort([o]),i.setViewport(0,0,[a]);var l=yield t.pending.add(i.getViewportData());if(l.rows.length>0){var s=l.rows[0],u=s.get(a);t.updatePartition(u,e),t.setState({isSelectingPartition:!0})}else ne.info("Table does not have any data, just fetching all"),t.setState({isSelectingPartition:!1}),t.handlePartitionFetchAll();t.setState({partitionTable:i,partitionColumn:e},()=>{t.initState()})}catch(d){t.handleTableLoadError(d)}})()}updatePartition(e,t){var{model:r}=this.props,i=t.filter().eq(r.dh.FilterValue.ofString(e)),a=[i];this.setState({partition:e,partitionFilters:a})}copyCell(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{canCopy:i}=this.props;if(i){var a=String(this.getValueForCell(e,t,r));Za(a).catch(o=>ne.error("Unable to copy cell",o))}else ne.error("Attempted to copyCell for user without copy permission.")}copyRanges(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3?arguments[3]:void 0,{model:a,canCopy:o}=this.props,{metricCalculator:l,movedColumns:s}=this.state,u=l.getUserColumnWidths();if(o){var d={ranges:B.boundedRanges(e,a.columnCount,a.rowCount),includeHeaders:t,formatValues:r,movedColumns:s,userColumnWidths:u,error:i};this.setState({copyOperation:d})}else ne.error("Attempted copyRanges for user without copy permission.")}startLoading(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;this.setState({loadingText:e});var r=this.getTheme();if(t&&this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({top:0},!0)),this.loadingScrimStartTime==null){var i,a,{minScrimTransitionTime:o,maxScrimTransitionTime:l}=r;_(o),_(l);var s=(i=(a=this.gridWrapper)===null||a===void 0?void 0:a.getBoundingClientRect().height)!==null&&i!==void 0?i:0,u=Math.max(o,Math.min(s/2,l));this.loadingScrimStartTime=Date.now(),this.loadingScrimFinishTime=this.loadingScrimStartTime+u,this.setState({loadingScrimProgress:0}),this.loadingTimer=setTimeout(()=>{this.setState({loadingSpinnerShown:!0})},Zt.loadingSpinnerDelay)}}stopLoading(){this.loadingScrimStartTime=void 0,this.loadingScrimFinishTime=void 0,this.setState({loadingText:null,loadingScrimProgress:null,loadingSpinnerShown:!1}),this.loadingTimer!=null&&(clearTimeout(this.loadingTimer),this.loadingTimer=void 0)}rollback(){if(this.lastLoadedConfig){ne.debug("loading last loading config",this.lastLoadedConfig);var{advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:l,selectDistinctColumns:s,sorts:u}=this.lastLoadedConfig;this.lastLoadedConfig=null,this.setState({advancedFilters:e,aggregationSettings:t,customColumns:r,quickFilters:i,reverseType:a,rollupConfig:o,searchFilter:l,selectDistinctColumns:s,sorts:u})}else ne.debug("remove all sorts, filters, and custom columns"),this.setState({advancedFilters:new Map,aggregationSettings:Ks,customColumns:[],quickFilters:new Map,reverseType:M.REVERSE_TYPE.NONE,rollupConfig:void 0,selectDistinctColumns:[],sorts:[]})}canRollback(){return this.lastLoadedConfig!=null||!Wl(this.state)}startListening(e){e.addEventListener(me.EVENT.UPDATED,this.handleUpdate),e.addEventListener(me.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.addEventListener(me.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.addEventListener(me.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}stopListening(e){e.removeEventListener(me.EVENT.UPDATED,this.handleUpdate),e.removeEventListener(me.EVENT.REQUEST_FAILED,this.handleRequestFailed),e.removeEventListener(me.EVENT.COLUMNS_CHANGED,this.handleCustomColumnsChanged),e.removeEventListener(me.EVENT.PENDING_DATA_UPDATED,this.handlePendingDataUpdated)}focus(){var e;(e=this.grid)===null||e===void 0||e.focus()}focusFilterBar(e){var{movedColumns:t}=this.state,{model:r}=this.props,{columnCount:i}=r,a=j.getModelIndex(e,t);if(e==null||e<0||i<=e||!r.isFilterable(a)){this.setState({focusedFilterBarColumn:null});return}var{metricCalculator:o,metrics:l}=this.state;_(l);var{left:s,rightVisible:u,lastLeft:d}=l;if(e<s){var c;(c=this.grid)===null||c===void 0||c.setViewState({left:e},!0)}else if(u<e){var h,v,g=(h=this.grid)===null||h===void 0?void 0:h.getMetricState();_(g);var f=o.getLastLeft(g,e,o.getVisibleWidth(g));(v=this.grid)===null||v===void 0||v.setViewState({left:Math.min(f,d),leftOffset:0},!0)}this.lastFocusedFilterBarColumn=e,this.setState({focusedFilterBarColumn:e,isFilterBarShown:!0})}hideColumnByVisibleIndex(e){var t,{metricCalculator:r,movedColumns:i}=this.state;r.setColumnWidth(j.getModelIndex(e,i),0),(t=this.grid)===null||t===void 0||t.forceUpdate()}freezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;ne.debug2("freezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.add(e);var o=i.getColumnIndexByName(e);_(o);var l=j.getVisibleIndex(o,r),s=j.moveItem(l,a.size-1,r);this.setState({frozenColumns:[...a],movedColumns:s})}unFreezeColumnByColumnName(e){var{frozenColumns:t,movedColumns:r}=this.state,{model:i}=this.props;ne.debug2("unfreezing column",e);var a=t==null?new Set(i.frozenColumns):new Set(t);a.delete(e);var o=i.getColumnIndexByName(e);_(o);var l=j.getVisibleIndex(o,r),s=j.moveItem(l,a.size+i.frontColumns.length,r);this.setState({frozenColumns:[...a],movedColumns:s})}handleColumnVisibilityChanged(e,t){var r,{metricCalculator:i,metrics:a}=this.state;_(a),t?e.forEach(o=>{var l=i.initialColumnWidths.get(o),s=D(a.calculatedColumnWidths,o);l!==s?i.setColumnWidth(o,s):i.resetColumnWidth(o)}):e.forEach(o=>{i.setColumnWidth(o,0)}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleColumnVisibilityReset(){var e,t,{metricCalculator:r,metrics:i}=this.state,{model:a}=this.props;_(i);for(var o=0;o<i.columnCount;o+=1)r.resetColumnWidth(o);this.handleMovedColumnsChanged(a.initialMovedColumns),this.handleHeaderGroupsChanged(a.initialColumnHeaderGroups),this.setState({frozenColumns:(e=(t=a.layoutHints)===null||t===void 0?void 0:t.frozenColumns)!==null&&e!==void 0?e:[]})}handleCrossColumnSearch(e,t,r){var{model:i}=this.props;this.startLoading("Searching..."),this.updateSearchFilter(e,t,i.columns,r),this.setState({searchValue:e,selectedSearchColumns:t,invertSearchColumns:r})}handleAnimationLoop(){var e;(e=this.grid)===null||e===void 0||e.updateCanvas(),this.isAnimating&&(this.animationFrame=requestAnimationFrame(this.handleAnimationLoop))}handleAnimationStart(){ne.debug2("handleAnimationStart"),this.isAnimating=!0,this.animationFrame=requestAnimationFrame(this.handleAnimationLoop)}handleAnimationEnd(){ne.debug2("handleAnimationEnd"),this.isAnimating=!1}handlePartitionAppend(e){var{onPartitionAppend:t}=this.props,{partitionColumn:r}=this.state;r!=null&&t(r,e)}handlePartitionChange(e){var{partitionColumn:t}=this.state;t!=null&&this.updatePartition(e,t)}handlePartitionFetchAll(){this.setState({partitionFilters:[],isSelectingPartition:!1})}handlePartitionDone(){this.setState({isSelectingPartition:!1})}handleTableLoadError(e){if(!ot.isCanceled(e)){ne.error(e);var{onError:t}=this.props;t(e)}}showAllColumns(){for(var e,{metricCalculator:t}=this.state,r=t.getUserColumnWidths(),i=[...r.entries()],a=0;a<i.length;a+=1){var[o,l]=i[a];l===0&&t.resetColumnWidth(o)}(e=this.grid)===null||e===void 0||e.forceUpdate()}toggleSort(e,t){ne.info("Toggling sort for column",e);var{model:r}=this.props,{sorts:i}=this.state,a=this.getModelColumn(e);_(a);var o=M.toggleSortForColumn(i,r.columns,a,t);this.updateSorts(o)}updateSorts(e){var t;this.startLoading("Sorting..."),this.setState({sorts:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}sortColumn(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:M.sortDirection.none,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;_(e);var{model:o}=this.props,l=M.sortColumn(o.sort,o.columns,e,r,i,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({reverseType:e}),(t=this.grid)===null||t===void 0||t.forceUpdate()}isReversible(){var{model:e}=this.props;return e.isReversible}toggleFilterBar(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.lastFocusedFilterBarColumn,{isFilterBarShown:t}=this.state;if(t=!t,this.setState({isFilterBarShown:t}),t)if(e!=null)this.focusFilterBar(e);else{for(var r=0,{model:i}=this.props,{columnCount:a}=i,o=0;o<a;o+=1){var l=this.getModelColumn(o);if(l!=null){var s=i.columns[l];if(s!=null&&M.isTextType(s.type)){r=o;break}}}this.focusFilterBar(r)}else{var u;(u=this.grid)===null||u===void 0||u.focus()}}isTableSearchAvailable(){var e,t,r,{model:i,canToggleSearch:a}=this.props,{dh:o}=i,l=i==null||(e=i.layoutHints)===null||e===void 0?void 0:e.searchDisplayMode;return l===((t=o.SearchDisplayMode)===null||t===void 0?void 0:t.SEARCH_DISPLAY_HIDE)?!1:l===((r=o.SearchDisplayMode)===null||r===void 0?void 0:r.SEARCH_DISPLAY_SHOW)?!0:a}toggleSearchBar(){var{showSearchBar:e}=this.state;if(this.isTableSearchAvailable()){var t=!e;this.setState({showSearchBar:t},()=>{var r;if(t&&(r=this.crossColumnRef)!==null&&r!==void 0&&r.current){var i;(i=this.crossColumnRef)===null||i===void 0||i.current.focus()}else{var a;(a=this.grid)===null||a===void 0||a.focus()}})}}toggleGotoRow(){var e,t,r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",{isGotoShown:o}=this.state;if(r||i){this.setState({isGotoShown:!0,gotoRow:r,gotoValue:i,gotoValueSelectedColumnName:a,gotoRowError:"",gotoValueError:""}),this.focusRowInGrid(r);return}var l=(e=this.grid)===null||e===void 0?void 0:e.state.cursorRow,s=(t=this.grid)===null||t===void 0?void 0:t.state.cursorColumn;if(l==null||s==null){this.setState({isGotoShown:!o,gotoRow:"",gotoValue:"",gotoRowError:"",gotoValueError:""});return}var{model:u}=this.props,{name:d,type:c}=u.columns[s],h=u.valueForCell(s,l),v=Re.convertValueToText(h,c);this.setState({isGotoShown:!o,gotoRow:"".concat(l),gotoValue:v,gotoValueSelectedColumnName:d,gotoRowError:"",gotoValueError:""})}commitPending(){var e=this;return di(function*(){var t,r,{model:i}=e.props;if(!ke(i)||!i.isEditable)throw new Error("Cannot save, table is not editable");var{pendingSavePromise:a}=e.state;if(a!=null)throw new Error("Save already in progress");var o=(t=document)===null||t===void 0||(r=t.activeElement)===null||r===void 0?void 0:r.classList.contains("grid-cell-input-field");if(o!=null&&o){var l;if(document.activeElement!=null&&document.activeElement.classList.contains("error"))throw new jd("Current input is invalid");(l=e.grid)===null||l===void 0||l.focus()}var s=e.pending.add(i.commitPending()).then(()=>{e.setState({pendingSaveError:null,pendingSavePromise:null})}).catch(u=>{ot.isCanceled(u)||e.setState({pendingSaveError:u,pendingSavePromise:null})});return e.setState({pendingSavePromise:s}),s})()}discardPending(){var e=this;return di(function*(){var{pendingSavePromise:t}=e.state;if(t!=null)throw new Error("Cannot cancel a save in progress");e.setState({pendingSavePromise:null,pendingSaveError:null,pendingDataMap:new Map,pendingDataErrors:new Map})})()}selectColumn(e){var{onColumnSelected:t}=this.props;t(e)}selectData(e,t){for(var r=this,{model:i}=this.props,{columns:a,groupedColumns:o}=i,l={},s=function(){var h=a[u],{name:v,type:g}=h,f=i.valueForCell(u,t),p=i.textForCell(u,t),C=r.getVisibleColumn(u),w=De(i)&&i.isRowExpandable(t),b=o.find(E=>E.name===v)!=null;l[v]={value:f,text:p,type:g,isGrouped:b,isExpandable:w,visibleIndex:C}},u=0;u<a.length;u+=1)s();var{onDataSelected:d}=this.props;d(t,l)}handleAdvancedFilterChange(e,t,r){var{model:i}=this.props,a=i.getColumnIndexByName(e.name);_(a),this.setAdvancedFilter(a,t,r)}handleAdvancedFilterSortChange(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,{model:a}=this.props,o=a.getColumnIndexByName(e.name);_(o);var l=a.columns[o].name,s=M.getSortForColumn(a.sort,l),u=null;(s==null||s.direction!==t)&&(t===M.sortDirection.descending?u=e.sort().desc():u=e.sort().asc());var d=M.setSortForColumn(a.sort,l,u,i);ne.info("Setting table sorts",d),this.startLoading("Sorting..."),this.setState({sorts:d}),(r=this.grid)===null||r===void 0||r.forceUpdate()}handleAdvancedFilterDone(){var e;(e=this.grid)===null||e===void 0||e.focus()}handleAdvancedMenuOpened(e){this.setState({shownAdvancedFilter:e})}handleGotoRowOpened(){this.setState({isGotoShown:!0})}handleGotoRowClosed(){this.setState({isGotoShown:!1})}handleAdvancedMenuClosed(e){var t,{focusedFilterBarColumn:r,isFilterBarShown:i}=this.state;if(i&&r===e&&((t=this.filterInputRef)===null||t===void 0?void 0:t.current)!==null){var a;(a=this.filterInputRef)===null||a===void 0||a.current.focus(),this.setState({shownAdvancedFilter:null})}else this.setState({focusedFilterBarColumn:null,shownAdvancedFilter:null})}handleCancel(){this.rollback()}handleChartChange(){}handleChartCreate(e){var{model:t,onCreateChart:r}=this.props;r(e,t)}handleGridError(e){ne.warn("Grid Error",e),this.setState({toastMessage:m.createElement("div",{className:"error-message"},"".concat(e))})}handleFilterBarChange(e){this.startLoading("Filtering...",!0),this.setState(t=>{var{focusedFilterBarColumn:r,quickFilters:i}=t,a=new Map(i);if(r!=null){var o=this.getModelColumn(r);_(o),this.applyQuickFilter(o,e,a)}return{quickFilters:a}})}handleFilterBarDone(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e){var r;(r=this.grid)===null||r===void 0||r.focus()}t&&this.setState({focusedFilterBarColumn:null})}handleFilterBarTab(e){var{focusedFilterBarColumn:t}=this.state;_(t),e?this.focusFilterBar(t-1):this.focusFilterBar(t+1)}handleFormatSelection(e,t){var{model:r}=this.props,i=r.columns[e],{customColumnFormatMap:a}=this.state,o=new Map(a);if(t!=null){var l=M.getNormalizedType(i.type);_(l);var s=Gr.makeColumnFormattingRule(l,i.name,t);o.set(i.name,s)}else o.delete(i.name);this.updateFormatter({customColumnFormatMap:o})}handleMenu(e){e.stopPropagation(),this.setState({isMenuShown:!0})}handleMenuClose(){this.setState({isMenuShown:!1,openOptions:[]})}handleMenuBack(){this.setState(e=>{var{openOptions:t}=e,r=[...t];return r.pop(),{openOptions:r}})}handleMenuSelect(e){this.setState(t=>{var{openOptions:r}=t;return{openOptions:[...r,e]}})}handleRequestFailed(e){var t=e;if(ne.error("request failed:",t.detail),this.stopLoading(),this.canRollback())this.startLoading("Rolling back changes...",!0),this.rollback();else{ne.error("Table failed and unable to rollback");var{onError:r}=this.props;r(new Error("Error displaying table: ".concat(t.detail)))}}handleUpdate(){var e;this.stopLoading(),ne.debug2("Received model update");var{advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:l,searchFilter:s,selectDistinctColumns:u,sorts:d}=this.state,c={advancedFilters:t,aggregationSettings:r,customColumns:i,quickFilters:a,reverseType:o,rollupConfig:l,searchFilter:s,selectDistinctColumns:u,sorts:d};Wl(c)?this.lastLoadedConfig=null:this.lastLoadedConfig=c,(e=this.grid)===null||e===void 0||e.forceUpdate()}handleViewChanged(e){var t,r,{model:i}=this.props,{selectionEndRow:a=0}=(t=(r=this.grid)===null||r===void 0?void 0:r.state)!==null&&t!==void 0?t:{},o=0;if(ke(i)&&i.isEditable){_(e);var{bottomViewport:l}=e,s=i.rowCount-i.floatingBottomRowCount;a===s-1?o=i.pendingRowCount+1:a===s-2?o=i.pendingRowCount:o=Math.max(0,l-(i.rowCount-i.pendingRowCount)-i.floatingTopRowCount-i.floatingBottomRowCount-1)}this.setState({metrics:e,pendingRowCount:o})}handleSelectionChanged(e){_(e);var{onSelectionChanged:t}=this.props,{copyOperation:r}=this.state;this.setState({selectedRanges:e}),r!=null&&this.setState({copyOperation:null}),t(e)}handleMovedColumnsChanged(e,t){this.setState({movedColumns:e},t)}handleHeaderGroupsChanged(e){var{model:t}=this.props;this.setState({columnHeaderGroups:Re.parseColumnHeaderGroups(t,e).groups},()=>{var r;return(r=this.grid)===null||r===void 0?void 0:r.forceUpdate()})}handleTooltipRef(e){e!=null&&e.startTimer(),this.tooltip=e}handleConditionalFormatsChange(e){ne.debug("Updated conditional formats",e),this.setState({conditionalFormats:e})}handleConditionalFormatCreate(){ne.debug("Create new conditional format");var{openOptions:e,conditionalFormats:t}=this.state;this.setState({openOptions:[...e,{type:Se.CONDITIONAL_FORMATTING_EDIT,title:"Create Formatting Rule"}],conditionalFormatEditIndex:t.length,conditionalFormatPreview:void 0})}handleConditionalFormatEdit(e){ne.debug("Edit conditional format",e);var{openOptions:t,conditionalFormats:r}=this.state;this.setState({openOptions:[...t,{type:Se.CONDITIONAL_FORMATTING_EDIT,title:"Edit Formatting Rule"}],conditionalFormatEditIndex:e,conditionalFormatPreview:it({},r[e])})}handleConditionalFormatEditorSave(e){ne.debug("Save conditional format changes",e),this.setState(t=>{if(t.conditionalFormatEditIndex===null)return ne.debug("Invalid format index"),null;var r=[...t.conditionalFormats];return r[t.conditionalFormatEditIndex]=e,{conditionalFormats:r}},()=>{this.handleMenuBack()})}handleConditionalFormatEditorCancel(){this.handleMenuBack(),this.setState({conditionalFormatEditIndex:null})}handleUpdateCustomColumns(e){ne.info("handleUpdateCustomColumns:",e);var{model:t}=this.props,{movedColumns:r,sorts:i,quickFilters:a,advancedFilters:o,selectDistinctColumns:l}=this.state,{columns:s}=t,u=t.customColumns.map(p=>"".concat(p)),d=Re.getRemovedCustomColumnNames(u,e);if(d.length>0){var c=Re.removeSortsInColumns(i,d),h=Re.removeFiltersInColumns(s,a,d),v=Re.removeFiltersInColumns(s,o,d),g=Re.removeColumnFromMovedColumns(s,r,d),f=Re.removeColumnsFromSelectDistinctColumns(l,d);c.length!==i.length&&(ne.debug("removing sorts from removed custom columns..."),this.setState({sorts:c})),(h.size!==a.size||v.size!==o.size)&&(ne.debug("removing filters from removed custom columns..."),this.setState({quickFilters:h,advancedFilters:v})),Vt(r,g)||(ne.debug("change moved columns for removed custom columns",g),this.setState({movedColumns:g})),Vt(l,f)||(ne.debug("change selectDistinct columns for removed custom columns",g),this.setState({selectDistinctColumns:f}))}this.setState({customColumns:e}),e.length>0&&this.startLoading("Applying custom columns...")}handleCustomColumnsChanged(){ne.debug("custom columns changed");var{isReady:e}=this.state;if(e){var t;this.stopLoading(),(t=this.grid)===null||t===void 0||t.forceUpdate()}else this.initState()}handlePendingCommitClicked(){return this.commitPending()}handlePendingDiscardClicked(){return this.discardPending()}handlePendingDataUpdated(){var e;ne.debug("pending data updated");var{model:t}=this.props,{pendingDataMap:r,pendingDataErrors:i}=t;this.setState({pendingDataMap:r,pendingDataErrors:i,pendingSaveError:null}),(e=this.grid)===null||e===void 0||e.forceUpdate()}handleAggregationsChange(e){ne.debug("handleAggregationsChange",e),this.startLoading("Aggregating ".concat(e.aggregations.map(t=>t.operation).join(", "),"...")),this.setState({aggregationSettings:e})}handleAggregationChange(e){ne.debug("handleAggregationChange",e),this.startLoading("Aggregating ".concat(e.operation,"...")),this.setState(t=>{var{aggregationSettings:r}=t;return{selectedAggregation:e,aggregationSettings:it(it({},r),{},{aggregations:r.aggregations.map(i=>i.operation===e.operation?e:i)})}})}handleAggregationEdit(e){ne.debug("handleAggregationEdit",e);var{openOptions:t}=this.state;this.setState({openOptions:[...t,{type:Se.AGGREGATION_EDIT,title:"Edit Columns to ".concat(e.operation)}],selectedAggregation:e})}handleRollupChange(e){var t,r;ne.info("Rollup change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Grouping by columns ".concat((t=e==null||(r=e.columns)===null||r===void 0?void 0:r.join(", "))!==null&&t!==void 0?t:"","...")),this.setState({rollupConfig:e,movedColumns:[],frozenColumns:[],sorts:[],reverseType:M.REVERSE_TYPE.NONE,selectDistinctColumns:[]})}handleSelectDistinctChanged(e){ne.debug("SelectDistinct change",e),this.resetGridViewState(),this.showAllColumns(),this.clearAllFilters(),this.startLoading("Selecting distinct values in ".concat(e.length>0?e.join(", "):"","...")),this.setState({selectDistinctColumns:e,movedColumns:[],sorts:[],reverseType:M.REVERSE_TYPE.NONE})}handleDownloadTableStart(){var{canDownloadCsv:e}=this.props;e?this.setState({isTableDownloading:!0,tableDownloadProgress:0,tableDownloadEstimatedTime:null,tableDownloadStatus:Lr.DOWNLOAD_STATUS.INITIATING}):ne.error("Attempted to handleDownloadTableStart for user without download CSV permission.")}handleDownloadTable(e,t,r,i,a,o,l){var{canDownloadCsv:s}=this.props;s?(ne.info("start table downloading",e,t,r,i,a,o,l),this.setState(()=>(this.tableSaver&&this.tableSaver.startDownload(e,t,r,i,a,o,l),{tableDownloadStatus:Lr.DOWNLOAD_STATUS.DOWNLOADING}))):ne.error("Attempted to handleDownloadTable for user without download CSV permission.")}seekRow(e){var t=arguments,r=this;return di(function*(){var i,a=t.length>1&&t[1]!==void 0?t[1]:!1,{gotoValueSelectedColumnName:o,gotoValueSelectedFilter:l}=r.state,{model:s}=r.props,{dh:u}=s;if(s.isSeekRowAvailable&&e!==""){var d=Re.getColumnByName(s.columns,o);if(d!==void 0){var c=(i=r.grid)===null||i===void 0?void 0:i.state.cursorRow;c==null&&(c=0);var h=l===pe.contains||l===pe.containsIgnoreCase,v=l===pe.eqIgnoreCase||l===pe.containsIgnoreCase;try{var g,{formatter:f}=s,p=M.getNormalizedType(d.type),C;switch(p){case M.dataType.CHAR:case M.dataType.STRING:{C=yield s.seekRow(c,d,u.ValueType.STRING,e,v,h,a??!1);break}case M.dataType.DATETIME:{var[w]=xn.parseDateRange(u,e,f.timeZone);C=yield s.seekRow(c,d,u.ValueType.DATETIME,w,void 0,void 0,a??!1);break}case M.dataType.DECIMAL:case M.dataType.INT:{if(!M.isBigDecimalType(d.type)&&!M.isBigIntegerType(d.type)){var b=parseInt(e,10);e==="-Infinity"?b=Number.NEGATIVE_INFINITY:e==="Infinity"&&(b=Number.POSITIVE_INFINITY),C=yield s.seekRow(c,d,u.ValueType.NUMBER,b,void 0,void 0,a??!1)}else C=yield s.seekRow(c,d,u.ValueType.STRING,e,void 0,void 0,a??!1);break}default:C=yield s.seekRow(c,d,u.ValueType.STRING,r.tableUtils.makeValue(d.type,e,f.timeZone),void 0,void 0,a??!1)}(g=r.grid)===null||g===void 0||g.setFocusRow(C),r.setState({gotoValueError:""})}catch{r.setState({gotoValueError:"invalid input"})}}}})()}handleCancelDownloadTable(){var e;(e=this.tableSaver)===null||e===void 0||e.cancelDownload(),this.setState({isTableDownloading:!1})}handleDownloadCompleted(){this.setState({isTableDownloading:!1,tableDownloadProgress:100,tableDownloadStatus:Lr.DOWNLOAD_STATUS.FINISHED})}handleDownloadCanceled(){this.setState({isTableDownloading:!1,tableDownloadProgress:0,tableDownloadStatus:Lr.DOWNLOAD_STATUS.CANCELED})}deleteRanges(e){var{model:t}=this.props;this.pending.add(t.delete(e)).catch(r=>{ot.isCanceled(r)||ne.error("Unable to delete ranges",e,r)})}resetColumnSelection(){if(this.grid!=null){var{isSelectingColumn:e}=this.props;if(e){var{columnAllowedCursor:t}=this.props;this.grid.setState({cursor:t})}else this.grid.setState({cursor:null}),this.setState({hoverSelectColumn:null})}}resetGridViewState(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.grid&&(this.grid.clearSelectedRanges(),this.grid.setViewState({left:0,top:0,topOffset:0,leftOffset:0},e))}sendStateChange(){if(this.grid){var{state:e}=this,{state:t}=this.grid,{onStateChange:r}=this.props;r(e,t)}}handleOverflowClose(){this.setState({showOverflowModal:!1})}getColumnBoundingRect(){var e,{metrics:t,shownColumnTooltip:r}=this.state;_(t),_(r);var i=(e=this.gridWrapper)===null||e===void 0?void 0:e.getBoundingClientRect(),a=20;_(i);var{columnHeaderHeight:o,allColumnXs:l,allColumnWidths:s,width:u,columnHeaderMaxDepth:d}=t,c=l.get(r),h=s.get(r);_(c),_(h);var v=i.left+Ie(c+h/2,a,u-a);return{top:i.top+(d-1)*o,left:i.left+Ie(c+h/2,a,u-a),bottom:i.top+d*o,right:i.left+Ie(c+h/2,a,u-a)+1,width:1,height:o,x:v,y:i.top,toJSON:()=>{throw new Error("not implemented")}}}handleGotoRowSelectedRowNumberSubmit(){var{gotoRow:e}=this.state;this.focusRowInGrid(e)}focusRowInGrid(e){var{model:t}=this.props,{rowCount:r}=t;if(this.setState({gotoRow:e}),e===""){this.setState({gotoRowError:"",gotoValueError:""});return}var i=parseInt(e,10);if(i>r||i<-r)this.setState({gotoRowError:"Invalid row index"});else if(i===0){var a;this.setState({gotoRowError:"",gotoValueError:""}),(a=this.grid)===null||a===void 0||a.setFocusRow(0)}else if(i<0){var o;this.setState({gotoRowError:"",gotoValueError:""}),(o=this.grid)===null||o===void 0||o.setFocusRow(i+r)}else{var l;(l=this.grid)===null||l===void 0||l.setFocusRow(i-1),this.setState({gotoRowError:"",gotoValueError:""})}}handleGotoRowSelectedRowNumberChanged(e){var t=e.target.value;this.focusRowInGrid(t)}getColumnTooltip(e,t,r){var{columnHeaderHeight:i,columnHeaderMaxDepth:a,allColumnXs:o,allColumnWidths:l,width:s}=t,u=o.get(e),d=l.get(e);if(u==null||d==null)return null;var c=Math.max(0,u),h=d;u+d>s?h=s-u:u<0&&(h=d-Math.abs(u));var v={position:"absolute",top:(a-1)*i,left:c,width:h,height:i,pointerEvents:"none"},g={clientWidth:1,clientHeight:i,getBoundingClientRect:this.getColumnBoundingRect},f={placement:"bottom",modifiers:{flip:{behavior:["bottom","top"]}}},p=this.getModelColumn(e);if(p==null)return null;var C=r.columns[p];return C==null?null:m.createElement("div",{style:v},m.createElement(Gt,{key:C.name,timeout:400,interactive:!0,options:f,ref:this.handleTooltipRef,referenceObject:g,onExited:()=>{this.setState({shownColumnTooltip:null})}},m.createElement(xg,{model:r,column:C,onStatistics:()=>{var w;(w=this.tooltip)===null||w===void 0||w.update()}})))}handleGotoValueSelectedColumnNameChanged(e){var t,{model:r}=this.props,i=(t=this.grid)===null||t===void 0?void 0:t.state.cursorRow;if(i!=null){var a=r.getColumnIndexByName(e),o=Re.getColumnByName(r.columns,e);if(a==null||o==null)return;var l=r.valueForCell(a,i),s=Re.convertValueToText(l,o.type);this.setState({gotoValueSelectedColumnName:e,gotoValue:s,gotoValueError:""})}this.setState({gotoValueSelectedColumnName:e,gotoValueError:""})}handleGotoValueSelectedFilterChanged(e){this.setState({gotoValueSelectedFilter:e,gotoValueError:""})}handleGotoValueSubmitted(e){var{gotoValue:t}=this.state;this.seekRow(t,e)}render(){var e,t,r=this,i,a,o,{children:l,customFilters:s,getDownloadWorker:u,isSelectingColumn:d,isStuckToBottom:c,isStuckToRight:h,model:v,name:g,onlyFetchVisibleColumns:f,alwaysFetchColumns:p,advancedSettings:C,onAdvancedSettingsChange:w,canDownloadCsv:b,onCreateChart:E}=this.props,{metricCalculator:T,metrics:S,isFilterBarShown:O,isSelectingPartition:F,isMenuShown:R,isReady:N,copyOperation:P,focusedFilterBarColumn:I,loadingText:A,loadingScrimProgress:H,loadingSpinnerShown:x,keyHandlers:W,mouseHandlers:z,shownColumnTooltip:G,hoverAdvancedFilter:K,shownAdvancedFilter:q,hoverSelectColumn:k,quickFilters:L,advancedFilters:$,partition:U,partitionFilters:Y,partitionTable:X,partitionColumn:ae,searchFilter:ce,selectDistinctColumns:ee,movedColumns:oe,movedRows:ue,formatter:Ae,conditionalFormats:Je,conditionalFormatPreview:Xe,conditionalFormatEditIndex:ze,sorts:Ve,reverseType:Qe,customColumns:Ne,selectedRanges:lt,isTableDownloading:st,tableDownloadStatus:Mt,tableDownloadProgress:Lt,tableDownloadEstimatedTime:er,showSearchBar:ur,searchValue:Tt,selectedSearchColumns:Ze,invertSearchColumns:kt,aggregationSettings:ut,selectedAggregation:dt,rollupConfig:Ye,openOptions:yt,pendingSavePromise:_t,pendingSaveError:Rt,pendingRowCount:ct,pendingDataErrors:dr,pendingDataMap:jt,toastMessage:tr,frozenColumns:Ot,columnHeaderGroups:xt,showOverflowModal:Ir,overflowText:qr,overflowButtonTooltipProps:Xr,expandCellTooltipProps:Qr,linkHoverTooltipProps:Zr,isGotoShown:Jr,gotoRow:_e,gotoRowError:Vn,gotoValueError:mn,gotoValueSelectedColumnName:$n,gotoValue:Ar,gotoValueSelectedFilter:Gn}=this.state;if(!N)return null;var ht=this.getTheme(),Wn=this.getCachedFilter(s,L,$,Y,ce),vn=T.getUserColumnWidths(),zn=this.getCachedStateOverride(k,O,d,H,L,$,Ve,Qe,Ye,R),xi=S?S.top:0,Hi=S?S.bottomViewport:0,jn=null,Kn=null;f&&(jn=S?S.left:0,Kn=S?S.right:0);var Bi=S!=null&&S.width>0&&S.height>0,Yn=((e=Ye==null||(t=Ye.columns)===null||t===void 0?void 0:t.length)!==null&&e!==void 0?e:0)>0,qn=null,Ui=S?Math.min(Math.max(Zt.minDebounce,Math.round(S.rowCount/200)),Zt.maxDebounce):Zt.maxDebounce;if(O&&I!=null&&S!=null){var{gridX:Vi,gridY:$i,allColumnXs:Gi,allColumnWidths:rr,width:gn}=S,vo=Gi.get(I),go=rr.get(I);if(vo!=null&&go!=null){var Wi,zi,ji,fo=Vi+vo,qs=$i-((Wi=ht.filterBarHeight)!==null&&Wi!==void 0?Wi:0),Xs=go+1,Qs=((zi=ht.filterBarHeight)!==null&&zi!==void 0?zi:0)-1,Zs={top:qs,left:fo,minWidth:Math.min(Xs,gn-fo),height:Qs},Ki="",po=!0,Yi=this.getModelColumn(I);_(Yi);var qi=L.get(Yi),Co=$.get(Yi);qi!=null&&(Ki=qi.text,po=qi.filter!=null);var Js=L.size!==0||$.size!==0;qn=m.createElement(jm,{ref:this.filterInputRef,style:Zs,className:ie({error:!po,active:Ki!==""||Co!=null,"iris-grid-has-filter":Js}),isAdvancedFilterSet:Co!=null,onAdvancedFiltersTriggered:()=>{this.setState({shownAdvancedFilter:I})},key:I,onChange:this.handleFilterBarChange,onDone:this.handleFilterBarDone,onTab:this.handleFilterBarTab,onContextMenu:(ji=this.grid)===null||ji===void 0?void 0:ji.handleContextMenu,debounceMs:Ui,value:Ki})}}var wo=null;if(A!=null){var eu=m.createElement("div",{className:"iris-grid-loading-status"},m.createElement("div",{className:ie("iris-grid-loading-status-bar",{show:x})},A),m.createElement("button",{type:"button",onClick:this.handleCancel,className:ie("iris-grid-btn-cancel",{show:x})},m.createElement(de,{icon:Qa,transform:"down-1"}),"Cancel")),tu=S?S.gridY:0;wo=m.createElement("div",{className:"iris-grid-loading",style:{top:tu}},eu)}var bo=null;if(G!=null&&S){var Xi;bo=this.getColumnTooltip(G,S,v),(Xi=this.tooltip)===null||Xi===void 0||Xi.update()}var So=[];if(S&&O)for(var{gridX:ru,gridY:nu,visibleColumns:Eo,allColumnXs:iu,allColumnWidths:au}=S,{filterBarHeight:Qi}=ht,ou=function(){var Be=Eo[Zi],cr=iu.get(Be),hr=au.get(Be),fn=r.getModelColumn(Be);if(fn!=null){var ea=v.isFilterable(fn);if(ea&&cr!=null&&hr!=null&&hr>0){var ta=ru+cr+hr-24,en=nu-(Qi??0)+2,pn={position:"absolute",top:en,left:ta},ra=$.get(fn),Xn=ra!=null,Cn=Be===K||Be===I||Xn,na=m.createElement("div",{className:ie("advanced-filter-button-container",{hidden:!Cn}),key:Be,style:pn},Cn&&m.createElement(Z,{kind:"ghost",className:ie("btn-link-icon advanced-filter-button",{"filter-set":Xn}),onClick:()=>{r.setState({shownAdvancedFilter:Be})},onContextMenu:ia=>{var aa;(aa=r.grid)===null||aa===void 0||aa.handleContextMenu(ia)},onMouseEnter:()=>{r.setState({hoverAdvancedFilter:Be})},onMouseLeave:()=>{r.setState({hoverAdvancedFilter:null})}},m.createElement("div",{className:"fa-layers"},m.createElement(de,{icon:Wa,className:"filter-solid"}),m.createElement(de,{icon:pi,className:"filter-light"}))));So.push(na)}}},Zi=0;Zi<Eo.length;Zi+=1)ou();var To=[];if(S)for(var{gridX:yo,visibleColumns:Ro,allColumnXs:lu,allColumnWidths:su,columnHeaderHeight:Oo}=S,uu=function(){var Be=Ro[Ji],cr=lu.get(Be),hr=su.get(Be);if(cr!=null&&hr!=null&&hr>0){var fn=yo+cr,ea=yo+cr+hr-20,ta=O?{position:"absolute",top:Oo,left:ea,width:20,height:ht.filterBarHeight}:{position:"absolute",top:0,left:fn,width:hr,height:Oo},en=r.getModelColumn(Be);if(en!=null){var pn=v.columns[en];if(pn==null)return ne.warn("Column does not exist at index ".concat(en," for column array of length ").concat(v.columns.length)),"continue";var ra=$.get(en),{options:Xn}=ra||{},Cn=M.getSortForColumn(v.sort,pn.name),na=Cn?Cn.direction:null,ia=m.createElement("div",{key:Be,className:"advanced-filter-menu-container",style:ta},m.createElement(ls,{className:"advanced-filter-menu-popper",onEntered:r.getAdvancedMenuOpenedHandler(Be),onExited:()=>{r.handleAdvancedMenuClosed(Be)},isShown:q===Be,interactive:!0,closeOnBlur:!0,options:{positionFixed:!0}},r.getCachedAdvancedFilterMenuActions(v,pn,Xn,na,Ae)));To.push(ia)}}},Ji=0;Ji<Ro.length;Ji+=1)var du=uu();var Fo=this.getCachedOptionItems(E!==void 0&&v.isChartBuilderAvailable,v.isCustomColumnsAvailable,v.isFormatColumnsAvailable,v.isRollupAvailable,v.isTotalsAvailable||Yn,v.isSelectDistinctAvailable,v.isExportAvailable,this.toggleFilterBarAction,this.toggleSearchBarAction,this.toggleGotoRowAction,O,ur,b,this.isTableSearchAvailable(),Jr,C.size>0),No=this.getCachedHiddenColumns(T,vn),cu=yt.map(et=>{switch(et.type){case Se.CHART_BUILDER:return m.createElement(mf,{model:v,onChange:this.handleChartChange,onSubmit:this.handleChartCreate,key:Se.CHART_BUILDER});case Se.VISIBILITY_ORDERING_BUILDER:return m.createElement(Lp,{model:v,movedColumns:oe,hiddenColumns:No,columnHeaderGroups:xt,onColumnVisibilityChanged:this.handleColumnVisibilityChanged,onReset:this.handleColumnVisibilityReset,onMovedColumnsChanged:this.handleMovedColumnsChanged,onColumnHeaderGroupChanged:this.handleHeaderGroupsChanged,key:Se.VISIBILITY_ORDERING_BUILDER});case Se.CONDITIONAL_FORMATTING:return m.createElement(eC,{rules:Je,onChange:this.handleConditionalFormatsChange,onCreate:this.handleConditionalFormatCreate,onSelect:this.handleConditionalFormatEdit});case Se.CONDITIONAL_FORMATTING_EDIT:return _(v.columns),_(this.handleConditionalFormatEditorUpdate),m.createElement(MC,{dh:v.dh,columns:v.columns,rule:Xe,onUpdate:this.handleConditionalFormatEditorUpdate,onSave:this.handleConditionalFormatEditorSave,onCancel:this.handleConditionalFormatEditorCancel});case Se.CUSTOM_COLUMN_BUILDER:return m.createElement(yf,{model:v,customColumns:Ne,onSave:this.handleUpdateCustomColumns,onCancel:this.handleMenuBack,key:Se.CUSTOM_COLUMN_BUILDER});case Se.ROLLUP_ROWS:return m.createElement(Nf,{model:v,onChange:this.handleRollupChange,config:Ye,key:Se.ROLLUP_ROWS});case Se.AGGREGATIONS:return m.createElement(Jg,{settings:ut,isRollup:Yn,onChange:this.handleAggregationsChange,onEdit:this.handleAggregationEdit});case Se.AGGREGATION_EDIT:return dt&&m.createElement(af,{aggregation:dt,columns:v.originalColumns,onChange:this.handleAggregationChange});case Se.TABLE_EXPORTER:return m.createElement(Lr,{model:v,name:g,userColumnWidths:vn,movedColumns:oe,isDownloading:st,tableDownloadStatus:Mt,tableDownloadProgress:Lt,tableDownloadEstimatedTime:er??void 0,onDownload:this.handleDownloadTable,onDownloadStart:this.handleDownloadTableStart,onCancel:this.handleCancelDownloadTable,selectedRanges:lt,key:Se.TABLE_EXPORTER});case Se.SELECT_DISTINCT:return m.createElement(Qp,{model:v,selectDistinctColumns:ee,onChange:this.handleSelectDistinctChanged});case Se.ADVANCED_SETTINGS:return m.createElement(mo,{items:C,onChange:w});default:throw Error("Unexpected option type ".concat(et.type))}});return m.createElement("div",{className:"iris-grid",role:"presentation"},m.createElement("div",{className:"iris-grid-column"},l!=null&&m.createElement("div",{className:"iris-grid-bar"},l),m.createElement(Or,{in:F,timeout:qe.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"iris-grid-partition-selector-wrapper iris-grid-bar iris-grid-bar-primary"},X&&ae&&U!=null&&m.createElement(jp,{dh:v.dh,table:X,getFormattedString:(et,Be,cr)=>v.displayString(et,Be,cr),columnName:ae.name,partition:U,onChange:this.handlePartitionChange,onFetchAll:this.handlePartitionFetchAll,onAppend:this.handlePartitionAppend,onDone:this.handlePartitionDone}))),m.createElement(Or,{in:ur,timeout:qe.transitionSlowMs,classNames:"iris-grid-bar-horizontal",onEnter:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExit:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"iris-grid-bar"},m.createElement(ui,{value:Tt,selectedColumns:Ze,invertSelection:kt,onChange:this.handleCrossColumnSearch,columns:v.columns,ref:this.crossColumnRef}))),m.createElement("div",{className:"grid-wrapper",ref:et=>{this.gridWrapper=et}},m.createElement($h,{ref:et=>{this.grid=et},isStickyBottom:!ke(v)||!v.isEditable,isStuckToBottom:c,isStuckToRight:h,metricCalculator:T,model:v,keyHandlers:W,mouseHandlers:z,movedColumns:oe,movedRows:ue,onError:this.handleGridError,onViewChanged:this.handleViewChanged,onSelectionChanged:this.handleSelectionChanged,onMovedColumnsChanged:this.handleMovedColumnsChanged,renderer:this.renderer,stateOverride:zn,theme:ht}),m.createElement(Tw,{isOpen:Ir,text:qr,onClose:this.handleOverflowClose}),Bi&&m.createElement(wg,{model:v,modelColumns:v.columns,top:xi,bottom:Hi,left:jn,right:Kn,filter:Wn,formatter:Ae,sorts:Ve,reverseType:Qe,movedColumns:oe,customColumns:Ne,hiddenColumns:No,alwaysFetchColumns:this.getAlwaysFetchColumns(p,v.columns,oe,v.floatingLeftColumnCount,v.floatingRightColumnCount,(i=this.grid)===null||i===void 0||(a=i.state.draggingColumn)===null||a===void 0?void 0:a.range),formatColumns:this.getCachedPreviewFormatColumns(v.dh,v.columns,Je,Xe,((o=yt[yt.length-1])===null||o===void 0?void 0:o.type)===Se.CONDITIONAL_FORMATTING_EDIT?ze??void 0:void 0),rollupConfig:this.getModelRollupConfig(v.originalColumns,Ye,ut),totalsConfig:this.getModelTotalsConfig(v.columns,Ye,ut),selectDistinctColumns:ee,pendingRowCount:ct,pendingDataMap:jt,frozenColumns:Ot,columnHeaderGroups:xt}),!R&&m.createElement("div",{className:"grid-settings-button"},m.createElement(Z,{kind:"ghost","data-testid":"btn-iris-grid-settings-button-".concat(g),onClick:this.handleMenu,icon:m.createElement(de,{icon:md,transform:"up-1"}),tooltip:"Table Options"})),qn,wo,So,bo,To,Xr&&this.getOverflowButtonTooltip(Xr),Qr&&this.getExpandCellTooltip(Qr),Zr&&this.getLinkHoverTooltip(Zr)),m.createElement(Ow,{model:v,isShown:Jr,gotoRow:_e,gotoRowError:Vn,gotoValueError:mn,onGotoRowSubmit:this.handleGotoRowSelectedRowNumberSubmit,onGotoRowNumberChanged:this.handleGotoRowSelectedRowNumberChanged,onClose:this.handleGotoRowClosed,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:()=>{this.handleAnimationStart(),this.focus()},onExited:this.handleAnimationEnd,gotoValueSelectedColumnName:$n,gotoValue:Ar,gotoValueFilter:Gn,onGotoValueSelectedColumnNameChanged:this.handleGotoValueSelectedColumnNameChanged,onGotoValueSelectedFilterChanged:this.handleGotoValueSelectedFilterChanged,onGotoValueChanged:this.handleGotoValueChanged,onGotoValueSubmit:this.handleGotoValueSubmitted}),m.createElement(Rm,{error:Rt,isSaving:_t!=null,saveTooltip:"Commit (".concat(this.commitAction.shortcut.getDisplayText(),")"),discardTooltip:"Discard (".concat(this.discardAction.shortcut.getDisplayText(),")"),pendingDataErrors:dr,pendingDataMap:jt,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,onSave:this.handlePendingCommitClicked,onDiscard:this.handlePendingDiscardClicked}),m.createElement(gg,null,tr),m.createElement(Gm,{model:v,copyOperation:P??void 0,onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd}),m.createElement(ft,{dh:v.dh,ref:et=>{this.tableSaver=et},getDownloadWorker:u,onDownloadCompleted:this.handleDownloadCompleted,onDownloadCanceled:this.handleDownloadCanceled,onDownloadProgressUpdate:this.handleDownloadProgressUpdate,isDownloading:Mt===Lr.DOWNLOAD_STATUS.DOWNLOADING,formatter:Ae})),m.createElement(Or,{in:R,timeout:qe.transitionMidMs,classNames:"slide-left",onEntering:this.handleAnimationStart,onEntered:this.handleAnimationEnd,onExiting:this.handleAnimationStart,onExited:this.handleAnimationEnd,mountOnEnter:!0,unmountOnExit:!0},m.createElement("div",{className:"table-sidebar"},m.createElement(Td,null,m.createElement(Mo,{title:"Table Options",onClose:this.handleMenuClose},m.createElement(us,{onSelect:et=>this.handleMenuSelect(Fo[et]),items:Fo})),cu.map((et,Be)=>m.createElement(Mo,{title:yt[Be].title,onBack:this.handleMenuBack,onClose:this.handleMenuClose,key:yt[Be].type},et))))),m.createElement(se,{actions:this.contextActions}))}}te(Zt,"minDebounce",150);te(Zt,"maxDebounce",500);te(Zt,"loadingSpinnerDelay",800);te(Zt,"defaultProps",{children:null,advancedFilters:lr,advancedSettings:lr,alwaysFetchColumns:Ee,conditionalFormats:Ee,customColumnFormatMap:lr,isFilterBarShown:!1,applyInputFiltersOnInit:!1,movedColumns:Ee,movedRows:Ee,inputFilters:Ee,customFilters:Ee,onCreateChart:void 0,onColumnSelected:()=>{},onDataSelected:()=>{},onError:()=>{},onStateChange:()=>{},onPartitionAppend:()=>{},onAdvancedSettingsChange:()=>{},partition:null,partitionColumn:null,quickFilters:lr,selectDistinctColumns:Ee,sorts:Ee,reverseType:M.REVERSE_TYPE.NONE,customColumns:Ee,aggregationSettings:Ks,rollupConfig:void 0,userColumnWidths:lr,userRowHeights:lr,onSelectionChanged:()=>{},isSelectingColumn:!1,isSelectingPartition:!1,isStuckToBottom:!1,isStuckToRight:!1,columnSelectionValidator:null,columnAllowedCursor:null,columnNotAllowedCursor:null,name:"table",onlyFetchVisibleColumns:!0,showSearchBar:!1,searchValue:"",selectedSearchColumns:null,invertSearchColumns:!0,onContextMenu:()=>{},pendingDataMap:lr,getDownloadWorker:void 0,settings:{timeZone:"America/New_York",defaultDateTimeFormat:xn.FULL_DATE_FORMAT,showTimeZone:!1,showTSeparator:!0,truncateNumbersWithPound:!1,formatter:Ee,decimalFormatOptions:Oe.shape({defaultFormatString:Oe.string}),integerFormatOptions:Oe.shape({defaultFormatString:Oe.string})},canCopy:!0,canDownloadCsv:!0,frozenColumns:null,theme:Ps,canToggleSearch:!0});const Lw=Zt;function pa(n,e,t){return e=kw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function kw(n){var e=_w(n,"string");return typeof e=="symbol"?e:String(e)}function _w(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class xw extends Error{constructor(e,t){super("".concat(t," can't be empty (on pending row ").concat(e+1,")")),pa(this,"isMissingKey",!0),pa(this,"rowIndex",void 0),pa(this,"columnName",void 0),this.rowIndex=e,this.columnName=t}}const Hw=xw;function zl(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function ci(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zl(Object(t),!0).forEach(function(r){we(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):zl(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function jl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function pr(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){jl(a,r,i,o,l,"next",s)}function l(s){jl(a,r,i,o,l,"throw",s)}o(void 0)})}}function we(n,e,t){return e=Bw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Bw(n){var e=Uw(n,"string");return typeof e=="symbol"?e:String(e)}function Uw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var xe=Fe.module("IrisGridTableModel"),Vw=150,$w=0,Gw=[];function hi(n){return n.table!==void 0}class un extends me{seekRow(e,t,r,i,a,o,l){throw new Error("Method not implemented.")}export(){throw new Error("Method not implemented.")}columnStatistics(e){throw new Error("Method not implemented.")}get customColumns(){return[]}set customColumns(e){throw new Error("Method not implemented.")}get formatColumns(){return[]}set formatColumns(e){throw new Error("Method not implemented.")}updateFrozenColumns(e){throw new Error("Method not implemented.")}get rollupConfig(){throw new Error("Method not implemented.")}set rollupConfig(e){throw new Error("Method not implemented.")}get selectDistinctColumns(){throw new Error("Method not implemented.")}set selectDistinctColumns(e){throw new Error("Method not implemented.")}get columns(){return this.table.columns}constructor(e,t){var r,i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Gr(e),o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),we(this,"dh",void 0),we(this,"irisGridUtils",void 0),we(this,"tableUtils",void 0),we(this,"irisFormatter",void 0),we(this,"inputTable",void 0),we(this,"subscription",void 0),we(this,"table",void 0),we(this,"viewport",void 0),we(this,"viewportData",void 0),we(this,"formattedStringData",void 0),we(this,"pendingStringData",void 0),we(this,"isSaveInProgress",void 0),we(this,"totalsTable",void 0),we(this,"totalsTablePromise",void 0),we(this,"totals",void 0),we(this,"totalsDataMap",void 0),we(this,"pendingNewDataMap",void 0),we(this,"pendingNewRowCount",0),we(this,"_columnHeaderGroupMap",new Map),we(this,"columnHeaderParentMap",new Map),we(this,"_columnHeaderMaxDepth",null),we(this,"_columnHeaderGroups",[]),we(this,"_movedColumns",null),we(this,"getMemoizedInitialMovedColumns",je(l=>{var s;if(!l)return[];var u=[],{groupMap:d}=Re.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]),c=(T,S)=>{var O=this.getColumnIndexByName(T);if(O==null)throw new Error("Unknown layout hint column: ".concat(T));var F=j.getVisibleIndex(O,u);u=j.moveItem(F,S,u)},h=(T,S)=>{var O=d.get(T);if(O==null)throw new Error("Unknown layout hint group: ".concat(T));var F=O.getVisibleRange(u);u=j.moveRange(F,S,u)},{frontColumns:v=[],backColumns:g=[],frozenColumns:f=[]}=l;if(v.length||g.length||f.length){var p=new Set,C=0;f.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,C),C+=1}),v.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,C),C+=1});var w=this.columnMap.size-1;g.forEach(T=>{if(p.has(T))throw new Error("Column specified in multiple layout hints: ".concat(T));c(T,w),w-=1})}var b=l==null?void 0:l.columnGroups;if(b){var E=[...d.values()];E.sort((T,S)=>T.depth-S.depth),E.forEach(T=>{var S=T.children[0],O=this.getColumnIndexByName(S),F;if(O!=null)F=j.getVisibleIndex(O,u);else{var R=d.get(S);if(!R)throw new Error("Unknown column ".concat(S," in group ").concat(T.name));var N=R.getVisibleRange(u);[,F]=N}for(var P=1;P<T.children.length;P+=1){var I=T.children[P],A=d.get(I),H=this.getColumnIndexByName(I);if(A){var x=A.getVisibleRange(u)[0]<F,W=x?F-A.childIndexes.length+1:F+1;h(I,W),F=W+A.childIndexes.length-1}else if(H!=null){var z=j.getVisibleIndex(H,u)<F,G=z?F:F+1;c(I,G),F=G}}})}return this._movedColumns=u,u})),we(this,"getMemoizedInitialColumnHeaderGroups",je(l=>{var s;return Re.parseColumnHeaderGroups(this,(s=l==null?void 0:l.columnGroups)!==null&&s!==void 0?s:[]).groups})),we(this,"getMemoizedColumnMap",je(l=>{var s=new Map;return l.forEach(u=>s.set(u.name,u)),s})),we(this,"getColumnIndicesByNameMap",je(l=>{var s=new Map;return l.forEach((u,d)=>{var{name:c}=u;return s.set(c,d)}),s})),we(this,"setViewport",fi((l,s,u)=>{if(s<l){xe.error("Invalid viewport",l,s);return}var{viewport:d}=this;if(d!=null&&d.top===l&&d.bottom===s&&d.columns===u){xe.debug2("Ignoring duplicate viewport",d);return}this.viewport={top:l,bottom:s,columns:u},xe.debug2("setViewport",this.viewport),this.applyViewport()},Vw)),we(this,"applyViewport",fi(()=>{if(this.viewport){xe.debug2("applyViewport",this.viewport);var{top:l,bottom:s,columns:u}=this.viewport,[d,c]=this.getCachedViewportRowRange(l,s);this.applyBufferedViewport(d,c,u)}},$w,{leading:!1})),we(this,"getCachedFormattedString",zt((l,s,u,d,c)=>l.getFormattedString(s,u,d,c),{max:1e4})),we(this,"getCachedCustomColumnFormatFlag",zt(bi.isCustomColumnFormatDefined,{max:1e4})),we(this,"getCachedViewportRowRange",je((l,s)=>{var u=s-l,d=Math.max(0,l-u*un.ROW_BUFFER_PAGES),c=s+u*un.ROW_BUFFER_PAGES;return[d,c]})),we(this,"getCachedPendingErrors",je((l,s,u)=>{var d=new Map;return l.forEach((c,h)=>{for(var{data:v}=c,g=0;g<u;g+=1)if(!v.has(g)){var f;d.has(h)||d.set(h,[]),(f=d.get(h))===null||f===void 0||f.push(new Hw(h,s[g].name))}}),d})),this.handleTableDisconnect=this.handleTableDisconnect.bind(this),this.handleTableReconnect=this.handleTableReconnect.bind(this),this.handleTableUpdate=this.handleTableUpdate.bind(this),this.handleTotalsUpdate=this.handleTotalsUpdate.bind(this),this.handleRequestFailed=this.handleRequestFailed.bind(this),this.handleCustomColumnsChanged=this.handleCustomColumnsChanged.bind(this),this.dh=e,this.irisFormatter=a,this.irisGridUtils=new Re(e),this.inputTable=o,this.subscription=null,this.table=t,this.tableUtils=new M(e),this.viewport=null,this.viewportData=null,this.formattedStringData=[],this.pendingStringData=[],this.isSaveInProgress=!1,this.totalsTable=null,this.totalsTablePromise=null,this.totals=null,this.totalsDataMap=null,this.pendingNewDataMap=new Map,this.pendingNewRowCount=0,this.columnHeaderGroups=Re.parseColumnHeaderGroups(this,(r=(i=this.layoutHints)===null||i===void 0?void 0:i.columnGroups)!==null&&r!==void 0?r:[]).groups}close(){this.table.close(),this.totalsTable!==null&&this.totalsTable.close(),this.totalsTablePromise!==null&&this.totalsTablePromise.cancel()}startListening(){super.startListening();var{dh:e}=this;this.table.addEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.addEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.addEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.addEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.addEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable),this.applyViewport()}stopListening(){super.stopListening();var{dh:e}=this;this.table.removeEventListener(e.Table.EVENT_DISCONNECT,this.handleTableDisconnect),this.table.removeEventListener(e.Table.EVENT_RECONNECT,this.handleTableReconnect),this.table.removeEventListener(e.Table.EVENT_UPDATED,this.handleTableUpdate),this.table.removeEventListener(e.Client.EVENT_REQUEST_FAILED,this.handleRequestFailed),this.table.removeEventListener(e.Table.EVENT_CUSTOMCOLUMNSCHANGED,this.handleCustomColumnsChanged),this.totalsTable!=null&&this.removeTotalsListeners(this.totalsTable),this.closeSubscription()}addTotalsListeners(e){var{dh:t}=this;e.addEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate),e.setViewport(0,0)}removeTotalsListeners(e){var{dh:t}=this;e.removeEventListener(t.Table.EVENT_UPDATED,this.handleTotalsUpdate)}handleTableDisconnect(){this.dispatchEvent(new Le(me.EVENT.DISCONNECT))}handleTableReconnect(){this.dispatchEvent(new Le(me.EVENT.RECONNECT))}handleTableUpdate(e){this.copyViewportData(e.detail),this.dispatchEvent(new Le(me.EVENT.UPDATED))}handleTotalsUpdate(e){this.copyTotalsData(e.detail),this.dispatchEvent(new Le(me.EVENT.UPDATED))}handleRequestFailed(e){this.dispatchEvent(new Le(me.EVENT.REQUEST_FAILED,e))}handleCustomColumnsChanged(){this.dispatchEvent(new Le(me.EVENT.COLUMNS_CHANGED,{detail:this.columns}))}get rowCount(){var e,t,r;return this.table.size+this.pendingNewRowCount+((e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0)}get pendingDataErrors(){var e,t;return this.getCachedPendingErrors(this.pendingNewDataMap,this.columns,(e=(t=this.inputTable)===null||t===void 0?void 0:t.keyColumns.length)!==null&&e!==void 0?e:0)}get pendingDataMap(){return this.pendingNewDataMap}set pendingDataMap(e){e!==this.pendingNewDataMap&&(e.forEach((t,r)=>{if(!Re.isValidIndex(r))throw new Error("Invalid rowIndex ".concat(r));var{data:i}=t;i.forEach((a,o)=>{if(!Re.isValidIndex(o))throw new Error("Invalid columnIndex ".concat(o))})}),this.pendingNewDataMap=e,this.pendingNewRowCount=Math.max(this.pendingNewRowCount,this.maxPendingDataRow),this.formattedStringData=[],this.dispatchEvent(new Le(me.EVENT.PENDING_DATA_UPDATED)))}get pendingRowCount(){return this.pendingNewRowCount}set pendingRowCount(e){e!==this.pendingNewRowCount&&(this.pendingNewRowCount=Math.max(0,e,this.maxPendingDataRow),this.dispatchEvent(new Le(me.EVENT.UPDATED)))}get maxPendingDataRow(){return this.pendingNewDataMap.size>0?Math.max(...this.pendingNewDataMap.keys())+1:0}get columnCount(){return this.columns.length}get floatingBottomRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop?0:(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get floatingTopRowCount(){var e,t,r;return this.totals!=null&&this.totals.showOnTop&&(e=(t=this.totals)===null||t===void 0||(r=t.operationOrder)===null||r===void 0?void 0:r.length)!==null&&e!==void 0?e:0}get isChartBuilderAvailable(){return!0}get isTotalsAvailable(){return this.table.getTotalsTable!=null}get isEditable(){return!this.isSaveInProgress&&this.inputTable!=null}cacheFormattedValue(e,t,r){this.formattedStringData[e]==null&&(this.formattedStringData[e]=[]),this.formattedStringData[e][t]=r}cachePendingValue(e,t,r){this.pendingStringData[e]==null&&(this.pendingStringData[e]=[]),this.pendingStringData[e][t]=r}clearPendingValue(e,t){var r=this.pendingStringData[e];r!=null&&delete r[t]}textValueForCell(e,t){var r,i;if(((r=this.pendingStringData[e])===null||r===void 0?void 0:r[t])!==void 0)return this.pendingStringData[e][t];if(((i=this.formattedStringData[e])===null||i===void 0?void 0:i[t])===void 0){var a,o=this.valueForCell(e,t);if(o===null)return null;if(o===void 0)return;var l=(a=this.totalsColumn(e,t))!==null&&a!==void 0?a:this.columns[e],s=this.getCachedCustomColumnFormatFlag(this.formatter,l.name,l.type),u;if(!s){var d=this.formatForCell(e,t);(d==null?void 0:d.formatString)!=null&&(u=d)}var c=this.displayString(o,l.type,l.name,u);this.cacheFormattedValue(e,t,c)}return this.formattedStringData[e][t]}textForCell(e,t){var r,i=this.textValueForCell(e,t);if(i==null&&this.isKeyColumn(e)){var a=this.pendingRow(t);if(a!=null&&this.pendingDataMap.has(a))return"*"}if(M.isTextType((r=this.columns[e])===null||r===void 0?void 0:r.type)){if(i===null)return"null";if(i==="")return"empty"}return i??""}truncationCharForCell(e){var t=this.columns[e],{type:r}=t;if(M.isNumberType(r)&&this.formatter.truncateNumbersWithPound)return"#"}colorForCell(e,t,r){var i=this.dataForCell(e,t);if(i){var{format:a,value:o}=i;if(o==null||o==="")return _(r.nullStringColor),r.nullStringColor;if(a&&a.color)return a.color;if(this.isPendingRow(t))return _(r.pendingTextColor),r.pendingTextColor;if(o!=null){var l,s=(l=this.totalsColumn(e,t))!==null&&l!==void 0?l:this.columns[e];if(M.isDateType(s.type)||s.name==="Date")return _(r.dateColor),r.dateColor;if(M.isNumberType(s.type))return o>0?(_(r.positiveNumberColor),r.positiveNumberColor):o<0?(_(r.negativeNumberColor),r.negativeNumberColor):(_(r.zeroNumberColor),r.zeroNumberColor)}}else if(this.isPendingRow(t)&&this.isKeyColumn(e))return _(r.errorTextColor),r.errorTextColor;return r.textColor}backgroundColorForCell(e,t){var r,i;return(r=(i=this.formatForCell(e,t))===null||i===void 0?void 0:i.backgroundColor)!==null&&r!==void 0?r:null}textAlignForCell(e){var t=this.columns[e],{type:r}=t;return M.isNumberType(r)?"right":M.isDateType(r)||t.name==="Date"?"center":"left"}textForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);return ua(r)?r.isNew?"":r.name:r==null?void 0:r.name}colorForColumnHeader(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=this.columnAtDepth(e,t);if(ua(r)){var i;return(i=r.color)!==null&&i!==void 0?i:null}return null}getColumnHeaderGroup(e,t){var r=this.columnAtDepth(e,t);if(ua(r))return r}getColumnHeaderParentGroup(e,t){var r,i;return this.columnHeaderParentMap.get((r=(i=this.columnAtDepth(e,t))===null||i===void 0?void 0:i.name)!==null&&r!==void 0?r:"")}columnAtDepth(e){var t,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(r===0)return this.columns[e];var i=(t=this.columns[e])===null||t===void 0?void 0:t.name,a=this.columnHeaderParentMap.get(i);if(a){for(var o=a.depth;o<r;){if(a=this.columnHeaderParentMap.get(a.name),!a)return;o=a.depth}if(a.depth===r)return a}}textForRowFooter(e){var t=this.totalsRow(e);return t!=null&&this.totals?this.totals.operationOrder[t]:""}get initialMovedColumns(){var e;return this.getMemoizedInitialMovedColumns((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get initialMovedRows(){return Gw}get initialColumnHeaderGroups(){var e;return this.getMemoizedInitialColumnHeaderGroups((e=this.layoutHints)!==null&&e!==void 0?e:void 0)}get columnMap(){return this.getMemoizedColumnMap(this.table.columns)}get columnHeaderMaxDepth(){var e;return(e=this._columnHeaderMaxDepth)!==null&&e!==void 0?e:1}set columnHeaderMaxDepth(e){this._columnHeaderMaxDepth=e}get columnHeaderGroupMap(){return this._columnHeaderGroupMap}get columnHeaderGroups(){return this._columnHeaderGroups}set columnHeaderGroups(e){if(e!==this._columnHeaderGroups){var{groups:t,maxDepth:r,parentMap:i,groupMap:a}=Re.parseColumnHeaderGroups(this,e??this.initialColumnHeaderGroups);this._columnHeaderGroups=t,this.columnHeaderMaxDepth=r,this.columnHeaderParentMap=i,this._columnHeaderGroupMap=a}}get groupedColumns(){return[]}row(e){var t,r,i,a,o,l,s,u,d,c,h=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,v=(a=(o=this.totals)===null||o===void 0?void 0:o.showOnTop)!==null&&a!==void 0?a:!1,g=this.totalsRow(e);if(g!=null){var f,p,C,w=(f=this.totals)===null||f===void 0?void 0:f.operationOrder[g];return _(w),(p=(C=this.totalsDataMap)===null||C===void 0?void 0:C.get(w))!==null&&p!==void 0?p:null}var b=this.pendingRow(e);if(b!=null){var E;return(E=this.pendingNewDataMap.get(b))!==null&&E!==void 0?E:null}var T=(l=(s=this.viewportData)===null||s===void 0?void 0:s.offset)!==null&&l!==void 0?l:0,S=(v?e-h:e)-T;return(u=(d=this.viewportData)===null||d===void 0||(c=d.rows)===null||c===void 0?void 0:c[S])!==null&&u!==void 0?u:null}totalsColumn(e,t){var r,i,a,o,l=this.totalsRow(t);if(l==null)return null;var s=(r=this.totals)===null||r===void 0?void 0:r.operationOrder[l],u=(i=(a=this.totals)===null||a===void 0?void 0:a.defaultOperation)!==null&&i!==void 0?i:ye.SUM,d=this.columns[e];return(o=this.totalsTable)===null||o===void 0?void 0:o.columns.find(c=>{var h;return c.name==="".concat(d.name,"__").concat(s)||(s===u||((h=this.totals)===null||h===void 0?void 0:h.operationOrder.length)===1)&&c.name===d.name})}totalsRow(e){var t,r,i,a,o,l=(t=(r=this.totals)===null||r===void 0||(i=r.operationOrder)===null||i===void 0?void 0:i.length)!==null&&t!==void 0?t:0,s=(a=(o=this.totals)===null||o===void 0?void 0:o.showOnTop)!==null&&a!==void 0?a:!1,u=s?e:e-this.table.size;return u>=0&&u<l?u:null}pendingRow(e){var t=e-this.floatingTopRowCount-this.table.size;return t>=0&&t<this.pendingNewRowCount?t:null}isTotalsRow(e){return this.totalsRow(e)!=null}isPendingRow(e){return this.pendingRow(e)!=null}dataForCell(e,t){var r;return(r=this.row(t))===null||r===void 0?void 0:r.data.get(e)}formatForCell(e,t){var r;return(r=this.dataForCell(e,t))===null||r===void 0?void 0:r.format}valueForCell(e,t){var r=this.dataForCell(e,t);if(r){var i;return(i=r.value)!==null&&i!==void 0?i:null}}copyViewportData(e){if(e==null){xe.warn("invalid data!");return}this.viewportData=this.extractViewportData(e),this.formattedStringData=[]}copyTotalsData(e){var t,r,i,a=this;if(e==null){xe.warn("invalid data!");return}var{columns:o,rows:l}=e;if(l.length!==1){xe.error("Unexpected number of rows received for totals table, ignoring update");return}for(var s=new Map,u=l[0],d=(t=(r=this.totals)===null||r===void 0?void 0:r.defaultOperation)!==null&&t!==void 0?t:ye.SUM,c=(i=this.totals)===null||i===void 0?void 0:i.operationMap,h=function(){var f,p,C=o[v],[w,b=(f=c==null||(p=c[w])===null||p===void 0?void 0:p[0])!==null&&f!==void 0?f:d]=C.name.split("__");s.has(b)||s.set(b,{data:new Map});var{data:E}=s.get(b),T=a.columns.findIndex(S=>S.name===w);E.set(T,{value:u.get(C),format:u.getFormat(C)})},v=0;v<o.length;v+=1)h();xe.debug2("copyTotalsData",s),this.totalsDataMap=s,this.formattedStringData=[]}getColumnIndexByName(e){return this.getColumnIndicesByNameMap(this.columns).get(e)}extractViewportData(e){for(var t={offset:e.offset,rows:[]},{columns:r}=e,i=0;i<e.rows.length;i+=1){var a=e.rows[i],o=this.extractViewportRow(a,r);t.rows.push(o)}return t}extractViewportRow(e,t){for(var r=new Map,i=0;i<t.length;i+=1){var a=t[i],o=this.getColumnIndexByName(a.name);_(o),r.set(o,{value:e.get(a),format:e.getFormat(a)})}return{data:r}}closeSubscription(){xe.debug2("closeSubscription",this.subscription),this.subscription&&(this.subscription.close(),this.subscription=null),this.setViewport.cancel(),this.applyViewport.cancel()}get filter(){return this.table.filter}set filter(e){this.closeSubscription(),this.table.applyFilter(e),this.applyViewport()}get formatter(){return this.irisFormatter}set formatter(e){this.irisFormatter=e,this.formattedStringData=[],this.dispatchEvent(new Le(me.EVENT.FORMATTER_UPDATED))}displayString(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"",i=arguments.length>3?arguments[3]:void 0;return this.getCachedFormattedString(this.formatter,e,t,r,i)}get sort(){return this.table.sort}set sort(e){this.closeSubscription(),this.table.applySort(e),this.applyViewport()}set totalsConfig(e){if(xe.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Le(me.EVENT.UPDATED));return}this.totalsTablePromise=ot.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{ot.isCanceled(t)||(xe.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Le(me.EVENT.REQUEST_FAILED,{detail:t})))})}}setTotalsTable(e){xe.debug("setTotalsTable",e),this.totalsTable!==null&&(this.listenerCount>0&&this.removeTotalsListeners(this.totalsTable),this.totalsTable.close()),this.totalsTable=e,this.totalsDataMap=null,this.listenerCount>0&&this.totalsTable!=null&&this.addTotalsListeners(this.totalsTable)}applyBufferedViewport(e,t,r){xe.debug2("applyBufferedViewport",e,t,r),this.subscription==null?(xe.debug2("applyBufferedViewport creating new subscription"),this.subscription=this.table.setViewport(e,t,r)):(xe.debug2("applyBufferedViewport using existing subscription"),this.subscription.setViewport(e,t,r))}snapshot(e){var t=arguments,r=this;return pr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:R=>R,o=t.length>3&&t[3]!==void 0?t[3]:!0;if(r.subscription==null)throw new Error("No subscription available");var l=o?B.consolidate(e):e;if(!Re.isValidSnapshotRanges(l))throw new Error("Invalid snapshot ranges ".concat(e));for(var s=new Set,u=[],d=new Set,c=0;c<l.length;c+=1){var h=l[c];_(h.endRow),_(h.startRow);for(var v=h.startRow;v<=h.endRow&&v<r.floatingTopRowCount;v+=1)s.add(v);h.endRow>=r.floatingTopRowCount&&h.startRow<=r.floatingTopRowCount+r.table.size&&u.push(new B(h.startColumn,Math.min(Math.max(0,h.startRow-r.floatingTopRowCount)),h.endColumn,Math.min(Math.max(0,h.endRow-r.floatingTopRowCount),r.table.size-r.floatingTopRowCount)));for(var g=Math.max(h.startRow,r.floatingTopRowCount+r.table.size);g<=h.endRow&&g<r.floatingTopRowCount+r.table.size+r.floatingBottomRowCount;g+=1)d.add(g)}var f=Re.columnsFromRanges(l,r.columns),p=[];i&&p.push(f.map(R=>R.name));for(var C=[...s].sort(),w=function*(){var N=C[b],P=f.map(I=>{var A=r.getColumnIndexByName(I.name);return _(A),a(r.valueForCell(A,N),I)});i&&P.push(r.textForRowFooter(N)),p.push(P)},b=0;b<C.length;b+=1)yield*w();if(u.length>0){var E=r.irisGridUtils.rangeSetFromRanges(u),T=yield r.subscription.snapshot(E,f);p.push(...T.rows.map(R=>f.map(N=>a(R.get(N),N))))}for(var S=[...d].sort(),O=function*(){var N=S[F],P=f.map(I=>{var A=r.getColumnIndexByName(I.name);return _(A),a(r.valueForCell(A,N),I)});i&&P.push(r.textForRowFooter(N)),p.push(P)},F=0;F<S.length;F+=1)yield*O();return p})()}textSnapshot(e){var t=arguments,r=this;return pr(function*(){var i=t.length>1&&t[1]!==void 0?t[1]:!1,a=t.length>2&&t[2]!==void 0?t[2]:l=>"".concat(l);xe.debug2("textSnapshot",e,i);var o=yield r.snapshot(e,i,a,!1);return o.map(l=>l.join(" ")).join(`
14
+ `)})()}valuesTable(e){var t=this;return pr(function*(){var r=null;try{return r=yield t.table.copy(),r.applyFilter([]),r.applySort([]),r.selectDistinct([e])}finally{r!=null&&r.close()}})()}isColumnMovable(e,t){if(e<0||e>=this.columnCount)return!1;if(t>0)return!0;var r=this.columns[e].name;return this.frontColumns.includes(r)||this.backColumns.includes(r)||this.frozenColumns.includes(r)||!r?!1:!this.isKeyColumn(e)}isKeyColumn(e){var t,r;return e<((t=(r=this.inputTable)===null||r===void 0?void 0:r.keyColumns.length)!==null&&t!==void 0?t:0)}isRowMovable(){return!1}isEditableRange(e){if(this.inputTable==null||!B.isBounded(e))return!1;var t=this.isPendingRow(e.startRow)&&this.isPendingRow(e.endRow);return!(!(t||this.inputTable.keyColumns.length!==0&&e.startColumn>=this.inputTable.keyColumns.length&&e.endColumn>=this.inputTable.keyColumns.length)||e.startRow<this.floatingTopRowCount||e.startRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount||e.endRow>=this.floatingTopRowCount+this.table.size+this.pendingRowCount)}isDeletableRange(e){return this.inputTable!=null&&e.startRow!=null&&e.endRow!=null&&e.startRow>=this.floatingTopRowCount&&e.startRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount&&e.endRow<this.floatingTopRowCount+this.table.size+this.pendingRowCount}isEditableRanges(e){return e.every(t=>this.isEditableRange(t))}isDeletableRanges(e){return e.every(t=>this.isDeletableRange(t))}getTableAreaRange(){return new B(null,this.floatingTopRowCount,null,this.floatingTopRowCount+this.table.size-1)}getPendingAreaRange(){return new B(null,this.floatingTopRowCount+this.table.size,null,this.floatingTopRowCount+this.table.size+this.pendingNewRowCount-1)}setValueForCell(e,t,r){var i=this;return pr(function*(){return i.setValueForRanges([new B(e,t,e,t)],r)})()}setValueForRanges(e,t){var r=this;return pr(function*(){if(!r.isEditableRanges(e))throw new Error("Uneditable ranges ".concat(e));try{var i=new Set,a=[];B.forEachCell(e,(f,p)=>{var C=r.columns[f];if(i.add(C),a[f]===void 0){var w=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);a[f]=w!=null?r.displayString(w,C.type,C.name):null}r.cachePendingValue(f,p,a[f])});var o=r.getPendingAreaRange(),l=e.map(f=>B.intersection(o,f)).filter(f=>f!=null).map(f=>(_(f),B.offset(f,0,-(r.floatingTopRowCount+r.table.size))));if(l.length>0){var s=new Map(r.pendingNewDataMap);B.forEachCell(l,(f,p)=>{s.has(p)||s.set(p,{data:new Map});var C=r.columns[f],w=s.get(p);_(w);var{data:b}=w,E=new Map(b),T=r.tableUtils.makeValue(C.type,t,r.formatter.timeZone);T!=null?E.set(f,{value:T}):E.delete(f),E.size>0?s.set(p,ci(ci({},w),{},{data:E})):s.delete(p)}),r.pendingDataMap=s}r.dispatchEvent(new Le(me.EVENT.UPDATED));var u=r.getTableAreaRange(),d=e.map(f=>B.intersection(u,f)).filter(f=>f!=null);if(d.length>0){var c,h=yield r.snapshot(d.map(f=>{var p,C;return new B(null,(p=f==null?void 0:f.startRow)!==null&&p!==void 0?p:null,null,(C=f==null?void 0:f.endRow)!==null&&C!==void 0?C:null)})),v=h.map(f=>{for(var p={},C=0;C<r.columns.length;C+=1)p[r.columns[C].name]=f[C];return i.forEach(w=>{p[w.name]=r.tableUtils.makeValue(w.type,t,r.formatter.timeZone)}),p}),g=yield(c=r.inputTable)===null||c===void 0?void 0:c.addRows(v);xe.debug("setValueForRanges(",e,",",t,") set tableRanges",d,"result",g)}B.forEachCell(e,(f,p)=>{var C=a[f];_(C),r.cacheFormattedValue(f,p,C)})}catch(f){xe.error("Unable to set ranges",e,t,f)}finally{B.forEachCell(e,(f,p)=>{r.clearPendingValue(f,p)})}})()}setValues(){var e=arguments,t=this;return pr(function*(){var r=e.length>0&&e[0]!==void 0?e[0]:[];if(xe.debug("setValues(",r,")"),!r.every(v=>{var g,f;return t.isEditableRange(B.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(f=v.row)!==null&&f!==void 0?f:v.y))}))throw new Error("Uneditable ranges ".concat(r));try{var i=new Map(t.pendingNewDataMap);r.forEach(v=>{var g,f,{text:p}=v,C=(g=v.column)!==null&&g!==void 0?g:v.x,w=(f=v.row)!==null&&f!==void 0?f:v.y,b=t.columns[C],E=t.tableUtils.makeValue(b.type,p,t.formatter.timeZone),T=E!=null?t.displayString(E,b.type,b.name):null;t.cachePendingValue(C,w,T);var S=t.pendingRow(w);if(S!=null){i.has(S)||i.set(S,{data:new Map});var O=i.get(S);_(O);var{data:F}=O,R=new Map(F);E!=null?R.set(C,{value:E}):R.delete(C),R.size>0?i.set(S,ci(ci({},O),{},{data:R})):i.delete(S)}}),t.pendingDataMap=i,t.dispatchEvent(new Le(me.EVENT.UPDATED));var a=r.reduce((v,g)=>{var f,p,C=(f=g.row)!==null&&f!==void 0?f:g.y;return v.has(C)||v.set(C,[]),(p=v.get(C))===null||p===void 0||p.push(g),v},new Map),o=B.consolidate(r.map(v=>{var g,f;return B.makeCell((g=v.column)!==null&&g!==void 0?g:v.x,(f=v.row)!==null&&f!==void 0?f:v.y)})),l=t.getTableAreaRange(),s=o.map(v=>B.intersection(l,v)).filter(v=>v!=null);if(s.length>0){var u,d=yield t.snapshot(s.map(v=>(_(v),new B(null,v.startRow,null,v.endRow)))),c=d.map((v,g)=>{for(var f=null,p=g,C=0;C<s.length;C+=1){var w=s[C];_(w);var b=B.rowCount([w]);if(p<b){_(w.startRow),f=w.startRow+p;break}p-=b}for(var E={},T=0;T<t.columns.length;T+=1)E[t.columns[T].name]=v[T];_(f);var S=a.get(f);return S!=null&&S.forEach(O=>{var F,R=t.columns[(F=O.column)!==null&&F!==void 0?F:O.x];E[R.name]=t.tableUtils.makeValue(R.type,O.text,t.formatter.timeZone)}),E});xe.info("setValues setting tableRanges",s);var h=yield(u=t.inputTable)===null||u===void 0?void 0:u.addRows(c);xe.info("setValues set tableRanges",s,"SUCCESS",h)}r.forEach(v=>{var g,f,{text:p}=v,C=(g=v.column)!==null&&g!==void 0?g:v.x,w=(f=v.row)!==null&&f!==void 0?f:v.y,b=t.columns[C],E=t.tableUtils.makeValue(b.type,p,t.formatter.timeZone),T=E!=null?t.displayString(E,b.type,b.name):null;t.cacheFormattedValue(C,w,T)})}finally{r.forEach(v=>{t.clearPendingValue(v.column,v.row)})}})()}commitPending(){var e=this;return pr(function*(){if(e.pendingNewDataMap.size<=0)throw new Error("No pending changes to commit");try{var t,r,i;e.isSaveInProgress=!0;var a=[];e.pendingNewDataMap.forEach(l=>{var s={};l.data.forEach((u,d)=>{var{value:c}=u,h=e.columns[d];s[h.name]=c}),a.push(s)});var o=yield(t=e.inputTable)===null||t===void 0?void 0:t.addRows(a);xe.debug("commitPending()",e.pendingNewDataMap,"result",o),e.pendingNewDataMap=new Map,e.pendingNewRowCount=Math.max(0,((r=(i=e.viewport)===null||i===void 0?void 0:i.bottom)!==null&&r!==void 0?r:0)-e.table.size),e.formattedStringData=[],e.dispatchEvent(new Le(me.EVENT.PENDING_DATA_UPDATED))}finally{e.isSaveInProgress=!1}})()}editValueForCell(e,t){return this.textValueForCell(e,t)}delete(e){var t=this;return pr(function*(){if(!t.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));_(t.inputTable);var{keyColumns:r}=t.inputTable;if(r.length===0)throw new Error("No key columns to allow deletion");var i=t.getPendingAreaRange(),a=e.map(p=>B.intersection(i,p)).filter(p=>p!=null).map(p=>(_(p),B.offset(p,0,-(t.floatingTopRowCount+t.table.size))));if(a.length>0){for(var o=new Map(t.pendingNewDataMap),l=0;l<a.length;l+=1){var s=a[l];_(s.startRow),_(s.endRow);for(var u=s.startRow;u<=s.endRow;u+=1)o.delete(u)}t.pendingNewDataMap=o,t.formattedStringData=[],t.dispatchEvent(new Le(me.EVENT.PENDING_DATA_UPDATED)),t.dispatchEvent(new Le(me.EVENT.UPDATED))}var d=t.getTableAreaRange(),c=e.map(p=>B.intersection(d,p)).filter(p=>p!=null);if(!(c.length<=0)){var[h,v]=yield Promise.all([t.snapshot(c.map(p=>(_(p),new B(0,p.startRow,r.length-1,p.endRow)))),t.table.copy()]),g=h.map(p=>{for(var C=[],w=0;w<r.length;w+=1){var b=r[w],E=p[w],T=t.tableUtils.makeFilterRawValue(b.type,E),S=b.filter().eq(T);C.push(S)}return C.reduce((O,F)=>{var R;return(R=O==null?void 0:O.and(F))!==null&&R!==void 0?R:F})}),f=g.reduce((p,C)=>{var w;return(w=p==null?void 0:p.or(C))!==null&&w!==void 0?w:C});v.applyFilter([f]),v.close()}})()}isValidForCell(e,t,r){try{var i=this.columns[e];return this.tableUtils.makeValue(i.type,r,this.formatter.timeZone),!0}catch{return!1}}}we(un,"ROW_BUFFER_PAGES",1);function Kl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Ca(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Kl(a,r,i,o,l,"next",s)}function l(s){Kl(a,r,i,o,l,"throw",s)}o(void 0)})}}function _r(n,e,t){return e=Ww(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Ww(n){var e=zw(n,"string");return typeof e=="symbol"?e:String(e)}function zw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var Cr=Fe.module("IrisGridTableModel");class jw extends un{constructor(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Gr(e),i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e,t,r,i),_r(this,"userFrozenColumns",void 0),_r(this,"customColumnList",void 0),_r(this,"formatColumnList",void 0),_r(this,"getMemoizedFrontColumns",je(a=>a??[])),_r(this,"getMemoizedBackColumns",je(a=>a??[])),_r(this,"getMemoizedFrozenColumns",je((a,o)=>{var l;return(l=o??a)!==null&&l!==void 0?l:[]})),_r(this,"getCachedFilterableColumnSet",je(a=>new Set(a.map((o,l)=>l)))),this.customColumnList=[],this.formatColumnList=[]}get isExportAvailable(){return this.table.freeze!=null}get isColumnStatisticsAvailable(){return this.table.getColumnStatistics!=null}get isValuesTableAvailable(){return this.table.selectDistinct!=null&&this.table.copy!=null}get isRollupAvailable(){return this.table.rollup!=null}get isSelectDistinctAvailable(){return this.table.selectDistinct!=null}get isCustomColumnsAvailable(){return this.table.applyCustomColumns!=null}get isFormatColumnsAvailable(){return this.table.applyCustomColumns!=null}get frontColumns(){var e;return this.getMemoizedFrontColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frontColumns)}get backColumns(){var e;return this.getMemoizedBackColumns((e=this.layoutHints)===null||e===void 0?void 0:e.backColumns)}get frozenColumns(){var e;return this.getMemoizedFrozenColumns((e=this.layoutHints)===null||e===void 0?void 0:e.frozenColumns,this.userFrozenColumns)}get layoutHints(){return this.table.layoutHints}get floatingLeftColumnCount(){return this.frozenColumns.length}get description(){return this.table.description}get customColumns(){return this.customColumnList}set customColumns(e){if(Cr.debug2("set customColumns",e,this.customColumnList,e===this.customColumnList),this.customColumnList.length===0&&e.length===0){Cr.debug("Ignore empty initial customColumns"),this.customColumnList=e;return}if(this.customColumnList===e){Cr.debug("Ignore same customColumns");return}this.closeSubscription(),this.customColumnList=e,this.table.applyCustomColumns([...e,...this.formatColumns]),this.applyViewport()}get formatColumns(){return this.formatColumnList}set formatColumns(e){if(Cr.debug2("set formatColumns",e,this.formatColumnList,e===this.formatColumnList),this.formatColumnList.length===0&&e.length===0){Cr.debug("Ignore empty initial formatColumns"),this.formatColumnList=e;return}if(this.formatColumnList===e){Cr.debug("Ignore same formatColumns");return}this.closeSubscription(),this.formatColumnList=e,this.table.applyCustomColumns([...this.customColumns,...e]),this.applyViewport()}updateFrozenColumns(e){this.userFrozenColumns=e,this.dispatchEvent(new Le(me.EVENT.TABLE_CHANGED,{detail:this.table}))}set totalsConfig(e){if(Cr.debug("set totalsConfig",e),e!==this.totals){if(this.totals=e,this.formattedStringData=[],this.totalsTablePromise!=null&&this.totalsTablePromise.cancel(),this.setTotalsTable(null),e==null){this.dispatchEvent(new Le(me.EVENT.UPDATED));return}this.totalsTablePromise=ot.makeCancelable(this.table.getTotalsTable(e),t=>t.close()),this.totalsTablePromise.then(t=>{this.totalsTablePromise=null,this.setTotalsTable(t)}).catch(t=>{ot.isCanceled(t)||(Cr.error("Unable to set next totalsTable",t),this.totalsTablePromise=null,this.dispatchEvent(new Le(me.EVENT.REQUEST_FAILED,{detail:t})))})}}get isFilterRequired(){return this.table.isUncoalesced}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns).has(e)}export(){var e=this;return Ca(function*(){return e.table.freeze()})()}columnStatistics(e){return this.table.getColumnStatistics(e)}isColumnMovable(e){var t=this.columns[e].name;return this.frontColumns.includes(t)||this.backColumns.includes(t)||this.frozenColumns.includes(t)?!1:!this.isKeyColumn(e)}isColumnFrozen(e){return this.frozenColumns.includes(this.columns[e].name)}delete(e){var t=()=>super.pendingDataMap,r=a=>super.pendingDataMap=a,i=this;return Ca(function*(){var a;if(!i.isDeletableRanges(e))throw new Error("Undeletable ranges ".concat(e));_(i.inputTable);var{keyColumns:o}=i.inputTable;if(o.length===0)throw new Error("No key columns to allow deletion");var l=i.getPendingAreaRange(),s=e.map(b=>B.intersection(l,b)).filter(b=>b!=null).map(b=>(_(b),B.offset(b,0,-(i.floatingTopRowCount+i.table.size))));if(s.length>0){for(var u=new Map(t()),d=0;d<s.length;d+=1){var c=s[d];_(c.startRow),_(c.endRow);for(var h=c.startRow;h<=c.endRow;h+=1)u.delete(h)}r(u),i.formattedStringData=[],i.dispatchEvent(new Le(me.EVENT.PENDING_DATA_UPDATED)),i.dispatchEvent(new Le(me.EVENT.UPDATED))}var v=i.getTableAreaRange(),g=e.map(b=>B.intersection(v,b)).filter(b=>b!=null);if(!(g.length<=0)){var[f,p]=yield Promise.all([i.snapshot(g.map(b=>(_(b),new B(0,b.startRow,o.length-1,b.endRow)))),i.table.copy()]),C=f.map(b=>{for(var E=[],T=0;T<o.length;T+=1){var S=o[T],O=b[T],F=i.tableUtils.makeFilterRawValue(S.type,O),R=S.filter().eq(F);E.push(R)}return E.reduce((N,P)=>{var I;return(I=N==null?void 0:N.and(P))!==null&&I!==void 0?I:P})}),w=C.reduce((b,E)=>{var T;return(T=b==null?void 0:b.or(E))!==null&&T!==void 0?T:E});p.applyFilter([w]),yield(a=i.inputTable)===null||a===void 0?void 0:a.deleteTable(p),p.close()}})()}seekRow(e,t,r,i,a,o,l){var s=this;return Ca(function*(){return s.table.seekRow(e,t,r,i,a,o,l)})()}get isSeekRowAvailable(){return this.table.seekRow!=null}}const Kw=jw;function Yl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Yw(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Yl(a,r,i,o,l,"next",s)}function l(s){Yl(a,r,i,o,l,"throw",s)}o(void 0)})}}function ql(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,r)}return t}function Xl(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ql(Object(t),!0).forEach(function(r){Ys(n,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):ql(Object(t)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(t,r))})}return n}function Ys(n,e,t){return e=qw(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function qw(n){var e=Xw(n,"string");return typeof e=="symbol"?e:String(e)}function Xw(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}class Qw extends un{constructor(){super(...arguments),Ys(this,"getCachedFilterableColumnSet",je((e,t)=>new Set(((t==null?void 0:t.length)>0?t:e).map(r=>e.findIndex(i=>r.name===i.name)))))}applyBufferedViewport(e,t,r){this.table.setViewport(e,t,r)}textForCell(e,t){var r=this.columns[e],i=this.row(t);if(i!=null&&r!=null&&!i.hasChildren&&r.constituentType!=null){var a=this.valueForCell(e,t);return this.displayString(a,r.constituentType,r.name)}return super.textForCell(e,t)}extractViewportRow(e,t){var{isExpanded:r,hasChildren:i,depth:a}=e;return Xl(Xl({},super.extractViewportRow(e,t)),{},{isExpanded:r,hasChildren:i,depth:a})}snapshot(e,t,r){var i=this;return Yw(function*(){var a;_(i.viewport),_(i.viewportData);var{columns:o}=i.viewport,l=[];t!=null&&t&&l.push(o.map(p=>p.name));for(var s=new B(0,(a=i.viewportData)===null||a===void 0?void 0:a.offset,o.length,i.viewportData.offset+i.viewportData.rows.length),u=0;u<e.length;u+=1){var d=B.intersection(s,e[u]);_(d),_(d.startRow),_(d.endRow);for(var c=d.startRow;c<=d.endRow;c+=1){var h=[],v=i.viewportData.rows[c-i.viewportData.offset];_(d.startColumn),_(d.endColumn);for(var g=d.startColumn;g<=d.endColumn;g+=1){var f;_(r),h.push(r((f=v.data.get(g))===null||f===void 0?void 0:f.value,i.columns[g]))}l.push(h)}}return l})()}get groupedColumns(){return this.table.groupedColumns}get hasExpandableRows(){return!0}get isExpandAllAvailable(){return this.table.expandAll!==void 0}get isChartBuilderAvailable(){return!1}get isSelectDistinctAvailable(){return!1}get isReversible(){return!1}isFilterable(e){return this.getCachedFilterableColumnSet(this.columns,this.groupedColumns).has(e)}isColumnMovable(e){return e>=this.groupedColumns.length}isRowExpandable(e){var t,r=this.row(e);return(t=r==null?void 0:r.hasChildren)!==null&&t!==void 0?t:!1}isRowExpanded(e){var t,r=this.row(e);return(t=r==null?void 0:r.isExpanded)!==null&&t!==void 0?t:!1}setRowExpanded(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.isExpandAllAvailable?this.table.setExpanded(e,t,r):this.table.setExpanded(e,t)}expandAll(){this.table.expandAll&&this.table.expandAll()}collapseAll(){this.table.collapseAll&&this.table.collapseAll()}depthForRow(e){var t,r=this.row(e);return((t=r==null?void 0:r.depth)!==null&&t!==void 0?t:1)-1}updateFrozenColumns(e){if(e.length>0)throw new Error("Cannot freeze columns on a tree table")}}const Zw=Qw;function Ql(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function Jw(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Ql(a,r,i,o,l,"next",s)}function l(s){Ql(a,r,i,o,l,"throw",s)}o(void 0)})}}function ve(n,e,t){return e=eb(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function eb(n){var e=tb(n,"string");return typeof e=="symbol"?e:String(e)}function tb(n,e){if(typeof n!="object"||n===null)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var r=t.call(n,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var wr=Fe.module("IrisGridProxyModel");function wa(n,e,t,r){return M.isTreeTable(e)?new Zw(n,e,t):new Kw(n,e,t,r)}class rb extends me{constructor(e,t){var r,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Gr(e),a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;super(e),r=this,ve(this,"dh",void 0),ve(this,"originalModel",void 0),ve(this,"model",void 0),ve(this,"modelPromise",void 0),ve(this,"rollup",void 0),ve(this,"selectDistinct",void 0),ve(this,"textForCell",function(){return r.model.textForCell(...arguments)}),ve(this,"truncationCharForCell",function(){return r.model.truncationCharForCell(...arguments)}),ve(this,"textAlignForCell",function(){return r.model.textAlignForCell(...arguments)}),ve(this,"colorForCell",function(){return r.model.colorForCell(...arguments)}),ve(this,"backgroundColorForCell",function(){return r.model.backgroundColorForCell(...arguments)}),ve(this,"textForColumnHeader",function(){return r.model.textForColumnHeader(...arguments)}),ve(this,"colorForColumnHeader",function(){return r.model.colorForColumnHeader(...arguments)}),ve(this,"textForRowHeader",function(){return r.model.textForRowHeader(...arguments)}),ve(this,"textForRowFooter",function(){return r.model.textForRowFooter(...arguments)}),ve(this,"isRowMovable",function(){return r.model.isRowMovable(...arguments)}),ve(this,"isColumnMovable",function(){return r.model.isColumnMovable(...arguments)}),ve(this,"isRowExpandable",function(){return De(r.model)?r.model.isRowExpandable(...arguments):!1}),ve(this,"isRowExpanded",function(){return De(r.model)?r.model.isRowExpanded(...arguments):!1}),ve(this,"setRowExpanded",function(){if(De(r.model))return r.model.setRowExpanded(...arguments);throw Error("Function setRowExpanded does not exist on IrisGridTableModel")}),ve(this,"expandAll",()=>{if(De(this.model))return this.model.expandAll();throw Error("Function expandAll does not exist on IrisGridTableModel")}),ve(this,"collapseAll",()=>{if(De(this.model))return this.model.collapseAll();throw Error("Function collapseAll does not exist on IrisGridTableModel")}),ve(this,"depthForRow",function(){return De(r.model)?r.model.depthForRow(...arguments):0}),ve(this,"getColumnHeaderGroup",function(){return r.model.getColumnHeaderGroup(...arguments)}),ve(this,"getColumnHeaderParentGroup",function(){return r.model.getColumnHeaderParentGroup(...arguments)}),ve(this,"formatForCell",function(){return r.model.formatForCell(...arguments)}),ve(this,"valueForCell",function(){return r.model.valueForCell(...arguments)}),ve(this,"displayString",function(){return r.model.displayString(...arguments)}),ve(this,"isEditableRange",function(){return ke(r.model)?r.model.isEditableRange(...arguments):!1}),ve(this,"isFilterable",function(){return r.model.isFilterable(...arguments)}),ve(this,"setViewport",(l,s,u)=>this.model.setViewport(l,s,u)),ve(this,"snapshot",function(){return r.model.snapshot(...arguments)}),ve(this,"textSnapshot",function(){return r.model.textSnapshot(...arguments)}),ve(this,"valuesTable",function(){return r.model.valuesTable(...arguments)}),ve(this,"editValueForCell",function(){return ke(r.model)?r.model.editValueForCell(...arguments):""}),ve(this,"setValueForCell",function(){return ke(r.model)?r.model.setValueForCell(...arguments):Promise.reject(new Error("Model is not editable"))}),ve(this,"setValueForRanges",function(){return ke(r.model)?r.model.setValueForRanges(...arguments):Promise.reject(new Error("Model is not editable"))}),ve(this,"setValues",function(){return ke(r.model)?r.model.setValues(...arguments):Promise.resolve()}),ve(this,"isValidForCell",function(){return ke(r.model)?r.model.isValidForCell(...arguments):!1}),ve(this,"delete",function(){return r.model.delete(...arguments)}),ve(this,"commitPending",function(){return r.model.commitPending(...arguments)}),this.handleModelEvent=this.handleModelEvent.bind(this);var o=wa(e,t,i,a);this.dh=e,this.originalModel=o,this.model=o,this.modelPromise=null,this.rollup=null,this.selectDistinct=[]}close(){this.originalModel.close(),this.model!==this.originalModel&&this.model.close(),this.modelPromise!=null&&this.modelPromise.cancel()}handleModelEvent(e){wr.debug2("handleModelEvent",e);var{detail:t,type:r}=e;this.dispatchEvent(new Le(r,{detail:t}))}setModel(e){wr.debug("setModel",e);var t=this.model;t!==this.originalModel&&t.close(),this.model=e,this.listenerCount>0&&this.addListeners(e),this.dispatchEvent(new Le(me.EVENT.COLUMNS_CHANGED,{detail:e.columns})),hi(e)&&this.dispatchEvent(new Le(me.EVENT.TABLE_CHANGED,{detail:e.table}))}setNextModel(e){wr.debug2("setNextModel"),this.modelPromise&&this.modelPromise.cancel(),this.listenerCount>0&&this.removeListeners(this.model),this.modelPromise=ot.makeCancelable(e,t=>t.close()),this.modelPromise.then(t=>{this.modelPromise=null,this.setModel(t)}).catch(t=>{if(ot.isCanceled(t)){wr.debug2("setNextModel cancelled");return}wr.error("Unable to set next model",t),this.modelPromise=null,this.dispatchEvent(new Le(me.EVENT.REQUEST_FAILED,{detail:t}))})}startListening(){super.startListening(),this.addListeners(this.model)}stopListening(){super.stopListening(),this.removeListeners(this.model)}addListeners(e){for(var t=Object.keys(me.EVENT),r=0;r<t.length;r+=1)e.addEventListener(t[r],this.handleModelEvent)}removeListeners(e){for(var t=Object.keys(me.EVENT),r=0;r<t.length;r+=1)e.removeEventListener(t[r],this.handleModelEvent)}get rowCount(){return this.model.rowCount}get columnCount(){return this.model.columnCount}get floatingTopRowCount(){return this.model.floatingTopRowCount}get floatingBottomRowCount(){return this.model.floatingBottomRowCount}get floatingLeftColumnCount(){return this.model.floatingLeftColumnCount}get floatingRightColumnCount(){return this.model.floatingRightColumnCount}isColumnFrozen(e){return this.model.isColumnFrozen(e)}get hasExpandableRows(){return De(this.model)?this.model.hasExpandableRows:!1}get isExpandAllAvailable(){if(De(this.model)){var e;return(e=this.model.isExpandAllAvailable)!==null&&e!==void 0?e:!1}return!1}get isExportAvailable(){return this.model.isExportAvailable}get isColumnStatisticsAvailable(){return this.model.isColumnStatisticsAvailable}get isValuesTableAvailable(){return this.model.isValuesTableAvailable}get isCustomColumnsAvailable(){return this.model.isCustomColumnsAvailable&&!(this.isSelectDistinctAvailable&&this.selectDistinctColumns.length>0)}get isFormatColumnsAvailable(){return this.model.isFormatColumnsAvailable}get isChartBuilderAvailable(){return this.model.isChartBuilderAvailable}get isRollupAvailable(){return(this.originalModel.isRollupAvailable||this.rollup!=null)&&this.selectDistinct.length===0}get isSelectDistinctAvailable(){return(this.originalModel.isSelectDistinctAvailable||this.selectDistinct.length>0)&&this.rollup==null}get isTotalsAvailable(){return this.model.isTotalsAvailable}get isReversible(){return this.model.isReversible}get columns(){return this.model.columns}get initialMovedColumns(){return this.model.initialMovedColumns}get initialMovedRows(){return this.model.initialMovedRows}get layoutHints(){return this.model.layoutHints}get frontColumns(){return this.model.frontColumns}get backColumns(){return this.model.backColumns}get frozenColumns(){return this.model.frozenColumns}get columnHeaderGroups(){return this.model.columnHeaderGroups}set columnHeaderGroups(e){this.model.columnHeaderGroups=e}get initialColumnHeaderGroups(){return this.model.initialColumnHeaderGroups}get columnHeaderGroupMap(){return this.model.columnHeaderGroupMap}get columnHeaderMaxDepth(){return this.model.columnHeaderMaxDepth}updateFrozenColumns(e){return this.model.updateFrozenColumns(e)}get originalColumns(){return this.originalModel.columns}get groupedColumns(){return this.model.groupedColumns}get description(){return this.model.description}get filter(){return this.model.filter}set filter(e){this.model.filter=e}get formatter(){return this.model.formatter}set formatter(e){this.model.formatter=e}get sort(){return this.model.sort}set sort(e){this.model.sort=e}get customColumns(){return this.model.customColumns}set customColumns(e){this.model.customColumns=e}get formatColumns(){return this.model.formatColumns}set formatColumns(e){this.model.formatColumns=e}get rollupConfig(){return this.rollup}set rollupConfig(e){if(wr.debug("set rollupConfig",e),!this.isRollupAvailable)throw new Error("Rollup Rows are not available");if(!Vt(e,this.rollup)){this.rollup=e;var t=Promise.resolve(this.originalModel);hi(this.originalModel)&&e!=null&&(t=this.originalModel.table.rollup(e).then(r=>wa(this.dh,r,this.formatter))),this.setNextModel(t)}}get selectDistinctColumns(){return this.selectDistinct}set selectDistinctColumns(e){if(wr.debug("set selectDistinctColumns",e),!this.isSelectDistinctAvailable)throw new Error("Select distinct is not available");if(e===this.selectDistinctColumns||e.length===0&&this.selectDistinctColumns.length===0){wr.debug("Ignore same selectDistinctColumns",e);return}this.selectDistinct=e;var t=e.map(i=>this.originalColumns.find(a=>a.name===i)).filter(i=>i!=null),r=Promise.resolve(this.originalModel);hi(this.originalModel)&&t.length>0&&(r=this.originalModel.table.selectDistinct(t).then(i=>wa(this.dh,i,this.formatter))),this.setNextModel(r)}get table(){if(hi(this.model))return this.model.table}get totalsConfig(){return this.model.totalsConfig}set totalsConfig(e){this.model.totalsConfig=e}get isFilterRequired(){return this.model.isFilterRequired}get isEditable(){return ke(this.model)&&this.model.isEditable}export(){if(M.isTreeTable(this.model))throw new Error("TreeTable has no 'export' property");return this.model.export()}columnStatistics(e){if(M.isTreeTable(this.model))throw new Error("TreeTable has no 'columnStatistics' function");return this.model.columnStatistics(e)}get pendingDataMap(){return this.model.pendingDataMap}set pendingDataMap(e){this.model.pendingDataMap=e}get pendingRowCount(){return this.model.pendingRowCount}set pendingRowCount(e){this.model.pendingRowCount=e}get pendingDataErrors(){return this.model.pendingDataErrors}getColumnIndexByName(e){return this.model.getColumnIndexByName(e)}seekRow(e,t,r,i,a,o,l){var s=this;return Jw(function*(){return s.model.seekRow(e,t,r,i,a,o,l)})()}get isSeekRowAvailable(){return this.model.isSeekRowAvailable}}const nb=rb;function Zl(n,e,t,r,i,a,o){try{var l=n[a](o),s=l.value}catch(u){t(u);return}l.done?e(s):Promise.resolve(s).then(r,i)}function ib(n){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=n.apply(e,t);function o(s){Zl(a,r,i,o,l,"next",s)}function l(s){Zl(a,r,i,o,l,"throw",s)}o(void 0)})}}class ab{static makeModel(e,t){var r=arguments;return ib(function*(){var i=r.length>2&&r[2]!==void 0?r[2]:new Gr(e),a=null;return!M.isTreeTable(t)&&t.hasInputTable&&(a=yield t.inputTable()),new nb(e,t,i,a)})()}}const ob=ab;var{dh:lb}=globalThis;const Dn=lb;Fe.setLogLevel(parseInt("2",10));const Pn=Fe.module("EmbedGrid.App"),sb=[Dn.VariableType.TABLE,Dn.VariableType.TREETABLE,Dn.VariableType.HIERARCHICALTABLE,Dn.VariableType.PANDAS];async function ub(n,e){Pn.info(`Fetching table ${e}...`);const t=await Od(n,e);if(!sb.includes(t.type))throw new Error(`Unsupported type '${t.type}' for variable named '${e}'`);return await n.getObject(t)}function gb(){const n=yd(),[e,t]=y.useState(),[r,i]=y.useState(),[a,o]=y.useState(),[l,s]=y.useState(),[u,d]=y.useState(!0),c=y.useMemo(()=>new URLSearchParams(window.location.search),[]),h=c.get("canCopy")!=null,v=c.get("canDownloadCsv")!=null;y.useEffect(function(){async function p(){try{const C=c.get("name");if(C==null)throw new Error("No name param provided");Pn.debug("Loading table",C,"...");const w=await ub(n,C);Pn.debug("Creating model...");const b=await ob.makeModel(Dn,w);t(b),Pn.debug("Table successfully loaded!")}catch(C){Pn.error("Unable to load table",C),i(`${C}`)}d(!1)}p()},[n,c]),y.useEffect(function(){function p(C){const{command:w,value:b}=C.data;switch(w){case"filter":{const T=b.map(({name:S,value:O})=>{const F=e==null?void 0:e.columns.find(R=>R.name===S);if(F==null)throw new Error(`Could not find column named ${S}`);return{name:S,value:O,type:M.getNormalizedType(F.type)}});o(T);break}case"sort":{const T=b.map(({name:S,direction:O})=>{const F=e==null?void 0:e.columns.find(R=>R.name===S);if(F==null)throw new Error(`Could not find column named ${S}`);return O==="DESC"?F.sort().desc():F.sort().asc()});s(T);break}}}return window.addEventListener("message",p),()=>{window.removeEventListener("message",p)}},[e]);const g=e!=null;return Qn.jsxs("div",{className:"App",children:[g&&Qn.jsx(Lw,{canCopy:h,canDownloadCsv:v,model:e,inputFilters:a,sorts:l}),!g&&Qn.jsx(vd,{isLoaded:g,isLoading:u,errorMessage:r??null}),Qn.jsx(Rd,{})]})}export{gb as default};
15
+ //# sourceMappingURL=App-c8f2f479.js.map