@deephaven/code-studio 1.5.2-beta.0 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/assets/{AppRoot-BfMfH3EV.js → AppRoot-DnN_zkOP.js} +6 -6
- package/build/assets/AppRoot-DnN_zkOP.js.map +1 -0
- package/build/assets/{Chart-CQgUgsaT.js → Chart-jUTtSgHR.js} +2 -2
- package/build/assets/{Chart-CQgUgsaT.js.map → Chart-jUTtSgHR.js.map} +1 -1
- package/build/assets/{ControlType-zxZRraDH.js → ControlType-BjxAIldT.js} +6 -6
- package/build/assets/ControlType-BjxAIldT.js.map +1 -0
- package/build/assets/{FontBootstrap-DCKdTlHg.js → FontBootstrap-Chn0Co64.js} +2 -2
- package/build/assets/{FontBootstrap-DCKdTlHg.js.map → FontBootstrap-Chn0Co64.js.map} +1 -1
- package/build/assets/{FormatterUtils-BzuuA8Lv.js → FormatterUtils-CB8U65Fw.js} +2 -2
- package/build/assets/{FormatterUtils-BzuuA8Lv.js.map → FormatterUtils-CB8U65Fw.js.map} +1 -1
- package/build/assets/{Grid-CEdvsOfc.js → Grid-e4StjlLs.js} +2 -2
- package/build/assets/{Grid-CEdvsOfc.js.map → Grid-e4StjlLs.js.map} +1 -1
- package/build/assets/{GridTokenMouseHandler-BXLuDTjC.js → GridTokenMouseHandler-D0Pqy2Vo.js} +2 -2
- package/build/assets/{GridTokenMouseHandler-BXLuDTjC.js.map → GridTokenMouseHandler-D0Pqy2Vo.js.map} +1 -1
- package/build/assets/{IrisGrid-Bp8vjeBD.js → IrisGrid-DmsHkaci.js} +2 -2
- package/build/assets/{IrisGrid-Bp8vjeBD.js.map → IrisGrid-DmsHkaci.js.map} +1 -1
- package/build/assets/IrisGridModel-Bzvq9WcQ.js +3 -0
- package/build/assets/IrisGridModel-Bzvq9WcQ.js.map +1 -0
- package/build/assets/{IrisGridShortcuts-DsVAtLom.js → IrisGridShortcuts-C5MgzGK1.js} +2 -2
- package/build/assets/{IrisGridShortcuts-DsVAtLom.js.map → IrisGridShortcuts-C5MgzGK1.js.map} +1 -1
- package/build/assets/{IrisGridThemeProvider-BD5e8V0Q.js → IrisGridThemeProvider-vaa6FhP7.js} +2 -2
- package/build/assets/{IrisGridThemeProvider-BD5e8V0Q.js.map → IrisGridThemeProvider-vaa6FhP7.js.map} +1 -1
- package/build/assets/{LocalWorkspaceStorage-C84FY6et.js → LocalWorkspaceStorage-CGH1Yjce.js} +3 -3
- package/build/assets/{LocalWorkspaceStorage-C84FY6et.js.map → LocalWorkspaceStorage-CGH1Yjce.js.map} +1 -1
- package/build/assets/{MarkdownEditor-CUAkHDTV.js → MarkdownEditor-DfCediWn.js} +2 -2
- package/build/assets/{MarkdownEditor-CUAkHDTV.js.map → MarkdownEditor-DfCediWn.js.map} +1 -1
- package/build/assets/{MarkdownNotebook-FTgZCTs_.js → MarkdownNotebook-eDIke6mp.js} +2 -2
- package/build/assets/{MarkdownNotebook-FTgZCTs_.js.map → MarkdownNotebook-eDIke6mp.js.map} +1 -1
- package/build/assets/{MissingPartitionError-j5iMj8lH.js → MissingPartitionError-oMrSgve_.js} +2 -2
- package/build/assets/{MissingPartitionError-j5iMj8lH.js.map → MissingPartitionError-oMrSgve_.js.map} +1 -1
- package/build/assets/Plot-DGmd4eMG.js +2 -0
- package/build/assets/{Plot-DHddn7l8.js.map → Plot-DGmd4eMG.js.map} +1 -1
- package/build/assets/{Plotly-DAZKWM9a.js → Plotly-C6pfEomr.js} +2 -2
- package/build/assets/{Plotly-DAZKWM9a.js.map → Plotly-C6pfEomr.js.map} +1 -1
- package/build/assets/{StyleGuideRoot-wDOQImoE.js → StyleGuideRoot-DhvCRjxL.js} +2 -2
- package/build/assets/{StyleGuideRoot-wDOQImoE.js.map → StyleGuideRoot-DhvCRjxL.js.map} +1 -1
- package/build/assets/{index-DT4uErik.js → index-B7tTNjnG.js} +5 -5
- package/build/assets/index-B7tTNjnG.js.map +1 -0
- package/build/assets/{index-DUbqqzIg.js → index-C0nHnUAm.js} +2 -2
- package/build/assets/index-C0nHnUAm.js.map +1 -0
- package/build/assets/{index-Dfbd_y31.js → index-D7WLNVvn.js} +3 -3
- package/build/assets/index-D7WLNVvn.js.map +1 -0
- package/build/assets/plotly-D0iv-uU5.js +7 -0
- package/build/assets/{plotly-BHGA-0mO.js.map → plotly-D0iv-uU5.js.map} +1 -1
- package/build/index.html +2 -2
- package/package.json +31 -31
- package/build/assets/AppRoot-BfMfH3EV.js.map +0 -1
- package/build/assets/ControlType-zxZRraDH.js.map +0 -1
- package/build/assets/IrisGridModel-CzGeMogQ.js +0 -3
- package/build/assets/IrisGridModel-CzGeMogQ.js.map +0 -1
- package/build/assets/Plot-DHddn7l8.js +0 -2
- package/build/assets/index-DT4uErik.js.map +0 -1
- package/build/assets/index-DUbqqzIg.js.map +0 -1
- package/build/assets/index-Dfbd_y31.js.map +0 -1
- package/build/assets/plotly-BHGA-0mO.js +0 -7
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{F,bn as m}from"./ControlType-
|
|
2
|
-
//# sourceMappingURL=FormatterUtils-
|
|
1
|
+
import{F,bn as m}from"./ControlType-BjxAIldT.js";function v(o,r){var e=t(r),a=u(r),{defaultDecimalFormatOptions:n,defaultIntegerFormatOptions:l,truncateNumbersWithPound:i,showEmptyStrings:d,showNullStrings:T}=r??{};return new F(o,e,a,n,l,i,d,T)}function t(o){if(o&&o.formatter){var{formatter:r}=o;return r}}function u(o){return{timeZone:o==null?void 0:o.timeZone,defaultDateTimeFormatString:o==null?void 0:o.defaultDateTimeFormat,showTimeZone:o==null?void 0:o.showTimeZone,showTSeparator:o==null?void 0:o.showTSeparator}}function f(o,r,e){var a=o.getColumnFormat(e,r);return a!=null&&(a.type===m.TYPE_CONTEXT_PRESET||a.type===m.TYPE_CONTEXT_CUSTOM)}const p={createFormatterFromSettings:v,getColumnFormats:t,getDateTimeFormatterOptions:u,isCustomColumnFormatDefined:f};export{p as F,u as a,v as c,t as g,f as i};
|
|
2
|
+
//# sourceMappingURL=FormatterUtils-CB8U65Fw.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormatterUtils-
|
|
1
|
+
{"version":3,"file":"FormatterUtils-CB8U65Fw.js","sources":["../../../jsapi-utils/dist/FormatterUtils.js"],"sourcesContent":["import Formatter from \"./Formatter.js\";\nimport { TableColumnFormatter } from \"./formatters/index.js\";\n/**\n * Instantiate a `Formatter` from the given settings.\n * @param dh The `dh` object\n * @param settings Optional settings to use\n * @returns A new `Formatter` instance\n */\nexport function createFormatterFromSettings(dh, settings) {\n var columnRules = getColumnFormats(settings);\n var dateTimeOptions = getDateTimeFormatterOptions(settings);\n var {\n defaultDecimalFormatOptions,\n defaultIntegerFormatOptions,\n truncateNumbersWithPound,\n showEmptyStrings,\n showNullStrings\n } = settings !== null && settings !== void 0 ? settings : {};\n return new Formatter(dh, columnRules, dateTimeOptions, defaultDecimalFormatOptions, defaultIntegerFormatOptions, truncateNumbersWithPound, showEmptyStrings, showNullStrings);\n}\nexport function getColumnFormats(settings) {\n if (settings && settings.formatter) {\n var {\n formatter\n } = settings;\n return formatter;\n }\n return undefined;\n}\nexport function getDateTimeFormatterOptions(settings) {\n return {\n timeZone: settings === null || settings === void 0 ? void 0 : settings.timeZone,\n defaultDateTimeFormatString: settings === null || settings === void 0 ? void 0 : settings.defaultDateTimeFormat,\n showTimeZone: settings === null || settings === void 0 ? void 0 : settings.showTimeZone,\n showTSeparator: settings === null || settings === void 0 ? void 0 : settings.showTSeparator\n };\n}\n\n/**\n * Check if the formatter has a custom format defined for the column name and type\n * @param formatter Formatter to check\n * @param columnName Column name\n * @param columnType Column type\n * @returns True, if a custom format is defined\n */\nexport function isCustomColumnFormatDefined(formatter, columnName, columnType) {\n var columnFormat = formatter.getColumnFormat(columnType, columnName);\n return columnFormat != null && (columnFormat.type === TableColumnFormatter.TYPE_CONTEXT_PRESET || columnFormat.type === TableColumnFormatter.TYPE_CONTEXT_CUSTOM);\n}\nexport default {\n createFormatterFromSettings,\n getColumnFormats,\n getDateTimeFormatterOptions,\n isCustomColumnFormatDefined\n};\n//# sourceMappingURL=FormatterUtils.js.map"],"names":["createFormatterFromSettings","dh","settings","columnRules","getColumnFormats","dateTimeOptions","getDateTimeFormatterOptions","defaultDecimalFormatOptions","defaultIntegerFormatOptions","truncateNumbersWithPound","showEmptyStrings","showNullStrings","Formatter","formatter","isCustomColumnFormatDefined","columnName","columnType","columnFormat","TableColumnFormatter","FormatterUtils"],"mappings":"iDAQO,SAASA,EAA4BC,EAAIC,EAAU,CACxD,IAAIC,EAAcC,EAAiBF,CAAQ,EACvCG,EAAkBC,EAA4BJ,CAAQ,EACtD,CACF,4BAAAK,EACA,4BAAAC,EACA,yBAAAC,EACA,iBAAAC,EACA,gBAAAC,CACJ,EAAMT,GAAsD,GAC1D,OAAO,IAAIU,EAAUX,EAAIE,EAAaE,EAAiBE,EAA6BC,EAA6BC,EAA0BC,EAAkBC,CAAe,CAC9K,CACO,SAASP,EAAiBF,EAAU,CACzC,GAAIA,GAAYA,EAAS,UAAW,CAClC,GAAI,CACF,UAAAW,CACD,EAAGX,EACJ,OAAOW,CACR,CAEH,CACO,SAASP,EAA4BJ,EAAU,CACpD,MAAO,CACL,SAAUA,GAAa,KAA8B,OAASA,EAAS,SACvE,4BAA6BA,GAAa,KAA8B,OAASA,EAAS,sBAC1F,aAAcA,GAAa,KAA8B,OAASA,EAAS,aAC3E,eAAgBA,GAAa,KAA8B,OAASA,EAAS,cACjF,CACA,CASO,SAASY,EAA4BD,EAAWE,EAAYC,EAAY,CAC7E,IAAIC,EAAeJ,EAAU,gBAAgBG,EAAYD,CAAU,EACnE,OAAOE,GAAgB,OAASA,EAAa,OAASC,EAAqB,qBAAuBD,EAAa,OAASC,EAAqB,oBAC/I,CACA,MAAeC,EAAA,CACb,4BAAAnB,EACA,iBAAAI,EACA,4BAAAE,EACA,4BAAAQ,CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{au as W,r as H,I as J,L as ne,a1 as V,U as be,ac as se}from"./vendor-BFFhZ99Y.js";import{w as Re,G as Q,x as Me,o as q,n as Ee,s as Oe,y as De,q as Pe,r as xe,p as Te,z as he,l as ke}from"./GridTokenMouseHandler-BXLuDTjC.js";import{d as E,G as D,e as ye,g as j,f as He}from"./IrisGridModel-CzGeMogQ.js";import{e as Z,bA as G}from"./index-Dfbd_y31.js";import{ar as A}from"./ControlType-zxZRraDH.js";function de(s,e){var t=new Set([...Object.keys(s),...Object.keys(e)]),r=[];return t.forEach(i=>{s[i]!==e[i]&&r.push(i)}),r}function fe(s){if(s==null)throw new Re("Expected 'val' to be defined, but received ".concat(s))}function Ke(s,e,t){return(e=Be(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Be(s){var e=Le(s,"string");return typeof e=="symbol"?e:e+""}function Le(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class ie extends Error{constructor(){super(...arguments),Ke(this,"isPasteError",!0)}}function ve(s,e){var t=Object.keys(s);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(s);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(s,i).enumerable})),t.push.apply(t,r)}return t}function B(s){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ve(Object(t),!0).forEach(function(r){z(s,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(s,Object.getOwnPropertyDescriptors(t)):ve(Object(t)).forEach(function(r){Object.defineProperty(s,r,Object.getOwnPropertyDescriptor(t,r))})}return s}function z(s,e,t){return(e=Ie(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Ie(s){var e=Ve(s,"string");return typeof e=="symbol"?e:e+""}function Ve(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}var ce=5,Fe=1e3/60,_=10;function U(s,e,t,r){var i,{modelColumns:a,movedColumns:n,allColumnXs:l,columnCount:o,allColumnWidths:u,userColumnWidths:h,calculatedColumnWidths:d,floatingLeftWidth:c,maxX:p}=t;if(e==null||s==null||s>o||s<0)return null;var w=(i=a.get(s))!==null&&i!==void 0?i:E.getModelIndex(s,n),v=r.getColumnHeaderGroup(w,e),m=v!=null,g,f,S;if(v!=null){var C,b,O,[M,y]=v.getVisibleRange(n);g=(C=l.get(M))!==null&&C!==void 0?C:c,f=((b=l.get(y))!==null&&b!==void 0?b:p)+((O=u.get(y))!==null&&O!==void 0?O:0),S=[M,y]}else{var P,x,I,R=l.get(s);if(R==null)return null;g=R,f=g+((P=(x=(I=u.get(s))!==null&&I!==void 0?I:h.get(w))!==null&&x!==void 0?x:d.get(w))!==null&&P!==void 0?P:0),S=[s,s]}return{visibleIndex:s,modelIndex:w,left:g,right:f,width:f-g,isColumnGroup:m,range:S,depth:e}}class je extends Q{constructor(){super(...arguments),z(this,"cursor",null),z(this,"draggingOffset",void 0),z(this,"initialOffset",void 0),z(this,"initialGridPoint",void 0),z(this,"scrollingInterval",void 0),z(this,"scrollingDirection",void 0),z(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:n,userColumnWidths:l,calculatedColumnWidths:o,movedColumns:u,allColumnWidths:h}=r,d=i,c=n;if(t==="left")for(c-=_;c<0;){var p;d-=1;var w=E.getModelIndex(i-1,u),v=(p=l.get(w))!==null&&p!==void 0?p:o.get(w);v===void 0?c=0:c+=v,d<0&&(c=0,d=0)}else{c+=_;for(var m=h.get(i);m!==void 0&&c>m;){var g;d+=1,c-=m;var f=E.getModelIndex(i+1,u);m=(g=l.get(f))!==null&&g!==void 0?g:o.get(f),d>a&&(c=0,d=a)}}var{mouseX:S,mouseY:C}=e.state;r==null||S==null||C==null||(this.moveDraggingColumn(S,e,t==="left"?-_:_),e.setState({left:d,leftOffset:c}),(t==="left"&&d===0&&n===0||t==="right"&&d===a)&&this.clearScrollInterval())}},Fe))}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:n}=e,{metrics:l}=t;if(!l)throw new Error("Metrics not set");var o=U(a,n,l,r);if(a==null||o==null||n==null||n>0&&!o.isColumnGroup)return!1;var{rowHeaderWidth:u}=l;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,o.modelIndex!=null&&n!=null&&r.isColumnMovable(o.modelIndex,n)&&(this.draggingOffset=i-o.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:n}=this.initialGridPoint,{model:l}=t.props,{draggingColumn:o}=this,{metrics:u}=t;if(!u)throw new Error("Metrics not set");if(!o&&Math.abs(this.initialGridPoint.x-i)<ce&&Math.abs(this.initialGridPoint.y-a)<ce)return!1;if(o==null){var h=U(this.initialGridPoint.column,n,u,l);if(!h||n==null||!l.isColumnMovable(h.modelIndex)||n>0&&!h.isColumnGroup||h.range[0]==null)return!1;o={range:h.range,depth:n,left:h.left,width:h.width};var d=U(o.range[0],0,u,l),c=U(o.range[1],0,u,l);if(!d||!c)return!1;this.draggingColumn=o,t.setState({draggingColumn:o,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)){var{metrics:a}=t;Z(a,"Metrics not set");var{gridX:n}=a;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=B(B({},this.draggingColumn),{},{left:e-this.draggingOffset-n}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:l}=this.draggingColumn,{model:o}=t.props,{movedColumns:u}=t.state,{floatingLeftWidth:h,width:d,columnHeaderMaxDepth:c,allColumnXs:p}=a,w=r<0,v=U(this.draggingColumn.range[0],l,a,o);if(v){var m=e-this.draggingOffset-n,g=m+v.width;this.draggingColumn=B(B({},this.draggingColumn),{},{left:m}),t.setState({draggingColumn:this.draggingColumn});var f=U(E.getColumnAtX(W(w?m:g,h,d)+n,a,!0),l,a,o),S=o.getColumnHeaderParentGroup(v.modelIndex,v.depth);if(f){if(S!==void 0){var C=S.getVisibleRange(u);if(f.visibleIndex<C[0]){var b,O=this.moveColumn(v,C[0],u);this.draggingOffset=e-((b=p.get(C[0]))!==null&&b!==void 0?b:0),this.draggingColumn=B(B({},this.draggingColumn),{},{left:e-this.draggingOffset-n}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:O});return}if(f.visibleIndex>C[1]){var M,y=this.moveColumn(v,C[1]-(v.range[1]-v.range[0]),u),{right:P=0}=(M=U(C[1],0,a,o))!==null&&M!==void 0?M:{};this.draggingOffset=e-(P-v.width),this.draggingColumn=B(B({},this.draggingColumn),{},{left:e-this.draggingOffset-n}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:y});return}}if(!o.isColumnMovable(f.modelIndex)){var x=f.visibleIndex;if(w)for(x+=1;x<v.visibleIndex&&!o.isColumnMovable(E.getModelIndex(x,u));)x+=1;else for(x-=1;x>v.visibleIndex&&!o.isColumnMovable(E.getModelIndex(x,u));)x-=1;if(x!==v.visibleIndex){w||(x-=v.range[1]-v.range[0]);var I=this.moveColumn(v,x,u);t.setState({movedColumns:I,draggingColumn:this.draggingColumn})}var R=U(x,0,a,o);if(w){var k;this.draggingOffset=e-((k=R==null?void 0:R.left)!==null&&k!==void 0?k:0)}else{var N;this.draggingOffset=e-(((N=R==null?void 0:R.right)!==null&&N!==void 0?N:0)-v.width)}this.draggingColumn=B(B({},this.draggingColumn),{},{left:e-this.draggingOffset-n}),t.setState({draggingColumn:this.draggingColumn});return}if(m<=h?this.setScrollInterval(t,"left"):g>d?this.setScrollInterval(t,"right"):this.clearScrollInterval(),f.visibleIndex!==v.visibleIndex&&!(w&&v.visibleIndex<f.visibleIndex||!w&&v.visibleIndex>f.visibleIndex)){for(var X=f.left+f.width*.5,te=o.getColumnHeaderParentGroup(v.modelIndex,v.depth),Y,re=((i=te==null?void 0:te.depth)!==null&&i!==void 0?i:c)-1;re>=0&&Y===void 0;)Y=o.getColumnHeaderGroup(f.modelIndex,re),re-=1;var $;w&&m<X&&(!Y||f.visibleIndex===Y.getVisibleRange(u)[0])&&($=this.moveColumn(v,f.range[0],u)),!w&&g>X&&(!Y||f.visibleIndex===Y.getVisibleRange(u)[1])&&($=this.moveColumn(v,f.range[1]-(v.range[1]-v.range[0]),u)),$&&(this.draggingColumn=B(B({},this.draggingColumn),{},{left:m}),t.setState({movedColumns:$,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?E.moveRange(e.range,t,r):E.moveItem(e.visibleIndex,t,r),a=t-e.range[0],n=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=B(B({},this.draggingColumn),{},{range:n})),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}}function ge(s,e,t){return(e=Ge(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Ge(s){var e=Ue(s,"string");return typeof e=="symbol"?e:e+""}function Ue(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class ae extends Q{constructor(){super(...arguments),ge(this,"dragOffset",void 0),ge(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 n=Math.round(t),l=0;return{left:n,leftOffset:l}}var o=Math.floor(t),u=t-o,h=i.allColumnWidths.get(o);if(h==null){var d=e.getMetricState();h=a.getVisibleColumnWidth(o,d)}var c=h*u;return{left:o,leftOffset:c}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:n}=t;if(!n)throw new Error("metrics not set");var{x:l,y:o}=e,{barLeft:u,barWidth:h,height:d,hasHorizontalBar:c}=n;return c&&i>0&&o>=d-a&&o<d&&l>u&&l<u+h}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:n,handleWidth:l,lastLeft:o,barLeft:u,columnCount:h,scrollableContentWidth:d,scrollableViewportWidth:c}=i,p=a-u,w=W((p-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(n-l),0,1);if(h===1)return{left:0,leftOffset:w*(d-c)};var v=w*o;return ae.getLeftWithOffsetFromRawLeft(t,v)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:i}=e,{handleWidth:a,barLeft:n,scrollX:l}=r;if(!this.isInScrollBar(e,t))return!1;var o=i-n;if(o>=l&&o<=l+a)this.dragOffset=o-l,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:u,leftOffset:h}=this.getLeftWithOffset(e,t);t.setViewState({left:u,leftOffset:h,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)}}function me(s,e,t){return(e=ze(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function ze(s){var e=Ne(s,"string");return typeof e=="symbol"?e:e+""}function Ne(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class Ae extends Q{constructor(){super(...arguments),me(this,"cursor","move"),me(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:n}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{columnHeaderHeight:o,rowHeaderWidth:u,allRowYs:h}=l;if(i<=u&&n!==null&&r.isRowMovable(n)){var d=G(h,n);this.draggingOffset=a-d-o,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:n}=t.state;if(a==null||n==null)return!1;if(i==null){var{row:l}=t.getGridPointFromXY(a,n);if(l!=null&&!r.isRowMovable(l)||(i=l,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:o}=t;if(!o)throw new Error("metrics not set");var{top:u,lastTop:h,bottom:d,bottomVisible:c,rowCount:p,columnHeaderHeight:w,allRowHeights:v,allRowYs:m,height:g}=o,f=w;if(u<i){var S=i-1;f=G(m,S)+G(v,S)*.5+w}var C=g;if(i<d){var b=i+1;C=G(m,b)+G(v,b)*.5+w}var{movedRows:O}=t.state;n<f&&i>0&&r.isRowMovable(i-1)?(O=E.moveItem(i,i-1,O),i-=1):C<n&&i<p-1&&r.isRowMovable(i+1)&&(O=E.moveItem(i,i+1,O),i+=1),t.setState({movedRows:O,draggingRow:i});var M=w+G(v,u)*.5,y=w+G(m,c)+G(v,c)*.5;return n<M&&u>0?t.setState({top:u-1}):n>y&&u<h&&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}}function K(s,e,t){return(e=We(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function We(s){var e=Ye(s,"string");return typeof e=="symbol"?e:e+""}function Ye(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class oe extends Me{constructor(){super(...arguments),K(this,"hiddenCursor","s-resize"),K(this,"defaultCursor","row-resize"),K(this,"pointProperty","y"),K(this,"userSizesProperty","userRowHeights"),K(this,"visibleOffsetProperty","visibleRowYs"),K(this,"visibleSizesProperty","visibleRowHeights"),K(this,"marginProperty","columnHeaderHeight"),K(this,"calculatedSizesProperty","calculatedRowHeights"),K(this,"initialSizesProperty","initialRowHeights"),K(this,"modelIndexesProperty","modelRows"),K(this,"firstIndexProperty","firstRow"),K(this,"treePaddingProperty","treePaddingY"),K(this,"getHiddenItems",E.getHiddenRows),K(this,"getNextShownItem",E.getNextShownRow),K(this,"getSeparator",oe.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:n}=e,l=E.getRowSeparatorIndex(a,n,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})}}class qe extends Q{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:n,y:l}=e,{width:o,height:u,hasVerticalBar:h,hasHorizontalBar:d}=a;return i>0&&h&&d&&n>=o-i&&l>=u-i&&n<=o&&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)}}function pe(s,e,t){return(e=Qe(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Qe(s){var e=Xe(s,"string");return typeof e=="symbol"?e:e+""}function Xe(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class le extends Q{constructor(){super(...arguments),pe(this,"dragOffset",void 0),pe(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 n=Math.round(t),l=0;return{top:n,topOffset:l}}var o=Math.floor(t),u=t-o,h=i.allRowHeights.get(o);if(h==null){var d=e.getMetricState();h=a.getVisibleRowHeight(o,d)}var c=h*u;return{top:o,topOffset:c}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:n}=t;if(!n)throw new Error("metrics not set");var{x:l,y:o}=e,{barTop:u,barHeight:h,width:d,hasVerticalBar:c}=n;return c&&i>0&&l>=d-a&&l<d&&o>u&&o<u+h}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:n,handleHeight:l,lastTop:o,barTop:u,rowCount:h,scrollableContentHeight:d,scrollableViewportHeight:c}=i,p=a-u,w=W((p-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(n-l),0,1);if(h===1)return{top:0,topOffset:w*(d-c)};var v=w*o;return le.getTopWithOffsetFromRawTop(t,v)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:i}=e,{handleHeight:a,barTop:n,scrollY:l}=r;if(!this.isInScrollBar(e,t))return!1;var o=i-n;if(o>=l&&o<=l+a)this.dragOffset=o-l,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:u,topOffset:h}=this.getTopWithOffset(e,t);t.setViewState({top:u,topOffset:h,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top: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)}}class Je extends Q{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return q(a)&&r!=null&&i!=null&&a.isEditableRange(D.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}function we(s,e,t){return(e=Ze(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Ze(s){var e=$e(s,"string");return typeof e=="symbol"?e:e+""}function $e(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class ee{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;we(this,"order",void 0),we(this,"cursor",null),this.order=e}onDown(e,t){return!1}onUp(e,t){return!1}}class _e extends ee{onDown(e,t){switch(e.key){case"a":if(E.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 E.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return E.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return E.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(E.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(E.isModifierKeyDown(e)?t.state.cursorColumn:0,E.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:n,rowCount:l}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(E.isModifierKeyDown(e)?t.state.cursorColumn:n-1,E.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?D.SELECTION_DIRECTION.UP:D.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?D.SELECTION_DIRECTION.LEFT:D.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,n=E.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:l,cursorColumn:o,selectionEndColumn:u,selectionEndRow:h}=i.state,d=a?u:o,c=a?h:l;if(n){var{model:p}=i.props,{columnCount:w,rowCount:v}=p,m=n&&a,g=null,f=null;e<0?(g=0,f=c):e>0?(g=w-1,f=c):t<0?(g=d,f=0):t>0&&(g=d,f=v-1),g!=null&&f!=null&&i.moveCursorToPosition(g,f,a,!0,m)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:S}=i.props,{autoSelectRow:C=!1,autoSelectColumn:b=!1}=S;if(C&&e!==0){var{lastLeft:O}=i.metrics,{left:M}=i.state;M=W(M+e,0,O),i.moveCursorToPosition(M,l,a,!1),i.setViewState({left:M})}else if(b&&t!==0){var{lastTop:y}=i.metrics,{top:P}=i.state;P=W(P+t,0,y),i.moveCursorToPosition(P,o,a,!1),i.setViewState({top:P})}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,n=a,l=i;if(n==null)return!1;var o=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:h,topVisible:d,hasHorizontalBar:c}=u.getMetrics(o),p=n-(h-d);p-=c?0:1,p=Math.max(p,0);var w=Math.max(p-(n-d),0);return t.moveCursorToPosition(l,p,r,!1),t.setViewState({top:w}),!0}handlePageDown(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:i,cursorColumn:a}=t.state,n=i,l=a;if(n===null)return!1;var o=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:h,topVisible:d,hasHorizontalBar:c,rowCount:p,lastTop:w}=u.getMetrics(o),v=p-1,m=h-d+n;m+=c?0:1,m=Math.min(m,v);var g=Math.min(w,m-(n-d));return t.moveCursorToPosition(l,m,r,!1),t.setViewState({top:g}),!0}}class et extends ee{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:n,startColumn:l}=i;if(n!=null){var o=t.getModelRow(n);if((l===0||l==null)&&ye(a)&&a.isRowExpandable(o))return t.toggleRowExpanded(n),!0}}}return!1}}class tt extends ee{onDown(e,t){if(E.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!q(r)||!r.isEditableRange(D.makeCell(i,a)))return!1;var n=i,l=a;return n==null||l==null?!1:e.key.length===1?(t.startEditing(n,l,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(n,l),!0):e.key==="Backspace"?(t.startEditing(n,l,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(n,l,""),!0):!1}}function rt(s){for(var e=[],t=s.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),n=[],l=0;l<a.length;l+=1){var o,u,h=a[l];n.push((o=(u=h.textContent)===null||u===void 0?void 0:u.trim())!==null&&o!==void 0?o:"")}e.push(n)}return e}function it(s){var e=[];return s.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 nt(s){var e,t,r=s.querySelector("table");if(r!=null)return rt(r);var i=(e=(t=s.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(i.length>0){var{childNodes:a}=s,n=i.includes(" "),l=i.includes(" ");return n&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
|
|
1
|
+
import{au as W,r as H,I as J,L as ne,a1 as V,U as be,ac as se}from"./vendor-BFFhZ99Y.js";import{w as Re,G as Q,x as Me,o as q,n as Ee,s as Oe,y as De,q as Pe,r as xe,p as Te,z as he,l as ke}from"./GridTokenMouseHandler-D0Pqy2Vo.js";import{d as E,G as D,e as ye,g as j,f as He}from"./IrisGridModel-Bzvq9WcQ.js";import{e as Z,bA as G}from"./index-D7WLNVvn.js";import{ar as A}from"./ControlType-BjxAIldT.js";function de(s,e){var t=new Set([...Object.keys(s),...Object.keys(e)]),r=[];return t.forEach(i=>{s[i]!==e[i]&&r.push(i)}),r}function fe(s){if(s==null)throw new Re("Expected 'val' to be defined, but received ".concat(s))}function Ke(s,e,t){return(e=Be(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Be(s){var e=Le(s,"string");return typeof e=="symbol"?e:e+""}function Le(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class ie extends Error{constructor(){super(...arguments),Ke(this,"isPasteError",!0)}}function ve(s,e){var t=Object.keys(s);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(s);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(s,i).enumerable})),t.push.apply(t,r)}return t}function B(s){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ve(Object(t),!0).forEach(function(r){z(s,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(s,Object.getOwnPropertyDescriptors(t)):ve(Object(t)).forEach(function(r){Object.defineProperty(s,r,Object.getOwnPropertyDescriptor(t,r))})}return s}function z(s,e,t){return(e=Ie(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Ie(s){var e=Ve(s,"string");return typeof e=="symbol"?e:e+""}function Ve(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}var ce=5,Fe=1e3/60,_=10;function U(s,e,t,r){var i,{modelColumns:a,movedColumns:n,allColumnXs:l,columnCount:o,allColumnWidths:u,userColumnWidths:h,calculatedColumnWidths:d,floatingLeftWidth:c,maxX:p}=t;if(e==null||s==null||s>o||s<0)return null;var w=(i=a.get(s))!==null&&i!==void 0?i:E.getModelIndex(s,n),v=r.getColumnHeaderGroup(w,e),m=v!=null,g,f,S;if(v!=null){var C,b,O,[M,y]=v.getVisibleRange(n);g=(C=l.get(M))!==null&&C!==void 0?C:c,f=((b=l.get(y))!==null&&b!==void 0?b:p)+((O=u.get(y))!==null&&O!==void 0?O:0),S=[M,y]}else{var P,x,I,R=l.get(s);if(R==null)return null;g=R,f=g+((P=(x=(I=u.get(s))!==null&&I!==void 0?I:h.get(w))!==null&&x!==void 0?x:d.get(w))!==null&&P!==void 0?P:0),S=[s,s]}return{visibleIndex:s,modelIndex:w,left:g,right:f,width:f-g,isColumnGroup:m,range:S,depth:e}}class je extends Q{constructor(){super(...arguments),z(this,"cursor",null),z(this,"draggingOffset",void 0),z(this,"initialOffset",void 0),z(this,"initialGridPoint",void 0),z(this,"scrollingInterval",void 0),z(this,"scrollingDirection",void 0),z(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:n,userColumnWidths:l,calculatedColumnWidths:o,movedColumns:u,allColumnWidths:h}=r,d=i,c=n;if(t==="left")for(c-=_;c<0;){var p;d-=1;var w=E.getModelIndex(i-1,u),v=(p=l.get(w))!==null&&p!==void 0?p:o.get(w);v===void 0?c=0:c+=v,d<0&&(c=0,d=0)}else{c+=_;for(var m=h.get(i);m!==void 0&&c>m;){var g;d+=1,c-=m;var f=E.getModelIndex(i+1,u);m=(g=l.get(f))!==null&&g!==void 0?g:o.get(f),d>a&&(c=0,d=a)}}var{mouseX:S,mouseY:C}=e.state;r==null||S==null||C==null||(this.moveDraggingColumn(S,e,t==="left"?-_:_),e.setState({left:d,leftOffset:c}),(t==="left"&&d===0&&n===0||t==="right"&&d===a)&&this.clearScrollInterval())}},Fe))}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:n}=e,{metrics:l}=t;if(!l)throw new Error("Metrics not set");var o=U(a,n,l,r);if(a==null||o==null||n==null||n>0&&!o.isColumnGroup)return!1;var{rowHeaderWidth:u}=l;return this.initialGridPoint=e,this.draggingColumn=null,this.cursor=null,o.modelIndex!=null&&n!=null&&r.isColumnMovable(o.modelIndex,n)&&(this.draggingOffset=i-o.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:n}=this.initialGridPoint,{model:l}=t.props,{draggingColumn:o}=this,{metrics:u}=t;if(!u)throw new Error("Metrics not set");if(!o&&Math.abs(this.initialGridPoint.x-i)<ce&&Math.abs(this.initialGridPoint.y-a)<ce)return!1;if(o==null){var h=U(this.initialGridPoint.column,n,u,l);if(!h||n==null||!l.isColumnMovable(h.modelIndex)||n>0&&!h.isColumnGroup||h.range[0]==null)return!1;o={range:h.range,depth:n,left:h.left,width:h.width};var d=U(o.range[0],0,u,l),c=U(o.range[1],0,u,l);if(!d||!c)return!1;this.draggingColumn=o,t.setState({draggingColumn:o,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)){var{metrics:a}=t;Z(a,"Metrics not set");var{gridX:n}=a;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=B(B({},this.draggingColumn),{},{left:e-this.draggingOffset-n}),t.setState({draggingColumn:this.draggingColumn});return}var{depth:l}=this.draggingColumn,{model:o}=t.props,{movedColumns:u}=t.state,{floatingLeftWidth:h,width:d,columnHeaderMaxDepth:c,allColumnXs:p}=a,w=r<0,v=U(this.draggingColumn.range[0],l,a,o);if(v){var m=e-this.draggingOffset-n,g=m+v.width;this.draggingColumn=B(B({},this.draggingColumn),{},{left:m}),t.setState({draggingColumn:this.draggingColumn});var f=U(E.getColumnAtX(W(w?m:g,h,d)+n,a,!0),l,a,o),S=o.getColumnHeaderParentGroup(v.modelIndex,v.depth);if(f){if(S!==void 0){var C=S.getVisibleRange(u);if(f.visibleIndex<C[0]){var b,O=this.moveColumn(v,C[0],u);this.draggingOffset=e-((b=p.get(C[0]))!==null&&b!==void 0?b:0),this.draggingColumn=B(B({},this.draggingColumn),{},{left:e-this.draggingOffset-n}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:O});return}if(f.visibleIndex>C[1]){var M,y=this.moveColumn(v,C[1]-(v.range[1]-v.range[0]),u),{right:P=0}=(M=U(C[1],0,a,o))!==null&&M!==void 0?M:{};this.draggingOffset=e-(P-v.width),this.draggingColumn=B(B({},this.draggingColumn),{},{left:e-this.draggingOffset-n}),this.clearScrollInterval(),t.setState({draggingColumn:this.draggingColumn,movedColumns:y});return}}if(!o.isColumnMovable(f.modelIndex)){var x=f.visibleIndex;if(w)for(x+=1;x<v.visibleIndex&&!o.isColumnMovable(E.getModelIndex(x,u));)x+=1;else for(x-=1;x>v.visibleIndex&&!o.isColumnMovable(E.getModelIndex(x,u));)x-=1;if(x!==v.visibleIndex){w||(x-=v.range[1]-v.range[0]);var I=this.moveColumn(v,x,u);t.setState({movedColumns:I,draggingColumn:this.draggingColumn})}var R=U(x,0,a,o);if(w){var k;this.draggingOffset=e-((k=R==null?void 0:R.left)!==null&&k!==void 0?k:0)}else{var N;this.draggingOffset=e-(((N=R==null?void 0:R.right)!==null&&N!==void 0?N:0)-v.width)}this.draggingColumn=B(B({},this.draggingColumn),{},{left:e-this.draggingOffset-n}),t.setState({draggingColumn:this.draggingColumn});return}if(m<=h?this.setScrollInterval(t,"left"):g>d?this.setScrollInterval(t,"right"):this.clearScrollInterval(),f.visibleIndex!==v.visibleIndex&&!(w&&v.visibleIndex<f.visibleIndex||!w&&v.visibleIndex>f.visibleIndex)){for(var X=f.left+f.width*.5,te=o.getColumnHeaderParentGroup(v.modelIndex,v.depth),Y,re=((i=te==null?void 0:te.depth)!==null&&i!==void 0?i:c)-1;re>=0&&Y===void 0;)Y=o.getColumnHeaderGroup(f.modelIndex,re),re-=1;var $;w&&m<X&&(!Y||f.visibleIndex===Y.getVisibleRange(u)[0])&&($=this.moveColumn(v,f.range[0],u)),!w&&g>X&&(!Y||f.visibleIndex===Y.getVisibleRange(u)[1])&&($=this.moveColumn(v,f.range[1]-(v.range[1]-v.range[0]),u)),$&&(this.draggingColumn=B(B({},this.draggingColumn),{},{left:m}),t.setState({movedColumns:$,draggingColumn:this.draggingColumn}))}}}}}moveColumn(e,t,r){var i=e.isColumnGroup?E.moveRange(e.range,t,r):E.moveItem(e.visibleIndex,t,r),a=t-e.range[0],n=[e.range[0]+a,e.range[1]+a];return this.draggingColumn&&(this.draggingColumn=B(B({},this.draggingColumn),{},{range:n})),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}}function ge(s,e,t){return(e=Ge(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Ge(s){var e=Ue(s,"string");return typeof e=="symbol"?e:e+""}function Ue(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class ae extends Q{constructor(){super(...arguments),ge(this,"dragOffset",void 0),ge(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 n=Math.round(t),l=0;return{left:n,leftOffset:l}}var o=Math.floor(t),u=t-o,h=i.allColumnWidths.get(o);if(h==null){var d=e.getMetricState();h=a.getVisibleColumnWidth(o,d)}var c=h*u;return{left:o,leftOffset:c}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:n}=t;if(!n)throw new Error("metrics not set");var{x:l,y:o}=e,{barLeft:u,barWidth:h,height:d,hasHorizontalBar:c}=n;return c&&i>0&&o>=d-a&&o<d&&l>u&&l<u+h}getLeftWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{x:a}=e,{barWidth:n,handleWidth:l,lastLeft:o,barLeft:u,columnCount:h,scrollableContentWidth:d,scrollableViewportWidth:c}=i,p=a-u,w=W((p-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(n-l),0,1);if(h===1)return{left:0,leftOffset:w*(d-c)};var v=w*o;return ae.getLeftWithOffsetFromRawLeft(t,v)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{x:i}=e,{handleWidth:a,barLeft:n,scrollX:l}=r;if(!this.isInScrollBar(e,t))return!1;var o=i-n;if(o>=l&&o<=l+a)this.dragOffset=o-l,t.setState({isDraggingHorizontalScrollBar:!0});else{this.dragOffset=0;var{left:u,leftOffset:h}=this.getLeftWithOffset(e,t);t.setViewState({left:u,leftOffset:h,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)}}function me(s,e,t){return(e=ze(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function ze(s){var e=Ne(s,"string");return typeof e=="symbol"?e:e+""}function Ne(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class Ae extends Q{constructor(){super(...arguments),me(this,"cursor","move"),me(this,"draggingOffset",void 0)}onDown(e,t){var{model:r}=t.props,{x:i,y:a,row:n}=e,{metrics:l}=t;if(!l)throw new Error("metrics not set");var{columnHeaderHeight:o,rowHeaderWidth:u,allRowYs:h}=l;if(i<=u&&n!==null&&r.isRowMovable(n)){var d=G(h,n);this.draggingOffset=a-d-o,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:n}=t.state;if(a==null||n==null)return!1;if(i==null){var{row:l}=t.getGridPointFromXY(a,n);if(l!=null&&!r.isRowMovable(l)||(i=l,t.setState({draggingRow:i,isDragging:!0}),i==null))return!1}var{metrics:o}=t;if(!o)throw new Error("metrics not set");var{top:u,lastTop:h,bottom:d,bottomVisible:c,rowCount:p,columnHeaderHeight:w,allRowHeights:v,allRowYs:m,height:g}=o,f=w;if(u<i){var S=i-1;f=G(m,S)+G(v,S)*.5+w}var C=g;if(i<d){var b=i+1;C=G(m,b)+G(v,b)*.5+w}var{movedRows:O}=t.state;n<f&&i>0&&r.isRowMovable(i-1)?(O=E.moveItem(i,i-1,O),i-=1):C<n&&i<p-1&&r.isRowMovable(i+1)&&(O=E.moveItem(i,i+1,O),i+=1),t.setState({movedRows:O,draggingRow:i});var M=w+G(v,u)*.5,y=w+G(m,c)+G(v,c)*.5;return n<M&&u>0?t.setState({top:u-1}):n>y&&u<h&&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}}function K(s,e,t){return(e=We(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function We(s){var e=Ye(s,"string");return typeof e=="symbol"?e:e+""}function Ye(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class oe extends Me{constructor(){super(...arguments),K(this,"hiddenCursor","s-resize"),K(this,"defaultCursor","row-resize"),K(this,"pointProperty","y"),K(this,"userSizesProperty","userRowHeights"),K(this,"visibleOffsetProperty","visibleRowYs"),K(this,"visibleSizesProperty","visibleRowHeights"),K(this,"marginProperty","columnHeaderHeight"),K(this,"calculatedSizesProperty","calculatedRowHeights"),K(this,"initialSizesProperty","initialRowHeights"),K(this,"modelIndexesProperty","modelRows"),K(this,"firstIndexProperty","firstRow"),K(this,"treePaddingProperty","treePaddingY"),K(this,"getHiddenItems",E.getHiddenRows),K(this,"getNextShownItem",E.getNextShownRow),K(this,"getSeparator",oe.getRowSeparator)}static getRowSeparator(e,t,r,i){if(!i.allowRowResize)return null;var{x:a,y:n}=e,l=E.getRowSeparatorIndex(a,n,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})}}class qe extends Q{isInCorner(e,t){var r=t.getTheme(),{scrollBarSize:i}=r,{metrics:a}=t;if(!a)throw new Error("metrics not set");var{x:n,y:l}=e,{width:o,height:u,hasVerticalBar:h,hasHorizontalBar:d}=a;return i>0&&h&&d&&n>=o-i&&l>=u-i&&n<=o&&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)}}function pe(s,e,t){return(e=Qe(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Qe(s){var e=Xe(s,"string");return typeof e=="symbol"?e:e+""}function Xe(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class le extends Q{constructor(){super(...arguments),pe(this,"dragOffset",void 0),pe(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 n=Math.round(t),l=0;return{top:n,topOffset:l}}var o=Math.floor(t),u=t-o,h=i.allRowHeights.get(o);if(h==null){var d=e.getMetricState();h=a.getVisibleRowHeight(o,d)}var c=h*u;return{top:o,topOffset:c}}isInScrollBar(e,t){var r=t.getTheme(),{scrollBarSize:i,scrollBarHoverSize:a}=r,{metrics:n}=t;if(!n)throw new Error("metrics not set");var{x:l,y:o}=e,{barTop:u,barHeight:h,width:d,hasVerticalBar:c}=n;return c&&i>0&&l>=d-a&&l<d&&o>u&&o<u+h}getTopWithOffset(e,t){var r,{metrics:i}=t;if(!i)throw new Error("metrics not set");var{y:a}=e,{barHeight:n,handleHeight:l,lastTop:o,barTop:u,rowCount:h,scrollableContentHeight:d,scrollableViewportHeight:c}=i,p=a-u,w=W((p-((r=this.dragOffset)!==null&&r!==void 0?r:0))/(n-l),0,1);if(h===1)return{top:0,topOffset:w*(d-c)};var v=w*o;return le.getTopWithOffsetFromRawTop(t,v)}onDown(e,t){var{metrics:r}=t;if(!r)throw new Error("metrics not set");var{y:i}=e,{handleHeight:a,barTop:n,scrollY:l}=r;if(!this.isInScrollBar(e,t))return!1;var o=i-n;if(o>=l&&o<=l+a)this.dragOffset=o-l,t.setState({isDraggingVerticalScrollBar:!0});else{this.dragOffset=0;var{top:u,topOffset:h}=this.getTopWithOffset(e,t);t.setViewState({top:u,topOffset:h,isDraggingVerticalScrollBar:!0,isDragging:!0})}return!0}onMove(e,t){return this.isInScrollBar(e,t)}onDrag(e,t){if(this.dragOffset!=null){var{top: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)}}class Je extends Q{onDoubleClick(e,t){var{column:r,row:i}=e,{model:a}=t.props;return q(a)&&r!=null&&i!=null&&a.isEditableRange(D.makeCell(r,i))?(t.startEditing(r,i),!0):!1}}function we(s,e,t){return(e=Ze(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function Ze(s){var e=$e(s,"string");return typeof e=="symbol"?e:e+""}function $e(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class ee{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:5e3;we(this,"order",void 0),we(this,"cursor",null),this.order=e}onDown(e,t){return!1}onUp(e,t){return!1}}class _e extends ee{onDown(e,t){switch(e.key){case"a":if(E.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 E.isModifierKeyDown(e)?!1:this.handlePageUp(e,t);case"j":case"J":return E.isModifierKeyDown(e)?!1:this.handlePageDown(e,t);case"h":case"H":return E.isModifierKeyDown(e)?!1:(e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(0,t.state.cursorRow,e.shiftKey),!0);case"l":case"L":{if(E.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(E.isModifierKeyDown(e)?t.state.cursorColumn:0,E.isModifierKeyDown(e)?0:t.state.cursorRow,e.shiftKey,!0,!0),!0;case"End":{var{model:a}=t.props,{columnCount:n,rowCount:l}=a;return e.shiftKey||t.clearSelectedRanges(),t.moveCursorToPosition(E.isModifierKeyDown(e)?t.state.cursorColumn:n-1,E.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?D.SELECTION_DIRECTION.UP:D.SELECTION_DIRECTION.DOWN),!0;break;case"Tab":if(t.state.selectedRanges.length>0)return t.moveCursorInDirection(e.shiftKey?D.SELECTION_DIRECTION.LEFT:D.SELECTION_DIRECTION.RIGHT),!0;break}return!1}handleArrowMove(e,t,r,i){var a=r.shiftKey,n=E.isModifierKeyDown(r);a?i.trimSelectedRanges():i.clearSelectedRanges();var{cursorRow:l,cursorColumn:o,selectionEndColumn:u,selectionEndRow:h}=i.state,d=a?u:o,c=a?h:l;if(n){var{model:p}=i.props,{columnCount:w,rowCount:v}=p,m=n&&a,g=null,f=null;e<0?(g=0,f=c):e>0?(g=w-1,f=c):t<0?(g=d,f=0):t>0&&(g=d,f=v-1),g!=null&&f!=null&&i.moveCursorToPosition(g,f,a,!0,m)}else{if(!i.metrics)throw new Error("grid.metrics are not set");var{theme:S}=i.props,{autoSelectRow:C=!1,autoSelectColumn:b=!1}=S;if(C&&e!==0){var{lastLeft:O}=i.metrics,{left:M}=i.state;M=W(M+e,0,O),i.moveCursorToPosition(M,l,a,!1),i.setViewState({left:M})}else if(b&&t!==0){var{lastTop:y}=i.metrics,{top:P}=i.state;P=W(P+t,0,y),i.moveCursorToPosition(P,o,a,!1),i.setViewState({top:P})}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,n=a,l=i;if(n==null)return!1;var o=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:h,topVisible:d,hasHorizontalBar:c}=u.getMetrics(o),p=n-(h-d);p-=c?0:1,p=Math.max(p,0);var w=Math.max(p-(n-d),0);return t.moveCursorToPosition(l,p,r,!1),t.setViewState({top:w}),!0}handlePageDown(e,t){var r=e.shiftKey;r?t.trimSelectedRanges():t.clearSelectedRanges();var{selectionEndRow:i,cursorColumn:a}=t.state,n=i,l=a;if(n===null)return!1;var o=t.getMetricState(),{metricCalculator:u}=t,{bottomVisible:h,topVisible:d,hasHorizontalBar:c,rowCount:p,lastTop:w}=u.getMetrics(o),v=p-1,m=h-d+n;m+=c?0:1,m=Math.min(m,v);var g=Math.min(w,m-(n-d));return t.moveCursorToPosition(l,m,r,!1),t.setViewState({top:g}),!0}}class et extends ee{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:n,startColumn:l}=i;if(n!=null){var o=t.getModelRow(n);if((l===0||l==null)&&ye(a)&&a.isRowExpandable(o))return t.toggleRowExpanded(n),!0}}}return!1}}class tt extends ee{onDown(e,t){if(E.isModifierKeyDown(e))return!1;var{model:r}=t.props,{cursorColumn:i,cursorRow:a}=t.state;if(i==null||a==null||!q(r)||!r.isEditableRange(D.makeCell(i,a)))return!1;var n=i,l=a;return n==null||l==null?!1:e.key.length===1?(t.startEditing(n,l,!0,[1,1],e.key),!0):e.key==="F2"?(t.startEditing(n,l),!0):e.key==="Backspace"?(t.startEditing(n,l,!0,void 0,""),!0):e.key==="Delete"?(t.setValueForCell(n,l,""),!0):!1}}function rt(s){for(var e=[],t=s.querySelectorAll("tr"),r=0;r<t.length;r+=1){for(var i=t[r],a=i.querySelectorAll("td"),n=[],l=0;l<a.length;l+=1){var o,u,h=a[l];n.push((o=(u=h.textContent)===null||u===void 0?void 0:u.trim())!==null&&o!==void 0?o:"")}e.push(n)}return e}function it(s){var e=[];return s.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 nt(s){var e,t,r=s.querySelector("table");if(r!=null)return rt(r);var i=(e=(t=s.textContent)===null||t===void 0?void 0:t.trim())!==null&&e!==void 0?e:"";if(i.length>0){var{childNodes:a}=s,n=i.includes(" "),l=i.includes(" ");return n&&a.length!==0&&(a.length===1||a.length>1&&(a[0].textContent==null||!a[0].textContent.includes(" ")))?i.split(`
|
|
2
2
|
`).map(o=>o.split(" ")):a.length>1||l?it(s.childNodes):i}return null}class st extends ee{onDown(e,t){switch(e.key){case"v":if(E.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=nt(r);a!=null&&t.pasteValue(a)};return r.addEventListener("input",i),r.focus(),{preventDefault:!1,stopPropagation:!0}}break}return!1}}var at=s=>{switch(s){case"ArrowDown":return j.DOWN;case"ArrowUp":return j.UP;case"ArrowLeft":return j.LEFT;case"ArrowRight":return j.RIGHT;default:return}};function ue(s){var{selectionRange:e=void 0,className:t="",disabled:r=!1,value:i="",isQuickEdit:a=!0,onChange:n=()=>{},onCancel:l=()=>{},onDone:o=()=>{},onContextMenu:u=()=>{},style:h={}}=s,d=H.useRef(null),c=H.useRef(!1),[p]=H.useState(i),[w,v]=H.useState(!1),[m,g]=H.useState(a),[f,S]=H.useState(i);H.useEffect(function(){var{current:k}=d;k!=null&&(k.focus(),e?k.setSelectionRange(e[0],e[1]):k.setSelectionRange(k.value.length,k.value.length))},[e]);var C=H.useCallback(R=>{n(R)},[n]),b=H.useCallback(R=>{var{value:k}=R.target;S(k),v(!0),C(k)},[C,S,v]),O=H.useCallback(()=>{c.current=!0,w&&C(p),v(!1),l()},[p,w,l,C]),M=H.useCallback(()=>{g(!1)},[g]),y=H.useCallback(function(R){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;o(f,{direction:R,fillRange:k})},[o,f]),P=H.useCallback(()=>{c.current||y(null)},[c,y]),x=H.useCallback(R=>{switch(R.stopPropagation(),R.key){case"Escape":R.preventDefault(),O();break;case"Enter":if(R.preventDefault(),E.isModifierKeyDown(R))y(void 0,!0);else if(R.altKey){var k="".concat(f,`
|
|
3
3
|
`);S(k),v(!0),C(k)}else y(R.shiftKey?j.UP:j.DOWN);break;case"Tab":R.preventDefault(),y(R.shiftKey?j.LEFT:j.RIGHT);break;case"ArrowDown":case"ArrowUp":case"ArrowLeft":case"ArrowRight":m&&(R.preventDefault(),y(at(R.key)));break}},[O,y,m,S,v,C,f]),I=H.useCallback(R=>{u(R)},[u]);return J.jsx("textarea",{ref:d,className:ne("grid-cell-input-field",t),value:f,onBlur:P,onChange:b,onKeyDown:x,onContextMenu:I,onClick:M,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:r,style:h})}ue.propTypes={selectionRange:V.arrayOf(V.number),className:V.string,disabled:V.bool,isQuickEdit:V.bool,value:V.string,onChange:V.func,onCancel:V.func,onDone:V.func,onContextMenu:V.func,style:V.shape({})};ue.defaultProps={selectionRange:null,className:"",disabled:!1,value:"",isQuickEdit:!0,onChange:()=>{},onCancel:()=>{},onDone:()=>{},onContextMenu:()=>{},style:{}};var ot=be.createContext({});function Ce(s,e,t,r,i,a,n){try{var l=s[a](n),o=l.value}catch(u){return void t(u)}l.done?e(o):Promise.resolve(o).then(r,i)}function lt(s){return function(){var e=this,t=arguments;return new Promise(function(r,i){var a=s.apply(e,t);function n(o){Ce(a,r,i,n,l,"next",o)}function l(o){Ce(a,r,i,n,l,"throw",o)}n(void 0)})}}function Se(s,e){var t=Object.keys(s);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(s);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(s,i).enumerable})),t.push.apply(t,r)}return t}function F(s){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Se(Object(t),!0).forEach(function(r){T(s,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(s,Object.getOwnPropertyDescriptors(t)):Se(Object(t)).forEach(function(r){Object.defineProperty(s,r,Object.getOwnPropertyDescriptor(t,r))})}return s}function T(s,e,t){return(e=ut(e))in s?Object.defineProperty(s,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):s[e]=t,s}function ut(s){var e=ht(s,"string");return typeof e=="symbol"?e:e+""}function ht(s,e){if(typeof s!="object"||!s)return s;var t=s[Symbol.toPrimitive];if(t!==void 0){var r=t.call(s,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}class L extends H.PureComponent{static getScale(e){var t,r,i,a,n,l=window.devicePixelRatio||1,o=e,u=(t=(r=(i=(a=(n=o.webkitBackingStorePixelRatio)!==null&&n!==void 0?n:o.mozBackingStorePixelRatio)!==null&&a!==void 0?a:o.msBackingStorePixelRatio)!==null&&i!==void 0?i:o.oBackingStorePixelRatio)!==null&&r!==void 0?r:o.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),T(this,"renderer",void 0),T(this,"metricCalculator",void 0),T(this,"canvas",void 0),T(this,"canvasContext",void 0),T(this,"canvasWrapper",void 0),T(this,"resizeObserver",void 0),T(this,"animationFrame",void 0),T(this,"prevMetrics",void 0),T(this,"metrics",void 0),T(this,"renderState",void 0),T(this,"documentCursor",void 0),T(this,"dragTimer",void 0),T(this,"keyHandlers",void 0),T(this,"mouseHandlers",void 0),T(this,"getCachedKeyHandlers",se(o=>[...o,...this.keyHandlers].sort((u,h)=>u.order-h.order))),T(this,"getCachedMouseHandlers",se(o=>[...o,...this.mouseHandlers].sort((u,h)=>u.order-h.order))),this.handleClick=this.handleClick.bind(this),this.handleContextMenu=this.handleContextMenu.bind(this),this.handleEditCellCancel=this.handleEditCellCancel.bind(this),this.handleEditCellChange=this.handleEditCellChange.bind(this),this.handleEditCellCommit=this.handleEditCellCommit.bind(this),this.handleDoubleClick=this.handleDoubleClick.bind(this),this.notifyKeyboardHandlers=this.notifyKeyboardHandlers.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseDrag=this.handleMouseDrag.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleResize=this.handleResize.bind(this),this.handleWheel=this.handleWheel.bind(this),this.getSelectedRanges=this.getSelectedRanges.bind(this);var{isStuckToBottom:t,isStuckToRight:r,metricCalculator:i,movedColumns:a,movedRows:n,renderer:l}=e;this.renderer=l||new Ee,this.metricCalculator=i||new Oe,this.canvas=null,this.canvasContext=null,this.canvasWrapper=be.createRef(),this.resizeObserver=new window.ResizeObserver(this.handleResize),this.animationFrame=null,this.prevMetrics=null,this.metrics=null,this.renderState={},this.documentCursor=null,this.dragTimer=null,this.keyHandlers=[new tt(400),new st(450),new _e(500),new et(900)],this.mouseHandlers=[new oe(100),new De(200),new Ae(300),new je(400),new Je(450),new le(500),new ae(600),new qe(700),new Pe(800),new xe(875),new Te(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:n,cursorRow:null,cursorColumn:null,selectionStartRow:null,selectionStartColumn:null,selectionEndRow:null,selectionEndColumn:null,selectedRanges:A,lastSelectedRanges:A,cursor:null,editingCell:null,isStuckToBottom:t,isStuckToRight:r,updateRevision:0}}componentDidMount(){var e;this.initContext(),(e=this.canvas)===null||e===void 0||e.addEventListener("wheel",this.handleWheel,{passive:!1}),this.canvasWrapper.current!=null&&this.resizeObserver.observe(this.canvasWrapper.current),this.updateCanvas();var{isStuckToBottom:t,isStuckToRight:r}=this.props;t&&this.scrollToBottom(),r&&this.scrollToRight()}componentDidUpdate(e,t){var{renderError:r}=this.state;if(r!=null)throw r;var i=de(e,this.props),a=de(t,this.state);if(!((i.length===0||i.length===1&&i[0]==="children")&&a.length===0)){var{isStickyBottom:n,isStickyRight:l,movedColumns:o,movedRows:u,onMovedColumnsChanged:h,onMoveColumnComplete:d,onMovedRowsChanged:c,onMoveRowComplete:p}=this.props,{isStickyBottom:w,isStickyRight:v,movedColumns:m,movedRows:g}=e,{movedColumns:f,movedRows:S}=t,{draggingColumn:C,draggingRow:b,movedColumns:O,movedRows:M}=this.state,y={};m!==o&&(y.movedColumns=o),g!==u&&(y.movedRows=u),f!==O&&h(O),t.draggingColumn!=null&&C==null&&d(O),S!==M&&c(M),t.draggingRow!=null&&b==null&&p(M),n!==w&&(y.isStuckToBottom=!1),l!==v&&(y.isStuckToRight=!1);var P=F(F({},this.state),y);this.updateMetrics(P),this.requestUpdateCanvas(),this.checkStickyScroll(),this.validateSelection()&&this.checkSelectionChange(t),this.setState(P)}}componentWillUnmount(){var e;this.animationFrame!=null&&cancelAnimationFrame(this.animationFrame),(e=this.canvas)===null||e===void 0||e.removeEventListener("wheel",this.handleWheel),window.removeEventListener("mousemove",this.handleMouseDrag,!0),window.removeEventListener("mouseup",this.handleMouseUp,!0),this.resizeObserver.disconnect(),this.stopDragTimer(),this.removeDocumentCursor()}getTheme(){var{theme:e}=this.props;return L.getTheme(this.context,e)}getGridPointFromEvent(e){fe(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 E.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,n=this.canvas.clientWidth,l=this.canvas.clientHeight,{left:o,top:u,leftOffset:h,topOffset:d,movedColumns:c,movedRows:p,isDraggingHorizontalScrollBar:w,isDraggingVerticalScrollBar:v,draggingColumn:m}=e;return F({left:o,top:u,leftOffset:h,topOffset:d,width:n,height:l,context:a,theme:t,model:r,movedColumns:c,movedRows:p,isDraggingHorizontalScrollBar:w,isDraggingVerticalScrollBar:v,draggingColumn:m},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;ye(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:n,selectedRanges:l}=this.state;if(this.setState({selectedRanges:e,lastSelectedRanges:l}),e.length>0){var o=D.boundedRange(e[0],r,i),u=a,h=n;o.containsCell(n,a)||({row:u,column:h}=o.startCell()),this.setState({selectionStartColumn:o.startColumn,selectionStartRow:o.startRow,selectionEndColumn:o.endColumn,selectionEndRow:o.endRow,cursorColumn:h,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;try{this.updateCanvas()}catch(e){this.setState({renderError:e})}}))}updateCanvas(){this.updateCanvasScale(),this.updateMetrics(),this.updateRenderState();var{canvasContext:e,metrics:t,renderState:r}=this;Z(e),Z(t),Z(r),this.renderer.configureContext(e,r);var{onViewChanged:i}=this.props;i(t),this.drawCanvas()}updateCanvasScale(){var{canvas:e,canvasContext:t,canvasWrapper:r}=this;if(!e)throw new Error("canvas not set");if(!t)throw new Error("canvasContext not set");if(!r.current)throw new Error("canvasWrapper not set");var i=r.current.getBoundingClientRect(),a=Math.floor(i.width),n=Math.floor(i.height);if(!(parseFloat(e.style.width)===a&&parseFloat(e.style.height)===n)){var l=L.getScale(t);e.style.width="".concat(a,"px"),e.style.height="".concat(n,"px"),e.width=a*l,e.height=n*l,t.scale(l,l)}}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:n,height:l,width:o}=this.prevMetrics;if(a!==e||r!==l){var{isStuckToBottom:u}=this.state;u&&this.scrollToBottom()}if(n!==t||i!==o){var{isStuckToRight:h}=this.state;h&&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 n=t[a];if(n.endColumn!=null&&n.endColumn>=r||n.endRow!=null&&n.endRow>=i)return this.setState({selectedRanges:[],lastSelectedRanges:[]}),!1}return!0}clearSelectedRanges(){var{selectedRanges:e}=this.state;this.setState({selectedRanges:A,lastSelectedRanges:e})}trimSelectedRanges(){var{selectedRanges:e}=this.state;e.length>0&&this.setState({selectedRanges:e.slice(e.length-1)})}getSelectedRanges(){var{selectedRanges:e}=this.state;return e}beginSelection(e,t){this.setState({selectionStartColumn:e,selectionStartRow:t,selectionEndColumn:e,selectionEndRow:t,cursorColumn:e,cursorRow:t})}moveSelection(e,t){var 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:n,selectionStartRow:l,selectionStartColumn:o}=a,{theme:u}=this.props,{autoSelectRow:h,autoSelectColumn:d}=u;if(r&&n.length>0){var c=n[n.length-1],p=null,w=null,v=null,m=null;if(i){var g,f,S,C;p=h!==void 0&&h?null:Math.min(e??0,(g=c.startColumn)!==null&&g!==void 0?g:0),w=d!==void 0&&d?null:Math.min(t??0,(f=c.startRow)!==null&&f!==void 0?f:0),v=h!==void 0&&h?null:Math.max(e??0,(S=c.endColumn)!==null&&S!==void 0?S:0),m=d!==void 0&&d?null:Math.max(t??0,(C=c.endRow)!==null&&C!==void 0?C:0)}else p=c.startColumn,w=c.startRow,(o!=null||l!=null)&&((h===void 0||!h)&&(p=o),(d===void 0||!d)&&(w=l)),v=h!==void 0&&h?null:e,m=d!==void 0&&d?null:t;var b=D.makeNormalized(p,w,v,m);if(c.equals(b))return null;var O=[...n];return O[O.length-1]=b,{selectedRanges:O,selectionEndColumn:e,selectionEndRow:t}}var M=[...n],y=h!==void 0&&h?null:e,P=d!==void 0&&d?null:t;return M.push(D.makeNormalized(y,P,y,P)),{selectedRanges:M,selectionEndColumn:e,selectionEndRow:t}})}commitSelection(){this.setState(e=>{var{theme:t}=this.props,{autoSelectRow:r}=t,{selectedRanges:i,lastSelectedRanges:a,cursorRow:n,cursorColumn:l}=e;if(i.length===1&&(r!==void 0&&r?D.rowCount(i)===1:D.cellCount(i)===1)&&D.rangeArraysEqual(i,a))return{selectedRanges:[],lastSelectedRanges:[],cursorColumn:null,cursorRow:null};var o=i.slice();if(o.length>1){for(var u=o[o.length-1],h=0;h<o.length-1;h+=1){var d=o[h];if(d.contains(u)){var c=d.subtract(u);o.pop(),o.splice(h,1),o=o.concat(c);break}}o=D.consolidate(o)}var p=l,w=n;if(!D.containsCell(o,l,n)){var{model:v}=this.props,{columnCount:m,rowCount:g}=v,f=D.nextCell(D.boundedRanges(i,m,g));f!=null?{column:p,row:w}=f:(p=null,w=null)}o.length===0&&(p=null,w=null);var S=o.length!==i.length||o.some((C,b)=>!C.equals(i[b]));return{cursorRow:w,cursorColumn:p,selectedRanges:S?o:i,lastSelectedRanges:i}})}setFocusRow(e){var t;if(!(!this.metrics||!this.prevMetrics)){var{gridY:r,height:i,lastTop:a,userRowHeights:n,rowHeight:l}=this.metrics,o=i-r,u=Math.round(o/2)+((t=n.get(e))!==null&&t!==void 0?t:l),h=this.getMetricState(),d=this.metricCalculator.getLastTop(h,e+1,u);this.setState({top:Math.min(a,d),selectedRanges:[new D(null,e,null,e)],isStuckToBottom:!1});var{cursorColumn:c}=this.state;this.moveCursorToPosition(c,e,!1,!1)}}selectAll(){var{model:e,theme:t}=this.props,{autoSelectRow:r,autoSelectColumn:i}=t,a=i!==void 0&&i?null:0,n=i!==void 0&&i?null:e.rowCount-1,l=r!==void 0&&r?null:0,o=r!==void 0&&r?null:e.columnCount-1;this.setSelectedRanges([new D(l,a,o,n)])}moveCursor(e,t,r){var{cursorRow:i,cursorColumn:a,selectionEndColumn:n,selectionEndRow:l}=this.state,o=r?n:a,u=r?l:i;if(u===null||o===null){var{left:h,top:d}=this.state;this.moveCursorToPosition(h,d,r)}else{var{model:c}=this.props,{columnCount:p,rowCount:w}=c,v=W(o+e,0,p-1),m=W(u+t,0,w-1);this.moveCursorToPosition(v,m,r)}}moveCursorInDirection(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:D.SELECTION_DIRECTION.DOWN,{model:t}=this.props,{columnCount:r,rowCount:i}=t,{cursorRow:a,cursorColumn:n,selectedRanges:l}=this.state,o=l.length>0?l:[D.makeCell(n,a)],u=null;if(o.length===1&&D.cellCount(o)===1){var h,d=new D(0,0,r-1,i-1);u=(h=d.nextCell(n,a,e))!==null&&h!==void 0?h:d.startCell(e)}else u=D.nextCell(D.boundedRanges(o,r,i),n,a,e);if(u!=null){var{column:c,row:p}=u;this.setState({cursorColumn:c,cursorRow:p}),D.containsCell(l,c,p)||this.setState({selectedRanges:[D.makeCell(c,p)],selectionStartColumn:c,selectionStartRow:p,selectionEndColumn:c,selectionEndRow:p}),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:n,leftVisible:l}=this.metrics,o=this.getMetricState(this.state),{top:u,left:h,topOffset:d,leftOffset:c}=this.state;t!=null&&!E.isFloatingRow(t,this.metrics)&&(t<n?(u=r.getTopForTopVisible(o,t),d=0):t>i&&(u=r.getTopForBottomVisible(o,t),d=0)),e!=null&&!E.isFloatingColumn(e,this.metrics)&&(e<l?(h=r.getLeftForLeftVisible(o,e),c=0):e>a&&(h=r.getLeftForRightVisible(o,e),c=0)),this.setViewState({top:u,left:h,topOffset:d,leftOffset:c})}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:n}=e,{lastTop:l,lastLeft:o,hasVerticalBar:u,hasHorizontalBar:h}=this.metrics;a!=null&&u&&this.setState({isStuckToBottom:r&&a>=l}),n!=null&&h&&this.setState({isStuckToRight:i&&n>=o}),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:n}=this.props;if(!q(n))throw new Error("model is not editable");var l=this.getModelColumn(e),o=this.getModelRow(t),u={column:e,row:t,selectionRange:i,value:a!==void 0?a:n.editValueForCell(l,o),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),n=this.getModelRow(t);return q(i)&&i.isValidForCell(a,n,r)}pasteValue(e){var t=this;return lt(function*(){var{model:r}=t.props,{movedColumns:i,movedRows:a,selectedRanges:n}=t.state;try{if(he(r),!r.isEditable||!n.every(m=>r.isEditableRange(m)))throw new ie("Can't paste in to read-only area.");if(n.length<=0)throw new ie("Select an area to paste to.");if(typeof e=="string"){var l=[],o=E.getModelRanges(n,i,a);D.forEachCell(o,(m,g)=>{l.push({column:m,row:g,text:e})}),yield r.setValues(l);return}var u=e.length,h=e[0].length,{columnCount:d,rowCount:c}=r,p=n;p.every(m=>{var g,f;return D.cellCount([m])===1&&((g=m.startColumn)!==null&&g!==void 0?g:0)+h<=d&&((f=m.startRow)!==null&&f!==void 0?f:0)+u<=c})&&(p=p.map(m=>{var g,f;return new D(m.startColumn,m.startRow,((g=m.startColumn)!==null&&g!==void 0?g:0)+h-1,((f=m.startRow)!==null&&f!==void 0?f:0)+u-1)}),t.setSelectedRanges(p));var w=[];p.forEach(m=>{var g;if(((g=m.startColumn)!==null&&g!==void 0?g:0)+h>d)throw new ie("Pasted content would overflow columns.");for(var f=0;f<h;f+=1)for(var S=0;S<u;S+=1){var C,b;w.push({column:((C=m.startColumn)!==null&&C!==void 0?C:0)+f,row:((b=m.startRow)!==null&&b!==void 0?b:0)+S,text:e[S][f]})}}),yield r.setValues(w)}catch(m){var{onError:v}=t.props;v(m instanceof Error?m:new Error("".concat(m)))}})()}setValueForCell(e,t,r){var{model:i}=this.props;he(i);var a=this.getModelColumn(e),n=this.getModelRow(t);return i.isValidForCell(a,n,r)?(i.setValueForCell(a,n,r),!0):!1}setValueForRanges(e,t){var{model:r}=this.props,{movedColumns:i,movedRows:a}=this.state,n=E.getModelRanges(e,i,a);q(r)&&r.setValueForRanges(n,t)}isSelected(e,t){for(var{selectedRanges:r}=this.state,i=0;i<r.length;i+=1){var a,n,l=r[i],o=l.startRow===null||l.startRow<=e&&e<=((a=l.endRow)!==null&&a!==void 0?a:0),u=l.startColumn===null||l.startColumn<=t&&t<=((n=l.endColumn)!==null&&n!==void 0?n:0);if(o&&u)return!0}return!1}addDocumentCursor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;this.documentCursor!==L.getCursorClassName(e)&&(this.documentCursor!=null&&document.documentElement.classList.remove(this.documentCursor),this.documentCursor=L.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)},L.dragTimeout)}stopDragTimer(){this.dragTimer&&(clearTimeout(this.dragTimer),this.dragTimer=null)}drawCanvas(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{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 n=i[a];if(n.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}}}notifyKeyboardHandlers(e,t){for(var r=this.getKeyHandlers(),i=null,a=0;a<r.length;a+=1){var n=r[a],l=n[e]!=null&&n[e](t,this);if(l!==!1){var o,u;n.cursor!=null&&({cursor:i}=n);var h=l;(!((o=h==null?void 0:h.stopPropagation)!==null&&o!==void 0)||o)&&t.stopPropagation(),(!((u=h==null?void 0:h.preventDefault)!==null&&u!==void 0)||u)&&t.preventDefault();break}}this.setState({cursor:i})}handleKeyDown(e){this.notifyKeyboardHandlers("onDown",e)}handleKeyUp(e){this.notifyKeyboardHandlers("onUp",e)}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),n=this.getMouseHandlers(),l=null,o=0;o<n.length;o+=1){var u=n[o],h=u[e]!=null&&u[e](a,this,t);if(h!==!1){var d,c;u.cursor!=null&&({cursor:l}=u,i&&this.addDocumentCursor(l));var p=h;(!((d=p==null?void 0:p.stopPropagation)!==null&&d!==void 0)||d)&&t.stopPropagation(),(!((c=p==null?void 0:p.preventDefault)!==null&&c!==void 0)||c)&&t.preventDefault();break}}if(this.setState({cursor:l}),r){var{x:w,y:v}=a;this.setState({mouseX:w,mouseY:v})}}handleMouseDown(e){window.addEventListener("mousemove",this.handleMouseDrag,!0),window.addEventListener("mouseup",this.handleMouseUp,!0),!(e.button!=null&&e.button!==0)&&(this.notifyMouseHandlers("onDown",e),this.startDragTimer(e))}handleDoubleClick(e){this.notifyMouseHandlers("onDoubleClick",e)}handleMouseMove(e){this.notifyMouseHandlers("onMove",e)}handleMouseLeave(e){this.notifyMouseHandlers("onLeave",e,!1),this.setState({mouseX:null,mouseY:null})}handleMouseDrag(e){this.setState({isDragging:!0}),this.notifyMouseHandlers("onDrag",e,!0,!0),this.stopDragTimer()}handleMouseUp(e){var{isDragging:t}=this.state;t&&e.button===2||(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()}forceUpdate(e){this.setState(t=>{var{updateRevision:r=0}=t;return{updateRevision:(r+1)%Number.MAX_SAFE_INTEGER}}),super.forceUpdate(e)}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:n,columnCount:l,rowCount:o,scrollableContentWidth:u,scrollableViewportWidth:h,scrollableContentHeight:d,scrollableViewportHeight:c,hasHorizontalBar:p,hasVerticalBar:w}=r,{top:v,left:m,topOffset:g,leftOffset:f}=r,S=this.getTheme(),{deltaX:C,deltaY:b}=E.getScrollDelta(e,r.barWidth,r.barHeight,r.rowHeight,r.rowHeight);p&&C!==0;){if(f+=C,C=0,l>1){if(f>0&&m>=n||f<0&&m<=0){f=0;break}}else{if(f<=0){f=0;break}var O=u-h;if(f>=O){f=O;break}}if(f>0){var M,y=(M=r.allColumnWidths.get(m))!==null&&M!==void 0?M:t.getVisibleColumnWidth(m,i);f>=y?(C=f-y,f=0,m+=1):S.scrollSnapToColumn&&l>1&&(f=0,m+=1)}else if(f<0){var P,x=(P=r.allColumnWidths.get(m-1))!==null&&P!==void 0?P:t.getVisibleColumnWidth(m-1,i);Math.abs(f)<=x&&S.scrollSnapToColumn&&l>1?(f=0,m-=1):(C=f+x,f=0,m-=1)}}for(;w&&b!==0;){if(g+=b,b=0,o>1){if(g>0&&v>=a||g<0&&v<=0){g=0;break}}else{if(g<=0){g=0;break}var I=d-c;if(g>=I){g=I;break}}if(g>0){var R,k=(R=r.allRowHeights.get(v))!==null&&R!==void 0?R:t.getVisibleRowHeight(v,i);g>=k?(b=g-k,g=0,v+=1):S.scrollSnapToRow&&o>1&&(g=0,v+=1)}else if(g<0){var N,X=(N=r.allRowHeights.get(v-1))!==null&&N!==void 0?N:t.getVisibleRowHeight(v-1,i);Math.abs(g)<=X&&S.scrollSnapToRow&&o>1?(g=0,v-=1):(b=g+X,g=0,v-=1)}}(r.top!==v||r.left!==m||r.topOffset!==g||r.leftOffset!==f)&&(this.setViewState({top:v,left:m,topOffset:g,leftOffset:f}),e.stopPropagation(),e.preventDefault())}}handleEditCellCancel(){this.setState({editingCell:null}),this.focus()}handleEditCellChange(e){this.setState(t=>{var{editingCell:r}=t;try{return fe(r),{editingCell:F(F({},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=j.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:n,row:l}=i;if(!this.isValidForCell(n,l,e)){t===null&&this.setState({editingCell:null});return}r?this.setValueForRanges(a,e):this.setValueForCell(n,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||!q(e))return null;var{selectionRange:i,value:a,isQuickEdit:n}=t,{column:l,row:o}=t,{scrollX:u,gridX:h,gridY:d,allColumnXs:c,allRowYs:p,allColumnWidths:w,allRowHeights:v}=r,{activeCellSelectionBorderWidth:m}=this.getTheme(),g=c.get(l),f=p.get(o),S=w.get(l),C=v.get(o),b=h+(g??0)<=0&&u<=0?m:0,O=g!=null&&f!=null&&S!=null&&C!=null?{position:"absolute",left:h+g+b,top:d+f,width:S-b,height:C}:{opacity:0},M,y;try{M=this.getModelColumn(l),y=this.getModelRow(o)}catch{return null}var P=M!=null&&y!=null?{textAlign:e.textAlignForCell(M,y)}:void 0,x=M!=null&&y!=null?e.isValidForCell(M,y,a):!1;return J.jsx("div",{style:O,children:J.jsx(ue,{selectionRange:i,className:ne({error:!x}),onCancel:this.handleEditCellCancel,onChange:this.handleEditCellChange,onDone:this.handleEditCellCommit,isQuickEdit:n,style:P,value:a},"".concat(l,",").concat(o))})}updateRenderState(){if(!this.canvas)throw new Error("canvas is not set");if(!this.canvasContext)throw new Error("context not set");var{cursorColumn:e,cursorRow:t,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:n,draggingRowSeparator:l,editingCell:o,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:h,isDragging:d,mouseX:c,mouseY:p,selectedRanges:w}=this.state,{model:v,stateOverride:m}=this.props,{metrics:g}=this,f=this.canvasContext,S=this.getTheme(),C=this.canvas.clientWidth,b=this.canvas.clientHeight;return Z(g),this.renderState=F({width:C,height:b,context:f,theme:S,model:v,metrics:g,mouseX:c,mouseY:p,selectedRanges:w,draggingColumn:r,draggingColumnSeparator:i,draggingRow:a,draggingRowOffset:n,draggingRowSeparator:l,editingCell:o,isDraggingHorizontalScrollBar:u,isDraggingVerticalScrollBar:h,isDragging:d,cursorColumn:e,cursorRow:t},m),this.renderState}render(){var{children:e}=this.props,{cursor:t}=this.state;return J.jsxs("div",{className:"grid-wrapper",ref:this.canvasWrapper,children:[J.jsx("canvas",{className:ne("grid-canvas",L.getCursorClassName(t)),ref:r=>{this.canvas=r},onClick:this.handleClick,onContextMenu:this.handleContextMenu,onDoubleClick:this.handleDoubleClick,onKeyDown:this.handleKeyDown,onKeyUp:this.handleKeyUp,onMouseDown:this.handleMouseDown,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,tabIndex:0,children:"Your browser does not support HTML canvas. Update your browser?"}),this.renderInputField(),e]})}}T(L,"contextType",ot);T(L,"defaultProps",{canvasOptions:{alpha:!1},isStickyBottom:!1,isStickyRight:!1,isStuckToBottom:!1,isStuckToRight:!1,keyHandlers:A,mouseHandlers:A,movedColumns:A,movedRows:A,onError:()=>{},onSelectionChanged:()=>{},onMovedColumnsChanged:s=>{},onMoveColumnComplete:()=>{},onMovedRowsChanged:()=>{},onMoveRowComplete:()=>{},onViewChanged:s=>{},onTokenClicked:s=>{He(s)&&window.open(s.href,"_blank","noopener,noreferrer")},stateOverride:{},theme:{autoSelectColumn:!1,autoSelectRow:!1}});T(L,"pixelsPerLine",100/3);T(L,"dragTimeout",1e3);T(L,"getTheme",se((s,e)=>F(F(F({},ke),s),e)));export{L as G,ee as K,ot as T};
|
|
4
|
-
//# sourceMappingURL=Grid-
|
|
4
|
+
//# sourceMappingURL=Grid-e4StjlLs.js.map
|