handsontable 14.2.0 → 14.3.0-next-3fa6b18-20240410
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.
- package/3rdparty/walkontable/src/calculator/renderAllColumns.js +1 -1
- package/3rdparty/walkontable/src/calculator/renderAllColumns.mjs +1 -1
- package/3rdparty/walkontable/src/calculator/renderAllRows.js +1 -1
- package/3rdparty/walkontable/src/calculator/renderAllRows.mjs +1 -1
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +13 -18
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +13 -18
- package/3rdparty/walkontable/src/calculator/viewportRows.js +11 -16
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +11 -16
- package/3rdparty/walkontable/src/cell/coords.js +13 -18
- package/3rdparty/walkontable/src/cell/coords.mjs +13 -18
- package/3rdparty/walkontable/src/cell/range.d.ts +2 -1
- package/3rdparty/walkontable/src/cell/range.js +42 -30
- package/3rdparty/walkontable/src/cell/range.mjs +42 -30
- package/3rdparty/walkontable/src/core/_base.js +2 -2
- package/3rdparty/walkontable/src/core/_base.mjs +2 -2
- package/3rdparty/walkontable/src/core/clone.js +1 -1
- package/3rdparty/walkontable/src/core/clone.mjs +1 -1
- package/3rdparty/walkontable/src/event.js +72 -104
- package/3rdparty/walkontable/src/event.mjs +72 -104
- package/3rdparty/walkontable/src/filter/column.js +1 -1
- package/3rdparty/walkontable/src/filter/column.mjs +1 -1
- package/3rdparty/walkontable/src/filter/row.js +1 -1
- package/3rdparty/walkontable/src/filter/row.mjs +1 -1
- package/3rdparty/walkontable/src/index.js +1 -1
- package/3rdparty/walkontable/src/overlay/_base.js +1 -1
- package/3rdparty/walkontable/src/overlay/_base.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/bottom.js +1 -1
- package/3rdparty/walkontable/src/overlay/bottom.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/inlineStart.js +15 -1
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +16 -2
- package/3rdparty/walkontable/src/overlay/top.js +12 -1
- package/3rdparty/walkontable/src/overlay/top.mjs +13 -2
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +1 -1
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +1 -1
- package/3rdparty/walkontable/src/overlays.js +47 -5
- package/3rdparty/walkontable/src/overlays.mjs +47 -5
- package/3rdparty/walkontable/src/renderer/_base.js +1 -1
- package/3rdparty/walkontable/src/renderer/_base.mjs +1 -1
- package/3rdparty/walkontable/src/renderer/cells.js +1 -1
- package/3rdparty/walkontable/src/renderer/cells.mjs +1 -1
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +1 -1
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +1 -1
- package/3rdparty/walkontable/src/renderer/rows.js +1 -1
- package/3rdparty/walkontable/src/renderer/rows.mjs +1 -1
- package/3rdparty/walkontable/src/renderer/table.js +1 -1
- package/3rdparty/walkontable/src/renderer/table.mjs +1 -1
- package/3rdparty/walkontable/src/scroll.js +16 -18
- package/3rdparty/walkontable/src/scroll.mjs +16 -18
- package/3rdparty/walkontable/src/selection/manager.js +48 -69
- package/3rdparty/walkontable/src/selection/manager.mjs +48 -69
- package/3rdparty/walkontable/src/selection/scanner.js +33 -42
- package/3rdparty/walkontable/src/selection/scanner.mjs +33 -42
- package/3rdparty/walkontable/src/settings.js +1 -1
- package/3rdparty/walkontable/src/settings.mjs +1 -1
- package/3rdparty/walkontable/src/table.js +1 -1
- package/3rdparty/walkontable/src/table.mjs +1 -1
- package/3rdparty/walkontable/src/utils/column.js +1 -1
- package/3rdparty/walkontable/src/utils/column.mjs +1 -1
- package/3rdparty/walkontable/src/utils/columnStretching.js +28 -45
- package/3rdparty/walkontable/src/utils/columnStretching.mjs +28 -45
- package/3rdparty/walkontable/src/utils/nodesPool.js +1 -1
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +1 -1
- package/3rdparty/walkontable/src/utils/orderView/view.js +2 -2
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +2 -2
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +1 -1
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +1 -1
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +1 -1
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +1 -1
- package/3rdparty/walkontable/src/utils/row.js +1 -1
- package/3rdparty/walkontable/src/utils/row.mjs +1 -1
- package/CHANGELOG.md +20 -0
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core/viewportScroll/index.js +4 -1
- package/core/viewportScroll/index.mjs +4 -1
- package/core/viewportScroll/scrollStrategies/focusScroll.js +15 -0
- package/core/viewportScroll/scrollStrategies/focusScroll.mjs +11 -0
- package/core.d.ts +4 -3
- package/core.js +98 -43
- package/core.mjs +98 -43
- package/dataMap/dataMap.js +1 -1
- package/dataMap/dataMap.mjs +1 -1
- package/dataMap/dataSource.js +2 -2
- package/dataMap/dataSource.mjs +2 -2
- package/dataMap/metaManager/lazyFactoryMap.js +3 -5
- package/dataMap/metaManager/lazyFactoryMap.mjs +2 -4
- package/dataMap/metaManager/metaLayers/cellMeta.js +2 -2
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +2 -2
- package/dataMap/metaManager/metaLayers/columnMeta.js +1 -1
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -1
- package/dataMap/metaManager/metaLayers/globalMeta.js +1 -1
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +1 -1
- package/dataMap/metaManager/metaLayers/tableMeta.js +1 -1
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +1 -1
- package/dataMap/metaManager/metaSchema.js +272 -272
- package/dataMap/metaManager/metaSchema.mjs +272 -272
- package/dataMap/metaManager/mods/dynamicCellMeta.js +1 -1
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +1 -1
- package/dataMap/metaManager/mods/extendMetaProperties.js +1 -1
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +1 -1
- package/dataMap/replaceData.js +1 -1
- package/dataMap/replaceData.mjs +1 -1
- package/dist/handsontable.css +4 -4
- package/dist/handsontable.full.css +4 -4
- package/dist/handsontable.full.js +9814 -10020
- package/dist/handsontable.full.min.css +3 -3
- package/dist/handsontable.full.min.js +292 -292
- package/dist/handsontable.js +7484 -7056
- package/dist/handsontable.min.css +3 -3
- package/dist/handsontable.min.js +25 -25
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/ar-AR.min.js +1 -1
- package/dist/languages/cs-CZ.min.js +1 -1
- package/dist/languages/de-CH.min.js +1 -1
- package/dist/languages/de-DE.min.js +1 -1
- package/dist/languages/en-US.min.js +1 -1
- package/dist/languages/es-MX.min.js +1 -1
- package/dist/languages/fr-FR.min.js +1 -1
- package/dist/languages/hr-HR.min.js +1 -1
- package/dist/languages/it-IT.min.js +1 -1
- package/dist/languages/ja-JP.min.js +1 -1
- package/dist/languages/ko-KR.min.js +1 -1
- package/dist/languages/lv-LV.min.js +1 -1
- package/dist/languages/nb-NO.min.js +1 -1
- package/dist/languages/nl-NL.min.js +1 -1
- package/dist/languages/pl-PL.min.js +1 -1
- package/dist/languages/pt-BR.min.js +1 -1
- package/dist/languages/ru-RU.min.js +1 -1
- package/dist/languages/sr-SP.min.js +1 -1
- package/dist/languages/zh-CN.min.js +1 -1
- package/dist/languages/zh-TW.min.js +1 -1
- package/editorManager.js +26 -24
- package/editorManager.mjs +26 -24
- package/editors/autocompleteEditor/autocompleteEditor.js +7 -11
- package/editors/autocompleteEditor/autocompleteEditor.mjs +7 -11
- package/editors/baseEditor/baseEditor.js +1 -1
- package/editors/baseEditor/baseEditor.mjs +1 -1
- package/editors/dateEditor/dateEditor.js +49 -11
- package/editors/dateEditor/dateEditor.mjs +49 -11
- package/editors/selectEditor/selectEditor.js +20 -19
- package/editors/selectEditor/selectEditor.mjs +20 -19
- package/editors/textEditor/textEditor.js +1 -1
- package/editors/textEditor/textEditor.mjs +1 -1
- package/eventManager.js +2 -2
- package/eventManager.mjs +2 -2
- package/focusManager.js +64 -82
- package/focusManager.mjs +64 -82
- package/helpers/dom/element.js +23 -1
- package/helpers/dom/element.mjs +21 -1
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/helpers/object.js +2 -2
- package/helpers/object.mjs +2 -2
- package/i18n/languages/ar-AR.d.ts +5 -0
- package/i18n/languages/ar-AR.js +1 -1
- package/i18n/languages/cs-CZ.d.ts +5 -0
- package/i18n/languages/cs-CZ.js +1 -1
- package/i18n/languages/de-CH.js +1 -1
- package/i18n/languages/de-DE.js +1 -1
- package/i18n/languages/en-US.js +1 -1
- package/i18n/languages/es-MX.js +1 -1
- package/i18n/languages/fr-FR.js +1 -1
- package/i18n/languages/hr-HR.d.ts +5 -0
- package/i18n/languages/hr-HR.js +1 -1
- package/i18n/languages/it-IT.js +1 -1
- package/i18n/languages/ja-JP.js +1 -1
- package/i18n/languages/ko-KR.js +1 -1
- package/i18n/languages/lv-LV.js +1 -1
- package/i18n/languages/nb-NO.js +1 -1
- package/i18n/languages/nl-NL.js +1 -1
- package/i18n/languages/pl-PL.js +1 -1
- package/i18n/languages/pt-BR.js +1 -1
- package/i18n/languages/ru-RU.js +1 -1
- package/i18n/languages/sr-SP.d.ts +5 -0
- package/i18n/languages/sr-SP.js +1 -1
- package/i18n/languages/zh-CN.js +1 -1
- package/i18n/languages/zh-TW.js +1 -1
- package/i18n/registry.js +1 -1
- package/index.d.ts +10 -0
- package/index.js +1 -1
- package/package.json +14 -10
- package/pluginHooks.d.ts +4 -3
- package/pluginHooks.js +143 -82
- package/pluginHooks.mjs +143 -82
- package/plugins/autoColumnSize/autoColumnSize.js +50 -66
- package/plugins/autoColumnSize/autoColumnSize.mjs +50 -66
- package/plugins/autoRowSize/autoRowSize.js +29 -35
- package/plugins/autoRowSize/autoRowSize.mjs +29 -35
- package/plugins/autofill/autofill.js +31 -39
- package/plugins/autofill/autofill.mjs +31 -39
- package/plugins/base/base.js +13 -18
- package/plugins/base/base.mjs +13 -18
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +6 -6
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +6 -6
- package/plugins/collapsibleColumns/collapsibleColumns.js +60 -51
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +60 -51
- package/plugins/columnSorting/columnSorting.js +50 -46
- package/plugins/columnSorting/columnSorting.mjs +50 -46
- package/plugins/columnSorting/columnStatesManager.js +1 -1
- package/plugins/columnSorting/columnStatesManager.mjs +1 -1
- package/plugins/columnSummary/columnSummary.js +36 -40
- package/plugins/columnSummary/columnSummary.mjs +36 -40
- package/plugins/columnSummary/endpoints.js +1 -1
- package/plugins/columnSummary/endpoints.mjs +1 -1
- package/plugins/comments/commentEditor.js +1 -1
- package/plugins/comments/commentEditor.mjs +1 -1
- package/plugins/comments/comments.js +117 -159
- package/plugins/comments/comments.mjs +117 -159
- package/plugins/comments/contextMenuItem/addEditComment.js +1 -1
- package/plugins/comments/contextMenuItem/readOnlyComment.js +1 -1
- package/plugins/comments/contextMenuItem/removeComment.js +1 -1
- package/plugins/comments/displaySwitch.js +1 -1
- package/plugins/comments/displaySwitch.mjs +1 -1
- package/plugins/contextMenu/commandExecutor.js +1 -1
- package/plugins/contextMenu/commandExecutor.mjs +1 -1
- package/plugins/contextMenu/contextMenu.js +24 -30
- package/plugins/contextMenu/contextMenu.mjs +24 -30
- package/plugins/contextMenu/itemsFactory.js +2 -2
- package/plugins/contextMenu/itemsFactory.mjs +2 -2
- package/plugins/contextMenu/menu/cursor.js +1 -1
- package/plugins/contextMenu/menu/cursor.mjs +1 -1
- package/plugins/contextMenu/menu/defaultShortcutsList.js +26 -10
- package/plugins/contextMenu/menu/defaultShortcutsList.mjs +26 -10
- package/plugins/contextMenu/menu/menu.js +14 -22
- package/plugins/contextMenu/menu/menu.mjs +14 -22
- package/plugins/contextMenu/menu/positioner.js +41 -58
- package/plugins/contextMenu/menu/positioner.mjs +41 -58
- package/plugins/contextMenu/predefinedItems/alignment.js +1 -1
- package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
- package/plugins/contextMenu/predefinedItems/columnLeft.js +1 -1
- package/plugins/contextMenu/predefinedItems/columnRight.js +1 -1
- package/plugins/contextMenu/predefinedItems/index.js +1 -1
- package/plugins/contextMenu/predefinedItems/readOnly.js +1 -1
- package/plugins/contextMenu/predefinedItems/redo.js +1 -1
- package/plugins/contextMenu/predefinedItems/removeColumn.js +1 -1
- package/plugins/contextMenu/predefinedItems/removeRow.js +1 -1
- package/plugins/contextMenu/predefinedItems/rowAbove.js +1 -1
- package/plugins/contextMenu/predefinedItems/rowBelow.js +1 -1
- package/plugins/contextMenu/predefinedItems/undo.js +1 -1
- package/plugins/copyPaste/contextMenuItem/cut.js +1 -1
- package/plugins/copyPaste/copyPaste.js +120 -161
- package/plugins/copyPaste/copyPaste.mjs +120 -161
- package/plugins/copyPaste/copyableRanges.js +43 -66
- package/plugins/copyPaste/copyableRanges.mjs +43 -66
- package/plugins/customBorders/contextMenuItem/bottom.js +1 -1
- package/plugins/customBorders/contextMenuItem/left.js +1 -1
- package/plugins/customBorders/contextMenuItem/noBorders.js +1 -1
- package/plugins/customBorders/contextMenuItem/right.js +1 -1
- package/plugins/customBorders/contextMenuItem/top.js +1 -1
- package/plugins/customBorders/customBorders.js +14 -16
- package/plugins/customBorders/customBorders.mjs +13 -15
- package/plugins/dragToScroll/dragToScroll.js +7 -7
- package/plugins/dragToScroll/dragToScroll.mjs +7 -7
- package/plugins/dropdownMenu/dropdownMenu.js +84 -110
- package/plugins/dropdownMenu/dropdownMenu.mjs +84 -110
- package/plugins/exportFile/dataProvider.js +2 -2
- package/plugins/exportFile/dataProvider.mjs +2 -2
- package/plugins/exportFile/exportFile.js +2 -2
- package/plugins/exportFile/exportFile.mjs +1 -1
- package/plugins/exportFile/types/_base.js +1 -1
- package/plugins/exportFile/types/_base.mjs +1 -1
- package/plugins/filters/component/_base.js +1 -1
- package/plugins/filters/component/_base.mjs +1 -1
- package/plugins/filters/component/actionBar.js +11 -11
- package/plugins/filters/component/actionBar.mjs +9 -9
- package/plugins/filters/component/condition.js +15 -17
- package/plugins/filters/component/condition.mjs +14 -16
- package/plugins/filters/component/operators.js +7 -7
- package/plugins/filters/component/operators.mjs +7 -7
- package/plugins/filters/component/value.js +26 -30
- package/plugins/filters/component/value.mjs +25 -29
- package/plugins/filters/condition/beginsWith.js +1 -1
- package/plugins/filters/condition/between.js +1 -1
- package/plugins/filters/condition/contains.js +1 -1
- package/plugins/filters/condition/date/after.js +1 -1
- package/plugins/filters/condition/date/before.js +1 -1
- package/plugins/filters/condition/date/today.js +1 -1
- package/plugins/filters/condition/date/tomorrow.js +1 -1
- package/plugins/filters/condition/date/yesterday.js +1 -1
- package/plugins/filters/condition/empty.js +1 -1
- package/plugins/filters/condition/endsWith.js +1 -1
- package/plugins/filters/condition/equal.js +1 -1
- package/plugins/filters/condition/greaterThan.js +1 -1
- package/plugins/filters/condition/greaterThanOrEqual.js +1 -1
- package/plugins/filters/condition/lessThan.js +1 -1
- package/plugins/filters/condition/lessThanOrEqual.js +1 -1
- package/plugins/filters/condition/none.js +1 -1
- package/plugins/filters/condition/notBetween.js +1 -1
- package/plugins/filters/condition/notContains.js +1 -1
- package/plugins/filters/condition/notEmpty.js +1 -1
- package/plugins/filters/condition/notEqual.js +1 -1
- package/plugins/filters/conditionCollection.js +1 -1
- package/plugins/filters/conditionCollection.mjs +1 -1
- package/plugins/filters/conditionUpdateObserver.js +23 -25
- package/plugins/filters/conditionUpdateObserver.mjs +23 -25
- package/plugins/filters/dataFilter.js +2 -2
- package/plugins/filters/dataFilter.mjs +2 -2
- package/plugins/filters/filters.js +84 -98
- package/plugins/filters/filters.mjs +83 -97
- package/plugins/filters/logicalOperations/conjunction.js +1 -1
- package/plugins/filters/logicalOperations/disjunction.js +1 -1
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +1 -1
- package/plugins/filters/ui/_base.js +2 -2
- package/plugins/filters/ui/_base.mjs +1 -1
- package/plugins/filters/ui/input.js +13 -19
- package/plugins/filters/ui/input.mjs +13 -19
- package/plugins/filters/ui/link.js +8 -13
- package/plugins/filters/ui/link.mjs +8 -13
- package/plugins/filters/ui/multipleSelect.js +86 -113
- package/plugins/filters/ui/multipleSelect.mjs +85 -112
- package/plugins/filters/ui/radioInput.js +12 -20
- package/plugins/filters/ui/radioInput.mjs +12 -20
- package/plugins/filters/ui/select.js +51 -73
- package/plugins/filters/ui/select.mjs +49 -71
- package/plugins/formulas/formulas.js +270 -328
- package/plugins/formulas/formulas.mjs +271 -329
- package/plugins/formulas/indexSyncer/axisSyncer.js +38 -61
- package/plugins/formulas/indexSyncer/axisSyncer.mjs +38 -61
- package/plugins/formulas/indexSyncer/index.js +25 -48
- package/plugins/formulas/indexSyncer/index.mjs +25 -48
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +1 -1
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +1 -1
- package/plugins/hiddenColumns/hiddenColumns.js +68 -87
- package/plugins/hiddenColumns/hiddenColumns.mjs +68 -87
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +1 -1
- package/plugins/hiddenRows/contextMenuItem/showRow.js +1 -1
- package/plugins/hiddenRows/hiddenRows.js +67 -86
- package/plugins/hiddenRows/hiddenRows.mjs +67 -86
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +24 -32
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +25 -33
- package/plugins/manualColumnMove/manualColumnMove.js +133 -177
- package/plugins/manualColumnMove/manualColumnMove.mjs +133 -177
- package/plugins/manualColumnMove/ui/_base.js +1 -1
- package/plugins/manualColumnMove/ui/_base.mjs +1 -1
- package/plugins/manualColumnResize/manualColumnResize.js +169 -230
- package/plugins/manualColumnResize/manualColumnResize.mjs +169 -230
- package/plugins/manualRowMove/manualRowMove.js +106 -135
- package/plugins/manualRowMove/manualRowMove.mjs +106 -135
- package/plugins/manualRowMove/ui/_base.js +1 -1
- package/plugins/manualRowMove/ui/_base.mjs +1 -1
- package/plugins/manualRowResize/manualRowResize.js +150 -209
- package/plugins/manualRowResize/manualRowResize.mjs +150 -209
- package/plugins/mergeCells/calculations/autofill.js +1 -1
- package/plugins/mergeCells/calculations/autofill.mjs +1 -1
- package/plugins/mergeCells/calculations/selection.js +3 -72
- package/plugins/mergeCells/calculations/selection.mjs +3 -72
- package/plugins/mergeCells/cellCoords.js +1 -1
- package/plugins/mergeCells/cellCoords.mjs +1 -1
- package/plugins/mergeCells/cellsCollection.js +118 -2
- package/plugins/mergeCells/cellsCollection.mjs +118 -2
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +12 -2
- package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +11 -1
- package/plugins/mergeCells/focusOrder.js +305 -0
- package/plugins/mergeCells/focusOrder.mjs +300 -0
- package/plugins/mergeCells/mergeCells.js +500 -398
- package/plugins/mergeCells/mergeCells.mjs +500 -398
- package/plugins/multiColumnSorting/multiColumnSorting.js +9 -3
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +9 -3
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +2 -2
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +2 -2
- package/plugins/nestedHeaders/nestedHeaders.js +206 -254
- package/plugins/nestedHeaders/nestedHeaders.mjs +207 -255
- package/plugins/nestedHeaders/stateManager/headersTree.js +21 -32
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +21 -32
- package/plugins/nestedHeaders/stateManager/index.js +30 -41
- package/plugins/nestedHeaders/stateManager/index.mjs +30 -41
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +19 -30
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +19 -30
- package/plugins/nestedHeaders/utils/ghostTable.js +1 -1
- package/plugins/nestedHeaders/utils/ghostTable.mjs +1 -1
- package/plugins/nestedRows/data/dataManager.js +2 -2
- package/plugins/nestedRows/data/dataManager.mjs +2 -2
- package/plugins/nestedRows/nestedRows.js +154 -185
- package/plugins/nestedRows/nestedRows.mjs +155 -186
- package/plugins/nestedRows/ui/_base.js +1 -1
- package/plugins/nestedRows/ui/_base.mjs +1 -1
- package/plugins/nestedRows/ui/contextMenu.js +13 -17
- package/plugins/nestedRows/ui/contextMenu.mjs +11 -15
- package/plugins/nestedRows/utils/rowMoveController.js +6 -6
- package/plugins/nestedRows/utils/rowMoveController.mjs +6 -6
- package/plugins/persistentState/persistentState.js +1 -1
- package/plugins/persistentState/persistentState.mjs +1 -1
- package/plugins/persistentState/storage.js +3 -3
- package/plugins/persistentState/storage.mjs +3 -3
- package/plugins/search/search.js +8 -8
- package/plugins/search/search.mjs +8 -8
- package/plugins/touchScroll/touchScroll.js +16 -20
- package/plugins/touchScroll/touchScroll.mjs +17 -21
- package/plugins/trimRows/trimRows.js +7 -7
- package/plugins/trimRows/trimRows.mjs +7 -7
- package/plugins/undoRedo/index.js +1 -1
- package/renderers/checkboxRenderer/checkboxRenderer.js +8 -5
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +8 -5
- package/selection/highlight/highlight.js +16 -18
- package/selection/highlight/highlight.mjs +15 -17
- package/selection/highlight/visualSelection.js +3 -1
- package/selection/highlight/visualSelection.mjs +3 -1
- package/selection/range.js +3 -5
- package/selection/range.mjs +2 -4
- package/selection/selection.js +227 -69
- package/selection/selection.mjs +225 -67
- package/selection/transformation.js +149 -118
- package/selection/transformation.mjs +149 -118
- package/shortcutContexts/commands/editor/closeAndSave.js +2 -2
- package/shortcutContexts/commands/editor/closeAndSave.mjs +2 -2
- package/shortcutContexts/commands/editor/open.js +18 -3
- package/shortcutContexts/commands/editor/open.mjs +18 -3
- package/shortcutContexts/commands/extendCellsSelection/down.js +1 -1
- package/shortcutContexts/commands/extendCellsSelection/down.mjs +1 -1
- package/shortcutContexts/commands/extendCellsSelection/left.js +1 -1
- package/shortcutContexts/commands/extendCellsSelection/left.mjs +1 -1
- package/shortcutContexts/commands/extendCellsSelection/right.js +1 -1
- package/shortcutContexts/commands/extendCellsSelection/right.mjs +1 -1
- package/shortcutContexts/commands/extendCellsSelection/toColumns.js +1 -1
- package/shortcutContexts/commands/extendCellsSelection/toColumns.mjs +1 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +3 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +3 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.js +9 -3
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineEnd.mjs +9 -3
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.js +10 -3
- package/shortcutContexts/commands/extendCellsSelection/toMostInlineStart.mjs +10 -3
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +3 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +3 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +3 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +3 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +3 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +3 -1
- package/shortcutContexts/commands/extendCellsSelection/toRows.js +1 -1
- package/shortcutContexts/commands/extendCellsSelection/toRows.mjs +1 -1
- package/shortcutContexts/commands/extendCellsSelection/up.js +1 -1
- package/shortcutContexts/commands/extendCellsSelection/up.mjs +1 -1
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.js +6 -1
- package/shortcutContexts/commands/moveCellSelection/inlineEnd.mjs +6 -1
- package/shortcutContexts/commands/moveCellSelection/inlineStart.js +6 -1
- package/shortcutContexts/commands/moveCellSelection/inlineStart.mjs +6 -1
- package/shortcutContexts/grid.js +9 -3
- package/shortcutContexts/grid.mjs +9 -3
- package/shortcuts/context.js +3 -2
- package/shortcuts/context.mjs +3 -2
- package/shortcuts/manager.js +2 -2
- package/shortcuts/manager.mjs +2 -2
- package/tableView.js +53 -79
- package/tableView.mjs +53 -79
- package/translations/changesObservable/observable.js +21 -38
- package/translations/changesObservable/observable.mjs +21 -38
- package/translations/changesObservable/observer.js +7 -12
- package/translations/changesObservable/observer.mjs +6 -11
- package/translations/indexMapper.js +1 -1
- package/translations/indexMapper.mjs +1 -1
- package/translations/mapCollections/aggregatedCollection.js +2 -2
- package/translations/mapCollections/aggregatedCollection.mjs +2 -2
- package/translations/mapCollections/mapCollection.js +1 -1
- package/translations/mapCollections/mapCollection.mjs +1 -1
- package/translations/maps/indexMap.js +2 -2
- package/translations/maps/indexMap.mjs +2 -2
- package/translations/maps/linkedPhysicalIndexToValueMap.js +1 -1
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +1 -1
- package/utils/dataStructures/linkedList.js +7 -2
- package/utils/dataStructures/linkedList.mjs +7 -2
- package/utils/dataStructures/tree.js +2 -2
- package/utils/dataStructures/tree.mjs +2 -2
- package/utils/ghostTable.js +1 -1
- package/utils/ghostTable.mjs +1 -1
- package/utils/interval.js +27 -45
- package/utils/interval.mjs +27 -45
- package/utils/samplesGenerator.js +1 -1
- package/utils/samplesGenerator.mjs +1 -1
@@ -1,8 +1,8 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
|
-
require("core-js/modules/es.array.push.js");
|
5
4
|
require("core-js/modules/es.error.cause.js");
|
5
|
+
require("core-js/modules/es.array.push.js");
|
6
6
|
var _base = require("../base");
|
7
7
|
var _pluginHooks = _interopRequireDefault(require("../../pluginHooks"));
|
8
8
|
var _array = require("../../helpers/array");
|
@@ -14,12 +14,9 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
14
14
|
function _classPrivateMethodInitSpec(obj, privateSet) { _checkPrivateRedeclaration(obj, privateSet); privateSet.add(obj); }
|
15
15
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
16
16
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
17
|
-
function _classPrivateFieldSet(
|
18
|
-
function
|
19
|
-
function
|
20
|
-
function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
|
21
|
-
function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
|
22
|
-
function _classPrivateMethodGet(receiver, privateSet, fn) { if (!privateSet.has(receiver)) { throw new TypeError("attempted to get private field on non-instance"); } return fn; }
|
17
|
+
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
|
18
|
+
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
|
19
|
+
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
|
23
20
|
_pluginHooks.default.getSingleton().register('beforeRowMove');
|
24
21
|
_pluginHooks.default.getSingleton().register('afterRowMove');
|
25
22
|
const PLUGIN_KEY = exports.PLUGIN_KEY = 'manualRowMove';
|
@@ -45,7 +42,7 @@ const CSS_AFTER_SELECTION = 'after-selection--rows';
|
|
45
42
|
* - `dragRow` - drag single row to the new position.
|
46
43
|
* - `dragRows` - drag many rows (as an array of indexes) to the new position.
|
47
44
|
*
|
48
|
-
* [Documentation](@/guides/rows/row-moving.md) explain differences between drag and move actions. Please keep in mind that if you want apply visual changes,
|
45
|
+
* [Documentation](@/guides/rows/row-moving/row-moving.md) explain differences between drag and move actions. Please keep in mind that if you want apply visual changes,
|
49
46
|
* you have to call manually the `render` method on the instance of Handsontable.
|
50
47
|
*
|
51
48
|
* The plugin creates additional components to make moving possibly using user interface:
|
@@ -61,43 +58,10 @@ var _rowsToMove = /*#__PURE__*/new WeakMap();
|
|
61
58
|
var _pressed = /*#__PURE__*/new WeakMap();
|
62
59
|
var _target = /*#__PURE__*/new WeakMap();
|
63
60
|
var _cachedDropIndex = /*#__PURE__*/new WeakMap();
|
64
|
-
var
|
65
|
-
var _onMouseMove = /*#__PURE__*/new WeakSet();
|
66
|
-
var _onBeforeOnCellMouseOver = /*#__PURE__*/new WeakSet();
|
67
|
-
var _onMouseUp = /*#__PURE__*/new WeakSet();
|
68
|
-
var _onAfterScrollHorizontally = /*#__PURE__*/new WeakSet();
|
69
|
-
var _onAfterLoadData = /*#__PURE__*/new WeakSet();
|
61
|
+
var _ManualRowMove_brand = /*#__PURE__*/new WeakSet();
|
70
62
|
class ManualRowMove extends _base.BasePlugin {
|
71
63
|
constructor() {
|
72
64
|
super(...arguments);
|
73
|
-
/**
|
74
|
-
* Callback for the `afterLoadData` hook.
|
75
|
-
*/
|
76
|
-
_classPrivateMethodInitSpec(this, _onAfterLoadData);
|
77
|
-
/**
|
78
|
-
* `afterScrollHorizontally` hook callback. Fired the table was scrolled horizontally.
|
79
|
-
*/
|
80
|
-
_classPrivateMethodInitSpec(this, _onAfterScrollHorizontally);
|
81
|
-
/**
|
82
|
-
* `onMouseUp` hook callback.
|
83
|
-
*/
|
84
|
-
_classPrivateMethodInitSpec(this, _onMouseUp);
|
85
|
-
/**
|
86
|
-
* 'beforeOnCellMouseOver' hook callback. Fired when pointer was over cell.
|
87
|
-
*
|
88
|
-
* @param {MouseEvent} event `mouseover` event properties.
|
89
|
-
* @param {CellCoords} coords Visual cell coordinates where was fired event.
|
90
|
-
* @param {HTMLElement} TD Cell represented as HTMLElement.
|
91
|
-
* @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
|
92
|
-
* a boolean value that allows or disallows changing the selection for that particular area.
|
93
|
-
*/
|
94
|
-
_classPrivateMethodInitSpec(this, _onBeforeOnCellMouseOver);
|
95
|
-
/**
|
96
|
-
* 'mouseMove' event callback. Fired when pointer move on document.documentElement.
|
97
|
-
*
|
98
|
-
* @param {MouseEvent} event `mousemove` event properties.
|
99
|
-
*/
|
100
|
-
_classPrivateMethodInitSpec(this, _onMouseMove);
|
101
65
|
/**
|
102
66
|
* Change the behavior of selection / dragging.
|
103
67
|
*
|
@@ -107,53 +71,35 @@ class ManualRowMove extends _base.BasePlugin {
|
|
107
71
|
* @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
|
108
72
|
* a boolean value that allows or disallows changing the selection for that particular area.
|
109
73
|
*/
|
110
|
-
_classPrivateMethodInitSpec(this,
|
74
|
+
_classPrivateMethodInitSpec(this, _ManualRowMove_brand);
|
111
75
|
/**
|
112
76
|
* Backlight UI object.
|
113
77
|
*
|
114
78
|
* @type {object}
|
115
79
|
*/
|
116
|
-
_classPrivateFieldInitSpec(this, _backlight,
|
117
|
-
writable: true,
|
118
|
-
value: new _backlight2.default(this.hot)
|
119
|
-
});
|
80
|
+
_classPrivateFieldInitSpec(this, _backlight, new _backlight2.default(this.hot));
|
120
81
|
/**
|
121
82
|
* Guideline UI object.
|
122
83
|
*
|
123
84
|
* @type {object}
|
124
85
|
*/
|
125
|
-
_classPrivateFieldInitSpec(this, _guideline,
|
126
|
-
writable: true,
|
127
|
-
value: new _guideline2.default(this.hot)
|
128
|
-
});
|
86
|
+
_classPrivateFieldInitSpec(this, _guideline, new _guideline2.default(this.hot));
|
129
87
|
/**
|
130
88
|
* @type {number[]}
|
131
89
|
*/
|
132
|
-
_classPrivateFieldInitSpec(this, _rowsToMove,
|
133
|
-
writable: true,
|
134
|
-
value: []
|
135
|
-
});
|
90
|
+
_classPrivateFieldInitSpec(this, _rowsToMove, []);
|
136
91
|
/**
|
137
92
|
* @type {boolean}
|
138
93
|
*/
|
139
|
-
_classPrivateFieldInitSpec(this, _pressed,
|
140
|
-
writable: true,
|
141
|
-
value: void 0
|
142
|
-
});
|
94
|
+
_classPrivateFieldInitSpec(this, _pressed, void 0);
|
143
95
|
/**
|
144
96
|
* @type {object}
|
145
97
|
*/
|
146
|
-
_classPrivateFieldInitSpec(this, _target, {
|
147
|
-
writable: true,
|
148
|
-
value: {}
|
149
|
-
});
|
98
|
+
_classPrivateFieldInitSpec(this, _target, {});
|
150
99
|
/**
|
151
100
|
* @type {number}
|
152
101
|
*/
|
153
|
-
_classPrivateFieldInitSpec(this, _cachedDropIndex,
|
154
|
-
writable: true,
|
155
|
-
value: void 0
|
156
|
-
});
|
102
|
+
_classPrivateFieldInitSpec(this, _cachedDropIndex, void 0);
|
157
103
|
}
|
158
104
|
static get PLUGIN_KEY() {
|
159
105
|
return PLUGIN_KEY;
|
@@ -183,20 +129,20 @@ class ManualRowMove extends _base.BasePlugin {
|
|
183
129
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
184
130
|
args[_key] = arguments[_key];
|
185
131
|
}
|
186
|
-
return
|
132
|
+
return _assertClassBrand(_ManualRowMove_brand, _this, _onBeforeOnCellMouseDown).call(_this, ...args);
|
187
133
|
});
|
188
134
|
this.addHook('beforeOnCellMouseOver', function () {
|
189
135
|
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
190
136
|
args[_key2] = arguments[_key2];
|
191
137
|
}
|
192
|
-
return
|
138
|
+
return _assertClassBrand(_ManualRowMove_brand, _this, _onBeforeOnCellMouseOver).call(_this, ...args);
|
193
139
|
});
|
194
|
-
this.addHook('afterScrollHorizontally', () =>
|
140
|
+
this.addHook('afterScrollHorizontally', () => _assertClassBrand(_ManualRowMove_brand, this, _onAfterScrollHorizontally).call(this));
|
195
141
|
this.addHook('afterLoadData', function () {
|
196
142
|
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
197
143
|
args[_key3] = arguments[_key3];
|
198
144
|
}
|
199
|
-
return
|
145
|
+
return _assertClassBrand(_ManualRowMove_brand, _this, _onAfterLoadData).call(_this, ...args);
|
200
146
|
});
|
201
147
|
this.buildPluginUI();
|
202
148
|
this.registerEvents();
|
@@ -225,8 +171,8 @@ class ManualRowMove extends _base.BasePlugin {
|
|
225
171
|
disablePlugin() {
|
226
172
|
(0, _element.removeClass)(this.hot.rootElement, CSS_PLUGIN);
|
227
173
|
this.unregisterEvents();
|
228
|
-
_classPrivateFieldGet(
|
229
|
-
_classPrivateFieldGet(
|
174
|
+
_classPrivateFieldGet(_backlight, this).destroy();
|
175
|
+
_classPrivateFieldGet(_guideline, this).destroy();
|
230
176
|
super.disablePlugin();
|
231
177
|
}
|
232
178
|
|
@@ -237,7 +183,7 @@ class ManualRowMove extends _base.BasePlugin {
|
|
237
183
|
*
|
238
184
|
* @param {number} row Visual row index to be moved.
|
239
185
|
* @param {number} finalIndex Visual row index, being a start index for the moved rows. Points to where the elements will be placed after the moving action.
|
240
|
-
* To check the visualization of the final index, please take a look at [documentation](@/guides/rows/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
186
|
+
* To check the visualization of the final index, please take a look at [documentation](@/guides/rows/row-moving/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
241
187
|
* @fires Hooks#beforeRowMove
|
242
188
|
* @fires Hooks#afterRowMove
|
243
189
|
* @returns {boolean}
|
@@ -253,16 +199,16 @@ class ManualRowMove extends _base.BasePlugin {
|
|
253
199
|
*
|
254
200
|
* @param {Array} rows Array of visual row indexes to be moved.
|
255
201
|
* @param {number} finalIndex Visual row index, being a start index for the moved rows. Points to where the elements will be placed after the moving action.
|
256
|
-
* To check the visualization of the final index, please take a look at [documentation](@/guides/rows/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
202
|
+
* To check the visualization of the final index, please take a look at [documentation](@/guides/rows/row-moving/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
257
203
|
* @fires Hooks#beforeRowMove
|
258
204
|
* @fires Hooks#afterRowMove
|
259
205
|
* @returns {boolean}
|
260
206
|
*/
|
261
207
|
moveRows(rows, finalIndex) {
|
262
|
-
const dropIndex = _classPrivateFieldGet(
|
208
|
+
const dropIndex = _classPrivateFieldGet(_cachedDropIndex, this);
|
263
209
|
const movePossible = this.isMovePossible(rows, finalIndex);
|
264
210
|
const beforeMoveHook = this.hot.runHooks('beforeRowMove', rows, finalIndex, dropIndex, movePossible);
|
265
|
-
_classPrivateFieldSet(
|
211
|
+
_classPrivateFieldSet(_cachedDropIndex, this, undefined);
|
266
212
|
if (beforeMoveHook === false) {
|
267
213
|
return;
|
268
214
|
}
|
@@ -279,7 +225,7 @@ class ManualRowMove extends _base.BasePlugin {
|
|
279
225
|
*
|
280
226
|
* @param {number} row Visual row index to be dragged.
|
281
227
|
* @param {number} dropIndex Visual row index, being a drop index for the moved rows. Points to where we are going to drop the moved elements.
|
282
|
-
* To check visualization of drop index please take a look at [documentation](@/guides/rows/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
228
|
+
* To check visualization of drop index please take a look at [documentation](@/guides/rows/row-moving/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
283
229
|
* @fires Hooks#beforeRowMove
|
284
230
|
* @fires Hooks#afterRowMove
|
285
231
|
* @returns {boolean}
|
@@ -293,14 +239,14 @@ class ManualRowMove extends _base.BasePlugin {
|
|
293
239
|
*
|
294
240
|
* @param {Array} rows Array of visual row indexes to be dragged.
|
295
241
|
* @param {number} dropIndex Visual row index, being a drop index for the moved rows. Points to where we are going to drop the moved elements.
|
296
|
-
* To check visualization of drop index please take a look at [documentation](@/guides/rows/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
242
|
+
* To check visualization of drop index please take a look at [documentation](@/guides/rows/row-moving/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
297
243
|
* @fires Hooks#beforeRowMove
|
298
244
|
* @fires Hooks#afterRowMove
|
299
245
|
* @returns {boolean}
|
300
246
|
*/
|
301
247
|
dragRows(rows, dropIndex) {
|
302
248
|
const finalIndex = this.countFinalIndex(rows, dropIndex);
|
303
|
-
_classPrivateFieldSet(
|
249
|
+
_classPrivateFieldSet(_cachedDropIndex, this, dropIndex);
|
304
250
|
return this.moveRows(rows, finalIndex);
|
305
251
|
}
|
306
252
|
|
@@ -309,7 +255,7 @@ class ManualRowMove extends _base.BasePlugin {
|
|
309
255
|
*
|
310
256
|
* @param {Array} movedRows Array of visual row indexes to be moved.
|
311
257
|
* @param {number} finalIndex Visual row index, being a start index for the moved rows. Points to where the elements will be placed after the moving action.
|
312
|
-
* To check the visualization of the final index, please take a look at [documentation](@/guides/rows/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
258
|
+
* To check the visualization of the final index, please take a look at [documentation](@/guides/rows/row-moving/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
313
259
|
* @returns {boolean}
|
314
260
|
*/
|
315
261
|
isMovePossible(movedRows, finalIndex) {
|
@@ -332,7 +278,7 @@ class ManualRowMove extends _base.BasePlugin {
|
|
332
278
|
* @private
|
333
279
|
* @param {Array} movedRows Array of visual row indexes to be moved.
|
334
280
|
* @param {number} finalIndex Visual row index, being a start index for the moved rows. Points to where the elements will be placed after the moving action.
|
335
|
-
* To check the visualization of the final index, please take a look at [documentation](@/guides/rows/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
281
|
+
* To check the visualization of the final index, please take a look at [documentation](@/guides/rows/row-moving/row-moving.md#drag-and-move-actions-of-manualrowmove-plugin).
|
336
282
|
* @returns {boolean}
|
337
283
|
*/
|
338
284
|
isRowOrderChanged(movedRows, finalIndex) {
|
@@ -470,7 +416,7 @@ class ManualRowMove extends _base.BasePlugin {
|
|
470
416
|
* @private
|
471
417
|
*/
|
472
418
|
refreshPositions() {
|
473
|
-
const coords = _classPrivateFieldGet(
|
419
|
+
const coords = _classPrivateFieldGet(_target, this).coords;
|
474
420
|
const firstVisible = this.hot.view.getFirstFullyVisibleRow();
|
475
421
|
const lastVisible = this.hot.view.getLastFullyVisibleRow();
|
476
422
|
const countRows = this.hot.countRows();
|
@@ -481,18 +427,18 @@ class ManualRowMove extends _base.BasePlugin {
|
|
481
427
|
this.hot.scrollViewportTo(this.hot.rowIndexMapper.getNearestNotHiddenIndex(lastVisible + 1, 1), undefined, true);
|
482
428
|
}
|
483
429
|
const wtTable = this.hot.view._wt.wtTable;
|
484
|
-
const TD = _classPrivateFieldGet(
|
430
|
+
const TD = _classPrivateFieldGet(_target, this).TD;
|
485
431
|
const rootElement = this.hot.rootElement;
|
486
432
|
const rootElementOffset = (0, _element.offset)(rootElement);
|
487
433
|
const trimmingContainer = (0, _element.getTrimmingContainer)(rootElement);
|
488
434
|
const tableScroll = wtTable.holder.scrollTop;
|
489
435
|
const trimmingContainerScroll = this.hot.rootWindow !== trimmingContainer ? trimmingContainer.scrollTop : 0;
|
490
436
|
const pixelsAbove = rootElementOffset.top - trimmingContainerScroll;
|
491
|
-
const pixelsRelToTableStart = _classPrivateFieldGet(
|
437
|
+
const pixelsRelToTableStart = _classPrivateFieldGet(_target, this).eventPageY - pixelsAbove + tableScroll;
|
492
438
|
const hiderHeight = wtTable.hider.offsetHeight;
|
493
439
|
const tbodyOffsetTop = wtTable.TBODY.offsetTop;
|
494
|
-
const backlightElemMarginTop = _classPrivateFieldGet(
|
495
|
-
const backlightElemHeight = _classPrivateFieldGet(
|
440
|
+
const backlightElemMarginTop = _classPrivateFieldGet(_backlight, this).getOffset().top;
|
441
|
+
const backlightElemHeight = _classPrivateFieldGet(_backlight, this).getSize().height;
|
496
442
|
const tdMiddle = TD.offsetHeight / 2;
|
497
443
|
const tdHeight = TD.offsetHeight;
|
498
444
|
let tdStartPixel = this.hot.view.THEAD.offsetHeight + this.getRowsHeight(0, coords.row - 1);
|
@@ -502,15 +448,15 @@ class ManualRowMove extends _base.BasePlugin {
|
|
502
448
|
}
|
503
449
|
if (coords.row < 0) {
|
504
450
|
// if hover on colHeader
|
505
|
-
_classPrivateFieldGet(
|
451
|
+
_classPrivateFieldGet(_target, this).row = firstVisible > 0 ? firstVisible - 1 : firstVisible;
|
506
452
|
} else if (isBelowTable) {
|
507
453
|
// if hover on lower part of TD
|
508
|
-
_classPrivateFieldGet(
|
454
|
+
_classPrivateFieldGet(_target, this).row = coords.row + 1;
|
509
455
|
// unfortunately first row is bigger than rest
|
510
456
|
tdStartPixel += coords.row === 0 ? tdHeight - 1 : tdHeight;
|
511
457
|
} else {
|
512
458
|
// elsewhere on table
|
513
|
-
_classPrivateFieldGet(
|
459
|
+
_classPrivateFieldGet(_target, this).row = coords.row;
|
514
460
|
}
|
515
461
|
let backlightTop = pixelsRelToTableStart;
|
516
462
|
let guidelineTop = tdStartPixel;
|
@@ -525,8 +471,8 @@ class ManualRowMove extends _base.BasePlugin {
|
|
525
471
|
// prevent display guideline below table
|
526
472
|
guidelineTop = hiderHeight - 1;
|
527
473
|
}
|
528
|
-
_classPrivateFieldGet(
|
529
|
-
_classPrivateFieldGet(
|
474
|
+
_classPrivateFieldGet(_backlight, this).setPosition(backlightTop);
|
475
|
+
_classPrivateFieldGet(_guideline, this).setPosition(guidelineTop);
|
530
476
|
}
|
531
477
|
|
532
478
|
/**
|
@@ -538,8 +484,8 @@ class ManualRowMove extends _base.BasePlugin {
|
|
538
484
|
const {
|
539
485
|
documentElement
|
540
486
|
} = this.hot.rootDocument;
|
541
|
-
this.eventManager.addEventListener(documentElement, 'mousemove', event =>
|
542
|
-
this.eventManager.addEventListener(documentElement, 'mouseup', () =>
|
487
|
+
this.eventManager.addEventListener(documentElement, 'mousemove', event => _assertClassBrand(_ManualRowMove_brand, this, _onMouseMove).call(this, event));
|
488
|
+
this.eventManager.addEventListener(documentElement, 'mouseup', () => _assertClassBrand(_ManualRowMove_brand, this, _onMouseUp).call(this));
|
543
489
|
}
|
544
490
|
|
545
491
|
/**
|
@@ -556,37 +502,42 @@ class ManualRowMove extends _base.BasePlugin {
|
|
556
502
|
* @private
|
557
503
|
*/
|
558
504
|
buildPluginUI() {
|
559
|
-
_classPrivateFieldGet(
|
560
|
-
_classPrivateFieldGet(
|
505
|
+
_classPrivateFieldGet(_backlight, this).build();
|
506
|
+
_classPrivateFieldGet(_guideline, this).build();
|
561
507
|
}
|
508
|
+
|
509
|
+
/**
|
510
|
+
* Callback for the `afterLoadData` hook.
|
511
|
+
*/
|
512
|
+
|
562
513
|
/**
|
563
514
|
* Destroys the plugin instance.
|
564
515
|
*/
|
565
516
|
destroy() {
|
566
|
-
_classPrivateFieldGet(
|
567
|
-
_classPrivateFieldGet(
|
517
|
+
_classPrivateFieldGet(_backlight, this).destroy();
|
518
|
+
_classPrivateFieldGet(_guideline, this).destroy();
|
568
519
|
super.destroy();
|
569
520
|
}
|
570
521
|
}
|
571
522
|
exports.ManualRowMove = ManualRowMove;
|
572
|
-
function
|
523
|
+
function _onBeforeOnCellMouseDown(event, coords, TD, controller) {
|
573
524
|
const {
|
574
525
|
wtTable,
|
575
526
|
wtViewport
|
576
527
|
} = this.hot.view._wt;
|
577
528
|
const isHeaderSelection = this.hot.selection.isSelectedByRowHeader();
|
578
529
|
const selection = this.hot.getSelectedRangeLast();
|
579
|
-
if (!selection || !isHeaderSelection || _classPrivateFieldGet(
|
580
|
-
_classPrivateFieldSet(
|
581
|
-
_classPrivateFieldGet(
|
530
|
+
if (!selection || !isHeaderSelection || _classPrivateFieldGet(_pressed, this) || event.button !== 0) {
|
531
|
+
_classPrivateFieldSet(_pressed, this, false);
|
532
|
+
_classPrivateFieldGet(_rowsToMove, this).length = 0;
|
582
533
|
(0, _element.removeClass)(this.hot.rootElement, [CSS_ON_MOVING, CSS_SHOW_UI]);
|
583
534
|
return;
|
584
535
|
}
|
585
|
-
const guidelineIsNotReady = _classPrivateFieldGet(
|
586
|
-
const backlightIsNotReady = _classPrivateFieldGet(
|
536
|
+
const guidelineIsNotReady = _classPrivateFieldGet(_guideline, this).isBuilt() && !_classPrivateFieldGet(_guideline, this).isAppended();
|
537
|
+
const backlightIsNotReady = _classPrivateFieldGet(_backlight, this).isBuilt() && !_classPrivateFieldGet(_backlight, this).isAppended();
|
587
538
|
if (guidelineIsNotReady && backlightIsNotReady) {
|
588
|
-
_classPrivateFieldGet(
|
589
|
-
_classPrivateFieldGet(
|
539
|
+
_classPrivateFieldGet(_guideline, this).appendTo(wtTable.hider);
|
540
|
+
_classPrivateFieldGet(_backlight, this).appendTo(wtTable.hider);
|
590
541
|
}
|
591
542
|
const {
|
592
543
|
from,
|
@@ -596,37 +547,51 @@ function _onBeforeOnCellMouseDown2(event, coords, TD, controller) {
|
|
596
547
|
const end = Math.max(from.row, to.row);
|
597
548
|
if (coords.col < 0 && coords.row >= start && coords.row <= end) {
|
598
549
|
controller.row = true;
|
599
|
-
_classPrivateFieldSet(
|
600
|
-
_classPrivateFieldGet(
|
601
|
-
_classPrivateFieldGet(
|
602
|
-
_classPrivateFieldGet(
|
603
|
-
_classPrivateFieldSet(
|
550
|
+
_classPrivateFieldSet(_pressed, this, true);
|
551
|
+
_classPrivateFieldGet(_target, this).eventPageY = event.pageY;
|
552
|
+
_classPrivateFieldGet(_target, this).coords = coords;
|
553
|
+
_classPrivateFieldGet(_target, this).TD = TD;
|
554
|
+
_classPrivateFieldSet(_rowsToMove, this, this.prepareRowsToMoving());
|
604
555
|
const leftPos = wtTable.holder.scrollLeft + wtViewport.getRowHeaderWidth();
|
605
556
|
const topOffset = this.getRowsHeight(start, coords.row - 1) + event.offsetY;
|
606
|
-
_classPrivateFieldGet(
|
607
|
-
_classPrivateFieldGet(
|
608
|
-
_classPrivateFieldGet(
|
557
|
+
_classPrivateFieldGet(_backlight, this).setPosition(null, leftPos);
|
558
|
+
_classPrivateFieldGet(_backlight, this).setSize(wtTable.hider.offsetWidth - leftPos, this.getRowsHeight(start, end));
|
559
|
+
_classPrivateFieldGet(_backlight, this).setOffset(-topOffset, null);
|
609
560
|
(0, _element.addClass)(this.hot.rootElement, CSS_ON_MOVING);
|
610
561
|
this.refreshPositions();
|
611
562
|
} else {
|
612
563
|
(0, _element.removeClass)(this.hot.rootElement, CSS_AFTER_SELECTION);
|
613
|
-
_classPrivateFieldSet(
|
614
|
-
_classPrivateFieldGet(
|
564
|
+
_classPrivateFieldSet(_pressed, this, false);
|
565
|
+
_classPrivateFieldGet(_rowsToMove, this).length = 0;
|
615
566
|
}
|
616
567
|
}
|
617
|
-
|
618
|
-
|
568
|
+
/**
|
569
|
+
* 'mouseMove' event callback. Fired when pointer move on document.documentElement.
|
570
|
+
*
|
571
|
+
* @param {MouseEvent} event `mousemove` event properties.
|
572
|
+
*/
|
573
|
+
function _onMouseMove(event) {
|
574
|
+
if (!_classPrivateFieldGet(_pressed, this)) {
|
619
575
|
return;
|
620
576
|
}
|
621
|
-
_classPrivateFieldGet(
|
577
|
+
_classPrivateFieldGet(_target, this).eventPageY = event.pageY;
|
622
578
|
this.refreshPositions();
|
623
579
|
}
|
624
|
-
|
580
|
+
/**
|
581
|
+
* 'beforeOnCellMouseOver' hook callback. Fired when pointer was over cell.
|
582
|
+
*
|
583
|
+
* @param {MouseEvent} event `mouseover` event properties.
|
584
|
+
* @param {CellCoords} coords Visual cell coordinates where was fired event.
|
585
|
+
* @param {HTMLElement} TD Cell represented as HTMLElement.
|
586
|
+
* @param {object} controller An object with properties `row`, `column` and `cell`. Each property contains
|
587
|
+
* a boolean value that allows or disallows changing the selection for that particular area.
|
588
|
+
*/
|
589
|
+
function _onBeforeOnCellMouseOver(event, coords, TD, controller) {
|
625
590
|
const selectedRange = this.hot.getSelectedRangeLast();
|
626
|
-
if (!selectedRange || !_classPrivateFieldGet(
|
591
|
+
if (!selectedRange || !_classPrivateFieldGet(_pressed, this)) {
|
627
592
|
return;
|
628
593
|
}
|
629
|
-
if (_classPrivateFieldGet(
|
594
|
+
if (_classPrivateFieldGet(_rowsToMove, this).indexOf(coords.row) > -1) {
|
630
595
|
(0, _element.removeClass)(this.hot.rootElement, CSS_SHOW_UI);
|
631
596
|
} else {
|
632
597
|
(0, _element.addClass)(this.hot.rootElement, CSS_SHOW_UI);
|
@@ -634,13 +599,16 @@ function _onBeforeOnCellMouseOver2(event, coords, TD, controller) {
|
|
634
599
|
controller.row = true;
|
635
600
|
controller.column = true;
|
636
601
|
controller.cell = true;
|
637
|
-
_classPrivateFieldGet(
|
638
|
-
_classPrivateFieldGet(
|
602
|
+
_classPrivateFieldGet(_target, this).coords = coords;
|
603
|
+
_classPrivateFieldGet(_target, this).TD = TD;
|
639
604
|
}
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
|
605
|
+
/**
|
606
|
+
* `onMouseUp` hook callback.
|
607
|
+
*/
|
608
|
+
function _onMouseUp() {
|
609
|
+
const target = _classPrivateFieldGet(_target, this).row;
|
610
|
+
const rowsLen = _classPrivateFieldGet(_rowsToMove, this).length;
|
611
|
+
_classPrivateFieldSet(_pressed, this, false);
|
644
612
|
(0, _element.removeClass)(this.hot.rootElement, [CSS_ON_MOVING, CSS_SHOW_UI, CSS_AFTER_SELECTION]);
|
645
613
|
if (this.hot.selection.isSelectedByRowHeader()) {
|
646
614
|
(0, _element.addClass)(this.hot.rootElement, CSS_AFTER_SELECTION);
|
@@ -648,10 +616,10 @@ function _onMouseUp2() {
|
|
648
616
|
if (rowsLen < 1 || target === undefined) {
|
649
617
|
return;
|
650
618
|
}
|
651
|
-
const firstMovedVisualRow = _classPrivateFieldGet(
|
619
|
+
const firstMovedVisualRow = _classPrivateFieldGet(_rowsToMove, this)[0];
|
652
620
|
const firstMovedPhysicalRow = this.hot.toPhysicalRow(firstMovedVisualRow);
|
653
|
-
const movePerformed = this.dragRows(_classPrivateFieldGet(
|
654
|
-
_classPrivateFieldGet(
|
621
|
+
const movePerformed = this.dragRows(_classPrivateFieldGet(_rowsToMove, this), target);
|
622
|
+
_classPrivateFieldGet(_rowsToMove, this).length = 0;
|
655
623
|
if (movePerformed === true) {
|
656
624
|
this.persistentStateSave();
|
657
625
|
this.hot.render();
|
@@ -661,14 +629,17 @@ function _onMouseUp2() {
|
|
661
629
|
this.hot.selectRows(selectionStart, selectionEnd);
|
662
630
|
}
|
663
631
|
}
|
664
|
-
|
632
|
+
/**
|
633
|
+
* `afterScrollHorizontally` hook callback. Fired the table was scrolled horizontally.
|
634
|
+
*/
|
635
|
+
function _onAfterScrollHorizontally() {
|
665
636
|
const wtTable = this.hot.view._wt.wtTable;
|
666
637
|
const headerWidth = this.hot.view._wt.wtViewport.getRowHeaderWidth();
|
667
638
|
const scrollLeft = wtTable.holder.scrollLeft;
|
668
639
|
const posLeft = headerWidth + scrollLeft;
|
669
|
-
_classPrivateFieldGet(
|
670
|
-
_classPrivateFieldGet(
|
640
|
+
_classPrivateFieldGet(_backlight, this).setPosition(null, posLeft);
|
641
|
+
_classPrivateFieldGet(_backlight, this).setSize(wtTable.hider.offsetWidth - posLeft);
|
671
642
|
}
|
672
|
-
function
|
643
|
+
function _onAfterLoadData() {
|
673
644
|
this.moveBySettingsOrLoad();
|
674
645
|
}
|