@handsontable/react 10.0.0 → 11.0.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/LICENSE.txt +19 -22
- package/baseEditorComponent.d.ts +2 -2
- package/commonjs/react-handsontable.js +34 -13
- package/dist/react-handsontable.js +55 -37
- package/dist/react-handsontable.js.map +1 -1
- package/dist/react-handsontable.min.js +21 -24
- package/dist/react-handsontable.min.js.map +1 -1
- package/es/react-handsontable.js +34 -13
- package/handsontable-non-commercial-license.pdf +0 -0
- package/helpers.d.ts +9 -3
- package/hotColumn.d.ts +1 -1
- package/hotTable.d.ts +7 -5
- package/package.json +5 -5
- package/settingsMapper.d.ts +1 -1
- package/types.d.ts +11 -3
- package/handsontable-general-terms.pdf +0 -0
package/LICENSE.txt
CHANGED
|
@@ -1,28 +1,25 @@
|
|
|
1
1
|
Copyright (c) HANDSONCODE sp. z o. o.
|
|
2
2
|
|
|
3
|
-
HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o.,
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
EU tax ID number: PL5862294002, share capital: PLN 62,800.00.
|
|
3
|
+
HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in
|
|
4
|
+
Gdynia, Poland, at Aleja Zwycięstwa 96-98, registered by the District Court in Gdansk under number
|
|
5
|
+
538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.
|
|
7
6
|
|
|
8
|
-
This software is protected by applicable copyright laws, including
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
or monetary compensation (commercial purposes), or not.
|
|
7
|
+
This software is protected by applicable copyright laws, including international treaties, and dual-
|
|
8
|
+
licensed – depending on whether your use for commercial purposes, meaning intended for or
|
|
9
|
+
resulting in commercial advantage or monetary compensation, or not.
|
|
12
10
|
|
|
13
|
-
If your use
|
|
14
|
-
|
|
15
|
-
in the "handsontable-non-commercial-license.pdf" file
|
|
16
|
-
in the main directory of this software repository.
|
|
11
|
+
If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing
|
|
12
|
+
the suitability, performance, and usefulness of this software outside the production environment,
|
|
13
|
+
you agree to be bound by the terms included in the "handsontable-non-commercial-license.pdf" file.
|
|
17
14
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
in the "handsontable-general-terms.pdf" file, available in the main
|
|
21
|
-
directory of this software repository.
|
|
15
|
+
Your use of this software for commercial purposes is subject to the terms included in an applicable
|
|
16
|
+
license agreement.
|
|
22
17
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
18
|
+
In any case, you must not make any such use of this software as to develop software which may be
|
|
19
|
+
considered competitive with this software.
|
|
20
|
+
|
|
21
|
+
UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN "AS IS"
|
|
22
|
+
BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO
|
|
23
|
+
LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,
|
|
24
|
+
INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
|
25
|
+
USE OR INABILITY TO USE THIS SOFTWARE.
|
package/baseEditorComponent.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import Handsontable from 'handsontable';
|
|
2
|
+
import Handsontable from 'handsontable/base';
|
|
3
3
|
import { HotEditorProps } from './types';
|
|
4
|
-
declare class BaseEditorComponent<P = {}, S = {}, SS = any> extends React.Component<P | HotEditorProps, S> implements Handsontable.
|
|
4
|
+
declare class BaseEditorComponent<P = {}, S = {}, SS = any> extends React.Component<P | HotEditorProps, S> implements Handsontable.editors.BaseEditor {
|
|
5
5
|
name: string;
|
|
6
6
|
instance: any;
|
|
7
7
|
row: any;
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var ReactDOM = require('react-dom');
|
|
7
|
-
var Handsontable = require('handsontable');
|
|
7
|
+
var Handsontable = require('handsontable/base');
|
|
8
8
|
|
|
9
9
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
10
10
|
|
|
@@ -195,6 +195,11 @@ var AUTOSIZE_WARNING = 'Your `HotTable` configuration includes `autoRowSize`/`au
|
|
|
195
195
|
*/
|
|
196
196
|
|
|
197
197
|
var HOT_DESTROYED_WARNING = 'The Handsontable instance bound to this component was destroyed and cannot be' + ' used properly.';
|
|
198
|
+
/**
|
|
199
|
+
* String identifier for the global-scoped editor components.
|
|
200
|
+
*/
|
|
201
|
+
|
|
202
|
+
var GLOBAL_EDITOR_SCOPE = 'global';
|
|
198
203
|
/**
|
|
199
204
|
* Default classname given to the wrapper container.
|
|
200
205
|
*/
|
|
@@ -309,10 +314,13 @@ function createEditorPortal() {
|
|
|
309
314
|
*
|
|
310
315
|
* @param {React.ReactNode} children Component children.
|
|
311
316
|
* @param {Map} editorCache Component's editor cache.
|
|
317
|
+
* @param {string|number} [editorColumnScope] The editor scope (column index or a 'global' string). Defaults to
|
|
318
|
+
* 'global'.
|
|
312
319
|
* @returns {React.ReactElement} An editor element containing the additional methods.
|
|
313
320
|
*/
|
|
314
321
|
|
|
315
322
|
function getExtendedEditorElement(children, editorCache) {
|
|
323
|
+
var editorColumnScope = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : GLOBAL_EDITOR_SCOPE;
|
|
316
324
|
var editorElement = getChildElementByType(children, 'hot-editor');
|
|
317
325
|
var editorClass = getOriginalEditorClass(editorElement);
|
|
318
326
|
|
|
@@ -321,9 +329,15 @@ function getExtendedEditorElement(children, editorCache) {
|
|
|
321
329
|
}
|
|
322
330
|
|
|
323
331
|
return React__default["default"].cloneElement(editorElement, {
|
|
324
|
-
emitEditorInstance: function emitEditorInstance(editorInstance) {
|
|
325
|
-
editorCache.
|
|
332
|
+
emitEditorInstance: function emitEditorInstance(editorInstance, editorColumnScope) {
|
|
333
|
+
if (!editorCache.get(editorClass)) {
|
|
334
|
+
editorCache.set(editorClass, new Map());
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
var cacheEntry = editorCache.get(editorClass);
|
|
338
|
+
cacheEntry.set(editorColumnScope !== null && editorColumnScope !== void 0 ? editorColumnScope : GLOBAL_EDITOR_SCOPE, editorInstance);
|
|
326
339
|
},
|
|
340
|
+
editorColumnScope: editorColumnScope,
|
|
327
341
|
isEditor: true
|
|
328
342
|
});
|
|
329
343
|
}
|
|
@@ -527,7 +541,7 @@ var HotColumn = /*#__PURE__*/function (_React$Component) {
|
|
|
527
541
|
}, {
|
|
528
542
|
key: "getLocalEditorElement",
|
|
529
543
|
value: function getLocalEditorElement() {
|
|
530
|
-
return getExtendedEditorElement(this.props.children, this.props._getEditorCache());
|
|
544
|
+
return getExtendedEditorElement(this.props.children, this.props._getEditorCache(), this.props._columnIndex);
|
|
531
545
|
}
|
|
532
546
|
/**
|
|
533
547
|
* Create the column settings based on the data provided to the `HotColumn` component and it's child components.
|
|
@@ -552,7 +566,7 @@ var HotColumn = /*#__PURE__*/function (_React$Component) {
|
|
|
552
566
|
}
|
|
553
567
|
|
|
554
568
|
if (editorElement !== null) {
|
|
555
|
-
this.columnSettings.editor = this.props._getEditorClass(editorElement);
|
|
569
|
+
this.columnSettings.editor = this.props._getEditorClass(editorElement, this.props._columnIndex);
|
|
556
570
|
} else if (this.hasProp('editor')) {
|
|
557
571
|
this.columnSettings.editor = this.props.editor;
|
|
558
572
|
} else {
|
|
@@ -572,7 +586,7 @@ var HotColumn = /*#__PURE__*/function (_React$Component) {
|
|
|
572
586
|
|
|
573
587
|
var editorCache = this.props._getEditorCache();
|
|
574
588
|
|
|
575
|
-
var localEditorElement = getExtendedEditorElement(children, editorCache);
|
|
589
|
+
var localEditorElement = getExtendedEditorElement(children, editorCache, this.props._columnIndex);
|
|
576
590
|
|
|
577
591
|
if (localEditorElement) {
|
|
578
592
|
this.setLocalEditorPortal(createEditorPortal(this.props._getOwnerDocument(), localEditorElement, editorCache));
|
|
@@ -678,7 +692,7 @@ var PortalManager = /*#__PURE__*/function (_React$Component) {
|
|
|
678
692
|
return PortalManager;
|
|
679
693
|
}(React__default["default"].Component);
|
|
680
694
|
|
|
681
|
-
var version="
|
|
695
|
+
var version="11.0.0";
|
|
682
696
|
|
|
683
697
|
function createCommonjsModule(fn, module) {
|
|
684
698
|
return module = { exports: {} }, fn(module, module.exports), module.exports;
|
|
@@ -2235,15 +2249,20 @@ var HotTable = /*#__PURE__*/function (_React$Component) {
|
|
|
2235
2249
|
* Create a fresh class to be used as an editor, based on the provided editor React element.
|
|
2236
2250
|
*
|
|
2237
2251
|
* @param {React.ReactElement} editorElement React editor component.
|
|
2252
|
+
* @param {string|number} [editorColumnScope] The editor scope (column index or a 'global' string). Defaults to
|
|
2253
|
+
* 'global'.
|
|
2238
2254
|
* @returns {Function} A class to be passed to the Handsontable editor settings.
|
|
2239
2255
|
*/
|
|
2240
2256
|
|
|
2241
2257
|
}, {
|
|
2242
2258
|
key: "getEditorClass",
|
|
2243
2259
|
value: function getEditorClass(editorElement) {
|
|
2260
|
+
var _editorCache$get;
|
|
2261
|
+
|
|
2262
|
+
var editorColumnScope = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : GLOBAL_EDITOR_SCOPE;
|
|
2244
2263
|
var editorClass = getOriginalEditorClass(editorElement);
|
|
2245
2264
|
var editorCache = this.getEditorCache();
|
|
2246
|
-
var cachedComponent = editorCache.get(editorClass);
|
|
2265
|
+
var cachedComponent = (_editorCache$get = editorCache.get(editorClass)) === null || _editorCache$get === void 0 ? void 0 : _editorCache$get.get(editorColumnScope);
|
|
2247
2266
|
return this.makeEditorClass(cachedComponent);
|
|
2248
2267
|
}
|
|
2249
2268
|
/**
|
|
@@ -2261,12 +2280,12 @@ var HotTable = /*#__PURE__*/function (_React$Component) {
|
|
|
2261
2280
|
|
|
2262
2281
|
var _super2 = _createSuper(CustomEditor);
|
|
2263
2282
|
|
|
2264
|
-
function CustomEditor(hotInstance
|
|
2283
|
+
function CustomEditor(hotInstance) {
|
|
2265
2284
|
var _this2;
|
|
2266
2285
|
|
|
2267
2286
|
_classCallCheck(this, CustomEditor);
|
|
2268
2287
|
|
|
2269
|
-
_this2 = _super2.call(this, hotInstance
|
|
2288
|
+
_this2 = _super2.call(this, hotInstance);
|
|
2270
2289
|
editorComponent.hotCustomEditorInstance = _assertThisInitialized(_this2);
|
|
2271
2290
|
_this2.editorComponent = editorComponent;
|
|
2272
2291
|
return _this2;
|
|
@@ -2366,7 +2385,7 @@ var HotTable = /*#__PURE__*/function (_React$Component) {
|
|
|
2366
2385
|
newSettings.columns = this.columnSettings.length ? this.columnSettings : newSettings.columns;
|
|
2367
2386
|
|
|
2368
2387
|
if (globalEditorNode) {
|
|
2369
|
-
newSettings.editor = this.getEditorClass(globalEditorNode);
|
|
2388
|
+
newSettings.editor = this.getEditorClass(globalEditorNode, GLOBAL_EDITOR_SCOPE);
|
|
2370
2389
|
} else {
|
|
2371
2390
|
newSettings.editor = this.props.editor || (this.props.settings ? this.props.settings.editor : void 0);
|
|
2372
2391
|
}
|
|
@@ -2389,7 +2408,9 @@ var HotTable = /*#__PURE__*/function (_React$Component) {
|
|
|
2389
2408
|
}, {
|
|
2390
2409
|
key: "displayAutoSizeWarning",
|
|
2391
2410
|
value: function displayAutoSizeWarning(newGlobalSettings) {
|
|
2392
|
-
|
|
2411
|
+
var _this$hotInstance$get, _this$hotInstance$get2;
|
|
2412
|
+
|
|
2413
|
+
if (this.hotInstance && ((_this$hotInstance$get = this.hotInstance.getPlugin('autoRowSize')) !== null && _this$hotInstance$get !== void 0 && _this$hotInstance$get.enabled || (_this$hotInstance$get2 = this.hotInstance.getPlugin('autoColumnSize')) !== null && _this$hotInstance$get2 !== void 0 && _this$hotInstance$get2.enabled)) {
|
|
2393
2414
|
if (this.componentRendererColumns.size > 0) {
|
|
2394
2415
|
warn(AUTOSIZE_WARNING);
|
|
2395
2416
|
}
|
|
@@ -2621,7 +2642,7 @@ var BaseEditorComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
2621
2642
|
_this.hot = null;
|
|
2622
2643
|
|
|
2623
2644
|
if (props.emitEditorInstance) {
|
|
2624
|
-
props.emitEditorInstance(_assertThisInitialized(_this));
|
|
2645
|
+
props.emitEditorInstance(_assertThisInitialized(_this), props.editorColumnScope);
|
|
2625
2646
|
}
|
|
2626
2647
|
|
|
2627
2648
|
return _this;
|
|
@@ -1,38 +1,35 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Copyright (c) HANDSONCODE sp. z o. o.
|
|
3
3
|
*
|
|
4
|
-
* HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o.,
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* EU tax ID number: PL5862294002, share capital: PLN 62,800.00.
|
|
4
|
+
* HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in
|
|
5
|
+
* Gdynia, Poland, at Aleja Zwycięstwa 96-98, registered by the District Court in Gdansk under number
|
|
6
|
+
* 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.
|
|
8
7
|
*
|
|
9
|
-
* This software is protected by applicable copyright laws, including
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* or monetary compensation (commercial purposes), or not.
|
|
8
|
+
* This software is protected by applicable copyright laws, including international treaties, and dual-
|
|
9
|
+
* licensed – depending on whether your use for commercial purposes, meaning intended for or
|
|
10
|
+
* resulting in commercial advantage or monetary compensation, or not.
|
|
13
11
|
*
|
|
14
|
-
* If your use
|
|
15
|
-
*
|
|
16
|
-
* in the "handsontable-non-commercial-license.pdf" file
|
|
17
|
-
* in the main directory of this software repository.
|
|
12
|
+
* If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing
|
|
13
|
+
* the suitability, performance, and usefulness of this software outside the production environment,
|
|
14
|
+
* you agree to be bound by the terms included in the "handsontable-non-commercial-license.pdf" file.
|
|
18
15
|
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* in the "handsontable-general-terms.pdf" file, available in the main
|
|
22
|
-
* directory of this software repository.
|
|
16
|
+
* Your use of this software for commercial purposes is subject to the terms included in an applicable
|
|
17
|
+
* license agreement.
|
|
23
18
|
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* AND UNDER NO LEGAL THEORY, SHALL HANDSONCODE BE LIABLE
|
|
27
|
-
* TO YOU FOR DAMAGES, INCLUDING ANY DIRECT, INDIRECT, SPECIAL,
|
|
28
|
-
* INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING
|
|
29
|
-
* FROM USE OR INABILITY TO USE THIS SOFTWARE.
|
|
19
|
+
* In any case, you must not make any such use of this software as to develop software which may be
|
|
20
|
+
* considered competitive with this software.
|
|
30
21
|
*
|
|
31
|
-
*
|
|
22
|
+
* UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN "AS IS"
|
|
23
|
+
* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO
|
|
24
|
+
* LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,
|
|
25
|
+
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
|
26
|
+
* USE OR INABILITY TO USE THIS SOFTWARE.
|
|
27
|
+
*
|
|
28
|
+
* Version: 11.0.0 (built at Wed Nov 17 2021 11:01:31 GMT+0100 (Central European Standard Time))
|
|
32
29
|
*/
|
|
33
30
|
(function (global, factory) {
|
|
34
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('react-dom'), require('handsontable')) :
|
|
35
|
-
typeof define === 'function' && define.amd ? define(['exports', 'react', 'react-dom', 'handsontable'], factory) :
|
|
31
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('react-dom'), require('handsontable/base')) :
|
|
32
|
+
typeof define === 'function' && define.amd ? define(['exports', 'react', 'react-dom', 'handsontable/base'], factory) :
|
|
36
33
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.Handsontable = global.Handsontable || {}, global.Handsontable.react = {}), global.React, global.ReactDOM, global.Handsontable));
|
|
37
34
|
})(this, (function (exports, React, ReactDOM, Handsontable) { 'use strict';
|
|
38
35
|
|
|
@@ -225,6 +222,11 @@ var AUTOSIZE_WARNING = 'Your `HotTable` configuration includes `autoRowSize`/`au
|
|
|
225
222
|
*/
|
|
226
223
|
|
|
227
224
|
var HOT_DESTROYED_WARNING = 'The Handsontable instance bound to this component was destroyed and cannot be' + ' used properly.';
|
|
225
|
+
/**
|
|
226
|
+
* String identifier for the global-scoped editor components.
|
|
227
|
+
*/
|
|
228
|
+
|
|
229
|
+
var GLOBAL_EDITOR_SCOPE = 'global';
|
|
228
230
|
/**
|
|
229
231
|
* Default classname given to the wrapper container.
|
|
230
232
|
*/
|
|
@@ -339,10 +341,13 @@ function createEditorPortal() {
|
|
|
339
341
|
*
|
|
340
342
|
* @param {React.ReactNode} children Component children.
|
|
341
343
|
* @param {Map} editorCache Component's editor cache.
|
|
344
|
+
* @param {string|number} [editorColumnScope] The editor scope (column index or a 'global' string). Defaults to
|
|
345
|
+
* 'global'.
|
|
342
346
|
* @returns {React.ReactElement} An editor element containing the additional methods.
|
|
343
347
|
*/
|
|
344
348
|
|
|
345
349
|
function getExtendedEditorElement(children, editorCache) {
|
|
350
|
+
var editorColumnScope = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : GLOBAL_EDITOR_SCOPE;
|
|
346
351
|
var editorElement = getChildElementByType(children, 'hot-editor');
|
|
347
352
|
var editorClass = getOriginalEditorClass(editorElement);
|
|
348
353
|
|
|
@@ -351,9 +356,15 @@ function getExtendedEditorElement(children, editorCache) {
|
|
|
351
356
|
}
|
|
352
357
|
|
|
353
358
|
return React__default["default"].cloneElement(editorElement, {
|
|
354
|
-
emitEditorInstance: function emitEditorInstance(editorInstance) {
|
|
355
|
-
editorCache.
|
|
359
|
+
emitEditorInstance: function emitEditorInstance(editorInstance, editorColumnScope) {
|
|
360
|
+
if (!editorCache.get(editorClass)) {
|
|
361
|
+
editorCache.set(editorClass, new Map());
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
var cacheEntry = editorCache.get(editorClass);
|
|
365
|
+
cacheEntry.set(editorColumnScope !== null && editorColumnScope !== void 0 ? editorColumnScope : GLOBAL_EDITOR_SCOPE, editorInstance);
|
|
356
366
|
},
|
|
367
|
+
editorColumnScope: editorColumnScope,
|
|
357
368
|
isEditor: true
|
|
358
369
|
});
|
|
359
370
|
}
|
|
@@ -557,7 +568,7 @@ var HotColumn = /*#__PURE__*/function (_React$Component) {
|
|
|
557
568
|
}, {
|
|
558
569
|
key: "getLocalEditorElement",
|
|
559
570
|
value: function getLocalEditorElement() {
|
|
560
|
-
return getExtendedEditorElement(this.props.children, this.props._getEditorCache());
|
|
571
|
+
return getExtendedEditorElement(this.props.children, this.props._getEditorCache(), this.props._columnIndex);
|
|
561
572
|
}
|
|
562
573
|
/**
|
|
563
574
|
* Create the column settings based on the data provided to the `HotColumn` component and it's child components.
|
|
@@ -582,7 +593,7 @@ var HotColumn = /*#__PURE__*/function (_React$Component) {
|
|
|
582
593
|
}
|
|
583
594
|
|
|
584
595
|
if (editorElement !== null) {
|
|
585
|
-
this.columnSettings.editor = this.props._getEditorClass(editorElement);
|
|
596
|
+
this.columnSettings.editor = this.props._getEditorClass(editorElement, this.props._columnIndex);
|
|
586
597
|
} else if (this.hasProp('editor')) {
|
|
587
598
|
this.columnSettings.editor = this.props.editor;
|
|
588
599
|
} else {
|
|
@@ -602,7 +613,7 @@ var HotColumn = /*#__PURE__*/function (_React$Component) {
|
|
|
602
613
|
|
|
603
614
|
var editorCache = this.props._getEditorCache();
|
|
604
615
|
|
|
605
|
-
var localEditorElement = getExtendedEditorElement(children, editorCache);
|
|
616
|
+
var localEditorElement = getExtendedEditorElement(children, editorCache, this.props._columnIndex);
|
|
606
617
|
|
|
607
618
|
if (localEditorElement) {
|
|
608
619
|
this.setLocalEditorPortal(createEditorPortal(this.props._getOwnerDocument(), localEditorElement, editorCache));
|
|
@@ -708,7 +719,7 @@ var PortalManager = /*#__PURE__*/function (_React$Component) {
|
|
|
708
719
|
return PortalManager;
|
|
709
720
|
}(React__default["default"].Component);
|
|
710
721
|
|
|
711
|
-
var version="
|
|
722
|
+
var version="11.0.0";
|
|
712
723
|
|
|
713
724
|
function createCommonjsModule(fn, module) {
|
|
714
725
|
return module = { exports: {} }, fn(module, module.exports), module.exports;
|
|
@@ -1365,15 +1376,20 @@ var HotTable = /*#__PURE__*/function (_React$Component) {
|
|
|
1365
1376
|
* Create a fresh class to be used as an editor, based on the provided editor React element.
|
|
1366
1377
|
*
|
|
1367
1378
|
* @param {React.ReactElement} editorElement React editor component.
|
|
1379
|
+
* @param {string|number} [editorColumnScope] The editor scope (column index or a 'global' string). Defaults to
|
|
1380
|
+
* 'global'.
|
|
1368
1381
|
* @returns {Function} A class to be passed to the Handsontable editor settings.
|
|
1369
1382
|
*/
|
|
1370
1383
|
|
|
1371
1384
|
}, {
|
|
1372
1385
|
key: "getEditorClass",
|
|
1373
1386
|
value: function getEditorClass(editorElement) {
|
|
1387
|
+
var _editorCache$get;
|
|
1388
|
+
|
|
1389
|
+
var editorColumnScope = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : GLOBAL_EDITOR_SCOPE;
|
|
1374
1390
|
var editorClass = getOriginalEditorClass(editorElement);
|
|
1375
1391
|
var editorCache = this.getEditorCache();
|
|
1376
|
-
var cachedComponent = editorCache.get(editorClass);
|
|
1392
|
+
var cachedComponent = (_editorCache$get = editorCache.get(editorClass)) === null || _editorCache$get === void 0 ? void 0 : _editorCache$get.get(editorColumnScope);
|
|
1377
1393
|
return this.makeEditorClass(cachedComponent);
|
|
1378
1394
|
}
|
|
1379
1395
|
/**
|
|
@@ -1391,12 +1407,12 @@ var HotTable = /*#__PURE__*/function (_React$Component) {
|
|
|
1391
1407
|
|
|
1392
1408
|
var _super2 = _createSuper(CustomEditor);
|
|
1393
1409
|
|
|
1394
|
-
function CustomEditor(hotInstance
|
|
1410
|
+
function CustomEditor(hotInstance) {
|
|
1395
1411
|
var _this2;
|
|
1396
1412
|
|
|
1397
1413
|
_classCallCheck(this, CustomEditor);
|
|
1398
1414
|
|
|
1399
|
-
_this2 = _super2.call(this, hotInstance
|
|
1415
|
+
_this2 = _super2.call(this, hotInstance);
|
|
1400
1416
|
editorComponent.hotCustomEditorInstance = _assertThisInitialized(_this2);
|
|
1401
1417
|
_this2.editorComponent = editorComponent;
|
|
1402
1418
|
return _this2;
|
|
@@ -1496,7 +1512,7 @@ var HotTable = /*#__PURE__*/function (_React$Component) {
|
|
|
1496
1512
|
newSettings.columns = this.columnSettings.length ? this.columnSettings : newSettings.columns;
|
|
1497
1513
|
|
|
1498
1514
|
if (globalEditorNode) {
|
|
1499
|
-
newSettings.editor = this.getEditorClass(globalEditorNode);
|
|
1515
|
+
newSettings.editor = this.getEditorClass(globalEditorNode, GLOBAL_EDITOR_SCOPE);
|
|
1500
1516
|
} else {
|
|
1501
1517
|
newSettings.editor = this.props.editor || (this.props.settings ? this.props.settings.editor : void 0);
|
|
1502
1518
|
}
|
|
@@ -1519,7 +1535,9 @@ var HotTable = /*#__PURE__*/function (_React$Component) {
|
|
|
1519
1535
|
}, {
|
|
1520
1536
|
key: "displayAutoSizeWarning",
|
|
1521
1537
|
value: function displayAutoSizeWarning(newGlobalSettings) {
|
|
1522
|
-
|
|
1538
|
+
var _this$hotInstance$get, _this$hotInstance$get2;
|
|
1539
|
+
|
|
1540
|
+
if (this.hotInstance && ((_this$hotInstance$get = this.hotInstance.getPlugin('autoRowSize')) !== null && _this$hotInstance$get !== void 0 && _this$hotInstance$get.enabled || (_this$hotInstance$get2 = this.hotInstance.getPlugin('autoColumnSize')) !== null && _this$hotInstance$get2 !== void 0 && _this$hotInstance$get2.enabled)) {
|
|
1523
1541
|
if (this.componentRendererColumns.size > 0) {
|
|
1524
1542
|
warn(AUTOSIZE_WARNING);
|
|
1525
1543
|
}
|
|
@@ -1751,7 +1769,7 @@ var BaseEditorComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1751
1769
|
_this.hot = null;
|
|
1752
1770
|
|
|
1753
1771
|
if (props.emitEditorInstance) {
|
|
1754
|
-
props.emitEditorInstance(_assertThisInitialized(_this));
|
|
1772
|
+
props.emitEditorInstance(_assertThisInitialized(_this), props.editorColumnScope);
|
|
1755
1773
|
}
|
|
1756
1774
|
|
|
1757
1775
|
return _this;
|