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
package/pluginHooks.js
CHANGED
@@ -141,9 +141,7 @@ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(
|
|
141
141
|
* });
|
142
142
|
* :::
|
143
143
|
* ...
|
144
|
-
*/
|
145
|
-
|
146
|
-
// @TODO: Move plugin description hooks to plugin?
|
144
|
+
*/ // @TODO: Move plugin description hooks to plugin?
|
147
145
|
var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sentence */
|
148
146
|
/**
|
149
147
|
* Fired after resetting a cell's meta. This happens when the {@link Core#updateSettings} method is called.
|
@@ -289,6 +287,14 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
289
287
|
* :::
|
290
288
|
*/
|
291
289
|
'beforeCreateCol',
|
290
|
+
/**
|
291
|
+
* Fired after the order of columns has changed.
|
292
|
+
* This hook is fired by changing column indexes of any type supported by the {@link IndexMapper}.
|
293
|
+
*
|
294
|
+
* @event Hooks#afterColumnSequenceChange
|
295
|
+
* @param {'init'|'remove'|'insert'|'move'|'update'} [source] A string that indicates what caused the change to the order of columns.
|
296
|
+
*/
|
297
|
+
'afterColumnSequenceChange',
|
292
298
|
/**
|
293
299
|
* Fired after created a new column.
|
294
300
|
*
|
@@ -551,6 +557,14 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
551
557
|
* @param {object} cellProperties Object containing the cell's properties.
|
552
558
|
*/
|
553
559
|
'afterRenderer',
|
560
|
+
/**
|
561
|
+
* Fired after the order of rows has changed.
|
562
|
+
* This hook is fired by changing row indexes of any type supported by the {@link IndexMapper}.
|
563
|
+
*
|
564
|
+
* @event Hooks#afterRowSequenceChange
|
565
|
+
* @param {'init'|'remove'|'insert'|'move'|'update'} [source] A string that indicates what caused the change to the order of rows.
|
566
|
+
*/
|
567
|
+
'afterRowSequenceChange',
|
554
568
|
/**
|
555
569
|
* Fired after the horizontal scroll event.
|
556
570
|
*
|
@@ -563,6 +577,13 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
563
577
|
* @event Hooks#afterScrollVertically
|
564
578
|
*/
|
565
579
|
'afterScrollVertically',
|
580
|
+
/**
|
581
|
+
* Fired after the vertical or horizontal scroll event.
|
582
|
+
*
|
583
|
+
* @since 14.0.0
|
584
|
+
* @event Hooks#afterScroll
|
585
|
+
*/
|
586
|
+
'afterScroll',
|
566
587
|
/**
|
567
588
|
* Fired after one or more cells are selected (e.g. During mouse move).
|
568
589
|
*
|
@@ -666,6 +687,94 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
666
687
|
* @param {number} selectionLayerLevel The number which indicates what selection layer is currently modified.
|
667
688
|
*/
|
668
689
|
'afterSelectionEndByProp',
|
690
|
+
/**
|
691
|
+
* Fired before one or more columns are selected (e.g. During mouse header click or {@link Core#selectColumns} API call).
|
692
|
+
*
|
693
|
+
* @since 14.0.0
|
694
|
+
* @event Hooks#beforeSelectColumns
|
695
|
+
* @param {CellCoords} from Selection start coords object.
|
696
|
+
* @param {CellCoords} to Selection end coords object.
|
697
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
698
|
+
* @example
|
699
|
+
* ::: only-for javascript
|
700
|
+
* ```js
|
701
|
+
* new Handsontable(element, {
|
702
|
+
* beforeSelectColumns: (from, to, highlight) => {
|
703
|
+
* // Extend the column selection by one column left and one column right.
|
704
|
+
* from.col = Math.max(from.col - 1, 0);
|
705
|
+
* to.col = Math.min(to.col + 1, this.countCols() - 1);
|
706
|
+
* }
|
707
|
+
* })
|
708
|
+
* ```
|
709
|
+
* :::
|
710
|
+
*
|
711
|
+
* ::: only-for react
|
712
|
+
* ```jsx
|
713
|
+
* <HotTable
|
714
|
+
* beforeSelectColumns={(from, to, highlight) => {
|
715
|
+
* // Extend the column selection by one column left and one column right.
|
716
|
+
* from.col = Math.max(from.col - 1, 0);
|
717
|
+
* to.col = Math.min(to.col + 1, this.countCols() - 1);
|
718
|
+
* }}
|
719
|
+
* />
|
720
|
+
* ```
|
721
|
+
* :::
|
722
|
+
*/
|
723
|
+
'beforeSelectColumns',
|
724
|
+
/**
|
725
|
+
* Fired after one or more columns are selected (e.g. During mouse header click or {@link Core#selectColumns} API call).
|
726
|
+
*
|
727
|
+
* @since 14.0.0
|
728
|
+
* @event Hooks#afterSelectColumns
|
729
|
+
* @param {CellCoords} from Selection start coords object.
|
730
|
+
* @param {CellCoords} to Selection end coords object.
|
731
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
732
|
+
*/
|
733
|
+
'afterSelectColumns',
|
734
|
+
/**
|
735
|
+
* Fired before one or more rows are selected (e.g. During mouse header click or {@link Core#selectRows} API call).
|
736
|
+
*
|
737
|
+
* @since 14.0.0
|
738
|
+
* @event Hooks#beforeSelectRows
|
739
|
+
* @param {CellCoords} from Selection start coords object.
|
740
|
+
* @param {CellCoords} to Selection end coords object.
|
741
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
742
|
+
* @example
|
743
|
+
* ::: only-for javascript
|
744
|
+
* ```js
|
745
|
+
* new Handsontable(element, {
|
746
|
+
* beforeSelectRows: (from, to, highlight) => {
|
747
|
+
* // Extend the row selection by one row up and one row bottom more.
|
748
|
+
* from.row = Math.max(from.row - 1, 0);
|
749
|
+
* to.row = Math.min(to.row + 1, this.countRows() - 1);
|
750
|
+
* }
|
751
|
+
* })
|
752
|
+
* ```
|
753
|
+
* :::
|
754
|
+
*
|
755
|
+
* ::: only-for react
|
756
|
+
* ```jsx
|
757
|
+
* <HotTable
|
758
|
+
* beforeSelectRows={(from, to, highlight) => {
|
759
|
+
* // Extend the row selection by one row up and one row bottom more.
|
760
|
+
* from.row = Math.max(from.row - 1, 0);
|
761
|
+
* to.row = Math.min(to.row + 1, this.countRows() - 1);
|
762
|
+
* }}
|
763
|
+
* />
|
764
|
+
* ```
|
765
|
+
* :::
|
766
|
+
*/
|
767
|
+
'beforeSelectRows',
|
768
|
+
/**
|
769
|
+
* Fired after one or more rows are selected (e.g. During mouse header click or {@link Core#selectRows} API call).
|
770
|
+
*
|
771
|
+
* @since 14.0.0
|
772
|
+
* @event Hooks#afterSelectRows
|
773
|
+
* @param {CellCoords} from Selection start coords object.
|
774
|
+
* @param {CellCoords} to Selection end coords object.
|
775
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
776
|
+
*/
|
777
|
+
'afterSelectRows',
|
669
778
|
/**
|
670
779
|
* Fired after cell meta is changed.
|
671
780
|
*
|
@@ -1196,8 +1305,8 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
1196
1305
|
* Fired when a data was retrieved or modified.
|
1197
1306
|
*
|
1198
1307
|
* @event Hooks#modifyData
|
1199
|
-
* @param {number} row Physical row
|
1200
|
-
* @param {number} column
|
1308
|
+
* @param {number} row Physical row index.
|
1309
|
+
* @param {number} column Visual column index.
|
1201
1310
|
* @param {object} valueHolder Object which contains original value which can be modified by overwriting `.value` property.
|
1202
1311
|
* @param {string} ioMode String which indicates for what operation hook is fired (`get` or `set`).
|
1203
1312
|
*/
|
@@ -1208,7 +1317,7 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
1208
1317
|
* @event Hooks#modifySourceData
|
1209
1318
|
* @since 8.0.0
|
1210
1319
|
* @param {number} row Physical row index.
|
1211
|
-
* @param {number} column Physical column index.
|
1320
|
+
* @param {number} column Physical column index or property name.
|
1212
1321
|
* @param {object} valueHolder Object which contains original value which can be modified by overwriting `.value` property.
|
1213
1322
|
* @param {string} ioMode String which indicates for what operation hook is fired (`get` or `set`).
|
1214
1323
|
*/
|
@@ -1969,17 +2078,6 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
1969
2078
|
* @param {number} rowHeaderWidth Row header width.
|
1970
2079
|
*/
|
1971
2080
|
'modifyRowHeaderWidth',
|
1972
|
-
/**
|
1973
|
-
* Fired from the `populateFromArray` method during the `autofill` process. Fired for each "autofilled" cell individually.
|
1974
|
-
*
|
1975
|
-
* @deprecated
|
1976
|
-
* @event Hooks#beforeAutofillInsidePopulate
|
1977
|
-
* @param {object} index Object containing `row` and `col` properties, defining the number of rows/columns from the initial cell of the autofill.
|
1978
|
-
* @param {string} direction Declares the direction of the autofill. Possible values: `up`, `down`, `left`, `right`.
|
1979
|
-
* @param {Array[]} input Contains an array of rows with data being used in the autofill.
|
1980
|
-
* @param {Array} deltas The deltas array passed to the `populateFromArray` method.
|
1981
|
-
*/
|
1982
|
-
'beforeAutofillInsidePopulate',
|
1983
2081
|
/**
|
1984
2082
|
* Fired when the start of the selection is being modified (e.g. Moving the selection with the arrow keys).
|
1985
2083
|
*
|
@@ -2400,7 +2498,7 @@ var REMOVED_HOOKS = new Map([['modifyRow', '8.0.0'], ['modifyCol', '8.0.0'], ['u
|
|
2400
2498
|
* @type {Map<string, string>}
|
2401
2499
|
*/
|
2402
2500
|
/* eslint-enable jsdoc/require-description-complete-sentence */
|
2403
|
-
var DEPRECATED_HOOKS = new Map([['
|
2501
|
+
var DEPRECATED_HOOKS = new Map([['beforeRemoveCellClassNames', 'The hook "beforeRemoveCellClassNames" is deprecated and will be removed in the next major release.']]);
|
2404
2502
|
var Hooks = /*#__PURE__*/function () {
|
2405
2503
|
/**
|
2406
2504
|
*
|
package/pluginHooks.mjs
CHANGED
@@ -284,6 +284,14 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
284
284
|
* :::
|
285
285
|
*/
|
286
286
|
'beforeCreateCol',
|
287
|
+
/**
|
288
|
+
* Fired after the order of columns has changed.
|
289
|
+
* This hook is fired by changing column indexes of any type supported by the {@link IndexMapper}.
|
290
|
+
*
|
291
|
+
* @event Hooks#afterColumnSequenceChange
|
292
|
+
* @param {'init'|'remove'|'insert'|'move'|'update'} [source] A string that indicates what caused the change to the order of columns.
|
293
|
+
*/
|
294
|
+
'afterColumnSequenceChange',
|
287
295
|
/**
|
288
296
|
* Fired after created a new column.
|
289
297
|
*
|
@@ -546,6 +554,14 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
546
554
|
* @param {object} cellProperties Object containing the cell's properties.
|
547
555
|
*/
|
548
556
|
'afterRenderer',
|
557
|
+
/**
|
558
|
+
* Fired after the order of rows has changed.
|
559
|
+
* This hook is fired by changing row indexes of any type supported by the {@link IndexMapper}.
|
560
|
+
*
|
561
|
+
* @event Hooks#afterRowSequenceChange
|
562
|
+
* @param {'init'|'remove'|'insert'|'move'|'update'} [source] A string that indicates what caused the change to the order of rows.
|
563
|
+
*/
|
564
|
+
'afterRowSequenceChange',
|
549
565
|
/**
|
550
566
|
* Fired after the horizontal scroll event.
|
551
567
|
*
|
@@ -558,6 +574,13 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
558
574
|
* @event Hooks#afterScrollVertically
|
559
575
|
*/
|
560
576
|
'afterScrollVertically',
|
577
|
+
/**
|
578
|
+
* Fired after the vertical or horizontal scroll event.
|
579
|
+
*
|
580
|
+
* @since 14.0.0
|
581
|
+
* @event Hooks#afterScroll
|
582
|
+
*/
|
583
|
+
'afterScroll',
|
561
584
|
/**
|
562
585
|
* Fired after one or more cells are selected (e.g. During mouse move).
|
563
586
|
*
|
@@ -661,6 +684,94 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
661
684
|
* @param {number} selectionLayerLevel The number which indicates what selection layer is currently modified.
|
662
685
|
*/
|
663
686
|
'afterSelectionEndByProp',
|
687
|
+
/**
|
688
|
+
* Fired before one or more columns are selected (e.g. During mouse header click or {@link Core#selectColumns} API call).
|
689
|
+
*
|
690
|
+
* @since 14.0.0
|
691
|
+
* @event Hooks#beforeSelectColumns
|
692
|
+
* @param {CellCoords} from Selection start coords object.
|
693
|
+
* @param {CellCoords} to Selection end coords object.
|
694
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
695
|
+
* @example
|
696
|
+
* ::: only-for javascript
|
697
|
+
* ```js
|
698
|
+
* new Handsontable(element, {
|
699
|
+
* beforeSelectColumns: (from, to, highlight) => {
|
700
|
+
* // Extend the column selection by one column left and one column right.
|
701
|
+
* from.col = Math.max(from.col - 1, 0);
|
702
|
+
* to.col = Math.min(to.col + 1, this.countCols() - 1);
|
703
|
+
* }
|
704
|
+
* })
|
705
|
+
* ```
|
706
|
+
* :::
|
707
|
+
*
|
708
|
+
* ::: only-for react
|
709
|
+
* ```jsx
|
710
|
+
* <HotTable
|
711
|
+
* beforeSelectColumns={(from, to, highlight) => {
|
712
|
+
* // Extend the column selection by one column left and one column right.
|
713
|
+
* from.col = Math.max(from.col - 1, 0);
|
714
|
+
* to.col = Math.min(to.col + 1, this.countCols() - 1);
|
715
|
+
* }}
|
716
|
+
* />
|
717
|
+
* ```
|
718
|
+
* :::
|
719
|
+
*/
|
720
|
+
'beforeSelectColumns',
|
721
|
+
/**
|
722
|
+
* Fired after one or more columns are selected (e.g. During mouse header click or {@link Core#selectColumns} API call).
|
723
|
+
*
|
724
|
+
* @since 14.0.0
|
725
|
+
* @event Hooks#afterSelectColumns
|
726
|
+
* @param {CellCoords} from Selection start coords object.
|
727
|
+
* @param {CellCoords} to Selection end coords object.
|
728
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
729
|
+
*/
|
730
|
+
'afterSelectColumns',
|
731
|
+
/**
|
732
|
+
* Fired before one or more rows are selected (e.g. During mouse header click or {@link Core#selectRows} API call).
|
733
|
+
*
|
734
|
+
* @since 14.0.0
|
735
|
+
* @event Hooks#beforeSelectRows
|
736
|
+
* @param {CellCoords} from Selection start coords object.
|
737
|
+
* @param {CellCoords} to Selection end coords object.
|
738
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
739
|
+
* @example
|
740
|
+
* ::: only-for javascript
|
741
|
+
* ```js
|
742
|
+
* new Handsontable(element, {
|
743
|
+
* beforeSelectRows: (from, to, highlight) => {
|
744
|
+
* // Extend the row selection by one row up and one row bottom more.
|
745
|
+
* from.row = Math.max(from.row - 1, 0);
|
746
|
+
* to.row = Math.min(to.row + 1, this.countRows() - 1);
|
747
|
+
* }
|
748
|
+
* })
|
749
|
+
* ```
|
750
|
+
* :::
|
751
|
+
*
|
752
|
+
* ::: only-for react
|
753
|
+
* ```jsx
|
754
|
+
* <HotTable
|
755
|
+
* beforeSelectRows={(from, to, highlight) => {
|
756
|
+
* // Extend the row selection by one row up and one row bottom more.
|
757
|
+
* from.row = Math.max(from.row - 1, 0);
|
758
|
+
* to.row = Math.min(to.row + 1, this.countRows() - 1);
|
759
|
+
* }}
|
760
|
+
* />
|
761
|
+
* ```
|
762
|
+
* :::
|
763
|
+
*/
|
764
|
+
'beforeSelectRows',
|
765
|
+
/**
|
766
|
+
* Fired after one or more rows are selected (e.g. During mouse header click or {@link Core#selectRows} API call).
|
767
|
+
*
|
768
|
+
* @since 14.0.0
|
769
|
+
* @event Hooks#afterSelectRows
|
770
|
+
* @param {CellCoords} from Selection start coords object.
|
771
|
+
* @param {CellCoords} to Selection end coords object.
|
772
|
+
* @param {CellCoords} highlight Selection cell focus coords object.
|
773
|
+
*/
|
774
|
+
'afterSelectRows',
|
664
775
|
/**
|
665
776
|
* Fired after cell meta is changed.
|
666
777
|
*
|
@@ -1191,8 +1302,8 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
1191
1302
|
* Fired when a data was retrieved or modified.
|
1192
1303
|
*
|
1193
1304
|
* @event Hooks#modifyData
|
1194
|
-
* @param {number} row Physical row
|
1195
|
-
* @param {number} column
|
1305
|
+
* @param {number} row Physical row index.
|
1306
|
+
* @param {number} column Visual column index.
|
1196
1307
|
* @param {object} valueHolder Object which contains original value which can be modified by overwriting `.value` property.
|
1197
1308
|
* @param {string} ioMode String which indicates for what operation hook is fired (`get` or `set`).
|
1198
1309
|
*/
|
@@ -1203,7 +1314,7 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
1203
1314
|
* @event Hooks#modifySourceData
|
1204
1315
|
* @since 8.0.0
|
1205
1316
|
* @param {number} row Physical row index.
|
1206
|
-
* @param {number} column Physical column index.
|
1317
|
+
* @param {number} column Physical column index or property name.
|
1207
1318
|
* @param {object} valueHolder Object which contains original value which can be modified by overwriting `.value` property.
|
1208
1319
|
* @param {string} ioMode String which indicates for what operation hook is fired (`get` or `set`).
|
1209
1320
|
*/
|
@@ -1964,17 +2075,6 @@ var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sen
|
|
1964
2075
|
* @param {number} rowHeaderWidth Row header width.
|
1965
2076
|
*/
|
1966
2077
|
'modifyRowHeaderWidth',
|
1967
|
-
/**
|
1968
|
-
* Fired from the `populateFromArray` method during the `autofill` process. Fired for each "autofilled" cell individually.
|
1969
|
-
*
|
1970
|
-
* @deprecated
|
1971
|
-
* @event Hooks#beforeAutofillInsidePopulate
|
1972
|
-
* @param {object} index Object containing `row` and `col` properties, defining the number of rows/columns from the initial cell of the autofill.
|
1973
|
-
* @param {string} direction Declares the direction of the autofill. Possible values: `up`, `down`, `left`, `right`.
|
1974
|
-
* @param {Array[]} input Contains an array of rows with data being used in the autofill.
|
1975
|
-
* @param {Array} deltas The deltas array passed to the `populateFromArray` method.
|
1976
|
-
*/
|
1977
|
-
'beforeAutofillInsidePopulate',
|
1978
2078
|
/**
|
1979
2079
|
* Fired when the start of the selection is being modified (e.g. Moving the selection with the arrow keys).
|
1980
2080
|
*
|
@@ -2395,7 +2495,7 @@ var REMOVED_HOOKS = new Map([['modifyRow', '8.0.0'], ['modifyCol', '8.0.0'], ['u
|
|
2395
2495
|
* @type {Map<string, string>}
|
2396
2496
|
*/
|
2397
2497
|
/* eslint-enable jsdoc/require-description-complete-sentence */
|
2398
|
-
var DEPRECATED_HOOKS = new Map([['
|
2498
|
+
var DEPRECATED_HOOKS = new Map([['beforeRemoveCellClassNames', 'The hook "beforeRemoveCellClassNames" is deprecated and will be removed in the next major release.']]);
|
2399
2499
|
var Hooks = /*#__PURE__*/function () {
|
2400
2500
|
/**
|
2401
2501
|
*
|
@@ -12,6 +12,7 @@ require("core-js/modules/es.symbol.js");
|
|
12
12
|
require("core-js/modules/es.symbol.description.js");
|
13
13
|
require("core-js/modules/es.number.constructor.js");
|
14
14
|
require("core-js/modules/es.symbol.iterator.js");
|
15
|
+
require("core-js/modules/es.regexp.to-string.js");
|
15
16
|
require("core-js/modules/es.function.name.js");
|
16
17
|
require("core-js/modules/es.regexp.exec.js");
|
17
18
|
exports.__esModule = true;
|
@@ -39,6 +39,7 @@ import "core-js/modules/es.symbol.js";
|
|
39
39
|
import "core-js/modules/es.symbol.description.js";
|
40
40
|
import "core-js/modules/es.number.constructor.js";
|
41
41
|
import "core-js/modules/es.symbol.iterator.js";
|
42
|
+
import "core-js/modules/es.regexp.to-string.js";
|
42
43
|
import "core-js/modules/es.function.name.js";
|
43
44
|
import "core-js/modules/es.regexp.exec.js";
|
44
45
|
import { BasePlugin } from "../base/index.mjs";
|
@@ -14,6 +14,7 @@ require("core-js/modules/es.symbol.iterator.js");
|
|
14
14
|
require("core-js/modules/es.array.iterator.js");
|
15
15
|
require("core-js/modules/es.string.iterator.js");
|
16
16
|
require("core-js/modules/web.dom-collections.iterator.js");
|
17
|
+
require("core-js/modules/es.regexp.to-string.js");
|
17
18
|
require("core-js/modules/es.function.name.js");
|
18
19
|
require("core-js/modules/es.array.from.js");
|
19
20
|
require("core-js/modules/es.regexp.exec.js");
|
@@ -83,10 +84,10 @@ var ROW_WIDTHS_MAP_NAME = 'autoRowSize';
|
|
83
84
|
* To configure the sync/async distribution, you can pass an absolute value (number of rows) or a percentage value to a config object:
|
84
85
|
* ```js
|
85
86
|
* // as a number (300 rows in sync, rest async)
|
86
|
-
* autoRowSize: {syncLimit: 300}
|
87
|
+
* autoRowSize: {syncLimit: 300},
|
87
88
|
*
|
88
89
|
* // as a string (percent)
|
89
|
-
* autoRowSize: {syncLimit: '40%'}
|
90
|
+
* autoRowSize: {syncLimit: '40%'},
|
90
91
|
*
|
91
92
|
* // allow sample duplication
|
92
93
|
* autoRowSize: {syncLimit: '40%', allowSampleDuplicates: true},
|
@@ -16,6 +16,7 @@ import "core-js/modules/es.symbol.iterator.js";
|
|
16
16
|
import "core-js/modules/es.array.iterator.js";
|
17
17
|
import "core-js/modules/es.string.iterator.js";
|
18
18
|
import "core-js/modules/web.dom-collections.iterator.js";
|
19
|
+
import "core-js/modules/es.regexp.to-string.js";
|
19
20
|
import "core-js/modules/es.function.name.js";
|
20
21
|
import "core-js/modules/es.array.from.js";
|
21
22
|
import "core-js/modules/es.regexp.exec.js";
|
@@ -76,10 +77,10 @@ var ROW_WIDTHS_MAP_NAME = 'autoRowSize';
|
|
76
77
|
* To configure the sync/async distribution, you can pass an absolute value (number of rows) or a percentage value to a config object:
|
77
78
|
* ```js
|
78
79
|
* // as a number (300 rows in sync, rest async)
|
79
|
-
* autoRowSize: {syncLimit: 300}
|
80
|
+
* autoRowSize: {syncLimit: 300},
|
80
81
|
*
|
81
82
|
* // as a string (percent)
|
82
|
-
* autoRowSize: {syncLimit: '40%'}
|
83
|
+
* autoRowSize: {syncLimit: '40%'},
|
83
84
|
*
|
84
85
|
* // allow sample duplication
|
85
86
|
* autoRowSize: {syncLimit: '40%', allowSampleDuplicates: true},
|
@@ -15,6 +15,7 @@ require("core-js/modules/es.array.iterator.js");
|
|
15
15
|
require("core-js/modules/es.string.iterator.js");
|
16
16
|
require("core-js/modules/web.dom-collections.iterator.js");
|
17
17
|
require("core-js/modules/es.array.slice.js");
|
18
|
+
require("core-js/modules/es.regexp.to-string.js");
|
18
19
|
require("core-js/modules/es.function.name.js");
|
19
20
|
require("core-js/modules/es.array.from.js");
|
20
21
|
require("core-js/modules/es.regexp.exec.js");
|
@@ -297,7 +298,6 @@ var Autofill = /*#__PURE__*/function (_BasePlugin) {
|
|
297
298
|
this.hot.render();
|
298
299
|
return false;
|
299
300
|
}
|
300
|
-
var deltas = (0, _utils.getDeltas)(startOfDragCoords, endOfDragCoords, selectionData, directionOfDrag);
|
301
301
|
var fillData = beforeAutofillHookResult;
|
302
302
|
var res = beforeAutofillHookResult;
|
303
303
|
if (['up', 'left'].indexOf(directionOfDrag) > -1 && !(res.length === 1 && res[0].length === 0)) {
|
@@ -319,7 +319,7 @@ var Autofill = /*#__PURE__*/function (_BasePlugin) {
|
|
319
319
|
}
|
320
320
|
}
|
321
321
|
}
|
322
|
-
this.hot.populateFromArray(startOfDragCoords.row, startOfDragCoords.col, fillData, endOfDragCoords.row, endOfDragCoords.col, "".concat(this.pluginName, ".fill"), null
|
322
|
+
this.hot.populateFromArray(startOfDragCoords.row, startOfDragCoords.col, fillData, endOfDragCoords.row, endOfDragCoords.col, "".concat(this.pluginName, ".fill"), null);
|
323
323
|
this.setSelection(cornersOfSelectionAndDragAreas);
|
324
324
|
this.hot.runHooks('afterAutofill', fillData, sourceRange, targetRange, directionOfDrag);
|
325
325
|
this.hot.render();
|
@@ -29,6 +29,7 @@ import "core-js/modules/es.array.iterator.js";
|
|
29
29
|
import "core-js/modules/es.string.iterator.js";
|
30
30
|
import "core-js/modules/web.dom-collections.iterator.js";
|
31
31
|
import "core-js/modules/es.array.slice.js";
|
32
|
+
import "core-js/modules/es.regexp.to-string.js";
|
32
33
|
import "core-js/modules/es.function.name.js";
|
33
34
|
import "core-js/modules/es.array.from.js";
|
34
35
|
import "core-js/modules/es.regexp.exec.js";
|
@@ -51,7 +52,7 @@ import Hooks from "../../pluginHooks.mjs";
|
|
51
52
|
import { offset, outerHeight, outerWidth } from "../../helpers/dom/element.mjs";
|
52
53
|
import { arrayEach, arrayMap } from "../../helpers/array.mjs";
|
53
54
|
import EventManager from "../../eventManager.mjs";
|
54
|
-
import {
|
55
|
+
import { getDragDirectionAndRange, DIRECTIONS, getMappedFillHandleSetting } from "./utils.mjs";
|
55
56
|
Hooks.getSingleton().register('modifyAutofillRange');
|
56
57
|
Hooks.getSingleton().register('beforeAutofill');
|
57
58
|
Hooks.getSingleton().register('afterAutofill');
|
@@ -291,7 +292,6 @@ export var Autofill = /*#__PURE__*/function (_BasePlugin) {
|
|
291
292
|
this.hot.render();
|
292
293
|
return false;
|
293
294
|
}
|
294
|
-
var deltas = getDeltas(startOfDragCoords, endOfDragCoords, selectionData, directionOfDrag);
|
295
295
|
var fillData = beforeAutofillHookResult;
|
296
296
|
var res = beforeAutofillHookResult;
|
297
297
|
if (['up', 'left'].indexOf(directionOfDrag) > -1 && !(res.length === 1 && res[0].length === 0)) {
|
@@ -313,7 +313,7 @@ export var Autofill = /*#__PURE__*/function (_BasePlugin) {
|
|
313
313
|
}
|
314
314
|
}
|
315
315
|
}
|
316
|
-
this.hot.populateFromArray(startOfDragCoords.row, startOfDragCoords.col, fillData, endOfDragCoords.row, endOfDragCoords.col, "".concat(this.pluginName, ".fill"), null
|
316
|
+
this.hot.populateFromArray(startOfDragCoords.row, startOfDragCoords.col, fillData, endOfDragCoords.row, endOfDragCoords.col, "".concat(this.pluginName, ".fill"), null);
|
317
317
|
this.setSelection(cornersOfSelectionAndDragAreas);
|
318
318
|
this.hot.runHooks('afterAutofill', fillData, sourceRange, targetRange, directionOfDrag);
|
319
319
|
this.hot.render();
|
@@ -2,10 +2,8 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.DIRECTIONS = void 0;
|
5
|
-
exports.getDeltas = getDeltas;
|
6
5
|
exports.getDragDirectionAndRange = getDragDirectionAndRange;
|
7
6
|
exports.getMappedFillHandleSetting = getMappedFillHandleSetting;
|
8
|
-
require("core-js/modules/es.array.index-of.js");
|
9
7
|
require("core-js/modules/es.object.keys.js");
|
10
8
|
var _object = require("../../helpers/object");
|
11
9
|
var _mixed = require("../../helpers/mixed");
|
@@ -14,43 +12,6 @@ var DIRECTIONS = {
|
|
14
12
|
vertical: 'vertical'
|
15
13
|
};
|
16
14
|
|
17
|
-
/**
|
18
|
-
* Get deltas array.
|
19
|
-
*
|
20
|
-
* @param {CellCoords} start The point in the grid where the selection starts.
|
21
|
-
* @param {CellCoords} end The point in the grid where the selection ends.
|
22
|
-
* @param {Array} data The chunk of the data which belongs to the selected box.
|
23
|
-
* @param {string} direction The selection direction.
|
24
|
-
* @returns {Array}
|
25
|
-
*/
|
26
|
-
exports.DIRECTIONS = DIRECTIONS;
|
27
|
-
function getDeltas(start, end, data, direction) {
|
28
|
-
var rowsLength = data.length;
|
29
|
-
var columnsLength = data ? data[0].length : 0;
|
30
|
-
var deltas = [];
|
31
|
-
var diffRow = end.row - start.row;
|
32
|
-
var diffCol = end.col - start.col;
|
33
|
-
if (['down', 'up'].indexOf(direction) !== -1) {
|
34
|
-
var arr = [];
|
35
|
-
for (var col = 0; col < diffCol; col++) {
|
36
|
-
var startValue = parseInt(data[0][col], 10);
|
37
|
-
var endValue = parseInt(data[rowsLength - 1][col], 10);
|
38
|
-
var delta = (direction === 'down' ? endValue - startValue : startValue - endValue) / (rowsLength - 1) || 0;
|
39
|
-
arr.push(delta);
|
40
|
-
}
|
41
|
-
deltas.push(arr);
|
42
|
-
}
|
43
|
-
if (['right', 'left'].indexOf(direction) !== -1) {
|
44
|
-
for (var row = 0; row < diffRow; row++) {
|
45
|
-
var _startValue = parseInt(data[row][0], 10);
|
46
|
-
var _endValue = parseInt(data[row][columnsLength - 1], 10);
|
47
|
-
var _delta = (direction === 'right' ? _endValue - _startValue : _startValue - _endValue) / (columnsLength - 1) || 0;
|
48
|
-
deltas.push([_delta]);
|
49
|
-
}
|
50
|
-
}
|
51
|
-
return deltas;
|
52
|
-
}
|
53
|
-
|
54
15
|
/**
|
55
16
|
* Get direction between positions and cords of selections difference (drag area).
|
56
17
|
*
|
@@ -59,6 +20,7 @@ function getDeltas(start, end, data, direction) {
|
|
59
20
|
* @param {Function} cellCoordsFactory The function factory for CellCoords objects.
|
60
21
|
* @returns {{direction: string, start: CellCoords, end: CellCoords}}
|
61
22
|
*/
|
23
|
+
exports.DIRECTIONS = DIRECTIONS;
|
62
24
|
function getDragDirectionAndRange(startSelection, endSelection, cellCoordsFactory) {
|
63
25
|
var startOfDragCoords;
|
64
26
|
var endOfDragCoords;
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import "core-js/modules/es.array.index-of.js";
|
2
1
|
import "core-js/modules/es.object.keys.js";
|
3
2
|
import { isObject } from "../../helpers/object.mjs";
|
4
3
|
import { isDefined } from "../../helpers/mixed.mjs";
|
@@ -7,42 +6,6 @@ export var DIRECTIONS = {
|
|
7
6
|
vertical: 'vertical'
|
8
7
|
};
|
9
8
|
|
10
|
-
/**
|
11
|
-
* Get deltas array.
|
12
|
-
*
|
13
|
-
* @param {CellCoords} start The point in the grid where the selection starts.
|
14
|
-
* @param {CellCoords} end The point in the grid where the selection ends.
|
15
|
-
* @param {Array} data The chunk of the data which belongs to the selected box.
|
16
|
-
* @param {string} direction The selection direction.
|
17
|
-
* @returns {Array}
|
18
|
-
*/
|
19
|
-
export function getDeltas(start, end, data, direction) {
|
20
|
-
var rowsLength = data.length;
|
21
|
-
var columnsLength = data ? data[0].length : 0;
|
22
|
-
var deltas = [];
|
23
|
-
var diffRow = end.row - start.row;
|
24
|
-
var diffCol = end.col - start.col;
|
25
|
-
if (['down', 'up'].indexOf(direction) !== -1) {
|
26
|
-
var arr = [];
|
27
|
-
for (var col = 0; col < diffCol; col++) {
|
28
|
-
var startValue = parseInt(data[0][col], 10);
|
29
|
-
var endValue = parseInt(data[rowsLength - 1][col], 10);
|
30
|
-
var delta = (direction === 'down' ? endValue - startValue : startValue - endValue) / (rowsLength - 1) || 0;
|
31
|
-
arr.push(delta);
|
32
|
-
}
|
33
|
-
deltas.push(arr);
|
34
|
-
}
|
35
|
-
if (['right', 'left'].indexOf(direction) !== -1) {
|
36
|
-
for (var row = 0; row < diffRow; row++) {
|
37
|
-
var _startValue = parseInt(data[row][0], 10);
|
38
|
-
var _endValue = parseInt(data[row][columnsLength - 1], 10);
|
39
|
-
var _delta = (direction === 'right' ? _endValue - _startValue : _startValue - _endValue) / (columnsLength - 1) || 0;
|
40
|
-
deltas.push([_delta]);
|
41
|
-
}
|
42
|
-
}
|
43
|
-
return deltas;
|
44
|
-
}
|
45
|
-
|
46
9
|
/**
|
47
10
|
* Get direction between positions and cords of selections difference (drag area).
|
48
11
|
*
|
package/plugins/base/base.js
CHANGED
@@ -7,6 +7,7 @@ require("core-js/modules/es.symbol.description.js");
|
|
7
7
|
require("core-js/modules/es.number.constructor.js");
|
8
8
|
require("core-js/modules/es.symbol.iterator.js");
|
9
9
|
require("core-js/modules/es.array.slice.js");
|
10
|
+
require("core-js/modules/es.regexp.to-string.js");
|
10
11
|
require("core-js/modules/es.function.name.js");
|
11
12
|
require("core-js/modules/es.array.from.js");
|
12
13
|
require("core-js/modules/es.regexp.exec.js");
|
package/plugins/base/base.mjs
CHANGED
@@ -32,6 +32,7 @@ import "core-js/modules/es.symbol.description.js";
|
|
32
32
|
import "core-js/modules/es.number.constructor.js";
|
33
33
|
import "core-js/modules/es.symbol.iterator.js";
|
34
34
|
import "core-js/modules/es.array.slice.js";
|
35
|
+
import "core-js/modules/es.regexp.to-string.js";
|
35
36
|
import "core-js/modules/es.function.name.js";
|
36
37
|
import "core-js/modules/es.array.from.js";
|
37
38
|
import "core-js/modules/es.regexp.exec.js";
|
@@ -16,6 +16,7 @@ require("core-js/modules/es.string.iterator.js");
|
|
16
16
|
require("core-js/modules/web.dom-collections.iterator.js");
|
17
17
|
require("core-js/modules/es.array.from.js");
|
18
18
|
require("core-js/modules/es.array.slice.js");
|
19
|
+
require("core-js/modules/es.regexp.to-string.js");
|
19
20
|
require("core-js/modules/es.function.name.js");
|
20
21
|
require("core-js/modules/es.regexp.exec.js");
|
21
22
|
exports.__esModule = true;
|
@@ -16,6 +16,7 @@ import "core-js/modules/es.string.iterator.js";
|
|
16
16
|
import "core-js/modules/web.dom-collections.iterator.js";
|
17
17
|
import "core-js/modules/es.array.from.js";
|
18
18
|
import "core-js/modules/es.array.slice.js";
|
19
|
+
import "core-js/modules/es.regexp.to-string.js";
|
19
20
|
import "core-js/modules/es.function.name.js";
|
20
21
|
import "core-js/modules/es.regexp.exec.js";
|
21
22
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|