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
@@ -13,6 +13,7 @@ require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
13
13
|
require("core-js/modules/es.symbol.iterator.js");
|
14
14
|
require("core-js/modules/es.array.from.js");
|
15
15
|
require("core-js/modules/es.array.slice.js");
|
16
|
+
require("core-js/modules/es.regexp.to-string.js");
|
16
17
|
require("core-js/modules/es.function.name.js");
|
17
18
|
require("core-js/modules/es.regexp.exec.js");
|
18
19
|
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); }
|
@@ -68,6 +69,7 @@ var PLUGIN_PRIORITY = 290;
|
|
68
69
|
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
69
70
|
var SETTING_KEYS = ['nestedHeaders'];
|
70
71
|
var COLLAPSIBLE_ELEMENT_CLASS = 'collapsibleIndicator';
|
72
|
+
var SHORTCUTS_GROUP = PLUGIN_KEY;
|
71
73
|
var actionDictionary = new Map([['collapse', {
|
72
74
|
hideColumn: true,
|
73
75
|
beforeHook: 'beforeColumnCollapse',
|
@@ -236,6 +238,7 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
236
238
|
this.addHook('beforeOnCellMouseDown', function (event, coords, TD) {
|
237
239
|
return _this2.onBeforeOnCellMouseDown(event, coords, TD);
|
238
240
|
});
|
241
|
+
this.registerShortcuts();
|
239
242
|
_get(_getPrototypeOf(CollapsibleColumns.prototype), "enablePlugin", this).call(this);
|
240
243
|
// @TODO: Workaround for broken plugin initialization abstraction (#6806).
|
241
244
|
this.updatePlugin();
|
@@ -286,10 +289,65 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
286
289
|
this.hot.columnIndexMapper.unregisterMap(this.pluginName);
|
287
290
|
_classPrivateFieldSet(this, _collapsedColumnsMap, null);
|
288
291
|
this.nestedHeadersPlugin = null;
|
292
|
+
this.unregisterShortcuts();
|
289
293
|
this.clearButtons();
|
290
294
|
_get(_getPrototypeOf(CollapsibleColumns.prototype), "disablePlugin", this).call(this);
|
291
295
|
}
|
292
296
|
|
297
|
+
/**
|
298
|
+
* Register shortcuts responsible for toggling collapsible columns.
|
299
|
+
*
|
300
|
+
* @private
|
301
|
+
*/
|
302
|
+
}, {
|
303
|
+
key: "registerShortcuts",
|
304
|
+
value: function registerShortcuts() {
|
305
|
+
var _this3 = this;
|
306
|
+
this.hot.getShortcutManager().getContext('grid').addShortcut({
|
307
|
+
keys: [['Enter']],
|
308
|
+
callback: function callback() {
|
309
|
+
var _this3$headerStateMan;
|
310
|
+
var _this3$hot$getSelecte = _this3.hot.getSelectedRangeLast().highlight,
|
311
|
+
row = _this3$hot$getSelecte.row,
|
312
|
+
col = _this3$hot$getSelecte.col;
|
313
|
+
var _ref = (_this3$headerStateMan = _this3.headerStateManager.getHeaderTreeNodeData(row, col)) !== null && _this3$headerStateMan !== void 0 ? _this3$headerStateMan : {},
|
314
|
+
collapsible = _ref.collapsible,
|
315
|
+
isCollapsed = _ref.isCollapsed,
|
316
|
+
columnIndex = _ref.columnIndex;
|
317
|
+
if (!collapsible) {
|
318
|
+
return;
|
319
|
+
}
|
320
|
+
if (isCollapsed) {
|
321
|
+
_this3.expandSection({
|
322
|
+
row: row,
|
323
|
+
col: columnIndex
|
324
|
+
});
|
325
|
+
} else {
|
326
|
+
_this3.collapseSection({
|
327
|
+
row: row,
|
328
|
+
col: columnIndex
|
329
|
+
});
|
330
|
+
}
|
331
|
+
},
|
332
|
+
runOnlyIf: function runOnlyIf() {
|
333
|
+
var _this3$hot$getSelecte2;
|
334
|
+
return (_this3$hot$getSelecte2 = _this3.hot.getSelectedRangeLast()) === null || _this3$hot$getSelecte2 === void 0 ? void 0 : _this3$hot$getSelecte2.highlight.isHeader();
|
335
|
+
},
|
336
|
+
group: SHORTCUTS_GROUP
|
337
|
+
});
|
338
|
+
}
|
339
|
+
|
340
|
+
/**
|
341
|
+
* Unregister shortcuts responsible for toggling collapsible columns.
|
342
|
+
*
|
343
|
+
* @private
|
344
|
+
*/
|
345
|
+
}, {
|
346
|
+
key: "unregisterShortcuts",
|
347
|
+
value: function unregisterShortcuts() {
|
348
|
+
this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
|
349
|
+
}
|
350
|
+
|
293
351
|
/**
|
294
352
|
* Clears the expand/collapse buttons.
|
295
353
|
*
|
@@ -359,7 +417,7 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
359
417
|
}, {
|
360
418
|
key: "toggleAllCollapsibleSections",
|
361
419
|
value: function toggleAllCollapsibleSections(action) {
|
362
|
-
var
|
420
|
+
var _this4 = this;
|
363
421
|
var coords = this.headerStateManager.mapNodes(function (headerSettings) {
|
364
422
|
var collapsible = headerSettings.collapsible,
|
365
423
|
origColspan = headerSettings.origColspan,
|
@@ -368,7 +426,7 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
368
426
|
isCollapsed = headerSettings.isCollapsed;
|
369
427
|
if (collapsible === true && origColspan > 1 && (isCollapsed && action === 'expand' || !isCollapsed && action === 'collapse')) {
|
370
428
|
return {
|
371
|
-
row:
|
429
|
+
row: _this4.headerStateManager.levelToRowCoords(headerLevel),
|
372
430
|
col: columnIndex
|
373
431
|
};
|
374
432
|
}
|
@@ -407,7 +465,7 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
407
465
|
}, {
|
408
466
|
key: "toggleCollapsibleSection",
|
409
467
|
value: function toggleCollapsibleSection(coords, action) {
|
410
|
-
var
|
468
|
+
var _this5 = this;
|
411
469
|
if (!actionDictionary.has(action)) {
|
412
470
|
throw new Error("Unsupported action is passed (".concat(action, ")."));
|
413
471
|
}
|
@@ -416,18 +474,18 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
416
474
|
}
|
417
475
|
|
418
476
|
// Ignore coordinates which points to the cells range.
|
419
|
-
var filteredCoords = (0, _array.arrayFilter)(coords, function (
|
420
|
-
var row =
|
477
|
+
var filteredCoords = (0, _array.arrayFilter)(coords, function (_ref2) {
|
478
|
+
var row = _ref2.row;
|
421
479
|
return row < 0;
|
422
480
|
});
|
423
481
|
var isActionPossible = filteredCoords.length > 0;
|
424
|
-
(0, _array.arrayEach)(filteredCoords, function (
|
425
|
-
var
|
426
|
-
var row =
|
427
|
-
column =
|
428
|
-
var
|
429
|
-
collapsible =
|
430
|
-
isCollapsed =
|
482
|
+
(0, _array.arrayEach)(filteredCoords, function (_ref3) {
|
483
|
+
var _this5$headerStateMan;
|
484
|
+
var row = _ref3.row,
|
485
|
+
column = _ref3.col;
|
486
|
+
var _ref4 = (_this5$headerStateMan = _this5.headerStateManager.getHeaderSettings(row, column)) !== null && _this5$headerStateMan !== void 0 ? _this5$headerStateMan : {},
|
487
|
+
collapsible = _ref4.collapsible,
|
488
|
+
isCollapsed = _ref4.isCollapsed;
|
431
489
|
if (!collapsible || isCollapsed && action === 'collapse' || !isCollapsed && action === 'expand') {
|
432
490
|
isActionPossible = false;
|
433
491
|
return false;
|
@@ -436,13 +494,13 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
436
494
|
var nodeModRollbacks = [];
|
437
495
|
var affectedColumnsIndexes = [];
|
438
496
|
if (isActionPossible) {
|
439
|
-
(0, _array.arrayEach)(filteredCoords, function (
|
440
|
-
var row =
|
441
|
-
column =
|
442
|
-
var
|
443
|
-
colspanCompensation =
|
444
|
-
affectedColumns =
|
445
|
-
rollbackModification =
|
497
|
+
(0, _array.arrayEach)(filteredCoords, function (_ref5) {
|
498
|
+
var row = _ref5.row,
|
499
|
+
column = _ref5.col;
|
500
|
+
var _this5$headerStateMan2 = _this5.headerStateManager.triggerNodeModification(action, row, column),
|
501
|
+
colspanCompensation = _this5$headerStateMan2.colspanCompensation,
|
502
|
+
affectedColumns = _this5$headerStateMan2.affectedColumns,
|
503
|
+
rollbackModification = _this5$headerStateMan2.rollbackModification;
|
446
504
|
if (colspanCompensation > 0) {
|
447
505
|
affectedColumnsIndexes.push.apply(affectedColumnsIndexes, _toConsumableArray(affectedColumns));
|
448
506
|
nodeModRollbacks.push(rollbackModification);
|
@@ -469,7 +527,7 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
469
527
|
}
|
470
528
|
this.hot.batchExecution(function () {
|
471
529
|
(0, _array.arrayEach)(affectedColumnsIndexes, function (visualColumn) {
|
472
|
-
_classPrivateFieldGet(
|
530
|
+
_classPrivateFieldGet(_this5, _collapsedColumnsMap).setValueAtIndex(_this5.hot.toPhysicalColumn(visualColumn), actionTranslator.hideColumn);
|
473
531
|
});
|
474
532
|
}, true);
|
475
533
|
var isActionPerformed = this.getCollapsedColumns().length !== currentCollapsedColumns.length;
|
@@ -503,10 +561,10 @@ var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
503
561
|
key: "onAfterGetColHeader",
|
504
562
|
value: function onAfterGetColHeader(column, TH, headerLevel) {
|
505
563
|
var _this$headerStateMana;
|
506
|
-
var
|
507
|
-
collapsible =
|
508
|
-
origColspan =
|
509
|
-
isCollapsed =
|
564
|
+
var _ref6 = (_this$headerStateMana = this.headerStateManager.getHeaderSettings(headerLevel, column)) !== null && _this$headerStateMana !== void 0 ? _this$headerStateMana : {},
|
565
|
+
collapsible = _ref6.collapsible,
|
566
|
+
origColspan = _ref6.origColspan,
|
567
|
+
isCollapsed = _ref6.isCollapsed;
|
510
568
|
var isNodeCollapsible = collapsible && origColspan > 1 && column >= this.hot.getSettings().fixedColumnsStart;
|
511
569
|
var collapsibleElement = TH.querySelector(".".concat(COLLAPSIBLE_ELEMENT_CLASS));
|
512
570
|
if (isNodeCollapsible) {
|
@@ -48,6 +48,7 @@ import "core-js/modules/es.object.get-own-property-descriptor.js";
|
|
48
48
|
import "core-js/modules/es.symbol.iterator.js";
|
49
49
|
import "core-js/modules/es.array.from.js";
|
50
50
|
import "core-js/modules/es.array.slice.js";
|
51
|
+
import "core-js/modules/es.regexp.to-string.js";
|
51
52
|
import "core-js/modules/es.function.name.js";
|
52
53
|
import "core-js/modules/es.regexp.exec.js";
|
53
54
|
import { BasePlugin } from "../base/index.mjs";
|
@@ -61,6 +62,7 @@ export var PLUGIN_KEY = 'collapsibleColumns';
|
|
61
62
|
export var PLUGIN_PRIORITY = 290;
|
62
63
|
var SETTING_KEYS = ['nestedHeaders'];
|
63
64
|
var COLLAPSIBLE_ELEMENT_CLASS = 'collapsibleIndicator';
|
65
|
+
var SHORTCUTS_GROUP = PLUGIN_KEY;
|
64
66
|
var actionDictionary = new Map([['collapse', {
|
65
67
|
hideColumn: true,
|
66
68
|
beforeHook: 'beforeColumnCollapse',
|
@@ -229,6 +231,7 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
229
231
|
this.addHook('beforeOnCellMouseDown', function (event, coords, TD) {
|
230
232
|
return _this2.onBeforeOnCellMouseDown(event, coords, TD);
|
231
233
|
});
|
234
|
+
this.registerShortcuts();
|
232
235
|
_get(_getPrototypeOf(CollapsibleColumns.prototype), "enablePlugin", this).call(this);
|
233
236
|
// @TODO: Workaround for broken plugin initialization abstraction (#6806).
|
234
237
|
this.updatePlugin();
|
@@ -279,10 +282,65 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
279
282
|
this.hot.columnIndexMapper.unregisterMap(this.pluginName);
|
280
283
|
_classPrivateFieldSet(this, _collapsedColumnsMap, null);
|
281
284
|
this.nestedHeadersPlugin = null;
|
285
|
+
this.unregisterShortcuts();
|
282
286
|
this.clearButtons();
|
283
287
|
_get(_getPrototypeOf(CollapsibleColumns.prototype), "disablePlugin", this).call(this);
|
284
288
|
}
|
285
289
|
|
290
|
+
/**
|
291
|
+
* Register shortcuts responsible for toggling collapsible columns.
|
292
|
+
*
|
293
|
+
* @private
|
294
|
+
*/
|
295
|
+
}, {
|
296
|
+
key: "registerShortcuts",
|
297
|
+
value: function registerShortcuts() {
|
298
|
+
var _this3 = this;
|
299
|
+
this.hot.getShortcutManager().getContext('grid').addShortcut({
|
300
|
+
keys: [['Enter']],
|
301
|
+
callback: function callback() {
|
302
|
+
var _this3$headerStateMan;
|
303
|
+
var _this3$hot$getSelecte = _this3.hot.getSelectedRangeLast().highlight,
|
304
|
+
row = _this3$hot$getSelecte.row,
|
305
|
+
col = _this3$hot$getSelecte.col;
|
306
|
+
var _ref = (_this3$headerStateMan = _this3.headerStateManager.getHeaderTreeNodeData(row, col)) !== null && _this3$headerStateMan !== void 0 ? _this3$headerStateMan : {},
|
307
|
+
collapsible = _ref.collapsible,
|
308
|
+
isCollapsed = _ref.isCollapsed,
|
309
|
+
columnIndex = _ref.columnIndex;
|
310
|
+
if (!collapsible) {
|
311
|
+
return;
|
312
|
+
}
|
313
|
+
if (isCollapsed) {
|
314
|
+
_this3.expandSection({
|
315
|
+
row: row,
|
316
|
+
col: columnIndex
|
317
|
+
});
|
318
|
+
} else {
|
319
|
+
_this3.collapseSection({
|
320
|
+
row: row,
|
321
|
+
col: columnIndex
|
322
|
+
});
|
323
|
+
}
|
324
|
+
},
|
325
|
+
runOnlyIf: function runOnlyIf() {
|
326
|
+
var _this3$hot$getSelecte2;
|
327
|
+
return (_this3$hot$getSelecte2 = _this3.hot.getSelectedRangeLast()) === null || _this3$hot$getSelecte2 === void 0 ? void 0 : _this3$hot$getSelecte2.highlight.isHeader();
|
328
|
+
},
|
329
|
+
group: SHORTCUTS_GROUP
|
330
|
+
});
|
331
|
+
}
|
332
|
+
|
333
|
+
/**
|
334
|
+
* Unregister shortcuts responsible for toggling collapsible columns.
|
335
|
+
*
|
336
|
+
* @private
|
337
|
+
*/
|
338
|
+
}, {
|
339
|
+
key: "unregisterShortcuts",
|
340
|
+
value: function unregisterShortcuts() {
|
341
|
+
this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
|
342
|
+
}
|
343
|
+
|
286
344
|
/**
|
287
345
|
* Clears the expand/collapse buttons.
|
288
346
|
*
|
@@ -352,7 +410,7 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
352
410
|
}, {
|
353
411
|
key: "toggleAllCollapsibleSections",
|
354
412
|
value: function toggleAllCollapsibleSections(action) {
|
355
|
-
var
|
413
|
+
var _this4 = this;
|
356
414
|
var coords = this.headerStateManager.mapNodes(function (headerSettings) {
|
357
415
|
var collapsible = headerSettings.collapsible,
|
358
416
|
origColspan = headerSettings.origColspan,
|
@@ -361,7 +419,7 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
361
419
|
isCollapsed = headerSettings.isCollapsed;
|
362
420
|
if (collapsible === true && origColspan > 1 && (isCollapsed && action === 'expand' || !isCollapsed && action === 'collapse')) {
|
363
421
|
return {
|
364
|
-
row:
|
422
|
+
row: _this4.headerStateManager.levelToRowCoords(headerLevel),
|
365
423
|
col: columnIndex
|
366
424
|
};
|
367
425
|
}
|
@@ -400,7 +458,7 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
400
458
|
}, {
|
401
459
|
key: "toggleCollapsibleSection",
|
402
460
|
value: function toggleCollapsibleSection(coords, action) {
|
403
|
-
var
|
461
|
+
var _this5 = this;
|
404
462
|
if (!actionDictionary.has(action)) {
|
405
463
|
throw new Error("Unsupported action is passed (".concat(action, ")."));
|
406
464
|
}
|
@@ -409,18 +467,18 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
409
467
|
}
|
410
468
|
|
411
469
|
// Ignore coordinates which points to the cells range.
|
412
|
-
var filteredCoords = arrayFilter(coords, function (
|
413
|
-
var row =
|
470
|
+
var filteredCoords = arrayFilter(coords, function (_ref2) {
|
471
|
+
var row = _ref2.row;
|
414
472
|
return row < 0;
|
415
473
|
});
|
416
474
|
var isActionPossible = filteredCoords.length > 0;
|
417
|
-
arrayEach(filteredCoords, function (
|
418
|
-
var
|
419
|
-
var row =
|
420
|
-
column =
|
421
|
-
var
|
422
|
-
collapsible =
|
423
|
-
isCollapsed =
|
475
|
+
arrayEach(filteredCoords, function (_ref3) {
|
476
|
+
var _this5$headerStateMan;
|
477
|
+
var row = _ref3.row,
|
478
|
+
column = _ref3.col;
|
479
|
+
var _ref4 = (_this5$headerStateMan = _this5.headerStateManager.getHeaderSettings(row, column)) !== null && _this5$headerStateMan !== void 0 ? _this5$headerStateMan : {},
|
480
|
+
collapsible = _ref4.collapsible,
|
481
|
+
isCollapsed = _ref4.isCollapsed;
|
424
482
|
if (!collapsible || isCollapsed && action === 'collapse' || !isCollapsed && action === 'expand') {
|
425
483
|
isActionPossible = false;
|
426
484
|
return false;
|
@@ -429,13 +487,13 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
429
487
|
var nodeModRollbacks = [];
|
430
488
|
var affectedColumnsIndexes = [];
|
431
489
|
if (isActionPossible) {
|
432
|
-
arrayEach(filteredCoords, function (
|
433
|
-
var row =
|
434
|
-
column =
|
435
|
-
var
|
436
|
-
colspanCompensation =
|
437
|
-
affectedColumns =
|
438
|
-
rollbackModification =
|
490
|
+
arrayEach(filteredCoords, function (_ref5) {
|
491
|
+
var row = _ref5.row,
|
492
|
+
column = _ref5.col;
|
493
|
+
var _this5$headerStateMan2 = _this5.headerStateManager.triggerNodeModification(action, row, column),
|
494
|
+
colspanCompensation = _this5$headerStateMan2.colspanCompensation,
|
495
|
+
affectedColumns = _this5$headerStateMan2.affectedColumns,
|
496
|
+
rollbackModification = _this5$headerStateMan2.rollbackModification;
|
439
497
|
if (colspanCompensation > 0) {
|
440
498
|
affectedColumnsIndexes.push.apply(affectedColumnsIndexes, _toConsumableArray(affectedColumns));
|
441
499
|
nodeModRollbacks.push(rollbackModification);
|
@@ -462,7 +520,7 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
462
520
|
}
|
463
521
|
this.hot.batchExecution(function () {
|
464
522
|
arrayEach(affectedColumnsIndexes, function (visualColumn) {
|
465
|
-
_classPrivateFieldGet(
|
523
|
+
_classPrivateFieldGet(_this5, _collapsedColumnsMap).setValueAtIndex(_this5.hot.toPhysicalColumn(visualColumn), actionTranslator.hideColumn);
|
466
524
|
});
|
467
525
|
}, true);
|
468
526
|
var isActionPerformed = this.getCollapsedColumns().length !== currentCollapsedColumns.length;
|
@@ -496,10 +554,10 @@ export var CollapsibleColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
496
554
|
key: "onAfterGetColHeader",
|
497
555
|
value: function onAfterGetColHeader(column, TH, headerLevel) {
|
498
556
|
var _this$headerStateMana;
|
499
|
-
var
|
500
|
-
collapsible =
|
501
|
-
origColspan =
|
502
|
-
isCollapsed =
|
557
|
+
var _ref6 = (_this$headerStateMana = this.headerStateManager.getHeaderSettings(headerLevel, column)) !== null && _this$headerStateMana !== void 0 ? _this$headerStateMana : {},
|
558
|
+
collapsible = _ref6.collapsible,
|
559
|
+
origColspan = _ref6.origColspan,
|
560
|
+
isCollapsed = _ref6.isCollapsed;
|
503
561
|
var isNodeCollapsible = collapsible && origColspan > 1 && column >= this.hot.getSettings().fixedColumnsStart;
|
504
562
|
var collapsibleElement = TH.querySelector(".".concat(COLLAPSIBLE_ELEMENT_CLASS));
|
505
563
|
if (isNodeCollapsible) {
|
@@ -15,10 +15,11 @@ require("core-js/modules/web.dom-collections.for-each.js");
|
|
15
15
|
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
16
16
|
require("core-js/modules/es.symbol.iterator.js");
|
17
17
|
require("core-js/modules/es.array.from.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.regexp.exec.js");
|
20
21
|
exports.__esModule = true;
|
21
|
-
exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.ColumnSorting = void 0;
|
22
|
+
exports.REPLACE_COLUMN_CONFIG_STRATEGY = exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.ColumnSorting = exports.APPEND_COLUMN_CONFIG_STRATEGY = void 0;
|
22
23
|
require("core-js/modules/es.array.sort.js");
|
23
24
|
require("core-js/modules/es.array.slice.js");
|
24
25
|
require("core-js/modules/es.object.to-string.js");
|
@@ -78,7 +79,10 @@ exports.PLUGIN_KEY = PLUGIN_KEY;
|
|
78
79
|
var PLUGIN_PRIORITY = 50;
|
79
80
|
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
80
81
|
var APPEND_COLUMN_CONFIG_STRATEGY = 'append';
|
82
|
+
exports.APPEND_COLUMN_CONFIG_STRATEGY = APPEND_COLUMN_CONFIG_STRATEGY;
|
81
83
|
var REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
|
84
|
+
exports.REPLACE_COLUMN_CONFIG_STRATEGY = REPLACE_COLUMN_CONFIG_STRATEGY;
|
85
|
+
var SHORTCUTS_GROUP = PLUGIN_KEY;
|
82
86
|
(0, _sortService.registerRootComparator)(PLUGIN_KEY, _rootComparator.rootComparator);
|
83
87
|
_pluginHooks.default.getSingleton().register('beforeColumnSort');
|
84
88
|
_pluginHooks.default.getSingleton().register('afterColumnSort');
|
@@ -222,6 +226,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
222
226
|
if (this.hot.view) {
|
223
227
|
this.loadOrSortBySettings();
|
224
228
|
}
|
229
|
+
this.registerShortcuts();
|
225
230
|
_get(_getPrototypeOf(ColumnSorting.prototype), "enablePlugin", this).call(this);
|
226
231
|
}
|
227
232
|
|
@@ -255,9 +260,47 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
255
260
|
this.columnStatesManager.destroy();
|
256
261
|
this.columnMetaCache = null;
|
257
262
|
this.columnStatesManager = null;
|
263
|
+
this.unregisterShortcuts();
|
258
264
|
_get(_getPrototypeOf(ColumnSorting.prototype), "disablePlugin", this).call(this);
|
259
265
|
}
|
260
266
|
|
267
|
+
/**
|
268
|
+
* Register shortcuts responsible for toggling column sorting functionality.
|
269
|
+
*
|
270
|
+
* @private
|
271
|
+
*/
|
272
|
+
}, {
|
273
|
+
key: "registerShortcuts",
|
274
|
+
value: function registerShortcuts() {
|
275
|
+
var _this4 = this;
|
276
|
+
this.hot.getShortcutManager().getContext('grid').addShortcut({
|
277
|
+
keys: [['Enter']],
|
278
|
+
callback: function callback() {
|
279
|
+
var _this4$hot$getSelecte = _this4.hot.getSelectedRangeLast(),
|
280
|
+
highlight = _this4$hot$getSelecte.highlight;
|
281
|
+
if (highlight.row === -1 && highlight.col >= 0) {
|
282
|
+
_this4.sort(_this4.getColumnNextConfig(highlight.col));
|
283
|
+
}
|
284
|
+
},
|
285
|
+
runOnlyIf: function runOnlyIf() {
|
286
|
+
var _this4$hot$getSelecte2;
|
287
|
+
return (_this4$hot$getSelecte2 = _this4.hot.getSelectedRangeLast()) === null || _this4$hot$getSelecte2 === void 0 ? void 0 : _this4$hot$getSelecte2.highlight.isHeader();
|
288
|
+
},
|
289
|
+
group: SHORTCUTS_GROUP
|
290
|
+
});
|
291
|
+
}
|
292
|
+
|
293
|
+
/**
|
294
|
+
* Unregister shortcuts responsible for toggling column sorting functionality.
|
295
|
+
*
|
296
|
+
* @private
|
297
|
+
*/
|
298
|
+
}, {
|
299
|
+
key: "unregisterShortcuts",
|
300
|
+
value: function unregisterShortcuts() {
|
301
|
+
this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
|
302
|
+
}
|
303
|
+
|
261
304
|
// DIFF - MultiColumnSorting & ColumnSorting: changed function documentation.
|
262
305
|
/**
|
263
306
|
* Sorts the table by chosen columns and orders.
|
@@ -427,13 +470,13 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
427
470
|
}, {
|
428
471
|
key: "saveAllSortSettings",
|
429
472
|
value: function saveAllSortSettings(sortConfigs) {
|
430
|
-
var
|
473
|
+
var _this5 = this;
|
431
474
|
var allSortSettings = this.columnStatesManager.getAllColumnsProperties();
|
432
475
|
var translateColumnToPhysical = function translateColumnToPhysical(_ref2) {
|
433
476
|
var visualColumn = _ref2.column,
|
434
477
|
restOfProperties = _objectWithoutProperties(_ref2, _excluded);
|
435
478
|
return _objectSpread({
|
436
|
-
column:
|
479
|
+
column: _this5.hot.toPhysicalColumn(visualColumn)
|
437
480
|
}, restOfProperties);
|
438
481
|
};
|
439
482
|
allSortSettings.initialConfig = (0, _array.arrayMap)(sortConfigs, translateColumnToPhysical);
|
@@ -451,7 +494,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
451
494
|
}, {
|
452
495
|
key: "getAllSavedSortSettings",
|
453
496
|
value: function getAllSavedSortSettings() {
|
454
|
-
var
|
497
|
+
var _this6 = this;
|
455
498
|
var storedAllSortSettings = {};
|
456
499
|
this.hot.runHooks('persistentStateLoad', 'columnSorting', storedAllSortSettings);
|
457
500
|
var allSortSettings = storedAllSortSettings.value;
|
@@ -459,7 +502,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
459
502
|
var physicalColumn = _ref3.column,
|
460
503
|
restOfProperties = _objectWithoutProperties(_ref3, _excluded2);
|
461
504
|
return _objectSpread({
|
462
|
-
column:
|
505
|
+
column: _this6.hot.toVisualColumn(physicalColumn)
|
463
506
|
}, restOfProperties);
|
464
507
|
};
|
465
508
|
if ((0, _mixed.isDefined)(allSortSettings) && Array.isArray(allSortSettings.initialConfig)) {
|
@@ -624,7 +667,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
624
667
|
}, {
|
625
668
|
key: "sortByPresetSortStates",
|
626
669
|
value: function sortByPresetSortStates(sortConfigs) {
|
627
|
-
var
|
670
|
+
var _this7 = this;
|
628
671
|
if (sortConfigs.length === 0) {
|
629
672
|
this.hot.rowIndexMapper.setIndexesSequence(this.indexesSequenceCache.getValues());
|
630
673
|
return;
|
@@ -633,7 +676,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
633
676
|
var numberOfRows = this.hot.countRows();
|
634
677
|
var getDataForSortedColumns = function getDataForSortedColumns(visualRowIndex) {
|
635
678
|
return (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
|
636
|
-
return
|
679
|
+
return _this7.hot.getDataAtCell(visualRowIndex, sortConfig.column);
|
637
680
|
});
|
638
681
|
};
|
639
682
|
for (var visualRowIndex = 0; visualRowIndex < this.getNumberOfRowsToSort(numberOfRows); visualRowIndex += 1) {
|
@@ -645,7 +688,7 @@ var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
645
688
|
(0, _sortService.sort)(indexesWithData, this.pluginKey, (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
|
646
689
|
return sortConfig.sortOrder;
|
647
690
|
}), (0, _array.arrayMap)(sortConfigs, function (sortConfig) {
|
648
|
-
return
|
691
|
+
return _this7.getFirstCellSettings(sortConfig.column);
|
649
692
|
}));
|
650
693
|
|
651
694
|
// Append spareRows
|
@@ -14,6 +14,7 @@ import "core-js/modules/web.dom-collections.for-each.js";
|
|
14
14
|
import "core-js/modules/es.object.get-own-property-descriptors.js";
|
15
15
|
import "core-js/modules/es.symbol.iterator.js";
|
16
16
|
import "core-js/modules/es.array.from.js";
|
17
|
+
import "core-js/modules/es.regexp.to-string.js";
|
17
18
|
import "core-js/modules/es.function.name.js";
|
18
19
|
import "core-js/modules/es.regexp.exec.js";
|
19
20
|
var _excluded = ["column"],
|
@@ -70,8 +71,9 @@ import { rootComparator } from "./rootComparator.mjs";
|
|
70
71
|
import { registerRootComparator, sort } from "./sortService/index.mjs";
|
71
72
|
export var PLUGIN_KEY = 'columnSorting';
|
72
73
|
export var PLUGIN_PRIORITY = 50;
|
73
|
-
var APPEND_COLUMN_CONFIG_STRATEGY = 'append';
|
74
|
-
var REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
|
74
|
+
export var APPEND_COLUMN_CONFIG_STRATEGY = 'append';
|
75
|
+
export var REPLACE_COLUMN_CONFIG_STRATEGY = 'replace';
|
76
|
+
var SHORTCUTS_GROUP = PLUGIN_KEY;
|
75
77
|
registerRootComparator(PLUGIN_KEY, rootComparator);
|
76
78
|
Hooks.getSingleton().register('beforeColumnSort');
|
77
79
|
Hooks.getSingleton().register('afterColumnSort');
|
@@ -215,6 +217,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
215
217
|
if (this.hot.view) {
|
216
218
|
this.loadOrSortBySettings();
|
217
219
|
}
|
220
|
+
this.registerShortcuts();
|
218
221
|
_get(_getPrototypeOf(ColumnSorting.prototype), "enablePlugin", this).call(this);
|
219
222
|
}
|
220
223
|
|
@@ -248,9 +251,47 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
248
251
|
this.columnStatesManager.destroy();
|
249
252
|
this.columnMetaCache = null;
|
250
253
|
this.columnStatesManager = null;
|
254
|
+
this.unregisterShortcuts();
|
251
255
|
_get(_getPrototypeOf(ColumnSorting.prototype), "disablePlugin", this).call(this);
|
252
256
|
}
|
253
257
|
|
258
|
+
/**
|
259
|
+
* Register shortcuts responsible for toggling column sorting functionality.
|
260
|
+
*
|
261
|
+
* @private
|
262
|
+
*/
|
263
|
+
}, {
|
264
|
+
key: "registerShortcuts",
|
265
|
+
value: function registerShortcuts() {
|
266
|
+
var _this4 = this;
|
267
|
+
this.hot.getShortcutManager().getContext('grid').addShortcut({
|
268
|
+
keys: [['Enter']],
|
269
|
+
callback: function callback() {
|
270
|
+
var _this4$hot$getSelecte = _this4.hot.getSelectedRangeLast(),
|
271
|
+
highlight = _this4$hot$getSelecte.highlight;
|
272
|
+
if (highlight.row === -1 && highlight.col >= 0) {
|
273
|
+
_this4.sort(_this4.getColumnNextConfig(highlight.col));
|
274
|
+
}
|
275
|
+
},
|
276
|
+
runOnlyIf: function runOnlyIf() {
|
277
|
+
var _this4$hot$getSelecte2;
|
278
|
+
return (_this4$hot$getSelecte2 = _this4.hot.getSelectedRangeLast()) === null || _this4$hot$getSelecte2 === void 0 ? void 0 : _this4$hot$getSelecte2.highlight.isHeader();
|
279
|
+
},
|
280
|
+
group: SHORTCUTS_GROUP
|
281
|
+
});
|
282
|
+
}
|
283
|
+
|
284
|
+
/**
|
285
|
+
* Unregister shortcuts responsible for toggling column sorting functionality.
|
286
|
+
*
|
287
|
+
* @private
|
288
|
+
*/
|
289
|
+
}, {
|
290
|
+
key: "unregisterShortcuts",
|
291
|
+
value: function unregisterShortcuts() {
|
292
|
+
this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
|
293
|
+
}
|
294
|
+
|
254
295
|
// DIFF - MultiColumnSorting & ColumnSorting: changed function documentation.
|
255
296
|
/**
|
256
297
|
* Sorts the table by chosen columns and orders.
|
@@ -420,13 +461,13 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
420
461
|
}, {
|
421
462
|
key: "saveAllSortSettings",
|
422
463
|
value: function saveAllSortSettings(sortConfigs) {
|
423
|
-
var
|
464
|
+
var _this5 = this;
|
424
465
|
var allSortSettings = this.columnStatesManager.getAllColumnsProperties();
|
425
466
|
var translateColumnToPhysical = function translateColumnToPhysical(_ref2) {
|
426
467
|
var visualColumn = _ref2.column,
|
427
468
|
restOfProperties = _objectWithoutProperties(_ref2, _excluded);
|
428
469
|
return _objectSpread({
|
429
|
-
column:
|
470
|
+
column: _this5.hot.toPhysicalColumn(visualColumn)
|
430
471
|
}, restOfProperties);
|
431
472
|
};
|
432
473
|
allSortSettings.initialConfig = arrayMap(sortConfigs, translateColumnToPhysical);
|
@@ -444,7 +485,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
444
485
|
}, {
|
445
486
|
key: "getAllSavedSortSettings",
|
446
487
|
value: function getAllSavedSortSettings() {
|
447
|
-
var
|
488
|
+
var _this6 = this;
|
448
489
|
var storedAllSortSettings = {};
|
449
490
|
this.hot.runHooks('persistentStateLoad', 'columnSorting', storedAllSortSettings);
|
450
491
|
var allSortSettings = storedAllSortSettings.value;
|
@@ -452,7 +493,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
452
493
|
var physicalColumn = _ref3.column,
|
453
494
|
restOfProperties = _objectWithoutProperties(_ref3, _excluded2);
|
454
495
|
return _objectSpread({
|
455
|
-
column:
|
496
|
+
column: _this6.hot.toVisualColumn(physicalColumn)
|
456
497
|
}, restOfProperties);
|
457
498
|
};
|
458
499
|
if (isDefined(allSortSettings) && Array.isArray(allSortSettings.initialConfig)) {
|
@@ -617,7 +658,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
617
658
|
}, {
|
618
659
|
key: "sortByPresetSortStates",
|
619
660
|
value: function sortByPresetSortStates(sortConfigs) {
|
620
|
-
var
|
661
|
+
var _this7 = this;
|
621
662
|
if (sortConfigs.length === 0) {
|
622
663
|
this.hot.rowIndexMapper.setIndexesSequence(this.indexesSequenceCache.getValues());
|
623
664
|
return;
|
@@ -626,7 +667,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
626
667
|
var numberOfRows = this.hot.countRows();
|
627
668
|
var getDataForSortedColumns = function getDataForSortedColumns(visualRowIndex) {
|
628
669
|
return arrayMap(sortConfigs, function (sortConfig) {
|
629
|
-
return
|
670
|
+
return _this7.hot.getDataAtCell(visualRowIndex, sortConfig.column);
|
630
671
|
});
|
631
672
|
};
|
632
673
|
for (var visualRowIndex = 0; visualRowIndex < this.getNumberOfRowsToSort(numberOfRows); visualRowIndex += 1) {
|
@@ -638,7 +679,7 @@ export var ColumnSorting = /*#__PURE__*/function (_BasePlugin) {
|
|
638
679
|
sort(indexesWithData, this.pluginKey, arrayMap(sortConfigs, function (sortConfig) {
|
639
680
|
return sortConfig.sortOrder;
|
640
681
|
}), arrayMap(sortConfigs, function (sortConfig) {
|
641
|
-
return
|
682
|
+
return _this7.getFirstCellSettings(sortConfig.column);
|
642
683
|
}));
|
643
684
|
|
644
685
|
// Append spareRows
|
@@ -5,6 +5,7 @@ require("core-js/modules/es.array.iterator.js");
|
|
5
5
|
require("core-js/modules/es.string.iterator.js");
|
6
6
|
require("core-js/modules/web.dom-collections.iterator.js");
|
7
7
|
require("core-js/modules/es.array.slice.js");
|
8
|
+
require("core-js/modules/es.regexp.to-string.js");
|
8
9
|
require("core-js/modules/es.function.name.js");
|
9
10
|
require("core-js/modules/es.array.from.js");
|
10
11
|
require("core-js/modules/es.regexp.exec.js");
|
@@ -22,6 +22,7 @@ import "core-js/modules/es.array.iterator.js";
|
|
22
22
|
import "core-js/modules/es.string.iterator.js";
|
23
23
|
import "core-js/modules/web.dom-collections.iterator.js";
|
24
24
|
import "core-js/modules/es.array.slice.js";
|
25
|
+
import "core-js/modules/es.regexp.to-string.js";
|
25
26
|
import "core-js/modules/es.function.name.js";
|
26
27
|
import "core-js/modules/es.array.from.js";
|
27
28
|
import "core-js/modules/es.regexp.exec.js";
|