handsontable 0.0.0-next-a1e4b4f-20230628 → 0.0.0-next-e697250-20230707
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/walkontable/src/cell/coords.d.ts +6 -1
- package/3rdparty/walkontable/src/cell/coords.js +50 -28
- package/3rdparty/walkontable/src/cell/coords.mjs +50 -28
- package/3rdparty/walkontable/src/cell/range.d.ts +9 -2
- package/3rdparty/walkontable/src/cell/range.js +69 -36
- package/3rdparty/walkontable/src/cell/range.mjs +68 -35
- package/3rdparty/walkontable/src/event.js +3 -5
- package/3rdparty/walkontable/src/event.mjs +3 -5
- package/3rdparty/walkontable/src/overlay/_base.js +6 -7
- package/3rdparty/walkontable/src/overlay/_base.mjs +6 -7
- package/3rdparty/walkontable/src/overlay/bottom.js +6 -7
- package/3rdparty/walkontable/src/overlay/bottom.mjs +6 -7
- package/3rdparty/walkontable/src/overlay/top.js +6 -7
- package/3rdparty/walkontable/src/overlay/top.mjs +6 -7
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +10 -12
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +10 -12
- package/3rdparty/walkontable/src/overlays.js +55 -64
- package/3rdparty/walkontable/src/overlays.mjs +55 -64
- package/3rdparty/walkontable/src/renderer/table.js +0 -2
- package/3rdparty/walkontable/src/renderer/table.mjs +0 -2
- package/3rdparty/walkontable/src/scroll.js +20 -23
- package/3rdparty/walkontable/src/scroll.mjs +20 -23
- package/3rdparty/walkontable/src/selection/border/border.js +1 -0
- package/3rdparty/walkontable/src/selection/border/border.mjs +1 -0
- package/3rdparty/walkontable/src/selection/manager.js +40 -45
- package/3rdparty/walkontable/src/selection/manager.mjs +33 -38
- package/3rdparty/walkontable/src/selection/scanner.js +5 -4
- package/3rdparty/walkontable/src/selection/scanner.mjs +1 -0
- package/3rdparty/walkontable/src/settings.js +13 -15
- package/3rdparty/walkontable/src/settings.mjs +13 -15
- package/3rdparty/walkontable/src/table.js +23 -26
- package/3rdparty/walkontable/src/table.mjs +23 -26
- package/CHANGELOG.md +56 -0
- package/base.js +2 -4
- package/base.mjs +2 -2
- package/common.d.ts +1 -1
- package/core.d.ts +7 -9
- package/core.js +241 -439
- package/core.mjs +245 -443
- package/dataMap/dataMap.js +1 -0
- package/dataMap/dataMap.mjs +1 -0
- package/dataMap/dataSource.js +5 -5
- package/dataMap/dataSource.mjs +5 -5
- package/dataMap/metaManager/lazyFactoryMap.js +1 -0
- package/dataMap/metaManager/lazyFactoryMap.mjs +1 -0
- package/dataMap/metaManager/metaLayers/cellMeta.js +1 -0
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +1 -0
- package/dataMap/metaManager/metaSchema.js +33 -24
- package/dataMap/metaManager/metaSchema.mjs +33 -24
- package/dist/handsontable.css +25 -3
- package/dist/handsontable.full.css +25 -3
- package/dist/handsontable.full.js +14539 -11358
- package/dist/handsontable.full.min.css +5 -5
- package/dist/handsontable.full.min.js +137 -125
- package/dist/handsontable.js +31414 -28455
- package/dist/handsontable.min.css +5 -5
- package/dist/handsontable.min.js +11 -3
- package/dist/languages/all.js +133 -0
- package/dist/languages/ar-AR.js +7 -0
- package/dist/languages/cs-CZ.js +7 -0
- package/dist/languages/de-CH.js +7 -0
- package/dist/languages/de-DE.js +7 -0
- package/dist/languages/en-US.js +7 -0
- package/dist/languages/es-MX.js +7 -0
- package/dist/languages/fr-FR.js +7 -0
- package/dist/languages/it-IT.js +7 -0
- package/dist/languages/ja-JP.js +7 -0
- package/dist/languages/ko-KR.js +7 -0
- package/dist/languages/lv-LV.js +7 -0
- package/dist/languages/nb-NO.js +7 -0
- package/dist/languages/nl-NL.js +7 -0
- package/dist/languages/pl-PL.js +7 -0
- package/dist/languages/pt-BR.js +7 -0
- package/dist/languages/ru-RU.js +7 -0
- package/dist/languages/sr-SP.js +7 -0
- package/dist/languages/zh-CN.js +7 -0
- package/dist/languages/zh-TW.js +7 -0
- package/editorManager.js +19 -89
- package/editorManager.mjs +24 -93
- package/editors/baseEditor/baseEditor.js +1 -0
- package/editors/baseEditor/baseEditor.mjs +1 -0
- package/editors/textEditor/textEditor.js +14 -20
- package/editors/textEditor/textEditor.mjs +16 -22
- package/helpers/dom/element.js +0 -11
- package/helpers/dom/element.mjs +0 -10
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/helpers/number.d.ts +1 -0
- package/helpers/number.js +18 -0
- package/helpers/number.mjs +17 -0
- package/helpers/object.js +2 -0
- package/helpers/object.mjs +2 -0
- package/i18n/languages/ar-AR.js +7 -1
- package/i18n/languages/cs-CZ.js +7 -1
- package/i18n/languages/de-CH.js +7 -1
- package/i18n/languages/de-DE.js +7 -1
- package/i18n/languages/en-US.js +7 -1
- package/i18n/languages/es-MX.js +7 -1
- package/i18n/languages/fr-FR.js +7 -1
- package/i18n/languages/it-IT.js +7 -1
- package/i18n/languages/ja-JP.js +7 -1
- package/i18n/languages/ko-KR.js +7 -1
- package/i18n/languages/lv-LV.js +7 -1
- package/i18n/languages/nb-NO.js +7 -1
- package/i18n/languages/nl-NL.js +7 -1
- package/i18n/languages/pl-PL.js +7 -1
- package/i18n/languages/pt-BR.js +7 -1
- package/i18n/languages/ru-RU.js +7 -1
- package/i18n/languages/sr-SP.js +7 -1
- package/i18n/languages/zh-CN.js +7 -1
- package/i18n/languages/zh-TW.js +7 -1
- package/languages/all.js +133 -0
- package/languages/ar-AR.js +7 -0
- package/languages/cs-CZ.js +7 -0
- package/languages/de-CH.js +7 -0
- package/languages/de-DE.js +7 -0
- package/languages/en-US.js +7 -0
- package/languages/es-MX.js +7 -0
- package/languages/fr-FR.js +7 -0
- package/languages/index.js +133 -0
- package/languages/it-IT.js +7 -0
- package/languages/ja-JP.js +7 -0
- package/languages/ko-KR.js +7 -0
- package/languages/lv-LV.js +7 -0
- package/languages/nb-NO.js +7 -0
- package/languages/nl-NL.js +7 -0
- package/languages/pl-PL.js +7 -0
- package/languages/pt-BR.js +7 -0
- package/languages/ru-RU.js +7 -0
- package/languages/sr-SP.js +7 -0
- package/languages/zh-CN.js +7 -0
- package/languages/zh-TW.js +7 -0
- package/package.json +3 -2
- package/pluginHooks.d.ts +8 -2
- package/pluginHooks.js +116 -18
- package/pluginHooks.mjs +115 -15
- package/plugins/autoColumnSize/autoColumnSize.js +1 -0
- package/plugins/autoColumnSize/autoColumnSize.mjs +1 -0
- package/plugins/autoRowSize/autoRowSize.js +3 -2
- package/plugins/autoRowSize/autoRowSize.mjs +3 -2
- package/plugins/autofill/autofill.js +2 -2
- package/plugins/autofill/autofill.mjs +3 -3
- package/plugins/autofill/utils.js +1 -39
- package/plugins/autofill/utils.mjs +0 -37
- package/plugins/base/base.js +1 -0
- package/plugins/base/base.mjs +1 -0
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +1 -0
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +1 -0
- package/plugins/collapsibleColumns/collapsibleColumns.js +82 -24
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +82 -24
- package/plugins/columnSorting/columnSorting.js +51 -8
- package/plugins/columnSorting/columnSorting.mjs +50 -9
- package/plugins/columnSorting/columnStatesManager.js +1 -0
- package/plugins/columnSorting/columnStatesManager.mjs +1 -0
- package/plugins/columnSorting/index.js +4 -2
- package/plugins/columnSorting/index.mjs +1 -1
- package/plugins/columnSorting/rootComparator.js +1 -0
- package/plugins/columnSorting/rootComparator.mjs +1 -0
- package/plugins/comments/commentEditor.js +1 -0
- package/plugins/comments/commentEditor.mjs +1 -0
- package/plugins/comments/comments.js +289 -224
- package/plugins/comments/comments.mjs +297 -234
- package/plugins/comments/contextMenuItem/addEditComment.js +51 -0
- package/plugins/comments/contextMenuItem/addEditComment.mjs +35 -0
- package/plugins/comments/contextMenuItem/readOnlyComment.js +63 -0
- package/plugins/comments/contextMenuItem/readOnlyComment.mjs +55 -0
- package/plugins/comments/contextMenuItem/removeComment.js +48 -0
- package/plugins/comments/contextMenuItem/removeComment.mjs +32 -0
- package/plugins/contextMenu/contextMenu.d.ts +1 -1
- package/plugins/contextMenu/contextMenu.js +81 -29
- package/plugins/contextMenu/contextMenu.mjs +82 -30
- package/plugins/contextMenu/predefinedItems/alignment.js +7 -0
- package/plugins/contextMenu/predefinedItems/alignment.mjs +7 -0
- package/plugins/contextMenu/predefinedItems/clearColumn.js +5 -3
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/columnLeft.js +5 -3
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/columnRight.js +5 -3
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/readOnly.js +7 -0
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +7 -0
- package/plugins/contextMenu/predefinedItems/removeColumn.js +8 -5
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +6 -3
- package/plugins/contextMenu/predefinedItems/removeRow.js +8 -5
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +6 -3
- package/plugins/contextMenu/predefinedItems/rowAbove.js +5 -3
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +5 -3
- package/plugins/contextMenu/predefinedItems/rowBelow.js +5 -3
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +5 -3
- package/plugins/contextMenu/utils.js +25 -16
- package/plugins/contextMenu/utils.mjs +24 -15
- package/plugins/copyPaste/contextMenuItem/copy.js +7 -0
- package/plugins/copyPaste/contextMenuItem/copy.mjs +7 -0
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +9 -1
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +9 -1
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +9 -1
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +9 -1
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +9 -1
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +9 -1
- package/plugins/copyPaste/contextMenuItem/cut.js +7 -0
- package/plugins/copyPaste/contextMenuItem/cut.mjs +7 -0
- package/plugins/copyPaste/copyPaste.js +100 -14
- package/plugins/copyPaste/copyPaste.mjs +100 -14
- package/plugins/copyPaste/copyableRanges.js +25 -31
- package/plugins/copyPaste/copyableRanges.mjs +18 -24
- package/plugins/copyPaste/focusableElement.js +219 -0
- package/plugins/copyPaste/focusableElement.mjs +213 -0
- package/plugins/customBorders/customBorders.d.ts +2 -0
- package/plugins/customBorders/customBorders.js +19 -50
- package/plugins/customBorders/customBorders.mjs +19 -50
- package/plugins/dropdownMenu/dropdownMenu.d.ts +1 -1
- package/plugins/dropdownMenu/dropdownMenu.js +94 -30
- package/plugins/dropdownMenu/dropdownMenu.mjs +94 -30
- package/plugins/exportFile/dataProvider.js +1 -0
- package/plugins/exportFile/dataProvider.mjs +1 -0
- package/plugins/filters/component/value.js +1 -0
- package/plugins/filters/component/value.mjs +1 -0
- package/plugins/filters/condition/beginsWith.js +1 -0
- package/plugins/filters/condition/beginsWith.mjs +1 -0
- package/plugins/filters/condition/between.js +1 -0
- package/plugins/filters/condition/between.mjs +1 -0
- package/plugins/filters/condition/byValue.js +1 -0
- package/plugins/filters/condition/byValue.mjs +1 -0
- package/plugins/filters/condition/contains.js +1 -0
- package/plugins/filters/condition/contains.mjs +1 -0
- package/plugins/filters/condition/date/after.js +1 -0
- package/plugins/filters/condition/date/after.mjs +1 -0
- package/plugins/filters/condition/date/before.js +1 -0
- package/plugins/filters/condition/date/before.mjs +1 -0
- package/plugins/filters/condition/endsWith.js +1 -0
- package/plugins/filters/condition/endsWith.mjs +1 -0
- package/plugins/filters/condition/equal.js +1 -0
- package/plugins/filters/condition/equal.mjs +1 -0
- package/plugins/filters/condition/greaterThan.js +1 -0
- package/plugins/filters/condition/greaterThan.mjs +1 -0
- package/plugins/filters/condition/greaterThanOrEqual.js +1 -0
- package/plugins/filters/condition/greaterThanOrEqual.mjs +1 -0
- package/plugins/filters/condition/lessThan.js +1 -0
- package/plugins/filters/condition/lessThan.mjs +1 -0
- package/plugins/filters/condition/lessThanOrEqual.js +1 -0
- package/plugins/filters/condition/lessThanOrEqual.mjs +1 -0
- package/plugins/filters/conditionCollection.js +1 -0
- package/plugins/filters/conditionCollection.mjs +1 -0
- package/plugins/filters/filters.js +68 -42
- package/plugins/filters/filters.mjs +67 -41
- package/plugins/filters/ui/multipleSelect.js +1 -0
- package/plugins/filters/ui/multipleSelect.mjs +1 -0
- package/plugins/formulas/formulas.js +191 -168
- package/plugins/formulas/formulas.mjs +191 -168
- package/plugins/formulas/indexSyncer/axisSyncer.js +379 -0
- package/plugins/formulas/indexSyncer/axisSyncer.mjs +374 -0
- package/plugins/formulas/indexSyncer/index.js +225 -0
- package/plugins/formulas/indexSyncer/index.mjs +219 -0
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -0
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +1 -0
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +1 -0
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +1 -0
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -0
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +1 -0
- package/plugins/hiddenRows/contextMenuItem/showRow.js +1 -0
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +1 -0
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -0
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -0
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -0
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -0
- package/plugins/manualColumnResize/manualColumnResize.js +36 -5
- package/plugins/manualColumnResize/manualColumnResize.mjs +36 -5
- package/plugins/manualRowMove/manualRowMove.js +31 -12
- package/plugins/manualRowMove/manualRowMove.mjs +32 -13
- package/plugins/manualRowResize/manualRowResize.js +40 -9
- package/plugins/manualRowResize/manualRowResize.mjs +40 -9
- package/plugins/mergeCells/calculations/autofill.js +1 -0
- package/plugins/mergeCells/calculations/autofill.mjs +1 -0
- package/plugins/mergeCells/cellsCollection.js +1 -0
- package/plugins/mergeCells/cellsCollection.mjs +1 -0
- package/plugins/mergeCells/mergeCells.js +6 -2
- package/plugins/mergeCells/mergeCells.mjs +6 -2
- package/plugins/multiColumnSorting/multiColumnSorting.js +42 -3
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +42 -3
- package/plugins/multiColumnSorting/rootComparator.js +1 -0
- package/plugins/multiColumnSorting/rootComparator.mjs +1 -0
- package/plugins/nestedHeaders/nestedHeaders.js +129 -6
- package/plugins/nestedHeaders/nestedHeaders.mjs +129 -6
- package/plugins/nestedHeaders/stateManager/headersTree.js +24 -26
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +21 -23
- package/plugins/nestedHeaders/stateManager/index.js +40 -3
- package/plugins/nestedHeaders/stateManager/index.mjs +37 -0
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +1 -0
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +2 -1
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +1 -0
- package/plugins/nestedHeaders/utils/ghostTable.js +30 -35
- package/plugins/nestedHeaders/utils/ghostTable.mjs +30 -35
- package/plugins/nestedRows/data/dataManager.js +1 -0
- package/plugins/nestedRows/data/dataManager.mjs +1 -0
- package/plugins/nestedRows/nestedRows.js +53 -7
- package/plugins/nestedRows/nestedRows.mjs +53 -7
- package/plugins/nestedRows/ui/collapsing.js +1 -0
- package/plugins/nestedRows/ui/collapsing.mjs +1 -0
- package/plugins/nestedRows/utils/rowMoveController.js +1 -0
- package/plugins/nestedRows/utils/rowMoveController.mjs +1 -0
- package/plugins/persistentState/storage.js +1 -0
- package/plugins/persistentState/storage.mjs +1 -0
- package/plugins/registry.js +4 -1
- package/plugins/registry.mjs +1 -0
- package/plugins/undoRedo/undoRedo.js +1 -1
- package/plugins/undoRedo/undoRedo.mjs +1 -1
- package/renderers/baseRenderer/baseRenderer.js +0 -3
- package/renderers/baseRenderer/baseRenderer.mjs +0 -3
- package/renderers/checkboxRenderer/checkboxRenderer.js +2 -2
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +1 -1
- package/selection/highlight/highlight.js +120 -98
- package/selection/highlight/highlight.mjs +118 -96
- package/selection/highlight/visualSelection.js +30 -17
- package/selection/highlight/visualSelection.mjs +30 -17
- package/selection/mouseEventHandler.js +1 -1
- package/selection/mouseEventHandler.mjs +1 -1
- package/selection/range.js +8 -8
- package/selection/range.mjs +8 -8
- package/selection/selection.js +246 -153
- package/selection/selection.mjs +247 -154
- package/selection/transformation.js +233 -96
- package/selection/transformation.mjs +230 -93
- package/selection/utils.js +12 -35
- package/selection/utils.mjs +13 -35
- package/settings.d.ts +2 -1
- package/shortcutContexts/commands/editor/closeAndSave.js +15 -0
- package/shortcutContexts/commands/editor/closeAndSave.mjs +10 -0
- package/shortcutContexts/commands/editor/closeWithoutSaving.js +13 -0
- package/shortcutContexts/commands/editor/closeWithoutSaving.mjs +8 -0
- package/shortcutContexts/commands/editor/fastOpen.js +16 -0
- package/shortcutContexts/commands/editor/fastOpen.mjs +11 -0
- package/shortcutContexts/commands/editor/index.js +16 -0
- package/shortcutContexts/commands/editor/index.mjs +12 -0
- package/shortcutContexts/commands/editor/open.js +29 -0
- package/shortcutContexts/commands/editor/open.mjs +24 -0
- package/shortcutContexts/commands/emptySelectedCells.js +12 -0
- package/shortcutContexts/commands/emptySelectedCells.mjs +7 -0
- package/shortcutContexts/commands/extendCellsSelection/down.js +15 -0
- package/shortcutContexts/commands/extendCellsSelection/down.mjs +10 -0
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.js +21 -0
- package/shortcutContexts/commands/extendCellsSelection/downByViewportHeight.mjs +16 -0
- package/shortcutContexts/commands/extendCellsSelection/index.js +26 -0
- package/shortcutContexts/commands/extendCellsSelection/index.mjs +22 -0
- package/shortcutContexts/commands/extendCellsSelection/left.js +15 -0
- package/shortcutContexts/commands/extendCellsSelection/left.mjs +10 -0
- package/shortcutContexts/commands/extendCellsSelection/right.js +15 -0
- package/shortcutContexts/commands/extendCellsSelection/right.mjs +10 -0
- package/shortcutContexts/commands/extendCellsSelection/toColumns.js +19 -0
- package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +14 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +22 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +17 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +17 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +12 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +17 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +12 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +40 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +35 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +40 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +35 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +22 -0
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +17 -0
- package/shortcutContexts/commands/extendCellsSelection/toRows.js +19 -0
- package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +14 -0
- package/shortcutContexts/commands/extendCellsSelection/up.js +15 -0
- package/shortcutContexts/commands/extendCellsSelection/up.mjs +10 -0
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.js +21 -0
- package/shortcutContexts/commands/extendCellsSelection/upByViewportHeight.mjs +16 -0
- package/shortcutContexts/commands/index.js +53 -0
- package/shortcutContexts/commands/index.mjs +49 -0
- package/shortcutContexts/commands/moveCellSelection/down.js +12 -0
- package/shortcutContexts/commands/moveCellSelection/down.mjs +7 -0
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.js +29 -0
- package/shortcutContexts/commands/moveCellSelection/downByViewportHeight.mjs +24 -0
- package/shortcutContexts/commands/moveCellSelection/index.js +28 -0
- package/shortcutContexts/commands/moveCellSelection/index.mjs +24 -0
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +13 -0
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +8 -0
- package/shortcutContexts/commands/moveCellSelection/inlineStart.js +13 -0
- package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +8 -0
- package/shortcutContexts/commands/moveCellSelection/left.js +11 -0
- package/shortcutContexts/commands/moveCellSelection/left.mjs +6 -0
- package/shortcutContexts/commands/moveCellSelection/right.js +11 -0
- package/shortcutContexts/commands/moveCellSelection/right.mjs +6 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottom.mjs +11 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.js +17 -0
- package/shortcutContexts/commands/moveCellSelection/toMostBottomInlineEnd.mjs +12 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.js +13 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineEnd.mjs +8 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostInlineStart.mjs +11 -0
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.js +36 -0
- package/shortcutContexts/commands/moveCellSelection/toMostLeft.mjs +31 -0
- package/shortcutContexts/commands/moveCellSelection/toMostRight.js +36 -0
- package/shortcutContexts/commands/moveCellSelection/toMostRight.mjs +31 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTop.js +16 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTop.mjs +11 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.js +18 -0
- package/shortcutContexts/commands/moveCellSelection/toMostTopInlineStart.mjs +13 -0
- package/shortcutContexts/commands/moveCellSelection/up.js +12 -0
- package/shortcutContexts/commands/moveCellSelection/up.mjs +7 -0
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.js +29 -0
- package/shortcutContexts/commands/moveCellSelection/upByViewportHeight.mjs +24 -0
- package/shortcutContexts/commands/populateSelectedCellsData.js +35 -0
- package/shortcutContexts/commands/populateSelectedCellsData.mjs +30 -0
- package/shortcutContexts/commands/scrollToFocusedCell.js +38 -0
- package/shortcutContexts/commands/scrollToFocusedCell.mjs +33 -0
- package/shortcutContexts/commands/selectAll.js +11 -0
- package/shortcutContexts/commands/selectAll.mjs +6 -0
- package/shortcutContexts/constants.js +19 -0
- package/shortcutContexts/constants.mjs +12 -0
- package/shortcutContexts/editor.js +29 -0
- package/shortcutContexts/editor.mjs +25 -0
- package/shortcutContexts/grid.js +252 -0
- package/shortcutContexts/grid.mjs +248 -0
- package/shortcutContexts/index.js +29 -0
- package/shortcutContexts/index.mjs +15 -0
- package/shortcuts/context.js +1 -0
- package/shortcuts/context.mjs +1 -0
- package/shortcuts/manager.js +2 -0
- package/shortcuts/manager.mjs +2 -0
- package/shortcuts/recorder.js +2 -2
- package/shortcuts/recorder.mjs +2 -2
- package/shortcuts/utils.js +21 -5
- package/shortcuts/utils.mjs +20 -4
- package/tableView.js +112 -82
- package/tableView.mjs +112 -82
- package/translations/changesObservable/observable.js +41 -46
- package/translations/changesObservable/observable.mjs +36 -41
- package/translations/changesObservable/observer.js +1 -1
- package/translations/indexMapper.d.ts +0 -2
- package/translations/indexMapper.js +38 -64
- package/translations/indexMapper.mjs +39 -64
- package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -0
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -0
- package/translations/maps/utils/indexesSequence.js +1 -0
- package/translations/maps/utils/indexesSequence.mjs +1 -0
- package/translations/maps/utils/physicallyIndexed.js +1 -0
- package/translations/maps/utils/physicallyIndexed.mjs +1 -0
- package/utils/dataStructures/priorityMap.js +1 -0
- package/utils/dataStructures/priorityMap.mjs +1 -0
- package/utils/dataStructures/tree.js +16 -18
- package/utils/dataStructures/tree.mjs +16 -18
- package/utils/dataStructures/uniqueMap.js +1 -0
- package/utils/dataStructures/uniqueMap.mjs +1 -0
- package/utils/dataStructures/uniqueSet.js +1 -0
- package/utils/dataStructures/uniqueSet.mjs +1 -0
- package/utils/ghostTable.js +1 -0
- package/utils/ghostTable.mjs +1 -0
- package/utils/parseTable.js +5 -1
- package/utils/parseTable.mjs +5 -1
- package/utils/staticRegister.js +1 -0
- package/utils/staticRegister.mjs +1 -0
- package/focusManager.d.ts +0 -12
- package/focusManager.js +0 -275
- package/focusManager.mjs +0 -270
@@ -2,8 +2,6 @@ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableTo
|
|
2
2
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
3
3
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
4
4
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
5
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
6
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
7
5
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
8
6
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
9
7
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
@@ -37,12 +35,10 @@ import "core-js/modules/es.reflect.construct.js";
|
|
37
35
|
import "core-js/modules/es.reflect.get.js";
|
38
36
|
import "core-js/modules/es.object.get-own-property-descriptor.js";
|
39
37
|
import "core-js/modules/es.symbol.iterator.js";
|
38
|
+
import "core-js/modules/es.regexp.to-string.js";
|
40
39
|
import "core-js/modules/es.function.name.js";
|
41
40
|
import "core-js/modules/es.array.from.js";
|
42
41
|
import "core-js/modules/es.regexp.exec.js";
|
43
|
-
import "core-js/modules/es.object.keys.js";
|
44
|
-
import "core-js/modules/es.array.filter.js";
|
45
|
-
import "core-js/modules/es.object.get-own-property-descriptors.js";
|
46
42
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
47
43
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
48
44
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
@@ -76,10 +72,10 @@ import { getEngineSettingsWithOverrides, haveEngineSettingsChanged } from "./eng
|
|
76
72
|
import { isArrayOfArrays } from "../../helpers/data.mjs";
|
77
73
|
import { toUpperCaseFirst } from "../../helpers/string.mjs";
|
78
74
|
import Hooks from "../../pluginHooks.mjs";
|
75
|
+
import IndexSyncer from "./indexSyncer/index.mjs";
|
79
76
|
export var PLUGIN_KEY = 'formulas';
|
80
77
|
export var SETTING_KEYS = ['maxRows', 'maxColumns', 'language'];
|
81
78
|
export var PLUGIN_PRIORITY = 260;
|
82
|
-
var ROW_MOVE_UNDO_REDO_NAME = 'row_move';
|
83
79
|
Hooks.getSingleton().register('afterNamedExpressionAdded');
|
84
80
|
Hooks.getSingleton().register('afterNamedExpressionRemoved');
|
85
81
|
Hooks.getSingleton().register('afterSheetAdded');
|
@@ -185,6 +181,24 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
185
181
|
* @type {string|null}
|
186
182
|
*/
|
187
183
|
_defineProperty(_assertThisInitialized(_this), "sheetName", null);
|
184
|
+
/**
|
185
|
+
* Index synchronizer responsible for manipulating with some general options related to indexes synchronization.
|
186
|
+
*
|
187
|
+
* @type {IndexSyncer|null}
|
188
|
+
*/
|
189
|
+
_defineProperty(_assertThisInitialized(_this), "indexSyncer", null);
|
190
|
+
/**
|
191
|
+
* Index synchronizer responsible for syncing the order of HOT and HF's data for the axis of the rows.
|
192
|
+
*
|
193
|
+
* @type {AxisSyncer|null}
|
194
|
+
*/
|
195
|
+
_defineProperty(_assertThisInitialized(_this), "rowAxisSyncer", null);
|
196
|
+
/**
|
197
|
+
* Index synchronizer responsible for syncing the order of HOT and HF's data for the axis of the columns.
|
198
|
+
*
|
199
|
+
* @type {AxisSyncer|null}
|
200
|
+
*/
|
201
|
+
_defineProperty(_assertThisInitialized(_this), "columnAxisSyncer", null);
|
188
202
|
return _this;
|
189
203
|
}
|
190
204
|
_createClass(Formulas, [{
|
@@ -292,6 +306,41 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
292
306
|
this.addHook('afterRemoveCol', function () {
|
293
307
|
return _this8.onAfterRemoveCol.apply(_this8, arguments);
|
294
308
|
});
|
309
|
+
this.indexSyncer = new IndexSyncer(this.hot.rowIndexMapper, this.hot.columnIndexMapper, function (postponedAction) {
|
310
|
+
_this8.hot.addHookOnce('init', function () {
|
311
|
+
// Engine is initialized after executing callback to `afterLoadData` hook. Thus, some actions on indexes should
|
312
|
+
// be postponed.
|
313
|
+
postponedAction();
|
314
|
+
});
|
315
|
+
});
|
316
|
+
this.rowAxisSyncer = this.indexSyncer.getForAxis('row');
|
317
|
+
this.columnAxisSyncer = this.indexSyncer.getForAxis('column');
|
318
|
+
this.hot.addHook('afterRowSequenceChange', this.rowAxisSyncer.getIndexesChangeSyncMethod());
|
319
|
+
this.hot.addHook('afterColumnSequenceChange', this.columnAxisSyncer.getIndexesChangeSyncMethod());
|
320
|
+
this.hot.addHook('beforeRowMove', function (movedRows, finalIndex, _, movePossible) {
|
321
|
+
_this8.rowAxisSyncer.storeMovesInformation(movedRows, finalIndex, movePossible);
|
322
|
+
});
|
323
|
+
this.hot.addHook('beforeColumnMove', function (movedColumns, finalIndex, _, movePossible) {
|
324
|
+
_this8.columnAxisSyncer.storeMovesInformation(movedColumns, finalIndex, movePossible);
|
325
|
+
});
|
326
|
+
this.hot.addHook('afterRowMove', function (movedRows, finalIndex, dropIndex, movePossible, orderChanged) {
|
327
|
+
_this8.rowAxisSyncer.calculateAndSyncMoves(movePossible, orderChanged);
|
328
|
+
});
|
329
|
+
this.hot.addHook('afterColumnMove', function (movedColumns, finalIndex, dropIndex, movePossible, orderChanged) {
|
330
|
+
_this8.columnAxisSyncer.calculateAndSyncMoves(movePossible, orderChanged);
|
331
|
+
});
|
332
|
+
this.hot.addHook('beforeColumnFreeze', function (column, freezePerformed) {
|
333
|
+
_this8.columnAxisSyncer.storeMovesInformation([column], _this8.hot.getSettings().fixedColumnsStart, freezePerformed);
|
334
|
+
});
|
335
|
+
this.hot.addHook('afterColumnFreeze', function (_, freezePerformed) {
|
336
|
+
_this8.columnAxisSyncer.calculateAndSyncMoves(freezePerformed, freezePerformed);
|
337
|
+
});
|
338
|
+
this.hot.addHook('beforeColumnUnfreeze', function (column, unfreezePerformed) {
|
339
|
+
_this8.columnAxisSyncer.storeMovesInformation([column], _this8.hot.getSettings().fixedColumnsStart - 1, unfreezePerformed);
|
340
|
+
});
|
341
|
+
this.hot.addHook('afterColumnUnfreeze', function (_, unfreezePerformed) {
|
342
|
+
_this8.columnAxisSyncer.calculateAndSyncMoves(unfreezePerformed, unfreezePerformed);
|
343
|
+
});
|
295
344
|
|
296
345
|
// TODO: Actions related to overwriting dates from HOT format to HF default format are done as callback to this
|
297
346
|
// hook, because some hooks, such as `afterLoadData` doesn't have information about composed cell properties.
|
@@ -301,22 +350,22 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
301
350
|
});
|
302
351
|
|
303
352
|
// Handling undo actions on data just using HyperFormula's UndoRedo mechanism
|
304
|
-
this.addHook('beforeUndo', function (
|
305
|
-
|
306
|
-
if ((action === null || action === void 0 ? void 0 : action.actionType) === ROW_MOVE_UNDO_REDO_NAME) {
|
307
|
-
return;
|
308
|
-
}
|
353
|
+
this.addHook('beforeUndo', function () {
|
354
|
+
_this8.indexSyncer.setPerformUndo(true);
|
309
355
|
_this8.engine.undo();
|
310
356
|
});
|
311
357
|
|
312
358
|
// Handling redo actions on data just using HyperFormula's UndoRedo mechanism
|
313
|
-
this.addHook('beforeRedo', function (
|
314
|
-
|
315
|
-
if ((action === null || action === void 0 ? void 0 : action.actionType) === ROW_MOVE_UNDO_REDO_NAME) {
|
316
|
-
return;
|
317
|
-
}
|
359
|
+
this.addHook('beforeRedo', function () {
|
360
|
+
_this8.indexSyncer.setPerformRedo(true);
|
318
361
|
_this8.engine.redo();
|
319
362
|
});
|
363
|
+
this.addHook('afterUndo', function () {
|
364
|
+
_this8.indexSyncer.setPerformUndo(false);
|
365
|
+
});
|
366
|
+
this.addHook('afterUndo', function () {
|
367
|
+
_this8.indexSyncer.setPerformRedo(false);
|
368
|
+
});
|
320
369
|
this.addHook('afterDetachChild', function () {
|
321
370
|
return _this8.onAfterDetachChild.apply(_this8, arguments);
|
322
371
|
});
|
@@ -401,63 +450,6 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
401
450
|
_get(_getPrototypeOf(Formulas.prototype), "destroy", this).call(this);
|
402
451
|
}
|
403
452
|
|
404
|
-
/**
|
405
|
-
* Helper function for `toPhysicalRowPosition` and `toPhysicalColumnPosition`.
|
406
|
-
*
|
407
|
-
* @private
|
408
|
-
* @param {number} visualIndex Visual entry index.
|
409
|
-
* @param {number} physicalIndex Physical entry index.
|
410
|
-
* @param {number} entriesCount Visual entries count.
|
411
|
-
* @param {number} sourceEntriesCount Source entries count.
|
412
|
-
* @param {boolean} contained `true` if it should return only indexes within boundaries of the table (basically
|
413
|
-
* `toPhysical` alias.
|
414
|
-
* @returns {*}
|
415
|
-
*/
|
416
|
-
}, {
|
417
|
-
key: "getPhysicalIndexPosition",
|
418
|
-
value: function getPhysicalIndexPosition(visualIndex, physicalIndex, entriesCount, sourceEntriesCount, contained) {
|
419
|
-
if (!contained) {
|
420
|
-
if (visualIndex >= entriesCount) {
|
421
|
-
return sourceEntriesCount + (visualIndex - entriesCount);
|
422
|
-
}
|
423
|
-
}
|
424
|
-
return physicalIndex;
|
425
|
-
}
|
426
|
-
|
427
|
-
/**
|
428
|
-
* Returns the physical row index. The difference between this and Core's `toPhysical` is that it doesn't return
|
429
|
-
* `null` on rows with indexes higher than the number of rows.
|
430
|
-
*
|
431
|
-
* @private
|
432
|
-
* @param {number} row Visual row index.
|
433
|
-
* @param {boolean} [contained] `true` if it should return only indexes within boundaries of the table (basically
|
434
|
-
* `toPhysical` alias.
|
435
|
-
* @returns {number} The physical row index.
|
436
|
-
*/
|
437
|
-
}, {
|
438
|
-
key: "toPhysicalRowPosition",
|
439
|
-
value: function toPhysicalRowPosition(row) {
|
440
|
-
var contained = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
441
|
-
return this.getPhysicalIndexPosition(row, this.hot.toPhysicalRow(row), this.hot.countRows(), this.hot.countSourceRows(), contained);
|
442
|
-
}
|
443
|
-
|
444
|
-
/**
|
445
|
-
* Returns the physical column index. The difference between this and Core's `toPhysical` is that it doesn't return
|
446
|
-
* `null` on columns with indexes higher than the number of columns.
|
447
|
-
*
|
448
|
-
* @private
|
449
|
-
* @param {number} column Visual column index.
|
450
|
-
* @param {boolean} [contained] `true` if it should return only indexes within boundaries of the table (basically
|
451
|
-
* `toPhysical` alias.
|
452
|
-
* @returns {number} The physical column index.
|
453
|
-
*/
|
454
|
-
}, {
|
455
|
-
key: "toPhysicalColumnPosition",
|
456
|
-
value: function toPhysicalColumnPosition(column) {
|
457
|
-
var contained = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
458
|
-
return this.getPhysicalIndexPosition(column, this.hot.toPhysicalColumn(column), this.hot.countCols(), this.hot.countSourceCols(), contained);
|
459
|
-
}
|
460
|
-
|
461
453
|
/**
|
462
454
|
* Add a sheet to the shared HyperFormula instance.
|
463
455
|
*
|
@@ -528,8 +520,8 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
528
520
|
if (physicalRow !== null && physicalColumn !== null) {
|
529
521
|
return this.engine.getCellType({
|
530
522
|
sheet: sheet,
|
531
|
-
row:
|
532
|
-
col:
|
523
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(row),
|
524
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(column)
|
533
525
|
});
|
534
526
|
} else {
|
535
527
|
// Should return `EMPTY` when out of bounds (according to the test cases).
|
@@ -549,15 +541,10 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
549
541
|
key: "isFormulaCellType",
|
550
542
|
value: function isFormulaCellType(row, column) {
|
551
543
|
var sheet = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.sheetId;
|
552
|
-
var physicalRow = this.hot.toPhysicalRow(row);
|
553
|
-
var physicalColumn = this.hot.toPhysicalColumn(column);
|
554
|
-
if (physicalRow === null || physicalColumn === null) {
|
555
|
-
return false;
|
556
|
-
}
|
557
544
|
return this.engine.doesCellHaveFormula({
|
558
545
|
sheet: sheet,
|
559
|
-
row:
|
560
|
-
col:
|
546
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(row),
|
547
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(column)
|
561
548
|
});
|
562
549
|
}
|
563
550
|
|
@@ -622,11 +609,9 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
622
609
|
var _ref8 = (_change$address3 = change.address) !== null && _change$address3 !== void 0 ? _change$address3 : {},
|
623
610
|
row = _ref8.row,
|
624
611
|
col = _ref8.col;
|
625
|
-
var visualRow = isDefined(row) ? _this12.hot.toVisualRow(row) : null;
|
626
|
-
var visualColumn = isDefined(col) ? _this12.hot.toVisualColumn(col) : null;
|
627
612
|
|
628
613
|
// Don't try to validate cells outside of the visual part of the table.
|
629
|
-
if (
|
614
|
+
if (isDefined(row) === false || isDefined(col) === false || row >= _this12.hot.countRows() || col >= _this12.hot.countCols()) {
|
630
615
|
return;
|
631
616
|
}
|
632
617
|
|
@@ -645,7 +630,7 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
645
630
|
}
|
646
631
|
|
647
632
|
// It will just re-render certain cell when necessary.
|
648
|
-
boundHot.validateCell(boundHot.getDataAtCell(
|
633
|
+
boundHot.validateCell(boundHot.getDataAtCell(row, col), boundHot.getCellMeta(row, col), function () {});
|
649
634
|
}
|
650
635
|
});
|
651
636
|
}
|
@@ -663,8 +648,8 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
663
648
|
key: "syncChangeWithEngine",
|
664
649
|
value: function syncChangeWithEngine(row, column, newValue) {
|
665
650
|
var address = {
|
666
|
-
row: this.
|
667
|
-
col: this.
|
651
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(row),
|
652
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(column),
|
668
653
|
sheet: this.sheetId
|
669
654
|
};
|
670
655
|
if (!this.engine.isItPossibleToSetCellContents(address)) {
|
@@ -700,8 +685,8 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
700
685
|
var visualColumn = this.hot.propToCol(prop);
|
701
686
|
if (this.isFormulaCellType(visualRow, visualColumn)) {
|
702
687
|
var address = {
|
703
|
-
row: this.
|
704
|
-
col: this.
|
688
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(visualRow),
|
689
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(visualColumn),
|
705
690
|
sheet: this.sheetId
|
706
691
|
};
|
707
692
|
var cellMeta = this.hot.getCellMeta(visualRow, visualColumn);
|
@@ -730,19 +715,41 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
730
715
|
}, {
|
731
716
|
key: "onBeforeAutofill",
|
732
717
|
value: function onBeforeAutofill(fillData, sourceRange, targetRange) {
|
733
|
-
var
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
718
|
+
var _sourceRange$getTopSt = sourceRange.getTopStartCorner(),
|
719
|
+
sourceTopStartRow = _sourceRange$getTopSt.row,
|
720
|
+
sourceTopStartColumn = _sourceRange$getTopSt.col;
|
721
|
+
var _sourceRange$getBotto = sourceRange.getBottomEndCorner(),
|
722
|
+
sourceBottomEndRow = _sourceRange$getBotto.row,
|
723
|
+
sourceBottomEndColumn = _sourceRange$getBotto.col;
|
724
|
+
var _targetRange$getTopSt = targetRange.getTopStartCorner(),
|
725
|
+
targetTopStartRow = _targetRange$getTopSt.row,
|
726
|
+
targetTopStartColumn = _targetRange$getTopSt.col;
|
727
|
+
var _targetRange$getBotto = targetRange.getBottomEndCorner(),
|
728
|
+
targetBottomEndRow = _targetRange$getBotto.row,
|
729
|
+
targetBottomEndColumn = _targetRange$getBotto.col;
|
739
730
|
var engineSourceRange = {
|
740
|
-
start:
|
741
|
-
|
731
|
+
start: {
|
732
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(sourceTopStartRow),
|
733
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(sourceTopStartColumn),
|
734
|
+
sheet: this.sheetId
|
735
|
+
},
|
736
|
+
end: {
|
737
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(sourceBottomEndRow),
|
738
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(sourceBottomEndColumn),
|
739
|
+
sheet: this.sheetId
|
740
|
+
}
|
742
741
|
};
|
743
742
|
var engineTargetRange = {
|
744
|
-
start:
|
745
|
-
|
743
|
+
start: {
|
744
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(targetTopStartRow),
|
745
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(targetTopStartColumn),
|
746
|
+
sheet: this.sheetId
|
747
|
+
},
|
748
|
+
end: {
|
749
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(targetBottomEndRow),
|
750
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(targetBottomEndColumn),
|
751
|
+
sheet: this.sheetId
|
752
|
+
}
|
746
753
|
};
|
747
754
|
|
748
755
|
// Blocks the autofill operation if HyperFormula says that at least one of
|
@@ -808,19 +815,19 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
808
815
|
}, {
|
809
816
|
key: "onAfterCellMetaReset",
|
810
817
|
value: function onAfterCellMetaReset() {
|
811
|
-
var
|
818
|
+
var _this13 = this;
|
812
819
|
var sourceDataArray = this.hot.getSourceDataArray();
|
813
820
|
var valueChanged = false;
|
814
821
|
sourceDataArray.forEach(function (rowData, rowIndex) {
|
815
822
|
rowData.forEach(function (cellValue, columnIndex) {
|
816
|
-
var cellMeta =
|
823
|
+
var cellMeta = _this13.hot.getCellMeta(rowIndex, columnIndex);
|
817
824
|
var dateFormat = cellMeta.dateFormat;
|
818
825
|
if (isDate(cellValue, cellMeta.type)) {
|
819
826
|
valueChanged = true;
|
820
827
|
if (isDateValid(cellValue, dateFormat)) {
|
821
828
|
// Rewriting date in HOT format to HF format.
|
822
829
|
sourceDataArray[rowIndex][columnIndex] = getDateInHfFormat(cellValue, dateFormat);
|
823
|
-
} else if (
|
830
|
+
} else if (_this13.isFormulaCellType(rowIndex, columnIndex) === false) {
|
824
831
|
// Escaping value from date parsing using "'" sign (HF feature).
|
825
832
|
sourceDataArray[rowIndex][columnIndex] = "'".concat(cellValue);
|
826
833
|
}
|
@@ -855,6 +862,7 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
855
862
|
if (this.engine.isItPossibleToReplaceSheetContent(this.sheetId, sourceDataArray)) {
|
856
863
|
_classPrivateFieldSet(this, _internalOperationPending, true);
|
857
864
|
var dependentCells = this.engine.setSheetContent(this.sheetId, sourceDataArray);
|
865
|
+
this.indexSyncer.setupSyncEndpoint(this.engine, this.sheetId);
|
858
866
|
this.renderDependentSheets(dependentCells);
|
859
867
|
_classPrivateFieldSet(this, _internalOperationPending, false);
|
860
868
|
}
|
@@ -867,24 +875,27 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
867
875
|
* `modifyData` hook callback.
|
868
876
|
*
|
869
877
|
* @private
|
870
|
-
* @param {number}
|
871
|
-
* @param {number}
|
878
|
+
* @param {number} physicalRow Physical row index.
|
879
|
+
* @param {number} visualColumn Visual column index.
|
872
880
|
* @param {object} valueHolder Object which contains original value which can be modified by overwriting `.value`
|
873
881
|
* property.
|
874
882
|
* @param {string} ioMode String which indicates for what operation hook is fired (`get` or `set`).
|
875
883
|
*/
|
876
884
|
}, {
|
877
885
|
key: "onModifyData",
|
878
|
-
value: function onModifyData(
|
886
|
+
value: function onModifyData(physicalRow, visualColumn, valueHolder, ioMode) {
|
879
887
|
if (ioMode !== 'get' || _classPrivateFieldGet(this, _internalOperationPending) || this.sheetName === null || !this.engine.doesSheetExist(this.sheetName)) {
|
880
888
|
return;
|
881
889
|
}
|
882
|
-
var visualRow = this.hot.toVisualRow(
|
890
|
+
var visualRow = this.hot.toVisualRow(physicalRow);
|
891
|
+
if (visualRow === null || visualColumn === null) {
|
892
|
+
return;
|
893
|
+
}
|
883
894
|
|
884
895
|
// `column` is here as visual index because of inconsistencies related to hook execution in `src/dataMap`.
|
885
|
-
var isFormulaCellType = this.isFormulaCellType(visualRow,
|
896
|
+
var isFormulaCellType = this.isFormulaCellType(visualRow, visualColumn);
|
886
897
|
if (!isFormulaCellType) {
|
887
|
-
var cellType = this.getCellType(visualRow,
|
898
|
+
var cellType = this.getCellType(visualRow, visualColumn);
|
888
899
|
if (cellType !== 'ARRAY') {
|
889
900
|
if (isEscapedFormulaExpression(valueHolder.value)) {
|
890
901
|
valueHolder.value = unescapeFormulaExpression(valueHolder.value);
|
@@ -892,15 +903,13 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
892
903
|
return;
|
893
904
|
}
|
894
905
|
}
|
895
|
-
|
896
|
-
// `toPhysicalColumn` is here because of inconsistencies related to hook execution in `DataMap`.
|
897
906
|
var address = {
|
898
|
-
row:
|
899
|
-
col: this.
|
907
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(visualRow),
|
908
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(visualColumn),
|
900
909
|
sheet: this.sheetId
|
901
910
|
};
|
902
911
|
var cellValue = this.engine.getCellValue(address); // Date as an integer (Excel like date).
|
903
|
-
var cellMeta = this.hot.getCellMeta(
|
912
|
+
var cellMeta = this.hot.getCellMeta(visualRow, visualColumn);
|
904
913
|
if (cellMeta.type === 'date' && isNumeric(cellValue)) {
|
905
914
|
cellValue = getDateFromExcelDate(cellValue, cellMeta.dateFormat);
|
906
915
|
}
|
@@ -928,6 +937,9 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
928
937
|
}
|
929
938
|
var visualRow = this.hot.toVisualRow(row);
|
930
939
|
var visualColumn = this.hot.propToCol(columnOrProp);
|
940
|
+
if (visualRow === null || visualColumn === null) {
|
941
|
+
return;
|
942
|
+
}
|
931
943
|
|
932
944
|
// `column` is here as visual index because of inconsistencies related to hook execution in `src/dataMap`.
|
933
945
|
var isFormulaCellType = this.isFormulaCellType(visualRow, visualColumn);
|
@@ -947,9 +959,8 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
947
959
|
return;
|
948
960
|
}
|
949
961
|
var address = {
|
950
|
-
row:
|
951
|
-
|
952
|
-
col: this.toPhysicalColumnPosition(visualColumn),
|
962
|
+
row: this.rowAxisSyncer.getHfIndexFromVisualIndex(visualRow),
|
963
|
+
col: this.columnAxisSyncer.getHfIndexFromVisualIndex(visualColumn),
|
953
964
|
sheet: this.sheetId
|
954
965
|
};
|
955
966
|
valueHolder.value = this.engine.getCellSerialized(address);
|
@@ -966,7 +977,7 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
966
977
|
}, {
|
967
978
|
key: "onAfterSetDataAtCell",
|
968
979
|
value: function onAfterSetDataAtCell(changes, source) {
|
969
|
-
var
|
980
|
+
var _this14 = this;
|
970
981
|
if (isBlockedSource(source)) {
|
971
982
|
return;
|
972
983
|
}
|
@@ -975,21 +986,21 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
975
986
|
var dependentCells = this.engine.batch(function () {
|
976
987
|
changes.forEach(function (_ref9) {
|
977
988
|
var _ref10 = _slicedToArray(_ref9, 4),
|
978
|
-
|
989
|
+
visualRow = _ref10[0],
|
979
990
|
prop = _ref10[1],
|
980
991
|
newValue = _ref10[3];
|
981
|
-
var
|
982
|
-
var physicalRow =
|
983
|
-
var physicalColumn =
|
992
|
+
var visualColumn = _this14.hot.propToCol(prop);
|
993
|
+
var physicalRow = _this14.hot.toPhysicalRow(visualRow);
|
994
|
+
var physicalColumn = _this14.hot.toPhysicalColumn(visualColumn);
|
984
995
|
var address = {
|
985
|
-
row:
|
986
|
-
col:
|
987
|
-
sheet:
|
996
|
+
row: _this14.rowAxisSyncer.getHfIndexFromVisualIndex(visualRow),
|
997
|
+
col: _this14.columnAxisSyncer.getHfIndexFromVisualIndex(visualColumn),
|
998
|
+
sheet: _this14.sheetId
|
988
999
|
};
|
989
1000
|
if (physicalRow !== null && physicalColumn !== null) {
|
990
|
-
|
1001
|
+
_this14.syncChangeWithEngine(visualRow, visualColumn, newValue);
|
991
1002
|
} else {
|
992
|
-
outOfBoundsChanges.push([
|
1003
|
+
outOfBoundsChanges.push([visualRow, visualColumn, newValue]);
|
993
1004
|
}
|
994
1005
|
changedCells.push({
|
995
1006
|
address: address
|
@@ -1000,16 +1011,16 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1000
1011
|
// Workaround for rows/columns being created two times (by HOT and the engine).
|
1001
1012
|
// (unfortunately, this requires an extra re-render)
|
1002
1013
|
this.hot.addHookOnce('afterChange', function () {
|
1003
|
-
var outOfBoundsDependentCells =
|
1014
|
+
var outOfBoundsDependentCells = _this14.engine.batch(function () {
|
1004
1015
|
outOfBoundsChanges.forEach(function (_ref11) {
|
1005
1016
|
var _ref12 = _slicedToArray(_ref11, 3),
|
1006
1017
|
row = _ref12[0],
|
1007
1018
|
column = _ref12[1],
|
1008
1019
|
newValue = _ref12[2];
|
1009
|
-
|
1020
|
+
_this14.syncChangeWithEngine(row, column, newValue);
|
1010
1021
|
});
|
1011
1022
|
});
|
1012
|
-
|
1023
|
+
_this14.renderDependentSheets(outOfBoundsDependentCells, true);
|
1013
1024
|
});
|
1014
1025
|
}
|
1015
1026
|
this.renderDependentSheets(dependentCells);
|
@@ -1027,7 +1038,7 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1027
1038
|
}, {
|
1028
1039
|
key: "onAfterSetSourceDataAtCell",
|
1029
1040
|
value: function onAfterSetSourceDataAtCell(changes, source) {
|
1030
|
-
var
|
1041
|
+
var _this15 = this;
|
1031
1042
|
if (isBlockedSource(source)) {
|
1032
1043
|
return;
|
1033
1044
|
}
|
@@ -1035,26 +1046,26 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1035
1046
|
var changedCells = [];
|
1036
1047
|
changes.forEach(function (_ref13) {
|
1037
1048
|
var _ref14 = _slicedToArray(_ref13, 4),
|
1038
|
-
|
1049
|
+
visualRow = _ref14[0],
|
1039
1050
|
prop = _ref14[1],
|
1040
1051
|
newValue = _ref14[3];
|
1041
|
-
var
|
1042
|
-
if (!isNumeric(
|
1052
|
+
var visualColumn = _this15.hot.propToCol(prop);
|
1053
|
+
if (!isNumeric(visualColumn)) {
|
1043
1054
|
return;
|
1044
1055
|
}
|
1045
1056
|
var address = {
|
1046
|
-
row:
|
1047
|
-
col:
|
1048
|
-
sheet:
|
1057
|
+
row: _this15.rowAxisSyncer.getHfIndexFromVisualIndex(visualRow),
|
1058
|
+
col: _this15.columnAxisSyncer.getHfIndexFromVisualIndex(visualColumn),
|
1059
|
+
sheet: _this15.sheetId
|
1049
1060
|
};
|
1050
|
-
if (!
|
1061
|
+
if (!_this15.engine.isItPossibleToSetCellContents(address)) {
|
1051
1062
|
warn("Not possible to set source cell data at ".concat(JSON.stringify(address)));
|
1052
1063
|
return;
|
1053
1064
|
}
|
1054
1065
|
changedCells.push({
|
1055
1066
|
address: address
|
1056
1067
|
});
|
1057
|
-
dependentCells.push.apply(dependentCells, _toConsumableArray(
|
1068
|
+
dependentCells.push.apply(dependentCells, _toConsumableArray(_this15.engine.setCellContents(address, newValue)));
|
1058
1069
|
});
|
1059
1070
|
this.renderDependentSheets(dependentCells);
|
1060
1071
|
this.validateDependentCells(dependentCells, changedCells);
|
@@ -1064,14 +1075,19 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1064
1075
|
* `beforeCreateRow` hook callback.
|
1065
1076
|
*
|
1066
1077
|
* @private
|
1067
|
-
* @param {number}
|
1078
|
+
* @param {number} visualRow Represents the visual index of first newly created row in the data source array.
|
1068
1079
|
* @param {number} amount Number of newly created rows in the data source array.
|
1069
1080
|
* @returns {*|boolean} If false is returned the action is canceled.
|
1070
1081
|
*/
|
1071
1082
|
}, {
|
1072
1083
|
key: "onBeforeCreateRow",
|
1073
|
-
value: function onBeforeCreateRow(
|
1074
|
-
|
1084
|
+
value: function onBeforeCreateRow(visualRow, amount) {
|
1085
|
+
var hfRowIndex = this.rowAxisSyncer.getHfIndexFromVisualIndex(visualRow);
|
1086
|
+
if (visualRow >= this.hot.countRows()) {
|
1087
|
+
hfRowIndex = visualRow; // Row beyond the table boundaries.
|
1088
|
+
}
|
1089
|
+
|
1090
|
+
if (this.sheetId === null || !this.engine.doesSheetExist(this.sheetName) || !this.engine.isItPossibleToAddRows(this.sheetId, [hfRowIndex, amount])) {
|
1075
1091
|
return false;
|
1076
1092
|
}
|
1077
1093
|
}
|
@@ -1080,14 +1096,19 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1080
1096
|
* `beforeCreateCol` hook callback.
|
1081
1097
|
*
|
1082
1098
|
* @private
|
1083
|
-
* @param {number}
|
1099
|
+
* @param {number} visualColumn Represents the visual index of first newly created column in the data source.
|
1084
1100
|
* @param {number} amount Number of newly created columns in the data source.
|
1085
1101
|
* @returns {*|boolean} If false is returned the action is canceled.
|
1086
1102
|
*/
|
1087
1103
|
}, {
|
1088
1104
|
key: "onBeforeCreateCol",
|
1089
|
-
value: function onBeforeCreateCol(
|
1090
|
-
|
1105
|
+
value: function onBeforeCreateCol(visualColumn, amount) {
|
1106
|
+
var hfColumnIndex = this.columnAxisSyncer.getHfIndexFromVisualIndex(visualColumn);
|
1107
|
+
if (visualColumn >= this.hot.countCols()) {
|
1108
|
+
hfColumnIndex = visualColumn; // Column beyond the table boundaries.
|
1109
|
+
}
|
1110
|
+
|
1111
|
+
if (this.sheetId === null || !this.engine.doesSheetExist(this.sheetName) || !this.engine.isItPossibleToAddColumns(this.sheetId, [hfColumnIndex, amount])) {
|
1091
1112
|
return false;
|
1092
1113
|
}
|
1093
1114
|
}
|
@@ -1104,9 +1125,10 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1104
1125
|
}, {
|
1105
1126
|
key: "onBeforeRemoveRow",
|
1106
1127
|
value: function onBeforeRemoveRow(row, amount, physicalRows) {
|
1107
|
-
var
|
1108
|
-
var
|
1109
|
-
|
1128
|
+
var _this16 = this;
|
1129
|
+
var hfRows = this.rowAxisSyncer.setRemovedHfIndexes(physicalRows);
|
1130
|
+
var possible = hfRows.every(function (hfRow) {
|
1131
|
+
return _this16.engine.isItPossibleToRemoveRows(_this16.sheetId, [hfRow, 1]);
|
1110
1132
|
});
|
1111
1133
|
return possible === false ? false : void 0;
|
1112
1134
|
}
|
@@ -1123,9 +1145,10 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1123
1145
|
}, {
|
1124
1146
|
key: "onBeforeRemoveCol",
|
1125
1147
|
value: function onBeforeRemoveCol(col, amount, physicalColumns) {
|
1126
|
-
var
|
1127
|
-
var
|
1128
|
-
|
1148
|
+
var _this17 = this;
|
1149
|
+
var hfColumns = this.columnAxisSyncer.setRemovedHfIndexes(physicalColumns);
|
1150
|
+
var possible = hfColumns.every(function (hfColumn) {
|
1151
|
+
return _this17.engine.isItPossibleToRemoveColumns(_this17.sheetId, [hfColumn, 1]);
|
1129
1152
|
});
|
1130
1153
|
return possible === false ? false : void 0;
|
1131
1154
|
}
|
@@ -1134,18 +1157,18 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1134
1157
|
* `afterCreateRow` hook callback.
|
1135
1158
|
*
|
1136
1159
|
* @private
|
1137
|
-
* @param {number}
|
1160
|
+
* @param {number} visualRow Represents the visual index of first newly created row in the data source array.
|
1138
1161
|
* @param {number} amount Number of newly created rows in the data source array.
|
1139
1162
|
* @param {string} [source] String that identifies source of hook call
|
1140
1163
|
* ([list of all available sources]{@link https://handsontable.com/docs/javascript-data-grid/events-and-hooks/#handsontable-hooks}).
|
1141
1164
|
*/
|
1142
1165
|
}, {
|
1143
1166
|
key: "onAfterCreateRow",
|
1144
|
-
value: function onAfterCreateRow(
|
1167
|
+
value: function onAfterCreateRow(visualRow, amount, source) {
|
1145
1168
|
if (isBlockedSource(source)) {
|
1146
1169
|
return;
|
1147
1170
|
}
|
1148
|
-
var changes = this.engine.addRows(this.sheetId, [this.
|
1171
|
+
var changes = this.engine.addRows(this.sheetId, [this.rowAxisSyncer.getHfIndexFromVisualIndex(visualRow), amount]);
|
1149
1172
|
this.renderDependentSheets(changes);
|
1150
1173
|
}
|
1151
1174
|
|
@@ -1153,18 +1176,18 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1153
1176
|
* `afterCreateCol` hook callback.
|
1154
1177
|
*
|
1155
1178
|
* @private
|
1156
|
-
* @param {number}
|
1179
|
+
* @param {number} visualColumn Represents the visual index of first newly created column in the data source.
|
1157
1180
|
* @param {number} amount Number of newly created columns in the data source.
|
1158
1181
|
* @param {string} [source] String that identifies source of hook call
|
1159
1182
|
* ([list of all available sources]{@link https://handsontable.com/docs/javascript-data-grid/events-and-hooks/#handsontable-hooks}).
|
1160
1183
|
*/
|
1161
1184
|
}, {
|
1162
1185
|
key: "onAfterCreateCol",
|
1163
|
-
value: function onAfterCreateCol(
|
1186
|
+
value: function onAfterCreateCol(visualColumn, amount, source) {
|
1164
1187
|
if (isBlockedSource(source)) {
|
1165
1188
|
return;
|
1166
1189
|
}
|
1167
|
-
var changes = this.engine.addColumns(this.sheetId, [this.
|
1190
|
+
var changes = this.engine.addColumns(this.sheetId, [this.columnAxisSyncer.getHfIndexFromVisualIndex(visualColumn), amount]);
|
1168
1191
|
this.renderDependentSheets(changes);
|
1169
1192
|
}
|
1170
1193
|
|
@@ -1181,14 +1204,14 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1181
1204
|
}, {
|
1182
1205
|
key: "onAfterRemoveRow",
|
1183
1206
|
value: function onAfterRemoveRow(row, amount, physicalRows, source) {
|
1184
|
-
var
|
1207
|
+
var _this18 = this;
|
1185
1208
|
if (isBlockedSource(source)) {
|
1186
1209
|
return;
|
1187
1210
|
}
|
1188
|
-
var
|
1211
|
+
var descendingHfRows = this.rowAxisSyncer.getRemovedHfIndexes().sort().reverse();
|
1189
1212
|
var changes = this.engine.batch(function () {
|
1190
|
-
|
1191
|
-
|
1213
|
+
descendingHfRows.forEach(function (hfRow) {
|
1214
|
+
_this18.engine.removeRows(_this18.sheetId, [hfRow, 1]);
|
1192
1215
|
});
|
1193
1216
|
});
|
1194
1217
|
this.renderDependentSheets(changes);
|
@@ -1207,14 +1230,14 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1207
1230
|
}, {
|
1208
1231
|
key: "onAfterRemoveCol",
|
1209
1232
|
value: function onAfterRemoveCol(col, amount, physicalColumns, source) {
|
1210
|
-
var
|
1233
|
+
var _this19 = this;
|
1211
1234
|
if (isBlockedSource(source)) {
|
1212
1235
|
return;
|
1213
1236
|
}
|
1214
|
-
var
|
1237
|
+
var descendingHfColumns = this.columnAxisSyncer.getRemovedHfIndexes().sort().reverse();
|
1215
1238
|
var changes = this.engine.batch(function () {
|
1216
|
-
|
1217
|
-
|
1239
|
+
descendingHfColumns.forEach(function (hfColumn) {
|
1240
|
+
_this19.engine.removeColumns(_this19.sheetId, [hfColumn, 1]);
|
1218
1241
|
});
|
1219
1242
|
});
|
1220
1243
|
this.renderDependentSheets(changes);
|
@@ -1233,16 +1256,16 @@ export var Formulas = /*#__PURE__*/function (_BasePlugin) {
|
|
1233
1256
|
key: "onAfterDetachChild",
|
1234
1257
|
value: function onAfterDetachChild(parent, element, finalElementRowIndex) {
|
1235
1258
|
var _element$__children,
|
1236
|
-
|
1259
|
+
_this20 = this;
|
1237
1260
|
_classPrivateFieldSet(this, _internalOperationPending, true);
|
1238
1261
|
var rowsData = this.hot.getSourceDataArray(finalElementRowIndex, 0, finalElementRowIndex + (((_element$__children = element.__children) === null || _element$__children === void 0 ? void 0 : _element$__children.length) || 0), this.hot.countSourceCols());
|
1239
1262
|
_classPrivateFieldSet(this, _internalOperationPending, false);
|
1240
1263
|
rowsData.forEach(function (row, relativeRowIndex) {
|
1241
1264
|
row.forEach(function (value, colIndex) {
|
1242
|
-
|
1265
|
+
_this20.engine.setCellContents({
|
1243
1266
|
col: colIndex,
|
1244
1267
|
row: finalElementRowIndex + relativeRowIndex,
|
1245
|
-
sheet:
|
1268
|
+
sheet: _this20.sheetId
|
1246
1269
|
}, [[value]]);
|
1247
1270
|
});
|
1248
1271
|
});
|