handsontable 12.3.3 → 12.4.0-next-acb5d99-20230512
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/cell/coords.js +13 -16
- package/3rdparty/walkontable/src/cell/coords.mjs +13 -16
- package/3rdparty/walkontable/src/cell/range.js +25 -29
- package/3rdparty/walkontable/src/cell/range.mjs +24 -28
- package/3rdparty/walkontable/src/core/_base.js +16 -20
- package/3rdparty/walkontable/src/core/_base.mjs +16 -20
- package/3rdparty/walkontable/src/event.js +4 -0
- package/3rdparty/walkontable/src/event.mjs +4 -0
- package/3rdparty/walkontable/src/overlay/_base.js +6 -7
- package/3rdparty/walkontable/src/overlay/_base.mjs +6 -7
- package/3rdparty/walkontable/src/overlay/bottom.js +6 -7
- package/3rdparty/walkontable/src/overlay/bottom.mjs +6 -7
- package/3rdparty/walkontable/src/overlay/top.js +6 -7
- package/3rdparty/walkontable/src/overlay/top.mjs +6 -7
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +10 -12
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +10 -12
- package/3rdparty/walkontable/src/overlays.js +55 -64
- package/3rdparty/walkontable/src/overlays.mjs +55 -64
- package/3rdparty/walkontable/src/scroll.js +20 -23
- package/3rdparty/walkontable/src/scroll.mjs +20 -23
- package/3rdparty/walkontable/src/settings.js +13 -15
- package/3rdparty/walkontable/src/settings.mjs +13 -15
- package/3rdparty/walkontable/src/table.js +22 -26
- package/3rdparty/walkontable/src/table.mjs +22 -26
- package/CHANGELOG.md +14 -0
- package/base.js +2 -4
- package/base.mjs +2 -2
- package/core.js +23 -6
- package/core.mjs +23 -6
- package/dataMap/dataSource.js +5 -5
- package/dataMap/dataSource.mjs +5 -5
- package/dataMap/metaManager/metaSchema.js +9 -7
- package/dataMap/metaManager/metaSchema.mjs +9 -7
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +7364 -5992
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +256 -234
- package/dist/handsontable.js +4326 -3275
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +11 -3
- package/dist/languages/all.js +133 -0
- package/dist/languages/ar-AR.js +7 -0
- package/dist/languages/cs-CZ.js +7 -0
- package/dist/languages/de-CH.js +7 -0
- package/dist/languages/de-DE.js +7 -0
- package/dist/languages/en-US.js +7 -0
- package/dist/languages/es-MX.js +7 -0
- package/dist/languages/fr-FR.js +7 -0
- package/dist/languages/it-IT.js +7 -0
- package/dist/languages/ja-JP.js +7 -0
- package/dist/languages/ko-KR.js +7 -0
- package/dist/languages/lv-LV.js +7 -0
- package/dist/languages/nb-NO.js +7 -0
- package/dist/languages/nl-NL.js +7 -0
- package/dist/languages/pl-PL.js +7 -0
- package/dist/languages/pt-BR.js +7 -0
- package/dist/languages/ru-RU.js +7 -0
- package/dist/languages/sr-SP.js +7 -0
- package/dist/languages/zh-CN.js +7 -0
- package/dist/languages/zh-TW.js +7 -0
- package/editors/autocompleteEditor/autocompleteEditor.js +8 -9
- package/editors/autocompleteEditor/autocompleteEditor.mjs +8 -9
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/i18n/languages/ar-AR.js +7 -1
- package/i18n/languages/cs-CZ.js +7 -1
- package/i18n/languages/de-CH.js +7 -1
- package/i18n/languages/de-DE.js +7 -1
- package/i18n/languages/en-US.js +7 -1
- package/i18n/languages/es-MX.js +7 -1
- package/i18n/languages/fr-FR.js +7 -1
- package/i18n/languages/it-IT.js +7 -1
- package/i18n/languages/ja-JP.js +7 -1
- package/i18n/languages/ko-KR.js +7 -1
- package/i18n/languages/lv-LV.js +7 -1
- package/i18n/languages/nb-NO.js +7 -1
- package/i18n/languages/nl-NL.js +7 -1
- package/i18n/languages/pl-PL.js +7 -1
- package/i18n/languages/pt-BR.js +7 -1
- package/i18n/languages/ru-RU.js +7 -1
- package/i18n/languages/sr-SP.js +7 -1
- package/i18n/languages/zh-CN.js +7 -1
- package/i18n/languages/zh-TW.js +7 -1
- package/languages/all.js +133 -0
- package/languages/ar-AR.js +7 -0
- package/languages/cs-CZ.js +7 -0
- package/languages/de-CH.js +7 -0
- package/languages/de-DE.js +7 -0
- package/languages/en-US.js +7 -0
- package/languages/es-MX.js +7 -0
- package/languages/fr-FR.js +7 -0
- package/languages/index.js +133 -0
- package/languages/it-IT.js +7 -0
- package/languages/ja-JP.js +7 -0
- package/languages/ko-KR.js +7 -0
- package/languages/lv-LV.js +7 -0
- package/languages/nb-NO.js +7 -0
- package/languages/nl-NL.js +7 -0
- package/languages/pl-PL.js +7 -0
- package/languages/pt-BR.js +7 -0
- package/languages/ru-RU.js +7 -0
- package/languages/sr-SP.js +7 -0
- package/languages/zh-CN.js +7 -0
- package/languages/zh-TW.js +7 -0
- package/package.json +3 -2
- package/pluginHooks.js +16 -6
- package/pluginHooks.mjs +15 -3
- package/plugins/autoRowSize/autoRowSize.js +2 -2
- package/plugins/autoRowSize/autoRowSize.mjs +2 -2
- package/plugins/base/base.js +9 -10
- package/plugins/base/base.mjs +9 -10
- package/plugins/collapsibleColumns/collapsibleColumns.js +24 -7
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +24 -7
- package/plugins/copyPaste/copyPaste.js +92 -16
- package/plugins/copyPaste/copyPaste.mjs +92 -16
- package/plugins/copyPaste/copyableRanges.js +39 -39
- package/plugins/copyPaste/copyableRanges.mjs +32 -32
- package/plugins/customBorders/customBorders.d.ts +2 -0
- package/plugins/customBorders/customBorders.js +6 -7
- package/plugins/customBorders/customBorders.mjs +6 -7
- package/plugins/filters/filters.js +5 -0
- package/plugins/filters/filters.mjs +5 -0
- package/plugins/formulas/engine/register.js +9 -0
- package/plugins/formulas/engine/register.mjs +13 -4
- package/plugins/formulas/engine/settings.js +18 -3
- package/plugins/formulas/engine/settings.mjs +16 -3
- package/plugins/formulas/formulas.js +308 -162
- package/plugins/formulas/formulas.mjs +308 -163
- package/plugins/formulas/indexSyncer/axisSyncer.js +379 -0
- package/plugins/formulas/indexSyncer/axisSyncer.mjs +374 -0
- package/plugins/formulas/indexSyncer/index.js +225 -0
- package/plugins/formulas/indexSyncer/index.mjs +219 -0
- package/plugins/formulas/utils.js +81 -0
- package/plugins/formulas/utils.mjs +74 -0
- package/plugins/hiddenColumns/hiddenColumns.js +12 -7
- package/plugins/hiddenColumns/hiddenColumns.mjs +12 -7
- package/plugins/hiddenRows/hiddenRows.js +12 -7
- package/plugins/hiddenRows/hiddenRows.mjs +12 -7
- package/plugins/manualRowMove/manualRowMove.js +26 -11
- package/plugins/manualRowMove/manualRowMove.mjs +27 -12
- package/plugins/nestedHeaders/nestedHeaders.js +26 -7
- package/plugins/nestedHeaders/nestedHeaders.mjs +26 -7
- package/plugins/nestedHeaders/stateManager/headersTree.js +23 -26
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +20 -23
- package/plugins/nestedHeaders/stateManager/index.js +21 -3
- package/plugins/nestedHeaders/stateManager/index.mjs +18 -0
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +1 -0
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +1 -1
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +19 -0
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +19 -0
- package/plugins/nestedHeaders/utils/ghostTable.js +30 -35
- package/plugins/nestedHeaders/utils/ghostTable.mjs +30 -35
- package/plugins/registry.js +3 -1
- package/plugins/undoRedo/undoRedo.js +0 -1
- package/plugins/undoRedo/undoRedo.mjs +0 -1
- package/selection/highlight/visualSelection.js +5 -6
- package/selection/highlight/visualSelection.mjs +5 -6
- package/tableView.js +62 -72
- package/tableView.mjs +62 -72
- package/translations/changesObservable/observable.js +41 -46
- package/translations/changesObservable/observable.mjs +36 -41
- package/translations/changesObservable/observer.js +8 -1
- package/translations/changesObservable/observer.mjs +7 -0
- package/translations/indexMapper.js +21 -0
- package/translations/indexMapper.mjs +21 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.js +6 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +6 -0
- package/utils/dataStructures/tree.js +15 -18
- package/utils/dataStructures/tree.mjs +15 -18
- package/utils/parseTable.js +5 -1
- package/utils/parseTable.mjs +5 -1
@@ -120,6 +120,12 @@ export var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
|
|
120
120
|
args[_key] = arguments[_key];
|
121
121
|
}
|
122
122
|
_this = _super.call.apply(_super, [this].concat(args));
|
123
|
+
/**
|
124
|
+
* Saved borders.
|
125
|
+
*
|
126
|
+
* @private
|
127
|
+
* @type {Array}
|
128
|
+
*/
|
123
129
|
_defineProperty(_assertThisInitialized(_this), "savedBorders", []);
|
124
130
|
return _this;
|
125
131
|
}
|
@@ -870,13 +876,6 @@ export var CustomBorders = /*#__PURE__*/function (_BasePlugin) {
|
|
870
876
|
get: function get() {
|
871
877
|
return PLUGIN_PRIORITY;
|
872
878
|
}
|
873
|
-
|
874
|
-
/**
|
875
|
-
* Saved borders.
|
876
|
-
*
|
877
|
-
* @private
|
878
|
-
* @type {Array}
|
879
|
-
*/
|
880
879
|
}]);
|
881
880
|
return CustomBorders;
|
882
881
|
}(BasePlugin);
|
@@ -329,6 +329,11 @@ var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
329
329
|
* * `between` - Between
|
330
330
|
* * `by_value` - By value
|
331
331
|
* * `contains` - Contains
|
332
|
+
* * `date_after` - After a date
|
333
|
+
* * `date_before` - Before a date
|
334
|
+
* * `date_today` - Today
|
335
|
+
* * `date_tomorrow` - Tomorrow
|
336
|
+
* * `date_yesterday` - Yesterday
|
332
337
|
* * `empty` - Empty
|
333
338
|
* * `ends_with` - Ends with
|
334
339
|
* * `eq` - Equal
|
@@ -319,6 +319,11 @@ export var Filters = /*#__PURE__*/function (_BasePlugin) {
|
|
319
319
|
* * `between` - Between
|
320
320
|
* * `by_value` - By value
|
321
321
|
* * `contains` - Contains
|
322
|
+
* * `date_after` - After a date
|
323
|
+
* * `date_before` - Before a date
|
324
|
+
* * `date_today` - Today
|
325
|
+
* * `date_tomorrow` - Tomorrow
|
326
|
+
* * `date_yesterday` - Yesterday
|
322
327
|
* * `empty` - Empty
|
323
328
|
* * `ends_with` - Ends with
|
324
329
|
* * `eq` - Equal
|
@@ -3,6 +3,8 @@
|
|
3
3
|
require("core-js/modules/es.symbol.js");
|
4
4
|
require("core-js/modules/es.symbol.description.js");
|
5
5
|
require("core-js/modules/es.symbol.iterator.js");
|
6
|
+
require("core-js/modules/es.array.slice.js");
|
7
|
+
require("core-js/modules/es.object.freeze.js");
|
6
8
|
exports.__esModule = true;
|
7
9
|
exports.getRegisteredHotInstances = getRegisteredHotInstances;
|
8
10
|
exports.registerCustomFunctions = registerCustomFunctions;
|
@@ -27,10 +29,14 @@ require("core-js/modules/web.dom-collections.for-each.js");
|
|
27
29
|
require("core-js/modules/es.function.name.js");
|
28
30
|
var _staticRegister = _interopRequireDefault(require("../../../utils/staticRegister"));
|
29
31
|
var _mixed = require("../../../helpers/mixed");
|
32
|
+
var _templateLiteralTag = require("../../../helpers/templateLiteralTag");
|
30
33
|
var _console = require("../../../helpers/console");
|
34
|
+
var _object = require("../../../helpers/object");
|
31
35
|
var _formulas = require("../formulas");
|
32
36
|
var _settings = require("./settings");
|
37
|
+
var _templateObject;
|
33
38
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
39
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
34
40
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
35
41
|
/**
|
36
42
|
* Prepares and returns the collection for the engine relationship with the HoT instances.
|
@@ -99,6 +105,9 @@ function setupEngine(hotInstance) {
|
|
99
105
|
licenseKey: _settings.DEFAULT_LICENSE_KEY
|
100
106
|
});
|
101
107
|
}
|
108
|
+
if (engineConfigItem.getConfig().leapYear1900 !== _settings.DEFAULT_SETTINGS.leapYear1900 || (0, _object.isObjectEqual)(engineConfigItem.getConfig().nullDate, _settings.DEFAULT_SETTINGS.nullDate) === false) {
|
109
|
+
(0, _console.warn)((0, _templateLiteralTag.toSingleLine)(_templateObject || (_templateObject = _taggedTemplateLiteral(["If you use HyperFormula with Handsontable, keep the default `leapYear1900` and `nullDate` \n settings. Otherwise, HyperFormula's dates may not sync correctly with Handsontable's dates."], ["If you use HyperFormula with Handsontable, keep the default \\`leapYear1900\\` and \\`nullDate\\` \n settings. Otherwise, HyperFormula's dates may not sync correctly with Handsontable's dates."]))));
|
110
|
+
}
|
102
111
|
return engineConfigItem;
|
103
112
|
}
|
104
113
|
return null;
|
@@ -1,3 +1,10 @@
|
|
1
|
+
import "core-js/modules/es.symbol.js";
|
2
|
+
import "core-js/modules/es.symbol.description.js";
|
3
|
+
import "core-js/modules/es.symbol.iterator.js";
|
4
|
+
import "core-js/modules/es.array.slice.js";
|
5
|
+
import "core-js/modules/es.object.freeze.js";
|
6
|
+
var _templateObject;
|
7
|
+
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
1
8
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
2
9
|
import "core-js/modules/es.array.iterator.js";
|
3
10
|
import "core-js/modules/es.map.js";
|
@@ -12,14 +19,13 @@ import "core-js/modules/es.array.splice.js";
|
|
12
19
|
import "core-js/modules/es.array.index-of.js";
|
13
20
|
import "core-js/modules/web.dom-collections.for-each.js";
|
14
21
|
import "core-js/modules/es.function.name.js";
|
15
|
-
import "core-js/modules/es.symbol.js";
|
16
|
-
import "core-js/modules/es.symbol.description.js";
|
17
|
-
import "core-js/modules/es.symbol.iterator.js";
|
18
22
|
import staticRegister from "../../../utils/staticRegister.mjs";
|
19
23
|
import { isUndefined } from "../../../helpers/mixed.mjs";
|
24
|
+
import { toSingleLine } from "../../../helpers/templateLiteralTag.mjs";
|
20
25
|
import { warn } from "../../../helpers/console.mjs";
|
26
|
+
import { isObjectEqual } from "../../../helpers/object.mjs";
|
21
27
|
import { PLUGIN_KEY } from "../formulas.mjs";
|
22
|
-
import { DEFAULT_LICENSE_KEY, getEngineSettingsWithDefaultsAndOverrides } from "./settings.mjs";
|
28
|
+
import { DEFAULT_LICENSE_KEY, DEFAULT_SETTINGS, getEngineSettingsWithDefaultsAndOverrides } from "./settings.mjs";
|
23
29
|
/**
|
24
30
|
* Prepares and returns the collection for the engine relationship with the HoT instances.
|
25
31
|
*
|
@@ -87,6 +93,9 @@ export function setupEngine(hotInstance) {
|
|
87
93
|
licenseKey: DEFAULT_LICENSE_KEY
|
88
94
|
});
|
89
95
|
}
|
96
|
+
if (engineConfigItem.getConfig().leapYear1900 !== DEFAULT_SETTINGS.leapYear1900 || isObjectEqual(engineConfigItem.getConfig().nullDate, DEFAULT_SETTINGS.nullDate) === false) {
|
97
|
+
warn(toSingleLine(_templateObject || (_templateObject = _taggedTemplateLiteral(["If you use HyperFormula with Handsontable, keep the default `leapYear1900` and `nullDate` \n settings. Otherwise, HyperFormula's dates may not sync correctly with Handsontable's dates."], ["If you use HyperFormula with Handsontable, keep the default \\`leapYear1900\\` and \\`nullDate\\` \n settings. Otherwise, HyperFormula's dates may not sync correctly with Handsontable's dates."]))));
|
98
|
+
}
|
90
99
|
return engineConfigItem;
|
91
100
|
}
|
92
101
|
return null;
|
@@ -15,10 +15,11 @@ require("core-js/modules/es.string.iterator.js");
|
|
15
15
|
require("core-js/modules/web.dom-collections.iterator.js");
|
16
16
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
17
17
|
exports.__esModule = true;
|
18
|
-
exports.DEFAULT_LICENSE_KEY = void 0;
|
18
|
+
exports.DEFAULT_SETTINGS = exports.DEFAULT_LICENSE_KEY = void 0;
|
19
19
|
exports.getEngineSettingsOverrides = getEngineSettingsOverrides;
|
20
20
|
exports.getEngineSettingsWithDefaultsAndOverrides = getEngineSettingsWithDefaultsAndOverrides;
|
21
21
|
exports.getEngineSettingsWithOverrides = getEngineSettingsWithOverrides;
|
22
|
+
exports.haveEngineSettingsChanged = haveEngineSettingsChanged;
|
22
23
|
require("core-js/modules/es.array.reduce.js");
|
23
24
|
require("core-js/modules/es.object.to-string.js");
|
24
25
|
require("core-js/modules/es.object.keys.js");
|
@@ -39,11 +40,11 @@ var DEFAULT_SETTINGS = {
|
|
39
40
|
precisionEpsilon: 1e-13,
|
40
41
|
precisionRounding: 14,
|
41
42
|
smartRounding: true,
|
42
|
-
leapYear1900:
|
43
|
+
leapYear1900: false,
|
43
44
|
nullDate: {
|
44
45
|
year: 1899,
|
45
46
|
month: 12,
|
46
|
-
day:
|
47
|
+
day: 30
|
47
48
|
},
|
48
49
|
nullYear: 30,
|
49
50
|
dateFormats: ['DD/MM/YYYY', 'DD/MM/YY'],
|
@@ -63,6 +64,7 @@ var DEFAULT_SETTINGS = {
|
|
63
64
|
* @param {object} hotSettings Handsontable settings object.
|
64
65
|
* @returns {object} Object containing the overriding options.
|
65
66
|
*/
|
67
|
+
exports.DEFAULT_SETTINGS = DEFAULT_SETTINGS;
|
66
68
|
function getEngineSettingsOverrides(hotSettings) {
|
67
69
|
var _hotSettings$PLUGIN_K, _hotSettings$PLUGIN_K2;
|
68
70
|
return {
|
@@ -123,4 +125,17 @@ function getEngineSettingsWithOverrides(hotSettings) {
|
|
123
125
|
var userSettings = cleanEngineSettings(pluginSettings !== null && pluginSettings !== void 0 && (_pluginSettings$engin2 = pluginSettings.engine) !== null && _pluginSettings$engin2 !== void 0 && _pluginSettings$engin2.hyperformula ? pluginSettings.engine : {});
|
124
126
|
var overrides = getEngineSettingsOverrides(hotSettings);
|
125
127
|
return _objectSpread(_objectSpread({}, userSettings), overrides);
|
128
|
+
}
|
129
|
+
|
130
|
+
/**
|
131
|
+
* Check if the new settings are defined and are different from the ones currently used by the engine.
|
132
|
+
*
|
133
|
+
* @param {object} currentEngineSettings Currently used engine settings.
|
134
|
+
* @param {object} newEngineSettings New engine settings.
|
135
|
+
* @returns {boolean}
|
136
|
+
*/
|
137
|
+
function haveEngineSettingsChanged(currentEngineSettings, newEngineSettings) {
|
138
|
+
return Object.keys(newEngineSettings).some(function (settingOption) {
|
139
|
+
return newEngineSettings[settingOption] !== void 0 && newEngineSettings[settingOption] !== currentEngineSettings[settingOption];
|
140
|
+
});
|
126
141
|
}
|
@@ -22,7 +22,7 @@ import "core-js/modules/es.string.iterator.js";
|
|
22
22
|
import "core-js/modules/web.dom-collections.iterator.js";
|
23
23
|
import { PLUGIN_KEY } from "../formulas.mjs";
|
24
24
|
export var DEFAULT_LICENSE_KEY = 'internal-use-in-handsontable';
|
25
|
-
var DEFAULT_SETTINGS = {
|
25
|
+
export var DEFAULT_SETTINGS = {
|
26
26
|
licenseKey: DEFAULT_LICENSE_KEY,
|
27
27
|
useArrayArithmetic: true,
|
28
28
|
useColumnIndex: false,
|
@@ -31,11 +31,11 @@ var DEFAULT_SETTINGS = {
|
|
31
31
|
precisionEpsilon: 1e-13,
|
32
32
|
precisionRounding: 14,
|
33
33
|
smartRounding: true,
|
34
|
-
leapYear1900:
|
34
|
+
leapYear1900: false,
|
35
35
|
nullDate: {
|
36
36
|
year: 1899,
|
37
37
|
month: 12,
|
38
|
-
day:
|
38
|
+
day: 30
|
39
39
|
},
|
40
40
|
nullYear: 30,
|
41
41
|
dateFormats: ['DD/MM/YYYY', 'DD/MM/YY'],
|
@@ -115,4 +115,17 @@ export function getEngineSettingsWithOverrides(hotSettings) {
|
|
115
115
|
var userSettings = cleanEngineSettings(pluginSettings !== null && pluginSettings !== void 0 && (_pluginSettings$engin2 = pluginSettings.engine) !== null && _pluginSettings$engin2 !== void 0 && _pluginSettings$engin2.hyperformula ? pluginSettings.engine : {});
|
116
116
|
var overrides = getEngineSettingsOverrides(hotSettings);
|
117
117
|
return _objectSpread(_objectSpread({}, userSettings), overrides);
|
118
|
+
}
|
119
|
+
|
120
|
+
/**
|
121
|
+
* Check if the new settings are defined and are different from the ones currently used by the engine.
|
122
|
+
*
|
123
|
+
* @param {object} currentEngineSettings Currently used engine settings.
|
124
|
+
* @param {object} newEngineSettings New engine settings.
|
125
|
+
* @returns {boolean}
|
126
|
+
*/
|
127
|
+
export function haveEngineSettingsChanged(currentEngineSettings, newEngineSettings) {
|
128
|
+
return Object.keys(newEngineSettings).some(function (settingOption) {
|
129
|
+
return newEngineSettings[settingOption] !== void 0 && newEngineSettings[settingOption] !== currentEngineSettings[settingOption];
|
130
|
+
});
|
118
131
|
}
|