handsontable 14.6.1-next-689aaa6-20241016 → 15.0.0-next-4472a60-20241203
Sign up to get free protection for your applications and to get access to all the features.
- package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.js +23 -0
- package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.mjs +23 -0
- package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.js +23 -0
- package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.mjs +23 -0
- package/3rdparty/walkontable/src/calculator/index.js +1 -2
- package/3rdparty/walkontable/src/calculator/index.mjs +2 -2
- package/3rdparty/walkontable/src/calculator/viewportBase.js +2 -0
- package/3rdparty/walkontable/src/calculator/viewportBase.mjs +2 -0
- 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 +29 -23
- package/3rdparty/walkontable/src/core/_base.mjs +29 -23
- package/3rdparty/walkontable/src/core/clone.js +1 -0
- package/3rdparty/walkontable/src/core/clone.mjs +1 -0
- package/3rdparty/walkontable/src/core/core.js +2 -0
- package/3rdparty/walkontable/src/core/core.mjs +2 -0
- package/3rdparty/walkontable/src/facade/core.js +12 -6
- package/3rdparty/walkontable/src/facade/core.mjs +12 -6
- package/3rdparty/walkontable/src/index.js +0 -1
- package/3rdparty/walkontable/src/index.mjs +2 -2
- package/3rdparty/walkontable/src/overlay/_base.js +8 -1
- package/3rdparty/walkontable/src/overlay/_base.mjs +8 -1
- package/3rdparty/walkontable/src/overlay/bottom.js +5 -6
- package/3rdparty/walkontable/src/overlay/bottom.mjs +5 -6
- package/3rdparty/walkontable/src/overlay/index.js +2 -0
- package/3rdparty/walkontable/src/overlay/inlineStart.js +8 -7
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +9 -8
- package/3rdparty/walkontable/src/overlay/top.js +9 -8
- package/3rdparty/walkontable/src/overlay/top.mjs +10 -9
- package/3rdparty/walkontable/src/overlays.js +10 -26
- package/3rdparty/walkontable/src/overlays.mjs +10 -26
- package/3rdparty/walkontable/src/renderer/colGroup.js +1 -1
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +1 -1
- package/3rdparty/walkontable/src/renderer/index.js +4 -2
- package/3rdparty/walkontable/src/renderer/index.mjs +4 -2
- package/3rdparty/walkontable/src/renderer/table.js +13 -4
- package/3rdparty/walkontable/src/renderer/table.mjs +13 -4
- package/3rdparty/walkontable/src/scroll.js +46 -37
- package/3rdparty/walkontable/src/scroll.mjs +46 -37
- package/3rdparty/walkontable/src/selection/border/border.js +52 -58
- package/3rdparty/walkontable/src/selection/border/border.mjs +53 -59
- package/3rdparty/walkontable/src/selection/border/utils.js +26 -0
- package/3rdparty/walkontable/src/selection/border/utils.mjs +22 -0
- package/3rdparty/walkontable/src/selection/index.js +6 -4
- package/3rdparty/walkontable/src/selection/index.mjs +1 -1
- package/3rdparty/walkontable/src/selection/manager.js +3 -0
- package/3rdparty/walkontable/src/selection/manager.mjs +3 -0
- package/3rdparty/walkontable/src/selection/scanner.js +46 -11
- package/3rdparty/walkontable/src/selection/scanner.mjs +46 -11
- package/3rdparty/walkontable/src/settings.js +8 -9
- package/3rdparty/walkontable/src/settings.mjs +8 -9
- package/3rdparty/walkontable/src/table/master.js +1 -1
- package/3rdparty/walkontable/src/table/master.mjs +2 -2
- package/3rdparty/walkontable/src/table.js +25 -36
- package/3rdparty/walkontable/src/table.mjs +25 -36
- package/3rdparty/walkontable/src/types.js +1 -0
- package/3rdparty/walkontable/src/types.mjs +1 -0
- package/3rdparty/walkontable/src/utils/column.js +1 -43
- package/3rdparty/walkontable/src/utils/column.mjs +1 -43
- package/3rdparty/walkontable/src/utils/stylesHandler.js +295 -0
- package/3rdparty/walkontable/src/utils/stylesHandler.mjs +291 -0
- package/3rdparty/walkontable/src/viewport.js +94 -91
- package/3rdparty/walkontable/src/viewport.mjs +95 -92
- package/CHANGELOG.md +36 -0
- package/README.md +1 -1
- package/base.js +4 -4
- package/base.mjs +3 -3
- package/core/focusCatcher/focusDetector.js +1 -0
- package/core/focusCatcher/focusDetector.mjs +1 -0
- package/core/hooks/bucket.js +184 -0
- package/core/hooks/bucket.mjs +180 -0
- package/{pluginHooks.mjs → core/hooks/constants.js} +38 -486
- package/{pluginHooks.js → core/hooks/constants.mjs} +34 -489
- package/{pluginHooks.d.ts → core/hooks/index.d.ts} +22 -25
- package/core/hooks/index.js +385 -0
- package/core/hooks/index.mjs +381 -0
- package/core/index.js +2 -0
- package/core.d.ts +5 -3
- package/core.js +77 -35
- package/core.mjs +69 -27
- package/dataMap/dataMap.js +3 -0
- package/dataMap/dataMap.mjs +3 -0
- package/dataMap/dataSource.js +2 -0
- package/dataMap/dataSource.mjs +2 -0
- package/dataMap/metaManager/index.js +2 -0
- package/dataMap/metaManager/index.mjs +2 -0
- package/dataMap/metaManager/metaSchema.js +91 -5
- package/dataMap/metaManager/metaSchema.mjs +91 -5
- package/dataMap/metaManager/mods/dynamicCellMeta.js +2 -3
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +1 -1
- package/dataMap/metaManager/mods/extendMetaProperties.js +2 -0
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +2 -0
- package/dist/handsontable.css +84 -72
- package/dist/handsontable.full.css +317 -304
- package/dist/handsontable.full.js +14826 -7294
- package/dist/handsontable.full.min.css +15 -10
- package/dist/handsontable.full.min.js +262 -69
- package/dist/handsontable.js +7826 -5552
- package/dist/handsontable.min.css +10 -6
- package/dist/handsontable.min.js +33 -33
- package/dist/languages/all.js +1 -1
- package/dist/languages/ar-AR.js +1 -1
- package/dist/languages/cs-CZ.js +1 -1
- package/dist/languages/de-CH.js +1 -1
- package/dist/languages/de-DE.js +1 -1
- package/dist/languages/en-US.js +1 -1
- package/dist/languages/es-MX.js +1 -1
- package/dist/languages/fr-FR.js +1 -1
- package/dist/languages/hr-HR.js +1 -1
- package/dist/languages/it-IT.js +1 -1
- package/dist/languages/ja-JP.js +1 -1
- package/dist/languages/ko-KR.js +1 -1
- package/dist/languages/lv-LV.js +1 -1
- package/dist/languages/nb-NO.js +1 -1
- package/dist/languages/nl-NL.js +1 -1
- package/dist/languages/pl-PL.js +1 -1
- package/dist/languages/pt-BR.js +1 -1
- package/dist/languages/ru-RU.js +1 -1
- package/dist/languages/sr-SP.js +1 -1
- package/dist/languages/zh-CN.js +1 -1
- package/dist/languages/zh-TW.js +1 -1
- package/editorManager.js +2 -2
- package/editorManager.mjs +2 -2
- package/editors/autocompleteEditor/autocompleteEditor.js +34 -16
- package/editors/autocompleteEditor/autocompleteEditor.mjs +34 -16
- package/editors/baseEditor/baseEditor.js +25 -18
- package/editors/baseEditor/baseEditor.mjs +26 -19
- package/editors/dateEditor/dateEditor.js +9 -0
- package/editors/dateEditor/dateEditor.mjs +10 -1
- package/editors/dropdownEditor/dropdownEditor.js +4 -3
- package/editors/dropdownEditor/dropdownEditor.mjs +3 -1
- package/editors/handsontableEditor/handsontableEditor.js +36 -2
- package/editors/handsontableEditor/handsontableEditor.mjs +36 -2
- package/editors/passwordEditor/passwordEditor.js +18 -0
- package/editors/passwordEditor/passwordEditor.mjs +18 -0
- package/editors/registry.js +2 -2
- package/editors/registry.mjs +1 -1
- package/editors/selectEditor/selectEditor.js +20 -9
- package/editors/selectEditor/selectEditor.mjs +20 -9
- package/editors/textEditor/textEditor.js +5 -12
- package/editors/textEditor/textEditor.mjs +6 -13
- package/focusManager.js +5 -7
- package/focusManager.mjs +5 -7
- package/helpers/array.js +2 -0
- package/helpers/array.mjs +2 -0
- package/helpers/data.js +3 -0
- package/helpers/data.mjs +3 -0
- package/helpers/dom/element.js +39 -18
- package/helpers/dom/element.mjs +38 -17
- package/helpers/mixed.js +3 -3
- package/helpers/mixed.mjs +3 -3
- package/helpers/moves.js +3 -0
- package/helpers/moves.mjs +3 -0
- package/helpers/number.js +1 -0
- package/helpers/number.mjs +1 -0
- package/helpers/object.js +2 -0
- package/helpers/object.mjs +2 -0
- package/helpers/themes.js +17 -0
- package/helpers/themes.mjs +13 -0
- package/i18n/index.js +2 -0
- package/i18n/languages/index.d.ts +8 -0
- package/i18n/languages/ja-JP.d.ts +1 -1
- package/i18n/phraseFormatters/substituteVariables.js +1 -0
- package/i18n/phraseFormatters/substituteVariables.mjs +1 -0
- package/index.d.ts +9 -1
- package/languages/all.js +1 -1
- package/languages/ar-AR.js +1 -1
- package/languages/cs-CZ.js +1 -1
- package/languages/de-CH.js +1 -1
- package/languages/de-DE.js +1 -1
- package/languages/en-US.js +1 -1
- package/languages/es-MX.js +1 -1
- package/languages/fr-FR.js +1 -1
- package/languages/hr-HR.js +1 -1
- package/languages/index.js +1 -1
- package/languages/it-IT.js +1 -1
- package/languages/ja-JP.js +1 -1
- package/languages/ko-KR.js +1 -1
- package/languages/lv-LV.js +1 -1
- package/languages/nb-NO.js +1 -1
- package/languages/nl-NL.js +1 -1
- package/languages/pl-PL.js +1 -1
- package/languages/pt-BR.js +1 -1
- package/languages/ru-RU.js +1 -1
- package/languages/sr-SP.js +1 -1
- package/languages/zh-CN.js +1 -1
- package/languages/zh-TW.js +1 -1
- package/package.json +22 -7
- package/plugins/autoColumnSize/autoColumnSize.js +22 -27
- package/plugins/autoColumnSize/autoColumnSize.mjs +22 -27
- package/plugins/autoRowSize/autoRowSize.js +20 -22
- package/plugins/autoRowSize/autoRowSize.mjs +21 -23
- package/plugins/autofill/autofill.js +4 -5
- package/plugins/autofill/autofill.mjs +1 -1
- package/plugins/base/base.d.ts +1 -1
- package/plugins/base/base.js +41 -0
- package/plugins/base/base.mjs +42 -1
- package/plugins/base/index.js +2 -1
- package/plugins/base/index.mjs +1 -1
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +2 -5
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +2 -5
- package/plugins/columnSorting/columnSorting.js +5 -4
- package/plugins/columnSorting/columnSorting.mjs +3 -1
- package/plugins/columnSorting/columnStatesManager.js +1 -0
- package/plugins/columnSorting/columnStatesManager.mjs +1 -0
- package/plugins/columnSorting/utils.js +3 -0
- package/plugins/columnSorting/utils.mjs +3 -0
- package/plugins/columnSummary/endpoints.js +3 -0
- package/plugins/columnSummary/endpoints.mjs +3 -0
- package/plugins/comments/commentEditor.js +9 -0
- package/plugins/comments/commentEditor.mjs +9 -0
- package/plugins/comments/comments.js +24 -18
- package/plugins/comments/comments.mjs +26 -20
- package/plugins/comments/editorResizeObserver.js +2 -0
- package/plugins/comments/editorResizeObserver.mjs +2 -0
- package/plugins/contextMenu/contextMenu.d.ts +2 -1
- package/plugins/contextMenu/contextMenu.js +6 -7
- package/plugins/contextMenu/contextMenu.mjs +1 -1
- package/plugins/contextMenu/menu/index.js +2 -0
- package/plugins/contextMenu/menu/menu.js +10 -5
- package/plugins/contextMenu/menu/menu.mjs +11 -6
- package/plugins/contextMenu/menu/positioner.js +4 -2
- package/plugins/contextMenu/menu/positioner.mjs +4 -2
- package/plugins/contextMenu/menu/shortcuts.js +3 -1
- package/plugins/contextMenu/menu/shortcuts.mjs +3 -1
- package/plugins/contextMenu/predefinedItems/alignment.js +7 -84
- package/plugins/contextMenu/predefinedItems/alignment.mjs +8 -85
- package/plugins/contextMenu/utils.js +0 -10
- package/plugins/contextMenu/utils.mjs +0 -9
- package/plugins/copyPaste/copyPaste.d.ts +1 -0
- package/plugins/copyPaste/copyPaste.js +32 -23
- package/plugins/copyPaste/copyPaste.mjs +24 -15
- package/plugins/customBorders/utils.js +2 -0
- package/plugins/customBorders/utils.mjs +2 -0
- package/plugins/dropdownMenu/dropdownMenu.d.ts +2 -1
- package/plugins/dropdownMenu/dropdownMenu.js +6 -7
- package/plugins/dropdownMenu/dropdownMenu.mjs +1 -1
- package/plugins/exportFile/types/csv.js +1 -0
- package/plugins/exportFile/types/csv.mjs +1 -0
- package/plugins/filters/component/condition.js +2 -0
- package/plugins/filters/component/condition.mjs +2 -0
- package/plugins/filters/component/operators.js +2 -0
- package/plugins/filters/component/operators.mjs +2 -0
- package/plugins/filters/component/value.js +3 -0
- package/plugins/filters/component/value.mjs +3 -0
- package/plugins/filters/conditionCollection.js +3 -0
- package/plugins/filters/conditionCollection.mjs +3 -0
- package/plugins/filters/conditionUpdateObserver.js +2 -0
- package/plugins/filters/conditionUpdateObserver.mjs +2 -0
- package/plugins/filters/filters.js +43 -13
- package/plugins/filters/filters.mjs +43 -13
- package/plugins/filters/logicalOperations/conjunction.js +2 -0
- package/plugins/filters/logicalOperations/conjunction.mjs +2 -0
- package/plugins/filters/logicalOperations/disjunction.js +2 -0
- package/plugins/filters/logicalOperations/disjunction.mjs +2 -0
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -0
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -0
- package/plugins/filters/menu/focusController.js +38 -14
- package/plugins/filters/menu/focusController.mjs +38 -14
- package/plugins/filters/ui/multipleSelect.js +10 -0
- package/plugins/filters/ui/multipleSelect.mjs +10 -0
- package/plugins/formulas/engine/register.js +3 -0
- package/plugins/formulas/engine/register.mjs +3 -0
- package/plugins/formulas/engine/settings.js +3 -0
- package/plugins/formulas/engine/settings.mjs +3 -0
- package/plugins/formulas/formulas.js +12 -7
- package/plugins/formulas/formulas.mjs +6 -1
- package/plugins/formulas/indexSyncer/axisSyncer.js +3 -0
- package/plugins/formulas/indexSyncer/axisSyncer.mjs +3 -0
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +2 -0
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +2 -0
- package/plugins/hiddenColumns/hiddenColumns.js +22 -30
- package/plugins/hiddenColumns/hiddenColumns.mjs +18 -26
- package/plugins/hiddenRows/contextMenuItem/showRow.js +2 -0
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +2 -0
- package/plugins/hiddenRows/hiddenRows.js +21 -29
- package/plugins/hiddenRows/hiddenRows.mjs +17 -25
- package/plugins/index.d.ts +3 -0
- package/plugins/index.js +3 -0
- package/plugins/index.mjs +3 -1
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +7 -5
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +3 -1
- package/plugins/manualColumnMove/manualColumnMove.js +6 -6
- package/plugins/manualColumnMove/manualColumnMove.mjs +4 -4
- package/plugins/manualColumnResize/manualColumnResize.js +26 -12
- package/plugins/manualColumnResize/manualColumnResize.mjs +26 -12
- package/plugins/manualRowMove/manualRowMove.js +8 -6
- package/plugins/manualRowMove/manualRowMove.mjs +6 -4
- package/plugins/manualRowResize/manualRowResize.js +3 -2
- package/plugins/manualRowResize/manualRowResize.mjs +4 -3
- package/plugins/mergeCells/cellsCollection.js +19 -3
- package/plugins/mergeCells/cellsCollection.mjs +20 -4
- package/plugins/mergeCells/mergeCells.d.ts +6 -2
- package/plugins/mergeCells/mergeCells.js +84 -56
- package/plugins/mergeCells/mergeCells.mjs +82 -54
- package/plugins/mergeCells/renderer.js +13 -3
- package/plugins/mergeCells/renderer.mjs +13 -3
- package/plugins/multiColumnSorting/domHelpers.js +2 -0
- package/plugins/multiColumnSorting/domHelpers.mjs +2 -0
- package/plugins/nestedHeaders/nestedHeaders.js +63 -16
- package/plugins/nestedHeaders/nestedHeaders.mjs +63 -16
- package/plugins/nestedHeaders/stateManager/index.js +1 -0
- package/plugins/nestedHeaders/stateManager/index.mjs +1 -0
- package/plugins/nestedRows/nestedRows.js +3 -0
- package/plugins/nestedRows/nestedRows.mjs +3 -0
- package/plugins/nestedRows/ui/headers.js +7 -1
- package/plugins/nestedRows/ui/headers.mjs +7 -1
- package/plugins/nestedRows/utils/rowMoveController.js +4 -0
- package/plugins/nestedRows/utils/rowMoveController.mjs +4 -0
- package/plugins/persistentState/persistentState.js +4 -4
- package/plugins/persistentState/persistentState.mjs +1 -1
- package/plugins/stretchColumns/calculator.js +162 -0
- package/plugins/stretchColumns/calculator.mjs +158 -0
- package/plugins/stretchColumns/index.d.ts +1 -0
- package/plugins/stretchColumns/index.js +7 -0
- package/plugins/stretchColumns/index.mjs +1 -0
- package/plugins/stretchColumns/strategies/_base.js +85 -0
- package/plugins/stretchColumns/strategies/_base.mjs +81 -0
- package/plugins/stretchColumns/strategies/all.js +71 -0
- package/plugins/stretchColumns/strategies/all.mjs +67 -0
- package/plugins/stretchColumns/strategies/last.js +79 -0
- package/plugins/stretchColumns/strategies/last.mjs +75 -0
- package/plugins/stretchColumns/stretchColumns.d.ts +11 -0
- package/plugins/stretchColumns/stretchColumns.js +222 -0
- package/plugins/stretchColumns/stretchColumns.mjs +218 -0
- package/plugins/trimRows/trimRows.js +2 -0
- package/plugins/trimRows/trimRows.mjs +2 -0
- package/plugins/undoRedo/undoRedo.js +9 -5
- package/plugins/undoRedo/undoRedo.mjs +8 -3
- package/renderers/checkboxRenderer/checkboxRenderer.js +19 -8
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +18 -7
- package/selection/index.js +2 -0
- package/selection/range.js +2 -0
- package/selection/range.mjs +2 -0
- package/selection/selection.js +7 -2
- package/selection/selection.mjs +7 -2
- package/selection/utils.js +2 -0
- package/selection/utils.mjs +2 -0
- package/settings.d.ts +4 -1
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +1 -1
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +1 -1
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +1 -1
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +1 -1
- package/shortcutContexts/commands/index.js +2 -0
- package/shortcutContexts/commands/index.mjs +2 -0
- package/shortcutContexts/commands/scrollToFocusedCell.js +4 -4
- package/shortcutContexts/commands/scrollToFocusedCell.mjs +4 -4
- package/shortcutContexts/index.js +2 -0
- package/shortcutContexts/index.mjs +2 -0
- package/shortcuts/context.js +3 -0
- package/shortcuts/context.mjs +3 -0
- package/shortcuts/recorder.js +3 -3
- package/shortcuts/recorder.mjs +3 -3
- package/shortcuts/utils.js +1 -0
- package/shortcuts/utils.mjs +1 -0
- package/styles/handsontable.css +2307 -0
- package/styles/handsontable.min.css +30 -0
- package/styles/ht-theme-horizon.css +607 -0
- package/styles/ht-theme-horizon.min.css +30 -0
- package/styles/ht-theme-main.css +613 -0
- package/styles/ht-theme-main.min.css +30 -0
- package/tableView.js +205 -33
- package/tableView.mjs +206 -34
- package/translations/changesObservable/observable.js +2 -0
- package/translations/changesObservable/observable.mjs +2 -0
- package/translations/index.js +2 -0
- package/translations/indexMapper.js +4 -0
- package/translations/indexMapper.mjs +4 -0
- package/translations/mapCollections/index.js +2 -0
- package/translations/mapCollections/mapCollection.js +2 -0
- package/translations/mapCollections/mapCollection.mjs +2 -0
- package/translations/maps/index.js +2 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -0
- package/translations/maps/utils/actionsOnIndexes.js +2 -0
- package/translations/maps/utils/actionsOnIndexes.mjs +2 -0
- package/translations/maps/utils/physicallyIndexed.js +1 -0
- package/translations/maps/utils/physicallyIndexed.mjs +1 -0
- package/utils/autoResize.js +11 -3
- package/utils/autoResize.mjs +11 -3
- package/utils/dataStructures/priorityMap.js +1 -0
- package/utils/dataStructures/priorityMap.mjs +1 -0
- package/utils/dataStructures/uniqueMap.js +2 -0
- package/utils/dataStructures/uniqueMap.mjs +2 -0
- package/utils/ghostTable.js +7 -3
- package/utils/ghostTable.mjs +7 -3
- package/utils/parseTable.js +4 -0
- package/utils/parseTable.mjs +4 -0
- package/3rdparty/walkontable/src/selection/border/constants.js +0 -15
- package/3rdparty/walkontable/src/selection/border/constants.mjs +0 -12
- package/3rdparty/walkontable/src/utils/columnStretching.js +0 -197
- package/3rdparty/walkontable/src/utils/columnStretching.mjs +0 -193
@@ -1,3 +1,5 @@
|
|
1
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
2
|
+
import "core-js/modules/esnext.iterator.for-each.js";
|
1
3
|
import { createFocusNavigator } from "./focusNavigator.mjs";
|
2
4
|
import { SelectUI } from "../ui/select.mjs";
|
3
5
|
import { BaseUI } from "../ui/_base.mjs";
|
@@ -28,10 +30,11 @@ export function createMenuFocusController(mainMenu, menuItems) {
|
|
28
30
|
* into the focus mode triggered by the TAB or SHIFT+TAB keys).
|
29
31
|
*/
|
30
32
|
let lastSelectedMenuItem = -1;
|
33
|
+
let menuInstance;
|
31
34
|
const focusNavigator = createFocusNavigator(menuItems);
|
32
35
|
const updateNavigatorPosition = element => () => {
|
33
|
-
if (
|
34
|
-
|
36
|
+
if (menuInstance.isOpened()) {
|
37
|
+
menuInstance.getKeyboardShortcutsCtrl().listen(SHORTCUTS_MENU_CONTEXT);
|
35
38
|
}
|
36
39
|
focusNavigator.setCurrentPage(menuItems.indexOf(element));
|
37
40
|
};
|
@@ -44,11 +47,7 @@ export function createMenuFocusController(mainMenu, menuItems) {
|
|
44
47
|
element.addLocalHook('afterClose', updateNavigatorPosition(element));
|
45
48
|
}
|
46
49
|
});
|
47
|
-
mainMenu
|
48
|
-
if (!selectedItem.key.startsWith('filter_')) {
|
49
|
-
focusNavigator.clear();
|
50
|
-
}
|
51
|
-
});
|
50
|
+
setMenu(mainMenu);
|
52
51
|
|
53
52
|
/**
|
54
53
|
* Extends the menu and submenus with new keyboard shortcuts.
|
@@ -56,7 +55,7 @@ export function createMenuFocusController(mainMenu, menuItems) {
|
|
56
55
|
* @param {*} menu The menu (as main menu or submenu) instance.
|
57
56
|
*/
|
58
57
|
function addKeyboardShortcuts(menu) {
|
59
|
-
const mainMenuShortcutsCtrl =
|
58
|
+
const mainMenuShortcutsCtrl = menuInstance.getKeyboardShortcutsCtrl();
|
60
59
|
const currentMenuShortcutsCtrl = menu.getKeyboardShortcutsCtrl();
|
61
60
|
focusNavigator.clear();
|
62
61
|
currentMenuShortcutsCtrl.addCustomShortcuts([{
|
@@ -75,7 +74,7 @@ export function createMenuFocusController(mainMenu, menuItems) {
|
|
75
74
|
mainMenuShortcutsCtrl.addCustomShortcuts([{
|
76
75
|
keys: [['Tab'], ['Shift', 'Tab']],
|
77
76
|
callback: event => {
|
78
|
-
const menuNavigator =
|
77
|
+
const menuNavigator = menuInstance.getNavigator();
|
79
78
|
if (menuNavigator.getCurrentPage() > -1) {
|
80
79
|
lastSelectedMenuItem = menuNavigator.getCurrentPage();
|
81
80
|
}
|
@@ -89,7 +88,7 @@ export function createMenuFocusController(mainMenu, menuItems) {
|
|
89
88
|
}, {
|
90
89
|
keys: [['Escape']],
|
91
90
|
callback: () => {
|
92
|
-
|
91
|
+
menuInstance.close();
|
93
92
|
}
|
94
93
|
}, {
|
95
94
|
keys: [['Enter'], ['Space']],
|
@@ -110,16 +109,39 @@ export function createMenuFocusController(mainMenu, menuItems) {
|
|
110
109
|
}
|
111
110
|
}], SHORTCUTS_MENU_CONTEXT);
|
112
111
|
}
|
113
|
-
mainMenu.addLocalHook('afterSubmenuOpen', addKeyboardShortcuts);
|
114
|
-
mainMenu.addLocalHook('afterOpen', addKeyboardShortcuts);
|
115
112
|
|
116
113
|
/**
|
117
114
|
* Focuses the menu and switches its shortcut context to that one which controls
|
118
115
|
* the focus navigation.
|
119
116
|
*/
|
120
117
|
function listen() {
|
121
|
-
|
122
|
-
|
118
|
+
menuInstance.focus();
|
119
|
+
menuInstance.getKeyboardShortcutsCtrl().listen(SHORTCUTS_MENU_CONTEXT);
|
120
|
+
}
|
121
|
+
|
122
|
+
/**
|
123
|
+
* Applies the focus controller to the new menu instance.
|
124
|
+
*
|
125
|
+
* @param {Menu} menu The new menu instance.
|
126
|
+
*/
|
127
|
+
function setMenu(menu) {
|
128
|
+
menu.addLocalHook('afterSelectionChange', selectedItem => {
|
129
|
+
if (!selectedItem.key.startsWith('filter_')) {
|
130
|
+
focusNavigator.clear();
|
131
|
+
}
|
132
|
+
});
|
133
|
+
menu.addLocalHook('afterSubmenuOpen', addKeyboardShortcuts);
|
134
|
+
menu.addLocalHook('afterOpen', addKeyboardShortcuts);
|
135
|
+
menuInstance = menu;
|
136
|
+
}
|
137
|
+
|
138
|
+
/**
|
139
|
+
* Retrieves the current menu instance.
|
140
|
+
*
|
141
|
+
* @returns {Menu} The current menu instance.
|
142
|
+
*/
|
143
|
+
function getMenu() {
|
144
|
+
return menuInstance;
|
123
145
|
}
|
124
146
|
|
125
147
|
/**
|
@@ -133,6 +155,8 @@ export function createMenuFocusController(mainMenu, menuItems) {
|
|
133
155
|
return {
|
134
156
|
...focusNavigator,
|
135
157
|
listen,
|
158
|
+
setMenu,
|
159
|
+
getMenu,
|
136
160
|
getLastMenuPage
|
137
161
|
};
|
138
162
|
}
|
@@ -3,6 +3,10 @@
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.error.cause.js");
|
5
5
|
require("core-js/modules/es.array.push.js");
|
6
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
7
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
8
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
9
|
+
require("core-js/modules/esnext.iterator.map.js");
|
6
10
|
var _element = require("../../../helpers/dom/element");
|
7
11
|
var _object = require("../../../helpers/object");
|
8
12
|
var _unicode = require("../../../helpers/unicode");
|
@@ -261,9 +265,15 @@ class MultipleSelectUI extends _base.BaseUI {
|
|
261
265
|
row: 1,
|
262
266
|
col: 0
|
263
267
|
},
|
268
|
+
themeName: this.hot.getCurrentThemeName(),
|
264
269
|
layoutDirection: this.hot.isRtl() ? 'rtl' : 'ltr'
|
265
270
|
}));
|
266
271
|
_classPrivateFieldGet(_itemsBox, this).init();
|
272
|
+
this.hot.addHook('afterSetTheme', (themeName, firstRun) => {
|
273
|
+
if (!firstRun) {
|
274
|
+
_classPrivateFieldGet(_itemsBox, this).useTheme(themeName);
|
275
|
+
}
|
276
|
+
});
|
267
277
|
const shortcutManager = _classPrivateFieldGet(_itemsBox, this).getShortcutManager();
|
268
278
|
const gridContext = shortcutManager.getContext('grid');
|
269
279
|
gridContext.removeShortcutsByKeys(['Tab']);
|
@@ -1,5 +1,9 @@
|
|
1
1
|
import "core-js/modules/es.error.cause.js";
|
2
2
|
import "core-js/modules/es.array.push.js";
|
3
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
4
|
+
import "core-js/modules/esnext.iterator.filter.js";
|
5
|
+
import "core-js/modules/esnext.iterator.for-each.js";
|
6
|
+
import "core-js/modules/esnext.iterator.map.js";
|
3
7
|
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
|
4
8
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
5
9
|
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
@@ -256,9 +260,15 @@ export class MultipleSelectUI extends BaseUI {
|
|
256
260
|
row: 1,
|
257
261
|
col: 0
|
258
262
|
},
|
263
|
+
themeName: this.hot.getCurrentThemeName(),
|
259
264
|
layoutDirection: this.hot.isRtl() ? 'rtl' : 'ltr'
|
260
265
|
}));
|
261
266
|
_classPrivateFieldGet(_itemsBox, this).init();
|
267
|
+
this.hot.addHook('afterSetTheme', (themeName, firstRun) => {
|
268
|
+
if (!firstRun) {
|
269
|
+
_classPrivateFieldGet(_itemsBox, this).useTheme(themeName);
|
270
|
+
}
|
271
|
+
});
|
262
272
|
const shortcutManager = _classPrivateFieldGet(_itemsBox, this).getShortcutManager();
|
263
273
|
const gridContext = shortcutManager.getContext('grid');
|
264
274
|
gridContext.removeShortcutsByKeys(['Tab']);
|
@@ -10,6 +10,9 @@ exports.setupEngine = setupEngine;
|
|
10
10
|
exports.setupSheet = setupSheet;
|
11
11
|
exports.unregisterEngine = unregisterEngine;
|
12
12
|
require("core-js/modules/es.array.push.js");
|
13
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
14
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
15
|
+
require("core-js/modules/esnext.iterator.map.js");
|
13
16
|
var _staticRegister = _interopRequireDefault(require("../../../utils/staticRegister"));
|
14
17
|
var _mixed = require("../../../helpers/mixed");
|
15
18
|
var _templateLiteralTag = require("../../../helpers/templateLiteralTag");
|
@@ -1,4 +1,7 @@
|
|
1
1
|
import "core-js/modules/es.array.push.js";
|
2
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
3
|
+
import "core-js/modules/esnext.iterator.for-each.js";
|
4
|
+
import "core-js/modules/esnext.iterator.map.js";
|
2
5
|
import staticRegister from "../../../utils/staticRegister.mjs";
|
3
6
|
import { isUndefined } from "../../../helpers/mixed.mjs";
|
4
7
|
import { toSingleLine } from "../../../helpers/templateLiteralTag.mjs";
|
@@ -5,6 +5,9 @@ exports.getEngineSettingsOverrides = getEngineSettingsOverrides;
|
|
5
5
|
exports.getEngineSettingsWithDefaultsAndOverrides = getEngineSettingsWithDefaultsAndOverrides;
|
6
6
|
exports.getEngineSettingsWithOverrides = getEngineSettingsWithOverrides;
|
7
7
|
exports.haveEngineSettingsChanged = haveEngineSettingsChanged;
|
8
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
9
|
+
require("core-js/modules/esnext.iterator.reduce.js");
|
10
|
+
require("core-js/modules/esnext.iterator.some.js");
|
8
11
|
var _formulas = require("../formulas");
|
9
12
|
const DEFAULT_LICENSE_KEY = exports.DEFAULT_LICENSE_KEY = 'internal-use-in-handsontable';
|
10
13
|
const DEFAULT_SETTINGS = exports.DEFAULT_SETTINGS = {
|
@@ -1,3 +1,6 @@
|
|
1
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
2
|
+
import "core-js/modules/esnext.iterator.reduce.js";
|
3
|
+
import "core-js/modules/esnext.iterator.some.js";
|
1
4
|
import { PLUGIN_KEY } from "../formulas.mjs";
|
2
5
|
export const DEFAULT_LICENSE_KEY = 'internal-use-in-handsontable';
|
3
6
|
export const DEFAULT_SETTINGS = {
|
@@ -11,6 +11,11 @@ require("core-js/modules/es.set.is-subset-of.v2.js");
|
|
11
11
|
require("core-js/modules/es.set.is-superset-of.v2.js");
|
12
12
|
require("core-js/modules/es.set.symmetric-difference.v2.js");
|
13
13
|
require("core-js/modules/es.set.union.v2.js");
|
14
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
15
|
+
require("core-js/modules/esnext.iterator.every.js");
|
16
|
+
require("core-js/modules/esnext.iterator.find.js");
|
17
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
18
|
+
require("core-js/modules/esnext.iterator.map.js");
|
14
19
|
var _base = require("../base");
|
15
20
|
var _staticRegister = _interopRequireDefault(require("../../utils/staticRegister"));
|
16
21
|
var _console = require("../../helpers/console");
|
@@ -21,7 +26,7 @@ var _utils = require("./utils");
|
|
21
26
|
var _settings = require("./engine/settings");
|
22
27
|
var _data = require("../../helpers/data");
|
23
28
|
var _string = require("../../helpers/string");
|
24
|
-
var
|
29
|
+
var _hooks = require("../../core/hooks");
|
25
30
|
var _indexSyncer = _interopRequireDefault(require("./indexSyncer"));
|
26
31
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
27
32
|
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
|
@@ -36,12 +41,12 @@ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.h
|
|
36
41
|
const PLUGIN_KEY = exports.PLUGIN_KEY = 'formulas';
|
37
42
|
const SETTING_KEYS = exports.SETTING_KEYS = ['maxRows', 'maxColumns', 'language'];
|
38
43
|
const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 260;
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
44
|
+
_hooks.Hooks.getSingleton().register('afterNamedExpressionAdded');
|
45
|
+
_hooks.Hooks.getSingleton().register('afterNamedExpressionRemoved');
|
46
|
+
_hooks.Hooks.getSingleton().register('afterSheetAdded');
|
47
|
+
_hooks.Hooks.getSingleton().register('afterSheetRemoved');
|
48
|
+
_hooks.Hooks.getSingleton().register('afterSheetRenamed');
|
49
|
+
_hooks.Hooks.getSingleton().register('afterFormulasValuesUpdate');
|
45
50
|
|
46
51
|
// This function will be used for detecting changes coming from the `UndoRedo` plugin. This kind of change won't be
|
47
52
|
// handled by whole body of listeners and therefore won't change undo/redo stack inside engine provided by HyperFormula.
|
@@ -8,6 +8,11 @@ import "core-js/modules/es.set.is-subset-of.v2.js";
|
|
8
8
|
import "core-js/modules/es.set.is-superset-of.v2.js";
|
9
9
|
import "core-js/modules/es.set.symmetric-difference.v2.js";
|
10
10
|
import "core-js/modules/es.set.union.v2.js";
|
11
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
12
|
+
import "core-js/modules/esnext.iterator.every.js";
|
13
|
+
import "core-js/modules/esnext.iterator.find.js";
|
14
|
+
import "core-js/modules/esnext.iterator.for-each.js";
|
15
|
+
import "core-js/modules/esnext.iterator.map.js";
|
11
16
|
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
|
12
17
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
13
18
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
@@ -27,7 +32,7 @@ import { isEscapedFormulaExpression, unescapeFormulaExpression, isDate, isDateVa
|
|
27
32
|
import { getEngineSettingsWithOverrides, haveEngineSettingsChanged } from "./engine/settings.mjs";
|
28
33
|
import { isArrayOfArrays } from "../../helpers/data.mjs";
|
29
34
|
import { toUpperCaseFirst } from "../../helpers/string.mjs";
|
30
|
-
import Hooks from "../../
|
35
|
+
import { Hooks } from "../../core/hooks/index.mjs";
|
31
36
|
import IndexSyncer from "./indexSyncer/index.mjs";
|
32
37
|
export const PLUGIN_KEY = 'formulas';
|
33
38
|
export const SETTING_KEYS = ['maxRows', 'maxColumns', 'language'];
|
@@ -3,6 +3,9 @@
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
require("core-js/modules/es.error.cause.js");
|
5
5
|
require("core-js/modules/es.array.push.js");
|
6
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
7
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
8
|
+
require("core-js/modules/esnext.iterator.map.js");
|
6
9
|
var _string = require("../../../helpers/string");
|
7
10
|
var _moves = require("../../../helpers/moves");
|
8
11
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
@@ -1,5 +1,8 @@
|
|
1
1
|
import "core-js/modules/es.error.cause.js";
|
2
2
|
import "core-js/modules/es.array.push.js";
|
3
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
4
|
+
import "core-js/modules/esnext.iterator.for-each.js";
|
5
|
+
import "core-js/modules/esnext.iterator.map.js";
|
3
6
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
4
7
|
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
5
8
|
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
@@ -3,6 +3,8 @@
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = showColumnItem;
|
5
5
|
require("core-js/modules/es.array.push.js");
|
6
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
7
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
6
8
|
var _array = require("../../../helpers/array");
|
7
9
|
var C = _interopRequireWildcard(require("../../../i18n/constants"));
|
8
10
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
@@ -1,4 +1,6 @@
|
|
1
1
|
import "core-js/modules/es.array.push.js";
|
2
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
3
|
+
import "core-js/modules/esnext.iterator.filter.js";
|
2
4
|
import { arrayEach, arrayMap } from "../../../helpers/array.mjs";
|
3
5
|
import * as C from "../../../i18n/constants.mjs";
|
4
6
|
/**
|
@@ -10,14 +10,15 @@ require("core-js/modules/es.set.is-subset-of.v2.js");
|
|
10
10
|
require("core-js/modules/es.set.is-superset-of.v2.js");
|
11
11
|
require("core-js/modules/es.set.symmetric-difference.v2.js");
|
12
12
|
require("core-js/modules/es.set.union.v2.js");
|
13
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
14
|
+
require("core-js/modules/esnext.iterator.every.js");
|
15
|
+
require("core-js/modules/esnext.iterator.map.js");
|
13
16
|
var _base = require("../base");
|
14
17
|
var _element = require("../../helpers/dom/element");
|
15
18
|
var _number = require("../../helpers/number");
|
16
19
|
var _array = require("../../helpers/array");
|
17
|
-
var _object = require("../../helpers/object");
|
18
|
-
var _mixed = require("../../helpers/mixed");
|
19
20
|
var _predefinedItems = require("../contextMenu/predefinedItems");
|
20
|
-
var
|
21
|
+
var _hooks = require("../../core/hooks");
|
21
22
|
var _hideColumn = _interopRequireDefault(require("./contextMenuItem/hideColumn"));
|
22
23
|
var _showColumn = _interopRequireDefault(require("./contextMenuItem/showColumn"));
|
23
24
|
var _translations = require("../../translations");
|
@@ -28,10 +29,10 @@ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("C
|
|
28
29
|
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
29
30
|
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
30
31
|
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"); }
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
32
|
+
_hooks.Hooks.getSingleton().register('beforeHideColumns');
|
33
|
+
_hooks.Hooks.getSingleton().register('afterHideColumns');
|
34
|
+
_hooks.Hooks.getSingleton().register('beforeUnhideColumns');
|
35
|
+
_hooks.Hooks.getSingleton().register('afterUnhideColumns');
|
35
36
|
const PLUGIN_KEY = exports.PLUGIN_KEY = 'hiddenColumns';
|
36
37
|
const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 310;
|
37
38
|
|
@@ -141,7 +142,6 @@ const PLUGIN_PRIORITY = exports.PLUGIN_PRIORITY = 310;
|
|
141
142
|
* ```
|
142
143
|
* :::
|
143
144
|
*/
|
144
|
-
var _settings = /*#__PURE__*/new WeakMap();
|
145
145
|
var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
|
146
146
|
var _HiddenColumns_brand = /*#__PURE__*/new WeakSet();
|
147
147
|
class HiddenColumns extends _base.BasePlugin {
|
@@ -155,13 +155,6 @@ class HiddenColumns extends _base.BasePlugin {
|
|
155
155
|
* @returns {number}
|
156
156
|
*/
|
157
157
|
_classPrivateMethodInitSpec(this, _HiddenColumns_brand);
|
158
|
-
/**
|
159
|
-
* Cached plugin settings.
|
160
|
-
*
|
161
|
-
* @private
|
162
|
-
* @type {object}
|
163
|
-
*/
|
164
|
-
_classPrivateFieldInitSpec(this, _settings, {});
|
165
158
|
/**
|
166
159
|
* Map of hidden columns by the plugin.
|
167
160
|
*
|
@@ -176,6 +169,13 @@ class HiddenColumns extends _base.BasePlugin {
|
|
176
169
|
static get PLUGIN_PRIORITY() {
|
177
170
|
return PLUGIN_PRIORITY;
|
178
171
|
}
|
172
|
+
static get DEFAULT_SETTINGS() {
|
173
|
+
return {
|
174
|
+
copyPasteEnabled: true,
|
175
|
+
indicators: false,
|
176
|
+
columns: []
|
177
|
+
};
|
178
|
+
}
|
179
179
|
/**
|
180
180
|
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
181
181
|
* hook and if it returns `true` then the {@link HiddenColumns#enablePlugin} method is called.
|
@@ -194,13 +194,6 @@ class HiddenColumns extends _base.BasePlugin {
|
|
194
194
|
if (this.enabled) {
|
195
195
|
return;
|
196
196
|
}
|
197
|
-
const pluginSettings = this.hot.getSettings()[PLUGIN_KEY];
|
198
|
-
if ((0, _object.isObject)(pluginSettings)) {
|
199
|
-
_classPrivateFieldSet(_settings, this, pluginSettings);
|
200
|
-
if ((0, _mixed.isUndefined)(pluginSettings.copyPasteEnabled)) {
|
201
|
-
pluginSettings.copyPasteEnabled = true;
|
202
|
-
}
|
203
|
-
}
|
204
197
|
_classPrivateFieldSet(_hiddenColumnsMap, this, new _translations.HidingMap());
|
205
198
|
_classPrivateFieldGet(_hiddenColumnsMap, this).addLocalHook('init', () => _assertClassBrand(_HiddenColumns_brand, this, _onMapInit).call(this));
|
206
199
|
this.hot.columnIndexMapper.registerMap(this.pluginName, _classPrivateFieldGet(_hiddenColumnsMap, this));
|
@@ -239,7 +232,6 @@ class HiddenColumns extends _base.BasePlugin {
|
|
239
232
|
*/
|
240
233
|
disablePlugin() {
|
241
234
|
this.hot.columnIndexMapper.unregisterMap(this.pluginName);
|
242
|
-
_classPrivateFieldSet(_settings, this, {});
|
243
235
|
super.disablePlugin();
|
244
236
|
this.resetCellsMeta();
|
245
237
|
}
|
@@ -385,7 +377,6 @@ class HiddenColumns extends _base.BasePlugin {
|
|
385
377
|
* Destroys the plugin instance.
|
386
378
|
*/
|
387
379
|
destroy() {
|
388
|
-
_classPrivateFieldSet(_settings, this, null);
|
389
380
|
_classPrivateFieldSet(_hiddenColumnsMap, this, null);
|
390
381
|
super.destroy();
|
391
382
|
}
|
@@ -397,7 +388,7 @@ function _onModifyColWidth(width, column) {
|
|
397
388
|
if (this.isHidden(column)) {
|
398
389
|
return 0;
|
399
390
|
}
|
400
|
-
if (
|
391
|
+
if (this.getSetting('indicators') && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
|
401
392
|
// Add additional space for hidden column indicator.
|
402
393
|
if (typeof width === 'number' && this.hot.hasColHeaders()) {
|
403
394
|
return width + 15;
|
@@ -412,7 +403,7 @@ function _onModifyColWidth(width, column) {
|
|
412
403
|
* @param {object} cellProperties Object containing the cell properties.
|
413
404
|
*/
|
414
405
|
function _onAfterGetCellMeta(row, column, cellProperties) {
|
415
|
-
if (
|
406
|
+
if (this.getSetting('copyPasteEnabled') === false && this.isHidden(column)) {
|
416
407
|
// Cell property handled by the `Autofill` and the `CopyPaste` plugins.
|
417
408
|
cellProperties.skipColumnOnPaste = true;
|
418
409
|
}
|
@@ -440,7 +431,7 @@ function _onAfterGetCellMeta(row, column, cellProperties) {
|
|
440
431
|
*/
|
441
432
|
function _onModifyCopyableRange(ranges) {
|
442
433
|
// Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
|
443
|
-
if (
|
434
|
+
if (this.getSetting('copyPasteEnabled')) {
|
444
435
|
return ranges;
|
445
436
|
}
|
446
437
|
const newRanges = [];
|
@@ -481,7 +472,7 @@ function _onModifyCopyableRange(ranges) {
|
|
481
472
|
* @param {HTMLElement} TH Header's TH element.
|
482
473
|
*/
|
483
474
|
function _onAfterGetColHeader(column, TH) {
|
484
|
-
if (!
|
475
|
+
if (!this.getSetting('indicators') || column < 0) {
|
485
476
|
return;
|
486
477
|
}
|
487
478
|
const classList = [];
|
@@ -507,7 +498,8 @@ function _onAfterContextMenuDefaultOptions(options) {
|
|
507
498
|
* On map initialized hook callback.
|
508
499
|
*/
|
509
500
|
function _onMapInit() {
|
510
|
-
|
511
|
-
|
501
|
+
const columns = this.getSetting('columns');
|
502
|
+
if (Array.isArray(columns)) {
|
503
|
+
this.hideColumns(columns);
|
512
504
|
}
|
513
505
|
}
|
@@ -7,6 +7,9 @@ import "core-js/modules/es.set.is-subset-of.v2.js";
|
|
7
7
|
import "core-js/modules/es.set.is-superset-of.v2.js";
|
8
8
|
import "core-js/modules/es.set.symmetric-difference.v2.js";
|
9
9
|
import "core-js/modules/es.set.union.v2.js";
|
10
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
11
|
+
import "core-js/modules/esnext.iterator.every.js";
|
12
|
+
import "core-js/modules/esnext.iterator.map.js";
|
10
13
|
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
|
11
14
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
12
15
|
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
@@ -17,10 +20,8 @@ import { BasePlugin } from "../base/index.mjs";
|
|
17
20
|
import { addClass } from "../../helpers/dom/element.mjs";
|
18
21
|
import { rangeEach } from "../../helpers/number.mjs";
|
19
22
|
import { arrayEach, arrayMap, arrayReduce } from "../../helpers/array.mjs";
|
20
|
-
import { isObject } from "../../helpers/object.mjs";
|
21
|
-
import { isUndefined } from "../../helpers/mixed.mjs";
|
22
23
|
import { SEPARATOR } from "../contextMenu/predefinedItems/index.mjs";
|
23
|
-
import Hooks from "../../
|
24
|
+
import { Hooks } from "../../core/hooks/index.mjs";
|
24
25
|
import hideColumnItem from "./contextMenuItem/hideColumn.mjs";
|
25
26
|
import showColumnItem from "./contextMenuItem/showColumn.mjs";
|
26
27
|
import { HidingMap } from "../../translations/index.mjs";
|
@@ -137,7 +138,6 @@ export const PLUGIN_PRIORITY = 310;
|
|
137
138
|
* ```
|
138
139
|
* :::
|
139
140
|
*/
|
140
|
-
var _settings = /*#__PURE__*/new WeakMap();
|
141
141
|
var _hiddenColumnsMap = /*#__PURE__*/new WeakMap();
|
142
142
|
var _HiddenColumns_brand = /*#__PURE__*/new WeakSet();
|
143
143
|
export class HiddenColumns extends BasePlugin {
|
@@ -151,13 +151,6 @@ export class HiddenColumns extends BasePlugin {
|
|
151
151
|
* @returns {number}
|
152
152
|
*/
|
153
153
|
_classPrivateMethodInitSpec(this, _HiddenColumns_brand);
|
154
|
-
/**
|
155
|
-
* Cached plugin settings.
|
156
|
-
*
|
157
|
-
* @private
|
158
|
-
* @type {object}
|
159
|
-
*/
|
160
|
-
_classPrivateFieldInitSpec(this, _settings, {});
|
161
154
|
/**
|
162
155
|
* Map of hidden columns by the plugin.
|
163
156
|
*
|
@@ -172,6 +165,13 @@ export class HiddenColumns extends BasePlugin {
|
|
172
165
|
static get PLUGIN_PRIORITY() {
|
173
166
|
return PLUGIN_PRIORITY;
|
174
167
|
}
|
168
|
+
static get DEFAULT_SETTINGS() {
|
169
|
+
return {
|
170
|
+
copyPasteEnabled: true,
|
171
|
+
indicators: false,
|
172
|
+
columns: []
|
173
|
+
};
|
174
|
+
}
|
175
175
|
/**
|
176
176
|
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
177
177
|
* hook and if it returns `true` then the {@link HiddenColumns#enablePlugin} method is called.
|
@@ -190,13 +190,6 @@ export class HiddenColumns extends BasePlugin {
|
|
190
190
|
if (this.enabled) {
|
191
191
|
return;
|
192
192
|
}
|
193
|
-
const pluginSettings = this.hot.getSettings()[PLUGIN_KEY];
|
194
|
-
if (isObject(pluginSettings)) {
|
195
|
-
_classPrivateFieldSet(_settings, this, pluginSettings);
|
196
|
-
if (isUndefined(pluginSettings.copyPasteEnabled)) {
|
197
|
-
pluginSettings.copyPasteEnabled = true;
|
198
|
-
}
|
199
|
-
}
|
200
193
|
_classPrivateFieldSet(_hiddenColumnsMap, this, new HidingMap());
|
201
194
|
_classPrivateFieldGet(_hiddenColumnsMap, this).addLocalHook('init', () => _assertClassBrand(_HiddenColumns_brand, this, _onMapInit).call(this));
|
202
195
|
this.hot.columnIndexMapper.registerMap(this.pluginName, _classPrivateFieldGet(_hiddenColumnsMap, this));
|
@@ -235,7 +228,6 @@ export class HiddenColumns extends BasePlugin {
|
|
235
228
|
*/
|
236
229
|
disablePlugin() {
|
237
230
|
this.hot.columnIndexMapper.unregisterMap(this.pluginName);
|
238
|
-
_classPrivateFieldSet(_settings, this, {});
|
239
231
|
super.disablePlugin();
|
240
232
|
this.resetCellsMeta();
|
241
233
|
}
|
@@ -381,7 +373,6 @@ export class HiddenColumns extends BasePlugin {
|
|
381
373
|
* Destroys the plugin instance.
|
382
374
|
*/
|
383
375
|
destroy() {
|
384
|
-
_classPrivateFieldSet(_settings, this, null);
|
385
376
|
_classPrivateFieldSet(_hiddenColumnsMap, this, null);
|
386
377
|
super.destroy();
|
387
378
|
}
|
@@ -392,7 +383,7 @@ function _onModifyColWidth(width, column) {
|
|
392
383
|
if (this.isHidden(column)) {
|
393
384
|
return 0;
|
394
385
|
}
|
395
|
-
if (
|
386
|
+
if (this.getSetting('indicators') && (this.isHidden(column + 1) || this.isHidden(column - 1))) {
|
396
387
|
// Add additional space for hidden column indicator.
|
397
388
|
if (typeof width === 'number' && this.hot.hasColHeaders()) {
|
398
389
|
return width + 15;
|
@@ -407,7 +398,7 @@ function _onModifyColWidth(width, column) {
|
|
407
398
|
* @param {object} cellProperties Object containing the cell properties.
|
408
399
|
*/
|
409
400
|
function _onAfterGetCellMeta(row, column, cellProperties) {
|
410
|
-
if (
|
401
|
+
if (this.getSetting('copyPasteEnabled') === false && this.isHidden(column)) {
|
411
402
|
// Cell property handled by the `Autofill` and the `CopyPaste` plugins.
|
412
403
|
cellProperties.skipColumnOnPaste = true;
|
413
404
|
}
|
@@ -435,7 +426,7 @@ function _onAfterGetCellMeta(row, column, cellProperties) {
|
|
435
426
|
*/
|
436
427
|
function _onModifyCopyableRange(ranges) {
|
437
428
|
// Ranges shouldn't be modified when `copyPasteEnabled` option is set to `true` (by default).
|
438
|
-
if (
|
429
|
+
if (this.getSetting('copyPasteEnabled')) {
|
439
430
|
return ranges;
|
440
431
|
}
|
441
432
|
const newRanges = [];
|
@@ -476,7 +467,7 @@ function _onModifyCopyableRange(ranges) {
|
|
476
467
|
* @param {HTMLElement} TH Header's TH element.
|
477
468
|
*/
|
478
469
|
function _onAfterGetColHeader(column, TH) {
|
479
|
-
if (!
|
470
|
+
if (!this.getSetting('indicators') || column < 0) {
|
480
471
|
return;
|
481
472
|
}
|
482
473
|
const classList = [];
|
@@ -502,7 +493,8 @@ function _onAfterContextMenuDefaultOptions(options) {
|
|
502
493
|
* On map initialized hook callback.
|
503
494
|
*/
|
504
495
|
function _onMapInit() {
|
505
|
-
|
506
|
-
|
496
|
+
const columns = this.getSetting('columns');
|
497
|
+
if (Array.isArray(columns)) {
|
498
|
+
this.hideColumns(columns);
|
507
499
|
}
|
508
500
|
}
|
@@ -3,6 +3,8 @@
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = showRowItem;
|
5
5
|
require("core-js/modules/es.array.push.js");
|
6
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
7
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
6
8
|
var _array = require("../../../helpers/array");
|
7
9
|
var C = _interopRequireWildcard(require("../../../i18n/constants"));
|
8
10
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
@@ -1,4 +1,6 @@
|
|
1
1
|
import "core-js/modules/es.array.push.js";
|
2
|
+
import "core-js/modules/esnext.iterator.constructor.js";
|
3
|
+
import "core-js/modules/esnext.iterator.filter.js";
|
2
4
|
import { arrayEach, arrayMap } from "../../../helpers/array.mjs";
|
3
5
|
import * as C from "../../../i18n/constants.mjs";
|
4
6
|
/**
|