handsontable 11.1.0 → 12.1.0
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/border.js +120 -98
- package/3rdparty/walkontable/src/border.mjs +120 -94
- package/3rdparty/walkontable/src/cell/coords.js +59 -17
- package/3rdparty/walkontable/src/cell/coords.mjs +55 -17
- package/3rdparty/walkontable/src/cell/range.d.ts +10 -2
- package/3rdparty/walkontable/src/cell/range.js +278 -99
- package/3rdparty/walkontable/src/cell/range.mjs +273 -99
- package/3rdparty/walkontable/src/core/_base.js +452 -0
- package/3rdparty/walkontable/src/core/_base.mjs +440 -0
- package/3rdparty/walkontable/src/core/clone.js +97 -0
- package/3rdparty/walkontable/src/core/clone.mjs +80 -0
- package/3rdparty/walkontable/src/core/core.js +183 -0
- package/3rdparty/walkontable/src/core/core.mjs +160 -0
- package/3rdparty/walkontable/src/event.js +99 -66
- package/3rdparty/walkontable/src/event.mjs +99 -63
- package/3rdparty/walkontable/src/facade/core.js +251 -0
- package/3rdparty/walkontable/src/facade/core.mjs +243 -0
- package/3rdparty/walkontable/src/index.js +2 -46
- package/3rdparty/walkontable/src/index.mjs +3 -13
- package/3rdparty/walkontable/src/overlay/_base.js +124 -57
- package/3rdparty/walkontable/src/overlay/_base.mjs +124 -57
- package/3rdparty/walkontable/src/overlay/bottom.js +96 -80
- package/3rdparty/walkontable/src/overlay/bottom.mjs +96 -80
- package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.js → bottomInlineStartCorner.js} +45 -62
- package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +44 -61
- package/3rdparty/walkontable/src/overlay/constants.js +25 -9
- package/3rdparty/walkontable/src/overlay/constants.mjs +14 -4
- package/3rdparty/walkontable/src/overlay/index.js +10 -19
- package/3rdparty/walkontable/src/overlay/index.mjs +4 -5
- package/3rdparty/walkontable/src/overlay/{left.js → inlineStart.js} +113 -82
- package/3rdparty/walkontable/src/overlay/{left.mjs → inlineStart.mjs} +112 -81
- package/3rdparty/walkontable/src/overlay/top.js +93 -68
- package/3rdparty/walkontable/src/overlay/top.mjs +93 -68
- package/3rdparty/walkontable/src/overlay/{topLeftCorner.js → topInlineStartCorner.js} +56 -57
- package/3rdparty/walkontable/src/overlay/{topLeftCorner.mjs → topInlineStartCorner.mjs} +51 -52
- package/3rdparty/walkontable/src/overlays.js +225 -156
- package/3rdparty/walkontable/src/overlays.mjs +224 -154
- package/3rdparty/walkontable/src/renderer/cells.js +4 -3
- package/3rdparty/walkontable/src/renderer/cells.mjs +4 -3
- package/3rdparty/walkontable/src/renderer/colGroup.js +2 -2
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +2 -2
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +2 -2
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +2 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +2 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +2 -2
- package/3rdparty/walkontable/src/renderer/rows.js +2 -2
- package/3rdparty/walkontable/src/renderer/rows.mjs +2 -2
- package/3rdparty/walkontable/src/scroll.js +125 -104
- package/3rdparty/walkontable/src/scroll.mjs +124 -104
- package/3rdparty/walkontable/src/selection.js +10 -14
- package/3rdparty/walkontable/src/selection.mjs +10 -12
- package/3rdparty/walkontable/src/settings.js +235 -126
- package/3rdparty/walkontable/src/settings.mjs +235 -125
- package/3rdparty/walkontable/src/table/bottom.js +16 -5
- package/3rdparty/walkontable/src/table/bottom.mjs +15 -5
- package/3rdparty/walkontable/src/table/{bottomLeftCorner.js → bottomInlineStartCorner.js} +27 -15
- package/3rdparty/walkontable/src/table/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +26 -15
- package/3rdparty/walkontable/src/table/{left.js → inlineStart.js} +23 -15
- package/3rdparty/walkontable/src/table/{left.mjs → inlineStart.mjs} +22 -15
- package/3rdparty/walkontable/src/table/master.js +22 -12
- package/3rdparty/walkontable/src/table/master.mjs +22 -12
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +12 -6
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +12 -6
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +12 -6
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +12 -6
- package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.js → stickyColumnsStart.js} +13 -7
- package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.mjs → stickyColumnsStart.mjs} +13 -7
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +11 -5
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +11 -5
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -3
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -3
- package/3rdparty/walkontable/src/table/top.js +16 -5
- package/3rdparty/walkontable/src/table/top.mjs +15 -5
- package/3rdparty/walkontable/src/table/{topLeftCorner.js → topInlineStartCorner.js} +27 -15
- package/3rdparty/walkontable/src/table/{topLeftCorner.mjs → topInlineStartCorner.mjs} +26 -15
- package/3rdparty/walkontable/src/table.js +235 -140
- package/3rdparty/walkontable/src/table.mjs +231 -134
- package/3rdparty/walkontable/src/types.js +103 -0
- package/3rdparty/walkontable/src/types.mjs +102 -0
- package/3rdparty/walkontable/src/utils/column.js +22 -33
- package/3rdparty/walkontable/src/utils/column.mjs +22 -30
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -2
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +2 -2
- package/3rdparty/walkontable/src/utils/row.js +9 -4
- package/3rdparty/walkontable/src/utils/row.mjs +9 -4
- package/3rdparty/walkontable/src/viewport.js +89 -100
- package/3rdparty/walkontable/src/viewport.mjs +89 -97
- package/CHANGELOG.md +92 -0
- package/LICENSE.txt +1 -1
- package/README.md +0 -1
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/cellTypes/timeType/timeType.d.ts +6 -6
- package/cellTypes/timeType/timeType.js +4 -5
- package/cellTypes/timeType/timeType.mjs +4 -5
- package/core.d.ts +6 -1
- package/core.js +508 -80
- package/core.mjs +517 -92
- package/dataMap/index.js +4 -0
- package/dataMap/index.mjs +2 -1
- package/dataMap/metaManager/index.js +2 -2
- package/dataMap/metaManager/index.mjs +2 -2
- package/dataMap/metaManager/metaLayers/globalMeta.js +4 -0
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -0
- package/dataMap/metaManager/metaLayers/tableMeta.js +2 -2
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +2 -2
- package/dataMap/metaManager/metaSchema.js +282 -187
- package/dataMap/metaManager/metaSchema.mjs +282 -187
- package/dataMap/metaManager/mods/extendMetaProperties.js +126 -0
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +113 -0
- package/dataMap/replaceData.js +3 -17
- package/dataMap/replaceData.mjs +3 -17
- package/dist/handsontable.css +268 -92
- package/dist/handsontable.full.css +269 -103
- package/dist/handsontable.full.js +41990 -35658
- package/dist/handsontable.full.min.css +9 -9
- package/dist/handsontable.full.min.js +144 -144
- package/dist/handsontable.js +29561 -25597
- package/dist/handsontable.min.css +8 -8
- package/dist/handsontable.min.js +4 -4
- package/dist/languages/all.js +131 -34
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/ar-AR.js +167 -0
- package/dist/languages/ar-AR.min.js +1 -0
- package/dist/languages/cs-CZ.js +167 -0
- package/dist/languages/cs-CZ.min.js +1 -0
- package/dist/languages/de-CH.js +31 -29
- package/dist/languages/de-CH.min.js +1 -1
- package/dist/languages/de-DE.js +4 -2
- package/dist/languages/de-DE.min.js +1 -1
- package/dist/languages/en-US.js +4 -2
- package/dist/languages/en-US.min.js +1 -1
- package/dist/languages/es-MX.js +4 -2
- package/dist/languages/es-MX.min.js +1 -1
- package/dist/languages/fr-FR.js +4 -2
- package/dist/languages/fr-FR.min.js +1 -1
- package/dist/languages/it-IT.js +4 -2
- package/dist/languages/it-IT.min.js +1 -1
- package/dist/languages/ja-JP.js +36 -38
- package/dist/languages/ja-JP.min.js +1 -1
- package/dist/languages/ko-KR.js +36 -39
- package/dist/languages/ko-KR.min.js +1 -1
- package/dist/languages/lv-LV.js +2 -2
- package/dist/languages/lv-LV.min.js +1 -1
- package/dist/languages/nb-NO.js +2 -2
- package/dist/languages/nb-NO.min.js +1 -1
- package/dist/languages/nl-NL.js +2 -2
- package/dist/languages/nl-NL.min.js +1 -1
- package/dist/languages/pl-PL.js +2 -2
- package/dist/languages/pl-PL.min.js +1 -1
- package/dist/languages/pt-BR.js +2 -2
- package/dist/languages/pt-BR.min.js +1 -1
- package/dist/languages/ru-RU.js +2 -2
- package/dist/languages/ru-RU.min.js +1 -1
- package/dist/languages/sr-SP.js +171 -0
- package/dist/languages/sr-SP.min.js +1 -0
- package/dist/languages/zh-CN.js +24 -24
- package/dist/languages/zh-CN.min.js +1 -1
- package/dist/languages/zh-TW.js +24 -24
- package/dist/languages/zh-TW.min.js +1 -1
- package/editorManager.js +120 -267
- package/editorManager.mjs +128 -278
- package/editors/autocompleteEditor/autocompleteEditor.js +22 -25
- package/editors/autocompleteEditor/autocompleteEditor.mjs +22 -25
- package/editors/baseEditor/baseEditor.js +205 -34
- package/editors/baseEditor/baseEditor.mjs +200 -32
- package/editors/checkboxEditor/checkboxEditor.js +2 -2
- package/editors/checkboxEditor/checkboxEditor.mjs +2 -2
- package/editors/dateEditor/dateEditor.js +21 -8
- package/editors/dateEditor/dateEditor.mjs +22 -9
- package/editors/dropdownEditor/dropdownEditor.js +3 -3
- package/editors/dropdownEditor/dropdownEditor.mjs +3 -3
- package/editors/handsontableEditor/handsontableEditor.js +106 -55
- package/editors/handsontableEditor/handsontableEditor.mjs +106 -55
- package/editors/index.d.ts +3 -0
- package/editors/index.js +6 -0
- package/editors/index.mjs +3 -1
- package/editors/numericEditor/numericEditor.js +2 -2
- package/editors/numericEditor/numericEditor.mjs +2 -2
- package/editors/passwordEditor/passwordEditor.js +3 -3
- package/editors/passwordEditor/passwordEditor.mjs +3 -3
- package/editors/selectEditor/selectEditor.js +65 -110
- package/editors/selectEditor/selectEditor.mjs +66 -109
- package/editors/textEditor/caretPositioner.js +49 -0
- package/editors/textEditor/caretPositioner.mjs +42 -0
- package/editors/textEditor/textEditor.js +205 -181
- package/editors/textEditor/textEditor.mjs +199 -179
- package/editors/timeEditor/index.d.ts +1 -0
- package/editors/timeEditor/index.js +9 -0
- package/editors/timeEditor/index.mjs +1 -0
- package/editors/timeEditor/timeEditor.d.ts +7 -0
- package/editors/timeEditor/timeEditor.js +105 -0
- package/editors/timeEditor/timeEditor.mjs +84 -0
- package/eventManager.js +4 -2
- package/eventManager.mjs +4 -2
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/i18n/languages/ar-AR.js +41 -0
- package/i18n/languages/ar-AR.mjs +17 -0
- package/i18n/languages/cs-CZ.js +40 -0
- package/i18n/languages/cs-CZ.mjs +16 -0
- package/i18n/languages/index.js +12 -0
- package/i18n/languages/index.mjs +4 -1
- package/i18n/languages/sr-SP.js +40 -0
- package/i18n/languages/sr-SP.mjs +16 -0
- package/index.d.ts +4 -0
- package/languages/all.js +131 -34
- package/languages/ar-AR.js +167 -0
- package/languages/ar-AR.mjs +19 -0
- package/languages/cs-CZ.js +167 -0
- package/languages/cs-CZ.mjs +18 -0
- package/languages/de-CH.js +31 -29
- package/languages/de-DE.js +4 -2
- package/languages/en-US.js +4 -2
- package/languages/es-MX.js +4 -2
- package/languages/fr-FR.js +4 -2
- package/languages/index.js +131 -34
- package/languages/index.mjs +4 -1
- package/languages/it-IT.js +4 -2
- package/languages/ja-JP.js +36 -38
- package/languages/ko-KR.js +36 -39
- package/languages/lv-LV.js +2 -2
- package/languages/nb-NO.js +2 -2
- package/languages/nl-NL.js +2 -2
- package/languages/pl-PL.js +2 -2
- package/languages/pt-BR.js +2 -2
- package/languages/ru-RU.js +2 -2
- package/languages/sr-SP.js +171 -0
- package/languages/sr-SP.mjs +18 -0
- package/languages/zh-CN.js +24 -24
- package/languages/zh-TW.js +24 -24
- package/package.json +44 -4
- package/pluginHooks.js +49 -13
- package/pluginHooks.mjs +49 -13
- package/plugins/autoColumnSize/autoColumnSize.js +15 -10
- package/plugins/autoColumnSize/autoColumnSize.mjs +15 -10
- package/plugins/autoRowSize/autoRowSize.js +14 -9
- package/plugins/autoRowSize/autoRowSize.mjs +14 -9
- package/plugins/autofill/autofill.js +49 -33
- package/plugins/autofill/autofill.mjs +49 -32
- package/plugins/autofill/utils.js +10 -11
- package/plugins/autofill/utils.mjs +10 -10
- package/plugins/base/base.d.ts +8 -2
- package/plugins/base/base.js +67 -4
- package/plugins/base/base.mjs +66 -4
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +3 -3
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +3 -3
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +3 -3
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +3 -3
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +3 -3
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +3 -3
- package/plugins/collapsibleColumns/collapsibleColumns.js +27 -9
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +27 -9
- package/plugins/columnSorting/columnSorting.js +5 -7
- package/plugins/columnSorting/columnSorting.mjs +5 -6
- package/plugins/columnSummary/columnSummary.js +3 -3
- package/plugins/columnSummary/columnSummary.mjs +3 -3
- package/plugins/comments/commentEditor.js +18 -2
- package/plugins/comments/commentEditor.mjs +19 -3
- package/plugins/comments/comments.js +57 -46
- package/plugins/comments/comments.mjs +58 -46
- package/plugins/contextMenu/contextMenu.js +10 -6
- package/plugins/contextMenu/contextMenu.mjs +10 -6
- package/plugins/contextMenu/menu.js +222 -110
- package/plugins/contextMenu/menu.mjs +219 -111
- package/plugins/contextMenu/predefinedItems/columnLeft.js +12 -4
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +11 -4
- package/plugins/contextMenu/predefinedItems/columnRight.js +9 -9
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +9 -9
- package/plugins/contextMenu/utils.js +2 -2
- package/plugins/contextMenu/utils.mjs +2 -2
- package/plugins/copyPaste/copyPaste.js +31 -21
- package/plugins/copyPaste/copyPaste.mjs +30 -21
- package/plugins/customBorders/contextMenuItem/left.js +4 -3
- package/plugins/customBorders/contextMenuItem/left.mjs +4 -3
- package/plugins/customBorders/contextMenuItem/right.js +4 -3
- package/plugins/customBorders/contextMenuItem/right.mjs +4 -3
- package/plugins/customBorders/customBorders.js +144 -87
- package/plugins/customBorders/customBorders.mjs +143 -85
- package/plugins/customBorders/utils.js +131 -27
- package/plugins/customBorders/utils.mjs +115 -27
- package/plugins/dragToScroll/dragToScroll.js +10 -5
- package/plugins/dragToScroll/dragToScroll.mjs +10 -5
- package/plugins/dropdownMenu/dropdownMenu.js +9 -7
- package/plugins/dropdownMenu/dropdownMenu.mjs +9 -7
- package/plugins/exportFile/exportFile.js +2 -2
- package/plugins/exportFile/exportFile.mjs +2 -2
- package/plugins/exportFile/types/csv.js +2 -2
- package/plugins/exportFile/types/csv.mjs +2 -2
- package/plugins/filters/component/actionBar.js +2 -2
- package/plugins/filters/component/actionBar.mjs +2 -2
- package/plugins/filters/component/condition.js +3 -3
- package/plugins/filters/component/condition.mjs +3 -3
- package/plugins/filters/component/operators.js +2 -2
- package/plugins/filters/component/operators.mjs +2 -2
- package/plugins/filters/component/value.js +3 -3
- package/plugins/filters/component/value.mjs +3 -3
- package/plugins/filters/filters.js +11 -8
- package/plugins/filters/filters.mjs +11 -8
- package/plugins/filters/ui/input.js +3 -3
- package/plugins/filters/ui/input.mjs +3 -3
- package/plugins/filters/ui/link.js +3 -3
- package/plugins/filters/ui/link.mjs +3 -3
- package/plugins/filters/ui/multipleSelect.js +18 -31
- package/plugins/filters/ui/multipleSelect.mjs +18 -31
- package/plugins/filters/ui/radioInput.js +3 -3
- package/plugins/filters/ui/radioInput.mjs +3 -3
- package/plugins/filters/ui/select.js +4 -4
- package/plugins/filters/ui/select.mjs +4 -4
- package/plugins/formulas/formulas.js +14 -9
- package/plugins/formulas/formulas.mjs +14 -9
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +2 -4
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +2 -4
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +5 -5
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +5 -5
- package/plugins/hiddenColumns/hiddenColumns.js +9 -4
- package/plugins/hiddenColumns/hiddenColumns.mjs +9 -4
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +2 -4
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +2 -4
- package/plugins/hiddenRows/contextMenuItem/showRow.js +5 -5
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +5 -5
- package/plugins/hiddenRows/hiddenRows.js +9 -4
- package/plugins/hiddenRows/hiddenRows.mjs +9 -4
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +54 -15
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +49 -15
- package/plugins/manualColumnMove/manualColumnMove.js +70 -70
- package/plugins/manualColumnMove/manualColumnMove.mjs +71 -71
- package/plugins/manualColumnMove/ui/_base.js +25 -12
- package/plugins/manualColumnMove/ui/_base.mjs +24 -12
- package/plugins/manualColumnMove/ui/backlight.js +3 -3
- package/plugins/manualColumnMove/ui/backlight.mjs +3 -3
- package/plugins/manualColumnMove/ui/guideline.js +3 -3
- package/plugins/manualColumnMove/ui/guideline.mjs +3 -3
- package/plugins/manualColumnResize/manualColumnResize.js +37 -21
- package/plugins/manualColumnResize/manualColumnResize.mjs +37 -21
- package/plugins/manualRowMove/manualRowMove.js +26 -34
- package/plugins/manualRowMove/manualRowMove.mjs +26 -34
- package/plugins/manualRowMove/ui/backlight.js +3 -3
- package/plugins/manualRowMove/ui/backlight.mjs +3 -3
- package/plugins/manualRowMove/ui/guideline.js +3 -3
- package/plugins/manualRowMove/ui/guideline.mjs +3 -3
- package/plugins/manualRowResize/manualRowResize.js +34 -19
- package/plugins/manualRowResize/manualRowResize.mjs +34 -19
- package/plugins/mergeCells/calculations/autofill.js +6 -5
- package/plugins/mergeCells/calculations/autofill.mjs +6 -4
- package/plugins/mergeCells/calculations/selection.js +9 -4
- package/plugins/mergeCells/calculations/selection.mjs +9 -4
- package/plugins/mergeCells/cellCoords.js +16 -4
- package/plugins/mergeCells/cellCoords.mjs +16 -3
- package/plugins/mergeCells/cellsCollection.js +30 -23
- package/plugins/mergeCells/cellsCollection.mjs +30 -22
- package/plugins/mergeCells/mergeCells.js +94 -61
- package/plugins/mergeCells/mergeCells.mjs +94 -59
- package/plugins/multiColumnSorting/multiColumnSorting.js +4 -6
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +4 -5
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +51 -57
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +52 -57
- package/plugins/nestedHeaders/nestedHeaders.js +31 -20
- package/plugins/nestedHeaders/nestedHeaders.mjs +31 -20
- package/plugins/nestedHeaders/stateManager/utils.js +3 -4
- package/plugins/nestedHeaders/stateManager/utils.mjs +3 -4
- package/plugins/nestedHeaders/utils/ghostTable.js +114 -75
- package/plugins/nestedHeaders/utils/ghostTable.mjs +114 -74
- package/plugins/nestedRows/nestedRows.js +9 -4
- package/plugins/nestedRows/nestedRows.mjs +9 -4
- package/plugins/nestedRows/ui/collapsing.js +2 -2
- package/plugins/nestedRows/ui/collapsing.mjs +2 -2
- package/plugins/nestedRows/ui/contextMenu.js +2 -2
- package/plugins/nestedRows/ui/contextMenu.mjs +2 -2
- package/plugins/nestedRows/ui/headers.js +2 -2
- package/plugins/nestedRows/ui/headers.mjs +2 -2
- package/plugins/nestedRows/utils/rowMoveController.js +2 -4
- package/plugins/nestedRows/utils/rowMoveController.mjs +2 -3
- package/plugins/persistentState/persistentState.js +9 -4
- package/plugins/persistentState/persistentState.mjs +9 -4
- package/plugins/search/search.js +9 -4
- package/plugins/search/search.mjs +9 -4
- package/plugins/touchScroll/touchScroll.js +27 -21
- package/plugins/touchScroll/touchScroll.mjs +27 -21
- package/plugins/trimRows/trimRows.js +9 -4
- package/plugins/trimRows/trimRows.mjs +9 -4
- package/plugins/undoRedo/undoRedo.js +53 -47
- package/plugins/undoRedo/undoRedo.mjs +53 -46
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -3
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +1 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +48 -43
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +48 -41
- package/renderers/index.d.ts +4 -1
- package/renderers/index.js +6 -0
- package/renderers/index.mjs +3 -1
- package/renderers/numericRenderer/numericRenderer.js +1 -0
- package/renderers/numericRenderer/numericRenderer.mjs +1 -0
- package/renderers/timeRenderer/index.d.ts +1 -0
- package/renderers/timeRenderer/index.js +9 -0
- package/renderers/timeRenderer/index.mjs +1 -0
- package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
- package/renderers/timeRenderer/timeRenderer.js +31 -0
- package/renderers/timeRenderer/timeRenderer.mjs +20 -0
- package/selection/highlight/visualSelection.js +94 -220
- package/selection/highlight/visualSelection.mjs +91 -213
- package/selection/mouseEventHandler.js +15 -10
- package/selection/mouseEventHandler.mjs +15 -9
- package/selection/range.js +4 -5
- package/selection/range.mjs +4 -5
- package/selection/selection.js +35 -22
- package/selection/selection.mjs +35 -20
- package/selection/transformation.js +4 -6
- package/selection/transformation.mjs +4 -5
- package/settings.d.ts +3 -1
- package/shortcuts/context.d.ts +20 -0
- package/shortcuts/context.js +296 -0
- package/shortcuts/context.mjs +268 -0
- package/shortcuts/index.d.ts +1 -0
- package/shortcuts/index.js +8 -0
- package/shortcuts/index.mjs +1 -0
- package/shortcuts/keyObserver.js +67 -0
- package/shortcuts/keyObserver.mjs +58 -0
- package/shortcuts/manager.d.ts +10 -0
- package/shortcuts/manager.js +185 -0
- package/shortcuts/manager.mjs +176 -0
- package/shortcuts/recorder.js +192 -0
- package/shortcuts/recorder.mjs +180 -0
- package/shortcuts/utils.js +77 -0
- package/shortcuts/utils.mjs +54 -0
- package/tableView.js +164 -84
- package/tableView.mjs +164 -74
- package/translations/changesObservable/observer.js +0 -1
- package/translations/changesObservable/observer.mjs +0 -1
- package/translations/indexMapper.d.ts +3 -1
- package/translations/indexMapper.js +89 -11
- package/translations/indexMapper.mjs +91 -20
- package/translations/mapCollections/aggregatedCollection.js +2 -2
- package/translations/mapCollections/aggregatedCollection.mjs +2 -2
- package/translations/maps/hidingMap.js +4 -2
- package/translations/maps/hidingMap.mjs +4 -2
- package/translations/maps/indexMap.js +2 -0
- package/translations/maps/indexMap.mjs +2 -0
- package/translations/maps/indexesSequence.js +5 -3
- package/translations/maps/indexesSequence.mjs +5 -3
- package/translations/maps/linkedPhysicalIndexToValueMap.js +5 -3
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +5 -3
- package/translations/maps/physicalIndexToValueMap.js +5 -3
- package/translations/maps/physicalIndexToValueMap.mjs +5 -3
- package/translations/maps/trimmingMap.js +4 -2
- package/translations/maps/trimmingMap.mjs +4 -2
- package/utils/dataStructures/uniqueMap.js +14 -1
- package/utils/dataStructures/uniqueMap.mjs +14 -1
- package/utils/dataStructures/uniqueSet.js +9 -0
- package/utils/dataStructures/uniqueSet.mjs +9 -0
- package/utils/ghostTable.js +1 -1
- package/utils/ghostTable.mjs +1 -1
- package/3rdparty/walkontable/src/core.js +0 -309
- package/3rdparty/walkontable/src/core.mjs +0 -293
- package/3rdparty/walkontable/src/overlay/registerer.js +0 -70
- package/3rdparty/walkontable/src/overlay/registerer.mjs +0 -57
- package/utils/keyStateObserver.js +0 -121
- package/utils/keyStateObserver.mjs +0 -103
@@ -32,13 +32,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
|
|
32
32
|
|
33
33
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
34
34
|
|
35
|
-
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
35
|
+
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
36
36
|
|
37
37
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
38
38
|
|
39
39
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
40
40
|
|
41
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf
|
41
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
42
42
|
|
43
43
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
44
44
|
|
@@ -48,7 +48,7 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
|
|
48
48
|
|
49
49
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
50
50
|
|
51
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
51
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
52
52
|
|
53
53
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
54
54
|
|
@@ -81,6 +81,8 @@ Hooks.getSingleton().register('beforeUnhideColumns');
|
|
81
81
|
Hooks.getSingleton().register('afterUnhideColumns');
|
82
82
|
export var PLUGIN_KEY = 'hiddenColumns';
|
83
83
|
export var PLUGIN_PRIORITY = 310;
|
84
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
85
|
+
|
84
86
|
/**
|
85
87
|
* @plugin HiddenColumns
|
86
88
|
* @class HiddenColumns
|
@@ -235,7 +237,10 @@ export var HiddenColumns = /*#__PURE__*/function (_BasePlugin) {
|
|
235
237
|
_get(_getPrototypeOf(HiddenColumns.prototype), "enablePlugin", this).call(this);
|
236
238
|
}
|
237
239
|
/**
|
238
|
-
* Updates the plugin state.
|
240
|
+
* Updates the plugin's state.
|
241
|
+
*
|
242
|
+
* This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
|
243
|
+
* - [`hiddenColumns`](@/api/options.md#hiddencolumns)
|
239
244
|
*/
|
240
245
|
|
241
246
|
}, {
|
@@ -89,11 +89,9 @@ function hideRowItem(hiddenRowsPlugin) {
|
|
89
89
|
rowsToHide.push(visualRow);
|
90
90
|
}
|
91
91
|
|
92
|
-
var firstHiddenRow = rowsToHide[0];
|
93
|
-
var lastHiddenRow = rowsToHide[rowsToHide.length - 1]; // Looking for a visual index on the top and then (when not found) on the bottom.
|
94
|
-
|
95
|
-
var rowToSelect = this.rowIndexMapper.getFirstNotHiddenIndex(lastHiddenRow + 1, 1, true, firstHiddenRow - 1);
|
96
92
|
hiddenRowsPlugin.hideRows(rowsToHide);
|
93
|
+
var lastHiddenRow = rowsToHide[rowsToHide.length - 1];
|
94
|
+
var rowToSelect = this.rowIndexMapper.getNearestNotHiddenIndex(lastHiddenRow, 1, true);
|
97
95
|
|
98
96
|
if (Number.isInteger(rowToSelect) && rowToSelect >= 0) {
|
99
97
|
this.selectRows(rowToSelect);
|
@@ -62,11 +62,9 @@ export default function hideRowItem(hiddenRowsPlugin) {
|
|
62
62
|
rowsToHide.push(visualRow);
|
63
63
|
}
|
64
64
|
|
65
|
-
var firstHiddenRow = rowsToHide[0];
|
66
|
-
var lastHiddenRow = rowsToHide[rowsToHide.length - 1]; // Looking for a visual index on the top and then (when not found) on the bottom.
|
67
|
-
|
68
|
-
var rowToSelect = this.rowIndexMapper.getFirstNotHiddenIndex(lastHiddenRow + 1, 1, true, firstHiddenRow - 1);
|
69
65
|
hiddenRowsPlugin.hideRows(rowsToHide);
|
66
|
+
var lastHiddenRow = rowsToHide[rowsToHide.length - 1];
|
67
|
+
var rowToSelect = this.rowIndexMapper.getNearestNotHiddenIndex(lastHiddenRow, 1, true);
|
70
68
|
|
71
69
|
if (Number.isInteger(rowToSelect) && rowToSelect >= 0) {
|
72
70
|
this.selectRows(rowToSelect);
|
@@ -79,9 +79,9 @@ function showRowItem(hiddenRowsPlugin) {
|
|
79
79
|
var startVisualRow = rows[0];
|
80
80
|
var endVisualRow = rows[rows.length - 1]; // Add to the selection one more visual row on the top.
|
81
81
|
|
82
|
-
startVisualRow = (_this$rowIndexMapper$ = this.rowIndexMapper.
|
82
|
+
startVisualRow = (_this$rowIndexMapper$ = this.rowIndexMapper.getNearestNotHiddenIndex(startVisualRow - 1, -1)) !== null && _this$rowIndexMapper$ !== void 0 ? _this$rowIndexMapper$ : 0; // Add to the selection one more visual row on the bottom.
|
83
83
|
|
84
|
-
endVisualRow = (_this$rowIndexMapper$2 = this.rowIndexMapper.
|
84
|
+
endVisualRow = (_this$rowIndexMapper$2 = this.rowIndexMapper.getNearestNotHiddenIndex(endVisualRow + 1, 1)) !== null && _this$rowIndexMapper$2 !== void 0 ? _this$rowIndexMapper$2 : this.countRows() - 1;
|
85
85
|
hiddenRowsPlugin.showRows(rows); // We render rows at first. It was needed for getting fixed rows.
|
86
86
|
// Please take a look at #6864 for broader description.
|
87
87
|
|
@@ -108,8 +108,8 @@ function showRowItem(hiddenRowsPlugin) {
|
|
108
108
|
|
109
109
|
rows.length = 0;
|
110
110
|
var selectedRangeLast = this.getSelectedRangeLast();
|
111
|
-
var visualStartRow = selectedRangeLast.
|
112
|
-
var visualEndRow = selectedRangeLast.
|
111
|
+
var visualStartRow = selectedRangeLast.getTopStartCorner().row;
|
112
|
+
var visualEndRow = selectedRangeLast.getBottomEndCorner().row;
|
113
113
|
var rowIndexMapper = this.rowIndexMapper;
|
114
114
|
var renderableStartRow = rowIndexMapper.getRenderableFromVisualIndex(visualStartRow);
|
115
115
|
var renderableEndRow = rowIndexMapper.getRenderableFromVisualIndex(visualEndRow);
|
@@ -136,7 +136,7 @@ function showRowItem(hiddenRowsPlugin) {
|
|
136
136
|
physicalRowIndexes.push.apply(physicalRowIndexes, _toConsumableArray(notTrimmedRowIndexes.slice(0, this.countRows())));
|
137
137
|
} else {
|
138
138
|
var lastVisualIndex = this.countRows() - 1;
|
139
|
-
var lastRenderableIndex = rowIndexMapper.getRenderableFromVisualIndex(rowIndexMapper.
|
139
|
+
var lastRenderableIndex = rowIndexMapper.getRenderableFromVisualIndex(rowIndexMapper.getNearestNotHiddenIndex(lastVisualIndex, -1)); // Handled row is the last rendered index and there are some visual indexes after it.
|
140
140
|
|
141
141
|
if (renderableEndRow === lastRenderableIndex && lastVisualIndex > visualEndRow) {
|
142
142
|
physicalRowIndexes.push.apply(physicalRowIndexes, _toConsumableArray(notTrimmedRowIndexes.slice(visualEndRow + 1)));
|
@@ -49,9 +49,9 @@ export default function showRowItem(hiddenRowsPlugin) {
|
|
49
49
|
var startVisualRow = rows[0];
|
50
50
|
var endVisualRow = rows[rows.length - 1]; // Add to the selection one more visual row on the top.
|
51
51
|
|
52
|
-
startVisualRow = (_this$rowIndexMapper$ = this.rowIndexMapper.
|
52
|
+
startVisualRow = (_this$rowIndexMapper$ = this.rowIndexMapper.getNearestNotHiddenIndex(startVisualRow - 1, -1)) !== null && _this$rowIndexMapper$ !== void 0 ? _this$rowIndexMapper$ : 0; // Add to the selection one more visual row on the bottom.
|
53
53
|
|
54
|
-
endVisualRow = (_this$rowIndexMapper$2 = this.rowIndexMapper.
|
54
|
+
endVisualRow = (_this$rowIndexMapper$2 = this.rowIndexMapper.getNearestNotHiddenIndex(endVisualRow + 1, 1)) !== null && _this$rowIndexMapper$2 !== void 0 ? _this$rowIndexMapper$2 : this.countRows() - 1;
|
55
55
|
hiddenRowsPlugin.showRows(rows); // We render rows at first. It was needed for getting fixed rows.
|
56
56
|
// Please take a look at #6864 for broader description.
|
57
57
|
|
@@ -78,8 +78,8 @@ export default function showRowItem(hiddenRowsPlugin) {
|
|
78
78
|
|
79
79
|
rows.length = 0;
|
80
80
|
var selectedRangeLast = this.getSelectedRangeLast();
|
81
|
-
var visualStartRow = selectedRangeLast.
|
82
|
-
var visualEndRow = selectedRangeLast.
|
81
|
+
var visualStartRow = selectedRangeLast.getTopStartCorner().row;
|
82
|
+
var visualEndRow = selectedRangeLast.getBottomEndCorner().row;
|
83
83
|
var rowIndexMapper = this.rowIndexMapper;
|
84
84
|
var renderableStartRow = rowIndexMapper.getRenderableFromVisualIndex(visualStartRow);
|
85
85
|
var renderableEndRow = rowIndexMapper.getRenderableFromVisualIndex(visualEndRow);
|
@@ -106,7 +106,7 @@ export default function showRowItem(hiddenRowsPlugin) {
|
|
106
106
|
physicalRowIndexes.push.apply(physicalRowIndexes, _toConsumableArray(notTrimmedRowIndexes.slice(0, this.countRows())));
|
107
107
|
} else {
|
108
108
|
var lastVisualIndex = this.countRows() - 1;
|
109
|
-
var lastRenderableIndex = rowIndexMapper.getRenderableFromVisualIndex(rowIndexMapper.
|
109
|
+
var lastRenderableIndex = rowIndexMapper.getRenderableFromVisualIndex(rowIndexMapper.getNearestNotHiddenIndex(lastVisualIndex, -1)); // Handled row is the last rendered index and there are some visual indexes after it.
|
110
110
|
|
111
111
|
if (renderableEndRow === lastRenderableIndex && lastVisualIndex > visualEndRow) {
|
112
112
|
physicalRowIndexes.push.apply(physicalRowIndexes, _toConsumableArray(notTrimmedRowIndexes.slice(visualEndRow + 1)));
|
@@ -85,13 +85,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
|
|
85
85
|
|
86
86
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
87
87
|
|
88
|
-
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
88
|
+
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
89
89
|
|
90
90
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
91
91
|
|
92
92
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
93
93
|
|
94
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf
|
94
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
95
95
|
|
96
96
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
97
97
|
|
@@ -101,7 +101,7 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
|
|
101
101
|
|
102
102
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
103
103
|
|
104
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
104
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
105
105
|
|
106
106
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
107
107
|
|
@@ -128,6 +128,8 @@ _pluginHooks.default.getSingleton().register('afterUnhideRows');
|
|
128
128
|
var PLUGIN_KEY = 'hiddenRows';
|
129
129
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
130
130
|
var PLUGIN_PRIORITY = 320;
|
131
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
132
|
+
|
131
133
|
/**
|
132
134
|
* @plugin HiddenRows
|
133
135
|
* @class HiddenRows
|
@@ -284,7 +286,10 @@ var HiddenRows = /*#__PURE__*/function (_BasePlugin) {
|
|
284
286
|
_get(_getPrototypeOf(HiddenRows.prototype), "enablePlugin", this).call(this);
|
285
287
|
}
|
286
288
|
/**
|
287
|
-
* Updates the plugin state.
|
289
|
+
* Updates the plugin's state.
|
290
|
+
*
|
291
|
+
* This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
|
292
|
+
* - [`hiddenRows`](@/api/options.md#hiddenrows)
|
288
293
|
*/
|
289
294
|
|
290
295
|
}, {
|
@@ -32,13 +32,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
|
|
32
32
|
|
33
33
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
34
34
|
|
35
|
-
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
35
|
+
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
36
36
|
|
37
37
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
38
38
|
|
39
39
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
40
40
|
|
41
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf
|
41
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
42
42
|
|
43
43
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
44
44
|
|
@@ -48,7 +48,7 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
|
|
48
48
|
|
49
49
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
50
50
|
|
51
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
51
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
52
52
|
|
53
53
|
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
54
54
|
|
@@ -81,6 +81,8 @@ Hooks.getSingleton().register('beforeUnhideRows');
|
|
81
81
|
Hooks.getSingleton().register('afterUnhideRows');
|
82
82
|
export var PLUGIN_KEY = 'hiddenRows';
|
83
83
|
export var PLUGIN_PRIORITY = 320;
|
84
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
85
|
+
|
84
86
|
/**
|
85
87
|
* @plugin HiddenRows
|
86
88
|
* @class HiddenRows
|
@@ -235,7 +237,10 @@ export var HiddenRows = /*#__PURE__*/function (_BasePlugin) {
|
|
235
237
|
_get(_getPrototypeOf(HiddenRows.prototype), "enablePlugin", this).call(this);
|
236
238
|
}
|
237
239
|
/**
|
238
|
-
* Updates the plugin state.
|
240
|
+
* Updates the plugin's state.
|
241
|
+
*
|
242
|
+
* This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
|
243
|
+
* - [`hiddenRows`](@/api/options.md#hiddenrows)
|
239
244
|
*/
|
240
245
|
|
241
246
|
}, {
|
@@ -75,7 +75,7 @@ function freezeColumnItem(manualColumnFreezePlugin) {
|
|
75
75
|
hide = true;
|
76
76
|
} else if (selection.length > 1) {
|
77
77
|
hide = true;
|
78
|
-
} else if (selection[0].from.col !== selection[0].to.col || selection[0].from.col <= this.getSettings().
|
78
|
+
} else if (selection[0].from.col !== selection[0].to.col || selection[0].from.col <= this.getSettings().fixedColumnsStart - 1) {
|
79
79
|
hide = true;
|
80
80
|
}
|
81
81
|
|
@@ -50,7 +50,7 @@ export default function freezeColumnItem(manualColumnFreezePlugin) {
|
|
50
50
|
hide = true;
|
51
51
|
} else if (selection.length > 1) {
|
52
52
|
hide = true;
|
53
|
-
} else if (selection[0].from.col !== selection[0].to.col || selection[0].from.col <= this.getSettings().
|
53
|
+
} else if (selection[0].from.col !== selection[0].to.col || selection[0].from.col <= this.getSettings().fixedColumnsStart - 1) {
|
54
54
|
hide = true;
|
55
55
|
}
|
56
56
|
|
@@ -75,7 +75,7 @@ function unfreezeColumnItem(manualColumnFreezePlugin) {
|
|
75
75
|
hide = true;
|
76
76
|
} else if (selection.length > 1) {
|
77
77
|
hide = true;
|
78
|
-
} else if (selection[0].from.col !== selection[0].to.col || selection[0].from.col >= this.getSettings().
|
78
|
+
} else if (selection[0].from.col !== selection[0].to.col || selection[0].from.col >= this.getSettings().fixedColumnsStart) {
|
79
79
|
hide = true;
|
80
80
|
}
|
81
81
|
|
@@ -50,7 +50,7 @@ export default function unfreezeColumnItem(manualColumnFreezePlugin) {
|
|
50
50
|
hide = true;
|
51
51
|
} else if (selection.length > 1) {
|
52
52
|
hide = true;
|
53
|
-
} else if (selection[0].from.col !== selection[0].to.col || selection[0].from.col >= this.getSettings().
|
53
|
+
} else if (selection[0].from.col !== selection[0].to.col || selection[0].from.col >= this.getSettings().fixedColumnsStart) {
|
54
54
|
hide = true;
|
55
55
|
}
|
56
56
|
|
@@ -33,6 +33,8 @@ require("core-js/modules/web.dom-collections.iterator.js");
|
|
33
33
|
|
34
34
|
var _base = require("../base");
|
35
35
|
|
36
|
+
var _pluginHooks = _interopRequireDefault(require("../../pluginHooks"));
|
37
|
+
|
36
38
|
var _freezeColumn = _interopRequireDefault(require("./contextMenuItem/freezeColumn"));
|
37
39
|
|
38
40
|
var _unfreezeColumn = _interopRequireDefault(require("./contextMenuItem/unfreezeColumn"));
|
@@ -45,13 +47,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
|
|
45
47
|
|
46
48
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
47
49
|
|
48
|
-
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
50
|
+
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
49
51
|
|
50
52
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
51
53
|
|
52
54
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
53
55
|
|
54
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf
|
56
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
55
57
|
|
56
58
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
57
59
|
|
@@ -61,13 +63,23 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
|
|
61
63
|
|
62
64
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
63
65
|
|
64
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
66
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
67
|
+
|
68
|
+
_pluginHooks.default.getSingleton().register('beforeColumnFreeze');
|
69
|
+
|
70
|
+
_pluginHooks.default.getSingleton().register('afterColumnFreeze');
|
71
|
+
|
72
|
+
_pluginHooks.default.getSingleton().register('beforeColumnUnfreeze');
|
73
|
+
|
74
|
+
_pluginHooks.default.getSingleton().register('afterColumnUnfreeze');
|
65
75
|
|
66
76
|
var PLUGIN_KEY = 'manualColumnFreeze';
|
67
77
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
68
78
|
var PLUGIN_PRIORITY = 110;
|
69
79
|
exports.PLUGIN_PRIORITY = PLUGIN_PRIORITY;
|
70
80
|
var privatePool = new WeakMap();
|
81
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
82
|
+
|
71
83
|
/**
|
72
84
|
* @plugin ManualColumnFreeze
|
73
85
|
* @class ManualColumnFreeze
|
@@ -147,7 +159,10 @@ var ManualColumnFreeze = /*#__PURE__*/function (_BasePlugin) {
|
|
147
159
|
_get(_getPrototypeOf(ManualColumnFreeze.prototype), "disablePlugin", this).call(this);
|
148
160
|
}
|
149
161
|
/**
|
150
|
-
* Updates the plugin state.
|
162
|
+
* Updates the plugin's state.
|
163
|
+
*
|
164
|
+
* This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
|
165
|
+
* - [`manualColumnFreeze`](@/api/options.md#manualcolumnfreeze)
|
151
166
|
*/
|
152
167
|
|
153
168
|
}, {
|
@@ -171,18 +186,30 @@ var ManualColumnFreeze = /*#__PURE__*/function (_BasePlugin) {
|
|
171
186
|
key: "freezeColumn",
|
172
187
|
value: function freezeColumn(column) {
|
173
188
|
var priv = privatePool.get(this);
|
174
|
-
var settings = this.hot.getSettings();
|
189
|
+
var settings = this.hot.getSettings(); // columns are already fixed (frozen)
|
190
|
+
|
191
|
+
var freezePerformed = settings.fixedColumnsStart < this.hot.countCols() && column > settings.fixedColumnsStart - 1;
|
175
192
|
|
176
193
|
if (!priv.afterFirstUse) {
|
177
194
|
priv.afterFirstUse = true;
|
178
195
|
}
|
179
196
|
|
180
|
-
|
181
|
-
|
197
|
+
var beforeColumnFreezeHook = this.hot.runHooks('beforeColumnFreeze', column, freezePerformed);
|
198
|
+
|
199
|
+
if (beforeColumnFreezeHook === false) {
|
200
|
+
return;
|
201
|
+
}
|
202
|
+
|
203
|
+
if (freezePerformed) {
|
204
|
+
this.hot.columnIndexMapper.moveIndexes(column, settings.fixedColumnsStart); // Since 12.0.0, the "fixedColumnsLeft" is replaced with the "fixedColumnsStart" option.
|
205
|
+
// However, keeping the old name still in effect. When both option names are used together,
|
206
|
+
// the error is thrown. To prevent that, the plugin needs to modify the original option key
|
207
|
+
// to bypass the validation.
|
208
|
+
|
209
|
+
settings._fixedColumnsStart += 1;
|
182
210
|
}
|
183
211
|
|
184
|
-
this.hot.
|
185
|
-
settings.fixedColumnsLeft += 1;
|
212
|
+
this.hot.runHooks('afterColumnFreeze', column, freezePerformed);
|
186
213
|
}
|
187
214
|
/**
|
188
215
|
* Unfreezes the given column (remove it from fixed columns and bring to it's previous position).
|
@@ -194,18 +221,30 @@ var ManualColumnFreeze = /*#__PURE__*/function (_BasePlugin) {
|
|
194
221
|
key: "unfreezeColumn",
|
195
222
|
value: function unfreezeColumn(column) {
|
196
223
|
var priv = privatePool.get(this);
|
197
|
-
var settings = this.hot.getSettings();
|
224
|
+
var settings = this.hot.getSettings(); // columns are not fixed (not frozen)
|
225
|
+
|
226
|
+
var unfreezePerformed = settings.fixedColumnsStart > 0 && column <= settings.fixedColumnsStart - 1;
|
198
227
|
|
199
228
|
if (!priv.afterFirstUse) {
|
200
229
|
priv.afterFirstUse = true;
|
201
230
|
}
|
202
231
|
|
203
|
-
|
204
|
-
|
232
|
+
var beforeColumnUnfreezeHook = this.hot.runHooks('beforeColumnUnfreeze', column, unfreezePerformed);
|
233
|
+
|
234
|
+
if (beforeColumnUnfreezeHook === false) {
|
235
|
+
return;
|
236
|
+
}
|
237
|
+
|
238
|
+
if (unfreezePerformed) {
|
239
|
+
// Since 12.0.0, the "fixedColumnsLeft" is replaced with the "fixedColumnsStart" option.
|
240
|
+
// However, keeping the old name still in effect. When both option names are used together,
|
241
|
+
// the error is thrown. To prevent that, the plugin needs to modify the original option key
|
242
|
+
// to bypass the validation.
|
243
|
+
settings._fixedColumnsStart -= 1;
|
244
|
+
this.hot.columnIndexMapper.moveIndexes(column, settings.fixedColumnsStart);
|
205
245
|
}
|
206
246
|
|
207
|
-
|
208
|
-
this.hot.columnIndexMapper.moveIndexes(column, settings.fixedColumnsLeft);
|
247
|
+
this.hot.runHooks('afterColumnUnfreeze', column, unfreezePerformed);
|
209
248
|
}
|
210
249
|
/**
|
211
250
|
* Adds the manualColumnFreeze context menu entries.
|
@@ -236,7 +275,7 @@ var ManualColumnFreeze = /*#__PURE__*/function (_BasePlugin) {
|
|
236
275
|
var priv = privatePool.get(this);
|
237
276
|
|
238
277
|
if (priv.afterFirstUse) {
|
239
|
-
var freezeLine = this.hot.getSettings().
|
278
|
+
var freezeLine = this.hot.getSettings().fixedColumnsStart; // Moving any column before the "freeze line" isn't possible.
|
240
279
|
|
241
280
|
if (finalIndex < freezeLine) {
|
242
281
|
return false;
|
@@ -6,13 +6,13 @@ function _defineProperties(target, props) { for (var i = 0; i < props.length; i+
|
|
6
6
|
|
7
7
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
8
8
|
|
9
|
-
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
9
|
+
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
10
10
|
|
11
11
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
12
12
|
|
13
13
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
14
14
|
|
15
|
-
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf
|
15
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
16
16
|
|
17
17
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
18
18
|
|
@@ -22,7 +22,7 @@ function _assertThisInitialized(self) { if (self === void 0) { throw new Referen
|
|
22
22
|
|
23
23
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
24
24
|
|
25
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
25
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
26
26
|
|
27
27
|
import "core-js/modules/es.array.iterator.js";
|
28
28
|
import "core-js/modules/es.object.to-string.js";
|
@@ -38,11 +38,18 @@ import "core-js/modules/es.symbol.js";
|
|
38
38
|
import "core-js/modules/es.symbol.description.js";
|
39
39
|
import "core-js/modules/es.symbol.iterator.js";
|
40
40
|
import { BasePlugin } from "../base/index.mjs";
|
41
|
+
import Hooks from "../../pluginHooks.mjs";
|
41
42
|
import freezeColumnItem from "./contextMenuItem/freezeColumn.mjs";
|
42
43
|
import unfreezeColumnItem from "./contextMenuItem/unfreezeColumn.mjs";
|
44
|
+
Hooks.getSingleton().register('beforeColumnFreeze');
|
45
|
+
Hooks.getSingleton().register('afterColumnFreeze');
|
46
|
+
Hooks.getSingleton().register('beforeColumnUnfreeze');
|
47
|
+
Hooks.getSingleton().register('afterColumnUnfreeze');
|
43
48
|
export var PLUGIN_KEY = 'manualColumnFreeze';
|
44
49
|
export var PLUGIN_PRIORITY = 110;
|
45
50
|
var privatePool = new WeakMap();
|
51
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
52
|
+
|
46
53
|
/**
|
47
54
|
* @plugin ManualColumnFreeze
|
48
55
|
* @class ManualColumnFreeze
|
@@ -122,7 +129,10 @@ export var ManualColumnFreeze = /*#__PURE__*/function (_BasePlugin) {
|
|
122
129
|
_get(_getPrototypeOf(ManualColumnFreeze.prototype), "disablePlugin", this).call(this);
|
123
130
|
}
|
124
131
|
/**
|
125
|
-
* Updates the plugin state.
|
132
|
+
* Updates the plugin's state.
|
133
|
+
*
|
134
|
+
* This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options:
|
135
|
+
* - [`manualColumnFreeze`](@/api/options.md#manualcolumnfreeze)
|
126
136
|
*/
|
127
137
|
|
128
138
|
}, {
|
@@ -146,18 +156,30 @@ export var ManualColumnFreeze = /*#__PURE__*/function (_BasePlugin) {
|
|
146
156
|
key: "freezeColumn",
|
147
157
|
value: function freezeColumn(column) {
|
148
158
|
var priv = privatePool.get(this);
|
149
|
-
var settings = this.hot.getSettings();
|
159
|
+
var settings = this.hot.getSettings(); // columns are already fixed (frozen)
|
160
|
+
|
161
|
+
var freezePerformed = settings.fixedColumnsStart < this.hot.countCols() && column > settings.fixedColumnsStart - 1;
|
150
162
|
|
151
163
|
if (!priv.afterFirstUse) {
|
152
164
|
priv.afterFirstUse = true;
|
153
165
|
}
|
154
166
|
|
155
|
-
|
156
|
-
|
167
|
+
var beforeColumnFreezeHook = this.hot.runHooks('beforeColumnFreeze', column, freezePerformed);
|
168
|
+
|
169
|
+
if (beforeColumnFreezeHook === false) {
|
170
|
+
return;
|
157
171
|
}
|
158
172
|
|
159
|
-
|
160
|
-
|
173
|
+
if (freezePerformed) {
|
174
|
+
this.hot.columnIndexMapper.moveIndexes(column, settings.fixedColumnsStart); // Since 12.0.0, the "fixedColumnsLeft" is replaced with the "fixedColumnsStart" option.
|
175
|
+
// However, keeping the old name still in effect. When both option names are used together,
|
176
|
+
// the error is thrown. To prevent that, the plugin needs to modify the original option key
|
177
|
+
// to bypass the validation.
|
178
|
+
|
179
|
+
settings._fixedColumnsStart += 1;
|
180
|
+
}
|
181
|
+
|
182
|
+
this.hot.runHooks('afterColumnFreeze', column, freezePerformed);
|
161
183
|
}
|
162
184
|
/**
|
163
185
|
* Unfreezes the given column (remove it from fixed columns and bring to it's previous position).
|
@@ -169,18 +191,30 @@ export var ManualColumnFreeze = /*#__PURE__*/function (_BasePlugin) {
|
|
169
191
|
key: "unfreezeColumn",
|
170
192
|
value: function unfreezeColumn(column) {
|
171
193
|
var priv = privatePool.get(this);
|
172
|
-
var settings = this.hot.getSettings();
|
194
|
+
var settings = this.hot.getSettings(); // columns are not fixed (not frozen)
|
195
|
+
|
196
|
+
var unfreezePerformed = settings.fixedColumnsStart > 0 && column <= settings.fixedColumnsStart - 1;
|
173
197
|
|
174
198
|
if (!priv.afterFirstUse) {
|
175
199
|
priv.afterFirstUse = true;
|
176
200
|
}
|
177
201
|
|
178
|
-
|
179
|
-
|
202
|
+
var beforeColumnUnfreezeHook = this.hot.runHooks('beforeColumnUnfreeze', column, unfreezePerformed);
|
203
|
+
|
204
|
+
if (beforeColumnUnfreezeHook === false) {
|
205
|
+
return;
|
206
|
+
}
|
207
|
+
|
208
|
+
if (unfreezePerformed) {
|
209
|
+
// Since 12.0.0, the "fixedColumnsLeft" is replaced with the "fixedColumnsStart" option.
|
210
|
+
// However, keeping the old name still in effect. When both option names are used together,
|
211
|
+
// the error is thrown. To prevent that, the plugin needs to modify the original option key
|
212
|
+
// to bypass the validation.
|
213
|
+
settings._fixedColumnsStart -= 1;
|
214
|
+
this.hot.columnIndexMapper.moveIndexes(column, settings.fixedColumnsStart);
|
180
215
|
}
|
181
216
|
|
182
|
-
|
183
|
-
this.hot.columnIndexMapper.moveIndexes(column, settings.fixedColumnsLeft);
|
217
|
+
this.hot.runHooks('afterColumnUnfreeze', column, unfreezePerformed);
|
184
218
|
}
|
185
219
|
/**
|
186
220
|
* Adds the manualColumnFreeze context menu entries.
|
@@ -211,7 +245,7 @@ export var ManualColumnFreeze = /*#__PURE__*/function (_BasePlugin) {
|
|
211
245
|
var priv = privatePool.get(this);
|
212
246
|
|
213
247
|
if (priv.afterFirstUse) {
|
214
|
-
var freezeLine = this.hot.getSettings().
|
248
|
+
var freezeLine = this.hot.getSettings().fixedColumnsStart; // Moving any column before the "freeze line" isn't possible.
|
215
249
|
|
216
250
|
if (finalIndex < freezeLine) {
|
217
251
|
return false;
|