handsontable 14.3.0 → 14.4.0-next-0a79a1f-20240521
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/3rdparty/walkontable/src/calculator/viewportRows.js +3 -3
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +3 -3
- package/3rdparty/walkontable/src/core/_base.js +1 -1
- package/3rdparty/walkontable/src/core/_base.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/_base.js +24 -20
- package/3rdparty/walkontable/src/overlay/_base.mjs +24 -20
- package/3rdparty/walkontable/src/overlay/bottom.js +3 -6
- package/3rdparty/walkontable/src/overlay/bottom.mjs +3 -6
- package/3rdparty/walkontable/src/overlay/inlineStart.js +22 -19
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +22 -19
- package/3rdparty/walkontable/src/overlay/top.js +13 -12
- package/3rdparty/walkontable/src/overlay/top.mjs +13 -12
- package/3rdparty/walkontable/src/overlays.js +46 -24
- package/3rdparty/walkontable/src/overlays.mjs +46 -24
- package/3rdparty/walkontable/src/selection/manager.js +7 -0
- package/3rdparty/walkontable/src/selection/manager.mjs +7 -0
- package/3rdparty/walkontable/src/selection/scanner.js +7 -0
- package/3rdparty/walkontable/src/selection/scanner.mjs +7 -0
- package/3rdparty/walkontable/src/table.js +10 -11
- package/3rdparty/walkontable/src/table.mjs +10 -11
- package/3rdparty/walkontable/src/utils/columnStretching.js +4 -0
- package/3rdparty/walkontable/src/utils/columnStretching.mjs +4 -0
- package/3rdparty/walkontable/src/viewport.js +18 -10
- package/3rdparty/walkontable/src/viewport.mjs +18 -10
- package/CHANGELOG.md +37 -0
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.d.ts +2 -2
- package/core.js +93 -162
- package/core.mjs +93 -162
- package/dataMap/dataMap.js +10 -4
- package/dataMap/dataMap.mjs +10 -4
- package/dataMap/dataSource.js +16 -3
- package/dataMap/dataSource.mjs +16 -3
- package/dataMap/metaManager/lazyFactoryMap.js +7 -0
- package/dataMap/metaManager/lazyFactoryMap.mjs +7 -0
- package/dataMap/metaManager/metaSchema.js +38 -0
- package/dataMap/metaManager/metaSchema.mjs +38 -0
- package/dataMap/metaManager/mods/dynamicCellMeta.js +7 -0
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +7 -0
- package/dataMap/metaManager/mods/extendMetaProperties.js +44 -31
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +44 -31
- package/dataMap/metaManager/utils.js +7 -0
- package/dataMap/metaManager/utils.mjs +7 -0
- package/dist/handsontable.css +4 -5
- package/dist/handsontable.full.css +4 -5
- package/dist/handsontable.full.js +5878 -4657
- package/dist/handsontable.full.min.css +4 -4
- package/dist/handsontable.full.min.js +59 -59
- package/dist/handsontable.js +5383 -4277
- package/dist/handsontable.min.css +4 -4
- package/dist/handsontable.min.js +20 -20
- package/editorManager.js +0 -67
- package/editorManager.mjs +0 -67
- package/editors/autocompleteEditor/autocompleteEditor.js +6 -4
- package/editors/autocompleteEditor/autocompleteEditor.mjs +6 -4
- package/editors/baseEditor/baseEditor.js +1 -36
- package/editors/baseEditor/baseEditor.mjs +2 -37
- package/editors/dateEditor/dateEditor.js +4 -1
- package/editors/dateEditor/dateEditor.mjs +4 -1
- package/editors/dropdownEditor/dropdownEditor.js +8 -5
- package/editors/dropdownEditor/dropdownEditor.mjs +8 -5
- package/editors/handsontableEditor/handsontableEditor.js +2 -2
- package/editors/handsontableEditor/handsontableEditor.mjs +2 -2
- package/editors/selectEditor/selectEditor.js +1 -9
- package/editors/selectEditor/selectEditor.mjs +1 -9
- package/editors/textEditor/textEditor.js +2 -11
- package/editors/textEditor/textEditor.mjs +2 -11
- package/focusManager.js +3 -5
- package/focusManager.mjs +3 -5
- package/helpers/array.js +7 -0
- package/helpers/array.mjs +7 -0
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/helpers/number.js +12 -2
- package/helpers/number.mjs +12 -2
- package/package.json +3 -3
- package/pluginHooks.d.ts +1 -1
- package/pluginHooks.js +79 -2
- package/pluginHooks.mjs +79 -2
- package/plugins/autoColumnSize/autoColumnSize.js +7 -0
- package/plugins/autoColumnSize/autoColumnSize.mjs +7 -0
- package/plugins/autoRowSize/autoRowSize.js +2 -2
- package/plugins/autoRowSize/autoRowSize.mjs +2 -2
- package/plugins/autofill/autofill.js +1 -1
- package/plugins/autofill/autofill.mjs +1 -1
- package/plugins/base/base.d.ts +1 -1
- package/plugins/base/base.js +6 -2
- package/plugins/base/base.mjs +6 -2
- package/plugins/collapsibleColumns/collapsibleColumns.js +1 -1
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +1 -1
- package/plugins/columnSorting/sortFunction/date.js +2 -46
- package/plugins/columnSorting/sortFunction/date.mjs +2 -45
- package/plugins/columnSorting/sortFunction/time.js +17 -0
- package/plugins/columnSorting/sortFunction/time.mjs +13 -0
- package/plugins/columnSorting/sortService/registry.js +4 -2
- package/plugins/columnSorting/sortService/registry.mjs +3 -1
- package/plugins/columnSorting/utils.js +64 -0
- package/plugins/columnSorting/utils.mjs +62 -0
- package/plugins/columnSummary/columnSummary.js +27 -10
- package/plugins/columnSummary/columnSummary.mjs +27 -10
- package/plugins/columnSummary/endpoints.js +15 -0
- package/plugins/columnSummary/endpoints.mjs +15 -0
- package/plugins/comments/comments.js +2 -8
- package/plugins/comments/comments.mjs +2 -8
- package/plugins/comments/contextMenuItem/addEditComment.js +0 -1
- package/plugins/comments/contextMenuItem/addEditComment.mjs +0 -1
- package/plugins/contextMenu/contextMenu.d.ts +1 -1
- package/plugins/copyPaste/copyPaste.js +9 -2
- package/plugins/copyPaste/copyPaste.mjs +9 -2
- package/plugins/copyPaste/pasteEvent.js +1 -0
- package/plugins/copyPaste/pasteEvent.mjs +1 -0
- package/plugins/filters/filters.js +1 -1
- package/plugins/filters/filters.mjs +1 -1
- package/plugins/filters/ui/multipleSelect.js +22 -14
- package/plugins/filters/ui/multipleSelect.mjs +22 -14
- package/plugins/filters/utils.js +7 -0
- package/plugins/filters/utils.mjs +7 -0
- package/plugins/formulas/formulas.d.ts +10 -0
- package/plugins/formulas/formulas.js +11 -2
- package/plugins/formulas/formulas.mjs +11 -2
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +1 -1
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +1 -1
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +1 -1
- package/plugins/hiddenColumns/hiddenColumns.js +8 -1
- package/plugins/hiddenColumns/hiddenColumns.mjs +8 -1
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +1 -1
- package/plugins/hiddenRows/contextMenuItem/showRow.js +1 -1
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +1 -1
- package/plugins/hiddenRows/hiddenRows.js +7 -0
- package/plugins/hiddenRows/hiddenRows.mjs +7 -0
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
- package/plugins/manualColumnMove/manualColumnMove.js +1 -1
- package/plugins/manualColumnMove/manualColumnMove.mjs +1 -1
- package/plugins/manualColumnResize/manualColumnResize.js +3 -3
- package/plugins/manualColumnResize/manualColumnResize.mjs +3 -3
- package/plugins/manualRowMove/manualRowMove.js +1 -1
- package/plugins/manualRowMove/manualRowMove.mjs +1 -1
- package/plugins/manualRowResize/manualRowResize.d.ts +1 -0
- package/plugins/manualRowResize/manualRowResize.js +11 -2
- package/plugins/manualRowResize/manualRowResize.mjs +11 -2
- package/plugins/mergeCells/cellsCollection.js +7 -0
- package/plugins/mergeCells/cellsCollection.mjs +7 -0
- package/plugins/mergeCells/mergeCells.js +7 -0
- package/plugins/mergeCells/mergeCells.mjs +7 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +7 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +7 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +7 -0
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +7 -0
- package/plugins/nestedRows/nestedRows.js +7 -0
- package/plugins/nestedRows/nestedRows.mjs +7 -0
- package/plugins/trimRows/trimRows.js +7 -0
- package/plugins/trimRows/trimRows.mjs +7 -0
- package/selection/selection.js +163 -4
- package/selection/selection.mjs +163 -4
- package/selection/utils.js +7 -0
- package/selection/utils.mjs +7 -0
- package/settings.d.ts +1 -0
- package/shortcutContexts/commands/editor/closeAndSave.js +2 -3
- package/shortcutContexts/commands/editor/closeAndSave.mjs +2 -3
- package/shortcutContexts/commands/editor/closeAndSaveByArrowKeys.js +27 -0
- package/shortcutContexts/commands/editor/closeAndSaveByArrowKeys.mjs +24 -0
- package/shortcutContexts/commands/editor/closeAndSaveByEnter.js +11 -0
- package/shortcutContexts/commands/editor/closeAndSaveByEnter.mjs +8 -0
- package/shortcutContexts/commands/editor/index.js +3 -1
- package/shortcutContexts/commands/editor/index.mjs +3 -1
- package/shortcutContexts/editor.js +9 -1
- package/shortcutContexts/editor.mjs +9 -1
- package/shortcutContexts/index.js +1 -1
- package/shortcutContexts/index.mjs +1 -1
- package/shortcuts/keyObserver.js +7 -0
- package/shortcuts/keyObserver.mjs +7 -0
- package/shortcuts/utils.js +7 -0
- package/shortcuts/utils.mjs +7 -0
- package/tableView.js +1 -4
- package/tableView.mjs +1 -4
- package/translations/changesObservable/observable.js +7 -0
- package/translations/changesObservable/observable.mjs +7 -0
- package/translations/indexMapper.js +7 -0
- package/translations/indexMapper.mjs +8 -1
- package/utils/dataStructures/uniqueSet.js +7 -0
- package/utils/dataStructures/uniqueSet.mjs +7 -0
- package/utils/ghostTable.js +0 -4
- package/utils/ghostTable.mjs +0 -4
- package/utils/paginator.js +7 -0
- package/utils/paginator.mjs +7 -0
- package/validators/dateValidator/dateValidator.js +1 -3
- package/validators/dateValidator/dateValidator.mjs +1 -3
- package/validators/timeValidator/timeValidator.js +1 -3
- package/validators/timeValidator/timeValidator.mjs +1 -3
@@ -1536,6 +1536,44 @@ var _default = () => {
|
|
1536
1536
|
* ```
|
1537
1537
|
*/
|
1538
1538
|
data: undefined,
|
1539
|
+
/**
|
1540
|
+
* @description
|
1541
|
+
* If `true`, Handsontable will interpret the dots in the columns mapping as a nested object path. If your dataset contains
|
1542
|
+
* the dots in the object keys and you don't want Handsontable to interpret them as a nested object path, set this option to `false`.
|
1543
|
+
*
|
1544
|
+
* The option only works when defined in the global table settings.
|
1545
|
+
*
|
1546
|
+
* @since 14.4.0
|
1547
|
+
* @memberof Options#
|
1548
|
+
* @type {boolean}
|
1549
|
+
* @default true
|
1550
|
+
* @category Core
|
1551
|
+
*
|
1552
|
+
* @example
|
1553
|
+
* ```js
|
1554
|
+
* // All dots are interpreted as nested object paths
|
1555
|
+
* dataDotNotation: true,
|
1556
|
+
* data: [
|
1557
|
+
* { id: 1, name: { first: 'Ted', last: 'Right' }, user: { address: '1234 Any Street' } },
|
1558
|
+
* ],
|
1559
|
+
* columns={[
|
1560
|
+
* { data: 'name.first' },
|
1561
|
+
* { data: 'user.address' },
|
1562
|
+
* ]},
|
1563
|
+
* ```
|
1564
|
+
* ```js
|
1565
|
+
* // All dots are interpreted as simple object keys
|
1566
|
+
* dataDotNotation: false,
|
1567
|
+
* data: [
|
1568
|
+
* { id: 1, 'name.first': 'Ted', 'user.address': '1234 Any Street' },
|
1569
|
+
* ],
|
1570
|
+
* columns={[
|
1571
|
+
* { data: 'name.first' },
|
1572
|
+
* { data: 'user.address' },
|
1573
|
+
* ]},
|
1574
|
+
* ```
|
1575
|
+
*/
|
1576
|
+
dataDotNotation: true,
|
1539
1577
|
/**
|
1540
1578
|
* @description
|
1541
1579
|
* When the [`data`](#data) option is set to an [array of objects](@/guides/getting-started/binding-to-data/binding-to-data.md#array-of-objects)
|
@@ -1533,6 +1533,44 @@ export default (() => {
|
|
1533
1533
|
* ```
|
1534
1534
|
*/
|
1535
1535
|
data: undefined,
|
1536
|
+
/**
|
1537
|
+
* @description
|
1538
|
+
* If `true`, Handsontable will interpret the dots in the columns mapping as a nested object path. If your dataset contains
|
1539
|
+
* the dots in the object keys and you don't want Handsontable to interpret them as a nested object path, set this option to `false`.
|
1540
|
+
*
|
1541
|
+
* The option only works when defined in the global table settings.
|
1542
|
+
*
|
1543
|
+
* @since 14.4.0
|
1544
|
+
* @memberof Options#
|
1545
|
+
* @type {boolean}
|
1546
|
+
* @default true
|
1547
|
+
* @category Core
|
1548
|
+
*
|
1549
|
+
* @example
|
1550
|
+
* ```js
|
1551
|
+
* // All dots are interpreted as nested object paths
|
1552
|
+
* dataDotNotation: true,
|
1553
|
+
* data: [
|
1554
|
+
* { id: 1, name: { first: 'Ted', last: 'Right' }, user: { address: '1234 Any Street' } },
|
1555
|
+
* ],
|
1556
|
+
* columns={[
|
1557
|
+
* { data: 'name.first' },
|
1558
|
+
* { data: 'user.address' },
|
1559
|
+
* ]},
|
1560
|
+
* ```
|
1561
|
+
* ```js
|
1562
|
+
* // All dots are interpreted as simple object keys
|
1563
|
+
* dataDotNotation: false,
|
1564
|
+
* data: [
|
1565
|
+
* { id: 1, 'name.first': 'Ted', 'user.address': '1234 Any Street' },
|
1566
|
+
* ],
|
1567
|
+
* columns={[
|
1568
|
+
* { data: 'name.first' },
|
1569
|
+
* { data: 'user.address' },
|
1570
|
+
* ]},
|
1571
|
+
* ```
|
1572
|
+
*/
|
1573
|
+
dataDotNotation: true,
|
1536
1574
|
/**
|
1537
1575
|
* @description
|
1538
1576
|
* When the [`data`](#data) option is set to an [array of objects](@/guides/getting-started/binding-to-data/binding-to-data.md#array-of-objects)
|
@@ -2,6 +2,13 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.error.cause.js");
|
5
|
+
require("core-js/modules/esnext.set.difference.v2.js");
|
6
|
+
require("core-js/modules/esnext.set.intersection.v2.js");
|
7
|
+
require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
|
8
|
+
require("core-js/modules/esnext.set.is-subset-of.v2.js");
|
9
|
+
require("core-js/modules/esnext.set.is-superset-of.v2.js");
|
10
|
+
require("core-js/modules/esnext.set.symmetric-difference.v2.js");
|
11
|
+
require("core-js/modules/esnext.set.union.v2.js");
|
5
12
|
var _pluginHooks = _interopRequireDefault(require("../../../pluginHooks"));
|
6
13
|
var _object = require("../../../helpers/object");
|
7
14
|
var _function = require("../../../helpers/function");
|
@@ -1,4 +1,11 @@
|
|
1
1
|
import "core-js/modules/es.error.cause.js";
|
2
|
+
import "core-js/modules/esnext.set.difference.v2.js";
|
3
|
+
import "core-js/modules/esnext.set.intersection.v2.js";
|
4
|
+
import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
|
5
|
+
import "core-js/modules/esnext.set.is-subset-of.v2.js";
|
6
|
+
import "core-js/modules/esnext.set.is-superset-of.v2.js";
|
7
|
+
import "core-js/modules/esnext.set.symmetric-difference.v2.js";
|
8
|
+
import "core-js/modules/esnext.set.union.v2.js";
|
2
9
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
3
10
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
4
11
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
@@ -2,9 +2,22 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.error.cause.js");
|
5
|
+
require("core-js/modules/es.array.push.js");
|
6
|
+
require("core-js/modules/esnext.set.difference.v2.js");
|
7
|
+
require("core-js/modules/esnext.set.intersection.v2.js");
|
8
|
+
require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
|
9
|
+
require("core-js/modules/esnext.set.is-subset-of.v2.js");
|
10
|
+
require("core-js/modules/esnext.set.is-superset-of.v2.js");
|
11
|
+
require("core-js/modules/esnext.set.symmetric-difference.v2.js");
|
12
|
+
require("core-js/modules/esnext.set.union.v2.js");
|
13
|
+
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
14
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
5
15
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
6
16
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
7
17
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
18
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
19
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
20
|
+
var _initOnlyCallback = /*#__PURE__*/new WeakMap();
|
8
21
|
/**
|
9
22
|
* @class ExtendMetaPropertiesMod
|
10
23
|
*/
|
@@ -22,11 +35,7 @@ class ExtendMetaPropertiesMod {
|
|
22
35
|
* @type {Map}
|
23
36
|
*/
|
24
37
|
_defineProperty(this, "propDescriptors", new Map([['ariaTags', {
|
25
|
-
|
26
|
-
if (!isInitialChange) {
|
27
|
-
throw new Error(`The \`${propName}\` option can not be updated after the Handsontable instance was initialized.`);
|
28
|
-
}
|
29
|
-
}
|
38
|
+
initOnly: true
|
30
39
|
}], ['fixedColumnsLeft', {
|
31
40
|
target: 'fixedColumnsStart',
|
32
41
|
onChange(propName) {
|
@@ -39,48 +48,52 @@ class ExtendMetaPropertiesMod {
|
|
39
48
|
}
|
40
49
|
}
|
41
50
|
}], ['layoutDirection', {
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
51
|
+
initOnly: true
|
52
|
+
}], ['renderAllColumns', {
|
53
|
+
initOnly: true
|
54
|
+
}], ['renderAllRows', {
|
55
|
+
initOnly: true
|
56
|
+
}]]));
|
57
|
+
/**
|
58
|
+
* Callback called when the prop is marked as `initOnly`.
|
59
|
+
*
|
60
|
+
* @param {string} propName The property name.
|
61
|
+
* @param {*} value The new value.
|
62
|
+
* @param {boolean} isInitialChange Is the change initial.
|
63
|
+
*/
|
64
|
+
_classPrivateFieldInitSpec(this, _initOnlyCallback, (propName, value, isInitialChange) => {
|
65
|
+
if (!isInitialChange) {
|
66
|
+
throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
46
67
|
}
|
47
|
-
}
|
48
|
-
// Temporary commented out due to the bug in the React wrapper.
|
49
|
-
// ['renderAllColumns', {
|
50
|
-
// onChange(propName, value, isInitialChange) {
|
51
|
-
// if (!isInitialChange) {
|
52
|
-
// throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
53
|
-
// }
|
54
|
-
// }
|
55
|
-
// }],
|
56
|
-
// ['renderAllRows', {
|
57
|
-
// onChange(propName, value, isInitialChange) {
|
58
|
-
// if (!isInitialChange) {
|
59
|
-
// throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
60
|
-
// }
|
61
|
-
// }
|
62
|
-
// }],
|
63
|
-
]));
|
68
|
+
});
|
64
69
|
this.metaManager = metaManager;
|
65
70
|
this.extendMetaProps();
|
66
71
|
}
|
67
|
-
|
68
72
|
/**
|
69
73
|
* Extends the meta options based on the object descriptors from the `propDescriptors` list.
|
70
74
|
*/
|
71
75
|
extendMetaProps() {
|
72
76
|
this.propDescriptors.forEach((descriptor, alias) => {
|
73
77
|
const {
|
78
|
+
initOnly,
|
74
79
|
target,
|
75
|
-
onChange
|
80
|
+
onChange
|
76
81
|
} = descriptor;
|
77
82
|
const hasTarget = typeof target === 'string';
|
78
83
|
const targetProp = hasTarget ? target : alias;
|
79
84
|
const origProp = `_${targetProp}`;
|
80
85
|
this.metaManager.globalMeta.meta[origProp] = this.metaManager.globalMeta.meta[targetProp];
|
81
|
-
|
82
|
-
|
83
|
-
|
86
|
+
if (onChange) {
|
87
|
+
this.installPropWatcher(alias, origProp, onChange);
|
88
|
+
if (hasTarget) {
|
89
|
+
this.installPropWatcher(target, origProp, onChange);
|
90
|
+
}
|
91
|
+
} else if (initOnly) {
|
92
|
+
this.installPropWatcher(alias, origProp, _classPrivateFieldGet(_initOnlyCallback, this));
|
93
|
+
if (!this.metaManager.globalMeta.meta._initOnlySettings) {
|
94
|
+
this.metaManager.globalMeta.meta._initOnlySettings = [];
|
95
|
+
}
|
96
|
+
this.metaManager.globalMeta.meta._initOnlySettings.push(alias);
|
84
97
|
}
|
85
98
|
});
|
86
99
|
}
|
@@ -1,7 +1,20 @@
|
|
1
1
|
import "core-js/modules/es.error.cause.js";
|
2
|
+
import "core-js/modules/es.array.push.js";
|
3
|
+
import "core-js/modules/esnext.set.difference.v2.js";
|
4
|
+
import "core-js/modules/esnext.set.intersection.v2.js";
|
5
|
+
import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
|
6
|
+
import "core-js/modules/esnext.set.is-subset-of.v2.js";
|
7
|
+
import "core-js/modules/esnext.set.is-superset-of.v2.js";
|
8
|
+
import "core-js/modules/esnext.set.symmetric-difference.v2.js";
|
9
|
+
import "core-js/modules/esnext.set.union.v2.js";
|
10
|
+
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
11
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
2
12
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
3
13
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
4
14
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
15
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
16
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
17
|
+
var _initOnlyCallback = /*#__PURE__*/new WeakMap();
|
5
18
|
/**
|
6
19
|
* @class ExtendMetaPropertiesMod
|
7
20
|
*/
|
@@ -19,11 +32,7 @@ export class ExtendMetaPropertiesMod {
|
|
19
32
|
* @type {Map}
|
20
33
|
*/
|
21
34
|
_defineProperty(this, "propDescriptors", new Map([['ariaTags', {
|
22
|
-
|
23
|
-
if (!isInitialChange) {
|
24
|
-
throw new Error(`The \`${propName}\` option can not be updated after the Handsontable instance was initialized.`);
|
25
|
-
}
|
26
|
-
}
|
35
|
+
initOnly: true
|
27
36
|
}], ['fixedColumnsLeft', {
|
28
37
|
target: 'fixedColumnsStart',
|
29
38
|
onChange(propName) {
|
@@ -36,48 +45,52 @@ export class ExtendMetaPropertiesMod {
|
|
36
45
|
}
|
37
46
|
}
|
38
47
|
}], ['layoutDirection', {
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
48
|
+
initOnly: true
|
49
|
+
}], ['renderAllColumns', {
|
50
|
+
initOnly: true
|
51
|
+
}], ['renderAllRows', {
|
52
|
+
initOnly: true
|
53
|
+
}]]));
|
54
|
+
/**
|
55
|
+
* Callback called when the prop is marked as `initOnly`.
|
56
|
+
*
|
57
|
+
* @param {string} propName The property name.
|
58
|
+
* @param {*} value The new value.
|
59
|
+
* @param {boolean} isInitialChange Is the change initial.
|
60
|
+
*/
|
61
|
+
_classPrivateFieldInitSpec(this, _initOnlyCallback, (propName, value, isInitialChange) => {
|
62
|
+
if (!isInitialChange) {
|
63
|
+
throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
43
64
|
}
|
44
|
-
}
|
45
|
-
// Temporary commented out due to the bug in the React wrapper.
|
46
|
-
// ['renderAllColumns', {
|
47
|
-
// onChange(propName, value, isInitialChange) {
|
48
|
-
// if (!isInitialChange) {
|
49
|
-
// throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
50
|
-
// }
|
51
|
-
// }
|
52
|
-
// }],
|
53
|
-
// ['renderAllRows', {
|
54
|
-
// onChange(propName, value, isInitialChange) {
|
55
|
-
// if (!isInitialChange) {
|
56
|
-
// throw new Error(`The \`${propName}\` option can not be updated after the Handsontable is initialized.`);
|
57
|
-
// }
|
58
|
-
// }
|
59
|
-
// }],
|
60
|
-
]));
|
65
|
+
});
|
61
66
|
this.metaManager = metaManager;
|
62
67
|
this.extendMetaProps();
|
63
68
|
}
|
64
|
-
|
65
69
|
/**
|
66
70
|
* Extends the meta options based on the object descriptors from the `propDescriptors` list.
|
67
71
|
*/
|
68
72
|
extendMetaProps() {
|
69
73
|
this.propDescriptors.forEach((descriptor, alias) => {
|
70
74
|
const {
|
75
|
+
initOnly,
|
71
76
|
target,
|
72
|
-
onChange
|
77
|
+
onChange
|
73
78
|
} = descriptor;
|
74
79
|
const hasTarget = typeof target === 'string';
|
75
80
|
const targetProp = hasTarget ? target : alias;
|
76
81
|
const origProp = `_${targetProp}`;
|
77
82
|
this.metaManager.globalMeta.meta[origProp] = this.metaManager.globalMeta.meta[targetProp];
|
78
|
-
|
79
|
-
|
80
|
-
|
83
|
+
if (onChange) {
|
84
|
+
this.installPropWatcher(alias, origProp, onChange);
|
85
|
+
if (hasTarget) {
|
86
|
+
this.installPropWatcher(target, origProp, onChange);
|
87
|
+
}
|
88
|
+
} else if (initOnly) {
|
89
|
+
this.installPropWatcher(alias, origProp, _classPrivateFieldGet(_initOnlyCallback, this));
|
90
|
+
if (!this.metaManager.globalMeta.meta._initOnlySettings) {
|
91
|
+
this.metaManager.globalMeta.meta._initOnlySettings = [];
|
92
|
+
}
|
93
|
+
this.metaManager.globalMeta.meta._initOnlySettings.push(alias);
|
81
94
|
}
|
82
95
|
});
|
83
96
|
}
|
@@ -7,6 +7,13 @@ exports.extendByMetaType = extendByMetaType;
|
|
7
7
|
exports.isNullish = isNullish;
|
8
8
|
exports.isUnsignedNumber = isUnsignedNumber;
|
9
9
|
require("core-js/modules/es.error.cause.js");
|
10
|
+
require("core-js/modules/esnext.set.difference.v2.js");
|
11
|
+
require("core-js/modules/esnext.set.intersection.v2.js");
|
12
|
+
require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
|
13
|
+
require("core-js/modules/esnext.set.is-subset-of.v2.js");
|
14
|
+
require("core-js/modules/esnext.set.is-superset-of.v2.js");
|
15
|
+
require("core-js/modules/esnext.set.symmetric-difference.v2.js");
|
16
|
+
require("core-js/modules/esnext.set.union.v2.js");
|
10
17
|
var _object = require("../../helpers/object");
|
11
18
|
var _registry = require("../../cellTypes/registry");
|
12
19
|
/**
|
@@ -1,4 +1,11 @@
|
|
1
1
|
import "core-js/modules/es.error.cause.js";
|
2
|
+
import "core-js/modules/esnext.set.difference.v2.js";
|
3
|
+
import "core-js/modules/esnext.set.intersection.v2.js";
|
4
|
+
import "core-js/modules/esnext.set.is-disjoint-from.v2.js";
|
5
|
+
import "core-js/modules/esnext.set.is-subset-of.v2.js";
|
6
|
+
import "core-js/modules/esnext.set.is-superset-of.v2.js";
|
7
|
+
import "core-js/modules/esnext.set.symmetric-difference.v2.js";
|
8
|
+
import "core-js/modules/esnext.set.union.v2.js";
|
2
9
|
import { hasOwnProperty, isObject, objectEach, inherit, extend } from "../../helpers/object.mjs";
|
3
10
|
import { getCellType } from "../../cellTypes/registry.mjs";
|
4
11
|
/**
|
package/dist/handsontable.css
CHANGED
@@ -25,8 +25,8 @@
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
27
27
|
*
|
28
|
-
* Version: 14.
|
29
|
-
* Release date:
|
28
|
+
* Version: 14.4.0-next-0a79a1f-20240521
|
29
|
+
* Release date: 28/05/2024 (built at 21/05/2024 10:48:00)
|
30
30
|
*/
|
31
31
|
/**
|
32
32
|
* Fix for bootstrap styles
|
@@ -203,12 +203,11 @@
|
|
203
203
|
}
|
204
204
|
|
205
205
|
.handsontable th:first-child,
|
206
|
-
.handsontable th:nth-child(2),
|
207
206
|
.handsontable td:first-of-type {
|
208
207
|
border-left: 1px solid #ccc;
|
209
208
|
}
|
210
209
|
|
211
|
-
[dir=rtl].handsontable th:first-child, [dir=rtl].handsontable
|
210
|
+
[dir=rtl].handsontable th:first-child, [dir=rtl].handsontable td:first-of-type {
|
212
211
|
border-right: 1px solid #ccc;
|
213
212
|
}
|
214
213
|
|
@@ -1412,7 +1411,7 @@ textarea.HandsontableCopyPaste {
|
|
1412
1411
|
}
|
1413
1412
|
|
1414
1413
|
.htUIMultipleSelect .ht_master .wtHolder {
|
1415
|
-
overflow
|
1414
|
+
overflow: auto;
|
1416
1415
|
}
|
1417
1416
|
|
1418
1417
|
.handsontable .htFiltersActive .changeType {
|
@@ -25,8 +25,8 @@
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
27
27
|
*
|
28
|
-
* Version: 14.
|
29
|
-
* Release date:
|
28
|
+
* Version: 14.4.0-next-0a79a1f-20240521
|
29
|
+
* Release date: 28/05/2024 (built at 21/05/2024 10:48:00)
|
30
30
|
*/
|
31
31
|
/**
|
32
32
|
* Fix for bootstrap styles
|
@@ -203,12 +203,11 @@
|
|
203
203
|
}
|
204
204
|
|
205
205
|
.handsontable th:first-child,
|
206
|
-
.handsontable th:nth-child(2),
|
207
206
|
.handsontable td:first-of-type {
|
208
207
|
border-left: 1px solid #ccc;
|
209
208
|
}
|
210
209
|
|
211
|
-
[dir=rtl].handsontable th:first-child, [dir=rtl].handsontable
|
210
|
+
[dir=rtl].handsontable th:first-child, [dir=rtl].handsontable td:first-of-type {
|
212
211
|
border-right: 1px solid #ccc;
|
213
212
|
}
|
214
213
|
|
@@ -1645,7 +1644,7 @@ textarea.HandsontableCopyPaste {
|
|
1645
1644
|
}
|
1646
1645
|
|
1647
1646
|
.htUIMultipleSelect .ht_master .wtHolder {
|
1648
|
-
overflow
|
1647
|
+
overflow: auto;
|
1649
1648
|
}
|
1650
1649
|
|
1651
1650
|
.handsontable .htFiltersActive .changeType {
|