handsontable 0.0.0-next-7026906-20231107 → 0.0.0-next-7b93b7d-20231107
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of handsontable might be problematic. Click here for more details.
- package/3rdparty/SheetClip/SheetClip.js +2 -2
- package/3rdparty/SheetClip/SheetClip.mjs +2 -2
- package/3rdparty/autoResize/autoResize.js +2 -2
- package/3rdparty/autoResize/autoResize.mjs +2 -2
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +108 -85
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +108 -85
- package/3rdparty/walkontable/src/calculator/viewportRows.js +60 -52
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +60 -52
- package/3rdparty/walkontable/src/core/clone.js +6 -0
- package/3rdparty/walkontable/src/core/clone.mjs +6 -0
- package/3rdparty/walkontable/src/event.js +125 -74
- package/3rdparty/walkontable/src/event.mjs +125 -74
- package/3rdparty/walkontable/src/filter/column.js +16 -0
- package/3rdparty/walkontable/src/filter/column.mjs +16 -0
- package/3rdparty/walkontable/src/filter/row.js +16 -0
- package/3rdparty/walkontable/src/filter/row.mjs +16 -0
- package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
- package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/top.js +1 -1
- package/3rdparty/walkontable/src/overlay/top.mjs +1 -1
- package/3rdparty/walkontable/src/renderer/_base.js +12 -5
- package/3rdparty/walkontable/src/renderer/_base.mjs +12 -5
- package/3rdparty/walkontable/src/renderer/cells.js +6 -2
- package/3rdparty/walkontable/src/renderer/cells.mjs +6 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +6 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +6 -2
- package/3rdparty/walkontable/src/renderer/rows.js +5 -0
- package/3rdparty/walkontable/src/renderer/rows.mjs +5 -0
- package/3rdparty/walkontable/src/renderer/table.js +24 -17
- package/3rdparty/walkontable/src/renderer/table.mjs +24 -17
- package/3rdparty/walkontable/src/scroll.js +2 -2
- package/3rdparty/walkontable/src/scroll.mjs +2 -2
- package/3rdparty/walkontable/src/selection/border/border.js +1 -1
- package/3rdparty/walkontable/src/selection/border/border.mjs +1 -1
- package/3rdparty/walkontable/src/settings.js +10 -10
- package/3rdparty/walkontable/src/settings.mjs +10 -10
- package/3rdparty/walkontable/src/table.js +3 -3
- package/3rdparty/walkontable/src/table.mjs +3 -3
- package/3rdparty/walkontable/src/utils/column.js +19 -4
- package/3rdparty/walkontable/src/utils/column.mjs +19 -4
- package/3rdparty/walkontable/src/utils/nodesPool.js +5 -0
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +5 -0
- package/3rdparty/walkontable/src/utils/orderView/view.js +13 -6
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +13 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +9 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +9 -6
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +7 -4
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +7 -4
- package/3rdparty/walkontable/src/utils/row.js +14 -2
- package/3rdparty/walkontable/src/utils/row.mjs +14 -2
- package/3rdparty/walkontable/src/viewport.js +9 -9
- package/3rdparty/walkontable/src/viewport.mjs +9 -9
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.js +25 -25
- package/core.mjs +25 -25
- package/dataMap/dataMap.js +99 -90
- package/dataMap/dataMap.mjs +99 -90
- package/dataMap/dataSource.js +14 -8
- package/dataMap/dataSource.mjs +14 -8
- package/dataMap/metaManager/lazyFactoryMap.js +19 -7
- package/dataMap/metaManager/lazyFactoryMap.mjs +19 -7
- package/dataMap/metaManager/metaLayers/cellMeta.js +8 -3
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +8 -3
- package/dataMap/metaManager/metaLayers/columnMeta.js +7 -1
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +7 -1
- package/dataMap/metaManager/metaLayers/globalMeta.js +6 -1
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +6 -1
- package/dataMap/metaManager/metaLayers/tableMeta.js +6 -2
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +6 -2
- package/dataMap/metaManager/metaSchema.js +55 -55
- package/dataMap/metaManager/metaSchema.mjs +55 -55
- package/dataMap/metaManager/mods/dynamicCellMeta.js +7 -2
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +7 -2
- package/dataMap/metaManager/mods/extendMetaProperties.js +8 -4
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +8 -4
- package/dataMap/metaManager/utils.js +2 -2
- package/dataMap/metaManager/utils.mjs +2 -2
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +7244 -6347
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +120 -120
- package/dist/handsontable.js +7243 -6346
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +28 -28
- package/editorManager.js +105 -95
- package/editorManager.mjs +105 -95
- package/editors/autocompleteEditor/autocompleteEditor.js +47 -46
- package/editors/autocompleteEditor/autocompleteEditor.mjs +46 -45
- package/editors/baseEditor/baseEditor.js +23 -26
- package/editors/baseEditor/baseEditor.mjs +23 -26
- package/editors/dateEditor/dateEditor.js +24 -15
- package/editors/dateEditor/dateEditor.mjs +24 -15
- package/editors/dropdownEditor/dropdownEditor.js +1 -1
- package/editors/dropdownEditor/dropdownEditor.mjs +1 -1
- package/editors/handsontableEditor/handsontableEditor.js +4 -4
- package/editors/handsontableEditor/handsontableEditor.mjs +4 -4
- package/editors/textEditor/textEditor.js +23 -17
- package/editors/textEditor/textEditor.mjs +24 -18
- package/eventManager.js +8 -0
- package/eventManager.mjs +8 -0
- package/helpers/array.js +2 -2
- package/helpers/array.mjs +2 -2
- package/helpers/dom/element.js +7 -7
- package/helpers/dom/element.mjs +7 -7
- package/helpers/function.js +1 -1
- package/helpers/function.mjs +1 -1
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/helpers/object.js +4 -4
- package/helpers/object.mjs +4 -4
- package/helpers/string.js +1 -1
- package/helpers/string.mjs +1 -1
- package/package.json +1 -1
- package/pluginHooks.d.ts +0 -2
- package/pluginHooks.js +12 -3
- package/pluginHooks.mjs +12 -3
- package/plugins/autoColumnSize/autoColumnSize.js +141 -130
- package/plugins/autoColumnSize/autoColumnSize.mjs +140 -129
- package/plugins/autoRowSize/autoRowSize.js +112 -125
- package/plugins/autoRowSize/autoRowSize.mjs +110 -123
- package/plugins/autofill/autofill.js +97 -102
- package/plugins/autofill/autofill.mjs +96 -101
- package/plugins/base/base.js +57 -22
- package/plugins/base/base.mjs +56 -22
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +29 -24
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +28 -23
- package/plugins/collapsibleColumns/collapsibleColumns.js +104 -107
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +102 -104
- package/plugins/columnSorting/columnSorting.js +105 -98
- package/plugins/columnSorting/columnSorting.mjs +104 -97
- package/plugins/columnSorting/columnStatesManager.js +12 -6
- package/plugins/columnSorting/columnStatesManager.mjs +12 -6
- package/plugins/columnSummary/columnSummary.js +71 -58
- package/plugins/columnSummary/columnSummary.mjs +70 -57
- package/plugins/columnSummary/endpoints.js +20 -14
- package/plugins/columnSummary/endpoints.mjs +20 -14
- package/plugins/comments/commentEditor.js +30 -2
- package/plugins/comments/commentEditor.mjs +30 -2
- package/plugins/comments/comments.js +158 -169
- package/plugins/comments/comments.mjs +157 -168
- package/plugins/comments/displaySwitch.js +7 -3
- package/plugins/comments/displaySwitch.mjs +7 -3
- package/plugins/contextMenu/commandExecutor.js +15 -2
- package/plugins/contextMenu/commandExecutor.mjs +15 -2
- package/plugins/contextMenu/contextMenu.js +91 -101
- package/plugins/contextMenu/contextMenu.mjs +90 -100
- package/plugins/contextMenu/itemsFactory.js +19 -4
- package/plugins/contextMenu/itemsFactory.mjs +19 -4
- package/plugins/contextMenu/menu/cursor.js +36 -0
- package/plugins/contextMenu/menu/cursor.mjs +36 -0
- package/plugins/contextMenu/menu/menu.js +57 -5
- package/plugins/contextMenu/menu/menu.mjs +57 -5
- package/plugins/copyPaste/copyPaste.js +74 -75
- package/plugins/copyPaste/copyPaste.mjs +74 -75
- package/plugins/customBorders/customBorders.js +49 -48
- package/plugins/customBorders/customBorders.mjs +48 -47
- package/plugins/dragToScroll/dragToScroll.js +50 -54
- package/plugins/dragToScroll/dragToScroll.mjs +49 -52
- package/plugins/dropdownMenu/dropdownMenu.js +132 -129
- package/plugins/dropdownMenu/dropdownMenu.mjs +132 -129
- package/plugins/exportFile/dataProvider.js +7 -2
- package/plugins/exportFile/dataProvider.mjs +7 -2
- package/plugins/exportFile/exportFile.js +1 -1
- package/plugins/exportFile/exportFile.mjs +1 -1
- package/plugins/exportFile/types/_base.js +14 -6
- package/plugins/exportFile/types/_base.mjs +14 -6
- package/plugins/filters/component/actionBar.js +9 -0
- package/plugins/filters/component/actionBar.mjs +9 -0
- package/plugins/filters/component/condition.js +13 -0
- package/plugins/filters/component/condition.mjs +13 -0
- package/plugins/filters/component/operators.js +9 -0
- package/plugins/filters/component/operators.mjs +9 -0
- package/plugins/filters/component/value.js +9 -0
- package/plugins/filters/component/value.mjs +9 -0
- package/plugins/filters/conditionCollection.js +9 -4
- package/plugins/filters/conditionCollection.mjs +9 -4
- package/plugins/filters/conditionUpdateObserver.js +53 -42
- package/plugins/filters/conditionUpdateObserver.mjs +53 -42
- package/plugins/filters/dataFilter.js +9 -3
- package/plugins/filters/dataFilter.mjs +9 -3
- package/plugins/filters/filters.js +184 -189
- package/plugins/filters/filters.mjs +182 -187
- package/plugins/filters/ui/_base.js +1 -1
- package/plugins/filters/ui/_base.mjs +1 -1
- package/plugins/filters/utils.js +1 -1
- package/plugins/filters/utils.mjs +1 -1
- package/plugins/formulas/engine/settings.js +1 -1
- package/plugins/formulas/engine/settings.mjs +1 -1
- package/plugins/formulas/formulas.js +684 -602
- package/plugins/formulas/formulas.mjs +682 -600
- package/plugins/hiddenColumns/hiddenColumns.js +174 -169
- package/plugins/hiddenColumns/hiddenColumns.mjs +173 -168
- package/plugins/hiddenRows/hiddenRows.js +170 -165
- package/plugins/hiddenRows/hiddenRows.mjs +169 -164
- 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/manualColumnFreeze/manualColumnFreeze.js +67 -54
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +64 -51
- package/plugins/manualColumnMove/manualColumnMove.js +287 -232
- package/plugins/manualColumnMove/manualColumnMove.mjs +286 -231
- package/plugins/manualColumnMove/ui/_base.js +9 -3
- package/plugins/manualColumnMove/ui/_base.mjs +9 -3
- package/plugins/manualColumnResize/manualColumnResize.js +291 -246
- package/plugins/manualColumnResize/manualColumnResize.mjs +290 -244
- package/plugins/manualRowMove/manualRowMove.js +223 -208
- package/plugins/manualRowMove/manualRowMove.mjs +222 -207
- package/plugins/manualRowMove/ui/_base.js +10 -5
- package/plugins/manualRowMove/ui/_base.mjs +10 -5
- package/plugins/manualRowResize/manualRowResize.js +254 -209
- package/plugins/manualRowResize/manualRowResize.mjs +253 -207
- package/plugins/mergeCells/calculations/autofill.js +9 -3
- package/plugins/mergeCells/calculations/autofill.mjs +9 -3
- package/plugins/mergeCells/calculations/selection.js +10 -4
- package/plugins/mergeCells/calculations/selection.mjs +10 -4
- package/plugins/mergeCells/cellCoords.js +16 -6
- package/plugins/mergeCells/cellCoords.mjs +16 -6
- package/plugins/mergeCells/cellsCollection.js +10 -4
- package/plugins/mergeCells/cellsCollection.mjs +10 -4
- package/plugins/mergeCells/mergeCells.js +582 -502
- package/plugins/mergeCells/mergeCells.mjs +580 -500
- package/plugins/multiColumnSorting/multiColumnSorting.js +13 -10
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +13 -10
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +16 -28
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +16 -27
- package/plugins/nestedHeaders/nestedHeaders.js +542 -499
- package/plugins/nestedHeaders/nestedHeaders.mjs +554 -511
- package/plugins/nestedHeaders/stateManager/index.js +1 -1
- package/plugins/nestedHeaders/stateManager/index.mjs +1 -1
- package/plugins/nestedRows/data/dataManager.js +21 -15
- package/plugins/nestedRows/data/dataManager.mjs +21 -15
- package/plugins/nestedRows/nestedRows.js +326 -278
- package/plugins/nestedRows/nestedRows.mjs +325 -277
- package/plugins/nestedRows/ui/_base.js +7 -1
- package/plugins/nestedRows/ui/_base.mjs +7 -1
- package/plugins/nestedRows/ui/collapsing.js +2 -2
- package/plugins/nestedRows/ui/collapsing.mjs +2 -2
- package/plugins/nestedRows/ui/contextMenu.js +28 -18
- package/plugins/nestedRows/ui/contextMenu.mjs +28 -18
- package/plugins/nestedRows/utils/rowMoveController.js +12 -4
- package/plugins/nestedRows/utils/rowMoveController.mjs +12 -4
- package/plugins/persistentState/persistentState.js +14 -11
- package/plugins/persistentState/persistentState.mjs +14 -11
- package/plugins/persistentState/storage.js +11 -6
- package/plugins/persistentState/storage.mjs +11 -6
- package/plugins/registry.js +2 -2
- package/plugins/registry.mjs +2 -2
- package/plugins/search/search.js +57 -46
- package/plugins/search/search.mjs +56 -45
- package/plugins/touchScroll/touchScroll.js +102 -100
- package/plugins/touchScroll/touchScroll.mjs +100 -98
- package/plugins/trimRows/trimRows.js +33 -28
- package/plugins/trimRows/trimRows.mjs +32 -27
- package/plugins/undoRedo/undoRedo.js +2 -2
- package/plugins/undoRedo/undoRedo.mjs +2 -2
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +11 -11
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +11 -11
- package/renderers/baseRenderer/baseRenderer.js +2 -2
- package/renderers/baseRenderer/baseRenderer.mjs +2 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +23 -23
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +23 -23
- package/renderers/dateRenderer/dateRenderer.js +4 -4
- package/renderers/dateRenderer/dateRenderer.mjs +4 -4
- package/renderers/handsontableRenderer/handsontableRenderer.js +4 -4
- package/renderers/handsontableRenderer/handsontableRenderer.mjs +4 -4
- package/renderers/htmlRenderer/htmlRenderer.js +4 -4
- package/renderers/htmlRenderer/htmlRenderer.mjs +4 -4
- package/renderers/numericRenderer/numericRenderer.js +3 -3
- package/renderers/numericRenderer/numericRenderer.mjs +3 -3
- package/renderers/passwordRenderer/passwordRenderer.js +3 -3
- package/renderers/passwordRenderer/passwordRenderer.mjs +3 -3
- package/renderers/selectRenderer/selectRenderer.js +4 -4
- package/renderers/selectRenderer/selectRenderer.mjs +4 -4
- package/renderers/textRenderer/textRenderer.js +5 -5
- package/renderers/textRenderer/textRenderer.mjs +5 -5
- package/renderers/timeRenderer/timeRenderer.js +3 -3
- package/renderers/timeRenderer/timeRenderer.mjs +3 -3
- package/selection/range.js +12 -2
- package/selection/range.mjs +12 -2
- package/selection/selection.js +3 -3
- package/selection/selection.mjs +3 -3
- package/tableView.js +208 -200
- package/tableView.mjs +208 -200
- package/translations/changesObservable/utils.js +2 -2
- package/translations/changesObservable/utils.mjs +2 -2
- package/translations/indexMapper.js +25 -22
- package/translations/indexMapper.mjs +25 -22
- package/translations/mapCollections/aggregatedCollection.js +8 -2
- package/translations/mapCollections/aggregatedCollection.mjs +8 -2
- package/translations/mapCollections/mapCollection.js +5 -2
- package/translations/mapCollections/mapCollection.mjs +5 -2
- package/translations/maps/indexMap.js +6 -1
- package/translations/maps/indexMap.mjs +6 -1
- package/translations/maps/utils/physicallyIndexed.js +2 -2
- package/translations/maps/utils/physicallyIndexed.mjs +2 -2
- package/utils/dataStructures/linkedList.js +10 -6
- package/utils/dataStructures/linkedList.mjs +10 -6
- package/utils/dataStructures/queue.js +1 -1
- package/utils/dataStructures/queue.mjs +1 -1
- package/utils/dataStructures/stack.js +1 -1
- package/utils/dataStructures/stack.mjs +1 -1
- package/utils/ghostTable.js +2 -2
- package/utils/ghostTable.mjs +2 -2
- package/utils/interval.js +73 -36
- package/utils/interval.mjs +73 -36
- package/utils/parseTable.js +1 -1
- package/utils/parseTable.mjs +1 -1
- package/validators/autocompleteValidator/autocompleteValidator.js +1 -1
- package/validators/autocompleteValidator/autocompleteValidator.mjs +1 -1
- package/validators/dateValidator/dateValidator.js +1 -1
- package/validators/dateValidator/dateValidator.mjs +1 -1
- package/validators/numericValidator/numericValidator.js +1 -1
- package/validators/numericValidator/numericValidator.mjs +1 -1
@@ -1,6 +1,7 @@
|
|
1
1
|
import "core-js/modules/es.array.unscopables.flat.js";
|
2
2
|
import "core-js/modules/es.array.push.js";
|
3
3
|
import "core-js/modules/es.error.cause.js";
|
4
|
+
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
4
5
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
5
6
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
6
7
|
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; }
|
@@ -11,6 +12,7 @@ function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.
|
|
11
12
|
function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
|
12
13
|
function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
|
13
14
|
function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
|
15
|
+
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
14
16
|
import { BasePlugin } from "../base/index.mjs";
|
15
17
|
import { arrayEach, arrayMap } from "../../helpers/array.mjs";
|
16
18
|
import { toSingleLine } from "../../helpers/templateLiteralTag.mjs";
|
@@ -71,6 +73,15 @@ const SHORTCUTS_GROUP = PLUGIN_KEY;
|
|
71
73
|
* :::
|
72
74
|
*/
|
73
75
|
var _menuFocusNavigator = /*#__PURE__*/new WeakMap();
|
76
|
+
var _onAfterChange = /*#__PURE__*/new WeakSet();
|
77
|
+
var _onAfterDropdownMenuShow = /*#__PURE__*/new WeakSet();
|
78
|
+
var _onAfterDropdownMenuHide = /*#__PURE__*/new WeakSet();
|
79
|
+
var _onAfterDropdownMenuDefaultOptions = /*#__PURE__*/new WeakSet();
|
80
|
+
var _onActionBarSubmit = /*#__PURE__*/new WeakSet();
|
81
|
+
var _onComponentChange = /*#__PURE__*/new WeakSet();
|
82
|
+
var _onSelectUIClosed = /*#__PURE__*/new WeakSet();
|
83
|
+
var _onAfterGetColHeader = /*#__PURE__*/new WeakSet();
|
84
|
+
var _updateComponents = /*#__PURE__*/new WeakSet();
|
74
85
|
export class Filters extends BasePlugin {
|
75
86
|
static get PLUGIN_KEY() {
|
76
87
|
return PLUGIN_KEY;
|
@@ -92,6 +103,59 @@ export class Filters extends BasePlugin {
|
|
92
103
|
constructor(hotInstance) {
|
93
104
|
super(hotInstance);
|
94
105
|
// One listener for the enable/disable functionality
|
106
|
+
/**
|
107
|
+
* It updates the components state. The state is triggered by ConditionUpdateObserver, which
|
108
|
+
* reacts to any condition added to the condition collection. It may be added through the UI
|
109
|
+
* components or by API call.
|
110
|
+
*
|
111
|
+
* @param {object} conditionsState An object with the state generated by UI components.
|
112
|
+
*/
|
113
|
+
_classPrivateMethodInitSpec(this, _updateComponents);
|
114
|
+
/**
|
115
|
+
* On after get column header listener.
|
116
|
+
*
|
117
|
+
* @param {number} col Visual column index.
|
118
|
+
* @param {HTMLTableCellElement} TH Header's TH element.
|
119
|
+
*/
|
120
|
+
_classPrivateMethodInitSpec(this, _onAfterGetColHeader);
|
121
|
+
/**
|
122
|
+
* On component SelectUI closed listener.
|
123
|
+
*/
|
124
|
+
_classPrivateMethodInitSpec(this, _onSelectUIClosed);
|
125
|
+
/**
|
126
|
+
* On component change listener.
|
127
|
+
*
|
128
|
+
* @param {BaseComponent} component Component inheriting BaseComponent.
|
129
|
+
* @param {object} command Menu item object (command).
|
130
|
+
*/
|
131
|
+
_classPrivateMethodInitSpec(this, _onComponentChange);
|
132
|
+
/**
|
133
|
+
* On action bar submit listener.
|
134
|
+
*
|
135
|
+
* @private
|
136
|
+
* @param {string} submitType The submit type.
|
137
|
+
*/
|
138
|
+
_classPrivateMethodInitSpec(this, _onActionBarSubmit);
|
139
|
+
/**
|
140
|
+
* After dropdown menu default options listener.
|
141
|
+
*
|
142
|
+
* @param {object} defaultOptions ContextMenu default item options.
|
143
|
+
*/
|
144
|
+
_classPrivateMethodInitSpec(this, _onAfterDropdownMenuDefaultOptions);
|
145
|
+
/**
|
146
|
+
* After dropdown menu hide listener.
|
147
|
+
*/
|
148
|
+
_classPrivateMethodInitSpec(this, _onAfterDropdownMenuHide);
|
149
|
+
/**
|
150
|
+
* After dropdown menu show listener.
|
151
|
+
*/
|
152
|
+
_classPrivateMethodInitSpec(this, _onAfterDropdownMenuShow);
|
153
|
+
/**
|
154
|
+
* `afterChange` listener.
|
155
|
+
*
|
156
|
+
* @param {Array} changes Array of changes.
|
157
|
+
*/
|
158
|
+
_classPrivateMethodInitSpec(this, _onAfterChange);
|
95
159
|
_defineProperty(this, "dropdownMenuPlugin", null);
|
96
160
|
/**
|
97
161
|
* Instance of {@link ConditionCollection}.
|
@@ -130,7 +194,7 @@ export class Filters extends BasePlugin {
|
|
130
194
|
writable: true,
|
131
195
|
value: void 0
|
132
196
|
});
|
133
|
-
this.hot.addHook('afterGetColHeader', (col, TH) => this.
|
197
|
+
this.hot.addHook('afterGetColHeader', (col, TH) => _classPrivateMethodGet(this, _onAfterGetColHeader, _onAfterGetColHeader2).call(this, col, TH));
|
134
198
|
}
|
135
199
|
|
136
200
|
/**
|
@@ -156,9 +220,9 @@ export class Filters extends BasePlugin {
|
|
156
220
|
const dropdownSettings = this.hot.getSettings().dropdownMenu;
|
157
221
|
const menuContainer = dropdownSettings && dropdownSettings.uiContainer || this.hot.rootDocument.body;
|
158
222
|
const addConfirmationHooks = component => {
|
159
|
-
component.addLocalHook('accept', () => this.
|
160
|
-
component.addLocalHook('cancel', () => this.
|
161
|
-
component.addLocalHook('change', command => this.
|
223
|
+
component.addLocalHook('accept', () => _classPrivateMethodGet(this, _onActionBarSubmit, _onActionBarSubmit2).call(this, 'accept'));
|
224
|
+
component.addLocalHook('cancel', () => _classPrivateMethodGet(this, _onActionBarSubmit, _onActionBarSubmit2).call(this, 'cancel'));
|
225
|
+
component.addLocalHook('change', command => _classPrivateMethodGet(this, _onComponentChange, _onComponentChange2).call(this, component, command));
|
162
226
|
return component;
|
163
227
|
};
|
164
228
|
const filterByConditionLabel = () => `${this.hot.getTranslatedPhrase(constants.FILTERS_DIVS_FILTER_BY_CONDITION)}:`;
|
@@ -170,7 +234,7 @@ export class Filters extends BasePlugin {
|
|
170
234
|
addSeparator: false,
|
171
235
|
menuContainer
|
172
236
|
});
|
173
|
-
conditionComponent.addLocalHook('afterClose', () => this.
|
237
|
+
conditionComponent.addLocalHook('afterClose', () => _classPrivateMethodGet(this, _onSelectUIClosed, _onSelectUIClosed2).call(this));
|
174
238
|
this.components.set('filter_by_condition', addConfirmationHooks(conditionComponent));
|
175
239
|
}
|
176
240
|
if (!this.components.get('filter_operators')) {
|
@@ -186,7 +250,7 @@ export class Filters extends BasePlugin {
|
|
186
250
|
addSeparator: true,
|
187
251
|
menuContainer
|
188
252
|
});
|
189
|
-
conditionComponent.addLocalHook('afterClose', () => this.
|
253
|
+
conditionComponent.addLocalHook('afterClose', () => _classPrivateMethodGet(this, _onSelectUIClosed, _onSelectUIClosed2).call(this));
|
190
254
|
this.components.set('filter_by_condition2', addConfirmationHooks(conditionComponent));
|
191
255
|
}
|
192
256
|
if (!this.components.get('filter_by_value')) {
|
@@ -206,13 +270,13 @@ export class Filters extends BasePlugin {
|
|
206
270
|
}
|
207
271
|
if (!this.conditionUpdateObserver) {
|
208
272
|
this.conditionUpdateObserver = new ConditionUpdateObserver(this.hot, this.conditionCollection, physicalColumn => this.getDataMapAtColumn(physicalColumn));
|
209
|
-
this.conditionUpdateObserver.addLocalHook('update', conditionState => this.
|
273
|
+
this.conditionUpdateObserver.addLocalHook('update', conditionState => _classPrivateMethodGet(this, _updateComponents, _updateComponents2).call(this, conditionState));
|
210
274
|
}
|
211
275
|
this.components.forEach(component => component.show());
|
212
|
-
this.addHook('afterDropdownMenuDefaultOptions', defaultOptions => this.
|
213
|
-
this.addHook('afterDropdownMenuShow', () => this.
|
214
|
-
this.addHook('afterDropdownMenuHide', () => this.
|
215
|
-
this.addHook('afterChange', changes => this.
|
276
|
+
this.addHook('afterDropdownMenuDefaultOptions', defaultOptions => _classPrivateMethodGet(this, _onAfterDropdownMenuDefaultOptions, _onAfterDropdownMenuDefaultOptions2).call(this, defaultOptions));
|
277
|
+
this.addHook('afterDropdownMenuShow', () => _classPrivateMethodGet(this, _onAfterDropdownMenuShow, _onAfterDropdownMenuShow2).call(this));
|
278
|
+
this.addHook('afterDropdownMenuHide', () => _classPrivateMethodGet(this, _onAfterDropdownMenuHide, _onAfterDropdownMenuHide2).call(this));
|
279
|
+
this.addHook('afterChange', changes => _classPrivateMethodGet(this, _onAfterChange, _onAfterChange2).call(this, changes));
|
216
280
|
|
217
281
|
// Temp. solution (extending menu items bug in contextMenu/dropdownMenu)
|
218
282
|
if (this.hot.getSettings().dropdownMenu && this.dropdownMenuPlugin) {
|
@@ -443,7 +507,7 @@ export class Filters extends BasePlugin {
|
|
443
507
|
* @param {number} [column] Visual column index.
|
444
508
|
*/
|
445
509
|
clearConditions(column) {
|
446
|
-
if (column ===
|
510
|
+
if (column === undefined) {
|
447
511
|
this.conditionCollection.clean();
|
448
512
|
} else {
|
449
513
|
const physicalColumn = this.hot.toPhysicalColumn(column);
|
@@ -554,25 +618,6 @@ export class Filters extends BasePlugin {
|
|
554
618
|
});
|
555
619
|
return data;
|
556
620
|
}
|
557
|
-
|
558
|
-
/**
|
559
|
-
* `afterChange` listener.
|
560
|
-
*
|
561
|
-
* @private
|
562
|
-
* @param {Array} changes Array of changes.
|
563
|
-
*/
|
564
|
-
onAfterChange(changes) {
|
565
|
-
if (changes) {
|
566
|
-
arrayEach(changes, change => {
|
567
|
-
const [, prop] = change;
|
568
|
-
const columnIndex = this.hot.propToCol(prop);
|
569
|
-
if (this.conditionCollection.hasConditions(columnIndex)) {
|
570
|
-
this.updateValueComponentCondition(columnIndex);
|
571
|
-
}
|
572
|
-
});
|
573
|
-
}
|
574
|
-
}
|
575
|
-
|
576
621
|
/**
|
577
622
|
* Update the condition of ValueComponent, based on the handled changes.
|
578
623
|
*
|
@@ -602,41 +647,6 @@ export class Filters extends BasePlugin {
|
|
602
647
|
});
|
603
648
|
this.updateDependentComponentsVisibility();
|
604
649
|
}
|
605
|
-
|
606
|
-
/**
|
607
|
-
* After dropdown menu show listener.
|
608
|
-
*
|
609
|
-
* @private
|
610
|
-
*/
|
611
|
-
onAfterDropdownMenuShow() {
|
612
|
-
this.restoreComponents(Array.from(this.components.values()));
|
613
|
-
}
|
614
|
-
|
615
|
-
/**
|
616
|
-
* After dropdown menu hide listener.
|
617
|
-
*
|
618
|
-
* @private
|
619
|
-
*/
|
620
|
-
onAfterDropdownMenuHide() {
|
621
|
-
this.components.get('filter_by_condition').getSelectElement().closeOptions();
|
622
|
-
this.components.get('filter_by_condition2').getSelectElement().closeOptions();
|
623
|
-
}
|
624
|
-
|
625
|
-
/**
|
626
|
-
* After dropdown menu default options listener.
|
627
|
-
*
|
628
|
-
* @private
|
629
|
-
* @param {object} defaultOptions ContextMenu default item options.
|
630
|
-
*/
|
631
|
-
onAfterDropdownMenuDefaultOptions(defaultOptions) {
|
632
|
-
defaultOptions.items.push({
|
633
|
-
name: SEPARATOR
|
634
|
-
});
|
635
|
-
this.components.forEach(component => {
|
636
|
-
defaultOptions.items.push(component.getMenuItemDescriptor());
|
637
|
-
});
|
638
|
-
}
|
639
|
-
|
640
650
|
/**
|
641
651
|
* Get an operation, based on the number and types of arguments (where arguments are states of components).
|
642
652
|
*
|
@@ -658,75 +668,6 @@ export class Filters extends BasePlugin {
|
|
658
668
|
}
|
659
669
|
return operation;
|
660
670
|
}
|
661
|
-
|
662
|
-
/**
|
663
|
-
* On action bar submit listener.
|
664
|
-
*
|
665
|
-
* @private
|
666
|
-
* @param {string} submitType The submit type.
|
667
|
-
*/
|
668
|
-
onActionBarSubmit(submitType) {
|
669
|
-
var _this$dropdownMenuPlu3;
|
670
|
-
if (submitType === 'accept') {
|
671
|
-
const selectedColumn = this.getSelectedColumn();
|
672
|
-
if (selectedColumn === null) {
|
673
|
-
var _this$dropdownMenuPlu2;
|
674
|
-
(_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu2 === void 0 || _this$dropdownMenuPlu2.close();
|
675
|
-
return;
|
676
|
-
}
|
677
|
-
const {
|
678
|
-
physicalIndex
|
679
|
-
} = selectedColumn;
|
680
|
-
const byConditionState1 = this.components.get('filter_by_condition').getState();
|
681
|
-
const byConditionState2 = this.components.get('filter_by_condition2').getState();
|
682
|
-
const byValueState = this.components.get('filter_by_value').getState();
|
683
|
-
const operation = this.getOperationBasedOnArguments(this.components.get('filter_operators').getActiveOperationId(), byConditionState1, byConditionState2, byValueState);
|
684
|
-
this.conditionUpdateObserver.groupChanges();
|
685
|
-
let columnStackPosition = this.conditionCollection.getColumnStackPosition(physicalIndex);
|
686
|
-
if (columnStackPosition === -1) {
|
687
|
-
columnStackPosition = void 0;
|
688
|
-
}
|
689
|
-
this.conditionCollection.removeConditions(physicalIndex);
|
690
|
-
if (byConditionState1.command.key !== CONDITION_NONE) {
|
691
|
-
this.conditionCollection.addCondition(physicalIndex, byConditionState1, operation, columnStackPosition);
|
692
|
-
if (byConditionState2.command.key !== CONDITION_NONE) {
|
693
|
-
this.conditionCollection.addCondition(physicalIndex, byConditionState2, operation, columnStackPosition);
|
694
|
-
}
|
695
|
-
}
|
696
|
-
if (byValueState.command.key !== CONDITION_NONE) {
|
697
|
-
this.conditionCollection.addCondition(physicalIndex, byValueState, operation, columnStackPosition);
|
698
|
-
}
|
699
|
-
this.conditionUpdateObserver.flush();
|
700
|
-
this.components.forEach(component => component.saveState(physicalIndex));
|
701
|
-
this.filtersRowsMap.clear();
|
702
|
-
this.filter();
|
703
|
-
}
|
704
|
-
(_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 || _this$dropdownMenuPlu3.close();
|
705
|
-
}
|
706
|
-
|
707
|
-
/**
|
708
|
-
* On component change listener.
|
709
|
-
*
|
710
|
-
* @private
|
711
|
-
* @param {BaseComponent} component Component inheriting BaseComponent.
|
712
|
-
* @param {object} command Menu item object (command).
|
713
|
-
*/
|
714
|
-
onComponentChange(component, command) {
|
715
|
-
this.updateDependentComponentsVisibility();
|
716
|
-
if (component.constructor === ConditionComponent && !command.inputsCount) {
|
717
|
-
this.setListeningDropdownMenu();
|
718
|
-
}
|
719
|
-
}
|
720
|
-
|
721
|
-
/**
|
722
|
-
* On component SelectUI closed listener.
|
723
|
-
*
|
724
|
-
* @private
|
725
|
-
*/
|
726
|
-
onSelectUIClosed() {
|
727
|
-
this.setListeningDropdownMenu();
|
728
|
-
}
|
729
|
-
|
730
671
|
/**
|
731
672
|
* Listen to the keyboard input on document body and forward events to instance of Handsontable
|
732
673
|
* created by DropdownMenu plugin.
|
@@ -756,23 +697,6 @@ export class Filters extends BasePlugin {
|
|
756
697
|
this.hideComponents(...componentsToShow);
|
757
698
|
}
|
758
699
|
}
|
759
|
-
|
760
|
-
/**
|
761
|
-
* On after get column header listener.
|
762
|
-
*
|
763
|
-
* @private
|
764
|
-
* @param {number} col Visual column index.
|
765
|
-
* @param {HTMLTableCellElement} TH Header's TH element.
|
766
|
-
*/
|
767
|
-
onAfterGetColHeader(col, TH) {
|
768
|
-
const physicalColumn = this.hot.toPhysicalColumn(col);
|
769
|
-
if (this.enabled && this.conditionCollection.hasConditions(physicalColumn)) {
|
770
|
-
addClass(TH, 'htFiltersActive');
|
771
|
-
} else {
|
772
|
-
removeClass(TH, 'htFiltersActive');
|
773
|
-
}
|
774
|
-
}
|
775
|
-
|
776
700
|
/**
|
777
701
|
* Creates DataFilter instance based on condition collection.
|
778
702
|
*
|
@@ -784,41 +708,6 @@ export class Filters extends BasePlugin {
|
|
784
708
|
let conditionCollection = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.conditionCollection;
|
785
709
|
return new DataFilter(conditionCollection, physicalColumn => this.getDataMapAtColumn(physicalColumn));
|
786
710
|
}
|
787
|
-
|
788
|
-
/**
|
789
|
-
* It updates the components state. The state is triggered by ConditionUpdateObserver, which
|
790
|
-
* reacts to any condition added to the condition collection. It may be added through the UI
|
791
|
-
* components or by API call.
|
792
|
-
*
|
793
|
-
* @private
|
794
|
-
* @param {object} conditionsState An object with the state generated by UI components.
|
795
|
-
*/
|
796
|
-
updateComponents(conditionsState) {
|
797
|
-
var _this$dropdownMenuPlu4;
|
798
|
-
if (!((_this$dropdownMenuPlu4 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu4 !== void 0 && _this$dropdownMenuPlu4.enabled)) {
|
799
|
-
return;
|
800
|
-
}
|
801
|
-
const {
|
802
|
-
editedConditionStack: {
|
803
|
-
conditions,
|
804
|
-
column
|
805
|
-
}
|
806
|
-
} = conditionsState;
|
807
|
-
const conditionsByValue = conditions.filter(condition => condition.name === CONDITION_BY_VALUE);
|
808
|
-
const conditionsWithoutByValue = conditions.filter(condition => condition.name !== CONDITION_BY_VALUE);
|
809
|
-
if (conditionsByValue.length >= 2 || conditionsWithoutByValue.length >= 3) {
|
810
|
-
warn(toSingleLine`The filter conditions have been applied properly, but couldn’t be displayed visually.\x20
|
811
|
-
The overall amount of conditions exceed the capability of the dropdown menu.\x20
|
812
|
-
For more details see the documentation.`);
|
813
|
-
} else {
|
814
|
-
const operationType = this.conditionCollection.getOperation(column);
|
815
|
-
this.components.get('filter_by_condition').updateState(conditionsWithoutByValue[0], column);
|
816
|
-
this.components.get('filter_by_condition2').updateState(conditionsWithoutByValue[1], column);
|
817
|
-
this.components.get('filter_operators').updateState(operationType, column);
|
818
|
-
this.components.get('filter_by_value').updateState(conditionsState);
|
819
|
-
}
|
820
|
-
}
|
821
|
-
|
822
711
|
/**
|
823
712
|
* Returns indexes of passed components inside list of `dropdownMenu` items.
|
824
713
|
*
|
@@ -915,4 +804,110 @@ export class Filters extends BasePlugin {
|
|
915
804
|
}
|
916
805
|
super.destroy();
|
917
806
|
}
|
807
|
+
}
|
808
|
+
function _onAfterChange2(changes) {
|
809
|
+
if (changes) {
|
810
|
+
arrayEach(changes, change => {
|
811
|
+
const [, prop] = change;
|
812
|
+
const columnIndex = this.hot.propToCol(prop);
|
813
|
+
if (this.conditionCollection.hasConditions(columnIndex)) {
|
814
|
+
this.updateValueComponentCondition(columnIndex);
|
815
|
+
}
|
816
|
+
});
|
817
|
+
}
|
818
|
+
}
|
819
|
+
function _onAfterDropdownMenuShow2() {
|
820
|
+
this.restoreComponents(Array.from(this.components.values()));
|
821
|
+
}
|
822
|
+
function _onAfterDropdownMenuHide2() {
|
823
|
+
this.components.get('filter_by_condition').getSelectElement().closeOptions();
|
824
|
+
this.components.get('filter_by_condition2').getSelectElement().closeOptions();
|
825
|
+
}
|
826
|
+
function _onAfterDropdownMenuDefaultOptions2(defaultOptions) {
|
827
|
+
defaultOptions.items.push({
|
828
|
+
name: SEPARATOR
|
829
|
+
});
|
830
|
+
this.components.forEach(component => {
|
831
|
+
defaultOptions.items.push(component.getMenuItemDescriptor());
|
832
|
+
});
|
833
|
+
}
|
834
|
+
function _onActionBarSubmit2(submitType) {
|
835
|
+
var _this$dropdownMenuPlu3;
|
836
|
+
if (submitType === 'accept') {
|
837
|
+
const selectedColumn = this.getSelectedColumn();
|
838
|
+
if (selectedColumn === null) {
|
839
|
+
var _this$dropdownMenuPlu2;
|
840
|
+
(_this$dropdownMenuPlu2 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu2 === void 0 || _this$dropdownMenuPlu2.close();
|
841
|
+
return;
|
842
|
+
}
|
843
|
+
const {
|
844
|
+
physicalIndex
|
845
|
+
} = selectedColumn;
|
846
|
+
const byConditionState1 = this.components.get('filter_by_condition').getState();
|
847
|
+
const byConditionState2 = this.components.get('filter_by_condition2').getState();
|
848
|
+
const byValueState = this.components.get('filter_by_value').getState();
|
849
|
+
const operation = this.getOperationBasedOnArguments(this.components.get('filter_operators').getActiveOperationId(), byConditionState1, byConditionState2, byValueState);
|
850
|
+
this.conditionUpdateObserver.groupChanges();
|
851
|
+
let columnStackPosition = this.conditionCollection.getColumnStackPosition(physicalIndex);
|
852
|
+
if (columnStackPosition === -1) {
|
853
|
+
columnStackPosition = undefined;
|
854
|
+
}
|
855
|
+
this.conditionCollection.removeConditions(physicalIndex);
|
856
|
+
if (byConditionState1.command.key !== CONDITION_NONE) {
|
857
|
+
this.conditionCollection.addCondition(physicalIndex, byConditionState1, operation, columnStackPosition);
|
858
|
+
if (byConditionState2.command.key !== CONDITION_NONE) {
|
859
|
+
this.conditionCollection.addCondition(physicalIndex, byConditionState2, operation, columnStackPosition);
|
860
|
+
}
|
861
|
+
}
|
862
|
+
if (byValueState.command.key !== CONDITION_NONE) {
|
863
|
+
this.conditionCollection.addCondition(physicalIndex, byValueState, operation, columnStackPosition);
|
864
|
+
}
|
865
|
+
this.conditionUpdateObserver.flush();
|
866
|
+
this.components.forEach(component => component.saveState(physicalIndex));
|
867
|
+
this.filtersRowsMap.clear();
|
868
|
+
this.filter();
|
869
|
+
}
|
870
|
+
(_this$dropdownMenuPlu3 = this.dropdownMenuPlugin) === null || _this$dropdownMenuPlu3 === void 0 || _this$dropdownMenuPlu3.close();
|
871
|
+
}
|
872
|
+
function _onComponentChange2(component, command) {
|
873
|
+
this.updateDependentComponentsVisibility();
|
874
|
+
if (component.constructor === ConditionComponent && !command.inputsCount) {
|
875
|
+
this.setListeningDropdownMenu();
|
876
|
+
}
|
877
|
+
}
|
878
|
+
function _onSelectUIClosed2() {
|
879
|
+
this.setListeningDropdownMenu();
|
880
|
+
}
|
881
|
+
function _onAfterGetColHeader2(col, TH) {
|
882
|
+
const physicalColumn = this.hot.toPhysicalColumn(col);
|
883
|
+
if (this.enabled && this.conditionCollection.hasConditions(physicalColumn)) {
|
884
|
+
addClass(TH, 'htFiltersActive');
|
885
|
+
} else {
|
886
|
+
removeClass(TH, 'htFiltersActive');
|
887
|
+
}
|
888
|
+
}
|
889
|
+
function _updateComponents2(conditionsState) {
|
890
|
+
var _this$dropdownMenuPlu4;
|
891
|
+
if (!((_this$dropdownMenuPlu4 = this.dropdownMenuPlugin) !== null && _this$dropdownMenuPlu4 !== void 0 && _this$dropdownMenuPlu4.enabled)) {
|
892
|
+
return;
|
893
|
+
}
|
894
|
+
const {
|
895
|
+
editedConditionStack: {
|
896
|
+
conditions,
|
897
|
+
column
|
898
|
+
}
|
899
|
+
} = conditionsState;
|
900
|
+
const conditionsByValue = conditions.filter(condition => condition.name === CONDITION_BY_VALUE);
|
901
|
+
const conditionsWithoutByValue = conditions.filter(condition => condition.name !== CONDITION_BY_VALUE);
|
902
|
+
if (conditionsByValue.length >= 2 || conditionsWithoutByValue.length >= 3) {
|
903
|
+
warn(toSingleLine`The filter conditions have been applied properly, but couldn’t be displayed visually.\x20
|
904
|
+
The overall amount of conditions exceed the capability of the dropdown menu.\x20
|
905
|
+
For more details see the documentation.`);
|
906
|
+
} else {
|
907
|
+
const operationType = this.conditionCollection.getOperation(column);
|
908
|
+
this.components.get('filter_by_condition').updateState(conditionsWithoutByValue[0], column);
|
909
|
+
this.components.get('filter_by_condition2').updateState(conditionsWithoutByValue[1], column);
|
910
|
+
this.components.get('filter_operators').updateState(operationType, column);
|
911
|
+
this.components.get('filter_by_value').updateState(conditionsState);
|
912
|
+
}
|
918
913
|
}
|
@@ -162,7 +162,7 @@ class BaseUI {
|
|
162
162
|
// (https://github.com/handsontable/handsontable/blob/master/handsontable/src/tableView.js#L317-L321)
|
163
163
|
element.setAttribute('data-hot-input', true);
|
164
164
|
(0, _object.objectEach)(this.options, (value, key) => {
|
165
|
-
if (element[key] !==
|
165
|
+
if (element[key] !== undefined && key !== 'className' && key !== 'tagName' && key !== 'children') {
|
166
166
|
element[key] = this.translateIfPossible(value);
|
167
167
|
}
|
168
168
|
});
|
@@ -156,7 +156,7 @@ export class BaseUI {
|
|
156
156
|
// (https://github.com/handsontable/handsontable/blob/master/handsontable/src/tableView.js#L317-L321)
|
157
157
|
element.setAttribute('data-hot-input', true);
|
158
158
|
objectEach(this.options, (value, key) => {
|
159
|
-
if (element[key] !==
|
159
|
+
if (element[key] !== undefined && key !== 'className' && key !== 'tagName' && key !== 'children') {
|
160
160
|
element[key] = this.translateIfPossible(value);
|
161
161
|
}
|
162
162
|
});
|
package/plugins/filters/utils.js
CHANGED
@@ -120,6 +120,6 @@ function getEngineSettingsWithOverrides(hotSettings) {
|
|
120
120
|
*/
|
121
121
|
function haveEngineSettingsChanged(currentEngineSettings, newEngineSettings) {
|
122
122
|
return Object.keys(newEngineSettings).some(settingOption => {
|
123
|
-
return newEngineSettings[settingOption] !==
|
123
|
+
return newEngineSettings[settingOption] !== undefined && newEngineSettings[settingOption] !== currentEngineSettings[settingOption];
|
124
124
|
});
|
125
125
|
}
|
@@ -111,6 +111,6 @@ export function getEngineSettingsWithOverrides(hotSettings) {
|
|
111
111
|
*/
|
112
112
|
export function haveEngineSettingsChanged(currentEngineSettings, newEngineSettings) {
|
113
113
|
return Object.keys(newEngineSettings).some(settingOption => {
|
114
|
-
return newEngineSettings[settingOption] !==
|
114
|
+
return newEngineSettings[settingOption] !== undefined && newEngineSettings[settingOption] !== currentEngineSettings[settingOption];
|
115
115
|
});
|
116
116
|
}
|