@handsontable/vue 11.1.0 → 12.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BaseEditorComponent.vue.d.ts +1 -0
- package/LICENSE.txt +1 -1
- package/README.md +0 -1
- package/commonjs/vue-handsontable.js +20 -10
- package/dist/vue-handsontable.js +22 -12
- package/dist/vue-handsontable.js.map +1 -1
- package/dist/vue-handsontable.min.js +3 -3
- package/dist/vue-handsontable.min.js.map +1 -1
- package/es/vue-handsontable.js +20 -10
- package/package.json +9 -3
|
@@ -35,6 +35,7 @@ declare class BaseEditorComponent extends Vue implements Handsontable.editors.Ba
|
|
|
35
35
|
removeHooksByKey(...args: any[]): any;
|
|
36
36
|
clearHooks(...args: any[]): any;
|
|
37
37
|
getEditedCell(...args: any[]): any;
|
|
38
|
+
getEditedCellRect(...args: any[]): any;
|
|
38
39
|
getEditedCellsZIndex(...args: any[]): any;
|
|
39
40
|
getEditedCellsLayerClass(...args: any[]): any;
|
|
40
41
|
}
|
package/LICENSE.txt
CHANGED
|
@@ -18,7 +18,7 @@ license agreement.
|
|
|
18
18
|
In any case, you must not make any such use of this software as to develop software which may be
|
|
19
19
|
considered competitive with this software.
|
|
20
20
|
|
|
21
|
-
UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN
|
|
21
|
+
UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN "AS IS"
|
|
22
22
|
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO
|
|
23
23
|
LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,
|
|
24
24
|
INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
package/README.md
CHANGED
|
@@ -11,7 +11,6 @@ It provides data binding, data validation, filtering, sorting, and CRUD operatio
|
|
|
11
11
|
[](https://npmjs.com/package/@handsontable/vue)
|
|
12
12
|
[](https://github.com/handsontable/handsontable/actions/workflows/test.yml?query=branch%3Amaster)
|
|
13
13
|
[](https://app.fossa.io/projects/git%2Bgithub.com%2Fhandsontable%2Fhandsontable?ref=badge_shield)
|
|
14
|
-
[](https://snyk.io/test/github/handsontable/handsontable?targetFile=wrappers/vue/package.json)
|
|
15
14
|
[](https://sonarcloud.io/dashboard?id=handsontable_handsontable)
|
|
16
15
|
|
|
17
16
|
---
|
|
@@ -105,18 +105,17 @@ function _inherits(subClass, superClass) {
|
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
function _getPrototypeOf(o) {
|
|
108
|
-
_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
|
|
108
|
+
_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
|
|
109
109
|
return o.__proto__ || Object.getPrototypeOf(o);
|
|
110
110
|
};
|
|
111
111
|
return _getPrototypeOf(o);
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
function _setPrototypeOf(o, p) {
|
|
115
|
-
_setPrototypeOf = Object.setPrototypeOf
|
|
115
|
+
_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
|
|
116
116
|
o.__proto__ = p;
|
|
117
117
|
return o;
|
|
118
118
|
};
|
|
119
|
-
|
|
120
119
|
return _setPrototypeOf(o, p);
|
|
121
120
|
}
|
|
122
121
|
|
|
@@ -370,7 +369,7 @@ function simpleEqual(objectA, objectB) {
|
|
|
370
369
|
return JSON.stringify(objectA) === JSON.stringify(objectB);
|
|
371
370
|
}
|
|
372
371
|
|
|
373
|
-
var version="
|
|
372
|
+
var version="12.1.0";
|
|
374
373
|
|
|
375
374
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
376
375
|
|
|
@@ -1660,26 +1659,37 @@ var BaseEditorComponent = /*#__PURE__*/function (_Vue) {
|
|
|
1660
1659
|
return (_Handsontable$editors23 = Handsontable__default["default"].editors.BaseEditor.prototype.getEditedCell).call.apply(_Handsontable$editors23, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1661
1660
|
}
|
|
1662
1661
|
}, {
|
|
1663
|
-
key: "
|
|
1664
|
-
value: function
|
|
1662
|
+
key: "getEditedCellRect",
|
|
1663
|
+
value: function getEditedCellRect() {
|
|
1665
1664
|
var _Handsontable$editors24;
|
|
1666
1665
|
|
|
1667
1666
|
for (var _len24 = arguments.length, args = new Array(_len24), _key24 = 0; _key24 < _len24; _key24++) {
|
|
1668
1667
|
args[_key24] = arguments[_key24];
|
|
1669
1668
|
}
|
|
1670
1669
|
|
|
1671
|
-
return (_Handsontable$editors24 = Handsontable__default["default"].editors.BaseEditor.prototype.
|
|
1670
|
+
return (_Handsontable$editors24 = Handsontable__default["default"].editors.BaseEditor.prototype.getEditedCellRect).call.apply(_Handsontable$editors24, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1672
1671
|
}
|
|
1673
1672
|
}, {
|
|
1674
|
-
key: "
|
|
1675
|
-
value: function
|
|
1673
|
+
key: "getEditedCellsZIndex",
|
|
1674
|
+
value: function getEditedCellsZIndex() {
|
|
1676
1675
|
var _Handsontable$editors25;
|
|
1677
1676
|
|
|
1678
1677
|
for (var _len25 = arguments.length, args = new Array(_len25), _key25 = 0; _key25 < _len25; _key25++) {
|
|
1679
1678
|
args[_key25] = arguments[_key25];
|
|
1680
1679
|
}
|
|
1681
1680
|
|
|
1682
|
-
return (_Handsontable$editors25 = Handsontable__default["default"].editors.BaseEditor.prototype.
|
|
1681
|
+
return (_Handsontable$editors25 = Handsontable__default["default"].editors.BaseEditor.prototype.getEditedCellsZIndex).call.apply(_Handsontable$editors25, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1682
|
+
}
|
|
1683
|
+
}, {
|
|
1684
|
+
key: "getEditedCellsLayerClass",
|
|
1685
|
+
value: function getEditedCellsLayerClass() {
|
|
1686
|
+
var _Handsontable$editors26;
|
|
1687
|
+
|
|
1688
|
+
for (var _len26 = arguments.length, args = new Array(_len26), _key26 = 0; _key26 < _len26; _key26++) {
|
|
1689
|
+
args[_key26] = arguments[_key26];
|
|
1690
|
+
}
|
|
1691
|
+
|
|
1692
|
+
return (_Handsontable$editors26 = Handsontable__default["default"].editors.BaseEditor.prototype.getEditedCellsLayerClass).call.apply(_Handsontable$editors26, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1683
1693
|
}
|
|
1684
1694
|
}]);
|
|
1685
1695
|
|
package/dist/vue-handsontable.js
CHANGED
|
@@ -19,13 +19,13 @@
|
|
|
19
19
|
* In any case, you must not make any such use of this software as to develop software which may be
|
|
20
20
|
* considered competitive with this software.
|
|
21
21
|
*
|
|
22
|
-
* UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN
|
|
22
|
+
* UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN "AS IS"
|
|
23
23
|
* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO
|
|
24
24
|
* LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,
|
|
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:
|
|
28
|
+
* Version: 12.1.0 (built at Tue Jun 28 2022 12:09:53 GMT+0200 (Central European Summer Time))
|
|
29
29
|
*/
|
|
30
30
|
(function (global, factory) {
|
|
31
31
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('handsontable/base'), require('vue')) :
|
|
@@ -133,18 +133,17 @@ function _inherits(subClass, superClass) {
|
|
|
133
133
|
}
|
|
134
134
|
|
|
135
135
|
function _getPrototypeOf(o) {
|
|
136
|
-
_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
|
|
136
|
+
_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
|
|
137
137
|
return o.__proto__ || Object.getPrototypeOf(o);
|
|
138
138
|
};
|
|
139
139
|
return _getPrototypeOf(o);
|
|
140
140
|
}
|
|
141
141
|
|
|
142
142
|
function _setPrototypeOf(o, p) {
|
|
143
|
-
_setPrototypeOf = Object.setPrototypeOf
|
|
143
|
+
_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
|
|
144
144
|
o.__proto__ = p;
|
|
145
145
|
return o;
|
|
146
146
|
};
|
|
147
|
-
|
|
148
147
|
return _setPrototypeOf(o, p);
|
|
149
148
|
}
|
|
150
149
|
|
|
@@ -398,7 +397,7 @@ function simpleEqual(objectA, objectB) {
|
|
|
398
397
|
return JSON.stringify(objectA) === JSON.stringify(objectB);
|
|
399
398
|
}
|
|
400
399
|
|
|
401
|
-
var version="
|
|
400
|
+
var version="12.1.0";
|
|
402
401
|
|
|
403
402
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
404
403
|
|
|
@@ -1688,26 +1687,37 @@ var BaseEditorComponent = /*#__PURE__*/function (_Vue) {
|
|
|
1688
1687
|
return (_Handsontable$editors23 = Handsontable__default["default"].editors.BaseEditor.prototype.getEditedCell).call.apply(_Handsontable$editors23, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1689
1688
|
}
|
|
1690
1689
|
}, {
|
|
1691
|
-
key: "
|
|
1692
|
-
value: function
|
|
1690
|
+
key: "getEditedCellRect",
|
|
1691
|
+
value: function getEditedCellRect() {
|
|
1693
1692
|
var _Handsontable$editors24;
|
|
1694
1693
|
|
|
1695
1694
|
for (var _len24 = arguments.length, args = new Array(_len24), _key24 = 0; _key24 < _len24; _key24++) {
|
|
1696
1695
|
args[_key24] = arguments[_key24];
|
|
1697
1696
|
}
|
|
1698
1697
|
|
|
1699
|
-
return (_Handsontable$editors24 = Handsontable__default["default"].editors.BaseEditor.prototype.
|
|
1698
|
+
return (_Handsontable$editors24 = Handsontable__default["default"].editors.BaseEditor.prototype.getEditedCellRect).call.apply(_Handsontable$editors24, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1700
1699
|
}
|
|
1701
1700
|
}, {
|
|
1702
|
-
key: "
|
|
1703
|
-
value: function
|
|
1701
|
+
key: "getEditedCellsZIndex",
|
|
1702
|
+
value: function getEditedCellsZIndex() {
|
|
1704
1703
|
var _Handsontable$editors25;
|
|
1705
1704
|
|
|
1706
1705
|
for (var _len25 = arguments.length, args = new Array(_len25), _key25 = 0; _key25 < _len25; _key25++) {
|
|
1707
1706
|
args[_key25] = arguments[_key25];
|
|
1708
1707
|
}
|
|
1709
1708
|
|
|
1710
|
-
return (_Handsontable$editors25 = Handsontable__default["default"].editors.BaseEditor.prototype.
|
|
1709
|
+
return (_Handsontable$editors25 = Handsontable__default["default"].editors.BaseEditor.prototype.getEditedCellsZIndex).call.apply(_Handsontable$editors25, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1710
|
+
}
|
|
1711
|
+
}, {
|
|
1712
|
+
key: "getEditedCellsLayerClass",
|
|
1713
|
+
value: function getEditedCellsLayerClass() {
|
|
1714
|
+
var _Handsontable$editors26;
|
|
1715
|
+
|
|
1716
|
+
for (var _len26 = arguments.length, args = new Array(_len26), _key26 = 0; _key26 < _len26; _key26++) {
|
|
1717
|
+
args[_key26] = arguments[_key26];
|
|
1718
|
+
}
|
|
1719
|
+
|
|
1720
|
+
return (_Handsontable$editors26 = Handsontable__default["default"].editors.BaseEditor.prototype.getEditedCellsLayerClass).call.apply(_Handsontable$editors26, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1711
1721
|
}
|
|
1712
1722
|
}]);
|
|
1713
1723
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vue-handsontable.js","sources":["../src/helpers.ts","../src/lib/lru/lru.js","../src/HotTable.vue","../../../node_modules/vue-runtime-helpers/dist/normalize-component.mjs","../src/HotColumn.vue","../../../node_modules/vue-class-component/dist/vue-class-component.esm.js","../src/BaseEditorComponent.vue"],"sourcesContent":["import Vue, { VNode } from 'vue';\nimport Handsontable from 'handsontable/base';\nimport { HotTableProps, VueProps, EditorComponent } from './types';\n\nconst unassignedPropSymbol = Symbol('unassigned');\nlet bulkComponentContainer = null;\n\n/**\n * Message for the warning thrown if the Handsontable instance has been destroyed.\n */\nexport const HOT_DESTROYED_WARNING = 'The Handsontable instance bound to this component was destroyed and cannot be' +\n ' used properly.';\n\n/**\n * Rewrite the settings object passed to the watchers to be a clean array/object prepared to use within Handsontable config.\n *\n * @param {*} observerSettings Watcher object containing the changed data.\n * @returns {Object|Array}\n */\nexport function rewriteSettings(observerSettings): any[] | object {\n const settingsType = Object.prototype.toString.call(observerSettings);\n let settings: any[] | object | null = null;\n let type: { array?: boolean, object?: boolean } = {};\n\n if (settingsType === '[object Array]') {\n settings = [];\n type.array = true;\n\n } else if (settingsType === '[object Object]') {\n settings = {};\n type.object = true;\n }\n\n if (type.array || type.object) {\n for (const p in observerSettings) {\n if (observerSettings.hasOwnProperty(p)) {\n settings[p] = observerSettings[p];\n }\n }\n\n } else {\n settings = observerSettings;\n }\n\n return settings;\n}\n\n/**\n * Private method to ensure the table is not calling `updateSettings` after editing cells.\n * @private\n */\nexport function preventInternalEditWatch(component) {\n if (component.hotInstance) {\n component.hotInstance.addHook('beforeChange', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeCreateRow', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeCreateCol', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeRemoveRow', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeRemoveCol', () => {\n component.__internalEdit = true;\n });\n }\n}\n\n/**\n * Generate an object containing all the available Handsontable properties and plugin hooks.\n *\n * @param {String} source Source for the factory (either 'HotTable' or 'HotColumn').\n * @returns {Object}\n */\nexport function propFactory(source): VueProps<HotTableProps> {\n const registeredHooks: string[] = Handsontable.hooks.getRegistered();\n\n let propSchema: VueProps<HotTableProps> = {};\n Object.assign(propSchema, Handsontable.DefaultSettings);\n\n for (let prop in propSchema) {\n propSchema[prop] = {\n default: unassignedPropSymbol\n };\n }\n\n for (let i = 0; i < registeredHooks.length; i++) {\n propSchema[registeredHooks[i]] = {\n default: unassignedPropSymbol\n };\n }\n\n propSchema.settings = {\n default: unassignedPropSymbol\n };\n\n if (source === 'HotTable') {\n propSchema.id = {\n type: String,\n default: 'hot-' + Math.random().toString(36).substring(5)\n };\n\n propSchema.wrapperRendererCacheSize = {\n type: Number,\n default: 3000\n };\n }\n\n return propSchema;\n}\n\n/**\n * Filter out all of the unassigned props, and return only the one passed to the component.\n *\n * @param {Object} props Object containing all the possible props.\n * @returns {Object} Object containing only used props.\n */\nexport function filterPassedProps(props) {\n const filteredProps: VueProps<HotTableProps> = {};\n const columnSettingsProp = props['settings'];\n\n if (columnSettingsProp !== unassignedPropSymbol) {\n for (let propName in columnSettingsProp) {\n if (columnSettingsProp.hasOwnProperty(propName) && columnSettingsProp[propName] !== unassignedPropSymbol) {\n filteredProps[propName] = columnSettingsProp[propName];\n }\n }\n }\n\n for (let propName in props) {\n if (props.hasOwnProperty(propName) && propName !== 'settings' && props[propName] !== unassignedPropSymbol) {\n filteredProps[propName] = props[propName];\n }\n }\n\n return filteredProps;\n}\n\n/**\n * Prepare the settings object to be used as the settings for Handsontable, based on the props provided to the component.\n *\n * @param {HotTableProps} props The props passed to the component.\n * @param {Handsontable.GridSettings} currentSettings The current Handsontable settings.\n * @returns {Handsontable.GridSettings} An object containing the properties, ready to be used within Handsontable.\n */\nexport function prepareSettings(props: HotTableProps, currentSettings?: Handsontable.GridSettings): Handsontable.GridSettings {\n const assignedProps: VueProps<HotTableProps> = filterPassedProps(props);\n const hotSettingsInProps: {} = props.settings ? props.settings : assignedProps;\n const additionalHotSettingsInProps: Handsontable.GridSettings = props.settings ? assignedProps : null;\n const newSettings = {};\n\n for (const key in hotSettingsInProps) {\n if (\n hotSettingsInProps.hasOwnProperty(key) &&\n hotSettingsInProps[key] !== void 0 &&\n ((currentSettings && key !== 'data') ? !simpleEqual(currentSettings[key], hotSettingsInProps[key]) : true)\n ) {\n newSettings[key] = hotSettingsInProps[key];\n }\n }\n\n for (const key in additionalHotSettingsInProps) {\n if (\n additionalHotSettingsInProps.hasOwnProperty(key) &&\n key !== 'id' &&\n key !== 'settings' &&\n key !== 'wrapperRendererCacheSize' &&\n additionalHotSettingsInProps[key] !== void 0 &&\n ((currentSettings && key !== 'data') ? !simpleEqual(currentSettings[key], additionalHotSettingsInProps[key]) : true)\n ) {\n newSettings[key] = additionalHotSettingsInProps[key];\n }\n }\n\n return newSettings;\n}\n\n/**\n * Get the VNode element with the provided type attribute from the component slots.\n *\n * @param {Array} componentSlots Array of slots from a component.\n * @param {String} type Type of the child component. Either `hot-renderer` or `hot-editor`.\n * @returns {Object|null} The VNode of the child component (or `null` when nothing's found).\n */\nexport function findVNodeByType(componentSlots: VNode[], type: string): VNode {\n let componentVNode: VNode = null;\n\n componentSlots.every((slot, index) => {\n if (slot.data && slot.data.attrs && slot.data.attrs[type] !== void 0) {\n componentVNode = slot;\n return false;\n }\n\n return true;\n });\n\n return componentVNode;\n}\n\n/**\n * Get all `hot-column` component instances from the provided children array.\n *\n * @param {Array} children Array of children from a component.\n * @returns {Array} Array of `hot-column` instances.\n */\nexport function getHotColumnComponents(children) {\n return children.filter((child) => child.$options.name === 'HotColumn');\n}\n\n/**\n * Create an instance of the Vue Component based on the provided VNode.\n *\n * @param {Object} vNode VNode element to be turned into a component instance.\n * @param {Object} parent Instance of the component to be marked as a parent of the newly created instance.\n * @param {Object} props Props to be passed to the new instance.\n * @param {Object} data Data to be passed to the new instance.\n */\nexport function createVueComponent(vNode: VNode, parent: Vue, props: object, data: object): EditorComponent {\n const ownerDocument = parent.$el ? parent.$el.ownerDocument : document;\n const settings: object = {\n propsData: props,\n parent,\n data\n };\n\n if (!bulkComponentContainer) {\n bulkComponentContainer = ownerDocument.createElement('DIV');\n bulkComponentContainer.id = 'vueHotComponents';\n\n ownerDocument.body.appendChild(bulkComponentContainer);\n }\n\n const componentContainer = ownerDocument.createElement('DIV');\n bulkComponentContainer.appendChild(componentContainer);\n\n return (new (vNode.componentOptions as any).Ctor(settings)).$mount(componentContainer);\n}\n\n/**\n * Compare two objects using `JSON.stringify`.\n * *Note: * As it's using the stringify function to compare objects, the property order in both objects is\n * important. It will return `false` for the same objects, if they're defined in a different order.\n *\n * @param {object} objectA First object to compare.\n * @param {object} objectB Second object to compare.\n * @returns {boolean} `true` if they're the same, `false` otherwise.\n */\nfunction simpleEqual(objectA, objectB) {\n return JSON.stringify(objectA) === JSON.stringify(objectB);\n}\n","/**\n * A doubly linked list-based Least Recently Used (LRU) cache. Will keep most\n * recently used items while discarding least recently used items when its limit\n * is reached.\n *\n * Licensed under MIT. Copyright (c) 2010 Rasmus Andersson <http://hunch.se/>\n * See README.md for details.\n *\n * Illustration of the design:\n *\n * entry entry entry entry\n * ______ ______ ______ ______\n * | head |.newer => | |.newer => | |.newer => | tail |\n * | A | | B | | C | | D |\n * |______| <= older.|______| <= older.|______| <= older.|______|\n *\n * removed <-- <-- <-- <-- <-- <-- <-- <-- <-- <-- <-- added\n */\n(function(g,f){\n const e = typeof exports == 'object' ? exports : typeof g == 'object' ? g : {};\n f(e);\n if (typeof define == 'function' && define.amd) { define('lru', e); }\n})(this, function(exports) {\n\n const NEWER = Symbol('newer');\n const OLDER = Symbol('older');\n\n function LRUMap(limit, entries) {\n if (typeof limit !== 'number') {\n // called as (entries)\n entries = limit;\n limit = 0;\n }\n\n this.size = 0;\n this.limit = limit;\n this.oldest = this.newest = undefined;\n this._keymap = new Map();\n\n if (entries) {\n this.assign(entries);\n if (limit < 1) {\n this.limit = this.size;\n }\n }\n }\n\n exports.LRUMap = LRUMap;\n\n function Entry(key, value) {\n this.key = key;\n this.value = value;\n this[NEWER] = undefined;\n this[OLDER] = undefined;\n }\n\n\n LRUMap.prototype._markEntryAsUsed = function(entry) {\n if (entry === this.newest) {\n // Already the most recenlty used entry, so no need to update the list\n return;\n }\n // HEAD--------------TAIL\n // <.older .newer>\n // <--- add direction --\n // A B C <D> E\n if (entry[NEWER]) {\n if (entry === this.oldest) {\n this.oldest = entry[NEWER];\n }\n entry[NEWER][OLDER] = entry[OLDER]; // C <-- E.\n }\n if (entry[OLDER]) {\n entry[OLDER][NEWER] = entry[NEWER]; // C. --> E\n }\n entry[NEWER] = undefined; // D --x\n entry[OLDER] = this.newest; // D. --> E\n if (this.newest) {\n this.newest[NEWER] = entry; // E. <-- D\n }\n this.newest = entry;\n };\n\n LRUMap.prototype.assign = function(entries) {\n let entry, limit = this.limit || Number.MAX_VALUE;\n this._keymap.clear();\n let it = entries[Symbol.iterator]();\n for (let itv = it.next(); !itv.done; itv = it.next()) {\n let e = new Entry(itv.value[0], itv.value[1]);\n this._keymap.set(e.key, e);\n if (!entry) {\n this.oldest = e;\n } else {\n entry[NEWER] = e;\n e[OLDER] = entry;\n }\n entry = e;\n if (limit-- == 0) {\n throw new Error('overflow');\n }\n }\n this.newest = entry;\n this.size = this._keymap.size;\n };\n\n LRUMap.prototype.get = function(key) {\n // First, find our cache entry\n var entry = this._keymap.get(key);\n if (!entry) return; // Not cached. Sorry.\n // As <key> was found in the cache, register it as being requested recently\n this._markEntryAsUsed(entry);\n return entry.value;\n };\n\n LRUMap.prototype.set = function(key, value) {\n var entry = this._keymap.get(key);\n\n if (entry) {\n // update existing\n entry.value = value;\n this._markEntryAsUsed(entry);\n return this;\n }\n\n // new entry\n this._keymap.set(key, (entry = new Entry(key, value)));\n\n if (this.newest) {\n // link previous tail to the new tail (entry)\n this.newest[NEWER] = entry;\n entry[OLDER] = this.newest;\n } else {\n // we're first in -- yay\n this.oldest = entry;\n }\n\n // add new entry to the end of the linked list -- it's now the freshest entry.\n this.newest = entry;\n ++this.size;\n if (this.size > this.limit) {\n // we hit the limit -- remove the head\n this.shift();\n }\n\n return this;\n };\n\n LRUMap.prototype.shift = function() {\n // todo: handle special case when limit == 1\n var entry = this.oldest;\n if (entry) {\n if (this.oldest[NEWER]) {\n // advance the list\n this.oldest = this.oldest[NEWER];\n this.oldest[OLDER] = undefined;\n } else {\n // the cache is exhausted\n this.oldest = undefined;\n this.newest = undefined;\n }\n // Remove last strong reference to <entry> and remove links from the purged\n // entry being returned:\n entry[NEWER] = entry[OLDER] = undefined;\n this._keymap.delete(entry.key);\n --this.size;\n return [entry.key, entry.value];\n }\n };\n\n// ----------------------------------------------------------------------------\n// Following code is optional and can be removed without breaking the core\n// functionality.\n LRUMap.prototype.has = function(key) {\n return this._keymap.has(key);\n };\n});\n","<template>\n <div :id=\"id\">\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\n import {\n propFactory,\n preventInternalEditWatch,\n prepareSettings,\n createVueComponent,\n findVNodeByType,\n getHotColumnComponents,\n HOT_DESTROYED_WARNING\n } from './helpers';\n import Vue, { VNode } from 'vue';\n import {\n HotTableData,\n HotTableMethods,\n HotTableProps,\n HotTableComponent,\n EditorComponent\n } from './types';\n import * as packageJson from '../package.json';\n import { LRUMap } from './lib/lru/lru';\n import Handsontable from 'handsontable/base';\n\n const HotTable: HotTableComponent<Vue, HotTableData, HotTableMethods, {}, HotTableProps> = {\n name: 'HotTable',\n props: propFactory('HotTable'),\n watch: {\n mergedHotSettings: function (value) {\n if (!this.hotInstance || value === void 0) {\n return;\n }\n\n if (value.data) {\n if (\n this.hotInstance.isColumnModificationAllowed() ||\n (\n !this.hotInstance.isColumnModificationAllowed() &&\n this.hotInstance.countSourceCols() === this.miscCache.currentSourceColumns\n )\n ) {\n // If the dataset dimensions change, update the index mappers.\n this.matchHotMappersSize();\n\n // Data is automatically synchronized by reference.\n delete value.data;\n }\n }\n\n // If there are another options changed, update the HOT settings, render the table otherwise.\n if (Object.keys(value).length) {\n this.hotInstance.updateSettings(value);\n\n } else {\n this.hotInstance.render();\n }\n\n this.miscCache.currentSourceColumns = this.hotInstance.countSourceCols();\n }\n },\n data: function () {\n const thisComponent: any = this;\n const rendererCache = new LRUMap(this.wrapperRendererCacheSize);\n\n // Make the LRU cache destroy each removed component\n rendererCache.shift = function () {\n let entry = LRUMap.prototype.shift.call(this);\n entry[1].component.$destroy();\n\n return entry;\n };\n\n return {\n __internalEdit: false,\n miscCache: {\n currentSourceColumns: null\n },\n __hotInstance: null,\n columnSettings: null,\n rendererCache: rendererCache,\n editorCache: new Map(),\n get hotInstance() {\n if (!thisComponent.__hotInstance || (thisComponent.__hotInstance && !thisComponent.__hotInstance.isDestroyed)) {\n\n // Will return the Handsontable instance or `null` if it's not yet been created.\n return thisComponent.__hotInstance;\n\n } else {\n console.warn(HOT_DESTROYED_WARNING);\n\n return null;\n }\n },\n set hotInstance(hotInstance) {\n thisComponent.__hotInstance = hotInstance;\n }\n };\n },\n computed: {\n mergedHotSettings: function (): Handsontable.GridSettings {\n return prepareSettings(this.$props, this.hotInstance ? this.hotInstance.getSettings() : void 0);\n }\n },\n methods: {\n /**\n * Initialize Handsontable.\n */\n hotInit: function (): void {\n const globalRendererVNode = this.getGlobalRendererVNode();\n const globalEditorVNode = this.getGlobalEditorVNode();\n\n const newSettings: Handsontable.GridSettings = prepareSettings(this.$props);\n\n newSettings.columns = this.columnSettings ? this.columnSettings : newSettings.columns;\n\n if (globalEditorVNode) {\n newSettings.editor = this.getEditorClass(globalEditorVNode, this);\n\n globalEditorVNode.child.$destroy();\n }\n\n if (globalRendererVNode) {\n newSettings.renderer = this.getRendererWrapper(globalRendererVNode, this);\n\n globalRendererVNode.child.$destroy();\n }\n\n this.hotInstance = new Handsontable.Core(this.$el, newSettings);\n this.hotInstance.init();\n\n preventInternalEditWatch(this);\n\n this.miscCache.currentSourceColumns = this.hotInstance.countSourceCols();\n },\n matchHotMappersSize: function(): void {\n if (!this.hotInstance) {\n return;\n }\n\n const data: Handsontable.CellValue[][] = this.hotInstance.getSourceData();\n const rowsToRemove: number[] = [];\n const columnsToRemove: number[] = [];\n const indexMapperRowCount = this.hotInstance.rowIndexMapper.getNumberOfIndexes();\n const isColumnModificationAllowed = this.hotInstance.isColumnModificationAllowed();\n let indexMapperColumnCount = 0;\n\n if (data && data.length !== indexMapperRowCount) {\n if (data.length < indexMapperRowCount) {\n for (let r = data.length; r < indexMapperRowCount; r++) {\n rowsToRemove.push(r);\n }\n }\n }\n\n if (isColumnModificationAllowed) {\n indexMapperColumnCount = this.hotInstance.columnIndexMapper.getNumberOfIndexes();\n\n if (data && data[0] && data[0]?.length !==\n indexMapperColumnCount) {\n if (data[0].length < indexMapperColumnCount) {\n for (let c = data[0].length; c < indexMapperColumnCount; c++) {\n columnsToRemove.push(c);\n }\n }\n }\n }\n\n this.hotInstance.batch(() => {\n if (rowsToRemove.length > 0) {\n this.hotInstance.rowIndexMapper.removeIndexes(rowsToRemove);\n\n } else {\n this.hotInstance.rowIndexMapper.insertIndexes(indexMapperRowCount - 1, data.length - indexMapperRowCount);\n }\n\n if (isColumnModificationAllowed && data.length !== 0) {\n if (columnsToRemove.length > 0) {\n this.hotInstance.columnIndexMapper.removeIndexes(columnsToRemove);\n\n } else {\n this.hotInstance.columnIndexMapper.insertIndexes(indexMapperColumnCount - 1, data[0].length - indexMapperColumnCount);\n }\n }\n });\n },\n getGlobalRendererVNode: function (): VNode | null {\n const hotTableSlots: VNode[] = this.$slots.default || [];\n return findVNodeByType(hotTableSlots, 'hot-renderer');\n },\n getGlobalEditorVNode: function (): VNode | null {\n const hotTableSlots: VNode[] = this.$slots.default || [];\n return findVNodeByType(hotTableSlots, 'hot-editor');\n },\n /**\n * Get settings for the columns provided in the `hot-column` components.\n */\n getColumnSettings: function (): HotTableProps[] | void {\n const hotColumns = getHotColumnComponents(this.$children);\n let usesRendererComponent = false;\n let columnSettings: HotTableProps[] = hotColumns.map((elem) => {\n if (elem.usesRendererComponent) {\n usesRendererComponent = true;\n }\n\n return {...elem.columnSettings};\n });\n\n if (usesRendererComponent &&\n (this.settings && (this.settings.autoColumnSize !== false || this.settings.autoRowSize)) &&\n (this.autoColumnSize !== false || this.autoRowSize)) {\n console.warn('Your `hot-table` configuration includes both `hot-column` and `autoRowSize`/`autoColumnSize`, which are not compatible with each other ' +\n 'in this version of `@handsontable/vue`. Disable `autoRowSize` and `autoColumnSize` to prevent row and column misalignment.')\n }\n\n return columnSettings.length ? columnSettings : void 0;\n },\n /**\n * Create the wrapper function for the provided renderer child component.\n *\n * @param {Object} vNode VNode of the renderer child component.\n * @param {Boolean} containerComponent Instance of the component, which will be treated as a parent for the newly created renderer component.\n * @returns {Function} The wrapper function used as the renderer.\n */\n getRendererWrapper: function (vNode: VNode, containerComponent: Vue): (...args) => HTMLElement {\n const $vm = this;\n\n return function (instance, TD, row, col, prop, value, cellProperties) {\n // Prevent caching and rendering of the GhostTable table cells\n if (TD && !TD.getAttribute('ghost-table')) {\n const rendererCache = $vm.rendererCache;\n const rendererArgs: object = {\n hotInstance: instance,\n TD,\n row,\n col,\n prop,\n value,\n cellProperties,\n isRenderer: true\n };\n\n if (rendererCache && !rendererCache.has(`${row}-${col}`)) {\n const mountedComponent: Vue = createVueComponent(vNode, containerComponent, vNode.componentOptions.propsData, rendererArgs);\n\n rendererCache.set(`${row}-${col}`, {\n component: mountedComponent,\n lastUsedTD: null\n });\n }\n\n const cachedEntry = rendererCache.get(`${row}-${col}`);\n const cachedComponent: Vue = cachedEntry.component;\n const cachedTD: HTMLTableCellElement = cachedEntry.lastUsedTD;\n\n Object.assign(cachedComponent.$data, rendererArgs);\n\n if (!cachedComponent.$el.parentElement || cachedTD !== TD) {\n // Clear the previous contents of a TD\n while (TD.firstChild) {\n TD.removeChild(TD.firstChild);\n }\n\n TD.appendChild(cachedComponent.$el);\n\n cachedEntry.lastUsedTD = TD;\n }\n }\n\n return TD;\n };\n },\n /**\n * Create a fresh class to be used as an editor, based on the editor component provided.\n *\n * @param {Object} vNode VNode for the editor child component.\n * @param {Boolean} containerComponent Instance of the component, which will be treated as a parent for the newly created editor component.\n * @returns {Class} The class used as an editor in Handsontable.\n */\n getEditorClass: function (vNode: VNode, containerComponent: Vue): typeof Handsontable.editors.BaseEditor {\n const componentKey: string = vNode.key ? vNode.key.toString() : null;\n const componentName: string = (vNode.componentOptions.Ctor as any).options.name;\n const componentCacheKey = componentKey ? `${componentName}:${componentKey}` : componentName;\n\n const editorCache = this.editorCache;\n let mountedComponent: EditorComponent = null;\n\n if (!editorCache.has(componentCacheKey)) {\n mountedComponent = createVueComponent(vNode, containerComponent, vNode.componentOptions.propsData, {isEditor: true});\n\n editorCache.set(componentCacheKey, mountedComponent);\n\n } else {\n mountedComponent = editorCache.get(componentCacheKey);\n }\n\n return mountedComponent.$data.hotCustomEditorClass;\n }\n },\n mounted: function () {\n this.columnSettings = this.getColumnSettings();\n\n return this.hotInit();\n },\n beforeDestroy: function () {\n if (this.hotInstance) {\n this.hotInstance.destroy();\n }\n },\n version: (packageJson as any).version\n };\n\n export default HotTable;\n export { HotTable };\n</script>\n","function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\nexport default normalizeComponent;\n//# sourceMappingURL=normalize-component.mjs.map\n","<script lang=\"ts\">\n import Vue, { VNode } from 'vue';\n import { ThisTypedComponentOptionsWithRecordProps } from 'vue/types/options';\n import {\n propFactory,\n findVNodeByType,\n filterPassedProps\n } from './helpers';\n import {\n HotTableProps,\n HotColumnMethods,\n } from './types';\n\n const HotColumn: ThisTypedComponentOptionsWithRecordProps<Vue, {}, HotColumnMethods, {}, HotTableProps> = {\n name: 'HotColumn',\n props: propFactory('HotColumn'),\n methods: {\n /**\n * Create the column settings based on the data provided to the `hot-column` component and it's child components.\n */\n createColumnSettings: function (): void {\n const hotColumnSlots: VNode[] | any[] = this.$slots.default || [];\n const rendererVNode: VNode | null = findVNodeByType(hotColumnSlots, 'hot-renderer');\n const editorVNode: VNode | null = findVNodeByType(hotColumnSlots, 'hot-editor');\n const assignedProps = filterPassedProps(this.$props);\n\n if (rendererVNode && this.usesRendererComponent === void 0) {\n this.usesRendererComponent = true;\n }\n\n this.columnSettings = {...assignedProps};\n\n if (rendererVNode !== null) {\n this.columnSettings.renderer = this.$parent.getRendererWrapper(rendererVNode, this);\n\n } else if (assignedProps.renderer) {\n this.columnSettings.renderer = assignedProps.renderer;\n }\n\n if (editorVNode !== null) {\n this.columnSettings.editor = this.$parent.getEditorClass(editorVNode, this);\n\n } else if (assignedProps.editor) {\n this.columnSettings.editor = assignedProps.editor;\n }\n }\n },\n mounted: function () {\n this.createColumnSettings();\n },\n render: function () {\n return null;\n }\n };\n\n export default HotColumn;\n export { HotColumn };\n</script>\n","/**\n * vue-class-component v7.2.6\n * (c) 2015-present Evan You\n * @license MIT\n */\nimport Vue from 'vue';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\n// The rational behind the verbose Reflect-feature check below is the fact that there are polyfills\n// which add an implementation for Reflect.defineMetadata but not for Reflect.getOwnMetadataKeys.\n// Without this check consumers will encounter hard to track down runtime errors.\nfunction reflectionIsSupported() {\n return typeof Reflect !== 'undefined' && Reflect.defineMetadata && Reflect.getOwnMetadataKeys;\n}\nfunction copyReflectionMetadata(to, from) {\n forwardMetadata(to, from);\n Object.getOwnPropertyNames(from.prototype).forEach(function (key) {\n forwardMetadata(to.prototype, from.prototype, key);\n });\n Object.getOwnPropertyNames(from).forEach(function (key) {\n forwardMetadata(to, from, key);\n });\n}\n\nfunction forwardMetadata(to, from, propertyKey) {\n var metaKeys = propertyKey ? Reflect.getOwnMetadataKeys(from, propertyKey) : Reflect.getOwnMetadataKeys(from);\n metaKeys.forEach(function (metaKey) {\n var metadata = propertyKey ? Reflect.getOwnMetadata(metaKey, from, propertyKey) : Reflect.getOwnMetadata(metaKey, from);\n\n if (propertyKey) {\n Reflect.defineMetadata(metaKey, metadata, to, propertyKey);\n } else {\n Reflect.defineMetadata(metaKey, metadata, to);\n }\n });\n}\n\nvar fakeArray = {\n __proto__: []\n};\nvar hasProto = fakeArray instanceof Array;\nfunction createDecorator(factory) {\n return function (target, key, index) {\n var Ctor = typeof target === 'function' ? target : target.constructor;\n\n if (!Ctor.__decorators__) {\n Ctor.__decorators__ = [];\n }\n\n if (typeof index !== 'number') {\n index = undefined;\n }\n\n Ctor.__decorators__.push(function (options) {\n return factory(options, key, index);\n });\n };\n}\nfunction mixins() {\n for (var _len = arguments.length, Ctors = new Array(_len), _key = 0; _key < _len; _key++) {\n Ctors[_key] = arguments[_key];\n }\n\n return Vue.extend({\n mixins: Ctors\n });\n}\nfunction isPrimitive(value) {\n var type = _typeof(value);\n\n return value == null || type !== 'object' && type !== 'function';\n}\nfunction warn(message) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-class-component] ' + message);\n }\n}\n\nfunction collectDataFromConstructor(vm, Component) {\n // override _init to prevent to init as Vue instance\n var originalInit = Component.prototype._init;\n\n Component.prototype._init = function () {\n var _this = this;\n\n // proxy to actual vm\n var keys = Object.getOwnPropertyNames(vm); // 2.2.0 compat (props are no longer exposed as self properties)\n\n if (vm.$options.props) {\n for (var key in vm.$options.props) {\n if (!vm.hasOwnProperty(key)) {\n keys.push(key);\n }\n }\n }\n\n keys.forEach(function (key) {\n Object.defineProperty(_this, key, {\n get: function get() {\n return vm[key];\n },\n set: function set(value) {\n vm[key] = value;\n },\n configurable: true\n });\n });\n }; // should be acquired class property values\n\n\n var data = new Component(); // restore original _init to avoid memory leak (#209)\n\n Component.prototype._init = originalInit; // create plain data object\n\n var plainData = {};\n Object.keys(data).forEach(function (key) {\n if (data[key] !== undefined) {\n plainData[key] = data[key];\n }\n });\n\n if (process.env.NODE_ENV !== 'production') {\n if (!(Component.prototype instanceof Vue) && Object.keys(plainData).length > 0) {\n warn('Component class must inherit Vue or its descendant class ' + 'when class property is used.');\n }\n }\n\n return plainData;\n}\n\nvar $internalHooks = ['data', 'beforeCreate', 'created', 'beforeMount', 'mounted', 'beforeDestroy', 'destroyed', 'beforeUpdate', 'updated', 'activated', 'deactivated', 'render', 'errorCaptured', 'serverPrefetch' // 2.6\n];\nfunction componentFactory(Component) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n options.name = options.name || Component._componentTag || Component.name; // prototype props.\n\n var proto = Component.prototype;\n Object.getOwnPropertyNames(proto).forEach(function (key) {\n if (key === 'constructor') {\n return;\n } // hooks\n\n\n if ($internalHooks.indexOf(key) > -1) {\n options[key] = proto[key];\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(proto, key);\n\n if (descriptor.value !== void 0) {\n // methods\n if (typeof descriptor.value === 'function') {\n (options.methods || (options.methods = {}))[key] = descriptor.value;\n } else {\n // typescript decorated data\n (options.mixins || (options.mixins = [])).push({\n data: function data() {\n return _defineProperty({}, key, descriptor.value);\n }\n });\n }\n } else if (descriptor.get || descriptor.set) {\n // computed properties\n (options.computed || (options.computed = {}))[key] = {\n get: descriptor.get,\n set: descriptor.set\n };\n }\n });\n (options.mixins || (options.mixins = [])).push({\n data: function data() {\n return collectDataFromConstructor(this, Component);\n }\n }); // decorate options\n\n var decorators = Component.__decorators__;\n\n if (decorators) {\n decorators.forEach(function (fn) {\n return fn(options);\n });\n delete Component.__decorators__;\n } // find super\n\n\n var superProto = Object.getPrototypeOf(Component.prototype);\n var Super = superProto instanceof Vue ? superProto.constructor : Vue;\n var Extended = Super.extend(options);\n forwardStaticMembers(Extended, Component, Super);\n\n if (reflectionIsSupported()) {\n copyReflectionMetadata(Extended, Component);\n }\n\n return Extended;\n}\nvar reservedPropertyNames = [// Unique id\n'cid', // Super Vue constructor\n'super', // Component options that will be used by the component\n'options', 'superOptions', 'extendOptions', 'sealedOptions', // Private assets\n'component', 'directive', 'filter'];\nvar shouldIgnore = {\n prototype: true,\n arguments: true,\n callee: true,\n caller: true\n};\n\nfunction forwardStaticMembers(Extended, Original, Super) {\n // We have to use getOwnPropertyNames since Babel registers methods as non-enumerable\n Object.getOwnPropertyNames(Original).forEach(function (key) {\n // Skip the properties that should not be overwritten\n if (shouldIgnore[key]) {\n return;\n } // Some browsers does not allow reconfigure built-in properties\n\n\n var extendedDescriptor = Object.getOwnPropertyDescriptor(Extended, key);\n\n if (extendedDescriptor && !extendedDescriptor.configurable) {\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(Original, key); // If the user agent does not support `__proto__` or its family (IE <= 10),\n // the sub class properties may be inherited properties from the super class in TypeScript.\n // We need to exclude such properties to prevent to overwrite\n // the component options object which stored on the extended constructor (See #192).\n // If the value is a referenced value (object or function),\n // we can check equality of them and exclude it if they have the same reference.\n // If it is a primitive value, it will be forwarded for safety.\n\n if (!hasProto) {\n // Only `cid` is explicitly exluded from property forwarding\n // because we cannot detect whether it is a inherited property or not\n // on the no `__proto__` environment even though the property is reserved.\n if (key === 'cid') {\n return;\n }\n\n var superDescriptor = Object.getOwnPropertyDescriptor(Super, key);\n\n if (!isPrimitive(descriptor.value) && superDescriptor && superDescriptor.value === descriptor.value) {\n return;\n }\n } // Warn if the users manually declare reserved properties\n\n\n if (process.env.NODE_ENV !== 'production' && reservedPropertyNames.indexOf(key) >= 0) {\n warn(\"Static property name '\".concat(key, \"' declared on class '\").concat(Original.name, \"' \") + 'conflicts with reserved property name of Vue internal. ' + 'It may cause unexpected behavior of the component. Consider renaming the property.');\n }\n\n Object.defineProperty(Extended, key, descriptor);\n });\n}\n\nfunction Component(options) {\n if (typeof options === 'function') {\n return componentFactory(options);\n }\n\n return function (Component) {\n return componentFactory(Component, options);\n };\n}\n\nComponent.registerHooks = function registerHooks(keys) {\n $internalHooks.push.apply($internalHooks, _toConsumableArray(keys));\n};\n\nexport default Component;\nexport { createDecorator, mixins };\n","<script lang=\"ts\">\n import Vue from 'vue';\n import Handsontable from 'handsontable/base';\n import Component from 'vue-class-component';\n\n @Component({})\n class BaseEditorComponent extends Vue implements Handsontable.editors.BaseEditor {\n name = 'BaseEditorComponent';\n instance = null;\n row = null;\n col = null;\n prop = null;\n TD = null;\n originalValue = null;\n cellProperties = null;\n state = null;\n hot = null;\n\n mounted() {\n const _this = this;\n\n this.$data.hotCustomEditorClass = function () {\n const customEditorClass = class CustomEditor extends Handsontable.editors.BaseEditor implements Handsontable.editors.BaseEditor {\n constructor(hotInstance) {\n super(hotInstance);\n\n _this.$data.hotCustomEditorInstance = this;\n }\n\n focus() {\n }\n\n getValue() {\n }\n\n setValue() {\n }\n\n open() {\n }\n\n close() {\n }\n } as any;\n\n // Fill with the rest of the BaseEditorComponent methods\n Object.getOwnPropertyNames(Handsontable.editors.BaseEditor.prototype).forEach(propName => {\n if (propName === 'constructor') {\n return;\n }\n\n customEditorClass.prototype[propName] = function (...args) {\n return _this[propName].call(this, ...args);\n }\n });\n\n return customEditorClass;\n }();\n }\n\n // BaseEditorComponent methods:\n private _fireCallbacks(...args) {\n (Handsontable.editors.BaseEditor.prototype as any)._fireCallbacks.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n beginEditing(...args) {\n return Handsontable.editors.BaseEditor.prototype.beginEditing.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n cancelChanges(...args) {\n return Handsontable.editors.BaseEditor.prototype.cancelChanges.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n checkEditorSection(...args) {\n return Handsontable.editors.BaseEditor.prototype.checkEditorSection.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n close(...args) {\n return Handsontable.editors.BaseEditor.prototype.close.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n discardEditor(...args) {\n return Handsontable.editors.BaseEditor.prototype.discardEditor.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n enableFullEditMode(...args) {\n return Handsontable.editors.BaseEditor.prototype.enableFullEditMode.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n extend(...args) {\n return Handsontable.editors.BaseEditor.prototype.extend.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n finishEditing(...args) {\n return Handsontable.editors.BaseEditor.prototype.finishEditing.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n focus(...args) {\n return Handsontable.editors.BaseEditor.prototype.focus.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.getValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n init(...args) {\n return Handsontable.editors.BaseEditor.prototype.init.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isInFullEditMode(...args) {\n return Handsontable.editors.BaseEditor.prototype.isInFullEditMode.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isOpened(...args) {\n return Handsontable.editors.BaseEditor.prototype.isOpened.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isWaiting(...args) {\n return Handsontable.editors.BaseEditor.prototype.isWaiting.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n open(...args) {\n return Handsontable.editors.BaseEditor.prototype.open.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n prepare(row, col, prop, TD, originalValue, cellProperties) {\n this.$data.hotInstance = cellProperties.instance;\n this.$data.row = row;\n this.$data.col = col;\n this.$data.prop = prop;\n this.$data.TD = TD;\n this.$data.originalValue = originalValue;\n this.$data.cellProperties = cellProperties;\n\n return Handsontable.editors.BaseEditor.prototype.prepare.call(this.$data.hotCustomEditorInstance, row, col, prop, TD, originalValue, cellProperties);\n }\n\n saveValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.saveValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n setValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.setValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n addHook(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).addHook.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n removeHooksByKey(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).removeHooksByKey.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n clearHooks(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).clearHooks.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCell(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCell.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellsZIndex(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellsZIndex.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellsLayerClass(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellsLayerClass.call(this.$data.hotCustomEditorInstance, ...args);\n }\n }\n\n export default BaseEditorComponent;\n export { BaseEditorComponent };\n</script>\n"],"names":["unassignedPropSymbol","Symbol","bulkComponentContainer","HOT_DESTROYED_WARNING","preventInternalEditWatch","component","hotInstance","addHook","__internalEdit","propFactory","source","registeredHooks","Handsontable","hooks","getRegistered","propSchema","Object","assign","DefaultSettings","prop","i","length","settings","id","type","String","Math","random","toString","substring","wrapperRendererCacheSize","Number","filterPassedProps","props","filteredProps","columnSettingsProp","propName","hasOwnProperty","prepareSettings","currentSettings","assignedProps","hotSettingsInProps","additionalHotSettingsInProps","newSettings","key","simpleEqual","findVNodeByType","componentSlots","componentVNode","every","slot","index","data","attrs","getHotColumnComponents","children","filter","child","$options","name","createVueComponent","vNode","parent","ownerDocument","$el","document","propsData","createElement","body","appendChild","componentContainer","componentOptions","Ctor","$mount","objectA","objectB","JSON","stringify","g","f","e","exports","this","NEWER","OLDER","LRUMap","limit","entries","size","oldest","newest","undefined","_keymap","Map","Entry","value","prototype","_markEntryAsUsed","entry","MAX_VALUE","clear","it","iterator","itv","next","done","set","Error","get","shift","has","_typeof","obj","_typeof2","constructor","_defineProperty","defineProperty","enumerable","configurable","writable","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","Array","isArray","arr2","iter","call","from","TypeError","reflectionIsSupported","Reflect","defineMetadata","getOwnMetadataKeys","copyReflectionMetadata","to","forwardMetadata","getOwnPropertyNames","forEach","propertyKey","metaKeys","metaKey","metadata","getOwnMetadata","fakeArray","__proto__","hasProto","isPrimitive","collectDataFromConstructor","vm","Component","originalInit","_init","_this","keys","push","plainData","$internalHooks","componentFactory","options","arguments","_componentTag","proto","indexOf","descriptor","getOwnPropertyDescriptor","methods","mixins","computed","decorators","__decorators__","fn","superProto","getPrototypeOf","Super","Vue","Extended","extend","forwardStaticMembers","shouldIgnore","callee","caller","Original","extendedDescriptor","superDescriptor","registerHooks","apply"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vue-handsontable.js","sources":["../src/helpers.ts","../src/lib/lru/lru.js","../src/HotTable.vue","../../../node_modules/vue-runtime-helpers/dist/normalize-component.mjs","../src/HotColumn.vue","../../../node_modules/vue-class-component/dist/vue-class-component.esm.js","../src/BaseEditorComponent.vue"],"sourcesContent":["import Vue, { VNode } from 'vue';\nimport Handsontable from 'handsontable/base';\nimport { HotTableProps, VueProps, EditorComponent } from './types';\n\nconst unassignedPropSymbol = Symbol('unassigned');\nlet bulkComponentContainer = null;\n\n/**\n * Message for the warning thrown if the Handsontable instance has been destroyed.\n */\nexport const HOT_DESTROYED_WARNING = 'The Handsontable instance bound to this component was destroyed and cannot be' +\n ' used properly.';\n\n/**\n * Rewrite the settings object passed to the watchers to be a clean array/object prepared to use within Handsontable config.\n *\n * @param {*} observerSettings Watcher object containing the changed data.\n * @returns {Object|Array}\n */\nexport function rewriteSettings(observerSettings): any[] | object {\n const settingsType = Object.prototype.toString.call(observerSettings);\n let settings: any[] | object | null = null;\n let type: { array?: boolean, object?: boolean } = {};\n\n if (settingsType === '[object Array]') {\n settings = [];\n type.array = true;\n\n } else if (settingsType === '[object Object]') {\n settings = {};\n type.object = true;\n }\n\n if (type.array || type.object) {\n for (const p in observerSettings) {\n if (observerSettings.hasOwnProperty(p)) {\n settings[p] = observerSettings[p];\n }\n }\n\n } else {\n settings = observerSettings;\n }\n\n return settings;\n}\n\n/**\n * Private method to ensure the table is not calling `updateSettings` after editing cells.\n * @private\n */\nexport function preventInternalEditWatch(component) {\n if (component.hotInstance) {\n component.hotInstance.addHook('beforeChange', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeCreateRow', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeCreateCol', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeRemoveRow', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeRemoveCol', () => {\n component.__internalEdit = true;\n });\n }\n}\n\n/**\n * Generate an object containing all the available Handsontable properties and plugin hooks.\n *\n * @param {String} source Source for the factory (either 'HotTable' or 'HotColumn').\n * @returns {Object}\n */\nexport function propFactory(source): VueProps<HotTableProps> {\n const registeredHooks: string[] = Handsontable.hooks.getRegistered();\n\n let propSchema: VueProps<HotTableProps> = {};\n Object.assign(propSchema, Handsontable.DefaultSettings);\n\n for (let prop in propSchema) {\n propSchema[prop] = {\n default: unassignedPropSymbol\n };\n }\n\n for (let i = 0; i < registeredHooks.length; i++) {\n propSchema[registeredHooks[i]] = {\n default: unassignedPropSymbol\n };\n }\n\n propSchema.settings = {\n default: unassignedPropSymbol\n };\n\n if (source === 'HotTable') {\n propSchema.id = {\n type: String,\n default: 'hot-' + Math.random().toString(36).substring(5)\n };\n\n propSchema.wrapperRendererCacheSize = {\n type: Number,\n default: 3000\n };\n }\n\n return propSchema;\n}\n\n/**\n * Filter out all of the unassigned props, and return only the one passed to the component.\n *\n * @param {Object} props Object containing all the possible props.\n * @returns {Object} Object containing only used props.\n */\nexport function filterPassedProps(props) {\n const filteredProps: VueProps<HotTableProps> = {};\n const columnSettingsProp = props['settings'];\n\n if (columnSettingsProp !== unassignedPropSymbol) {\n for (let propName in columnSettingsProp) {\n if (columnSettingsProp.hasOwnProperty(propName) && columnSettingsProp[propName] !== unassignedPropSymbol) {\n filteredProps[propName] = columnSettingsProp[propName];\n }\n }\n }\n\n for (let propName in props) {\n if (props.hasOwnProperty(propName) && propName !== 'settings' && props[propName] !== unassignedPropSymbol) {\n filteredProps[propName] = props[propName];\n }\n }\n\n return filteredProps;\n}\n\n/**\n * Prepare the settings object to be used as the settings for Handsontable, based on the props provided to the component.\n *\n * @param {HotTableProps} props The props passed to the component.\n * @param {Handsontable.GridSettings} currentSettings The current Handsontable settings.\n * @returns {Handsontable.GridSettings} An object containing the properties, ready to be used within Handsontable.\n */\nexport function prepareSettings(props: HotTableProps, currentSettings?: Handsontable.GridSettings): Handsontable.GridSettings {\n const assignedProps: VueProps<HotTableProps> = filterPassedProps(props);\n const hotSettingsInProps: {} = props.settings ? props.settings : assignedProps;\n const additionalHotSettingsInProps: Handsontable.GridSettings = props.settings ? assignedProps : null;\n const newSettings = {};\n\n for (const key in hotSettingsInProps) {\n if (\n hotSettingsInProps.hasOwnProperty(key) &&\n hotSettingsInProps[key] !== void 0 &&\n ((currentSettings && key !== 'data') ? !simpleEqual(currentSettings[key], hotSettingsInProps[key]) : true)\n ) {\n newSettings[key] = hotSettingsInProps[key];\n }\n }\n\n for (const key in additionalHotSettingsInProps) {\n if (\n additionalHotSettingsInProps.hasOwnProperty(key) &&\n key !== 'id' &&\n key !== 'settings' &&\n key !== 'wrapperRendererCacheSize' &&\n additionalHotSettingsInProps[key] !== void 0 &&\n ((currentSettings && key !== 'data') ? !simpleEqual(currentSettings[key], additionalHotSettingsInProps[key]) : true)\n ) {\n newSettings[key] = additionalHotSettingsInProps[key];\n }\n }\n\n return newSettings;\n}\n\n/**\n * Get the VNode element with the provided type attribute from the component slots.\n *\n * @param {Array} componentSlots Array of slots from a component.\n * @param {String} type Type of the child component. Either `hot-renderer` or `hot-editor`.\n * @returns {Object|null} The VNode of the child component (or `null` when nothing's found).\n */\nexport function findVNodeByType(componentSlots: VNode[], type: string): VNode {\n let componentVNode: VNode = null;\n\n componentSlots.every((slot, index) => {\n if (slot.data && slot.data.attrs && slot.data.attrs[type] !== void 0) {\n componentVNode = slot;\n return false;\n }\n\n return true;\n });\n\n return componentVNode;\n}\n\n/**\n * Get all `hot-column` component instances from the provided children array.\n *\n * @param {Array} children Array of children from a component.\n * @returns {Array} Array of `hot-column` instances.\n */\nexport function getHotColumnComponents(children) {\n return children.filter((child) => child.$options.name === 'HotColumn');\n}\n\n/**\n * Create an instance of the Vue Component based on the provided VNode.\n *\n * @param {Object} vNode VNode element to be turned into a component instance.\n * @param {Object} parent Instance of the component to be marked as a parent of the newly created instance.\n * @param {Object} props Props to be passed to the new instance.\n * @param {Object} data Data to be passed to the new instance.\n */\nexport function createVueComponent(vNode: VNode, parent: Vue, props: object, data: object): EditorComponent {\n const ownerDocument = parent.$el ? parent.$el.ownerDocument : document;\n const settings: object = {\n propsData: props,\n parent,\n data\n };\n\n if (!bulkComponentContainer) {\n bulkComponentContainer = ownerDocument.createElement('DIV');\n bulkComponentContainer.id = 'vueHotComponents';\n\n ownerDocument.body.appendChild(bulkComponentContainer);\n }\n\n const componentContainer = ownerDocument.createElement('DIV');\n bulkComponentContainer.appendChild(componentContainer);\n\n return (new (vNode.componentOptions as any).Ctor(settings)).$mount(componentContainer);\n}\n\n/**\n * Compare two objects using `JSON.stringify`.\n * *Note: * As it's using the stringify function to compare objects, the property order in both objects is\n * important. It will return `false` for the same objects, if they're defined in a different order.\n *\n * @param {object} objectA First object to compare.\n * @param {object} objectB Second object to compare.\n * @returns {boolean} `true` if they're the same, `false` otherwise.\n */\nfunction simpleEqual(objectA, objectB) {\n return JSON.stringify(objectA) === JSON.stringify(objectB);\n}\n","/**\n * A doubly linked list-based Least Recently Used (LRU) cache. Will keep most\n * recently used items while discarding least recently used items when its limit\n * is reached.\n *\n * Licensed under MIT. Copyright (c) 2010 Rasmus Andersson <http://hunch.se/>\n * See README.md for details.\n *\n * Illustration of the design:\n *\n * entry entry entry entry\n * ______ ______ ______ ______\n * | head |.newer => | |.newer => | |.newer => | tail |\n * | A | | B | | C | | D |\n * |______| <= older.|______| <= older.|______| <= older.|______|\n *\n * removed <-- <-- <-- <-- <-- <-- <-- <-- <-- <-- <-- added\n */\n(function(g,f){\n const e = typeof exports == 'object' ? exports : typeof g == 'object' ? g : {};\n f(e);\n if (typeof define == 'function' && define.amd) { define('lru', e); }\n})(this, function(exports) {\n\n const NEWER = Symbol('newer');\n const OLDER = Symbol('older');\n\n function LRUMap(limit, entries) {\n if (typeof limit !== 'number') {\n // called as (entries)\n entries = limit;\n limit = 0;\n }\n\n this.size = 0;\n this.limit = limit;\n this.oldest = this.newest = undefined;\n this._keymap = new Map();\n\n if (entries) {\n this.assign(entries);\n if (limit < 1) {\n this.limit = this.size;\n }\n }\n }\n\n exports.LRUMap = LRUMap;\n\n function Entry(key, value) {\n this.key = key;\n this.value = value;\n this[NEWER] = undefined;\n this[OLDER] = undefined;\n }\n\n\n LRUMap.prototype._markEntryAsUsed = function(entry) {\n if (entry === this.newest) {\n // Already the most recenlty used entry, so no need to update the list\n return;\n }\n // HEAD--------------TAIL\n // <.older .newer>\n // <--- add direction --\n // A B C <D> E\n if (entry[NEWER]) {\n if (entry === this.oldest) {\n this.oldest = entry[NEWER];\n }\n entry[NEWER][OLDER] = entry[OLDER]; // C <-- E.\n }\n if (entry[OLDER]) {\n entry[OLDER][NEWER] = entry[NEWER]; // C. --> E\n }\n entry[NEWER] = undefined; // D --x\n entry[OLDER] = this.newest; // D. --> E\n if (this.newest) {\n this.newest[NEWER] = entry; // E. <-- D\n }\n this.newest = entry;\n };\n\n LRUMap.prototype.assign = function(entries) {\n let entry, limit = this.limit || Number.MAX_VALUE;\n this._keymap.clear();\n let it = entries[Symbol.iterator]();\n for (let itv = it.next(); !itv.done; itv = it.next()) {\n let e = new Entry(itv.value[0], itv.value[1]);\n this._keymap.set(e.key, e);\n if (!entry) {\n this.oldest = e;\n } else {\n entry[NEWER] = e;\n e[OLDER] = entry;\n }\n entry = e;\n if (limit-- == 0) {\n throw new Error('overflow');\n }\n }\n this.newest = entry;\n this.size = this._keymap.size;\n };\n\n LRUMap.prototype.get = function(key) {\n // First, find our cache entry\n var entry = this._keymap.get(key);\n if (!entry) return; // Not cached. Sorry.\n // As <key> was found in the cache, register it as being requested recently\n this._markEntryAsUsed(entry);\n return entry.value;\n };\n\n LRUMap.prototype.set = function(key, value) {\n var entry = this._keymap.get(key);\n\n if (entry) {\n // update existing\n entry.value = value;\n this._markEntryAsUsed(entry);\n return this;\n }\n\n // new entry\n this._keymap.set(key, (entry = new Entry(key, value)));\n\n if (this.newest) {\n // link previous tail to the new tail (entry)\n this.newest[NEWER] = entry;\n entry[OLDER] = this.newest;\n } else {\n // we're first in -- yay\n this.oldest = entry;\n }\n\n // add new entry to the end of the linked list -- it's now the freshest entry.\n this.newest = entry;\n ++this.size;\n if (this.size > this.limit) {\n // we hit the limit -- remove the head\n this.shift();\n }\n\n return this;\n };\n\n LRUMap.prototype.shift = function() {\n // todo: handle special case when limit == 1\n var entry = this.oldest;\n if (entry) {\n if (this.oldest[NEWER]) {\n // advance the list\n this.oldest = this.oldest[NEWER];\n this.oldest[OLDER] = undefined;\n } else {\n // the cache is exhausted\n this.oldest = undefined;\n this.newest = undefined;\n }\n // Remove last strong reference to <entry> and remove links from the purged\n // entry being returned:\n entry[NEWER] = entry[OLDER] = undefined;\n this._keymap.delete(entry.key);\n --this.size;\n return [entry.key, entry.value];\n }\n };\n\n// ----------------------------------------------------------------------------\n// Following code is optional and can be removed without breaking the core\n// functionality.\n LRUMap.prototype.has = function(key) {\n return this._keymap.has(key);\n };\n});\n","<template>\n <div :id=\"id\">\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\n import {\n propFactory,\n preventInternalEditWatch,\n prepareSettings,\n createVueComponent,\n findVNodeByType,\n getHotColumnComponents,\n HOT_DESTROYED_WARNING\n } from './helpers';\n import Vue, { VNode } from 'vue';\n import {\n HotTableData,\n HotTableMethods,\n HotTableProps,\n HotTableComponent,\n EditorComponent\n } from './types';\n import * as packageJson from '../package.json';\n import { LRUMap } from './lib/lru/lru';\n import Handsontable from 'handsontable/base';\n\n const HotTable: HotTableComponent<Vue, HotTableData, HotTableMethods, {}, HotTableProps> = {\n name: 'HotTable',\n props: propFactory('HotTable'),\n watch: {\n mergedHotSettings: function (value) {\n if (!this.hotInstance || value === void 0) {\n return;\n }\n\n if (value.data) {\n if (\n this.hotInstance.isColumnModificationAllowed() ||\n (\n !this.hotInstance.isColumnModificationAllowed() &&\n this.hotInstance.countSourceCols() === this.miscCache.currentSourceColumns\n )\n ) {\n // If the dataset dimensions change, update the index mappers.\n this.matchHotMappersSize();\n\n // Data is automatically synchronized by reference.\n delete value.data;\n }\n }\n\n // If there are another options changed, update the HOT settings, render the table otherwise.\n if (Object.keys(value).length) {\n this.hotInstance.updateSettings(value);\n\n } else {\n this.hotInstance.render();\n }\n\n this.miscCache.currentSourceColumns = this.hotInstance.countSourceCols();\n }\n },\n data: function () {\n const thisComponent: any = this;\n const rendererCache = new LRUMap(this.wrapperRendererCacheSize);\n\n // Make the LRU cache destroy each removed component\n rendererCache.shift = function () {\n let entry = LRUMap.prototype.shift.call(this);\n entry[1].component.$destroy();\n\n return entry;\n };\n\n return {\n __internalEdit: false,\n miscCache: {\n currentSourceColumns: null\n },\n __hotInstance: null,\n columnSettings: null,\n rendererCache: rendererCache,\n editorCache: new Map(),\n get hotInstance() {\n if (!thisComponent.__hotInstance || (thisComponent.__hotInstance && !thisComponent.__hotInstance.isDestroyed)) {\n\n // Will return the Handsontable instance or `null` if it's not yet been created.\n return thisComponent.__hotInstance;\n\n } else {\n console.warn(HOT_DESTROYED_WARNING);\n\n return null;\n }\n },\n set hotInstance(hotInstance) {\n thisComponent.__hotInstance = hotInstance;\n }\n };\n },\n computed: {\n mergedHotSettings: function (): Handsontable.GridSettings {\n return prepareSettings(this.$props, this.hotInstance ? this.hotInstance.getSettings() : void 0);\n }\n },\n methods: {\n /**\n * Initialize Handsontable.\n */\n hotInit: function (): void {\n const globalRendererVNode = this.getGlobalRendererVNode();\n const globalEditorVNode = this.getGlobalEditorVNode();\n\n const newSettings: Handsontable.GridSettings = prepareSettings(this.$props);\n\n newSettings.columns = this.columnSettings ? this.columnSettings : newSettings.columns;\n\n if (globalEditorVNode) {\n newSettings.editor = this.getEditorClass(globalEditorVNode, this);\n\n globalEditorVNode.child.$destroy();\n }\n\n if (globalRendererVNode) {\n newSettings.renderer = this.getRendererWrapper(globalRendererVNode, this);\n\n globalRendererVNode.child.$destroy();\n }\n\n this.hotInstance = new Handsontable.Core(this.$el, newSettings);\n this.hotInstance.init();\n\n preventInternalEditWatch(this);\n\n this.miscCache.currentSourceColumns = this.hotInstance.countSourceCols();\n },\n matchHotMappersSize: function(): void {\n if (!this.hotInstance) {\n return;\n }\n\n const data: Handsontable.CellValue[][] = this.hotInstance.getSourceData();\n const rowsToRemove: number[] = [];\n const columnsToRemove: number[] = [];\n const indexMapperRowCount = this.hotInstance.rowIndexMapper.getNumberOfIndexes();\n const isColumnModificationAllowed = this.hotInstance.isColumnModificationAllowed();\n let indexMapperColumnCount = 0;\n\n if (data && data.length !== indexMapperRowCount) {\n if (data.length < indexMapperRowCount) {\n for (let r = data.length; r < indexMapperRowCount; r++) {\n rowsToRemove.push(r);\n }\n }\n }\n\n if (isColumnModificationAllowed) {\n indexMapperColumnCount = this.hotInstance.columnIndexMapper.getNumberOfIndexes();\n\n if (data && data[0] && data[0]?.length !==\n indexMapperColumnCount) {\n if (data[0].length < indexMapperColumnCount) {\n for (let c = data[0].length; c < indexMapperColumnCount; c++) {\n columnsToRemove.push(c);\n }\n }\n }\n }\n\n this.hotInstance.batch(() => {\n if (rowsToRemove.length > 0) {\n this.hotInstance.rowIndexMapper.removeIndexes(rowsToRemove);\n\n } else {\n this.hotInstance.rowIndexMapper.insertIndexes(indexMapperRowCount - 1, data.length - indexMapperRowCount);\n }\n\n if (isColumnModificationAllowed && data.length !== 0) {\n if (columnsToRemove.length > 0) {\n this.hotInstance.columnIndexMapper.removeIndexes(columnsToRemove);\n\n } else {\n this.hotInstance.columnIndexMapper.insertIndexes(indexMapperColumnCount - 1, data[0].length - indexMapperColumnCount);\n }\n }\n });\n },\n getGlobalRendererVNode: function (): VNode | null {\n const hotTableSlots: VNode[] = this.$slots.default || [];\n return findVNodeByType(hotTableSlots, 'hot-renderer');\n },\n getGlobalEditorVNode: function (): VNode | null {\n const hotTableSlots: VNode[] = this.$slots.default || [];\n return findVNodeByType(hotTableSlots, 'hot-editor');\n },\n /**\n * Get settings for the columns provided in the `hot-column` components.\n */\n getColumnSettings: function (): HotTableProps[] | void {\n const hotColumns = getHotColumnComponents(this.$children);\n let usesRendererComponent = false;\n let columnSettings: HotTableProps[] = hotColumns.map((elem) => {\n if (elem.usesRendererComponent) {\n usesRendererComponent = true;\n }\n\n return {...elem.columnSettings};\n });\n\n if (usesRendererComponent &&\n (this.settings && (this.settings.autoColumnSize !== false || this.settings.autoRowSize)) &&\n (this.autoColumnSize !== false || this.autoRowSize)) {\n console.warn('Your `hot-table` configuration includes both `hot-column` and `autoRowSize`/`autoColumnSize`, which are not compatible with each other ' +\n 'in this version of `@handsontable/vue`. Disable `autoRowSize` and `autoColumnSize` to prevent row and column misalignment.')\n }\n\n return columnSettings.length ? columnSettings : void 0;\n },\n /**\n * Create the wrapper function for the provided renderer child component.\n *\n * @param {Object} vNode VNode of the renderer child component.\n * @param {Boolean} containerComponent Instance of the component, which will be treated as a parent for the newly created renderer component.\n * @returns {Function} The wrapper function used as the renderer.\n */\n getRendererWrapper: function (vNode: VNode, containerComponent: Vue): (...args) => HTMLElement {\n const $vm = this;\n\n return function (instance, TD, row, col, prop, value, cellProperties) {\n // Prevent caching and rendering of the GhostTable table cells\n if (TD && !TD.getAttribute('ghost-table')) {\n const rendererCache = $vm.rendererCache;\n const rendererArgs: object = {\n hotInstance: instance,\n TD,\n row,\n col,\n prop,\n value,\n cellProperties,\n isRenderer: true\n };\n\n if (rendererCache && !rendererCache.has(`${row}-${col}`)) {\n const mountedComponent: Vue = createVueComponent(vNode, containerComponent, vNode.componentOptions.propsData, rendererArgs);\n\n rendererCache.set(`${row}-${col}`, {\n component: mountedComponent,\n lastUsedTD: null\n });\n }\n\n const cachedEntry = rendererCache.get(`${row}-${col}`);\n const cachedComponent: Vue = cachedEntry.component;\n const cachedTD: HTMLTableCellElement = cachedEntry.lastUsedTD;\n\n Object.assign(cachedComponent.$data, rendererArgs);\n\n if (!cachedComponent.$el.parentElement || cachedTD !== TD) {\n // Clear the previous contents of a TD\n while (TD.firstChild) {\n TD.removeChild(TD.firstChild);\n }\n\n TD.appendChild(cachedComponent.$el);\n\n cachedEntry.lastUsedTD = TD;\n }\n }\n\n return TD;\n };\n },\n /**\n * Create a fresh class to be used as an editor, based on the editor component provided.\n *\n * @param {Object} vNode VNode for the editor child component.\n * @param {Boolean} containerComponent Instance of the component, which will be treated as a parent for the newly created editor component.\n * @returns {Class} The class used as an editor in Handsontable.\n */\n getEditorClass: function (vNode: VNode, containerComponent: Vue): typeof Handsontable.editors.BaseEditor {\n const componentKey: string = vNode.key ? vNode.key.toString() : null;\n const componentName: string = (vNode.componentOptions.Ctor as any).options.name;\n const componentCacheKey = componentKey ? `${componentName}:${componentKey}` : componentName;\n\n const editorCache = this.editorCache;\n let mountedComponent: EditorComponent = null;\n\n if (!editorCache.has(componentCacheKey)) {\n mountedComponent = createVueComponent(vNode, containerComponent, vNode.componentOptions.propsData, {isEditor: true});\n\n editorCache.set(componentCacheKey, mountedComponent);\n\n } else {\n mountedComponent = editorCache.get(componentCacheKey);\n }\n\n return mountedComponent.$data.hotCustomEditorClass;\n }\n },\n mounted: function () {\n this.columnSettings = this.getColumnSettings();\n\n return this.hotInit();\n },\n beforeDestroy: function () {\n if (this.hotInstance) {\n this.hotInstance.destroy();\n }\n },\n version: (packageJson as any).version\n };\n\n export default HotTable;\n export { HotTable };\n</script>\n","function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\nexport default normalizeComponent;\n//# sourceMappingURL=normalize-component.mjs.map\n","<script lang=\"ts\">\n import Vue, { VNode } from 'vue';\n import { ThisTypedComponentOptionsWithRecordProps } from 'vue/types/options';\n import {\n propFactory,\n findVNodeByType,\n filterPassedProps\n } from './helpers';\n import {\n HotTableProps,\n HotColumnMethods,\n } from './types';\n\n const HotColumn: ThisTypedComponentOptionsWithRecordProps<Vue, {}, HotColumnMethods, {}, HotTableProps> = {\n name: 'HotColumn',\n props: propFactory('HotColumn'),\n methods: {\n /**\n * Create the column settings based on the data provided to the `hot-column` component and it's child components.\n */\n createColumnSettings: function (): void {\n const hotColumnSlots: VNode[] | any[] = this.$slots.default || [];\n const rendererVNode: VNode | null = findVNodeByType(hotColumnSlots, 'hot-renderer');\n const editorVNode: VNode | null = findVNodeByType(hotColumnSlots, 'hot-editor');\n const assignedProps = filterPassedProps(this.$props);\n\n if (rendererVNode && this.usesRendererComponent === void 0) {\n this.usesRendererComponent = true;\n }\n\n this.columnSettings = {...assignedProps};\n\n if (rendererVNode !== null) {\n this.columnSettings.renderer = this.$parent.getRendererWrapper(rendererVNode, this);\n\n } else if (assignedProps.renderer) {\n this.columnSettings.renderer = assignedProps.renderer;\n }\n\n if (editorVNode !== null) {\n this.columnSettings.editor = this.$parent.getEditorClass(editorVNode, this);\n\n } else if (assignedProps.editor) {\n this.columnSettings.editor = assignedProps.editor;\n }\n }\n },\n mounted: function () {\n this.createColumnSettings();\n },\n render: function () {\n return null;\n }\n };\n\n export default HotColumn;\n export { HotColumn };\n</script>\n","/**\n * vue-class-component v7.2.6\n * (c) 2015-present Evan You\n * @license MIT\n */\nimport Vue from 'vue';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\n// The rational behind the verbose Reflect-feature check below is the fact that there are polyfills\n// which add an implementation for Reflect.defineMetadata but not for Reflect.getOwnMetadataKeys.\n// Without this check consumers will encounter hard to track down runtime errors.\nfunction reflectionIsSupported() {\n return typeof Reflect !== 'undefined' && Reflect.defineMetadata && Reflect.getOwnMetadataKeys;\n}\nfunction copyReflectionMetadata(to, from) {\n forwardMetadata(to, from);\n Object.getOwnPropertyNames(from.prototype).forEach(function (key) {\n forwardMetadata(to.prototype, from.prototype, key);\n });\n Object.getOwnPropertyNames(from).forEach(function (key) {\n forwardMetadata(to, from, key);\n });\n}\n\nfunction forwardMetadata(to, from, propertyKey) {\n var metaKeys = propertyKey ? Reflect.getOwnMetadataKeys(from, propertyKey) : Reflect.getOwnMetadataKeys(from);\n metaKeys.forEach(function (metaKey) {\n var metadata = propertyKey ? Reflect.getOwnMetadata(metaKey, from, propertyKey) : Reflect.getOwnMetadata(metaKey, from);\n\n if (propertyKey) {\n Reflect.defineMetadata(metaKey, metadata, to, propertyKey);\n } else {\n Reflect.defineMetadata(metaKey, metadata, to);\n }\n });\n}\n\nvar fakeArray = {\n __proto__: []\n};\nvar hasProto = fakeArray instanceof Array;\nfunction createDecorator(factory) {\n return function (target, key, index) {\n var Ctor = typeof target === 'function' ? target : target.constructor;\n\n if (!Ctor.__decorators__) {\n Ctor.__decorators__ = [];\n }\n\n if (typeof index !== 'number') {\n index = undefined;\n }\n\n Ctor.__decorators__.push(function (options) {\n return factory(options, key, index);\n });\n };\n}\nfunction mixins() {\n for (var _len = arguments.length, Ctors = new Array(_len), _key = 0; _key < _len; _key++) {\n Ctors[_key] = arguments[_key];\n }\n\n return Vue.extend({\n mixins: Ctors\n });\n}\nfunction isPrimitive(value) {\n var type = _typeof(value);\n\n return value == null || type !== 'object' && type !== 'function';\n}\nfunction warn(message) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-class-component] ' + message);\n }\n}\n\nfunction collectDataFromConstructor(vm, Component) {\n // override _init to prevent to init as Vue instance\n var originalInit = Component.prototype._init;\n\n Component.prototype._init = function () {\n var _this = this;\n\n // proxy to actual vm\n var keys = Object.getOwnPropertyNames(vm); // 2.2.0 compat (props are no longer exposed as self properties)\n\n if (vm.$options.props) {\n for (var key in vm.$options.props) {\n if (!vm.hasOwnProperty(key)) {\n keys.push(key);\n }\n }\n }\n\n keys.forEach(function (key) {\n Object.defineProperty(_this, key, {\n get: function get() {\n return vm[key];\n },\n set: function set(value) {\n vm[key] = value;\n },\n configurable: true\n });\n });\n }; // should be acquired class property values\n\n\n var data = new Component(); // restore original _init to avoid memory leak (#209)\n\n Component.prototype._init = originalInit; // create plain data object\n\n var plainData = {};\n Object.keys(data).forEach(function (key) {\n if (data[key] !== undefined) {\n plainData[key] = data[key];\n }\n });\n\n if (process.env.NODE_ENV !== 'production') {\n if (!(Component.prototype instanceof Vue) && Object.keys(plainData).length > 0) {\n warn('Component class must inherit Vue or its descendant class ' + 'when class property is used.');\n }\n }\n\n return plainData;\n}\n\nvar $internalHooks = ['data', 'beforeCreate', 'created', 'beforeMount', 'mounted', 'beforeDestroy', 'destroyed', 'beforeUpdate', 'updated', 'activated', 'deactivated', 'render', 'errorCaptured', 'serverPrefetch' // 2.6\n];\nfunction componentFactory(Component) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n options.name = options.name || Component._componentTag || Component.name; // prototype props.\n\n var proto = Component.prototype;\n Object.getOwnPropertyNames(proto).forEach(function (key) {\n if (key === 'constructor') {\n return;\n } // hooks\n\n\n if ($internalHooks.indexOf(key) > -1) {\n options[key] = proto[key];\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(proto, key);\n\n if (descriptor.value !== void 0) {\n // methods\n if (typeof descriptor.value === 'function') {\n (options.methods || (options.methods = {}))[key] = descriptor.value;\n } else {\n // typescript decorated data\n (options.mixins || (options.mixins = [])).push({\n data: function data() {\n return _defineProperty({}, key, descriptor.value);\n }\n });\n }\n } else if (descriptor.get || descriptor.set) {\n // computed properties\n (options.computed || (options.computed = {}))[key] = {\n get: descriptor.get,\n set: descriptor.set\n };\n }\n });\n (options.mixins || (options.mixins = [])).push({\n data: function data() {\n return collectDataFromConstructor(this, Component);\n }\n }); // decorate options\n\n var decorators = Component.__decorators__;\n\n if (decorators) {\n decorators.forEach(function (fn) {\n return fn(options);\n });\n delete Component.__decorators__;\n } // find super\n\n\n var superProto = Object.getPrototypeOf(Component.prototype);\n var Super = superProto instanceof Vue ? superProto.constructor : Vue;\n var Extended = Super.extend(options);\n forwardStaticMembers(Extended, Component, Super);\n\n if (reflectionIsSupported()) {\n copyReflectionMetadata(Extended, Component);\n }\n\n return Extended;\n}\nvar reservedPropertyNames = [// Unique id\n'cid', // Super Vue constructor\n'super', // Component options that will be used by the component\n'options', 'superOptions', 'extendOptions', 'sealedOptions', // Private assets\n'component', 'directive', 'filter'];\nvar shouldIgnore = {\n prototype: true,\n arguments: true,\n callee: true,\n caller: true\n};\n\nfunction forwardStaticMembers(Extended, Original, Super) {\n // We have to use getOwnPropertyNames since Babel registers methods as non-enumerable\n Object.getOwnPropertyNames(Original).forEach(function (key) {\n // Skip the properties that should not be overwritten\n if (shouldIgnore[key]) {\n return;\n } // Some browsers does not allow reconfigure built-in properties\n\n\n var extendedDescriptor = Object.getOwnPropertyDescriptor(Extended, key);\n\n if (extendedDescriptor && !extendedDescriptor.configurable) {\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(Original, key); // If the user agent does not support `__proto__` or its family (IE <= 10),\n // the sub class properties may be inherited properties from the super class in TypeScript.\n // We need to exclude such properties to prevent to overwrite\n // the component options object which stored on the extended constructor (See #192).\n // If the value is a referenced value (object or function),\n // we can check equality of them and exclude it if they have the same reference.\n // If it is a primitive value, it will be forwarded for safety.\n\n if (!hasProto) {\n // Only `cid` is explicitly exluded from property forwarding\n // because we cannot detect whether it is a inherited property or not\n // on the no `__proto__` environment even though the property is reserved.\n if (key === 'cid') {\n return;\n }\n\n var superDescriptor = Object.getOwnPropertyDescriptor(Super, key);\n\n if (!isPrimitive(descriptor.value) && superDescriptor && superDescriptor.value === descriptor.value) {\n return;\n }\n } // Warn if the users manually declare reserved properties\n\n\n if (process.env.NODE_ENV !== 'production' && reservedPropertyNames.indexOf(key) >= 0) {\n warn(\"Static property name '\".concat(key, \"' declared on class '\").concat(Original.name, \"' \") + 'conflicts with reserved property name of Vue internal. ' + 'It may cause unexpected behavior of the component. Consider renaming the property.');\n }\n\n Object.defineProperty(Extended, key, descriptor);\n });\n}\n\nfunction Component(options) {\n if (typeof options === 'function') {\n return componentFactory(options);\n }\n\n return function (Component) {\n return componentFactory(Component, options);\n };\n}\n\nComponent.registerHooks = function registerHooks(keys) {\n $internalHooks.push.apply($internalHooks, _toConsumableArray(keys));\n};\n\nexport default Component;\nexport { createDecorator, mixins };\n","<script lang=\"ts\">\n import Vue from 'vue';\n import Handsontable from 'handsontable/base';\n import Component from 'vue-class-component';\n\n @Component({})\n class BaseEditorComponent extends Vue implements Handsontable.editors.BaseEditor {\n name = 'BaseEditorComponent';\n instance = null;\n row = null;\n col = null;\n prop = null;\n TD = null;\n originalValue = null;\n cellProperties = null;\n state = null;\n hot = null;\n\n mounted() {\n const _this = this;\n\n this.$data.hotCustomEditorClass = function () {\n const customEditorClass = class CustomEditor extends Handsontable.editors.BaseEditor implements Handsontable.editors.BaseEditor {\n constructor(hotInstance) {\n super(hotInstance);\n\n _this.$data.hotCustomEditorInstance = this;\n }\n\n focus() {\n }\n\n getValue() {\n }\n\n setValue() {\n }\n\n open() {\n }\n\n close() {\n }\n } as any;\n\n // Fill with the rest of the BaseEditorComponent methods\n Object.getOwnPropertyNames(Handsontable.editors.BaseEditor.prototype).forEach(propName => {\n if (propName === 'constructor') {\n return;\n }\n\n customEditorClass.prototype[propName] = function (...args) {\n return _this[propName].call(this, ...args);\n }\n });\n\n return customEditorClass;\n }();\n }\n\n // BaseEditorComponent methods:\n private _fireCallbacks(...args) {\n (Handsontable.editors.BaseEditor.prototype as any)._fireCallbacks.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n beginEditing(...args) {\n return Handsontable.editors.BaseEditor.prototype.beginEditing.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n cancelChanges(...args) {\n return Handsontable.editors.BaseEditor.prototype.cancelChanges.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n checkEditorSection(...args) {\n return Handsontable.editors.BaseEditor.prototype.checkEditorSection.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n close(...args) {\n return Handsontable.editors.BaseEditor.prototype.close.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n discardEditor(...args) {\n return Handsontable.editors.BaseEditor.prototype.discardEditor.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n enableFullEditMode(...args) {\n return Handsontable.editors.BaseEditor.prototype.enableFullEditMode.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n extend(...args) {\n return Handsontable.editors.BaseEditor.prototype.extend.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n finishEditing(...args) {\n return Handsontable.editors.BaseEditor.prototype.finishEditing.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n focus(...args) {\n return Handsontable.editors.BaseEditor.prototype.focus.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.getValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n init(...args) {\n return Handsontable.editors.BaseEditor.prototype.init.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isInFullEditMode(...args) {\n return Handsontable.editors.BaseEditor.prototype.isInFullEditMode.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isOpened(...args) {\n return Handsontable.editors.BaseEditor.prototype.isOpened.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isWaiting(...args) {\n return Handsontable.editors.BaseEditor.prototype.isWaiting.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n open(...args) {\n return Handsontable.editors.BaseEditor.prototype.open.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n prepare(row, col, prop, TD, originalValue, cellProperties) {\n this.$data.hotInstance = cellProperties.instance;\n this.$data.row = row;\n this.$data.col = col;\n this.$data.prop = prop;\n this.$data.TD = TD;\n this.$data.originalValue = originalValue;\n this.$data.cellProperties = cellProperties;\n\n return Handsontable.editors.BaseEditor.prototype.prepare.call(this.$data.hotCustomEditorInstance, row, col, prop, TD, originalValue, cellProperties);\n }\n\n saveValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.saveValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n setValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.setValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n addHook(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).addHook.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n removeHooksByKey(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).removeHooksByKey.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n clearHooks(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).clearHooks.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCell(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCell.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellRect(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellRect.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellsZIndex(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellsZIndex.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellsLayerClass(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellsLayerClass.call(this.$data.hotCustomEditorInstance, ...args);\n }\n }\n\n export default BaseEditorComponent;\n export { BaseEditorComponent };\n</script>\n"],"names":["unassignedPropSymbol","Symbol","bulkComponentContainer","HOT_DESTROYED_WARNING","preventInternalEditWatch","component","hotInstance","addHook","__internalEdit","propFactory","source","registeredHooks","Handsontable","hooks","getRegistered","propSchema","Object","assign","DefaultSettings","prop","i","length","settings","id","type","String","Math","random","toString","substring","wrapperRendererCacheSize","Number","filterPassedProps","props","filteredProps","columnSettingsProp","propName","hasOwnProperty","prepareSettings","currentSettings","assignedProps","hotSettingsInProps","additionalHotSettingsInProps","newSettings","key","simpleEqual","findVNodeByType","componentSlots","componentVNode","every","slot","index","data","attrs","getHotColumnComponents","children","filter","child","$options","name","createVueComponent","vNode","parent","ownerDocument","$el","document","propsData","createElement","body","appendChild","componentContainer","componentOptions","Ctor","$mount","objectA","objectB","JSON","stringify","g","f","e","exports","this","NEWER","OLDER","LRUMap","limit","entries","size","oldest","newest","undefined","_keymap","Map","Entry","value","prototype","_markEntryAsUsed","entry","MAX_VALUE","clear","it","iterator","itv","next","done","set","Error","get","shift","has","HotTable","watch","mergedHotSettings","isColumnModificationAllowed","countSourceCols","miscCache","currentSourceColumns","matchHotMappersSize","keys","updateSettings","render","thisComponent","rendererCache","call","$destroy","__hotInstance","columnSettings","editorCache","isDestroyed","console","warn","computed","$props","getSettings","methods","hotInit","globalRendererVNode","getGlobalRendererVNode","globalEditorVNode","getGlobalEditorVNode","columns","editor","getEditorClass","renderer","getRendererWrapper","Core","init","getSourceData","rowsToRemove","columnsToRemove","indexMapperRowCount","rowIndexMapper","getNumberOfIndexes","indexMapperColumnCount","r","push","columnIndexMapper","c","batch","removeIndexes","insertIndexes","hotTableSlots","$slots","getColumnSettings","hotColumns","$children","usesRendererComponent","map","elem","autoColumnSize","autoRowSize","containerComponent","$vm","instance","TD","row","col","cellProperties","getAttribute","rendererArgs","isRenderer","mountedComponent","lastUsedTD","cachedEntry","cachedComponent","cachedTD","$data","parentElement","firstChild","removeChild","componentKey","componentName","options","componentCacheKey","isEditor","hotCustomEditorClass","mounted","beforeDestroy","destroy","version","packageJson","__vue_script__","script","HotColumn","createColumnSettings","hotColumnSlots","rendererVNode","editorVNode","$parent","_typeof","obj","_typeof2","constructor","_defineProperty","defineProperty","enumerable","configurable","writable","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","Array","isArray","arr2","iter","from","TypeError","reflectionIsSupported","Reflect","defineMetadata","getOwnMetadataKeys","copyReflectionMetadata","to","forwardMetadata","getOwnPropertyNames","forEach","propertyKey","metaKeys","metaKey","metadata","getOwnMetadata","fakeArray","__proto__","hasProto","isPrimitive","collectDataFromConstructor","vm","Component","originalInit","_init","_this","plainData","$internalHooks","componentFactory","arguments","_componentTag","proto","indexOf","descriptor","getOwnPropertyDescriptor","mixins","decorators","__decorators__","fn","superProto","getPrototypeOf","Super","Vue","Extended","extend","forwardStaticMembers","shouldIgnore","callee","caller","Original","extendedDescriptor","superDescriptor","registerHooks","apply","BaseEditorComponent","originalValue","state","hot","customEditorClass","hotCustomEditorInstance","editors","BaseEditor","args","_fireCallbacks","beginEditing","cancelChanges","checkEditorSection","close","discardEditor","enableFullEditMode","finishEditing","focus","getValue","isInFullEditMode","isOpened","isWaiting","open","prepare","saveValue","setValue","removeHooksByKey","clearHooks","getEditedCell","getEditedCellRect","getEditedCellsZIndex","getEditedCellsLayerClass","__decorate"],"mappings":"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"}
|
|
@@ -19,15 +19,15 @@
|
|
|
19
19
|
* In any case, you must not make any such use of this software as to develop software which may be
|
|
20
20
|
* considered competitive with this software.
|
|
21
21
|
*
|
|
22
|
-
* UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN
|
|
22
|
+
* UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN "AS IS"
|
|
23
23
|
* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO
|
|
24
24
|
* LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,
|
|
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:
|
|
28
|
+
* Version: 12.1.0 (built at Tue Jun 28 2022 12:10:01 GMT+0200 (Central European Summer Time))
|
|
29
29
|
*/
|
|
30
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("handsontable/base"),require("vue")):"function"==typeof define&&define.amd?define(["exports","handsontable/base","vue"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self).Handsontable=t.Handsontable||{},t.Handsontable.vue={}),t.Handsontable,t.Vue)}(this,(function(t,e,n){"use strict";function o(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var r=o(e),a=o(n);function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function s(t){for(var e=1;arguments.length>e;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?i(Object(n),!0).forEach((function(e){f(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function c(t){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},c(t)}function u(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function l(t,e){for(var n=0;e.length>n;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function d(t,e,n){return e&&l(t.prototype,e),n&&l(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function f(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function p(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&y(t,e)}function h(t){return h=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},h(t)}function y(t,e){return y=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},y(t,e)}function v(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function m(t,e){if(e&&("object"==typeof e||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return v(t)}function g(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,o=h(t);if(e){var r=h(this).constructor;n=Reflect.construct(o,arguments,r)}else n=o.apply(this,arguments);return m(this,n)}}var b=Symbol("unassigned"),E=null;function C(t){var e=r.default.hooks.getRegistered(),n={};for(var o in Object.assign(n,r.default.DefaultSettings),n)n[o]={default:b};for(var a=0;e.length>a;a++)n[e[a]]={default:b};return n.settings={default:b},"HotTable"===t&&(n.id={type:String,default:"hot-"+Math.random().toString(36).substring(5)},n.wrapperRendererCacheSize={type:Number,default:3e3}),n}function w(t){var e={},n=t.settings;if(n!==b)for(var o in n)n.hasOwnProperty(o)&&n[o]!==b&&(e[o]=n[o]);for(var r in t)t.hasOwnProperty(r)&&"settings"!==r&&t[r]!==b&&(e[r]=t[r]);return e}function O(t,e){var n=w(t),o=t.settings?t.settings:n,r=t.settings?n:null,a={};for(var i in o)!o.hasOwnProperty(i)||void 0===o[i]||e&&"data"!==i&&k(e[i],o[i])||(a[i]=o[i]);for(var s in r)!r.hasOwnProperty(s)||"id"===s||"settings"===s||"wrapperRendererCacheSize"===s||void 0===r[s]||e&&"data"!==s&&k(e[s],r[s])||(a[s]=r[s]);return a}function I(t,e){var n=null;return t.every((function(t,o){return!t.data||!t.data.attrs||void 0===t.data.attrs[e]||(n=t,!1)})),n}function _(t,e,n,o){var r=e.$el?e.$el.ownerDocument:document,a={propsData:n,parent:e,data:o};E||((E=r.createElement("DIV")).id="vueHotComponents",r.body.appendChild(E));var i=r.createElement("DIV");return E.appendChild(i),new t.componentOptions.Ctor(a).$mount(i)}function k(t,e){return JSON.stringify(t)===JSON.stringify(e)}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var S=function(t,e){return t(e={exports:{}},e.exports),e.exports}((function(t,e){!function(t){var e=Symbol("newer"),n=Symbol("older");function o(t,e){"number"!=typeof t&&(e=t,t=0),this.size=0,this.limit=t,this.oldest=this.newest=void 0,this._keymap=new Map,e&&(this.assign(e),1>t&&(this.limit=this.size))}function r(t,o){this.key=t,this.value=o,this[e]=void 0,this[n]=void 0}t.LRUMap=o,o.prototype._markEntryAsUsed=function(t){t!==this.newest&&(t[e]&&(t===this.oldest&&(this.oldest=t[e]),t[e][n]=t[n]),t[n]&&(t[n][e]=t[e]),t[e]=void 0,t[n]=this.newest,this.newest&&(this.newest[e]=t),this.newest=t)},o.prototype.assign=function(t){var o,a=this.limit||Number.MAX_VALUE;this._keymap.clear();for(var i=t[Symbol.iterator](),s=i.next();!s.done;s=i.next()){var c=new r(s.value[0],s.value[1]);if(this._keymap.set(c.key,c),o?(o[e]=c,c[n]=o):this.oldest=c,o=c,0==a--)throw Error("overflow")}this.newest=o,this.size=this._keymap.size},o.prototype.get=function(t){var e=this._keymap.get(t);if(e)return this._markEntryAsUsed(e),e.value},o.prototype.set=function(t,o){var a=this._keymap.get(t);return a?(a.value=o,this._markEntryAsUsed(a),this):(this._keymap.set(t,a=new r(t,o)),this.newest?(this.newest[e]=a,a[n]=this.newest):this.oldest=a,this.newest=a,++this.size,this.size>this.limit&&this.shift(),this)},o.prototype.shift=function(){var t=this.oldest;if(t)return this.oldest[e]?(this.oldest=this.oldest[e],this.oldest[n]=void 0):(this.oldest=void 0,this.newest=void 0),t[e]=t[n]=void 0,this._keymap.delete(t.key),--this.size,[t.key,t.value]},o.prototype.has=function(t){return this._keymap.has(t)}}(e)})),$=S.LRUMap;function j(t,e,n,o,r,a,i,s,c,u){"boolean"!=typeof i&&(c=s,s=i,i=!1);const l="function"==typeof n?n.options:n;let d;if(t&&t.render&&(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,r&&(l.functional=!0)),o&&(l._scopeId=o),a?(d=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,c(t)),t&&t._registeredComponents&&t._registeredComponents.add(a)},l._ssrRegister=d):e&&(d=i?function(t){e.call(this,u(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),d)if(l.functional){const t=l.render;l.render=function(e,n){return d.call(n),t(e,n)}}else{const t=l.beforeCreate;l.beforeCreate=t?[].concat(t,d):[d]}return n}var R=j({render:function(){var t=this;return(t._self._c||t.$createElement)("div",{attrs:{id:t.id}},[t._t("default")],2)},staticRenderFns:[]},undefined,{name:"HotTable",props:C("HotTable"),watch:{mergedHotSettings:function(t){this.hotInstance&&void 0!==t&&(t.data&&(this.hotInstance.isColumnModificationAllowed()||!this.hotInstance.isColumnModificationAllowed()&&this.hotInstance.countSourceCols()===this.miscCache.currentSourceColumns)&&(this.matchHotMappersSize(),delete t.data),Object.keys(t).length?this.hotInstance.updateSettings(t):this.hotInstance.render(),this.miscCache.currentSourceColumns=this.hotInstance.countSourceCols())}},data:function(){var t=this,e=new $(this.wrapperRendererCacheSize);return e.shift=function(){var t=$.prototype.shift.call(this);return t[1].component.$destroy(),t},{__internalEdit:!1,miscCache:{currentSourceColumns:null},__hotInstance:null,columnSettings:null,rendererCache:e,editorCache:new Map,get hotInstance(){return!t.__hotInstance||t.__hotInstance&&!t.__hotInstance.isDestroyed?t.__hotInstance:(console.warn("The Handsontable instance bound to this component was destroyed and cannot be used properly."),null)},set hotInstance(e){t.__hotInstance=e}}},computed:{mergedHotSettings:function(){return O(this.$props,this.hotInstance?this.hotInstance.getSettings():void 0)}},methods:{hotInit:function(){var t,e=this.getGlobalRendererVNode(),n=this.getGlobalEditorVNode(),o=O(this.$props);o.columns=this.columnSettings?this.columnSettings:o.columns,n&&(o.editor=this.getEditorClass(n,this),n.child.$destroy()),e&&(o.renderer=this.getRendererWrapper(e,this),e.child.$destroy()),this.hotInstance=new r.default.Core(this.$el,o),this.hotInstance.init(),(t=this).hotInstance&&(t.hotInstance.addHook("beforeChange",(function(){t.__internalEdit=!0})),t.hotInstance.addHook("beforeCreateRow",(function(){t.__internalEdit=!0})),t.hotInstance.addHook("beforeCreateCol",(function(){t.__internalEdit=!0})),t.hotInstance.addHook("beforeRemoveRow",(function(){t.__internalEdit=!0})),t.hotInstance.addHook("beforeRemoveCol",(function(){t.__internalEdit=!0}))),this.miscCache.currentSourceColumns=this.hotInstance.countSourceCols()},matchHotMappersSize:function(){var t=this;if(this.hotInstance){var e,n=this.hotInstance.getSourceData(),o=[],r=[],a=this.hotInstance.rowIndexMapper.getNumberOfIndexes(),i=this.hotInstance.isColumnModificationAllowed(),s=0;if(n&&n.length!==a&&a>n.length)for(var c=n.length;a>c;c++)o.push(c);if(i)if(s=this.hotInstance.columnIndexMapper.getNumberOfIndexes(),n&&n[0]&&(null===(e=n[0])||void 0===e?void 0:e.length)!==s&&s>n[0].length)for(var u=n[0].length;s>u;u++)r.push(u);this.hotInstance.batch((function(){o.length>0?t.hotInstance.rowIndexMapper.removeIndexes(o):t.hotInstance.rowIndexMapper.insertIndexes(a-1,n.length-a),i&&0!==n.length&&(r.length>0?t.hotInstance.columnIndexMapper.removeIndexes(r):t.hotInstance.columnIndexMapper.insertIndexes(s-1,n[0].length-s))}))}},getGlobalRendererVNode:function(){return I(this.$slots.default||[],"hot-renderer")},getGlobalEditorVNode:function(){return I(this.$slots.default||[],"hot-editor")},getColumnSettings:function(){var t=this.$children.filter((function(t){return"HotColumn"===t.$options.name})),e=!1,n=t.map((function(t){return t.usesRendererComponent&&(e=!0),s({},t.columnSettings)}));return e&&this.settings&&(!1!==this.settings.autoColumnSize||this.settings.autoRowSize)&&(!1!==this.autoColumnSize||this.autoRowSize)&&console.warn("Your `hot-table` configuration includes both `hot-column` and `autoRowSize`/`autoColumnSize`, which are not compatible with each other in this version of `@handsontable/vue`. Disable `autoRowSize` and `autoColumnSize` to prevent row and column misalignment."),n.length?n:void 0},getRendererWrapper:function(t,e){var n=this;return function(o,r,a,i,s,c,u){if(r&&!r.getAttribute("ghost-table")){var l=n.rendererCache,d={hotInstance:o,TD:r,row:a,col:i,prop:s,value:c,cellProperties:u,isRenderer:!0};if(l&&!l.has("".concat(a,"-").concat(i))){var f=_(t,e,t.componentOptions.propsData,d);l.set("".concat(a,"-").concat(i),{component:f,lastUsedTD:null})}var p=l.get("".concat(a,"-").concat(i)),h=p.component,y=p.lastUsedTD;if(Object.assign(h.$data,d),!h.$el.parentElement||y!==r){for(;r.firstChild;)r.removeChild(r.firstChild);r.appendChild(h.$el),p.lastUsedTD=r}}return r}},getEditorClass:function(t,e){var n=t.key?""+t.key:null,o=t.componentOptions.Ctor.options.name,r=n?"".concat(o,":").concat(n):o,a=this.editorCache,i=null;return a.has(r)?i=a.get(r):(i=_(t,e,t.componentOptions.propsData,{isEditor:!0}),a.set(r,i)),i.$data.hotCustomEditorClass}},mounted:function(){return this.columnSettings=this.getColumnSettings(),this.hotInit()},beforeDestroy:function(){this.hotInstance&&this.hotInstance.destroy()},version:"11.1.0"},undefined,false,undefined,!1,void 0,void 0,void 0),P=j({},undefined,{name:"HotColumn",props:C("HotColumn"),methods:{createColumnSettings:function(){var t=this.$slots.default||[],e=I(t,"hot-renderer"),n=I(t,"hot-editor"),o=w(this.$props);e&&void 0===this.usesRendererComponent&&(this.usesRendererComponent=!0),this.columnSettings=s({},o),null!==e?this.columnSettings.renderer=this.$parent.getRendererWrapper(e,this):o.renderer&&(this.columnSettings.renderer=o.renderer),null!==n?this.columnSettings.editor=this.$parent.getEditorClass(n,this):o.editor&&(this.columnSettings.editor=o.editor)}},mounted:function(){this.createColumnSettings()},render:function(){return null}},undefined,undefined,undefined,!1,void 0,void 0,void 0);function A(t){return A="function"==typeof Symbol&&"symbol"===c(Symbol.iterator)?function(t){return c(t)}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":c(t)},A(t)}function x(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function B(t){return function(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);t.length>e;e++)n[e]=t[e];return n}}(t)||function(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function M(){return"undefined"!=typeof Reflect&&Reflect.defineMetadata&&Reflect.getOwnMetadataKeys}function H(t,e){D(t,e),Object.getOwnPropertyNames(e.prototype).forEach((function(n){D(t.prototype,e.prototype,n)})),Object.getOwnPropertyNames(e).forEach((function(n){D(t,e,n)}))}function D(t,e,n){(n?Reflect.getOwnMetadataKeys(e,n):Reflect.getOwnMetadataKeys(e)).forEach((function(o){var r=n?Reflect.getOwnMetadata(o,e,n):Reflect.getOwnMetadata(o,e);n?Reflect.defineMetadata(o,r,t,n):Reflect.defineMetadata(o,r,t)}))}var T={__proto__:[]}instanceof Array;function z(t,e){var n=e.prototype._init;e.prototype._init=function(){var e=this,n=Object.getOwnPropertyNames(t);if(t.$options.props)for(var o in t.$options.props)t.hasOwnProperty(o)||n.push(o);n.forEach((function(n){Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){t[n]=e},configurable:!0})}))};var o=new e;e.prototype._init=n;var r={};return Object.keys(o).forEach((function(t){void 0!==o[t]&&(r[t]=o[t])})),r}var V=["data","beforeCreate","created","beforeMount","mounted","beforeDestroy","destroyed","beforeUpdate","updated","activated","deactivated","render","errorCaptured","serverPrefetch"];function N(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.name=e.name||t._componentTag||t.name;var n=t.prototype;Object.getOwnPropertyNames(n).forEach((function(t){if("constructor"!==t)if(-1<V.indexOf(t))e[t]=n[t];else{var o=Object.getOwnPropertyDescriptor(n,t);void 0!==o.value?"function"==typeof o.value?(e.methods||(e.methods={}))[t]=o.value:(e.mixins||(e.mixins=[])).push({data:function(){return x({},t,o.value)}}):(o.get||o.set)&&((e.computed||(e.computed={}))[t]={get:o.get,set:o.set})}})),(e.mixins||(e.mixins=[])).push({data:function(){return z(this,t)}});var o=t.__decorators__;o&&(o.forEach((function(t){return t(e)})),delete t.__decorators__);var r=Object.getPrototypeOf(t.prototype),i=r instanceof a.default?r.constructor:a.default,s=i.extend(e);return F(s,t,i),M()&&H(s,t),s}var U={prototype:!0,arguments:!0,callee:!0,caller:!0};function F(t,e,n){Object.getOwnPropertyNames(e).forEach((function(o){if(!U[o]){var r=Object.getOwnPropertyDescriptor(t,o);if(!r||r.configurable){var a,i,s=Object.getOwnPropertyDescriptor(e,o);if(!T){if("cid"===o)return;var c=Object.getOwnPropertyDescriptor(n,o);if(i=A(a=s.value),null!=a&&("object"===i||"function"===i)&&c&&c.value===s.value)return}Object.defineProperty(t,o,s)}}}))}function K(t){return"function"==typeof t?N(t):function(e){return N(e,t)}}K.registerHooks=function(t){V.push.apply(V,B(t))};var L=function(t){p(n,t);var e=g(n);function n(){var t;return u(this,n),(t=e.apply(this,arguments)).name="BaseEditorComponent",t.instance=null,t.row=null,t.col=null,t.prop=null,t.TD=null,t.originalValue=null,t.cellProperties=null,t.state=null,t.hot=null,t}return d(n,[{key:"mounted",value:function(){var t,e=this;this.$data.hotCustomEditorClass=(t=function(t){p(o,t);var n=g(o);function o(t){var r;return u(this,o),r=n.call(this,t),e.$data.hotCustomEditorInstance=v(r),r}return d(o,[{key:"focus",value:function(){}},{key:"getValue",value:function(){}},{key:"setValue",value:function(){}},{key:"open",value:function(){}},{key:"close",value:function(){}}]),o}(r.default.editors.BaseEditor),Object.getOwnPropertyNames(r.default.editors.BaseEditor.prototype).forEach((function(n){"constructor"!==n&&(t.prototype[n]=function(){for(var t,o=arguments.length,r=Array(o),a=0;o>a;a++)r[a]=arguments[a];return(t=e[n]).call.apply(t,[this].concat(r))})})),t)}},{key:"_fireCallbacks",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];(t=r.default.editors.BaseEditor.prototype._fireCallbacks).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"beginEditing",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.beginEditing).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"cancelChanges",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.cancelChanges).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"checkEditorSection",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.checkEditorSection).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"close",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.close).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"discardEditor",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.discardEditor).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"enableFullEditMode",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.enableFullEditMode).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"extend",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.extend).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"finishEditing",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.finishEditing).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"focus",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.focus).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getValue",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getValue).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"init",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.init).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"isInFullEditMode",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.isInFullEditMode).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"isOpened",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.isOpened).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"isWaiting",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.isWaiting).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"open",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.open).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"prepare",value:function(t,e,n,o,a,i){return this.$data.hotInstance=i.instance,this.$data.row=t,this.$data.col=e,this.$data.prop=n,this.$data.TD=o,this.$data.originalValue=a,this.$data.cellProperties=i,r.default.editors.BaseEditor.prototype.prepare.call(this.$data.hotCustomEditorInstance,t,e,n,o,a,i)}},{key:"saveValue",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.saveValue).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"setValue",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.setValue).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"addHook",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.addHook).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"removeHooksByKey",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.removeHooksByKey).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"clearHooks",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.clearHooks).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getEditedCell",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getEditedCell).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getEditedCellsZIndex",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getEditedCellsZIndex).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getEditedCellsLayerClass",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getEditedCellsLayerClass).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}}]),n}(a.default);L=
|
|
30
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("handsontable/base"),require("vue")):"function"==typeof define&&define.amd?define(["exports","handsontable/base","vue"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self).Handsontable=t.Handsontable||{},t.Handsontable.vue={}),t.Handsontable,t.Vue)}(this,(function(t,e,n){"use strict";function o(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var r=o(e),a=o(n);function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function s(t){for(var e=1;arguments.length>e;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?i(Object(n),!0).forEach((function(e){f(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function c(t){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},c(t)}function l(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function u(t,e){for(var n=0;e.length>n;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function d(t,e,n){return e&&u(t.prototype,e),n&&u(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function f(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function p(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&y(t,e)}function h(t){return h=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},h(t)}function y(t,e){return y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},y(t,e)}function v(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function m(t,e){if(e&&("object"==typeof e||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return v(t)}function g(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,o=h(t);if(e){var r=h(this).constructor;n=Reflect.construct(o,arguments,r)}else n=o.apply(this,arguments);return m(this,n)}}var b=Symbol("unassigned"),E=null;function C(t){var e=r.default.hooks.getRegistered(),n={};for(var o in Object.assign(n,r.default.DefaultSettings),n)n[o]={default:b};for(var a=0;e.length>a;a++)n[e[a]]={default:b};return n.settings={default:b},"HotTable"===t&&(n.id={type:String,default:"hot-"+Math.random().toString(36).substring(5)},n.wrapperRendererCacheSize={type:Number,default:3e3}),n}function w(t){var e={},n=t.settings;if(n!==b)for(var o in n)n.hasOwnProperty(o)&&n[o]!==b&&(e[o]=n[o]);for(var r in t)t.hasOwnProperty(r)&&"settings"!==r&&t[r]!==b&&(e[r]=t[r]);return e}function O(t,e){var n=w(t),o=t.settings?t.settings:n,r=t.settings?n:null,a={};for(var i in o)!o.hasOwnProperty(i)||void 0===o[i]||e&&"data"!==i&&k(e[i],o[i])||(a[i]=o[i]);for(var s in r)!r.hasOwnProperty(s)||"id"===s||"settings"===s||"wrapperRendererCacheSize"===s||void 0===r[s]||e&&"data"!==s&&k(e[s],r[s])||(a[s]=r[s]);return a}function I(t,e){var n=null;return t.every((function(t,o){return!t.data||!t.data.attrs||void 0===t.data.attrs[e]||(n=t,!1)})),n}function _(t,e,n,o){var r=e.$el?e.$el.ownerDocument:document,a={propsData:n,parent:e,data:o};E||((E=r.createElement("DIV")).id="vueHotComponents",r.body.appendChild(E));var i=r.createElement("DIV");return E.appendChild(i),new t.componentOptions.Ctor(a).$mount(i)}function k(t,e){return JSON.stringify(t)===JSON.stringify(e)}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var S=function(t,e){return t(e={exports:{}},e.exports),e.exports}((function(t,e){!function(t){var e=Symbol("newer"),n=Symbol("older");function o(t,e){"number"!=typeof t&&(e=t,t=0),this.size=0,this.limit=t,this.oldest=this.newest=void 0,this._keymap=new Map,e&&(this.assign(e),1>t&&(this.limit=this.size))}function r(t,o){this.key=t,this.value=o,this[e]=void 0,this[n]=void 0}t.LRUMap=o,o.prototype._markEntryAsUsed=function(t){t!==this.newest&&(t[e]&&(t===this.oldest&&(this.oldest=t[e]),t[e][n]=t[n]),t[n]&&(t[n][e]=t[e]),t[e]=void 0,t[n]=this.newest,this.newest&&(this.newest[e]=t),this.newest=t)},o.prototype.assign=function(t){var o,a=this.limit||Number.MAX_VALUE;this._keymap.clear();for(var i=t[Symbol.iterator](),s=i.next();!s.done;s=i.next()){var c=new r(s.value[0],s.value[1]);if(this._keymap.set(c.key,c),o?(o[e]=c,c[n]=o):this.oldest=c,o=c,0==a--)throw Error("overflow")}this.newest=o,this.size=this._keymap.size},o.prototype.get=function(t){var e=this._keymap.get(t);if(e)return this._markEntryAsUsed(e),e.value},o.prototype.set=function(t,o){var a=this._keymap.get(t);return a?(a.value=o,this._markEntryAsUsed(a),this):(this._keymap.set(t,a=new r(t,o)),this.newest?(this.newest[e]=a,a[n]=this.newest):this.oldest=a,this.newest=a,++this.size,this.size>this.limit&&this.shift(),this)},o.prototype.shift=function(){var t=this.oldest;if(t)return this.oldest[e]?(this.oldest=this.oldest[e],this.oldest[n]=void 0):(this.oldest=void 0,this.newest=void 0),t[e]=t[n]=void 0,this._keymap.delete(t.key),--this.size,[t.key,t.value]},o.prototype.has=function(t){return this._keymap.has(t)}}(e)})),$=S.LRUMap;function j(t,e,n,o,r,a,i,s,c,l){"boolean"!=typeof i&&(c=s,s=i,i=!1);const u="function"==typeof n?n.options:n;let d;if(t&&t.render&&(u.render=t.render,u.staticRenderFns=t.staticRenderFns,u._compiled=!0,r&&(u.functional=!0)),o&&(u._scopeId=o),a?(d=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,c(t)),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=d):e&&(d=i?function(t){e.call(this,l(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),d)if(u.functional){const t=u.render;u.render=function(e,n){return d.call(n),t(e,n)}}else{const t=u.beforeCreate;u.beforeCreate=t?[].concat(t,d):[d]}return n}var R=j({render:function(){var t=this;return(t._self._c||t.$createElement)("div",{attrs:{id:t.id}},[t._t("default")],2)},staticRenderFns:[]},undefined,{name:"HotTable",props:C("HotTable"),watch:{mergedHotSettings:function(t){this.hotInstance&&void 0!==t&&(t.data&&(this.hotInstance.isColumnModificationAllowed()||!this.hotInstance.isColumnModificationAllowed()&&this.hotInstance.countSourceCols()===this.miscCache.currentSourceColumns)&&(this.matchHotMappersSize(),delete t.data),Object.keys(t).length?this.hotInstance.updateSettings(t):this.hotInstance.render(),this.miscCache.currentSourceColumns=this.hotInstance.countSourceCols())}},data:function(){var t=this,e=new $(this.wrapperRendererCacheSize);return e.shift=function(){var t=$.prototype.shift.call(this);return t[1].component.$destroy(),t},{__internalEdit:!1,miscCache:{currentSourceColumns:null},__hotInstance:null,columnSettings:null,rendererCache:e,editorCache:new Map,get hotInstance(){return!t.__hotInstance||t.__hotInstance&&!t.__hotInstance.isDestroyed?t.__hotInstance:(console.warn("The Handsontable instance bound to this component was destroyed and cannot be used properly."),null)},set hotInstance(e){t.__hotInstance=e}}},computed:{mergedHotSettings:function(){return O(this.$props,this.hotInstance?this.hotInstance.getSettings():void 0)}},methods:{hotInit:function(){var t,e=this.getGlobalRendererVNode(),n=this.getGlobalEditorVNode(),o=O(this.$props);o.columns=this.columnSettings?this.columnSettings:o.columns,n&&(o.editor=this.getEditorClass(n,this),n.child.$destroy()),e&&(o.renderer=this.getRendererWrapper(e,this),e.child.$destroy()),this.hotInstance=new r.default.Core(this.$el,o),this.hotInstance.init(),(t=this).hotInstance&&(t.hotInstance.addHook("beforeChange",(function(){t.__internalEdit=!0})),t.hotInstance.addHook("beforeCreateRow",(function(){t.__internalEdit=!0})),t.hotInstance.addHook("beforeCreateCol",(function(){t.__internalEdit=!0})),t.hotInstance.addHook("beforeRemoveRow",(function(){t.__internalEdit=!0})),t.hotInstance.addHook("beforeRemoveCol",(function(){t.__internalEdit=!0}))),this.miscCache.currentSourceColumns=this.hotInstance.countSourceCols()},matchHotMappersSize:function(){var t=this;if(this.hotInstance){var e,n=this.hotInstance.getSourceData(),o=[],r=[],a=this.hotInstance.rowIndexMapper.getNumberOfIndexes(),i=this.hotInstance.isColumnModificationAllowed(),s=0;if(n&&n.length!==a&&a>n.length)for(var c=n.length;a>c;c++)o.push(c);if(i)if(s=this.hotInstance.columnIndexMapper.getNumberOfIndexes(),n&&n[0]&&(null===(e=n[0])||void 0===e?void 0:e.length)!==s&&s>n[0].length)for(var l=n[0].length;s>l;l++)r.push(l);this.hotInstance.batch((function(){o.length>0?t.hotInstance.rowIndexMapper.removeIndexes(o):t.hotInstance.rowIndexMapper.insertIndexes(a-1,n.length-a),i&&0!==n.length&&(r.length>0?t.hotInstance.columnIndexMapper.removeIndexes(r):t.hotInstance.columnIndexMapper.insertIndexes(s-1,n[0].length-s))}))}},getGlobalRendererVNode:function(){return I(this.$slots.default||[],"hot-renderer")},getGlobalEditorVNode:function(){return I(this.$slots.default||[],"hot-editor")},getColumnSettings:function(){var t=this.$children.filter((function(t){return"HotColumn"===t.$options.name})),e=!1,n=t.map((function(t){return t.usesRendererComponent&&(e=!0),s({},t.columnSettings)}));return e&&this.settings&&(!1!==this.settings.autoColumnSize||this.settings.autoRowSize)&&(!1!==this.autoColumnSize||this.autoRowSize)&&console.warn("Your `hot-table` configuration includes both `hot-column` and `autoRowSize`/`autoColumnSize`, which are not compatible with each other in this version of `@handsontable/vue`. Disable `autoRowSize` and `autoColumnSize` to prevent row and column misalignment."),n.length?n:void 0},getRendererWrapper:function(t,e){var n=this;return function(o,r,a,i,s,c,l){if(r&&!r.getAttribute("ghost-table")){var u=n.rendererCache,d={hotInstance:o,TD:r,row:a,col:i,prop:s,value:c,cellProperties:l,isRenderer:!0};if(u&&!u.has("".concat(a,"-").concat(i))){var f=_(t,e,t.componentOptions.propsData,d);u.set("".concat(a,"-").concat(i),{component:f,lastUsedTD:null})}var p=u.get("".concat(a,"-").concat(i)),h=p.component,y=p.lastUsedTD;if(Object.assign(h.$data,d),!h.$el.parentElement||y!==r){for(;r.firstChild;)r.removeChild(r.firstChild);r.appendChild(h.$el),p.lastUsedTD=r}}return r}},getEditorClass:function(t,e){var n=t.key?""+t.key:null,o=t.componentOptions.Ctor.options.name,r=n?"".concat(o,":").concat(n):o,a=this.editorCache,i=null;return a.has(r)?i=a.get(r):(i=_(t,e,t.componentOptions.propsData,{isEditor:!0}),a.set(r,i)),i.$data.hotCustomEditorClass}},mounted:function(){return this.columnSettings=this.getColumnSettings(),this.hotInit()},beforeDestroy:function(){this.hotInstance&&this.hotInstance.destroy()},version:"12.1.0"},undefined,false,undefined,!1,void 0,void 0,void 0),P=j({},undefined,{name:"HotColumn",props:C("HotColumn"),methods:{createColumnSettings:function(){var t=this.$slots.default||[],e=I(t,"hot-renderer"),n=I(t,"hot-editor"),o=w(this.$props);e&&void 0===this.usesRendererComponent&&(this.usesRendererComponent=!0),this.columnSettings=s({},o),null!==e?this.columnSettings.renderer=this.$parent.getRendererWrapper(e,this):o.renderer&&(this.columnSettings.renderer=o.renderer),null!==n?this.columnSettings.editor=this.$parent.getEditorClass(n,this):o.editor&&(this.columnSettings.editor=o.editor)}},mounted:function(){this.createColumnSettings()},render:function(){return null}},undefined,undefined,undefined,!1,void 0,void 0,void 0);function A(t){return A="function"==typeof Symbol&&"symbol"===c(Symbol.iterator)?function(t){return c(t)}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":c(t)},A(t)}function x(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function B(t){return function(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);t.length>e;e++)n[e]=t[e];return n}}(t)||function(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function M(){return"undefined"!=typeof Reflect&&Reflect.defineMetadata&&Reflect.getOwnMetadataKeys}function H(t,e){D(t,e),Object.getOwnPropertyNames(e.prototype).forEach((function(n){D(t.prototype,e.prototype,n)})),Object.getOwnPropertyNames(e).forEach((function(n){D(t,e,n)}))}function D(t,e,n){(n?Reflect.getOwnMetadataKeys(e,n):Reflect.getOwnMetadataKeys(e)).forEach((function(o){var r=n?Reflect.getOwnMetadata(o,e,n):Reflect.getOwnMetadata(o,e);n?Reflect.defineMetadata(o,r,t,n):Reflect.defineMetadata(o,r,t)}))}var T={__proto__:[]}instanceof Array;function z(t,e){var n=e.prototype._init;e.prototype._init=function(){var e=this,n=Object.getOwnPropertyNames(t);if(t.$options.props)for(var o in t.$options.props)t.hasOwnProperty(o)||n.push(o);n.forEach((function(n){Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){t[n]=e},configurable:!0})}))};var o=new e;e.prototype._init=n;var r={};return Object.keys(o).forEach((function(t){void 0!==o[t]&&(r[t]=o[t])})),r}var V=["data","beforeCreate","created","beforeMount","mounted","beforeDestroy","destroyed","beforeUpdate","updated","activated","deactivated","render","errorCaptured","serverPrefetch"];function N(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e.name=e.name||t._componentTag||t.name;var n=t.prototype;Object.getOwnPropertyNames(n).forEach((function(t){if("constructor"!==t)if(-1<V.indexOf(t))e[t]=n[t];else{var o=Object.getOwnPropertyDescriptor(n,t);void 0!==o.value?"function"==typeof o.value?(e.methods||(e.methods={}))[t]=o.value:(e.mixins||(e.mixins=[])).push({data:function(){return x({},t,o.value)}}):(o.get||o.set)&&((e.computed||(e.computed={}))[t]={get:o.get,set:o.set})}})),(e.mixins||(e.mixins=[])).push({data:function(){return z(this,t)}});var o=t.__decorators__;o&&(o.forEach((function(t){return t(e)})),delete t.__decorators__);var r=Object.getPrototypeOf(t.prototype),i=r instanceof a.default?r.constructor:a.default,s=i.extend(e);return F(s,t,i),M()&&H(s,t),s}var U={prototype:!0,arguments:!0,callee:!0,caller:!0};function F(t,e,n){Object.getOwnPropertyNames(e).forEach((function(o){if(!U[o]){var r=Object.getOwnPropertyDescriptor(t,o);if(!r||r.configurable){var a,i,s=Object.getOwnPropertyDescriptor(e,o);if(!T){if("cid"===o)return;var c=Object.getOwnPropertyDescriptor(n,o);if(i=A(a=s.value),null!=a&&("object"===i||"function"===i)&&c&&c.value===s.value)return}Object.defineProperty(t,o,s)}}}))}function K(t){return"function"==typeof t?N(t):function(e){return N(e,t)}}K.registerHooks=function(t){V.push.apply(V,B(t))};var L=function(t){p(n,t);var e=g(n);function n(){var t;return l(this,n),(t=e.apply(this,arguments)).name="BaseEditorComponent",t.instance=null,t.row=null,t.col=null,t.prop=null,t.TD=null,t.originalValue=null,t.cellProperties=null,t.state=null,t.hot=null,t}return d(n,[{key:"mounted",value:function(){var t,e=this;this.$data.hotCustomEditorClass=(t=function(t){p(o,t);var n=g(o);function o(t){var r;return l(this,o),r=n.call(this,t),e.$data.hotCustomEditorInstance=v(r),r}return d(o,[{key:"focus",value:function(){}},{key:"getValue",value:function(){}},{key:"setValue",value:function(){}},{key:"open",value:function(){}},{key:"close",value:function(){}}]),o}(r.default.editors.BaseEditor),Object.getOwnPropertyNames(r.default.editors.BaseEditor.prototype).forEach((function(n){"constructor"!==n&&(t.prototype[n]=function(){for(var t,o=arguments.length,r=Array(o),a=0;o>a;a++)r[a]=arguments[a];return(t=e[n]).call.apply(t,[this].concat(r))})})),t)}},{key:"_fireCallbacks",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];(t=r.default.editors.BaseEditor.prototype._fireCallbacks).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"beginEditing",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.beginEditing).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"cancelChanges",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.cancelChanges).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"checkEditorSection",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.checkEditorSection).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"close",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.close).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"discardEditor",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.discardEditor).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"enableFullEditMode",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.enableFullEditMode).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"extend",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.extend).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"finishEditing",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.finishEditing).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"focus",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.focus).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getValue",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getValue).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"init",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.init).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"isInFullEditMode",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.isInFullEditMode).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"isOpened",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.isOpened).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"isWaiting",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.isWaiting).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"open",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.open).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"prepare",value:function(t,e,n,o,a,i){return this.$data.hotInstance=i.instance,this.$data.row=t,this.$data.col=e,this.$data.prop=n,this.$data.TD=o,this.$data.originalValue=a,this.$data.cellProperties=i,r.default.editors.BaseEditor.prototype.prepare.call(this.$data.hotCustomEditorInstance,t,e,n,o,a,i)}},{key:"saveValue",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.saveValue).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"setValue",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.setValue).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"addHook",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.addHook).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"removeHooksByKey",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.removeHooksByKey).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"clearHooks",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.clearHooks).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getEditedCell",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getEditedCell).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getEditedCellRect",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getEditedCellRect).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getEditedCellsZIndex",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getEditedCellsZIndex).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}},{key:"getEditedCellsLayerClass",value:function(){for(var t,e=arguments.length,n=Array(e),o=0;e>o;o++)n[o]=arguments[o];return(t=r.default.editors.BaseEditor.prototype.getEditedCellsLayerClass).call.apply(t,[this.$data.hotCustomEditorInstance].concat(n))}}]),n}(a.default);L=
|
|
31
31
|
/*! *****************************************************************************
|
|
32
32
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
33
33
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vue-handsontable.min.js","sources":["../src/helpers.ts","../src/lib/lru/lru.js","../../../node_modules/vue-runtime-helpers/dist/normalize-component.mjs","../src/HotTable.vue","../../../node_modules/vue-class-component/dist/vue-class-component.esm.js","../src/BaseEditorComponent.vue"],"sourcesContent":["import Vue, { VNode } from 'vue';\nimport Handsontable from 'handsontable/base';\nimport { HotTableProps, VueProps, EditorComponent } from './types';\n\nconst unassignedPropSymbol = Symbol('unassigned');\nlet bulkComponentContainer = null;\n\n/**\n * Message for the warning thrown if the Handsontable instance has been destroyed.\n */\nexport const HOT_DESTROYED_WARNING = 'The Handsontable instance bound to this component was destroyed and cannot be' +\n ' used properly.';\n\n/**\n * Rewrite the settings object passed to the watchers to be a clean array/object prepared to use within Handsontable config.\n *\n * @param {*} observerSettings Watcher object containing the changed data.\n * @returns {Object|Array}\n */\nexport function rewriteSettings(observerSettings): any[] | object {\n const settingsType = Object.prototype.toString.call(observerSettings);\n let settings: any[] | object | null = null;\n let type: { array?: boolean, object?: boolean } = {};\n\n if (settingsType === '[object Array]') {\n settings = [];\n type.array = true;\n\n } else if (settingsType === '[object Object]') {\n settings = {};\n type.object = true;\n }\n\n if (type.array || type.object) {\n for (const p in observerSettings) {\n if (observerSettings.hasOwnProperty(p)) {\n settings[p] = observerSettings[p];\n }\n }\n\n } else {\n settings = observerSettings;\n }\n\n return settings;\n}\n\n/**\n * Private method to ensure the table is not calling `updateSettings` after editing cells.\n * @private\n */\nexport function preventInternalEditWatch(component) {\n if (component.hotInstance) {\n component.hotInstance.addHook('beforeChange', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeCreateRow', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeCreateCol', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeRemoveRow', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeRemoveCol', () => {\n component.__internalEdit = true;\n });\n }\n}\n\n/**\n * Generate an object containing all the available Handsontable properties and plugin hooks.\n *\n * @param {String} source Source for the factory (either 'HotTable' or 'HotColumn').\n * @returns {Object}\n */\nexport function propFactory(source): VueProps<HotTableProps> {\n const registeredHooks: string[] = Handsontable.hooks.getRegistered();\n\n let propSchema: VueProps<HotTableProps> = {};\n Object.assign(propSchema, Handsontable.DefaultSettings);\n\n for (let prop in propSchema) {\n propSchema[prop] = {\n default: unassignedPropSymbol\n };\n }\n\n for (let i = 0; i < registeredHooks.length; i++) {\n propSchema[registeredHooks[i]] = {\n default: unassignedPropSymbol\n };\n }\n\n propSchema.settings = {\n default: unassignedPropSymbol\n };\n\n if (source === 'HotTable') {\n propSchema.id = {\n type: String,\n default: 'hot-' + Math.random().toString(36).substring(5)\n };\n\n propSchema.wrapperRendererCacheSize = {\n type: Number,\n default: 3000\n };\n }\n\n return propSchema;\n}\n\n/**\n * Filter out all of the unassigned props, and return only the one passed to the component.\n *\n * @param {Object} props Object containing all the possible props.\n * @returns {Object} Object containing only used props.\n */\nexport function filterPassedProps(props) {\n const filteredProps: VueProps<HotTableProps> = {};\n const columnSettingsProp = props['settings'];\n\n if (columnSettingsProp !== unassignedPropSymbol) {\n for (let propName in columnSettingsProp) {\n if (columnSettingsProp.hasOwnProperty(propName) && columnSettingsProp[propName] !== unassignedPropSymbol) {\n filteredProps[propName] = columnSettingsProp[propName];\n }\n }\n }\n\n for (let propName in props) {\n if (props.hasOwnProperty(propName) && propName !== 'settings' && props[propName] !== unassignedPropSymbol) {\n filteredProps[propName] = props[propName];\n }\n }\n\n return filteredProps;\n}\n\n/**\n * Prepare the settings object to be used as the settings for Handsontable, based on the props provided to the component.\n *\n * @param {HotTableProps} props The props passed to the component.\n * @param {Handsontable.GridSettings} currentSettings The current Handsontable settings.\n * @returns {Handsontable.GridSettings} An object containing the properties, ready to be used within Handsontable.\n */\nexport function prepareSettings(props: HotTableProps, currentSettings?: Handsontable.GridSettings): Handsontable.GridSettings {\n const assignedProps: VueProps<HotTableProps> = filterPassedProps(props);\n const hotSettingsInProps: {} = props.settings ? props.settings : assignedProps;\n const additionalHotSettingsInProps: Handsontable.GridSettings = props.settings ? assignedProps : null;\n const newSettings = {};\n\n for (const key in hotSettingsInProps) {\n if (\n hotSettingsInProps.hasOwnProperty(key) &&\n hotSettingsInProps[key] !== void 0 &&\n ((currentSettings && key !== 'data') ? !simpleEqual(currentSettings[key], hotSettingsInProps[key]) : true)\n ) {\n newSettings[key] = hotSettingsInProps[key];\n }\n }\n\n for (const key in additionalHotSettingsInProps) {\n if (\n additionalHotSettingsInProps.hasOwnProperty(key) &&\n key !== 'id' &&\n key !== 'settings' &&\n key !== 'wrapperRendererCacheSize' &&\n additionalHotSettingsInProps[key] !== void 0 &&\n ((currentSettings && key !== 'data') ? !simpleEqual(currentSettings[key], additionalHotSettingsInProps[key]) : true)\n ) {\n newSettings[key] = additionalHotSettingsInProps[key];\n }\n }\n\n return newSettings;\n}\n\n/**\n * Get the VNode element with the provided type attribute from the component slots.\n *\n * @param {Array} componentSlots Array of slots from a component.\n * @param {String} type Type of the child component. Either `hot-renderer` or `hot-editor`.\n * @returns {Object|null} The VNode of the child component (or `null` when nothing's found).\n */\nexport function findVNodeByType(componentSlots: VNode[], type: string): VNode {\n let componentVNode: VNode = null;\n\n componentSlots.every((slot, index) => {\n if (slot.data && slot.data.attrs && slot.data.attrs[type] !== void 0) {\n componentVNode = slot;\n return false;\n }\n\n return true;\n });\n\n return componentVNode;\n}\n\n/**\n * Get all `hot-column` component instances from the provided children array.\n *\n * @param {Array} children Array of children from a component.\n * @returns {Array} Array of `hot-column` instances.\n */\nexport function getHotColumnComponents(children) {\n return children.filter((child) => child.$options.name === 'HotColumn');\n}\n\n/**\n * Create an instance of the Vue Component based on the provided VNode.\n *\n * @param {Object} vNode VNode element to be turned into a component instance.\n * @param {Object} parent Instance of the component to be marked as a parent of the newly created instance.\n * @param {Object} props Props to be passed to the new instance.\n * @param {Object} data Data to be passed to the new instance.\n */\nexport function createVueComponent(vNode: VNode, parent: Vue, props: object, data: object): EditorComponent {\n const ownerDocument = parent.$el ? parent.$el.ownerDocument : document;\n const settings: object = {\n propsData: props,\n parent,\n data\n };\n\n if (!bulkComponentContainer) {\n bulkComponentContainer = ownerDocument.createElement('DIV');\n bulkComponentContainer.id = 'vueHotComponents';\n\n ownerDocument.body.appendChild(bulkComponentContainer);\n }\n\n const componentContainer = ownerDocument.createElement('DIV');\n bulkComponentContainer.appendChild(componentContainer);\n\n return (new (vNode.componentOptions as any).Ctor(settings)).$mount(componentContainer);\n}\n\n/**\n * Compare two objects using `JSON.stringify`.\n * *Note: * As it's using the stringify function to compare objects, the property order in both objects is\n * important. It will return `false` for the same objects, if they're defined in a different order.\n *\n * @param {object} objectA First object to compare.\n * @param {object} objectB Second object to compare.\n * @returns {boolean} `true` if they're the same, `false` otherwise.\n */\nfunction simpleEqual(objectA, objectB) {\n return JSON.stringify(objectA) === JSON.stringify(objectB);\n}\n","/**\n * A doubly linked list-based Least Recently Used (LRU) cache. Will keep most\n * recently used items while discarding least recently used items when its limit\n * is reached.\n *\n * Licensed under MIT. Copyright (c) 2010 Rasmus Andersson <http://hunch.se/>\n * See README.md for details.\n *\n * Illustration of the design:\n *\n * entry entry entry entry\n * ______ ______ ______ ______\n * | head |.newer => | |.newer => | |.newer => | tail |\n * | A | | B | | C | | D |\n * |______| <= older.|______| <= older.|______| <= older.|______|\n *\n * removed <-- <-- <-- <-- <-- <-- <-- <-- <-- <-- <-- added\n */\n(function(g,f){\n const e = typeof exports == 'object' ? exports : typeof g == 'object' ? g : {};\n f(e);\n if (typeof define == 'function' && define.amd) { define('lru', e); }\n})(this, function(exports) {\n\n const NEWER = Symbol('newer');\n const OLDER = Symbol('older');\n\n function LRUMap(limit, entries) {\n if (typeof limit !== 'number') {\n // called as (entries)\n entries = limit;\n limit = 0;\n }\n\n this.size = 0;\n this.limit = limit;\n this.oldest = this.newest = undefined;\n this._keymap = new Map();\n\n if (entries) {\n this.assign(entries);\n if (limit < 1) {\n this.limit = this.size;\n }\n }\n }\n\n exports.LRUMap = LRUMap;\n\n function Entry(key, value) {\n this.key = key;\n this.value = value;\n this[NEWER] = undefined;\n this[OLDER] = undefined;\n }\n\n\n LRUMap.prototype._markEntryAsUsed = function(entry) {\n if (entry === this.newest) {\n // Already the most recenlty used entry, so no need to update the list\n return;\n }\n // HEAD--------------TAIL\n // <.older .newer>\n // <--- add direction --\n // A B C <D> E\n if (entry[NEWER]) {\n if (entry === this.oldest) {\n this.oldest = entry[NEWER];\n }\n entry[NEWER][OLDER] = entry[OLDER]; // C <-- E.\n }\n if (entry[OLDER]) {\n entry[OLDER][NEWER] = entry[NEWER]; // C. --> E\n }\n entry[NEWER] = undefined; // D --x\n entry[OLDER] = this.newest; // D. --> E\n if (this.newest) {\n this.newest[NEWER] = entry; // E. <-- D\n }\n this.newest = entry;\n };\n\n LRUMap.prototype.assign = function(entries) {\n let entry, limit = this.limit || Number.MAX_VALUE;\n this._keymap.clear();\n let it = entries[Symbol.iterator]();\n for (let itv = it.next(); !itv.done; itv = it.next()) {\n let e = new Entry(itv.value[0], itv.value[1]);\n this._keymap.set(e.key, e);\n if (!entry) {\n this.oldest = e;\n } else {\n entry[NEWER] = e;\n e[OLDER] = entry;\n }\n entry = e;\n if (limit-- == 0) {\n throw new Error('overflow');\n }\n }\n this.newest = entry;\n this.size = this._keymap.size;\n };\n\n LRUMap.prototype.get = function(key) {\n // First, find our cache entry\n var entry = this._keymap.get(key);\n if (!entry) return; // Not cached. Sorry.\n // As <key> was found in the cache, register it as being requested recently\n this._markEntryAsUsed(entry);\n return entry.value;\n };\n\n LRUMap.prototype.set = function(key, value) {\n var entry = this._keymap.get(key);\n\n if (entry) {\n // update existing\n entry.value = value;\n this._markEntryAsUsed(entry);\n return this;\n }\n\n // new entry\n this._keymap.set(key, (entry = new Entry(key, value)));\n\n if (this.newest) {\n // link previous tail to the new tail (entry)\n this.newest[NEWER] = entry;\n entry[OLDER] = this.newest;\n } else {\n // we're first in -- yay\n this.oldest = entry;\n }\n\n // add new entry to the end of the linked list -- it's now the freshest entry.\n this.newest = entry;\n ++this.size;\n if (this.size > this.limit) {\n // we hit the limit -- remove the head\n this.shift();\n }\n\n return this;\n };\n\n LRUMap.prototype.shift = function() {\n // todo: handle special case when limit == 1\n var entry = this.oldest;\n if (entry) {\n if (this.oldest[NEWER]) {\n // advance the list\n this.oldest = this.oldest[NEWER];\n this.oldest[OLDER] = undefined;\n } else {\n // the cache is exhausted\n this.oldest = undefined;\n this.newest = undefined;\n }\n // Remove last strong reference to <entry> and remove links from the purged\n // entry being returned:\n entry[NEWER] = entry[OLDER] = undefined;\n this._keymap.delete(entry.key);\n --this.size;\n return [entry.key, entry.value];\n }\n };\n\n// ----------------------------------------------------------------------------\n// Following code is optional and can be removed without breaking the core\n// functionality.\n LRUMap.prototype.has = function(key) {\n return this._keymap.has(key);\n };\n});\n","function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\nexport default normalizeComponent;\n//# sourceMappingURL=normalize-component.mjs.map\n","<template>\n <div :id=\"id\">\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\n import {\n propFactory,\n preventInternalEditWatch,\n prepareSettings,\n createVueComponent,\n findVNodeByType,\n getHotColumnComponents,\n HOT_DESTROYED_WARNING\n } from './helpers';\n import Vue, { VNode } from 'vue';\n import {\n HotTableData,\n HotTableMethods,\n HotTableProps,\n HotTableComponent,\n EditorComponent\n } from './types';\n import * as packageJson from '../package.json';\n import { LRUMap } from './lib/lru/lru';\n import Handsontable from 'handsontable/base';\n\n const HotTable: HotTableComponent<Vue, HotTableData, HotTableMethods, {}, HotTableProps> = {\n name: 'HotTable',\n props: propFactory('HotTable'),\n watch: {\n mergedHotSettings: function (value) {\n if (!this.hotInstance || value === void 0) {\n return;\n }\n\n if (value.data) {\n if (\n this.hotInstance.isColumnModificationAllowed() ||\n (\n !this.hotInstance.isColumnModificationAllowed() &&\n this.hotInstance.countSourceCols() === this.miscCache.currentSourceColumns\n )\n ) {\n // If the dataset dimensions change, update the index mappers.\n this.matchHotMappersSize();\n\n // Data is automatically synchronized by reference.\n delete value.data;\n }\n }\n\n // If there are another options changed, update the HOT settings, render the table otherwise.\n if (Object.keys(value).length) {\n this.hotInstance.updateSettings(value);\n\n } else {\n this.hotInstance.render();\n }\n\n this.miscCache.currentSourceColumns = this.hotInstance.countSourceCols();\n }\n },\n data: function () {\n const thisComponent: any = this;\n const rendererCache = new LRUMap(this.wrapperRendererCacheSize);\n\n // Make the LRU cache destroy each removed component\n rendererCache.shift = function () {\n let entry = LRUMap.prototype.shift.call(this);\n entry[1].component.$destroy();\n\n return entry;\n };\n\n return {\n __internalEdit: false,\n miscCache: {\n currentSourceColumns: null\n },\n __hotInstance: null,\n columnSettings: null,\n rendererCache: rendererCache,\n editorCache: new Map(),\n get hotInstance() {\n if (!thisComponent.__hotInstance || (thisComponent.__hotInstance && !thisComponent.__hotInstance.isDestroyed)) {\n\n // Will return the Handsontable instance or `null` if it's not yet been created.\n return thisComponent.__hotInstance;\n\n } else {\n console.warn(HOT_DESTROYED_WARNING);\n\n return null;\n }\n },\n set hotInstance(hotInstance) {\n thisComponent.__hotInstance = hotInstance;\n }\n };\n },\n computed: {\n mergedHotSettings: function (): Handsontable.GridSettings {\n return prepareSettings(this.$props, this.hotInstance ? this.hotInstance.getSettings() : void 0);\n }\n },\n methods: {\n /**\n * Initialize Handsontable.\n */\n hotInit: function (): void {\n const globalRendererVNode = this.getGlobalRendererVNode();\n const globalEditorVNode = this.getGlobalEditorVNode();\n\n const newSettings: Handsontable.GridSettings = prepareSettings(this.$props);\n\n newSettings.columns = this.columnSettings ? this.columnSettings : newSettings.columns;\n\n if (globalEditorVNode) {\n newSettings.editor = this.getEditorClass(globalEditorVNode, this);\n\n globalEditorVNode.child.$destroy();\n }\n\n if (globalRendererVNode) {\n newSettings.renderer = this.getRendererWrapper(globalRendererVNode, this);\n\n globalRendererVNode.child.$destroy();\n }\n\n this.hotInstance = new Handsontable.Core(this.$el, newSettings);\n this.hotInstance.init();\n\n preventInternalEditWatch(this);\n\n this.miscCache.currentSourceColumns = this.hotInstance.countSourceCols();\n },\n matchHotMappersSize: function(): void {\n if (!this.hotInstance) {\n return;\n }\n\n const data: Handsontable.CellValue[][] = this.hotInstance.getSourceData();\n const rowsToRemove: number[] = [];\n const columnsToRemove: number[] = [];\n const indexMapperRowCount = this.hotInstance.rowIndexMapper.getNumberOfIndexes();\n const isColumnModificationAllowed = this.hotInstance.isColumnModificationAllowed();\n let indexMapperColumnCount = 0;\n\n if (data && data.length !== indexMapperRowCount) {\n if (data.length < indexMapperRowCount) {\n for (let r = data.length; r < indexMapperRowCount; r++) {\n rowsToRemove.push(r);\n }\n }\n }\n\n if (isColumnModificationAllowed) {\n indexMapperColumnCount = this.hotInstance.columnIndexMapper.getNumberOfIndexes();\n\n if (data && data[0] && data[0]?.length !==\n indexMapperColumnCount) {\n if (data[0].length < indexMapperColumnCount) {\n for (let c = data[0].length; c < indexMapperColumnCount; c++) {\n columnsToRemove.push(c);\n }\n }\n }\n }\n\n this.hotInstance.batch(() => {\n if (rowsToRemove.length > 0) {\n this.hotInstance.rowIndexMapper.removeIndexes(rowsToRemove);\n\n } else {\n this.hotInstance.rowIndexMapper.insertIndexes(indexMapperRowCount - 1, data.length - indexMapperRowCount);\n }\n\n if (isColumnModificationAllowed && data.length !== 0) {\n if (columnsToRemove.length > 0) {\n this.hotInstance.columnIndexMapper.removeIndexes(columnsToRemove);\n\n } else {\n this.hotInstance.columnIndexMapper.insertIndexes(indexMapperColumnCount - 1, data[0].length - indexMapperColumnCount);\n }\n }\n });\n },\n getGlobalRendererVNode: function (): VNode | null {\n const hotTableSlots: VNode[] = this.$slots.default || [];\n return findVNodeByType(hotTableSlots, 'hot-renderer');\n },\n getGlobalEditorVNode: function (): VNode | null {\n const hotTableSlots: VNode[] = this.$slots.default || [];\n return findVNodeByType(hotTableSlots, 'hot-editor');\n },\n /**\n * Get settings for the columns provided in the `hot-column` components.\n */\n getColumnSettings: function (): HotTableProps[] | void {\n const hotColumns = getHotColumnComponents(this.$children);\n let usesRendererComponent = false;\n let columnSettings: HotTableProps[] = hotColumns.map((elem) => {\n if (elem.usesRendererComponent) {\n usesRendererComponent = true;\n }\n\n return {...elem.columnSettings};\n });\n\n if (usesRendererComponent &&\n (this.settings && (this.settings.autoColumnSize !== false || this.settings.autoRowSize)) &&\n (this.autoColumnSize !== false || this.autoRowSize)) {\n console.warn('Your `hot-table` configuration includes both `hot-column` and `autoRowSize`/`autoColumnSize`, which are not compatible with each other ' +\n 'in this version of `@handsontable/vue`. Disable `autoRowSize` and `autoColumnSize` to prevent row and column misalignment.')\n }\n\n return columnSettings.length ? columnSettings : void 0;\n },\n /**\n * Create the wrapper function for the provided renderer child component.\n *\n * @param {Object} vNode VNode of the renderer child component.\n * @param {Boolean} containerComponent Instance of the component, which will be treated as a parent for the newly created renderer component.\n * @returns {Function} The wrapper function used as the renderer.\n */\n getRendererWrapper: function (vNode: VNode, containerComponent: Vue): (...args) => HTMLElement {\n const $vm = this;\n\n return function (instance, TD, row, col, prop, value, cellProperties) {\n // Prevent caching and rendering of the GhostTable table cells\n if (TD && !TD.getAttribute('ghost-table')) {\n const rendererCache = $vm.rendererCache;\n const rendererArgs: object = {\n hotInstance: instance,\n TD,\n row,\n col,\n prop,\n value,\n cellProperties,\n isRenderer: true\n };\n\n if (rendererCache && !rendererCache.has(`${row}-${col}`)) {\n const mountedComponent: Vue = createVueComponent(vNode, containerComponent, vNode.componentOptions.propsData, rendererArgs);\n\n rendererCache.set(`${row}-${col}`, {\n component: mountedComponent,\n lastUsedTD: null\n });\n }\n\n const cachedEntry = rendererCache.get(`${row}-${col}`);\n const cachedComponent: Vue = cachedEntry.component;\n const cachedTD: HTMLTableCellElement = cachedEntry.lastUsedTD;\n\n Object.assign(cachedComponent.$data, rendererArgs);\n\n if (!cachedComponent.$el.parentElement || cachedTD !== TD) {\n // Clear the previous contents of a TD\n while (TD.firstChild) {\n TD.removeChild(TD.firstChild);\n }\n\n TD.appendChild(cachedComponent.$el);\n\n cachedEntry.lastUsedTD = TD;\n }\n }\n\n return TD;\n };\n },\n /**\n * Create a fresh class to be used as an editor, based on the editor component provided.\n *\n * @param {Object} vNode VNode for the editor child component.\n * @param {Boolean} containerComponent Instance of the component, which will be treated as a parent for the newly created editor component.\n * @returns {Class} The class used as an editor in Handsontable.\n */\n getEditorClass: function (vNode: VNode, containerComponent: Vue): typeof Handsontable.editors.BaseEditor {\n const componentKey: string = vNode.key ? vNode.key.toString() : null;\n const componentName: string = (vNode.componentOptions.Ctor as any).options.name;\n const componentCacheKey = componentKey ? `${componentName}:${componentKey}` : componentName;\n\n const editorCache = this.editorCache;\n let mountedComponent: EditorComponent = null;\n\n if (!editorCache.has(componentCacheKey)) {\n mountedComponent = createVueComponent(vNode, containerComponent, vNode.componentOptions.propsData, {isEditor: true});\n\n editorCache.set(componentCacheKey, mountedComponent);\n\n } else {\n mountedComponent = editorCache.get(componentCacheKey);\n }\n\n return mountedComponent.$data.hotCustomEditorClass;\n }\n },\n mounted: function () {\n this.columnSettings = this.getColumnSettings();\n\n return this.hotInit();\n },\n beforeDestroy: function () {\n if (this.hotInstance) {\n this.hotInstance.destroy();\n }\n },\n version: (packageJson as any).version\n };\n\n export default HotTable;\n export { HotTable };\n</script>\n","/**\n * vue-class-component v7.2.6\n * (c) 2015-present Evan You\n * @license MIT\n */\nimport Vue from 'vue';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\n// The rational behind the verbose Reflect-feature check below is the fact that there are polyfills\n// which add an implementation for Reflect.defineMetadata but not for Reflect.getOwnMetadataKeys.\n// Without this check consumers will encounter hard to track down runtime errors.\nfunction reflectionIsSupported() {\n return typeof Reflect !== 'undefined' && Reflect.defineMetadata && Reflect.getOwnMetadataKeys;\n}\nfunction copyReflectionMetadata(to, from) {\n forwardMetadata(to, from);\n Object.getOwnPropertyNames(from.prototype).forEach(function (key) {\n forwardMetadata(to.prototype, from.prototype, key);\n });\n Object.getOwnPropertyNames(from).forEach(function (key) {\n forwardMetadata(to, from, key);\n });\n}\n\nfunction forwardMetadata(to, from, propertyKey) {\n var metaKeys = propertyKey ? Reflect.getOwnMetadataKeys(from, propertyKey) : Reflect.getOwnMetadataKeys(from);\n metaKeys.forEach(function (metaKey) {\n var metadata = propertyKey ? Reflect.getOwnMetadata(metaKey, from, propertyKey) : Reflect.getOwnMetadata(metaKey, from);\n\n if (propertyKey) {\n Reflect.defineMetadata(metaKey, metadata, to, propertyKey);\n } else {\n Reflect.defineMetadata(metaKey, metadata, to);\n }\n });\n}\n\nvar fakeArray = {\n __proto__: []\n};\nvar hasProto = fakeArray instanceof Array;\nfunction createDecorator(factory) {\n return function (target, key, index) {\n var Ctor = typeof target === 'function' ? target : target.constructor;\n\n if (!Ctor.__decorators__) {\n Ctor.__decorators__ = [];\n }\n\n if (typeof index !== 'number') {\n index = undefined;\n }\n\n Ctor.__decorators__.push(function (options) {\n return factory(options, key, index);\n });\n };\n}\nfunction mixins() {\n for (var _len = arguments.length, Ctors = new Array(_len), _key = 0; _key < _len; _key++) {\n Ctors[_key] = arguments[_key];\n }\n\n return Vue.extend({\n mixins: Ctors\n });\n}\nfunction isPrimitive(value) {\n var type = _typeof(value);\n\n return value == null || type !== 'object' && type !== 'function';\n}\nfunction warn(message) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-class-component] ' + message);\n }\n}\n\nfunction collectDataFromConstructor(vm, Component) {\n // override _init to prevent to init as Vue instance\n var originalInit = Component.prototype._init;\n\n Component.prototype._init = function () {\n var _this = this;\n\n // proxy to actual vm\n var keys = Object.getOwnPropertyNames(vm); // 2.2.0 compat (props are no longer exposed as self properties)\n\n if (vm.$options.props) {\n for (var key in vm.$options.props) {\n if (!vm.hasOwnProperty(key)) {\n keys.push(key);\n }\n }\n }\n\n keys.forEach(function (key) {\n Object.defineProperty(_this, key, {\n get: function get() {\n return vm[key];\n },\n set: function set(value) {\n vm[key] = value;\n },\n configurable: true\n });\n });\n }; // should be acquired class property values\n\n\n var data = new Component(); // restore original _init to avoid memory leak (#209)\n\n Component.prototype._init = originalInit; // create plain data object\n\n var plainData = {};\n Object.keys(data).forEach(function (key) {\n if (data[key] !== undefined) {\n plainData[key] = data[key];\n }\n });\n\n if (process.env.NODE_ENV !== 'production') {\n if (!(Component.prototype instanceof Vue) && Object.keys(plainData).length > 0) {\n warn('Component class must inherit Vue or its descendant class ' + 'when class property is used.');\n }\n }\n\n return plainData;\n}\n\nvar $internalHooks = ['data', 'beforeCreate', 'created', 'beforeMount', 'mounted', 'beforeDestroy', 'destroyed', 'beforeUpdate', 'updated', 'activated', 'deactivated', 'render', 'errorCaptured', 'serverPrefetch' // 2.6\n];\nfunction componentFactory(Component) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n options.name = options.name || Component._componentTag || Component.name; // prototype props.\n\n var proto = Component.prototype;\n Object.getOwnPropertyNames(proto).forEach(function (key) {\n if (key === 'constructor') {\n return;\n } // hooks\n\n\n if ($internalHooks.indexOf(key) > -1) {\n options[key] = proto[key];\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(proto, key);\n\n if (descriptor.value !== void 0) {\n // methods\n if (typeof descriptor.value === 'function') {\n (options.methods || (options.methods = {}))[key] = descriptor.value;\n } else {\n // typescript decorated data\n (options.mixins || (options.mixins = [])).push({\n data: function data() {\n return _defineProperty({}, key, descriptor.value);\n }\n });\n }\n } else if (descriptor.get || descriptor.set) {\n // computed properties\n (options.computed || (options.computed = {}))[key] = {\n get: descriptor.get,\n set: descriptor.set\n };\n }\n });\n (options.mixins || (options.mixins = [])).push({\n data: function data() {\n return collectDataFromConstructor(this, Component);\n }\n }); // decorate options\n\n var decorators = Component.__decorators__;\n\n if (decorators) {\n decorators.forEach(function (fn) {\n return fn(options);\n });\n delete Component.__decorators__;\n } // find super\n\n\n var superProto = Object.getPrototypeOf(Component.prototype);\n var Super = superProto instanceof Vue ? superProto.constructor : Vue;\n var Extended = Super.extend(options);\n forwardStaticMembers(Extended, Component, Super);\n\n if (reflectionIsSupported()) {\n copyReflectionMetadata(Extended, Component);\n }\n\n return Extended;\n}\nvar reservedPropertyNames = [// Unique id\n'cid', // Super Vue constructor\n'super', // Component options that will be used by the component\n'options', 'superOptions', 'extendOptions', 'sealedOptions', // Private assets\n'component', 'directive', 'filter'];\nvar shouldIgnore = {\n prototype: true,\n arguments: true,\n callee: true,\n caller: true\n};\n\nfunction forwardStaticMembers(Extended, Original, Super) {\n // We have to use getOwnPropertyNames since Babel registers methods as non-enumerable\n Object.getOwnPropertyNames(Original).forEach(function (key) {\n // Skip the properties that should not be overwritten\n if (shouldIgnore[key]) {\n return;\n } // Some browsers does not allow reconfigure built-in properties\n\n\n var extendedDescriptor = Object.getOwnPropertyDescriptor(Extended, key);\n\n if (extendedDescriptor && !extendedDescriptor.configurable) {\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(Original, key); // If the user agent does not support `__proto__` or its family (IE <= 10),\n // the sub class properties may be inherited properties from the super class in TypeScript.\n // We need to exclude such properties to prevent to overwrite\n // the component options object which stored on the extended constructor (See #192).\n // If the value is a referenced value (object or function),\n // we can check equality of them and exclude it if they have the same reference.\n // If it is a primitive value, it will be forwarded for safety.\n\n if (!hasProto) {\n // Only `cid` is explicitly exluded from property forwarding\n // because we cannot detect whether it is a inherited property or not\n // on the no `__proto__` environment even though the property is reserved.\n if (key === 'cid') {\n return;\n }\n\n var superDescriptor = Object.getOwnPropertyDescriptor(Super, key);\n\n if (!isPrimitive(descriptor.value) && superDescriptor && superDescriptor.value === descriptor.value) {\n return;\n }\n } // Warn if the users manually declare reserved properties\n\n\n if (process.env.NODE_ENV !== 'production' && reservedPropertyNames.indexOf(key) >= 0) {\n warn(\"Static property name '\".concat(key, \"' declared on class '\").concat(Original.name, \"' \") + 'conflicts with reserved property name of Vue internal. ' + 'It may cause unexpected behavior of the component. Consider renaming the property.');\n }\n\n Object.defineProperty(Extended, key, descriptor);\n });\n}\n\nfunction Component(options) {\n if (typeof options === 'function') {\n return componentFactory(options);\n }\n\n return function (Component) {\n return componentFactory(Component, options);\n };\n}\n\nComponent.registerHooks = function registerHooks(keys) {\n $internalHooks.push.apply($internalHooks, _toConsumableArray(keys));\n};\n\nexport default Component;\nexport { createDecorator, mixins };\n","<script lang=\"ts\">\n import Vue from 'vue';\n import Handsontable from 'handsontable/base';\n import Component from 'vue-class-component';\n\n @Component({})\n class BaseEditorComponent extends Vue implements Handsontable.editors.BaseEditor {\n name = 'BaseEditorComponent';\n instance = null;\n row = null;\n col = null;\n prop = null;\n TD = null;\n originalValue = null;\n cellProperties = null;\n state = null;\n hot = null;\n\n mounted() {\n const _this = this;\n\n this.$data.hotCustomEditorClass = function () {\n const customEditorClass = class CustomEditor extends Handsontable.editors.BaseEditor implements Handsontable.editors.BaseEditor {\n constructor(hotInstance) {\n super(hotInstance);\n\n _this.$data.hotCustomEditorInstance = this;\n }\n\n focus() {\n }\n\n getValue() {\n }\n\n setValue() {\n }\n\n open() {\n }\n\n close() {\n }\n } as any;\n\n // Fill with the rest of the BaseEditorComponent methods\n Object.getOwnPropertyNames(Handsontable.editors.BaseEditor.prototype).forEach(propName => {\n if (propName === 'constructor') {\n return;\n }\n\n customEditorClass.prototype[propName] = function (...args) {\n return _this[propName].call(this, ...args);\n }\n });\n\n return customEditorClass;\n }();\n }\n\n // BaseEditorComponent methods:\n private _fireCallbacks(...args) {\n (Handsontable.editors.BaseEditor.prototype as any)._fireCallbacks.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n beginEditing(...args) {\n return Handsontable.editors.BaseEditor.prototype.beginEditing.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n cancelChanges(...args) {\n return Handsontable.editors.BaseEditor.prototype.cancelChanges.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n checkEditorSection(...args) {\n return Handsontable.editors.BaseEditor.prototype.checkEditorSection.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n close(...args) {\n return Handsontable.editors.BaseEditor.prototype.close.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n discardEditor(...args) {\n return Handsontable.editors.BaseEditor.prototype.discardEditor.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n enableFullEditMode(...args) {\n return Handsontable.editors.BaseEditor.prototype.enableFullEditMode.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n extend(...args) {\n return Handsontable.editors.BaseEditor.prototype.extend.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n finishEditing(...args) {\n return Handsontable.editors.BaseEditor.prototype.finishEditing.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n focus(...args) {\n return Handsontable.editors.BaseEditor.prototype.focus.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.getValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n init(...args) {\n return Handsontable.editors.BaseEditor.prototype.init.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isInFullEditMode(...args) {\n return Handsontable.editors.BaseEditor.prototype.isInFullEditMode.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isOpened(...args) {\n return Handsontable.editors.BaseEditor.prototype.isOpened.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isWaiting(...args) {\n return Handsontable.editors.BaseEditor.prototype.isWaiting.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n open(...args) {\n return Handsontable.editors.BaseEditor.prototype.open.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n prepare(row, col, prop, TD, originalValue, cellProperties) {\n this.$data.hotInstance = cellProperties.instance;\n this.$data.row = row;\n this.$data.col = col;\n this.$data.prop = prop;\n this.$data.TD = TD;\n this.$data.originalValue = originalValue;\n this.$data.cellProperties = cellProperties;\n\n return Handsontable.editors.BaseEditor.prototype.prepare.call(this.$data.hotCustomEditorInstance, row, col, prop, TD, originalValue, cellProperties);\n }\n\n saveValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.saveValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n setValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.setValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n addHook(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).addHook.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n removeHooksByKey(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).removeHooksByKey.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n clearHooks(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).clearHooks.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCell(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCell.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellsZIndex(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellsZIndex.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellsLayerClass(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellsLayerClass.call(this.$data.hotCustomEditorInstance, ...args);\n }\n }\n\n export default BaseEditorComponent;\n export { BaseEditorComponent };\n</script>\n"],"names":["unassignedPropSymbol","Symbol","bulkComponentContainer","propFactory","source","registeredHooks","Handsontable","hooks","getRegistered","propSchema","prop","Object","assign","DefaultSettings","i","length","settings","id","type","String","Math","random","toString","substring","wrapperRendererCacheSize","Number","filterPassedProps","props","filteredProps","columnSettingsProp","propName","hasOwnProperty","prepareSettings","currentSettings","assignedProps","hotSettingsInProps","additionalHotSettingsInProps","newSettings","key","simpleEqual","findVNodeByType","componentSlots","componentVNode","every","slot","index","data","attrs","createVueComponent","vNode","parent","ownerDocument","$el","document","propsData","createElement","body","appendChild","componentContainer","componentOptions","Ctor","$mount","objectA","objectB","JSON","stringify","exports","NEWER","OLDER","LRUMap","limit","entries","size","oldest","this","newest","undefined","_keymap","Map","Entry","value","prototype","_markEntryAsUsed","entry","MAX_VALUE","clear","it","iterator","itv","next","done","e","set","Error","get","shift","has","f","normalizeComponent","template","style","script","scopeId","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","options","hook","render","staticRenderFns","_compiled","functional","_scopeId","context","$vnode","ssrContext","__VUE_SSR_CONTEXT__","call","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","originalRender","h","existing","beforeCreate","concat","component","hotInstance","addHook","__internalEdit","filter","child","name","_typeof","obj","_typeof2","constructor","_defineProperty","defineProperty","enumerable","configurable","writable","_toConsumableArray","arr","Array","isArray","arr2","_arrayWithoutHoles","iter","from","_iterableToArray","TypeError","_nonIterableSpread","reflectionIsSupported","Reflect","defineMetadata","getOwnMetadataKeys","copyReflectionMetadata","to","forwardMetadata","getOwnPropertyNames","forEach","propertyKey","metaKey","metadata","getOwnMetadata","hasProto","__proto__","collectDataFromConstructor","vm","Component","originalInit","_init","_this","keys","push","plainData","$internalHooks","componentFactory","arguments","_componentTag","proto","indexOf","descriptor","getOwnPropertyDescriptor","methods","mixins","computed","decorators","__decorators__","fn","superProto","getPrototypeOf","Super","Vue","Extended","extend","forwardStaticMembers","shouldIgnore","callee","caller","Original","extendedDescriptor","superDescriptor","registerHooks","apply"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vue-handsontable.min.js","sources":["../src/helpers.ts","../src/lib/lru/lru.js","../../../node_modules/vue-runtime-helpers/dist/normalize-component.mjs","../src/HotTable.vue","../src/HotColumn.vue","../../../node_modules/vue-class-component/dist/vue-class-component.esm.js","../src/BaseEditorComponent.vue"],"sourcesContent":["import Vue, { VNode } from 'vue';\nimport Handsontable from 'handsontable/base';\nimport { HotTableProps, VueProps, EditorComponent } from './types';\n\nconst unassignedPropSymbol = Symbol('unassigned');\nlet bulkComponentContainer = null;\n\n/**\n * Message for the warning thrown if the Handsontable instance has been destroyed.\n */\nexport const HOT_DESTROYED_WARNING = 'The Handsontable instance bound to this component was destroyed and cannot be' +\n ' used properly.';\n\n/**\n * Rewrite the settings object passed to the watchers to be a clean array/object prepared to use within Handsontable config.\n *\n * @param {*} observerSettings Watcher object containing the changed data.\n * @returns {Object|Array}\n */\nexport function rewriteSettings(observerSettings): any[] | object {\n const settingsType = Object.prototype.toString.call(observerSettings);\n let settings: any[] | object | null = null;\n let type: { array?: boolean, object?: boolean } = {};\n\n if (settingsType === '[object Array]') {\n settings = [];\n type.array = true;\n\n } else if (settingsType === '[object Object]') {\n settings = {};\n type.object = true;\n }\n\n if (type.array || type.object) {\n for (const p in observerSettings) {\n if (observerSettings.hasOwnProperty(p)) {\n settings[p] = observerSettings[p];\n }\n }\n\n } else {\n settings = observerSettings;\n }\n\n return settings;\n}\n\n/**\n * Private method to ensure the table is not calling `updateSettings` after editing cells.\n * @private\n */\nexport function preventInternalEditWatch(component) {\n if (component.hotInstance) {\n component.hotInstance.addHook('beforeChange', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeCreateRow', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeCreateCol', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeRemoveRow', () => {\n component.__internalEdit = true;\n });\n\n component.hotInstance.addHook('beforeRemoveCol', () => {\n component.__internalEdit = true;\n });\n }\n}\n\n/**\n * Generate an object containing all the available Handsontable properties and plugin hooks.\n *\n * @param {String} source Source for the factory (either 'HotTable' or 'HotColumn').\n * @returns {Object}\n */\nexport function propFactory(source): VueProps<HotTableProps> {\n const registeredHooks: string[] = Handsontable.hooks.getRegistered();\n\n let propSchema: VueProps<HotTableProps> = {};\n Object.assign(propSchema, Handsontable.DefaultSettings);\n\n for (let prop in propSchema) {\n propSchema[prop] = {\n default: unassignedPropSymbol\n };\n }\n\n for (let i = 0; i < registeredHooks.length; i++) {\n propSchema[registeredHooks[i]] = {\n default: unassignedPropSymbol\n };\n }\n\n propSchema.settings = {\n default: unassignedPropSymbol\n };\n\n if (source === 'HotTable') {\n propSchema.id = {\n type: String,\n default: 'hot-' + Math.random().toString(36).substring(5)\n };\n\n propSchema.wrapperRendererCacheSize = {\n type: Number,\n default: 3000\n };\n }\n\n return propSchema;\n}\n\n/**\n * Filter out all of the unassigned props, and return only the one passed to the component.\n *\n * @param {Object} props Object containing all the possible props.\n * @returns {Object} Object containing only used props.\n */\nexport function filterPassedProps(props) {\n const filteredProps: VueProps<HotTableProps> = {};\n const columnSettingsProp = props['settings'];\n\n if (columnSettingsProp !== unassignedPropSymbol) {\n for (let propName in columnSettingsProp) {\n if (columnSettingsProp.hasOwnProperty(propName) && columnSettingsProp[propName] !== unassignedPropSymbol) {\n filteredProps[propName] = columnSettingsProp[propName];\n }\n }\n }\n\n for (let propName in props) {\n if (props.hasOwnProperty(propName) && propName !== 'settings' && props[propName] !== unassignedPropSymbol) {\n filteredProps[propName] = props[propName];\n }\n }\n\n return filteredProps;\n}\n\n/**\n * Prepare the settings object to be used as the settings for Handsontable, based on the props provided to the component.\n *\n * @param {HotTableProps} props The props passed to the component.\n * @param {Handsontable.GridSettings} currentSettings The current Handsontable settings.\n * @returns {Handsontable.GridSettings} An object containing the properties, ready to be used within Handsontable.\n */\nexport function prepareSettings(props: HotTableProps, currentSettings?: Handsontable.GridSettings): Handsontable.GridSettings {\n const assignedProps: VueProps<HotTableProps> = filterPassedProps(props);\n const hotSettingsInProps: {} = props.settings ? props.settings : assignedProps;\n const additionalHotSettingsInProps: Handsontable.GridSettings = props.settings ? assignedProps : null;\n const newSettings = {};\n\n for (const key in hotSettingsInProps) {\n if (\n hotSettingsInProps.hasOwnProperty(key) &&\n hotSettingsInProps[key] !== void 0 &&\n ((currentSettings && key !== 'data') ? !simpleEqual(currentSettings[key], hotSettingsInProps[key]) : true)\n ) {\n newSettings[key] = hotSettingsInProps[key];\n }\n }\n\n for (const key in additionalHotSettingsInProps) {\n if (\n additionalHotSettingsInProps.hasOwnProperty(key) &&\n key !== 'id' &&\n key !== 'settings' &&\n key !== 'wrapperRendererCacheSize' &&\n additionalHotSettingsInProps[key] !== void 0 &&\n ((currentSettings && key !== 'data') ? !simpleEqual(currentSettings[key], additionalHotSettingsInProps[key]) : true)\n ) {\n newSettings[key] = additionalHotSettingsInProps[key];\n }\n }\n\n return newSettings;\n}\n\n/**\n * Get the VNode element with the provided type attribute from the component slots.\n *\n * @param {Array} componentSlots Array of slots from a component.\n * @param {String} type Type of the child component. Either `hot-renderer` or `hot-editor`.\n * @returns {Object|null} The VNode of the child component (or `null` when nothing's found).\n */\nexport function findVNodeByType(componentSlots: VNode[], type: string): VNode {\n let componentVNode: VNode = null;\n\n componentSlots.every((slot, index) => {\n if (slot.data && slot.data.attrs && slot.data.attrs[type] !== void 0) {\n componentVNode = slot;\n return false;\n }\n\n return true;\n });\n\n return componentVNode;\n}\n\n/**\n * Get all `hot-column` component instances from the provided children array.\n *\n * @param {Array} children Array of children from a component.\n * @returns {Array} Array of `hot-column` instances.\n */\nexport function getHotColumnComponents(children) {\n return children.filter((child) => child.$options.name === 'HotColumn');\n}\n\n/**\n * Create an instance of the Vue Component based on the provided VNode.\n *\n * @param {Object} vNode VNode element to be turned into a component instance.\n * @param {Object} parent Instance of the component to be marked as a parent of the newly created instance.\n * @param {Object} props Props to be passed to the new instance.\n * @param {Object} data Data to be passed to the new instance.\n */\nexport function createVueComponent(vNode: VNode, parent: Vue, props: object, data: object): EditorComponent {\n const ownerDocument = parent.$el ? parent.$el.ownerDocument : document;\n const settings: object = {\n propsData: props,\n parent,\n data\n };\n\n if (!bulkComponentContainer) {\n bulkComponentContainer = ownerDocument.createElement('DIV');\n bulkComponentContainer.id = 'vueHotComponents';\n\n ownerDocument.body.appendChild(bulkComponentContainer);\n }\n\n const componentContainer = ownerDocument.createElement('DIV');\n bulkComponentContainer.appendChild(componentContainer);\n\n return (new (vNode.componentOptions as any).Ctor(settings)).$mount(componentContainer);\n}\n\n/**\n * Compare two objects using `JSON.stringify`.\n * *Note: * As it's using the stringify function to compare objects, the property order in both objects is\n * important. It will return `false` for the same objects, if they're defined in a different order.\n *\n * @param {object} objectA First object to compare.\n * @param {object} objectB Second object to compare.\n * @returns {boolean} `true` if they're the same, `false` otherwise.\n */\nfunction simpleEqual(objectA, objectB) {\n return JSON.stringify(objectA) === JSON.stringify(objectB);\n}\n","/**\n * A doubly linked list-based Least Recently Used (LRU) cache. Will keep most\n * recently used items while discarding least recently used items when its limit\n * is reached.\n *\n * Licensed under MIT. Copyright (c) 2010 Rasmus Andersson <http://hunch.se/>\n * See README.md for details.\n *\n * Illustration of the design:\n *\n * entry entry entry entry\n * ______ ______ ______ ______\n * | head |.newer => | |.newer => | |.newer => | tail |\n * | A | | B | | C | | D |\n * |______| <= older.|______| <= older.|______| <= older.|______|\n *\n * removed <-- <-- <-- <-- <-- <-- <-- <-- <-- <-- <-- added\n */\n(function(g,f){\n const e = typeof exports == 'object' ? exports : typeof g == 'object' ? g : {};\n f(e);\n if (typeof define == 'function' && define.amd) { define('lru', e); }\n})(this, function(exports) {\n\n const NEWER = Symbol('newer');\n const OLDER = Symbol('older');\n\n function LRUMap(limit, entries) {\n if (typeof limit !== 'number') {\n // called as (entries)\n entries = limit;\n limit = 0;\n }\n\n this.size = 0;\n this.limit = limit;\n this.oldest = this.newest = undefined;\n this._keymap = new Map();\n\n if (entries) {\n this.assign(entries);\n if (limit < 1) {\n this.limit = this.size;\n }\n }\n }\n\n exports.LRUMap = LRUMap;\n\n function Entry(key, value) {\n this.key = key;\n this.value = value;\n this[NEWER] = undefined;\n this[OLDER] = undefined;\n }\n\n\n LRUMap.prototype._markEntryAsUsed = function(entry) {\n if (entry === this.newest) {\n // Already the most recenlty used entry, so no need to update the list\n return;\n }\n // HEAD--------------TAIL\n // <.older .newer>\n // <--- add direction --\n // A B C <D> E\n if (entry[NEWER]) {\n if (entry === this.oldest) {\n this.oldest = entry[NEWER];\n }\n entry[NEWER][OLDER] = entry[OLDER]; // C <-- E.\n }\n if (entry[OLDER]) {\n entry[OLDER][NEWER] = entry[NEWER]; // C. --> E\n }\n entry[NEWER] = undefined; // D --x\n entry[OLDER] = this.newest; // D. --> E\n if (this.newest) {\n this.newest[NEWER] = entry; // E. <-- D\n }\n this.newest = entry;\n };\n\n LRUMap.prototype.assign = function(entries) {\n let entry, limit = this.limit || Number.MAX_VALUE;\n this._keymap.clear();\n let it = entries[Symbol.iterator]();\n for (let itv = it.next(); !itv.done; itv = it.next()) {\n let e = new Entry(itv.value[0], itv.value[1]);\n this._keymap.set(e.key, e);\n if (!entry) {\n this.oldest = e;\n } else {\n entry[NEWER] = e;\n e[OLDER] = entry;\n }\n entry = e;\n if (limit-- == 0) {\n throw new Error('overflow');\n }\n }\n this.newest = entry;\n this.size = this._keymap.size;\n };\n\n LRUMap.prototype.get = function(key) {\n // First, find our cache entry\n var entry = this._keymap.get(key);\n if (!entry) return; // Not cached. Sorry.\n // As <key> was found in the cache, register it as being requested recently\n this._markEntryAsUsed(entry);\n return entry.value;\n };\n\n LRUMap.prototype.set = function(key, value) {\n var entry = this._keymap.get(key);\n\n if (entry) {\n // update existing\n entry.value = value;\n this._markEntryAsUsed(entry);\n return this;\n }\n\n // new entry\n this._keymap.set(key, (entry = new Entry(key, value)));\n\n if (this.newest) {\n // link previous tail to the new tail (entry)\n this.newest[NEWER] = entry;\n entry[OLDER] = this.newest;\n } else {\n // we're first in -- yay\n this.oldest = entry;\n }\n\n // add new entry to the end of the linked list -- it's now the freshest entry.\n this.newest = entry;\n ++this.size;\n if (this.size > this.limit) {\n // we hit the limit -- remove the head\n this.shift();\n }\n\n return this;\n };\n\n LRUMap.prototype.shift = function() {\n // todo: handle special case when limit == 1\n var entry = this.oldest;\n if (entry) {\n if (this.oldest[NEWER]) {\n // advance the list\n this.oldest = this.oldest[NEWER];\n this.oldest[OLDER] = undefined;\n } else {\n // the cache is exhausted\n this.oldest = undefined;\n this.newest = undefined;\n }\n // Remove last strong reference to <entry> and remove links from the purged\n // entry being returned:\n entry[NEWER] = entry[OLDER] = undefined;\n this._keymap.delete(entry.key);\n --this.size;\n return [entry.key, entry.value];\n }\n };\n\n// ----------------------------------------------------------------------------\n// Following code is optional and can be removed without breaking the core\n// functionality.\n LRUMap.prototype.has = function(key) {\n return this._keymap.has(key);\n };\n});\n","function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\nexport default normalizeComponent;\n//# sourceMappingURL=normalize-component.mjs.map\n","<template>\n <div :id=\"id\">\n <slot></slot>\n </div>\n</template>\n\n<script lang=\"ts\">\n import {\n propFactory,\n preventInternalEditWatch,\n prepareSettings,\n createVueComponent,\n findVNodeByType,\n getHotColumnComponents,\n HOT_DESTROYED_WARNING\n } from './helpers';\n import Vue, { VNode } from 'vue';\n import {\n HotTableData,\n HotTableMethods,\n HotTableProps,\n HotTableComponent,\n EditorComponent\n } from './types';\n import * as packageJson from '../package.json';\n import { LRUMap } from './lib/lru/lru';\n import Handsontable from 'handsontable/base';\n\n const HotTable: HotTableComponent<Vue, HotTableData, HotTableMethods, {}, HotTableProps> = {\n name: 'HotTable',\n props: propFactory('HotTable'),\n watch: {\n mergedHotSettings: function (value) {\n if (!this.hotInstance || value === void 0) {\n return;\n }\n\n if (value.data) {\n if (\n this.hotInstance.isColumnModificationAllowed() ||\n (\n !this.hotInstance.isColumnModificationAllowed() &&\n this.hotInstance.countSourceCols() === this.miscCache.currentSourceColumns\n )\n ) {\n // If the dataset dimensions change, update the index mappers.\n this.matchHotMappersSize();\n\n // Data is automatically synchronized by reference.\n delete value.data;\n }\n }\n\n // If there are another options changed, update the HOT settings, render the table otherwise.\n if (Object.keys(value).length) {\n this.hotInstance.updateSettings(value);\n\n } else {\n this.hotInstance.render();\n }\n\n this.miscCache.currentSourceColumns = this.hotInstance.countSourceCols();\n }\n },\n data: function () {\n const thisComponent: any = this;\n const rendererCache = new LRUMap(this.wrapperRendererCacheSize);\n\n // Make the LRU cache destroy each removed component\n rendererCache.shift = function () {\n let entry = LRUMap.prototype.shift.call(this);\n entry[1].component.$destroy();\n\n return entry;\n };\n\n return {\n __internalEdit: false,\n miscCache: {\n currentSourceColumns: null\n },\n __hotInstance: null,\n columnSettings: null,\n rendererCache: rendererCache,\n editorCache: new Map(),\n get hotInstance() {\n if (!thisComponent.__hotInstance || (thisComponent.__hotInstance && !thisComponent.__hotInstance.isDestroyed)) {\n\n // Will return the Handsontable instance or `null` if it's not yet been created.\n return thisComponent.__hotInstance;\n\n } else {\n console.warn(HOT_DESTROYED_WARNING);\n\n return null;\n }\n },\n set hotInstance(hotInstance) {\n thisComponent.__hotInstance = hotInstance;\n }\n };\n },\n computed: {\n mergedHotSettings: function (): Handsontable.GridSettings {\n return prepareSettings(this.$props, this.hotInstance ? this.hotInstance.getSettings() : void 0);\n }\n },\n methods: {\n /**\n * Initialize Handsontable.\n */\n hotInit: function (): void {\n const globalRendererVNode = this.getGlobalRendererVNode();\n const globalEditorVNode = this.getGlobalEditorVNode();\n\n const newSettings: Handsontable.GridSettings = prepareSettings(this.$props);\n\n newSettings.columns = this.columnSettings ? this.columnSettings : newSettings.columns;\n\n if (globalEditorVNode) {\n newSettings.editor = this.getEditorClass(globalEditorVNode, this);\n\n globalEditorVNode.child.$destroy();\n }\n\n if (globalRendererVNode) {\n newSettings.renderer = this.getRendererWrapper(globalRendererVNode, this);\n\n globalRendererVNode.child.$destroy();\n }\n\n this.hotInstance = new Handsontable.Core(this.$el, newSettings);\n this.hotInstance.init();\n\n preventInternalEditWatch(this);\n\n this.miscCache.currentSourceColumns = this.hotInstance.countSourceCols();\n },\n matchHotMappersSize: function(): void {\n if (!this.hotInstance) {\n return;\n }\n\n const data: Handsontable.CellValue[][] = this.hotInstance.getSourceData();\n const rowsToRemove: number[] = [];\n const columnsToRemove: number[] = [];\n const indexMapperRowCount = this.hotInstance.rowIndexMapper.getNumberOfIndexes();\n const isColumnModificationAllowed = this.hotInstance.isColumnModificationAllowed();\n let indexMapperColumnCount = 0;\n\n if (data && data.length !== indexMapperRowCount) {\n if (data.length < indexMapperRowCount) {\n for (let r = data.length; r < indexMapperRowCount; r++) {\n rowsToRemove.push(r);\n }\n }\n }\n\n if (isColumnModificationAllowed) {\n indexMapperColumnCount = this.hotInstance.columnIndexMapper.getNumberOfIndexes();\n\n if (data && data[0] && data[0]?.length !==\n indexMapperColumnCount) {\n if (data[0].length < indexMapperColumnCount) {\n for (let c = data[0].length; c < indexMapperColumnCount; c++) {\n columnsToRemove.push(c);\n }\n }\n }\n }\n\n this.hotInstance.batch(() => {\n if (rowsToRemove.length > 0) {\n this.hotInstance.rowIndexMapper.removeIndexes(rowsToRemove);\n\n } else {\n this.hotInstance.rowIndexMapper.insertIndexes(indexMapperRowCount - 1, data.length - indexMapperRowCount);\n }\n\n if (isColumnModificationAllowed && data.length !== 0) {\n if (columnsToRemove.length > 0) {\n this.hotInstance.columnIndexMapper.removeIndexes(columnsToRemove);\n\n } else {\n this.hotInstance.columnIndexMapper.insertIndexes(indexMapperColumnCount - 1, data[0].length - indexMapperColumnCount);\n }\n }\n });\n },\n getGlobalRendererVNode: function (): VNode | null {\n const hotTableSlots: VNode[] = this.$slots.default || [];\n return findVNodeByType(hotTableSlots, 'hot-renderer');\n },\n getGlobalEditorVNode: function (): VNode | null {\n const hotTableSlots: VNode[] = this.$slots.default || [];\n return findVNodeByType(hotTableSlots, 'hot-editor');\n },\n /**\n * Get settings for the columns provided in the `hot-column` components.\n */\n getColumnSettings: function (): HotTableProps[] | void {\n const hotColumns = getHotColumnComponents(this.$children);\n let usesRendererComponent = false;\n let columnSettings: HotTableProps[] = hotColumns.map((elem) => {\n if (elem.usesRendererComponent) {\n usesRendererComponent = true;\n }\n\n return {...elem.columnSettings};\n });\n\n if (usesRendererComponent &&\n (this.settings && (this.settings.autoColumnSize !== false || this.settings.autoRowSize)) &&\n (this.autoColumnSize !== false || this.autoRowSize)) {\n console.warn('Your `hot-table` configuration includes both `hot-column` and `autoRowSize`/`autoColumnSize`, which are not compatible with each other ' +\n 'in this version of `@handsontable/vue`. Disable `autoRowSize` and `autoColumnSize` to prevent row and column misalignment.')\n }\n\n return columnSettings.length ? columnSettings : void 0;\n },\n /**\n * Create the wrapper function for the provided renderer child component.\n *\n * @param {Object} vNode VNode of the renderer child component.\n * @param {Boolean} containerComponent Instance of the component, which will be treated as a parent for the newly created renderer component.\n * @returns {Function} The wrapper function used as the renderer.\n */\n getRendererWrapper: function (vNode: VNode, containerComponent: Vue): (...args) => HTMLElement {\n const $vm = this;\n\n return function (instance, TD, row, col, prop, value, cellProperties) {\n // Prevent caching and rendering of the GhostTable table cells\n if (TD && !TD.getAttribute('ghost-table')) {\n const rendererCache = $vm.rendererCache;\n const rendererArgs: object = {\n hotInstance: instance,\n TD,\n row,\n col,\n prop,\n value,\n cellProperties,\n isRenderer: true\n };\n\n if (rendererCache && !rendererCache.has(`${row}-${col}`)) {\n const mountedComponent: Vue = createVueComponent(vNode, containerComponent, vNode.componentOptions.propsData, rendererArgs);\n\n rendererCache.set(`${row}-${col}`, {\n component: mountedComponent,\n lastUsedTD: null\n });\n }\n\n const cachedEntry = rendererCache.get(`${row}-${col}`);\n const cachedComponent: Vue = cachedEntry.component;\n const cachedTD: HTMLTableCellElement = cachedEntry.lastUsedTD;\n\n Object.assign(cachedComponent.$data, rendererArgs);\n\n if (!cachedComponent.$el.parentElement || cachedTD !== TD) {\n // Clear the previous contents of a TD\n while (TD.firstChild) {\n TD.removeChild(TD.firstChild);\n }\n\n TD.appendChild(cachedComponent.$el);\n\n cachedEntry.lastUsedTD = TD;\n }\n }\n\n return TD;\n };\n },\n /**\n * Create a fresh class to be used as an editor, based on the editor component provided.\n *\n * @param {Object} vNode VNode for the editor child component.\n * @param {Boolean} containerComponent Instance of the component, which will be treated as a parent for the newly created editor component.\n * @returns {Class} The class used as an editor in Handsontable.\n */\n getEditorClass: function (vNode: VNode, containerComponent: Vue): typeof Handsontable.editors.BaseEditor {\n const componentKey: string = vNode.key ? vNode.key.toString() : null;\n const componentName: string = (vNode.componentOptions.Ctor as any).options.name;\n const componentCacheKey = componentKey ? `${componentName}:${componentKey}` : componentName;\n\n const editorCache = this.editorCache;\n let mountedComponent: EditorComponent = null;\n\n if (!editorCache.has(componentCacheKey)) {\n mountedComponent = createVueComponent(vNode, containerComponent, vNode.componentOptions.propsData, {isEditor: true});\n\n editorCache.set(componentCacheKey, mountedComponent);\n\n } else {\n mountedComponent = editorCache.get(componentCacheKey);\n }\n\n return mountedComponent.$data.hotCustomEditorClass;\n }\n },\n mounted: function () {\n this.columnSettings = this.getColumnSettings();\n\n return this.hotInit();\n },\n beforeDestroy: function () {\n if (this.hotInstance) {\n this.hotInstance.destroy();\n }\n },\n version: (packageJson as any).version\n };\n\n export default HotTable;\n export { HotTable };\n</script>\n","<script lang=\"ts\">\n import Vue, { VNode } from 'vue';\n import { ThisTypedComponentOptionsWithRecordProps } from 'vue/types/options';\n import {\n propFactory,\n findVNodeByType,\n filterPassedProps\n } from './helpers';\n import {\n HotTableProps,\n HotColumnMethods,\n } from './types';\n\n const HotColumn: ThisTypedComponentOptionsWithRecordProps<Vue, {}, HotColumnMethods, {}, HotTableProps> = {\n name: 'HotColumn',\n props: propFactory('HotColumn'),\n methods: {\n /**\n * Create the column settings based on the data provided to the `hot-column` component and it's child components.\n */\n createColumnSettings: function (): void {\n const hotColumnSlots: VNode[] | any[] = this.$slots.default || [];\n const rendererVNode: VNode | null = findVNodeByType(hotColumnSlots, 'hot-renderer');\n const editorVNode: VNode | null = findVNodeByType(hotColumnSlots, 'hot-editor');\n const assignedProps = filterPassedProps(this.$props);\n\n if (rendererVNode && this.usesRendererComponent === void 0) {\n this.usesRendererComponent = true;\n }\n\n this.columnSettings = {...assignedProps};\n\n if (rendererVNode !== null) {\n this.columnSettings.renderer = this.$parent.getRendererWrapper(rendererVNode, this);\n\n } else if (assignedProps.renderer) {\n this.columnSettings.renderer = assignedProps.renderer;\n }\n\n if (editorVNode !== null) {\n this.columnSettings.editor = this.$parent.getEditorClass(editorVNode, this);\n\n } else if (assignedProps.editor) {\n this.columnSettings.editor = assignedProps.editor;\n }\n }\n },\n mounted: function () {\n this.createColumnSettings();\n },\n render: function () {\n return null;\n }\n };\n\n export default HotColumn;\n export { HotColumn };\n</script>\n","/**\n * vue-class-component v7.2.6\n * (c) 2015-present Evan You\n * @license MIT\n */\nimport Vue from 'vue';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\n// The rational behind the verbose Reflect-feature check below is the fact that there are polyfills\n// which add an implementation for Reflect.defineMetadata but not for Reflect.getOwnMetadataKeys.\n// Without this check consumers will encounter hard to track down runtime errors.\nfunction reflectionIsSupported() {\n return typeof Reflect !== 'undefined' && Reflect.defineMetadata && Reflect.getOwnMetadataKeys;\n}\nfunction copyReflectionMetadata(to, from) {\n forwardMetadata(to, from);\n Object.getOwnPropertyNames(from.prototype).forEach(function (key) {\n forwardMetadata(to.prototype, from.prototype, key);\n });\n Object.getOwnPropertyNames(from).forEach(function (key) {\n forwardMetadata(to, from, key);\n });\n}\n\nfunction forwardMetadata(to, from, propertyKey) {\n var metaKeys = propertyKey ? Reflect.getOwnMetadataKeys(from, propertyKey) : Reflect.getOwnMetadataKeys(from);\n metaKeys.forEach(function (metaKey) {\n var metadata = propertyKey ? Reflect.getOwnMetadata(metaKey, from, propertyKey) : Reflect.getOwnMetadata(metaKey, from);\n\n if (propertyKey) {\n Reflect.defineMetadata(metaKey, metadata, to, propertyKey);\n } else {\n Reflect.defineMetadata(metaKey, metadata, to);\n }\n });\n}\n\nvar fakeArray = {\n __proto__: []\n};\nvar hasProto = fakeArray instanceof Array;\nfunction createDecorator(factory) {\n return function (target, key, index) {\n var Ctor = typeof target === 'function' ? target : target.constructor;\n\n if (!Ctor.__decorators__) {\n Ctor.__decorators__ = [];\n }\n\n if (typeof index !== 'number') {\n index = undefined;\n }\n\n Ctor.__decorators__.push(function (options) {\n return factory(options, key, index);\n });\n };\n}\nfunction mixins() {\n for (var _len = arguments.length, Ctors = new Array(_len), _key = 0; _key < _len; _key++) {\n Ctors[_key] = arguments[_key];\n }\n\n return Vue.extend({\n mixins: Ctors\n });\n}\nfunction isPrimitive(value) {\n var type = _typeof(value);\n\n return value == null || type !== 'object' && type !== 'function';\n}\nfunction warn(message) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-class-component] ' + message);\n }\n}\n\nfunction collectDataFromConstructor(vm, Component) {\n // override _init to prevent to init as Vue instance\n var originalInit = Component.prototype._init;\n\n Component.prototype._init = function () {\n var _this = this;\n\n // proxy to actual vm\n var keys = Object.getOwnPropertyNames(vm); // 2.2.0 compat (props are no longer exposed as self properties)\n\n if (vm.$options.props) {\n for (var key in vm.$options.props) {\n if (!vm.hasOwnProperty(key)) {\n keys.push(key);\n }\n }\n }\n\n keys.forEach(function (key) {\n Object.defineProperty(_this, key, {\n get: function get() {\n return vm[key];\n },\n set: function set(value) {\n vm[key] = value;\n },\n configurable: true\n });\n });\n }; // should be acquired class property values\n\n\n var data = new Component(); // restore original _init to avoid memory leak (#209)\n\n Component.prototype._init = originalInit; // create plain data object\n\n var plainData = {};\n Object.keys(data).forEach(function (key) {\n if (data[key] !== undefined) {\n plainData[key] = data[key];\n }\n });\n\n if (process.env.NODE_ENV !== 'production') {\n if (!(Component.prototype instanceof Vue) && Object.keys(plainData).length > 0) {\n warn('Component class must inherit Vue or its descendant class ' + 'when class property is used.');\n }\n }\n\n return plainData;\n}\n\nvar $internalHooks = ['data', 'beforeCreate', 'created', 'beforeMount', 'mounted', 'beforeDestroy', 'destroyed', 'beforeUpdate', 'updated', 'activated', 'deactivated', 'render', 'errorCaptured', 'serverPrefetch' // 2.6\n];\nfunction componentFactory(Component) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n options.name = options.name || Component._componentTag || Component.name; // prototype props.\n\n var proto = Component.prototype;\n Object.getOwnPropertyNames(proto).forEach(function (key) {\n if (key === 'constructor') {\n return;\n } // hooks\n\n\n if ($internalHooks.indexOf(key) > -1) {\n options[key] = proto[key];\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(proto, key);\n\n if (descriptor.value !== void 0) {\n // methods\n if (typeof descriptor.value === 'function') {\n (options.methods || (options.methods = {}))[key] = descriptor.value;\n } else {\n // typescript decorated data\n (options.mixins || (options.mixins = [])).push({\n data: function data() {\n return _defineProperty({}, key, descriptor.value);\n }\n });\n }\n } else if (descriptor.get || descriptor.set) {\n // computed properties\n (options.computed || (options.computed = {}))[key] = {\n get: descriptor.get,\n set: descriptor.set\n };\n }\n });\n (options.mixins || (options.mixins = [])).push({\n data: function data() {\n return collectDataFromConstructor(this, Component);\n }\n }); // decorate options\n\n var decorators = Component.__decorators__;\n\n if (decorators) {\n decorators.forEach(function (fn) {\n return fn(options);\n });\n delete Component.__decorators__;\n } // find super\n\n\n var superProto = Object.getPrototypeOf(Component.prototype);\n var Super = superProto instanceof Vue ? superProto.constructor : Vue;\n var Extended = Super.extend(options);\n forwardStaticMembers(Extended, Component, Super);\n\n if (reflectionIsSupported()) {\n copyReflectionMetadata(Extended, Component);\n }\n\n return Extended;\n}\nvar reservedPropertyNames = [// Unique id\n'cid', // Super Vue constructor\n'super', // Component options that will be used by the component\n'options', 'superOptions', 'extendOptions', 'sealedOptions', // Private assets\n'component', 'directive', 'filter'];\nvar shouldIgnore = {\n prototype: true,\n arguments: true,\n callee: true,\n caller: true\n};\n\nfunction forwardStaticMembers(Extended, Original, Super) {\n // We have to use getOwnPropertyNames since Babel registers methods as non-enumerable\n Object.getOwnPropertyNames(Original).forEach(function (key) {\n // Skip the properties that should not be overwritten\n if (shouldIgnore[key]) {\n return;\n } // Some browsers does not allow reconfigure built-in properties\n\n\n var extendedDescriptor = Object.getOwnPropertyDescriptor(Extended, key);\n\n if (extendedDescriptor && !extendedDescriptor.configurable) {\n return;\n }\n\n var descriptor = Object.getOwnPropertyDescriptor(Original, key); // If the user agent does not support `__proto__` or its family (IE <= 10),\n // the sub class properties may be inherited properties from the super class in TypeScript.\n // We need to exclude such properties to prevent to overwrite\n // the component options object which stored on the extended constructor (See #192).\n // If the value is a referenced value (object or function),\n // we can check equality of them and exclude it if they have the same reference.\n // If it is a primitive value, it will be forwarded for safety.\n\n if (!hasProto) {\n // Only `cid` is explicitly exluded from property forwarding\n // because we cannot detect whether it is a inherited property or not\n // on the no `__proto__` environment even though the property is reserved.\n if (key === 'cid') {\n return;\n }\n\n var superDescriptor = Object.getOwnPropertyDescriptor(Super, key);\n\n if (!isPrimitive(descriptor.value) && superDescriptor && superDescriptor.value === descriptor.value) {\n return;\n }\n } // Warn if the users manually declare reserved properties\n\n\n if (process.env.NODE_ENV !== 'production' && reservedPropertyNames.indexOf(key) >= 0) {\n warn(\"Static property name '\".concat(key, \"' declared on class '\").concat(Original.name, \"' \") + 'conflicts with reserved property name of Vue internal. ' + 'It may cause unexpected behavior of the component. Consider renaming the property.');\n }\n\n Object.defineProperty(Extended, key, descriptor);\n });\n}\n\nfunction Component(options) {\n if (typeof options === 'function') {\n return componentFactory(options);\n }\n\n return function (Component) {\n return componentFactory(Component, options);\n };\n}\n\nComponent.registerHooks = function registerHooks(keys) {\n $internalHooks.push.apply($internalHooks, _toConsumableArray(keys));\n};\n\nexport default Component;\nexport { createDecorator, mixins };\n","<script lang=\"ts\">\n import Vue from 'vue';\n import Handsontable from 'handsontable/base';\n import Component from 'vue-class-component';\n\n @Component({})\n class BaseEditorComponent extends Vue implements Handsontable.editors.BaseEditor {\n name = 'BaseEditorComponent';\n instance = null;\n row = null;\n col = null;\n prop = null;\n TD = null;\n originalValue = null;\n cellProperties = null;\n state = null;\n hot = null;\n\n mounted() {\n const _this = this;\n\n this.$data.hotCustomEditorClass = function () {\n const customEditorClass = class CustomEditor extends Handsontable.editors.BaseEditor implements Handsontable.editors.BaseEditor {\n constructor(hotInstance) {\n super(hotInstance);\n\n _this.$data.hotCustomEditorInstance = this;\n }\n\n focus() {\n }\n\n getValue() {\n }\n\n setValue() {\n }\n\n open() {\n }\n\n close() {\n }\n } as any;\n\n // Fill with the rest of the BaseEditorComponent methods\n Object.getOwnPropertyNames(Handsontable.editors.BaseEditor.prototype).forEach(propName => {\n if (propName === 'constructor') {\n return;\n }\n\n customEditorClass.prototype[propName] = function (...args) {\n return _this[propName].call(this, ...args);\n }\n });\n\n return customEditorClass;\n }();\n }\n\n // BaseEditorComponent methods:\n private _fireCallbacks(...args) {\n (Handsontable.editors.BaseEditor.prototype as any)._fireCallbacks.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n beginEditing(...args) {\n return Handsontable.editors.BaseEditor.prototype.beginEditing.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n cancelChanges(...args) {\n return Handsontable.editors.BaseEditor.prototype.cancelChanges.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n checkEditorSection(...args) {\n return Handsontable.editors.BaseEditor.prototype.checkEditorSection.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n close(...args) {\n return Handsontable.editors.BaseEditor.prototype.close.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n discardEditor(...args) {\n return Handsontable.editors.BaseEditor.prototype.discardEditor.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n enableFullEditMode(...args) {\n return Handsontable.editors.BaseEditor.prototype.enableFullEditMode.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n extend(...args) {\n return Handsontable.editors.BaseEditor.prototype.extend.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n finishEditing(...args) {\n return Handsontable.editors.BaseEditor.prototype.finishEditing.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n focus(...args) {\n return Handsontable.editors.BaseEditor.prototype.focus.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.getValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n init(...args) {\n return Handsontable.editors.BaseEditor.prototype.init.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isInFullEditMode(...args) {\n return Handsontable.editors.BaseEditor.prototype.isInFullEditMode.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isOpened(...args) {\n return Handsontable.editors.BaseEditor.prototype.isOpened.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n isWaiting(...args) {\n return Handsontable.editors.BaseEditor.prototype.isWaiting.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n open(...args) {\n return Handsontable.editors.BaseEditor.prototype.open.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n prepare(row, col, prop, TD, originalValue, cellProperties) {\n this.$data.hotInstance = cellProperties.instance;\n this.$data.row = row;\n this.$data.col = col;\n this.$data.prop = prop;\n this.$data.TD = TD;\n this.$data.originalValue = originalValue;\n this.$data.cellProperties = cellProperties;\n\n return Handsontable.editors.BaseEditor.prototype.prepare.call(this.$data.hotCustomEditorInstance, row, col, prop, TD, originalValue, cellProperties);\n }\n\n saveValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.saveValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n setValue(...args) {\n return Handsontable.editors.BaseEditor.prototype.setValue.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n addHook(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).addHook.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n removeHooksByKey(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).removeHooksByKey.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n clearHooks(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).clearHooks.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCell(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCell.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellRect(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellRect.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellsZIndex(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellsZIndex.call(this.$data.hotCustomEditorInstance, ...args);\n }\n\n getEditedCellsLayerClass(...args) {\n return (Handsontable.editors.BaseEditor.prototype as any).getEditedCellsLayerClass.call(this.$data.hotCustomEditorInstance, ...args);\n }\n }\n\n export default BaseEditorComponent;\n export { BaseEditorComponent };\n</script>\n"],"names":["unassignedPropSymbol","Symbol","bulkComponentContainer","propFactory","source","registeredHooks","Handsontable","hooks","getRegistered","propSchema","prop","Object","assign","DefaultSettings","default","i","length","settings","id","type","String","Math","random","toString","substring","wrapperRendererCacheSize","Number","filterPassedProps","props","filteredProps","columnSettingsProp","propName","hasOwnProperty","prepareSettings","currentSettings","assignedProps","hotSettingsInProps","additionalHotSettingsInProps","newSettings","key","simpleEqual","findVNodeByType","componentSlots","componentVNode","every","slot","index","data","attrs","createVueComponent","vNode","parent","ownerDocument","$el","document","propsData","createElement","body","appendChild","componentContainer","componentOptions","Ctor","$mount","objectA","objectB","JSON","stringify","exports","NEWER","OLDER","LRUMap","limit","entries","this","size","oldest","newest","undefined","_keymap","Map","Entry","value","prototype","_markEntryAsUsed","entry","MAX_VALUE","clear","it","iterator","itv","next","done","e","set","Error","get","shift","has","f","normalizeComponent","template","style","script","scopeId","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","options","hook","render","staticRenderFns","_compiled","functional","_scopeId","context","$vnode","ssrContext","__VUE_SSR_CONTEXT__","call","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","originalRender","h","existing","beforeCreate","concat","name","watch","mergedHotSettings","hotInstance","isColumnModificationAllowed","countSourceCols","miscCache","currentSourceColumns","matchHotMappersSize","keys","updateSettings","thisComponent","rendererCache","component","$destroy","__internalEdit","__hotInstance","columnSettings","editorCache","isDestroyed","console","warn","computed","$props","getSettings","methods","hotInit","globalRendererVNode","getGlobalRendererVNode","globalEditorVNode","getGlobalEditorVNode","columns","editor","getEditorClass","child","renderer","getRendererWrapper","Core","init","addHook","_this","_data$","getSourceData","rowsToRemove","columnsToRemove","indexMapperRowCount","rowIndexMapper","getNumberOfIndexes","indexMapperColumnCount","r","push","columnIndexMapper","c","batch","removeIndexes","insertIndexes","$slots","getColumnSettings","hotColumns","$children","filter","usesRendererComponent","map","elem","autoColumnSize","autoRowSize","containerComponent","$vm","instance","TD","row","col","cellProperties","getAttribute","rendererArgs","isRenderer","mountedComponent","lastUsedTD","cachedEntry","cachedComponent","cachedTD","$data","parentElement","firstChild","removeChild","componentKey","componentName","componentCacheKey","isEditor","hotCustomEditorClass","mounted","beforeDestroy","destroy","version","createColumnSettings","hotColumnSlots","rendererVNode","editorVNode","$parent","_typeof","obj","_typeof2","constructor","_defineProperty","defineProperty","enumerable","configurable","writable","_toConsumableArray","arr","Array","isArray","arr2","_arrayWithoutHoles","iter","from","_iterableToArray","TypeError","_nonIterableSpread","reflectionIsSupported","Reflect","defineMetadata","getOwnMetadataKeys","copyReflectionMetadata","to","forwardMetadata","getOwnPropertyNames","forEach","propertyKey","metaKey","metadata","getOwnMetadata","hasProto","__proto__","collectDataFromConstructor","vm","Component","originalInit","_init","plainData","$internalHooks","componentFactory","arguments","_componentTag","proto","indexOf","descriptor","getOwnPropertyDescriptor","mixins","decorators","__decorators__","fn","superProto","getPrototypeOf","Super","Vue","Extended","extend","forwardStaticMembers","shouldIgnore","callee","caller","Original","extendedDescriptor","superDescriptor","registerHooks","apply","BaseEditorComponent","_Vue","_inherits","_super","_createSuper","_this2","_classCallCheck","originalValue","state","hot","_createClass","customEditorClass","_Handsontable$editors","CustomEditor","_super2","_this3","hotCustomEditorInstance","_assertThisInitialized","editors","BaseEditor","_this$propName","_len","args","_key","_Handsontable$editors2","_len2","_key2","_fireCallbacks","_Handsontable$editors3","_len3","_key3","beginEditing","_Handsontable$editors4","_len4","_key4","cancelChanges","_Handsontable$editors5","_len5","_key5","checkEditorSection","_Handsontable$editors6","_len6","_key6","close","_Handsontable$editors7","_len7","_key7","discardEditor","_Handsontable$editors8","_len8","_key8","enableFullEditMode","_Handsontable$editors9","_len9","_key9","_Handsontable$editors10","_len10","_key10","finishEditing","_Handsontable$editors11","_len11","_key11","focus","_Handsontable$editors12","_len12","_key12","getValue","_Handsontable$editors13","_len13","_key13","_Handsontable$editors14","_len14","_key14","isInFullEditMode","_Handsontable$editors15","_len15","_key15","isOpened","_Handsontable$editors16","_len16","_key16","isWaiting","_Handsontable$editors17","_len17","_key17","open","prepare","_Handsontable$editors18","_len18","_key18","saveValue","_Handsontable$editors19","_len19","_key19","setValue","_Handsontable$editors20","_len20","_key20","_Handsontable$editors21","_len21","_key21","removeHooksByKey","_Handsontable$editors22","_len22","_key22","clearHooks","_Handsontable$editors23","_len23","_key23","getEditedCell","_Handsontable$editors24","_len24","_key24","getEditedCellRect","_Handsontable$editors25","_len25","_key25","getEditedCellsZIndex","_Handsontable$editors26","_len26","_key26","getEditedCellsLayerClass","__decorate"],"mappings":"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"}
|
package/es/vue-handsontable.js
CHANGED
|
@@ -96,18 +96,17 @@ function _inherits(subClass, superClass) {
|
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
function _getPrototypeOf(o) {
|
|
99
|
-
_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
|
|
99
|
+
_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
|
|
100
100
|
return o.__proto__ || Object.getPrototypeOf(o);
|
|
101
101
|
};
|
|
102
102
|
return _getPrototypeOf(o);
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
function _setPrototypeOf(o, p) {
|
|
106
|
-
_setPrototypeOf = Object.setPrototypeOf
|
|
106
|
+
_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
|
|
107
107
|
o.__proto__ = p;
|
|
108
108
|
return o;
|
|
109
109
|
};
|
|
110
|
-
|
|
111
110
|
return _setPrototypeOf(o, p);
|
|
112
111
|
}
|
|
113
112
|
|
|
@@ -361,7 +360,7 @@ function simpleEqual(objectA, objectB) {
|
|
|
361
360
|
return JSON.stringify(objectA) === JSON.stringify(objectB);
|
|
362
361
|
}
|
|
363
362
|
|
|
364
|
-
var version="
|
|
363
|
+
var version="12.1.0";
|
|
365
364
|
|
|
366
365
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
367
366
|
|
|
@@ -1651,26 +1650,37 @@ var BaseEditorComponent = /*#__PURE__*/function (_Vue) {
|
|
|
1651
1650
|
return (_Handsontable$editors23 = Handsontable.editors.BaseEditor.prototype.getEditedCell).call.apply(_Handsontable$editors23, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1652
1651
|
}
|
|
1653
1652
|
}, {
|
|
1654
|
-
key: "
|
|
1655
|
-
value: function
|
|
1653
|
+
key: "getEditedCellRect",
|
|
1654
|
+
value: function getEditedCellRect() {
|
|
1656
1655
|
var _Handsontable$editors24;
|
|
1657
1656
|
|
|
1658
1657
|
for (var _len24 = arguments.length, args = new Array(_len24), _key24 = 0; _key24 < _len24; _key24++) {
|
|
1659
1658
|
args[_key24] = arguments[_key24];
|
|
1660
1659
|
}
|
|
1661
1660
|
|
|
1662
|
-
return (_Handsontable$editors24 = Handsontable.editors.BaseEditor.prototype.
|
|
1661
|
+
return (_Handsontable$editors24 = Handsontable.editors.BaseEditor.prototype.getEditedCellRect).call.apply(_Handsontable$editors24, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1663
1662
|
}
|
|
1664
1663
|
}, {
|
|
1665
|
-
key: "
|
|
1666
|
-
value: function
|
|
1664
|
+
key: "getEditedCellsZIndex",
|
|
1665
|
+
value: function getEditedCellsZIndex() {
|
|
1667
1666
|
var _Handsontable$editors25;
|
|
1668
1667
|
|
|
1669
1668
|
for (var _len25 = arguments.length, args = new Array(_len25), _key25 = 0; _key25 < _len25; _key25++) {
|
|
1670
1669
|
args[_key25] = arguments[_key25];
|
|
1671
1670
|
}
|
|
1672
1671
|
|
|
1673
|
-
return (_Handsontable$editors25 = Handsontable.editors.BaseEditor.prototype.
|
|
1672
|
+
return (_Handsontable$editors25 = Handsontable.editors.BaseEditor.prototype.getEditedCellsZIndex).call.apply(_Handsontable$editors25, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1673
|
+
}
|
|
1674
|
+
}, {
|
|
1675
|
+
key: "getEditedCellsLayerClass",
|
|
1676
|
+
value: function getEditedCellsLayerClass() {
|
|
1677
|
+
var _Handsontable$editors26;
|
|
1678
|
+
|
|
1679
|
+
for (var _len26 = arguments.length, args = new Array(_len26), _key26 = 0; _key26 < _len26; _key26++) {
|
|
1680
|
+
args[_key26] = arguments[_key26];
|
|
1681
|
+
}
|
|
1682
|
+
|
|
1683
|
+
return (_Handsontable$editors26 = Handsontable.editors.BaseEditor.prototype.getEditedCellsLayerClass).call.apply(_Handsontable$editors26, [this.$data.hotCustomEditorInstance].concat(args));
|
|
1674
1684
|
}
|
|
1675
1685
|
}]);
|
|
1676
1686
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@handsontable/vue",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "12.1.0",
|
|
4
4
|
"description": "Best Data Grid for Vue with Spreadsheet Look and Feel.",
|
|
5
5
|
"author": "Handsoncode <hello@handsoncode.net> (https://handsoncode.net)",
|
|
6
6
|
"homepage": "https://handsontable.com",
|
|
@@ -10,6 +10,12 @@
|
|
|
10
10
|
"jsdelivr": "./dist/vue-handsontable.min.js",
|
|
11
11
|
"unpkg": "./dist/vue-handsontable.min.js",
|
|
12
12
|
"types": "./index.d.ts",
|
|
13
|
+
"exports": {
|
|
14
|
+
".": {
|
|
15
|
+
"import": "./es/vue-handsontable.js",
|
|
16
|
+
"require": "./commonjs/vue-handsontable.js"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
13
19
|
"keywords": [
|
|
14
20
|
"handsontable",
|
|
15
21
|
"component",
|
|
@@ -44,7 +50,7 @@
|
|
|
44
50
|
"url": "https://github.com/handsontable/handsontable/issues"
|
|
45
51
|
},
|
|
46
52
|
"peerDependencies": {
|
|
47
|
-
"handsontable": ">=
|
|
53
|
+
"handsontable": ">=12.0.0",
|
|
48
54
|
"vue": "^2.5.0"
|
|
49
55
|
},
|
|
50
56
|
"devDependencies": {
|
|
@@ -61,7 +67,7 @@
|
|
|
61
67
|
"cross-env": "^5.2.0",
|
|
62
68
|
"css-loader": "^3.0.0",
|
|
63
69
|
"del-cli": "^3.0.1",
|
|
64
|
-
"handsontable": "^
|
|
70
|
+
"handsontable": "^12.0.0",
|
|
65
71
|
"jest": "^26.6.3",
|
|
66
72
|
"rollup": "^2.0.0",
|
|
67
73
|
"rollup-plugin-babel": "^4.3.2",
|