handsontable
Version:
Handsontable is a JavaScript Data Grid available for React, Angular and Vue.
33 lines • 1.83 MB
JavaScript
/*!
* Copyright (c) HANDSONCODE sp. z o. o.
*
* HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in
* Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number
* 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.
*
* This software is protected by applicable copyright laws, including international treaties, and dual-
* licensed - depending on whether your use for commercial purposes, meaning intended for or
* resulting in commercial advantage or monetary compensation, or not.
*
* If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing
* the suitability, performance, and usefulness of this software outside the production environment,
* you agree to be bound by the terms included in the "handsontable-non-commercial-license.pdf" file.
*
* Your use of this software for commercial purposes is subject to the terms included in an applicable
* license agreement.
*
* In any case, you must not make any such use of this software as to develop software which may be
* considered competitive with this software.
*
* UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN "AS IS"
* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO
* LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
* USE OR INABILITY TO USE THIS SOFTWARE.
*
* Version: 16.1.0
* Release date: 15/09/2025 (built at 15/09/2025 10:06:24)
*/
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("Handsontable",[],t):"object"==typeof exports?exports.Handsontable=t():e.Handsontable=t()}("undefined"!=typeof self?self:this,()=>(()=>{var e={162:(e,t)=>{"use strict";t.__esModule=!0,t.createDefaultShortcutsList=function(e){const{hot:t,hotMenu:r}=e;return[{keys:[["Control/Meta","A"]],forwardToContext:t.getShortcutManager().getContext("grid"),callback:()=>e.close(!0)},{keys:[["Tab"],["Shift","Tab"]],callback:(r,n)=>{const s=t.getSettings(),i="function"==typeof s.tabMoves?s.tabMoves(r):s.tabMoves;n.includes("shift")?t.selection.transformStart(-i.row,-i.col):t.selection.transformStart(i.row,i.col),e.close(!0)}},{keys:[["Escape"]],callback:()=>e.close()},{keys:[["ArrowDown"]],callback:()=>e.getNavigator().toNextItem()},{keys:[["ArrowUp"]],callback:()=>e.getNavigator().toPreviousItem()},{keys:[[t.isRtl()?"ArrowLeft":"ArrowRight"]],callback:()=>{const t=r.getSelectedActive();if(t){const r=e.openSubMenu(t[0]);r&&r.getNavigator().toFirstItem()}}},{keys:[[t.isRtl()?"ArrowRight":"ArrowLeft"]],callback:()=>{r.getSelectedActive()&&e.isSubMenu()&&(e.close(),e.isSubMenu()&&e.parentMenu.hotMenu.listen())}},{keys:[["Control/Meta","ArrowUp"],["Home"]],callback:()=>e.getNavigator().toFirstItem()},{keys:[["Control/Meta","ArrowDown"],["End"]],callback:()=>e.getNavigator().toLastItem()},{keys:[["Enter"],["Space"]],callback:t=>{const n=r.getSelectedActive();n&&(r.getSourceDataAtRow(n[0]).submenu?e.openSubMenu(n[0]).getNavigator().toFirstItem():(e.executeCommand(t),e.close(!0)))}},{keys:[["PageUp"]],callback:()=>{r.getSelectedActive()?r.selection.transformStart(-r.countVisibleRows(),0):e.getNavigator().toFirstItem()}},{keys:[["PageDown"]],callback:()=>{r.getSelectedActive()?r.selection.transformStart(r.countVisibleRows(),0):e.getNavigator().toLastItem()}}]}},211:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0;var s=n(r(24300));t.default=class{constructor(e,t,r){(0,s.default)(this,"offset",void 0),(0,s.default)(this,"total",void 0),(0,s.default)(this,"countTH",void 0),this.offset=e,this.total=t,this.countTH=r}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))}}},346:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0,r(99356),r(34478),r(29810),r(31143),r(940),r(81056);var s=n(r(24300));class i{constructor(e){(0,s.default)(this,"ranges",[]),(0,s.default)(this,"createCellRange",void 0),this.createCellRange=e}isEmpty(){return 0===this.size()}set(e){return this.clear(),this.ranges.push(this.createCellRange(e)),this}add(e){return this.ranges.push(this.createCellRange(e)),this}push(e){return this.ranges.push(e),this}pop(){return this.ranges.pop()}current(){return this.peekByIndex(this.size()-1)}previous(){return this.peekByIndex(this.size()-2)}includes(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:()=>!0;return this.ranges.some((r,n)=>r.includes(e)&&t(r,n))}findAll(e){const t=[];return this.ranges.forEach((r,n)=>{r.isEqual(e)&&t.push({range:r,layer:n})}),t}remove(e){return this.ranges=this.ranges.filter(t=>!e.some(e=>e.isEqual(t))),this}removeLayers(e){return this.ranges=this.ranges.filter((t,r)=>!e.includes(r)),this}clear(){return this.ranges.length=0,this}size(){return this.ranges.length}clone(){const e=new i(this.createCellRange);return e.ranges=this.ranges.map(e=>e.clone()),e}map(e){return this.ranges=this.ranges.map((t,r)=>e(t,r)),this}peekByIndex(){let e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return t>=0&&t<this.size()&&(e=this.ranges[t]),e}[Symbol.iterator](){return this.ranges[Symbol.iterator]()}}t.default=i},469:()=>{},594:()=>{},763:()=>{},918:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0;var s=n(r(24300));t.TableRenderer=class{constructor(e){let{cellRenderer:t,stylesHandler:r}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,s.default)(this,"rootNode",void 0),(0,s.default)(this,"rootDocument",void 0),(0,s.default)(this,"rowHeaders",null),(0,s.default)(this,"columnHeaders",null),(0,s.default)(this,"colGroup",null),(0,s.default)(this,"rows",null),(0,s.default)(this,"cells",null),(0,s.default)(this,"rowFilter",null),(0,s.default)(this,"columnFilter",null),(0,s.default)(this,"rowUtils",null),(0,s.default)(this,"columnUtils",null),(0,s.default)(this,"rowsToRender",0),(0,s.default)(this,"columnsToRender",0),(0,s.default)(this,"rowHeaderFunctions",[]),(0,s.default)(this,"rowHeadersCount",0),(0,s.default)(this,"columnHeaderFunctions",[]),(0,s.default)(this,"columnHeadersCount",0),(0,s.default)(this,"cellRenderer",void 0),(0,s.default)(this,"activeOverlayName",void 0),(0,s.default)(this,"stylesHandler",void 0),this.rootNode=e,this.rootDocument=this.rootNode.ownerDocument,this.cellRenderer=t,this.stylesHandler=r}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:r,rows:n,cells:s}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.setTable(this),t.setTable(this),r.setTable(this),n.setTable(this),s.setTable(this),this.rowHeaders=e,this.columnHeaders=t,this.colGroup=r,this.rows=n,this.cells=s}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 r=0;r<e;r++){const e=t.getRenderedNode(r),n=this.rowUtils;if(e.firstChild){const t=this.renderedRowToSource(r),s=n.getHeightByOverlayName(t,this.activeOverlayName),i=this.stylesHandler.areCellsBorderBox()?0:1;e.firstChild.style.height=s?s-i+"px":""}}}}},940:(e,t,r)=>{"use strict";r(60791)},982:(e,t,r)=>{"use strict";t.__esModule=!0;var n=r(14001);class s extends n.BaseTransformation{calculateOffset(){return{x:this.tableApi.navigableHeaders()?this.tableApi.countRowHeaders():0,y:this.tableApi.navigableHeaders()?this.tableApi.countColHeaders():0}}countRenderableRows(){return this.tableApi.countRenderableRows()}countRenderableColumns(){return this.tableApi.countRenderableColumns()}shouldSwitchSelectionLayer(){return!1}}t.ExtenderTransformation=s},1145:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0,r(34478),r(31143);var s=n(r(24300)),i=r(9208),o=r(17334);class a extends i.BaseAction{constructor(e){let{columns:t,finalIndex:r}=e;super("col_move"),(0,s.default)(this,"columns",void 0),(0,s.default)(this,"finalColumnIndex",void 0),this.columns=t.slice(),this.finalColumnIndex=r}static startRegisteringEvents(e,t){e.addHook("beforeColumnMove",(e,r)=>{!1!==e&&t.done(()=>new a({columns:e,finalIndex:r}))})}undo(e,t){const r=e.getPlugin("manualColumnMove");e.addHookOnce("afterViewRender",t);(0,o.getMoves)(this.columns,this.finalColumnIndex,e.columnIndexMapper.getNumberOfIndexes()).reverse().forEach(e=>{let{from:t,to:n}=e;t<n&&(n-=1),r.moveColumn(n,t)}),e.render(),e.deselectCell(),e.selectColumns(this.columns[0],this.columns[0]+this.columns.length-1)}redo(e,t){const r=e.getPlugin("manualColumnMove");e.addHookOnce("afterViewRender",t),r.moveColumns(this.columns.slice(),this.finalColumnIndex),e.render(),e.deselectCell(),e.selectColumns(this.finalColumnIndex,this.finalColumnIndex+this.columns.length-1)}}t.ColumnMoveAction=a},1181:()=>{},1202:(e,t,r)=>{"use strict";t.__esModule=!0,t.normalizeSettings=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1/0;const r=[];if(0===t)return r;(0,n.arrayEach)(e,e=>{const a=[];let l=0;r.push(a),(0,n.arrayEach)(e,e=>{const r=(0,o.createDefaultHeaderSettings)();if((0,s.isObject)(e)){const{label:t,colspan:n,headerClassName:s}=e;r.label=(0,i.stringify)(t),"number"==typeof n&&n>1&&(r.colspan=n,r.origColspan=n),"string"==typeof s&&(r.headerClassNames=[...s.split(" ")])}else r.label=(0,i.stringify)(e);l+=r.origColspan;let n=!1;if(l>=t&&(r.colspan=r.origColspan-(l-t),r.origColspan=r.colspan,n=!0),a.push(r),r.colspan>1)for(let e=0;e<r.colspan-1;e++)a.push((0,o.createPlaceholderHeaderSettings)());return!n})});const a=Math.max(...(0,n.arrayMap)(r,e=>e.length));return(0,n.arrayEach)(r,e=>{if(e.length<a){const t=(0,n.arrayMap)(new Array(a-e.length),()=>(0,o.createDefaultHeaderSettings)());e.splice(e.length,0,...t)}}),r},r(99356);var n=r(40785),s=r(21389),i=r(27727),o=r(93711)},1221:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0,r(62551);var s=n(r(85219)),i=r(55941),o=r(57971),a=r(17715),l=r(73364),h=r(51241),u=r(33746),c=r(95484),d=r(74216);function g(e,t){const r=new s.default(e,t||{},i.rootInstanceSymbol);return r.init(),r}t.CellCoords=d.CellCoords,t.CellRange=d.CellRange,(0,h.registerCellType)(u.TextCellType),g.editors={BaseEditor:c.BaseEditor},g.Core=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new s.default(e,t,i.rootInstanceSymbol)},g.DefaultSettings=(0,o.metaSchemaFactory)(),g.hooks=a.Hooks.getSingleton(),g.CellCoords=d.CellCoords,g.CellRange=d.CellRange,g.packageName="handsontable",g.buildDate="15/09/2025 10:06:24",g.version="16.1.0",g.languages={dictionaryKeys:l.dictionaryKeys,getLanguageDictionary:l.getLanguageDictionary,getLanguagesDictionaries:l.getLanguagesDictionaries,registerLanguageDictionary:l.registerLanguageDictionary,getTranslatedPhrase:l.getTranslatedPhrase};t.default=g},1354:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0;var s=n(r(24300)),i=r(53383),o=n(r(73333)),a=r(17715),l=r(96357);a.Hooks.getSingleton().register("persistentStateSave"),a.Hooks.getSingleton().register("persistentStateLoad"),a.Hooks.getSingleton().register("persistentStateReset");const h=t.PLUGIN_KEY="persistentState",u=t.PLUGIN_PRIORITY=0,c=new WeakSet;class d extends i.BasePlugin{constructor(){super(...arguments),(0,s.default)(this,"storage",void 0)}static get PLUGIN_KEY(){return h}static get PLUGIN_PRIORITY(){return u}isEnabled(){return!!this.hot.getSettings()[h]}enablePlugin(){this.enabled||(c.has(this.hot)||(c.add(this.hot),(0,l.deprecatedWarn)("The PersistentState plugin is deprecated and will be removed in version 17.0. Please update your settings to ensure compatibility with future versions.")),this.storage||(this.storage=new o.default(this.hot.rootContainer.id||this.hot.rootElement.id,this.hot.rootWindow)),this.addHook("persistentStateSave",(e,t)=>this.saveValue(e,t)),this.addHook("persistentStateLoad",(e,t)=>this.loadValue(e,t)),this.addHook("persistentStateReset",()=>this.resetValue()),super.enablePlugin())}disablePlugin(){this.storage=void 0,super.disablePlugin()}updatePlugin(){this.disablePlugin(),this.enablePlugin(),super.updatePlugin()}loadValue(e,t){t.value=this.storage.loadValue(e)}saveValue(e,t){this.storage.saveValue(e,t)}resetValue(e){void 0===e?this.storage.resetAll():this.storage.reset(e)}destroy(){super.destroy()}}t.PersistentState=d},1402:(e,t,r)=>{"use strict";t.__esModule=!0,t.default=function(e){return{key:"cut",name(){return this.getTranslatedPhrase(n.CONTEXTMENU_ITEMS_CUT)},callback(){e.cut()},disabled(){if(0===this.countRows()||0===this.countCols())return!0;const e=this.getSelectedRangeActive();if(!e)return!0;if(e.isSingleHeader())return!0;const t=this.getSelected();return!t||t.length>1},hidden:!1}};var n=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,n=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var s,i,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(s=t?n:r){if(s.has(e))return s.get(e);s.set(e,o)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(s=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?s(o,t,i):o[t]=e[t]);return o}(e,t)}(r(15230))},1487:(e,t,r)=>{"use strict";t.__esModule=!0,t.operationResult=a,r(34478),r(81056);var n=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,n=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var s,i,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(s=t?n:r){if(s.has(e))return s.get(e);s.set(e,o)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(s=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?s(o,t,i):o[t]=e[t]);return o}(e,t)}(r(15230)),s=r(13283);const i=t.OPERATION_ID="disjunction",o=t.SHORT_NAME_FOR_COMPONENT=n.FILTERS_LABELS_DISJUNCTION;function a(e,t){return e.some(e=>e.func(t))}(0,s.registerOperation)(i,o,a)},1531:(e,t,r)=>{"use strict";r(34478),r(31143),t.__esModule=!0;var n={IndexMapper:!0,getRegisteredMapsCounter:!0,getIncreasedIndexes:!0,getDecreasedIndexes:!0,alterUtilsFactory:!0},s=r(17330);t.IndexMapper=s.IndexMapper;var i=r(58033);t.getRegisteredMapsCounter=i.getRegisteredMapsCounter;var o=r(51453);t.getIncreasedIndexes=o.getIncreasedIndexes,t.getDecreasedIndexes=o.getDecreasedIndexes,t.alterUtilsFactory=o.alterUtilsFactory;var a=r(36915);Object.keys(a).forEach(function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(n,e)||e in t&&t[e]===a[e]||(t[e]=a[e]))})},1766:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0,r(52490),r(99356),r(34478),r(31143);var s=n(r(24300)),i=r(6083),o=r(4407),a=r(42685),l=r(31075),h=r(96357),u=r(9671),c=r(53383),d=n(r(40638)),g=n(r(24726));function p(e,t,r){f(e,t),t.set(e,r)}function f(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function m(e,t,r){return e.set(E(e,t),r),r}function w(e,t){return e.get(E(e,t))}function E(e,t,r){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:r;throw new TypeError("Private element is not present on this object")}const y=t.PLUGIN_KEY="nestedHeaders",C=t.PLUGIN_PRIORITY=280;var v=new WeakMap,S=new WeakMap,R=new WeakMap,T=new WeakMap,N=new WeakMap,_=new WeakMap,A=new WeakSet;class b extends c.BasePlugin{constructor(){var e,t;super(...arguments),f(e=this,t=A),t.add(e),p(this,v,new d.default),p(this,S,null),p(this,R,null),p(this,T,!1),p(this,N,null),(0,s.default)(this,"ghostTable",new g.default(this.hot,(e,t)=>this.getHeaderSettings(e,t))),(0,s.default)(this,"detectedOverlappedHeaders",!1),p(this,_,()=>{var e;const t=null===(e=this.hot)||void 0===e?void 0:e.getSelectedRangeActive();if(!t)return;const{highlight:r}=t;if(r.isHeader()&&r.col>=0){const e=w(v,this).findLeftMostColumnIndex(r.row,r.col),t=this.hot.selection.highlight.getFocus();t.visualCellRange.highlight.col=e,t.visualCellRange.from.col=e,t.visualCellRange.to.col=e,t.commit()}})}static get PLUGIN_KEY(){return y}static get PLUGIN_PRIORITY(){return C}isEnabled(){return!!this.hot.getSettings()[y]}enablePlugin(){var e=this;if(this.enabled)return;const{nestedHeaders:t}=this.hot.getSettings();Array.isArray(t)&&Array.isArray(t[0])||(0,h.warn)(a.toSingleLine`Your Nested Headers plugin configuration is invalid. The settings has to be\x20
passed as an array of arrays e.q. [['A1', { label: 'A2', colspan: 2 }]]`),this.addHook("init",()=>E(A,this,G).call(this)),this.addHook("afterLoadData",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,j).call(e,...r)}),this.addHook("beforeOnCellMouseDown",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,x).call(e,...r)}),this.addHook("afterOnCellMouseDown",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,P).call(e,...r)}),this.addHook("beforeOnCellMouseOver",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,L).call(e,...r)}),this.addHook("beforeOnCellMouseUp",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,D).call(e,...r)}),this.addHook("beforeSelectionHighlightSet",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,k).call(e,...r)}),this.addHook("modifyTransformStart",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,H).call(e,...r)}),this.addHook("afterSelection",()=>w(_,this).call(this)),this.addHook("afterSelectionFocusSet",()=>w(_,this).call(this)),this.addHook("beforeViewportScrollHorizontally",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,M).call(e,...r)}),this.addHook("afterGetColumnHeaderRenderers",e=>E(A,this,U).call(this,e)),this.addHook("modifyColWidth",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,B).call(e,...r)}),this.addHook("modifyColumnHeaderValue",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,W).call(e,...r)}),this.addHook("beforeHighlightingColumnHeader",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,I).call(e,...r)}),this.addHook("beforeCopy",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,O).call(e,...r)}),this.addHook("beforeSelectColumns",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,F).call(e,...r)}),this.addHook("afterViewportColumnCalculatorOverride",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,V).call(e,...r)}),this.addHook("modifyFocusedElement",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return E(A,e,Y).call(e,...r)}),this.hot.columnIndexMapper.addLocalHook("cacheUpdated",w(_,this)),this.hot.rowIndexMapper.addLocalHook("cacheUpdated",w(_,this)),super.enablePlugin(),this.updatePlugin()}updatePlugin(){if(!this.hot.view)return;const{nestedHeaders:e}=this.hot.getSettings();w(v,this).setColumnsLimit(this.hot.countCols()),Array.isArray(e)&&(this.detectedOverlappedHeaders=w(v,this).setState(e)),this.detectedOverlappedHeaders&&(0,h.warn)(a.toSingleLine`Your Nested Headers plugin setup contains overlapping headers. This kind of configuration\x20
is currently not supported.`),this.enabled&&this.hot.columnIndexMapper.hidingMapsCollection.getMergedValues().forEach((e,t)=>{const r=!0===e?"hide-column":"show-column";w(v,this).triggerColumnModification(r,t)}),!w(S,this)&&this.enabled&&m(S,this,this.hot.columnIndexMapper.createChangesObserver("hiding").subscribe(e=>{e.forEach(e=>{let{op:t,index:r,newValue:n}=e;if("replace"===t){const e=!0===n?"hide-column":"show-column";w(v,this).triggerColumnModification(e,r)}}),this.ghostTable.buildWidthsMap()})),this.ghostTable.setLayersCount(this.getLayersCount()).buildWidthsMap(),super.updatePlugin()}disablePlugin(){this.hot.rowIndexMapper.removeLocalHook("cacheUpdated",w(_,this)),this.hot.columnIndexMapper.removeLocalHook("cacheUpdated",w(_,this)),this.clearColspans(),w(v,this).clear(),w(S,this).unsubscribe(),m(S,this,null),this.ghostTable.clear(),super.disablePlugin()}getStateManager(){return w(v,this)}getLayersCount(){return w(v,this).getLayersCount()}getHeaderSettings(e,t){return w(v,this).getHeaderSettings(e,t)}clearColspans(){if(!this.hot.view)return;const{_wt:e}=this.hot.view,t=e.getSetting("columnHeaders").length,r=e.wtTable.THEAD,n=e.wtOverlays.topOverlay.clone.wtTable.THEAD,s=e.wtOverlays.topInlineStartCornerOverlay?e.wtOverlays.topInlineStartCornerOverlay.clone.wtTable.THEAD:null;for(let e=0;e<t;e++){const t=r.childNodes[e];if(!t)break;const o=n.childNodes[e],a=s?s.childNodes[e]:null;for(let e=0,r=t.childNodes.length;e<r;e++)t.childNodes[e].removeAttribute("colspan"),(0,i.removeClass)(t.childNodes[e],"hiddenHeader"),o&&o.childNodes[e]&&(o.childNodes[e].removeAttribute("colspan"),(0,i.removeClass)(o.childNodes[e],"hiddenHeader")),s&&a&&a.childNodes[e]&&(a.childNodes[e].removeAttribute("colspan"),(0,i.removeClass)(a.childNodes[e],"hiddenHeader"))}}headerRendererFactory(e){var t=this;const r=this.hot.view._wt.getSetting("fixedColumnsStart");return(n,s)=>{var o;const{columnIndexMapper:a,view:l}=this.hot;let h=a.getVisualFromRenderableIndex(n);null===h&&(h=n),s.removeAttribute("colspan"),(0,i.removeClass)(s,"hiddenHeader"),(0,i.removeClass)(s,"hiddenHeaderText");const{colspan:u,isHidden:c,isPlaceholder:d,headerClassNames:g}=null!==(o=w(v,this).getHeaderSettings(e,h))&&void 0!==o?o:{label:""};if(d||c)(0,i.addClass)(s,"hiddenHeader");else if(u>1){var p,f,m;const{wtOverlays:e}=l._wt,t=null===(p=e.topInlineStartCornerOverlay)||void 0===p?void 0:p.clone.wtTable.THEAD.contains(s),o=null===(f=e.inlineStartOverlay)||void 0===f?void 0:f.clone.wtTable.THEAD.contains(s);(null===(m=e.topOverlay)||void 0===m?void 0:m.clone.wtTable.THEAD.contains(s))&&h<r&&(0,i.addClass)(s,"hiddenHeaderText");const a=t||o?Math.min(u,r-n):u;a>1&&s.setAttribute("colspan",a)}if(this.hot.view.appendColHeader(h,s,function(){return t.getColumnHeaderValue(...arguments)},e),!d&&!c){const e=s.querySelector("div.relative");e&&g&&g.length>0&&((0,i.removeClass)(e,this.hot.getColumnMeta(h).headerClassName),(0,i.addClass)(e,g))}}}getColumnHeaderValue(e,t){var r;const{isHidden:n,isPlaceholder:s}=null!==(r=w(v,this).getHeaderSettings(t,e))&&void 0!==r?r:{};return s||n?"":this.hot.getColHeader(e,t)}destroy(){m(v,this,null),null!==w(S,this)&&(w(S,this).unsubscribe(),m(S,this,null)),super.destroy()}_getHeaderTreeNodeDataByCoords(e){if(!(e.row>=0||e.col<0))return w(v,this).getHeaderTreeNodeData(e.row,e.col)}}function M(e,t){var r;const n=this.hot.getSelectedRangeActive();if(!n)return e;const{highlight:s}=n,{navigableHeaders:i}=this.hot.getSettings(),o=this.hot.selection.isSelectedByColumnHeader(),a=i?s.row:null===(r=w(N,this))||void 0===r?void 0:r.row,l=o?e:s.col,h=a<0&&l>=0;if(m(N,this,null),!h)return e;const u=this.hot.getFirstFullyVisibleColumn(),c=this.hot.getLastFullyVisibleColumn(),d=c-u+1,g=w(v,this).findLeftMostColumnIndex(a,l),p=w(v,this).findRightMostColumnIndex(a,l),f=p-g+1;if(g<u&&p>c)return g;if(o){let e=null;return g>=u&&p>c?f>d?(t.value="start",e=g):(t.value="end",e=p):g<u&&p<=c&&(f>d?(t.value="end",e=p):(t.value="start",e=g)),e}return g<=u?g:p}function I(e,t,r){const n=w(v,this).getHeaderTreeNodeData(t,e);if(!n)return e;const{columnCursor:s,selectionType:i,selectionWidth:o}=r,{isRoot:a,colspan:l}=w(v,this).getHeaderSettings(t,e);if(i===u.HEADER_TYPE){if(!a)return n.columnIndex}else if(i===u.ACTIVE_HEADER_TYPE&&(l>o-s||!a))return null;return e}function O(e,t,r){let{columnHeadersCount:n}=r;if(0!==n)for(let r=0;r<t.length;r++){const{startRow:n,startCol:i,endRow:o,endCol:a}=t[r],l=o-n+1;if(n>=0||1===i-a+1)break;for(let t=i;t<=a;t++)for(let r=n;r<=o;r++){var s;const n=l+r,o=t-i;if(0===o)continue;!1===(null===(s=w(v,this).getHeaderTreeNodeData(r,t))||void 0===s?void 0:s.isRoot)&&(e[n][o]="")}}}function x(e,t,r,n){this._getHeaderTreeNodeDataByCoords(t)&&(n.column=!0)}function P(e,t){const r=this._getHeaderTreeNodeDataByCoords(t);if(!r)return;m(R,this,t.clone()),m(T,this,!0);const{selection:n}=this.hot,s=n.isSelected()?n.getSelectedRange().current():null,i=[],{columnIndex:o,origColspan:a}=r,h=!n.inInSelection(t);e.shiftKey&&s?t.col<s.from.col?i.push(s.getTopEndCorner().col,o,t.row):t.col>s.from.col?i.push(s.getTopStartCorner().col,o+a-1,t.row):i.push(o,o+a-1,t.row):((0,l.isLeftClick)(e)||(0,l.isRightClick)(e)&&h||(0,l.isTouchEvent)(e))&&i.push(o,o+a-1,t.row),n.selectColumns(...i)}function L(e,t,r,n){if(!this.hot.view.isMouseDown()||n.column)return;const s=this._getHeaderTreeNodeDataByCoords(t);if(!s)return;const{columnIndex:i,origColspan:a}=s,l=this.hot.getSelectedRangeActive(),h=l.getTopStartCorner(),u=l.getBottomEndCorner(),{from:c}=l;n.column=!0,n.cell=!0;const d=[],g=(0,o.clamp)(t.row,-1/0,-1);t.col<c.col?d.push(u.col,i,g):t.col>c.col?d.push(h.col,i+a-1,g):d.push(i,i+a-1,g),this.hot.selection.selectColumns(...d)}function D(){m(T,this,!1)}function k(){const{navigableHeaders:e}=this.hot.getSettings();if(!this.hot.view.isMouseDown()||!w(T,this)||!e)return;const t=this.hot.getSelectedRangeLast(),r=t.getTopStartCorner().col,n=t.getBottomEndCorner().col,{columnIndex:s,origColspan:i}=w(v,this).getHeaderTreeNodeData(w(R,this).row,w(R,this).col);if(t.setHighlight(w(R,this)),i>t.getWidth()||s<r||s+i-1>n){const e=w(v,this).findTopMostEntireHeaderLevel((0,o.clamp)(r,s,s+i-1),(0,o.clamp)(n,s,s+i-1));t.highlight.row=e,t.highlight.col=t.from.col}}function H(e){const{highlight:t}=this.hot.getSelectedRangeActive(),r=this.hot._createCellCoords(t.row+e.row,t.col+e.col);if(!(r.isHeader()&&r.col>=0))return;const n=w(v,this).findLeftMostColumnIndex(r.row,r.col),s=w(v,this).findRightMostColumnIndex(r.row,r.col);if(e.col<0){const r=t.col>=n&&t.col<=s?n-1:s,i=this.hot.columnIndexMapper.getNearestNotHiddenIndex(r,-1);e.col=null===i?-this.hot.view.countRenderableColumnsInRange(0,t.col):-Math.max(this.hot.view.countRenderableColumnsInRange(i,t.col)-1,1)}else if(e.col>0){const r=t.col>=n&&t.col<=s?s+1:n,i=this.hot.columnIndexMapper.getNearestNotHiddenIndex(r,1);e.col=null===i?this.hot.view.countRenderableColumnsInRange(t.col,this.hot.countCols()):Math.max(this.hot.view.countRenderableColumnsInRange(t.col,i)-1,1)}}function F(e,t,r){const n=e.row,s=this._getHeaderTreeNodeDataByCoords({row:n,col:e.col}),i=this._getHeaderTreeNodeDataByCoords({row:n,col:t.col});m(N,this,r.clone()),t.col<e.col?(s&&(e.col=s.columnIndex+s.origColspan-1),i&&(t.col=i.columnIndex)):t.col>=e.col&&(s&&(e.col=s.columnIndex),i&&(t.col=i.columnIndex+i.origColspan-1))}function U(e){if(w(v,this).getLayersCount()>0){e.length=0;for(let t=0;t<w(v,this).getLayersCount();t++)e.push(this.headerRendererFactory(t))}}function V(e){const t=w(v,this).getLayersCount();let r=e.startColumn,n=!!t;for(let s=0;s<t;s++){const t=w(v,this).findLeftMostColumnIndex(s,e.startColumn),i=this.hot.columnIndexMapper.getRenderableFromVisualIndex(t);if(t>=0&&(n=!1),(0,o.isNumeric)(i)&&i<e.startColumn){r=i;break}}e.startColumn=n?w(v,this).getHeaderTreeNodeData(0,r).columnIndex:r}function B(e,t){const r=this.ghostTable.getWidth(t);return e>r?e:r}function W(e,t,r){var n;const{label:s}=null!==(n=w(v,this).getHeaderTreeNodeData(r,t))&&void 0!==n?n:{label:""};return s}function Y(e,t){if(e<0)return this.hot.getCell(e,w(v,this).findLeftMostColumnIndex(e,t),!0)}function G(){this.updatePlugin()}function j(e,t){t||this.updatePlugin()}t.NestedHeaders=b},1858:(e,t,r)=>{"use strict";t.__esModule=!0,t.default=function(e){return{key:"borders:no_borders",name(){return this.getTranslatedPhrase(n.CONTEXTMENU_ITEMS_REMOVE_BORDERS)},callback(t,r){e.prepareBorder(r,"noBorders")},disabled(){return!(0,s.checkSelectionBorders)(this)}}};var n=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,n=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var s,i,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(s=t?n:r){if(s.has(e))return s.get(e);s.set(e,o)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(s=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?s(o,t,i):o[t]=e[t]);return o}(e,t)}(r(15230)),s=r(36053)},1872:()=>{},2029:(e,t)=>{"use strict";t.__esModule=!0;t.getCornerStyle=e=>{const t=e.wtSettings.getSetting("stylesHandler");if(t.isClassicTheme())return Object.freeze({width:6,height:6,borderWidth:1,borderStyle:"solid",borderColor:"#FFF"});const r=t.getCSSVariableValue("cell-autofill-size"),n=t.getCSSVariableValue("cell-autofill-border-width"),s=t.getCSSVariableValue("cell-autofill-border-color");return Object.freeze({width:r,height:r,borderWidth:n,borderStyle:"solid",borderColor:s})}},2090:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0,r(99356);var s=n(r(24300)),i=r(58033),o=r(40785),a=r(27727);class l extends i.MapCollection{constructor(e,t){super(),(0,s.default)(this,"mergedValuesCache",[]),(0,s.default)(this,"aggregationFunction",void 0),(0,s.default)(this,"fallbackValue",void 0),this.aggregationFunction=e,this.fallbackValue=t}getMergedValues(){if(!0===(!(arguments.length>0&&void 0!==arguments[0])||arguments[0]))return this.mergedValuesCache;if(0===this.getLength())return[];const e=(0,o.arrayMap)(this.get(),e=>e.getValues()),t=[],r=(0,a.isDefined)(e[0])&&e[0].length||0;for(let n=0;n<r;n+=1){const r=[];for(let t=0;t<this.getLength();t+=1)r.push(e[t][n]);t.push(r)}return(0,o.arrayMap)(t,this.aggregationFunction)}getMergedValueAtIndex(e,t){const r=this.getMergedValues(t)[e];return(0,a.isDefined)(r)?r:this.fallbackValue}updateCache(){this.mergedValuesCache=this.getMergedValues(!1)}}t.AggregatedCollection=l},2332:(e,t,r)=>{"use strict";t.__esModule=!0,r(52490),r(99356),r(34478),r(31143);var n=r(53383),s=r(6083),i=r(40785),o=r(4407),a=r(1531);function l(e,t,r){h(e,t),t.set(e,r)}function h(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function u(e,t,r){return e.set(d(e,t),r),r}function c(e,t){return e.get(d(e,t))}function d(e,t,r){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:r;throw new TypeError("Private element is not present on this object")}const g=t.PLUGIN_KEY="manualColumnResize",p=t.PLUGIN_PRIORITY=130,f="manualColumnWidths";var m=new WeakMap,w=new WeakMap,E=new WeakMap,y=new WeakMap,C=new WeakMap,v=new WeakMap,S=new WeakMap,R=new WeakMap,T=new WeakMap,N=new WeakMap,_=new WeakMap,A=new WeakMap,b=new WeakMap,M=new WeakMap,I=new WeakMap,O=new WeakMap,x=new WeakSet;class P extends n.BasePlugin{static get PLUGIN_KEY(){return g}static get PLUGIN_PRIORITY(){return p}constructor(e){var t,r;super(e),h(t=this,r=x),r.add(t),l(this,m,null),l(this,w,null),l(this,E,[]),l(this,y,null),l(this,C,null),l(this,v,null),l(this,S,null),l(this,R,null),l(this,T,this.hot.rootDocument.createElement("DIV")),l(this,N,this.hot.rootDocument.createElement("DIV")),l(this,_,null),l(this,A,!1),l(this,b,0),l(this,M,null),l(this,I,void 0),l(this,O,void 0),(0,s.addClass)(c(T,this),"manualColumnResizer"),(0,s.addClass)(c(N,this),"manualColumnResizerGuide")}get inlineDir(){return this.hot.isRtl()?"right":"left"}isEnabled(){return this.hot.getSettings()[g]}enablePlugin(){var e=this;this.enabled||(u(I,this,new a.PhysicalIndexToValueMap),c(I,this).addLocalHook("init",()=>d(x,this,L).call(this)),this.hot.columnIndexMapper.registerMap(this.pluginName,c(I,this)),this.addHook("modifyColWidth",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return d(x,e,V).call(e,...r)},1),this.addHook("beforeStretchingColumnWidth",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return d(x,e,B).call(e,...r)},1),this.addHook("beforeColumnResize",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return d(x,e,W).call(e,...r)}),this.bindEvents(),super.enablePlugin())}updatePlugin(){this.disablePlugin(),this.enablePlugin(),super.updatePlugin()}disablePlugin(){u(O,this,c(I,this).getValues()),this.hot.columnIndexMapper.unregisterMap(this.pluginName),super.disablePlugin()}saveManualColumnWidths(){this.hot.runHooks("persistentStateSave",f,c(I,this).getValues())}loadManualColumnWidths(){const e={};return this.hot.runHooks("persistentStateLoad",f,e),e.value}setManualSize(e,t){const r=Math.max(t,20),n=this.hot.toPhysicalColumn(e);return c(I,this).setValueAtIndex(n,r),r}clearManualSize(e){const t=this.hot.toPhysicalColumn(e);c(I,this).setValueAtIndex(t,null)}setupHandlePosition(e){if(!e.parentNode||c(b,this)>1)return;u(m,this,e);const{_wt:t}=this.hot.view,r=t.wtTable.getCoords(c(m,this)),n=r.col;if(n<0)return;const a=(0,s.outerHeight)(c(m,this)),l=c(m,this).getBoundingClientRect();let h;n<t.getSetting("fixedColumnsStart")&&(h=t.wtOverlays.topInlineStartCornerOverlay.getRelativeCellPosition(c(m,this),r.row,r.col)),h||(h=t.wtOverlays.topOverlay.getRelativeCellPosition(c(m,this),r.row,r.col)),u(w,this,this.hot.columnIndexMapper.getVisualFromRenderableIndex(n)),u(E,this,[]);const d=this.hot.selection.isSelectedByCorner()||this.hot.selection.isSelectedByColumnHeader();if(this.hot.selection.isSelected()&&d){const e=this.hot.getSelectedRange();(0,i.arrayEach)(e,e=>{const t=e.getTopStartCorner().col,r=e.getBottomEndCorner().col;(0,o.rangeEach)(t,r,e=>{c(E,this).includes(e)||c(E,this).push(e)})})}c(E,this).includes(c(w,this))||u(E,this,[c(w,this)]),u(R,this,h.start-6),u(S,this,parseInt(l.width,10)),c(T,this).style.top=`${h.top}px`,c(T,this).style[this.inlineDir]=`${c(R,this)+c(S,this)}px`,c(T,this).style.height=`${a}px`,this.hot.rootElement.appendChild(c(T,this))}refreshHandlePosition(){c(T,this).style[this.inlineDir]=`${c(R,this)+c(y,this)}px`}setupGuidePosition(){const e=parseInt((0,s.outerHeight)(c(T,this)),10),t=parseInt(c(T,this).style.top,10)+e,r=this.hot.view.getTableHeight();(0,s.addClass)(c(T,this),"active"),(0,s.addClass)(c(N,this),"active"),c(N,this).style.top=`${t}px`,this.refreshGuidePosition(),c(N,this).style.height=r-e+"px",this.hot.rootElement.appendChild(c(N,this))}refreshGuidePosition(){c(N,this).style[this.inlineDir]=c(T,this).style[this.inlineDir]}hideHandleAndGuide(){(0,s.removeClass)(c(T,this),"active"),(0,s.removeClass)(c(N,this),"active")}checkIfColumnHeader(e){const t=(0,s.closest)(e,["THEAD"],this.hot.rootElement),{topOverlay:r,topInlineStartCornerOverlay:n}=this.hot.view._wt.wtOverlays;return[r.clone.wtTable.THEAD,n.clone.wtTable.THEAD].includes(t)}getClosestTHParent(e){return"TABLE"!==e.tagName?"TH"===e.tagName?e:this.getClosestTHParent(e.parentNode):null}afterMouseDownTimeout(){const e=()=>{this.hot.view.adjustElementsSize(),this.hot.render()},t=(t,r)=>{const n=this.hot.runHooks("beforeColumnResize",c(C,this),t,!0);void 0!==n&&u(C,this,n),this.setManualSize(t,c(C,this)),this.saveManualColumnWidths(),this.hot.runHooks("afterColumnResize",c(C,this),t,!0),r&&e()};if(c(b,this)>=2){c(E,this).length>1?((0,i.arrayEach)(c(E,this),e=>{t(e)}),e()):(0,i.arrayEach)(c(E,this),e=>{t(e,!0)})}u(b,this,0),u(M,this,null)}bindEvents(){const{rootWindow:e,rootElement:t}=this.hot;this.eventManager.addEventListener(t,"mouseover",e=>d(x,this,D).call(this,e)),this.eventManager.addEventListener(t,"mousedown",e=>d(x,this,k).call(this,e)),this.eventManager.addEventListener(e,"mousemove",e=>d(x,this,H).call(this,e)),this.eventManager.addEventListener(e,"mouseup",()=>d(x,this,F).call(this)),this.eventManager.addEventListener(c(T,this),"contextmenu",()=>d(x,this,U).call(this))}destroy(){super.destroy()}}function L(){const e=this.hot.getSettings()[g],t=this.loadManualColumnWidths();void 0!==t?this.hot.batchExecution(()=>{t.forEach((e,t)=>{c(I,this).setValueAtIndex(t,e)})},!0):Array.isArray(e)?(this.hot.batchExecution(()=>{e.forEach((e,t)=>{c(I,this).setValueAtIndex(t,e)})},!0),u(O,this,e)):!0===e&&Array.isArray(c(O,this))&&this.hot.batchExecution(()=>{c(O,this).forEach((e,t)=>{c(I,this).setValueAtIndex(t,e)})},!0)}function D(e){if(!(0,s.isDetached)(e.target)&&!0!==c(A,this)&&this.checkIfColumnHeader(e.target)){const t=this.getClosestTHParent(e.target);if(!t)return;const r=t.getAttribute("colspan");!t||null!==r&&"1"!==r||c(_,this)||this.setupHandlePosition(t)}}function k(e){e.target.parentNode===this.hot.rootElement&&(0,s.hasClass)(e.target,"manualColumnResizer")&&(this.setupHandlePosition(c(m,this)),this.setupGuidePosition(),u(_,this,!0),null===c(M,this)&&(u(M,this,setTimeout(()=>this.afterMouseDownTimeout(),500)),this.hot._registerTimeout(c(M,this))),u(b,this,c(b,this)+1),this.startX=e.pageX,u(C,this,c(S,this)))}function H(e){if(c(_,this)){const t=(e.pageX-this.startX)*this.hot.getDirectionFactor();u(y,this,c(S,this)+t),(0,i.arrayEach)(c(E,this),e=>{u(C,this,this.setManualSize(e,c(y,this)))}),this.refreshHandlePosition(),this.refreshGuidePosition()}}function F(){const e=()=>{this.hot.view.adjustElementsSize(),this.hot.render()},t=(t,r)=>{this.hot.runHooks("beforeColumnResize",c(C,this),t,!1),r&&e(),this.saveManualColumnWidths(),this.hot.runHooks("afterColumnResize",c(C,this),t,!1)};if(c(_,this)){if(this.hideHandleAndGuide(),u(_,this,!1),c(C,this)!==c(S,this)){c(E,this).length>1?((0,i.arrayEach)(c(E,this),e=>{t(e)}),e()):(0,i.arrayEach)(c(E,this),e=>{t(e,!0)})}this.setupHandlePosition(c(m,this))}}function U(){this.hideHandleAndGuide(),this.hot.rootElement.removeChild(c(T,this)),this.hot.rootElement.removeChild(c(N,this)),u(_,this,!1),u(A,this,!0),this.hot._registerImmediate(()=>{u(A,this,!1)})}function V(e,t){let r=e;if(this.enabled){const e=this.hot.toPhysicalColumn(t),n=c(I,this).getValueAtIndex(e);this.hot.getSettings()[g]&&n&&(r=n)}return r}function B(e,t){const r=c(I,this).getValueAtIndex(this.hot.toPhysicalColumn(t));return"number"==typeof r?r:e}function W(){this.hot.view._wt.wtViewport.resetHasOversizedColumnHeadersMarked()}t.ManualColumnResize=P},2382:(e,t,r)=>{"use strict";var n=r(53001);e.exports=!n(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]})},2509:()=>{},2520:(e,t,r)=>{"use strict";t.__esModule=!0;var n=r(4665);t.registerRootComparator=n.registerRootComparator,t.getRootComparator=n.getRootComparator,t.getCompareFunctionFactory=n.getCompareFunctionFactory;var s=r(12688);t.FIRST_AFTER_SECOND=s.FIRST_AFTER_SECOND,t.FIRST_BEFORE_SECOND=s.FIRST_BEFORE_SECOND,t.DO_NOT_SWAP=s.DO_NOT_SWAP,t.sort=s.sort},2527:()=>{},2668:(e,t)=>{"use strict";t.__esModule=!0;t.command={name:"editorCloseWithoutSaving",callback(e){const t=e._getEditorManager();t.closeEditorAndRestoreOriginalValue(e.getShortcutManager().isCtrlPressed()),t.activeEditor.focus()}}},2686:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0,r(99356);var s=n(r(24300)),i=r(23718);class o extends i.ViewportBaseCalculator{constructor(e){let{calculationTypes:t,viewportHeight:r,scrollOffset:n,totalRows:i,defaultRowHeight:o,rowHeightFn:a,overrideFn:l,horizontalScrollbarHeight:h}=e;super(t),(0,s.default)(this,"viewportHeight",0),(0,s.default)(this,"scrollOffset",0),(0,s.default)(this,"zeroBasedScrollOffset",0),(0,s.default)(this,"totalRows",0),(0,s.default)(this,"rowHeightFn",null),(0,s.default)(this,"rowHeight",0),(0,s.default)(this,"overrideFn",null),(0,s.default)(this,"horizontalScrollbarHeight",0),(0,s.default)(this,"innerViewportHeight",0),(0,s.default)(this,"totalCalculatedHeight",0),(0,s.default)(this,"startPositions",[]),(0,s.default)(this,"needReverse",!0),this.defaultHeight=o,this.viewportHeight=r,this.scrollOffset=n,this.zeroBasedScrollOffset=Math.max(n,0),this.totalRows=i,this.rowHeightFn=a,this.overrideFn=l,this.horizontalScrollbarHeight=null!=h?h: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)?this.defaultHeight:t}}t.ViewportRowsCalculator=o},2732:()=>{},2788:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0;var s=n(r(42660)),i=n(r(97996)),o=n(r(80595)),a=r(21389),l=r(82175);class h extends s.default{constructor(e,t,r,n){super(e,t,r,n,l.CLONE_INLINE_START)}}(0,a.mixin)(h,i.default),(0,a.mixin)(h,o.default);t.default=h},2835:(e,t,r)=>{"use strict";t.__esModule=!0,t.default=function(e){return{key:"copy_column_headers_only",name(){const e=this.getSelectedRangeActive(),t=e?(0,s.clamp)(e.getWidth()-1,0,1):0;return this.getTranslatedPhrase(n.CONTEXTMENU_ITEMS_COPY_COLUMN_HEADERS_ONLY,t)},callback(){e.copyColumnHeadersOnly()},disabled(){if(!this.hasColHeaders())return!0;const e=this.getSelectedRangeActive();if(!e)return!0;if(e.isSingleHeader())return!0;const t=this.getSelected();return!t||t.length>1},hidden:!1}};var n=r(15230),s=r(4407)},2847:(e,t,r)=>{"use strict";var n=r(94266),s=Object.defineProperty;e.exports=function(e,t){try{s(n,e,{value:t,configurable:!0,writable:!0})}catch(r){n[e]=t}return t}},2898:(e,t,r)=>{"use strict";var n=r(73805);t.__esModule=!0,r(52490),r(99356),r(34478),r(81056);var s=r(53383),i=r(17715),o=r(40785),a=r(6083),l=r(31075),h=r(4407),u=n(r(17283)),c=n(r(83276));function d(e,t,r){g(e,t),t.set(e,r)}function g(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function p(e,t,r){return e.set(m(e,t),r),r}function f(e,t){return e.get(m(e,t))}function m(e,t,r){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:r;throw new TypeError("Private element is not present on this object")}i.Hooks.getSingleton().register("beforeColumnMove"),i.Hooks.getSingleton().register("afterColumnMove");const w=t.PLUGIN_KEY="manualColumnMove",E=t.PLUGIN_PRIORITY=120,y="ht__manualColumnMove",C="show-ui",v="on-moving--columns",S="after-selection--columns";var R=new WeakMap,T=new WeakMap,N=new WeakMap,_=new WeakMap,A=new WeakMap,b=new WeakMap,M=new WeakMap,I=new WeakMap,O=new WeakMap,x=new WeakMap,P=new WeakMap,L=new WeakSet;class D extends s.BasePlugin{constructor(){var e,t;super(...arguments),g(e=this,t=L),t.add(e),d(this,R,new u.default(this.hot)),d(this,T,new c.default(this.hot)),d(this,N,[]),d(this,_,0),d(this,A,!1),d(this,b,{}),d(this,M,void 0),d(this,I,void 0),d(this,O,void 0),d(this,x,void 0),d(this,P,void 0)}static get PLUGIN_KEY(){return w}static get PLUGIN_PRIORITY(){return E}isEnabled(){return!!this.hot.getSettings()[w]}enablePlugin(){var e=this;this.enabled||(this.addHook("beforeOnCellMouseDown",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return m(L,e,k).call(e,...r)}),this.addHook("beforeOnCellMouseOver",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return m(L,e,F).call(e,...r)}),this.addHook("afterScrollVertically",()=>m(L,this,V).call(this)),this.addHook("afterLoadData",function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return m(L,e,B).call(e,...r)}),this.buildPluginUI(),this.registerEvents(),(0,a.addClass)(this.hot.rootElement,y),super.enablePlugin())}updatePlugin(){this.disablePlugin(),this.enablePlugin(),this.moveBySettingsOrLoad(),super.updatePlugin()}disablePlugin(){(0,a.removeClass)(this.hot.rootElement,y),this.unregisterEvents(),f(R,this).destroy(),f(T,this).destroy(),super.disablePlugin()}moveColumn(e,t){return this.moveColumns([e],t)}moveColumns(e,t){const r=f(M,this),n=this.isMovePossible(e,t),s=this.hot.runHooks("beforeColumnMove",e,t,r,n);if(p(M,this,void 0),!1===s)return;n&&this.hot.columnIndexMapper.moveIndexes(e,t);const i=n&&this.isColumnOrderChanged(e,t);return this.hot.runHooks("afterColumnMove",e,t,r,n,i),i}dragColumn(e,t){return this.dragColumns([e],t)}dragColumns(e,t){const r=this.countFinalIndex(e,t);return p(M,this,t),this.moveColumns(e,r)}isMovePossible(e,t){const r=this.hot.columnIndexMapper.getNotTrimmedIndexesLength(),n=e.length+t>r,s=t<0,i=e.some(e=>e<0),o=e.some(e=>e>=r);return!(n||s||i||o)}isColumnOrderChanged(e,t){return e.some((e,r)=>e-r!==t)}countFinalIndex(e,t){const r=(0,o.arrayReduce)(e,(e,r)=>(r<t&&(e+=1),e),0);return t-r}getColumnsWidth(e,t){const r=this.hot.columnIndexMapper;let n=0;for(let s=e;s<=t;s+=1){const e=r.getRenderableFromVisualIndex(s);s<0?n+=this.hot.view._wt.wtViewport.getRowHeaderWidth()||0:null!==e&&(n+=this.hot.view._wt.wtTable.getColumnWidth(e)||0)}return n}moveBySettingsOrLoad(){const e=this.hot.getSettings()[w];if(Array.isArray(e))this.moveColumns(e,0);else if(void 0!==e){const e=this.persistentStateLoad();e.length&&this.moveColumns(e,0)}}isFixedColumnsStart(e){return e<this.hot.getSettings().fixedColumnsStart}persistentStateSave(){this.hot.runHooks("persistentStateSave","manualColumnMove",this.hot.columnIndexMapper.getIndexesSequence())}persistentStateLoad(){const e={};return this.hot.runHooks("persistentStateLoad","manualColumnMove",e),e.value?e.value:[]}prepareColumnsToMoving(e,t){const r=[];return(0,h.rangeEach)(e,t,e=>{r.push(e)}),r}refreshPositions(){const e=this.hot.view.getFirstFullyVisibleColumn();this.isFixedColumnsStart(f(I,this))&&e>0&&this.hot.scrollViewportTo({col:this.hot.columnIndexMapper.getNearestNotHiddenIndex(e-1,-1)});const t=this.hot.view._wt.wtTable,r=this.hot.view._wt.wtOverlays.scrollableElement,n="number"==typeof r.scrollX?r.scrollX:r.scrollLeft;let s=this.hot.view.THEAD.offsetLeft+this.getColumnsWidth(0,f(I,this)-1);const i=t.hider.offsetWidth,o=t.TBODY.offsetLeft,l=f(R,this).getOffset().start,h=f(R,this).getSize().width;let u=0,c=0;if(this.hot.isRtl()){const e=this.hot.rootWindow,t=(0,a.outerWidth)(this.hot.rootElement),s=e.innerWidth-f(O,this)-t;c=e.innerWidth-f(b,this).eventPageX-s-(void 0===r.scrollX?n:0)}else c=f(b,this).eventPageX-(f(O,this)-(void 0===r.scrollX?n:0));if(f(x,this)&&(u=this.hot.view._wt.wtOverlays.inlineStartOverlay.clone.wtTable.getColumnHeader(-1).offsetWidth),this.isFixedColumnsStart(f(I,this))&&(s+=n),s+=u,f(I,this)<0)f(P,this)>0?f(b,this).col=0:f(b,this).col=e>0?e-1:e;else if(f(b,this).TD.offsetWidth/2+s<=c){const e=f(I,this)>=f(_,this)?f(_,this)-1:f(I,this);f(b,this).col=e+1,s+=f(b,this).TD.offsetWidth}else f(b,this).col=f(I,this);let d=c,g=s;c+h+l>=i?d=i-h-l:c+l<o+u&&(d=o+u+Math.abs(l)),s>=i-1?g=i-1:0===g?g=1:void 0!==r.scrollX&&f(I,this)<f(P,this)&&(g-=f(O,this)<=r.scrollX?f(O,this):0),f(R,this).setPosition(null,d),f(T,this).setPosition(null,g)}registerEvents(){const{documentElement:e}=this.hot.rootDocument;this.eventManager.addEventListener(e,"mousemove",e=>m(L,this,H).call(this,e)),this.eventManager.addEventListener(e,"mouseup",()=>m(L,this,U).call(this))}unregisterEvents(){this.eventManager.clear()}buildPluginUI(){f(R,this).build(),f(T,this).build()}destroy(){f(R,this).destroy(),f(T,this).destroy(),super.destroy()}}function k(e,t,r,n){const s=this.hot.view._wt.wtTable,i=this.hot.selection.isSelectedByColumnHeader(),o=this.hot.getSelectedRangeActive(),h=(0,a.hasClass)(e.target,"sortAction");if(!o||!i||f(A,this)||0!==e.button||h)return p(A,this,!1),f(N,this).length=0,void(0,a.removeClass)(this.hot.rootElement,[v,C]);const u=f(T,this).isBuilt()&&!f(T,this).isAppended(),c=f(R,this).isBuilt()&&!f(R,this).isAppended();u&&c&&(f(T,this).appendTo(s.hider),f(R,this).appendTo(s.hider));const{from:d,to:g}=o,m=Math.min(d.col,g.col),w=Math.max(d.col,g.col);if(t.row<0&&t.col>=m&&t.col<=w){n.column=!0,p(A,this,!0);const i=r.firstChild?(0,l.offsetRelativeTo)(e,r.firstChild).x:e.offsetX;f(b,this).eventPageX=e.pageX,p(I,this,t.col),f(b,this).TD=r,f(b,this).col=t.col,p(N,this,this.prepareColumnsToMoving(m,w)),p(x,this,!!this.hot.getSettings().rowHeaders),p(_,this,this.hot.countCols()),p(P,this,this.hot.getSettings().fixedColumnsStart),p(O,this,(0,a.offset)(this.hot.rootElement).left);const o=f(x,this)?-1:0,h=s.holder.scrollTop+s.getColumnHeaderHeight(0)+1,u=t.col<f(P,this),c=this.hot.view._wt.wtOverlays.inlineStartOverlay.getOverlayOffset(),d=Math.abs(i-(this.hot.isRtl()?r.offsetWidth:0)),g=this.getColumnsWidth(m,t.col-1)+d,E=this.getColumnsWidth(o,m-1)+(u?c:0)+g;f(R,this).setPosition(h,E),f(R,this).setSize(this.getColumnsWidth(m,w),s.hider.offsetHeight-h),f(R,this).setOffset(null,-g),(0,a.addClass)(this.hot.rootElement,v)}else(0,a.removeClass)(this.hot.rootElement,S),p(A,this,!1),f(N,this).length=0}function H(e){f(A,this)&&(f(b,this).eventPageX=e.pageX,this.refreshPositions())}function F(e,t,r,n){this.hot.getSelectedRangeActive()&&f(A,this)&&(f(N,this).indexOf(t.col)>-1?(0,a.removeClass)(this.hot.rootElement,C):(0,a.addClass)(this.hot.rootElement,C),n.row=!0,n.column=!0,n.cell=!0,p(I,this,t.col),f(b,this).TD=r)}function U(){const e=f(b,this).col,t=f(N,this).length;if(p(I,this,void 0),p(A,this,!1),(0,a.removeClass)(this.hot.rootElement,[v,C,S]),this.hot.selection.isSelectedByColumnHeader()&&(0,a.addClass)(this.hot.rootElement,S),t<1||void 0===e)return;const r=f(N,this)[0],n=this.hot.toPhysicalCol