handsontable 14.6.0-next-4d69faf-20240924 → 14.6.0-next-9f83127-20240930

Sign up to get free protection for your applications and to get access to all the features.
@@ -25,14 +25,14 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 14.6.0-next-4d69faf-20240924
29
- * Release date: 01/10/2024 (built at 24/09/2024 11:36:42)
28
+ * Version: 14.6.0-next-9f83127-20240930
29
+ * Release date: 01/10/2024 (built at 30/09/2024 13:38:28)
30
30
  */
31
31
  !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("dompurify"),require("@handsontable/pikaday"),require("moment"),require("numbro")):"function"==typeof define&&define.amd?define("Handsontable",["dompurify","@handsontable/pikaday","moment","numbro"],t):"object"==typeof exports?exports.Handsontable=t(require("dompurify"),require("@handsontable/pikaday"),require("moment"),require("numbro")):e.Handsontable=t(e.DOMPurify,e.Pikaday,e.moment,e.numbro)}("undefined"!=typeof self?self:this,((e,t,o,s)=>(()=>{var n={17728:()=>{},32779:(e,t)=>{"use strict";t.__esModule=!0,t.parse=function(e){const t=[[""]];if(0===e.length)return t;let i,r=0,l=0;for(;e.length>0&&i!==e.length;)if(i=e.length,e.match(n))e=e.replace(n,""),r+=1,t[l][r]="";else if(e.match(o))e=e.replace(o,""),r=0,l+=1,t[l]=[""];else{let o="";if(e.startsWith('"')){let t=0,s=!0;for(;s;){const n=e.slice(0,1);'"'===n&&(t+=1),o+=n,(0===(e=e.slice(1)).length||e.match(/^[\t\r\n]/)&&t%2==0)&&(s=!1)}o=o.replace(/^"/,"").replace(/"$/,"").replace(/["]*/g,(e=>new Array(Math.floor(e.length/2)).fill('"').join("")))}else{const t=e.match(s);o=t?t[0]:"",e=e.slice(o.length)}t[l][r]=o}return t},t.stringify=function(e){let t,o,s,n,i,r="";for(t=0,o=e.length;t<o;t+=1){for(n=e[t].length,s=0;s<n;s+=1)s>0&&(r+="\t"),i=e[t][s],"string"==typeof i?i.indexOf("\n")>-1?r+=`"${i.replace(/"/g,'""')}"`:r+=i:r+=null==i?"":i;t!==o-1&&(r+="\n")}return r};const o=/^(\r\n|\n\r|\r|\n)/,s=/^[^\t\r\n]+/,n=/^\t/},55518:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(32779);t.parse=s.parse,t.stringify=s.stringify},45060:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(95913),o(12587);var n=s(o(85707));t.FullyVisibleColumnsCalculationType=class{constructor(){(0,n.default)(this,"count",0),(0,n.default)(this,"startColumn",null),(0,n.default)(this,"endColumn",null),(0,n.default)(this,"startPosition",null),(0,n.default)(this,"isVisibleInTrimmingContainer",!1)}initialize(){}process(e,t){const{totalCalculatedWidth:o,zeroBasedScrollOffset:s,viewportWidth:n,columnWidth:i}=t;o>=s&&o+i<=s+(s>0?n+1:n)&&(null!==this.startColumn&&void 0!==this.startColumn||(this.startColumn=e),this.endColumn=e)}finalize(e){var t;const{scrollOffset:o,viewportWidth:s,inlineStartOffset:n,zeroBasedScrollOffset:i,totalColumns:r,needReverse:l,startPositions:a,columnWidth:h}=e;if(this.endColumn===r-1&&l)for(this.startColumn=this.endColumn;this.startColumn>0;){const e=a[this.endColumn]+h-a[this.startColumn-1];if(e<=s&&(this.startColumn-=1),e>=s)break}this.startPosition=null!==(t=a[this.startColumn])&&void 0!==t?t:null;const c=o+s-(i>0?s+1:s),u=null===this.startColumn?0:e.getColumnWidth(this.startColumn);c<-1*n||o>a.at(-1)||-1*o-s>-1*u?this.isVisibleInTrimmingContainer=!1:this.isVisibleInTrimmingContainer=!0,r<this.endColumn&&(this.endColumn=r-1),null!==this.startColumn&&(this.count=this.endColumn-this.startColumn+1)}}},41322:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(95913),o(12587);var n=s(o(85707));t.FullyVisibleRowsCalculationType=class{constructor(){(0,n.default)(this,"count",0),(0,n.default)(this,"startRow",null),(0,n.default)(this,"endRow",null),(0,n.default)(this,"startPosition",null),(0,n.default)(this,"isVisibleInTrimmingContainer",!1)}initialize(){}process(e,t){const{totalCalculatedHeight:o,zeroBasedScrollOffset:s,innerViewportHeight:n,rowHeight:i}=t;o>=s&&o+i<=n&&(null===this.startRow&&(this.startRow=e),this.endRow=e)}finalize(e){var t;const{scrollOffset:o,viewportHeight:s,horizontalScrollbarHeight:n,totalRows:i,needReverse:r,startPositions:l,rowHeight:a}=e;if(this.endRow===i-1&&r)for(this.startRow=this.endRow;this.startRow>0;){const e=l[this.endRow]+a-l[this.startRow-1];if(e<=s-n&&(this.startRow-=1),e>=s-n)break}this.startPosition=null!==(t=l[this.startRow])&&void 0!==t?t:null;o+s-n<(null===this.startRow?0:e.getRowHeight(this.startRow))||o>l.at(-1)?this.isVisibleInTrimmingContainer=!1:this.isVisibleInTrimmingContainer=!0,i<this.endRow&&(this.endRow=i-1),null!==this.startRow&&(this.count=this.endRow-this.startRow+1)}}},77970:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(95913),o(12587);var n=s(o(85707));t.PartiallyVisibleColumnsCalculationType=class{constructor(){(0,n.default)(this,"count",0),(0,n.default)(this,"startColumn",null),(0,n.default)(this,"endColumn",null),(0,n.default)(this,"startPosition",null),(0,n.default)(this,"isVisibleInTrimmingContainer",!1)}initialize(){}process(e,t){const{totalCalculatedWidth:o,zeroBasedScrollOffset:s,viewportWidth:n}=t;o<=s&&(this.startColumn=e);o>=s&&o<=s+(s>0?n+1:n)&&(null!==this.startColumn&&void 0!==this.startColumn||(this.startColumn=e)),this.endColumn=e}finalize(e){var t;const{scrollOffset:o,viewportWidth:s,inlineStartOffset:n,zeroBasedScrollOffset:i,totalColumns:r,needReverse:l,startPositions:a,columnWidth:h}=e;if(this.endColumn===r-1&&l)for(this.startColumn=this.endColumn;this.startColumn>0;){const e=a[this.endColumn]+h-a[this.startColumn-1];if(this.startColumn-=1,e>s)break}this.startPosition=null!==(t=a[this.startColumn])&&void 0!==t?t:null;o+s-(i>0?s+1:s)<-1*n||o>a.at(-1)+h||-1*o-s>0?this.isVisibleInTrimmingContainer=!1:this.isVisibleInTrimmingContainer=!0,r<this.endColumn&&(this.endColumn=r-1),null!==this.startColumn&&(this.count=this.endColumn-this.startColumn+1)}}},20788:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(95913),o(12587);var n=s(o(85707));t.PartiallyVisibleRowsCalculationType=class{constructor(){(0,n.default)(this,"count",0),(0,n.default)(this,"startRow",null),(0,n.default)(this,"endRow",null),(0,n.default)(this,"startPosition",null),(0,n.default)(this,"isVisibleInTrimmingContainer",!1)}initialize(){}process(e,t){const{totalCalculatedHeight:o,zeroBasedScrollOffset:s,innerViewportHeight:n}=t;o<=s&&(this.startRow=e),o>=s&&o<=n&&null===this.startRow&&(this.startRow=e),this.endRow=e}finalize(e){var t;const{scrollOffset:o,viewportHeight:s,horizontalScrollbarHeight:n,totalRows:i,needReverse:r,startPositions:l,rowHeight:a}=e;if(this.endRow===i-1&&r)for(this.startRow=this.endRow;this.startRow>0;){const e=l[this.endRow]+a-l[this.startRow-1];if(this.startRow-=1,e>=s-n)break}this.startPosition=null!==(t=l[this.startRow])&&void 0!==t?t:null;o+s-n<0||o>l.at(-1)+a?this.isVisibleInTrimmingContainer=!1:this.isVisibleInTrimmingContainer=!0,i<this.endRow&&(this.endRow=i-1),null!==this.startRow&&(this.count=this.endRow-this.startRow+1)}}},6782:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.RenderedAllColumnsCalculationType=class{constructor(){(0,n.default)(this,"count",0),(0,n.default)(this,"startColumn",0),(0,n.default)(this,"endColumn",0),(0,n.default)(this,"startPosition",0),(0,n.default)(this,"isVisibleInTrimmingContainer",!0)}initialize(e){let{totalColumns:t}=e;this.count=t,this.endColumn=this.count-1}process(){}finalize(){}}},78128:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.RenderedAllRowsCalculationType=class{constructor(){(0,n.default)(this,"count",0),(0,n.default)(this,"startRow",0),(0,n.default)(this,"endRow",0),(0,n.default)(this,"startPosition",0),(0,n.default)(this,"isVisibleInTrimmingContainer",!0)}initialize(e){let{totalRows:t}=e;this.count=t,this.endRow=this.count-1}process(){}finalize(){}}},98081:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(77970);class n extends s.PartiallyVisibleColumnsCalculationType{finalize(e){var t;super.finalize(e);const{overrideFn:o,totalColumns:s,startPositions:n}=e;null!==this.startColumn&&"function"==typeof o&&o(this),this.startColumn<0&&(this.startColumn=0),this.startPosition=null!==(t=n[this.startColumn])&&void 0!==t?t:null,s<this.endColumn&&(this.endColumn=s-1),null!==this.startColumn&&(this.count=this.endColumn-this.startColumn+1)}}t.RenderedColumnsCalculationType=n},51681:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(20788);class n extends s.PartiallyVisibleRowsCalculationType{finalize(e){var t;super.finalize(e);const{overrideFn:o,totalRows:s,startPositions:n}=e;null!==this.startRow&&"function"==typeof o&&o(this),this.startRow<0&&(this.startRow=0),this.startPosition=null!==(t=n[this.startRow])&&void 0!==t?t:null,s<this.endRow&&(this.endRow=s-1),null!==this.startRow&&(this.count=this.endRow-this.startRow+1)}}t.RenderedRowsCalculationType=n},26679:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(45060);t.FullyVisibleColumnsCalculationType=s.FullyVisibleColumnsCalculationType;var n=o(41322);t.FullyVisibleRowsCalculationType=n.FullyVisibleRowsCalculationType;var i=o(77970);t.PartiallyVisibleColumnsCalculationType=i.PartiallyVisibleColumnsCalculationType;var r=o(20788);t.PartiallyVisibleRowsCalculationType=r.PartiallyVisibleRowsCalculationType;var l=o(6782);t.RenderedAllColumnsCalculationType=l.RenderedAllColumnsCalculationType;var a=o(78128);t.RenderedAllRowsCalculationType=a.RenderedAllRowsCalculationType;var h=o(98081);t.RenderedColumnsCalculationType=h.RenderedColumnsCalculationType;var c=o(51681);t.RenderedRowsCalculationType=c.RenderedRowsCalculationType;var u=o(54886);t.ViewportColumnsCalculator=u.ViewportColumnsCalculator,t.DEFAULT_COLUMN_WIDTH=u.DEFAULT_WIDTH;var d=o(46616);t.ViewportRowsCalculator=d.ViewportRowsCalculator,t.DEFAULT_ROW_HEIGHT=d.DEFAULT_HEIGHT},81568:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.ViewportBaseCalculator=class{constructor(e){(0,n.default)(this,"calculationTypes",[]),(0,n.default)(this,"calculationResults",new Map),this.calculationTypes=e}_initialize(e){this.calculationTypes.forEach((t=>{let[o,s]=t;this.calculationResults.set(o,s),s.initialize(e)}))}_process(e,t){this.calculationTypes.forEach((o=>{let[,s]=o;return s.process(e,t)}))}_finalize(e){this.calculationTypes.forEach((t=>{let[,o]=t;return o.finalize(e)}))}getResultsFor(e){return this.calculationResults.get(e)}}},54886:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(81568);const r=t.DEFAULT_WIDTH=50;class l extends i.ViewportBaseCalculator{constructor(e){let{calculationTypes:t,viewportWidth:o,scrollOffset:s,totalColumns:i,columnWidthFn:r,overrideFn:l,inlineStartOffset:a}=e;super(t),(0,n.default)(this,"viewportWidth",0),(0,n.default)(this,"scrollOffset",0),(0,n.default)(this,"zeroBasedScrollOffset",0),(0,n.default)(this,"totalColumns",0),(0,n.default)(this,"columnWidthFn",null),(0,n.default)(this,"columnWidth",0),(0,n.default)(this,"overrideFn",null),(0,n.default)(this,"inlineStartOffset",0),(0,n.default)(this,"totalCalculatedWidth",0),(0,n.default)(this,"startPositions",[]),(0,n.default)(this,"needReverse",!0),this.viewportWidth=o,this.scrollOffset=s,this.zeroBasedScrollOffset=Math.max(s,0),this.totalColumns=i,this.columnWidthFn=r,this.overrideFn=l,this.inlineStartOffset=a,this.calculate()}calculate(){this._initialize(this);for(let e=0;e<this.totalColumns;e++)if(this.columnWidth=this.getColumnWidth(e),this._process(e,this),this.startPositions.push(this.totalCalculatedWidth),this.totalCalculatedWidth+=this.columnWidth,this.totalCalculatedWidth>=this.zeroBasedScrollOffset+this.viewportWidth){this.needReverse=!1;break}this._finalize(this)}getColumnWidth(e){const t=this.columnWidthFn(e);return isNaN(t)?r:t}}t.ViewportColumnsCalculator=l},46616:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(81568);const r=t.DEFAULT_HEIGHT=23;class l extends i.ViewportBaseCalculator{constructor(e){let{calculationTypes:t,viewportHeight:o,scrollOffset:s,totalRows:i,rowHeightFn:r,overrideFn:l,horizontalScrollbarHeight:a}=e;super(t),(0,n.default)(this,"viewportHeight",0),(0,n.default)(this,"scrollOffset",0),(0,n.default)(this,"zeroBasedScrollOffset",0),(0,n.default)(this,"totalRows",0),(0,n.default)(this,"rowHeightFn",null),(0,n.default)(this,"rowHeight",0),(0,n.default)(this,"overrideFn",null),(0,n.default)(this,"horizontalScrollbarHeight",0),(0,n.default)(this,"innerViewportHeight",0),(0,n.default)(this,"totalCalculatedHeight",0),(0,n.default)(this,"startPositions",[]),(0,n.default)(this,"needReverse",!0),this.viewportHeight=o,this.scrollOffset=s,this.zeroBasedScrollOffset=Math.max(s,0),this.totalRows=i,this.rowHeightFn=r,this.overrideFn=l,this.horizontalScrollbarHeight=null!=a?a:0,this.innerViewportHeight=this.zeroBasedScrollOffset+this.viewportHeight-this.horizontalScrollbarHeight,this.calculate()}calculate(){this._initialize(this);for(let e=0;e<this.totalRows;e++)if(this.rowHeight=this.getRowHeight(e),this._process(e,this),this.startPositions.push(this.totalCalculatedHeight),this.totalCalculatedHeight+=this.rowHeight,this.totalCalculatedHeight>=this.innerViewportHeight){this.needReverse=!1;break}this._finalize(this)}getRowHeight(e){const t=this.rowHeightFn(e);return isNaN(t)?r:t}}t.ViewportRowsCalculator=l},28537:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707));function i(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function r(e,t){return e.get(a(e,t))}function l(e,t,o){return e.set(a(e,t),o),o}function a(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var h=new WeakMap;class c{constructor(e,t){let o=arguments.length>2&&void 0!==arguments[2]&&arguments[2];(0,n.default)(this,"row",null),(0,n.default)(this,"col",null),i(this,h,!1),l(h,this,o),void 0!==e&&void 0!==t&&(this.row=e,this.col=t)}isValid(e){const{countRows:t,countCols:o,countRowHeaders:s,countColHeaders:n}={countRows:0,countCols:0,countRowHeaders:0,countColHeaders:0,...e};return!(!Number.isInteger(this.row)||!Number.isInteger(this.col))&&(!(this.row<-n||this.col<-s)&&!(this.row>=t||this.col>=o))}isEqual(e){return e===this||this.row===e.row&&this.col===e.col}isHeader(){return!this.isCell()}isCell(){return this.row>=0&&this.col>=0}isRtl(){return r(h,this)}isSouthEastOf(e){return this.row>=e.row&&(r(h,this)?this.col<=e.col:this.col>=e.col)}isNorthWestOf(e){return this.row<=e.row&&(r(h,this)?this.col>=e.col:this.col<=e.col)}isSouthWestOf(e){return this.row>=e.row&&(r(h,this)?this.col>=e.col:this.col<=e.col)}isNorthEastOf(e){return this.row<=e.row&&(r(h,this)?this.col<=e.col:this.col>=e.col)}normalize(){return this.row=null===this.row?this.row:Math.max(this.row,0),this.col=null===this.col?this.col:Math.max(this.col,0),this}assign(e){return Number.isInteger(null==e?void 0:e.row)&&(this.row=e.row),Number.isInteger(null==e?void 0:e.col)&&(this.col=e.col),e instanceof c&&l(h,this,e.isRtl()),this}clone(){return new c(this.row,this.col,r(h,this))}toObject(){return{row:this.row,col:this.col}}}t.default=c},30422:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724);var n=s(o(85707)),i=s(o(28537));function r(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function l(e,t){return e.get(a(e,t))}function a(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var h=new WeakMap;class c{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e,s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];var i,l,c;(0,n.default)(this,"highlight",null),(0,n.default)(this,"from",null),(0,n.default)(this,"to",null),r(this,h,!1),this.highlight=e.clone(),this.from=t.clone(),this.to=o.clone(),l=this,c=s,(i=h).set(a(i,l),c)}setHighlight(e){return this.highlight=e.clone(),this}setFrom(e){return this.from=e.clone(),this}setTo(e){return this.to=e.clone(),this}isValid(e){return this.from.isValid(e)&&this.to.isValid(e)}isSingle(){return this.isSingleCell()||this.isSingleHeader()}isSingleCell(){return this.from.row>=0&&this.from.row===this.to.row&&this.from.col>=0&&this.from.col===this.to.col}isSingleHeader(){return(this.from.row<0||this.from.col<0)&&this.from.row===this.to.row&&this.from.col===this.to.col}isHeader(){return!(!this.from.isHeader()||!this.to.isHeader())||(this.from.col<0&&this.to.col<0||this.from.row<0&&this.to.row<0)}containsHeaders(){return this.from.isHeader()||this.to.isHeader()}getOuterHeight(){return Math.max(this.from.row,this.to.row)-Math.min(this.from.row,this.to.row)+1}getOuterWidth(){return Math.max(this.from.col,this.to.col)-Math.min(this.from.col,this.to.col)+1}getHeight(){if(this.from.row<0&&this.to.row<0)return 0;const e=Math.max(this.from.row,0),t=Math.max(this.to.row,0);return Math.max(e,t)-Math.min(e,t)+1}getWidth(){if(this.from.col<0&&this.to.col<0)return 0;const e=Math.max(this.from.col,0),t=Math.max(this.to.col,0);return Math.max(e,t)-Math.min(e,t)+1}getCellsCount(){return this.getWidth()*this.getHeight()}includes(e){const{row:t,col:o}=e,s=this.getOuterTopStartCorner(),n=this.getOuterBottomEndCorner();return s.row<=t&&n.row>=t&&s.col<=o&&n.col>=o}includesRange(e){return this.includes(e.getOuterTopStartCorner())&&this.includes(e.getOuterBottomEndCorner())}isEqual(e){return Math.min(this.from.row,this.to.row)===Math.min(e.from.row,e.to.row)&&Math.max(this.from.row,this.to.row)===Math.max(e.from.row,e.to.row)&&Math.min(this.from.col,this.to.col)===Math.min(e.from.col,e.to.col)&&Math.max(this.from.col,this.to.col)===Math.max(e.from.col,e.to.col)}overlaps(e){return e.isSouthEastOf(this.getOuterTopLeftCorner())&&e.isNorthWestOf(this.getOuterBottomRightCorner())}isSouthEastOf(e){return this.getOuterTopLeftCorner().isSouthEastOf(e)||this.getOuterBottomRightCorner().isSouthEastOf(e)}isNorthWestOf(e){return this.getOuterTopLeftCorner().isNorthWestOf(e)||this.getOuterBottomRightCorner().isNorthWestOf(e)}isOverlappingHorizontally(e){return this.getOuterTopEndCorner().col>=e.getOuterTopStartCorner().col&&this.getOuterTopEndCorner().col<=e.getOuterTopEndCorner().col||this.getOuterTopStartCorner().col<=e.getOuterTopEndCorner().col&&this.getOuterTopStartCorner().col>=e.getOuterTopStartCorner().col}isOverlappingVertically(e){return this.getOuterBottomStartCorner().row>=e.getOuterTopRightCorner().row&&this.getOuterBottomStartCorner().row<=e.getOuterBottomStartCorner().row||this.getOuterTopEndCorner().row<=e.getOuterBottomStartCorner().row&&this.getOuterTopEndCorner().row>=e.getOuterTopRightCorner().row}expand(e){const t=this.getOuterTopStartCorner(),o=this.getOuterBottomEndCorner();return(e.row<t.row||e.col<t.col||e.row>o.row||e.col>o.col)&&(this.from=this._createCellCoords(Math.min(t.row,e.row),Math.min(t.col,e.col)),this.to=this._createCellCoords(Math.max(o.row,e.row),Math.max(o.col,e.col)),!0)}expandByRange(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(this.includesRange(e)||!this.overlaps(e))return!1;const o=this.getOuterTopStartCorner(),s=this.getOuterBottomEndCorner(),n=this.getDirection(),i=e.getOuterTopStartCorner(),r=e.getOuterBottomEndCorner(),l=Math.min(o.row,i.row),a=Math.min(o.col,i.col),h=Math.max(s.row,r.row),c=Math.max(s.col,r.col),u=this._createCellCoords(l,a),d=this._createCellCoords(h,c);return this.from=u,this.to=d,this.setDirection(n),t&&(this.highlight.row===this.getOuterBottomRightCorner().row&&"N-S"===this.getVerticalDirection()&&this.flipDirectionVertically(),this.highlight.col===this.getOuterTopRightCorner().col&&"W-E"===this.getHorizontalDirection()&&this.flipDirectionHorizontally()),!0}getDirection(){return this.from.isNorthWestOf(this.to)?"NW-SE":this.from.isNorthEastOf(this.to)?"NE-SW":this.from.isSouthEastOf(this.to)?"SE-NW":this.from.isSouthWestOf(this.to)?"SW-NE":void 0}setDirection(e){switch(e){case"NW-SE":[this.from,this.to]=[this.getOuterTopLeftCorner(),this.getOuterBottomRightCorner()];break;case"NE-SW":[this.from,this.to]=[this.getOuterTopRightCorner(),this.getOuterBottomLeftCorner()];break;case"SE-NW":[this.from,this.to]=[this.getOuterBottomRightCorner(),this.getOuterTopLeftCorner()];break;case"SW-NE":[this.from,this.to]=[this.getOuterBottomLeftCorner(),this.getOuterTopRightCorner()]}}getVerticalDirection(){return["NE-SW","NW-SE"].indexOf(this.getDirection())>-1?"N-S":"S-N"}getHorizontalDirection(){return["NW-SE","SW-NE"].indexOf(this.getDirection())>-1?"W-E":"E-W"}flipDirectionVertically(){switch(this.getDirection()){case"NW-SE":this.setDirection("SW-NE");break;case"NE-SW":this.setDirection("SE-NW");break;case"SE-NW":this.setDirection("NE-SW");break;case"SW-NE":this.setDirection("NW-SE")}}flipDirectionHorizontally(){switch(this.getDirection()){case"NW-SE":this.setDirection("NE-SW");break;case"NE-SW":this.setDirection("NW-SE");break;case"SE-NW":this.setDirection("SW-NE");break;case"SW-NE":this.setDirection("SE-NW")}}getTopStartCorner(){return this._createCellCoords(Math.min(this.from.row,this.to.row),Math.min(this.from.col,this.to.col)).normalize()}getTopLeftCorner(){return l(h,this)?this.getTopEndCorner():this.getTopStartCorner()}getBottomEndCorner(){return this._createCellCoords(Math.max(this.from.row,this.to.row),Math.max(this.from.col,this.to.col)).normalize()}getBottomRightCorner(){return l(h,this)?this.getBottomStartCorner():this.getBottomEndCorner()}getTopEndCorner(){return this._createCellCoords(Math.min(this.from.row,this.to.row),Math.max(this.from.col,this.to.col)).normalize()}getTopRightCorner(){return l(h,this)?this.getTopStartCorner():this.getTopEndCorner()}getBottomStartCorner(){return this._createCellCoords(Math.max(this.from.row,this.to.row),Math.min(this.from.col,this.to.col)).normalize()}getBottomLeftCorner(){return l(h,this)?this.getBottomEndCorner():this.getBottomStartCorner()}getOuterTopStartCorner(){return this._createCellCoords(Math.min(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))}getOuterTopLeftCorner(){return l(h,this)?this.getOuterTopEndCorner():this.getOuterTopStartCorner()}getOuterBottomEndCorner(){return this._createCellCoords(Math.max(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))}getOuterBottomRightCorner(){return l(h,this)?this.getOuterBottomStartCorner():this.getOuterBottomEndCorner()}getOuterTopEndCorner(){return this._createCellCoords(Math.min(this.from.row,this.to.row),Math.max(this.from.col,this.to.col))}getOuterTopRightCorner(){return l(h,this)?this.getOuterTopStartCorner():this.getOuterTopEndCorner()}getOuterBottomStartCorner(){return this._createCellCoords(Math.max(this.from.row,this.to.row),Math.min(this.from.col,this.to.col))}getOuterBottomLeftCorner(){return l(h,this)?this.getOuterBottomEndCorner():this.getOuterBottomStartCorner()}isCorner(e){return e.isEqual(this.getOuterTopLeftCorner())||e.isEqual(this.getOuterTopRightCorner())||e.isEqual(this.getOuterBottomLeftCorner())||e.isEqual(this.getOuterBottomRightCorner())}getOppositeCorner(e){return e instanceof i.default&&(e.isEqual(this.getOuterBottomEndCorner())?this.getOuterTopStartCorner():e.isEqual(this.getOuterTopStartCorner())?this.getOuterBottomEndCorner():e.isEqual(this.getOuterTopEndCorner())?this.getOuterBottomStartCorner():e.isEqual(this.getOuterBottomStartCorner())?this.getOuterTopEndCorner():void 0)}getBordersSharedWith(e){if(!this.includesRange(e))return[];const t=Math.min(this.from.row,this.to.row),o=Math.max(this.from.row,this.to.row),s=Math.min(this.from.col,this.to.col),n=Math.max(this.from.col,this.to.col),i=Math.min(e.from.row,e.to.row),r=Math.max(e.from.row,e.to.row),a=Math.min(e.from.col,e.to.col),c=Math.max(e.from.col,e.to.col),u=[];return t===i&&u.push("top"),n===c&&u.push(l(h,this)?"left":"right"),o===r&&u.push("bottom"),s===a&&u.push(l(h,this)?"right":"left"),u}getInner(){const e=this.getOuterTopStartCorner(),t=this.getOuterBottomEndCorner(),o=[];for(let s=e.row;s<=t.row;s++)for(let n=e.col;n<=t.col;n++)this.from.row===s&&this.from.col===n||this.to.row===s&&this.to.col===n||o.push(this._createCellCoords(s,n));return o}getAll(){const e=this.getOuterTopStartCorner(),t=this.getOuterBottomEndCorner(),o=[];for(let s=e.row;s<=t.row;s++)for(let n=e.col;n<=t.col;n++)e.row===s&&e.col===n?o.push(e):t.row===s&&t.col===n?o.push(t):o.push(this._createCellCoords(s,n));return o}forAll(e){const t=this.getOuterTopStartCorner(),o=this.getOuterBottomEndCorner();for(let s=t.row;s<=o.row;s++)for(let n=t.col;n<=o.col;n++){if(!1===e(s,n))return}}clone(){return new c(this.highlight,this.from,this.to,l(h,this))}toObject(){return{from:this.from.toObject(),to:this.to.toObject()}}_createCellCoords(e,t){return new i.default(e,t,l(h,this))}}t.default=c},25192:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(9893),r=o(59777),l=s(o(82629)),a=s(o(61677)),h=s(o(28537)),c=s(o(30422));t.default=class{get eventManager(){return new l.default(this)}constructor(e,t){(0,n.default)(this,"wtTable",void 0),(0,n.default)(this,"wtScroll",void 0),(0,n.default)(this,"wtViewport",void 0),(0,n.default)(this,"wtOverlays",void 0),(0,n.default)(this,"selectionManager",void 0),(0,n.default)(this,"wtEvent",void 0),(0,n.default)(this,"guid",`wt_${(0,r.randomString)()}`),(0,n.default)(this,"drawInterrupted",!1),(0,n.default)(this,"drawn",!1),(0,n.default)(this,"domBindings",void 0),(0,n.default)(this,"wtSettings",void 0),this.domBindings={rootTable:e,rootDocument:e.ownerDocument,rootWindow:e.ownerDocument.defaultView},this.wtSettings=t,this.wtScroll=new a.default(this.createScrollDao())}findOriginalHeaders(){const e=[];if(this.wtTable.THEAD.childNodes.length&&this.wtTable.THEAD.childNodes[0].childNodes.length){for(let t=0,o=this.wtTable.THEAD.childNodes[0].childNodes.length;t<o;t++)e.push(this.wtTable.THEAD.childNodes[0].childNodes[t].innerHTML);this.wtSettings.getSetting("columnHeaders").length||this.wtSettings.update("columnHeaders",[function(t,o){(0,i.fastInnerText)(o,e[t])}])}}createCellCoords(e,t){return new h.default(e,t,this.wtSettings.getSetting("rtlMode"))}createCellRange(e,t,o){return new c.default(e,t,o,this.wtSettings.getSetting("rtlMode"))}draw(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.drawInterrupted=!1,this.wtTable.isVisible()?this.wtTable.draw(e):this.drawInterrupted=!0,this}getCell(e){if(!(arguments.length>1&&void 0!==arguments[1]&&arguments[1]))return this.wtTable.getCell(e);const t=this.wtSettings.getSetting("totalRows"),o=this.wtSettings.getSetting("fixedRowsTop"),s=this.wtSettings.getSetting("fixedRowsBottom"),n=this.wtSettings.getSetting("fixedColumnsStart");if(e.row<o&&e.col<n)return this.wtOverlays.topInlineStartCornerOverlay.clone.wtTable.getCell(e);if(e.row<o)return this.wtOverlays.topOverlay.clone.wtTable.getCell(e);if(e.col<n&&e.row>=t-s){if(this.wtOverlays.bottomInlineStartCornerOverlay&&this.wtOverlays.bottomInlineStartCornerOverlay.clone)return this.wtOverlays.bottomInlineStartCornerOverlay.clone.wtTable.getCell(e)}else{if(e.col<n)return this.wtOverlays.inlineStartOverlay.clone.wtTable.getCell(e);if(e.row<t&&e.row>=t-s&&this.wtOverlays.bottomOverlay&&this.wtOverlays.bottomOverlay.clone)return this.wtOverlays.bottomOverlay.clone.wtTable.getCell(e)}return this.wtTable.getCell(e)}scrollViewport(e,t,o,s,n){return!(e.col<0||e.row<0)&&this.wtScroll.scrollViewport(e,t,o,s,n)}scrollViewportHorizontally(e,t,o){return!(e<0)&&this.wtScroll.scrollViewportHorizontally(e,t,o)}scrollViewportVertically(e,t,o){return!(e<0)&&this.wtScroll.scrollViewportVertically(e,t,o)}getViewport(){return[this.wtTable.getFirstVisibleRow(),this.wtTable.getFirstVisibleColumn(),this.wtTable.getLastVisibleRow(),this.wtTable.getLastVisibleColumn()]}destroy(){this.wtOverlays.destroy(),this.wtEvent.destroy()}createScrollDao(){const e=this;return{get drawn(){return e.drawn},get topOverlay(){return e.wtOverlays.topOverlay},get inlineStartOverlay(){return e.wtOverlays.inlineStartOverlay},get wtTable(){return e.wtTable},get wtViewport(){return e.wtViewport},get wtSettings(){return e.wtSettings},get rootWindow(){return e.domBindings.rootWindow},get totalRows(){return e.wtSettings.getSetting("totalRows")},get totalColumns(){return e.wtSettings.getSetting("totalColumns")},get fixedRowsTop(){return e.wtSettings.getSetting("fixedRowsTop")},get fixedRowsBottom(){return e.wtSettings.getSetting("fixedRowsBottom")},get fixedColumnsStart(){return e.wtSettings.getSetting("fixedColumnsStart")}}}getTableDao(){const e=this;return{get wot(){return e},get parentTableOffset(){return e.cloneSource.wtTable.tableOffset},get cloneSource(){return e.cloneSource},get workspaceWidth(){return e.wtViewport.getWorkspaceWidth()},get wtViewport(){return e.wtViewport},get wtOverlays(){return e.wtOverlays},get selectionManager(){return e.selectionManager},get drawn(){return e.drawn},set drawn(t){e.drawn=t},get wtTable(){return e.wtTable},get startColumnRendered(){return e.wtViewport.columnsRenderCalculator.startColumn},get startColumnVisible(){return e.wtViewport.columnsVisibleCalculator.startColumn},get startColumnPartiallyVisible(){return e.wtViewport.columnsPartiallyVisibleCalculator.startColumn},get endColumnRendered(){return e.wtViewport.columnsRenderCalculator.endColumn},get endColumnVisible(){return e.wtViewport.columnsVisibleCalculator.endColumn},get endColumnPartiallyVisible(){return e.wtViewport.columnsPartiallyVisibleCalculator.endColumn},get countColumnsRendered(){return e.wtViewport.columnsRenderCalculator.count},get countColumnsVisible(){return e.wtViewport.columnsVisibleCalculator.count},get startRowRendered(){return e.wtViewport.rowsRenderCalculator.startRow},get startRowVisible(){return e.wtViewport.rowsVisibleCalculator.startRow},get startRowPartiallyVisible(){return e.wtViewport.rowsPartiallyVisibleCalculator.startRow},get endRowRendered(){return e.wtViewport.rowsRenderCalculator.endRow},get endRowVisible(){return e.wtViewport.rowsVisibleCalculator.endRow},get endRowPartiallyVisible(){return e.wtViewport.rowsPartiallyVisibleCalculator.endRow},get countRowsRendered(){return e.wtViewport.rowsRenderCalculator.count},get countRowsVisible(){return e.wtViewport.rowsVisibleCalculator.count},get columnHeaders(){return e.wtSettings.getSetting("columnHeaders")},get rowHeaders(){return e.wtSettings.getSetting("rowHeaders")}}}}},7861:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=s(o(41906)),r=s(o(25192));class l extends r.default{constructor(e,t,o){super(e,t),(0,n.default)(this,"cloneSource",void 0),(0,n.default)(this,"cloneOverlay",void 0);const s=this.wtSettings.getSetting("facade",this);this.cloneSource=o.source,this.cloneOverlay=o.overlay,this.wtTable=this.cloneOverlay.createTable(this.getTableDao(),s,this.domBindings,this.wtSettings),this.wtViewport=o.viewport,this.selectionManager=o.selectionManager,this.wtEvent=new i.default(s,this.domBindings,this.wtSettings,this.eventManager,this.wtTable,this.selectionManager,o.event),this.findOriginalHeaders()}}t.default=l},82881:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(41906)),i=s(o(85737)),r=o(34009),l=s(o(47241)),a=s(o(26235)),h=s(o(85690)),c=s(o(25192)),u=o(42492),d=o(13911),g=o(9893);class f extends c.default{constructor(e,t){super(e,new l.default(t));const o=this.wtSettings.getSetting("facade",this);this.wtTable=new a.default(this.getTableDao(),o,this.domBindings,this.wtSettings),this.wtViewport=new h.default(this.getViewportDao(),this.domBindings,this.wtSettings,this.eventManager,this.wtTable),this.selectionManager=new u.SelectionManager(this.wtSettings.getSetting("selections")),this.wtEvent=new n.default(o,this.domBindings,this.wtSettings,this.eventManager,this.wtTable,this.selectionManager),this.wtOverlays=new i.default(this,o,this.domBindings,this.wtSettings,this.eventManager,this.wtTable),this.exportSettingsAsClassNames(),this.findOriginalHeaders()}exportSettingsAsClassNames(){const e=[],t=[];(0,d.objectEach)({rowHeaders:"htRowHeaders",columnHeaders:"htColumnHeaders"},((o,s)=>{this.wtSettings.getSetting(s).length&&t.push(o),e.push(o)})),(0,g.removeClass)(this.wtTable.wtRootElement.parentNode,e),(0,g.addClass)(this.wtTable.wtRootElement.parentNode,t)}getOverlayByName(e){var t;if(!r.CLONE_TYPES.includes(e))return null;const o=e.replace(/_([a-z])/g,(e=>e[1].toUpperCase()));return null!==(t=this.wtOverlays[`${o}Overlay`])&&void 0!==t?t:null}getViewportDao(){const e=this;return{get wot(){return e},get topOverlayTrimmingContainer(){return e.wtOverlays.topOverlay.trimmingContainer},get inlineStartOverlayTrimmingContainer(){return e.wtOverlays.inlineStartOverlay.trimmingContainer},get topScrollPosition(){return e.wtOverlays.topOverlay.getScrollPosition()},get topParentOffset(){return e.wtOverlays.topOverlay.getTableParentOffset()},get inlineStartScrollPosition(){return e.wtOverlays.inlineStartOverlay.getScrollPosition()},get inlineStartParentOffset(){return e.wtOverlays.inlineStartOverlay.getTableParentOffset()},get topOverlay(){return e.wtOverlays.topOverlay},get inlineStartOverlay(){return e.wtOverlays.inlineStartOverlay},get bottomOverlay(){return e.wtOverlays.bottomOverlay}}}}t.default=f},41906:(e,t,o)=>{"use strict";t.__esModule=!0,o(67834);var s=o(9893),n=o(78832),i=o(93980),r=o(28890),l=o(38893);function a(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function h(e,t){return e.get(u(e,t))}function c(e,t,o){return e.set(u(e,t),o),o}function u(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var d=new WeakMap,g=new WeakMap,f=new WeakMap,p=new WeakMap,m=new WeakMap,w=new WeakMap,C=new WeakMap,v=new WeakMap,y=new WeakMap,E=new WeakMap;t.default=class{constructor(e,t,o,s,n,i){let r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null;a(this,d,void 0),a(this,g,void 0),a(this,f,void 0),a(this,p,void 0),a(this,m,void 0),a(this,w,void 0),a(this,C,void 0),a(this,v,void 0),a(this,y,[null,null]),a(this,E,[null,null]),c(d,this,o),c(g,this,t),c(f,this,n),c(p,this,i),c(m,this,r),c(w,this,s),c(C,this,e),this.registerEvents()}registerEvents(){h(w,this).addEventListener(h(f,this).holder,"contextmenu",(e=>this.onContextMenu(e))),h(w,this).addEventListener(h(f,this).TABLE,"mouseover",(e=>this.onMouseOver(e))),h(w,this).addEventListener(h(f,this).TABLE,"mouseout",(e=>this.onMouseOut(e)));const e=()=>{h(w,this).addEventListener(h(f,this).holder,"touchstart",(e=>this.onTouchStart(e))),h(w,this).addEventListener(h(f,this).holder,"touchend",(e=>this.onTouchEnd(e))),this.momentumScrolling||(this.momentumScrolling={}),h(w,this).addEventListener(h(f,this).holder,"scroll",(()=>{clearTimeout(this.momentumScrolling._timeout),this.momentumScrolling.ongoing||h(d,this).getSetting("onBeforeTouchScroll"),this.momentumScrolling.ongoing=!0,this.momentumScrolling._timeout=setTimeout((()=>{this.touchApplied||(this.momentumScrolling.ongoing=!1,h(d,this).getSetting("onAfterMomentumScroll"))}),200)}))},t=()=>{h(w,this).addEventListener(h(f,this).holder,"mouseup",(e=>this.onMouseUp(e))),h(w,this).addEventListener(h(f,this).holder,"mousedown",(e=>this.onMouseDown(e)))};(0,r.isMobileBrowser)()?e():((0,i.isTouchSupported)()&&e(),t())}selectedCellWasTouched(e){const t=this.parentCell(e).coords;if(h(v,this)&&t){const[e,o]=[t.row,h(v,this).from.row],[s,n]=[t.col,h(v,this).from.col];return e===o&&s===n}return!1}parentCell(e){const t={},o=h(f,this).TABLE,n=(0,s.closestDown)(e,["TD","TH"],o);return n?(t.coords=h(f,this).getCoords(n),t.TD=n):(0,s.hasClass)(e,"wtBorder")&&(0,s.hasClass)(e,"current")?(t.coords=h(p,this).getFocusSelection().cellRange.highlight,t.TD=h(f,this).getCell(t.coords)):(0,s.hasClass)(e,"wtBorder")&&(0,s.hasClass)(e,"area")&&h(p,this).getAreaSelection().cellRange&&(t.coords=h(p,this).getAreaSelection().cellRange.to,t.TD=h(f,this).getCell(t.coords)),t}onMouseDown(e){const t=h(g,this).rootDocument.activeElement,o=(0,n.partial)(s.getParent,e.target),i=e.target;if(!["TD","TH"].includes(t.nodeName)&&(i===t||o(0)===t||o(1)===t))return;const r=this.parentCell(i);(0,s.hasClass)(i,"corner")?h(d,this).getSetting("onCellCornerMouseDown",e,i):r.TD&&h(d,this).has("onCellMouseDown")&&this.callListener("onCellMouseDown",e,r.coords,r.TD),(0===e.button||this.touchApplied)&&r.TD&&(h(E,this)[0]=r.TD,clearTimeout(h(y,this)[0]),h(y,this)[0]=setTimeout((()=>{h(E,this)[0]=null}),1e3))}onContextMenu(e){if(h(d,this).has("onCellContextMenu")){const t=this.parentCell(e.target);t.TD&&this.callListener("onCellContextMenu",e,t.coords,t.TD)}}onMouseOver(e){if(!h(d,this).has("onCellMouseOver"))return;const t=h(f,this).TABLE,o=(0,s.closestDown)(e.target,["TD","TH"],t),n=h(m,this)||this;o&&o!==n.lastMouseOver&&(0,s.isChildOf)(o,t)&&(n.lastMouseOver=o,this.callListener("onCellMouseOver",e,h(f,this).getCoords(o),o))}onMouseOut(e){if(!h(d,this).has("onCellMouseOut"))return;const t=h(f,this).TABLE,o=(0,s.closestDown)(e.target,["TD","TH"],t),n=(0,s.closestDown)(e.relatedTarget,["TD","TH"],t),i=h(m,this)||this;o&&o!==n&&(0,s.isChildOf)(o,t)&&(this.callListener("onCellMouseOut",e,h(f,this).getCoords(o),o),null===n&&(i.lastMouseOver=null))}onMouseUp(e){const t=this.parentCell(e.target);t.TD&&h(d,this).has("onCellMouseUp")&&this.callListener("onCellMouseUp",e,t.coords,t.TD),(0===e.button||this.touchApplied)&&(t.TD===h(E,this)[0]&&t.TD===h(E,this)[1]?((0,s.hasClass)(e.target,"corner")?this.callListener("onCellCornerDblClick",e,t.coords,t.TD):this.callListener("onCellDblClick",e,t.coords,t.TD),h(E,this)[0]=null,h(E,this)[1]=null):t.TD===h(E,this)[0]&&(h(E,this)[1]=t.TD,clearTimeout(h(y,this)[1]),h(y,this)[1]=setTimeout((()=>{h(E,this)[1]=null}),500)))}onTouchStart(e){c(v,this,h(p,this).getFocusSelection().cellRange),this.touchApplied=!0,this.onMouseDown(e)}onTouchEnd(e){var t;const o=e.target,s=null===(t=this.parentCell(o))||void 0===t?void 0:t.coords,n=(0,l.isDefined)(s)&&s.row>=0&&s.col>=0;if(e.cancelable&&n&&h(d,this).getSetting("isDataViewInstance")){const t=["A","BUTTON","INPUT"];(0,r.isIOS)()&&((0,r.isChromeWebKit)()||(0,r.isFirefoxWebKit)())&&this.selectedCellWasTouched(o)&&!t.includes(o.tagName)?e.preventDefault():this.selectedCellWasTouched(o)||e.preventDefault()}this.onMouseUp(e),this.touchApplied=!1}callListener(e,t,o,s){const n=h(d,this).getSettingPure(e);n&&n(t,o,s,h(C,this).call(this))}destroy(){clearTimeout(h(y,this)[0]),clearTimeout(h(y,this)[1]),h(w,this).destroy()}}},56718:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(82881)),i=s(o(25192));class r{constructor(e){e instanceof i.default?this._wot=e:this._initFromSettings(e)}_initFromSettings(e){e.facade=e=>{const t=new r(e);return()=>t},this._wot=new n.default(e.table,e)}get guid(){return this._wot.guid}get rootDocument(){return this._wot.domBindings.rootDocument}get rootWindow(){return this._wot.domBindings.rootWindow}get wtSettings(){return this._wot.wtSettings}get cloneSource(){return this._wot.cloneSource}get cloneOverlay(){return this._wot.cloneOverlay}get selectionManager(){return this._wot.selectionManager}get wtViewport(){return this._wot.wtViewport}get wtOverlays(){return this._wot.wtOverlays}get wtTable(){return this._wot.wtTable}get wtEvent(){return this._wot.wtEvent}get wtScroll(){return this._wot.wtScroll}get drawn(){return this._wot.drawn}set drawn(e){this._wot.drawn=e}get drawInterrupted(){return this._wot.drawInterrupted}set drawInterrupted(e){this._wot.drawInterrupted=e}get lastMouseOver(){return this._wot.lastMouseOver}set lastMouseOver(e){this._wot.lastMouseOver=e}get momentumScrolling(){return this._wot.momentumScrolling}set momentumScrolling(e){this._wot.momentumScrolling=e}get touchApplied(){return this._wot.touchApplied}set touchApplied(e){this._wot.touchApplied=e}get domBindings(){return this._wot.domBindings}get eventListeners(){return this._wot.eventListeners}set eventListeners(e){this._wot.eventListeners=e}get eventManager(){return this._wot.eventManager}createCellCoords(e,t){return this._wot.createCellCoords(e,t)}createCellRange(e,t,o){return this._wot.createCellRange(e,t,o)}draw(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this._wot.draw(e),this}getCell(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this._wot.getCell(e,t)}scrollViewport(e,t,o,s,n){return this._wot.scrollViewport(e,t,o,s,n)}scrollViewportHorizontally(e,t,o){return this._wot.scrollViewportHorizontally(e,t,o)}scrollViewportVertically(e,t,o){return this._wot.scrollViewportVertically(e,t,o)}getViewport(){return this._wot.getViewport()}getOverlayName(){return this._wot.cloneOverlay?this._wot.cloneOverlay.type:"master"}getOverlayByName(e){return this._wot.getOverlayByName(e)}exportSettingsAsClassNames(){return this._wot.exportSettingsAsClassNames()}update(e,t){return this._wot.wtSettings.update(e,t),this}getSetting(e,t,o,s,n){return this._wot.wtSettings.getSetting(e,t,o,s,n)}hasSetting(e){return this._wot.wtSettings.hasSetting(e)}destroy(){this._wot.destroy()}}t.default=r},16979:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(e,t,o){(0,n.default)(this,"offset",void 0),(0,n.default)(this,"total",void 0),(0,n.default)(this,"countTH",void 0),this.offset=e,this.total=t,this.countTH=o}offsetted(e){return e+this.offset}unOffsetted(e){return e-this.offset}renderedToSource(e){return this.offsetted(e)}sourceToRendered(e){return this.unOffsetted(e)}offsettedTH(e){return e-this.countTH}unOffsettedTH(e){return e+this.countTH}visibleRowHeadedColumnToSourceColumn(e){return this.renderedToSource(this.offsettedTH(e))}sourceColumnToVisibleRowHeadedColumn(e){return this.unOffsettedTH(this.sourceToRendered(e))}}},39277:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(e,t,o){(0,n.default)(this,"offset",void 0),(0,n.default)(this,"total",void 0),(0,n.default)(this,"countTH",void 0),this.offset=e,this.total=t,this.countTH=o}offsetted(e){return e+this.offset}unOffsetted(e){return e-this.offset}renderedToSource(e){return this.offsetted(e)}sourceToRendered(e){return this.unOffsetted(e)}offsettedTH(e){return e-this.countTH}unOffsettedTH(e){return e+this.countTH}visibleColHeadedRowToSourceRow(e){return this.renderedToSource(this.offsettedTH(e))}sourceRowToVisibleColHeadedRow(e){return this.unOffsettedTH(this.sourceToRendered(e))}}},90:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(26679);t.ViewportColumnsCalculator=n.ViewportColumnsCalculator,t.ViewportRowsCalculator=n.ViewportRowsCalculator,t.DEFAULT_ROW_HEIGHT=n.DEFAULT_ROW_HEIGHT,t.DEFAULT_COLUMN_WIDTH=n.DEFAULT_COLUMN_WIDTH;var i=s(o(28537));t.CellCoords=i.default;var r=s(o(30422));t.CellRange=r.default;var l=s(o(56718));t.default=l.default,t.Core=l.default;var a=o(98779);t.Selection=a.Selection,t.HIGHLIGHT_ACTIVE_HEADER_TYPE=a.ACTIVE_HEADER_TYPE,t.HIGHLIGHT_AREA_TYPE=a.AREA_TYPE,t.HIGHLIGHT_FOCUS_TYPE=a.FOCUS_TYPE,t.HIGHLIGHT_FILL_TYPE=a.FILL_TYPE,t.HIGHLIGHT_HEADER_TYPE=a.HEADER_TYPE,t.HIGHLIGHT_ROW_TYPE=a.ROW_TYPE,t.HIGHLIGHT_COLUMN_TYPE=a.COLUMN_TYPE,t.HIGHLIGHT_CUSTOM_SELECTION_TYPE=a.CUSTOM_SELECTION_TYPE;var h=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var o=d(t);if(o&&o.has(e))return o.get(e);var s={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&{}.hasOwnProperty.call(e,i)){var r=n?Object.getOwnPropertyDescriptor(e,i):null;r&&(r.get||r.set)?Object.defineProperty(s,i,r):s[i]=e[i]}return s.default=e,o&&o.set(e,s),s}(o(20524));t.Renderer=h;var c=o(21682);t.OrderView=c.OrderView,t.SharedOrderView=c.SharedOrderView;var u=o(82629);function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,o=new WeakMap;return(d=function(e){return e?o:t})(e)}t.getListenersCounter=u.getListenersCounter},85821:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(9893),r=o(13911),l=o(83119),a=o(90368),h=s(o(7861)),c=o(92692);t.Overlay=class{constructor(e,t,o,s,l){(0,n.default)(this,"wtSettings",null),(0,r.defineGetter)(this,"wot",e,{writable:!1}),this.domBindings=l,this.facadeGetter=t,this.wtSettings=s;const{TABLE:a,hider:h,spreader:c,holder:u,wtRootElement:d}=this.wot.wtTable;this.instance=this.wot,this.type=o,this.mainTableScrollableElement=null,this.TABLE=a,this.hider=h,this.spreader=c,this.holder=u,this.wtRootElement=d,this.trimmingContainer=(0,i.getTrimmingContainer)(this.hider.parentNode.parentNode),this.needFullRender=this.shouldBeRendered(),this.clone=this.makeClone()}hasRenderingStateChanged(){return this.needFullRender!==this.shouldBeRendered()}updateStateOfRendering(e){"before"===e&&this.shouldBeRendered()?this.needFullRender=!0:"after"!==e||this.shouldBeRendered()||(this.needFullRender=!1)}shouldBeRendered(){return!0}updateTrimmingContainer(){this.trimmingContainer=(0,i.getTrimmingContainer)(this.hider.parentNode.parentNode)}updateMainScrollableElement(){const{wtTable:e}=this.wot,{rootWindow:t}=this.domBindings;"hidden"===t.getComputedStyle(e.wtRootElement.parentNode).getPropertyValue("overflow")?this.mainTableScrollableElement=this.wot.wtTable.holder:this.mainTableScrollableElement=(0,i.getScrollableElement)(e.TABLE)}getRelativeCellPosition(e,t,o){if(!1===this.clone.wtTable.holder.contains(e))return void(0,l.warn)(`The provided element is not a child of the ${this.type} overlay`);const s=this.mainTableScrollableElement===this.domBindings.rootWindow,n=o<this.wtSettings.getSetting("fixedColumnsStart"),i=t<this.wtSettings.getSetting("fixedRowsTop"),r=t>=this.wtSettings.getSetting("totalRows")-this.wtSettings.getSetting("fixedRowsBottom"),a=this.clone.wtTable.spreader,h={start:this.getRelativeStartPosition(a),top:a.offsetTop},c={start:this.getRelativeStartPosition(e),top:e.offsetTop};let u=null;return u=s?this.getRelativeCellPositionWithinWindow(i,n,c,h):this.getRelativeCellPositionWithinHolder(i,r,n,c,h),u}getRelativeStartPosition(e){return this.isRtl()?e.offsetParent.offsetWidth-e.offsetLeft-e.offsetWidth:e.offsetLeft}getRelativeCellPositionWithinWindow(e,t,o,s){const n=this.wot.wtTable.wtRootElement.getBoundingClientRect();let r=0,l=0;if(t){let e=n.left;this.isRtl()&&(e=this.domBindings.rootWindow.innerWidth-(n.left+n.width+(0,i.getScrollbarWidth)())),r=e<=0?-1*e:0}else r=s.start;if(e){l=this.clone.wtTable.TABLE.getBoundingClientRect().top-n.top}else l=s.top;return{start:o.start+r,top:o.top+l}}getRelativeCellPositionWithinHolder(e,t,o,s,n){const i=this.wot.wtOverlays.inlineStartOverlay.getScrollPosition(),r=this.wot.wtOverlays.topOverlay.getScrollPosition();let l=0,a=0;if(o||(l=i-n.start),t){const e=this.wot.wtTable.wtRootElement.getBoundingClientRect();a=-1*this.clone.wtTable.TABLE.getBoundingClientRect().top+e.top}else e||(a=r-n.top);return{start:s.start-l,top:s.top-a}}makeClone(){if(-1===a.CLONE_TYPES.indexOf(this.type))throw new Error(`Clone type "${this.type}" is not supported.`);const{wtTable:e,wtSettings:t}=this.wot,{rootDocument:o,rootWindow:s}=this.domBindings,n=o.createElement("div"),r=o.createElement("table"),l=e.wtRootElement.parentNode;n.className=`${a.CLONE_CLASS_NAMES.get(this.type)} handsontable`,n.setAttribute("dir",this.isRtl()?"rtl":"ltr"),n.style.position="absolute",n.style.top=0,n.style.overflow="visible",this.isRtl()?n.style.right=0:n.style.left=0,t.getSetting("ariaTags")&&(0,i.setAttribute)(n,[(0,c.A11Y_PRESENTATION)()]),r.className=e.TABLE.className;e.TABLE.getAttribute("role")&&r.setAttribute("role",e.TABLE.getAttribute("role")),n.appendChild(r),l.appendChild(n);const u=this.wtSettings.getSetting("preventOverflow");return!0===u||"horizontal"===u&&this.type===a.CLONE_TOP||"vertical"===u&&this.type===a.CLONE_INLINE_START?this.mainTableScrollableElement=s:"hidden"===s.getComputedStyle(l).getPropertyValue("overflow")?this.mainTableScrollableElement=e.holder:this.mainTableScrollableElement=(0,i.getScrollableElement)(e.TABLE),new h.default(r,this.wtSettings,{source:this.wot,overlay:this,viewport:this.wot.wtViewport,event:this.wot.wtEvent,selectionManager:this.wot.selectionManager})}refresh(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.needFullRender&&this.clone.draw(e)}reset(){const e=this.clone.wtTable.holder,t=this.clone.wtTable.hider;[e.style,t.style,e.parentNode.style].forEach((e=>{e.width="",e.height=""}))}isRtl(){return this.wtSettings.getSetting("rtlMode")}destroy(){this.clone.eventManager.destroy()}}},60810:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(9893),r=s(o(31542)),l=o(85821),a=o(90368);class h extends l.Overlay{constructor(e,t,o,s){super(e,t,a.CLONE_BOTTOM,o,s),(0,n.default)(this,"cachedFixedRowsBottom",-1),this.cachedFixedRowsBottom=this.wtSettings.getSetting("fixedRowsBottom")}createTable(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return new r.default(...t)}shouldBeRendered(){return this.wtSettings.getSetting("shouldRenderBottomOverlay")}resetFixedPosition(){if(!this.needFullRender||!this.shouldBeRendered()||!this.wot.wtTable.holder.parentNode)return!1;const{rootWindow:e}=this.domBindings,t=this.clone.wtTable.holder.parentNode;t.style.top="";let o=0;const s=this.wtSettings.getSetting("preventOverflow");this.trimmingContainer!==e||s&&"vertical"===s?(o=this.getScrollPosition(),this.repositionOverlay()):(o=this.getOverlayOffset(),t.style.bottom=`${o}px`);const n=this.adjustHeaderBordersPosition(o);return this.adjustElementsSize(),n}repositionOverlay(){const{wtTable:e,wtViewport:t}=this.wot,{rootDocument:o}=this.domBindings,s=this.clone.wtTable.holder.parentNode;let n=0;t.hasVerticalScroll()||(n+=t.getWorkspaceHeight()-e.getTotalHeight()),t.hasVerticalScroll()&&t.hasHorizontalScroll()&&(n+=(0,i.getScrollbarWidth)(o)),s.style.bottom=`${n}px`}setScrollPosition(e){const{rootWindow:t}=this.domBindings;let o=!1;return this.mainTableScrollableElement===t?(t.scrollTo((0,i.getWindowScrollLeft)(t),e),o=!0):this.mainTableScrollableElement.scrollTop!==e&&(this.mainTableScrollableElement.scrollTop=e,o=!0),o}onScroll(){this.wtSettings.getSetting("onScrollHorizontally")}sumCellSizes(e,t){const{wtTable:o,wtSettings:s}=this.wot,n=s.getSetting("defaultRowHeight");let i=e,r=0;for(;i<t;){const e=o.getRowHeight(i);r+=void 0===e?n:e,i+=1}return r}adjustElementsSize(){this.updateTrimmingContainer(),this.needFullRender&&(this.adjustRootElementSize(),this.adjustRootChildrenSize())}adjustRootElementSize(){const{wtTable:e,wtViewport:t}=this.wot,{rootDocument:o,rootWindow:s}=this.domBindings,n=(0,i.getScrollbarWidth)(o),r=this.clone.wtTable.holder.parentNode.style,l=this.wtSettings.getSetting("preventOverflow");if(this.trimmingContainer!==s||"horizontal"===l){let o=t.getWorkspaceWidth();this.wot.wtOverlays.hasScrollbarRight&&(o-=n),o=Math.min(o,e.wtRootElement.scrollWidth),r.width=`${o}px`}else r.width="";this.clone.wtTable.holder.style.width=r.width;let a=(0,i.outerHeight)(this.clone.wtTable.TABLE);this.wot.wtTable.hasDefinedSize()||(a=0),r.height=`${a}px`}adjustRootChildrenSize(){const{holder:e}=this.clone.wtTable;this.clone.wtTable.hider.style.width=this.hider.style.width,e.style.width=e.parentNode.style.width,e.style.height=e.parentNode.style.height}applyToDOM(){const e=this.wtSettings.getSetting("totalRows");if("number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition)this.spreader.style.top=`${this.wot.wtViewport.rowsRenderCalculator.startPosition}px`;else{if(0!==e)throw new Error("Incorrect value of the rowsRenderCalculator");this.spreader.style.top="0"}this.spreader.style.bottom="",this.needFullRender&&this.syncOverlayOffset()}syncOverlayOffset(){const e=this.isRtl()?"right":"left",{spreader:t}=this.clone.wtTable;"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition?t.style[e]=`${this.wot.wtViewport.columnsRenderCalculator.startPosition}px`:t.style[e]=""}scrollTo(e,t){let o=this.getTableParentOffset();const s=(this.wot.cloneSource?this.wot.cloneSource:this.wot).wtTable.holder;let n=0;t&&s.offsetHeight!==s.clientHeight&&(n=(0,i.getScrollbarWidth)(this.domBindings.rootDocument)),t?(o+=this.sumCellSizes(0,e+1),o-=this.wot.wtViewport.getViewportHeight(),o+=1):o+=this.sumCellSizes(this.wtSettings.getSetting("fixedRowsBottom"),e),o+=n,this.setScrollPosition(o)}getTableParentOffset(){return this.mainTableScrollableElement===this.domBindings.rootWindow?this.wot.wtTable.holderOffset.top:0}getScrollPosition(){return(0,i.getScrollTop)(this.mainTableScrollableElement,this.domBindings.rootWindow)}getOverlayOffset(){const{rootWindow:e}=this.domBindings,t=this.wtSettings.getSetting("preventOverflow");let o=0;if(this.trimmingContainer===e&&(!t||"vertical"!==t)){const e=this.wot.wtTable.getTotalHeight(),t=e-this.clone.wtTable.getTotalHeight(),s=this.domBindings.rootDocument.documentElement.clientHeight;o=Math.max(this.getTableParentOffset()-this.getScrollPosition()-s+e,0),o>t&&(o=0)}return o}adjustHeaderBordersPosition(e){const t=this.wtSettings.getSetting("fixedRowsBottom"),o=this.cachedFixedRowsBottom!==t,s=this.wtSettings.getSetting("columnHeaders");let n=!1;if((o||0===t)&&s.length>0){const t=this.wot.wtTable.holder.parentNode,o=(0,i.hasClass)(t,"innerBorderBottom");this.cachedFixedRowsBottom=this.wtSettings.getSetting("fixedRowsBottom"),e||0===this.wtSettings.getSetting("totalRows")?((0,i.addClass)(t,"innerBorderBottom"),n=!o):((0,i.removeClass)(t,"innerBorderBottom"),n=o)}return n}}t.BottomOverlay=h},89130:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(9893),i=s(o(93638)),r=o(85821),l=o(90368);class a extends r.Overlay{constructor(e,t,o,s,n,i){super(e,t,l.CLONE_BOTTOM_INLINE_START_CORNER,o,s),this.bottomOverlay=n,this.inlineStartOverlay=i}createTable(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return new i.default(...t)}shouldBeRendered(){return this.wtSettings.getSetting("shouldRenderBottomOverlay")&&this.wtSettings.getSetting("shouldRenderInlineStartOverlay")}resetFixedPosition(){const{wot:e}=this;if(this.updateTrimmingContainer(),!e.wtTable.holder.parentNode)return!1;const t=this.clone.wtTable.holder.parentNode;if(t.style.top="",this.trimmingContainer===this.domBindings.rootWindow){const e=this.inlineStartOverlay.getOverlayOffset(),o=this.bottomOverlay.getOverlayOffset();t.style[this.isRtl()?"right":"left"]=`${e}px`,t.style.bottom=`${o}px`}else(0,n.resetCssTransform)(t),this.repositionOverlay();let o=(0,n.outerHeight)(this.clone.wtTable.TABLE);const s=(0,n.outerWidth)(this.clone.wtTable.TABLE);return this.wot.wtTable.hasDefinedSize()||(o=0),t.style.height=`${o}px`,t.style.width=`${s}px`,!1}repositionOverlay(){const{wtTable:e,wtViewport:t}=this.wot,{rootDocument:o}=this.domBindings,s=this.clone.wtTable.holder.parentNode;let i=0;t.hasVerticalScroll()||(i+=t.getWorkspaceHeight()-e.getTotalHeight()),t.hasVerticalScroll()&&t.hasHorizontalScroll()&&(i+=(0,n.getScrollbarWidth)(o)),s.style.bottom=`${i}px`}}t.BottomInlineStartCornerOverlay=a},90368:(e,t)=>{"use strict";t.__esModule=!0;const o=t.CLONE_TOP="top",s=t.CLONE_BOTTOM="bottom",n=t.CLONE_INLINE_START="inline_start",i=t.CLONE_TOP_INLINE_START_CORNER="top_inline_start_corner",r=t.CLONE_BOTTOM_INLINE_START_CORNER="bottom_inline_start_corner";t.CLONE_TYPES=[o,s,n,i,r],t.CLONE_CLASS_NAMES=new Map([[o,`ht_clone_${o}`],[s,`ht_clone_${s}`],[n,`ht_clone_${n} ht_clone_left`],[i,`ht_clone_${i} ht_clone_top_left_corner`],[r,`ht_clone_${r} ht_clone_bottom_left_corner`]])},34009:(e,t,o)=>{"use strict";t.__esModule=!0;var s={BottomInlineStartCornerOverlay:!0,BottomOverlay:!0,InlineStartOverlay:!0,Overlay:!0,TopInlineStartCornerOverlay:!0,TopOverlay:!0},n=o(89130);t.BottomInlineStartCornerOverlay=n.BottomInlineStartCornerOverlay;var i=o(60810);t.BottomOverlay=i.BottomOverlay;var r=o(7110);t.InlineStartOverlay=r.InlineStartOverlay;var l=o(85821);t.Overlay=l.Overlay;var a=o(51718);t.TopInlineStartCornerOverlay=a.TopInlineStartCornerOverlay;var h=o(1686);t.TopOverlay=h.TopOverlay;var c=o(90368);Object.keys(c).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(s,e)||e in t&&t[e]===c[e]||(t[e]=c[e]))}))},7110:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=o(9893),i=s(o(14658)),r=o(85821),l=o(98779),a=o(90368);class h extends r.Overlay{constructor(e,t,o,s){super(e,t,a.CLONE_INLINE_START,o,s)}createTable(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return new i.default(...t)}shouldBeRendered(){return this.wtSettings.getSetting("shouldRenderInlineStartOverlay")}resetFixedPosition(){const{wtTable:e}=this.wot;if(!this.needFullRender||!this.shouldBeRendered()||!e.holder.parentNode)return!1;const{rootWindow:t}=this.domBindings,o=this.clone.wtTable.holder.parentNode,s=this.wtSettings.getSetting("preventOverflow");let i=0;this.trimmingContainer!==t||s&&"horizontal"===s?(i=this.getScrollPosition(),(0,n.resetCssTransform)(o)):(i=this.getOverlayOffset()*(this.isRtl()?-1:1),(0,n.setOverlayPosition)(o,`${i}px`,"0px"));const r=this.adjustHeaderBordersPosition(i);return this.adjustElementsSize(),r}setScrollPosition(e){const{rootWindow:t}=this.domBindings;let o=!1;return this.isRtl()&&(e=-e),this.mainTableScrollableElement===t&&t.scrollX!==e?(t.scrollTo(e,(0,n.getWindowScrollTop)(t)),o=!0):this.mainTableScrollableElement.scrollLeft!==e&&(this.mainTableScrollableElement.scrollLeft=e,o=!0),o}onScroll(){this.wtSettings.getSetting("onScrollVertically")}sumCellSizes(e,t){const o=this.wtSettings.getSetting("defaultColumnWidth");let s=e,n=0;for(;s<t;)n+=this.wot.wtTable.getStretchedColumnWidth(s)||o,s+=1;return n}adjustElementsSize(){this.updateTrimmingContainer(),this.needFullRender&&(this.adjustRootElementSize(),this.adjustRootChildrenSize())}adjustRootElementSize(){const{wtTable:e}=this.wot,{rootDocument:t,rootWindow:o}=this.domBindings,s=(0,n.getScrollbarWidth)(t),i=this.clone.wtTable.holder.parentNode.style,r=this.wtSettings.getSetting("preventOverflow");if(this.trimmingContainer!==o||"vertical"===r){let t=this.wot.wtViewport.getWorkspaceHeight();this.wot.wtOverlays.hasScrollbarBottom&&(t-=s),t=Math.min(t,e.wtRootElement.scrollHeight),i.height=`${t}px`}else i.height="";this.clone.wtTable.holder.style.height=i.height;const l=(0,n.outerWidth)(this.clone.wtTable.TABLE);i.width=`${l}px`}adjustRootChildrenSize(){const{holder:e}=this.clone.wtTable,t=this.wot.selectionManager.getFocusSelection()?parseInt(l.CORNER_DEFAULT_STYLE.width,10)/2:0;this.clone.wtTable.hider.style.height=this.hider.style.height,e.style.height=e.parentNode.style.height,e.style.width=`${parseInt(e.parentNode.style.width,10)+t}px`}applyToDOM(){const e=this.wtSettings.getSetting("totalColumns"),t=this.isRtl()?"right":"left";if("number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition)this.spreader.style[t]=`${this.wot.wtViewport.columnsRenderCalculator.startPosition}px`;else{if(0!==e)throw new Error("Incorrect value of the columnsRenderCalculator");this.spreader.style[t]="0"}this.isRtl()?this.spreader.style.left="":this.spreader.style.right="",this.needFullRender&&this.syncOverlayOffset()}syncOverlayOffset(){"number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition?this.clone.wtTable.spreader.style.top=`${this.wot.wtViewport.rowsRenderCalculator.startPosition}px`:this.clone.wtTable.spreader.style.top=""}scrollTo(e,t){const{wtSettings:o}=this,s=o.getSetting("rowHeaders"),i=o.getSetting("fixedColumnsStart"),r=(this.wot.cloneSource?this.wot.cloneSource:this.wot).wtTable.holder,l=0===i&&s.length>0&&!(0,n.hasClass)(r.parentNode,"innerBorderInlineStart")?1:0;let a=this.getTableParentOffset(),h=0;if(t){this.wot.wtTable.getColumnWidth(e)>this.wot.wtViewport.getViewportWidth()&&(t=!1)}return t&&r.offsetWidth!==r.clientWidth&&(h=(0,n.getScrollbarWidth)(this.domBindings.rootDocument)),t?(a+=this.sumCellSizes(0,e+1),a-=this.wot.wtViewport.getViewportWidth(),a+=l):a+=this.sumCellSizes(this.wtSettings.getSetting("fixedColumnsStart"),e),a+=h,(0,n.getMaximumScrollLeft)(this.mainTableScrollableElement)===a-l&&l>0&&this.wot.wtOverlays.expandHiderHorizontallyBy(l),this.setScrollPosition(a)}getTableParentOffset(){let e=0;return this.wtSettings.getSetting("preventOverflow")||this.trimmingContainer!==this.domBindings.rootWindow||(e=this.wot.wtTable.holderOffset.left),e}getScrollPosition(){return Math.abs((0,n.getScrollLeft)(this.mainTableScrollableElement,this.domBindings.rootWindow))}getOverlayOffset(){const{rootWindow:e}=this.domBindings,t=this.wtSettings.getSetting("preventOverflow");let o=0;if(this.trimmingContainer===e&&(!t||"horizontal"!==t)){o=this.isRtl()?Math.abs(Math.min(this.getTableParentOffset()-this.getScrollPosition(),0)):Math.max(this.getScrollPosition()-this.getTableParentOffset(),0);o>this.wot.wtTable.getTotalWidth()-this.clone.wtTable.getTotalWidth()&&(o=0)}return o}adjustHeaderBordersPosition(e){const{wtSettings:t}=this,o=this.wot.wtTable.holder.parentNode,s=t.getSetting("rowHeaders"),i=t.getSetting("fixedColumnsStart"),r=t.getSetting("totalRows"),l="vertical"===t.getSetting("preventOverflow");r?(0,n.removeClass)(o,"emptyRows"):(0,n.addClass)(o,"emptyRows");let a=!1;if(!l)if(i&&!s.length)(0,n.addClass)(o,"innerBorderLeft innerBorderInlineStart");else if(!i&&s.length){const t=(0,n.hasClass)(o,"innerBorderInlineStart");e?((0,n.addClass)(o,"innerBorderLeft innerBorderInlineStart"),a=!t):((0,n.removeClass)(o,"innerBorderLeft innerBorderInlineStart"),a=t)}return a}}t.InlineStartOverlay=h},1686:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(9893),r=s(o(61234)),l=o(85821),a=o(98779),h=o(90368);class c extends l.Overlay{constructor(e,t,o,s){super(e,t,h.CLONE_TOP,o,s),(0,n.default)(this,"cachedFixedRowsTop",-1),this.cachedFixedRowsTop=this.wtSettings.getSetting("fixedRowsTop")}createTable(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return new r.default(...t)}shouldBeRendered(){return this.wtSettings.getSetting("shouldRenderTopOverlay")}resetFixedPosition(){if(!this.needFullRender||!this.shouldBeRendered()||!this.wot.wtTable.holder.parentNode)return!1;const e=this.clone.wtTable.holder.parentNode,{rootWindow:t}=this.domBindings,o=this.wtSettings.getSetting("preventOverflow");let s=0,n=!1;if(this.trimmingContainer!==t||o&&"vertical"===o)s=this.getScrollPosition(),(0,i.resetCssTransform)(e);else{const{wtTable:t}=this.wot,o=t.hider.getBoundingClientRect();n=Math.ceil(o.bottom)===e.offsetHeight,s=this.getOverlayOffset(),(0,i.setOverlayPosition)(e,"0px",`${s}px`)}const r=this.adjustHeaderBordersPosition(s,n);return this.adjustElementsSize(),r}setScrollPosition(e){const t=this.domBindings.rootWindow;let o=!1;return this.mainTableScrollableElement===t&&t.scrollY!==e?(t.scrollTo((0,i.getWindowScrollLeft)(t),e),o=!0):this.mainTableScrollableElement.scrollTop!==e&&(this.mainTableScrollableElement.scrollTop=e,o=!0),o}onScroll(){this.wtSettings.getSetting("onScrollHorizontally")}sumCellSizes(e,t){const o=this.wtSettings.getSetting("defaultRowHeight");let s=e,n=0;for(;s<t;){const e=this.wot.wtTable.getRowHeight(s);n+=void 0===e?o:e,s+=1}return n}adjustElementsSize(){this.updateTrimmingContainer(),this.needFullRender&&(this.adjustRootElementSize(),this.adjustRootChildrenSize())}adjustRootElementSize(){const{wtTable:e}=this.wot,{rootDocument:t,rootWindow:o}=this.domBindings,s=(0,i.getScrollbarWidth)(t),n=this.clone.wtTable.holder.parentNode.style,r=this.wtSettings.getSetting("preventOverflow");if(this.trimmingContainer!==o||"horizontal"===r){let t=this.wot.wtViewport.getWorkspaceWidth();this.wot.wtOverlays.hasScrollbarRight&&(t-=s),t=Math.min(t,e.wtRootElement.scrollWidth),n.width=`${t}px`}else n.width="";this.clone.wtTable.holder.style.width=n.width;let l=(0,i.outerHeight)(this.clone.wtTable.TABLE);this.wot.wtTable.hasDefinedSize()||(l=0),n.height=`${l}px`}adjustRootChildrenSize(){const{holder:e}=this.clone.wtTable,t=this.wot.selectionManager.getFocusSelection()?parseInt(a.CORNER_DEFAULT_STYLE.height,10)/2:0;this.clone.wtTable.hider.style.width=this.hider.style.width,e.style.width=e.parentNode.style.width,e.style.height=`${parseInt(e.parentNode.style.height,10)+t}px`}applyToDOM(){const e=this.wtSettings.getSetting("totalRows");if("number"==typeof this.wot.wtViewport.rowsRenderCalculator.startPosition)this.spreader.style.top=`${this.wot.wtViewport.rowsRenderCalculator.startPosition}px`;else{if(0!==e)throw new Error("Incorrect value of the rowsRenderCalculator");this.spreader.style.top="0"}this.spreader.style.bottom="",this.needFullRender&&this.syncOverlayOffset()}syncOverlayOffset(){const e=this.isRtl()?"right":"left",{spreader:t}=this.clone.wtTable;"number"==typeof this.wot.wtViewport.columnsRenderCalculator.startPosition?t.style[e]=`${this.wot.wtViewport.columnsRenderCalculator.startPosition}px`:t.style[e]=""}scrollTo(e,t){const{wot:o,wtSettings:s}=this,n=(o.cloneSource?o.cloneSource:o).wtTable.holder,r=s.getSetting("columnHeaders"),l=0===s.getSetting("fixedRowsTop")&&r.length>0&&!(0,i.hasClass)(n.parentNode,"innerBorderTop")?1:0;let a=this.getTableParentOffset(),h=0;if(t){this.wot.wtTable.getRowHeight(e)>this.wot.wtViewport.getViewportHeight()&&(t=!1)}if(t&&n.offsetHeight!==n.clientHeight&&(h=(0,i.getScrollbarWidth)(this.domBindings.rootDocument)),t){const t=s.getSetting("fixedRowsBottom"),n=s.getSetting("totalRows");a+=this.sumCellSizes(0,e+1),a-=o.wtViewport.getViewportHeight()-this.sumCellSizes(n-t,n),a+=1,a+=l}else a+=this.sumCellSizes(s.getSetting("fixedRowsTop"),e);return a+=h,(0,i.getMaximumScrollTop)(this.mainTableScrollableElement)===a-l&&l>0&&this.wot.wtOverlays.expandHiderVerticallyBy(l),this.setScrollPosition(a)}getTableParentOffset(){return this.mainTableScrollableElement===this.domBindings.rootWindow?this.wot.wtTable.holderOffset.top:0}getScrollPosition(){return(0,i.getScrollTop)(this.mainTableScrollableElement,this.domBindings.rootWindow)}getOverlayOffset(){const{rootWindow:e}=this.domBindings,t=this.wtSettings.getSetting("preventOverflow");let o=0;if(this.trimmingContainer===e&&(!t||"vertical"!==t)){const e=this.wot.wtTable.getTotalHeight()-this.clone.wtTable.getTotalHeight();o=Math.max(this.getScrollPosition()-this.getTableParentOffset(),0),o>e&&(o=0)}return o}adjustHeaderBordersPosition(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const{wtSettings:o}=this,s=this.wot.wtTable.holder.parentNode,n=o.getSetting("totalColumns"),r="horizontal"===o.getSetting("preventOverflow");n?(0,i.removeClass)(s,"emptyColumns"):(0,i.addClass)(s,"emptyColumns");let l=!1;if(!t&&!r){const t=o.getSetting("fixedRowsTop"),n=this.cachedFixedRowsTop!==t,r=o.getSetting("columnHeaders");if((n||0===t)&&r.length>0){const t=(0,i.hasClass)(s,"innerBorderTop");this.cachedFixedRowsTop=o.getSetting("fixedRowsTop"),e||0===o.getSetting("totalRows")?((0,i.addClass)(s,"innerBorderTop"),l=!t):((0,i.removeClass)(s,"innerBorderTop"),l=t)}}return l}}t.TopOverlay=c},51718:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(9893),r=s(o(60882)),l=o(85821),a=o(90368);class h extends l.Overlay{constructor(e,t,o,s,i,r){super(e,t,a.CLONE_TOP_INLINE_START_CORNER,o,s),(0,n.default)(this,"topOverlay",void 0),(0,n.default)(this,"inlineStartOverlay",void 0),this.topOverlay=i,this.inlineStartOverlay=r}createTable(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return new r.default(...t)}shouldBeRendered(){return this.wtSettings.getSetting("shouldRenderTopOverlay")&&this.wtSettings.getSetting("shouldRenderInlineStartOverlay")}resetFixedPosition(){if(this.updateTrimmingContainer(),!this.wot.wtTable.holder.parentNode)return!1;const e=this.clone.wtTable.holder.parentNode;if(this.trimmingContainer===this.domBindings.rootWindow){const t=this.inlineStartOverlay.getOverlayOffset()*(this.isRtl()?-1:1),o=this.topOverlay.getOverlayOffset();(0,i.setOverlayPosition)(e,`${t}px`,`${o}px`)}else(0,i.resetCssTransform)(e);let t=(0,i.outerHeight)(this.clone.wtTable.TABLE);const o=(0,i.outerWidth)(this.clone.wtTable.TABLE);return this.wot.wtTable.hasDefinedSize()||(t=0),e.style.height=`${t}px`,e.style.width=`${o}px`,!1}}t.TopInlineStartCornerOverlay=h},85737:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724);var n=s(o(85707)),i=o(9893),r=o(93980),l=o(9175),a=o(71257),h=o(28890),c=o(83119),u=o(34009);function d(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function g(e,t,o){return e.set(p(e,t),o),o}function f(e,t){return e.get(p(e,t))}function p(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var m=new WeakMap,w=new WeakMap,C=new WeakMap,v=new WeakMap;t.default=class{constructor(e,t,o,s,l,a){(0,n.default)(this,"wot",null),d(this,m,[]),(0,n.default)(this,"topOverlay",null),(0,n.default)(this,"bottomOverlay",null),(0,n.default)(this,"inlineStartOverlay",null),(0,n.default)(this,"topInlineStartCornerOverlay",null),(0,n.default)(this,"bottomInlineStartCornerOverlay",null),(0,n.default)(this,"browserLineHeight",void 0),(0,n.default)(this,"wtSettings",null),d(this,w,!1),d(this,C,0),d(this,v,null),(0,n.default)(this,"resizeObserver",new ResizeObserver((e=>{(0,r.requestAnimationFrame)((()=>{Array.isArray(e)&&e.length&&(g(C,this,f(C,this)+1),100===f(C,this)&&((0,c.warn)("The ResizeObserver callback was fired too many times in direct succession.\nThis may be due to an infinite loop caused by setting a dynamic height/width (for example, with the `dvh` units) to a Handsontable container's parent. \nThe observer will be disconnected."),this.resizeObserver.disconnect()),null!==f(v,this)&&clearTimeout(f(v,this)),g(v,this,setTimeout((()=>{g(C,this,0)}),100)),this.wtSettings.getSetting("onContainerElementResize"))}))}))),this.wot=e,this.wtSettings=s,this.domBindings=o,this.facadeGetter=t,this.wtTable=a;const{rootDocument:h,rootWindow:u}=this.domBindings;this.instance=this.wot,this.eventManager=l,this.scrollbarSize=(0,i.getScrollbarWidth)(h);const p="hidden"===u.getComputedStyle(a.wtRootElement.parentNode).getPropertyValue("overflow");this.scrollableElement=p?a.holder:(0,i.getScrollableElement)(a.TABLE),this.initOverlays(),this.hasScrollbarBottom=!1,this.hasScrollbarRight=!1,this.destroyed=!1,this.keyPressed=!1,this.spreaderLastSize={width:null,height:null},this.verticalScrolling=!1,this.horizontalScrolling=!1,this.initBrowserLineHeight(),this.registerListeners(),this.lastScrollX=u.scrollX,this.lastScrollY=u.scrollY}getOverlays(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=[...f(m,this)];return e&&t.push(this.wtTable),t}initBrowserLineHeight(){const{rootWindow:e,rootDocument:t}=this.domBindings,o=e.getComputedStyle(t.body),s=parseInt(o.lineHeight,10),n=1.2*parseInt(o.fontSize,10);this.browserLineHeight=s||n}initOverlays(){const e=[this.wot,this.facadeGetter,this.wtSettings,this.domBindings];this.topOverlay=new u.TopOverlay(...e),this.bottomOverlay=new u.BottomOverlay(...e),this.inlineStartOverlay=new u.InlineStartOverlay(...e),this.topInlineStartCornerOverlay=new u.TopInlineStartCornerOverlay(...e,this.topOverlay,this.inlineStartOverlay),this.bottomInlineStartCornerOverlay=new u.BottomInlineStartCornerOverlay(...e,this.bottomOverlay,this.inlineStartOverlay),g(m,this,[this.topOverlay,this.bottomOverlay,this.inlineStartOverlay,this.topInlineStartCornerOverlay,this.bottomInlineStartCornerOverlay])}beforeDraw(){g(w,this,f(m,this).reduce(((e,t)=>t.hasRenderingStateChanged()||e),!1)),f(m,this).forEach((e=>e.updateStateOfRendering("before")))}afterDraw(){this.syncScrollWithMaster(),f(m,this).forEach((e=>{const t=e.hasRenderingStateChanged();e.updateStateOfRendering("after"),t&&!e.needFullRender&&e.reset()}))}refreshAll(){this.wot.drawn&&(this.wtTable.holder.parentNode?(this.wot.draw(!0),this.verticalScrolling&&this.inlineStartOverlay.onScroll(),this.horizontalScrolling&&this.topOverlay.onScroll(),this.verticalScrolling=!1,this.horizontalScrolling=!1):this.destroy())}registerListeners(){const{rootDocument:e,rootWindow:t}=this.domBindings,{mainTableScrollableElement:o}=this.topOverlay,{mainTableScrollableElement:s}=this.inlineStartOverlay;this.eventManager.addEventListener(e.documentElement,"keydown",(e=>this.onKeyDown(e))),this.eventManager.addEventListener(e.documentElement,"keyup",(()=>this.onKeyUp())),this.eventManager.addEventListener(e,"visibilitychange",(()=>this.onKeyUp())),this.eventManager.addEventListener(o,"scroll",(e=>this.onTableScroll(e)),{passive:!0}),o!==s&&this.eventManager.addEventListener(s,"scroll",(e=>this.onTableScroll(e)),{passive:!0});const n=t.devicePixelRatio&&t.devicePixelRatio>1,i=this.scrollableElement===t,r=this.wtSettings.getSetting("preventWheel"),l={passive:i};(r||n||!(0,h.isChrome)())&&this.eventManager.addEventListener(this.wtTable.wtRootElement,"wheel",(e=>this.onCloneWheel(e,r)),l);let a;[this.topOverlay,this.bottomOverlay,this.inlineStartOverlay,this.topInlineStartCornerOverlay,this.bottomInlineStartCornerOverlay].forEach((e=>{if(e&&e.needFullRender){const{holder:t}=e.clone.wtTable;this.eventManager.addEventListener(t,"wheel",(e=>this.onCloneWheel(e,r)),l)}})),this.eventManager.addEventListener(t,"resize",(()=>{clearTimeout(a),a=setTimeout((()=>{this.wtSettings.getSetting("onWindowResize"),g(C,this,0)}),200)})),i||this.resizeObserver.observe(this.wtTable.wtRootElement.parentElement)}deregisterListeners(){this.eventManager.clearEvents(!0)}onTableScroll(e){const t=this.domBindings.rootWindow,o=this.inlineStartOverlay.mainTableScrollableElement,s=this.topOverlay.mainTableScrollableElement,n=e.target;this.keyPressed&&(s!==t&&n!==t&&!e.target.contains(s)||o!==t&&n!==t&&!e.target.contains(o))||this.syncScrollPositions(e)}onCloneWheel(e,t){const{rootWindow:o}=this.domBindings,s=this.inlineStartOverlay.mainTableScrollableElement,n=this.topOverlay.mainTableScrollableElement,i=e.target,r=n!==o&&i!==o&&!i.contains(n),l=s!==o&&i!==o&&!i.contains(s);if(this.keyPressed&&(r||l)||this.scrollableElement===o)return;const a=this.translateMouseWheelToScroll(e);(t||this.scrollableElement!==o&&a)&&e.preventDefault()}onKeyDown(e){this.keyPressed=(0,a.isKey)(e.keyCode,"ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT")}onKeyUp(){this.keyPressed=!1}translateMouseWheelToScroll(e){let t=isNaN(e.deltaY)?-1*e.wheelDeltaY:e.deltaY,o=isNaN(e.deltaX)?-1*e.wheelDeltaX:e.deltaX;1===e.deltaMode&&(o+=o*this.browserLineHeight,t+=t*this.browserLineHeight);const s=this.scrollVertically(t),n=this.scrollHorizontally(o);return s||n}scrollVertically(e){const t=this.scrollableElement.scrollTop;return this.scrollableElement.scrollTop+=e,t!==this.scrollableElement.scrollTop}scrollHorizontally(e){const t=this.scrollableElement.scrollLeft;return this.scrollableElement.scrollLeft+=e,t!==this.scrollableElement.scrollLeft}syncScrollPositions(){if(this.destroyed)return;const{rootWindow:e}=this.domBindings,t=this.topOverlay.clone.wtTable.holder,o=this.inlineStartOverlay.clone.wtTable.holder,[s,n]=[this.scrollableElement.scrollLeft,this.scrollableElement.scrollTop];if(this.horizontalScrolling=t.scrollLeft!==s||this.lastScrollX!==e.scrollX,this.verticalScrolling=o.scrollTop!==n||this.lastScrollY!==e.scrollY,this.lastScrollX=e.scrollX,this.lastScrollY=e.scrollY,this.horizontalScrolling){t.scrollLeft=s;const e=this.bottomOverlay.needFullRender?this.bottomOverlay.clone.wtTable.holder:null;e&&(e.scrollLeft=s)}this.verticalScrolling&&(o.scrollTop=n),this.refreshAll()}syncScrollWithMaster(){if(!f(w,this))return;const e=this.topOverlay.mainTableScrollableElement,{scrollLeft:t,scrollTop:o}=e;this.topOverlay.needFullRender&&(this.topOverlay.clone.wtTable.holder.scrollLeft=t),this.bottomOverlay.needFullRender&&(this.bottomOverlay.clone.wtTable.holder.scrollLeft=t),this.inlineStartOverlay.needFullRender&&(this.inlineStartOverlay.clone.wtTable.holder.scrollTop=o),g(w,this,!1)}updateMainScrollableElements(){this.deregisterListeners(),this.inlineStartOverlay.updateMainScrollableElement(),this.topOverlay.updateMainScrollableElement(),this.bottomOverlay.needFullRender&&this.bottomOverlay.updateMainScrollableElement();const{wtTable:e}=this,{rootWindow:t}=this.domBindings;"hidden"===t.getComputedStyle(e.wtRootElement.parentNode).getPropertyValue("overflow")?this.scrollableElement=e.holder:this.scrollableElement=(0,i.getScrollableElement)(e.TABLE),this.registerListeners()}destroy(){this.resizeObserver.disconnect(),this.eventManager.destroy(),this.topOverlay.destroy(),this.bottomOverlay.clone&&this.bottomOverlay.destroy(),this.inlineStartOverlay.destroy(),this.topInlineStartCornerOverlay&&this.topInlineStartCornerOverlay.destroy(),this.bottomInlineStartCornerOverlay&&this.bottomInlineStartCornerOverlay.clone&&this.bottomInlineStartCornerOverlay.destroy(),this.destroyed=!0}refresh(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.updateLastSpreaderSize()&&this.adjustElementsSize(),this.bottomOverlay.clone&&this.bottomOverlay.refresh(e),this.inlineStartOverlay.refresh(e),this.topOverlay.refresh(e),this.topInlineStartCornerOverlay&&this.topInlineStartCornerOverlay.refresh(e),this.bottomInlineStartCornerOverlay&&this.bottomInlineStartCornerOverlay.clone&&this.bottomInlineStartCornerOverlay.refresh(e)}updateLastSpreaderSize(){const e=this.wtTable.spreader,t=e.clientWidth,o=e.clientHeight,s=t!==this.spreaderLastSize.width||o!==this.spreaderLastSize.height;return s&&(this.spreaderLastSize.width=t,this.spreaderLastSize.height=o),s}adjustElementsSize(){const{wtViewport:e}=this.wot,{wtTable:t}=this,{rootWindow:o}=this.domBindings,s=this.scrollableElement===o,n=this.wtSettings.getSetting("totalColumns"),i=this.wtSettings.getSetting("totalRows"),r=e.getRowHeaderWidth(),l=e.getColumnHeaderHeight()+this.topOverlay.sumCellSizes(0,i)+1,a=r+this.inlineStartOverlay.sumCellSizes(0,n),h=t.hider.style,c=(()=>!s&&this.scrollableElement.scrollTop>Math.max(0,l-t.holder.clientHeight))()?1:0,u=(()=>!s&&this.scrollableElement.scrollLeft>Math.max(0,a-t.holder.clientWidth))()?1:0;if(h.width=`${a+u}px`,h.height=`${l+c}px`,this.scrollbarSize>0){const{scrollHeight:e,scrollWidth:o}=t.wtRootElement,{scrollHeight:s,scrollWidth:n}=t.holder;this.hasScrollbarRight=e<s,this.hasScrollbarBottom=o<n,this.hasScrollbarRight&&t.hider.scrollWidth+this.scrollbarSize>o?this.hasScrollbarBottom=!0:this.hasScrollbarBottom&&t.hider.scrollHeight+this.scrollbarSize>e&&(this.hasScrollbarRight=!0)}this.topOverlay.adjustElementsSize(),this.inlineStartOverlay.adjustElementsSize(),this.bottomOverlay.adjustElementsSize()}expandHiderVerticallyBy(e){const{wtTable:t}=this;t.hider.style.height=`${parseInt(t.hider.style.height,10)+e}px`}expandHiderHorizontallyBy(e){const{wtTable:t}=this;t.hider.style.width=`${parseInt(t.hider.style.width,10)+e}px`}applyToDOM(){this.wtTable.isVisible()&&(this.topOverlay.applyToDOM(),this.bottomOverlay.clone&&this.bottomOverlay.applyToDOM(),this.inlineStartOverlay.applyToDOM())}getParentOverlay(e){if(!e)return null;const t=[this.topOverlay,this.inlineStartOverlay,this.bottomOverlay,this.topInlineStartCornerOverlay,this.bottomInlineStartCornerOverlay];let o=null;return(0,l.arrayEach)(t,(t=>{t&&t.clone&&t.clone.wtTable.TABLE.contains(e)&&(o=t.clone)})),o}syncOverlayTableClassNames(){const e=this.wtTable.TABLE,t=[this.topOverlay,this.inlineStartOverlay,this.bottomOverlay,this.topInlineStartCornerOverlay,this.bottomInlineStartCornerOverlay];(0,l.arrayEach)(t,(t=>{t&&(t.clone.wtTable.TABLE.className=e.className)}))}}},77140:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=s(o(42715));t.default=class{constructor(e,t){(0,n.default)(this,"nodesPool",null),(0,n.default)(this,"nodeType",void 0),(0,n.default)(this,"rootNode",void 0),(0,n.default)(this,"table",null),(0,n.default)(this,"renderedNodes",0),this.nodesPool="string"==typeof e?new i.default(e):null,this.nodeType=e,this.rootNode=t}setTable(e){this.nodesPool&&this.nodesPool.setRootDocument(e.rootDocument),this.table=e}adjust(){}render(){}}},83553:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(9893),r=o(21682),l=s(o(77140)),a=o(92692);class h extends l.default{constructor(){super("TD"),(0,n.default)(this,"orderViews",new WeakMap),(0,n.default)(this,"sourceRowIndex",0)}obtainOrderView(e){let t;return this.orderViews.has(e)?t=this.orderViews.get(e):(t=new r.SharedOrderView(e,(e=>this.nodesPool.obtain(this.sourceRowIndex,e)),this.nodeType),this.orderViews.set(e,t)),t}render(){const{rowsToRender:e,columnsToRender:t,rows:o,rowHeaders:s}=this.table;for(let l=0;l<e;l++){const e=this.table.renderedRowToSource(l),h=o.getRenderedNode(l);this.sourceRowIndex=e;const c=this.obtainOrderView(h),u=s.obtainOrderView(h);c.prependView(u).setSize(t).setOffset(this.table.renderedColumnToSource(0)).start();for(let o=0;o<t;o++){c.render();const t=c.getCurrentNode(),s=this.table.renderedColumnToSource(o);var n,r;if((0,i.hasClass)(t,"hide")||(t.className=""),t.removeAttribute("style"),t.removeAttribute("dir"),(0,i.removeAttribute)(t,[new RegExp("aria-(.*)"),new RegExp("role")]),this.table.cellRenderer(e,s,t),this.table.isAriaEnabled())(0,i.setAttribute)(t,[...t.hasAttribute("role")?[]:[(0,a.A11Y_GRIDCELL)()],(0,a.A11Y_TABINDEX)(-1),(0,a.A11Y_COLINDEX)(s+(null!==(n=null===(r=this.table.rowUtils)||void 0===r||null===(r=r.dataAccessObject)||void 0===r?void 0:r.rowHeaders.length)&&void 0!==n?n:0)+1)])}c.end()}}}t.default=h},73827:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(77140)),i=o(83119),r=o(28927),l=o(9893);let a=!1;class h extends n.default{constructor(e){super(null,e)}adjust(){const{columnsToRender:e,rowHeadersCount:t}=this.table,o=e+t;for(;this.renderedNodes<o;)this.rootNode.appendChild(this.table.rootDocument.createElement("col")),this.renderedNodes+=1;for(;this.renderedNodes>o;)this.rootNode.removeChild(this.rootNode.lastChild),this.renderedNodes-=1}render(){this.adjust();const{columnsToRender:e,rowHeadersCount:t}=this.table;!a&&e>1e3&&(a=!0,(0,i.warn)(r.toSingleLine`Performance tip: Handsontable rendered more than 1000 visible columns.\x20
32
32
  Consider limiting the number of rendered columns by specifying the table width and/or\x20
33
33
  turning off the "renderAllColumns" option.`));for(let e=0;e<t;e++){const t=this.table.renderedColumnToSource(e),o=this.table.columnUtils.getHeaderWidth(t);this.rootNode.childNodes[e].style.width=`${o}px`}for(let o=0;o<e;o++){const e=this.table.renderedColumnToSource(o),s=this.table.columnUtils.getStretchedColumnWidth(e);this.rootNode.childNodes[o+t].style.width=`${s}px`}const o=this.rootNode.firstChild;o&&(0,l.addClass)(o,"rowHeader")}}t.default=h},85680:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(9893),i=s(o(77140)),r=o(92692);class l extends i.default{constructor(e){super(null,e)}adjust(){const{columnHeadersCount:e,rowHeadersCount:t}=this.table;let o=this.rootNode.firstChild;if(e){const{columnsToRender:s}=this.table,n=s+t;for(let t=0,s=e;t<s;t++){for(o=this.rootNode.childNodes[t],o||(o=this.table.rootDocument.createElement("tr"),this.rootNode.appendChild(o)),this.renderedNodes=o.childNodes.length;this.renderedNodes<n;)o.appendChild(this.table.rootDocument.createElement("th")),this.renderedNodes+=1;for(;this.renderedNodes>n;)o.removeChild(o.lastChild),this.renderedNodes-=1}const i=this.rootNode.childNodes.length;if(i>e)for(let t=e;t<i;t++)this.rootNode.removeChild(this.rootNode.lastChild)}else o&&(0,n.empty)(o)}render(){const{columnHeadersCount:e}=this.table;this.table.isAriaEnabled()&&(0,n.setAttribute)(this.rootNode,[(0,r.A11Y_ROWGROUP)()]);for(let t=0;t<e;t+=1){const{columnHeaderFunctions:e,columnsToRender:o,rowHeadersCount:s}=this.table,i=this.rootNode.childNodes[t];this.table.isAriaEnabled()&&(0,n.setAttribute)(i,[(0,r.A11Y_ROW)(),(0,r.A11Y_ROWINDEX)(t+1)]);for(let l=-1*s;l<o;l+=1){const o=this.table.renderedColumnToSource(l),a=i.childNodes[l+s];a.className="",a.removeAttribute("style"),(0,n.removeAttribute)(a,[new RegExp("aria-(.*)"),new RegExp("role")]),this.table.isAriaEnabled()&&(0,n.setAttribute)(a,[(0,r.A11Y_COLINDEX)(l+1+this.table.rowHeadersCount),(0,r.A11Y_TABINDEX)(-1),(0,r.A11Y_COLUMNHEADER)(),...l>=0?[(0,r.A11Y_SCOPE_COL)()]:[(0,r.A11Y_ROW)()]]),e[t](o,a,t)}}}}t.default=l},20524:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(14348));t.RowHeadersRenderer=n.default;var i=s(o(85680));t.ColumnHeadersRenderer=i.default;var r=s(o(73827));t.ColGroupRenderer=r.default;var l=s(o(88371));t.RowsRenderer=l.default;var a=s(o(83553));t.CellsRenderer=a.default;var h=s(o(67016));t.TableRenderer=h.default;t.Renderer=class{constructor(){let{TABLE:e,THEAD:t,COLGROUP:o,TBODY:s,rowUtils:c,columnUtils:u,cellRenderer:d}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.renderer=new h.default(e,{cellRenderer:d}),this.renderer.setRenderers({rowHeaders:new n.default,columnHeaders:new i.default(t),colGroup:new r.default(o),rows:new l.default(s),cells:new a.default}),this.renderer.setAxisUtils(c,u)}setActiveOverlayName(e){return this.renderer.setActiveOverlayName(e),this}setFilters(e,t){return this.renderer.setFilters(e,t),this}setViewportSize(e,t){return this.renderer.setViewportSize(e,t),this}setHeaderContentRenderers(e,t){return this.renderer.setHeaderContentRenderers(e,t),this}adjust(){this.renderer.adjust()}render(){this.renderer.render()}}},14348:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(21682),r=s(o(77140)),l=o(9893),a=o(92692);class h extends r.default{constructor(){super("TH"),(0,n.default)(this,"orderViews",new WeakMap),(0,n.default)(this,"sourceRowIndex",0)}obtainOrderView(e){let t;return this.orderViews.has(e)?t=this.orderViews.get(e):(t=new i.SharedOrderView(e,(e=>this.nodesPool.obtain(this.sourceRowIndex,e)),this.nodeType),this.orderViews.set(e,t)),t}render(){const{rowsToRender:e,rowHeaderFunctions:t,rowHeadersCount:o,rows:s,cells:n}=this.table;for(let i=0;i<e;i++){const e=this.table.renderedRowToSource(i),r=s.getRenderedNode(i);this.sourceRowIndex=e;const h=this.obtainOrderView(r),c=n.obtainOrderView(r);h.appendView(c).setSize(o).setOffset(this.table.renderedColumnToSource(0)).start();for(let s=0;s<o;s++){h.render();const o=h.getCurrentNode();o.className="",o.removeAttribute("style"),(0,l.removeAttribute)(o,[new RegExp("aria-(.*)"),new RegExp("role")]),this.table.isAriaEnabled()&&(0,l.setAttribute)(o,[(0,a.A11Y_ROWHEADER)(),(0,a.A11Y_SCOPE_ROW)(),(0,a.A11Y_COLINDEX)(s+1),(0,a.A11Y_TABINDEX)(-1)]),t[s](e,o,s)}h.end()}}}t.default=h},88371:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=s(o(77140)),r=o(83119),l=o(28927),a=o(21682),h=o(9893),c=o(92692);const u="ht__row_even",d="ht__row_odd";let g=!1;class f extends i.default{constructor(e){super("TR",e),(0,n.default)(this,"orderView",void 0),this.orderView=new a.OrderView(e,(e=>this.nodesPool.obtain(e)),this.nodeType)}getRenderedNode(e){return this.orderView.getNode(e)}render(){const{rowsToRender:e}=this.table;!g&&e>1e3&&(g=!0,(0,r.warn)(l.toSingleLine`Performance tip: Handsontable rendered more than 1000 visible rows.\x20
34
34
  Consider limiting the number of rendered rows by specifying the table height and/or\x20
35
- turning off the "renderAllRows" option.`)),this.table.isAriaEnabled()&&(0,h.setAttribute)(this.rootNode,[(0,c.A11Y_ROWGROUP)()]),this.orderView.setSize(e).setOffset(this.table.renderedRowToSource(0)).start();for(let s=0;s<e;s++){this.orderView.render();const e=this.orderView.getCurrentNode(),n=this.table.renderedRowToSource(s);var t,o;if(this.table.isAriaEnabled())(0,h.setAttribute)(e,[(0,c.A11Y_ROW)(),(0,c.A11Y_ROWINDEX)(n+(null!==(t=null===(o=this.table.rowUtils)||void 0===o||null===(o=o.dataAccessObject)||void 0===o?void 0:o.columnHeaders.length)&&void 0!==t?t:0)+1)]);(0,h.removeClass)(e,[u,d]),(n+1)%2==0?(0,h.addClass)(e,u):(0,h.addClass)(e,d)}this.orderView.end()}}t.default=f},67016:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(e){let{cellRenderer:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,n.default)(this,"rootNode",void 0),(0,n.default)(this,"rootDocument",void 0),(0,n.default)(this,"rowHeaders",null),(0,n.default)(this,"columnHeaders",null),(0,n.default)(this,"colGroup",null),(0,n.default)(this,"rows",null),(0,n.default)(this,"cells",null),(0,n.default)(this,"rowFilter",null),(0,n.default)(this,"columnFilter",null),(0,n.default)(this,"rowUtils",null),(0,n.default)(this,"columnUtils",null),(0,n.default)(this,"rowsToRender",0),(0,n.default)(this,"columnsToRender",0),(0,n.default)(this,"rowHeaderFunctions",[]),(0,n.default)(this,"rowHeadersCount",0),(0,n.default)(this,"columnHeaderFunctions",[]),(0,n.default)(this,"columnHeadersCount",0),(0,n.default)(this,"cellRenderer",void 0),(0,n.default)(this,"activeOverlayName",void 0),this.rootNode=e,this.rootDocument=this.rootNode.ownerDocument,this.cellRenderer=t}setActiveOverlayName(e){this.activeOverlayName=e}setAxisUtils(e,t){this.rowUtils=e,this.columnUtils=t}setViewportSize(e,t){this.rowsToRender=e,this.columnsToRender=t}setFilters(e,t){this.rowFilter=e,this.columnFilter=t}setHeaderContentRenderers(e,t){this.rowHeaderFunctions=e,this.rowHeadersCount=e.length,this.columnHeaderFunctions=t,this.columnHeadersCount=t.length}setRenderers(){let{rowHeaders:e,columnHeaders:t,colGroup:o,rows:s,cells:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.setTable(this),t.setTable(this),o.setTable(this),s.setTable(this),n.setTable(this),this.rowHeaders=e,this.columnHeaders=t,this.colGroup=o,this.rows=s,this.cells=n}renderedRowToSource(e){return this.rowFilter.renderedToSource(e)}renderedColumnToSource(e){return this.columnFilter.renderedToSource(e)}isAriaEnabled(){return this.rowUtils.wtSettings.getSetting("ariaTags")}render(){this.colGroup.adjust(),this.columnHeaders.adjust(),this.rows.adjust(),this.rowHeaders.adjust(),this.columnHeaders.render(),this.rows.render(),this.rowHeaders.render(),this.cells.render(),this.columnUtils.calculateWidths(),this.colGroup.render();const{rowsToRender:e,rows:t}=this;for(let o=0;o<e;o++){const e=t.getRenderedNode(o);if(e.firstChild){const t=this.renderedRowToSource(o),s=this.rowUtils.getHeightByOverlayName(t,this.activeOverlayName);e.firstChild.style.height=s?s-1+"px":""}}}}},61677:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(9893);function r(e,t){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.add(e)}function l(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var a=new WeakSet;function h(e){const{wtSettings:t,inlineStartOverlay:o,wtTable:s,wtViewport:n,totalColumns:r,rootWindow:l}=this.dataAccessObject;if(o.mainTableScrollableElement===l){let a=null;if(t.getSetting("rtlMode")){const e=s.TABLE.getBoundingClientRect(),t=this.dataAccessObject.rootWindow.document.documentElement.offsetWidth;a=Math.abs(e.right-t)}else{a=(0,i.offset)(s.wtRootElement).left}const h=Math.abs((0,i.getScrollLeft)(l,l));if(a>h){const t=(0,i.innerWidth)(l);let s=n.getRowHeaderWidth();for(let n=1;n<=r;n++)if(s+=o.sumCellSizes(n-1,n),a+s-h>=t){e=n-2;break}}}return e}function c(e){const{topOverlay:t,wtTable:o,wtViewport:s,totalRows:n,rootWindow:r}=this.dataAccessObject;if(t.mainTableScrollableElement===r){const l=(0,i.offset)(o.wtRootElement),a=(0,i.getScrollTop)(r,r);if(l.top>a){const o=(0,i.innerHeight)(r);let h=s.getColumnHeaderHeight();for(let s=1;s<=n;s++)if(h+=t.sumCellSizes(s-1,s),l.top+h-a>=o){e=s-2;break}}}return e}t.default=class{constructor(e){r(this,a),(0,n.default)(this,"dataAccessObject",void 0),this.dataAccessObject=e}scrollViewport(e,t,o,s,n){const i=this.scrollViewportHorizontally(e.col,o,n),r=this.scrollViewportVertically(e.row,t,s);return i||r}scrollViewportHorizontally(e,t,o){const{drawn:s,totalColumns:n}=this.dataAccessObject;if(!s||!Number.isInteger(e)||e<0||e>n)return!1;const i=void 0===t&&void 0===o,{fixedColumnsStart:r,inlineStartOverlay:l}=this.dataAccessObject;if(i&&e<r)return!1;if(e=this.dataAccessObject.wtSettings.getSetting("onBeforeViewportScrollHorizontally",e),!Number.isInteger(e)||e<0||e>n)return!1;const a=this.getFirstVisibleColumn(),h=this.getLastVisibleColumn();let c=!1;return(i&&(e<a||e>h)||!i)&&(c=l.scrollTo(e,i?e>=this.getLastPartiallyVisibleColumn():t)),c}scrollViewportVertically(e,t,o){const{drawn:s,totalRows:n}=this.dataAccessObject;if(!s||!Number.isInteger(e)||e<0||e>n)return!1;const i=void 0===t&&void 0===o,{fixedRowsBottom:r,fixedRowsTop:l,topOverlay:a}=this.dataAccessObject;if(i&&(e<l||e>n-r-1))return!1;if(e=this.dataAccessObject.wtSettings.getSetting("onBeforeViewportScrollVertically",e),!Number.isInteger(e)||e<0||e>n)return!1;const h=this.getFirstVisibleRow(),c=this.getLastVisibleRow();let u=!1;return(i&&(e<h||e>c)||!i)&&(u=a.scrollTo(e,i?e>=this.getLastPartiallyVisibleRow():o)),u}getFirstVisibleRow(){return this.dataAccessObject.wtTable.getFirstVisibleRow()}getLastVisibleRow(){return l(a,this,c).call(this,this.dataAccessObject.wtTable.getLastVisibleRow())}getFirstPartiallyVisibleRow(){return this.dataAccessObject.wtTable.getFirstPartiallyVisibleRow()}getLastPartiallyVisibleRow(){return l(a,this,c).call(this,this.dataAccessObject.wtTable.getLastPartiallyVisibleRow())}getFirstVisibleColumn(){return this.dataAccessObject.wtTable.getFirstVisibleColumn()}getLastVisibleColumn(){return l(a,this,h).call(this,this.dataAccessObject.wtTable.getLastVisibleColumn())}getFirstPartiallyVisibleColumn(){return this.dataAccessObject.wtTable.getFirstPartiallyVisibleColumn()}getLastPartiallyVisibleColumn(){return l(a,this,h).call(this,this.dataAccessObject.wtTable.getLastPartiallyVisibleColumn())}}},15934:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(9893),n=o(79729),i=o(13911),r=o(28890),l=o(30563);t.default=class{constructor(e,t){t&&(this.eventManager=e.eventManager,this.instance=e,this.wot=e,this.settings=t,this.mouseDown=!1,this.main=null,this.top=null,this.bottom=null,this.start=null,this.end=null,this.topStyle=null,this.bottomStyle=null,this.startStyle=null,this.endStyle=null,this.cornerDefaultStyle=l.CORNER_DEFAULT_STYLE,this.cornerCenterPointOffset=-parseInt(this.cornerDefaultStyle.width,10)/2,this.corner=null,this.cornerStyle=null,this.createBorders(t),this.registerListeners())}registerListeners(){const e=this.wot.rootDocument.body;this.eventManager.addEventListener(e,"mousedown",(()=>this.onMouseDown())),this.eventManager.addEventListener(e,"mouseup",(()=>this.onMouseUp()));for(let e=0,t=this.main.childNodes.length;e<t;e++){const t=this.main.childNodes[e];this.eventManager.addEventListener(t,"mouseenter",(t=>this.onMouseEnter(t,this.main.childNodes[e])))}}onMouseDown(){this.mouseDown=!0}onMouseUp(){this.mouseDown=!1}onMouseEnter(e,t){if(!this.mouseDown||!this.wot.getSetting("hideBorderOnMouseDownOver"))return;e.preventDefault(),(0,n.stopImmediatePropagation)(e);const o=this,s=this.wot.rootDocument.body,i=t.getBoundingClientRect();t.style.display="none",this.eventManager.addEventListener(s,"mousemove",(function e(n){var r;((r=n).clientY<Math.floor(i.top)||r.clientY>Math.ceil(i.top+i.height)||r.clientX<Math.floor(i.left)||r.clientX>Math.ceil(i.left+i.width))&&(o.eventManager.removeEventListener(s,"mousemove",e),t.style.display="block")}))}createBorders(e){const{rootDocument:t}=this.wot;this.main=t.createElement("div");const o=["top","start","bottom","end","corner"];let s=this.main.style;s.position="absolute",s.top=0,s.left=0;for(let n=0;n<5;n++){const i=o[n],r=t.createElement("div");r.className=`wtBorder ${this.settings.className||""}`,this.settings[i]&&this.settings[i].hide&&(r.className+=" hidden"),s=r.style,s.backgroundColor=this.settings[i]&&this.settings[i].color?this.settings[i].color:e.border.color,s.height=this.settings[i]&&this.settings[i].width?`${this.settings[i].width}px`:`${e.border.width}px`,s.width=this.settings[i]&&this.settings[i].width?`${this.settings[i].width}px`:`${e.border.width}px`,this.main.appendChild(r)}this.top=this.main.childNodes[0],this.start=this.main.childNodes[1],this.bottom=this.main.childNodes[2],this.end=this.main.childNodes[3],this.topStyle=this.top.style,this.startStyle=this.start.style,this.bottomStyle=this.bottom.style,this.endStyle=this.end.style,this.corner=this.main.childNodes[4],this.corner.className+=" corner",this.cornerStyle=this.corner.style,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.height=this.cornerDefaultStyle.height,this.cornerStyle.border=[this.cornerDefaultStyle.borderWidth,this.cornerDefaultStyle.borderStyle,this.cornerDefaultStyle.borderColor].join(" "),(0,r.isMobileBrowser)()&&this.instance.getSetting("isDataViewInstance")&&this.createMultipleSelectorHandles(),this.disappear();const{wtTable:n}=this.wot;let i=n.bordersHolder;i||(i=t.createElement("div"),i.className="htBorders",n.bordersHolder=i,n.spreader.appendChild(i)),i.appendChild(this.main)}createMultipleSelectorHandles(){const{rootDocument:e}=this.wot;this.selectionHandles={top:e.createElement("DIV"),topHitArea:e.createElement("DIV"),bottom:e.createElement("DIV"),bottomHitArea:e.createElement("DIV")};this.selectionHandles.top.className="topSelectionHandle topLeftSelectionHandle",this.selectionHandles.topHitArea.className="topSelectionHandle-HitArea topLeftSelectionHandle-HitArea",this.selectionHandles.bottom.className="bottomSelectionHandle bottomRightSelectionHandle",this.selectionHandles.bottomHitArea.className="bottomSelectionHandle-HitArea bottomRightSelectionHandle-HitArea",this.selectionHandles.styles={top:this.selectionHandles.top.style,topHitArea:this.selectionHandles.topHitArea.style,bottom:this.selectionHandles.bottom.style,bottomHitArea:this.selectionHandles.bottomHitArea.style};const t={position:"absolute",height:"40px",width:"40px","border-radius":`${parseInt(40/1.5,10)}px`};(0,i.objectEach)(t,((e,t)=>{this.selectionHandles.styles.bottomHitArea[t]=e,this.selectionHandles.styles.topHitArea[t]=e}));const o={position:"absolute",height:"10px",width:"10px","border-radius":`${parseInt(10/1.5,10)}px`,background:"#F5F5FF",border:"1px solid #4285c8"};(0,i.objectEach)(o,((e,t)=>{this.selectionHandles.styles.bottom[t]=e,this.selectionHandles.styles.top[t]=e})),this.main.appendChild(this.selectionHandles.top),this.main.appendChild(this.selectionHandles.bottom),this.main.appendChild(this.selectionHandles.topHitArea),this.main.appendChild(this.selectionHandles.bottomHitArea)}isPartRange(e,t){const o=this.wot.selectionManager.getAreaSelection();return!(!o.cellRange||e===o.cellRange.to.row&&t===o.cellRange.to.col)}updateMultipleSelectionHandlesPosition(e,t,o,s,n,i){const r=this.wot.wtSettings.getSetting("rtlMode")?"right":"left",{top:l,topHitArea:a,bottom:h,bottomHitArea:c}=this.selectionHandles.styles,u=parseInt(l.borderWidth,10),d=parseInt(l.width,10),g=parseInt(a.width,10),f=this.wot.wtTable.getWidth(),p=this.wot.wtTable.getHeight();l.top=`${parseInt(o-d-1,10)}px`,l[r]=`${parseInt(s-d-1,10)}px`,a.top=`${parseInt(o-g/4*3,10)}px`,a[r]=`${parseInt(s-g/4*3,10)}px`;const m=Math.min(parseInt(s+n,10),f-d-2*u),w=Math.min(parseInt(s+n-g/4,10),f-g-2*u);h[r]=`${m}px`,c[r]=`${w}px`;const C=Math.min(parseInt(o+i,10),p-d-2*u),v=Math.min(parseInt(o+i-g/4,10),p-g-2*u);h.top=`${C}px`,c.top=`${v}px`,this.settings.border.cornerVisible&&this.settings.border.cornerVisible()?(l.display="block",a.display="block",this.isPartRange(e,t)?(h.display="none",c.display="none"):(h.display="block",c.display="block")):(l.display="none",h.display="none",a.display="none",c.display="none"),e===this.wot.wtSettings.getSetting("fixedRowsTop")||t===this.wot.wtSettings.getSetting("fixedColumnsStart")?(l.zIndex="9999",a.zIndex="9999"):(l.zIndex="",a.zIndex="")}appear(e){if(this.disabled)return;const{wtTable:t,rootDocument:o,rootWindow:n}=this.wot;let i,l,a,h,c,u;const d=t.getRenderedRowsCount();for(let o=0;o<d;o+=1){const s=t.rowFilter.renderedToSource(o);if(s>=e[0]&&s<=e[2]){i=s,c=e[0];break}}for(let o=d-1;o>=0;o-=1){const s=t.rowFilter.renderedToSource(o);if(s>=e[0]&&s<=e[2]){l=s;break}}const g=t.getRenderedColumnsCount();for(let o=0;o<g;o+=1){const s=t.columnFilter.renderedToSource(o);if(s>=e[1]&&s<=e[3]){a=s,u=e[1];break}}for(let o=g-1;o>=0;o-=1){const s=t.columnFilter.renderedToSource(o);if(s>=e[1]&&s<=e[3]){h=s;break}}if(void 0===i||void 0===a)return void this.disappear();let f=t.getCell(this.wot.createCellCoords(i,a));const p=i!==l||a!==h,m=p?t.getCell(this.wot.createCellCoords(l,h)):f,w=(0,s.offset)(f),C=p?(0,s.offset)(m):w,v=(0,s.offset)(t.TABLE),y=(0,s.outerWidth)(t.TABLE),E=w.top,S=w.left,R=this.wot.wtSettings.getSetting("rtlMode");let b=0,_=0;if(R){const e=(0,s.outerWidth)(f),t=n.innerWidth-v.left-y;_=S+e-C.left,b=n.innerWidth-S-e-t-1}else _=C.left+(0,s.outerWidth)(m)-S,b=S-v.left-1;if(this.isEntireColumnSelected(i,l)){const e=this.getDimensionsFromHeader("columns",a,h,c,v);let t=null;e&&([t,b,_]=e),t&&(f=t)}let T=E-v.top-1,M=C.top+(0,s.outerHeight)(m)-E;if(this.isEntireRowSelected(a,h)){const e=this.getDimensionsFromHeader("rows",i,l,u,v);let t=null;e&&([t,T,M]=e),t&&(f=t)}const O=(0,s.getComputedStyle)(f,n);parseInt(O.borderTopWidth,10)>0&&(T+=1,M=M>0?M-1:0),parseInt(O[R?"borderRightWidth":"borderLeftWidth"],10)>0&&(b+=1,_=_>0?_-1:0);const I=R?"right":"left";this.topStyle.top=`${T}px`,this.topStyle[I]=`${b}px`,this.topStyle.width=`${_}px`,this.topStyle.display="block",this.startStyle.top=`${T}px`,this.startStyle[I]=`${b}px`,this.startStyle.height=`${M}px`,this.startStyle.display="block";const N=Math.floor(this.settings.border.width/2);this.bottomStyle.top=T+M-N+"px",this.bottomStyle[I]=`${b}px`,this.bottomStyle.width=`${_}px`,this.bottomStyle.display="block",this.endStyle.top=`${T}px`,this.endStyle[I]=b+_-N+"px",this.endStyle.height=`${M+1}px`,this.endStyle.display="block";let A=this.settings.border.cornerVisible;A="function"==typeof A?A(this.settings.layerLevel):A;const P=this.wot.getSetting("onModifyGetCellCoords",l,h);let[x,H]=[l,h];if(P&&Array.isArray(P)&&([,,x,H]=P),(0,r.isMobileBrowser)()||!A||this.isPartRange(x,H))this.cornerStyle.display="none";else{this.cornerStyle.top=T+M+this.cornerCenterPointOffset-1+"px",this.cornerStyle[I]=b+_+this.cornerCenterPointOffset-1+"px",this.cornerStyle.borderRightWidth=this.cornerDefaultStyle.borderWidth,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.display="none";let e=(0,s.getTrimmingContainer)(t.TABLE);const i=e===n;i&&(e=o.documentElement);const r=parseInt(this.cornerDefaultStyle.width,10)/2,a=parseInt(this.cornerDefaultStyle.height,10)/2;if(h===this.wot.getSetting("totalColumns")-1){const t=i?m.getBoundingClientRect().left:m.offsetLeft;let o=!1,n=0;R?(n=t-parseInt(this.cornerDefaultStyle.width,10)/2,o=n<0):(n=t+(0,s.outerWidth)(m)+parseInt(this.cornerDefaultStyle.width,10)/2,o=n>=(0,s.innerWidth)(e)),o&&(this.cornerStyle[I]=`${Math.floor(b+_+this.cornerCenterPointOffset-r)}px`,this.cornerStyle[R?"borderLeftWidth":"borderRightWidth"]=0)}if(l===this.wot.getSetting("totalRows")-1){(i?m.getBoundingClientRect().top:m.offsetTop)+(0,s.outerHeight)(m)+parseInt(this.cornerDefaultStyle.height,10)/2>=(0,s.innerHeight)(e)&&(this.cornerStyle.top=`${Math.floor(T+M+this.cornerCenterPointOffset-a)}px`,this.cornerStyle.borderBottomWidth=0)}this.cornerStyle.display="block"}(0,r.isMobileBrowser)()&&this.instance.getSetting("isDataViewInstance")&&this.updateMultipleSelectionHandlesPosition(l,h,T,b,_,M)}isEntireColumnSelected(e,t){return e===this.wot.wtTable.getFirstRenderedRow()&&t===this.wot.wtTable.getLastRenderedRow()}isEntireRowSelected(e,t){return e===this.wot.wtTable.getFirstRenderedColumn()&&t===this.wot.wtTable.getLastRenderedColumn()}getDimensionsFromHeader(e,t,o,n,i){const{wtTable:r}=this.wot,l=r.wtRootElement.parentNode;let a=null,h=null,c=null,u=null,d=null,g=null,f=null,p=null;switch(e){case"rows":a=function(){return r.getRowHeader(...arguments)},h=function(){return(0,s.outerHeight)(...arguments)},c="ht__selection--rows",g="top";break;case"columns":a=function(){return r.getColumnHeader(...arguments)},h=function(){return(0,s.outerWidth)(...arguments)},c="ht__selection--columns",g="left"}if(l.classList.contains(c)){const e=this.wot.getSetting("columnHeaders").length;if(f=a(t,e-n),p=a(o,e-n),!f||!p)return!1;const r=(0,s.offset)(f),l=(0,s.offset)(p);return f&&p&&(u=r[g]-i[g]-1,d=l[g]+h(p)-r[g]),[f,u,d]}return!1}changeBorderStyle(e,t){const o=this[e].style,n=t[e];!n||n.hide?(0,s.addClass)(this[e],"hidden"):((0,s.hasClass)(this[e],"hidden")&&(0,s.removeClass)(this[e],"hidden"),o.backgroundColor=n.color,"top"!==e&&"bottom"!==e||(o.height=`${n.width}px`),"start"!==e&&"end"!==e||(o.width=`${n.width}px`))}changeBorderToDefaultStyle(e){const t=1,o="#000",s=this[e].style;s.backgroundColor=o,s.width=`${t}px`,s.height=`${t}px`}toggleHiddenClass(e,t){this.changeBorderToDefaultStyle(e),t?(0,s.addClass)(this[e],"hidden"):(0,s.removeClass)(this[e],"hidden")}disappear(){this.topStyle.display="none",this.bottomStyle.display="none",this.startStyle.display="none",this.endStyle.display="none",this.cornerStyle.display="none",(0,r.isMobileBrowser)()&&this.instance.getSetting("isDataViewInstance")&&(this.selectionHandles.styles.top.display="none",this.selectionHandles.styles.topHitArea.display="none",this.selectionHandles.styles.bottom.display="none",this.selectionHandles.styles.bottomHitArea.display="none")}destroy(){this.eventManager.destroyWithOwnEventsOnly(),this.main.parentNode.removeChild(this.main)}}},30563:(e,t)=>{"use strict";t.__esModule=!0;t.CORNER_DEFAULT_STYLE=Object.freeze({width:"6px",height:"6px",borderWidth:"1px",borderStyle:"solid",borderColor:"#FFF"})},30782:(e,t)=>{"use strict";t.__esModule=!0;t.ACTIVE_HEADER_TYPE="active-header",t.HEADER_TYPE="header",t.AREA_TYPE="area",t.FOCUS_TYPE="focus",t.FILL_TYPE="fill",t.ROW_TYPE="row",t.COLUMN_TYPE="column",t.CUSTOM_SELECTION_TYPE="custom-selection"},98779:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n={SelectionManager:!0,Selection:!0},i=s(o(8313));t.Selection=i.default;var r=o(30782);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(n,e)||e in t&&t[e]===r[e]||(t[e]=r[e]))}));var l=o(30563);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(n,e)||e in t&&t[e]===l[e]||(t[e]=l[e]))}));var a=o(42492);t.SelectionManager=a.SelectionManager},42492:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724),o(25352),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var n=o(9893),i=o(51785),r=s(o(15934));function l(e,t,o){a(e,t),t.set(e,o)}function a(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function h(e,t){return e.get(u(e,t))}function c(e,t,o){return e.set(u(e,t),o),o}function u(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var d=new WeakMap,g=new WeakMap,f=new WeakMap,p=new WeakMap,m=new WeakMap,w=new WeakMap,C=new WeakSet;function v(){const e=h(p,this).get(h(d,this)),t=h(d,this).wtSettings.getSetting("onBeforeRemoveCellClassNames");if(Array.isArray(t))for(let o=0;o<t.length;o++)e.add(t[o]);e.forEach((e=>{var t,o;const s=h(d,this).wtTable.TABLE.querySelectorAll(`.${e}`);let i=[];Array.isArray(null===(t=h(g,this).options)||void 0===t?void 0:t.cellAttributes)&&(i=h(g,this).options.cellAttributes.map((e=>e[0]))),Array.isArray(null===(o=h(g,this).options)||void 0===o?void 0:o.headerAttributes)&&(i=[...i,...h(g,this).options.headerAttributes.map((e=>e[0]))]);for(let t=0,o=s.length;t<o;t++)(0,n.removeClass)(s[t],e),(0,n.removeAttribute)(s[t],i)})),e.clear()}t.SelectionManager=class{constructor(e){var t,o;a(t=this,o=C),o.add(t),l(this,d,void 0),l(this,g,void 0),l(this,f,new i.SelectionScanner),l(this,p,new WeakMap),l(this,m,new WeakSet),l(this,w,new Map),c(g,this,e)}setActiveOverlay(e){return c(d,this,e),h(f,this).setActiveOverlay(h(d,this)),h(p,this).has(h(d,this))||h(p,this).set(h(d,this),new Set),this}getFocusSelection(){return null!==h(g,this)?h(g,this).getFocus():null}getAreaSelection(){return null!==h(g,this)?h(g,this).createLayeredArea():null}getBorderInstance(e){if(!e.settings.border)return null;if(h(w,this).has(e)){const t=h(w,this).get(e);if(t.has(h(d,this)))return t.get(h(d,this));const o=new r.default(h(d,this),e.settings);return t.set(h(d,this),o),o}const t=new r.default(h(d,this),e.settings);return h(w,this).set(e,new Map([[h(d,this),t]])),t}getBorderInstances(e){var t,o;return Array.from(null!==(t=null===(o=h(w,this).get(e))||void 0===o?void 0:o.values())&&void 0!==t?t:[])}destroyBorders(e){h(w,this).get(e).forEach((e=>e.destroy())),h(w,this).delete(e)}render(e){if(null===h(g,this))return;e&&u(C,this,v).call(this);const t=Array.from(h(g,this)),o=new Map,s=new Map;for(let e=0;e<t.length;e++){const n=t[e],{className:i,headerAttributes:r,createLayers:l,selectionType:a}=n.settings;h(m,this).has(n)||(h(m,this).add(n),n.addLocalHook("destroy",(()=>this.destroyBorders(n))));const c=this.getBorderInstance(n);if(n.isEmpty()){null==c||c.disappear();continue}if(i){h(f,this).setActiveSelection(n).scan().forEach((e=>{if(o.has(e)){const t=o.get(e);t.has(i)&&!0===l?t.set(i,t.get(i)+1):t.set(i,1)}else o.set(e,new Map([[i,1]]));r&&(s.has(e)||s.set(e,[]),"TH"===e.nodeName&&s.get(e).push(...r))}))}const u=n.getCorners();h(d,this).getSetting("onBeforeDrawBorders",u,a),null==c||c.appear(u)}o.forEach(((e,t)=>{var o;const s=Array.from(e).map((e=>{let[t,o]=e;return 1===o?t:[t,...Array.from({length:o-1},((e,o)=>`${t}-${o+1}`))]})).flat();s.forEach((e=>h(p,this).get(h(d,this)).add(e))),(0,n.addClass)(t,s),"TD"===t.nodeName&&Array.isArray(null===(o=h(g,this).options)||void 0===o?void 0:o.cellAttributes)&&(0,n.setAttribute)(t,h(g,this).options.cellAttributes)})),Array.from(s.keys()).forEach((e=>{(0,n.setAttribute)(e,[...s.get(e)])}))}}},51785:(e,t,o)=>{"use strict";t.__esModule=!0,o(67834),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var s=o(9893);function n(e,t,o){i(e,t),t.set(e,o)}function i(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function r(e,t){return e.get(a(e,t))}function l(e,t,o){return e.set(a(e,t),o),o}function a(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var h=new WeakMap,c=new WeakMap,u=new WeakSet;function d(e){const{wtTable:t}=r(c,this),o=t.getRenderedRowsCount(),s=t.getRenderedColumnsCount();for(let n=0;n<o;n+=1){const o=t.rowFilter.renderedToSource(n);for(let n=0;n<s;n+=1)e(o,t.columnFilter.renderedToSource(n))}}t.SelectionScanner=class{constructor(){var e,t;i(e=this,t=u),t.add(e),n(this,h,void 0),n(this,c,void 0)}setActiveOverlay(e){return l(c,this,e),this}setActiveSelection(e){return l(h,this,e),this}scan(){const e=r(h,this).settings.selectionType,t=new Set;return"active-header"===e?(this.scanColumnsInHeadersRange((e=>t.add(e))),this.scanRowsInHeadersRange((e=>t.add(e)))):"area"===e?this.scanCellsRange((e=>t.add(e))):"focus"===e?(this.scanColumnsInHeadersRange((e=>t.add(e))),this.scanRowsInHeadersRange((e=>t.add(e))),this.scanCellsRange((e=>t.add(e)))):"fill"===e?this.scanCellsRange((e=>t.add(e))):"header"===e?(this.scanColumnsInHeadersRange((e=>t.add(e))),this.scanRowsInHeadersRange((e=>t.add(e)))):"row"===e?(this.scanRowsInHeadersRange((e=>t.add(e))),this.scanRowsInCellsRange((e=>t.add(e)))):"column"===e&&(this.scanColumnsInHeadersRange((e=>t.add(e))),this.scanColumnsInCellsRange((e=>t.add(e)))),t}scanColumnsInHeadersRange(e){const[t,o,s,n]=r(h,this).getCorners(),{wtTable:i}=r(c,this),l=i.getRenderedColumnsCount(),a=i.getColumnHeadersCount();let u=0;for(let d=-i.getRowHeadersCount();d<l;d++){const l=i.columnFilter.renderedToSource(d);if(!(l<o||l>n)){for(let d=-a;d<0;d++){if(d<t||d>s)continue;const g=d+a;let f=i.getColumnHeader(l,g);const p=r(c,this).getSetting("onBeforeHighlightingColumnHeader",l,g,{selectionType:r(h,this).settings.selectionType,columnCursor:u,selectionWidth:n-o+1});null!==p&&(p!==l&&(f=i.getColumnHeader(p,g)),e(f))}u+=1}}}scanRowsInHeadersRange(e){const[t,o,s,n]=r(h,this).getCorners(),{wtTable:i}=r(c,this),l=i.getRenderedRowsCount(),a=i.getRowHeadersCount();let u=0;for(let d=-i.getColumnHeadersCount();d<l;d++){const l=i.rowFilter.renderedToSource(d);if(!(l<t||l>s)){for(let d=-a;d<0;d++){if(d<o||d>n)continue;const g=d+a;let f=i.getRowHeader(l,g);const p=r(c,this).getSetting("onBeforeHighlightingRowHeader",l,g,{selectionType:r(h,this).settings.selectionType,rowCursor:u,selectionHeight:s-t+1});null!==p&&(p!==l&&(f=i.getRowHeader(p,g)),e(f))}u+=1}}}scanCellsRange(e){const[t,o,n,i]=r(h,this).getCorners(),{wtTable:l}=r(c,this);a(u,this,d).call(this,((a,u)=>{if(a>=t&&a<=n&&u>=o&&u<=i){const t=l.getCell(r(c,this).createCellCoords(a,u)),o=r(c,this).getSetting("onAfterDrawSelection",a,u,r(h,this).settings.layerLevel);"string"==typeof o&&(0,s.addClass)(t,o),e(t)}}))}scanRowsInCellsRange(e){const[t,,o]=r(h,this).getCorners(),{wtTable:s}=r(c,this);a(u,this,d).call(this,((n,i)=>{if(n>=t&&n<=o){const t=s.getCell(r(c,this).createCellCoords(n,i));e(t)}}))}scanColumnsInCellsRange(e){const[,t,,o]=r(h,this).getCorners(),{wtTable:s}=r(c,this);a(u,this,d).call(this,((n,i)=>{if(i>=t&&i<=o){const t=s.getCell(r(c,this).createCellCoords(n,i));e(t)}}))}}},8313:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(13911),i=s(o(63870));class r{constructor(e,t){this.settings=e,this.cellRange=t||null}isEmpty(){return null===this.cellRange}add(e){return this.isEmpty()?this.cellRange=this.settings.createCellRange(e):this.cellRange.expand(e),this}replace(e,t){if(!this.isEmpty()){if(this.cellRange.from.isEqual(e))return this.cellRange.from=t,!0;if(this.cellRange.to.isEqual(e))return this.cellRange.to=t,!0}return!1}clear(){return this.cellRange=null,this}getCorners(){const e=this.cellRange.getOuterTopStartCorner(),t=this.cellRange.getOuterBottomEndCorner();return[e.row,e.col,t.row,t.col]}destroy(){this.runLocalHooks("destroy")}}(0,n.mixin)(r,i.default);t.default=r},47241:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(9893),r=o(13911);t.default=class{constructor(e){(0,n.default)(this,"settings",{}),(0,n.default)(this,"defaults",Object.freeze(this.getDefaults())),(0,r.objectEach)(this.defaults,((t,o)=>{if(void 0!==e[o])this.settings[o]=e[o];else{if(void 0===t)throw new Error(`A required setting "${o}" was not provided`);this.settings[o]=t}}))}getDefaults(){return{facade:void 0,table:void 0,isDataViewInstance:!0,externalRowCalculator:!1,stretchH:"none",currentRowClassName:null,currentColumnClassName:null,preventOverflow:()=>!1,preventWheel:!1,data:void 0,freezeOverlays:!1,fixedColumnsStart:0,fixedRowsTop:0,fixedRowsBottom:0,shouldRenderInlineStartOverlay:()=>this.getSetting("fixedColumnsStart")>0||this.getSetting("rowHeaders").length>0,shouldRenderTopOverlay:()=>this.getSetting("fixedRowsTop")>0||this.getSetting("columnHeaders").length>0,shouldRenderBottomOverlay:()=>this.getSetting("fixedRowsBottom")>0,minSpareRows:0,rowHeaders:()=>[],columnHeaders:()=>[],totalRows:void 0,totalColumns:void 0,cellRenderer:(e,t,o)=>{const s=this.getSetting("data",e,t);(0,i.fastInnerText)(o,null==s?"":s)},columnWidth(){},rowHeight(){},rowHeightByOverlayName(){},defaultRowHeight:23,defaultColumnWidth:50,selections:null,hideBorderOnMouseDownOver:!1,viewportRowCalculatorOverride:null,viewportColumnCalculatorOverride:null,onCellMouseDown:null,onCellContextMenu:null,onCellMouseOver:null,onCellMouseOut:null,onCellMouseUp:null,onCellDblClick:null,onCellCornerMouseDown:null,onCellCornerDblClick:null,beforeDraw:null,onDraw:null,onBeforeRemoveCellClassNames:null,onAfterDrawSelection:null,onBeforeDrawBorders:null,onBeforeViewportScrollHorizontally:e=>e,onBeforeViewportScrollVertically:e=>e,onScrollHorizontally:null,onScrollVertically:null,onBeforeTouchScroll:null,onAfterMomentumScroll:null,onBeforeStretchingColumnWidth:e=>e,onModifyRowHeaderWidth:null,onModifyGetCellCoords:null,onBeforeHighlightingRowHeader:e=>e,onBeforeHighlightingColumnHeader:e=>e,onWindowResize:null,onContainerElementResize:null,renderAllColumns:!1,renderAllRows:!1,groups:!1,rowHeaderWidth:null,columnHeaderHeight:null,headerClassName:null,rtlMode:!1,ariaTags:!0}}update(e,t){return void 0===t?(0,r.objectEach)(e,((e,t)=>{this.settings[t]=e})):this.settings[e]=t,this}getSetting(e,t,o,s,n){return"function"==typeof this.settings[e]?this.settings[e](t,o,s,n):void 0!==t&&Array.isArray(this.settings[e])?this.settings[e][t]:this.settings[e]}getSettingPure(e){return this.settings[e]}has(e){return!!this.settings[e]}}},63646:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724);var n=s(o(85707)),i=o(9893),r=o(78832),l=s(o(16979)),a=s(o(39277)),h=o(20524),c=s(o(87736)),u=s(o(46372)),d=o(34009),g=o(92692);t.default=class{constructor(e,t,o,s,r){(0,n.default)(this,"wtSettings",null),(0,n.default)(this,"domBindings",void 0),(0,n.default)(this,"TBODY",null),(0,n.default)(this,"THEAD",null),(0,n.default)(this,"COLGROUP",null),(0,n.default)(this,"hasTableHeight",!0),(0,n.default)(this,"hasTableWidth",!0),(0,n.default)(this,"isTableVisible",!1),(0,n.default)(this,"tableOffset",0),(0,n.default)(this,"holderOffset",0),this.domBindings=o,this.isMaster="master"===r,this.name=r,this.dataAccessObject=e,this.facadeGetter=t,this.wtSettings=s,this.instance=this.dataAccessObject.wot,this.wot=this.dataAccessObject.wot,this.TABLE=o.rootTable,(0,i.removeTextNodes)(this.TABLE),this.spreader=this.createSpreader(this.TABLE),this.hider=this.createHider(this.spreader),this.holder=this.createHolder(this.hider),this.wtRootElement=this.holder.parentNode,this.isMaster&&this.alignOverlaysWithTrimmingContainer(),this.fixTableDomTree(),this.rowFilter=null,this.columnFilter=null,this.correctHeaderWidth=!1;const l=this.wtSettings.getSettingPure("rowHeaderWidth");this.wtSettings.update("rowHeaderWidth",(()=>this._modifyRowHeaderWidth(l))),this.rowUtils=new u.default(this.dataAccessObject,this.wtSettings),this.columnUtils=new c.default(this.dataAccessObject,this.wtSettings),this.tableRenderer=new h.Renderer({TABLE:this.TABLE,THEAD:this.THEAD,COLGROUP:this.COLGROUP,TBODY:this.TBODY,rowUtils:this.rowUtils,columnUtils:this.columnUtils,cellRenderer:this.wtSettings.getSettingPure("cellRenderer")})}is(e){return this.name===e}fixTableDomTree(){const e=this.domBindings.rootDocument;this.TBODY=this.TABLE.querySelector("tbody"),this.TBODY||(this.TBODY=e.createElement("tbody"),this.TABLE.appendChild(this.TBODY)),this.THEAD=this.TABLE.querySelector("thead"),this.THEAD||(this.THEAD=e.createElement("thead"),this.TABLE.insertBefore(this.THEAD,this.TBODY)),this.COLGROUP=this.TABLE.querySelector("colgroup"),this.COLGROUP||(this.COLGROUP=e.createElement("colgroup"),this.TABLE.insertBefore(this.COLGROUP,this.THEAD))}createSpreader(e){const t=e.parentNode;let o;return t&&t.nodeType===Node.ELEMENT_NODE&&(0,i.hasClass)(t,"wtHolder")||(o=this.domBindings.rootDocument.createElement("div"),o.className="wtSpreader",t&&t.insertBefore(o,e),o.appendChild(e)),o.style.position="relative",this.wtSettings.getSetting("ariaTags")&&(0,i.setAttribute)(o,[(0,g.A11Y_PRESENTATION)()]),o}createHider(e){const t=e.parentNode;let o;return t&&t.nodeType===Node.ELEMENT_NODE&&(0,i.hasClass)(t,"wtHolder")||(o=this.domBindings.rootDocument.createElement("div"),o.className="wtHider",t&&t.insertBefore(o,e),o.appendChild(e)),this.wtSettings.getSetting("ariaTags")&&(0,i.setAttribute)(o,[(0,g.A11Y_PRESENTATION)()]),o}createHolder(e){const t=e.parentNode;let o;return t&&t.nodeType===Node.ELEMENT_NODE&&(0,i.hasClass)(t,"wtHolder")||(o=this.domBindings.rootDocument.createElement("div"),o.style.position="relative",o.className="wtHolder",t&&t.insertBefore(o,e),this.isMaster&&(o.parentNode.className+="ht_master handsontable",o.parentNode.setAttribute("dir",this.wtSettings.getSettingPure("rtlMode")?"rtl":"ltr"),this.wtSettings.getSetting("ariaTags")&&(0,i.setAttribute)(o.parentNode,[(0,g.A11Y_PRESENTATION)()])),o.appendChild(e)),this.wtSettings.getSetting("ariaTags")&&(0,i.setAttribute)(o,[(0,g.A11Y_PRESENTATION)()]),o}draw(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const{wtSettings:t}=this,{wtOverlays:o,wtViewport:s}=this.dataAccessObject,n=t.getSetting("totalRows"),r=t.getSetting("totalColumns"),h=t.getSetting("rowHeaders"),c=h.length,u=t.getSetting("columnHeaders"),g=u.length;let f=e;if(this.isMaster&&(o.beforeDraw(),this.holderOffset=(0,i.offset)(this.holder),f=s.createCalculators(f),c&&!t.getSetting("fixedColumnsStart"))){const e=o.inlineStartOverlay.getScrollPosition(),t=this.correctHeaderWidth;this.correctHeaderWidth=0!==e,t!==this.correctHeaderWidth&&(f=!1)}if(f)this.isMaster&&o.refresh(!0);else{this.isMaster?this.tableOffset=(0,i.offset)(this.TABLE):this.tableOffset=this.dataAccessObject.parentTableOffset;const e=n>0?this.getFirstRenderedRow():0,t=r>0?this.getFirstRenderedColumn():0;this.rowFilter=new a.default(e,n,g),this.columnFilter=new l.default(t,r,c);let f=!0;if(this.isMaster){this.alignOverlaysWithTrimmingContainer();const e={};this.wtSettings.getSetting("beforeDraw",!0,e),f=!0!==e.skipRender}if(f){let e;if(this.tableRenderer.setHeaderContentRenderers(h,u),(this.is(d.CLONE_BOTTOM)||this.is(d.CLONE_BOTTOM_INLINE_START_CORNER))&&this.tableRenderer.setHeaderContentRenderers(h,[]),this.resetOversizedRows(),this.tableRenderer.setActiveOverlayName(this.name).setViewportSize(this.getRenderedRowsCount(),this.getRenderedColumnsCount()).setFilters(this.rowFilter,this.columnFilter).render(),this.isMaster&&(e=this.dataAccessObject.workspaceWidth,s.containerWidth=null,this.markOversizedColumnHeaders()),this.adjustColumnHeaderHeights(),(this.isMaster||this.is(d.CLONE_BOTTOM))&&this.markOversizedRows(),this.isMaster){this.wtSettings.getSetting("externalRowCalculator")||s.createVisibleCalculators(),o.refresh(!1),o.applyToDOM();const t=(0,i.outerWidth)(this.hider),n=(0,i.outerWidth)(this.TABLE);0!==t&&n!==t&&(this.columnUtils.calculateWidths(),this.tableRenderer.renderer.colGroup.render()),e!==s.getWorkspaceWidth()&&(s.containerWidth=null,this.columnUtils.calculateWidths(),this.tableRenderer.renderer.colGroup.render()),this.wtSettings.getSetting("onDraw",!0)}else this.is(d.CLONE_BOTTOM)&&this.dataAccessObject.cloneSource.wtOverlays.adjustElementsSize()}}let p=!1;return this.isMaster&&(p=o.topOverlay.resetFixedPosition(),o.bottomOverlay.clone&&(p=o.bottomOverlay.resetFixedPosition()||p),p=o.inlineStartOverlay.resetFixedPosition()||p,o.topInlineStartCornerOverlay&&o.topInlineStartCornerOverlay.resetFixedPosition(),o.bottomInlineStartCornerOverlay&&o.bottomInlineStartCornerOverlay.clone&&o.bottomInlineStartCornerOverlay.resetFixedPosition()),p?(o.refreshAll(),o.adjustElementsSize()):this.dataAccessObject.selectionManager.setActiveOverlay(this.facadeGetter()).render(f),this.isMaster&&o.afterDraw(),this.dataAccessObject.drawn=!0,this}markIfOversizedColumnHeader(e){const t=this.columnFilter.renderedToSource(e);let o=this.wtSettings.getSetting("columnHeaders").length;const s=this.wtSettings.getSetting("defaultRowHeight");let n,r,l;const a=this.wtSettings.getSetting("columnHeaderHeight")||[];for(;o;)o-=1,n=this.getColumnHeaderHeight(o),r=this.getColumnHeader(t,o),r&&(l=(0,i.innerHeight)(r),(!n&&s<l||n<l)&&(this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]=l),Array.isArray(a)?null!==a[o]&&void 0!==a[o]&&(this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]=a[o]):isNaN(a)||(this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]=a),this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]<(a[o]||a)&&(this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]=a[o]||a))}adjustColumnHeaderHeights(){const{wtSettings:e}=this,t=this.THEAD.childNodes,o=this.dataAccessObject.wtViewport.oversizedColumnHeaders;for(let s=0,n=e.getSetting("columnHeaders").length;s<n;s++)if(o[s]){if(!t[s]||0===t[s].childNodes.length)return;t[s].childNodes[0].style.height=`${o[s]}px`}}resetOversizedRows(){const{wtSettings:e}=this,{wtViewport:t}=this.dataAccessObject;if((this.isMaster||this.is(d.CLONE_BOTTOM))&&!e.getSetting("externalRowCalculator")){const e=this.getRenderedRowsCount();for(let o=0;o<e;o++){const e=this.rowFilter.renderedToSource(o);t.oversizedRows&&t.oversizedRows[e]&&(t.oversizedRows[e]=void 0)}}}getCell(e){let t=e.row,o=e.col;const s=this.wtSettings.getSetting("onModifyGetCellCoords",t,o);if(s&&Array.isArray(s)&&([t,o]=s),this.isRowBeforeRenderedRows(t))return-1;if(this.isRowAfterRenderedRows(t))return-2;if(this.isColumnBeforeRenderedColumns(o))return-3;if(this.isColumnAfterRenderedColumns(o))return-4;const n=this.getRow(t);if(!n&&t>=0)throw new Error("TR was expected to be rendered but is not");const i=n.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(o)];if(!i&&o>=0)throw new Error("TD or TH was expected to be rendered but is not");return i}getRow(e){let t=null,o=null;var s,n;e<0?(t=null===(s=this.rowFilter)||void 0===s?void 0:s.sourceRowToVisibleColHeadedRow(e),o=this.THEAD):(t=null===(n=this.rowFilter)||void 0===n?void 0:n.sourceToRendered(e),o=this.TBODY);return void 0!==t&&void 0!==o&&(!(o.childNodes.length<t+1)&&o.childNodes[t])}getColumnHeader(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const o=this.THEAD.childNodes[t];return null==o?void 0:o.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e)]}getColumnHeaders(e){const t=[],o=this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e);return this.THEAD.childNodes.forEach((e=>{const s=e.childNodes[o];s&&t.push(s)})),t}getRowHeader(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(t>=this.wtSettings.getSetting("rowHeaders").length)return;const o=this.rowFilter.sourceToRendered(e),s=o<0?this.rowFilter.sourceRowToVisibleColHeadedRow(e):o,n=(o<0?this.THEAD:this.TBODY).childNodes[s];return null==n?void 0:n.childNodes[t]}getRowHeaders(e){const t=[],o=this.wtSettings.getSetting("rowHeaders").length;for(let s=0;s<o;s++){const o=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)],n=null==o?void 0:o.childNodes[s];n&&t.push(n)}return t}getCoords(e){let t=e;if("TD"!==t.nodeName&&"TH"!==t.nodeName&&(t=(0,i.closest)(t,["TD","TH"])),null===t)return null;const o=t.parentNode,s=o.parentNode;let n=(0,i.index)(o),r=t.cellIndex;if((0,i.overlayContainsElement)(d.CLONE_TOP_INLINE_START_CORNER,t,this.wtRootElement)||(0,i.overlayContainsElement)(d.CLONE_TOP,t,this.wtRootElement))"THEAD"===s.nodeName&&(n-=s.childNodes.length);else if((0,i.overlayContainsElement)(d.CLONE_BOTTOM_INLINE_START_CORNER,t,this.wtRootElement)||(0,i.overlayContainsElement)(d.CLONE_BOTTOM,t,this.wtRootElement)){n=this.wtSettings.getSetting("totalRows")-s.childNodes.length+n}else n=s===this.THEAD?this.rowFilter.visibleColHeadedRowToSourceRow(n):this.rowFilter.renderedToSource(n);return r=(0,i.overlayContainsElement)(d.CLONE_TOP_INLINE_START_CORNER,t,this.wtRootElement)||(0,i.overlayContainsElement)(d.CLONE_INLINE_START,t,this.wtRootElement)||(0,i.overlayContainsElement)(d.CLONE_BOTTOM_INLINE_START_CORNER,t,this.wtRootElement)?this.columnFilter.offsettedTH(r):this.columnFilter.visibleRowHeadedColumnToSourceColumn(r),this.wot.createCellCoords(n,r)}markOversizedRows(){if(this.wtSettings.getSetting("externalRowCalculator"))return;let e=this.TBODY.childNodes.length;let t,o,s,n,r;if(e*this.wtSettings.getSetting("defaultRowHeight")!==(0,i.innerHeight)(this.TBODY)-1||this.wtSettings.getSetting("fixedRowsBottom"))for(;e;)e-=1,s=this.rowFilter.renderedToSource(e),t=this.getRowHeight(s),n=this.getTrForRow(s),r=n.querySelector("th"),o=r?(0,i.innerHeight)(r):(0,i.innerHeight)(n)-1,(!t&&this.wtSettings.getSetting("defaultRowHeight")<o||t<o)&&(o+=1,this.dataAccessObject.wtViewport.oversizedRows[s]=o)}getTrForRow(e){return this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)]}isColumnHeaderRendered(e){if(e>=0)return!1;const t=this.wtSettings.getSetting("rowHeaders").length;return Math.abs(e)<=t}isRowHeaderRendered(e){if(e>=0)return!1;const t=this.wtSettings.getSetting("columnHeaders").length;return Math.abs(e)<=t}isRowBeforeRenderedRows(e){const t=this.getFirstRenderedRow();return e<0&&t<=0?!this.isRowHeaderRendered(e):e<t}isRowAfterRenderedRows(e){return e>this.getLastRenderedRow()}isColumnBeforeRenderedColumns(e){const t=this.getFirstRenderedColumn();return e<0&&t<=0?!this.isColumnHeaderRendered(e):e<t}isColumnAfterRenderedColumns(e){return this.columnFilter&&e>this.getLastRenderedColumn()}isColumnAfterViewport(e){return this.columnFilter&&e>this.getLastVisibleColumn()}isRowAfterViewport(e){return this.rowFilter&&e>this.getLastVisibleRow()}isColumnBeforeViewport(e){return this.columnFilter&&this.columnFilter.sourceToRendered(e)<0&&e>=0}isLastRowFullyVisible(){return this.getLastVisibleRow()===this.getLastRenderedRow()}isLastColumnFullyVisible(){return this.getLastVisibleColumn()===this.getLastRenderedColumn()}allRowsInViewport(){return this.wtSettings.getSetting("totalRows")===this.getVisibleRowsCount()}allColumnsInViewport(){return this.wtSettings.getSetting("totalColumns")===this.getVisibleColumnsCount()}getRowHeight(e){return this.rowUtils.getHeight(e)}getColumnHeaderHeight(e){return this.columnUtils.getHeaderHeight(e)}getColumnWidth(e){return this.columnUtils.getWidth(e)}getStretchedColumnWidth(e){return this.columnUtils.getStretchedColumnWidth(e)}hasDefinedSize(){return this.hasTableHeight&&this.hasTableWidth}getWidth(){return(0,i.outerWidth)(this.TABLE)}getHeight(){return(0,i.outerHeight)(this.TABLE)}getTotalWidth(){const e=(0,i.outerWidth)(this.hider);return 0!==e?e:this.getWidth()}getTotalHeight(){const e=(0,i.outerHeight)(this.hider);return 0!==e?e:this.getHeight()}isVisible(){return(0,i.isVisible)(this.TABLE)}_modifyRowHeaderWidth(e){let t=(0,r.isFunction)(e)?e():null;return Array.isArray(t)?(t=[...t],t[t.length-1]=this._correctRowHeaderWidth(t[t.length-1])):t=this._correctRowHeaderWidth(t),t}_correctRowHeaderWidth(e){let t=e;return"number"!=typeof e&&(t=this.wtSettings.getSetting("defaultColumnWidth")),this.correctHeaderWidth&&(t+=1),t}}},31542:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(58166)),r=s(o(17800)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_BOTTOM)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},93638:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(58166)),r=s(o(85449)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_BOTTOM_INLINE_START_CORNER)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},14658:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(95374)),r=s(o(85449)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_INLINE_START)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},26235:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(9893),i=s(o(63646)),r=s(o(95374)),l=s(o(17800)),a=o(13911);class h extends i.default{constructor(e,t,o,s){super(e,t,o,s,"master")}alignOverlaysWithTrimmingContainer(){const e=(0,n.getTrimmingContainer)(this.wtRootElement),{rootWindow:t}=this.domBindings;if(e===t){this.wtSettings.getSetting("preventOverflow")||(this.holder.style.overflow="visible",this.wtRootElement.style.overflow="visible")}else{const o=e.parentElement,s=(0,n.getStyle)(e,"height",t),i=(0,n.getStyle)(e,"overflow",t),r=this.holder.style,{scrollWidth:l,scrollHeight:a}=e;let h=e.offsetWidth,c=e.offsetHeight;if(o&&["auto","hidden","scroll"].includes(i)){const s=e.cloneNode(!1);s.style.overflow="auto",s.style.position="absolute",e.nextElementSibling?o.insertBefore(s,e.nextElementSibling):o.appendChild(s);const i=parseInt((0,n.getComputedStyle)(s,t).height,10);o.removeChild(s),0===i&&(c=0)}c=Math.min(c,a),r.height="auto"===s?"auto":`${c}px`,h=Math.min(h,l),r.width=`${h}px`,r.overflow="",this.hasTableHeight="auto"===r.height||c>0,this.hasTableWidth=h>0}this.isTableVisible=(0,n.isVisible)(this.TABLE)}markOversizedColumnHeaders(){const{wtSettings:e}=this,{wtViewport:t}=this.dataAccessObject,o="master",s=e.getSetting("columnHeaders").length;if(s&&!t.hasOversizedColumnHeadersMarked[o]){const n=e.getSetting("rowHeaders").length,i=this.getRenderedColumnsCount();for(let e=0;e<s;e++)for(let e=-1*n;e<i;e++)this.markIfOversizedColumnHeader(e);t.hasOversizedColumnHeadersMarked[o]=!0}}}(0,a.mixin)(h,r.default),(0,a.mixin)(h,l.default);t.default=h},17800:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedColumn(){const e=this.dataAccessObject.startColumnRendered;return null===e?-1:e},getFirstVisibleColumn(){const e=this.dataAccessObject.startColumnVisible;return null===e?-1:e},getFirstPartiallyVisibleColumn(){const e=this.dataAccessObject.startColumnPartiallyVisible;return null===e?-1:e},getLastRenderedColumn(){const e=this.dataAccessObject.endColumnRendered;return null===e?-1:e},getLastVisibleColumn(){const e=this.dataAccessObject.endColumnVisible;return null===e?-1:e},getLastPartiallyVisibleColumn(){const e=this.dataAccessObject.endColumnPartiallyVisible;return null===e?-1:e},getRenderedColumnsCount(){return this.dataAccessObject.countColumnsRendered},getVisibleColumnsCount(){return this.dataAccessObject.countColumnsVisible},getRowHeadersCount(){return this.dataAccessObject.rowHeaders.length}};(0,s.defineGetter)(n,"MIXIN_NAME","calculatedColumns",{writable:!1,enumerable:!1});t.default=n},95374:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedRow(){const e=this.dataAccessObject.startRowRendered;return null===e?-1:e},getFirstVisibleRow(){const e=this.dataAccessObject.startRowVisible;return null===e?-1:e},getFirstPartiallyVisibleRow(){const e=this.dataAccessObject.startRowPartiallyVisible;return null===e?-1:e},getLastRenderedRow(){const e=this.dataAccessObject.endRowRendered;return null===e?-1:e},getLastVisibleRow(){const e=this.dataAccessObject.endRowVisible;return null===e?-1:e},getLastPartiallyVisibleRow(){const e=this.dataAccessObject.endRowPartiallyVisible;return null===e?-1:e},getRenderedRowsCount(){return this.dataAccessObject.countRowsRendered},getVisibleRowsCount(){return this.dataAccessObject.countRowsVisible},getColumnHeadersCount(){return this.dataAccessObject.columnHeaders.length}};(0,s.defineGetter)(n,"MIXIN_NAME","calculatedRows",{writable:!1,enumerable:!1});t.default=n},85449:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedColumn(){return 0===this.wtSettings.getSetting("totalColumns")?-1:0},getFirstVisibleColumn(){return this.getFirstRenderedColumn()},getFirstPartiallyVisibleColumn(){return this.getFirstRenderedColumn()},getLastRenderedColumn(){return this.getRenderedColumnsCount()-1},getLastVisibleColumn(){return this.getLastRenderedColumn()},getLastPartiallyVisibleColumn(){return this.getLastRenderedColumn()},getRenderedColumnsCount(){const e=this.wtSettings.getSetting("totalColumns");return Math.min(this.wtSettings.getSetting("fixedColumnsStart"),e)},getVisibleColumnsCount(){return this.getRenderedColumnsCount()},getRowHeadersCount(){return this.dataAccessObject.rowHeaders.length}};(0,s.defineGetter)(n,"MIXIN_NAME","stickyColumnsStart",{writable:!1,enumerable:!1});t.default=n},58166:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedRow(){const e=this.wtSettings.getSetting("totalRows"),t=this.wtSettings.getSetting("fixedRowsBottom"),o=e-t;return 0===e||0===t?-1:o<0?0:o},getFirstVisibleRow(){return this.getFirstRenderedRow()},getFirstPartiallyVisibleRow(){return this.getFirstRenderedRow()},getLastRenderedRow(){return this.wtSettings.getSetting("totalRows")-1},getLastVisibleRow(){return this.getLastRenderedRow()},getLastPartiallyVisibleRow(){return this.getLastRenderedRow()},getRenderedRowsCount(){const e=this.wtSettings.getSetting("totalRows");return Math.min(this.wtSettings.getSetting("fixedRowsBottom"),e)},getVisibleRowsCount(){return this.getRenderedRowsCount()},getColumnHeadersCount:()=>0};(0,s.defineGetter)(n,"MIXIN_NAME","stickyRowsBottom",{writable:!1,enumerable:!1});t.default=n},61138:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedRow(){return 0===this.wtSettings.getSetting("totalRows")?-1:0},getFirstVisibleRow(){return this.getFirstRenderedRow()},getFirstPartiallyVisibleRow(){return this.getFirstRenderedRow()},getLastRenderedRow(){return this.getRenderedRowsCount()-1},getLastVisibleRow(){return this.getLastRenderedRow()},getLastPartiallyVisibleRow(){return this.getLastRenderedRow()},getRenderedRowsCount(){const e=this.wtSettings.getSetting("totalRows");return Math.min(this.wtSettings.getSetting("fixedRowsTop"),e)},getVisibleRowsCount(){return this.getRenderedRowsCount()},getColumnHeadersCount(){return this.dataAccessObject.columnHeaders.length}};(0,s.defineGetter)(n,"MIXIN_NAME","stickyRowsTop",{writable:!1,enumerable:!1});t.default=n},61234:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(61138)),r=s(o(17800)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_TOP)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},60882:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(61138)),r=s(o(85449)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_TOP_INLINE_START_CORNER)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},87736:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(9893),r=o(61311);t.default=class{constructor(e,t){(0,n.default)(this,"dataAccessObject",void 0),(0,n.default)(this,"wtSettings",void 0),(0,n.default)(this,"headerWidths",new Map),(0,n.default)(this,"stretching",void 0),this.dataAccessObject=e,this.wtSettings=t,this.stretching=new r.ColumnStretching({totalColumns:()=>this.wtSettings.getSetting("totalColumns"),stretchMode:()=>this.wtSettings.getSetting("stretchH"),stretchingColumnWidthFn:(e,t)=>this.wtSettings.getSetting("onBeforeStretchingColumnWidth",e,t),columnWidthFn:e=>this.dataAccessObject.wtTable.getColumnWidth(e)})}getWidth(e){return this.wtSettings.getSetting("columnWidth",e)||this.wtSettings.getSetting("defaultColumnWidth")}getStretchedColumnWidth(e){let t=this.getWidth(e);const o=this.stretching.getStretchedColumnWidth(e,t);return o&&(t=o),t}getHeaderHeight(e){let t=this.wtSettings.getSetting("defaultRowHeight");const o=this.dataAccessObject.wtViewport.oversizedColumnHeaders[e];return void 0!==o&&(t=t?Math.max(t,o):o),t}getHeaderWidth(e){return this.headerWidths.get(this.dataAccessObject.wtTable.columnFilter.sourceToRendered(e))}refreshStretching(){const{wtTable:e,wtViewport:t,cloneSource:o}=this.dataAccessObject,s=o?o.wtTable.holder:e.holder,n=s.offsetHeight<s.scrollHeight?(0,i.getScrollbarWidth)():0;this.stretching.refreshStretching(t.getViewportWidth()-n)}calculateWidths(){const{wtSettings:e}=this;let t=e.getSetting("rowHeaderWidth");if(this.refreshStretching(),t=e.getSetting("onModifyRowHeaderWidth",t),null!=t){const o=e.getSetting("rowHeaders").length,s=e.getSetting("defaultColumnWidth");for(let e=0;e<o;e++){let o=Array.isArray(t)?t[e]:t;o=null==o?s:o,this.headerWidths.set(e,o)}}}}},61311:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(26679);function r(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function l(e,t){return e.get(h(e,t))}function a(e,t,o){return e.set(h(e,t),o),o}function h(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var c=new WeakMap,u=new WeakMap,d=new WeakMap,g=new WeakMap,f=new WeakMap;t.ColumnStretching=class{constructor(e){let{totalColumns:t,stretchMode:o,stretchingColumnWidthFn:s,columnWidthFn:i}=e;(0,n.default)(this,"stretchAllRatio",0),(0,n.default)(this,"stretchLastWidth",0),(0,n.default)(this,"stretchAllColumnsWidth",[]),r(this,c,0),(0,n.default)(this,"needVerifyLastColumnWidth",!0),r(this,u,(()=>0)),r(this,d,(e=>e)),r(this,g,(e=>e)),r(this,f,(()=>"none")),a(u,this,t),a(f,this,o),a(d,this,null!=s?s:l(d,this)),a(g,this,null!=i?i:l(g,this))}refreshStretching(e){if("none"===l(f,this).call(this))return;this.stretchAllRatio=0,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0,this.stretchLastWidth=0,a(c,this,e);let t=0;for(let o=0;o<l(u,this).call(this);o++){const s=this._getColumnWidth(o),n=l(d,this).call(this,void 0,o);"number"==typeof n?e-=n:t+=s}const o=e-t;if("all"===l(f,this).call(this)&&o>0)this.stretchAllRatio=e/t,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0;else if("last"===l(f,this).call(this)&&e!==1/0){const e=this._getColumnWidth(l(u,this).call(this)-1),t=o+e;this.stretchLastWidth=t>=0?t:e}}getStretchedColumnWidth(e,t){let o=null;return"all"===l(f,this).call(this)&&0!==this.stretchAllRatio?o=this._getStretchedAllColumnWidth(e,t):"last"===l(f,this).call(this)&&0!==this.stretchLastWidth&&(o=this._getStretchedLastColumnWidth(e)),o}_getStretchedAllColumnWidth(e,t){let o=0;if(!this.stretchAllColumnsWidth[e]){const o=Math.round(t*this.stretchAllRatio),s=l(d,this).call(this,o,e);this.stretchAllColumnsWidth[e]=void 0===s?o:isNaN(s)?this._getColumnWidth(e):s}if(this.stretchAllColumnsWidth.length===l(u,this).call(this)&&this.needVerifyLastColumnWidth){this.needVerifyLastColumnWidth=!1;for(let e=0;e<this.stretchAllColumnsWidth.length;e++)o+=this.stretchAllColumnsWidth[e];o!==l(c,this)&&(this.stretchAllColumnsWidth[this.stretchAllColumnsWidth.length-1]+=l(c,this)-o)}return this.stretchAllColumnsWidth[e]}_getStretchedLastColumnWidth(e){return e===l(u,this).call(this)-1?this.stretchLastWidth:null}_getColumnWidth(e){let t=l(g,this).call(this,e);return isNaN(t)&&(t=i.DEFAULT_COLUMN_WIDTH),t}}},42715:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(e){(0,n.default)(this,"nodeType",void 0),this.nodeType=e.toUpperCase()}setRootDocument(e){this.rootDocument=e}obtain(){return this.rootDocument.createElement(this.nodeType)}}},60739:(e,t)=>{"use strict";t.__esModule=!0;t.WORKING_SPACE_ALL=0,t.WORKING_SPACE_TOP=1,t.WORKING_SPACE_BOTTOM=2},21682:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(23225));t.OrderView=n.default;var i=s(o(47664));t.SharedOrderView=i.default},47664:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(23225));class i extends n.default{prependView(e){return this.sizeSet.prepend(e.sizeSet),e.sizeSet.append(this.sizeSet),this}appendView(e){return this.sizeSet.append(e.sizeSet),e.sizeSet.prepend(this.sizeSet),this}}t.default=i},23225:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(60739),r=s(o(83638));t.default=class{constructor(e,t,o){(0,n.default)(this,"rootNode",void 0),(0,n.default)(this,"nodesPool",void 0),(0,n.default)(this,"sizeSet",new r.default),(0,n.default)(this,"childNodeType",void 0),(0,n.default)(this,"visualIndex",0),(0,n.default)(this,"collectedNodes",[]),this.rootNode=e,this.nodesPool=t,this.childNodeType=o.toUpperCase()}setSize(e){return this.sizeSet.setSize(e),this}setOffset(e){return this.sizeSet.setOffset(e),this}isSharedViewSet(){return this.sizeSet.isShared()}getNode(e){return e<this.collectedNodes.length?this.collectedNodes[e]:null}getCurrentNode(){const e=this.collectedNodes.length;return e>0?this.collectedNodes[e-1]:null}getRenderedChildCount(){const{rootNode:e,sizeSet:t}=this;let o=0;if(this.isSharedViewSet()){let s=e.firstElementChild;for(;s;){if(s.tagName===this.childNodeType)o+=1;else if(t.isPlaceOn(i.WORKING_SPACE_TOP))break;s=s.nextElementSibling}}else o=e.childElementCount;return o}start(){this.collectedNodes.length=0,this.visualIndex=0;const{rootNode:e,sizeSet:t}=this,o=this.isSharedViewSet(),{nextSize:s}=t.getViewSize();let n=this.getRenderedChildCount();for(;n<s;){const s=this.nodesPool();!o||o&&t.isPlaceOn(i.WORKING_SPACE_BOTTOM)?e.appendChild(s):e.insertBefore(s,e.firstChild),n+=1}const r=o&&t.isPlaceOn(i.WORKING_SPACE_TOP);for(;n>s;)e.removeChild(r?e.firstChild:e.lastChild),n-=1}render(){const{rootNode:e,sizeSet:t}=this;let o=this.visualIndex;this.isSharedViewSet()&&t.isPlaceOn(i.WORKING_SPACE_BOTTOM)&&(o+=t.sharedSize.nextSize);let s=e.childNodes[o];if(s.tagName!==this.childNodeType){const t=this.nodesPool();e.replaceChild(t,s),s=t}this.collectedNodes.push(s),this.visualIndex+=1}end(){}}},92820:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(){(0,n.default)(this,"currentSize",0),(0,n.default)(this,"nextSize",0),(0,n.default)(this,"currentOffset",0),(0,n.default)(this,"nextOffset",0)}setSize(e){this.currentSize=this.nextSize,this.nextSize=e}setOffset(e){this.currentOffset=this.nextOffset,this.nextOffset=e}}},83638:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=s(o(92820)),r=o(60739);t.default=class{constructor(){(0,n.default)(this,"size",new i.default),(0,n.default)(this,"workingSpace",r.WORKING_SPACE_ALL),(0,n.default)(this,"sharedSize",null)}setSize(e){this.size.setSize(e)}setOffset(e){this.size.setOffset(e)}getViewSize(){return this.size}isShared(){return this.sharedSize instanceof i.default}isPlaceOn(e){return this.workingSpace===e}append(e){this.workingSpace=r.WORKING_SPACE_TOP,e.workingSpace=r.WORKING_SPACE_BOTTOM,this.sharedSize=e.getViewSize()}prepend(e){this.workingSpace=r.WORKING_SPACE_BOTTOM,e.workingSpace=r.WORKING_SPACE_TOP,this.sharedSize=e.getViewSize()}}},46372:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(e,t){(0,n.default)(this,"dataAccessObject",void 0),(0,n.default)(this,"wtSettings",void 0),this.dataAccessObject=e,this.wtSettings=t}getHeight(e){let t=this.wtSettings.getSetting("rowHeight",e);const o=this.dataAccessObject.wtViewport.oversizedRows[e];return void 0!==o&&(t=void 0===t?o:Math.max(t,o)),t}getHeightByOverlayName(e,t){let o=this.wtSettings.getSetting("rowHeightByOverlayName",e,t);const s=this.dataAccessObject.wtViewport.oversizedRows[e];return void 0!==s&&(o=void 0===o?s:Math.max(o,s)),o}}},85690:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(9893),n=o(13911),i=o(26679);t.default=class{constructor(e,t,o,s,n){this.dataAccessObject=e,this.wot=e.wot,this.instance=this.wot,this.domBindings=t,this.wtSettings=o,this.wtTable=n,this.oversizedRows=[],this.oversizedColumnHeaders=[],this.hasOversizedColumnHeadersMarked={},this.clientHeight=0,this.containerWidth=NaN,this.rowHeaderWidth=NaN,this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,this.rowsCalculatorTypes=new Map([["rendered",()=>this.wtSettings.getSetting("renderAllRows")?new i.RenderedAllRowsCalculationType:new i.RenderedRowsCalculationType],["fullyVisible",()=>new i.FullyVisibleRowsCalculationType],["partiallyVisible",()=>new i.PartiallyVisibleRowsCalculationType]]),this.columnsCalculatorTypes=new Map([["rendered",()=>this.wtSettings.getSetting("renderAllColumns")?new i.RenderedAllColumnsCalculationType:new i.RenderedColumnsCalculationType],["fullyVisible",()=>new i.FullyVisibleColumnsCalculationType],["partiallyVisible",()=>new i.PartiallyVisibleColumnsCalculationType]]),this.eventManager=s,this.eventManager.addEventListener(this.domBindings.rootWindow,"resize",(()=>{this.clientHeight=this.getWorkspaceHeight()}))}getWorkspaceHeight(){const e=this.domBindings.rootDocument,t=this.dataAccessObject.topOverlayTrimmingContainer;let o=0;if(t===this.domBindings.rootWindow)o=e.documentElement.clientHeight;else{o=(0,s.outerHeight)(t)>0&&t.clientHeight>0?t.clientHeight:1/0}return o}getWorkspaceWidth(){const{wtSettings:e}=this,{rootDocument:t,rootWindow:o}=this.domBindings,n=this.dataAccessObject.inlineStartOverlayTrimmingContainer,i=t.documentElement.offsetWidth,r=e.getSetting("totalColumns"),l=e.getSetting("preventOverflow"),a=e.getSetting("rtlMode"),h=this.wtTable.TABLE.getBoundingClientRect(),c=i-(a?h.right-i:h.left);let u,d;if(l)return(0,s.outerWidth)(this.wtTable.wtRootElement);if(u=e.getSetting("freezeOverlays")?Math.min(c,i):Math.min(this.getContainerFillWidth(),c,i),n===o&&r>0&&this.sumColumnWidths(0,r-1)>u)return t.documentElement.clientWidth;if(n!==o&&(d=(0,s.getStyle)(this.dataAccessObject.inlineStartOverlayTrimmingContainer,"overflow",o),"scroll"===d||"hidden"===d||"auto"===d))return Math.max(u,n.clientWidth);const g=e.getSetting("stretchH");return"none"!==g&&g?u:Math.max(u,(0,s.outerWidth)(this.wtTable.TABLE))}hasVerticalScroll(){return this.wtTable.hider.offsetHeight>this.getWorkspaceHeight()}hasHorizontalScroll(){return this.wtTable.hider.offsetWidth>this.getWorkspaceWidth()}sumColumnWidths(e,t){let o=0,s=e;for(;s<t;)o+=this.wtTable.getColumnWidth(s),s+=1;return o}getContainerFillWidth(){if(this.containerWidth)return this.containerWidth;const e=this.wtTable.holder,t=this.domBindings.rootDocument.createElement("div");t.style.width="100%",t.style.height="1px",e.appendChild(t);const o=t.offsetWidth;return this.containerWidth=o,e.removeChild(t),o}getWorkspaceOffset(){return(0,s.offset)(this.wtTable.TABLE)}getColumnHeaderHeight(){return this.wtSettings.getSetting("columnHeaders").length?isNaN(this.columnHeaderHeight)&&(this.columnHeaderHeight=(0,s.outerHeight)(this.wtTable.THEAD)):this.columnHeaderHeight=0,this.columnHeaderHeight}getViewportHeight(){let e=this.getWorkspaceHeight();if(e===1/0)return e;const t=this.getColumnHeaderHeight();return t>0&&(e-=t),e}getRowHeaderWidth(){const e=this.wtSettings.getSetting("rowHeaderWidth"),t=this.wtSettings.getSetting("rowHeaders");if(e){this.rowHeaderWidth=0;for(let o=0,s=t.length;o<s;o++)this.rowHeaderWidth+=e[o]||e}if(isNaN(this.rowHeaderWidth))if(t.length){let e=this.wtTable.TABLE.querySelector("TH");this.rowHeaderWidth=0;for(let o=0,n=t.length;o<n;o++)e?(this.rowHeaderWidth+=(0,s.outerWidth)(e),e=e.nextSibling):this.rowHeaderWidth+=50}else this.rowHeaderWidth=0;return this.rowHeaderWidth=this.wtSettings.getSetting("onModifyRowHeaderWidth",this.rowHeaderWidth)||this.rowHeaderWidth,this.rowHeaderWidth}getViewportWidth(){const e=this.getWorkspaceWidth();if(e===1/0)return e;const t=this.getRowHeaderWidth();return t>0?e-t:e}createRowsCalculator(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["rendered","fullyVisible","partiallyVisible"];const{wtSettings:t,wtTable:o}=this;let n,r,l=this.getViewportHeight();this.rowHeaderWidth=NaN;let a=this.dataAccessObject.topScrollPosition-this.dataAccessObject.topParentOffset;const h=t.getSetting("fixedRowsTop"),c=t.getSetting("fixedRowsBottom"),u=t.getSetting("totalRows");return h&&a>=0&&(r=this.dataAccessObject.topOverlay.sumCellSizes(0,h),a+=r,l-=r),c&&this.dataAccessObject.bottomOverlay.clone&&(r=this.dataAccessObject.bottomOverlay.sumCellSizes(u-c,u),l-=r),n=o.holder.clientHeight===o.holder.offsetHeight?0:(0,s.getScrollbarWidth)(this.domBindings.rootDocument),new i.ViewportRowsCalculator({calculationTypes:e.map((e=>[e,this.rowsCalculatorTypes.get(e)()])),viewportHeight:l,scrollOffset:a,totalRows:t.getSetting("totalRows"),rowHeightFn:e=>o.getRowHeight(e),overrideFn:t.getSettingPure("viewportRowCalculatorOverride"),horizontalScrollbarHeight:n})}createColumnsCalculator(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["rendered","fullyVisible","partiallyVisible"];const{wtSettings:t,wtTable:o}=this;let n=this.getViewportWidth(),r=Math.abs(this.dataAccessObject.inlineStartScrollPosition)-this.dataAccessObject.inlineStartParentOffset;this.columnHeaderHeight=NaN;const l=t.getSetting("fixedColumnsStart");if(l&&r>=0){const e=this.dataAccessObject.inlineStartOverlay.sumCellSizes(0,l);r+=e,n-=e}return o.holder.clientWidth!==o.holder.offsetWidth&&(n-=(0,s.getScrollbarWidth)(this.domBindings.rootDocument)),new i.ViewportColumnsCalculator({calculationTypes:e.map((e=>[e,this.columnsCalculatorTypes.get(e)()])),viewportWidth:n,scrollOffset:r,totalColumns:t.getSetting("totalColumns"),columnWidthFn:e=>o.getColumnWidth(e),overrideFn:t.getSettingPure("viewportColumnCalculatorOverride"),inlineStartOffset:this.dataAccessObject.inlineStartParentOffset})}createCalculators(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const{wtSettings:t}=this,o=this.createRowsCalculator(),s=this.createColumnsCalculator();if(e&&!t.getSetting("renderAllRows")){const t=o.getResultsFor("fullyVisible");e=this.areAllProposedVisibleRowsAlreadyRendered(t)}if(e&&!t.getSetting("renderAllColumns")){const t=s.getResultsFor("fullyVisible");e=this.areAllProposedVisibleColumnsAlreadyRendered(t)}return e||(this.rowsRenderCalculator=o.getResultsFor("rendered"),this.columnsRenderCalculator=s.getResultsFor("rendered")),this.rowsVisibleCalculator=o.getResultsFor("fullyVisible"),this.columnsVisibleCalculator=s.getResultsFor("fullyVisible"),this.rowsPartiallyVisibleCalculator=o.getResultsFor("partiallyVisible"),this.columnsPartiallyVisibleCalculator=s.getResultsFor("partiallyVisible"),e}createVisibleCalculators(){const e=this.createRowsCalculator(["fullyVisible","partiallyVisible"]),t=this.createColumnsCalculator(["fullyVisible","partiallyVisible"]);this.rowsVisibleCalculator=e.getResultsFor("fullyVisible"),this.columnsVisibleCalculator=t.getResultsFor("fullyVisible"),this.rowsPartiallyVisibleCalculator=e.getResultsFor("partiallyVisible"),this.columnsPartiallyVisibleCalculator=t.getResultsFor("partiallyVisible")}areAllProposedVisibleRowsAlreadyRendered(e){if(!this.rowsVisibleCalculator)return!1;let{startRow:t,endRow:o}=e;if(null===t&&null===o){if(!e.isVisibleInTrimmingContainer)return!0;t=this.rowsPartiallyVisibleCalculator.startRow,o=this.rowsPartiallyVisibleCalculator.endRow}const{startRow:s,endRow:n}=this.rowsRenderCalculator;return!(t<s||t===s&&t>0)&&!(o>n||o===n&&o<this.wtSettings.getSetting("totalRows")-1)}areAllProposedVisibleColumnsAlreadyRendered(e){if(!this.columnsVisibleCalculator)return!1;let{startColumn:t,endColumn:o}=e;if(null===t&&null===o){if(!e.isVisibleInTrimmingContainer)return!0;t=this.columnsPartiallyVisibleCalculator.startColumn,o=this.columnsPartiallyVisibleCalculator.endColumn}const{startColumn:s,endColumn:n}=this.columnsRenderCalculator;return!(t<s||t===s&&t>0)&&!(o>n||o===n&&o<this.wtSettings.getSetting("totalColumns")-1)}resetHasOversizedColumnHeadersMarked(){(0,n.objectEach)(this.hasOversizedColumnHeadersMarked,((e,t,o)=>{o[t]=void 0}))}}},38715:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(6254),o(20512),o(23844),o(38594);var n=s(o(87789)),i=o(11015),r=o(71757),l=s(o(56937)),a=o(74174),h=o(34299),c=o(49676),u=o(52618),d=o(90);function g(e,t){const o=new n.default(e,t||{},i.rootInstanceSymbol);return o.init(),o}t.CellCoords=d.CellCoords,t.CellRange=d.CellRange,(0,h.registerCellType)(c.TextCellType),g.editors={BaseEditor:u.BaseEditor},g.Core=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new n.default(e,t,i.rootInstanceSymbol)},g.DefaultSettings=(0,r.metaSchemaFactory)(),g.hooks=l.default.getSingleton(),g.CellCoords=d.CellCoords,g.CellRange=d.CellRange,g.packageName="handsontable",g.buildDate="24/09/2024 11:36:42",g.version="14.6.0-next-4d69faf-20240924",g.languages={dictionaryKeys:a.dictionaryKeys,getLanguageDictionary:a.getLanguageDictionary,getLanguagesDictionaries:a.getLanguagesDictionaries,registerLanguageDictionary:a.registerLanguageDictionary,getTranslatedPhrase:a.getTranslatedPhrase};t.default=g},16531:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(80115),n=o(80827),i=o(93307);const r=t.CELL_TYPE="autocomplete";t.AutocompleteCellType={CELL_TYPE:r,editor:s.AutocompleteEditor,renderer:n.autocompleteRenderer,validator:i.autocompleteValidator}},95211:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(16531);t.AutocompleteCellType=s.AutocompleteCellType,t.CELL_TYPE=s.CELL_TYPE},29529:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(39626),n=o(80730);const i=t.CELL_TYPE="checkbox";t.CheckboxCellType={CELL_TYPE:i,editor:s.CheckboxEditor,renderer:n.checkboxRenderer}},55286:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(29529);t.CELL_TYPE=s.CELL_TYPE,t.CheckboxCellType=s.CheckboxCellType},40395:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(59127),n=o(48075),i=o(70323);const r=t.CELL_TYPE="date";t.DateCellType={CELL_TYPE:r,editor:s.DateEditor,renderer:n.dateRenderer,validator:i.dateValidator}},15347:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(40395);t.CELL_TYPE=s.CELL_TYPE,t.DateCellType=s.DateCellType},85769:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(50486),n=o(82070),i=o(7628);const r=t.CELL_TYPE="dropdown";t.DropdownCellType={CELL_TYPE:r,editor:s.DropdownEditor,renderer:n.dropdownRenderer,validator:i.dropdownValidator}},98614:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(85769);t.CELL_TYPE=s.CELL_TYPE,t.DropdownCellType=s.DropdownCellType},63297:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(56138),n=o(8218);const i=t.CELL_TYPE="handsontable";t.HandsontableCellType={CELL_TYPE:i,editor:s.HandsontableEditor,renderer:n.handsontableRenderer}},37334:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(63297);t.CELL_TYPE=s.CELL_TYPE,t.HandsontableCellType=s.HandsontableCellType},10426:(e,t,o)=>{"use strict";t.__esModule=!0,t.registerAllCellTypes=function(){(0,g.registerCellType)(s.AutocompleteCellType),(0,g.registerCellType)(n.CheckboxCellType),(0,g.registerCellType)(i.DateCellType),(0,g.registerCellType)(r.DropdownCellType),(0,g.registerCellType)(l.HandsontableCellType),(0,g.registerCellType)(a.NumericCellType),(0,g.registerCellType)(h.PasswordCellType),(0,g.registerCellType)(c.SelectCellType),(0,g.registerCellType)(u.TextCellType),(0,g.registerCellType)(d.TimeCellType)};var s=o(95211);t.AutocompleteCellType=s.AutocompleteCellType,t.AUTOCOMPLETE_TYPE=s.CELL_TYPE;var n=o(55286);t.CheckboxCellType=n.CheckboxCellType,t.CHECKBOX_TYPE=n.CELL_TYPE;var i=o(15347);t.DateCellType=i.DateCellType,t.DATE_TYPE=i.CELL_TYPE;var r=o(98614);t.DropdownCellType=r.DropdownCellType,t.DROPDOWN_TYPE=r.CELL_TYPE;var l=o(37334);t.HandsontableCellType=l.HandsontableCellType,t.HANDSONTABLE_TYPE=l.CELL_TYPE;var a=o(85506);t.NumericCellType=a.NumericCellType,t.NUMERIC_TYPE=a.CELL_TYPE;var h=o(1774);t.PasswordCellType=h.PasswordCellType,t.PASSWORD_TYPE=h.CELL_TYPE;var c=o(85183);t.SelectCellType=c.SelectCellType,t.SELECT_TYPE=c.CELL_TYPE;var u=o(49676);t.TextCellType=u.TextCellType,t.TEXT_TYPE=u.CELL_TYPE;var d=o(37574);t.TimeCellType=d.TimeCellType,t.TIME_TYPE=d.CELL_TYPE;var g=o(34299);t.registerCellType=g.registerCellType,t.getCellType=g.getCellType,t.getRegisteredCellTypeNames=g.getRegisteredCellTypeNames,t.getRegisteredCellTypes=g.getRegisteredCellTypes,t.hasCellType=g.hasCellType},85506:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(78625);t.CELL_TYPE=s.CELL_TYPE,t.NumericCellType=s.NumericCellType},78625:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(33972),n=o(89760),i=o(66640);const r=t.CELL_TYPE="numeric";t.NumericCellType={CELL_TYPE:r,editor:s.NumericEditor,renderer:n.numericRenderer,validator:i.numericValidator,dataType:"number"}},1774:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(2401);t.CELL_TYPE=s.CELL_TYPE,t.PasswordCellType=s.PasswordCellType},2401:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(46138),n=o(15074);const i=t.CELL_TYPE="password";t.PasswordCellType={CELL_TYPE:i,editor:s.PasswordEditor,renderer:n.passwordRenderer,copyable:!1}},34299:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.getCellType=function(e){if(!c(e))throw Error(`You declared cell type "${e}" as a string that is not mapped to a known object.\n Cell type must be an object or a string mapped to an object registered by\n "Handsontable.cellTypes.registerCellType" method`);return h(e)},t.registerCellType=function(e,t){"string"!=typeof e&&(e=(t=e).CELL_TYPE);const{editor:o,renderer:s,validator:n}=t;o&&(0,i.registerEditor)(e,o);s&&(0,r.registerRenderer)(e,s);n&&(0,l.registerValidator)(e,n);a(e,t)},o(67834);var n=s(o(71263)),i=o(84558),r=o(44288),l=o(51255);const{register:a,getItem:h,hasItem:c,getNames:u,getValues:d}=(0,n.default)("cellTypes");t.getRegisteredCellTypes=d,t.getRegisteredCellTypeNames=u,t.hasCellType=c},85183:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(9771);t.CELL_TYPE=s.CELL_TYPE,t.SelectCellType=s.SelectCellType},9771:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(7507),n=o(31151);const i=t.CELL_TYPE="select";t.SelectCellType={CELL_TYPE:i,editor:s.SelectEditor,renderer:n.selectRenderer}},49676:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(18645);t.CELL_TYPE=s.CELL_TYPE,t.TextCellType=s.TextCellType},18645:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952),n=o(36748);const i=t.CELL_TYPE="text";t.TextCellType={CELL_TYPE:i,editor:s.TextEditor,renderer:n.textRenderer}},37574:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(4385);t.CELL_TYPE=s.CELL_TYPE,t.TimeCellType=s.TimeCellType},4385:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(14902),n=o(19698),i=o(51284);const r=t.CELL_TYPE="time";t.TimeCellType={CELL_TYPE:r,editor:s.TimeEditor,renderer:n.timeRenderer,validator:i.timeValidator}},87789:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.default=function(e,t){var o,s=this;let k=arguments.length>2&&void 0!==arguments[2]&&arguments[2],V=this;const F=new h.default(V);let W,B,U,j,Y,z,G=!0;(0,b.hasValidParameter)(k)&&(0,b.registerAsRootInstance)(this);this.rootElement=e,this.rootDocument=e.ownerDocument,this.rootWindow=this.rootDocument.defaultView,this.isDestroyed=!1,this.renderSuspendedCounter=0,this.executionSuspendedCounter=0;const $=null!==(o=null==t?void 0:t.layoutDirection)&&void 0!==o?o:"inherit",K=["rtl","ltr"].includes($)?$:this.rootWindow.getComputedStyle(this.rootElement).direction;this.rootElement.setAttribute("dir",K),this.isRtl=function(){return"rtl"===K},this.isLtr=function(){return!V.isRtl()},this.getDirectionFactor=function(){return V.isLtr()?1:-1},t.language=(0,M.getValidLanguageCode)(t.language);const X=new N.MetaManager(V,t,[N.DynamicCellMetaMod,N.ExtendMetaPropertiesMod]),q=X.getTableMeta(),Q=X.getGlobalMeta(),J=(0,P.createUniqueMap)();this.container=this.rootDocument.createElement("div"),this.renderCall=!1,e.insertBefore(this.container,e.firstChild),(0,b.isRootInstance)(this)&&(0,r._injectProductInfo)(t.licenseKey,e);this.guid=`ht_${(0,C.randomString)()}`,L.set(this.guid,this),this.columnIndexMapper=new R.IndexMapper,this.rowIndexMapper=new R.IndexMapper,this.columnIndexMapper.addLocalHook("indexesSequenceChange",(e=>{V.runHooks("afterColumnSequenceChange",e)})),this.rowIndexMapper.addLocalHook("indexesSequenceChange",(e=>{V.runHooks("afterRowSequenceChange",e)})),B=new E.default(V),this.rootElement.id&&"ht_"!==this.rootElement.id.substring(0,3)||(this.rootElement.id=this.guid);let Z=new I.Selection(q,{rowIndexMapper:V.rowIndexMapper,columnIndexMapper:V.columnIndexMapper,countCols:()=>V.countCols(),countRows:()=>V.countRows(),propToCol:e=>W.propToCol(e),isEditorOpened:()=>!!V.getActiveEditor()&&V.getActiveEditor().isOpened(),countRenderableColumns:()=>this.view.countRenderableColumns(),countRenderableRows:()=>this.view.countRenderableRows(),countRowHeaders:()=>this.countRowHeaders(),countColHeaders:()=>this.countColHeaders(),countRenderableRowsInRange:function(){return s.view.countRenderableRowsInRange(...arguments)},countRenderableColumnsInRange:function(){return s.view.countRenderableColumnsInRange(...arguments)},getShortcutManager:()=>V.getShortcutManager(),createCellCoords:(e,t)=>V._createCellCoords(e,t),createCellRange:(e,t,o)=>V._createCellRange(e,t,o),visualToRenderableCoords:e=>{const{row:t,col:o}=e;return V._createCellCoords(t>=0?V.rowIndexMapper.getRenderableFromVisualIndex(t):t,o>=0?V.columnIndexMapper.getRenderableFromVisualIndex(o):o)},renderableToVisualCoords:e=>{const{row:t,col:o}=e;return V._createCellCoords(t>=0?V.rowIndexMapper.getVisualFromRenderableIndex(t):t,o>=0?V.columnIndexMapper.getVisualFromRenderableIndex(o):o)},findFirstNonHiddenRenderableRow:(e,t)=>{const o=t>e?1:-1,s=Math.min(e,t),n=Math.max(e,t),i=V.rowIndexMapper.getNearestNotHiddenIndex(e,o);return null===i||1===o&&i>n||-1===o&&i<s?null:i>=0?V.rowIndexMapper.getRenderableFromVisualIndex(i):i},findFirstNonHiddenRenderableColumn:(e,t)=>{const o=t>e?1:-1,s=Math.min(e,t),n=Math.max(e,t),i=V.columnIndexMapper.getNearestNotHiddenIndex(e,o);return null===i||1===o&&i>n||-1===o&&i<s?null:i>=0?V.columnIndexMapper.getRenderableFromVisualIndex(i):i},isDisabledCellSelection:(e,t)=>e<0||t<0?V.getSettings().disableVisualSelection:V.getCellMeta(e,t).disableVisualSelection});this.selection=Z;const ee=e=>{let{hiddenIndexesChanged:t}=e;t&&this.selection.commit()};function te(e){const t=(0,O.normalizeLanguageCode)(e);(0,M.hasLanguageDictionary)(t)?(V.runHooks("beforeLanguageChange",t),Q.language=t,V.runHooks("afterLanguageChange",t)):(0,O.warnUserAboutLanguageRegistration)(e)}function oe(e,t){const o="className"===e?V.rootElement:V.table;if(G)(0,n.addClass)(o,t);else{let s=[],i=[];Q[e]&&(s=Array.isArray(Q[e])?Q[e]:(0,d.stringToArray)(Q[e])),t&&(i=Array.isArray(t)?t:(0,d.stringToArray)(t));const r=(0,d.getDifferenceOfArrays)(s,i),l=(0,d.getDifferenceOfArrays)(i,s);r.length&&(0,n.removeClass)(o,r),l.length&&(0,n.addClass)(o,l)}Q[e]=t}function se(){let e=!1;return{validatorsInQueue:0,valid:!0,addValidatorToQueue(){this.validatorsInQueue+=1,e=!1},removeValidatorFormQueue(){this.validatorsInQueue=this.validatorsInQueue-1<0?0:this.validatorsInQueue-1,this.checkIfQueueIsEmpty()},onQueueEmpty(){},checkIfQueueIsEmpty(){0===this.validatorsInQueue&&!1===e&&(e=!0,this.onQueueEmpty(this.valid))}}}function ne(e){const t=e.replace(",",".");return!1===isNaN(parseFloat(t))?parseFloat(t):e}function ie(e,t,o){if(!e.length)return void o();const s=V.getActiveEditor(),n=new se;let i=!0;n.onQueueEmpty=()=>{s&&i&&s.cancelChanges(),o()};for(let o=e.length-1;o>=0;o--){const[s,r,,l]=e[o],a=W.propToCol(r);let h;h=Number.isInteger(a)?V.getCellMeta(s,a):{...Object.getPrototypeOf(q),...q},"numeric"===h.type&&"string"==typeof l&&(0,v.isNumericLike)(l)&&(e[o][3]=ne(l)),V.getCellValidator(h)&&(n.addValidatorToQueue(),V.validateCell(e[o][3],h,function(t,o){return function(s){if("boolean"!=typeof s)throw new Error("Validation error: result is not boolean");!1===s&&!1===o.allowInvalid&&(i=!1,e.splice(t,1),o.valid=!0),n.removeValidatorFormQueue()}}(o,h),t))}n.checkIfQueueIsEmpty()}function re(e,t){for(let o=e.length-1;o>=0;o--){let s=!1;if(null!==e[o]){if(null!==e[o][2]&&void 0!==e[o][2]||null!==e[o][3]&&void 0!==e[o][3]){if(q.allowInsertRow)for(;e[o][0]>V.countRows()-1;){const{delta:e}=W.createRow(void 0,void 0,{source:t});if(0===e){s=!0;break}}if("array"===V.dataType&&(!q.columns||0===q.columns.length)&&q.allowInsertColumn)for(;W.propToCol(e[o][1])>V.countCols()-1;){const{delta:e}=W.createCol(void 0,void 0,{source:t});if(0===e){s=!0;break}}s||W.set(e[o][0],e[o][1],e[o][3])}}else e.splice(o,1)}const o=e.length>0;if(V.forceFullRender=!0,o){U.adjustRowsAndCols(),V.runHooks("beforeChangeRender",e,t),j.closeEditor(),V.view.render(),j.prepareEditor(),V.view.adjustElementsSize(),V.runHooks("afterChange",e,t||"edit");const o=V.getActiveEditor();o&&(0,r.isDefined)(o.refreshValue)&&o.refreshValue()}else V.view.render()}function le(e,t,o){return Array.isArray(e)?e:[[e,t,o]]}function ae(e,t){const o=V.getActiveEditor(),s=V.runHooks("beforeChange",e,t||"edit"),n=e.filter((e=>null!==e));return!1===s||0===n.length?(o&&o.cancelChanges(),[]):n}this.columnIndexMapper.addLocalHook("cacheUpdated",ee),this.rowIndexMapper.addLocalHook("cacheUpdated",ee),this.selection.addLocalHook("afterSetRangeEnd",((e,t)=>{const o=(0,c.createObjectPropListener)(!1),s=this.selection.getSelectedRange(),{from:i,to:r}=s.current(),l=s.size()-1;this.runHooks("afterSelection",i.row,i.col,r.row,r.col,o,l),this.runHooks("afterSelectionByProp",i.row,V.colToProp(i.col),r.row,V.colToProp(r.col),o,l),t&&(!o.isTouched()||o.isTouched()&&!o.value)&&z.scrollTo(e);const a=Z.isSelectedByRowHeader(),h=Z.isSelectedByColumnHeader();a&&h?(0,n.addClass)(this.rootElement,["ht__selection--rows","ht__selection--columns"]):a?((0,n.removeClass)(this.rootElement,"ht__selection--columns"),(0,n.addClass)(this.rootElement,"ht__selection--rows")):h?((0,n.removeClass)(this.rootElement,"ht__selection--rows"),(0,n.addClass)(this.rootElement,"ht__selection--columns")):(0,n.removeClass)(this.rootElement,["ht__selection--rows","ht__selection--columns"]),"shift"!==Z.getSelectionSource()&&j.closeEditor(null),V.view.render(),j.prepareEditor()})),this.selection.addLocalHook("beforeSetFocus",(e=>{this.runHooks("beforeSelectionFocusSet",e.row,e.col)})),this.selection.addLocalHook("afterSetFocus",(e=>{const t=(0,c.createObjectPropListener)(!1);this.runHooks("afterSelectionFocusSet",e.row,e.col,t),(!t.isTouched()||t.isTouched()&&!t.value)&&z.scrollTo(e),j.closeEditor(),V.view.render(),j.prepareEditor()})),this.selection.addLocalHook("afterSelectionFinished",(e=>{const t=e.length-1,{from:o,to:s}=e[t];this.runHooks("afterSelectionEnd",o.row,o.col,s.row,s.col,t),this.runHooks("afterSelectionEndByProp",o.row,V.colToProp(o.col),s.row,V.colToProp(s.col),t)})),this.selection.addLocalHook("afterIsMultipleSelection",(e=>{const t=this.runHooks("afterIsMultipleSelection",e.value);e.value&&(e.value=t)})),this.selection.addLocalHook("afterDeselect",(()=>{j.closeEditor(),V.view.render(),(0,n.removeClass)(this.rootElement,["ht__selection--rows","ht__selection--columns"]),this.runHooks("afterDeselect")})),this.selection.addLocalHook("beforeHighlightSet",(()=>this.runHooks("beforeSelectionHighlightSet"))).addLocalHook("beforeSetRangeStart",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSetRangeStart",...t)})).addLocalHook("beforeSetRangeStartOnly",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSetRangeStartOnly",...t)})).addLocalHook("beforeSetRangeEnd",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSetRangeEnd",...t)})).addLocalHook("beforeSelectColumns",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSelectColumns",...t)})).addLocalHook("afterSelectColumns",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterSelectColumns",...t)})).addLocalHook("beforeSelectRows",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSelectRows",...t)})).addLocalHook("afterSelectRows",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterSelectRows",...t)})).addLocalHook("beforeModifyTransformStart",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("modifyTransformStart",...t)})).addLocalHook("afterModifyTransformStart",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterModifyTransformStart",...t)})).addLocalHook("beforeModifyTransformFocus",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("modifyTransformFocus",...t)})).addLocalHook("afterModifyTransformFocus",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterModifyTransformFocus",...t)})).addLocalHook("beforeModifyTransformEnd",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("modifyTransformEnd",...t)})).addLocalHook("afterModifyTransformEnd",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterModifyTransformEnd",...t)})).addLocalHook("beforeRowWrap",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeRowWrap",...t)})).addLocalHook("beforeColumnWrap",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeColumnWrap",...t)})).addLocalHook("insertRowRequire",(e=>this.alter("insert_row_above",e,1,"auto"))).addLocalHook("insertColRequire",(e=>this.alter("insert_col_start",e,1,"auto"))),U={alter(e,t){var o,s;let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=arguments.length>3?arguments[3]:void 0,l=arguments.length>4?arguments[4]:void 0;const a=e=>{if(0===e.length)return[];const t=[...e];t.sort(((e,t)=>{let[o]=e,[s]=t;return o===s?0:o>s?1:-1}));return(0,d.arrayReduce)(t,((e,t)=>{let[o,s]=t;const n=e[e.length-1],[i,r]=n,l=i+r;if(o<=l){const e=Math.max(s-(l-o),0);n[1]+=e}else e.push([o,s]);return e}),[t[0]])};switch(e){case"insert_row_below":case"insert_row_above":const l=V.countSourceRows();if(q.maxRows===l)return;const h="insert_row_below"===e?"below":"above";t=null!==(o=t)&&void 0!==o?o:"below"===h?l:0;const{delta:c,startPhysicalIndex:u}=W.createRow(t,n,{source:i,mode:h});Z.shiftRows(V.toVisualRow(u),c);break;case"insert_col_start":case"insert_col_end":const g="insert_col_end"===e?"end":"start";t=null!==(s=t)&&void 0!==s?s:"end"===g?V.countSourceCols():0;const{delta:f,startPhysicalIndex:p}=W.createCol(t,n,{source:i,mode:g});if(f){if(Array.isArray(q.colHeaders)){const e=[V.toVisualColumn(p),0];e.length+=f,Array.prototype.splice.apply(q.colHeaders,e)}Z.shiftColumns(V.toVisualColumn(p),f)}break;case"remove_row":const m=e=>{let t=0;(0,d.arrayEach)(e,(e=>{let[o,s]=e;const n=(0,r.isEmpty)(o)?V.countRows()-1:Math.max(o-t,0);Number.isInteger(o)&&(o=Math.max(o-t,0));if(!W.removeRow(o,s,i))return;if(Z.isSelected()){const{row:e}=V.getSelectedRangeLast().highlight;e>=o&&e<=o+s-1&&j.closeEditor(!0)}const l=V.countRows();0===l?Z.deselect():"ContextMenu.removeRow"===i?Z.refresh():Z.shiftRows(o,-s);const a=q.fixedRowsTop;a>=n+1&&(q.fixedRowsTop-=Math.min(s,a-n));const h=q.fixedRowsBottom;h&&n>=l-h&&(q.fixedRowsBottom-=Math.min(s,h)),t+=s}))};Array.isArray(t)?m(a(t)):m([[t,n]]);break;case"remove_col":const w=e=>{let t=0;(0,d.arrayEach)(e,(e=>{let[o,s]=e;const n=(0,r.isEmpty)(o)?V.countCols()-1:Math.max(o-t,0);let l=V.toPhysicalColumn(n);Number.isInteger(o)&&(o=Math.max(o-t,0));if(!W.removeCol(o,s,i))return;if(Z.isSelected()){const{col:e}=V.getSelectedRangeLast().highlight;e>=o&&e<=o+s-1&&j.closeEditor(!0)}0===V.countCols()?Z.deselect():"ContextMenu.removeColumn"===i?Z.refresh():Z.shiftColumns(o,-s);const a=q.fixedColumnsStart;a>=n+1&&(q.fixedColumnsStart-=Math.min(s,a-n)),Array.isArray(q.colHeaders)&&(void 0===l&&(l=-1),q.colHeaders.splice(l,s)),t+=s}))};Array.isArray(t)?w(a(t)):w([[t,n]]);break;default:throw new Error(`There is no such action "${e}"`)}V.view.render(),l||U.adjustRowsAndCols()},adjustRowsAndCols(){const e=q.minRows,t=q.minSpareRows,o=q.minCols,s=q.minSpareCols;if(e){const t=V.countRows();t<e&&W.createRow(t,e-t,{source:"auto"})}if(t){const e=V.countEmptyRows(!0);if(e<t){const o=t-e,s=Math.min(o,q.maxRows-V.countSourceRows());W.createRow(V.countRows(),s,{source:"auto"})}}{let e;(o||s)&&(e=V.countEmptyCols(!0));let t=V.countCols();if(o&&!q.columns&&t<o){const s=o-t;e+=s,W.createCol(t,s,{source:"auto"})}if(s&&!q.columns&&"array"===V.dataType&&e<s){t=V.countCols();const o=s-e,n=Math.min(o,q.maxCols-t);W.createCol(t,n,{source:"auto"})}}V.view&&V.view.adjustElementsSize()},populateFromArray(e,t,o,s,n){let i,r,l,a;const h=[],u={},g=[],f=e.row,p=e.col;if(r=t.length,0===r)return!1;let m=0,w=0;switch((0,c.isObject)(o)&&(m=o.col-p+1,w=o.row-f+1),n){case"shift_down":const n=(0,d.pivot)(t),C=n.length,v=Math.max(C,m),y=V.getData().slice(f),E=(0,d.pivot)(y).slice(p,p+v);for(l=0;l<v;l+=1)if(l<C){for(i=0,r=n[l].length;i<w-r;i+=1)n[l].push(n[l][i%r]);l<E.length?g.push(n[l].concat(E[l])):g.push(n[l].concat(new Array(y.length).fill(null)))}else g.push(n[l%C].concat(E[l]));V.populateFromArray(f,p,(0,d.pivot)(g));break;case"shift_right":const S=t.length,R=Math.max(S,w),b=V.getData().slice(f).map((e=>e.slice(p)));for(i=0;i<R;i+=1)if(i<S){for(l=0,a=t[i].length;l<m-a;l+=1)t[i].push(t[i][l%a]);if(i<b.length)for(let e=0;e<b[i].length;e+=1)t[i].push(b[i][e]);else t[i].push(...new Array(b[0].length).fill(null))}else t.push(t[i%r].slice(0,R).concat(b[i]));V.populateFromArray(f,p,t);break;default:u.row=e.row,u.col=e.col;let _,T=0,M=0,O=!0;const I=function(e){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;const s=t[e%t.length];return null!==o?s[o%s.length]:s},N=t.length,A=o?o.row-e.row+1:0;for(r=o?A:Math.max(N,A),i=0;i<r&&!(o&&u.row>o.row&&A>N||!q.allowInsertRow&&u.row>V.countRows()-1||u.row>=q.maxRows);i++){const t=i-T,n=I(t).length,d=o?o.col-e.col+1:0;if(a=o?d:Math.max(n,d),u.col=e.col,_=V.getCellMeta(u.row,u.col),"CopyPaste.paste"!==s&&"Autofill.fill"!==s||!_.skipRowOnPaste){for(M=0,l=0;l<a&&!(o&&u.col>o.col&&d>n||!q.allowInsertColumn&&u.col>V.countCols()-1||u.col>=q.maxCols);l++){if(_=V.getCellMeta(u.row,u.col),("CopyPaste.paste"===s||"Autofill.fill"===s)&&_.skipColumnOnPaste){M+=1,u.col+=1,a+=1;continue}if(_.readOnly&&"UndoRedo.undo"!==s){u.col+=1;continue}let e=I(t,l-M),o=V.getDataAtCell(u.row,u.col);if(null!==e&&"object"==typeof e)if(Array.isArray(e)&&null===o&&(o=[]),null===o||"object"!=typeof o)O=!1;else{const t=(0,c.duckSchema)(Array.isArray(o)?o:o[0]||o),s=(0,c.duckSchema)(Array.isArray(e)?e:e[0]||e);(0,c.isObjectEqual)(t,s)||Array.isArray(t)&&Array.isArray(s)?e=(0,c.deepClone)(e):O=!1}else null!==o&&"object"==typeof o&&(O=!1);O&&h.push([u.row,u.col,e]),O=!0,u.col+=1}u.row+=1}else T+=1,u.row+=1,r+=1}V.setDataAtCell(h,null,null,s||"populateFromArray")}}},this.init=function(){B.setData(q.data),V.runHooks("beforeInit"),((0,l.isMobileBrowser)()||(0,l.isIpadOS)())&&(0,n.addClass)(V.rootElement,"mobile"),this.updateSettings(q,!0),this.view=new y.default(this),j=a.default.getInstance(V,q,Z),z=(0,A.createViewportScroller)(V),Y=new u.FocusManager(V),(0,b.isRootInstance)(this)&&(0,A.installFocusCatcher)(V),V.runHooks("init"),this.forceFullRender=!0,this.view.render(),G&&null===V.rootElement.offsetParent&&(0,n.observeVisibilityChangeOnce)(V.rootElement,(()=>{V.view._wt.wtOverlays.updateLastSpreaderSize(),V.render(),V.view.adjustElementsSize()})),"object"==typeof G&&(V.runHooks("afterChange",G[0],G[1]),G=!1),V.runHooks("afterInit")},this._createCellCoords=function(e,t){return V.view._wt.createCellCoords(e,t)},this._createCellRange=function(e,t,o){return V.view._wt.createCellRange(e,t,o)},this.validateCell=function(e,t,o,s){let n=V.getCellValidator(t);function l(e){if(!(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])||!0===t.hidden)return void o(e);const s=t.visualCol,n=t.visualRow,i=V.getCell(n,s,!0);if(i&&"TH"!==i.nodeName){const e=V.rowIndexMapper.getRenderableFromVisualIndex(n),t=V.columnIndexMapper.getRenderableFromVisualIndex(s);V.view._wt.getSetting("cellRenderer",e,t,i)}o(e)}var a;(0,r.isRegExp)(n)&&(a=n,n=function(e,t){t(a.test(e))}),(0,i.isFunction)(n)?(e=V.runHooks("beforeValidate",e,t.visualRow,t.prop,s),V._registerImmediate((()=>{n.call(t,e,(o=>{V&&(o=V.runHooks("afterValidate",o,e,t.visualRow,t.prop,s),t.valid=o,l(o),V.runHooks("postAfterValidate",o,e,t.visualRow,t.prop,s))}))}))):V._registerImmediate((()=>{t.valid=!0,l(t.valid,!1)}))},this.setDataAtCell=function(e,t,o,s){const n=le(e,t,o),i=[];let r,l,a,h=s;for(r=0,l=n.length;r<l;r++){if("object"!=typeof n[r])throw new Error("Method `setDataAtCell` accepts row number or changes array of arrays as its first parameter");if("number"!=typeof n[r][1])throw new Error("Method `setDataAtCell` accepts row and column number as its parameters. If you want to use object property name, use method `setDataAtRowProp`");a=n[r][1]>=this.countCols()?n[r][1]:W.colToProp(n[r][1]),i.push([n[r][0],a,B.getAtCell(this.toPhysicalRow(n[r][0]),n[r][1]),n[r][2]])}h||"object"!=typeof e||(h=t);const c=ae(i,s);V.runHooks("afterSetDataAtCell",c,h),ie(c,h,(()=>{re(c,h)}))},this.setDataAtRowProp=function(e,t,o,s){const n=le(e,t,o),i=[];let r,l,a=s;for(r=0,l=n.length;r<l;r++)i.push([n[r][0],n[r][1],B.getAtCell(this.toPhysicalRow(n[r][0]),n[r][1]),n[r][2]]);a||"object"!=typeof e||(a=t);const h=ae(i,s);V.runHooks("afterSetDataAtRowProp",h,a),ie(h,a,(()=>{re(h,a)}))},this.listen=function(){V&&!V.isListening()&&(L.forEach((e=>{V!==e&&e.unlisten()})),D=V.guid,V.runHooks("afterListen"))},this.unlisten=function(){this.isListening()&&(D=null,V.runHooks("afterUnlisten"))},this.isListening=function(){return D===V.guid},this.destroyEditor=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];j.closeEditor(e),V.view.render(),t&&Z.isSelected()&&j.prepareEditor()},this.populateFromArray=function(e,t,o,s,n,i,r){if("object"!=typeof o||"object"!=typeof o[0])throw new Error("populateFromArray parameter `input` must be an array of arrays");const l="number"==typeof s?V._createCellCoords(s,n):null;return U.populateFromArray(V._createCellCoords(e,t),o,l,i,r)},this.spliceCol=function(e,t,o){for(var s=arguments.length,n=new Array(s>3?s-3:0),i=3;i<s;i++)n[i-3]=arguments[i];return W.spliceCol(e,t,o,...n)},this.spliceRow=function(e,t,o){for(var s=arguments.length,n=new Array(s>3?s-3:0),i=3;i<s;i++)n[i-3]=arguments[i];return W.spliceRow(e,t,o,...n)},this.getSelected=function(){if(Z.isSelected())return(0,d.arrayMap)(Z.getSelectedRange(),(e=>{let{from:t,to:o}=e;return[t.row,t.col,o.row,o.col]}))},this.getSelectedLast=function(){const e=this.getSelected();let t;return e&&e.length>0&&(t=e[e.length-1]),t},this.getSelectedRange=function(){if(Z.isSelected())return Array.from(Z.getSelectedRange())},this.getSelectedRangeLast=function(){const e=this.getSelectedRange();let t;return e&&e.length>0&&(t=e[e.length-1]),t},this.emptySelectedCells=function(e){if(!Z.isSelected()||0===this.countRows()||0===this.countCols())return;const t=[];(0,d.arrayEach)(Z.getSelectedRange(),(e=>{if(e.isSingleHeader())return;const o=e.getTopStartCorner(),s=e.getBottomEndCorner();(0,v.rangeEach)(o.row,s.row,(e=>{(0,v.rangeEach)(o.col,s.col,(o=>{this.getCellMeta(e,o).readOnly||t.push([e,o,null])}))}))})),t.length>0&&this.setDataAtCell(t,e)},this.isRenderSuspended=function(){return this.renderSuspendedCounter>0},this.suspendRender=function(){this.renderSuspendedCounter+=1},this.resumeRender=function(){const e=this.renderSuspendedCounter-1;this.renderSuspendedCounter=Math.max(e,0),this.isRenderSuspended()||e!==this.renderSuspendedCounter||(this.renderCall?this.render():V.view.render())},this.render=function(){this.view&&(this.renderCall=!0,this.forceFullRender=!0,this.isRenderSuspended()||V.view.render())},this.batchRender=function(e){this.suspendRender();const t=e();return this.resumeRender(),t},this.isExecutionSuspended=function(){return this.executionSuspendedCounter>0},this.suspendExecution=function(){this.executionSuspendedCounter+=1,this.columnIndexMapper.suspendOperations(),this.rowIndexMapper.suspendOperations()},this.resumeExecution=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=this.executionSuspendedCounter-1;this.executionSuspendedCounter=Math.max(t,0),(!this.isExecutionSuspended()&&t===this.executionSuspendedCounter||e)&&(this.columnIndexMapper.resumeOperations(),this.rowIndexMapper.resumeOperations())},this.batchExecution=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.suspendExecution();const o=e();return this.resumeExecution(t),o},this.batch=function(e){this.suspendRender(),this.suspendExecution();const t=e();return this.resumeExecution(),this.resumeRender(),t},this.refreshDimensions=function(){if(!V.view)return;const{width:e,height:t}=V.view.getLastSize(),{width:o,height:s}=V.rootElement.getBoundingClientRect(),n=o!==e||s!==t;!1===V.runHooks("beforeRefreshDimensions",{width:e,height:t},{width:o,height:s},n)||((n||V.view._wt.wtOverlays.scrollableElement===V.rootWindow)&&(V.view.setLastSize(o,s),V.render()),V.runHooks("afterRefreshDimensions",{width:e,height:t},{width:o,height:s},n))},this.updateData=function(e,t){(0,N.replaceData)(e,(e=>{W=e}),(e=>{W=e,V.columnIndexMapper.fitToLength(this.getInitialColumnCount()),V.rowIndexMapper.fitToLength(this.countSourceRows()),U.adjustRowsAndCols(),Z.refresh()}),{hotInstance:V,dataMap:W,dataSource:B,internalSource:"updateData",source:t,metaManager:X,firstRun:G})},this.loadData=function(e,t){(0,N.replaceData)(e,(e=>{W=e}),(()=>{X.clearCellsCache(),V.initIndexMappers(),U.adjustRowsAndCols(),Z.refresh(),G&&(G=[null,"loadData"])}),{hotInstance:V,dataMap:W,dataSource:B,internalSource:"loadData",source:t,metaManager:X,firstRun:G})},this.getInitialColumnCount=function(){const e=q.columns;let t=0;if(Array.isArray(e))t=e.length;else if((0,i.isFunction)(e))if("array"===V.dataType){const o=this.countSourceCols();for(let s=0;s<o;s+=1)e(s)&&(t+=1)}else"object"!==V.dataType&&"function"!==V.dataType||(t=W.colToPropCache.length);else if((0,r.isDefined)(q.dataSchema)){const e=W.getSchema();t=Array.isArray(e)?e.length:(0,c.deepObjectSize)(e)}else t=this.countSourceCols();return t},this.initIndexMappers=function(){this.columnIndexMapper.initToLength(this.getInitialColumnCount()),this.rowIndexMapper.initToLength(this.countSourceRows())},this.getData=function(e,t,o,s){return(0,r.isUndefined)(e)?W.getAll():W.getRange(V._createCellCoords(e,t),V._createCellCoords(o,s),W.DESTINATION_RENDERER)},this.getCopyableText=function(e,t,o,s){return W.getCopyableText(V._createCellCoords(e,t),V._createCellCoords(o,s))},this.getCopyableData=function(e,t){return W.getCopyable(e,W.colToProp(t))},this.getSchema=function(){return W.getSchema()},this.updateSettings=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const o=(G?V.loadData:V.updateData).bind(this);let s,n,l=!1;if((0,r.isDefined)(e.rows))throw new Error('The "rows" setting is no longer supported. Do you mean startRows, minRows or maxRows?');if((0,r.isDefined)(e.cols))throw new Error('The "cols" setting is no longer supported. Do you mean startCols, minCols or maxCols?');if((0,r.isDefined)(e.ganttChart))throw new Error('Since 8.0.0 the "ganttChart" setting is no longer supported.');for(s in e)"data"===s||("language"===s?te(e.language):"className"===s?oe("className",e.className):"tableClassName"===s&&V.table?(oe("tableClassName",e.tableClassName),V.view._wt.wtOverlays.syncOverlayTableClassNames()):T.default.getSingleton().isRegistered(s)||T.default.getSingleton().isDeprecated(s)?((0,i.isFunction)(e[s])||Array.isArray(e[s]))&&(e[s].initialHook=!0,V.addHook(s,e[s])):!t&&(0,c.hasOwnProperty)(e,s)&&(Q[s]=e[s]));void 0===e.data&&void 0===q.data?o(null,"updateSettings"):void 0!==e.data?o(e.data,"updateSettings"):void 0!==e.columns&&(W.createMap(),V.initIndexMappers());const a=V.countCols(),h=q.columns;if(h&&(0,i.isFunction)(h)&&(l=!0),void 0===e.cell&&void 0===e.cells&&void 0===e.columns||X.clearCache(),a>0)for(s=0,n=0;s<a;s++){if(h){const e=l?h(s):h[n];e&&X.updateColumnMeta(n,e)}n+=1}(0,r.isDefined)(e.cell)&&(0,c.objectEach)(e.cell,(e=>{V.setCellMetaObject(e.row,e.col,e)})),V.runHooks("afterCellMetaReset");let u=V.rootElement.style.height;""!==u&&(u=parseInt(V.rootElement.style.height,10));let d=e.height;if((0,i.isFunction)(d)&&(d=d()),t){V.rootElement.getAttribute("style")&&V.rootElement.setAttribute("data-initialstyle",V.rootElement.getAttribute("style"))}if(null===d){const e=V.rootElement.getAttribute("data-initialstyle");e&&(e.indexOf("height")>-1||e.indexOf("overflow")>-1)?V.rootElement.setAttribute("style",e):(V.rootElement.style.height="",V.rootElement.style.overflow="")}else void 0!==d&&(V.rootElement.style.height=isNaN(d)?`${d}`:`${d}px`,V.rootElement.style.overflow="hidden");if(void 0!==e.width){let t=e.width;(0,i.isFunction)(t)&&(t=t()),V.rootElement.style.width=isNaN(t)?`${t}`:`${t}px`}t||(V.view&&(V.view._wt.wtViewport.resetHasOversizedColumnHeadersMarked(),V.view._wt.exportSettingsAsClassNames()),V.runHooks("afterUpdateSettings",e)),U.adjustRowsAndCols(),V.view&&!G&&(V.forceFullRender=!0,V.view.render(),V.view._wt.wtOverlays.adjustElementsSize()),t||!V.view||""!==u&&""!==d&&void 0!==d||u===d||V.view._wt.wtOverlays.updateMainScrollableElements()},this.getValue=function(){const e=V.getSelectedLast();if(q.getValue){if((0,i.isFunction)(q.getValue))return q.getValue.call(V);if(e)return V.getData()[e[0][0]][q.getValue]}else if(e)return V.getDataAtCell(e[0],e[1])},this.getSettings=function(){return q},this.clear=function(){this.selectAll(),this.emptySelectedCells()},this.alter=function(e,t,o,s,n){U.alter(e,t,o,s,n)},this.getCell=function(e,t){let o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],s=t,n=e;if(t>=0){if(this.columnIndexMapper.isHidden(this.toPhysicalColumn(t)))return null;s=this.columnIndexMapper.getRenderableFromVisualIndex(t)}if(e>=0){if(this.rowIndexMapper.isHidden(this.toPhysicalRow(e)))return null;n=this.rowIndexMapper.getRenderableFromVisualIndex(e)}return null===n||null===s||void 0===n||void 0===s?null:V.view.getCellAtCoords(V._createCellCoords(n,s),o)},this.getCoords=function(e){const t=this.view._wt.wtTable.getCoords(e);if(null===t)return null;const{row:o,col:s}=t;let n=o,i=s;return o>=0&&(n=this.rowIndexMapper.getVisualFromRenderableIndex(o)),s>=0&&(i=this.columnIndexMapper.getVisualFromRenderableIndex(s)),V._createCellCoords(n,i)},this.colToProp=function(e){return W.colToProp(e)},this.propToCol=function(e){return W.propToCol(e)},this.toVisualRow=e=>this.rowIndexMapper.getVisualFromPhysicalIndex(e),this.toVisualColumn=e=>this.columnIndexMapper.getVisualFromPhysicalIndex(e),this.toPhysicalRow=e=>this.rowIndexMapper.getPhysicalFromVisualIndex(e),this.toPhysicalColumn=e=>this.columnIndexMapper.getPhysicalFromVisualIndex(e),this.getDataAtCell=function(e,t){return W.get(e,W.colToProp(t))},this.getDataAtRowProp=function(e,t){return W.get(e,t)},this.getDataAtCol=function(e){const t=[],o=W.getRange(V._createCellCoords(0,e),V._createCellCoords(q.data.length-1,e),W.DESTINATION_RENDERER);for(let e=0;e<o.length;e+=1)for(let s=0;s<o[e].length;s+=1)t.push(o[e][s]);return t},this.getDataAtProp=function(e){const t=[],o=W.getRange(V._createCellCoords(0,W.propToCol(e)),V._createCellCoords(q.data.length-1,W.propToCol(e)),W.DESTINATION_RENDERER);for(let e=0;e<o.length;e+=1)for(let s=0;s<o[e].length;s+=1)t.push(o[e][s]);return t},this.getSourceData=function(e,t,o,s){let n;return n=void 0===e?B.getData():B.getByRange(V._createCellCoords(e,t),V._createCellCoords(o,s)),n},this.getSourceDataArray=function(e,t,o,s){let n;return n=void 0===e?B.getData(!0):B.getByRange(V._createCellCoords(e,t),V._createCellCoords(o,s),!0),n},this.getSourceDataAtCol=function(e){return B.getAtColumn(e)},this.setSourceDataAtCell=function(e,t,o,s){const n=le(e,t,o),i=this.hasHook("afterSetSourceDataAtCell"),l=[];i&&(0,d.arrayEach)(n,(e=>{let[t,o,s]=e;l.push([t,o,B.getAtCell(t,o),s])})),(0,d.arrayEach)(n,(e=>{let[t,o,s]=e;B.setAtCell(t,o,s)})),i&&this.runHooks("afterSetSourceDataAtCell",l,s),this.render();const a=V.getActiveEditor();a&&(0,r.isDefined)(a.refreshValue)&&a.refreshValue()},this.getSourceDataAtRow=function(e){return B.getAtRow(e)},this.getSourceDataAtCell=function(e,t){return B.getAtCell(e,t)},this.getDataAtRow=function(e){return W.getRange(V._createCellCoords(e,0),V._createCellCoords(e,this.countCols()-1),W.DESTINATION_RENDERER)[0]||[]},this.getDataType=function(e,t,o,s){const n=void 0===e?[0,0,this.countRows(),this.countCols()]:[e,t,o,s],[i,r]=n;let[,,l,a]=n,h=null,c=null;void 0===l&&(l=i),void 0===a&&(a=r);let u="mixed";return(0,v.rangeEach)(Math.max(Math.min(i,l),0),Math.max(i,l),(e=>{let t=!0;return(0,v.rangeEach)(Math.max(Math.min(r,a),0),Math.max(r,a),(o=>{const s=this.getCellMeta(e,o);return c=s.type,h?t=h===c:h=c,t})),u=t?c:"mixed",t})),u},this.removeCellMeta=function(e,t,o){const[s,n]=[this.toPhysicalRow(e),this.toPhysicalColumn(t)];let i=X.getCellMetaKeyValue(s,n,o);!1!==V.runHooks("beforeRemoveCellMeta",e,t,o,i)&&(X.removeCellMeta(s,n,o),V.runHooks("afterRemoveCellMeta",e,t,o,i)),i=null},this.spliceCellsMeta=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;for(var o=arguments.length,s=new Array(o>2?o-2:0),n=2;n<o;n++)s[n-2]=arguments[n];if(s.length>0&&!Array.isArray(s[0]))throw new Error("The 3rd argument (cellMetaRows) has to be passed as an array of cell meta objects array.");t>0&&X.removeRow(this.toPhysicalRow(e),t),s.length>0&&(0,d.arrayEach)(s.reverse(),(t=>{X.createRow(this.toPhysicalRow(e)),(0,d.arrayEach)(t,((t,o)=>this.setCellMetaObject(e,o,t)))})),V.render()},this.setCellMetaObject=function(e,t,o){"object"==typeof o&&(0,c.objectEach)(o,((o,s)=>{this.setCellMeta(e,t,s,o)}))},this.setCellMeta=function(e,t,o,s){if(!1===V.runHooks("beforeSetCellMeta",e,t,o,s))return;let n=e,i=t;e<this.countRows()&&(n=this.toPhysicalRow(e)),t<this.countCols()&&(i=this.toPhysicalColumn(t)),X.setCellMeta(n,i,o,s),V.runHooks("afterSetCellMeta",e,t,o,s)},this.getCellsMeta=function(){return X.getCellsMeta()},this.getCellMeta=function(e,t){let o=this.toPhysicalRow(e),s=this.toPhysicalColumn(t);return null===o&&(o=e),null===s&&(s=t),X.getCellMeta(o,s,{visualRow:e,visualColumn:t})},this.getColumnMeta=function(e){return X.getColumnMeta(this.toPhysicalColumn(e))},this.getCellMetaAtRow=function(e){return X.getCellsMetaAtRow(e)},this.isColumnModificationAllowed=function(){return!("object"===V.dataType||q.columns)},this.getCellRenderer=function(e,t){const o="number"==typeof e?V.getCellMeta(e,t).renderer:e.renderer;return"string"==typeof o?(0,p.getRenderer)(o):(0,r.isUndefined)(o)?(0,p.getRenderer)("text"):o},this.getCellEditor=function(e,t){const o="number"==typeof e?V.getCellMeta(e,t).editor:e.editor;return"string"==typeof o?(0,m.getEditor)(o):(0,r.isUndefined)(o)?(0,m.getEditor)("text"):o},this.getCellValidator=function(e,t){const o="number"==typeof e?V.getCellMeta(e,t).validator:e.validator;return"string"==typeof o?(0,w.getValidator)(o):o},this.validateCells=function(e){this._validateCells(e)},this.validateRows=function(e,t){if(!Array.isArray(e))throw new Error("validateRows parameter `rows` must be an array");this._validateCells(t,e)},this.validateColumns=function(e,t){if(!Array.isArray(e))throw new Error("validateColumns parameter `columns` must be an array");this._validateCells(t,void 0,e)},this._validateCells=function(e,t,o){const s=new se;e&&(s.onQueueEmpty=e);let n=V.countRows()-1;for(;n>=0;){if(void 0!==t&&-1===t.indexOf(n)){n-=1;continue}let e=V.countCols()-1;for(;e>=0;)void 0===o||-1!==o.indexOf(e)?(s.addValidatorToQueue(),V.validateCell(V.getDataAtCell(n,e),V.getCellMeta(n,e),(e=>{if("boolean"!=typeof e)throw new Error("Validation error: result is not boolean");!1===e&&(s.valid=!1),s.removeValidatorFormQueue()}),"validateCells"),e-=1):e-=1;n-=1}s.checkIfQueueIsEmpty()},this.getRowHeader=function(e){let t=q.rowHeaders,o=e;return void 0!==o&&(o=V.runHooks("modifyRowHeader",o)),void 0===o?(t=[],(0,v.rangeEach)(V.countRows()-1,(e=>{t.push(V.getRowHeader(e))}))):Array.isArray(t)&&void 0!==t[o]?t=t[o]:(0,i.isFunction)(t)?t=t(o):t&&"string"!=typeof t&&"number"!=typeof t&&(t=o+1),t},this.hasRowHeaders=function(){return!!q.rowHeaders},this.hasColHeaders=function(){if(void 0!==q.colHeaders&&null!==q.colHeaders)return!!q.colHeaders;for(let e=0,t=V.countCols();e<t;e++)if(V.getColHeader(e))return!0;return!1},this.getColHeader=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;const o=V.runHooks("modifyColHeader",e);if(void 0===o){const e=[],t=V.countCols();for(let o=0;o<t;o++)e.push(V.getColHeader(o));return e}let s=q.colHeaders;const n=V.toPhysicalColumn(o),r=function(e){const t=[],o=V.countCols();let s=0;for(;s<o;s++)(0,i.isFunction)(q.columns)&&q.columns(s)&&t.push(s);return t[e]}(n);return!1===q.colHeaders?s=null:q.columns&&(0,i.isFunction)(q.columns)&&q.columns(r)&&q.columns(r).title?s=q.columns(r).title:q.columns&&q.columns[n]&&q.columns[n].title?s=q.columns[n].title:Array.isArray(q.colHeaders)&&void 0!==q.colHeaders[n]?s=q.colHeaders[n]:(0,i.isFunction)(q.colHeaders)?s=q.colHeaders(n):q.colHeaders&&"string"!=typeof q.colHeaders&&"number"!=typeof q.colHeaders&&(s=(0,S.spreadsheetColumnLabel)(o)),s=V.runHooks("modifyColumnHeaderValue",s,e,t),s},this._getColWidthFromSettings=function(e){let t;if(e>=0){t=V.getCellMeta(0,e).width}if(void 0!==t&&t!==q.width||(t=q.colWidths),null!=t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getColWidth=function(e){let t=V._getColWidthFromSettings(e);return t=V.runHooks("modifyColWidth",t,e),void 0===t&&(t=_.DEFAULT_COLUMN_WIDTH),t},this._getRowHeightFromSettings=function(e){let t=q.rowHeights;if(null!=t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getRowHeight=function(e){let t=V._getRowHeightFromSettings(e);return t=V.runHooks("modifyRowHeight",t,e),t},this.countSourceRows=function(){return B.countRows()},this.countSourceCols=function(){return B.countFirstRowKeys()},this.countRows=function(){return W.getLength()},this.countCols=function(){const e=q.maxCols,t=this.columnIndexMapper.getNotTrimmedIndexesLength();return Math.min(e,t)},this.countRenderedRows=function(){return V.view._wt.drawn?V.view._wt.wtTable.getRenderedRowsCount():-1},this.countVisibleRows=function(){return V.view._wt.drawn?V.view._wt.wtTable.getVisibleRowsCount():-1},this.countRenderedCols=function(){return V.view._wt.drawn?V.view._wt.wtTable.getRenderedColumnsCount():-1},this.countVisibleCols=function(){return V.view._wt.drawn?V.view._wt.wtTable.getVisibleColumnsCount():-1},this.countRowHeaders=function(){return this.view.getRowHeadersCount()},this.countColHeaders=function(){return this.view.getColumnHeadersCount()},this.countEmptyRows=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=0;return(0,v.rangeEachReverse)(V.countRows()-1,(o=>{if(V.isEmptyRow(o))t+=1;else if(!0===e)return!1})),t},this.countEmptyCols=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=0;return(0,v.rangeEachReverse)(V.countCols()-1,(o=>{if(V.isEmptyCol(o))t+=1;else if(!0===e)return!1})),t},this.isEmptyRow=function(e){return q.isEmptyRow.call(V,e)},this.isEmptyCol=function(e){return q.isEmptyCol.call(V,e)},this.selectCell=function(e,t,o,s){let n=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];return!(0,r.isUndefined)(e)&&!(0,r.isUndefined)(t)&&this.selectCells([[e,t,o,s]],n,i)},this.selectCells=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[[]],t=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];!1===(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&z.suspend();const o=Z.selectCells(e);return o&&t&&V.listen(),z.resume(),o},this.selectColumns=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=arguments.length>2?arguments[2]:void 0;return Z.selectColumns(e,t,o)},this.selectRows=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=arguments.length>2?arguments[2]:void 0;return Z.selectRows(e,t,o)},this.deselectCell=function(){Z.deselect()},this.selectAll=function(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=arguments.length>2?arguments[2]:void 0;z.skipNextScrollCycle(),Z.selectAll(e,t,o)};const he=(e,t)=>e.getNearestNotHiddenIndex(t,1,!0);this.scrollViewportTo=function(e){var t,o;"number"==typeof e&&(e={row:arguments[0],col:arguments[1],verticalSnap:arguments[2]?"bottom":"top",horizontalSnap:arguments[3]?"end":"start",considerHiddenIndexes:null===(o=arguments[4])||void 0===o||o});const{row:s,col:n,verticalSnap:i,horizontalSnap:r,considerHiddenIndexes:l}=null!==(t=e)&&void 0!==t?t:{};let a,h,c,u;void 0!==i&&(a="top"===i,h=!a),void 0!==r&&(c="start"===r,u=!c);let d=s,g=n;if(void 0===l||l){const e=Number.isInteger(s)&&s>=0,t=Number.isInteger(n)&&n>=0,o=e?he(this.rowIndexMapper,s):void 0,i=t?he(this.columnIndexMapper,n):void 0;if(null===o||null===i)return!1;d=e?V.rowIndexMapper.getRenderableFromVisualIndex(o):s,g=t?V.columnIndexMapper.getRenderableFromVisualIndex(i):n}const f=Number.isInteger(d),p=Number.isInteger(g);return f&&d>=0&&p&&g>=0?V.view.scrollViewport(V._createCellCoords(d,g),a,u,h,c):f&&d>=0&&(p&&g<0||!p)?V.view.scrollViewportVertically(d,a,h):!!(p&&g>=0&&(f&&d<0||!f))&&V.view.scrollViewportHorizontally(g,u,c)},this.scrollToFocusedCell=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:()=>{};if(!this.selection.isSelected())return;this.addHookOnce("afterScroll",e);const{highlight:t}=this.getSelectedRangeLast();this.scrollViewportTo(t.toObject())?this.view.render():(this.removeHook("afterScroll",e),this._registerImmediate((()=>e())))},this.destroy=function(){if(V._clearTimeouts(),V._clearImmediates(),V.view&&V.view.destroy(),B&&B.destroy(),B=null,this.getShortcutManager().destroy(),X.clearCache(),L.delete(this.guid),(0,b.isRootInstance)(V)){const e=this.rootDocument.querySelector(".hot-display-license-info");e&&e.parentNode.removeChild(e)}(0,n.empty)(V.rootElement),F.destroy(),j&&j.destroy(),V.batchExecution((()=>{V.rowIndexMapper.unregisterAll(),V.columnIndexMapper.unregisterAll(),J.getItems().forEach((e=>{let[,t]=e;t.destroy()})),J.clear(),V.runHooks("afterDestroy")}),!0),T.default.getSingleton().destroy(V),(0,c.objectEach)(V,((e,t,o)=>{var s;(0,i.isFunction)(e)?o[t]=(s=t,()=>{throw new Error(`The "${s}" method cannot be called because this Handsontable instance has been destroyed`)}):"guid"!==t&&(o[t]=null)})),V.isDestroyed=!0,W&&W.destroy(),W=null,U=null,Z=null,j=null,V=null},this.getActiveEditor=function(){return j.getActiveEditor()},this.getFirstRenderedVisibleRow=function(){return V.view.getFirstRenderedVisibleRow()},this.getLastRenderedVisibleRow=function(){return V.view.getLastRenderedVisibleRow()},this.getFirstRenderedVisibleColumn=function(){return V.view.getFirstRenderedVisibleColumn()},this.getLastRenderedVisibleColumn=function(){return V.view.getLastRenderedVisibleColumn()},this.getFirstFullyVisibleRow=function(){return V.view.getFirstFullyVisibleRow()},this.getLastFullyVisibleRow=function(){return V.view.getLastFullyVisibleRow()},this.getFirstFullyVisibleColumn=function(){return V.view.getFirstFullyVisibleColumn()},this.getLastFullyVisibleColumn=function(){return V.view.getLastFullyVisibleColumn()},this.getFirstPartiallyVisibleRow=function(){return V.view.getFirstPartiallyVisibleRow()},this.getLastPartiallyVisibleRow=function(){return V.view.getLastPartiallyVisibleRow()},this.getFirstPartiallyVisibleColumn=function(){return V.view.getFirstPartiallyVisibleColumn()},this.getLastPartiallyVisibleColumn=function(){return V.view.getLastPartiallyVisibleColumn()},this.getPlugin=function(e){const t=(0,C.toUpperCaseFirst)(e);return"UndoRedo"===t?this.undoRedo:J.getItem(t)},this.getPluginName=function(e){return e===this.undoRedo?this.undoRedo.constructor.PLUGIN_KEY:J.getId(e)},this.getInstance=function(){return V},this.addHook=function(e,t,o){T.default.getSingleton().add(e,t,V,o)},this.hasHook=function(e){return T.default.getSingleton().has(e,V)||T.default.getSingleton().has(e)},this.addHookOnce=function(e,t,o){T.default.getSingleton().once(e,t,V,o)},this.removeHook=function(e,t){T.default.getSingleton().remove(e,t,V)},this.runHooks=function(e,t,o,s,n,i,r){return T.default.getSingleton().run(V,e,t,o,s,n,i,r)},this.getTranslatedPhrase=function(e,t){return(0,M.getTranslatedPhrase)(q.language,e,t)},this.toHTML=()=>(0,g.instanceToHTML)(this),this.toTableElement=()=>{const e=this.rootDocument.createElement("div");return e.insertAdjacentHTML("afterbegin",(0,g.instanceToHTML)(this)),e.firstElementChild},this.timeouts=[],this._registerTimeout=function(e){let t=e;"function"==typeof t&&(t=setTimeout(t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0)),this.timeouts.push(t)},this._clearTimeouts=function(){(0,d.arrayEach)(this.timeouts,(e=>{clearTimeout(e)}))},this.immediates=[],this._registerImmediate=function(e){this.immediates.push(setImmediate(e))},this._clearImmediates=function(){(0,d.arrayEach)(this.immediates,(e=>{clearImmediate(e)}))},this._getEditorManager=function(){return j},this.isRtl=function(){return"rtl"===V.rootWindow.getComputedStyle(V.rootElement).direction},this.isLtr=function(){return!V.isRtl()},this.getDirectionFactor=function(){return V.isLtr()?1:-1};const ce=(0,x.createShortcutManager)({handleEvent:()=>V.isListening(),beforeKeyDown:e=>this.runHooks("beforeKeyDown",e),afterKeyDown:e=>{this.isDestroyed||V.runHooks("afterDocumentKeyDown",e)},ownerWindow:this.rootWindow});this.addHook("beforeOnCellMouseDown",(e=>{!1===e.ctrlKey&&!1===e.metaKey&&ce.releasePressedKeys()})),this.getShortcutManager=function(){return ce},this.getFocusManager=function(){return Y},(0,f.getPluginsNames)().forEach((e=>{const t=(0,f.getPlugin)(e);J.addItem(e,new t(this))})),(0,H.registerAllShortcutContexts)(V),ce.setActiveContextName("grid"),T.default.getSingleton().run(V,"construct")},o(67834),o(15724),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620),o(71766);var n=o(9893),i=o(78832),r=o(38893),l=o(28890),a=s(o(18344)),h=s(o(82629)),c=o(13911),u=o(26505),d=o(9175),g=o(74737),f=o(90532),p=o(44288),m=o(84558),w=o(51255),C=o(59777),v=o(87485),y=s(o(66801)),E=s(o(12248)),S=o(56216),R=o(93969),b=o(11015),_=o(90),T=s(o(56937)),M=o(74174),O=o(75032),I=o(73497),N=o(71757),A=o(48246),P=o(84134),x=o(57660),H=o(37947);let D=null;const L=new Map;new Set},63745:(e,t,o)=>{"use strict";t.__esModule=!0,t.installFocusDetector=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=e.rootElement,s=i(e),n=i(e);return s.addEventListener("focus",(()=>null==t?void 0:t.onFocusFromTop())),n.addEventListener("focus",(()=>null==t?void 0:t.onFocusFromBottom())),o.firstChild.before(s),o.lastChild.after(n),{activate(){e._registerTimeout((()=>{s.tabIndex=0,n.tabIndex=0}),10)},deactivate(){e._registerTimeout((()=>{s.tabIndex=-1,n.tabIndex=-1}),10)}}};var s=o(9893),n=o(92692);function i(e){const t=e.rootDocument.createElement("input");return t.type="text",t.classList.add("htFocusCatcher"),e.getSettings().ariaTags&&(0,s.setAttribute)(t,[(0,n.A11Y_PRESENTATION)(),(0,n.A11Y_HIDDEN)()]),t}},71563:(e,t,o)=>{"use strict";t.__esModule=!0,t.installFocusCatcher=function(e){const t=function(e){return t=>{if(!t)return null;const o=i(e),s=r(e);return t.col<o.col&&(t.col=o.col),t.col>s.col&&(t.col=s.col),t.row<o.row&&(t.row=o.row),t.row>s.row&&(t.row=s.row),t}}(e);let o;const{activate:l,deactivate:a}=(0,n.installFocusDetector)(e,{onFocusFromTop(){var s;const n=null!==(s=t(o))&&void 0!==s?s:i(e);n&&(e.runHooks("modifyFocusOnTabNavigation","from_above",n),e.selectCell(n.row,n.col)),e.listen()},onFocusFromBottom(){var s;const n=null!==(s=t(o))&&void 0!==s?s:r(e);n&&(e.runHooks("modifyFocusOnTabNavigation","from_below",n),e.selectCell(n.row,n.col)),e.listen()}}),h={wrapped:!1,flipped:!1};let c=!0,u=!1,d=!1;e.addHook("afterListen",(()=>a())),e.addHook("afterUnlisten",(()=>l())),e.addHook("afterSelection",((t,s,n,i,r)=>{var l;(u&&(h.wrapped&&h.flipped||d)&&(d=!1,r.value=!0),c)&&(o=null===(l=e.getSelectedRangeLast())||void 0===l?void 0:l.highlight)})),e.addHook("beforeRowWrap",((e,t,o)=>{h.wrapped=!0,h.flipped=o}));const g={keys:[["Tab"],["Shift","Tab"]],preventDefault:!1,stopPropagation:!1,relativeToGroup:s.GRID_GROUP,group:"focusCatcher"};e.getShortcutManager().getContext("grid").addShortcuts([{...g,callback:()=>{const{tabNavigation:t}=e.getSettings();u=!0,e.getSelectedRangeLast()&&!t&&(c=!1),t||(d=!0)},position:"before"},{...g,callback:t=>{const{tabNavigation:s,autoWrapRow:n}=e.getSettings();if(u=!1,c=!0,!s||!e.selection.isSelected()||n&&h.wrapped&&h.flipped||!n&&h.wrapped)return n&&h.wrapped&&h.flipped&&(o=t.shiftKey?i(e):r(e)),h.wrapped=!1,h.flipped=!1,e.deselectCell(),e.unlisten(),!1;t.preventDefault()},position:"after"}])};var s=o(37947),n=o(63745);function i(e){const{rowIndexMapper:t,columnIndexMapper:o}=e,{navigableHeaders:s}=e.getSettings();let n=s&&e.countColHeaders()>0?-e.countColHeaders():0,i=s&&e.countRowHeaders()>0?-e.countRowHeaders():0;return 0===n&&(n=t.getVisualFromRenderableIndex(n)),0===i&&(i=o.getVisualFromRenderableIndex(i)),null===n||null===i?null:e._createCellCoords(n,i)}function r(e){var t,o;const{rowIndexMapper:s,columnIndexMapper:n}=e,{navigableHeaders:i}=e.getSettings();let r=s.getRenderableIndexesLength()-1,l=n.getRenderableIndexesLength()-1;if(r<0){if(!i||0===e.countColHeaders())return null;r=-1}if(l<0){if(!i||0===e.countColHeaders())return null;l=-1}return e._createCellCoords(null!==(t=s.getVisualFromRenderableIndex(r))&&void 0!==t?t:r,null!==(o=n.getVisualFromRenderableIndex(l))&&void 0!==o?o:l)}},48246:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(71563);Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===s[e]||(t[e]=s[e]))}));var n=o(44428);Object.keys(n).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===n[e]||(t[e]=n[e]))}))},44428:(e,t,o)=>{"use strict";t.__esModule=!0,t.createViewportScroller=function(e){const{selection:t}=e;let o=!1,c=!1;return{resume(){c=!1},suspend(){c=!0},skipNextScrollCycle(){o=!0},scrollTo(u){var d;if(o||c)return void(o=!1);let g;t.isFocusSelectionChanged()?g=(0,i.focusScrollStrategy)(e):t.isSelectedByCorner()?g=(0,n.cornerHeaderScrollStrategy)(e):t.isSelectedByRowHeader()?g=(0,a.rowHeaderScrollStrategy)(e):t.isSelectedByColumnHeader()?g=(0,s.columnHeaderScrollStrategy)(e):1===t.getSelectedRange().size()&&t.isMultiple()?g=(0,r.multipleScrollStrategy)(e):1!==t.getSelectedRange().size()||t.isMultiple()?t.getSelectedRange().size()>1&&(g=(0,l.noncontiguousScrollStrategy)(e)):g=(0,h.singleScrollStrategy)(e),null===(d=g)||void 0===d||d(u)}}};var s=o(9635),n=o(5696),i=o(88948),r=o(29980),l=o(3011),a=o(44745),h=o(8248)},9635:(e,t)=>{"use strict";t.__esModule=!0,t.columnHeaderScrollStrategy=function(e){return t=>{let{col:o}=t;e.scrollViewportTo({col:o})}}},5696:(e,t)=>{"use strict";t.__esModule=!0,t.cornerHeaderScrollStrategy=function(){return()=>{}}},88948:(e,t)=>{"use strict";t.__esModule=!0,t.focusScrollStrategy=function(e){return t=>{e.scrollViewportTo(t.toObject())}}},29980:(e,t)=>{"use strict";t.__esModule=!0,t.multipleScrollStrategy=function(e){return t=>{e.scrollViewportTo(t.toObject())}}},3011:(e,t)=>{"use strict";t.__esModule=!0,t.noncontiguousScrollStrategy=function(e){return t=>{e.scrollViewportTo(t.toObject())}}},44745:(e,t)=>{"use strict";t.__esModule=!0,t.rowHeaderScrollStrategy=function(e){return t=>{let{row:o}=t;e.scrollViewportTo({row:o})}}},8248:(e,t)=>{"use strict";t.__esModule=!0,t.singleScrollStrategy=function(e){return t=>{const o=e.selection.getSelectionSource(),{row:s,col:n}=t;if(s<0&&n>=0)e.scrollViewportTo({col:n});else if(n<0&&s>=0)e.scrollViewportTo({row:s});else{if("mouse"===o&&(n===e.view.getLastPartiallyVisibleColumn()||s===e.view.getLastPartiallyVisibleRow()))return;e.scrollViewportTo({row:s,col:n})}}}},87727:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724);var n=s(o(85707)),i=o(55518),r=o(56216),l=o(13911),a=o(9175),h=o(87485),c=o(38893);class u{static get DESTINATION_RENDERER(){return 1}static get DESTINATION_CLIPBOARD_GENERATOR(){return 2}constructor(e,t,o){(0,n.default)(this,"hot",void 0),(0,n.default)(this,"metaManager",void 0),(0,n.default)(this,"tableMeta",void 0),(0,n.default)(this,"dataSource",void 0),(0,n.default)(this,"duckSchema",void 0),(0,n.default)(this,"colToPropCache",void 0),(0,n.default)(this,"propToColCache",void 0),this.hot=e,this.metaManager=o,this.tableMeta=o.getTableMeta(),this.dataSource=t,this.duckSchema=this.createDuckSchema(),this.createMap()}createMap(){const e=this.getSchema();if(void 0===e)throw new Error("trying to create `columns` definition but you didn't provide `schema` nor `data`");const t=this.tableMeta.columns;let o;if(this.colToPropCache=[],this.propToColCache=new Map,t){let s=0,n=0,i=!1;if("function"==typeof t){const t=(0,l.deepObjectSize)(e);s=t>0?t:this.countFirstRowKeys(),i=!0}else{const e=this.tableMeta.maxCols;s=Math.min(e,t.length)}for(o=0;o<s;o++){const e=i?t(o):t[o];if((0,l.isObject)(e)){if(void 0!==e.data){const t=i?n:o;this.colToPropCache[t]=e.data,this.propToColCache.set(e.data,t)}n+=1}}}else this.recursiveDuckColumns(e)}countFirstRowKeys(){return(0,r.countFirstRowKeys)(this.dataSource)}recursiveDuckColumns(e,t,o){let s,n=t,i=o;return void 0===n&&(n=0,i=""),"object"!=typeof e||Array.isArray(e)||(0,l.objectEach)(e,((e,t)=>{null===e?(s=i+t,this.colToPropCache.push(s),this.propToColCache.set(s,n),n+=1):n=this.recursiveDuckColumns(e,n,`${t}.`)})),n}colToProp(e){if(!1===Number.isInteger(e))return e;const t=this.hot.toPhysicalColumn(e);return null===t?e:this.colToPropCache&&(0,c.isDefined)(this.colToPropCache[t])?this.colToPropCache[t]:t}propToCol(e){const t=this.propToColCache.get(e);if((0,c.isDefined)(t))return this.hot.toVisualColumn(t);const o=this.hot.toVisualColumn(e);return null===o?e:o}getSchema(){const e=this.tableMeta.dataSchema;return e?"function"==typeof e?e():e:this.duckSchema}createDuckSchema(){return this.dataSource&&this.dataSource[0]?(0,l.duckSchema)(this.dataSource[0]):{}}refreshDuckSchema(){this.duckSchema=this.createDuckSchema()}createRow(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,{source:o,mode:s="above"}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=this.hot.countSourceRows();let i=n,r=0,a=e;("number"!=typeof a||a>=n)&&(a=n),a<this.hot.countRows()&&(i=this.hot.toPhysicalRow(a));if(!1===this.hot.runHooks("beforeCreateRow",a,t,o)||null===i)return{delta:0};const c=this.tableMeta.maxRows,u=this.getSchema().length,d=[];for(;r<t&&n+r<c;){let e=null;"array"===this.hot.dataType?this.tableMeta.dataSchema?e=(0,l.deepClone)(this.getSchema()):(e=[],(0,h.rangeEach)(u-1,(()=>e.push(null)))):"function"===this.hot.dataType?e=this.tableMeta.dataSchema(a+r):(e={},(0,l.deepExtend)(e,this.getSchema())),d.push(e),r+=1}this.hot.rowIndexMapper.insertIndexes(a,r),"below"===s&&(i=Math.min(i+1,n)),this.spliceData(i,0,d);const g=this.hot.toVisualRow(i);return this.hot.countSourceRows()===d.length&&this.hot.columnIndexMapper.initToLength(this.hot.getInitialColumnCount()),r>0&&(null==e?this.metaManager.createRow(null,r):"auto"!==o&&this.metaManager.createRow(i,t)),this.hot.runHooks("afterCreateRow",g,r,o),this.hot.forceFullRender=!0,{delta:r,startPhysicalIndex:i}}createCol(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,{source:o,mode:s="start"}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!this.hot.isColumnModificationAllowed())throw new Error("Cannot create new column. When data source in an object, you can only have as much columns as defined in first data row, data schema or in the 'columns' setting.If you want to be able to add new columns, you have to use array datasource.");const n=this.dataSource,i=this.tableMeta.maxCols,r=this.hot.countSourceCols();let l=e;("number"!=typeof l||l>=r)&&(l=r);if(!1===this.hot.runHooks("beforeCreateCol",l,t,o))return{delta:0};let a=r;l<this.hot.countCols()&&(a=this.hot.toPhysicalColumn(l));const h=this.hot.countSourceRows();let c=this.hot.countCols(),u=0,d=a;"end"===s&&(d=Math.min(d+1,r));const g=d;for(;u<t&&c<i;){if("number"!=typeof l||l>=c)if(h>0)for(let e=0;e<h;e+=1)void 0===n[e]&&(n[e]=[]),n[e].push(null);else n.push([null]);else for(let e=0;e<h;e++)n[e].splice(d,0,null);u+=1,d+=1,c+=1}this.hot.columnIndexMapper.insertIndexes(l,u),u>0&&(null==e?this.metaManager.createColumn(null,u):"auto"!==o&&this.metaManager.createColumn(g,t));const f=this.hot.toVisualColumn(g);return this.hot.runHooks("afterCreateCol",f,u,o),this.hot.forceFullRender=!0,this.refreshDuckSchema(),{delta:u,startPhysicalIndex:g}}removeRow(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,o=arguments.length>2?arguments[2]:void 0,s=Number.isInteger(e)?e:-t;const n=this.visualRowsToPhysical(s,t),i=this.hot.countSourceRows();s=(i+s)%i;if(!1===this.hot.runHooks("beforeRemoveRow",s,n.length,n,o))return!1;const r=n.length;if(this.filterData(s,r,n),s<this.hot.countRows()){this.hot.rowIndexMapper.removeIndexes(n);const e=(0,c.isDefined)(this.tableMeta.columns)||(0,c.isDefined)(this.tableMeta.dataSchema);0===this.hot.rowIndexMapper.getNotTrimmedIndexesLength()&&!1===e&&this.hot.columnIndexMapper.setIndexesSequence([])}return n.slice(0).sort(((e,t)=>t-e)).forEach((e=>{this.metaManager.removeRow(e,1)})),this.hot.runHooks("afterRemoveRow",s,r,n,o),this.hot.forceFullRender=!0,!0}removeCol(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,o=arguments.length>2?arguments[2]:void 0;if("object"===this.hot.dataType||this.tableMeta.columns)throw new Error("cannot remove column with object data source or columns option specified");let s="number"!=typeof e?-t:e;s=(this.hot.countCols()+s)%this.hot.countCols();const n=this.visualColumnsToPhysical(s,t),i=n.slice(0).sort(((e,t)=>t-e));if(!1===this.hot.runHooks("beforeRemoveCol",s,t,n,o))return!1;let r=!0;const l=i.length,a=this.dataSource;for(let e=0;e<l;e++)r&&n[0]!==n[e]-e&&(r=!1);if(r)for(let e=0,o=this.hot.countSourceRows();e<o;e++)a[e].splice(n[0],t),0===e&&this.metaManager.removeColumn(n[0],t);else for(let e=0,t=this.hot.countSourceRows();e<t;e++)for(let t=0;t<l;t++)a[e].splice(i[t],1),0===e&&this.metaManager.removeColumn(i[t],1);return s<this.hot.countCols()&&(this.hot.columnIndexMapper.removeIndexes(n),0===this.hot.columnIndexMapper.getNotTrimmedIndexesLength()&&this.hot.rowIndexMapper.setIndexesSequence([])),this.hot.runHooks("afterRemoveCol",s,t,n,o),this.hot.forceFullRender=!0,this.refreshDuckSchema(),!0}spliceCol(e,t,o){const s=this.hot.getDataAtCol(e),n=s.slice(t,t+o),i=s.slice(t+o);for(var r=arguments.length,l=new Array(r>3?r-3:0),h=3;h<r;h++)l[h-3]=arguments[h];(0,a.extendArray)(l,i);let c=0;for(;c<o;)l.push(null),c+=1;return(0,a.to2dArray)(l),this.hot.populateFromArray(t,e,l,null,null,"spliceCol"),n}spliceRow(e,t,o){const s=this.hot.getSourceDataAtRow(e),n=s.slice(t,t+o),i=s.slice(t+o);for(var r=arguments.length,l=new Array(r>3?r-3:0),h=3;h<r;h++)l[h-3]=arguments[h];(0,a.extendArray)(l,i);let c=0;for(;c<o;)l.push(null),c+=1;return this.hot.populateFromArray(e,t,[l],null,null,"spliceRow"),n}spliceData(e,t,o){if(!1!==this.hot.runHooks("beforeDataSplice",e,t,o)){const t=[...this.dataSource.slice(0,e),...o,...this.dataSource.slice(e)];this.dataSource.length=0,t.forEach((e=>this.dataSource.push(e)))}}filterData(e,t,o){let s=this.hot.runHooks("filterData",e,t,o);!1===Array.isArray(s)&&(s=this.dataSource.filter(((e,t)=>-1===o.indexOf(t)))),this.dataSource.length=0,Array.prototype.push.apply(this.dataSource,s)}get(e,t){const o=this.hot.toPhysicalRow(e);let s=this.dataSource[o];const n=this.hot.runHooks("modifyRowData",o);s=isNaN(n)?n:s;const{dataDotNotation:i}=this.hot.getSettings();let r=null;if(s&&s.hasOwnProperty&&(0,l.hasOwnProperty)(s,t))r=s[t];else if(i&&"string"==typeof t&&t.indexOf(".")>-1){let e=s;if(!e)return null;const o=t.split(".");for(let t=0,s=o.length;t<s;t++)if(e=e[o[t]],void 0===e)return null;r=e}else"function"==typeof t&&(r=t(this.dataSource.slice(o,o+1)[0]));if(this.hot.hasHook("modifyData")){const e=(0,l.createObjectPropListener)(r);this.hot.runHooks("modifyData",o,this.propToCol(t),e,"get"),e.isTouched()&&(r=e.value)}return r}getCopyable(e,t){return this.hot.getCellMeta(e,this.propToCol(t)).copyable?this.get(e,t):""}set(e,t,o){const s=this.hot.toPhysicalRow(e);let n=o,i=this.dataSource[s];const r=this.hot.runHooks("modifyRowData",s);if(i=isNaN(r)?r:i,this.hot.hasHook("modifyData")){const e=(0,l.createObjectPropListener)(n);this.hot.runHooks("modifyData",s,this.propToCol(t),e,"set"),e.isTouched()&&(n=e.value)}const{dataDotNotation:a}=this.hot.getSettings();if(i&&i.hasOwnProperty&&(0,l.hasOwnProperty)(i,t))i[t]=n;else if(a&&"string"==typeof t&&t.indexOf(".")>-1){let e,o=i,s=0;const r=t.split(".");for(s=0,e=r.length-1;s<e;s++)void 0===o[r[s]]&&(o[r[s]]={}),o=o[r[s]];o[r[s]]=n}else"function"==typeof t?t(this.dataSource.slice(s,s+1)[0],n):i[t]=n}visualRowsToPhysical(e,t){const o=this.hot.countSourceRows(),s=[];let n,i=(o+e)%o,r=t;for(;i<o&&r;)n=this.hot.toPhysicalRow(i),s.push(n),r-=1,i+=1;return s}visualColumnsToPhysical(e,t){const o=this.hot.countCols(),s=[];let n=(o+e)%o,i=t;for(;n<o&&i;){const e=this.hot.toPhysicalColumn(n);s.push(e),i-=1,n+=1}return s}clear(){for(let e=0;e<this.hot.countSourceRows();e++)for(let t=0;t<this.hot.countCols();t++)this.set(e,this.colToProp(t),"")}getLength(){const e=this.tableMeta.maxRows;let t;t=e<0||0===e?0:e||1/0;const o=this.hot.rowIndexMapper.getNotTrimmedIndexesLength();return Math.min(o,t)}getAll(){const e={row:0,col:0},t={row:Math.max(this.hot.countRows()-1,0),col:Math.max(this.hot.countCols()-1,0)};return e.row-t.row!=0||this.hot.countSourceRows()?this.getRange(e,t,u.DESTINATION_RENDERER):[]}countCachedColumns(){return this.colToPropCache.length}getRange(e,t,o){const s=[];let n,i,r;const l=this.tableMeta.maxRows,a=this.tableMeta.maxCols;if(0===l||0===a)return[];const h=o===u.DESTINATION_CLIPBOARD_GENERATOR?this.getCopyable:this.get,c=Math.min(Math.max(l-1,0),Math.max(e.row,t.row)),d=Math.min(Math.max(a-1,0),Math.max(e.col,t.col));for(n=Math.min(e.row,t.row);n<=c;n++){r=[];const o=n>=0?this.hot.toPhysicalRow(n):n;for(i=Math.min(e.col,t.col);i<=d&&null!==o;i++)r.push(h.call(this,n,this.colToProp(i)));null!==o&&s.push(r)}return s}getText(e,t){return(0,i.stringify)(this.getRange(e,t,u.DESTINATION_RENDERER))}getCopyableText(e,t){return(0,i.stringify)(this.getRange(e,t,u.DESTINATION_CLIPBOARD_GENERATOR))}destroy(){this.hot=null,this.metaManager=null,this.dataSource=null,this.duckSchema=null,this.colToPropCache.length=0,this.propToColCache.clear(),this.propToColCache=void 0}}t.default=u},12248:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(13911),r=o(56216),l=o(9175),a=o(87485),h=o(78832);t.default=class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];(0,n.default)(this,"hot",void 0),(0,n.default)(this,"data",void 0),(0,n.default)(this,"dataType","array"),(0,n.default)(this,"colToProp",(()=>{})),(0,n.default)(this,"propToCol",(()=>{})),this.hot=e,this.data=t}modifyRowData(e){let t;return this.hot.hasHook("modifyRowData")&&(t=this.hot.runHooks("modifyRowData",e)),void 0===t||Number.isInteger(t)?this.data[e]:t}getData(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.data&&0!==this.data.length?this.getByRange(null,null,e):this.data}setData(e){this.data=e}getAtColumn(e){const t=[];return(0,l.arrayEach)(this.data,((o,s)=>{const n=this.getAtCell(s,e);t.push(n)})),t}getAtRow(e,t,o){let s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const n=void 0===t&&void 0===o,{dataDotNotation:r}=this.hot.getSettings();let l=null,c=null;if(l=this.modifyRowData(e),Array.isArray(l))c=[],n?l.forEach(((t,o)=>{c[o]=this.getAtPhysicalCell(e,o,l)})):(0,a.rangeEach)(t,o,(o=>{c[o-t]=this.getAtPhysicalCell(e,o,l)}));else if((0,i.isObject)(l)||(0,h.isFunction)(l))if(c=s?[]:{},!n||s){const n=0,h=this.countFirstRowKeys()-1;(0,a.rangeEach)(n,h,(a=>{const u=this.colToProp(a);if(a>=(t||n)&&a<=(o||h)&&!Number.isInteger(u)){const t=this.getAtPhysicalCell(e,u,l);s?c.push(t):r?(0,i.setProperty)(c,u,t):c[u]=t}}))}else(0,i.objectEach)(l,((t,o)=>{const s=this.getAtPhysicalCell(e,o,l);r?(0,i.setProperty)(c,o,s):c[o]=s}));return c}setAtCell(e,t,o){if(!(e>=this.countRows()||t>=this.countFirstRowKeys())){if(this.hot.hasHook("modifySourceData")){const s=(0,i.createObjectPropListener)(o);this.hot.runHooks("modifySourceData",e,t,s,"set"),s.isTouched()&&(o=s.value)}Number.isInteger(t)?this.data[e][t]=o:(0,i.setProperty)(this.data[e],t,o)}}getAtPhysicalCell(e,t,o){let s=null;if(o)if("string"==typeof t){const{dataDotNotation:e}=this.hot.getSettings();s=e?(0,i.getProperty)(o,t):o[t]}else s="function"==typeof t?t(o):o[t];if(this.hot.hasHook("modifySourceData")){const o=(0,i.createObjectPropListener)(s);this.hot.runHooks("modifySourceData",e,t,o,"get"),o.isTouched()&&(s=o.value)}return s}getAtCell(e,t){const o=this.modifyRowData(e);return this.getAtPhysicalCell(e,this.colToProp(t),o)}getByRange(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],s=!1,n=null,i=null,r=null,l=null;null===e||null===t?(s=!0,n=0,r=this.countRows()-1):(n=Math.min(e.row,t.row),i=Math.min(e.col,t.col),r=Math.max(e.row,t.row),l=Math.max(e.col,t.col));const h=[];return(0,a.rangeEach)(n,r,(e=>{h.push(s?this.getAtRow(e,void 0,void 0,o):this.getAtRow(e,i,l,o))})),h}countRows(){if(this.hot.hasHook("modifySourceLength")){const e=this.hot.runHooks("modifySourceLength");if(Number.isInteger(e))return e}return this.data.length}countFirstRowKeys(){return(0,r.countFirstRowKeys)(this.data)}destroy(){this.data=null,this.hot=null}}},71757:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(87727));t.DataMap=n.default;var i=s(o(36102));t.MetaManager=i.default;var r=s(o(32054));t.metaSchemaFactory=r.default;var l=o(21781);t.replaceData=l.replaceData;var a=o(74870);t.DynamicCellMetaMod=a.DynamicCellMetaMod;var h=o(88884);t.ExtendMetaPropertiesMod=h.ExtendMetaPropertiesMod},36102:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85252)),i=s(o(47441)),r=s(o(5065)),l=s(o(25779)),a=s(o(63870)),h=o(13911);class c{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];this.hot=e,this.globalMeta=new n.default(e),this.tableMeta=new i.default(this.globalMeta),this.columnMeta=new r.default(this.globalMeta),this.cellMeta=new l.default(this.columnMeta),o.forEach((e=>new e(this))),this.globalMeta.updateMeta(t)}getGlobalMeta(){return this.globalMeta.getMeta()}updateGlobalMeta(e){this.globalMeta.updateMeta(e)}getTableMeta(){return this.tableMeta.getMeta()}updateTableMeta(e){this.tableMeta.updateMeta(e)}getColumnMeta(e){return this.columnMeta.getMeta(e)}updateColumnMeta(e,t){this.columnMeta.updateMeta(e,t)}getCellMeta(e,t,o){let{visualRow:s,visualColumn:n}=o;const i=this.cellMeta.getMeta(e,t);return i.visualRow=s,i.visualCol=n,i.row=e,i.col=t,this.runLocalHooks("afterGetCellMeta",i),i}getCellMetaKeyValue(e,t,o){if("string"!=typeof o)throw new Error("The passed cell meta object key is not a string");return this.cellMeta.getMeta(e,t,o)}setCellMeta(e,t,o,s){this.cellMeta.setMeta(e,t,o,s)}updateCellMeta(e,t,o){this.cellMeta.updateMeta(e,t,o)}removeCellMeta(e,t,o){this.cellMeta.removeMeta(e,t,o)}getCellsMeta(){return this.cellMeta.getMetas()}getCellsMetaAtRow(e){return this.cellMeta.getMetasAtRow(e)}createRow(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.cellMeta.createRow(e,t)}removeRow(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.cellMeta.removeRow(e,t)}createColumn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.cellMeta.createColumn(e,t),this.columnMeta.createColumn(e,t)}removeColumn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.cellMeta.removeColumn(e,t),this.columnMeta.removeColumn(e,t)}clearCellsCache(){this.cellMeta.clearCache()}clearCache(){this.cellMeta.clearCache(),this.columnMeta.clearCache()}}t.default=c,(0,h.mixin)(c,a.default)},47586:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var n=s(o(85707)),i=o(9175),r=o(34471);class l{constructor(e){(0,n.default)(this,"valueFactory",void 0),(0,n.default)(this,"data",[]),(0,n.default)(this,"index",[]),(0,n.default)(this,"holes",new Set),this.valueFactory=e}obtain(e){(0,r.assert)((()=>(0,r.isUnsignedNumber)(e)),"Expecting an unsigned number.");const t=this._getStorageIndexByKey(e);let o;if(t>=0)o=this.data[t],void 0===o&&(o=this.valueFactory(e),this.data[t]=o);else if(o=this.valueFactory(e),this.holes.size>0){const t=this.holes.values().next().value;this.holes.delete(t),this.data[t]=o,this.index[e]=t}else this.data.push(o),this.index[e]=this.data.length-1;return o}insert(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;(0,r.assert)((()=>(0,r.isUnsignedNumber)(e)||(0,r.isNullish)(e)),"Expecting an unsigned number or null/undefined argument.");const o=[],s=this.data.length;for(let e=0;e<t;e++)o.push(s+e),this.data.push(void 0);const n=(0,r.isNullish)(e)?this.index.length:e;this.index=[...this.index.slice(0,n),...o,...this.index.slice(n)]}remove(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;(0,r.assert)((()=>(0,r.isUnsignedNumber)(e)||(0,r.isNullish)(e)),"Expecting an unsigned number or null/undefined argument.");const o=this.index.splice((0,r.isNullish)(e)?this.index.length-t:e,t);for(let e=0;e<o.length;e++){const t=o[e];"number"==typeof t&&this.holes.add(t)}}size(){return this.data.length-this.holes.size}values(){return(0,i.arrayFilter)(this.data,((e,t)=>!this.holes.has(t)))[Symbol.iterator]()}entries(){const e=[];for(let t=0;t<this.data.length;t++){const o=this._getKeyByStorageIndex(t);-1!==o&&e.push([o,this.data[t]])}let t=0;return{next:()=>{if(t<e.length){const o=e[t];return t+=1,{value:o,done:!1}}return{done:!0}}}}clear(){this.data=[],this.index=[],this.holes.clear()}_getStorageIndexByKey(e){return this.index.length>e?this.index[e]:-1}_getKeyByStorageIndex(e){return this.index.indexOf(e)}[Symbol.iterator](){return this.entries()}}t.default=l},25779:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(13911),r=o(34471),l=s(o(47586)),a=o(38893);t.default=class{constructor(e){(0,n.default)(this,"columnMeta",void 0),(0,n.default)(this,"metas",new l.default((()=>this._createRow()))),this.columnMeta=e}updateMeta(e,t,o){const s=this.getMeta(e,t);(0,i.extend)(s,o),(0,r.extendByMetaType)(s,o)}createRow(e,t){this.metas.insert(e,t)}createColumn(e,t){for(let o=0;o<this.metas.size();o++)this.metas.obtain(o).insert(e,t)}removeRow(e,t){this.metas.remove(e,t)}removeColumn(e,t){for(let o=0;o<this.metas.size();o++)this.metas.obtain(o).remove(e,t)}getMeta(e,t,o){const s=this.metas.obtain(e).obtain(t);return void 0===o?s:s[o]}setMeta(e,t,o,s){var n;const i=this.metas.obtain(e).obtain(t);null===(n=i._automaticallyAssignedMetaProps)||void 0===n||n.delete(o),i[o]=s}removeMeta(e,t,o){delete this.metas.obtain(e).obtain(t)[o]}getMetas(){const e=[],t=Array.from(this.metas.values());for(let o=0;o<t.length;o++)(0,a.isDefined)(t[o])&&e.push(...t[o].values());return e}getMetasAtRow(e){(0,r.assert)((()=>(0,r.isUnsignedNumber)(e)),"Expecting an unsigned number.");const t=new Map(this.metas);return t.has(e)?Array.from(t.get(e).values()):[]}clearCache(){this.metas.clear()}_createRow(){return new l.default((e=>this._createMeta(e)))}_createMeta(e){return new(this.columnMeta.getMetaConstructor(e))}}},5065:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(13911),r=o(34471),l=s(o(47586));const a=["data","width"];t.default=class{constructor(e){(0,n.default)(this,"globalMeta",void 0),(0,n.default)(this,"metas",new l.default((()=>this._createMeta()))),this.globalMeta=e,this.metas=new l.default((()=>this._createMeta()))}updateMeta(e,t){const o=this.getMeta(e);(0,i.extend)(o,t),(0,r.extendByMetaType)(o,t)}createColumn(e,t){this.metas.insert(e,t)}removeColumn(e,t){this.metas.remove(e,t)}getMeta(e){return this.metas.obtain(e)}getMetaConstructor(e){return this.metas.obtain(e).constructor}clearCache(){this.metas.clear()}_createMeta(){return(0,r.columnFactory)(this.globalMeta.getMetaConstructor(),a).prototype}}},85252:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(13911),r=o(34471),l=s(o(32054));t.default=class{constructor(e){(0,n.default)(this,"metaCtor",class{}),(0,n.default)(this,"meta",void 0),this.meta=this.metaCtor.prototype,(0,i.extend)(this.meta,(0,l.default)()),this.meta.instance=e}getMetaConstructor(){return this.metaCtor}getMeta(){return this.meta}updateMeta(e){var t;(0,i.extend)(this.meta,e),(0,r.extendByMetaType)(this.meta,{...e,type:null!==(t=e.type)&&void 0!==t?t:this.meta.type},e)}}},47441:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(13911),r=o(34471);t.default=class{constructor(e){(0,n.default)(this,"meta",void 0);const t=e.getMetaConstructor();this.meta=new t}getMeta(){return this.meta}updateMeta(e){(0,i.extend)(this.meta,e),(0,r.extendByMetaType)(this.meta,e,e)}}},32054:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(38893),n=o(13911);t.default=()=>({_automaticallyAssignedMetaProps:void 0,activeHeaderClassName:"ht__active_highlight",allowEmpty:!0,allowHtml:!1,allowInsertColumn:!0,allowInsertRow:!0,allowInvalid:!0,allowRemoveColumn:!0,allowRemoveRow:!0,ariaTags:!0,autoColumnSize:void 0,autoRowSize:void 0,autoWrapCol:!1,autoWrapRow:!1,bindRowsWithHeaders:void 0,cell:[],cells:void 0,checkedTemplate:void 0,className:void 0,colHeaders:null,collapsibleColumns:void 0,columnHeaderHeight:void 0,columns:void 0,columnSorting:void 0,columnSummary:void 0,colWidths:void 0,commentedCellClassName:"htCommentCell",comments:!1,contextMenu:void 0,copyable:!0,copyPaste:!0,correctFormat:!1,currentColClassName:void 0,currentHeaderClassName:"ht__highlight",currentRowClassName:void 0,customBorders:!1,data:void 0,dataDotNotation:!0,dataSchema:void 0,dateFormat:"DD/MM/YYYY",timeFormat:"h:mm:ss a",datePickerConfig:void 0,defaultDate:void 0,disableVisualSelection:!1,dragToScroll:!0,dropdownMenu:void 0,editor:void 0,enterBeginsEditing:!0,enterMoves:{col:0,row:1},fillHandle:{autoInsertRow:!1},filter:!0,filteringCaseSensitive:!1,filters:void 0,fixedColumnsLeft:0,fixedColumnsStart:0,fixedRowsBottom:0,fixedRowsTop:0,formulas:void 0,fragmentSelection:!1,headerClassName:void 0,height:void 0,hiddenColumns:void 0,hiddenRows:void 0,invalidCellClassName:"htInvalid",imeFastEdit:!1,isEmptyCol(e){let t,o,n;for(t=0,o=this.countRows();t<o;t++)if(n=this.getDataAtCell(t,e),!1===(0,s.isEmpty)(n))return!1;return!0},isEmptyRow(e){let t,o,i,r;for(t=0,o=this.countCols();t<o;t++)if(i=this.getDataAtCell(e,t),!1===(0,s.isEmpty)(i))return"object"==typeof i&&(r=this.getCellMeta(e,t),(0,n.isObjectEqual)(this.getSchema()[r.prop],i));return!0},label:void 0,language:"en-US",layoutDirection:"inherit",licenseKey:void 0,locale:"en-US",manualColumnFreeze:void 0,manualColumnMove:void 0,manualColumnResize:void 0,manualRowMove:void 0,manualRowResize:void 0,maxCols:1/0,maxRows:1/0,mergeCells:!1,minCols:0,minRows:0,minSpareCols:0,minSpareRows:0,multiColumnSorting:void 0,navigableHeaders:!1,tabNavigation:!0,nestedHeaders:void 0,nestedRows:void 0,noWordWrapClassName:"htNoWrap",numericFormat:void 0,observeDOMVisibility:!0,outsideClickDeselects:!0,persistentState:void 0,placeholder:void 0,placeholderCellClassName:"htPlaceholder",preventOverflow:!1,preventWheel:!1,readOnly:!1,readOnlyCellClassName:"htDimmed",renderAllRows:!1,renderAllColumns:!1,renderer:void 0,rowHeaders:void 0,rowHeaderWidth:void 0,rowHeights:void 0,search:!1,selectionMode:"multiple",selectOptions:void 0,skipColumnOnPaste:!1,skipRowOnPaste:!1,sortByRelevance:!0,source:void 0,startCols:5,startRows:5,stretchH:"none",strict:void 0,tableClassName:void 0,tabMoves:{row:0,col:1},title:void 0,trimDropdown:!0,trimRows:void 0,trimWhitespace:!0,type:"text",uncheckedTemplate:void 0,undo:void 0,validator:void 0,viewportColumnRenderingOffset:"auto",viewportRowRenderingOffset:"auto",visibleRows:10,width:void 0,wordWrap:!0})},74870:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var n=s(o(85707)),i=s(o(56937)),r=o(13911),l=o(78832);t.DynamicCellMetaMod=class{constructor(e){(0,n.default)(this,"metaManager",void 0),(0,n.default)(this,"metaSyncMemo",new Map),this.metaManager=e,e.addLocalHook("afterGetCellMeta",(e=>this.extendCellMeta(e))),i.default.getSingleton().add("beforeRender",(e=>{e&&this.metaSyncMemo.clear()}),this.metaManager.hot)}extendCellMeta(e){var t;const{row:o,col:s}=e;if(null!==(t=this.metaSyncMemo.get(o))&&void 0!==t&&t.has(s))return;const{visualRow:n,visualCol:i}=e,a=this.metaManager.hot,h=a.colToProp(i);e.prop=h,a.runHooks("beforeGetCellMeta",n,i,e);const c=(0,r.hasOwnProperty)(e,"type")?e.type:null;let u=(0,l.isFunction)(e.cells)?e.cells(o,s,h):null;var d;c&&(u?u.type=null!==(d=u.type)&&void 0!==d?d:c:u={type:c});u&&this.metaManager.updateCellMeta(o,s,u),a.runHooks("afterGetCellMeta",n,i,e),this.metaSyncMemo.has(o)||this.metaSyncMemo.set(o,new Set),this.metaSyncMemo.get(o).add(s)}}},88884:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var n=s(o(85707));function i(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function r(e,t){return e.get(function(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}(e,t))}var l=new WeakMap;t.ExtendMetaPropertiesMod=class{constructor(e){(0,n.default)(this,"metaManager",void 0),(0,n.default)(this,"usageTracker",new Set),(0,n.default)(this,"propDescriptors",new Map([["ariaTags",{initOnly:!0}],["fixedColumnsLeft",{target:"fixedColumnsStart",onChange(e){if(this.metaManager.hot.isRtl()&&"fixedColumnsLeft"===e)throw new Error("The `fixedColumnsLeft` is not supported for RTL. Please use option `fixedColumnsStart`.");if(this.usageTracker.has("fixedColumnsLeft")&&this.usageTracker.has("fixedColumnsStart"))throw new Error("The `fixedColumnsLeft` and `fixedColumnsStart` should not be used together. Please use only the option `fixedColumnsStart`.")}}],["layoutDirection",{initOnly:!0}],["renderAllColumns",{initOnly:!0}],["renderAllRows",{initOnly:!0}]])),i(this,l,((e,t,o)=>{if(!o)throw new Error(`The \`${e}\` option can not be updated after the Handsontable is initialized.`)})),this.metaManager=e,this.extendMetaProps()}extendMetaProps(){this.propDescriptors.forEach(((e,t)=>{const{initOnly:o,target:s,onChange:n}=e,i="string"==typeof s,a=i?s:t,h=`_${a}`;this.metaManager.globalMeta.meta[h]=this.metaManager.globalMeta.meta[a],n?(this.installPropWatcher(t,h,n),i&&this.installPropWatcher(s,h,n)):o&&(this.installPropWatcher(t,h,r(l,this)),this.metaManager.globalMeta.meta._initOnlySettings||(this.metaManager.globalMeta.meta._initOnlySettings=[]),this.metaManager.globalMeta.meta._initOnlySettings.push(t))}))}installPropWatcher(e,t,o){const s=this;Object.defineProperty(this.metaManager.globalMeta.meta,e,{get(){return this[t]},set(n){const i=!s.usageTracker.has(e);s.usageTracker.add(e),o.call(s,e,n,i),this[t]=n},enumerable:!0,configurable:!0})}}},34471:(e,t,o)=>{"use strict";t.__esModule=!0,t.assert=function(e,t){if(!e())throw new Error(`Assertion failed: ${t}`)},t.columnFactory=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];function o(){}(0,s.inherit)(o,e);for(let e=0;e<t.length;e++)o.prototype[t[e]]=void 0;return o},t.extendByMetaType=function(e,t){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e;const i="string"==typeof t.type?(0,n.getCellType)(t.type):t.type;e._automaticallyAssignedMetaProps&&(0,s.objectEach)(t,((t,o)=>{e._automaticallyAssignedMetaProps.delete(o)}));if(!(0,s.isObject)(i))return;o!==e||e._automaticallyAssignedMetaProps||(e._automaticallyAssignedMetaProps=new Set);const r={};(0,s.objectEach)(i,((t,n)=>{var i;(function(e,t){var o;if("CELL_TYPE"===e)return!1;return(null===(o=t._automaticallyAssignedMetaProps)||void 0===o?void 0:o.has(e))||!(0,s.hasOwnProperty)(t,e)})(n,o)&&(r[n]=t,null===(i=e._automaticallyAssignedMetaProps)||void 0===i||i.add(n))})),(0,s.extend)(e,r)},t.isNullish=function(e){return null==e},t.isUnsignedNumber=function(e){return Number.isInteger(e)&&e>=0},o(67834),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var s=o(13911),n=o(34299)},21781:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.replaceData=function(e,t,o,s){const{hotInstance:c,dataMap:u,dataSource:d,internalSource:g,source:f,metaManager:p,firstRun:m}=s,w=(0,n.toUpperCaseFirst)(g),C=c.getSettings();Array.isArray(C.dataSchema)?c.dataType="array":(0,i.isFunction)(C.dataSchema)?c.dataType="function":c.dataType="object";u&&u.destroy();e=c.runHooks(`before${w}`,e,m,f);const v=new r.default(c,e,p);if(t(v),"object"==typeof e&&null!==e)e.push&&e.splice||(e=[e]);else{if(null!==e)throw new Error(`${g} only accepts array of objects or array of arrays (${typeof e} given)`);{const t=v.getSchema();let o;e=[];let s=0,n=0;for(s=0,n=C.startRows;s<n;s++)if("object"!==c.dataType&&"function"!==c.dataType||!C.dataSchema)if("array"===c.dataType)o=(0,l.deepClone)(t[0]),e.push(o);else{o=[];for(let e=0,t=C.startCols;e<t;e++)o.push(null);e.push(o)}else o=(0,l.deepClone)(t),e.push(o)}}Array.isArray(e[0])&&(c.dataType="array");C.data=e,v.dataSource=e,d.data=e,d.dataType=c.dataType,d.colToProp=v.colToProp.bind(v),d.propToCol=v.propToCol.bind(v),d.countCachedColumns=v.countCachedColumns.bind(v),o(v),c.runHooks(`after${w}`,e,m,f),m||(c.runHooks("afterChange",null,g),c.render());c.getSettings().ariaTags&&(0,a.setAttribute)(c.rootElement,[(0,h.A11Y_ROWCOUNT)(-1),(0,h.A11Y_COLCOUNT)(c.countCols()+(c.view?c.countRowHeaders():0))])},o(67834),o(15724);var n=o(59777),i=o(78832),r=s(o(87727)),l=o(13911),a=o(9893),h=o(92692)},18344:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(71257),r=o(79729),l=o(84558),a=s(o(82629));function h(e,t){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.add(e)}function c(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var u=new WeakSet;class d{constructor(e,t,o){h(this,u),(0,n.default)(this,"hot",void 0),(0,n.default)(this,"tableMeta",void 0),(0,n.default)(this,"selection",void 0),(0,n.default)(this,"eventManager",void 0),(0,n.default)(this,"destroyed",!1),(0,n.default)(this,"activeEditor",void 0),(0,n.default)(this,"cellProperties",void 0),this.hot=e,this.tableMeta=t,this.selection=o,this.eventManager=new a.default(e),this.hot.addHook("afterDocumentKeyDown",(e=>c(u,this,g).call(this,e))),this.eventManager.addEventListener(this.hot.rootDocument.documentElement,"compositionstart",(e=>{!this.destroyed&&this.hot.isListening()&&this.openEditor("",e)})),this.hot.view._wt.update("onCellDblClick",((e,t,o)=>c(u,this,f).call(this,e,t,o)))}getActiveEditor(){return this.activeEditor}prepareEditor(){var e;if(this.activeEditor&&this.activeEditor.isWaiting())return void this.closeEditor(!1,!1,(e=>{e&&this.prepareEditor()}));const t=null===(e=this.hot.getSelectedRangeLast())||void 0===e?void 0:e.highlight;if(!t||t.isHeader())return;const{row:o,col:s}=t,n=this.hot.runHooks("modifyGetCellCoords",o,s);let i=o,r=s;if(Array.isArray(n)&&([i,r]=n),this.cellProperties=this.hot.getCellMeta(i,r),!this.isCellEditable())return void this.clearActiveEditor();const a=this.hot.getCell(o,s,!0);if(a){const e=this.hot.getCellEditor(this.cellProperties),t=this.hot.colToProp(r),n=this.hot.getSourceDataAtCell(this.hot.toPhysicalRow(i),r);this.activeEditor=(0,l.getEditorInstance)(e,this.hot),this.activeEditor.prepare(o,s,t,a,n,this.cellProperties)}}isEditorOpened(){return this.activeEditor&&this.activeEditor.isOpened()}openEditor(e,t){let o=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!this.isCellEditable())return void this.clearActiveEditor();const s=this.hot.getSelectedRangeLast();let n=this.hot.runHooks("beforeBeginEditing",s.highlight.row,s.highlight.col,e,t,o);t instanceof MouseEvent&&"boolean"!=typeof n&&(n=0===this.hot.selection.getLayerLevel()&&s.isSingle()),!1!==n?(this.activeEditor||(this.hot.scrollToFocusedCell(),this.prepareEditor()),this.activeEditor&&(o&&this.activeEditor.enableFullEditMode(),this.activeEditor.beginEditing(e,t))):this.clearActiveEditor()}closeEditor(e,t,o){this.activeEditor?this.activeEditor.finishEditing(e,t,o):o&&o(!1)}closeEditorAndSaveChanges(e){this.closeEditor(!1,e)}closeEditorAndRestoreOriginalValue(e){this.closeEditor(!0,e)}clearActiveEditor(){this.activeEditor=void 0}isCellEditable(){const e=this.hot.getSelectedRangeLast();if(!e)return!1;const t=this.hot.getCellEditor(this.cellProperties),{row:o,col:s}=e.highlight,{rowIndexMapper:n,columnIndexMapper:i}=this.hot,r=n.isHidden(this.hot.toPhysicalRow(o))||i.isHidden(this.hot.toPhysicalColumn(s));return!(this.cellProperties.readOnly||!t||r)}moveSelectionAfterEnter(e){const t={..."function"==typeof this.tableMeta.enterMoves?this.tableMeta.enterMoves(e):this.tableMeta.enterMoves};e.shiftKey&&(t.row=-t.row,t.col=-t.col),this.hot.selection.isMultiple()?this.selection.transformFocus(t.row,t.col):this.selection.transformStart(t.row,t.col,!0)}destroy(){this.destroyed=!0,this.eventManager.destroy()}}function g(e){const t=this.hot.getSelectedRangeLast();if(!this.hot.isListening()||!t||t.highlight.isHeader()||(0,r.isImmediatePropagationStopped)(e))return;const{keyCode:o}=e,s=(e.ctrlKey||e.metaKey)&&!e.altKey;(!this.activeEditor||this.activeEditor&&!this.activeEditor.isWaiting())&&((0,i.isFunctionKey)(o)||(0,i.isCtrlMetaKey)(o)||s||this.isEditorOpened()||this.openEditor("",e))}function f(e,t){t.isCell()&&this.openEditor(null,e,!0)}const p=new WeakMap;d.getInstance=function(e,t,o){let s=p.get(e);return s||(s=new d(e,t,o),p.set(e,s)),s};t.default=d},36854:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724);var n=s(o(85707)),i=o(56138),r=o(9175),l=o(9893),a=o(38893),h=o(59777),c=o(71257),u=o(28890),d=o(36748),g=o(92692);function f(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function p(e,t){return e.get(function(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}(e,t))}const m=t.EDITOR_TYPE="autocomplete";var w=new WeakMap;class C extends i.HandsontableEditor{constructor(){super(...arguments),(0,n.default)(this,"query",null),(0,n.default)(this,"strippedChoices",[]),(0,n.default)(this,"rawChoices",[]),f(this,w,this.hot.guid.slice(0,9)),(0,n.default)(this,"sortByRelevance",(function(e,t,o){const s=[],n=[],i=e.length;let r,l,c,u,d=t.length;if(0===i){for(c=0;c<d;c++)n.push(c);return n}for(c=0;c<d;c++){if(l=(0,h.stripTags)((0,a.stringify)(t[c])),o)u=l.indexOf(e);else{const t=this.cellProperties.locale;u=l.toLocaleLowerCase(t).indexOf(e.toLocaleLowerCase(t))}-1!==u&&(r=l.length-u-i,s.push({baseIndex:c,index:u,charsLeft:r,value:l}))}for(s.sort(((e,t)=>{if(-1===t.index)return-1;if(-1===e.index)return 1;if(e.index<t.index)return-1;if(t.index<e.index)return 1;if(e.index===t.index){if(e.charsLeft<t.charsLeft)return-1;if(e.charsLeft>t.charsLeft)return 1}return 0})),c=0,d=s.length;c<d;c++)n.push(s[c].baseIndex);return n}))}static get EDITOR_TYPE(){return m}getValue(){const e=this.rawChoices.find((e=>this.stripValueIfNeeded(e)===this.TEXTAREA.value));return(0,a.isDefined)(e)?e:this.TEXTAREA.value}createElements(){super.createElements(),(0,l.addClass)(this.htContainer,"autocompleteEditor"),(0,l.addClass)(this.htContainer,-1===this.hot.rootWindow.navigator.platform.indexOf("Mac")?"":"htMacScroll"),this.hot.getSettings().ariaTags&&(0,l.setAttribute)(this.TEXTAREA,[(0,g.A11Y_TEXT)(),(0,g.A11Y_COMBOBOX)(),(0,g.A11Y_HASPOPUP)("listbox"),(0,g.A11Y_AUTOCOMPLETE)()])}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i),this.hot.getSettings().ariaTags&&(0,l.setAttribute)(this.TEXTAREA,[(0,g.A11Y_EXPANDED)("false"),(0,g.A11Y_CONTROLS)(`${p(w,this)}-listbox-${e}-${t}`)])}open(){super.open();const e=void 0===this.cellProperties.trimDropdown||this.cellProperties.trimDropdown,t=this.hot.getSettings().ariaTags,o=Array.isArray(this.cellProperties.source)?this.cellProperties.source:null,s=null==o?void 0:o.length,{row:n,col:i}=this;this.showEditableElement(),this.focus();let r=(0,l.getScrollbarWidth)();0===r&&(0,u.isMacOS)()&&(r+=15),this.addHook("beforeKeyDown",(e=>this.onBeforeKeyDown(e))),this.htEditor.updateSettings({colWidths:e?[(0,l.outerWidth)(this.TEXTAREA)-2]:void 0,width:e?(0,l.outerWidth)(this.TEXTAREA)+r:void 0,autoColumnSize:!0,renderer:(e,n,i,r,h,c,u)=>{(0,d.textRenderer)(e,n,i,r,h,c,u);const{filteringCaseSensitive:f,allowHtml:p,locale:m}=this.cellProperties,w=this.query;let C,v,y=(0,a.stringify)(c);y&&!p&&(C=!0===f?y.indexOf(w):y.toLocaleLowerCase(m).indexOf(w.toLocaleLowerCase(m)),-1!==C&&(v=y.substr(C,w.length),y=y.replace(v,`<strong>${v}</strong>`))),t&&(0,l.setAttribute)(n,[(0,g.A11Y_OPTION)(),...o?[(0,g.A11Y_SETSIZE)(s)]:[],...o?[(0,g.A11Y_POSINSET)(o.indexOf(c)+1)]:[],["id",`${this.htEditor.rootElement.id}_${i}-${r}`]]),n.innerHTML=y},afterSelectionEnd:(e,o)=>{if(t){const t=this.htEditor.getCell(e,o,!0);(0,l.setAttribute)(t,[(0,g.A11Y_SELECTED)()]),(0,l.setAttribute)(this.TEXTAREA,...(0,g.A11Y_ACTIVEDESCENDANT)(t.id))}}}),t&&((0,l.setAttribute)(this.htEditor.view._wt.wtOverlays.wtTable.TABLE,...(0,g.A11Y_PRESENTATION)()),(0,l.setAttribute)(this.htEditor.rootElement,[(0,g.A11Y_LISTBOX)(),(0,g.A11Y_LIVE)("polite"),(0,g.A11Y_RELEVANT)("text"),["id",`${p(w,this)}-listbox-${n}-${i}`]]),(0,l.setAttribute)(this.TEXTAREA,...(0,g.A11Y_EXPANDED)("true"))),this.hot._registerTimeout((()=>{this.queryChoices(this.TEXTAREA.value)}))}close(){this.removeHooksByKey("beforeKeyDown"),super.close(),this.hot.getSettings().ariaTags&&(0,l.setAttribute)(this.TEXTAREA,[(0,g.A11Y_EXPANDED)("false")])}discardEditor(e){super.discardEditor(e),this.hot.view.render()}queryChoices(e){const t=this.cellProperties.source;this.query=e,"function"==typeof t?t.call(this.cellProperties,e,(e=>{this.rawChoices=e,this.updateChoicesList(this.stripValuesIfNeeded(e))})):Array.isArray(t)?(this.rawChoices=t,this.updateChoicesList(this.stripValuesIfNeeded(t))):this.updateChoicesList([])}updateChoicesList(e){const t=(0,l.getCaretPosition)(this.TEXTAREA),o=(0,l.getSelectionEndPosition)(this.TEXTAREA),s=this.cellProperties.sortByRelevance,n=this.cellProperties.filter;let i=null,a=null,h=e;s&&(i=this.sortByRelevance(this.stripValueIfNeeded(this.getValue()),h,this.cellProperties.filteringCaseSensitive));const c=Array.isArray(i)?i.length:0;if(!1===n)c&&(a=i[0]);else{const e=[];for(let t=0,o=h.length;t<o&&!(s&&c<=t);t++)c?e.push(h[i[t]]):e.push(h[t]);a=0,h=e}this.strippedChoices=h,0===h.length?this.htEditor.rootElement.style.display="none":this.htEditor.rootElement.style.display="",this.htEditor.loadData((0,r.pivot)([h])),h.length>0&&(this.updateDropdownDimensions(),this.flipDropdownIfNeeded(),!0===this.cellProperties.strict&&this.highlightBestMatchingChoice(a)),this.hot.listen(),(0,l.setCaretPosition)(this.TEXTAREA,t,t===o?void 0:o)}flipDropdownIfNeeded(){const e=(0,l.getTrimmingContainer)(this.hot.view._wt.wtTable.TABLE),t=e===this.hot.rootWindow,o=this.cellProperties.preventOverflow;if(t||!t&&(o||"horizontal"===o))return!1;const s=(0,l.offset)(this.TEXTAREA),n=(0,l.outerHeight)(this.TEXTAREA),i=this.getDropdownHeight(),r=e.scrollTop,a=(0,l.outerHeight)(this.hot.view._wt.wtTable.THEAD),h=(0,l.offset)(e),c=s.top-h.top-a+r,u=e.scrollHeight-c-a-n,d=i>u&&c>u;return d?this.flipDropdown(i):this.unflipDropdown(),this.limitDropdownIfNeeded(d?c:u,i),d}limitDropdownIfNeeded(e,t){if(t>e){let o=0,s=0,n=0,i=null;do{n=this.htEditor.getRowHeight(s)||this.htEditor.view._wt.getSetting("defaultRowHeight"),o+=n,s+=1}while(o<e);i=o-n,this.htEditor.flipped&&(this.htEditor.rootElement.style.top=parseInt(this.htEditor.rootElement.style.top,10)+t-i+"px"),this.setDropdownHeight(o-n)}}flipDropdown(e){const t=this.htEditor.rootElement.style;t.position="absolute",t.top=-e+"px",this.htEditor.flipped=!0}unflipDropdown(){const e=this.htEditor.rootElement.style;e.position="absolute",e.top="",this.htEditor.flipped=void 0}updateDropdownDimensions(){const e=this.htEditor.getColWidth(0)+(0,l.getScrollbarWidth)(this.hot.rootDocument)+2,t=this.cellProperties.trimDropdown;this.htEditor.updateSettings({height:this.getDropdownHeight(),width:t?void 0:e}),this.htEditor.view._wt.wtTable.alignOverlaysWithTrimmingContainer()}setDropdownHeight(e){this.htEditor.updateSettings({height:e})}highlightBestMatchingChoice(e){"number"==typeof e?this.htEditor.selectCell(e,0,void 0,void 0,void 0,!1):this.htEditor.deselectCell()}getDropdownHeight(){const e=this.htEditor.getRowHeight(0)||23,t=this.cellProperties.visibleRows;return this.strippedChoices.length>=t?t*e:this.strippedChoices.length*e+8}stripValueIfNeeded(e){return this.stripValuesIfNeeded([e])[0]}stripValuesIfNeeded(e){const{allowHtml:t}=this.cellProperties,o=(0,r.arrayMap)(e,(e=>(0,a.stringify)(e)));return(0,r.arrayMap)(o,(e=>t?e:(0,h.stripTags)(e)))}allowKeyEventPropagation(e){const t=this.htEditor.getSelectedRangeLast(),o=t?t.from.row:-1;let s=!1;return e===c.KEY_CODES.ARROW_DOWN&&o>0&&o<this.htEditor.countRows()-1&&(s=!0),e===c.KEY_CODES.ARROW_UP&&o>-1&&(s=!0),s}onBeforeKeyDown(e){if((0,c.isPrintableChar)(e.keyCode)||e.keyCode===c.KEY_CODES.BACKSPACE||e.keyCode===c.KEY_CODES.DELETE||e.keyCode===c.KEY_CODES.INSERT){let t=10;if(e.keyCode===c.KEY_CODES.C&&(e.ctrlKey||e.metaKey))return;this.isOpened()||(t+=10),this.htEditor&&this.hot._registerTimeout((()=>{this.queryChoices(this.TEXTAREA.value)}),t)}}}t.AutocompleteEditor=C},80115:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(36854);t.EDITOR_TYPE=s.EDITOR_TYPE,t.AutocompleteEditor=s.AutocompleteEditor},63180:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(38893),r=o(13911),l=s(o(31872)),a=o(9893);const h=t.EDITOR_TYPE="base",c=t.EDITOR_STATE=Object.freeze({VIRGIN:"STATE_VIRGIN",EDITING:"STATE_EDITING",WAITING:"STATE_WAITING",FINISHED:"STATE_FINISHED"});class u{static get EDITOR_TYPE(){return h}constructor(e){(0,n.default)(this,"hot",void 0),(0,n.default)(this,"state",c.VIRGIN),(0,n.default)(this,"_opened",!1),(0,n.default)(this,"_fullEditMode",!1),(0,n.default)(this,"_closeCallback",null),(0,n.default)(this,"TD",null),(0,n.default)(this,"row",null),(0,n.default)(this,"col",null),(0,n.default)(this,"prop",null),(0,n.default)(this,"originalValue",null),(0,n.default)(this,"cellProperties",null),this.hot=e,this.init()}_fireCallbacks(e){this._closeCallback&&(this._closeCallback(e),this._closeCallback=null)}init(){}getValue(){throw Error("Editor getValue() method unimplemented")}setValue(){throw Error("Editor setValue() method unimplemented")}open(){throw Error("Editor open() method unimplemented")}close(){throw Error("Editor close() method unimplemented")}prepare(e,t,o,s,n,i){this.TD=s,this.row=e,this.col=t,this.prop=o,this.originalValue=n,this.cellProperties=i,this.state=this.isOpened()?this.state:c.VIRGIN}extend(){return class extends this.constructor{}}saveValue(e,t){let o,s,n,i;if(t){const e=this.hot.getSelectedLast();o=Math.max(Math.min(e[0],e[2]),0),s=Math.max(Math.min(e[1],e[3]),0),n=Math.max(e[0],e[2]),i=Math.max(e[1],e[3])}else[o,s,n,i]=[this.row,this.col,null,null];const r=this.hot.runHooks("modifyGetCellCoords",o,s);Array.isArray(r)&&([o,s]=r),this.hot.populateFromArray(o,s,e,n,i,"edit")}beginEditing(e,t){if(this.state!==c.VIRGIN)return;const o=this.hot,s=o.rowIndexMapper.getRenderableFromVisualIndex(this.row),n=o.columnIndexMapper.getRenderableFromVisualIndex(this.col);if(o.view.scrollViewport(o._createCellCoords(s,n)),this.state=c.EDITING,this.isInFullEditMode()){const t="string"==typeof e?e:(0,i.stringify)(this.originalValue);this.setValue(t)}this.open(t),this._opened=!0,this.focus(),o.view.render(),o.runHooks("afterBeginEditing",this.row,this.col)}finishEditing(e,t,o){let s;if(o){const e=this._closeCallback;this._closeCallback=t=>{e&&e(t),o(t),this.hot.view.render()}}if(!this.isWaiting())if(this.state!==c.VIRGIN){if(this.state===c.EDITING){if(e)return this.cancelChanges(),void this.hot.view.render();const o=this.getValue();s=this.cellProperties.trimWhitespace?[["string"==typeof o?String.prototype.trim.call(o||""):o]]:[[o]],this.state=c.WAITING,this.saveValue(s,t),this.hot.getCellValidator(this.cellProperties)?this.hot.addHookOnce("postAfterValidate",(e=>{this.state=c.FINISHED,this.discardEditor(e)})):(this.state=c.FINISHED,this.discardEditor(!0))}}else this.hot._registerTimeout((()=>{this._fireCallbacks(!0)}))}cancelChanges(){this.state=c.FINISHED,this.discardEditor()}discardEditor(e){if(this.state===c.FINISHED)if(!1===e&&!0!==this.cellProperties.allowInvalid)this.hot.selectCell(this.row,this.col),this.focus(),this.state=c.EDITING,this._fireCallbacks(!1);else{this.close(),this._opened=!1,this._fullEditMode=!1,this.state=c.VIRGIN,this._fireCallbacks(!0);this.hot.getShortcutManager().setActiveContextName("grid")}}enableFullEditMode(){this._fullEditMode=!0}isInFullEditMode(){return this._fullEditMode}isOpened(){return this._opened}isWaiting(){return this.state===c.WAITING}getEditedCellRect(){var e;const t=this.getEditedCell();if(!t)return;const{wtOverlays:o,wtViewport:s}=this.hot.view._wt,n=this.hot.rootWindow,i=(0,a.offset)(t),r=(0,a.outerWidth)(t),l=(0,a.offset)(this.hot.rootElement),h=(0,a.outerWidth)(this.hot.rootElement),c=o.topOverlay.holder,u=o.inlineStartOverlay.holder,d=c!==n?c.scrollTop:0,g=u!==n?u.scrollLeft:0,f=n.innerWidth-l.left-h,{wtTable:p}=null!==(e=o.getParentOverlay(t))&&void 0!==e?e:this.hot.view._wt,m=p.name,w=["master","inline_start"].includes(m)?d:0,C=["master","top","bottom"].includes(m)?g:0,v=i.top===l.top?0:1;let y=i.top-l.top-v-w,E=0;E=this.hot.isRtl()?n.innerWidth-i.left-r-f-1+C:i.left-l.left-1-C,["top","top_inline_start_corner"].includes(m)&&(y+=o.topOverlay.getOverlayOffset()),["inline_start","top_inline_start_corner"].includes(m)&&(E+=Math.abs(o.inlineStartOverlay.getOverlayOffset()));const S=this.hot.hasColHeaders(),R=this.hot.rowIndexMapper.getRenderableFromVisualIndex(this.row),b=this.hot.columnIndexMapper.getRenderableFromVisualIndex(this.col),_=this.hot.rowIndexMapper.getRenderableIndexesLength()-this.hot.view._wt.getSetting("fixedRowsBottom");(S&&R<=0||R===_)&&(y+=1),b<=0&&(E+=1);const T=s.rowsRenderCalculator.startPosition,M=s.columnsRenderCalculator.startPosition,O=Math.abs(o.inlineStartOverlay.getScrollPosition()),I=o.topOverlay.getScrollPosition(),N=(0,a.getScrollbarWidth)(this.hot.rootDocument);let A=t.offsetTop;if(["inline_start","master"].includes(m)&&(A+=T-I),["bottom","bottom_inline_start_corner"].includes(m)){const{wtViewport:e,wtTable:t}=o.bottomOverlay.clone;A+=e.getWorkspaceHeight()-t.getHeight()-N}let P=t.offsetLeft;this.hot.isRtl()?(P=P>=0?p.getWidth()-t.offsetLeft:Math.abs(P),P+=M-O-r):["top","master","bottom"].includes(m)&&(P+=M-O);const x=(0,a.getComputedStyle)(this.TD,this.hot.rootWindow),H=this.hot.isRtl()?"borderRightWidth":"borderLeftWidth",D=parseInt(x[H],10)>0?0:1,L=parseInt(x.borderTopWidth,10)>0?0:1,k=(0,a.outerWidth)(t)+D,V=(0,a.outerHeight)(t)+L,F=(0,a.hasVerticalScrollbar)(c)?N:0,W=(0,a.hasHorizontalScrollbar)(u)?N:0,B=this.hot.view.maximumVisibleElementWidth(P)-F+D;return{top:y,start:E,height:V,maxHeight:Math.max(this.hot.view.maximumVisibleElementHeight(A)-W+L,23),width:k,maxWidth:B}}getEditedCellsLayerClass(){switch(this.checkEditorSection()){case"inline-start":return"ht_clone_left ht_clone_inline_start";case"bottom":return"ht_clone_bottom";case"bottom-inline-start-corner":return"ht_clone_bottom_left_corner ht_clone_bottom_inline_start_corner";case"top":return"ht_clone_top";case"top-inline-start-corner":return"ht_clone_top_left_corner ht_clone_top_inline_start_corner";default:return"ht_clone_master"}}getEditedCell(){return this.hot.getCell(this.row,this.col,!0)}checkEditorSection(){const e=this.hot.countRows();let t="";return this.row<this.hot.getSettings().fixedRowsTop?t=this.col<this.hot.getSettings().fixedColumnsStart?"top-inline-start-corner":"top":this.hot.getSettings().fixedRowsBottom&&this.row>=e-this.hot.getSettings().fixedRowsBottom?t=this.col<this.hot.getSettings().fixedColumnsStart?"bottom-inline-start-corner":"bottom":this.col<this.hot.getSettings().fixedColumnsStart&&(t="inline-start"),t}}t.BaseEditor=u,(0,r.mixin)(u,l.default)},52618:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(63180);t.EDITOR_STATE=s.EDITOR_STATE,t.EDITOR_TYPE=s.EDITOR_TYPE,t.BaseEditor=s.BaseEditor},11936:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(52618),n=o(9893);const i=t.EDITOR_TYPE="checkbox";class r extends s.BaseEditor{static get EDITOR_TYPE(){return i}beginEditing(e,t){if(t&&"mouseup"===t.type&&"TD"===t.target.nodeName){const e=this.TD.querySelector('input[type="checkbox"]');(0,n.hasClass)(e,"htBadValue")||e.click()}}finishEditing(){}init(){}open(){}close(){}getValue(){}setValue(){}focus(){}}t.CheckboxEditor=r},39626:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(11936);t.EDITOR_TYPE=s.EDITOR_TYPE,t.CheckboxEditor=s.CheckboxEditor},10978:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=s(o(86798)),r=s(o(75972)),l=o(52618),a=o(64952),h=o(9893),c=o(13911),u=o(71257);o(17728);const d=t.EDITOR_TYPE="date",g="dateEditor";class f extends a.TextEditor{constructor(){super(...arguments),(0,n.default)(this,"defaultDateFormat","DD/MM/YYYY"),(0,n.default)(this,"parentDestroyed",!1),(0,n.default)(this,"$datePicker",null)}static get EDITOR_TYPE(){return d}init(){if("function"!=typeof i.default)throw new Error("You need to include moment.js to your project.");if("function"!=typeof r.default)throw new Error("You need to include Pikaday to your project.");super.init(),this.hot.addHook("afterDestroy",(()=>{this.parentDestroyed=!0,this.destroyElements()}))}createElements(){super.createElements(),this.datePicker=this.hot.rootDocument.createElement("DIV"),this.datePickerStyle=this.datePicker.style,this.datePickerStyle.position="absolute",this.datePickerStyle.top=0,this.datePickerStyle.left=0,this.datePickerStyle.zIndex=9999,this.datePicker.setAttribute("dir",this.hot.isRtl()?"rtl":"ltr"),(0,h.addClass)(this.datePicker,"htDatepickerHolder"),this.hot.rootDocument.body.appendChild(this.datePicker),this.eventManager.addEventListener(this.datePicker,"mousedown",(e=>{(0,h.hasClass)(e.target,"pika-day")&&this.hideDatepicker(),e.stopPropagation()}))}destroyElements(){const e=this.datePicker.parentNode;this.$datePicker&&this.$datePicker.destroy(),e&&e.removeChild(this.datePicker)}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i)}open(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;const t=this.hot.getShortcutManager().getContext("editor");this.showDatepicker(e),super.open(),t.addShortcuts([{keys:[["ArrowLeft"]],callback:()=>{this.$datePicker.adjustDate("subtract",1)}},{keys:[["ArrowRight"]],callback:()=>{this.$datePicker.adjustDate("add",1)}},{keys:[["ArrowUp"]],callback:()=>{this.$datePicker.adjustDate("subtract",7)}},{keys:[["ArrowDown"]],callback:()=>{this.$datePicker.adjustDate("add",7)}}],{group:g})}close(){var e;this._opened=!1,null!==(e=this.$datePicker)&&void 0!==e&&e.destroy&&this.$datePicker.destroy(),this.hot._registerTimeout((()=>{const e=this.hot._getEditorManager();e.closeEditor(),this.hot.view.render(),e.prepareEditor()}));this.hot.getShortcutManager().getContext("editor").removeShortcutsByGroup(g),super.close()}finishEditing(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];super.finishEditing(e,t)}showDatepicker(e){const t=this.cellProperties.dateFormat||this.defaultDateFormat,o=this.hot.view.isMouseDown(),s=!!e&&(0,u.isFunctionKey)(e.keyCode);let n;this.datePicker.style.display="block",this.$datePicker=new r.default(this.getDatePickerConfig()),"function"==typeof this.$datePicker.useMoment&&this.$datePicker.useMoment(i.default),this.$datePicker._onInputFocus=function(){},this.originalValue?(n=this.originalValue,(0,i.default)(n,t,!0).isValid()&&this.$datePicker.setMoment((0,i.default)(n,t),!0),this.getValue()!==this.originalValue&&this.setValue(this.originalValue),s||o||this.setValue("")):this.cellProperties.defaultDate?(n=this.cellProperties.defaultDate,(0,i.default)(n,t,!0).isValid()&&this.$datePicker.setMoment((0,i.default)(n,t),!0),s||o||this.setValue("")):this.$datePicker.gotoToday()}hideDatepicker(){this.datePickerStyle.display="none",this.$datePicker.hide()}getDatePickerConfig(){const e=this.TEXTAREA,t={};this.cellProperties&&this.cellProperties.datePickerConfig&&(0,c.deepExtend)(t,this.cellProperties.datePickerConfig);const o=t.onSelect,s=t.onClose;return t.field=e,t.trigger=e,t.container=this.datePicker,t.bound=!1,t.keyboardInput=!1,t.format=t.format||this.defaultDateFormat,t.reposition=t.reposition||!1,t.isRTL=!1,t.onSelect=e=>{let t=e;isNaN(t.getTime())||(t=(0,i.default)(t).format(this.cellProperties.dateFormat||this.defaultDateFormat)),this.setValue(t),o&&o()},t.onClose=()=>{this.parentDestroyed||this.finishEditing(!1),s&&s()},t}refreshDimensions(e){var t;if(super.refreshDimensions(e),this.state!==l.EDITOR_STATE.EDITING)return;if(this.TD=this.getEditedCell(),!this.TD)return void this.hideDatepicker();const{rowIndexMapper:o,columnIndexMapper:s}=this.hot,{wtOverlays:n}=this.hot.view._wt,{wtTable:i}=null!==(t=n.getParentOverlay(this.TD))&&void 0!==t?t:this.hot.view._wt,r=o.getVisualFromRenderableIndex(i.getFirstPartiallyVisibleRow()),a=o.getVisualFromRenderableIndex(i.getLastPartiallyVisibleRow()),c=s.getVisualFromRenderableIndex(i.getFirstPartiallyVisibleColumn()),u=s.getVisualFromRenderableIndex(i.getLastPartiallyVisibleColumn());if(this.row>=r&&this.row<=a&&this.col>=c&&this.col<=u){const e=this.TD.getBoundingClientRect();this.datePickerStyle.top=`${this.hot.rootWindow.pageYOffset+e.top+(0,h.outerHeight)(this.TD)}px`;let t=this.hot.rootWindow.pageXOffset;this.hot.isRtl()?t+=e.right-(0,h.outerWidth)(this.datePicker):t+=e.left,this.datePickerStyle.left=`${t}px`}else this.hideDatepicker()}}t.DateEditor=f},59127:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(10978);t.EDITOR_TYPE=s.EDITOR_TYPE,t.DateEditor=s.DateEditor},52236:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(80115),i=s(o(56937));const r=t.EDITOR_TYPE="dropdown";class l extends n.AutocompleteEditor{static get EDITOR_TYPE(){return r}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i),this.cellProperties.filter=!1,this.cellProperties.strict=!0}}t.DropdownEditor=l,i.default.getSingleton().add("beforeValidate",(function(e,t,o){const s=this.propToCol(o);if(Number.isInteger(s)){const e=this.getCellMeta(t,s);e.editor===l&&void 0===e.strict&&(e.filter=!1,e.strict=!0)}}))},50486:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(52236);t.EDITOR_TYPE=s.EDITOR_TYPE,t.DropdownEditor=s.DropdownEditor},29408:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952),n=o(9893),i=o(79729),r=o(13911),l=o(37947);const a="handsontableEditor",h=t.EDITOR_TYPE="handsontable";class c extends s.TextEditor{static get EDITOR_TYPE(){return h}open(){super.open(),this.htEditor&&this.htEditor.destroy(),"none"===this.htContainer.style.display&&(this.htContainer.style.display=""),this.htEditor=new this.hot.constructor(this.htContainer,this.htOptions),this.htEditor.init(),this.htEditor.rootElement.style.display="",this.cellProperties.strict?this.htEditor.selectCell(0,0):this.htEditor.deselectCell(),(0,n.setCaretPosition)(this.TEXTAREA,0,this.TEXTAREA.value.length),this.refreshDimensions()}close(){this.htEditor&&(this.htEditor.rootElement.style.display="none"),this.removeHooksByKey("beforeKeyDown"),super.close()}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i);const l=this,a={startRows:0,startCols:0,minRows:0,minCols:0,className:"listbox",copyPaste:!1,autoColumnSize:!1,autoRowSize:!1,readOnly:!0,fillHandle:!1,autoWrapCol:!1,autoWrapRow:!1,ariaTags:!1,afterOnCellMouseDown(e,t){const o=this.getSourceData(t.row,t.col);void 0!==o&&l.setValue(o),l.hot.destroyEditor()},preventWheel:!0,layoutDirection:this.hot.isRtl()?"rtl":"ltr"};this.cellProperties.handsontable&&(0,r.extend)(a,i.handsontable),this.htOptions=a}beginEditing(e,t){const o=this.hot.getSettings().onBeginEditing;o&&!1===o()||super.beginEditing(e,t)}createElements(){super.createElements();const e=this.hot.rootDocument.createElement("DIV");e.className="handsontableEditor",this.TEXTAREA_PARENT.appendChild(e),this.htContainer=e,this.assignHooks()}finishEditing(e,t,o){if(this.htEditor&&this.htEditor.isListening()&&this.hot.listen(),this.htEditor&&this.htEditor.getSelectedLast()){const e=this.htEditor.getValue();void 0!==e&&this.setValue(e)}super.finishEditing(e,t,o)}assignHooks(){this.hot.addHook("afterDestroy",(()=>{this.htEditor&&this.htEditor.destroy()}))}registerShortcuts(){const e=this.hot.getShortcutManager().getContext("editor");super.registerShortcuts();const t={group:a,relativeToGroup:l.EDITOR_EDIT_GROUP,position:"before"},o=(e,t)=>{const o=this.htEditor;if(void 0!==e&&(e<0||o.flipped&&e>o.countRows()-1?o.deselectCell():o.selectCell(e,0),o.getData().length))return t.preventDefault(),(0,i.stopImmediatePropagation)(t),this.hot.listen(),this.TEXTAREA.focus(),!1};e.addShortcuts([{keys:[["ArrowUp"]],callback:e=>{const t=this.htEditor;let s,n;return!t.getSelectedLast()&&t.flipped?s=t.countRows()-1:t.getSelectedLast()&&(t.flipped?(n=t.getSelectedLast()[0],s=Math.max(0,n-1)):(n=t.getSelectedLast()[0],s=n-1)),o(s,e)},preventDefault:!1},{keys:[["ArrowDown"]],callback:e=>{const t=this.htEditor;let s,n;if(t.getSelectedLast()||t.flipped){if(t.getSelectedLast())if(t.flipped)s=t.getSelectedLast()[0]+1;else if(!t.flipped){const e=t.countRows()-1;n=t.getSelectedLast()[0],s=Math.min(e,n+1)}}else s=0;return o(s,e)},preventDefault:!1}],t)}unregisterShortcuts(){super.unregisterShortcuts();this.hot.getShortcutManager().getContext("editor").removeShortcutsByGroup(a)}}t.HandsontableEditor=c},56138:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(29408);t.EDITOR_TYPE=s.EDITOR_TYPE,t.HandsontableEditor=s.HandsontableEditor},83645:(e,t,o)=>{"use strict";t.__esModule=!0,t.registerAllEditors=function(){(0,f.registerEditor)(n.BaseEditor),(0,f.registerEditor)(s.AutocompleteEditor),(0,f.registerEditor)(i.CheckboxEditor),(0,f.registerEditor)(r.DateEditor),(0,f.registerEditor)(l.DropdownEditor),(0,f.registerEditor)(a.HandsontableEditor),(0,f.registerEditor)(h.NumericEditor),(0,f.registerEditor)(c.PasswordEditor),(0,f.registerEditor)(u.SelectEditor),(0,f.registerEditor)(d.TextEditor),(0,f.registerEditor)(g.TimeEditor)};var s=o(80115);t.AutocompleteEditor=s.AutocompleteEditor,t.AUTOCOMPLETE_EDITOR=s.EDITOR_TYPE;var n=o(52618);t.BaseEditor=n.BaseEditor,t.BASE_EDITOR=n.EDITOR_TYPE;var i=o(39626);t.CheckboxEditor=i.CheckboxEditor,t.CHECKBOX_EDITOR=i.EDITOR_TYPE;var r=o(59127);t.DateEditor=r.DateEditor,t.DATE_EDITOR=r.EDITOR_TYPE;var l=o(50486);t.DropdownEditor=l.DropdownEditor,t.DROPDOWN_EDITOR=l.EDITOR_TYPE;var a=o(56138);t.HandsontableEditor=a.HandsontableEditor,t.HANDSONTABLE_EDITOR=a.EDITOR_TYPE;var h=o(33972);t.NumericEditor=h.NumericEditor,t.NUMERIC_EDITOR=h.EDITOR_TYPE;var c=o(46138);t.PasswordEditor=c.PasswordEditor,t.PASSWORD_EDITOR=c.EDITOR_TYPE;var u=o(7507);t.SelectEditor=u.SelectEditor,t.SELECT_EDITOR=u.EDITOR_TYPE;var d=o(64952);t.TextEditor=d.TextEditor,t.TEXT_EDITOR=d.EDITOR_TYPE;var g=o(14902);t.TimeEditor=g.TimeEditor,t.TIME_EDITOR=g.EDITOR_TYPE;var f=o(84558);t.registerEditor=f.registerEditor,t.RegisteredEditor=f.RegisteredEditor,t._getEditorInstance=f._getEditorInstance,t.getEditor=f.getEditor,t.getEditorInstance=f.getEditorInstance,t.getRegisteredEditorNames=f.getRegisteredEditorNames,t.getRegisteredEditors=f.getRegisteredEditors,t.hasEditor=f.hasEditor},33972:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(29230);t.EDITOR_TYPE=s.EDITOR_TYPE,t.NumericEditor=s.NumericEditor},29230:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952);const n=t.EDITOR_TYPE="numeric";class i extends s.TextEditor{static get EDITOR_TYPE(){return n}}t.NumericEditor=i},46138:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(99896);t.EDITOR_TYPE=s.EDITOR_TYPE,t.PasswordEditor=s.PasswordEditor},99896:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952),n=o(9893),i=o(92692);const r=t.EDITOR_TYPE="password";class l extends s.TextEditor{static get EDITOR_TYPE(){return r}createElements(){super.createElements(),this.TEXTAREA=this.hot.rootDocument.createElement("input"),this.TEXTAREA.setAttribute("type","password"),this.TEXTAREA.setAttribute("data-hot-input",""),this.TEXTAREA.className="handsontableInput",this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.hot.getSettings().ariaTags&&(0,n.setAttribute)(this.TEXTAREA,[(0,i.A11Y_HIDDEN)()]),(0,n.empty)(this.TEXTAREA_PARENT),this.TEXTAREA_PARENT.appendChild(this.TEXTAREA)}}t.PasswordEditor=l},84558:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.RegisteredEditor=d,t.getEditorInstance=t._getEditorInstance=function(e,t){let o;if("function"==typeof e)r.get(e)||g(null,e),o=r.get(e);else{if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter');o=a(e)}if(!o)throw Error(`No editor registered under name "${e}"`);return o.getInstance(t)},t.getEditor=function(e){if("function"==typeof e)return e;if(!h(e))throw Error(`No registered editor found under "${e}" name`);return a(e).getConstructor()},t.registerEditor=g,o(67834);var n=s(o(56937)),i=s(o(71263));const r=new WeakMap,{register:l,getItem:a,hasItem:h,getNames:c,getValues:u}=(0,i.default)("editors");function d(e){const t={},o=e;this.getConstructor=function(){return e},this.getInstance=function(e){return e.guid in t||(t[e.guid]=new o(e)),t[e.guid]},n.default.getSingleton().add("afterDestroy",(function(){t[this.guid]=null}))}function g(e,t){e&&"string"!=typeof e&&(e=(t=e).EDITOR_TYPE);const o=new d(t);"string"==typeof e&&l(e,o),r.set(t,o)}t.getRegisteredEditors=u,t.getRegisteredEditorNames=c,t.hasEditor=h},7507:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(24138);t.EDITOR_TYPE=s.EDITOR_TYPE,t.SelectEditor=s.SelectEditor},24138:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(52618),n=o(9893),i=o(13911);const r="ht_editor_visible",l="selectEditor",a=t.EDITOR_TYPE="select";class h extends s.BaseEditor{static get EDITOR_TYPE(){return a}init(){this.select=this.hot.rootDocument.createElement("select"),this.select.setAttribute("data-hot-input","true"),this.select.style.display="none",(0,n.addClass)(this.select,"htSelectEditor"),this.hot.rootElement.appendChild(this.select),this.registerHooks()}getValue(){return this.select.value}setValue(e){this.select.value=e}open(){this._opened=!0,this.refreshDimensions(),this.select.style.display="";this.hot.getShortcutManager().setActiveContextName("editor"),this.registerShortcuts()}close(){this._opened=!1,this.select.style.display="none",(0,n.hasClass)(this.select,r)&&(0,n.removeClass)(this.select,r),this.unregisterShortcuts(),this.clearHooks()}focus(){this.select.focus()}registerHooks(){this.addHook("afterScrollHorizontally",(()=>this.refreshDimensions())),this.addHook("afterScrollVertically",(()=>this.refreshDimensions())),this.addHook("afterColumnResize",(()=>this.refreshDimensions())),this.addHook("afterRowResize",(()=>this.refreshDimensions()))}prepare(e,t,o,s,r,l){super.prepare(e,t,o,s,r,l);const a=this.cellProperties.selectOptions;let h;h="function"==typeof a?this.prepareOptions(a(this.row,this.col,this.prop)):this.prepareOptions(a),(0,n.empty)(this.select),(0,i.objectEach)(h,((e,t)=>{const o=this.hot.rootDocument.createElement("OPTION");o.value=t,(0,n.fastInnerHTML)(o,e),this.select.appendChild(o)}))}prepareOptions(e){let t={};if(Array.isArray(e))for(let o=0,s=e.length;o<s;o++)t[e[o]]=e[o];else"object"==typeof e&&(t=e);return t}refreshValue(){const e=this.hot.getSourceDataAtCell(this.row,this.prop);this.originalValue=e,this.setValue(e),this.refreshDimensions()}refreshDimensions(){if(this.state!==s.EDITOR_STATE.EDITING)return;if(this.TD=this.getEditedCell(),!this.TD)return void this.close();const{top:e,start:t,width:o,height:i}=this.getEditedCellRect(),l=this.select.style;l.height=`${i}px`,l.width=`${o}px`,l.top=`${e}px`,l[this.hot.isRtl()?"right":"left"]=`${t}px`,l.margin="0px",(0,n.addClass)(this.select,r)}registerShortcuts(){const e=this.hot.getShortcutManager().getContext("editor"),t={group:l};this.isInFullEditMode()&&e.addShortcuts([{keys:[["ArrowUp"]],callback:()=>{const e=this.select.selectedIndex-1;e>=0&&(this.select[e].selected=!0)}},{keys:[["ArrowDown"]],callback:()=>{const e=this.select.selectedIndex+1;e<=this.select.length-1&&(this.select[e].selected=!0)}}],t)}unregisterShortcuts(){this.hot.getShortcutManager().getContext("editor").removeShortcutsByGroup(l)}}t.SelectEditor=h},40559:(e,t,o)=>{"use strict";t.__esModule=!0,t.updateCaretPosition=function(e,t){const o=(0,s.getCaretPosition)(t),n=t.value.split("\n");let i=o,r=0;for(let t=0;t<n.length;t++){const s=n[t];0!==t&&(r+=n[t-1].length+1);const l=r+s.length;if("home"===e?i=r:"end"===e&&(i=l),o<=l)break}(0,s.setCaretPosition)(t,i)};var s=o(9893)},64952:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(82540);t.EDITOR_TYPE=s.EDITOR_TYPE,t.TextEditor=s.TextEditor},82540:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(52618),r=s(o(82629)),l=o(28890),a=o(9893),h=o(87485),c=o(11139),u=o(38893),d=o(40559),g=o(92692);const f="ht_editor_hidden",p="textEditor",m=t.EDITOR_TYPE="text";class w extends i.BaseEditor{static get EDITOR_TYPE(){return m}constructor(e){super(e),(0,n.default)(this,"eventManager",new r.default(this)),(0,n.default)(this,"autoResize",(0,c.createInputElementResizer)(this.hot.rootDocument)),(0,n.default)(this,"TEXTAREA",void 0),(0,n.default)(this,"textareaStyle",void 0),(0,n.default)(this,"TEXTAREA_PARENT",void 0),(0,n.default)(this,"textareaParentStyle",void 0),(0,n.default)(this,"layerClass",void 0),this.eventManager=new r.default(this),this.createElements(),this.bindEvents(),this.hot.addHookOnce("afterDestroy",(()=>this.destroy()))}getValue(){return this.TEXTAREA.value}setValue(e){this.TEXTAREA.value=e}open(){this.refreshDimensions(),this.showEditableElement(),this.hot.getShortcutManager().setActiveContextName("editor"),this.registerShortcuts()}close(){this.autoResize.unObserve(),(0,a.isThisHotChild)(this.hot.rootDocument.activeElement,this.hot.rootElement)&&this.hot.listen(),this.hideEditableElement(),this.unregisterShortcuts()}prepare(e,t,o,s,n,r){const l=this.state;if(super.prepare(e,t,o,s,n,r),!r.readOnly){this.refreshDimensions(!0);const{allowInvalid:e}=r;e&&!this.isOpened()&&(this.TEXTAREA.value=""),l===i.EDITOR_STATE.FINISHED||this.isOpened()||this.hideEditableElement()}}beginEditing(e,t){this.state===i.EDITOR_STATE.VIRGIN&&(this.TEXTAREA.value="",super.beginEditing(e,t))}focus(){this.TEXTAREA.select(),(0,a.setCaretPosition)(this.TEXTAREA,this.TEXTAREA.value.length)}createElements(){const{rootDocument:e}=this.hot;this.TEXTAREA=e.createElement("TEXTAREA"),(0,a.setAttribute)(this.TEXTAREA,[["data-hot-input",""],(0,g.A11Y_TABINDEX)(-1)]),this.hot.getSettings().ariaTags&&(0,a.setAttribute)(this.TEXTAREA,[(0,g.A11Y_HIDDEN)()]),(0,a.addClass)(this.TEXTAREA,"handsontableInput"),this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.textareaStyle.overflowY="visible",this.TEXTAREA_PARENT=e.createElement("DIV"),(0,a.addClass)(this.TEXTAREA_PARENT,"handsontableInputHolder"),(0,a.hasClass)(this.TEXTAREA_PARENT,this.layerClass)&&(0,a.removeClass)(this.TEXTAREA_PARENT,this.layerClass),(0,a.addClass)(this.TEXTAREA_PARENT,f),this.textareaParentStyle=this.TEXTAREA_PARENT.style,this.TEXTAREA_PARENT.appendChild(this.TEXTAREA),this.hot.rootElement.appendChild(this.TEXTAREA_PARENT)}hideEditableElement(){(0,l.isEdge)()&&(this.textareaStyle.textIndent="-99999px"),this.textareaStyle.overflowY="visible",this.textareaParentStyle.opacity="0",this.textareaParentStyle.height="1px",(0,a.removeClass)(this.TEXTAREA_PARENT,this.layerClass),(0,a.addClass)(this.TEXTAREA_PARENT,f)}showEditableElement(){this.textareaParentStyle.height="",this.textareaParentStyle.overflow="",this.textareaParentStyle.position="",this.textareaParentStyle[this.hot.isRtl()?"left":"right"]="auto",this.textareaParentStyle.opacity="1",this.textareaStyle.textIndent="";const e=this.TEXTAREA_PARENT.childNodes;let t=!1;(0,h.rangeEach)(e.length-1,(o=>{const s=e[o];if((0,a.hasClass)(s,"handsontableEditor"))return t=!0,!1})),(0,a.hasClass)(this.TEXTAREA_PARENT,f)&&(0,a.removeClass)(this.TEXTAREA_PARENT,f),t?(this.layerClass="ht_editor_visible",(0,a.addClass)(this.TEXTAREA_PARENT,this.layerClass)):(this.layerClass=this.getEditedCellsLayerClass(),(0,a.addClass)(this.TEXTAREA_PARENT,this.layerClass))}refreshValue(){const e=this.hot.toPhysicalRow(this.row),t=this.hot.getSourceDataAtCell(e,this.col);this.originalValue=t,this.setValue(t),this.refreshDimensions()}refreshDimensions(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.state!==i.EDITOR_STATE.EDITING&&!e)return;if(this.TD=this.getEditedCell(),!this.TD)return void(e||this.close());const{top:t,start:o,width:s,maxWidth:n,height:r,maxHeight:l}=this.getEditedCellRect();this.textareaParentStyle.top=`${t}px`,this.textareaParentStyle[this.hot.isRtl()?"right":"left"]=`${o}px`,this.showEditableElement();const h=(0,a.getComputedStyle)(this.TD,this.hot.rootWindow);this.TEXTAREA.style.fontSize=h.fontSize,this.TEXTAREA.style.fontFamily=h.fontFamily,this.TEXTAREA.style.backgroundColor=this.TD.style.backgroundColor;const c=(0,a.getComputedStyle)(this.TEXTAREA),u=parseInt(c.paddingLeft,10)+parseInt(c.paddingRight,10),d=parseInt(c.paddingTop,10)+parseInt(c.paddingBottom,10),g=s-u,f=r-d,p=n-u,m=l-d;this.autoResize.init(this.TEXTAREA,{minWidth:Math.min(g,p),minHeight:Math.min(f,m),maxWidth:p,maxHeight:m},!0)}bindEvents(){(0,l.isIOS)()&&this.eventManager.addEventListener(this.TEXTAREA,"focusout",(()=>this.finishEditing(!1))),this.addHook("afterScrollHorizontally",(()=>this.refreshDimensions())),this.addHook("afterScrollVertically",(()=>this.refreshDimensions())),this.addHook("afterColumnResize",(()=>{this.refreshDimensions(),this.state===i.EDITOR_STATE.EDITING&&this.focus()})),this.addHook("afterRowResize",(()=>{this.refreshDimensions(),this.state===i.EDITOR_STATE.EDITING&&this.focus()}))}allowKeyEventPropagation(){}destroy(){this.eventManager.destroy(),this.clearHooks()}registerShortcuts(){const e=this.hot.getShortcutManager().getContext("editor"),t={runOnlyIf:()=>(0,u.isDefined)(this.hot.getSelected()),group:p},o=()=>{this.hot.rootDocument.execCommand("insertText",!1,"\n")};e.addShortcuts([{keys:[["Control","Enter"]],callback:()=>(o(),!1),runOnlyIf:e=>!this.hot.selection.isMultiple()&&!e.altKey},{keys:[["Meta","Enter"]],callback:()=>(o(),!1),runOnlyIf:()=>!this.hot.selection.isMultiple()},{keys:[["Alt","Enter"]],callback:()=>(o(),!1)},{keys:[["Home"]],callback:(e,t)=>{let[o]=t;(0,d.updateCaretPosition)(o,this.TEXTAREA)}},{keys:[["End"]],callback:(e,t)=>{let[o]=t;(0,d.updateCaretPosition)(o,this.TEXTAREA)}}],t)}unregisterShortcuts(){this.hot.getShortcutManager().getContext("editor").removeShortcutsByGroup(p)}}t.TextEditor=w},14902:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(9412);t.EDITOR_TYPE=s.EDITOR_TYPE,t.TimeEditor=s.TimeEditor},9412:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952);const n=t.EDITOR_TYPE="time";class i extends s.TextEditor{static get EDITOR_TYPE(){return n}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i),this.TEXTAREA.dir="ltr"}}t.TimeEditor=i},82629:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.getListenersCounter=function(){return r},o(15724);var n=s(o(85707)),i=o(79729);let r=0;t.default=class{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;(0,n.default)(this,"context",void 0),this.context=e||this,this.context.eventListeners||(this.context.eventListeners=[])}addEventListener(e,t,o){let s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];function n(e){o.call(this,function(e){const t=e.stopImmediatePropagation;return e.stopImmediatePropagation=function(){t.apply(this),(0,i.stopImmediatePropagation)(this)},e}(e))}return this.context.eventListeners.push({element:e,event:t,callback:o,callbackProxy:n,options:s,eventManager:this}),e.addEventListener(t,n,s),r+=1,()=>{this.removeEventListener(e,t,o)}}removeEventListener(e,t,o){let s,n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],i=this.context.eventListeners.length;for(;i;)if(i-=1,s=this.context.eventListeners[i],s.event===t&&s.element===e){if(o&&o!==s.callback)continue;if(n&&s.eventManager!==this)continue;this.context.eventListeners.splice(i,1),s.element.removeEventListener(s.event,s.callbackProxy,s.options),r-=1}}clearEvents(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!this.context)return;let t=this.context.eventListeners.length;for(;t;){t-=1;const o=this.context.eventListeners[t];e&&o.eventManager!==this||(this.context.eventListeners.splice(t,1),o.element.removeEventListener(o.event,o.callbackProxy,o.options),r-=1)}}clear(){this.clearEvents()}destroy(){this.clearEvents(),this.context=null}destroyWithOwnEventsOnly(){this.clearEvents(!0),this.context=null}fireEvent(e,t){let o=e.document,s=e;o||(o=e.ownerDocument?e.ownerDocument:e,s=o.defaultView);const n={bubbles:!0,cancelable:"mousemove"!==t,view:s,detail:0,screenX:0,screenY:0,clientX:1,clientY:1,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:void 0};let i;o.createEvent?(i=o.createEvent("MouseEvents"),i.initMouseEvent(t,n.bubbles,n.cancelable,n.view,n.detail,n.screenX,n.screenY,n.clientX,n.clientY,n.ctrlKey,n.altKey,n.shiftKey,n.metaKey,n.button,n.relatedTarget||o.body.parentNode)):i=o.createEventObject(),e.dispatchEvent?e.dispatchEvent(i):e.fireEvent(`on${t}`,i)}}},26505:(e,t,o)=>{"use strict";t.__esModule=!0,o(67834);var s=o(83119),n=o(9893),i=o(78832);function r(e,t,o){l(e,t),t.set(e,o)}function l(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function a(e,t){return e.get(c(e,t))}function h(e,t,o){return e.set(c(e,t),o),o}function c(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}const u=Object.freeze({CELL:"cell",MIXED:"mixed"});var d=new WeakMap,g=new WeakMap,f=new WeakMap,p=new WeakMap,m=new WeakMap,w=new WeakSet;function C(e){var t;const o=null===(t=a(d,this).getSelectedRangeLast())||void 0===t?void 0:t.highlight;if(!o||!a(d,this).selection.isCellVisible(o))return void e(null);const s=a(d,this).getCell(o.row,o.col,!0);null===s?a(d,this).addHookOnce("afterScroll",(()=>{e(a(d,this).getCell(o.row,o.col,!0))})):e(s)}function v(){c(w,this,C).call(this,(e=>{const{activeElement:t}=a(d,this).rootDocument;t&&(0,n.isOutsideInput)(t)&&t.blur(),this.focusOnHighlightedCell(e)}))}function y(){c(w,this,C).call(this,(e=>{this.getFocusMode()===u.MIXED&&"TD"===e.nodeName&&this.refocusToEditorTextarea()}))}function E(e){"boolean"==typeof e.imeFastEdit&&this.setFocusMode(e.imeFastEdit?u.MIXED:u.CELL)}t.FocusManager=class{constructor(e){var t,o,s=this;l(t=this,o=w),o.add(t),r(this,d,void 0),r(this,g,void 0),r(this,f,1),r(this,p,null),r(this,m,new Map);const n=e.getSettings();h(d,this,e),h(g,this,n.imeFastEdit?u.MIXED:u.CELL),a(d,this).addHook("afterUpdateSettings",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return c(w,s,E).call(s,...t)})),a(d,this).addHook("afterSelection",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return c(w,s,v).call(s,...t)})),a(d,this).addHook("afterSelectionFocusSet",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return c(w,s,v).call(s,...t)})),a(d,this).addHook("afterSelectionEnd",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return c(w,s,y).call(s,...t)}))}getFocusMode(){return a(g,this)}setFocusMode(e){Object.values(u).includes(e)?h(g,this,e):(0,s.warn)(`"${e}" is not a valid focus mode.`)}getRefocusDelay(){return a(f,this)}setRefocusDelay(e){h(f,this,e)}setRefocusElementGetter(e){h(p,this,e)}getRefocusElement(){return"function"==typeof a(p,this)?a(p,this).call(this):null===(e=a(d,this).getActiveEditor())||void 0===e?void 0:e.TEXTAREA;var e}focusOnHighlightedCell(e){const t=e=>{var t,o;const s=null===(t=a(d,this).getSelectedRangeLast())||void 0===t?void 0:t.highlight;if(!s)return;let n=a(d,this).runHooks("modifyFocusedElement",s.row,s.col,e);n instanceof HTMLElement||(n=e),!n||null!==(o=a(d,this).getActiveEditor())&&void 0!==o&&o.isOpened()||n.focus({preventScroll:!0})};e?t(e):c(w,this,C).call(this,(e=>t(e)))}refocusToEditorTextarea(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a(f,this);const o=this.getRefocusElement();!a(d,this).getSettings().imeFastEdit||null!==(e=a(d,this).getActiveEditor())&&void 0!==e&&e.isOpened()||!o||(a(m,this).has(t)||a(m,this).set(t,(0,i.debounce)((()=>{o.select()}),t)),a(m,this).get(t)())}}},92692:(e,t)=>{"use strict";t.__esModule=!0;t.A11Y_TABINDEX=e=>["tabindex",e];t.A11Y_TREEGRID=()=>["role","treegrid"];t.A11Y_PRESENTATION=()=>["role","presentation"];t.A11Y_GRIDCELL=()=>["role","gridcell"];t.A11Y_ROWHEADER=()=>["role","rowheader"];t.A11Y_ROWGROUP=()=>["role","rowgroup"];t.A11Y_COLUMNHEADER=()=>["role","columnheader"];t.A11Y_ROW=()=>["role","row"];t.A11Y_MENU=()=>["role","menu"];t.A11Y_MENU_ITEM=()=>["role","menuitem"];t.A11Y_MENU_ITEM_CHECKBOX=()=>["role","menuitemcheckbox"];t.A11Y_COMBOBOX=()=>["role","combobox"];t.A11Y_LISTBOX=()=>["role","listbox"];t.A11Y_OPTION=()=>["role","option"];t.A11Y_CHECKBOX=()=>["role","checkbox"];t.A11Y_SCOPE_COL=()=>["scope","col"];t.A11Y_SCOPE_ROW=()=>["scope","row"];t.A11Y_TEXT=()=>["type","text"];t.A11Y_LABEL=e=>["aria-label",e];t.A11Y_HIDDEN=()=>["aria-hidden","true"];t.A11Y_DISABLED=()=>["aria-disabled","true"];t.A11Y_MULTISELECTABLE=()=>["aria-multiselectable","true"];t.A11Y_HASPOPUP=e=>["aria-haspopup",e];t.A11Y_ROWCOUNT=e=>["aria-rowcount",e];t.A11Y_COLCOUNT=e=>["aria-colcount",e];t.A11Y_ROWINDEX=e=>["aria-rowindex",e];t.A11Y_COLINDEX=e=>["aria-colindex",e];t.A11Y_EXPANDED=e=>["aria-expanded",e];t.A11Y_SORT=e=>["aria-sort",e];t.A11Y_READONLY=()=>["aria-readonly","true"];t.A11Y_INVALID=()=>["aria-invalid","true"];t.A11Y_CHECKED=e=>["aria-checked",e];t.A11Y_SELECTED=()=>["aria-selected","true"];t.A11Y_AUTOCOMPLETE=()=>["aria-autocomplete","list"];t.A11Y_CONTROLS=e=>["aria-controls",e];t.A11Y_ACTIVEDESCENDANT=e=>["aria-activedescendant",e];t.A11Y_LIVE=e=>["aria-live",e];t.A11Y_RELEVANT=e=>["aria-relevant",e];t.A11Y_SETSIZE=e=>["aria-setsize",e];t.A11Y_POSINSET=e=>["aria-posinset",e]},9175:(e,t,o)=>{"use strict";function s(e,t,o,s){let n=-1,i=e,r=o;Array.isArray(e)||(i=Array.from(e));const l=i.length;for(s&&l&&(n+=1,r=i[n]),n+=1;n<l;)r=t(r,i[n],n,i),n+=1;return r}function n(e,t){let o=0,s=e;Array.isArray(e)||(s=Array.from(e));const n=s.length;for(;o<n&&!1!==t(s[o],o,s);)o+=1;return e}function i(e){return s(e,((e,t)=>e+t),0)}t.__esModule=!0,t.arrayAvg=function(e){if(!e.length)return 0;return i(e)/e.length},t.arrayEach=n,t.arrayFilter=function(e,t){let o=0,s=e;Array.isArray(e)||(s=Array.from(e));const n=s.length,i=[];let r=-1;for(;o<n;){const e=s[o];t(e,o,s)&&(r+=1,i[r]=e),o+=1}return i},t.arrayFlatten=function e(t){return s(t,((t,o)=>t.concat(Array.isArray(o)?e(o):o)),[])},t.arrayMap=function(e,t){let o=0,s=e;Array.isArray(e)||(s=Array.from(e));const n=s.length,i=[];let r=-1;for(;o<n;){const e=s[o];r+=1,i[r]=t(e,o,s),o+=1}return i},t.arrayMax=function(e){return s(e,((e,t)=>e>t?e:t),Array.isArray(e)?e[0]:void 0)},t.arrayMin=function(e){return s(e,((e,t)=>e<t?e:t),Array.isArray(e)?e[0]:void 0)},t.arrayReduce=s,t.arraySum=i,t.arrayUnique=function(e){const t=[];return n(e,(e=>{-1===t.indexOf(e)&&t.push(e)})),t},t.extendArray=function(e,t){const o=t.length;let s=0;for(;s<o;)e.push(t[s]),s+=1},t.getDifferenceOfArrays=function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];const[s,...i]=[...t];let r=s;return n(i,(e=>{r=r.filter((t=>!e.includes(t)))})),r},t.getIntersectionOfArrays=function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];const[s,...i]=[...t];let r=s;return n(i,(e=>{r=r.filter((t=>e.includes(t)))})),r},t.getUnionOfArrays=function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];const[s,...i]=[...t],r=new Set(s);return n(i,(e=>{n(e,(e=>{r.has(e)||r.add(e)}))})),Array.from(r)},t.pivot=function(e){const t=[];if(!e||0===e.length||!e[0]||0===e[0].length)return t;const o=e.length,s=e[0].length;for(let n=0;n<o;n++)for(let o=0;o<s;o++)t[o]||(t[o]=[]),t[o][n]=e[n][o];return t},t.stringToArray=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" ";return e.split(t)},t.to2dArray=function(e){const t=e.length;let o=0;for(;o<t;)e[o]=[e[o]],o+=1},o(15724),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620)},28890:(e,t,o)=>{"use strict";t.__esModule=!0,t.isChrome=function(){return r.chrome.value},t.isChromeWebKit=function(){return r.chromeWebKit.value},t.isEdge=function(){return r.edge.value},t.isEdgeWebKit=function(){return r.edgeWebKit.value},t.isFirefox=function(){return r.firefox.value},t.isFirefoxWebKit=function(){return r.firefoxWebKit.value},t.isIOS=function(){return l.ios.value},t.isIpadOS=function(){let{maxTouchPoints:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:navigator;return e>2&&l.mac.value},t.isLinuxOS=function(){return l.linux.value},t.isMacOS=function(){return l.mac.value},t.isMobileBrowser=function(){return r.mobile.value},t.isSafari=function(){return r.safari.value},t.isWindowsOS=function(){return l.win.value},t.setBrowserMeta=a,t.setPlatformMeta=h;var s=o(13911),n=o(93980);const i=e=>{const t={value:!1,test:(o,s)=>{t.value=e(o,s)}};return t},r={chrome:i(((e,t)=>/Chrome/.test(e)&&/Google/.test(t))),chromeWebKit:i((e=>/CriOS/.test(e))),edge:i((e=>/Edge/.test(e))),edgeWebKit:i((e=>/EdgiOS/.test(e))),firefox:i((e=>/Firefox/.test(e))),firefoxWebKit:i((e=>/FxiOS/.test(e))),mobile:i((e=>/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(e))),safari:i(((e,t)=>/Safari/.test(e)&&/Apple Computer/.test(t)))},l={mac:i((e=>/^Mac/.test(e))),win:i((e=>/^Win/.test(e))),linux:i((e=>/^Linux/.test(e))),ios:i((e=>/iPhone|iPad|iPod/i.test(e)))};function a(){let{userAgent:e=navigator.userAgent,vendor:t=navigator.vendor}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,s.objectEach)(r,(o=>{let{test:s}=o;s(e,t)}))}function h(){let{platform:e=navigator.platform}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,s.objectEach)(l,(t=>{let{test:o}=t;o(e)}))}(0,n.isCSR)()&&(a(),h())},83119:(e,t,o)=>{"use strict";t.__esModule=!0,t.error=function(){(0,s.isDefined)(console)&&console.error(...arguments)},t.info=function(){(0,s.isDefined)(console)&&console.info(...arguments)},t.log=function(){(0,s.isDefined)(console)&&console.log(...arguments)},t.warn=function(){(0,s.isDefined)(console)&&console.warn(...arguments)};var s=o(38893)},56216:(e,t,o)=>{"use strict";t.__esModule=!0,t.countFirstRowKeys=function(e){let t=0;Array.isArray(e)&&(e[0]&&Array.isArray(e[0])?t=e[0].length:e[0]&&(0,s.isObject)(e[0])&&(t=(0,s.deepObjectSize)(e[0])));return t},t.createEmptySpreadsheetData=function(e,t){const o=[];let s;for(let n=0;n<e;n++){s=[];for(let e=0;e<t;e++)s.push("");o.push(s)}return o},t.createSpreadsheetData=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:4;const o=[];let s,n;for(s=0;s<e;s++){const e=[];for(n=0;n<t;n++)e.push(r(n)+(s+1));o.push(e)}return o},t.createSpreadsheetObjectData=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:4;const o=[];let s,n;for(s=0;s<e;s++){const e={};for(n=0;n<t;n++)e[`prop${n}`]=r(n)+(s+1);o.push(e)}return o},t.dataRowToChangesArray=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=e;const s=[];Array.isArray(e)&&Array.isArray(e[0])||(o=[e]);return o.forEach(((e,o)=>{Array.isArray(e)?e.forEach(((e,n)=>{s.push([o+t,n,e])})):Object.keys(e).forEach((n=>{s.push([o+t,n,e[n]])}))})),s},t.isArrayOfArrays=function(e){return!!(Array.isArray(e)&&e.length&&e.every((e=>Array.isArray(e))))},t.isArrayOfObjects=function(e){return!!(Array.isArray(e)&&e.length&&e.every((e=>"object"==typeof e&&!Array.isArray(e)&&null!==e)))},t.spreadsheetColumnIndex=function(e){let t=0;if(e)for(let o=0,s=e.length-1;o<e.length;o+=1,s-=1)t+=i**s*(n.indexOf(e[o])+1);return t-=1,t},t.spreadsheetColumnLabel=r,o(15724);var s=o(13911);const n="ABCDEFGHIJKLMNOPQRSTUVWXYZ",i=n.length;function r(e){let t,o=e+1,s="";for(;o>0;)t=(o-1)%i,s=String.fromCharCode(65+t)+s,o=parseInt((o-t)/i,10);return s}},72484:(e,t)=>{"use strict";t.__esModule=!0,t.getNormalizedDate=function(e){const t=new Date(e);if(!isNaN(new Date(`${e}T00:00`).getDate()))return new Date(t.getTime()+6e4*t.getTimezoneOffset());return t}},9893:(e,t,o)=>{"use strict";t.__esModule=!0,t.addClass=h,t.addEvent=function(e,t,o){e.addEventListener(t,o,!1)},t.clearTextSelection=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window;e.getSelection&&(e.getSelection().empty?e.getSelection().empty():e.getSelection().removeAllRanges&&e.getSelection().removeAllRanges())},t.closest=r,t.closestDown=function(e,t,o){const s=[];let n=e;for(;n&&(n=r(n,t,o),n&&(!o||o.contains(n)));)s.push(n),n=n.host&&n.nodeType===Node.DOCUMENT_FRAGMENT_NODE?n.host:n.parentNode;const i=s.length;return i?s[i-1]:null},t.empty=d,t.fastInnerHTML=function(e,t){let o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];g.test(t)?e.innerHTML=o?(0,s.sanitize)(t):t:f(e,t)},t.fastInnerText=f,t.getCaretPosition=function(e){if(e.selectionStart)return e.selectionStart;return 0},t.getComputedStyle=w,t.getCssTransform=function(e){let t;if(e.style.transform&&""!==(t=e.style.transform))return["transform",t];return-1},t.getFrameElement=i,t.getMaximumScrollLeft=function(e){return e.scrollWidth-e.clientWidth},t.getMaximumScrollTop=function(e){return e.scrollHeight-e.clientHeight},t.getParent=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=-1,s=null,n=e;for(;null!==n;){if(o===t){s=n;break}n.host&&n.nodeType===Node.DOCUMENT_FRAGMENT_NODE?n=n.host:(o+=1,n=n.parentNode)}return s},t.getParentWindow=function(e){return i(e)&&e.parent},t.getScrollLeft=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;if(e===t)return m(t);return e.scrollLeft},t.getScrollTop=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;if(e===t)return p(t);return e.scrollTop},t.getScrollableElement=function(e){let t=e.ownerDocument,o=t?t.defaultView:void 0;t||(t=e.document?e.document:e,o=t.defaultView);const s=["auto","scroll"];let n=e.parentNode;for(;n&&n.style&&t.body!==n;){let{overflow:e,overflowX:t,overflowY:i}=n.style;if([e,t,i].includes("scroll"))return n;if(({overflow:e,overflowX:t,overflowY:i}=o.getComputedStyle(n)),s.includes(e)||s.includes(t)||s.includes(i))return n;if(n.clientHeight<=n.scrollHeight+1&&(s.includes(i)||s.includes(e)))return n;if(n.clientWidth<=n.scrollWidth+1&&(s.includes(t)||s.includes(e)))return n;n=n.parentNode}return o},t.getScrollbarWidth=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;void 0===C&&(C=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;const t=e.createElement("div");t.style.height="200px",t.style.width="100%";const o=e.createElement("div");o.style.boxSizing="content-box",o.style.height="150px",o.style.left="0px",o.style.overflow="hidden",o.style.position="absolute",o.style.top="0px",o.style.width="200px",o.style.visibility="hidden",o.appendChild(t),(e.body||e.documentElement).appendChild(o);const s=t.offsetWidth;o.style.overflow="scroll";let n=t.offsetWidth;s===n&&(n=o.clientWidth);return(e.body||e.documentElement).removeChild(o),s-n}(e));return C},t.getSelectionEndPosition=function(e){if(e.selectionEnd)return e.selectionEnd;return 0},t.getSelectionText=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window;const t=e.document;let o="";e.getSelection?o=e.getSelection().toString():t.selection&&"Control"!==t.selection.type&&(o=t.selection.createRange().text);return o},t.getStyle=function(e,t){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:window;if(!e)return;if(e===o)return"width"===t?`${o.innerWidth}px`:"height"===t?`${o.innerHeight}px`:void 0;const s=e.style[t];if(""!==s&&void 0!==s)return s;const n=w(e,o);if(""!==n[t]&&void 0!==n[t])return n[t]},t.getTrimmingContainer=function(e){const t=e.ownerDocument,o=t.defaultView;let s=e.parentNode;for(;s&&s.style&&t.body!==s;){if("visible"!==s.style.overflow&&""!==s.style.overflow)return s;const e=w(s,o),t=["scroll","hidden","auto"],n=e.getPropertyValue("overflow"),i=e.getPropertyValue("overflow-y"),r=e.getPropertyValue("overflow-x");if(t.includes(n)||t.includes(i)||t.includes(r))return s;s=s.parentNode}return o},t.getWindowScrollLeft=m,t.getWindowScrollTop=p,t.hasAccessToParentWindow=function(e){return!!Object.getPrototypeOf(e.parent)},t.hasClass=function(e,t){if(void 0===e.classList||"string"!=typeof t||""===t)return!1;return e.classList.contains(t)},t.hasHorizontalScrollbar=function(e){return e.offsetHeight!==e.clientHeight},t.hasVerticalScrollbar=function(e){return e.offsetWidth!==e.clientWidth},t.index=function(e){let t=0,o=e;if(o.previousSibling)for(;o=o.previousSibling;)t+=1;return t},t.innerHeight=function(e){return e.clientHeight||e.innerHeight},t.innerWidth=function(e){return e.clientWidth||e.innerWidth},t.isChildOf=function(e,t){let o=e.parentNode,s=[];"string"==typeof t?s=e.defaultView?Array.prototype.slice.call(e.querySelectorAll(t),0):Array.prototype.slice.call(e.ownerDocument.querySelectorAll(t),0):s.push(t);for(;null!==o;){if(s.indexOf(o)>-1)return!0;o=o.parentNode}return!1},t.isDetached=function(e){return!e.parentNode},t.isInput=v,t.isOutsideInput=y,t.isThisHotChild=function(e,t){const o=e.closest(".handsontable");return!!o&&(o.parentNode===t||o===t)},t.isVisible=function e(t){const o=t.ownerDocument.documentElement;let s=t;for(;s!==o;){if(null===s)return!1;if(s.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(s.host){if(s.host.impl)return e(s.host.impl);if(s.host)return e(s.host);throw new Error("Lost in Web Components world")}return!1}if("none"===w(s).display)return!1;s=s.parentNode}return!0},t.makeElementContentEditableAndSelectItsContent=E,t.matchesCSSRules=function(e,t){const{selectorText:o}=t;let s=!1;t.type===CSSRule.STYLE_RULE&&o&&(e.msMatchesSelector?s=e.msMatchesSelector(o):e.matches&&(s=e.matches(o)));return s},t.observeVisibilityChangeOnce=function(e,t){new IntersectionObserver(((o,s)=>{o.forEach((o=>{o.isIntersecting&&null!==e.offsetParent&&(t(),s.unobserve(e))}))}),{root:e.ownerDocument.body}).observe(e)},t.offset=function(e){const t=e.ownerDocument,o=t.defaultView,s=t.documentElement;let n,i,r,l=e;n=l.offsetLeft,i=l.offsetTop,r=l;for(;(l=l.offsetParent)&&l!==t.body&&"offsetLeft"in l;)n+=l.offsetLeft,i+=l.offsetTop,r=l;r&&"fixed"===r.style.position&&(n+=o.pageXOffset||s.scrollLeft,i+=o.pageYOffset||s.scrollTop);return{left:n,top:i}},t.outerHeight=function(e){return e.offsetHeight},t.outerWidth=function(e){return e.offsetWidth},t.overlayContainsElement=function(e,t,o){const s=o.parentElement.querySelector(`.ht_clone_${e}`);return s?s.contains(t):null},t.removeAttribute=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];"string"==typeof t?t=t.split(" "):t instanceof RegExp&&(t=[t]);const{regexFree:o,regexes:s}=a(t,!0);o.forEach((t=>{""!==t&&e.removeAttribute(t)})),s.forEach((t=>{e.getAttributeNames().forEach((o=>{t.test(o)&&e.removeAttribute(o)}))}))},t.removeClass=c,t.removeContentEditableFromElementAndDeselect=S,t.removeEvent=function(e,t,o){e.removeEventListener(t,o,!1)},t.removeTextNodes=function e(t){if(3===t.nodeType)t.parentNode.removeChild(t);else if(["TABLE","THEAD","TBODY","TFOOT","TR"].indexOf(t.nodeName)>-1){const o=t.childNodes;for(let t=o.length-1;t>=0;t--)e(o[t])}},t.resetCssTransform=function(e){e.style.transform&&""!==e.style.transform&&(e.style.transform="")},t.runWithSelectedContendEditableElement=function(e,t){let o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];E(e,o),t(),S(e,o)},t.selectElementIfAllowed=function(e){y(e.ownerDocument.activeElement)||e.select()},t.setAttribute=u,t.setCaretPosition=function(e,t,o){void 0===o&&(o=t);if(e.setSelectionRange){e.focus();try{e.setSelectionRange(t,o)}catch(s){const n=e.parentNode,i=n.style.display;n.style.display="block",e.setSelectionRange(t,o),n.style.display=i}}},t.setOverlayPosition=function(e,t,o){e.style.transform=`translate3d(${t},${o},0)`},o(67834),o(15724);var s=o(59777),n=o(92692);function i(e){return Object.getPrototypeOf(e.parent)&&e.frameElement}function r(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=arguments.length>2?arguments[2]:void 0;const{ELEMENT_NODE:s,DOCUMENT_FRAGMENT_NODE:n}=Node;let i=e;for(;null!=i&&i!==o;){const{nodeType:e,nodeName:o}=i;if(e===s&&(t.includes(o)||t.includes(i)))return i;const{host:r}=i;i=r&&e===n?r:i.parentNode}return null}function l(e){return e&&e.length?e.filter((e=>!!e)):[]}function a(e,t){if(!e||!e.length)return t?{regexFree:[],regexes:[]}:[];const o=[],s=[];return s.push(...e.filter((e=>{const s=e instanceof RegExp;return s&&t&&o.push(e),!s}))),t?{regexFree:s,regexes:o}:s}function h(e,t){"string"==typeof t&&(t=t.split(" ")),(t=l(t)).length>0&&e.classList.add(...t)}function c(e,t){"string"==typeof t?t=t.split(" "):t instanceof RegExp&&(t=[t]);let{regexFree:o,regexes:s}=a(t,!0);o=l(o),o.length>0&&e.classList.remove(...o),s.forEach((t=>{e.classList.forEach((o=>{t.test(o)&&e.classList.remove(o)}))}))}function u(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=arguments.length>2?arguments[2]:void 0;Array.isArray(t)||(t=[[t,o]]),t.forEach((t=>{Array.isArray(t)&&""!==t[0]&&e.setAttribute(...t)}))}function d(e){let t;for(;t=e.lastChild;)e.removeChild(t)}const g=t.HTML_CHARACTERS=/(<(.*)>|&(.*);)/;function f(e,t){const o=e.firstChild;o&&3===o.nodeType&&null===o.nextSibling?o.textContent=t:(d(e),e.appendChild(e.ownerDocument.createTextNode(t)))}function p(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window).scrollY}function m(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window).scrollX}function w(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;return e.currentStyle||t.getComputedStyle(e)}let C;function v(e){return e&&(["INPUT","SELECT","TEXTAREA"].indexOf(e.nodeName)>-1||"true"===e.contentEditable)}function y(e){return v(e)&&!1===e.hasAttribute("data-hot-input")}function E(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];const s=e.ownerDocument,i=s.createRange(),r=s.defaultView.getSelection();u(e,"contenteditable",!0),o&&u(e,...(0,n.A11Y_HIDDEN)()),t&&h(e,"invisibleSelection"),i.selectNodeContents(e),r.removeAllRanges(),r.addRange(i)}function S(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];const o=e.ownerDocument.defaultView.getSelection();e.hasAttribute("aria-hidden")&&e.removeAttribute("aria-hidden"),o.removeAllRanges(),t&&c(e,"invisibleSelection"),e.removeAttribute("contenteditable")}},79729:(e,t)=>{"use strict";t.__esModule=!0,t.isImmediatePropagationStopped=function(e){return!1===e.isImmediatePropagationEnabled},t.isLeftClick=function(e){return 0===e.button},t.isRightClick=function(e){return 2===e.button},t.isTouchEvent=function(e){return e instanceof TouchEvent},t.offsetRelativeTo=function(e,t){const o={x:e.offsetX,y:e.offsetY};let s=e.target;if(!(t instanceof HTMLElement)||s!==t&&s.contains(t))return o;for(;s!==t;)o.x+=s.offsetLeft,o.y+=s.offsetTop,s=s.offsetParent;return o},t.stopImmediatePropagation=function(e){e.isImmediatePropagationEnabled=!1,e.cancelBubble=!0}},93980:(e,t)=>{"use strict";let o;t.__esModule=!0,t.cancelAnimationFrame=function(e){window.cancelAnimationFrame(e)},t.getComparisonFunction=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(o)return o;o="object"==typeof Intl?new Intl.Collator(e,t).compare:"function"==typeof String.prototype.localeCompare?(e,t)=>`${e}`.localeCompare(t):(e,t)=>e===t?0:e>t?-1:1;return o},t.isCSR=function(){return"undefined"!=typeof window},t.isTouchSupported=function(){return"ontouchstart"in window},t.requestAnimationFrame=function(e){return window.requestAnimationFrame(e)}},78832:(e,t,o)=>{"use strict";t.__esModule=!0,t.curry=function(e){const t=e.length;return function o(s){return function(){for(var n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];const l=s.concat(i);let a;return a=l.length>=t?e.apply(this,l):o(l),a}}([])},t.curryRight=function(e){const t=e.length;return function o(s){return function(){for(var n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];const l=s.concat(i.reverse());let a;return a=l.length>=t?e.apply(this,l):o(l),a}}([])},t.debounce=function(e){let t,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,s=null;return function(){for(var n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];return s&&clearTimeout(s),s=setTimeout((()=>{t=e.apply(this,i)}),o),t}},t.fastCall=function(e,t,o,s,i,r,l,a){if((0,n.isDefined)(a))return e.call(t,o,s,i,r,l,a);if((0,n.isDefined)(l))return e.call(t,o,s,i,r,l);if((0,n.isDefined)(r))return e.call(t,o,s,i,r);if((0,n.isDefined)(i))return e.call(t,o,s,i);if((0,n.isDefined)(s))return e.call(t,o,s);if((0,n.isDefined)(o))return e.call(t,o);return e.call(t)},t.isFunction=function(e){return"function"==typeof e},t.partial=function(e){for(var t=arguments.length,o=new Array(t>1?t-1:0),s=1;s<t;s++)o[s-1]=arguments[s];return function(){for(var t=arguments.length,s=new Array(t),n=0;n<t;n++)s[n]=arguments[n];return e.apply(this,o.concat(s))}},t.pipe=function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];const[n,...i]=t;return function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return(0,s.arrayReduce)(i,((e,t)=>t(e)),n.apply(this,t))}},t.throttle=i,t.throttleAfterHits=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10;const s=i(e,t);let n=o;function r(){for(var t=arguments.length,o=new Array(t),i=0;i<t;i++)o[i]=arguments[i];return n?(n-=1,e.apply(this,o)):s.apply(this,o)}return r.clearHits=function(){n=o},r};var s=o(9175),n=o(38893);function i(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,o=0;const s={lastCallThrottled:!0};let n=null;return function(){for(var i=arguments.length,r=new Array(i),l=0;l<i;l++)r[l]=arguments[l];const a=Date.now();let h=!1;s.lastCallThrottled=!0,o||(o=a,h=!0);const c=t-(a-o);return h?(s.lastCallThrottled=!1,e.apply(this,r)):(n&&clearTimeout(n),n=setTimeout((()=>{s.lastCallThrottled=!1,e.apply(this,r),o=0,n=void 0}),c)),s}}},38893:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t._injectProductInfo=function(e,t){const o=!l(e),s="string"==typeof e&&"non-commercial-and-evaluation"===e.toLowerCase(),i="14.6.0-next-4d69faf-20240924";let r,v="invalid",y="invalid";const E=function(e){let t=[][a],o=t;if(e[a]!==d("Z"))return!1;for(let t="",s="B<H4P+".split(""),n=d(s.shift());n;n=d(s.shift()||"A"))--n<""[a]?o|=(c(`${c(h(t)+(h(u(e,Math.abs(n),2))+[]).padStart(2,"0"))}`)%97||2)>>1:t=u(e,n,n?1===s[a]?9:8:6);return o===t}(e=g(e||""));if(o||s||E)if(E){const t=(0,n.default)("01/10/2024","DD/MM/YYYY"),o=Math.floor(t.toDate().getTime()/864e5),s=f(e);r=(0,n.default)(864e5*(s+1),"x").format("MMMM DD, YYYY"),o>s?(v="expired",y="expired"):(v="valid",y="valid")}else s?(v="non_commercial",y="valid"):(v="invalid",y="invalid");else v="missing",y="missing";p()&&(v="valid",y="valid");if(!m&&"valid"!==v){w[v]({keyValidityDate:r,hotVersion:i})&&console["non_commercial"===v?"info":"warn"](w[v]({keyValidityDate:r,hotVersion:i})),m=!0}if("valid"!==y&&t.parentNode){if(C[y]({keyValidityDate:r,hotVersion:i})){const e=document.createElement("div");e.className="hot-display-license-info",e.innerHTML=C[y]({keyValidityDate:r,hotVersion:i}),t.parentNode.insertBefore(e,t.nextSibling)}}},t.isDefined=function(e){return void 0!==e},t.isEmpty=l,t.isRegExp=function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},t.isUndefined=r,t.stringify=function(e){let t;switch(typeof e){case"string":case"number":t=`${e}`;break;case"object":t=null===e?"":e.toString();break;case"undefined":t="";break;default:t=e.toString()}return t};var n=s(o(86798)),i=o(28927);function r(e){return void 0===e}function l(e){return null===e||""===e||r(e)}const a="length",h=e=>parseInt(e,16),c=e=>parseInt(e,10),u=(e,t,o)=>e.substr(t,o),d=e=>e.codePointAt(0)-65,g=e=>`${e}`.replace(/\-/g,""),f=e=>h(u(g(e),h("12"),d("F")))/(h(u(g(e),d("B"),~~![][a]))||9),p=()=>"undefined"!=typeof location&&/^([a-z0-9\-]+\.)?\x68\x61\x6E\x64\x73\x6F\x6E\x74\x61\x62\x6C\x65\x2E\x63\x6F\x6D$/i.test(location.host);let m=!1;const w={invalid:()=>i.toSingleLine`
35
+ turning off the "renderAllRows" option.`)),this.table.isAriaEnabled()&&(0,h.setAttribute)(this.rootNode,[(0,c.A11Y_ROWGROUP)()]),this.orderView.setSize(e).setOffset(this.table.renderedRowToSource(0)).start();for(let s=0;s<e;s++){this.orderView.render();const e=this.orderView.getCurrentNode(),n=this.table.renderedRowToSource(s);var t,o;if(this.table.isAriaEnabled())(0,h.setAttribute)(e,[(0,c.A11Y_ROW)(),(0,c.A11Y_ROWINDEX)(n+(null!==(t=null===(o=this.table.rowUtils)||void 0===o||null===(o=o.dataAccessObject)||void 0===o?void 0:o.columnHeaders.length)&&void 0!==t?t:0)+1)]);(0,h.removeClass)(e,[u,d]),(n+1)%2==0?(0,h.addClass)(e,u):(0,h.addClass)(e,d)}this.orderView.end()}}t.default=f},67016:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(e){let{cellRenderer:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,n.default)(this,"rootNode",void 0),(0,n.default)(this,"rootDocument",void 0),(0,n.default)(this,"rowHeaders",null),(0,n.default)(this,"columnHeaders",null),(0,n.default)(this,"colGroup",null),(0,n.default)(this,"rows",null),(0,n.default)(this,"cells",null),(0,n.default)(this,"rowFilter",null),(0,n.default)(this,"columnFilter",null),(0,n.default)(this,"rowUtils",null),(0,n.default)(this,"columnUtils",null),(0,n.default)(this,"rowsToRender",0),(0,n.default)(this,"columnsToRender",0),(0,n.default)(this,"rowHeaderFunctions",[]),(0,n.default)(this,"rowHeadersCount",0),(0,n.default)(this,"columnHeaderFunctions",[]),(0,n.default)(this,"columnHeadersCount",0),(0,n.default)(this,"cellRenderer",void 0),(0,n.default)(this,"activeOverlayName",void 0),this.rootNode=e,this.rootDocument=this.rootNode.ownerDocument,this.cellRenderer=t}setActiveOverlayName(e){this.activeOverlayName=e}setAxisUtils(e,t){this.rowUtils=e,this.columnUtils=t}setViewportSize(e,t){this.rowsToRender=e,this.columnsToRender=t}setFilters(e,t){this.rowFilter=e,this.columnFilter=t}setHeaderContentRenderers(e,t){this.rowHeaderFunctions=e,this.rowHeadersCount=e.length,this.columnHeaderFunctions=t,this.columnHeadersCount=t.length}setRenderers(){let{rowHeaders:e,columnHeaders:t,colGroup:o,rows:s,cells:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.setTable(this),t.setTable(this),o.setTable(this),s.setTable(this),n.setTable(this),this.rowHeaders=e,this.columnHeaders=t,this.colGroup=o,this.rows=s,this.cells=n}renderedRowToSource(e){return this.rowFilter.renderedToSource(e)}renderedColumnToSource(e){return this.columnFilter.renderedToSource(e)}isAriaEnabled(){return this.rowUtils.wtSettings.getSetting("ariaTags")}render(){this.colGroup.adjust(),this.columnHeaders.adjust(),this.rows.adjust(),this.rowHeaders.adjust(),this.columnHeaders.render(),this.rows.render(),this.rowHeaders.render(),this.cells.render(),this.columnUtils.calculateWidths(),this.colGroup.render();const{rowsToRender:e,rows:t}=this;for(let o=0;o<e;o++){const e=t.getRenderedNode(o);if(e.firstChild){const t=this.renderedRowToSource(o),s=this.rowUtils.getHeightByOverlayName(t,this.activeOverlayName);e.firstChild.style.height=s?s-1+"px":""}}}}},61677:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(9893);function r(e,t){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.add(e)}function l(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var a=new WeakSet;function h(e){const{wtSettings:t,inlineStartOverlay:o,wtTable:s,wtViewport:n,totalColumns:r,rootWindow:l}=this.dataAccessObject;if(o.mainTableScrollableElement===l){let a=null;if(t.getSetting("rtlMode")){const e=s.TABLE.getBoundingClientRect(),t=this.dataAccessObject.rootWindow.document.documentElement.offsetWidth;a=Math.abs(e.right-t)}else{a=(0,i.offset)(s.wtRootElement).left}const h=Math.abs((0,i.getScrollLeft)(l,l));if(a>h){const t=(0,i.innerWidth)(l);let s=n.getRowHeaderWidth();for(let n=1;n<=r;n++)if(s+=o.sumCellSizes(n-1,n),a+s-h>=t){e=n-2;break}}}return e}function c(e){const{topOverlay:t,wtTable:o,wtViewport:s,totalRows:n,rootWindow:r}=this.dataAccessObject;if(t.mainTableScrollableElement===r){const l=(0,i.offset)(o.wtRootElement),a=(0,i.getScrollTop)(r,r);if(l.top>a){const o=(0,i.innerHeight)(r);let h=s.getColumnHeaderHeight();for(let s=1;s<=n;s++)if(h+=t.sumCellSizes(s-1,s),l.top+h-a>=o){e=s-2;break}}}return e}t.default=class{constructor(e){r(this,a),(0,n.default)(this,"dataAccessObject",void 0),this.dataAccessObject=e}scrollViewport(e,t,o,s,n){const i=this.scrollViewportHorizontally(e.col,o,n),r=this.scrollViewportVertically(e.row,t,s);return i||r}scrollViewportHorizontally(e,t,o){const{drawn:s,totalColumns:n}=this.dataAccessObject;if(!s||!Number.isInteger(e)||e<0||e>n)return!1;const i=void 0===t&&void 0===o,{fixedColumnsStart:r,inlineStartOverlay:l}=this.dataAccessObject;if(i&&e<r)return!1;if(e=this.dataAccessObject.wtSettings.getSetting("onBeforeViewportScrollHorizontally",e),!Number.isInteger(e)||e<0||e>n)return!1;const a=this.getFirstVisibleColumn(),h=this.getLastVisibleColumn();let c=!1;return(i&&(e<a||e>h)||!i)&&(c=l.scrollTo(e,i?e>=this.getLastPartiallyVisibleColumn():t)),c}scrollViewportVertically(e,t,o){const{drawn:s,totalRows:n}=this.dataAccessObject;if(!s||!Number.isInteger(e)||e<0||e>n)return!1;const i=void 0===t&&void 0===o,{fixedRowsBottom:r,fixedRowsTop:l,topOverlay:a}=this.dataAccessObject;if(i&&(e<l||e>n-r-1))return!1;if(e=this.dataAccessObject.wtSettings.getSetting("onBeforeViewportScrollVertically",e),!Number.isInteger(e)||e<0||e>n)return!1;const h=this.getFirstVisibleRow(),c=this.getLastVisibleRow();let u=!1;return(i&&(e<h||e>c)||!i)&&(u=a.scrollTo(e,i?e>=this.getLastPartiallyVisibleRow():o)),u}getFirstVisibleRow(){return this.dataAccessObject.wtTable.getFirstVisibleRow()}getLastVisibleRow(){return l(a,this,c).call(this,this.dataAccessObject.wtTable.getLastVisibleRow())}getFirstPartiallyVisibleRow(){return this.dataAccessObject.wtTable.getFirstPartiallyVisibleRow()}getLastPartiallyVisibleRow(){return l(a,this,c).call(this,this.dataAccessObject.wtTable.getLastPartiallyVisibleRow())}getFirstVisibleColumn(){return this.dataAccessObject.wtTable.getFirstVisibleColumn()}getLastVisibleColumn(){return l(a,this,h).call(this,this.dataAccessObject.wtTable.getLastVisibleColumn())}getFirstPartiallyVisibleColumn(){return this.dataAccessObject.wtTable.getFirstPartiallyVisibleColumn()}getLastPartiallyVisibleColumn(){return l(a,this,h).call(this,this.dataAccessObject.wtTable.getLastPartiallyVisibleColumn())}}},15934:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(9893),n=o(79729),i=o(13911),r=o(28890),l=o(30563);t.default=class{constructor(e,t){t&&(this.eventManager=e.eventManager,this.instance=e,this.wot=e,this.settings=t,this.mouseDown=!1,this.main=null,this.top=null,this.bottom=null,this.start=null,this.end=null,this.topStyle=null,this.bottomStyle=null,this.startStyle=null,this.endStyle=null,this.cornerDefaultStyle=l.CORNER_DEFAULT_STYLE,this.cornerCenterPointOffset=-parseInt(this.cornerDefaultStyle.width,10)/2,this.corner=null,this.cornerStyle=null,this.createBorders(t),this.registerListeners())}registerListeners(){const e=this.wot.rootDocument.body;this.eventManager.addEventListener(e,"mousedown",(()=>this.onMouseDown())),this.eventManager.addEventListener(e,"mouseup",(()=>this.onMouseUp()));for(let e=0,t=this.main.childNodes.length;e<t;e++){const t=this.main.childNodes[e];this.eventManager.addEventListener(t,"mouseenter",(t=>this.onMouseEnter(t,this.main.childNodes[e])))}}onMouseDown(){this.mouseDown=!0}onMouseUp(){this.mouseDown=!1}onMouseEnter(e,t){if(!this.mouseDown||!this.wot.getSetting("hideBorderOnMouseDownOver"))return;e.preventDefault(),(0,n.stopImmediatePropagation)(e);const o=this,s=this.wot.rootDocument.body,i=t.getBoundingClientRect();t.style.display="none",this.eventManager.addEventListener(s,"mousemove",(function e(n){var r;((r=n).clientY<Math.floor(i.top)||r.clientY>Math.ceil(i.top+i.height)||r.clientX<Math.floor(i.left)||r.clientX>Math.ceil(i.left+i.width))&&(o.eventManager.removeEventListener(s,"mousemove",e),t.style.display="block")}))}createBorders(e){const{rootDocument:t}=this.wot;this.main=t.createElement("div");const o=["top","start","bottom","end","corner"];let s=this.main.style;s.position="absolute",s.top=0,s.left=0;for(let n=0;n<5;n++){const i=o[n],r=t.createElement("div");r.className=`wtBorder ${this.settings.className||""}`,this.settings[i]&&this.settings[i].hide&&(r.className+=" hidden"),s=r.style,s.backgroundColor=this.settings[i]&&this.settings[i].color?this.settings[i].color:e.border.color,s.height=this.settings[i]&&this.settings[i].width?`${this.settings[i].width}px`:`${e.border.width}px`,s.width=this.settings[i]&&this.settings[i].width?`${this.settings[i].width}px`:`${e.border.width}px`,this.main.appendChild(r)}this.top=this.main.childNodes[0],this.start=this.main.childNodes[1],this.bottom=this.main.childNodes[2],this.end=this.main.childNodes[3],this.topStyle=this.top.style,this.startStyle=this.start.style,this.bottomStyle=this.bottom.style,this.endStyle=this.end.style,this.corner=this.main.childNodes[4],this.corner.className+=" corner",this.cornerStyle=this.corner.style,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.height=this.cornerDefaultStyle.height,this.cornerStyle.border=[this.cornerDefaultStyle.borderWidth,this.cornerDefaultStyle.borderStyle,this.cornerDefaultStyle.borderColor].join(" "),(0,r.isMobileBrowser)()&&this.instance.getSetting("isDataViewInstance")&&this.createMultipleSelectorHandles(),this.disappear();const{wtTable:n}=this.wot;let i=n.bordersHolder;i||(i=t.createElement("div"),i.className="htBorders",n.bordersHolder=i,n.spreader.appendChild(i)),i.appendChild(this.main)}createMultipleSelectorHandles(){const{rootDocument:e}=this.wot;this.selectionHandles={top:e.createElement("DIV"),topHitArea:e.createElement("DIV"),bottom:e.createElement("DIV"),bottomHitArea:e.createElement("DIV")};this.selectionHandles.top.className="topSelectionHandle topLeftSelectionHandle",this.selectionHandles.topHitArea.className="topSelectionHandle-HitArea topLeftSelectionHandle-HitArea",this.selectionHandles.bottom.className="bottomSelectionHandle bottomRightSelectionHandle",this.selectionHandles.bottomHitArea.className="bottomSelectionHandle-HitArea bottomRightSelectionHandle-HitArea",this.selectionHandles.styles={top:this.selectionHandles.top.style,topHitArea:this.selectionHandles.topHitArea.style,bottom:this.selectionHandles.bottom.style,bottomHitArea:this.selectionHandles.bottomHitArea.style};const t={position:"absolute",height:"40px",width:"40px","border-radius":`${parseInt(40/1.5,10)}px`};(0,i.objectEach)(t,((e,t)=>{this.selectionHandles.styles.bottomHitArea[t]=e,this.selectionHandles.styles.topHitArea[t]=e}));const o={position:"absolute",height:"10px",width:"10px","border-radius":`${parseInt(10/1.5,10)}px`,background:"#F5F5FF",border:"1px solid #4285c8"};(0,i.objectEach)(o,((e,t)=>{this.selectionHandles.styles.bottom[t]=e,this.selectionHandles.styles.top[t]=e})),this.main.appendChild(this.selectionHandles.top),this.main.appendChild(this.selectionHandles.bottom),this.main.appendChild(this.selectionHandles.topHitArea),this.main.appendChild(this.selectionHandles.bottomHitArea)}isPartRange(e,t){const o=this.wot.selectionManager.getAreaSelection();return!(!o.cellRange||e===o.cellRange.to.row&&t===o.cellRange.to.col)}updateMultipleSelectionHandlesPosition(e,t,o,s,n,i){const r=this.wot.wtSettings.getSetting("rtlMode")?"right":"left",{top:l,topHitArea:a,bottom:h,bottomHitArea:c}=this.selectionHandles.styles,u=parseInt(l.borderWidth,10),d=parseInt(l.width,10),g=parseInt(a.width,10),f=this.wot.wtTable.getWidth(),p=this.wot.wtTable.getHeight();l.top=`${parseInt(o-d-1,10)}px`,l[r]=`${parseInt(s-d-1,10)}px`,a.top=`${parseInt(o-g/4*3,10)}px`,a[r]=`${parseInt(s-g/4*3,10)}px`;const m=Math.min(parseInt(s+n,10),f-d-2*u),w=Math.min(parseInt(s+n-g/4,10),f-g-2*u);h[r]=`${m}px`,c[r]=`${w}px`;const C=Math.min(parseInt(o+i,10),p-d-2*u),v=Math.min(parseInt(o+i-g/4,10),p-g-2*u);h.top=`${C}px`,c.top=`${v}px`,this.settings.border.cornerVisible&&this.settings.border.cornerVisible()?(l.display="block",a.display="block",this.isPartRange(e,t)?(h.display="none",c.display="none"):(h.display="block",c.display="block")):(l.display="none",h.display="none",a.display="none",c.display="none"),e===this.wot.wtSettings.getSetting("fixedRowsTop")||t===this.wot.wtSettings.getSetting("fixedColumnsStart")?(l.zIndex="9999",a.zIndex="9999"):(l.zIndex="",a.zIndex="")}appear(e){if(this.disabled)return;const{wtTable:t,rootDocument:o,rootWindow:n}=this.wot;let i,l,a,h,c,u;const d=t.getRenderedRowsCount();for(let o=0;o<d;o+=1){const s=t.rowFilter.renderedToSource(o);if(s>=e[0]&&s<=e[2]){i=s,c=e[0];break}}for(let o=d-1;o>=0;o-=1){const s=t.rowFilter.renderedToSource(o);if(s>=e[0]&&s<=e[2]){l=s;break}}const g=t.getRenderedColumnsCount();for(let o=0;o<g;o+=1){const s=t.columnFilter.renderedToSource(o);if(s>=e[1]&&s<=e[3]){a=s,u=e[1];break}}for(let o=g-1;o>=0;o-=1){const s=t.columnFilter.renderedToSource(o);if(s>=e[1]&&s<=e[3]){h=s;break}}if(void 0===i||void 0===a)return void this.disappear();let f=t.getCell(this.wot.createCellCoords(i,a));const p=i!==l||a!==h,m=p?t.getCell(this.wot.createCellCoords(l,h)):f,w=(0,s.offset)(f),C=p?(0,s.offset)(m):w,v=(0,s.offset)(t.TABLE),y=(0,s.outerWidth)(t.TABLE),E=w.top,S=w.left,R=this.wot.wtSettings.getSetting("rtlMode");let b=0,_=0;if(R){const e=(0,s.outerWidth)(f),t=n.innerWidth-v.left-y;_=S+e-C.left,b=n.innerWidth-S-e-t-1}else _=C.left+(0,s.outerWidth)(m)-S,b=S-v.left-1;if(this.isEntireColumnSelected(i,l)){const e=this.getDimensionsFromHeader("columns",a,h,c,v);let t=null;e&&([t,b,_]=e),t&&(f=t)}let T=E-v.top-1,M=C.top+(0,s.outerHeight)(m)-E;if(this.isEntireRowSelected(a,h)){const e=this.getDimensionsFromHeader("rows",i,l,u,v);let t=null;e&&([t,T,M]=e),t&&(f=t)}const O=(0,s.getComputedStyle)(f,n);parseInt(O.borderTopWidth,10)>0&&(T+=1,M=M>0?M-1:0),parseInt(O[R?"borderRightWidth":"borderLeftWidth"],10)>0&&(b+=1,_=_>0?_-1:0);const I=R?"right":"left";this.topStyle.top=`${T}px`,this.topStyle[I]=`${b}px`,this.topStyle.width=`${_}px`,this.topStyle.display="block",this.startStyle.top=`${T}px`,this.startStyle[I]=`${b}px`,this.startStyle.height=`${M}px`,this.startStyle.display="block";const N=Math.floor(this.settings.border.width/2);this.bottomStyle.top=T+M-N+"px",this.bottomStyle[I]=`${b}px`,this.bottomStyle.width=`${_}px`,this.bottomStyle.display="block",this.endStyle.top=`${T}px`,this.endStyle[I]=b+_-N+"px",this.endStyle.height=`${M+1}px`,this.endStyle.display="block";let A=this.settings.border.cornerVisible;A="function"==typeof A?A(this.settings.layerLevel):A;const P=this.wot.getSetting("onModifyGetCellCoords",l,h);let[x,H]=[l,h];if(P&&Array.isArray(P)&&([,,x,H]=P),(0,r.isMobileBrowser)()||!A||this.isPartRange(x,H))this.cornerStyle.display="none";else{this.cornerStyle.top=T+M+this.cornerCenterPointOffset-1+"px",this.cornerStyle[I]=b+_+this.cornerCenterPointOffset-1+"px",this.cornerStyle.borderRightWidth=this.cornerDefaultStyle.borderWidth,this.cornerStyle.width=this.cornerDefaultStyle.width,this.cornerStyle.display="none";let e=(0,s.getTrimmingContainer)(t.TABLE);const i=e===n;i&&(e=o.documentElement);const r=parseInt(this.cornerDefaultStyle.width,10)/2,a=parseInt(this.cornerDefaultStyle.height,10)/2;if(h===this.wot.getSetting("totalColumns")-1){const t=i?m.getBoundingClientRect().left:m.offsetLeft;let o=!1,n=0;R?(n=t-parseInt(this.cornerDefaultStyle.width,10)/2,o=n<0):(n=t+(0,s.outerWidth)(m)+parseInt(this.cornerDefaultStyle.width,10)/2,o=n>=(0,s.innerWidth)(e)),o&&(this.cornerStyle[I]=`${Math.floor(b+_+this.cornerCenterPointOffset-r)}px`,this.cornerStyle[R?"borderLeftWidth":"borderRightWidth"]=0)}if(l===this.wot.getSetting("totalRows")-1){(i?m.getBoundingClientRect().top:m.offsetTop)+(0,s.outerHeight)(m)+parseInt(this.cornerDefaultStyle.height,10)/2>=(0,s.innerHeight)(e)&&(this.cornerStyle.top=`${Math.floor(T+M+this.cornerCenterPointOffset-a)}px`,this.cornerStyle.borderBottomWidth=0)}this.cornerStyle.display="block"}(0,r.isMobileBrowser)()&&this.instance.getSetting("isDataViewInstance")&&this.updateMultipleSelectionHandlesPosition(l,h,T,b,_,M)}isEntireColumnSelected(e,t){return e===this.wot.wtTable.getFirstRenderedRow()&&t===this.wot.wtTable.getLastRenderedRow()}isEntireRowSelected(e,t){return e===this.wot.wtTable.getFirstRenderedColumn()&&t===this.wot.wtTable.getLastRenderedColumn()}getDimensionsFromHeader(e,t,o,n,i){const{wtTable:r}=this.wot,l=r.wtRootElement.parentNode;let a=null,h=null,c=null,u=null,d=null,g=null,f=null,p=null;switch(e){case"rows":a=function(){return r.getRowHeader(...arguments)},h=function(){return(0,s.outerHeight)(...arguments)},c="ht__selection--rows",g="top";break;case"columns":a=function(){return r.getColumnHeader(...arguments)},h=function(){return(0,s.outerWidth)(...arguments)},c="ht__selection--columns",g="left"}if(l.classList.contains(c)){const e=this.wot.getSetting("columnHeaders").length;if(f=a(t,e-n),p=a(o,e-n),!f||!p)return!1;const r=(0,s.offset)(f),l=(0,s.offset)(p);return f&&p&&(u=r[g]-i[g]-1,d=l[g]+h(p)-r[g]),[f,u,d]}return!1}changeBorderStyle(e,t){const o=this[e].style,n=t[e];!n||n.hide?(0,s.addClass)(this[e],"hidden"):((0,s.hasClass)(this[e],"hidden")&&(0,s.removeClass)(this[e],"hidden"),o.backgroundColor=n.color,"top"!==e&&"bottom"!==e||(o.height=`${n.width}px`),"start"!==e&&"end"!==e||(o.width=`${n.width}px`))}changeBorderToDefaultStyle(e){const t=1,o="#000",s=this[e].style;s.backgroundColor=o,s.width=`${t}px`,s.height=`${t}px`}toggleHiddenClass(e,t){this.changeBorderToDefaultStyle(e),t?(0,s.addClass)(this[e],"hidden"):(0,s.removeClass)(this[e],"hidden")}disappear(){this.topStyle.display="none",this.bottomStyle.display="none",this.startStyle.display="none",this.endStyle.display="none",this.cornerStyle.display="none",(0,r.isMobileBrowser)()&&this.instance.getSetting("isDataViewInstance")&&(this.selectionHandles.styles.top.display="none",this.selectionHandles.styles.topHitArea.display="none",this.selectionHandles.styles.bottom.display="none",this.selectionHandles.styles.bottomHitArea.display="none")}destroy(){this.eventManager.destroyWithOwnEventsOnly(),this.main.parentNode.removeChild(this.main)}}},30563:(e,t)=>{"use strict";t.__esModule=!0;t.CORNER_DEFAULT_STYLE=Object.freeze({width:"6px",height:"6px",borderWidth:"1px",borderStyle:"solid",borderColor:"#FFF"})},30782:(e,t)=>{"use strict";t.__esModule=!0;t.ACTIVE_HEADER_TYPE="active-header",t.HEADER_TYPE="header",t.AREA_TYPE="area",t.FOCUS_TYPE="focus",t.FILL_TYPE="fill",t.ROW_TYPE="row",t.COLUMN_TYPE="column",t.CUSTOM_SELECTION_TYPE="custom-selection"},98779:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n={SelectionManager:!0,Selection:!0},i=s(o(8313));t.Selection=i.default;var r=o(30782);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(n,e)||e in t&&t[e]===r[e]||(t[e]=r[e]))}));var l=o(30563);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(n,e)||e in t&&t[e]===l[e]||(t[e]=l[e]))}));var a=o(42492);t.SelectionManager=a.SelectionManager},42492:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724),o(25352),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var n=o(9893),i=o(51785),r=s(o(15934));function l(e,t,o){a(e,t),t.set(e,o)}function a(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function h(e,t){return e.get(u(e,t))}function c(e,t,o){return e.set(u(e,t),o),o}function u(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var d=new WeakMap,g=new WeakMap,f=new WeakMap,p=new WeakMap,m=new WeakMap,w=new WeakMap,C=new WeakSet;function v(){const e=h(p,this).get(h(d,this)),t=h(d,this).wtSettings.getSetting("onBeforeRemoveCellClassNames");if(Array.isArray(t))for(let o=0;o<t.length;o++)e.add(t[o]);e.forEach((e=>{var t,o;const s=h(d,this).wtTable.TABLE.querySelectorAll(`.${e}`);let i=[];Array.isArray(null===(t=h(g,this).options)||void 0===t?void 0:t.cellAttributes)&&(i=h(g,this).options.cellAttributes.map((e=>e[0]))),Array.isArray(null===(o=h(g,this).options)||void 0===o?void 0:o.headerAttributes)&&(i=[...i,...h(g,this).options.headerAttributes.map((e=>e[0]))]);for(let t=0,o=s.length;t<o;t++)(0,n.removeClass)(s[t],e),(0,n.removeAttribute)(s[t],i)})),e.clear()}t.SelectionManager=class{constructor(e){var t,o;a(t=this,o=C),o.add(t),l(this,d,void 0),l(this,g,void 0),l(this,f,new i.SelectionScanner),l(this,p,new WeakMap),l(this,m,new WeakSet),l(this,w,new Map),c(g,this,e)}setActiveOverlay(e){return c(d,this,e),h(f,this).setActiveOverlay(h(d,this)),h(p,this).has(h(d,this))||h(p,this).set(h(d,this),new Set),this}getFocusSelection(){return null!==h(g,this)?h(g,this).getFocus():null}getAreaSelection(){return null!==h(g,this)?h(g,this).createLayeredArea():null}getBorderInstance(e){if(!e.settings.border)return null;if(h(w,this).has(e)){const t=h(w,this).get(e);if(t.has(h(d,this)))return t.get(h(d,this));const o=new r.default(h(d,this),e.settings);return t.set(h(d,this),o),o}const t=new r.default(h(d,this),e.settings);return h(w,this).set(e,new Map([[h(d,this),t]])),t}getBorderInstances(e){var t,o;return Array.from(null!==(t=null===(o=h(w,this).get(e))||void 0===o?void 0:o.values())&&void 0!==t?t:[])}destroyBorders(e){h(w,this).get(e).forEach((e=>e.destroy())),h(w,this).delete(e)}render(e){if(null===h(g,this))return;e&&u(C,this,v).call(this);const t=Array.from(h(g,this)),o=new Map,s=new Map;for(let e=0;e<t.length;e++){const n=t[e],{className:i,headerAttributes:r,createLayers:l,selectionType:a}=n.settings;h(m,this).has(n)||(h(m,this).add(n),n.addLocalHook("destroy",(()=>this.destroyBorders(n))));const c=this.getBorderInstance(n);if(n.isEmpty()){null==c||c.disappear();continue}if(i){h(f,this).setActiveSelection(n).scan().forEach((e=>{if(o.has(e)){const t=o.get(e);t.has(i)&&!0===l?t.set(i,t.get(i)+1):t.set(i,1)}else o.set(e,new Map([[i,1]]));r&&(s.has(e)||s.set(e,[]),"TH"===e.nodeName&&s.get(e).push(...r))}))}const u=n.getCorners();h(d,this).getSetting("onBeforeDrawBorders",u,a),null==c||c.appear(u)}o.forEach(((e,t)=>{var o;const s=Array.from(e).map((e=>{let[t,o]=e;return 1===o?t:[t,...Array.from({length:o-1},((e,o)=>`${t}-${o+1}`))]})).flat();s.forEach((e=>h(p,this).get(h(d,this)).add(e))),(0,n.addClass)(t,s),"TD"===t.nodeName&&Array.isArray(null===(o=h(g,this).options)||void 0===o?void 0:o.cellAttributes)&&(0,n.setAttribute)(t,h(g,this).options.cellAttributes)})),Array.from(s.keys()).forEach((e=>{(0,n.setAttribute)(e,[...s.get(e)])}))}}},51785:(e,t,o)=>{"use strict";t.__esModule=!0,o(67834),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var s=o(9893);function n(e,t,o){i(e,t),t.set(e,o)}function i(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function r(e,t){return e.get(a(e,t))}function l(e,t,o){return e.set(a(e,t),o),o}function a(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var h=new WeakMap,c=new WeakMap,u=new WeakSet;function d(e){const{wtTable:t}=r(c,this),o=t.getRenderedRowsCount(),s=t.getRenderedColumnsCount();for(let n=0;n<o;n+=1){const o=t.rowFilter.renderedToSource(n);for(let n=0;n<s;n+=1)e(o,t.columnFilter.renderedToSource(n))}}t.SelectionScanner=class{constructor(){var e,t;i(e=this,t=u),t.add(e),n(this,h,void 0),n(this,c,void 0)}setActiveOverlay(e){return l(c,this,e),this}setActiveSelection(e){return l(h,this,e),this}scan(){const e=r(h,this).settings.selectionType,t=new Set;return"active-header"===e?(this.scanColumnsInHeadersRange((e=>t.add(e))),this.scanRowsInHeadersRange((e=>t.add(e)))):"area"===e?this.scanCellsRange((e=>t.add(e))):"focus"===e?(this.scanColumnsInHeadersRange((e=>t.add(e))),this.scanRowsInHeadersRange((e=>t.add(e))),this.scanCellsRange((e=>t.add(e)))):"fill"===e?this.scanCellsRange((e=>t.add(e))):"header"===e?(this.scanColumnsInHeadersRange((e=>t.add(e))),this.scanRowsInHeadersRange((e=>t.add(e)))):"row"===e?(this.scanRowsInHeadersRange((e=>t.add(e))),this.scanRowsInCellsRange((e=>t.add(e)))):"column"===e&&(this.scanColumnsInHeadersRange((e=>t.add(e))),this.scanColumnsInCellsRange((e=>t.add(e)))),t}scanColumnsInHeadersRange(e){const[t,o,s,n]=r(h,this).getCorners(),{wtTable:i}=r(c,this),l=i.getRenderedColumnsCount(),a=i.getColumnHeadersCount();let u=0;for(let d=-i.getRowHeadersCount();d<l;d++){const l=i.columnFilter.renderedToSource(d);if(!(l<o||l>n)){for(let d=-a;d<0;d++){if(d<t||d>s)continue;const g=d+a;let f=i.getColumnHeader(l,g);const p=r(c,this).getSetting("onBeforeHighlightingColumnHeader",l,g,{selectionType:r(h,this).settings.selectionType,columnCursor:u,selectionWidth:n-o+1});null!==p&&(p!==l&&(f=i.getColumnHeader(p,g)),e(f))}u+=1}}}scanRowsInHeadersRange(e){const[t,o,s,n]=r(h,this).getCorners(),{wtTable:i}=r(c,this),l=i.getRenderedRowsCount(),a=i.getRowHeadersCount();let u=0;for(let d=-i.getColumnHeadersCount();d<l;d++){const l=i.rowFilter.renderedToSource(d);if(!(l<t||l>s)){for(let d=-a;d<0;d++){if(d<o||d>n)continue;const g=d+a;let f=i.getRowHeader(l,g);const p=r(c,this).getSetting("onBeforeHighlightingRowHeader",l,g,{selectionType:r(h,this).settings.selectionType,rowCursor:u,selectionHeight:s-t+1});null!==p&&(p!==l&&(f=i.getRowHeader(p,g)),e(f))}u+=1}}}scanCellsRange(e){const[t,o,n,i]=r(h,this).getCorners(),{wtTable:l}=r(c,this);a(u,this,d).call(this,((a,u)=>{if(a>=t&&a<=n&&u>=o&&u<=i){const t=l.getCell(r(c,this).createCellCoords(a,u)),o=r(c,this).getSetting("onAfterDrawSelection",a,u,r(h,this).settings.layerLevel);"string"==typeof o&&(0,s.addClass)(t,o),e(t)}}))}scanRowsInCellsRange(e){const[t,,o]=r(h,this).getCorners(),{wtTable:s}=r(c,this);a(u,this,d).call(this,((n,i)=>{if(n>=t&&n<=o){const t=s.getCell(r(c,this).createCellCoords(n,i));e(t)}}))}scanColumnsInCellsRange(e){const[,t,,o]=r(h,this).getCorners(),{wtTable:s}=r(c,this);a(u,this,d).call(this,((n,i)=>{if(i>=t&&i<=o){const t=s.getCell(r(c,this).createCellCoords(n,i));e(t)}}))}}},8313:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(13911),i=s(o(63870));class r{constructor(e,t){this.settings=e,this.cellRange=t||null}isEmpty(){return null===this.cellRange}add(e){return this.isEmpty()?this.cellRange=this.settings.createCellRange(e):this.cellRange.expand(e),this}replace(e,t){if(!this.isEmpty()){if(this.cellRange.from.isEqual(e))return this.cellRange.from=t,!0;if(this.cellRange.to.isEqual(e))return this.cellRange.to=t,!0}return!1}clear(){return this.cellRange=null,this}getCorners(){const e=this.cellRange.getOuterTopStartCorner(),t=this.cellRange.getOuterBottomEndCorner();return[e.row,e.col,t.row,t.col]}destroy(){this.runLocalHooks("destroy")}}(0,n.mixin)(r,i.default);t.default=r},47241:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(9893),r=o(13911);t.default=class{constructor(e){(0,n.default)(this,"settings",{}),(0,n.default)(this,"defaults",Object.freeze(this.getDefaults())),(0,r.objectEach)(this.defaults,((t,o)=>{if(void 0!==e[o])this.settings[o]=e[o];else{if(void 0===t)throw new Error(`A required setting "${o}" was not provided`);this.settings[o]=t}}))}getDefaults(){return{facade:void 0,table:void 0,isDataViewInstance:!0,externalRowCalculator:!1,stretchH:"none",currentRowClassName:null,currentColumnClassName:null,preventOverflow:()=>!1,preventWheel:!1,data:void 0,freezeOverlays:!1,fixedColumnsStart:0,fixedRowsTop:0,fixedRowsBottom:0,shouldRenderInlineStartOverlay:()=>this.getSetting("fixedColumnsStart")>0||this.getSetting("rowHeaders").length>0,shouldRenderTopOverlay:()=>this.getSetting("fixedRowsTop")>0||this.getSetting("columnHeaders").length>0,shouldRenderBottomOverlay:()=>this.getSetting("fixedRowsBottom")>0,minSpareRows:0,rowHeaders:()=>[],columnHeaders:()=>[],totalRows:void 0,totalColumns:void 0,cellRenderer:(e,t,o)=>{const s=this.getSetting("data",e,t);(0,i.fastInnerText)(o,null==s?"":s)},columnWidth(){},rowHeight(){},rowHeightByOverlayName(){},defaultRowHeight:23,defaultColumnWidth:50,selections:null,hideBorderOnMouseDownOver:!1,viewportRowCalculatorOverride:null,viewportColumnCalculatorOverride:null,onCellMouseDown:null,onCellContextMenu:null,onCellMouseOver:null,onCellMouseOut:null,onCellMouseUp:null,onCellDblClick:null,onCellCornerMouseDown:null,onCellCornerDblClick:null,beforeDraw:null,onDraw:null,onBeforeRemoveCellClassNames:null,onAfterDrawSelection:null,onBeforeDrawBorders:null,onBeforeViewportScrollHorizontally:e=>e,onBeforeViewportScrollVertically:e=>e,onScrollHorizontally:null,onScrollVertically:null,onBeforeTouchScroll:null,onAfterMomentumScroll:null,onBeforeStretchingColumnWidth:e=>e,onModifyRowHeaderWidth:null,onModifyGetCellCoords:null,onBeforeHighlightingRowHeader:e=>e,onBeforeHighlightingColumnHeader:e=>e,onWindowResize:null,onContainerElementResize:null,renderAllColumns:!1,renderAllRows:!1,groups:!1,rowHeaderWidth:null,columnHeaderHeight:null,headerClassName:null,rtlMode:!1,ariaTags:!0}}update(e,t){return void 0===t?(0,r.objectEach)(e,((e,t)=>{this.settings[t]=e})):this.settings[e]=t,this}getSetting(e,t,o,s,n){return"function"==typeof this.settings[e]?this.settings[e](t,o,s,n):void 0!==t&&Array.isArray(this.settings[e])?this.settings[e][t]:this.settings[e]}getSettingPure(e){return this.settings[e]}has(e){return!!this.settings[e]}}},63646:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724);var n=s(o(85707)),i=o(9893),r=o(78832),l=s(o(16979)),a=s(o(39277)),h=o(20524),c=s(o(87736)),u=s(o(46372)),d=o(34009),g=o(92692);t.default=class{constructor(e,t,o,s,r){(0,n.default)(this,"wtSettings",null),(0,n.default)(this,"domBindings",void 0),(0,n.default)(this,"TBODY",null),(0,n.default)(this,"THEAD",null),(0,n.default)(this,"COLGROUP",null),(0,n.default)(this,"hasTableHeight",!0),(0,n.default)(this,"hasTableWidth",!0),(0,n.default)(this,"isTableVisible",!1),(0,n.default)(this,"tableOffset",0),(0,n.default)(this,"holderOffset",0),this.domBindings=o,this.isMaster="master"===r,this.name=r,this.dataAccessObject=e,this.facadeGetter=t,this.wtSettings=s,this.instance=this.dataAccessObject.wot,this.wot=this.dataAccessObject.wot,this.TABLE=o.rootTable,(0,i.removeTextNodes)(this.TABLE),this.spreader=this.createSpreader(this.TABLE),this.hider=this.createHider(this.spreader),this.holder=this.createHolder(this.hider),this.wtRootElement=this.holder.parentNode,this.isMaster&&this.alignOverlaysWithTrimmingContainer(),this.fixTableDomTree(),this.rowFilter=null,this.columnFilter=null,this.correctHeaderWidth=!1;const l=this.wtSettings.getSettingPure("rowHeaderWidth");this.wtSettings.update("rowHeaderWidth",(()=>this._modifyRowHeaderWidth(l))),this.rowUtils=new u.default(this.dataAccessObject,this.wtSettings),this.columnUtils=new c.default(this.dataAccessObject,this.wtSettings),this.tableRenderer=new h.Renderer({TABLE:this.TABLE,THEAD:this.THEAD,COLGROUP:this.COLGROUP,TBODY:this.TBODY,rowUtils:this.rowUtils,columnUtils:this.columnUtils,cellRenderer:this.wtSettings.getSettingPure("cellRenderer")})}is(e){return this.name===e}fixTableDomTree(){const e=this.domBindings.rootDocument;this.TBODY=this.TABLE.querySelector("tbody"),this.TBODY||(this.TBODY=e.createElement("tbody"),this.TABLE.appendChild(this.TBODY)),this.THEAD=this.TABLE.querySelector("thead"),this.THEAD||(this.THEAD=e.createElement("thead"),this.TABLE.insertBefore(this.THEAD,this.TBODY)),this.COLGROUP=this.TABLE.querySelector("colgroup"),this.COLGROUP||(this.COLGROUP=e.createElement("colgroup"),this.TABLE.insertBefore(this.COLGROUP,this.THEAD))}createSpreader(e){const t=e.parentNode;let o;return t&&t.nodeType===Node.ELEMENT_NODE&&(0,i.hasClass)(t,"wtHolder")||(o=this.domBindings.rootDocument.createElement("div"),o.className="wtSpreader",t&&t.insertBefore(o,e),o.appendChild(e)),o.style.position="relative",this.wtSettings.getSetting("ariaTags")&&(0,i.setAttribute)(o,[(0,g.A11Y_PRESENTATION)()]),o}createHider(e){const t=e.parentNode;let o;return t&&t.nodeType===Node.ELEMENT_NODE&&(0,i.hasClass)(t,"wtHolder")||(o=this.domBindings.rootDocument.createElement("div"),o.className="wtHider",t&&t.insertBefore(o,e),o.appendChild(e)),this.wtSettings.getSetting("ariaTags")&&(0,i.setAttribute)(o,[(0,g.A11Y_PRESENTATION)()]),o}createHolder(e){const t=e.parentNode;let o;return t&&t.nodeType===Node.ELEMENT_NODE&&(0,i.hasClass)(t,"wtHolder")||(o=this.domBindings.rootDocument.createElement("div"),o.style.position="relative",o.className="wtHolder",t&&t.insertBefore(o,e),this.isMaster&&(o.parentNode.className+="ht_master handsontable",o.parentNode.setAttribute("dir",this.wtSettings.getSettingPure("rtlMode")?"rtl":"ltr"),this.wtSettings.getSetting("ariaTags")&&(0,i.setAttribute)(o.parentNode,[(0,g.A11Y_PRESENTATION)()])),o.appendChild(e)),this.wtSettings.getSetting("ariaTags")&&(0,i.setAttribute)(o,[(0,g.A11Y_PRESENTATION)()]),o}draw(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const{wtSettings:t}=this,{wtOverlays:o,wtViewport:s}=this.dataAccessObject,n=t.getSetting("totalRows"),r=t.getSetting("totalColumns"),h=t.getSetting("rowHeaders"),c=h.length,u=t.getSetting("columnHeaders"),g=u.length;let f=e;if(this.isMaster&&(o.beforeDraw(),this.holderOffset=(0,i.offset)(this.holder),f=s.createCalculators(f),c&&!t.getSetting("fixedColumnsStart"))){const e=o.inlineStartOverlay.getScrollPosition(),t=this.correctHeaderWidth;this.correctHeaderWidth=0!==e,t!==this.correctHeaderWidth&&(f=!1)}if(f)this.isMaster&&o.refresh(!0);else{this.isMaster?this.tableOffset=(0,i.offset)(this.TABLE):this.tableOffset=this.dataAccessObject.parentTableOffset;const e=n>0?this.getFirstRenderedRow():0,t=r>0?this.getFirstRenderedColumn():0;this.rowFilter=new a.default(e,n,g),this.columnFilter=new l.default(t,r,c);let f=!0;if(this.isMaster){this.alignOverlaysWithTrimmingContainer();const e={};this.wtSettings.getSetting("beforeDraw",!0,e),f=!0!==e.skipRender}if(f){let e;if(this.tableRenderer.setHeaderContentRenderers(h,u),(this.is(d.CLONE_BOTTOM)||this.is(d.CLONE_BOTTOM_INLINE_START_CORNER))&&this.tableRenderer.setHeaderContentRenderers(h,[]),this.resetOversizedRows(),this.tableRenderer.setActiveOverlayName(this.name).setViewportSize(this.getRenderedRowsCount(),this.getRenderedColumnsCount()).setFilters(this.rowFilter,this.columnFilter).render(),this.isMaster&&(e=this.dataAccessObject.workspaceWidth,s.containerWidth=null,this.markOversizedColumnHeaders()),this.adjustColumnHeaderHeights(),(this.isMaster||this.is(d.CLONE_BOTTOM))&&this.markOversizedRows(),this.isMaster){this.wtSettings.getSetting("externalRowCalculator")||s.createVisibleCalculators(),o.refresh(!1),o.applyToDOM();const t=(0,i.outerWidth)(this.hider),n=(0,i.outerWidth)(this.TABLE);0!==t&&n!==t&&(this.columnUtils.calculateWidths(),this.tableRenderer.renderer.colGroup.render()),e!==s.getWorkspaceWidth()&&(s.containerWidth=null,this.columnUtils.calculateWidths(),this.tableRenderer.renderer.colGroup.render()),this.wtSettings.getSetting("onDraw",!0)}else this.is(d.CLONE_BOTTOM)&&this.dataAccessObject.cloneSource.wtOverlays.adjustElementsSize()}}let p=!1;return this.isMaster&&(p=o.topOverlay.resetFixedPosition(),o.bottomOverlay.clone&&(p=o.bottomOverlay.resetFixedPosition()||p),p=o.inlineStartOverlay.resetFixedPosition()||p,o.topInlineStartCornerOverlay&&o.topInlineStartCornerOverlay.resetFixedPosition(),o.bottomInlineStartCornerOverlay&&o.bottomInlineStartCornerOverlay.clone&&o.bottomInlineStartCornerOverlay.resetFixedPosition()),p?(o.refreshAll(),o.adjustElementsSize()):this.dataAccessObject.selectionManager.setActiveOverlay(this.facadeGetter()).render(f),this.isMaster&&o.afterDraw(),this.dataAccessObject.drawn=!0,this}markIfOversizedColumnHeader(e){const t=this.columnFilter.renderedToSource(e);let o=this.wtSettings.getSetting("columnHeaders").length;const s=this.wtSettings.getSetting("defaultRowHeight");let n,r,l;const a=this.wtSettings.getSetting("columnHeaderHeight")||[];for(;o;)o-=1,n=this.getColumnHeaderHeight(o),r=this.getColumnHeader(t,o),r&&(l=(0,i.innerHeight)(r),(!n&&s<l||n<l)&&(this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]=l),Array.isArray(a)?null!==a[o]&&void 0!==a[o]&&(this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]=a[o]):isNaN(a)||(this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]=a),this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]<(a[o]||a)&&(this.dataAccessObject.wtViewport.oversizedColumnHeaders[o]=a[o]||a))}adjustColumnHeaderHeights(){const{wtSettings:e}=this,t=this.THEAD.childNodes,o=this.dataAccessObject.wtViewport.oversizedColumnHeaders;for(let s=0,n=e.getSetting("columnHeaders").length;s<n;s++)if(o[s]){if(!t[s]||0===t[s].childNodes.length)return;t[s].childNodes[0].style.height=`${o[s]}px`}}resetOversizedRows(){const{wtSettings:e}=this,{wtViewport:t}=this.dataAccessObject;if((this.isMaster||this.is(d.CLONE_BOTTOM))&&!e.getSetting("externalRowCalculator")){const e=this.getRenderedRowsCount();for(let o=0;o<e;o++){const e=this.rowFilter.renderedToSource(o);t.oversizedRows&&t.oversizedRows[e]&&(t.oversizedRows[e]=void 0)}}}getCell(e){let t=e.row,o=e.col;const s=this.wtSettings.getSetting("onModifyGetCellCoords",t,o);if(s&&Array.isArray(s)&&([t,o]=s),this.isRowBeforeRenderedRows(t))return-1;if(this.isRowAfterRenderedRows(t))return-2;if(this.isColumnBeforeRenderedColumns(o))return-3;if(this.isColumnAfterRenderedColumns(o))return-4;const n=this.getRow(t);if(!n&&t>=0)throw new Error("TR was expected to be rendered but is not");const i=n.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(o)];if(!i&&o>=0)throw new Error("TD or TH was expected to be rendered but is not");return i}getRow(e){let t=null,o=null;var s,n;e<0?(t=null===(s=this.rowFilter)||void 0===s?void 0:s.sourceRowToVisibleColHeadedRow(e),o=this.THEAD):(t=null===(n=this.rowFilter)||void 0===n?void 0:n.sourceToRendered(e),o=this.TBODY);return void 0!==t&&void 0!==o&&(!(o.childNodes.length<t+1)&&o.childNodes[t])}getColumnHeader(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const o=this.THEAD.childNodes[t];return null==o?void 0:o.childNodes[this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e)]}getColumnHeaders(e){const t=[],o=this.columnFilter.sourceColumnToVisibleRowHeadedColumn(e);return this.THEAD.childNodes.forEach((e=>{const s=e.childNodes[o];s&&t.push(s)})),t}getRowHeader(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(t>=this.wtSettings.getSetting("rowHeaders").length)return;const o=this.rowFilter.sourceToRendered(e),s=o<0?this.rowFilter.sourceRowToVisibleColHeadedRow(e):o,n=(o<0?this.THEAD:this.TBODY).childNodes[s];return null==n?void 0:n.childNodes[t]}getRowHeaders(e){const t=[],o=this.wtSettings.getSetting("rowHeaders").length;for(let s=0;s<o;s++){const o=this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)],n=null==o?void 0:o.childNodes[s];n&&t.push(n)}return t}getCoords(e){let t=e;if("TD"!==t.nodeName&&"TH"!==t.nodeName&&(t=(0,i.closest)(t,["TD","TH"])),null===t)return null;const o=t.parentNode,s=o.parentNode;let n=(0,i.index)(o),r=t.cellIndex;if((0,i.overlayContainsElement)(d.CLONE_TOP_INLINE_START_CORNER,t,this.wtRootElement)||(0,i.overlayContainsElement)(d.CLONE_TOP,t,this.wtRootElement))"THEAD"===s.nodeName&&(n-=s.childNodes.length);else if((0,i.overlayContainsElement)(d.CLONE_BOTTOM_INLINE_START_CORNER,t,this.wtRootElement)||(0,i.overlayContainsElement)(d.CLONE_BOTTOM,t,this.wtRootElement)){n=this.wtSettings.getSetting("totalRows")-s.childNodes.length+n}else n=s===this.THEAD?this.rowFilter.visibleColHeadedRowToSourceRow(n):this.rowFilter.renderedToSource(n);return r=(0,i.overlayContainsElement)(d.CLONE_TOP_INLINE_START_CORNER,t,this.wtRootElement)||(0,i.overlayContainsElement)(d.CLONE_INLINE_START,t,this.wtRootElement)||(0,i.overlayContainsElement)(d.CLONE_BOTTOM_INLINE_START_CORNER,t,this.wtRootElement)?this.columnFilter.offsettedTH(r):this.columnFilter.visibleRowHeadedColumnToSourceColumn(r),this.wot.createCellCoords(n,r)}markOversizedRows(){if(this.wtSettings.getSetting("externalRowCalculator"))return;let e=this.TBODY.childNodes.length;let t,o,s,n,r;if(e*this.wtSettings.getSetting("defaultRowHeight")!==(0,i.innerHeight)(this.TBODY)-1||this.wtSettings.getSetting("fixedRowsBottom"))for(;e;)e-=1,s=this.rowFilter.renderedToSource(e),t=this.getRowHeight(s),n=this.getTrForRow(s),r=n.querySelector("th"),o=r?(0,i.innerHeight)(r):(0,i.innerHeight)(n)-1,(!t&&this.wtSettings.getSetting("defaultRowHeight")<o||t<o)&&(o+=1,this.dataAccessObject.wtViewport.oversizedRows[s]=o)}getTrForRow(e){return this.TBODY.childNodes[this.rowFilter.sourceToRendered(e)]}isColumnHeaderRendered(e){if(e>=0)return!1;const t=this.wtSettings.getSetting("rowHeaders").length;return Math.abs(e)<=t}isRowHeaderRendered(e){if(e>=0)return!1;const t=this.wtSettings.getSetting("columnHeaders").length;return Math.abs(e)<=t}isRowBeforeRenderedRows(e){const t=this.getFirstRenderedRow();return e<0&&t<=0?!this.isRowHeaderRendered(e):e<t}isRowAfterRenderedRows(e){return e>this.getLastRenderedRow()}isColumnBeforeRenderedColumns(e){const t=this.getFirstRenderedColumn();return e<0&&t<=0?!this.isColumnHeaderRendered(e):e<t}isColumnAfterRenderedColumns(e){return this.columnFilter&&e>this.getLastRenderedColumn()}isColumnAfterViewport(e){return this.columnFilter&&e>this.getLastVisibleColumn()}isRowAfterViewport(e){return this.rowFilter&&e>this.getLastVisibleRow()}isColumnBeforeViewport(e){return this.columnFilter&&this.columnFilter.sourceToRendered(e)<0&&e>=0}isLastRowFullyVisible(){return this.getLastVisibleRow()===this.getLastRenderedRow()}isLastColumnFullyVisible(){return this.getLastVisibleColumn()===this.getLastRenderedColumn()}allRowsInViewport(){return this.wtSettings.getSetting("totalRows")===this.getVisibleRowsCount()}allColumnsInViewport(){return this.wtSettings.getSetting("totalColumns")===this.getVisibleColumnsCount()}getRowHeight(e){return this.rowUtils.getHeight(e)}getColumnHeaderHeight(e){return this.columnUtils.getHeaderHeight(e)}getColumnWidth(e){return this.columnUtils.getWidth(e)}getStretchedColumnWidth(e){return this.columnUtils.getStretchedColumnWidth(e)}hasDefinedSize(){return this.hasTableHeight&&this.hasTableWidth}getWidth(){return(0,i.outerWidth)(this.TABLE)}getHeight(){return(0,i.outerHeight)(this.TABLE)}getTotalWidth(){const e=(0,i.outerWidth)(this.hider);return 0!==e?e:this.getWidth()}getTotalHeight(){const e=(0,i.outerHeight)(this.hider);return 0!==e?e:this.getHeight()}isVisible(){return(0,i.isVisible)(this.TABLE)}_modifyRowHeaderWidth(e){let t=(0,r.isFunction)(e)?e():null;return Array.isArray(t)?(t=[...t],t[t.length-1]=this._correctRowHeaderWidth(t[t.length-1])):t=this._correctRowHeaderWidth(t),t}_correctRowHeaderWidth(e){let t=e;return"number"!=typeof e&&(t=this.wtSettings.getSetting("defaultColumnWidth")),this.correctHeaderWidth&&(t+=1),t}}},31542:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(58166)),r=s(o(17800)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_BOTTOM)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},93638:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(58166)),r=s(o(85449)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_BOTTOM_INLINE_START_CORNER)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},14658:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(95374)),r=s(o(85449)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_INLINE_START)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},26235:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(9893),i=s(o(63646)),r=s(o(95374)),l=s(o(17800)),a=o(13911);class h extends i.default{constructor(e,t,o,s){super(e,t,o,s,"master")}alignOverlaysWithTrimmingContainer(){const e=(0,n.getTrimmingContainer)(this.wtRootElement),{rootWindow:t}=this.domBindings;if(e===t){this.wtSettings.getSetting("preventOverflow")||(this.holder.style.overflow="visible",this.wtRootElement.style.overflow="visible")}else{const o=e.parentElement,s=(0,n.getStyle)(e,"height",t),i=(0,n.getStyle)(e,"overflow",t),r=this.holder.style,{scrollWidth:l,scrollHeight:a}=e;let h=e.offsetWidth,c=e.offsetHeight;if(o&&["auto","hidden","scroll"].includes(i)){const s=e.cloneNode(!1);s.style.overflow="auto",s.style.position="absolute",e.nextElementSibling?o.insertBefore(s,e.nextElementSibling):o.appendChild(s);const i=parseInt((0,n.getComputedStyle)(s,t).height,10);o.removeChild(s),0===i&&(c=0)}c=Math.min(c,a),r.height="auto"===s?"auto":`${c}px`,h=Math.min(h,l),r.width=`${h}px`,r.overflow="",this.hasTableHeight="auto"===r.height||c>0,this.hasTableWidth=h>0}this.isTableVisible=(0,n.isVisible)(this.TABLE)}markOversizedColumnHeaders(){const{wtSettings:e}=this,{wtViewport:t}=this.dataAccessObject,o="master",s=e.getSetting("columnHeaders").length;if(s&&!t.hasOversizedColumnHeadersMarked[o]){const n=e.getSetting("rowHeaders").length,i=this.getRenderedColumnsCount();for(let e=0;e<s;e++)for(let e=-1*n;e<i;e++)this.markIfOversizedColumnHeader(e);t.hasOversizedColumnHeadersMarked[o]=!0}}}(0,a.mixin)(h,r.default),(0,a.mixin)(h,l.default);t.default=h},17800:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedColumn(){const e=this.dataAccessObject.startColumnRendered;return null===e?-1:e},getFirstVisibleColumn(){const e=this.dataAccessObject.startColumnVisible;return null===e?-1:e},getFirstPartiallyVisibleColumn(){const e=this.dataAccessObject.startColumnPartiallyVisible;return null===e?-1:e},getLastRenderedColumn(){const e=this.dataAccessObject.endColumnRendered;return null===e?-1:e},getLastVisibleColumn(){const e=this.dataAccessObject.endColumnVisible;return null===e?-1:e},getLastPartiallyVisibleColumn(){const e=this.dataAccessObject.endColumnPartiallyVisible;return null===e?-1:e},getRenderedColumnsCount(){return this.dataAccessObject.countColumnsRendered},getVisibleColumnsCount(){return this.dataAccessObject.countColumnsVisible},getRowHeadersCount(){return this.dataAccessObject.rowHeaders.length}};(0,s.defineGetter)(n,"MIXIN_NAME","calculatedColumns",{writable:!1,enumerable:!1});t.default=n},95374:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedRow(){const e=this.dataAccessObject.startRowRendered;return null===e?-1:e},getFirstVisibleRow(){const e=this.dataAccessObject.startRowVisible;return null===e?-1:e},getFirstPartiallyVisibleRow(){const e=this.dataAccessObject.startRowPartiallyVisible;return null===e?-1:e},getLastRenderedRow(){const e=this.dataAccessObject.endRowRendered;return null===e?-1:e},getLastVisibleRow(){const e=this.dataAccessObject.endRowVisible;return null===e?-1:e},getLastPartiallyVisibleRow(){const e=this.dataAccessObject.endRowPartiallyVisible;return null===e?-1:e},getRenderedRowsCount(){return this.dataAccessObject.countRowsRendered},getVisibleRowsCount(){return this.dataAccessObject.countRowsVisible},getColumnHeadersCount(){return this.dataAccessObject.columnHeaders.length}};(0,s.defineGetter)(n,"MIXIN_NAME","calculatedRows",{writable:!1,enumerable:!1});t.default=n},85449:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedColumn(){return 0===this.wtSettings.getSetting("totalColumns")?-1:0},getFirstVisibleColumn(){return this.getFirstRenderedColumn()},getFirstPartiallyVisibleColumn(){return this.getFirstRenderedColumn()},getLastRenderedColumn(){return this.getRenderedColumnsCount()-1},getLastVisibleColumn(){return this.getLastRenderedColumn()},getLastPartiallyVisibleColumn(){return this.getLastRenderedColumn()},getRenderedColumnsCount(){const e=this.wtSettings.getSetting("totalColumns");return Math.min(this.wtSettings.getSetting("fixedColumnsStart"),e)},getVisibleColumnsCount(){return this.getRenderedColumnsCount()},getRowHeadersCount(){return this.dataAccessObject.rowHeaders.length}};(0,s.defineGetter)(n,"MIXIN_NAME","stickyColumnsStart",{writable:!1,enumerable:!1});t.default=n},58166:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedRow(){const e=this.wtSettings.getSetting("totalRows"),t=this.wtSettings.getSetting("fixedRowsBottom"),o=e-t;return 0===e||0===t?-1:o<0?0:o},getFirstVisibleRow(){return this.getFirstRenderedRow()},getFirstPartiallyVisibleRow(){return this.getFirstRenderedRow()},getLastRenderedRow(){return this.wtSettings.getSetting("totalRows")-1},getLastVisibleRow(){return this.getLastRenderedRow()},getLastPartiallyVisibleRow(){return this.getLastRenderedRow()},getRenderedRowsCount(){const e=this.wtSettings.getSetting("totalRows");return Math.min(this.wtSettings.getSetting("fixedRowsBottom"),e)},getVisibleRowsCount(){return this.getRenderedRowsCount()},getColumnHeadersCount:()=>0};(0,s.defineGetter)(n,"MIXIN_NAME","stickyRowsBottom",{writable:!1,enumerable:!1});t.default=n},61138:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(13911);const n={getFirstRenderedRow(){return 0===this.wtSettings.getSetting("totalRows")?-1:0},getFirstVisibleRow(){return this.getFirstRenderedRow()},getFirstPartiallyVisibleRow(){return this.getFirstRenderedRow()},getLastRenderedRow(){return this.getRenderedRowsCount()-1},getLastVisibleRow(){return this.getLastRenderedRow()},getLastPartiallyVisibleRow(){return this.getLastRenderedRow()},getRenderedRowsCount(){const e=this.wtSettings.getSetting("totalRows");return Math.min(this.wtSettings.getSetting("fixedRowsTop"),e)},getVisibleRowsCount(){return this.getRenderedRowsCount()},getColumnHeadersCount(){return this.dataAccessObject.columnHeaders.length}};(0,s.defineGetter)(n,"MIXIN_NAME","stickyRowsTop",{writable:!1,enumerable:!1});t.default=n},61234:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(61138)),r=s(o(17800)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_TOP)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},60882:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(63646)),i=s(o(61138)),r=s(o(85449)),l=o(13911),a=o(34009);class h extends n.default{constructor(e,t,o,s){super(e,t,o,s,a.CLONE_TOP_INLINE_START_CORNER)}}(0,l.mixin)(h,i.default),(0,l.mixin)(h,r.default);t.default=h},87736:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(9893),r=o(61311);t.default=class{constructor(e,t){(0,n.default)(this,"dataAccessObject",void 0),(0,n.default)(this,"wtSettings",void 0),(0,n.default)(this,"headerWidths",new Map),(0,n.default)(this,"stretching",void 0),this.dataAccessObject=e,this.wtSettings=t,this.stretching=new r.ColumnStretching({totalColumns:()=>this.wtSettings.getSetting("totalColumns"),stretchMode:()=>this.wtSettings.getSetting("stretchH"),stretchingColumnWidthFn:(e,t)=>this.wtSettings.getSetting("onBeforeStretchingColumnWidth",e,t),columnWidthFn:e=>this.dataAccessObject.wtTable.getColumnWidth(e)})}getWidth(e){return this.wtSettings.getSetting("columnWidth",e)||this.wtSettings.getSetting("defaultColumnWidth")}getStretchedColumnWidth(e){let t=this.getWidth(e);const o=this.stretching.getStretchedColumnWidth(e,t);return o&&(t=o),t}getHeaderHeight(e){let t=this.wtSettings.getSetting("defaultRowHeight");const o=this.dataAccessObject.wtViewport.oversizedColumnHeaders[e];return void 0!==o&&(t=t?Math.max(t,o):o),t}getHeaderWidth(e){return this.headerWidths.get(this.dataAccessObject.wtTable.columnFilter.sourceToRendered(e))}refreshStretching(){const{wtTable:e,wtViewport:t,cloneSource:o}=this.dataAccessObject,s=o?o.wtTable.holder:e.holder,n=s.offsetHeight<s.scrollHeight?(0,i.getScrollbarWidth)():0;this.stretching.refreshStretching(t.getViewportWidth()-n)}calculateWidths(){const{wtSettings:e}=this;let t=e.getSetting("rowHeaderWidth");if(this.refreshStretching(),t=e.getSetting("onModifyRowHeaderWidth",t),null!=t){const o=e.getSetting("rowHeaders").length,s=e.getSetting("defaultColumnWidth");for(let e=0;e<o;e++){let o=Array.isArray(t)?t[e]:t;o=null==o?s:o,this.headerWidths.set(e,o)}}}}},61311:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(26679);function r(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function l(e,t){return e.get(h(e,t))}function a(e,t,o){return e.set(h(e,t),o),o}function h(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var c=new WeakMap,u=new WeakMap,d=new WeakMap,g=new WeakMap,f=new WeakMap;t.ColumnStretching=class{constructor(e){let{totalColumns:t,stretchMode:o,stretchingColumnWidthFn:s,columnWidthFn:i}=e;(0,n.default)(this,"stretchAllRatio",0),(0,n.default)(this,"stretchLastWidth",0),(0,n.default)(this,"stretchAllColumnsWidth",[]),r(this,c,0),(0,n.default)(this,"needVerifyLastColumnWidth",!0),r(this,u,(()=>0)),r(this,d,(e=>e)),r(this,g,(e=>e)),r(this,f,(()=>"none")),a(u,this,t),a(f,this,o),a(d,this,null!=s?s:l(d,this)),a(g,this,null!=i?i:l(g,this))}refreshStretching(e){if("none"===l(f,this).call(this))return;this.stretchAllRatio=0,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0,this.stretchLastWidth=0,a(c,this,e);let t=0;for(let o=0;o<l(u,this).call(this);o++){const s=this._getColumnWidth(o),n=l(d,this).call(this,void 0,o);"number"==typeof n?e-=n:t+=s}const o=e-t;if("all"===l(f,this).call(this)&&o>0)this.stretchAllRatio=e/t,this.stretchAllColumnsWidth=[],this.needVerifyLastColumnWidth=!0;else if("last"===l(f,this).call(this)&&e!==1/0){const e=this._getColumnWidth(l(u,this).call(this)-1),t=o+e;this.stretchLastWidth=t>=0?t:e}}getStretchedColumnWidth(e,t){let o=null;return"all"===l(f,this).call(this)&&0!==this.stretchAllRatio?o=this._getStretchedAllColumnWidth(e,t):"last"===l(f,this).call(this)&&0!==this.stretchLastWidth&&(o=this._getStretchedLastColumnWidth(e)),o}_getStretchedAllColumnWidth(e,t){let o=0;if(!this.stretchAllColumnsWidth[e]){const o=Math.round(t*this.stretchAllRatio),s=l(d,this).call(this,o,e);this.stretchAllColumnsWidth[e]=void 0===s?o:isNaN(s)?this._getColumnWidth(e):s}if(this.stretchAllColumnsWidth.length===l(u,this).call(this)&&this.needVerifyLastColumnWidth){this.needVerifyLastColumnWidth=!1;for(let e=0;e<this.stretchAllColumnsWidth.length;e++)o+=this.stretchAllColumnsWidth[e];o!==l(c,this)&&(this.stretchAllColumnsWidth[this.stretchAllColumnsWidth.length-1]+=l(c,this)-o)}return this.stretchAllColumnsWidth[e]}_getStretchedLastColumnWidth(e){return e===l(u,this).call(this)-1?this.stretchLastWidth:null}_getColumnWidth(e){let t=l(g,this).call(this,e);return isNaN(t)&&(t=i.DEFAULT_COLUMN_WIDTH),t}}},42715:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(e){(0,n.default)(this,"nodeType",void 0),this.nodeType=e.toUpperCase()}setRootDocument(e){this.rootDocument=e}obtain(){return this.rootDocument.createElement(this.nodeType)}}},60739:(e,t)=>{"use strict";t.__esModule=!0;t.WORKING_SPACE_ALL=0,t.WORKING_SPACE_TOP=1,t.WORKING_SPACE_BOTTOM=2},21682:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(23225));t.OrderView=n.default;var i=s(o(47664));t.SharedOrderView=i.default},47664:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(23225));class i extends n.default{prependView(e){return this.sizeSet.prepend(e.sizeSet),e.sizeSet.append(this.sizeSet),this}appendView(e){return this.sizeSet.append(e.sizeSet),e.sizeSet.prepend(this.sizeSet),this}}t.default=i},23225:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(60739),r=s(o(83638));t.default=class{constructor(e,t,o){(0,n.default)(this,"rootNode",void 0),(0,n.default)(this,"nodesPool",void 0),(0,n.default)(this,"sizeSet",new r.default),(0,n.default)(this,"childNodeType",void 0),(0,n.default)(this,"visualIndex",0),(0,n.default)(this,"collectedNodes",[]),this.rootNode=e,this.nodesPool=t,this.childNodeType=o.toUpperCase()}setSize(e){return this.sizeSet.setSize(e),this}setOffset(e){return this.sizeSet.setOffset(e),this}isSharedViewSet(){return this.sizeSet.isShared()}getNode(e){return e<this.collectedNodes.length?this.collectedNodes[e]:null}getCurrentNode(){const e=this.collectedNodes.length;return e>0?this.collectedNodes[e-1]:null}getRenderedChildCount(){const{rootNode:e,sizeSet:t}=this;let o=0;if(this.isSharedViewSet()){let s=e.firstElementChild;for(;s;){if(s.tagName===this.childNodeType)o+=1;else if(t.isPlaceOn(i.WORKING_SPACE_TOP))break;s=s.nextElementSibling}}else o=e.childElementCount;return o}start(){this.collectedNodes.length=0,this.visualIndex=0;const{rootNode:e,sizeSet:t}=this,o=this.isSharedViewSet(),{nextSize:s}=t.getViewSize();let n=this.getRenderedChildCount();for(;n<s;){const s=this.nodesPool();!o||o&&t.isPlaceOn(i.WORKING_SPACE_BOTTOM)?e.appendChild(s):e.insertBefore(s,e.firstChild),n+=1}const r=o&&t.isPlaceOn(i.WORKING_SPACE_TOP);for(;n>s;)e.removeChild(r?e.firstChild:e.lastChild),n-=1}render(){const{rootNode:e,sizeSet:t}=this;let o=this.visualIndex;this.isSharedViewSet()&&t.isPlaceOn(i.WORKING_SPACE_BOTTOM)&&(o+=t.sharedSize.nextSize);let s=e.childNodes[o];if(s.tagName!==this.childNodeType){const t=this.nodesPool();e.replaceChild(t,s),s=t}this.collectedNodes.push(s),this.visualIndex+=1}end(){}}},92820:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(){(0,n.default)(this,"currentSize",0),(0,n.default)(this,"nextSize",0),(0,n.default)(this,"currentOffset",0),(0,n.default)(this,"nextOffset",0)}setSize(e){this.currentSize=this.nextSize,this.nextSize=e}setOffset(e){this.currentOffset=this.nextOffset,this.nextOffset=e}}},83638:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=s(o(92820)),r=o(60739);t.default=class{constructor(){(0,n.default)(this,"size",new i.default),(0,n.default)(this,"workingSpace",r.WORKING_SPACE_ALL),(0,n.default)(this,"sharedSize",null)}setSize(e){this.size.setSize(e)}setOffset(e){this.size.setOffset(e)}getViewSize(){return this.size}isShared(){return this.sharedSize instanceof i.default}isPlaceOn(e){return this.workingSpace===e}append(e){this.workingSpace=r.WORKING_SPACE_TOP,e.workingSpace=r.WORKING_SPACE_BOTTOM,this.sharedSize=e.getViewSize()}prepend(e){this.workingSpace=r.WORKING_SPACE_BOTTOM,e.workingSpace=r.WORKING_SPACE_TOP,this.sharedSize=e.getViewSize()}}},46372:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707));t.default=class{constructor(e,t){(0,n.default)(this,"dataAccessObject",void 0),(0,n.default)(this,"wtSettings",void 0),this.dataAccessObject=e,this.wtSettings=t}getHeight(e){let t=this.wtSettings.getSetting("rowHeight",e);const o=this.dataAccessObject.wtViewport.oversizedRows[e];return void 0!==o&&(t=void 0===t?o:Math.max(t,o)),t}getHeightByOverlayName(e,t){let o=this.wtSettings.getSetting("rowHeightByOverlayName",e,t);const s=this.dataAccessObject.wtViewport.oversizedRows[e];return void 0!==s&&(o=void 0===o?s:Math.max(o,s)),o}}},85690:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(9893),n=o(13911),i=o(26679);t.default=class{constructor(e,t,o,s,n){this.dataAccessObject=e,this.wot=e.wot,this.instance=this.wot,this.domBindings=t,this.wtSettings=o,this.wtTable=n,this.oversizedRows=[],this.oversizedColumnHeaders=[],this.hasOversizedColumnHeadersMarked={},this.clientHeight=0,this.containerWidth=NaN,this.rowHeaderWidth=NaN,this.rowsVisibleCalculator=null,this.columnsVisibleCalculator=null,this.rowsCalculatorTypes=new Map([["rendered",()=>this.wtSettings.getSetting("renderAllRows")?new i.RenderedAllRowsCalculationType:new i.RenderedRowsCalculationType],["fullyVisible",()=>new i.FullyVisibleRowsCalculationType],["partiallyVisible",()=>new i.PartiallyVisibleRowsCalculationType]]),this.columnsCalculatorTypes=new Map([["rendered",()=>this.wtSettings.getSetting("renderAllColumns")?new i.RenderedAllColumnsCalculationType:new i.RenderedColumnsCalculationType],["fullyVisible",()=>new i.FullyVisibleColumnsCalculationType],["partiallyVisible",()=>new i.PartiallyVisibleColumnsCalculationType]]),this.eventManager=s,this.eventManager.addEventListener(this.domBindings.rootWindow,"resize",(()=>{this.clientHeight=this.getWorkspaceHeight()}))}getWorkspaceHeight(){const e=this.domBindings.rootDocument,t=this.dataAccessObject.topOverlayTrimmingContainer;let o=0;if(t===this.domBindings.rootWindow)o=e.documentElement.clientHeight;else{o=(0,s.outerHeight)(t)>0&&t.clientHeight>0?t.clientHeight:1/0}return o}getWorkspaceWidth(){const{wtSettings:e}=this,{rootDocument:t,rootWindow:o}=this.domBindings,n=this.dataAccessObject.inlineStartOverlayTrimmingContainer,i=t.documentElement.offsetWidth,r=e.getSetting("totalColumns"),l=e.getSetting("preventOverflow"),a=e.getSetting("rtlMode"),h=this.wtTable.TABLE.getBoundingClientRect(),c=i-(a?h.right-i:h.left);let u,d;if(l)return(0,s.outerWidth)(this.wtTable.wtRootElement);if(u=e.getSetting("freezeOverlays")?Math.min(c,i):Math.min(this.getContainerFillWidth(),c,i),n===o&&r>0&&this.sumColumnWidths(0,r-1)>u)return t.documentElement.clientWidth;if(n!==o&&(d=(0,s.getStyle)(this.dataAccessObject.inlineStartOverlayTrimmingContainer,"overflow",o),"scroll"===d||"hidden"===d||"auto"===d))return Math.max(u,n.clientWidth);const g=e.getSetting("stretchH");return"none"!==g&&g?u:Math.max(u,(0,s.outerWidth)(this.wtTable.TABLE))}hasVerticalScroll(){return this.wtTable.hider.offsetHeight>this.getWorkspaceHeight()}hasHorizontalScroll(){return this.wtTable.hider.offsetWidth>this.getWorkspaceWidth()}sumColumnWidths(e,t){let o=0,s=e;for(;s<t;)o+=this.wtTable.getColumnWidth(s),s+=1;return o}getContainerFillWidth(){if(this.containerWidth)return this.containerWidth;const e=this.wtTable.holder,t=this.domBindings.rootDocument.createElement("div");t.style.width="100%",t.style.height="1px",e.appendChild(t);const o=t.offsetWidth;return this.containerWidth=o,e.removeChild(t),o}getWorkspaceOffset(){return(0,s.offset)(this.wtTable.TABLE)}getColumnHeaderHeight(){return this.wtSettings.getSetting("columnHeaders").length?isNaN(this.columnHeaderHeight)&&(this.columnHeaderHeight=(0,s.outerHeight)(this.wtTable.THEAD)):this.columnHeaderHeight=0,this.columnHeaderHeight}getViewportHeight(){let e=this.getWorkspaceHeight();if(e===1/0)return e;const t=this.getColumnHeaderHeight();return t>0&&(e-=t),e}getRowHeaderWidth(){const e=this.wtSettings.getSetting("rowHeaderWidth"),t=this.wtSettings.getSetting("rowHeaders");if(e){this.rowHeaderWidth=0;for(let o=0,s=t.length;o<s;o++)this.rowHeaderWidth+=e[o]||e}if(isNaN(this.rowHeaderWidth))if(t.length){let e=this.wtTable.TABLE.querySelector("TH");this.rowHeaderWidth=0;for(let o=0,n=t.length;o<n;o++)e?(this.rowHeaderWidth+=(0,s.outerWidth)(e),e=e.nextSibling):this.rowHeaderWidth+=50}else this.rowHeaderWidth=0;return this.rowHeaderWidth=this.wtSettings.getSetting("onModifyRowHeaderWidth",this.rowHeaderWidth)||this.rowHeaderWidth,this.rowHeaderWidth}getViewportWidth(){const e=this.getWorkspaceWidth();if(e===1/0)return e;const t=this.getRowHeaderWidth();return t>0?e-t:e}createRowsCalculator(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["rendered","fullyVisible","partiallyVisible"];const{wtSettings:t,wtTable:o}=this;let n,r,l=this.getViewportHeight();this.rowHeaderWidth=NaN;let a=this.dataAccessObject.topScrollPosition-this.dataAccessObject.topParentOffset;const h=t.getSetting("fixedRowsTop"),c=t.getSetting("fixedRowsBottom"),u=t.getSetting("totalRows");return h&&a>=0&&(r=this.dataAccessObject.topOverlay.sumCellSizes(0,h),a+=r,l-=r),c&&this.dataAccessObject.bottomOverlay.clone&&(r=this.dataAccessObject.bottomOverlay.sumCellSizes(u-c,u),l-=r),n=o.holder.clientHeight===o.holder.offsetHeight?0:(0,s.getScrollbarWidth)(this.domBindings.rootDocument),new i.ViewportRowsCalculator({calculationTypes:e.map((e=>[e,this.rowsCalculatorTypes.get(e)()])),viewportHeight:l,scrollOffset:a,totalRows:t.getSetting("totalRows"),rowHeightFn:e=>o.getRowHeight(e),overrideFn:t.getSettingPure("viewportRowCalculatorOverride"),horizontalScrollbarHeight:n})}createColumnsCalculator(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["rendered","fullyVisible","partiallyVisible"];const{wtSettings:t,wtTable:o}=this;let n=this.getViewportWidth(),r=Math.abs(this.dataAccessObject.inlineStartScrollPosition)-this.dataAccessObject.inlineStartParentOffset;this.columnHeaderHeight=NaN;const l=t.getSetting("fixedColumnsStart");if(l&&r>=0){const e=this.dataAccessObject.inlineStartOverlay.sumCellSizes(0,l);r+=e,n-=e}return o.holder.clientWidth!==o.holder.offsetWidth&&(n-=(0,s.getScrollbarWidth)(this.domBindings.rootDocument)),new i.ViewportColumnsCalculator({calculationTypes:e.map((e=>[e,this.columnsCalculatorTypes.get(e)()])),viewportWidth:n,scrollOffset:r,totalColumns:t.getSetting("totalColumns"),columnWidthFn:e=>o.getColumnWidth(e),overrideFn:t.getSettingPure("viewportColumnCalculatorOverride"),inlineStartOffset:this.dataAccessObject.inlineStartParentOffset})}createCalculators(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const{wtSettings:t}=this,o=this.createRowsCalculator(),s=this.createColumnsCalculator();if(e&&!t.getSetting("renderAllRows")){const t=o.getResultsFor("fullyVisible");e=this.areAllProposedVisibleRowsAlreadyRendered(t)}if(e&&!t.getSetting("renderAllColumns")){const t=s.getResultsFor("fullyVisible");e=this.areAllProposedVisibleColumnsAlreadyRendered(t)}return e||(this.rowsRenderCalculator=o.getResultsFor("rendered"),this.columnsRenderCalculator=s.getResultsFor("rendered")),this.rowsVisibleCalculator=o.getResultsFor("fullyVisible"),this.columnsVisibleCalculator=s.getResultsFor("fullyVisible"),this.rowsPartiallyVisibleCalculator=o.getResultsFor("partiallyVisible"),this.columnsPartiallyVisibleCalculator=s.getResultsFor("partiallyVisible"),e}createVisibleCalculators(){const e=this.createRowsCalculator(["fullyVisible","partiallyVisible"]),t=this.createColumnsCalculator(["fullyVisible","partiallyVisible"]);this.rowsVisibleCalculator=e.getResultsFor("fullyVisible"),this.columnsVisibleCalculator=t.getResultsFor("fullyVisible"),this.rowsPartiallyVisibleCalculator=e.getResultsFor("partiallyVisible"),this.columnsPartiallyVisibleCalculator=t.getResultsFor("partiallyVisible")}areAllProposedVisibleRowsAlreadyRendered(e){if(!this.rowsVisibleCalculator)return!1;let{startRow:t,endRow:o}=e;if(null===t&&null===o){if(!e.isVisibleInTrimmingContainer)return!0;t=this.rowsPartiallyVisibleCalculator.startRow,o=this.rowsPartiallyVisibleCalculator.endRow}const{startRow:s,endRow:n}=this.rowsRenderCalculator;return!(t<s||t===s&&t>0)&&!(o>n||o===n&&o<this.wtSettings.getSetting("totalRows")-1)}areAllProposedVisibleColumnsAlreadyRendered(e){if(!this.columnsVisibleCalculator)return!1;let{startColumn:t,endColumn:o}=e;if(null===t&&null===o){if(!e.isVisibleInTrimmingContainer)return!0;t=this.columnsPartiallyVisibleCalculator.startColumn,o=this.columnsPartiallyVisibleCalculator.endColumn}const{startColumn:s,endColumn:n}=this.columnsRenderCalculator;return!(t<s||t===s&&t>0)&&!(o>n||o===n&&o<this.wtSettings.getSetting("totalColumns")-1)}resetHasOversizedColumnHeadersMarked(){(0,n.objectEach)(this.hasOversizedColumnHeadersMarked,((e,t,o)=>{o[t]=void 0}))}}},38715:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(6254),o(20512),o(23844),o(38594);var n=s(o(87789)),i=o(11015),r=o(71757),l=s(o(56937)),a=o(74174),h=o(34299),c=o(49676),u=o(52618),d=o(90);function g(e,t){const o=new n.default(e,t||{},i.rootInstanceSymbol);return o.init(),o}t.CellCoords=d.CellCoords,t.CellRange=d.CellRange,(0,h.registerCellType)(c.TextCellType),g.editors={BaseEditor:u.BaseEditor},g.Core=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new n.default(e,t,i.rootInstanceSymbol)},g.DefaultSettings=(0,r.metaSchemaFactory)(),g.hooks=l.default.getSingleton(),g.CellCoords=d.CellCoords,g.CellRange=d.CellRange,g.packageName="handsontable",g.buildDate="30/09/2024 13:38:28",g.version="14.6.0-next-9f83127-20240930",g.languages={dictionaryKeys:a.dictionaryKeys,getLanguageDictionary:a.getLanguageDictionary,getLanguagesDictionaries:a.getLanguagesDictionaries,registerLanguageDictionary:a.registerLanguageDictionary,getTranslatedPhrase:a.getTranslatedPhrase};t.default=g},16531:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(80115),n=o(80827),i=o(93307);const r=t.CELL_TYPE="autocomplete";t.AutocompleteCellType={CELL_TYPE:r,editor:s.AutocompleteEditor,renderer:n.autocompleteRenderer,validator:i.autocompleteValidator}},95211:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(16531);t.AutocompleteCellType=s.AutocompleteCellType,t.CELL_TYPE=s.CELL_TYPE},29529:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(39626),n=o(80730);const i=t.CELL_TYPE="checkbox";t.CheckboxCellType={CELL_TYPE:i,editor:s.CheckboxEditor,renderer:n.checkboxRenderer}},55286:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(29529);t.CELL_TYPE=s.CELL_TYPE,t.CheckboxCellType=s.CheckboxCellType},40395:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(59127),n=o(48075),i=o(70323);const r=t.CELL_TYPE="date";t.DateCellType={CELL_TYPE:r,editor:s.DateEditor,renderer:n.dateRenderer,validator:i.dateValidator}},15347:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(40395);t.CELL_TYPE=s.CELL_TYPE,t.DateCellType=s.DateCellType},85769:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(50486),n=o(82070),i=o(7628);const r=t.CELL_TYPE="dropdown";t.DropdownCellType={CELL_TYPE:r,editor:s.DropdownEditor,renderer:n.dropdownRenderer,validator:i.dropdownValidator}},98614:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(85769);t.CELL_TYPE=s.CELL_TYPE,t.DropdownCellType=s.DropdownCellType},63297:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(56138),n=o(8218);const i=t.CELL_TYPE="handsontable";t.HandsontableCellType={CELL_TYPE:i,editor:s.HandsontableEditor,renderer:n.handsontableRenderer}},37334:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(63297);t.CELL_TYPE=s.CELL_TYPE,t.HandsontableCellType=s.HandsontableCellType},10426:(e,t,o)=>{"use strict";t.__esModule=!0,t.registerAllCellTypes=function(){(0,g.registerCellType)(s.AutocompleteCellType),(0,g.registerCellType)(n.CheckboxCellType),(0,g.registerCellType)(i.DateCellType),(0,g.registerCellType)(r.DropdownCellType),(0,g.registerCellType)(l.HandsontableCellType),(0,g.registerCellType)(a.NumericCellType),(0,g.registerCellType)(h.PasswordCellType),(0,g.registerCellType)(c.SelectCellType),(0,g.registerCellType)(u.TextCellType),(0,g.registerCellType)(d.TimeCellType)};var s=o(95211);t.AutocompleteCellType=s.AutocompleteCellType,t.AUTOCOMPLETE_TYPE=s.CELL_TYPE;var n=o(55286);t.CheckboxCellType=n.CheckboxCellType,t.CHECKBOX_TYPE=n.CELL_TYPE;var i=o(15347);t.DateCellType=i.DateCellType,t.DATE_TYPE=i.CELL_TYPE;var r=o(98614);t.DropdownCellType=r.DropdownCellType,t.DROPDOWN_TYPE=r.CELL_TYPE;var l=o(37334);t.HandsontableCellType=l.HandsontableCellType,t.HANDSONTABLE_TYPE=l.CELL_TYPE;var a=o(85506);t.NumericCellType=a.NumericCellType,t.NUMERIC_TYPE=a.CELL_TYPE;var h=o(1774);t.PasswordCellType=h.PasswordCellType,t.PASSWORD_TYPE=h.CELL_TYPE;var c=o(85183);t.SelectCellType=c.SelectCellType,t.SELECT_TYPE=c.CELL_TYPE;var u=o(49676);t.TextCellType=u.TextCellType,t.TEXT_TYPE=u.CELL_TYPE;var d=o(37574);t.TimeCellType=d.TimeCellType,t.TIME_TYPE=d.CELL_TYPE;var g=o(34299);t.registerCellType=g.registerCellType,t.getCellType=g.getCellType,t.getRegisteredCellTypeNames=g.getRegisteredCellTypeNames,t.getRegisteredCellTypes=g.getRegisteredCellTypes,t.hasCellType=g.hasCellType},85506:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(78625);t.CELL_TYPE=s.CELL_TYPE,t.NumericCellType=s.NumericCellType},78625:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(33972),n=o(89760),i=o(66640);const r=t.CELL_TYPE="numeric";t.NumericCellType={CELL_TYPE:r,editor:s.NumericEditor,renderer:n.numericRenderer,validator:i.numericValidator,dataType:"number"}},1774:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(2401);t.CELL_TYPE=s.CELL_TYPE,t.PasswordCellType=s.PasswordCellType},2401:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(46138),n=o(15074);const i=t.CELL_TYPE="password";t.PasswordCellType={CELL_TYPE:i,editor:s.PasswordEditor,renderer:n.passwordRenderer,copyable:!1}},34299:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.getCellType=function(e){if(!c(e))throw Error(`You declared cell type "${e}" as a string that is not mapped to a known object.\n Cell type must be an object or a string mapped to an object registered by\n "Handsontable.cellTypes.registerCellType" method`);return h(e)},t.registerCellType=function(e,t){"string"!=typeof e&&(e=(t=e).CELL_TYPE);const{editor:o,renderer:s,validator:n}=t;o&&(0,i.registerEditor)(e,o);s&&(0,r.registerRenderer)(e,s);n&&(0,l.registerValidator)(e,n);a(e,t)},o(67834);var n=s(o(71263)),i=o(84558),r=o(44288),l=o(51255);const{register:a,getItem:h,hasItem:c,getNames:u,getValues:d}=(0,n.default)("cellTypes");t.getRegisteredCellTypes=d,t.getRegisteredCellTypeNames=u,t.hasCellType=c},85183:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(9771);t.CELL_TYPE=s.CELL_TYPE,t.SelectCellType=s.SelectCellType},9771:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(7507),n=o(31151);const i=t.CELL_TYPE="select";t.SelectCellType={CELL_TYPE:i,editor:s.SelectEditor,renderer:n.selectRenderer}},49676:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(18645);t.CELL_TYPE=s.CELL_TYPE,t.TextCellType=s.TextCellType},18645:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952),n=o(36748);const i=t.CELL_TYPE="text";t.TextCellType={CELL_TYPE:i,editor:s.TextEditor,renderer:n.textRenderer}},37574:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(4385);t.CELL_TYPE=s.CELL_TYPE,t.TimeCellType=s.TimeCellType},4385:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(14902),n=o(19698),i=o(51284);const r=t.CELL_TYPE="time";t.TimeCellType={CELL_TYPE:r,editor:s.TimeEditor,renderer:n.timeRenderer,validator:i.timeValidator}},87789:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.default=function(e,t){var o,s=this;let k=arguments.length>2&&void 0!==arguments[2]&&arguments[2],V=this;const F=new h.default(V);let W,B,U,j,Y,z,G=!0;(0,b.hasValidParameter)(k)&&(0,b.registerAsRootInstance)(this);this.rootElement=e,this.rootDocument=e.ownerDocument,this.rootWindow=this.rootDocument.defaultView,this.isDestroyed=!1,this.renderSuspendedCounter=0,this.executionSuspendedCounter=0;const $=null!==(o=null==t?void 0:t.layoutDirection)&&void 0!==o?o:"inherit",K=["rtl","ltr"].includes($)?$:this.rootWindow.getComputedStyle(this.rootElement).direction;this.rootElement.setAttribute("dir",K),this.isRtl=function(){return"rtl"===K},this.isLtr=function(){return!V.isRtl()},this.getDirectionFactor=function(){return V.isLtr()?1:-1},t.language=(0,M.getValidLanguageCode)(t.language);const X=new N.MetaManager(V,t,[N.DynamicCellMetaMod,N.ExtendMetaPropertiesMod]),q=X.getTableMeta(),Q=X.getGlobalMeta(),J=(0,P.createUniqueMap)();this.container=this.rootDocument.createElement("div"),this.renderCall=!1,e.insertBefore(this.container,e.firstChild),(0,b.isRootInstance)(this)&&(0,r._injectProductInfo)(t.licenseKey,e);this.guid=`ht_${(0,C.randomString)()}`,L.set(this.guid,this),this.columnIndexMapper=new R.IndexMapper,this.rowIndexMapper=new R.IndexMapper,this.columnIndexMapper.addLocalHook("indexesSequenceChange",(e=>{V.runHooks("afterColumnSequenceChange",e)})),this.rowIndexMapper.addLocalHook("indexesSequenceChange",(e=>{V.runHooks("afterRowSequenceChange",e)})),B=new E.default(V),this.rootElement.id&&"ht_"!==this.rootElement.id.substring(0,3)||(this.rootElement.id=this.guid);let Z=new I.Selection(q,{rowIndexMapper:V.rowIndexMapper,columnIndexMapper:V.columnIndexMapper,countCols:()=>V.countCols(),countRows:()=>V.countRows(),propToCol:e=>W.propToCol(e),isEditorOpened:()=>!!V.getActiveEditor()&&V.getActiveEditor().isOpened(),countRenderableColumns:()=>this.view.countRenderableColumns(),countRenderableRows:()=>this.view.countRenderableRows(),countRowHeaders:()=>this.countRowHeaders(),countColHeaders:()=>this.countColHeaders(),countRenderableRowsInRange:function(){return s.view.countRenderableRowsInRange(...arguments)},countRenderableColumnsInRange:function(){return s.view.countRenderableColumnsInRange(...arguments)},getShortcutManager:()=>V.getShortcutManager(),createCellCoords:(e,t)=>V._createCellCoords(e,t),createCellRange:(e,t,o)=>V._createCellRange(e,t,o),visualToRenderableCoords:e=>{const{row:t,col:o}=e;return V._createCellCoords(t>=0?V.rowIndexMapper.getRenderableFromVisualIndex(t):t,o>=0?V.columnIndexMapper.getRenderableFromVisualIndex(o):o)},renderableToVisualCoords:e=>{const{row:t,col:o}=e;return V._createCellCoords(t>=0?V.rowIndexMapper.getVisualFromRenderableIndex(t):t,o>=0?V.columnIndexMapper.getVisualFromRenderableIndex(o):o)},findFirstNonHiddenRenderableRow:(e,t)=>{const o=t>e?1:-1,s=Math.min(e,t),n=Math.max(e,t),i=V.rowIndexMapper.getNearestNotHiddenIndex(e,o);return null===i||1===o&&i>n||-1===o&&i<s?null:i>=0?V.rowIndexMapper.getRenderableFromVisualIndex(i):i},findFirstNonHiddenRenderableColumn:(e,t)=>{const o=t>e?1:-1,s=Math.min(e,t),n=Math.max(e,t),i=V.columnIndexMapper.getNearestNotHiddenIndex(e,o);return null===i||1===o&&i>n||-1===o&&i<s?null:i>=0?V.columnIndexMapper.getRenderableFromVisualIndex(i):i},isDisabledCellSelection:(e,t)=>e<0||t<0?V.getSettings().disableVisualSelection:V.getCellMeta(e,t).disableVisualSelection});this.selection=Z;const ee=e=>{let{hiddenIndexesChanged:t}=e;t&&this.selection.commit()};function te(e){const t=(0,O.normalizeLanguageCode)(e);(0,M.hasLanguageDictionary)(t)?(V.runHooks("beforeLanguageChange",t),Q.language=t,V.runHooks("afterLanguageChange",t)):(0,O.warnUserAboutLanguageRegistration)(e)}function oe(e,t){const o="className"===e?V.rootElement:V.table;if(G)(0,n.addClass)(o,t);else{let s=[],i=[];Q[e]&&(s=Array.isArray(Q[e])?Q[e]:(0,d.stringToArray)(Q[e])),t&&(i=Array.isArray(t)?t:(0,d.stringToArray)(t));const r=(0,d.getDifferenceOfArrays)(s,i),l=(0,d.getDifferenceOfArrays)(i,s);r.length&&(0,n.removeClass)(o,r),l.length&&(0,n.addClass)(o,l)}Q[e]=t}function se(){let e=!1;return{validatorsInQueue:0,valid:!0,addValidatorToQueue(){this.validatorsInQueue+=1,e=!1},removeValidatorFormQueue(){this.validatorsInQueue=this.validatorsInQueue-1<0?0:this.validatorsInQueue-1,this.checkIfQueueIsEmpty()},onQueueEmpty(){},checkIfQueueIsEmpty(){0===this.validatorsInQueue&&!1===e&&(e=!0,this.onQueueEmpty(this.valid))}}}function ne(e){const t=e.replace(",",".");return!1===isNaN(parseFloat(t))?parseFloat(t):e}function ie(e,t,o){if(!e.length)return void o();const s=V.getActiveEditor(),n=new se;let i=!0;n.onQueueEmpty=()=>{s&&i&&s.cancelChanges(),o()};for(let o=e.length-1;o>=0;o--){const[s,r,,l]=e[o],a=W.propToCol(r);let h;h=Number.isInteger(a)?V.getCellMeta(s,a):{...Object.getPrototypeOf(q),...q},"numeric"===h.type&&"string"==typeof l&&(0,v.isNumericLike)(l)&&(e[o][3]=ne(l)),V.getCellValidator(h)&&(n.addValidatorToQueue(),V.validateCell(e[o][3],h,function(t,o){return function(s){if("boolean"!=typeof s)throw new Error("Validation error: result is not boolean");!1===s&&!1===o.allowInvalid&&(i=!1,e.splice(t,1),o.valid=!0),n.removeValidatorFormQueue()}}(o,h),t))}n.checkIfQueueIsEmpty()}function re(e,t){for(let o=e.length-1;o>=0;o--){let s=!1;if(null!==e[o]){if(null!==e[o][2]&&void 0!==e[o][2]||null!==e[o][3]&&void 0!==e[o][3]){if(q.allowInsertRow)for(;e[o][0]>V.countRows()-1;){const{delta:e}=W.createRow(void 0,void 0,{source:t});if(0===e){s=!0;break}}if("array"===V.dataType&&(!q.columns||0===q.columns.length)&&q.allowInsertColumn)for(;W.propToCol(e[o][1])>V.countCols()-1;){const{delta:e}=W.createCol(void 0,void 0,{source:t});if(0===e){s=!0;break}}s||W.set(e[o][0],e[o][1],e[o][3])}}else e.splice(o,1)}const o=e.length>0;if(V.forceFullRender=!0,o){U.adjustRowsAndCols(),V.runHooks("beforeChangeRender",e,t),j.closeEditor(),V.view.render(),j.prepareEditor(),V.view.adjustElementsSize(),V.runHooks("afterChange",e,t||"edit");const o=V.getActiveEditor();o&&(0,r.isDefined)(o.refreshValue)&&o.refreshValue()}else V.view.render()}function le(e,t,o){return Array.isArray(e)?e:[[e,t,o]]}function ae(e,t){const o=V.getActiveEditor(),s=V.runHooks("beforeChange",e,t||"edit"),n=e.filter((e=>null!==e));return!1===s||0===n.length?(o&&o.cancelChanges(),[]):n}this.columnIndexMapper.addLocalHook("cacheUpdated",ee),this.rowIndexMapper.addLocalHook("cacheUpdated",ee),this.selection.addLocalHook("afterSetRangeEnd",((e,t)=>{const o=(0,c.createObjectPropListener)(!1),s=this.selection.getSelectedRange(),{from:i,to:r}=s.current(),l=s.size()-1;this.runHooks("afterSelection",i.row,i.col,r.row,r.col,o,l),this.runHooks("afterSelectionByProp",i.row,V.colToProp(i.col),r.row,V.colToProp(r.col),o,l),t&&(!o.isTouched()||o.isTouched()&&!o.value)&&z.scrollTo(e);const a=Z.isSelectedByRowHeader(),h=Z.isSelectedByColumnHeader();a&&h?(0,n.addClass)(this.rootElement,["ht__selection--rows","ht__selection--columns"]):a?((0,n.removeClass)(this.rootElement,"ht__selection--columns"),(0,n.addClass)(this.rootElement,"ht__selection--rows")):h?((0,n.removeClass)(this.rootElement,"ht__selection--rows"),(0,n.addClass)(this.rootElement,"ht__selection--columns")):(0,n.removeClass)(this.rootElement,["ht__selection--rows","ht__selection--columns"]),"shift"!==Z.getSelectionSource()&&j.closeEditor(null),V.view.render(),j.prepareEditor()})),this.selection.addLocalHook("beforeSetFocus",(e=>{this.runHooks("beforeSelectionFocusSet",e.row,e.col)})),this.selection.addLocalHook("afterSetFocus",(e=>{const t=(0,c.createObjectPropListener)(!1);this.runHooks("afterSelectionFocusSet",e.row,e.col,t),(!t.isTouched()||t.isTouched()&&!t.value)&&z.scrollTo(e),j.closeEditor(),V.view.render(),j.prepareEditor()})),this.selection.addLocalHook("afterSelectionFinished",(e=>{const t=e.length-1,{from:o,to:s}=e[t];this.runHooks("afterSelectionEnd",o.row,o.col,s.row,s.col,t),this.runHooks("afterSelectionEndByProp",o.row,V.colToProp(o.col),s.row,V.colToProp(s.col),t)})),this.selection.addLocalHook("afterIsMultipleSelection",(e=>{const t=this.runHooks("afterIsMultipleSelection",e.value);e.value&&(e.value=t)})),this.selection.addLocalHook("afterDeselect",(()=>{j.closeEditor(),V.view.render(),(0,n.removeClass)(this.rootElement,["ht__selection--rows","ht__selection--columns"]),this.runHooks("afterDeselect")})),this.selection.addLocalHook("beforeHighlightSet",(()=>this.runHooks("beforeSelectionHighlightSet"))).addLocalHook("beforeSetRangeStart",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSetRangeStart",...t)})).addLocalHook("beforeSetRangeStartOnly",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSetRangeStartOnly",...t)})).addLocalHook("beforeSetRangeEnd",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSetRangeEnd",...t)})).addLocalHook("beforeSelectColumns",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSelectColumns",...t)})).addLocalHook("afterSelectColumns",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterSelectColumns",...t)})).addLocalHook("beforeSelectRows",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeSelectRows",...t)})).addLocalHook("afterSelectRows",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterSelectRows",...t)})).addLocalHook("beforeModifyTransformStart",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("modifyTransformStart",...t)})).addLocalHook("afterModifyTransformStart",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterModifyTransformStart",...t)})).addLocalHook("beforeModifyTransformFocus",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("modifyTransformFocus",...t)})).addLocalHook("afterModifyTransformFocus",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterModifyTransformFocus",...t)})).addLocalHook("beforeModifyTransformEnd",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("modifyTransformEnd",...t)})).addLocalHook("afterModifyTransformEnd",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("afterModifyTransformEnd",...t)})).addLocalHook("beforeRowWrap",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeRowWrap",...t)})).addLocalHook("beforeColumnWrap",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return s.runHooks("beforeColumnWrap",...t)})).addLocalHook("insertRowRequire",(e=>this.alter("insert_row_above",e,1,"auto"))).addLocalHook("insertColRequire",(e=>this.alter("insert_col_start",e,1,"auto"))),U={alter(e,t){var o,s;let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=arguments.length>3?arguments[3]:void 0,l=arguments.length>4?arguments[4]:void 0;const a=e=>{if(0===e.length)return[];const t=[...e];t.sort(((e,t)=>{let[o]=e,[s]=t;return o===s?0:o>s?1:-1}));return(0,d.arrayReduce)(t,((e,t)=>{let[o,s]=t;const n=e[e.length-1],[i,r]=n,l=i+r;if(o<=l){const e=Math.max(s-(l-o),0);n[1]+=e}else e.push([o,s]);return e}),[t[0]])};switch(e){case"insert_row_below":case"insert_row_above":const l=V.countSourceRows();if(q.maxRows===l)return;const h="insert_row_below"===e?"below":"above";t=null!==(o=t)&&void 0!==o?o:"below"===h?l:0;const{delta:c,startPhysicalIndex:u}=W.createRow(t,n,{source:i,mode:h});Z.shiftRows(V.toVisualRow(u),c);break;case"insert_col_start":case"insert_col_end":const g="insert_col_end"===e?"end":"start";t=null!==(s=t)&&void 0!==s?s:"end"===g?V.countSourceCols():0;const{delta:f,startPhysicalIndex:p}=W.createCol(t,n,{source:i,mode:g});if(f){if(Array.isArray(q.colHeaders)){const e=[V.toVisualColumn(p),0];e.length+=f,Array.prototype.splice.apply(q.colHeaders,e)}Z.shiftColumns(V.toVisualColumn(p),f)}break;case"remove_row":const m=e=>{let t=0;(0,d.arrayEach)(e,(e=>{let[o,s]=e;const n=(0,r.isEmpty)(o)?V.countRows()-1:Math.max(o-t,0);Number.isInteger(o)&&(o=Math.max(o-t,0));if(!W.removeRow(o,s,i))return;if(Z.isSelected()){const{row:e}=V.getSelectedRangeLast().highlight;e>=o&&e<=o+s-1&&j.closeEditor(!0)}const l=V.countRows();0===l?Z.deselect():"ContextMenu.removeRow"===i?Z.refresh():Z.shiftRows(o,-s);const a=q.fixedRowsTop;a>=n+1&&(q.fixedRowsTop-=Math.min(s,a-n));const h=q.fixedRowsBottom;h&&n>=l-h&&(q.fixedRowsBottom-=Math.min(s,h)),t+=s}))};Array.isArray(t)?m(a(t)):m([[t,n]]);break;case"remove_col":const w=e=>{let t=0;(0,d.arrayEach)(e,(e=>{let[o,s]=e;const n=(0,r.isEmpty)(o)?V.countCols()-1:Math.max(o-t,0);let l=V.toPhysicalColumn(n);Number.isInteger(o)&&(o=Math.max(o-t,0));if(!W.removeCol(o,s,i))return;if(Z.isSelected()){const{col:e}=V.getSelectedRangeLast().highlight;e>=o&&e<=o+s-1&&j.closeEditor(!0)}0===V.countCols()?Z.deselect():"ContextMenu.removeColumn"===i?Z.refresh():Z.shiftColumns(o,-s);const a=q.fixedColumnsStart;a>=n+1&&(q.fixedColumnsStart-=Math.min(s,a-n)),Array.isArray(q.colHeaders)&&(void 0===l&&(l=-1),q.colHeaders.splice(l,s)),t+=s}))};Array.isArray(t)?w(a(t)):w([[t,n]]);break;default:throw new Error(`There is no such action "${e}"`)}V.view.render(),l||U.adjustRowsAndCols()},adjustRowsAndCols(){const e=q.minRows,t=q.minSpareRows,o=q.minCols,s=q.minSpareCols;if(e){const t=V.countRows();t<e&&W.createRow(t,e-t,{source:"auto"})}if(t){const e=V.countEmptyRows(!0);if(e<t){const o=t-e,s=Math.min(o,q.maxRows-V.countSourceRows());W.createRow(V.countRows(),s,{source:"auto"})}}{let e;(o||s)&&(e=V.countEmptyCols(!0));let t=V.countCols();if(o&&!q.columns&&t<o){const s=o-t;e+=s,W.createCol(t,s,{source:"auto"})}if(s&&!q.columns&&"array"===V.dataType&&e<s){t=V.countCols();const o=s-e,n=Math.min(o,q.maxCols-t);W.createCol(t,n,{source:"auto"})}}V.view&&V.view.adjustElementsSize()},populateFromArray(e,t,o,s,n){let i,r,l,a;const h=[],u={},g=[],f=e.row,p=e.col;if(r=t.length,0===r)return!1;let m=0,w=0;switch((0,c.isObject)(o)&&(m=o.col-p+1,w=o.row-f+1),n){case"shift_down":const n=(0,d.pivot)(t),C=n.length,v=Math.max(C,m),y=V.getData().slice(f),E=(0,d.pivot)(y).slice(p,p+v);for(l=0;l<v;l+=1)if(l<C){for(i=0,r=n[l].length;i<w-r;i+=1)n[l].push(n[l][i%r]);l<E.length?g.push(n[l].concat(E[l])):g.push(n[l].concat(new Array(y.length).fill(null)))}else g.push(n[l%C].concat(E[l]));V.populateFromArray(f,p,(0,d.pivot)(g));break;case"shift_right":const S=t.length,R=Math.max(S,w),b=V.getData().slice(f).map((e=>e.slice(p)));for(i=0;i<R;i+=1)if(i<S){for(l=0,a=t[i].length;l<m-a;l+=1)t[i].push(t[i][l%a]);if(i<b.length)for(let e=0;e<b[i].length;e+=1)t[i].push(b[i][e]);else t[i].push(...new Array(b[0].length).fill(null))}else t.push(t[i%r].slice(0,R).concat(b[i]));V.populateFromArray(f,p,t);break;default:u.row=e.row,u.col=e.col;let _,T=0,M=0,O=!0;const I=function(e){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;const s=t[e%t.length];return null!==o?s[o%s.length]:s},N=t.length,A=o?o.row-e.row+1:0;for(r=o?A:Math.max(N,A),i=0;i<r&&!(o&&u.row>o.row&&A>N||!q.allowInsertRow&&u.row>V.countRows()-1||u.row>=q.maxRows);i++){const t=i-T,n=I(t).length,d=o?o.col-e.col+1:0;if(a=o?d:Math.max(n,d),u.col=e.col,_=V.getCellMeta(u.row,u.col),"CopyPaste.paste"!==s&&"Autofill.fill"!==s||!_.skipRowOnPaste){for(M=0,l=0;l<a&&!(o&&u.col>o.col&&d>n||!q.allowInsertColumn&&u.col>V.countCols()-1||u.col>=q.maxCols);l++){if(_=V.getCellMeta(u.row,u.col),("CopyPaste.paste"===s||"Autofill.fill"===s)&&_.skipColumnOnPaste){M+=1,u.col+=1,a+=1;continue}if(_.readOnly&&"UndoRedo.undo"!==s){u.col+=1;continue}let e=I(t,l-M),o=V.getDataAtCell(u.row,u.col);if(null!==e&&"object"==typeof e)if(Array.isArray(e)&&null===o&&(o=[]),null===o||"object"!=typeof o)O=!1;else{const t=(0,c.duckSchema)(Array.isArray(o)?o:o[0]||o),s=(0,c.duckSchema)(Array.isArray(e)?e:e[0]||e);(0,c.isObjectEqual)(t,s)||Array.isArray(t)&&Array.isArray(s)?e=(0,c.deepClone)(e):O=!1}else null!==o&&"object"==typeof o&&(O=!1);O&&h.push([u.row,u.col,e]),O=!0,u.col+=1}u.row+=1}else T+=1,u.row+=1,r+=1}V.setDataAtCell(h,null,null,s||"populateFromArray")}}},this.init=function(){B.setData(q.data),V.runHooks("beforeInit"),((0,l.isMobileBrowser)()||(0,l.isIpadOS)())&&(0,n.addClass)(V.rootElement,"mobile"),this.updateSettings(q,!0),this.view=new y.default(this),j=a.default.getInstance(V,q,Z),z=(0,A.createViewportScroller)(V),Y=new u.FocusManager(V),(0,b.isRootInstance)(this)&&(0,A.installFocusCatcher)(V),V.runHooks("init"),this.forceFullRender=!0,this.view.render(),G&&null===V.rootElement.offsetParent&&(0,n.observeVisibilityChangeOnce)(V.rootElement,(()=>{V.view._wt.wtOverlays.updateLastSpreaderSize(),V.render(),V.view.adjustElementsSize()})),"object"==typeof G&&(V.runHooks("afterChange",G[0],G[1]),G=!1),V.runHooks("afterInit")},this._createCellCoords=function(e,t){return V.view._wt.createCellCoords(e,t)},this._createCellRange=function(e,t,o){return V.view._wt.createCellRange(e,t,o)},this.validateCell=function(e,t,o,s){let n=V.getCellValidator(t);function l(e){if(!(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])||!0===t.hidden)return void o(e);const s=t.visualCol,n=t.visualRow,i=V.getCell(n,s,!0);if(i&&"TH"!==i.nodeName){const e=V.rowIndexMapper.getRenderableFromVisualIndex(n),t=V.columnIndexMapper.getRenderableFromVisualIndex(s);V.view._wt.getSetting("cellRenderer",e,t,i)}o(e)}var a;(0,r.isRegExp)(n)&&(a=n,n=function(e,t){t(a.test(e))}),(0,i.isFunction)(n)?(e=V.runHooks("beforeValidate",e,t.visualRow,t.prop,s),V._registerImmediate((()=>{n.call(t,e,(o=>{V&&(o=V.runHooks("afterValidate",o,e,t.visualRow,t.prop,s),t.valid=o,l(o),V.runHooks("postAfterValidate",o,e,t.visualRow,t.prop,s))}))}))):V._registerImmediate((()=>{t.valid=!0,l(t.valid,!1)}))},this.setDataAtCell=function(e,t,o,s){const n=le(e,t,o),i=[];let r,l,a,h=s;for(r=0,l=n.length;r<l;r++){if("object"!=typeof n[r])throw new Error("Method `setDataAtCell` accepts row number or changes array of arrays as its first parameter");if("number"!=typeof n[r][1])throw new Error("Method `setDataAtCell` accepts row and column number as its parameters. If you want to use object property name, use method `setDataAtRowProp`");a=n[r][1]>=this.countCols()?n[r][1]:W.colToProp(n[r][1]),i.push([n[r][0],a,B.getAtCell(this.toPhysicalRow(n[r][0]),n[r][1]),n[r][2]])}h||"object"!=typeof e||(h=t);const c=ae(i,s);V.runHooks("afterSetDataAtCell",c,h),ie(c,h,(()=>{re(c,h)}))},this.setDataAtRowProp=function(e,t,o,s){const n=le(e,t,o),i=[];let r,l,a=s;for(r=0,l=n.length;r<l;r++)i.push([n[r][0],n[r][1],B.getAtCell(this.toPhysicalRow(n[r][0]),n[r][1]),n[r][2]]);a||"object"!=typeof e||(a=t);const h=ae(i,s);V.runHooks("afterSetDataAtRowProp",h,a),ie(h,a,(()=>{re(h,a)}))},this.listen=function(){V&&!V.isListening()&&(L.forEach((e=>{V!==e&&e.unlisten()})),D=V.guid,V.runHooks("afterListen"))},this.unlisten=function(){this.isListening()&&(D=null,V.runHooks("afterUnlisten"))},this.isListening=function(){return D===V.guid},this.destroyEditor=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];j.closeEditor(e),V.view.render(),t&&Z.isSelected()&&j.prepareEditor()},this.populateFromArray=function(e,t,o,s,n,i,r){if("object"!=typeof o||"object"!=typeof o[0])throw new Error("populateFromArray parameter `input` must be an array of arrays");const l="number"==typeof s?V._createCellCoords(s,n):null;return U.populateFromArray(V._createCellCoords(e,t),o,l,i,r)},this.spliceCol=function(e,t,o){for(var s=arguments.length,n=new Array(s>3?s-3:0),i=3;i<s;i++)n[i-3]=arguments[i];return W.spliceCol(e,t,o,...n)},this.spliceRow=function(e,t,o){for(var s=arguments.length,n=new Array(s>3?s-3:0),i=3;i<s;i++)n[i-3]=arguments[i];return W.spliceRow(e,t,o,...n)},this.getSelected=function(){if(Z.isSelected())return(0,d.arrayMap)(Z.getSelectedRange(),(e=>{let{from:t,to:o}=e;return[t.row,t.col,o.row,o.col]}))},this.getSelectedLast=function(){const e=this.getSelected();let t;return e&&e.length>0&&(t=e[e.length-1]),t},this.getSelectedRange=function(){if(Z.isSelected())return Array.from(Z.getSelectedRange())},this.getSelectedRangeLast=function(){const e=this.getSelectedRange();let t;return e&&e.length>0&&(t=e[e.length-1]),t},this.emptySelectedCells=function(e){if(!Z.isSelected()||0===this.countRows()||0===this.countCols())return;const t=[];(0,d.arrayEach)(Z.getSelectedRange(),(e=>{if(e.isSingleHeader())return;const o=e.getTopStartCorner(),s=e.getBottomEndCorner();(0,v.rangeEach)(o.row,s.row,(e=>{(0,v.rangeEach)(o.col,s.col,(o=>{this.getCellMeta(e,o).readOnly||t.push([e,o,null])}))}))})),t.length>0&&this.setDataAtCell(t,e)},this.isRenderSuspended=function(){return this.renderSuspendedCounter>0},this.suspendRender=function(){this.renderSuspendedCounter+=1},this.resumeRender=function(){const e=this.renderSuspendedCounter-1;this.renderSuspendedCounter=Math.max(e,0),this.isRenderSuspended()||e!==this.renderSuspendedCounter||(this.renderCall?this.render():V.view.render())},this.render=function(){this.view&&(this.renderCall=!0,this.forceFullRender=!0,this.isRenderSuspended()||V.view.render())},this.batchRender=function(e){this.suspendRender();const t=e();return this.resumeRender(),t},this.isExecutionSuspended=function(){return this.executionSuspendedCounter>0},this.suspendExecution=function(){this.executionSuspendedCounter+=1,this.columnIndexMapper.suspendOperations(),this.rowIndexMapper.suspendOperations()},this.resumeExecution=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=this.executionSuspendedCounter-1;this.executionSuspendedCounter=Math.max(t,0),(!this.isExecutionSuspended()&&t===this.executionSuspendedCounter||e)&&(this.columnIndexMapper.resumeOperations(),this.rowIndexMapper.resumeOperations())},this.batchExecution=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.suspendExecution();const o=e();return this.resumeExecution(t),o},this.batch=function(e){this.suspendRender(),this.suspendExecution();const t=e();return this.resumeExecution(),this.resumeRender(),t},this.refreshDimensions=function(){if(!V.view)return;const{width:e,height:t}=V.view.getLastSize(),{width:o,height:s}=V.rootElement.getBoundingClientRect(),n=o!==e||s!==t;!1===V.runHooks("beforeRefreshDimensions",{width:e,height:t},{width:o,height:s},n)||((n||V.view._wt.wtOverlays.scrollableElement===V.rootWindow)&&(V.view.setLastSize(o,s),V.render()),V.runHooks("afterRefreshDimensions",{width:e,height:t},{width:o,height:s},n))},this.updateData=function(e,t){(0,N.replaceData)(e,(e=>{W=e}),(e=>{W=e,V.columnIndexMapper.fitToLength(this.getInitialColumnCount()),V.rowIndexMapper.fitToLength(this.countSourceRows()),U.adjustRowsAndCols(),Z.refresh()}),{hotInstance:V,dataMap:W,dataSource:B,internalSource:"updateData",source:t,metaManager:X,firstRun:G})},this.loadData=function(e,t){(0,N.replaceData)(e,(e=>{W=e}),(()=>{X.clearCellsCache(),V.initIndexMappers(),U.adjustRowsAndCols(),Z.refresh(),G&&(G=[null,"loadData"])}),{hotInstance:V,dataMap:W,dataSource:B,internalSource:"loadData",source:t,metaManager:X,firstRun:G})},this.getInitialColumnCount=function(){const e=q.columns;let t=0;if(Array.isArray(e))t=e.length;else if((0,i.isFunction)(e))if("array"===V.dataType){const o=this.countSourceCols();for(let s=0;s<o;s+=1)e(s)&&(t+=1)}else"object"!==V.dataType&&"function"!==V.dataType||(t=W.colToPropCache.length);else if((0,r.isDefined)(q.dataSchema)){const e=W.getSchema();t=Array.isArray(e)?e.length:(0,c.deepObjectSize)(e)}else t=this.countSourceCols();return t},this.initIndexMappers=function(){this.columnIndexMapper.initToLength(this.getInitialColumnCount()),this.rowIndexMapper.initToLength(this.countSourceRows())},this.getData=function(e,t,o,s){return(0,r.isUndefined)(e)?W.getAll():W.getRange(V._createCellCoords(e,t),V._createCellCoords(o,s),W.DESTINATION_RENDERER)},this.getCopyableText=function(e,t,o,s){return W.getCopyableText(V._createCellCoords(e,t),V._createCellCoords(o,s))},this.getCopyableData=function(e,t){return W.getCopyable(e,W.colToProp(t))},this.getSchema=function(){return W.getSchema()},this.updateSettings=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const o=(G?V.loadData:V.updateData).bind(this);let s,n,l=!1;if((0,r.isDefined)(e.rows))throw new Error('The "rows" setting is no longer supported. Do you mean startRows, minRows or maxRows?');if((0,r.isDefined)(e.cols))throw new Error('The "cols" setting is no longer supported. Do you mean startCols, minCols or maxCols?');if((0,r.isDefined)(e.ganttChart))throw new Error('Since 8.0.0 the "ganttChart" setting is no longer supported.');for(s in e)"data"===s||("language"===s?te(e.language):"className"===s?oe("className",e.className):"tableClassName"===s&&V.table?(oe("tableClassName",e.tableClassName),V.view._wt.wtOverlays.syncOverlayTableClassNames()):T.default.getSingleton().isRegistered(s)||T.default.getSingleton().isDeprecated(s)?((0,i.isFunction)(e[s])||Array.isArray(e[s]))&&(e[s].initialHook=!0,V.addHook(s,e[s])):!t&&(0,c.hasOwnProperty)(e,s)&&(Q[s]=e[s]));void 0===e.data&&void 0===q.data?o(null,"updateSettings"):void 0!==e.data?o(e.data,"updateSettings"):void 0!==e.columns&&(W.createMap(),V.initIndexMappers());const a=V.countCols(),h=q.columns;if(h&&(0,i.isFunction)(h)&&(l=!0),void 0===e.cell&&void 0===e.cells&&void 0===e.columns||X.clearCache(),a>0)for(s=0,n=0;s<a;s++){if(h){const e=l?h(s):h[n];e&&X.updateColumnMeta(n,e)}n+=1}(0,r.isDefined)(e.cell)&&(0,c.objectEach)(e.cell,(e=>{V.setCellMetaObject(e.row,e.col,e)})),V.runHooks("afterCellMetaReset");let u=V.rootElement.style.height;""!==u&&(u=parseInt(V.rootElement.style.height,10));let d=e.height;if((0,i.isFunction)(d)&&(d=d()),t){V.rootElement.getAttribute("style")&&V.rootElement.setAttribute("data-initialstyle",V.rootElement.getAttribute("style"))}if(null===d){const e=V.rootElement.getAttribute("data-initialstyle");e&&(e.indexOf("height")>-1||e.indexOf("overflow")>-1)?V.rootElement.setAttribute("style",e):(V.rootElement.style.height="",V.rootElement.style.overflow="")}else void 0!==d&&(V.rootElement.style.height=isNaN(d)?`${d}`:`${d}px`,V.rootElement.style.overflow="hidden");if(void 0!==e.width){let t=e.width;(0,i.isFunction)(t)&&(t=t()),V.rootElement.style.width=isNaN(t)?`${t}`:`${t}px`}t||(V.view&&(V.view._wt.wtViewport.resetHasOversizedColumnHeadersMarked(),V.view._wt.exportSettingsAsClassNames()),V.runHooks("afterUpdateSettings",e)),U.adjustRowsAndCols(),V.view&&!G&&(V.forceFullRender=!0,V.view.render(),V.view._wt.wtOverlays.adjustElementsSize()),t||!V.view||""!==u&&""!==d&&void 0!==d||u===d||V.view._wt.wtOverlays.updateMainScrollableElements()},this.getValue=function(){const e=V.getSelectedLast();if(q.getValue){if((0,i.isFunction)(q.getValue))return q.getValue.call(V);if(e)return V.getData()[e[0][0]][q.getValue]}else if(e)return V.getDataAtCell(e[0],e[1])},this.getSettings=function(){return q},this.clear=function(){this.selectAll(),this.emptySelectedCells()},this.alter=function(e,t,o,s,n){U.alter(e,t,o,s,n)},this.getCell=function(e,t){let o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],s=t,n=e;if(t>=0){if(this.columnIndexMapper.isHidden(this.toPhysicalColumn(t)))return null;s=this.columnIndexMapper.getRenderableFromVisualIndex(t)}if(e>=0){if(this.rowIndexMapper.isHidden(this.toPhysicalRow(e)))return null;n=this.rowIndexMapper.getRenderableFromVisualIndex(e)}return null===n||null===s||void 0===n||void 0===s?null:V.view.getCellAtCoords(V._createCellCoords(n,s),o)},this.getCoords=function(e){const t=this.view._wt.wtTable.getCoords(e);if(null===t)return null;const{row:o,col:s}=t;let n=o,i=s;return o>=0&&(n=this.rowIndexMapper.getVisualFromRenderableIndex(o)),s>=0&&(i=this.columnIndexMapper.getVisualFromRenderableIndex(s)),V._createCellCoords(n,i)},this.colToProp=function(e){return W.colToProp(e)},this.propToCol=function(e){return W.propToCol(e)},this.toVisualRow=e=>this.rowIndexMapper.getVisualFromPhysicalIndex(e),this.toVisualColumn=e=>this.columnIndexMapper.getVisualFromPhysicalIndex(e),this.toPhysicalRow=e=>this.rowIndexMapper.getPhysicalFromVisualIndex(e),this.toPhysicalColumn=e=>this.columnIndexMapper.getPhysicalFromVisualIndex(e),this.getDataAtCell=function(e,t){return W.get(e,W.colToProp(t))},this.getDataAtRowProp=function(e,t){return W.get(e,t)},this.getDataAtCol=function(e){const t=[],o=W.getRange(V._createCellCoords(0,e),V._createCellCoords(q.data.length-1,e),W.DESTINATION_RENDERER);for(let e=0;e<o.length;e+=1)for(let s=0;s<o[e].length;s+=1)t.push(o[e][s]);return t},this.getDataAtProp=function(e){const t=[],o=W.getRange(V._createCellCoords(0,W.propToCol(e)),V._createCellCoords(q.data.length-1,W.propToCol(e)),W.DESTINATION_RENDERER);for(let e=0;e<o.length;e+=1)for(let s=0;s<o[e].length;s+=1)t.push(o[e][s]);return t},this.getSourceData=function(e,t,o,s){let n;return n=void 0===e?B.getData():B.getByRange(V._createCellCoords(e,t),V._createCellCoords(o,s)),n},this.getSourceDataArray=function(e,t,o,s){let n;return n=void 0===e?B.getData(!0):B.getByRange(V._createCellCoords(e,t),V._createCellCoords(o,s),!0),n},this.getSourceDataAtCol=function(e){return B.getAtColumn(e)},this.setSourceDataAtCell=function(e,t,o,s){const n=le(e,t,o),i=this.hasHook("afterSetSourceDataAtCell"),l=[];i&&(0,d.arrayEach)(n,(e=>{let[t,o,s]=e;l.push([t,o,B.getAtCell(t,o),s])})),(0,d.arrayEach)(n,(e=>{let[t,o,s]=e;B.setAtCell(t,o,s)})),i&&this.runHooks("afterSetSourceDataAtCell",l,s),this.render();const a=V.getActiveEditor();a&&(0,r.isDefined)(a.refreshValue)&&a.refreshValue()},this.getSourceDataAtRow=function(e){return B.getAtRow(e)},this.getSourceDataAtCell=function(e,t){return B.getAtCell(e,t)},this.getDataAtRow=function(e){return W.getRange(V._createCellCoords(e,0),V._createCellCoords(e,this.countCols()-1),W.DESTINATION_RENDERER)[0]||[]},this.getDataType=function(e,t,o,s){const n=void 0===e?[0,0,this.countRows(),this.countCols()]:[e,t,o,s],[i,r]=n;let[,,l,a]=n,h=null,c=null;void 0===l&&(l=i),void 0===a&&(a=r);let u="mixed";return(0,v.rangeEach)(Math.max(Math.min(i,l),0),Math.max(i,l),(e=>{let t=!0;return(0,v.rangeEach)(Math.max(Math.min(r,a),0),Math.max(r,a),(o=>{const s=this.getCellMeta(e,o);return c=s.type,h?t=h===c:h=c,t})),u=t?c:"mixed",t})),u},this.removeCellMeta=function(e,t,o){const[s,n]=[this.toPhysicalRow(e),this.toPhysicalColumn(t)];let i=X.getCellMetaKeyValue(s,n,o);!1!==V.runHooks("beforeRemoveCellMeta",e,t,o,i)&&(X.removeCellMeta(s,n,o),V.runHooks("afterRemoveCellMeta",e,t,o,i)),i=null},this.spliceCellsMeta=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;for(var o=arguments.length,s=new Array(o>2?o-2:0),n=2;n<o;n++)s[n-2]=arguments[n];if(s.length>0&&!Array.isArray(s[0]))throw new Error("The 3rd argument (cellMetaRows) has to be passed as an array of cell meta objects array.");t>0&&X.removeRow(this.toPhysicalRow(e),t),s.length>0&&(0,d.arrayEach)(s.reverse(),(t=>{X.createRow(this.toPhysicalRow(e)),(0,d.arrayEach)(t,((t,o)=>this.setCellMetaObject(e,o,t)))})),V.render()},this.setCellMetaObject=function(e,t,o){"object"==typeof o&&(0,c.objectEach)(o,((o,s)=>{this.setCellMeta(e,t,s,o)}))},this.setCellMeta=function(e,t,o,s){if(!1===V.runHooks("beforeSetCellMeta",e,t,o,s))return;let n=e,i=t;e<this.countRows()&&(n=this.toPhysicalRow(e)),t<this.countCols()&&(i=this.toPhysicalColumn(t)),X.setCellMeta(n,i,o,s),V.runHooks("afterSetCellMeta",e,t,o,s)},this.getCellsMeta=function(){return X.getCellsMeta()},this.getCellMeta=function(e,t){let o=this.toPhysicalRow(e),s=this.toPhysicalColumn(t);return null===o&&(o=e),null===s&&(s=t),X.getCellMeta(o,s,{visualRow:e,visualColumn:t})},this.getColumnMeta=function(e){return X.getColumnMeta(this.toPhysicalColumn(e))},this.getCellMetaAtRow=function(e){return X.getCellsMetaAtRow(e)},this.isColumnModificationAllowed=function(){return!("object"===V.dataType||q.columns)},this.getCellRenderer=function(e,t){const o="number"==typeof e?V.getCellMeta(e,t).renderer:e.renderer;return"string"==typeof o?(0,p.getRenderer)(o):(0,r.isUndefined)(o)?(0,p.getRenderer)("text"):o},this.getCellEditor=function(e,t){const o="number"==typeof e?V.getCellMeta(e,t).editor:e.editor;return"string"==typeof o?(0,m.getEditor)(o):(0,r.isUndefined)(o)?(0,m.getEditor)("text"):o},this.getCellValidator=function(e,t){const o="number"==typeof e?V.getCellMeta(e,t).validator:e.validator;return"string"==typeof o?(0,w.getValidator)(o):o},this.validateCells=function(e){this._validateCells(e)},this.validateRows=function(e,t){if(!Array.isArray(e))throw new Error("validateRows parameter `rows` must be an array");this._validateCells(t,e)},this.validateColumns=function(e,t){if(!Array.isArray(e))throw new Error("validateColumns parameter `columns` must be an array");this._validateCells(t,void 0,e)},this._validateCells=function(e,t,o){const s=new se;e&&(s.onQueueEmpty=e);let n=V.countRows()-1;for(;n>=0;){if(void 0!==t&&-1===t.indexOf(n)){n-=1;continue}let e=V.countCols()-1;for(;e>=0;)void 0===o||-1!==o.indexOf(e)?(s.addValidatorToQueue(),V.validateCell(V.getDataAtCell(n,e),V.getCellMeta(n,e),(e=>{if("boolean"!=typeof e)throw new Error("Validation error: result is not boolean");!1===e&&(s.valid=!1),s.removeValidatorFormQueue()}),"validateCells"),e-=1):e-=1;n-=1}s.checkIfQueueIsEmpty()},this.getRowHeader=function(e){let t=q.rowHeaders,o=e;return void 0!==o&&(o=V.runHooks("modifyRowHeader",o)),void 0===o?(t=[],(0,v.rangeEach)(V.countRows()-1,(e=>{t.push(V.getRowHeader(e))}))):Array.isArray(t)&&void 0!==t[o]?t=t[o]:(0,i.isFunction)(t)?t=t(o):t&&"string"!=typeof t&&"number"!=typeof t&&(t=o+1),t},this.hasRowHeaders=function(){return!!q.rowHeaders},this.hasColHeaders=function(){if(void 0!==q.colHeaders&&null!==q.colHeaders)return!!q.colHeaders;for(let e=0,t=V.countCols();e<t;e++)if(V.getColHeader(e))return!0;return!1},this.getColHeader=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;const o=V.runHooks("modifyColHeader",e);if(void 0===o){const e=[],t=V.countCols();for(let o=0;o<t;o++)e.push(V.getColHeader(o));return e}let s=q.colHeaders;const n=V.toPhysicalColumn(o),r=function(e){const t=[],o=V.countCols();let s=0;for(;s<o;s++)(0,i.isFunction)(q.columns)&&q.columns(s)&&t.push(s);return t[e]}(n);return!1===q.colHeaders?s=null:q.columns&&(0,i.isFunction)(q.columns)&&q.columns(r)&&q.columns(r).title?s=q.columns(r).title:q.columns&&q.columns[n]&&q.columns[n].title?s=q.columns[n].title:Array.isArray(q.colHeaders)&&void 0!==q.colHeaders[n]?s=q.colHeaders[n]:(0,i.isFunction)(q.colHeaders)?s=q.colHeaders(n):q.colHeaders&&"string"!=typeof q.colHeaders&&"number"!=typeof q.colHeaders&&(s=(0,S.spreadsheetColumnLabel)(o)),s=V.runHooks("modifyColumnHeaderValue",s,e,t),s},this._getColWidthFromSettings=function(e){let t;if(e>=0){t=V.getCellMeta(0,e).width}if(void 0!==t&&t!==q.width||(t=q.colWidths),null!=t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getColWidth=function(e){let t=V._getColWidthFromSettings(e);return t=V.runHooks("modifyColWidth",t,e),void 0===t&&(t=_.DEFAULT_COLUMN_WIDTH),t},this._getRowHeightFromSettings=function(e){let t=q.rowHeights;if(null!=t){switch(typeof t){case"object":t=t[e];break;case"function":t=t(e)}"string"==typeof t&&(t=parseInt(t,10))}return t},this.getRowHeight=function(e){let t=V._getRowHeightFromSettings(e);return t=V.runHooks("modifyRowHeight",t,e),t},this.countSourceRows=function(){return B.countRows()},this.countSourceCols=function(){return B.countFirstRowKeys()},this.countRows=function(){return W.getLength()},this.countCols=function(){const e=q.maxCols,t=this.columnIndexMapper.getNotTrimmedIndexesLength();return Math.min(e,t)},this.countRenderedRows=function(){return V.view._wt.drawn?V.view._wt.wtTable.getRenderedRowsCount():-1},this.countVisibleRows=function(){return V.view._wt.drawn?V.view._wt.wtTable.getVisibleRowsCount():-1},this.countRenderedCols=function(){return V.view._wt.drawn?V.view._wt.wtTable.getRenderedColumnsCount():-1},this.countVisibleCols=function(){return V.view._wt.drawn?V.view._wt.wtTable.getVisibleColumnsCount():-1},this.countRowHeaders=function(){return this.view.getRowHeadersCount()},this.countColHeaders=function(){return this.view.getColumnHeadersCount()},this.countEmptyRows=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=0;return(0,v.rangeEachReverse)(V.countRows()-1,(o=>{if(V.isEmptyRow(o))t+=1;else if(!0===e)return!1})),t},this.countEmptyCols=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=0;return(0,v.rangeEachReverse)(V.countCols()-1,(o=>{if(V.isEmptyCol(o))t+=1;else if(!0===e)return!1})),t},this.isEmptyRow=function(e){return q.isEmptyRow.call(V,e)},this.isEmptyCol=function(e){return q.isEmptyCol.call(V,e)},this.selectCell=function(e,t,o,s){let n=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];return!(0,r.isUndefined)(e)&&!(0,r.isUndefined)(t)&&this.selectCells([[e,t,o,s]],n,i)},this.selectCells=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[[]],t=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];!1===(!(arguments.length>1&&void 0!==arguments[1])||arguments[1])&&z.suspend();const o=Z.selectCells(e);return o&&t&&V.listen(),z.resume(),o},this.selectColumns=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=arguments.length>2?arguments[2]:void 0;return Z.selectColumns(e,t,o)},this.selectRows=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=arguments.length>2?arguments[2]:void 0;return Z.selectRows(e,t,o)},this.deselectCell=function(){Z.deselect()},this.selectAll=function(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=arguments.length>2?arguments[2]:void 0;z.skipNextScrollCycle(),Z.selectAll(e,t,o)};const he=(e,t)=>e.getNearestNotHiddenIndex(t,1,!0);this.scrollViewportTo=function(e){var t,o;"number"==typeof e&&(e={row:arguments[0],col:arguments[1],verticalSnap:arguments[2]?"bottom":"top",horizontalSnap:arguments[3]?"end":"start",considerHiddenIndexes:null===(o=arguments[4])||void 0===o||o});const{row:s,col:n,verticalSnap:i,horizontalSnap:r,considerHiddenIndexes:l}=null!==(t=e)&&void 0!==t?t:{};let a,h,c,u;void 0!==i&&(a="top"===i,h=!a),void 0!==r&&(c="start"===r,u=!c);let d=s,g=n;if(void 0===l||l){const e=Number.isInteger(s)&&s>=0,t=Number.isInteger(n)&&n>=0,o=e?he(this.rowIndexMapper,s):void 0,i=t?he(this.columnIndexMapper,n):void 0;if(null===o||null===i)return!1;d=e?V.rowIndexMapper.getRenderableFromVisualIndex(o):s,g=t?V.columnIndexMapper.getRenderableFromVisualIndex(i):n}const f=Number.isInteger(d),p=Number.isInteger(g);return f&&d>=0&&p&&g>=0?V.view.scrollViewport(V._createCellCoords(d,g),a,u,h,c):f&&d>=0&&(p&&g<0||!p)?V.view.scrollViewportVertically(d,a,h):!!(p&&g>=0&&(f&&d<0||!f))&&V.view.scrollViewportHorizontally(g,u,c)},this.scrollToFocusedCell=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:()=>{};if(!this.selection.isSelected())return;this.addHookOnce("afterScroll",e);const{highlight:t}=this.getSelectedRangeLast();this.scrollViewportTo(t.toObject())?this.view.render():(this.removeHook("afterScroll",e),this._registerImmediate((()=>e())))},this.destroy=function(){if(V._clearTimeouts(),V._clearImmediates(),V.view&&V.view.destroy(),B&&B.destroy(),B=null,this.getShortcutManager().destroy(),X.clearCache(),L.delete(this.guid),(0,b.isRootInstance)(V)){const e=this.rootDocument.querySelector(".hot-display-license-info");e&&e.parentNode.removeChild(e)}(0,n.empty)(V.rootElement),F.destroy(),j&&j.destroy(),V.batchExecution((()=>{V.rowIndexMapper.unregisterAll(),V.columnIndexMapper.unregisterAll(),J.getItems().forEach((e=>{let[,t]=e;t.destroy()})),J.clear(),V.runHooks("afterDestroy")}),!0),T.default.getSingleton().destroy(V),(0,c.objectEach)(V,((e,t,o)=>{var s;(0,i.isFunction)(e)?o[t]=(s=t,()=>{throw new Error(`The "${s}" method cannot be called because this Handsontable instance has been destroyed`)}):"guid"!==t&&(o[t]=null)})),V.isDestroyed=!0,W&&W.destroy(),W=null,U=null,Z=null,j=null,V=null},this.getActiveEditor=function(){return j.getActiveEditor()},this.getFirstRenderedVisibleRow=function(){return V.view.getFirstRenderedVisibleRow()},this.getLastRenderedVisibleRow=function(){return V.view.getLastRenderedVisibleRow()},this.getFirstRenderedVisibleColumn=function(){return V.view.getFirstRenderedVisibleColumn()},this.getLastRenderedVisibleColumn=function(){return V.view.getLastRenderedVisibleColumn()},this.getFirstFullyVisibleRow=function(){return V.view.getFirstFullyVisibleRow()},this.getLastFullyVisibleRow=function(){return V.view.getLastFullyVisibleRow()},this.getFirstFullyVisibleColumn=function(){return V.view.getFirstFullyVisibleColumn()},this.getLastFullyVisibleColumn=function(){return V.view.getLastFullyVisibleColumn()},this.getFirstPartiallyVisibleRow=function(){return V.view.getFirstPartiallyVisibleRow()},this.getLastPartiallyVisibleRow=function(){return V.view.getLastPartiallyVisibleRow()},this.getFirstPartiallyVisibleColumn=function(){return V.view.getFirstPartiallyVisibleColumn()},this.getLastPartiallyVisibleColumn=function(){return V.view.getLastPartiallyVisibleColumn()},this.getPlugin=function(e){const t=(0,C.toUpperCaseFirst)(e);return"UndoRedo"===t?this.undoRedo:J.getItem(t)},this.getPluginName=function(e){return e===this.undoRedo?this.undoRedo.constructor.PLUGIN_KEY:J.getId(e)},this.getInstance=function(){return V},this.addHook=function(e,t,o){T.default.getSingleton().add(e,t,V,o)},this.hasHook=function(e){return T.default.getSingleton().has(e,V)||T.default.getSingleton().has(e)},this.addHookOnce=function(e,t,o){T.default.getSingleton().once(e,t,V,o)},this.removeHook=function(e,t){T.default.getSingleton().remove(e,t,V)},this.runHooks=function(e,t,o,s,n,i,r){return T.default.getSingleton().run(V,e,t,o,s,n,i,r)},this.getTranslatedPhrase=function(e,t){return(0,M.getTranslatedPhrase)(q.language,e,t)},this.toHTML=()=>(0,g.instanceToHTML)(this),this.toTableElement=()=>{const e=this.rootDocument.createElement("div");return e.insertAdjacentHTML("afterbegin",(0,g.instanceToHTML)(this)),e.firstElementChild},this.timeouts=[],this._registerTimeout=function(e){let t=e;"function"==typeof t&&(t=setTimeout(t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0)),this.timeouts.push(t)},this._clearTimeouts=function(){(0,d.arrayEach)(this.timeouts,(e=>{clearTimeout(e)}))},this.immediates=[],this._registerImmediate=function(e){this.immediates.push(setImmediate(e))},this._clearImmediates=function(){(0,d.arrayEach)(this.immediates,(e=>{clearImmediate(e)}))},this._getEditorManager=function(){return j},this.isRtl=function(){return"rtl"===V.rootWindow.getComputedStyle(V.rootElement).direction},this.isLtr=function(){return!V.isRtl()},this.getDirectionFactor=function(){return V.isLtr()?1:-1};const ce=(0,x.createShortcutManager)({handleEvent:()=>V.isListening(),beforeKeyDown:e=>this.runHooks("beforeKeyDown",e),afterKeyDown:e=>{this.isDestroyed||V.runHooks("afterDocumentKeyDown",e)},ownerWindow:this.rootWindow});this.addHook("beforeOnCellMouseDown",(e=>{!1===e.ctrlKey&&!1===e.metaKey&&ce.releasePressedKeys()})),this.getShortcutManager=function(){return ce},this.getFocusManager=function(){return Y},(0,f.getPluginsNames)().forEach((e=>{const t=(0,f.getPlugin)(e);J.addItem(e,new t(this))})),(0,H.registerAllShortcutContexts)(V),ce.setActiveContextName("grid"),T.default.getSingleton().run(V,"construct")},o(67834),o(15724),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620),o(71766);var n=o(9893),i=o(78832),r=o(38893),l=o(28890),a=s(o(18344)),h=s(o(82629)),c=o(13911),u=o(26505),d=o(9175),g=o(74737),f=o(90532),p=o(44288),m=o(84558),w=o(51255),C=o(59777),v=o(87485),y=s(o(66801)),E=s(o(12248)),S=o(56216),R=o(93969),b=o(11015),_=o(90),T=s(o(56937)),M=o(74174),O=o(75032),I=o(73497),N=o(71757),A=o(48246),P=o(84134),x=o(57660),H=o(37947);let D=null;const L=new Map;new Set},63745:(e,t,o)=>{"use strict";t.__esModule=!0,t.installFocusDetector=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const o=e.rootElement,s=i(e),n=i(e);return s.addEventListener("focus",(()=>null==t?void 0:t.onFocusFromTop())),n.addEventListener("focus",(()=>null==t?void 0:t.onFocusFromBottom())),o.firstChild.before(s),o.lastChild.after(n),{activate(){e._registerTimeout((()=>{s.tabIndex=0,n.tabIndex=0}),10)},deactivate(){e._registerTimeout((()=>{s.tabIndex=-1,n.tabIndex=-1}),10)}}};var s=o(9893),n=o(92692);function i(e){const t=e.rootDocument.createElement("input");return t.type="text",t.classList.add("htFocusCatcher"),e.getSettings().ariaTags&&(0,s.setAttribute)(t,[(0,n.A11Y_PRESENTATION)(),(0,n.A11Y_HIDDEN)()]),t}},71563:(e,t,o)=>{"use strict";t.__esModule=!0,t.installFocusCatcher=function(e){const t=function(e){return t=>{if(!t)return null;const o=i(e),s=r(e);return t.col<o.col&&(t.col=o.col),t.col>s.col&&(t.col=s.col),t.row<o.row&&(t.row=o.row),t.row>s.row&&(t.row=s.row),t}}(e);let o;const{activate:l,deactivate:a}=(0,n.installFocusDetector)(e,{onFocusFromTop(){var s;const n=null!==(s=t(o))&&void 0!==s?s:i(e);n&&(e.runHooks("modifyFocusOnTabNavigation","from_above",n),e.selectCell(n.row,n.col)),e.listen()},onFocusFromBottom(){var s;const n=null!==(s=t(o))&&void 0!==s?s:r(e);n&&(e.runHooks("modifyFocusOnTabNavigation","from_below",n),e.selectCell(n.row,n.col)),e.listen()}}),h={wrapped:!1,flipped:!1};let c=!0,u=!1,d=!1;e.addHook("afterListen",(()=>a())),e.addHook("afterUnlisten",(()=>l())),e.addHook("afterSelection",((t,s,n,i,r)=>{var l;(u&&(h.wrapped&&h.flipped||d)&&(d=!1,r.value=!0),c)&&(o=null===(l=e.getSelectedRangeLast())||void 0===l?void 0:l.highlight)})),e.addHook("beforeRowWrap",((e,t,o)=>{h.wrapped=!0,h.flipped=o}));const g={keys:[["Tab"],["Shift","Tab"]],preventDefault:!1,stopPropagation:!1,relativeToGroup:s.GRID_GROUP,group:"focusCatcher"};e.getShortcutManager().getContext("grid").addShortcuts([{...g,callback:()=>{const{tabNavigation:t}=e.getSettings();u=!0,e.getSelectedRangeLast()&&!t&&(c=!1),t||(d=!0)},position:"before"},{...g,callback:t=>{const{tabNavigation:s,autoWrapRow:n}=e.getSettings();if(u=!1,c=!0,!s||!e.selection.isSelected()||n&&h.wrapped&&h.flipped||!n&&h.wrapped)return n&&h.wrapped&&h.flipped&&(o=t.shiftKey?i(e):r(e)),h.wrapped=!1,h.flipped=!1,e.deselectCell(),e.unlisten(),!1;t.preventDefault()},position:"after"}])};var s=o(37947),n=o(63745);function i(e){const{rowIndexMapper:t,columnIndexMapper:o}=e,{navigableHeaders:s}=e.getSettings();let n=s&&e.countColHeaders()>0?-e.countColHeaders():0,i=s&&e.countRowHeaders()>0?-e.countRowHeaders():0;return 0===n&&(n=t.getVisualFromRenderableIndex(n)),0===i&&(i=o.getVisualFromRenderableIndex(i)),null===n||null===i?null:e._createCellCoords(n,i)}function r(e){var t,o;const{rowIndexMapper:s,columnIndexMapper:n}=e,{navigableHeaders:i}=e.getSettings();let r=s.getRenderableIndexesLength()-1,l=n.getRenderableIndexesLength()-1;if(r<0){if(!i||0===e.countColHeaders())return null;r=-1}if(l<0){if(!i||0===e.countColHeaders())return null;l=-1}return e._createCellCoords(null!==(t=s.getVisualFromRenderableIndex(r))&&void 0!==t?t:r,null!==(o=n.getVisualFromRenderableIndex(l))&&void 0!==o?o:l)}},48246:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(71563);Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===s[e]||(t[e]=s[e]))}));var n=o(44428);Object.keys(n).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===n[e]||(t[e]=n[e]))}))},44428:(e,t,o)=>{"use strict";t.__esModule=!0,t.createViewportScroller=function(e){const{selection:t}=e;let o=!1,c=!1;return{resume(){c=!1},suspend(){c=!0},skipNextScrollCycle(){o=!0},scrollTo(u){var d;if(o||c)return void(o=!1);let g;t.isFocusSelectionChanged()?g=(0,i.focusScrollStrategy)(e):t.isSelectedByCorner()?g=(0,n.cornerHeaderScrollStrategy)(e):t.isSelectedByRowHeader()?g=(0,a.rowHeaderScrollStrategy)(e):t.isSelectedByColumnHeader()?g=(0,s.columnHeaderScrollStrategy)(e):1===t.getSelectedRange().size()&&t.isMultiple()?g=(0,r.multipleScrollStrategy)(e):1!==t.getSelectedRange().size()||t.isMultiple()?t.getSelectedRange().size()>1&&(g=(0,l.noncontiguousScrollStrategy)(e)):g=(0,h.singleScrollStrategy)(e),null===(d=g)||void 0===d||d(u)}}};var s=o(9635),n=o(5696),i=o(88948),r=o(29980),l=o(3011),a=o(44745),h=o(8248)},9635:(e,t)=>{"use strict";t.__esModule=!0,t.columnHeaderScrollStrategy=function(e){return t=>{let{col:o}=t;e.scrollViewportTo({col:o})}}},5696:(e,t)=>{"use strict";t.__esModule=!0,t.cornerHeaderScrollStrategy=function(){return()=>{}}},88948:(e,t)=>{"use strict";t.__esModule=!0,t.focusScrollStrategy=function(e){return t=>{e.scrollViewportTo(t.toObject())}}},29980:(e,t)=>{"use strict";t.__esModule=!0,t.multipleScrollStrategy=function(e){return t=>{e.scrollViewportTo(t.toObject())}}},3011:(e,t)=>{"use strict";t.__esModule=!0,t.noncontiguousScrollStrategy=function(e){return t=>{e.scrollViewportTo(t.toObject())}}},44745:(e,t)=>{"use strict";t.__esModule=!0,t.rowHeaderScrollStrategy=function(e){return t=>{let{row:o}=t;e.scrollViewportTo({row:o})}}},8248:(e,t)=>{"use strict";t.__esModule=!0,t.singleScrollStrategy=function(e){return t=>{const o=e.selection.getSelectionSource(),{row:s,col:n}=t;if(s<0&&n>=0)e.scrollViewportTo({col:n});else if(n<0&&s>=0)e.scrollViewportTo({row:s});else{if("mouse"===o&&(n===e.view.getLastPartiallyVisibleColumn()||s===e.view.getLastPartiallyVisibleRow()))return;e.scrollViewportTo({row:s,col:n})}}}},87727:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724);var n=s(o(85707)),i=o(55518),r=o(56216),l=o(13911),a=o(9175),h=o(87485),c=o(38893);class u{static get DESTINATION_RENDERER(){return 1}static get DESTINATION_CLIPBOARD_GENERATOR(){return 2}constructor(e,t,o){(0,n.default)(this,"hot",void 0),(0,n.default)(this,"metaManager",void 0),(0,n.default)(this,"tableMeta",void 0),(0,n.default)(this,"dataSource",void 0),(0,n.default)(this,"duckSchema",void 0),(0,n.default)(this,"colToPropCache",void 0),(0,n.default)(this,"propToColCache",void 0),this.hot=e,this.metaManager=o,this.tableMeta=o.getTableMeta(),this.dataSource=t,this.duckSchema=this.createDuckSchema(),this.createMap()}createMap(){const e=this.getSchema();if(void 0===e)throw new Error("trying to create `columns` definition but you didn't provide `schema` nor `data`");const t=this.tableMeta.columns;let o;if(this.colToPropCache=[],this.propToColCache=new Map,t){let s=0,n=0,i=!1;if("function"==typeof t){const t=(0,l.deepObjectSize)(e);s=t>0?t:this.countFirstRowKeys(),i=!0}else{const e=this.tableMeta.maxCols;s=Math.min(e,t.length)}for(o=0;o<s;o++){const e=i?t(o):t[o];if((0,l.isObject)(e)){if(void 0!==e.data){const t=i?n:o;this.colToPropCache[t]=e.data,this.propToColCache.set(e.data,t)}n+=1}}}else this.recursiveDuckColumns(e)}countFirstRowKeys(){return(0,r.countFirstRowKeys)(this.dataSource)}recursiveDuckColumns(e,t,o){let s,n=t,i=o;return void 0===n&&(n=0,i=""),"object"!=typeof e||Array.isArray(e)||(0,l.objectEach)(e,((e,t)=>{null===e?(s=i+t,this.colToPropCache.push(s),this.propToColCache.set(s,n),n+=1):n=this.recursiveDuckColumns(e,n,`${t}.`)})),n}colToProp(e){if(!1===Number.isInteger(e))return e;const t=this.hot.toPhysicalColumn(e);return null===t?e:this.colToPropCache&&(0,c.isDefined)(this.colToPropCache[t])?this.colToPropCache[t]:t}propToCol(e){const t=this.propToColCache.get(e);if((0,c.isDefined)(t))return this.hot.toVisualColumn(t);const o=this.hot.toVisualColumn(e);return null===o?e:o}getSchema(){const e=this.tableMeta.dataSchema;return e?"function"==typeof e?e():e:this.duckSchema}createDuckSchema(){return this.dataSource&&this.dataSource[0]?(0,l.duckSchema)(this.dataSource[0]):{}}refreshDuckSchema(){this.duckSchema=this.createDuckSchema()}createRow(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,{source:o,mode:s="above"}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=this.hot.countSourceRows();let i=n,r=0,a=e;("number"!=typeof a||a>=n)&&(a=n),a<this.hot.countRows()&&(i=this.hot.toPhysicalRow(a));if(!1===this.hot.runHooks("beforeCreateRow",a,t,o)||null===i)return{delta:0};const c=this.tableMeta.maxRows,u=this.getSchema().length,d=[];for(;r<t&&n+r<c;){let e=null;"array"===this.hot.dataType?this.tableMeta.dataSchema?e=(0,l.deepClone)(this.getSchema()):(e=[],(0,h.rangeEach)(u-1,(()=>e.push(null)))):"function"===this.hot.dataType?e=this.tableMeta.dataSchema(a+r):(e={},(0,l.deepExtend)(e,this.getSchema())),d.push(e),r+=1}this.hot.rowIndexMapper.insertIndexes(a,r),"below"===s&&(i=Math.min(i+1,n)),this.spliceData(i,0,d);const g=this.hot.toVisualRow(i);return this.hot.countSourceRows()===d.length&&this.hot.columnIndexMapper.initToLength(this.hot.getInitialColumnCount()),r>0&&(null==e?this.metaManager.createRow(null,r):"auto"!==o&&this.metaManager.createRow(i,t)),this.hot.runHooks("afterCreateRow",g,r,o),this.hot.forceFullRender=!0,{delta:r,startPhysicalIndex:i}}createCol(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,{source:o,mode:s="start"}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!this.hot.isColumnModificationAllowed())throw new Error("Cannot create new column. When data source in an object, you can only have as much columns as defined in first data row, data schema or in the 'columns' setting.If you want to be able to add new columns, you have to use array datasource.");const n=this.dataSource,i=this.tableMeta.maxCols,r=this.hot.countSourceCols();let l=e;("number"!=typeof l||l>=r)&&(l=r);if(!1===this.hot.runHooks("beforeCreateCol",l,t,o))return{delta:0};let a=r;l<this.hot.countCols()&&(a=this.hot.toPhysicalColumn(l));const h=this.hot.countSourceRows();let c=this.hot.countCols(),u=0,d=a;"end"===s&&(d=Math.min(d+1,r));const g=d;for(;u<t&&c<i;){if("number"!=typeof l||l>=c)if(h>0)for(let e=0;e<h;e+=1)void 0===n[e]&&(n[e]=[]),n[e].push(null);else n.push([null]);else for(let e=0;e<h;e++)n[e].splice(d,0,null);u+=1,d+=1,c+=1}this.hot.columnIndexMapper.insertIndexes(l,u),u>0&&(null==e?this.metaManager.createColumn(null,u):"auto"!==o&&this.metaManager.createColumn(g,t));const f=this.hot.toVisualColumn(g);return this.hot.runHooks("afterCreateCol",f,u,o),this.hot.forceFullRender=!0,this.refreshDuckSchema(),{delta:u,startPhysicalIndex:g}}removeRow(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,o=arguments.length>2?arguments[2]:void 0,s=Number.isInteger(e)?e:-t;const n=this.visualRowsToPhysical(s,t),i=this.hot.countSourceRows();s=(i+s)%i;if(!1===this.hot.runHooks("beforeRemoveRow",s,n.length,n,o))return!1;const r=n.length;if(this.filterData(s,r,n),s<this.hot.countRows()){this.hot.rowIndexMapper.removeIndexes(n);const e=(0,c.isDefined)(this.tableMeta.columns)||(0,c.isDefined)(this.tableMeta.dataSchema);0===this.hot.rowIndexMapper.getNotTrimmedIndexesLength()&&!1===e&&this.hot.columnIndexMapper.setIndexesSequence([])}return n.slice(0).sort(((e,t)=>t-e)).forEach((e=>{this.metaManager.removeRow(e,1)})),this.hot.runHooks("afterRemoveRow",s,r,n,o),this.hot.forceFullRender=!0,!0}removeCol(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,o=arguments.length>2?arguments[2]:void 0;if("object"===this.hot.dataType||this.tableMeta.columns)throw new Error("cannot remove column with object data source or columns option specified");let s="number"!=typeof e?-t:e;s=(this.hot.countCols()+s)%this.hot.countCols();const n=this.visualColumnsToPhysical(s,t),i=n.slice(0).sort(((e,t)=>t-e));if(!1===this.hot.runHooks("beforeRemoveCol",s,t,n,o))return!1;let r=!0;const l=i.length,a=this.dataSource;for(let e=0;e<l;e++)r&&n[0]!==n[e]-e&&(r=!1);if(r)for(let e=0,o=this.hot.countSourceRows();e<o;e++)a[e].splice(n[0],t),0===e&&this.metaManager.removeColumn(n[0],t);else for(let e=0,t=this.hot.countSourceRows();e<t;e++)for(let t=0;t<l;t++)a[e].splice(i[t],1),0===e&&this.metaManager.removeColumn(i[t],1);return s<this.hot.countCols()&&(this.hot.columnIndexMapper.removeIndexes(n),0===this.hot.columnIndexMapper.getNotTrimmedIndexesLength()&&this.hot.rowIndexMapper.setIndexesSequence([])),this.hot.runHooks("afterRemoveCol",s,t,n,o),this.hot.forceFullRender=!0,this.refreshDuckSchema(),!0}spliceCol(e,t,o){const s=this.hot.getDataAtCol(e),n=s.slice(t,t+o),i=s.slice(t+o);for(var r=arguments.length,l=new Array(r>3?r-3:0),h=3;h<r;h++)l[h-3]=arguments[h];(0,a.extendArray)(l,i);let c=0;for(;c<o;)l.push(null),c+=1;return(0,a.to2dArray)(l),this.hot.populateFromArray(t,e,l,null,null,"spliceCol"),n}spliceRow(e,t,o){const s=this.hot.getSourceDataAtRow(e),n=s.slice(t,t+o),i=s.slice(t+o);for(var r=arguments.length,l=new Array(r>3?r-3:0),h=3;h<r;h++)l[h-3]=arguments[h];(0,a.extendArray)(l,i);let c=0;for(;c<o;)l.push(null),c+=1;return this.hot.populateFromArray(e,t,[l],null,null,"spliceRow"),n}spliceData(e,t,o){if(!1!==this.hot.runHooks("beforeDataSplice",e,t,o)){const t=[...this.dataSource.slice(0,e),...o,...this.dataSource.slice(e)];this.dataSource.length=0,t.forEach((e=>this.dataSource.push(e)))}}filterData(e,t,o){let s=this.hot.runHooks("filterData",e,t,o);!1===Array.isArray(s)&&(s=this.dataSource.filter(((e,t)=>-1===o.indexOf(t)))),this.dataSource.length=0,Array.prototype.push.apply(this.dataSource,s)}get(e,t){const o=this.hot.toPhysicalRow(e);let s=this.dataSource[o];const n=this.hot.runHooks("modifyRowData",o);s=isNaN(n)?n:s;const{dataDotNotation:i}=this.hot.getSettings();let r=null;if(s&&s.hasOwnProperty&&(0,l.hasOwnProperty)(s,t))r=s[t];else if(i&&"string"==typeof t&&t.indexOf(".")>-1){let e=s;if(!e)return null;const o=t.split(".");for(let t=0,s=o.length;t<s;t++)if(e=e[o[t]],void 0===e)return null;r=e}else"function"==typeof t&&(r=t(this.dataSource.slice(o,o+1)[0]));if(this.hot.hasHook("modifyData")){const e=(0,l.createObjectPropListener)(r);this.hot.runHooks("modifyData",o,this.propToCol(t),e,"get"),e.isTouched()&&(r=e.value)}return r}getCopyable(e,t){return this.hot.getCellMeta(e,this.propToCol(t)).copyable?this.get(e,t):""}set(e,t,o){const s=this.hot.toPhysicalRow(e);let n=o,i=this.dataSource[s];const r=this.hot.runHooks("modifyRowData",s);if(i=isNaN(r)?r:i,this.hot.hasHook("modifyData")){const e=(0,l.createObjectPropListener)(n);this.hot.runHooks("modifyData",s,this.propToCol(t),e,"set"),e.isTouched()&&(n=e.value)}const{dataDotNotation:a}=this.hot.getSettings();if(i&&i.hasOwnProperty&&(0,l.hasOwnProperty)(i,t))i[t]=n;else if(a&&"string"==typeof t&&t.indexOf(".")>-1){let e,o=i,s=0;const r=t.split(".");for(s=0,e=r.length-1;s<e;s++)void 0===o[r[s]]&&(o[r[s]]={}),o=o[r[s]];o[r[s]]=n}else"function"==typeof t?t(this.dataSource.slice(s,s+1)[0],n):i[t]=n}visualRowsToPhysical(e,t){const o=this.hot.countSourceRows(),s=[];let n,i=(o+e)%o,r=t;for(;i<o&&r;)n=this.hot.toPhysicalRow(i),s.push(n),r-=1,i+=1;return s}visualColumnsToPhysical(e,t){const o=this.hot.countCols(),s=[];let n=(o+e)%o,i=t;for(;n<o&&i;){const e=this.hot.toPhysicalColumn(n);s.push(e),i-=1,n+=1}return s}clear(){for(let e=0;e<this.hot.countSourceRows();e++)for(let t=0;t<this.hot.countCols();t++)this.set(e,this.colToProp(t),"")}getLength(){const e=this.tableMeta.maxRows;let t;t=e<0||0===e?0:e||1/0;const o=this.hot.rowIndexMapper.getNotTrimmedIndexesLength();return Math.min(o,t)}getAll(){const e={row:0,col:0},t={row:Math.max(this.hot.countRows()-1,0),col:Math.max(this.hot.countCols()-1,0)};return e.row-t.row!=0||this.hot.countSourceRows()?this.getRange(e,t,u.DESTINATION_RENDERER):[]}countCachedColumns(){return this.colToPropCache.length}getRange(e,t,o){const s=[];let n,i,r;const l=this.tableMeta.maxRows,a=this.tableMeta.maxCols;if(0===l||0===a)return[];const h=o===u.DESTINATION_CLIPBOARD_GENERATOR?this.getCopyable:this.get,c=Math.min(Math.max(l-1,0),Math.max(e.row,t.row)),d=Math.min(Math.max(a-1,0),Math.max(e.col,t.col));for(n=Math.min(e.row,t.row);n<=c;n++){r=[];const o=n>=0?this.hot.toPhysicalRow(n):n;for(i=Math.min(e.col,t.col);i<=d&&null!==o;i++)r.push(h.call(this,n,this.colToProp(i)));null!==o&&s.push(r)}return s}getText(e,t){return(0,i.stringify)(this.getRange(e,t,u.DESTINATION_RENDERER))}getCopyableText(e,t){return(0,i.stringify)(this.getRange(e,t,u.DESTINATION_CLIPBOARD_GENERATOR))}destroy(){this.hot=null,this.metaManager=null,this.dataSource=null,this.duckSchema=null,this.colToPropCache.length=0,this.propToColCache.clear(),this.propToColCache=void 0}}t.default=u},12248:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(13911),r=o(56216),l=o(9175),a=o(87485),h=o(78832);t.default=class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];(0,n.default)(this,"hot",void 0),(0,n.default)(this,"data",void 0),(0,n.default)(this,"dataType","array"),(0,n.default)(this,"colToProp",(()=>{})),(0,n.default)(this,"propToCol",(()=>{})),this.hot=e,this.data=t}modifyRowData(e){let t;return this.hot.hasHook("modifyRowData")&&(t=this.hot.runHooks("modifyRowData",e)),void 0===t||Number.isInteger(t)?this.data[e]:t}getData(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.data&&0!==this.data.length?this.getByRange(null,null,e):this.data}setData(e){this.data=e}getAtColumn(e){const t=[];return(0,l.arrayEach)(this.data,((o,s)=>{const n=this.getAtCell(s,e);t.push(n)})),t}getAtRow(e,t,o){let s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const n=void 0===t&&void 0===o,{dataDotNotation:r}=this.hot.getSettings();let l=null,c=null;if(l=this.modifyRowData(e),Array.isArray(l))c=[],n?l.forEach(((t,o)=>{c[o]=this.getAtPhysicalCell(e,o,l)})):(0,a.rangeEach)(t,o,(o=>{c[o-t]=this.getAtPhysicalCell(e,o,l)}));else if((0,i.isObject)(l)||(0,h.isFunction)(l))if(c=s?[]:{},!n||s){const n=0,h=this.countFirstRowKeys()-1;(0,a.rangeEach)(n,h,(a=>{const u=this.colToProp(a);if(a>=(t||n)&&a<=(o||h)&&!Number.isInteger(u)){const t=this.getAtPhysicalCell(e,u,l);s?c.push(t):r?(0,i.setProperty)(c,u,t):c[u]=t}}))}else(0,i.objectEach)(l,((t,o)=>{const s=this.getAtPhysicalCell(e,o,l);r?(0,i.setProperty)(c,o,s):c[o]=s}));return c}setAtCell(e,t,o){if(!(e>=this.countRows()||t>=this.countFirstRowKeys())){if(this.hot.hasHook("modifySourceData")){const s=(0,i.createObjectPropListener)(o);this.hot.runHooks("modifySourceData",e,t,s,"set"),s.isTouched()&&(o=s.value)}Number.isInteger(t)?this.data[e][t]=o:(0,i.setProperty)(this.data[e],t,o)}}getAtPhysicalCell(e,t,o){let s=null;if(o)if("string"==typeof t){const{dataDotNotation:e}=this.hot.getSettings();s=e?(0,i.getProperty)(o,t):o[t]}else s="function"==typeof t?t(o):o[t];if(this.hot.hasHook("modifySourceData")){const o=(0,i.createObjectPropListener)(s);this.hot.runHooks("modifySourceData",e,t,o,"get"),o.isTouched()&&(s=o.value)}return s}getAtCell(e,t){const o=this.modifyRowData(e);return this.getAtPhysicalCell(e,this.colToProp(t),o)}getByRange(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],s=!1,n=null,i=null,r=null,l=null;null===e||null===t?(s=!0,n=0,r=this.countRows()-1):(n=Math.min(e.row,t.row),i=Math.min(e.col,t.col),r=Math.max(e.row,t.row),l=Math.max(e.col,t.col));const h=[];return(0,a.rangeEach)(n,r,(e=>{h.push(s?this.getAtRow(e,void 0,void 0,o):this.getAtRow(e,i,l,o))})),h}countRows(){if(this.hot.hasHook("modifySourceLength")){const e=this.hot.runHooks("modifySourceLength");if(Number.isInteger(e))return e}return this.data.length}countFirstRowKeys(){return(0,r.countFirstRowKeys)(this.data)}destroy(){this.data=null,this.hot=null}}},71757:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(87727));t.DataMap=n.default;var i=s(o(36102));t.MetaManager=i.default;var r=s(o(32054));t.metaSchemaFactory=r.default;var l=o(21781);t.replaceData=l.replaceData;var a=o(74870);t.DynamicCellMetaMod=a.DynamicCellMetaMod;var h=o(88884);t.ExtendMetaPropertiesMod=h.ExtendMetaPropertiesMod},36102:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85252)),i=s(o(47441)),r=s(o(5065)),l=s(o(25779)),a=s(o(63870)),h=o(13911);class c{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];this.hot=e,this.globalMeta=new n.default(e),this.tableMeta=new i.default(this.globalMeta),this.columnMeta=new r.default(this.globalMeta),this.cellMeta=new l.default(this.columnMeta),o.forEach((e=>new e(this))),this.globalMeta.updateMeta(t)}getGlobalMeta(){return this.globalMeta.getMeta()}updateGlobalMeta(e){this.globalMeta.updateMeta(e)}getTableMeta(){return this.tableMeta.getMeta()}updateTableMeta(e){this.tableMeta.updateMeta(e)}getColumnMeta(e){return this.columnMeta.getMeta(e)}updateColumnMeta(e,t){this.columnMeta.updateMeta(e,t)}getCellMeta(e,t,o){let{visualRow:s,visualColumn:n}=o;const i=this.cellMeta.getMeta(e,t);return i.visualRow=s,i.visualCol=n,i.row=e,i.col=t,this.runLocalHooks("afterGetCellMeta",i),i}getCellMetaKeyValue(e,t,o){if("string"!=typeof o)throw new Error("The passed cell meta object key is not a string");return this.cellMeta.getMeta(e,t,o)}setCellMeta(e,t,o,s){this.cellMeta.setMeta(e,t,o,s)}updateCellMeta(e,t,o){this.cellMeta.updateMeta(e,t,o)}removeCellMeta(e,t,o){this.cellMeta.removeMeta(e,t,o)}getCellsMeta(){return this.cellMeta.getMetas()}getCellsMetaAtRow(e){return this.cellMeta.getMetasAtRow(e)}createRow(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.cellMeta.createRow(e,t)}removeRow(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.cellMeta.removeRow(e,t)}createColumn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.cellMeta.createColumn(e,t),this.columnMeta.createColumn(e,t)}removeColumn(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.cellMeta.removeColumn(e,t),this.columnMeta.removeColumn(e,t)}clearCellsCache(){this.cellMeta.clearCache()}clearCache(){this.cellMeta.clearCache(),this.columnMeta.clearCache()}}t.default=c,(0,h.mixin)(c,a.default)},47586:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var n=s(o(85707)),i=o(9175),r=o(34471);class l{constructor(e){(0,n.default)(this,"valueFactory",void 0),(0,n.default)(this,"data",[]),(0,n.default)(this,"index",[]),(0,n.default)(this,"holes",new Set),this.valueFactory=e}obtain(e){(0,r.assert)((()=>(0,r.isUnsignedNumber)(e)),"Expecting an unsigned number.");const t=this._getStorageIndexByKey(e);let o;if(t>=0)o=this.data[t],void 0===o&&(o=this.valueFactory(e),this.data[t]=o);else if(o=this.valueFactory(e),this.holes.size>0){const t=this.holes.values().next().value;this.holes.delete(t),this.data[t]=o,this.index[e]=t}else this.data.push(o),this.index[e]=this.data.length-1;return o}insert(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;(0,r.assert)((()=>(0,r.isUnsignedNumber)(e)||(0,r.isNullish)(e)),"Expecting an unsigned number or null/undefined argument.");const o=[],s=this.data.length;for(let e=0;e<t;e++)o.push(s+e),this.data.push(void 0);const n=(0,r.isNullish)(e)?this.index.length:e;this.index=[...this.index.slice(0,n),...o,...this.index.slice(n)]}remove(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;(0,r.assert)((()=>(0,r.isUnsignedNumber)(e)||(0,r.isNullish)(e)),"Expecting an unsigned number or null/undefined argument.");const o=this.index.splice((0,r.isNullish)(e)?this.index.length-t:e,t);for(let e=0;e<o.length;e++){const t=o[e];"number"==typeof t&&this.holes.add(t)}}size(){return this.data.length-this.holes.size}values(){return(0,i.arrayFilter)(this.data,((e,t)=>!this.holes.has(t)))[Symbol.iterator]()}entries(){const e=[];for(let t=0;t<this.data.length;t++){const o=this._getKeyByStorageIndex(t);-1!==o&&e.push([o,this.data[t]])}let t=0;return{next:()=>{if(t<e.length){const o=e[t];return t+=1,{value:o,done:!1}}return{done:!0}}}}clear(){this.data=[],this.index=[],this.holes.clear()}_getStorageIndexByKey(e){return this.index.length>e?this.index[e]:-1}_getKeyByStorageIndex(e){return this.index.indexOf(e)}[Symbol.iterator](){return this.entries()}}t.default=l},25779:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(15724);var n=s(o(85707)),i=o(13911),r=o(34471),l=s(o(47586)),a=o(38893);t.default=class{constructor(e){(0,n.default)(this,"columnMeta",void 0),(0,n.default)(this,"metas",new l.default((()=>this._createRow()))),this.columnMeta=e}updateMeta(e,t,o){const s=this.getMeta(e,t);(0,i.extend)(s,o),(0,r.extendByMetaType)(s,o)}createRow(e,t){this.metas.insert(e,t)}createColumn(e,t){for(let o=0;o<this.metas.size();o++)this.metas.obtain(o).insert(e,t)}removeRow(e,t){this.metas.remove(e,t)}removeColumn(e,t){for(let o=0;o<this.metas.size();o++)this.metas.obtain(o).remove(e,t)}getMeta(e,t,o){const s=this.metas.obtain(e).obtain(t);return void 0===o?s:s[o]}setMeta(e,t,o,s){var n;const i=this.metas.obtain(e).obtain(t);null===(n=i._automaticallyAssignedMetaProps)||void 0===n||n.delete(o),i[o]=s}removeMeta(e,t,o){delete this.metas.obtain(e).obtain(t)[o]}getMetas(){const e=[],t=Array.from(this.metas.values());for(let o=0;o<t.length;o++)(0,a.isDefined)(t[o])&&e.push(...t[o].values());return e}getMetasAtRow(e){(0,r.assert)((()=>(0,r.isUnsignedNumber)(e)),"Expecting an unsigned number.");const t=new Map(this.metas);return t.has(e)?Array.from(t.get(e).values()):[]}clearCache(){this.metas.clear()}_createRow(){return new l.default((e=>this._createMeta(e)))}_createMeta(e){return new(this.columnMeta.getMetaConstructor(e))}}},5065:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(13911),r=o(34471),l=s(o(47586));const a=["data","width"];t.default=class{constructor(e){(0,n.default)(this,"globalMeta",void 0),(0,n.default)(this,"metas",new l.default((()=>this._createMeta()))),this.globalMeta=e,this.metas=new l.default((()=>this._createMeta()))}updateMeta(e,t){const o=this.getMeta(e);(0,i.extend)(o,t),(0,r.extendByMetaType)(o,t)}createColumn(e,t){this.metas.insert(e,t)}removeColumn(e,t){this.metas.remove(e,t)}getMeta(e){return this.metas.obtain(e)}getMetaConstructor(e){return this.metas.obtain(e).constructor}clearCache(){this.metas.clear()}_createMeta(){return(0,r.columnFactory)(this.globalMeta.getMetaConstructor(),a).prototype}}},85252:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(13911),r=o(34471),l=s(o(32054));t.default=class{constructor(e){(0,n.default)(this,"metaCtor",class{}),(0,n.default)(this,"meta",void 0),this.meta=this.metaCtor.prototype,(0,i.extend)(this.meta,(0,l.default)()),this.meta.instance=e}getMetaConstructor(){return this.metaCtor}getMeta(){return this.meta}updateMeta(e){var t;(0,i.extend)(this.meta,e),(0,r.extendByMetaType)(this.meta,{...e,type:null!==(t=e.type)&&void 0!==t?t:this.meta.type},e)}}},47441:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(13911),r=o(34471);t.default=class{constructor(e){(0,n.default)(this,"meta",void 0);const t=e.getMetaConstructor();this.meta=new t}getMeta(){return this.meta}updateMeta(e){(0,i.extend)(this.meta,e),(0,r.extendByMetaType)(this.meta,e,e)}}},32054:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(38893),n=o(13911);t.default=()=>({_automaticallyAssignedMetaProps:void 0,activeHeaderClassName:"ht__active_highlight",allowEmpty:!0,allowHtml:!1,allowInsertColumn:!0,allowInsertRow:!0,allowInvalid:!0,allowRemoveColumn:!0,allowRemoveRow:!0,ariaTags:!0,autoColumnSize:void 0,autoRowSize:void 0,autoWrapCol:!1,autoWrapRow:!1,bindRowsWithHeaders:void 0,cell:[],cells:void 0,checkedTemplate:void 0,className:void 0,colHeaders:null,collapsibleColumns:void 0,columnHeaderHeight:void 0,columns:void 0,columnSorting:void 0,columnSummary:void 0,colWidths:void 0,commentedCellClassName:"htCommentCell",comments:!1,contextMenu:void 0,copyable:!0,copyPaste:!0,correctFormat:!1,currentColClassName:void 0,currentHeaderClassName:"ht__highlight",currentRowClassName:void 0,customBorders:!1,data:void 0,dataDotNotation:!0,dataSchema:void 0,dateFormat:"DD/MM/YYYY",timeFormat:"h:mm:ss a",datePickerConfig:void 0,defaultDate:void 0,disableVisualSelection:!1,dragToScroll:!0,dropdownMenu:void 0,editor:void 0,enterBeginsEditing:!0,enterMoves:{col:0,row:1},fillHandle:{autoInsertRow:!1},filter:!0,filteringCaseSensitive:!1,filters:void 0,fixedColumnsLeft:0,fixedColumnsStart:0,fixedRowsBottom:0,fixedRowsTop:0,formulas:void 0,fragmentSelection:!1,headerClassName:void 0,height:void 0,hiddenColumns:void 0,hiddenRows:void 0,invalidCellClassName:"htInvalid",imeFastEdit:!1,isEmptyCol(e){let t,o,n;for(t=0,o=this.countRows();t<o;t++)if(n=this.getDataAtCell(t,e),!1===(0,s.isEmpty)(n))return!1;return!0},isEmptyRow(e){let t,o,i,r;for(t=0,o=this.countCols();t<o;t++)if(i=this.getDataAtCell(e,t),!1===(0,s.isEmpty)(i))return"object"==typeof i&&(r=this.getCellMeta(e,t),(0,n.isObjectEqual)(this.getSchema()[r.prop],i));return!0},label:void 0,language:"en-US",layoutDirection:"inherit",licenseKey:void 0,locale:"en-US",manualColumnFreeze:void 0,manualColumnMove:void 0,manualColumnResize:void 0,manualRowMove:void 0,manualRowResize:void 0,maxCols:1/0,maxRows:1/0,mergeCells:!1,minCols:0,minRows:0,minSpareCols:0,minSpareRows:0,multiColumnSorting:void 0,navigableHeaders:!1,tabNavigation:!0,nestedHeaders:void 0,nestedRows:void 0,noWordWrapClassName:"htNoWrap",numericFormat:void 0,observeDOMVisibility:!0,outsideClickDeselects:!0,persistentState:void 0,placeholder:void 0,placeholderCellClassName:"htPlaceholder",preventOverflow:!1,preventWheel:!1,readOnly:!1,readOnlyCellClassName:"htDimmed",renderAllRows:!1,renderAllColumns:!1,renderer:void 0,rowHeaders:void 0,rowHeaderWidth:void 0,rowHeights:void 0,search:!1,selectionMode:"multiple",selectOptions:void 0,skipColumnOnPaste:!1,skipRowOnPaste:!1,sortByRelevance:!0,source:void 0,startCols:5,startRows:5,stretchH:"none",strict:void 0,tableClassName:void 0,tabMoves:{row:0,col:1},title:void 0,trimDropdown:!0,trimRows:void 0,trimWhitespace:!0,type:"text",uncheckedTemplate:void 0,undo:void 0,validator:void 0,viewportColumnRenderingOffset:"auto",viewportRowRenderingOffset:"auto",visibleRows:10,width:void 0,wordWrap:!0})},74870:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var n=s(o(85707)),i=s(o(56937)),r=o(13911),l=o(78832);t.DynamicCellMetaMod=class{constructor(e){(0,n.default)(this,"metaManager",void 0),(0,n.default)(this,"metaSyncMemo",new Map),this.metaManager=e,e.addLocalHook("afterGetCellMeta",(e=>this.extendCellMeta(e))),i.default.getSingleton().add("beforeRender",(e=>{e&&this.metaSyncMemo.clear()}),this.metaManager.hot)}extendCellMeta(e){var t;const{row:o,col:s}=e;if(null!==(t=this.metaSyncMemo.get(o))&&void 0!==t&&t.has(s))return;const{visualRow:n,visualCol:i}=e,a=this.metaManager.hot,h=a.colToProp(i);e.prop=h,a.runHooks("beforeGetCellMeta",n,i,e);const c=(0,r.hasOwnProperty)(e,"type")?e.type:null;let u=(0,l.isFunction)(e.cells)?e.cells(o,s,h):null;var d;c&&(u?u.type=null!==(d=u.type)&&void 0!==d?d:c:u={type:c});u&&this.metaManager.updateCellMeta(o,s,u),a.runHooks("afterGetCellMeta",n,i,e),this.metaSyncMemo.has(o)||this.metaSyncMemo.set(o,new Set),this.metaSyncMemo.get(o).add(s)}}},88884:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var n=s(o(85707));function i(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function r(e,t){return e.get(function(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}(e,t))}var l=new WeakMap;t.ExtendMetaPropertiesMod=class{constructor(e){(0,n.default)(this,"metaManager",void 0),(0,n.default)(this,"usageTracker",new Set),(0,n.default)(this,"propDescriptors",new Map([["ariaTags",{initOnly:!0}],["fixedColumnsLeft",{target:"fixedColumnsStart",onChange(e){if(this.metaManager.hot.isRtl()&&"fixedColumnsLeft"===e)throw new Error("The `fixedColumnsLeft` is not supported for RTL. Please use option `fixedColumnsStart`.");if(this.usageTracker.has("fixedColumnsLeft")&&this.usageTracker.has("fixedColumnsStart"))throw new Error("The `fixedColumnsLeft` and `fixedColumnsStart` should not be used together. Please use only the option `fixedColumnsStart`.")}}],["layoutDirection",{initOnly:!0}],["renderAllColumns",{initOnly:!0}],["renderAllRows",{initOnly:!0}]])),i(this,l,((e,t,o)=>{if(!o)throw new Error(`The \`${e}\` option can not be updated after the Handsontable is initialized.`)})),this.metaManager=e,this.extendMetaProps()}extendMetaProps(){this.propDescriptors.forEach(((e,t)=>{const{initOnly:o,target:s,onChange:n}=e,i="string"==typeof s,a=i?s:t,h=`_${a}`;this.metaManager.globalMeta.meta[h]=this.metaManager.globalMeta.meta[a],n?(this.installPropWatcher(t,h,n),i&&this.installPropWatcher(s,h,n)):o&&(this.installPropWatcher(t,h,r(l,this)),this.metaManager.globalMeta.meta._initOnlySettings||(this.metaManager.globalMeta.meta._initOnlySettings=[]),this.metaManager.globalMeta.meta._initOnlySettings.push(t))}))}installPropWatcher(e,t,o){const s=this;Object.defineProperty(this.metaManager.globalMeta.meta,e,{get(){return this[t]},set(n){const i=!s.usageTracker.has(e);s.usageTracker.add(e),o.call(s,e,n,i),this[t]=n},enumerable:!0,configurable:!0})}}},34471:(e,t,o)=>{"use strict";t.__esModule=!0,t.assert=function(e,t){if(!e())throw new Error(`Assertion failed: ${t}`)},t.columnFactory=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];function o(){}(0,s.inherit)(o,e);for(let e=0;e<t.length;e++)o.prototype[t[e]]=void 0;return o},t.extendByMetaType=function(e,t){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e;const i="string"==typeof t.type?(0,n.getCellType)(t.type):t.type;e._automaticallyAssignedMetaProps&&(0,s.objectEach)(t,((t,o)=>{e._automaticallyAssignedMetaProps.delete(o)}));if(!(0,s.isObject)(i))return;o!==e||e._automaticallyAssignedMetaProps||(e._automaticallyAssignedMetaProps=new Set);const r={};(0,s.objectEach)(i,((t,n)=>{var i;(function(e,t){var o;if("CELL_TYPE"===e)return!1;return(null===(o=t._automaticallyAssignedMetaProps)||void 0===o?void 0:o.has(e))||!(0,s.hasOwnProperty)(t,e)})(n,o)&&(r[n]=t,null===(i=e._automaticallyAssignedMetaProps)||void 0===i||i.add(n))})),(0,s.extend)(e,r)},t.isNullish=function(e){return null==e},t.isUnsignedNumber=function(e){return Number.isInteger(e)&&e>=0},o(67834),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620);var s=o(13911),n=o(34299)},21781:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.replaceData=function(e,t,o,s){const{hotInstance:c,dataMap:u,dataSource:d,internalSource:g,source:f,metaManager:p,firstRun:m}=s,w=(0,n.toUpperCaseFirst)(g),C=c.getSettings();Array.isArray(C.dataSchema)?c.dataType="array":(0,i.isFunction)(C.dataSchema)?c.dataType="function":c.dataType="object";u&&u.destroy();e=c.runHooks(`before${w}`,e,m,f);const v=new r.default(c,e,p);if(t(v),"object"==typeof e&&null!==e)e.push&&e.splice||(e=[e]);else{if(null!==e)throw new Error(`${g} only accepts array of objects or array of arrays (${typeof e} given)`);{const t=v.getSchema();let o;e=[];let s=0,n=0;for(s=0,n=C.startRows;s<n;s++)if("object"!==c.dataType&&"function"!==c.dataType||!C.dataSchema)if("array"===c.dataType)o=(0,l.deepClone)(t[0]),e.push(o);else{o=[];for(let e=0,t=C.startCols;e<t;e++)o.push(null);e.push(o)}else o=(0,l.deepClone)(t),e.push(o)}}Array.isArray(e[0])&&(c.dataType="array");C.data=e,v.dataSource=e,d.data=e,d.dataType=c.dataType,d.colToProp=v.colToProp.bind(v),d.propToCol=v.propToCol.bind(v),d.countCachedColumns=v.countCachedColumns.bind(v),o(v),c.runHooks(`after${w}`,e,m,f),m||(c.runHooks("afterChange",null,g),c.render());c.getSettings().ariaTags&&(0,a.setAttribute)(c.rootElement,[(0,h.A11Y_ROWCOUNT)(-1),(0,h.A11Y_COLCOUNT)(c.countCols()+(c.view?c.countRowHeaders():0))])},o(67834),o(15724);var n=o(59777),i=o(78832),r=s(o(87727)),l=o(13911),a=o(9893),h=o(92692)},18344:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(71257),r=o(79729),l=o(84558),a=s(o(82629));function h(e,t){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.add(e)}function c(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}var u=new WeakSet;class d{constructor(e,t,o){h(this,u),(0,n.default)(this,"hot",void 0),(0,n.default)(this,"tableMeta",void 0),(0,n.default)(this,"selection",void 0),(0,n.default)(this,"eventManager",void 0),(0,n.default)(this,"destroyed",!1),(0,n.default)(this,"activeEditor",void 0),(0,n.default)(this,"cellProperties",void 0),this.hot=e,this.tableMeta=t,this.selection=o,this.eventManager=new a.default(e),this.hot.addHook("afterDocumentKeyDown",(e=>c(u,this,g).call(this,e))),this.eventManager.addEventListener(this.hot.rootDocument.documentElement,"compositionstart",(e=>{!this.destroyed&&this.hot.isListening()&&this.openEditor("",e)})),this.hot.view._wt.update("onCellDblClick",((e,t,o)=>c(u,this,f).call(this,e,t,o)))}getActiveEditor(){return this.activeEditor}prepareEditor(){var e;if(this.activeEditor&&this.activeEditor.isWaiting())return void this.closeEditor(!1,!1,(e=>{e&&this.prepareEditor()}));const t=null===(e=this.hot.getSelectedRangeLast())||void 0===e?void 0:e.highlight;if(!t||t.isHeader())return;const{row:o,col:s}=t,n=this.hot.runHooks("modifyGetCellCoords",o,s);let i=o,r=s;if(Array.isArray(n)&&([i,r]=n),this.cellProperties=this.hot.getCellMeta(i,r),!this.isCellEditable())return void this.clearActiveEditor();const a=this.hot.getCell(o,s,!0);if(a){const e=this.hot.getCellEditor(this.cellProperties),t=this.hot.colToProp(r),n=this.hot.getSourceDataAtCell(this.hot.toPhysicalRow(i),r);this.activeEditor=(0,l.getEditorInstance)(e,this.hot),this.activeEditor.prepare(o,s,t,a,n,this.cellProperties)}}isEditorOpened(){return this.activeEditor&&this.activeEditor.isOpened()}openEditor(e,t){let o=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!this.isCellEditable())return void this.clearActiveEditor();const s=this.hot.getSelectedRangeLast();let n=this.hot.runHooks("beforeBeginEditing",s.highlight.row,s.highlight.col,e,t,o);t instanceof MouseEvent&&"boolean"!=typeof n&&(n=0===this.hot.selection.getLayerLevel()&&s.isSingle()),!1!==n?(this.activeEditor||(this.hot.scrollToFocusedCell(),this.prepareEditor()),this.activeEditor&&(o&&this.activeEditor.enableFullEditMode(),this.activeEditor.beginEditing(e,t))):this.clearActiveEditor()}closeEditor(e,t,o){this.activeEditor?this.activeEditor.finishEditing(e,t,o):o&&o(!1)}closeEditorAndSaveChanges(e){this.closeEditor(!1,e)}closeEditorAndRestoreOriginalValue(e){this.closeEditor(!0,e)}clearActiveEditor(){this.activeEditor=void 0}isCellEditable(){const e=this.hot.getSelectedRangeLast();if(!e)return!1;const t=this.hot.getCellEditor(this.cellProperties),{row:o,col:s}=e.highlight,{rowIndexMapper:n,columnIndexMapper:i}=this.hot,r=n.isHidden(this.hot.toPhysicalRow(o))||i.isHidden(this.hot.toPhysicalColumn(s));return!(this.cellProperties.readOnly||!t||r)}moveSelectionAfterEnter(e){const t={..."function"==typeof this.tableMeta.enterMoves?this.tableMeta.enterMoves(e):this.tableMeta.enterMoves};e.shiftKey&&(t.row=-t.row,t.col=-t.col),this.hot.selection.isMultiple()?this.selection.transformFocus(t.row,t.col):this.selection.transformStart(t.row,t.col,!0)}destroy(){this.destroyed=!0,this.eventManager.destroy()}}function g(e){const t=this.hot.getSelectedRangeLast();if(!this.hot.isListening()||!t||t.highlight.isHeader()||(0,r.isImmediatePropagationStopped)(e))return;const{keyCode:o}=e,s=(e.ctrlKey||e.metaKey)&&!e.altKey;(!this.activeEditor||this.activeEditor&&!this.activeEditor.isWaiting())&&((0,i.isFunctionKey)(o)||(0,i.isCtrlMetaKey)(o)||s||this.isEditorOpened()||this.openEditor("",e))}function f(e,t){t.isCell()&&this.openEditor(null,e,!0)}const p=new WeakMap;d.getInstance=function(e,t,o){let s=p.get(e);return s||(s=new d(e,t,o),p.set(e,s)),s};t.default=d},36854:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834),o(15724);var n=s(o(85707)),i=o(56138),r=o(9175),l=o(9893),a=o(38893),h=o(59777),c=o(71257),u=o(28890),d=o(36748),g=o(92692);function f(e,t,o){(function(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")})(e,t),t.set(e,o)}function p(e,t){return e.get(function(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}(e,t))}const m=t.EDITOR_TYPE="autocomplete";var w=new WeakMap;class C extends i.HandsontableEditor{constructor(){super(...arguments),(0,n.default)(this,"query",null),(0,n.default)(this,"strippedChoices",[]),(0,n.default)(this,"rawChoices",[]),f(this,w,this.hot.guid.slice(0,9)),(0,n.default)(this,"sortByRelevance",(function(e,t,o){const s=[],n=[],i=e.length;let r,l,c,u,d=t.length;if(0===i){for(c=0;c<d;c++)n.push(c);return n}for(c=0;c<d;c++){if(l=(0,h.stripTags)((0,a.stringify)(t[c])),o)u=l.indexOf(e);else{const t=this.cellProperties.locale;u=l.toLocaleLowerCase(t).indexOf(e.toLocaleLowerCase(t))}-1!==u&&(r=l.length-u-i,s.push({baseIndex:c,index:u,charsLeft:r,value:l}))}for(s.sort(((e,t)=>{if(-1===t.index)return-1;if(-1===e.index)return 1;if(e.index<t.index)return-1;if(t.index<e.index)return 1;if(e.index===t.index){if(e.charsLeft<t.charsLeft)return-1;if(e.charsLeft>t.charsLeft)return 1}return 0})),c=0,d=s.length;c<d;c++)n.push(s[c].baseIndex);return n}))}static get EDITOR_TYPE(){return m}getValue(){const e=this.rawChoices.find((e=>this.stripValueIfNeeded(e)===this.TEXTAREA.value));return(0,a.isDefined)(e)?e:this.TEXTAREA.value}createElements(){super.createElements(),(0,l.addClass)(this.htContainer,"autocompleteEditor"),(0,l.addClass)(this.htContainer,-1===this.hot.rootWindow.navigator.platform.indexOf("Mac")?"":"htMacScroll"),this.hot.getSettings().ariaTags&&(0,l.setAttribute)(this.TEXTAREA,[(0,g.A11Y_TEXT)(),(0,g.A11Y_COMBOBOX)(),(0,g.A11Y_HASPOPUP)("listbox"),(0,g.A11Y_AUTOCOMPLETE)()])}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i),this.hot.getSettings().ariaTags&&(0,l.setAttribute)(this.TEXTAREA,[(0,g.A11Y_EXPANDED)("false"),(0,g.A11Y_CONTROLS)(`${p(w,this)}-listbox-${e}-${t}`)])}open(){super.open();const e=void 0===this.cellProperties.trimDropdown||this.cellProperties.trimDropdown,t=this.hot.getSettings().ariaTags,o=Array.isArray(this.cellProperties.source)?this.cellProperties.source:null,s=null==o?void 0:o.length,{row:n,col:i}=this;this.showEditableElement(),this.focus();let r=(0,l.getScrollbarWidth)();0===r&&(0,u.isMacOS)()&&(r+=15),this.addHook("beforeKeyDown",(e=>this.onBeforeKeyDown(e))),this.htEditor.updateSettings({colWidths:e?[(0,l.outerWidth)(this.TEXTAREA)-2]:void 0,width:e?(0,l.outerWidth)(this.TEXTAREA)+r:void 0,autoColumnSize:!0,renderer:(e,n,i,r,h,c,u)=>{(0,d.textRenderer)(e,n,i,r,h,c,u);const{filteringCaseSensitive:f,allowHtml:p,locale:m}=this.cellProperties,w=this.query;let C,v,y=(0,a.stringify)(c);y&&!p&&(C=!0===f?y.indexOf(w):y.toLocaleLowerCase(m).indexOf(w.toLocaleLowerCase(m)),-1!==C&&(v=y.substr(C,w.length),y=y.replace(v,`<strong>${v}</strong>`))),t&&(0,l.setAttribute)(n,[(0,g.A11Y_OPTION)(),...o?[(0,g.A11Y_SETSIZE)(s)]:[],...o?[(0,g.A11Y_POSINSET)(o.indexOf(c)+1)]:[],["id",`${this.htEditor.rootElement.id}_${i}-${r}`]]),n.innerHTML=y},afterSelectionEnd:(e,o)=>{if(t){const t=this.htEditor.getCell(e,o,!0);(0,l.setAttribute)(t,[(0,g.A11Y_SELECTED)()]),(0,l.setAttribute)(this.TEXTAREA,...(0,g.A11Y_ACTIVEDESCENDANT)(t.id))}}}),t&&((0,l.setAttribute)(this.htEditor.view._wt.wtOverlays.wtTable.TABLE,...(0,g.A11Y_PRESENTATION)()),(0,l.setAttribute)(this.htEditor.rootElement,[(0,g.A11Y_LISTBOX)(),(0,g.A11Y_LIVE)("polite"),(0,g.A11Y_RELEVANT)("text"),["id",`${p(w,this)}-listbox-${n}-${i}`]]),(0,l.setAttribute)(this.TEXTAREA,...(0,g.A11Y_EXPANDED)("true"))),this.hot._registerTimeout((()=>{this.queryChoices(this.TEXTAREA.value)}))}close(){this.removeHooksByKey("beforeKeyDown"),super.close(),this.hot.getSettings().ariaTags&&(0,l.setAttribute)(this.TEXTAREA,[(0,g.A11Y_EXPANDED)("false")])}discardEditor(e){super.discardEditor(e),this.hot.view.render()}queryChoices(e){const t=this.cellProperties.source;this.query=e,"function"==typeof t?t.call(this.cellProperties,e,(e=>{this.rawChoices=e,this.updateChoicesList(this.stripValuesIfNeeded(e))})):Array.isArray(t)?(this.rawChoices=t,this.updateChoicesList(this.stripValuesIfNeeded(t))):this.updateChoicesList([])}updateChoicesList(e){const t=(0,l.getCaretPosition)(this.TEXTAREA),o=(0,l.getSelectionEndPosition)(this.TEXTAREA),s=this.cellProperties.sortByRelevance,n=this.cellProperties.filter;let i=null,a=null,h=e;s&&(i=this.sortByRelevance(this.stripValueIfNeeded(this.getValue()),h,this.cellProperties.filteringCaseSensitive));const c=Array.isArray(i)?i.length:0;if(!1===n)c&&(a=i[0]);else{const e=[];for(let t=0,o=h.length;t<o&&!(s&&c<=t);t++)c?e.push(h[i[t]]):e.push(h[t]);a=0,h=e}this.strippedChoices=h,0===h.length?this.htEditor.rootElement.style.display="none":this.htEditor.rootElement.style.display="",this.htEditor.loadData((0,r.pivot)([h])),h.length>0&&(this.updateDropdownDimensions(),this.flipDropdownIfNeeded(),!0===this.cellProperties.strict&&this.highlightBestMatchingChoice(a)),this.hot.listen(),(0,l.setCaretPosition)(this.TEXTAREA,t,t===o?void 0:o)}flipDropdownIfNeeded(){const e=(0,l.getTrimmingContainer)(this.hot.view._wt.wtTable.TABLE),t=e===this.hot.rootWindow,o=this.cellProperties.preventOverflow;if(t||!t&&(o||"horizontal"===o))return!1;const s=(0,l.offset)(this.TEXTAREA),n=(0,l.outerHeight)(this.TEXTAREA),i=this.getDropdownHeight(),r=e.scrollTop,a=(0,l.outerHeight)(this.hot.view._wt.wtTable.THEAD),h=(0,l.offset)(e),c=s.top-h.top-a+r,u=e.scrollHeight-c-a-n,d=i>u&&c>u;return d?this.flipDropdown(i):this.unflipDropdown(),this.limitDropdownIfNeeded(d?c:u,i),d}limitDropdownIfNeeded(e,t){if(t>e){let o=0,s=0,n=0,i=null;do{n=this.htEditor.getRowHeight(s)||this.htEditor.view._wt.getSetting("defaultRowHeight"),o+=n,s+=1}while(o<e);i=o-n,this.htEditor.flipped&&(this.htEditor.rootElement.style.top=parseInt(this.htEditor.rootElement.style.top,10)+t-i+"px"),this.setDropdownHeight(o-n)}}flipDropdown(e){const t=this.htEditor.rootElement.style;t.position="absolute",t.top=-e+"px",this.htEditor.flipped=!0}unflipDropdown(){const e=this.htEditor.rootElement.style;e.position="absolute",e.top="",this.htEditor.flipped=void 0}updateDropdownDimensions(){const e=this.htEditor.getColWidth(0)+(0,l.getScrollbarWidth)(this.hot.rootDocument)+2,t=this.cellProperties.trimDropdown;this.htEditor.updateSettings({height:this.getDropdownHeight(),width:t?void 0:e}),this.htEditor.view._wt.wtTable.alignOverlaysWithTrimmingContainer()}setDropdownHeight(e){this.htEditor.updateSettings({height:e})}highlightBestMatchingChoice(e){"number"==typeof e?this.htEditor.selectCell(e,0,void 0,void 0,void 0,!1):this.htEditor.deselectCell()}getDropdownHeight(){const e=this.htEditor.getRowHeight(0)||23,t=this.cellProperties.visibleRows;return this.strippedChoices.length>=t?t*e:this.strippedChoices.length*e+8}stripValueIfNeeded(e){return this.stripValuesIfNeeded([e])[0]}stripValuesIfNeeded(e){const{allowHtml:t}=this.cellProperties,o=(0,r.arrayMap)(e,(e=>(0,a.stringify)(e)));return(0,r.arrayMap)(o,(e=>t?e:(0,h.stripTags)(e)))}allowKeyEventPropagation(e){const t=this.htEditor.getSelectedRangeLast(),o=t?t.from.row:-1;let s=!1;return e===c.KEY_CODES.ARROW_DOWN&&o>0&&o<this.htEditor.countRows()-1&&(s=!0),e===c.KEY_CODES.ARROW_UP&&o>-1&&(s=!0),s}onBeforeKeyDown(e){if((0,c.isPrintableChar)(e.keyCode)||e.keyCode===c.KEY_CODES.BACKSPACE||e.keyCode===c.KEY_CODES.DELETE||e.keyCode===c.KEY_CODES.INSERT){let t=10;if(e.keyCode===c.KEY_CODES.C&&(e.ctrlKey||e.metaKey))return;this.isOpened()||(t+=10),this.htEditor&&this.hot._registerTimeout((()=>{this.queryChoices(this.TEXTAREA.value)}),t)}}}t.AutocompleteEditor=C},80115:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(36854);t.EDITOR_TYPE=s.EDITOR_TYPE,t.AutocompleteEditor=s.AutocompleteEditor},63180:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=o(38893),r=o(13911),l=s(o(31872)),a=o(9893);const h=t.EDITOR_TYPE="base",c=t.EDITOR_STATE=Object.freeze({VIRGIN:"STATE_VIRGIN",EDITING:"STATE_EDITING",WAITING:"STATE_WAITING",FINISHED:"STATE_FINISHED"});class u{static get EDITOR_TYPE(){return h}constructor(e){(0,n.default)(this,"hot",void 0),(0,n.default)(this,"state",c.VIRGIN),(0,n.default)(this,"_opened",!1),(0,n.default)(this,"_fullEditMode",!1),(0,n.default)(this,"_closeCallback",null),(0,n.default)(this,"TD",null),(0,n.default)(this,"row",null),(0,n.default)(this,"col",null),(0,n.default)(this,"prop",null),(0,n.default)(this,"originalValue",null),(0,n.default)(this,"cellProperties",null),this.hot=e,this.init()}_fireCallbacks(e){this._closeCallback&&(this._closeCallback(e),this._closeCallback=null)}init(){}getValue(){throw Error("Editor getValue() method unimplemented")}setValue(){throw Error("Editor setValue() method unimplemented")}open(){throw Error("Editor open() method unimplemented")}close(){throw Error("Editor close() method unimplemented")}prepare(e,t,o,s,n,i){this.TD=s,this.row=e,this.col=t,this.prop=o,this.originalValue=n,this.cellProperties=i,this.state=this.isOpened()?this.state:c.VIRGIN}extend(){return class extends this.constructor{}}saveValue(e,t){let o,s,n,i;if(t){const e=this.hot.getSelectedLast();o=Math.max(Math.min(e[0],e[2]),0),s=Math.max(Math.min(e[1],e[3]),0),n=Math.max(e[0],e[2]),i=Math.max(e[1],e[3])}else[o,s,n,i]=[this.row,this.col,null,null];const r=this.hot.runHooks("modifyGetCellCoords",o,s);Array.isArray(r)&&([o,s]=r),this.hot.populateFromArray(o,s,e,n,i,"edit")}beginEditing(e,t){if(this.state!==c.VIRGIN)return;const o=this.hot,s=o.rowIndexMapper.getRenderableFromVisualIndex(this.row),n=o.columnIndexMapper.getRenderableFromVisualIndex(this.col);if(o.view.scrollViewport(o._createCellCoords(s,n)),this.state=c.EDITING,this.isInFullEditMode()){const t="string"==typeof e?e:(0,i.stringify)(this.originalValue);this.setValue(t)}this.open(t),this._opened=!0,this.focus(),o.view.render(),o.runHooks("afterBeginEditing",this.row,this.col)}finishEditing(e,t,o){let s;if(o){const e=this._closeCallback;this._closeCallback=t=>{e&&e(t),o(t),this.hot.view.render()}}if(!this.isWaiting())if(this.state!==c.VIRGIN){if(this.state===c.EDITING){if(e)return this.cancelChanges(),void this.hot.view.render();const o=this.getValue();s=this.cellProperties.trimWhitespace?[["string"==typeof o?String.prototype.trim.call(o||""):o]]:[[o]],this.state=c.WAITING,this.saveValue(s,t),this.hot.getCellValidator(this.cellProperties)?this.hot.addHookOnce("postAfterValidate",(e=>{this.state=c.FINISHED,this.discardEditor(e)})):(this.state=c.FINISHED,this.discardEditor(!0))}}else this.hot._registerTimeout((()=>{this._fireCallbacks(!0)}))}cancelChanges(){this.state=c.FINISHED,this.discardEditor()}discardEditor(e){if(this.state===c.FINISHED)if(!1===e&&!0!==this.cellProperties.allowInvalid)this.hot.selectCell(this.row,this.col),this.focus(),this.state=c.EDITING,this._fireCallbacks(!1);else{this.close(),this._opened=!1,this._fullEditMode=!1,this.state=c.VIRGIN,this._fireCallbacks(!0);this.hot.getShortcutManager().setActiveContextName("grid")}}enableFullEditMode(){this._fullEditMode=!0}isInFullEditMode(){return this._fullEditMode}isOpened(){return this._opened}isWaiting(){return this.state===c.WAITING}getEditedCellRect(){var e;const t=this.getEditedCell();if(!t)return;const{wtOverlays:o,wtViewport:s}=this.hot.view._wt,n=this.hot.rootWindow,i=(0,a.offset)(t),r=(0,a.outerWidth)(t),l=(0,a.offset)(this.hot.rootElement),h=(0,a.outerWidth)(this.hot.rootElement),c=o.topOverlay.holder,u=o.inlineStartOverlay.holder,d=c!==n?c.scrollTop:0,g=u!==n?u.scrollLeft:0,f=n.innerWidth-l.left-h,{wtTable:p}=null!==(e=o.getParentOverlay(t))&&void 0!==e?e:this.hot.view._wt,m=p.name,w=["master","inline_start"].includes(m)?d:0,C=["master","top","bottom"].includes(m)?g:0,v=i.top===l.top?0:1;let y=i.top-l.top-v-w,E=0;E=this.hot.isRtl()?n.innerWidth-i.left-r-f-1+C:i.left-l.left-1-C,["top","top_inline_start_corner"].includes(m)&&(y+=o.topOverlay.getOverlayOffset()),["inline_start","top_inline_start_corner"].includes(m)&&(E+=Math.abs(o.inlineStartOverlay.getOverlayOffset()));const S=this.hot.hasColHeaders(),R=this.hot.rowIndexMapper.getRenderableFromVisualIndex(this.row),b=this.hot.columnIndexMapper.getRenderableFromVisualIndex(this.col),_=this.hot.rowIndexMapper.getRenderableIndexesLength()-this.hot.view._wt.getSetting("fixedRowsBottom");(S&&R<=0||R===_)&&(y+=1),b<=0&&(E+=1);const T=s.rowsRenderCalculator.startPosition,M=s.columnsRenderCalculator.startPosition,O=Math.abs(o.inlineStartOverlay.getScrollPosition()),I=o.topOverlay.getScrollPosition(),N=(0,a.getScrollbarWidth)(this.hot.rootDocument);let A=t.offsetTop;if(["inline_start","master"].includes(m)&&(A+=T-I),["bottom","bottom_inline_start_corner"].includes(m)){const{wtViewport:e,wtTable:t}=o.bottomOverlay.clone;A+=e.getWorkspaceHeight()-t.getHeight()-N}let P=t.offsetLeft;this.hot.isRtl()?(P=P>=0?p.getWidth()-t.offsetLeft:Math.abs(P),P+=M-O-r):["top","master","bottom"].includes(m)&&(P+=M-O);const x=(0,a.getComputedStyle)(this.TD,this.hot.rootWindow),H=this.hot.isRtl()?"borderRightWidth":"borderLeftWidth",D=parseInt(x[H],10)>0?0:1,L=parseInt(x.borderTopWidth,10)>0?0:1,k=(0,a.outerWidth)(t)+D,V=(0,a.outerHeight)(t)+L,F=(0,a.hasVerticalScrollbar)(c)?N:0,W=(0,a.hasHorizontalScrollbar)(u)?N:0,B=this.hot.view.maximumVisibleElementWidth(P)-F+D;return{top:y,start:E,height:V,maxHeight:Math.max(this.hot.view.maximumVisibleElementHeight(A)-W+L,23),width:k,maxWidth:B}}getEditedCellsLayerClass(){switch(this.checkEditorSection()){case"inline-start":return"ht_clone_left ht_clone_inline_start";case"bottom":return"ht_clone_bottom";case"bottom-inline-start-corner":return"ht_clone_bottom_left_corner ht_clone_bottom_inline_start_corner";case"top":return"ht_clone_top";case"top-inline-start-corner":return"ht_clone_top_left_corner ht_clone_top_inline_start_corner";default:return"ht_clone_master"}}getEditedCell(){return this.hot.getCell(this.row,this.col,!0)}checkEditorSection(){const e=this.hot.countRows();let t="";return this.row<this.hot.getSettings().fixedRowsTop?t=this.col<this.hot.getSettings().fixedColumnsStart?"top-inline-start-corner":"top":this.hot.getSettings().fixedRowsBottom&&this.row>=e-this.hot.getSettings().fixedRowsBottom?t=this.col<this.hot.getSettings().fixedColumnsStart?"bottom-inline-start-corner":"bottom":this.col<this.hot.getSettings().fixedColumnsStart&&(t="inline-start"),t}}t.BaseEditor=u,(0,r.mixin)(u,l.default)},52618:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(63180);t.EDITOR_STATE=s.EDITOR_STATE,t.EDITOR_TYPE=s.EDITOR_TYPE,t.BaseEditor=s.BaseEditor},11936:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(52618),n=o(9893);const i=t.EDITOR_TYPE="checkbox";class r extends s.BaseEditor{static get EDITOR_TYPE(){return i}beginEditing(e,t){if(t&&"mouseup"===t.type&&"TD"===t.target.nodeName){const e=this.TD.querySelector('input[type="checkbox"]');(0,n.hasClass)(e,"htBadValue")||e.click()}}finishEditing(){}init(){}open(){}close(){}getValue(){}setValue(){}focus(){}}t.CheckboxEditor=r},39626:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(11936);t.EDITOR_TYPE=s.EDITOR_TYPE,t.CheckboxEditor=s.CheckboxEditor},10978:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,o(67834);var n=s(o(85707)),i=s(o(86798)),r=s(o(75972)),l=o(52618),a=o(64952),h=o(9893),c=o(13911),u=o(71257);o(17728);const d=t.EDITOR_TYPE="date",g="dateEditor";class f extends a.TextEditor{constructor(){super(...arguments),(0,n.default)(this,"defaultDateFormat","DD/MM/YYYY"),(0,n.default)(this,"parentDestroyed",!1),(0,n.default)(this,"$datePicker",null)}static get EDITOR_TYPE(){return d}init(){if("function"!=typeof i.default)throw new Error("You need to include moment.js to your project.");if("function"!=typeof r.default)throw new Error("You need to include Pikaday to your project.");super.init(),this.hot.addHook("afterDestroy",(()=>{this.parentDestroyed=!0,this.destroyElements()}))}createElements(){super.createElements(),this.datePicker=this.hot.rootDocument.createElement("DIV"),this.datePickerStyle=this.datePicker.style,this.datePickerStyle.position="absolute",this.datePickerStyle.top=0,this.datePickerStyle.left=0,this.datePickerStyle.zIndex=9999,this.datePicker.setAttribute("dir",this.hot.isRtl()?"rtl":"ltr"),(0,h.addClass)(this.datePicker,"htDatepickerHolder"),this.hot.rootDocument.body.appendChild(this.datePicker),this.eventManager.addEventListener(this.datePicker,"mousedown",(e=>{(0,h.hasClass)(e.target,"pika-day")&&this.hideDatepicker(),e.stopPropagation()}))}destroyElements(){const e=this.datePicker.parentNode;this.$datePicker&&this.$datePicker.destroy(),e&&e.removeChild(this.datePicker)}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i)}open(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;const t=this.hot.getShortcutManager().getContext("editor");this.showDatepicker(e),super.open(),t.addShortcuts([{keys:[["ArrowLeft"]],callback:()=>{this.$datePicker.adjustDate("subtract",1)}},{keys:[["ArrowRight"]],callback:()=>{this.$datePicker.adjustDate("add",1)}},{keys:[["ArrowUp"]],callback:()=>{this.$datePicker.adjustDate("subtract",7)}},{keys:[["ArrowDown"]],callback:()=>{this.$datePicker.adjustDate("add",7)}}],{group:g})}close(){var e;this._opened=!1,null!==(e=this.$datePicker)&&void 0!==e&&e.destroy&&this.$datePicker.destroy(),this.hot._registerTimeout((()=>{const e=this.hot._getEditorManager();e.closeEditor(),this.hot.view.render(),e.prepareEditor()}));this.hot.getShortcutManager().getContext("editor").removeShortcutsByGroup(g),super.close()}finishEditing(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];super.finishEditing(e,t)}showDatepicker(e){const t=this.cellProperties.dateFormat||this.defaultDateFormat,o=this.hot.view.isMouseDown(),s=!!e&&(0,u.isFunctionKey)(e.keyCode);let n;this.datePicker.style.display="block",this.$datePicker=new r.default(this.getDatePickerConfig()),"function"==typeof this.$datePicker.useMoment&&this.$datePicker.useMoment(i.default),this.$datePicker._onInputFocus=function(){},this.originalValue?(n=this.originalValue,(0,i.default)(n,t,!0).isValid()&&this.$datePicker.setMoment((0,i.default)(n,t),!0),this.getValue()!==this.originalValue&&this.setValue(this.originalValue),s||o||this.setValue("")):this.cellProperties.defaultDate?(n=this.cellProperties.defaultDate,(0,i.default)(n,t,!0).isValid()&&this.$datePicker.setMoment((0,i.default)(n,t),!0),s||o||this.setValue("")):this.$datePicker.gotoToday()}hideDatepicker(){this.datePickerStyle.display="none",this.$datePicker.hide()}getDatePickerConfig(){const e=this.TEXTAREA,t={};this.cellProperties&&this.cellProperties.datePickerConfig&&(0,c.deepExtend)(t,this.cellProperties.datePickerConfig);const o=t.onSelect,s=t.onClose;return t.field=e,t.trigger=e,t.container=this.datePicker,t.bound=!1,t.keyboardInput=!1,t.format=t.format||this.defaultDateFormat,t.reposition=t.reposition||!1,t.isRTL=!1,t.onSelect=e=>{let t=e;isNaN(t.getTime())||(t=(0,i.default)(t).format(this.cellProperties.dateFormat||this.defaultDateFormat)),this.setValue(t),o&&o()},t.onClose=()=>{this.parentDestroyed||this.finishEditing(!1),s&&s()},t}refreshDimensions(e){var t;if(super.refreshDimensions(e),this.state!==l.EDITOR_STATE.EDITING)return;if(this.TD=this.getEditedCell(),!this.TD)return void this.hideDatepicker();const{rowIndexMapper:o,columnIndexMapper:s}=this.hot,{wtOverlays:n}=this.hot.view._wt,{wtTable:i}=null!==(t=n.getParentOverlay(this.TD))&&void 0!==t?t:this.hot.view._wt,r=o.getVisualFromRenderableIndex(i.getFirstPartiallyVisibleRow()),a=o.getVisualFromRenderableIndex(i.getLastPartiallyVisibleRow()),c=s.getVisualFromRenderableIndex(i.getFirstPartiallyVisibleColumn()),u=s.getVisualFromRenderableIndex(i.getLastPartiallyVisibleColumn());if(this.row>=r&&this.row<=a&&this.col>=c&&this.col<=u){const e=this.TD.getBoundingClientRect();this.datePickerStyle.top=`${this.hot.rootWindow.pageYOffset+e.top+(0,h.outerHeight)(this.TD)}px`;let t=this.hot.rootWindow.pageXOffset;this.hot.isRtl()?t+=e.right-(0,h.outerWidth)(this.datePicker):t+=e.left,this.datePickerStyle.left=`${t}px`}else this.hideDatepicker()}}t.DateEditor=f},59127:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(10978);t.EDITOR_TYPE=s.EDITOR_TYPE,t.DateEditor=s.DateEditor},52236:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=o(80115),i=s(o(56937));const r=t.EDITOR_TYPE="dropdown";class l extends n.AutocompleteEditor{static get EDITOR_TYPE(){return r}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i),this.cellProperties.filter=!1,this.cellProperties.strict=!0}}t.DropdownEditor=l,i.default.getSingleton().add("beforeValidate",(function(e,t,o){const s=this.propToCol(o);if(Number.isInteger(s)){const e=this.getCellMeta(t,s);e.editor===l&&void 0===e.strict&&(e.filter=!1,e.strict=!0)}}))},50486:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(52236);t.EDITOR_TYPE=s.EDITOR_TYPE,t.DropdownEditor=s.DropdownEditor},29408:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952),n=o(9893),i=o(79729),r=o(13911),l=o(37947);const a="handsontableEditor",h=t.EDITOR_TYPE="handsontable";class c extends s.TextEditor{static get EDITOR_TYPE(){return h}open(){super.open(),this.htEditor&&this.htEditor.destroy(),"none"===this.htContainer.style.display&&(this.htContainer.style.display=""),this.htEditor=new this.hot.constructor(this.htContainer,this.htOptions),this.htEditor.init(),this.htEditor.rootElement.style.display="",this.cellProperties.strict?this.htEditor.selectCell(0,0):this.htEditor.deselectCell(),(0,n.setCaretPosition)(this.TEXTAREA,0,this.TEXTAREA.value.length),this.refreshDimensions()}close(){this.htEditor&&(this.htEditor.rootElement.style.display="none"),this.removeHooksByKey("beforeKeyDown"),super.close()}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i);const l=this,a={startRows:0,startCols:0,minRows:0,minCols:0,className:"listbox",copyPaste:!1,autoColumnSize:!1,autoRowSize:!1,readOnly:!0,fillHandle:!1,autoWrapCol:!1,autoWrapRow:!1,ariaTags:!1,afterOnCellMouseDown(e,t){const o=this.getSourceData(t.row,t.col);void 0!==o&&l.setValue(o),l.hot.destroyEditor()},preventWheel:!0,layoutDirection:this.hot.isRtl()?"rtl":"ltr"};this.cellProperties.handsontable&&(0,r.extend)(a,i.handsontable),this.htOptions=a}beginEditing(e,t){const o=this.hot.getSettings().onBeginEditing;o&&!1===o()||super.beginEditing(e,t)}createElements(){super.createElements();const e=this.hot.rootDocument.createElement("DIV");e.className="handsontableEditor",this.TEXTAREA_PARENT.appendChild(e),this.htContainer=e,this.assignHooks()}finishEditing(e,t,o){if(this.htEditor&&this.htEditor.isListening()&&this.hot.listen(),this.htEditor&&this.htEditor.getSelectedLast()){const e=this.htEditor.getValue();void 0!==e&&this.setValue(e)}super.finishEditing(e,t,o)}assignHooks(){this.hot.addHook("afterDestroy",(()=>{this.htEditor&&this.htEditor.destroy()}))}registerShortcuts(){const e=this.hot.getShortcutManager().getContext("editor");super.registerShortcuts();const t={group:a,relativeToGroup:l.EDITOR_EDIT_GROUP,position:"before"},o=(e,t)=>{const o=this.htEditor;if(void 0!==e&&(e<0||o.flipped&&e>o.countRows()-1?o.deselectCell():o.selectCell(e,0),o.getData().length))return t.preventDefault(),(0,i.stopImmediatePropagation)(t),this.hot.listen(),this.TEXTAREA.focus(),!1};e.addShortcuts([{keys:[["ArrowUp"]],callback:e=>{const t=this.htEditor;let s,n;return!t.getSelectedLast()&&t.flipped?s=t.countRows()-1:t.getSelectedLast()&&(t.flipped?(n=t.getSelectedLast()[0],s=Math.max(0,n-1)):(n=t.getSelectedLast()[0],s=n-1)),o(s,e)},preventDefault:!1},{keys:[["ArrowDown"]],callback:e=>{const t=this.htEditor;let s,n;if(t.getSelectedLast()||t.flipped){if(t.getSelectedLast())if(t.flipped)s=t.getSelectedLast()[0]+1;else if(!t.flipped){const e=t.countRows()-1;n=t.getSelectedLast()[0],s=Math.min(e,n+1)}}else s=0;return o(s,e)},preventDefault:!1}],t)}unregisterShortcuts(){super.unregisterShortcuts();this.hot.getShortcutManager().getContext("editor").removeShortcutsByGroup(a)}}t.HandsontableEditor=c},56138:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(29408);t.EDITOR_TYPE=s.EDITOR_TYPE,t.HandsontableEditor=s.HandsontableEditor},83645:(e,t,o)=>{"use strict";t.__esModule=!0,t.registerAllEditors=function(){(0,f.registerEditor)(n.BaseEditor),(0,f.registerEditor)(s.AutocompleteEditor),(0,f.registerEditor)(i.CheckboxEditor),(0,f.registerEditor)(r.DateEditor),(0,f.registerEditor)(l.DropdownEditor),(0,f.registerEditor)(a.HandsontableEditor),(0,f.registerEditor)(h.NumericEditor),(0,f.registerEditor)(c.PasswordEditor),(0,f.registerEditor)(u.SelectEditor),(0,f.registerEditor)(d.TextEditor),(0,f.registerEditor)(g.TimeEditor)};var s=o(80115);t.AutocompleteEditor=s.AutocompleteEditor,t.AUTOCOMPLETE_EDITOR=s.EDITOR_TYPE;var n=o(52618);t.BaseEditor=n.BaseEditor,t.BASE_EDITOR=n.EDITOR_TYPE;var i=o(39626);t.CheckboxEditor=i.CheckboxEditor,t.CHECKBOX_EDITOR=i.EDITOR_TYPE;var r=o(59127);t.DateEditor=r.DateEditor,t.DATE_EDITOR=r.EDITOR_TYPE;var l=o(50486);t.DropdownEditor=l.DropdownEditor,t.DROPDOWN_EDITOR=l.EDITOR_TYPE;var a=o(56138);t.HandsontableEditor=a.HandsontableEditor,t.HANDSONTABLE_EDITOR=a.EDITOR_TYPE;var h=o(33972);t.NumericEditor=h.NumericEditor,t.NUMERIC_EDITOR=h.EDITOR_TYPE;var c=o(46138);t.PasswordEditor=c.PasswordEditor,t.PASSWORD_EDITOR=c.EDITOR_TYPE;var u=o(7507);t.SelectEditor=u.SelectEditor,t.SELECT_EDITOR=u.EDITOR_TYPE;var d=o(64952);t.TextEditor=d.TextEditor,t.TEXT_EDITOR=d.EDITOR_TYPE;var g=o(14902);t.TimeEditor=g.TimeEditor,t.TIME_EDITOR=g.EDITOR_TYPE;var f=o(84558);t.registerEditor=f.registerEditor,t.RegisteredEditor=f.RegisteredEditor,t._getEditorInstance=f._getEditorInstance,t.getEditor=f.getEditor,t.getEditorInstance=f.getEditorInstance,t.getRegisteredEditorNames=f.getRegisteredEditorNames,t.getRegisteredEditors=f.getRegisteredEditors,t.hasEditor=f.hasEditor},33972:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(29230);t.EDITOR_TYPE=s.EDITOR_TYPE,t.NumericEditor=s.NumericEditor},29230:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952);const n=t.EDITOR_TYPE="numeric";class i extends s.TextEditor{static get EDITOR_TYPE(){return n}}t.NumericEditor=i},46138:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(99896);t.EDITOR_TYPE=s.EDITOR_TYPE,t.PasswordEditor=s.PasswordEditor},99896:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952),n=o(9893),i=o(92692);const r=t.EDITOR_TYPE="password";class l extends s.TextEditor{static get EDITOR_TYPE(){return r}createElements(){super.createElements(),this.TEXTAREA=this.hot.rootDocument.createElement("input"),this.TEXTAREA.setAttribute("type","password"),this.TEXTAREA.setAttribute("data-hot-input",""),this.TEXTAREA.className="handsontableInput",this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.hot.getSettings().ariaTags&&(0,n.setAttribute)(this.TEXTAREA,[(0,i.A11Y_HIDDEN)()]),(0,n.empty)(this.TEXTAREA_PARENT),this.TEXTAREA_PARENT.appendChild(this.TEXTAREA)}}t.PasswordEditor=l},84558:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.RegisteredEditor=d,t.getEditorInstance=t._getEditorInstance=function(e,t){let o;if("function"==typeof e)r.get(e)||g(null,e),o=r.get(e);else{if("string"!=typeof e)throw Error('Only strings and functions can be passed as "editor" parameter');o=a(e)}if(!o)throw Error(`No editor registered under name "${e}"`);return o.getInstance(t)},t.getEditor=function(e){if("function"==typeof e)return e;if(!h(e))throw Error(`No registered editor found under "${e}" name`);return a(e).getConstructor()},t.registerEditor=g,o(67834);var n=s(o(56937)),i=s(o(71263));const r=new WeakMap,{register:l,getItem:a,hasItem:h,getNames:c,getValues:u}=(0,i.default)("editors");function d(e){const t={},o=e;this.getConstructor=function(){return e},this.getInstance=function(e){return e.guid in t||(t[e.guid]=new o(e)),t[e.guid]},n.default.getSingleton().add("afterDestroy",(function(){t[this.guid]=null}))}function g(e,t){e&&"string"!=typeof e&&(e=(t=e).EDITOR_TYPE);const o=new d(t);"string"==typeof e&&l(e,o),r.set(t,o)}t.getRegisteredEditors=u,t.getRegisteredEditorNames=c,t.hasEditor=h},7507:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(24138);t.EDITOR_TYPE=s.EDITOR_TYPE,t.SelectEditor=s.SelectEditor},24138:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(52618),n=o(9893),i=o(13911);const r="ht_editor_visible",l="selectEditor",a=t.EDITOR_TYPE="select";class h extends s.BaseEditor{static get EDITOR_TYPE(){return a}init(){this.select=this.hot.rootDocument.createElement("select"),this.select.setAttribute("data-hot-input","true"),this.select.style.display="none",(0,n.addClass)(this.select,"htSelectEditor"),this.hot.rootElement.appendChild(this.select),this.registerHooks()}getValue(){return this.select.value}setValue(e){this.select.value=e}open(){this._opened=!0,this.refreshDimensions(),this.select.style.display="";this.hot.getShortcutManager().setActiveContextName("editor"),this.registerShortcuts()}close(){this._opened=!1,this.select.style.display="none",(0,n.hasClass)(this.select,r)&&(0,n.removeClass)(this.select,r),this.unregisterShortcuts(),this.clearHooks()}focus(){this.select.focus()}registerHooks(){this.addHook("afterScrollHorizontally",(()=>this.refreshDimensions())),this.addHook("afterScrollVertically",(()=>this.refreshDimensions())),this.addHook("afterColumnResize",(()=>this.refreshDimensions())),this.addHook("afterRowResize",(()=>this.refreshDimensions()))}prepare(e,t,o,s,r,l){super.prepare(e,t,o,s,r,l);const a=this.cellProperties.selectOptions;let h;h="function"==typeof a?this.prepareOptions(a(this.row,this.col,this.prop)):this.prepareOptions(a),(0,n.empty)(this.select),(0,i.objectEach)(h,((e,t)=>{const o=this.hot.rootDocument.createElement("OPTION");o.value=t,(0,n.fastInnerHTML)(o,e),this.select.appendChild(o)}))}prepareOptions(e){let t={};if(Array.isArray(e))for(let o=0,s=e.length;o<s;o++)t[e[o]]=e[o];else"object"==typeof e&&(t=e);return t}refreshValue(){const e=this.hot.getSourceDataAtCell(this.row,this.prop);this.originalValue=e,this.setValue(e),this.refreshDimensions()}refreshDimensions(){if(this.state!==s.EDITOR_STATE.EDITING)return;if(this.TD=this.getEditedCell(),!this.TD)return void this.close();const{top:e,start:t,width:o,height:i}=this.getEditedCellRect(),l=this.select.style;l.height=`${i}px`,l.width=`${o}px`,l.top=`${e}px`,l[this.hot.isRtl()?"right":"left"]=`${t}px`,l.margin="0px",(0,n.addClass)(this.select,r)}registerShortcuts(){const e=this.hot.getShortcutManager().getContext("editor"),t={group:l};this.isInFullEditMode()&&e.addShortcuts([{keys:[["ArrowUp"]],callback:()=>{const e=this.select.selectedIndex-1;e>=0&&(this.select[e].selected=!0)}},{keys:[["ArrowDown"]],callback:()=>{const e=this.select.selectedIndex+1;e<=this.select.length-1&&(this.select[e].selected=!0)}}],t)}unregisterShortcuts(){this.hot.getShortcutManager().getContext("editor").removeShortcutsByGroup(l)}}t.SelectEditor=h},40559:(e,t,o)=>{"use strict";t.__esModule=!0,t.updateCaretPosition=function(e,t){const o=(0,s.getCaretPosition)(t),n=t.value.split("\n");let i=o,r=0;for(let t=0;t<n.length;t++){const s=n[t];0!==t&&(r+=n[t-1].length+1);const l=r+s.length;if("home"===e?i=r:"end"===e&&(i=l),o<=l)break}(0,s.setCaretPosition)(t,i)};var s=o(9893)},64952:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(82540);t.EDITOR_TYPE=s.EDITOR_TYPE,t.TextEditor=s.TextEditor},82540:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0;var n=s(o(85707)),i=o(52618),r=s(o(82629)),l=o(28890),a=o(9893),h=o(87485),c=o(11139),u=o(38893),d=o(40559),g=o(92692);const f="ht_editor_hidden",p="textEditor",m=t.EDITOR_TYPE="text";class w extends i.BaseEditor{static get EDITOR_TYPE(){return m}constructor(e){super(e),(0,n.default)(this,"eventManager",new r.default(this)),(0,n.default)(this,"autoResize",(0,c.createInputElementResizer)(this.hot.rootDocument)),(0,n.default)(this,"TEXTAREA",void 0),(0,n.default)(this,"textareaStyle",void 0),(0,n.default)(this,"TEXTAREA_PARENT",void 0),(0,n.default)(this,"textareaParentStyle",void 0),(0,n.default)(this,"layerClass",void 0),this.eventManager=new r.default(this),this.createElements(),this.bindEvents(),this.hot.addHookOnce("afterDestroy",(()=>this.destroy()))}getValue(){return this.TEXTAREA.value}setValue(e){this.TEXTAREA.value=e}open(){this.refreshDimensions(),this.showEditableElement(),this.hot.getShortcutManager().setActiveContextName("editor"),this.registerShortcuts()}close(){this.autoResize.unObserve(),(0,a.isThisHotChild)(this.hot.rootDocument.activeElement,this.hot.rootElement)&&this.hot.listen(),this.hideEditableElement(),this.unregisterShortcuts()}prepare(e,t,o,s,n,r){const l=this.state;if(super.prepare(e,t,o,s,n,r),!r.readOnly){this.refreshDimensions(!0);const{allowInvalid:e}=r;e&&!this.isOpened()&&(this.TEXTAREA.value=""),l===i.EDITOR_STATE.FINISHED||this.isOpened()||this.hideEditableElement()}}beginEditing(e,t){this.state===i.EDITOR_STATE.VIRGIN&&(this.TEXTAREA.value="",super.beginEditing(e,t))}focus(){this.TEXTAREA.select(),(0,a.setCaretPosition)(this.TEXTAREA,this.TEXTAREA.value.length)}createElements(){const{rootDocument:e}=this.hot;this.TEXTAREA=e.createElement("TEXTAREA"),(0,a.setAttribute)(this.TEXTAREA,[["data-hot-input",""],(0,g.A11Y_TABINDEX)(-1)]),this.hot.getSettings().ariaTags&&(0,a.setAttribute)(this.TEXTAREA,[(0,g.A11Y_HIDDEN)()]),(0,a.addClass)(this.TEXTAREA,"handsontableInput"),this.textareaStyle=this.TEXTAREA.style,this.textareaStyle.width=0,this.textareaStyle.height=0,this.textareaStyle.overflowY="visible",this.TEXTAREA_PARENT=e.createElement("DIV"),(0,a.addClass)(this.TEXTAREA_PARENT,"handsontableInputHolder"),(0,a.hasClass)(this.TEXTAREA_PARENT,this.layerClass)&&(0,a.removeClass)(this.TEXTAREA_PARENT,this.layerClass),(0,a.addClass)(this.TEXTAREA_PARENT,f),this.textareaParentStyle=this.TEXTAREA_PARENT.style,this.TEXTAREA_PARENT.appendChild(this.TEXTAREA),this.hot.rootElement.appendChild(this.TEXTAREA_PARENT)}hideEditableElement(){(0,l.isEdge)()&&(this.textareaStyle.textIndent="-99999px"),this.textareaStyle.overflowY="visible",this.textareaParentStyle.opacity="0",this.textareaParentStyle.height="1px",(0,a.removeClass)(this.TEXTAREA_PARENT,this.layerClass),(0,a.addClass)(this.TEXTAREA_PARENT,f)}showEditableElement(){this.textareaParentStyle.height="",this.textareaParentStyle.overflow="",this.textareaParentStyle.position="",this.textareaParentStyle[this.hot.isRtl()?"left":"right"]="auto",this.textareaParentStyle.opacity="1",this.textareaStyle.textIndent="";const e=this.TEXTAREA_PARENT.childNodes;let t=!1;(0,h.rangeEach)(e.length-1,(o=>{const s=e[o];if((0,a.hasClass)(s,"handsontableEditor"))return t=!0,!1})),(0,a.hasClass)(this.TEXTAREA_PARENT,f)&&(0,a.removeClass)(this.TEXTAREA_PARENT,f),t?(this.layerClass="ht_editor_visible",(0,a.addClass)(this.TEXTAREA_PARENT,this.layerClass)):(this.layerClass=this.getEditedCellsLayerClass(),(0,a.addClass)(this.TEXTAREA_PARENT,this.layerClass))}refreshValue(){const e=this.hot.toPhysicalRow(this.row),t=this.hot.getSourceDataAtCell(e,this.col);this.originalValue=t,this.setValue(t),this.refreshDimensions()}refreshDimensions(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.state!==i.EDITOR_STATE.EDITING&&!e)return;if(this.TD=this.getEditedCell(),!this.TD)return void(e||this.close());const{top:t,start:o,width:s,maxWidth:n,height:r,maxHeight:l}=this.getEditedCellRect();this.textareaParentStyle.top=`${t}px`,this.textareaParentStyle[this.hot.isRtl()?"right":"left"]=`${o}px`,this.showEditableElement();const h=(0,a.getComputedStyle)(this.TD,this.hot.rootWindow);this.TEXTAREA.style.fontSize=h.fontSize,this.TEXTAREA.style.fontFamily=h.fontFamily,this.TEXTAREA.style.backgroundColor=this.TD.style.backgroundColor;const c=(0,a.getComputedStyle)(this.TEXTAREA),u=parseInt(c.paddingLeft,10)+parseInt(c.paddingRight,10),d=parseInt(c.paddingTop,10)+parseInt(c.paddingBottom,10),g=s-u,f=r-d,p=n-u,m=l-d;this.autoResize.init(this.TEXTAREA,{minWidth:Math.min(g,p),minHeight:Math.min(f,m),maxWidth:p,maxHeight:m},!0)}bindEvents(){(0,l.isIOS)()&&this.eventManager.addEventListener(this.TEXTAREA,"focusout",(()=>this.finishEditing(!1))),this.addHook("afterScrollHorizontally",(()=>this.refreshDimensions())),this.addHook("afterScrollVertically",(()=>this.refreshDimensions())),this.addHook("afterColumnResize",(()=>{this.refreshDimensions(),this.state===i.EDITOR_STATE.EDITING&&this.focus()})),this.addHook("afterRowResize",(()=>{this.refreshDimensions(),this.state===i.EDITOR_STATE.EDITING&&this.focus()}))}allowKeyEventPropagation(){}destroy(){this.eventManager.destroy(),this.clearHooks()}registerShortcuts(){const e=this.hot.getShortcutManager().getContext("editor"),t={runOnlyIf:()=>(0,u.isDefined)(this.hot.getSelected()),group:p},o=()=>{this.hot.rootDocument.execCommand("insertText",!1,"\n")};e.addShortcuts([{keys:[["Control","Enter"]],callback:()=>(o(),!1),runOnlyIf:e=>!this.hot.selection.isMultiple()&&!e.altKey},{keys:[["Meta","Enter"]],callback:()=>(o(),!1),runOnlyIf:()=>!this.hot.selection.isMultiple()},{keys:[["Alt","Enter"]],callback:()=>(o(),!1)},{keys:[["Home"]],callback:(e,t)=>{let[o]=t;(0,d.updateCaretPosition)(o,this.TEXTAREA)}},{keys:[["End"]],callback:(e,t)=>{let[o]=t;(0,d.updateCaretPosition)(o,this.TEXTAREA)}}],t)}unregisterShortcuts(){this.hot.getShortcutManager().getContext("editor").removeShortcutsByGroup(p)}}t.TextEditor=w},14902:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(9412);t.EDITOR_TYPE=s.EDITOR_TYPE,t.TimeEditor=s.TimeEditor},9412:(e,t,o)=>{"use strict";t.__esModule=!0;var s=o(64952);const n=t.EDITOR_TYPE="time";class i extends s.TextEditor{static get EDITOR_TYPE(){return n}prepare(e,t,o,s,n,i){super.prepare(e,t,o,s,n,i),this.TEXTAREA.dir="ltr"}}t.TimeEditor=i},82629:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t.getListenersCounter=function(){return r},o(15724);var n=s(o(85707)),i=o(79729);let r=0;t.default=class{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;(0,n.default)(this,"context",void 0),this.context=e||this,this.context.eventListeners||(this.context.eventListeners=[])}addEventListener(e,t,o){let s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];function n(e){o.call(this,function(e){const t=e.stopImmediatePropagation;return e.stopImmediatePropagation=function(){t.apply(this),(0,i.stopImmediatePropagation)(this)},e}(e))}return this.context.eventListeners.push({element:e,event:t,callback:o,callbackProxy:n,options:s,eventManager:this}),e.addEventListener(t,n,s),r+=1,()=>{this.removeEventListener(e,t,o)}}removeEventListener(e,t,o){let s,n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],i=this.context.eventListeners.length;for(;i;)if(i-=1,s=this.context.eventListeners[i],s.event===t&&s.element===e){if(o&&o!==s.callback)continue;if(n&&s.eventManager!==this)continue;this.context.eventListeners.splice(i,1),s.element.removeEventListener(s.event,s.callbackProxy,s.options),r-=1}}clearEvents(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!this.context)return;let t=this.context.eventListeners.length;for(;t;){t-=1;const o=this.context.eventListeners[t];e&&o.eventManager!==this||(this.context.eventListeners.splice(t,1),o.element.removeEventListener(o.event,o.callbackProxy,o.options),r-=1)}}clear(){this.clearEvents()}destroy(){this.clearEvents(),this.context=null}destroyWithOwnEventsOnly(){this.clearEvents(!0),this.context=null}fireEvent(e,t){let o=e.document,s=e;o||(o=e.ownerDocument?e.ownerDocument:e,s=o.defaultView);const n={bubbles:!0,cancelable:"mousemove"!==t,view:s,detail:0,screenX:0,screenY:0,clientX:1,clientY:1,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:void 0};let i;o.createEvent?(i=o.createEvent("MouseEvents"),i.initMouseEvent(t,n.bubbles,n.cancelable,n.view,n.detail,n.screenX,n.screenY,n.clientX,n.clientY,n.ctrlKey,n.altKey,n.shiftKey,n.metaKey,n.button,n.relatedTarget||o.body.parentNode)):i=o.createEventObject(),e.dispatchEvent?e.dispatchEvent(i):e.fireEvent(`on${t}`,i)}}},26505:(e,t,o)=>{"use strict";t.__esModule=!0,o(67834);var s=o(83119),n=o(9893),i=o(78832);function r(e,t,o){l(e,t),t.set(e,o)}function l(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function a(e,t){return e.get(c(e,t))}function h(e,t,o){return e.set(c(e,t),o),o}function c(e,t,o){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:o;throw new TypeError("Private element is not present on this object")}const u=Object.freeze({CELL:"cell",MIXED:"mixed"});var d=new WeakMap,g=new WeakMap,f=new WeakMap,p=new WeakMap,m=new WeakMap,w=new WeakSet;function C(e){var t;const o=null===(t=a(d,this).getSelectedRangeLast())||void 0===t?void 0:t.highlight;if(!o||!a(d,this).selection.isCellVisible(o))return void e(null);const s=a(d,this).getCell(o.row,o.col,!0);null===s?a(d,this).addHookOnce("afterScroll",(()=>{e(a(d,this).getCell(o.row,o.col,!0))})):e(s)}function v(){c(w,this,C).call(this,(e=>{const{activeElement:t}=a(d,this).rootDocument;t&&(0,n.isOutsideInput)(t)&&t.blur(),this.focusOnHighlightedCell(e)}))}function y(){c(w,this,C).call(this,(e=>{this.getFocusMode()===u.MIXED&&"TD"===e.nodeName&&this.refocusToEditorTextarea()}))}function E(e){"boolean"==typeof e.imeFastEdit&&this.setFocusMode(e.imeFastEdit?u.MIXED:u.CELL)}t.FocusManager=class{constructor(e){var t,o,s=this;l(t=this,o=w),o.add(t),r(this,d,void 0),r(this,g,void 0),r(this,f,1),r(this,p,null),r(this,m,new Map);const n=e.getSettings();h(d,this,e),h(g,this,n.imeFastEdit?u.MIXED:u.CELL),a(d,this).addHook("afterUpdateSettings",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return c(w,s,E).call(s,...t)})),a(d,this).addHook("afterSelection",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return c(w,s,v).call(s,...t)})),a(d,this).addHook("afterSelectionFocusSet",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return c(w,s,v).call(s,...t)})),a(d,this).addHook("afterSelectionEnd",(function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return c(w,s,y).call(s,...t)}))}getFocusMode(){return a(g,this)}setFocusMode(e){Object.values(u).includes(e)?h(g,this,e):(0,s.warn)(`"${e}" is not a valid focus mode.`)}getRefocusDelay(){return a(f,this)}setRefocusDelay(e){h(f,this,e)}setRefocusElementGetter(e){h(p,this,e)}getRefocusElement(){return"function"==typeof a(p,this)?a(p,this).call(this):null===(e=a(d,this).getActiveEditor())||void 0===e?void 0:e.TEXTAREA;var e}focusOnHighlightedCell(e){const t=e=>{var t,o;const s=null===(t=a(d,this).getSelectedRangeLast())||void 0===t?void 0:t.highlight;if(!s)return;let n=a(d,this).runHooks("modifyFocusedElement",s.row,s.col,e);n instanceof HTMLElement||(n=e),!n||null!==(o=a(d,this).getActiveEditor())&&void 0!==o&&o.isOpened()||n.focus({preventScroll:!0})};e?t(e):c(w,this,C).call(this,(e=>t(e)))}refocusToEditorTextarea(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a(f,this);const o=this.getRefocusElement();!a(d,this).getSettings().imeFastEdit||null!==(e=a(d,this).getActiveEditor())&&void 0!==e&&e.isOpened()||!o||(a(m,this).has(t)||a(m,this).set(t,(0,i.debounce)((()=>{o.select()}),t)),a(m,this).get(t)())}}},92692:(e,t)=>{"use strict";t.__esModule=!0;t.A11Y_TABINDEX=e=>["tabindex",e];t.A11Y_TREEGRID=()=>["role","treegrid"];t.A11Y_PRESENTATION=()=>["role","presentation"];t.A11Y_GRIDCELL=()=>["role","gridcell"];t.A11Y_ROWHEADER=()=>["role","rowheader"];t.A11Y_ROWGROUP=()=>["role","rowgroup"];t.A11Y_COLUMNHEADER=()=>["role","columnheader"];t.A11Y_ROW=()=>["role","row"];t.A11Y_MENU=()=>["role","menu"];t.A11Y_MENU_ITEM=()=>["role","menuitem"];t.A11Y_MENU_ITEM_CHECKBOX=()=>["role","menuitemcheckbox"];t.A11Y_COMBOBOX=()=>["role","combobox"];t.A11Y_LISTBOX=()=>["role","listbox"];t.A11Y_OPTION=()=>["role","option"];t.A11Y_CHECKBOX=()=>["role","checkbox"];t.A11Y_SCOPE_COL=()=>["scope","col"];t.A11Y_SCOPE_ROW=()=>["scope","row"];t.A11Y_TEXT=()=>["type","text"];t.A11Y_LABEL=e=>["aria-label",e];t.A11Y_HIDDEN=()=>["aria-hidden","true"];t.A11Y_DISABLED=()=>["aria-disabled","true"];t.A11Y_MULTISELECTABLE=()=>["aria-multiselectable","true"];t.A11Y_HASPOPUP=e=>["aria-haspopup",e];t.A11Y_ROWCOUNT=e=>["aria-rowcount",e];t.A11Y_COLCOUNT=e=>["aria-colcount",e];t.A11Y_ROWINDEX=e=>["aria-rowindex",e];t.A11Y_COLINDEX=e=>["aria-colindex",e];t.A11Y_EXPANDED=e=>["aria-expanded",e];t.A11Y_SORT=e=>["aria-sort",e];t.A11Y_READONLY=()=>["aria-readonly","true"];t.A11Y_INVALID=()=>["aria-invalid","true"];t.A11Y_CHECKED=e=>["aria-checked",e];t.A11Y_SELECTED=()=>["aria-selected","true"];t.A11Y_AUTOCOMPLETE=()=>["aria-autocomplete","list"];t.A11Y_CONTROLS=e=>["aria-controls",e];t.A11Y_ACTIVEDESCENDANT=e=>["aria-activedescendant",e];t.A11Y_LIVE=e=>["aria-live",e];t.A11Y_RELEVANT=e=>["aria-relevant",e];t.A11Y_SETSIZE=e=>["aria-setsize",e];t.A11Y_POSINSET=e=>["aria-posinset",e]},9175:(e,t,o)=>{"use strict";function s(e,t,o,s){let n=-1,i=e,r=o;Array.isArray(e)||(i=Array.from(e));const l=i.length;for(s&&l&&(n+=1,r=i[n]),n+=1;n<l;)r=t(r,i[n],n,i),n+=1;return r}function n(e,t){let o=0,s=e;Array.isArray(e)||(s=Array.from(e));const n=s.length;for(;o<n&&!1!==t(s[o],o,s);)o+=1;return e}function i(e){return s(e,((e,t)=>e+t),0)}t.__esModule=!0,t.arrayAvg=function(e){if(!e.length)return 0;return i(e)/e.length},t.arrayEach=n,t.arrayFilter=function(e,t){let o=0,s=e;Array.isArray(e)||(s=Array.from(e));const n=s.length,i=[];let r=-1;for(;o<n;){const e=s[o];t(e,o,s)&&(r+=1,i[r]=e),o+=1}return i},t.arrayFlatten=function e(t){return s(t,((t,o)=>t.concat(Array.isArray(o)?e(o):o)),[])},t.arrayMap=function(e,t){let o=0,s=e;Array.isArray(e)||(s=Array.from(e));const n=s.length,i=[];let r=-1;for(;o<n;){const e=s[o];r+=1,i[r]=t(e,o,s),o+=1}return i},t.arrayMax=function(e){return s(e,((e,t)=>e>t?e:t),Array.isArray(e)?e[0]:void 0)},t.arrayMin=function(e){return s(e,((e,t)=>e<t?e:t),Array.isArray(e)?e[0]:void 0)},t.arrayReduce=s,t.arraySum=i,t.arrayUnique=function(e){const t=[];return n(e,(e=>{-1===t.indexOf(e)&&t.push(e)})),t},t.extendArray=function(e,t){const o=t.length;let s=0;for(;s<o;)e.push(t[s]),s+=1},t.getDifferenceOfArrays=function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];const[s,...i]=[...t];let r=s;return n(i,(e=>{r=r.filter((t=>!e.includes(t)))})),r},t.getIntersectionOfArrays=function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];const[s,...i]=[...t];let r=s;return n(i,(e=>{r=r.filter((t=>e.includes(t)))})),r},t.getUnionOfArrays=function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];const[s,...i]=[...t],r=new Set(s);return n(i,(e=>{n(e,(e=>{r.has(e)||r.add(e)}))})),Array.from(r)},t.pivot=function(e){const t=[];if(!e||0===e.length||!e[0]||0===e[0].length)return t;const o=e.length,s=e[0].length;for(let n=0;n<o;n++)for(let o=0;o<s;o++)t[o]||(t[o]=[]),t[o][n]=e[n][o];return t},t.stringToArray=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" ";return e.split(t)},t.to2dArray=function(e){const t=e.length;let o=0;for(;o<t;)e[o]=[e[o]],o+=1},o(15724),o(71336),o(41558),o(17663),o(68630),o(79645),o(89858),o(8620)},28890:(e,t,o)=>{"use strict";t.__esModule=!0,t.isChrome=function(){return r.chrome.value},t.isChromeWebKit=function(){return r.chromeWebKit.value},t.isEdge=function(){return r.edge.value},t.isEdgeWebKit=function(){return r.edgeWebKit.value},t.isFirefox=function(){return r.firefox.value},t.isFirefoxWebKit=function(){return r.firefoxWebKit.value},t.isIOS=function(){return l.ios.value},t.isIpadOS=function(){let{maxTouchPoints:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:navigator;return e>2&&l.mac.value},t.isLinuxOS=function(){return l.linux.value},t.isMacOS=function(){return l.mac.value},t.isMobileBrowser=function(){return r.mobile.value},t.isSafari=function(){return r.safari.value},t.isWindowsOS=function(){return l.win.value},t.setBrowserMeta=a,t.setPlatformMeta=h;var s=o(13911),n=o(93980);const i=e=>{const t={value:!1,test:(o,s)=>{t.value=e(o,s)}};return t},r={chrome:i(((e,t)=>/Chrome/.test(e)&&/Google/.test(t))),chromeWebKit:i((e=>/CriOS/.test(e))),edge:i((e=>/Edge/.test(e))),edgeWebKit:i((e=>/EdgiOS/.test(e))),firefox:i((e=>/Firefox/.test(e))),firefoxWebKit:i((e=>/FxiOS/.test(e))),mobile:i((e=>/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(e))),safari:i(((e,t)=>/Safari/.test(e)&&/Apple Computer/.test(t)))},l={mac:i((e=>/^Mac/.test(e))),win:i((e=>/^Win/.test(e))),linux:i((e=>/^Linux/.test(e))),ios:i((e=>/iPhone|iPad|iPod/i.test(e)))};function a(){let{userAgent:e=navigator.userAgent,vendor:t=navigator.vendor}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,s.objectEach)(r,(o=>{let{test:s}=o;s(e,t)}))}function h(){let{platform:e=navigator.platform}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,s.objectEach)(l,(t=>{let{test:o}=t;o(e)}))}(0,n.isCSR)()&&(a(),h())},83119:(e,t,o)=>{"use strict";t.__esModule=!0,t.error=function(){(0,s.isDefined)(console)&&console.error(...arguments)},t.info=function(){(0,s.isDefined)(console)&&console.info(...arguments)},t.log=function(){(0,s.isDefined)(console)&&console.log(...arguments)},t.warn=function(){(0,s.isDefined)(console)&&console.warn(...arguments)};var s=o(38893)},56216:(e,t,o)=>{"use strict";t.__esModule=!0,t.countFirstRowKeys=function(e){let t=0;Array.isArray(e)&&(e[0]&&Array.isArray(e[0])?t=e[0].length:e[0]&&(0,s.isObject)(e[0])&&(t=(0,s.deepObjectSize)(e[0])));return t},t.createEmptySpreadsheetData=function(e,t){const o=[];let s;for(let n=0;n<e;n++){s=[];for(let e=0;e<t;e++)s.push("");o.push(s)}return o},t.createSpreadsheetData=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:4;const o=[];let s,n;for(s=0;s<e;s++){const e=[];for(n=0;n<t;n++)e.push(r(n)+(s+1));o.push(e)}return o},t.createSpreadsheetObjectData=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:4;const o=[];let s,n;for(s=0;s<e;s++){const e={};for(n=0;n<t;n++)e[`prop${n}`]=r(n)+(s+1);o.push(e)}return o},t.dataRowToChangesArray=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=e;const s=[];Array.isArray(e)&&Array.isArray(e[0])||(o=[e]);return o.forEach(((e,o)=>{Array.isArray(e)?e.forEach(((e,n)=>{s.push([o+t,n,e])})):Object.keys(e).forEach((n=>{s.push([o+t,n,e[n]])}))})),s},t.isArrayOfArrays=function(e){return!!(Array.isArray(e)&&e.length&&e.every((e=>Array.isArray(e))))},t.isArrayOfObjects=function(e){return!!(Array.isArray(e)&&e.length&&e.every((e=>"object"==typeof e&&!Array.isArray(e)&&null!==e)))},t.spreadsheetColumnIndex=function(e){let t=0;if(e)for(let o=0,s=e.length-1;o<e.length;o+=1,s-=1)t+=i**s*(n.indexOf(e[o])+1);return t-=1,t},t.spreadsheetColumnLabel=r,o(15724);var s=o(13911);const n="ABCDEFGHIJKLMNOPQRSTUVWXYZ",i=n.length;function r(e){let t,o=e+1,s="";for(;o>0;)t=(o-1)%i,s=String.fromCharCode(65+t)+s,o=parseInt((o-t)/i,10);return s}},72484:(e,t)=>{"use strict";t.__esModule=!0,t.getNormalizedDate=function(e){const t=new Date(e);if(!isNaN(new Date(`${e}T00:00`).getDate()))return new Date(t.getTime()+6e4*t.getTimezoneOffset());return t}},9893:(e,t,o)=>{"use strict";t.__esModule=!0,t.addClass=h,t.addEvent=function(e,t,o){e.addEventListener(t,o,!1)},t.clearTextSelection=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window;e.getSelection&&(e.getSelection().empty?e.getSelection().empty():e.getSelection().removeAllRanges&&e.getSelection().removeAllRanges())},t.closest=r,t.closestDown=function(e,t,o){const s=[];let n=e;for(;n&&(n=r(n,t,o),n&&(!o||o.contains(n)));)s.push(n),n=n.host&&n.nodeType===Node.DOCUMENT_FRAGMENT_NODE?n.host:n.parentNode;const i=s.length;return i?s[i-1]:null},t.empty=d,t.fastInnerHTML=function(e,t){let o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];g.test(t)?e.innerHTML=o?(0,s.sanitize)(t):t:f(e,t)},t.fastInnerText=f,t.getCaretPosition=function(e){if(e.selectionStart)return e.selectionStart;return 0},t.getComputedStyle=w,t.getCssTransform=function(e){let t;if(e.style.transform&&""!==(t=e.style.transform))return["transform",t];return-1},t.getFrameElement=i,t.getMaximumScrollLeft=function(e){return e.scrollWidth-e.clientWidth},t.getMaximumScrollTop=function(e){return e.scrollHeight-e.clientHeight},t.getParent=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=-1,s=null,n=e;for(;null!==n;){if(o===t){s=n;break}n.host&&n.nodeType===Node.DOCUMENT_FRAGMENT_NODE?n=n.host:(o+=1,n=n.parentNode)}return s},t.getParentWindow=function(e){return i(e)&&e.parent},t.getScrollLeft=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;if(e===t)return m(t);return e.scrollLeft},t.getScrollTop=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;if(e===t)return p(t);return e.scrollTop},t.getScrollableElement=function(e){let t=e.ownerDocument,o=t?t.defaultView:void 0;t||(t=e.document?e.document:e,o=t.defaultView);const s=["auto","scroll"];let n=e.parentNode;for(;n&&n.style&&t.body!==n;){let{overflow:e,overflowX:t,overflowY:i}=n.style;if([e,t,i].includes("scroll"))return n;if(({overflow:e,overflowX:t,overflowY:i}=o.getComputedStyle(n)),s.includes(e)||s.includes(t)||s.includes(i))return n;if(n.clientHeight<=n.scrollHeight+1&&(s.includes(i)||s.includes(e)))return n;if(n.clientWidth<=n.scrollWidth+1&&(s.includes(t)||s.includes(e)))return n;n=n.parentNode}return o},t.getScrollbarWidth=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;void 0===C&&(C=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;const t=e.createElement("div");t.style.height="200px",t.style.width="100%";const o=e.createElement("div");o.style.boxSizing="content-box",o.style.height="150px",o.style.left="0px",o.style.overflow="hidden",o.style.position="absolute",o.style.top="0px",o.style.width="200px",o.style.visibility="hidden",o.appendChild(t),(e.body||e.documentElement).appendChild(o);const s=t.offsetWidth;o.style.overflow="scroll";let n=t.offsetWidth;s===n&&(n=o.clientWidth);return(e.body||e.documentElement).removeChild(o),s-n}(e));return C},t.getSelectionEndPosition=function(e){if(e.selectionEnd)return e.selectionEnd;return 0},t.getSelectionText=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window;const t=e.document;let o="";e.getSelection?o=e.getSelection().toString():t.selection&&"Control"!==t.selection.type&&(o=t.selection.createRange().text);return o},t.getStyle=function(e,t){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:window;if(!e)return;if(e===o)return"width"===t?`${o.innerWidth}px`:"height"===t?`${o.innerHeight}px`:void 0;const s=e.style[t];if(""!==s&&void 0!==s)return s;const n=w(e,o);if(""!==n[t]&&void 0!==n[t])return n[t]},t.getTrimmingContainer=function(e){const t=e.ownerDocument,o=t.defaultView;let s=e.parentNode;for(;s&&s.style&&t.body!==s;){if("visible"!==s.style.overflow&&""!==s.style.overflow)return s;const e=w(s,o),t=["scroll","hidden","auto"],n=e.getPropertyValue("overflow"),i=e.getPropertyValue("overflow-y"),r=e.getPropertyValue("overflow-x");if(t.includes(n)||t.includes(i)||t.includes(r))return s;s=s.parentNode}return o},t.getWindowScrollLeft=m,t.getWindowScrollTop=p,t.hasAccessToParentWindow=function(e){return!!Object.getPrototypeOf(e.parent)},t.hasClass=function(e,t){if(void 0===e.classList||"string"!=typeof t||""===t)return!1;return e.classList.contains(t)},t.hasHorizontalScrollbar=function(e){return e.offsetHeight!==e.clientHeight},t.hasVerticalScrollbar=function(e){return e.offsetWidth!==e.clientWidth},t.index=function(e){let t=0,o=e;if(o.previousSibling)for(;o=o.previousSibling;)t+=1;return t},t.innerHeight=function(e){return e.clientHeight||e.innerHeight},t.innerWidth=function(e){return e.clientWidth||e.innerWidth},t.isChildOf=function(e,t){let o=e.parentNode,s=[];"string"==typeof t?s=e.defaultView?Array.prototype.slice.call(e.querySelectorAll(t),0):Array.prototype.slice.call(e.ownerDocument.querySelectorAll(t),0):s.push(t);for(;null!==o;){if(s.indexOf(o)>-1)return!0;o=o.parentNode}return!1},t.isDetached=function(e){return!e.parentNode},t.isInput=v,t.isOutsideInput=y,t.isThisHotChild=function(e,t){const o=e.closest(".handsontable");return!!o&&(o.parentNode===t||o===t)},t.isVisible=function e(t){const o=t.ownerDocument.documentElement;let s=t;for(;s!==o;){if(null===s)return!1;if(s.nodeType===Node.DOCUMENT_FRAGMENT_NODE){if(s.host){if(s.host.impl)return e(s.host.impl);if(s.host)return e(s.host);throw new Error("Lost in Web Components world")}return!1}if("none"===w(s).display)return!1;s=s.parentNode}return!0},t.makeElementContentEditableAndSelectItsContent=E,t.matchesCSSRules=function(e,t){const{selectorText:o}=t;let s=!1;t.type===CSSRule.STYLE_RULE&&o&&(e.msMatchesSelector?s=e.msMatchesSelector(o):e.matches&&(s=e.matches(o)));return s},t.observeVisibilityChangeOnce=function(e,t){new IntersectionObserver(((o,s)=>{o.forEach((o=>{o.isIntersecting&&null!==e.offsetParent&&(t(),s.unobserve(e))}))}),{root:e.ownerDocument.body}).observe(e)},t.offset=function(e){const t=e.ownerDocument,o=t.defaultView,s=t.documentElement;let n,i,r,l=e;n=l.offsetLeft,i=l.offsetTop,r=l;for(;(l=l.offsetParent)&&l!==t.body&&"offsetLeft"in l;)n+=l.offsetLeft,i+=l.offsetTop,r=l;r&&"fixed"===r.style.position&&(n+=o.pageXOffset||s.scrollLeft,i+=o.pageYOffset||s.scrollTop);return{left:n,top:i}},t.outerHeight=function(e){return e.offsetHeight},t.outerWidth=function(e){return e.offsetWidth},t.overlayContainsElement=function(e,t,o){const s=o.parentElement.querySelector(`.ht_clone_${e}`);return s?s.contains(t):null},t.removeAttribute=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];"string"==typeof t?t=t.split(" "):t instanceof RegExp&&(t=[t]);const{regexFree:o,regexes:s}=a(t,!0);o.forEach((t=>{""!==t&&e.removeAttribute(t)})),s.forEach((t=>{e.getAttributeNames().forEach((o=>{t.test(o)&&e.removeAttribute(o)}))}))},t.removeClass=c,t.removeContentEditableFromElementAndDeselect=S,t.removeEvent=function(e,t,o){e.removeEventListener(t,o,!1)},t.removeTextNodes=function e(t){if(3===t.nodeType)t.parentNode.removeChild(t);else if(["TABLE","THEAD","TBODY","TFOOT","TR"].indexOf(t.nodeName)>-1){const o=t.childNodes;for(let t=o.length-1;t>=0;t--)e(o[t])}},t.resetCssTransform=function(e){e.style.transform&&""!==e.style.transform&&(e.style.transform="")},t.runWithSelectedContendEditableElement=function(e,t){let o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];E(e,o),t(),S(e,o)},t.selectElementIfAllowed=function(e){y(e.ownerDocument.activeElement)||e.select()},t.setAttribute=u,t.setCaretPosition=function(e,t,o){void 0===o&&(o=t);if(e.setSelectionRange){e.focus();try{e.setSelectionRange(t,o)}catch(s){const n=e.parentNode,i=n.style.display;n.style.display="block",e.setSelectionRange(t,o),n.style.display=i}}},t.setOverlayPosition=function(e,t,o){e.style.transform=`translate3d(${t},${o},0)`},o(67834),o(15724);var s=o(59777),n=o(92692);function i(e){return Object.getPrototypeOf(e.parent)&&e.frameElement}function r(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=arguments.length>2?arguments[2]:void 0;const{ELEMENT_NODE:s,DOCUMENT_FRAGMENT_NODE:n}=Node;let i=e;for(;null!=i&&i!==o;){const{nodeType:e,nodeName:o}=i;if(e===s&&(t.includes(o)||t.includes(i)))return i;const{host:r}=i;i=r&&e===n?r:i.parentNode}return null}function l(e){return e&&e.length?e.filter((e=>!!e)):[]}function a(e,t){if(!e||!e.length)return t?{regexFree:[],regexes:[]}:[];const o=[],s=[];return s.push(...e.filter((e=>{const s=e instanceof RegExp;return s&&t&&o.push(e),!s}))),t?{regexFree:s,regexes:o}:s}function h(e,t){"string"==typeof t&&(t=t.split(" ")),(t=l(t)).length>0&&e.classList.add(...t)}function c(e,t){"string"==typeof t?t=t.split(" "):t instanceof RegExp&&(t=[t]);let{regexFree:o,regexes:s}=a(t,!0);o=l(o),o.length>0&&e.classList.remove(...o),s.forEach((t=>{e.classList.forEach((o=>{t.test(o)&&e.classList.remove(o)}))}))}function u(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=arguments.length>2?arguments[2]:void 0;Array.isArray(t)||(t=[[t,o]]),t.forEach((t=>{Array.isArray(t)&&""!==t[0]&&e.setAttribute(...t)}))}function d(e){let t;for(;t=e.lastChild;)e.removeChild(t)}const g=t.HTML_CHARACTERS=/(<(.*)>|&(.*);)/;function f(e,t){const o=e.firstChild;o&&3===o.nodeType&&null===o.nextSibling?o.textContent=t:(d(e),e.appendChild(e.ownerDocument.createTextNode(t)))}function p(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window).scrollY}function m(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window).scrollX}function w(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window;return e.currentStyle||t.getComputedStyle(e)}let C;function v(e){return e&&(["INPUT","SELECT","TEXTAREA"].indexOf(e.nodeName)>-1||"true"===e.contentEditable)}function y(e){return v(e)&&!1===e.hasAttribute("data-hot-input")}function E(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];const s=e.ownerDocument,i=s.createRange(),r=s.defaultView.getSelection();u(e,"contenteditable",!0),o&&u(e,...(0,n.A11Y_HIDDEN)()),t&&h(e,"invisibleSelection"),i.selectNodeContents(e),r.removeAllRanges(),r.addRange(i)}function S(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];const o=e.ownerDocument.defaultView.getSelection();e.hasAttribute("aria-hidden")&&e.removeAttribute("aria-hidden"),o.removeAllRanges(),t&&c(e,"invisibleSelection"),e.removeAttribute("contenteditable")}},79729:(e,t)=>{"use strict";t.__esModule=!0,t.isImmediatePropagationStopped=function(e){return!1===e.isImmediatePropagationEnabled},t.isLeftClick=function(e){return 0===e.button},t.isRightClick=function(e){return 2===e.button},t.isTouchEvent=function(e){return e instanceof TouchEvent},t.offsetRelativeTo=function(e,t){const o={x:e.offsetX,y:e.offsetY};let s=e.target;if(!(t instanceof HTMLElement)||s!==t&&s.contains(t))return o;for(;s!==t;)o.x+=s.offsetLeft,o.y+=s.offsetTop,s=s.offsetParent;return o},t.stopImmediatePropagation=function(e){e.isImmediatePropagationEnabled=!1,e.cancelBubble=!0}},93980:(e,t)=>{"use strict";let o;t.__esModule=!0,t.cancelAnimationFrame=function(e){window.cancelAnimationFrame(e)},t.getComparisonFunction=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(o)return o;o="object"==typeof Intl?new Intl.Collator(e,t).compare:"function"==typeof String.prototype.localeCompare?(e,t)=>`${e}`.localeCompare(t):(e,t)=>e===t?0:e>t?-1:1;return o},t.isCSR=function(){return"undefined"!=typeof window},t.isTouchSupported=function(){return"ontouchstart"in window},t.requestAnimationFrame=function(e){return window.requestAnimationFrame(e)}},78832:(e,t,o)=>{"use strict";t.__esModule=!0,t.curry=function(e){const t=e.length;return function o(s){return function(){for(var n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];const l=s.concat(i);let a;return a=l.length>=t?e.apply(this,l):o(l),a}}([])},t.curryRight=function(e){const t=e.length;return function o(s){return function(){for(var n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];const l=s.concat(i.reverse());let a;return a=l.length>=t?e.apply(this,l):o(l),a}}([])},t.debounce=function(e){let t,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,s=null;return function(){for(var n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];return s&&clearTimeout(s),s=setTimeout((()=>{t=e.apply(this,i)}),o),t}},t.fastCall=function(e,t,o,s,i,r,l,a){if((0,n.isDefined)(a))return e.call(t,o,s,i,r,l,a);if((0,n.isDefined)(l))return e.call(t,o,s,i,r,l);if((0,n.isDefined)(r))return e.call(t,o,s,i,r);if((0,n.isDefined)(i))return e.call(t,o,s,i);if((0,n.isDefined)(s))return e.call(t,o,s);if((0,n.isDefined)(o))return e.call(t,o);return e.call(t)},t.isFunction=function(e){return"function"==typeof e},t.partial=function(e){for(var t=arguments.length,o=new Array(t>1?t-1:0),s=1;s<t;s++)o[s-1]=arguments[s];return function(){for(var t=arguments.length,s=new Array(t),n=0;n<t;n++)s[n]=arguments[n];return e.apply(this,o.concat(s))}},t.pipe=function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];const[n,...i]=t;return function(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return(0,s.arrayReduce)(i,((e,t)=>t(e)),n.apply(this,t))}},t.throttle=i,t.throttleAfterHits=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10;const s=i(e,t);let n=o;function r(){for(var t=arguments.length,o=new Array(t),i=0;i<t;i++)o[i]=arguments[i];return n?(n-=1,e.apply(this,o)):s.apply(this,o)}return r.clearHits=function(){n=o},r};var s=o(9175),n=o(38893);function i(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,o=0;const s={lastCallThrottled:!0};let n=null;return function(){for(var i=arguments.length,r=new Array(i),l=0;l<i;l++)r[l]=arguments[l];const a=Date.now();let h=!1;s.lastCallThrottled=!0,o||(o=a,h=!0);const c=t-(a-o);return h?(s.lastCallThrottled=!1,e.apply(this,r)):(n&&clearTimeout(n),n=setTimeout((()=>{s.lastCallThrottled=!1,e.apply(this,r),o=0,n=void 0}),c)),s}}},38893:(e,t,o)=>{"use strict";var s=o(96784);t.__esModule=!0,t._injectProductInfo=function(e,t){const o=!l(e),s="string"==typeof e&&"non-commercial-and-evaluation"===e.toLowerCase(),i="14.6.0-next-9f83127-20240930";let r,v="invalid",y="invalid";const E=function(e){let t=[][a],o=t;if(e[a]!==d("Z"))return!1;for(let t="",s="B<H4P+".split(""),n=d(s.shift());n;n=d(s.shift()||"A"))--n<""[a]?o|=(c(`${c(h(t)+(h(u(e,Math.abs(n),2))+[]).padStart(2,"0"))}`)%97||2)>>1:t=u(e,n,n?1===s[a]?9:8:6);return o===t}(e=g(e||""));if(o||s||E)if(E){const t=(0,n.default)("01/10/2024","DD/MM/YYYY"),o=Math.floor(t.toDate().getTime()/864e5),s=f(e);r=(0,n.default)(864e5*(s+1),"x").format("MMMM DD, YYYY"),o>s?(v="expired",y="expired"):(v="valid",y="valid")}else s?(v="non_commercial",y="valid"):(v="invalid",y="invalid");else v="missing",y="missing";p()&&(v="valid",y="valid");if(!m&&"valid"!==v){w[v]({keyValidityDate:r,hotVersion:i})&&console["non_commercial"===v?"info":"warn"](w[v]({keyValidityDate:r,hotVersion:i})),m=!0}if("valid"!==y&&t.parentNode){if(C[y]({keyValidityDate:r,hotVersion:i})){const e=document.createElement("div");e.className="hot-display-license-info",e.innerHTML=C[y]({keyValidityDate:r,hotVersion:i}),t.parentNode.insertBefore(e,t.nextSibling)}}},t.isDefined=function(e){return void 0!==e},t.isEmpty=l,t.isRegExp=function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},t.isUndefined=r,t.stringify=function(e){let t;switch(typeof e){case"string":case"number":t=`${e}`;break;case"object":t=null===e?"":e.toString();break;case"undefined":t="";break;default:t=e.toString()}return t};var n=s(o(86798)),i=o(28927);function r(e){return void 0===e}function l(e){return null===e||""===e||r(e)}const a="length",h=e=>parseInt(e,16),c=e=>parseInt(e,10),u=(e,t,o)=>e.substr(t,o),d=e=>e.codePointAt(0)-65,g=e=>`${e}`.replace(/\-/g,""),f=e=>h(u(g(e),h("12"),d("F")))/(h(u(g(e),d("B"),~~![][a]))||9),p=()=>"undefined"!=typeof location&&/^([a-z0-9\-]+\.)?\x68\x61\x6E\x64\x73\x6F\x6E\x74\x61\x62\x6C\x65\x2E\x63\x6F\x6D$/i.test(location.host);let m=!1;const w={invalid:()=>i.toSingleLine`
36
36
  The license key for Handsontable is invalid.\x20
37
37
  If you need any help, contact us at support@handsontable.com.`,expired:e=>{let{keyValidityDate:t,hotVersion:o}=e;return i.toSingleLine`
38
38
  The license key for Handsontable expired on ${t}, and is not valid for the installed\x20