handsontable 0.0.0-next-a1e4b4f-20230628 → 0.0.0-next-e697250-20230707
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
@@ -27,6 +27,7 @@ import "core-js/modules/es.symbol.iterator.js";
|
|
27
27
|
import "core-js/modules/es.string.iterator.js";
|
28
28
|
import "core-js/modules/es.array.from.js";
|
29
29
|
import "core-js/modules/es.array.slice.js";
|
30
|
+
import "core-js/modules/es.regexp.to-string.js";
|
30
31
|
import "core-js/modules/es.function.name.js";
|
31
32
|
import "core-js/modules/es.regexp.exec.js";
|
32
33
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
@@ -8,6 +8,7 @@ require("core-js/modules/es.array.iterator.js");
|
|
8
8
|
require("core-js/modules/es.string.iterator.js");
|
9
9
|
require("core-js/modules/web.dom-collections.iterator.js");
|
10
10
|
require("core-js/modules/es.array.from.js");
|
11
|
+
require("core-js/modules/es.regexp.to-string.js");
|
11
12
|
require("core-js/modules/es.function.name.js");
|
12
13
|
require("core-js/modules/es.regexp.exec.js");
|
13
14
|
exports.__esModule = true;
|
@@ -10,6 +10,7 @@ import "core-js/modules/es.array.iterator.js";
|
|
10
10
|
import "core-js/modules/es.string.iterator.js";
|
11
11
|
import "core-js/modules/web.dom-collections.iterator.js";
|
12
12
|
import "core-js/modules/es.array.from.js";
|
13
|
+
import "core-js/modules/es.regexp.to-string.js";
|
13
14
|
import "core-js/modules/es.function.name.js";
|
14
15
|
import "core-js/modules/es.regexp.exec.js";
|
15
16
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
@@ -8,6 +8,7 @@ require("core-js/modules/es.array.iterator.js");
|
|
8
8
|
require("core-js/modules/es.string.iterator.js");
|
9
9
|
require("core-js/modules/web.dom-collections.iterator.js");
|
10
10
|
require("core-js/modules/es.array.from.js");
|
11
|
+
require("core-js/modules/es.regexp.to-string.js");
|
11
12
|
require("core-js/modules/es.function.name.js");
|
12
13
|
require("core-js/modules/es.regexp.exec.js");
|
13
14
|
exports.__esModule = true;
|
@@ -11,6 +11,7 @@ import "core-js/modules/es.array.iterator.js";
|
|
11
11
|
import "core-js/modules/es.string.iterator.js";
|
12
12
|
import "core-js/modules/web.dom-collections.iterator.js";
|
13
13
|
import "core-js/modules/es.array.from.js";
|
14
|
+
import "core-js/modules/es.regexp.to-string.js";
|
14
15
|
import "core-js/modules/es.function.name.js";
|
15
16
|
import "core-js/modules/es.regexp.exec.js";
|
16
17
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
@@ -4,6 +4,7 @@ require("core-js/modules/es.symbol.js");
|
|
4
4
|
require("core-js/modules/es.symbol.description.js");
|
5
5
|
require("core-js/modules/es.symbol.iterator.js");
|
6
6
|
require("core-js/modules/es.array.slice.js");
|
7
|
+
require("core-js/modules/es.regexp.to-string.js");
|
7
8
|
require("core-js/modules/es.function.name.js");
|
8
9
|
require("core-js/modules/es.array.from.js");
|
9
10
|
require("core-js/modules/es.regexp.exec.js");
|
@@ -19,6 +19,7 @@ import "core-js/modules/es.symbol.js";
|
|
19
19
|
import "core-js/modules/es.symbol.description.js";
|
20
20
|
import "core-js/modules/es.symbol.iterator.js";
|
21
21
|
import "core-js/modules/es.array.slice.js";
|
22
|
+
import "core-js/modules/es.regexp.to-string.js";
|
22
23
|
import "core-js/modules/es.function.name.js";
|
23
24
|
import "core-js/modules/es.array.from.js";
|
24
25
|
import "core-js/modules/es.regexp.exec.js";
|
@@ -6,6 +6,7 @@ require("core-js/modules/es.symbol.description.js");
|
|
6
6
|
require("core-js/modules/es.symbol.iterator.js");
|
7
7
|
require("core-js/modules/es.array.from.js");
|
8
8
|
require("core-js/modules/es.array.slice.js");
|
9
|
+
require("core-js/modules/es.regexp.to-string.js");
|
9
10
|
require("core-js/modules/es.function.name.js");
|
10
11
|
require("core-js/modules/es.regexp.exec.js");
|
11
12
|
require("core-js/modules/es.symbol.to-primitive.js");
|
@@ -130,28 +131,25 @@ var TRAVERSAL_STRATEGIES = new Map([[TRAVERSAL_DF_PRE, depthFirstPreOrder], [TRA
|
|
130
131
|
*
|
131
132
|
*/
|
132
133
|
var TreeNode = /*#__PURE__*/function () {
|
133
|
-
/**
|
134
|
-
* A tree data.
|
135
|
-
*
|
136
|
-
* @type {object}
|
137
|
-
*/
|
138
|
-
|
139
|
-
/**
|
140
|
-
* A parent node.
|
141
|
-
*
|
142
|
-
* @type {TreeNode}
|
143
|
-
*/
|
144
|
-
|
145
|
-
/**
|
146
|
-
* A tree leaves.
|
147
|
-
*
|
148
|
-
* @type {TreeNode[]}
|
149
|
-
*/
|
150
|
-
|
151
134
|
function TreeNode(data) {
|
152
135
|
_classCallCheck(this, TreeNode);
|
136
|
+
/**
|
137
|
+
* A tree data.
|
138
|
+
*
|
139
|
+
* @type {object}
|
140
|
+
*/
|
153
141
|
_defineProperty(this, "data", {});
|
142
|
+
/**
|
143
|
+
* A parent node.
|
144
|
+
*
|
145
|
+
* @type {TreeNode}
|
146
|
+
*/
|
154
147
|
_defineProperty(this, "parent", null);
|
148
|
+
/**
|
149
|
+
* A tree leaves.
|
150
|
+
*
|
151
|
+
* @type {TreeNode[]}
|
152
|
+
*/
|
155
153
|
_defineProperty(this, "childs", []);
|
156
154
|
this.data = data;
|
157
155
|
}
|
@@ -17,6 +17,7 @@ import "core-js/modules/es.symbol.description.js";
|
|
17
17
|
import "core-js/modules/es.symbol.iterator.js";
|
18
18
|
import "core-js/modules/es.array.from.js";
|
19
19
|
import "core-js/modules/es.array.slice.js";
|
20
|
+
import "core-js/modules/es.regexp.to-string.js";
|
20
21
|
import "core-js/modules/es.function.name.js";
|
21
22
|
import "core-js/modules/es.regexp.exec.js";
|
22
23
|
import "core-js/modules/es.symbol.to-primitive.js";
|
@@ -122,28 +123,25 @@ var TRAVERSAL_STRATEGIES = new Map([[TRAVERSAL_DF_PRE, depthFirstPreOrder], [TRA
|
|
122
123
|
*
|
123
124
|
*/
|
124
125
|
var TreeNode = /*#__PURE__*/function () {
|
125
|
-
/**
|
126
|
-
* A tree data.
|
127
|
-
*
|
128
|
-
* @type {object}
|
129
|
-
*/
|
130
|
-
|
131
|
-
/**
|
132
|
-
* A parent node.
|
133
|
-
*
|
134
|
-
* @type {TreeNode}
|
135
|
-
*/
|
136
|
-
|
137
|
-
/**
|
138
|
-
* A tree leaves.
|
139
|
-
*
|
140
|
-
* @type {TreeNode[]}
|
141
|
-
*/
|
142
|
-
|
143
126
|
function TreeNode(data) {
|
144
127
|
_classCallCheck(this, TreeNode);
|
128
|
+
/**
|
129
|
+
* A tree data.
|
130
|
+
*
|
131
|
+
* @type {object}
|
132
|
+
*/
|
145
133
|
_defineProperty(this, "data", {});
|
134
|
+
/**
|
135
|
+
* A parent node.
|
136
|
+
*
|
137
|
+
* @type {TreeNode}
|
138
|
+
*/
|
146
139
|
_defineProperty(this, "parent", null);
|
140
|
+
/**
|
141
|
+
* A tree leaves.
|
142
|
+
*
|
143
|
+
* @type {TreeNode[]}
|
144
|
+
*/
|
147
145
|
_defineProperty(this, "childs", []);
|
148
146
|
this.data = data;
|
149
147
|
}
|
@@ -4,6 +4,7 @@ require("core-js/modules/es.symbol.js");
|
|
4
4
|
require("core-js/modules/es.symbol.description.js");
|
5
5
|
require("core-js/modules/es.symbol.iterator.js");
|
6
6
|
require("core-js/modules/es.array.slice.js");
|
7
|
+
require("core-js/modules/es.regexp.to-string.js");
|
7
8
|
require("core-js/modules/es.function.name.js");
|
8
9
|
require("core-js/modules/es.array.from.js");
|
9
10
|
require("core-js/modules/es.regexp.exec.js");
|
@@ -18,6 +18,7 @@ import "core-js/modules/es.symbol.js";
|
|
18
18
|
import "core-js/modules/es.symbol.description.js";
|
19
19
|
import "core-js/modules/es.symbol.iterator.js";
|
20
20
|
import "core-js/modules/es.array.slice.js";
|
21
|
+
import "core-js/modules/es.regexp.to-string.js";
|
21
22
|
import "core-js/modules/es.function.name.js";
|
22
23
|
import "core-js/modules/es.array.from.js";
|
23
24
|
import "core-js/modules/es.regexp.exec.js";
|
@@ -5,6 +5,7 @@ require("core-js/modules/es.symbol.description.js");
|
|
5
5
|
require("core-js/modules/es.symbol.iterator.js");
|
6
6
|
require("core-js/modules/es.array.from.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.regexp.exec.js");
|
10
11
|
exports.__esModule = true;
|
@@ -14,6 +14,7 @@ import "core-js/modules/es.symbol.description.js";
|
|
14
14
|
import "core-js/modules/es.symbol.iterator.js";
|
15
15
|
import "core-js/modules/es.array.from.js";
|
16
16
|
import "core-js/modules/es.array.slice.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
|
import { isFunction } from "../../helpers/function.mjs";
|
package/utils/ghostTable.js
CHANGED
@@ -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");
|
package/utils/ghostTable.mjs
CHANGED
@@ -18,6 +18,7 @@ import "core-js/modules/es.array.iterator.js";
|
|
18
18
|
import "core-js/modules/es.string.iterator.js";
|
19
19
|
import "core-js/modules/web.dom-collections.iterator.js";
|
20
20
|
import "core-js/modules/es.array.slice.js";
|
21
|
+
import "core-js/modules/es.regexp.to-string.js";
|
21
22
|
import "core-js/modules/es.function.name.js";
|
22
23
|
import "core-js/modules/es.array.from.js";
|
23
24
|
import "core-js/modules/es.regexp.exec.js";
|
package/utils/parseTable.js
CHANGED
@@ -21,6 +21,7 @@ require("core-js/modules/es.string.replace.js");
|
|
21
21
|
require("core-js/modules/es.object.to-string.js");
|
22
22
|
require("core-js/modules/es.array.concat.js");
|
23
23
|
require("core-js/modules/es.array.splice.js");
|
24
|
+
require("core-js/modules/es.string.repeat.js");
|
24
25
|
require("core-js/modules/es.string.match.js");
|
25
26
|
require("core-js/modules/es.array.last-index-of.js");
|
26
27
|
require("core-js/modules/es.array.reduce.js");
|
@@ -139,7 +140,10 @@ function _dataToHTML(input) {
|
|
139
140
|
}
|
140
141
|
for (var column = 0; column < columnsLen; column += 1) {
|
141
142
|
var cellData = rowData[column];
|
142
|
-
var parsedCellData = (0, _mixed.isEmpty)(cellData) ? '' : cellData.toString().replace(/</g, '<').replace(/>/g, '>').replace(/(<br(\s*|\/)>(\r\n|\n)?|\r\n|\n)/g, '<br>\r\n').replace(/\x20/gi,
|
143
|
+
var parsedCellData = (0, _mixed.isEmpty)(cellData) ? '' : cellData.toString().replace(/</g, '<').replace(/>/g, '>').replace(/(<br(\s*|\/)>(\r\n|\n)?|\r\n|\n)/g, '<br>\r\n').replace(/\x20{2,}/gi, function (substring) {
|
144
|
+
// The way how Excel serializes data with at least two spaces.
|
145
|
+
return "<span style=\"mso-spacerun: yes\">".concat(' '.repeat(substring.length - 1), " </span>");
|
146
|
+
}).replace(/\t/gi, '	');
|
143
147
|
columnsResult.push("<td>".concat(parsedCellData, "</td>"));
|
144
148
|
}
|
145
149
|
result.push.apply(result, ['<tr>'].concat(columnsResult, ['</tr>']));
|
package/utils/parseTable.mjs
CHANGED
@@ -14,6 +14,7 @@ import "core-js/modules/es.string.replace.js";
|
|
14
14
|
import "core-js/modules/es.object.to-string.js";
|
15
15
|
import "core-js/modules/es.array.concat.js";
|
16
16
|
import "core-js/modules/es.array.splice.js";
|
17
|
+
import "core-js/modules/es.string.repeat.js";
|
17
18
|
import "core-js/modules/es.string.match.js";
|
18
19
|
import "core-js/modules/es.array.last-index-of.js";
|
19
20
|
import "core-js/modules/es.array.reduce.js";
|
@@ -133,7 +134,10 @@ export function _dataToHTML(input) {
|
|
133
134
|
}
|
134
135
|
for (var column = 0; column < columnsLen; column += 1) {
|
135
136
|
var cellData = rowData[column];
|
136
|
-
var parsedCellData = isEmpty(cellData) ? '' : cellData.toString().replace(/</g, '<').replace(/>/g, '>').replace(/(<br(\s*|\/)>(\r\n|\n)?|\r\n|\n)/g, '<br>\r\n').replace(/\x20/gi,
|
137
|
+
var parsedCellData = isEmpty(cellData) ? '' : cellData.toString().replace(/</g, '<').replace(/>/g, '>').replace(/(<br(\s*|\/)>(\r\n|\n)?|\r\n|\n)/g, '<br>\r\n').replace(/\x20{2,}/gi, function (substring) {
|
138
|
+
// The way how Excel serializes data with at least two spaces.
|
139
|
+
return "<span style=\"mso-spacerun: yes\">".concat(' '.repeat(substring.length - 1), " </span>");
|
140
|
+
}).replace(/\t/gi, '	');
|
137
141
|
columnsResult.push("<td>".concat(parsedCellData, "</td>"));
|
138
142
|
}
|
139
143
|
result.push.apply(result, ['<tr>'].concat(columnsResult, ['</tr>']));
|
package/utils/staticRegister.js
CHANGED
@@ -5,6 +5,7 @@ require("core-js/modules/es.symbol.description.js");
|
|
5
5
|
require("core-js/modules/es.symbol.iterator.js");
|
6
6
|
require("core-js/modules/es.array.from.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.regexp.exec.js");
|
10
11
|
exports.__esModule = true;
|
package/utils/staticRegister.mjs
CHANGED
@@ -14,6 +14,7 @@ import "core-js/modules/es.symbol.description.js";
|
|
14
14
|
import "core-js/modules/es.symbol.iterator.js";
|
15
15
|
import "core-js/modules/es.array.from.js";
|
16
16
|
import "core-js/modules/es.array.slice.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
|
export var collection = new Map();
|
package/focusManager.d.ts
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
type FocusMode = 'cell' | 'mixed';
|
2
|
-
|
3
|
-
export interface FocusManager {
|
4
|
-
getFocusMode(): FocusMode;
|
5
|
-
setFocusMode(focusMode: FocusMode): void;
|
6
|
-
getRefocusDelay(): number;
|
7
|
-
setRefocusDelay(delay: number): void;
|
8
|
-
setRefocusElementGetter(getterFn: () => HTMLElement): void;
|
9
|
-
getRefocusElement(): HTMLElement | void;
|
10
|
-
focusOnHighlightedCell(): void;
|
11
|
-
refocusToEditorTextarea(delay: number): void;
|
12
|
-
}
|
package/focusManager.js
DELETED
@@ -1,275 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
require("core-js/modules/es.symbol.to-primitive.js");
|
4
|
-
require("core-js/modules/es.date.to-primitive.js");
|
5
|
-
require("core-js/modules/es.symbol.js");
|
6
|
-
require("core-js/modules/es.symbol.description.js");
|
7
|
-
require("core-js/modules/es.number.constructor.js");
|
8
|
-
require("core-js/modules/es.symbol.iterator.js");
|
9
|
-
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); }
|
10
|
-
exports.__esModule = true;
|
11
|
-
exports.FocusManager = void 0;
|
12
|
-
require("core-js/modules/es.object.freeze.js");
|
13
|
-
require("core-js/modules/es.array.concat.js");
|
14
|
-
require("core-js/modules/es.array.includes.js");
|
15
|
-
require("core-js/modules/es.string.includes.js");
|
16
|
-
require("core-js/modules/es.object.values.js");
|
17
|
-
require("core-js/modules/es.array.iterator.js");
|
18
|
-
require("core-js/modules/es.object.to-string.js");
|
19
|
-
require("core-js/modules/es.string.iterator.js");
|
20
|
-
require("core-js/modules/es.weak-map.js");
|
21
|
-
require("core-js/modules/web.dom-collections.iterator.js");
|
22
|
-
require("core-js/modules/es.weak-set.js");
|
23
|
-
var _console = require("./helpers/console");
|
24
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
25
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
26
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
27
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
28
|
-
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
29
|
-
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
30
|
-
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
31
|
-
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
32
|
-
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
33
|
-
function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
|
34
|
-
function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
|
35
|
-
function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
|
36
|
-
function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
|
37
|
-
function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
|
38
|
-
/**
|
39
|
-
* Possible focus modes.
|
40
|
-
* - CELL - The browser's focus stays on the lastly selected cell element.
|
41
|
-
* - MIXED - The browser's focus switches from the lastly selected cell element to the currently active editor's
|
42
|
-
* `TEXTAREA` element after a delay defined in the manager.
|
43
|
-
*
|
44
|
-
* @type {{CELL: string, MIXED: string}}
|
45
|
-
*/
|
46
|
-
var FOCUS_MODES = Object.freeze({
|
47
|
-
CELL: 'cell',
|
48
|
-
MIXED: 'mixed'
|
49
|
-
});
|
50
|
-
|
51
|
-
/**
|
52
|
-
* Manages the browser's focus in the table.
|
53
|
-
*/
|
54
|
-
var _hot = /*#__PURE__*/new WeakMap();
|
55
|
-
var _focusMode = /*#__PURE__*/new WeakMap();
|
56
|
-
var _refocusDelay = /*#__PURE__*/new WeakMap();
|
57
|
-
var _refocusElementGetter = /*#__PURE__*/new WeakMap();
|
58
|
-
var _manageFocus = /*#__PURE__*/new WeakSet();
|
59
|
-
var _onUpdateSettings = /*#__PURE__*/new WeakSet();
|
60
|
-
var FocusManager = /*#__PURE__*/function () {
|
61
|
-
/**
|
62
|
-
* The Handsontable instance.
|
63
|
-
*
|
64
|
-
* @private
|
65
|
-
*/
|
66
|
-
|
67
|
-
/**
|
68
|
-
* The currently enabled focus mode.
|
69
|
-
* Can be either:
|
70
|
-
*
|
71
|
-
* - 'cell' - The browser's focus stays on the lastly selected cell element.
|
72
|
-
* - 'mixed' - The browser's focus switches from the lastly selected cell element to the currently active editor's
|
73
|
-
* `TEXTAREA` element after a delay defined in the manager.
|
74
|
-
*
|
75
|
-
* @type {string}
|
76
|
-
* @private
|
77
|
-
*/
|
78
|
-
|
79
|
-
/**
|
80
|
-
* The delay after which the focus switches from the lastly selected cell to the active editor's `TEXTAREA`
|
81
|
-
* element if the focus mode is set to 'mixed'.
|
82
|
-
*
|
83
|
-
* @type {number}
|
84
|
-
* @private
|
85
|
-
*/
|
86
|
-
|
87
|
-
/**
|
88
|
-
* Getter function for the element to be used when refocusing the browser after a delay. If `null`, the active
|
89
|
-
* editor's `TEXTAREA` element will be used.
|
90
|
-
*
|
91
|
-
* @type {null|Function}
|
92
|
-
* @private
|
93
|
-
*/
|
94
|
-
|
95
|
-
function FocusManager(hotInstance) {
|
96
|
-
var _this = this;
|
97
|
-
_classCallCheck(this, FocusManager);
|
98
|
-
/**
|
99
|
-
* Update the manager configuration after calling `updateSettings`.
|
100
|
-
*
|
101
|
-
* @private
|
102
|
-
* @param {object} newSettings The new settings passed to the `updateSettings` method.
|
103
|
-
*/
|
104
|
-
_classPrivateMethodInitSpec(this, _onUpdateSettings);
|
105
|
-
/**
|
106
|
-
* Manage the browser's focus after cell selection.
|
107
|
-
*
|
108
|
-
* @private
|
109
|
-
*/
|
110
|
-
_classPrivateMethodInitSpec(this, _manageFocus);
|
111
|
-
_classPrivateFieldInitSpec(this, _hot, {
|
112
|
-
writable: true,
|
113
|
-
value: void 0
|
114
|
-
});
|
115
|
-
_classPrivateFieldInitSpec(this, _focusMode, {
|
116
|
-
writable: true,
|
117
|
-
value: void 0
|
118
|
-
});
|
119
|
-
_classPrivateFieldInitSpec(this, _refocusDelay, {
|
120
|
-
writable: true,
|
121
|
-
value: 50
|
122
|
-
});
|
123
|
-
_classPrivateFieldInitSpec(this, _refocusElementGetter, {
|
124
|
-
writable: true,
|
125
|
-
value: null
|
126
|
-
});
|
127
|
-
var hotSettings = hotInstance.getSettings();
|
128
|
-
_classPrivateFieldSet(this, _hot, hotInstance);
|
129
|
-
_classPrivateFieldSet(this, _focusMode, hotSettings.imeFastEdit ? FOCUS_MODES.MIXED : FOCUS_MODES.CELL);
|
130
|
-
_classPrivateFieldGet(this, _hot).addHook('afterUpdateSettings', function () {
|
131
|
-
var _classPrivateMethodGe;
|
132
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
133
|
-
args[_key] = arguments[_key];
|
134
|
-
}
|
135
|
-
return (_classPrivateMethodGe = _classPrivateMethodGet(_this, _onUpdateSettings, _onUpdateSettings2)).call.apply(_classPrivateMethodGe, [_this].concat(args));
|
136
|
-
});
|
137
|
-
_classPrivateFieldGet(this, _hot).addHook('afterSelectionEnd', function () {
|
138
|
-
var _classPrivateMethodGe2;
|
139
|
-
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
140
|
-
args[_key2] = arguments[_key2];
|
141
|
-
}
|
142
|
-
return (_classPrivateMethodGe2 = _classPrivateMethodGet(_this, _manageFocus, _manageFocus2)).call.apply(_classPrivateMethodGe2, [_this].concat(args));
|
143
|
-
});
|
144
|
-
}
|
145
|
-
|
146
|
-
/**
|
147
|
-
* Get the current focus mode.
|
148
|
-
*
|
149
|
-
* @returns {'cell' | 'mixed'}
|
150
|
-
*/
|
151
|
-
_createClass(FocusManager, [{
|
152
|
-
key: "getFocusMode",
|
153
|
-
value: function getFocusMode() {
|
154
|
-
return _classPrivateFieldGet(this, _focusMode);
|
155
|
-
}
|
156
|
-
|
157
|
-
/**
|
158
|
-
* Set the focus mode.
|
159
|
-
*
|
160
|
-
* @param {'cell' | 'mixed'} focusMode The new focus mode.
|
161
|
-
*/
|
162
|
-
}, {
|
163
|
-
key: "setFocusMode",
|
164
|
-
value: function setFocusMode(focusMode) {
|
165
|
-
if (Object.values(FOCUS_MODES).includes(focusMode)) {
|
166
|
-
_classPrivateFieldSet(this, _focusMode, focusMode);
|
167
|
-
} else {
|
168
|
-
(0, _console.warn)("\"".concat(focusMode, "\" is not a valid focus mode."));
|
169
|
-
}
|
170
|
-
}
|
171
|
-
|
172
|
-
/**
|
173
|
-
* Get the delay after which the focus will change from the cell elements to the active editor's `TEXTAREA`
|
174
|
-
* element if the focus mode is set to 'mixed'.
|
175
|
-
*
|
176
|
-
* @returns {number} Delay in milliseconds.
|
177
|
-
*/
|
178
|
-
}, {
|
179
|
-
key: "getRefocusDelay",
|
180
|
-
value: function getRefocusDelay() {
|
181
|
-
return _classPrivateFieldGet(this, _refocusDelay);
|
182
|
-
}
|
183
|
-
|
184
|
-
/**
|
185
|
-
* Set the delay after which the focus will change from the cell elements to the active editor's `TEXTAREA`
|
186
|
-
* element if the focus mode is set to 'mixed'.
|
187
|
-
*
|
188
|
-
* @param {number} delay Delay in milliseconds.
|
189
|
-
*/
|
190
|
-
}, {
|
191
|
-
key: "setRefocusDelay",
|
192
|
-
value: function setRefocusDelay(delay) {
|
193
|
-
_classPrivateFieldSet(this, _refocusDelay, delay);
|
194
|
-
}
|
195
|
-
|
196
|
-
/**
|
197
|
-
* Set the function to be used as the "refocus element" getter. It should return a focusable HTML element.
|
198
|
-
*
|
199
|
-
* @param {Function} getRefocusElementFunction The refocus element getter.
|
200
|
-
*/
|
201
|
-
}, {
|
202
|
-
key: "setRefocusElementGetter",
|
203
|
-
value: function setRefocusElementGetter(getRefocusElementFunction) {
|
204
|
-
_classPrivateFieldSet(this, _refocusElementGetter, getRefocusElementFunction);
|
205
|
-
}
|
206
|
-
|
207
|
-
/**
|
208
|
-
* Get the element to be used when refocusing the browser after a delay in case of the focus mode being 'mixed'.
|
209
|
-
*
|
210
|
-
* @returns {HTMLTextAreaElement|HTMLElement|undefined}
|
211
|
-
*/
|
212
|
-
}, {
|
213
|
-
key: "getRefocusElement",
|
214
|
-
value: function getRefocusElement() {
|
215
|
-
if (typeof _classPrivateFieldGet(this, _refocusElementGetter) === 'function') {
|
216
|
-
return _classPrivateFieldGet(this, _refocusElementGetter).call(this);
|
217
|
-
} else {
|
218
|
-
var _classPrivateFieldGet2;
|
219
|
-
return (_classPrivateFieldGet2 = _classPrivateFieldGet(this, _hot).getActiveEditor()) === null || _classPrivateFieldGet2 === void 0 ? void 0 : _classPrivateFieldGet2.TEXTAREA;
|
220
|
-
}
|
221
|
-
}
|
222
|
-
|
223
|
-
/**
|
224
|
-
* Set the browser's focus to the highlighted cell of the last selection.
|
225
|
-
*/
|
226
|
-
}, {
|
227
|
-
key: "focusOnHighlightedCell",
|
228
|
-
value: function focusOnHighlightedCell() {
|
229
|
-
var _classPrivateFieldGet3;
|
230
|
-
var lastSelectedRange = _classPrivateFieldGet(this, _hot).getSelectedRangeLast();
|
231
|
-
var selectedCellCoords = lastSelectedRange.highlight;
|
232
|
-
var selectedCell = _classPrivateFieldGet(this, _hot).getCell(selectedCellCoords.row, selectedCellCoords.col);
|
233
|
-
if (selectedCell && !((_classPrivateFieldGet3 = _classPrivateFieldGet(this, _hot).getActiveEditor()) !== null && _classPrivateFieldGet3 !== void 0 && _classPrivateFieldGet3.isOpened())) {
|
234
|
-
_classPrivateFieldGet(this, _hot).getCell(selectedCellCoords.row, selectedCellCoords.col).focus({
|
235
|
-
preventScroll: true
|
236
|
-
});
|
237
|
-
}
|
238
|
-
}
|
239
|
-
|
240
|
-
/**
|
241
|
-
* Set the focus to the active editor's `TEXTAREA` element after the provided delay. If no delay is provided, it
|
242
|
-
* will be taken from the manager's configuration.
|
243
|
-
*
|
244
|
-
* @param {number} delay Delay in milliseconds.
|
245
|
-
*/
|
246
|
-
}, {
|
247
|
-
key: "refocusToEditorTextarea",
|
248
|
-
value: function refocusToEditorTextarea() {
|
249
|
-
var delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _classPrivateFieldGet(this, _refocusDelay);
|
250
|
-
var refocusElement = this.getRefocusElement();
|
251
|
-
|
252
|
-
// Re-focus on the editor's `TEXTAREA` element (or a predefined element) if the `imeFastEdit` option is enabled.
|
253
|
-
if (_classPrivateFieldGet(this, _hot).getSettings().imeFastEdit && !!refocusElement) {
|
254
|
-
_classPrivateFieldGet(this, _hot)._registerTimeout(function () {
|
255
|
-
refocusElement.select();
|
256
|
-
}, delay);
|
257
|
-
}
|
258
|
-
}
|
259
|
-
}]);
|
260
|
-
return FocusManager;
|
261
|
-
}();
|
262
|
-
exports.FocusManager = FocusManager;
|
263
|
-
function _manageFocus2() {
|
264
|
-
this.focusOnHighlightedCell();
|
265
|
-
if (this.getFocusMode() === FOCUS_MODES.MIXED) {
|
266
|
-
this.refocusToEditorTextarea();
|
267
|
-
}
|
268
|
-
}
|
269
|
-
function _onUpdateSettings2(newSettings) {
|
270
|
-
if (newSettings.imeFastEdit && this.getFocusMode() !== FOCUS_MODES.MIXED) {
|
271
|
-
this.setFocusMode(FOCUS_MODES.MIXED);
|
272
|
-
} else if (!newSettings.imeFastEdit && this.getFocusMode() !== FOCUS_MODES.CELL) {
|
273
|
-
this.setFocusMode(FOCUS_MODES.CELL);
|
274
|
-
}
|
275
|
-
}
|