handsontable 12.1.2 → 12.2.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/SheetClip/SheetClip.js +3 -32
- package/3rdparty/SheetClip/SheetClip.mjs +3 -23
- package/3rdparty/SheetClip/index.js +0 -2
- package/3rdparty/autoResize/autoResize.js +119 -145
- package/3rdparty/autoResize/autoResize.mjs +119 -143
- package/3rdparty/autoResize/index.js +0 -2
- package/3rdparty/walkontable/src/border.js +72 -174
- package/3rdparty/walkontable/src/border.mjs +74 -161
- package/3rdparty/walkontable/src/calculator/constants.js +0 -3
- package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
- package/3rdparty/walkontable/src/calculator/index.js +0 -10
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +26 -76
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +26 -69
- package/3rdparty/walkontable/src/calculator/viewportRows.js +20 -48
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +20 -41
- package/3rdparty/walkontable/src/cell/coords.js +13 -43
- package/3rdparty/walkontable/src/cell/coords.mjs +13 -38
- package/3rdparty/walkontable/src/cell/range.js +55 -130
- package/3rdparty/walkontable/src/cell/range.mjs +60 -126
- package/3rdparty/walkontable/src/core/_base.js +16 -74
- package/3rdparty/walkontable/src/core/_base.mjs +19 -70
- package/3rdparty/walkontable/src/core/clone.js +1 -40
- package/3rdparty/walkontable/src/core/clone.mjs +3 -30
- package/3rdparty/walkontable/src/core/core.js +3 -57
- package/3rdparty/walkontable/src/core/core.mjs +5 -41
- package/3rdparty/walkontable/src/event.js +31 -78
- package/3rdparty/walkontable/src/event.mjs +31 -65
- package/3rdparty/walkontable/src/facade/core.js +1 -17
- package/3rdparty/walkontable/src/facade/core.mjs +7 -20
- package/3rdparty/walkontable/src/filter/column.js +9 -18
- package/3rdparty/walkontable/src/filter/column.mjs +9 -17
- package/3rdparty/walkontable/src/filter/row.js +9 -18
- package/3rdparty/walkontable/src/filter/row.mjs +9 -17
- package/3rdparty/walkontable/src/index.js +0 -31
- package/3rdparty/walkontable/src/overlay/_base.js +24 -69
- package/3rdparty/walkontable/src/overlay/_base.mjs +31 -68
- package/3rdparty/walkontable/src/overlay/bottom.js +28 -99
- package/3rdparty/walkontable/src/overlay/bottom.mjs +30 -86
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +7 -53
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +9 -40
- package/3rdparty/walkontable/src/overlay/constants.js +0 -6
- package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
- package/3rdparty/walkontable/src/overlay/index.js +0 -17
- package/3rdparty/walkontable/src/overlay/inlineStart.js +21 -91
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +23 -78
- package/3rdparty/walkontable/src/overlay/top.js +27 -100
- package/3rdparty/walkontable/src/overlay/top.mjs +29 -87
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +4 -51
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +6 -38
- package/3rdparty/walkontable/src/overlays.js +58 -129
- package/3rdparty/walkontable/src/overlays.mjs +60 -121
- package/3rdparty/walkontable/src/renderer/_base.js +4 -20
- package/3rdparty/walkontable/src/renderer/_base.mjs +8 -22
- package/3rdparty/walkontable/src/renderer/cells.js +10 -54
- package/3rdparty/walkontable/src/renderer/cells.mjs +22 -52
- package/3rdparty/walkontable/src/renderer/colGroup.js +10 -47
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +21 -46
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +8 -50
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +19 -49
- package/3rdparty/walkontable/src/renderer/index.js +13 -36
- package/3rdparty/walkontable/src/renderer/index.mjs +17 -27
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -50
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +20 -49
- package/3rdparty/walkontable/src/renderer/rows.js +3 -46
- package/3rdparty/walkontable/src/renderer/rows.mjs +3 -29
- package/3rdparty/walkontable/src/renderer/table.js +22 -49
- package/3rdparty/walkontable/src/renderer/table.mjs +22 -48
- package/3rdparty/walkontable/src/scroll.js +56 -86
- package/3rdparty/walkontable/src/scroll.mjs +58 -86
- package/3rdparty/walkontable/src/selection.js +20 -101
- package/3rdparty/walkontable/src/selection.mjs +22 -85
- package/3rdparty/walkontable/src/settings.js +9 -29
- package/3rdparty/walkontable/src/settings.mjs +9 -27
- package/3rdparty/walkontable/src/table/bottom.js +1 -35
- package/3rdparty/walkontable/src/table/bottom.mjs +6 -25
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -35
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +7 -26
- package/3rdparty/walkontable/src/table/inlineStart.js +1 -35
- package/3rdparty/walkontable/src/table/inlineStart.mjs +3 -22
- package/3rdparty/walkontable/src/table/master.js +10 -55
- package/3rdparty/walkontable/src/table/master.mjs +15 -44
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +7 -28
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +7 -26
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +7 -28
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +7 -26
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +7 -22
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +7 -20
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +7 -23
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +7 -21
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +7 -22
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +7 -20
- package/3rdparty/walkontable/src/table/top.js +1 -35
- package/3rdparty/walkontable/src/table/top.mjs +6 -25
- package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -35
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +7 -26
- package/3rdparty/walkontable/src/table.js +74 -238
- package/3rdparty/walkontable/src/table.mjs +84 -227
- package/3rdparty/walkontable/src/types.js +0 -5
- package/3rdparty/walkontable/src/types.mjs +0 -5
- package/3rdparty/walkontable/src/utils/column.js +9 -31
- package/3rdparty/walkontable/src/utils/column.mjs +13 -30
- package/3rdparty/walkontable/src/utils/nodesPool.js +3 -12
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +3 -11
- package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
- package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
- package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -33
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +6 -26
- package/3rdparty/walkontable/src/utils/orderView/view.js +14 -46
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +21 -50
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +3 -15
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +3 -14
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +8 -22
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +23 -34
- package/3rdparty/walkontable/src/utils/row.js +2 -13
- package/3rdparty/walkontable/src/utils/row.mjs +2 -12
- package/3rdparty/walkontable/src/viewport.js +38 -100
- package/3rdparty/walkontable/src/viewport.mjs +40 -99
- package/CHANGELOG.md +103 -5
- package/base.js +6 -17
- package/base.mjs +6 -12
- package/cellTypes/autocompleteType/autocompleteType.js +0 -4
- package/cellTypes/autocompleteType/index.js +0 -2
- package/cellTypes/checkboxType/checkboxType.js +0 -3
- package/cellTypes/checkboxType/index.js +0 -2
- package/cellTypes/dateType/dateType.js +0 -4
- package/cellTypes/dateType/index.js +0 -2
- package/cellTypes/dropdownType/dropdownType.js +0 -4
- package/cellTypes/dropdownType/index.js +0 -2
- package/cellTypes/handsontableType/handsontableType.js +0 -3
- package/cellTypes/handsontableType/index.js +0 -2
- package/cellTypes/index.js +0 -21
- package/cellTypes/index.mjs +3 -5
- package/cellTypes/numericType/index.js +0 -2
- package/cellTypes/numericType/numericType.js +0 -4
- package/cellTypes/passwordType/index.js +0 -2
- package/cellTypes/passwordType/passwordType.js +0 -3
- package/cellTypes/registry.js +10 -25
- package/cellTypes/registry.mjs +10 -20
- package/cellTypes/textType/index.js +0 -2
- package/cellTypes/textType/textType.js +0 -3
- package/cellTypes/timeType/index.js +0 -2
- package/cellTypes/timeType/timeType.js +0 -4
- package/core.d.ts +6 -4
- package/core.js +514 -974
- package/core.mjs +519 -921
- package/dataMap/dataMap.js +127 -212
- package/dataMap/dataMap.mjs +127 -188
- package/{dataSource.js → dataMap/dataSource.js} +18 -66
- package/{dataSource.mjs → dataMap/dataSource.mjs} +20 -60
- package/dataMap/index.js +0 -13
- package/dataMap/metaManager/index.js +21 -46
- package/dataMap/metaManager/index.mjs +47 -64
- package/dataMap/metaManager/lazyFactoryMap.js +23 -55
- package/dataMap/metaManager/lazyFactoryMap.mjs +23 -43
- package/dataMap/metaManager/metaLayers/cellMeta.js +16 -52
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +16 -37
- package/dataMap/metaManager/metaLayers/columnMeta.js +8 -22
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +14 -25
- package/dataMap/metaManager/metaLayers/globalMeta.js +4 -19
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -15
- package/dataMap/metaManager/metaLayers/tableMeta.js +4 -15
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +28 -37
- package/dataMap/metaManager/metaSchema.js +196 -257
- package/dataMap/metaManager/metaSchema.mjs +196 -248
- package/dataMap/metaManager/mods/dynamicCellMeta.js +6 -36
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +20 -39
- package/dataMap/metaManager/mods/extendMetaProperties.js +5 -28
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -18
- package/dataMap/metaManager/utils.js +11 -20
- package/dataMap/metaManager/utils.mjs +21 -23
- package/dataMap/replaceData.js +14 -35
- package/dataMap/replaceData.mjs +35 -45
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +64469 -93042
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +527 -284
- package/dist/handsontable.js +9616 -21414
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +3 -3
- package/dist/languages/all.js +0 -175
- package/dist/languages/ar-AR.js +0 -10
- package/dist/languages/cs-CZ.js +0 -10
- package/dist/languages/de-CH.js +0 -10
- package/dist/languages/de-DE.js +0 -10
- package/dist/languages/en-US.js +0 -10
- package/dist/languages/es-MX.js +0 -10
- package/dist/languages/fr-FR.js +0 -10
- package/dist/languages/it-IT.js +0 -10
- package/dist/languages/ja-JP.js +0 -10
- package/dist/languages/ko-KR.js +0 -10
- package/dist/languages/lv-LV.js +0 -10
- package/dist/languages/nb-NO.js +0 -10
- package/dist/languages/nl-NL.js +0 -10
- package/dist/languages/pl-PL.js +0 -10
- package/dist/languages/pt-BR.js +0 -10
- package/dist/languages/ru-RU.js +0 -10
- package/dist/languages/sr-SP.js +0 -10
- package/dist/languages/zh-CN.js +0 -10
- package/dist/languages/zh-TW.js +0 -10
- package/editorManager.js +89 -124
- package/editorManager.mjs +89 -104
- package/editors/autocompleteEditor/autocompleteEditor.js +26 -133
- package/editors/autocompleteEditor/autocompleteEditor.mjs +26 -104
- package/editors/autocompleteEditor/index.js +0 -2
- package/editors/baseEditor/baseEditor.js +45 -155
- package/editors/baseEditor/baseEditor.mjs +45 -129
- package/editors/baseEditor/index.js +0 -2
- package/editors/checkboxEditor/checkboxEditor.js +2 -33
- package/editors/checkboxEditor/checkboxEditor.mjs +2 -19
- package/editors/checkboxEditor/index.js +0 -2
- package/editors/dateEditor/dateEditor.js +36 -97
- package/editors/dateEditor/dateEditor.mjs +35 -74
- package/editors/dateEditor/index.js +0 -2
- package/editors/dropdownEditor/dropdownEditor.js +1 -41
- package/editors/dropdownEditor/dropdownEditor.mjs +1 -22
- package/editors/dropdownEditor/index.js +0 -2
- package/editors/handsontableEditor/handsontableEditor.js +13 -85
- package/editors/handsontableEditor/handsontableEditor.mjs +13 -66
- package/editors/handsontableEditor/index.js +0 -2
- package/editors/index.js +0 -25
- package/editors/index.mjs +3 -5
- package/editors/numericEditor/index.js +0 -2
- package/editors/numericEditor/numericEditor.js +1 -31
- package/editors/numericEditor/numericEditor.mjs +1 -18
- package/editors/passwordEditor/index.js +0 -2
- package/editors/passwordEditor/passwordEditor.js +1 -38
- package/editors/passwordEditor/passwordEditor.mjs +1 -22
- package/editors/registry.js +10 -36
- package/editors/registry.mjs +10 -28
- package/editors/selectEditor/index.js +0 -2
- package/editors/selectEditor/selectEditor.js +21 -73
- package/editors/selectEditor/selectEditor.mjs +21 -56
- package/editors/textEditor/caretPositioner.js +0 -12
- package/editors/textEditor/caretPositioner.mjs +10 -20
- package/editors/textEditor/index.js +0 -2
- package/editors/textEditor/textEditor.js +38 -137
- package/editors/textEditor/textEditor.mjs +38 -106
- package/editors/timeEditor/index.js +0 -2
- package/editors/timeEditor/timeEditor.js +1 -36
- package/editors/timeEditor/timeEditor.mjs +1 -21
- package/eventManager.js +20 -56
- package/eventManager.mjs +23 -56
- package/helpers/array.js +22 -88
- package/helpers/array.mjs +22 -58
- package/helpers/browser.js +25 -51
- package/helpers/browser.mjs +25 -32
- package/helpers/console.js +3 -13
- package/helpers/console.mjs +8 -16
- package/helpers/data.d.ts +0 -1
- package/helpers/data.js +10 -55
- package/helpers/data.mjs +10 -33
- package/helpers/date.js +2 -3
- package/helpers/date.mjs +2 -2
- package/helpers/dom/element.js +67 -259
- package/helpers/dom/element.mjs +74 -194
- package/helpers/dom/event.js +3 -7
- package/helpers/dom/event.mjs +3 -3
- package/helpers/feature.js +13 -47
- package/helpers/feature.mjs +13 -31
- package/helpers/function.js +14 -59
- package/helpers/function.mjs +20 -52
- package/helpers/mixed.js +9 -66
- package/helpers/mixed.mjs +15 -51
- package/helpers/number.js +4 -46
- package/helpers/number.mjs +4 -23
- package/helpers/object.js +15 -72
- package/helpers/object.mjs +21 -52
- package/helpers/string.js +6 -28
- package/helpers/string.mjs +12 -21
- package/helpers/templateLiteralTag.js +0 -6
- package/helpers/templateLiteralTag.mjs +7 -10
- package/helpers/unicode.js +17 -26
- package/helpers/unicode.mjs +17 -15
- package/helpers/wrappers/jquery.js +4 -14
- package/helpers/wrappers/jquery.mjs +4 -13
- package/i18n/constants.js +1 -3
- package/i18n/constants.mjs +1 -1
- package/i18n/index.js +0 -7
- package/i18n/languages/ar-AR.js +0 -16
- package/i18n/languages/ar-AR.mjs +1 -4
- package/i18n/languages/cs-CZ.js +0 -16
- package/i18n/languages/cs-CZ.mjs +1 -4
- package/i18n/languages/de-CH.js +0 -16
- package/i18n/languages/de-CH.mjs +1 -4
- package/i18n/languages/de-DE.js +0 -16
- package/i18n/languages/de-DE.mjs +1 -4
- package/i18n/languages/en-US.js +0 -16
- package/i18n/languages/en-US.mjs +1 -4
- package/i18n/languages/es-MX.js +0 -16
- package/i18n/languages/es-MX.mjs +1 -4
- package/i18n/languages/fr-FR.js +0 -16
- package/i18n/languages/fr-FR.mjs +1 -4
- package/i18n/languages/index.js +0 -39
- package/i18n/languages/it-IT.js +0 -16
- package/i18n/languages/it-IT.mjs +1 -4
- package/i18n/languages/ja-JP.js +0 -16
- package/i18n/languages/ja-JP.mjs +1 -4
- package/i18n/languages/ko-KR.js +0 -16
- package/i18n/languages/ko-KR.mjs +1 -4
- package/i18n/languages/lv-LV.js +0 -16
- package/i18n/languages/lv-LV.mjs +1 -4
- package/i18n/languages/nb-NO.js +0 -16
- package/i18n/languages/nb-NO.mjs +1 -4
- package/i18n/languages/nl-NL.js +0 -16
- package/i18n/languages/nl-NL.mjs +1 -4
- package/i18n/languages/pl-PL.js +0 -16
- package/i18n/languages/pl-PL.mjs +1 -4
- package/i18n/languages/pt-BR.js +0 -16
- package/i18n/languages/pt-BR.mjs +1 -4
- package/i18n/languages/ru-RU.js +0 -16
- package/i18n/languages/ru-RU.mjs +1 -4
- package/i18n/languages/sr-SP.js +0 -16
- package/i18n/languages/sr-SP.mjs +1 -4
- package/i18n/languages/zh-CN.js +0 -16
- package/i18n/languages/zh-CN.mjs +1 -4
- package/i18n/languages/zh-TW.js +0 -16
- package/i18n/languages/zh-TW.mjs +1 -4
- package/i18n/phraseFormatters/index.js +4 -11
- package/i18n/phraseFormatters/index.mjs +4 -6
- package/i18n/phraseFormatters/pluralize.js +0 -5
- package/i18n/phraseFormatters/pluralize.mjs +0 -3
- package/i18n/phraseFormatters/substituteVariables.js +0 -4
- package/i18n/phraseFormatters/substituteVariables.mjs +8 -11
- package/i18n/registry.js +18 -59
- package/i18n/registry.mjs +18 -30
- package/i18n/utils.js +4 -22
- package/i18n/utils.mjs +13 -21
- package/index.js +19 -56
- package/index.mjs +19 -15
- package/languages/all.js +0 -175
- package/languages/ar-AR.js +0 -10
- package/languages/ar-AR.mjs +1 -4
- package/languages/cs-CZ.js +0 -10
- package/languages/cs-CZ.mjs +1 -4
- package/languages/de-CH.js +0 -10
- package/languages/de-CH.mjs +1 -4
- package/languages/de-DE.js +0 -10
- package/languages/de-DE.mjs +1 -4
- package/languages/en-US.js +0 -10
- package/languages/en-US.mjs +1 -4
- package/languages/es-MX.js +0 -10
- package/languages/es-MX.mjs +1 -4
- package/languages/fr-FR.js +0 -10
- package/languages/fr-FR.mjs +1 -4
- package/languages/index.js +0 -175
- package/languages/it-IT.js +0 -10
- package/languages/it-IT.mjs +1 -4
- package/languages/ja-JP.js +0 -10
- package/languages/ja-JP.mjs +1 -4
- package/languages/ko-KR.js +0 -10
- package/languages/ko-KR.mjs +1 -4
- package/languages/lv-LV.js +0 -10
- package/languages/lv-LV.mjs +1 -4
- package/languages/nb-NO.js +0 -10
- package/languages/nb-NO.mjs +1 -4
- package/languages/nl-NL.js +0 -10
- package/languages/nl-NL.mjs +1 -4
- package/languages/pl-PL.js +0 -10
- package/languages/pl-PL.mjs +1 -4
- package/languages/pt-BR.js +0 -10
- package/languages/pt-BR.mjs +1 -4
- package/languages/ru-RU.js +0 -10
- package/languages/ru-RU.mjs +1 -4
- package/languages/sr-SP.js +0 -10
- package/languages/sr-SP.mjs +1 -4
- package/languages/zh-CN.js +0 -10
- package/languages/zh-CN.mjs +1 -4
- package/languages/zh-TW.js +0 -10
- package/languages/zh-TW.mjs +1 -4
- package/mixins/hooksRefRegisterer.js +4 -18
- package/mixins/hooksRefRegisterer.mjs +4 -15
- package/mixins/localHooks.js +7 -17
- package/mixins/localHooks.mjs +7 -14
- package/package.json +1 -1
- package/pluginHooks.d.ts +3 -4
- package/pluginHooks.js +288 -110
- package/pluginHooks.mjs +287 -97
- package/plugins/autoColumnSize/autoColumnSize.js +74 -172
- package/plugins/autoColumnSize/autoColumnSize.mjs +74 -137
- package/plugins/autoColumnSize/index.js +0 -2
- package/plugins/autoRowSize/autoRowSize.js +73 -153
- package/plugins/autoRowSize/autoRowSize.mjs +73 -124
- package/plugins/autoRowSize/index.js +0 -2
- package/plugins/autofill/autofill.js +46 -163
- package/plugins/autofill/autofill.mjs +46 -131
- package/plugins/autofill/index.js +0 -2
- package/plugins/autofill/utils.js +4 -26
- package/plugins/autofill/utils.mjs +4 -18
- package/plugins/base/base.js +21 -92
- package/plugins/base/base.mjs +21 -63
- package/plugins/base/index.js +0 -2
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +19 -52
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +19 -33
- package/plugins/bindRowsWithHeaders/index.js +0 -2
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +5 -41
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +5 -29
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -53
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +6 -37
- package/plugins/collapsibleColumns/collapsibleColumns.js +96 -188
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +97 -158
- package/plugins/collapsibleColumns/index.js +0 -2
- package/plugins/columnSorting/columnSorting.js +50 -188
- package/plugins/columnSorting/columnSorting.mjs +50 -143
- package/plugins/columnSorting/columnStatesManager.js +15 -71
- package/plugins/columnSorting/columnStatesManager.mjs +15 -48
- package/plugins/columnSorting/domHelpers.js +2 -18
- package/plugins/columnSorting/domHelpers.mjs +2 -7
- package/plugins/columnSorting/index.js +0 -2
- package/plugins/columnSorting/rootComparator.js +5 -24
- package/plugins/columnSorting/rootComparator.mjs +12 -21
- package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
- package/plugins/columnSorting/sortFunction/checkbox.mjs +16 -21
- package/plugins/columnSorting/sortFunction/date.js +2 -19
- package/plugins/columnSorting/sortFunction/date.mjs +10 -23
- package/plugins/columnSorting/sortFunction/default.js +2 -17
- package/plugins/columnSorting/sortFunction/default.mjs +10 -23
- package/plugins/columnSorting/sortFunction/numeric.js +2 -11
- package/plugins/columnSorting/sortFunction/numeric.mjs +10 -17
- package/plugins/columnSorting/sortService/engine.js +3 -13
- package/plugins/columnSorting/sortService/engine.mjs +3 -5
- package/plugins/columnSorting/sortService/index.js +0 -5
- package/plugins/columnSorting/sortService/registry.js +6 -18
- package/plugins/columnSorting/sortService/registry.mjs +6 -10
- package/plugins/columnSorting/utils.js +9 -34
- package/plugins/columnSorting/utils.mjs +9 -15
- package/plugins/columnSummary/columnSummary.js +66 -126
- package/plugins/columnSummary/columnSummary.mjs +66 -101
- package/plugins/columnSummary/endpoints.js +21 -98
- package/plugins/columnSummary/endpoints.mjs +26 -99
- package/plugins/columnSummary/index.js +0 -2
- package/plugins/columnSummary/utils.js +13 -0
- package/plugins/columnSummary/utils.mjs +9 -0
- package/plugins/comments/commentEditor.js +16 -28
- package/plugins/comments/commentEditor.mjs +21 -32
- package/plugins/comments/comments.js +92 -175
- package/plugins/comments/comments.mjs +92 -149
- package/plugins/comments/displaySwitch.js +6 -23
- package/plugins/comments/displaySwitch.mjs +6 -18
- package/plugins/comments/index.js +0 -2
- package/plugins/contextMenu/commandExecutor.js +9 -40
- package/plugins/contextMenu/commandExecutor.mjs +14 -41
- package/plugins/contextMenu/contextMenu.js +26 -105
- package/plugins/contextMenu/contextMenu.mjs +26 -75
- package/plugins/contextMenu/cursor.js +6 -20
- package/plugins/contextMenu/cursor.mjs +11 -24
- package/plugins/contextMenu/index.js +0 -2
- package/plugins/contextMenu/itemsFactory.js +14 -43
- package/plugins/contextMenu/itemsFactory.mjs +19 -44
- package/plugins/contextMenu/menu.js +61 -177
- package/plugins/contextMenu/menu.mjs +61 -149
- package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
- package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
- package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
- package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
- package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
- package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
- package/plugins/contextMenu/predefinedItems/redo.js +1 -16
- package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
- package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
- package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
- package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/separator.js +1 -2
- package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/undo.js +1 -16
- package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems.js +2 -48
- package/plugins/contextMenu/predefinedItems.mjs +2 -7
- package/plugins/contextMenu/utils.js +17 -57
- package/plugins/contextMenu/utils.mjs +21 -39
- package/plugins/copyPaste/clipboardData.js +1 -10
- package/plugins/copyPaste/clipboardData.mjs +1 -9
- package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
- package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
- package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
- package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
- package/plugins/copyPaste/copyPaste.js +53 -185
- package/plugins/copyPaste/copyPaste.mjs +53 -144
- package/plugins/copyPaste/focusableElement.js +12 -56
- package/plugins/copyPaste/focusableElement.mjs +15 -49
- package/plugins/copyPaste/index.js +0 -2
- package/plugins/copyPaste/pasteEvent.js +1 -10
- package/plugins/copyPaste/pasteEvent.mjs +3 -10
- package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
- package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/index.js +0 -11
- package/plugins/customBorders/contextMenuItem/left.js +0 -17
- package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
- package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
- package/plugins/customBorders/contextMenuItem/right.js +0 -17
- package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/top.js +0 -17
- package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
- package/plugins/customBorders/customBorders.js +52 -181
- package/plugins/customBorders/customBorders.mjs +52 -147
- package/plugins/customBorders/index.js +0 -2
- package/plugins/customBorders/utils.js +13 -52
- package/plugins/customBorders/utils.mjs +20 -39
- package/plugins/dragToScroll/dragToScroll.js +17 -74
- package/plugins/dragToScroll/dragToScroll.mjs +17 -55
- package/plugins/dragToScroll/index.js +0 -2
- package/plugins/dropdownMenu/dropdownMenu.js +47 -126
- package/plugins/dropdownMenu/dropdownMenu.mjs +47 -95
- package/plugins/dropdownMenu/index.js +0 -2
- package/plugins/exportFile/dataProvider.js +24 -69
- package/plugins/exportFile/dataProvider.mjs +26 -60
- package/plugins/exportFile/exportFile.js +48 -58
- package/plugins/exportFile/exportFile.mjs +48 -36
- package/plugins/exportFile/index.js +0 -2
- package/plugins/exportFile/typeFactory.js +1 -11
- package/plugins/exportFile/typeFactory.mjs +1 -4
- package/plugins/exportFile/types/_base.js +2 -16
- package/plugins/exportFile/types/_base.mjs +4 -16
- package/plugins/exportFile/types/csv.js +2 -50
- package/plugins/exportFile/types/csv.mjs +2 -29
- package/plugins/filters/component/_base.js +12 -32
- package/plugins/filters/component/_base.mjs +15 -30
- package/plugins/filters/component/actionBar.js +6 -55
- package/plugins/filters/component/actionBar.mjs +9 -38
- package/plugins/filters/component/condition.js +25 -122
- package/plugins/filters/component/condition.mjs +24 -88
- package/plugins/filters/component/operators.js +10 -68
- package/plugins/filters/component/operators.mjs +10 -45
- package/plugins/filters/component/value.js +25 -99
- package/plugins/filters/component/value.mjs +28 -72
- package/plugins/filters/condition/beginsWith.js +2 -32
- package/plugins/filters/condition/beginsWith.mjs +2 -10
- package/plugins/filters/condition/between.js +3 -37
- package/plugins/filters/condition/between.mjs +3 -15
- package/plugins/filters/condition/byValue.js +3 -27
- package/plugins/filters/condition/byValue.mjs +3 -12
- package/plugins/filters/condition/contains.js +2 -32
- package/plugins/filters/condition/contains.mjs +2 -10
- package/plugins/filters/condition/date/after.js +2 -34
- package/plugins/filters/condition/date/after.mjs +2 -12
- package/plugins/filters/condition/date/before.js +2 -34
- package/plugins/filters/condition/date/before.mjs +2 -12
- package/plugins/filters/condition/date/today.js +1 -22
- package/plugins/filters/condition/date/today.mjs +1 -3
- package/plugins/filters/condition/date/tomorrow.js +1 -22
- package/plugins/filters/condition/date/tomorrow.mjs +1 -3
- package/plugins/filters/condition/date/yesterday.js +1 -22
- package/plugins/filters/condition/date/yesterday.mjs +1 -3
- package/plugins/filters/condition/empty.js +1 -19
- package/plugins/filters/condition/empty.mjs +1 -1
- package/plugins/filters/condition/endsWith.js +2 -32
- package/plugins/filters/condition/endsWith.mjs +2 -10
- package/plugins/filters/condition/equal.js +2 -31
- package/plugins/filters/condition/equal.mjs +2 -10
- package/plugins/filters/condition/false.js +1 -5
- package/plugins/filters/condition/false.mjs +1 -1
- package/plugins/filters/condition/greaterThan.js +2 -32
- package/plugins/filters/condition/greaterThan.mjs +2 -12
- package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
- package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
- package/plugins/filters/condition/lessThan.js +2 -32
- package/plugins/filters/condition/lessThan.mjs +2 -12
- package/plugins/filters/condition/lessThanOrEqual.js +2 -32
- package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
- package/plugins/filters/condition/none.js +1 -18
- package/plugins/filters/condition/none.mjs +1 -1
- package/plugins/filters/condition/notBetween.js +1 -19
- package/plugins/filters/condition/notBetween.mjs +1 -1
- package/plugins/filters/condition/notContains.js +1 -19
- package/plugins/filters/condition/notContains.mjs +1 -1
- package/plugins/filters/condition/notEmpty.js +1 -19
- package/plugins/filters/condition/notEmpty.mjs +1 -1
- package/plugins/filters/condition/notEqual.js +1 -19
- package/plugins/filters/condition/notEqual.mjs +1 -1
- package/plugins/filters/condition/true.js +1 -5
- package/plugins/filters/condition/true.mjs +1 -1
- package/plugins/filters/conditionCollection.js +21 -80
- package/plugins/filters/conditionCollection.mjs +21 -57
- package/plugins/filters/conditionRegisterer.js +5 -14
- package/plugins/filters/conditionRegisterer.mjs +5 -9
- package/plugins/filters/conditionUpdateObserver.js +17 -57
- package/plugins/filters/conditionUpdateObserver.mjs +25 -53
- package/plugins/filters/constants.js +1 -66
- package/plugins/filters/constants.mjs +1 -8
- package/plugins/filters/dataFilter.js +4 -21
- package/plugins/filters/dataFilter.mjs +7 -23
- package/plugins/filters/filters.d.ts +1 -1
- package/plugins/filters/filters.js +147 -272
- package/plugins/filters/filters.mjs +148 -228
- package/plugins/filters/index.js +0 -2
- package/plugins/filters/logicalOperationRegisterer.js +3 -9
- package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
- package/plugins/filters/logicalOperations/conjunction.js +2 -19
- package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunction.js +2 -19
- package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
- package/plugins/filters/ui/_base.js +12 -55
- package/plugins/filters/ui/_base.mjs +12 -35
- package/plugins/filters/ui/input.js +7 -52
- package/plugins/filters/ui/input.mjs +7 -34
- package/plugins/filters/ui/link.js +3 -43
- package/plugins/filters/ui/link.mjs +3 -25
- package/plugins/filters/ui/multipleSelect.js +26 -120
- package/plugins/filters/ui/multipleSelect.mjs +20 -76
- package/plugins/filters/ui/radioInput.js +6 -47
- package/plugins/filters/ui/radioInput.mjs +6 -30
- package/plugins/filters/ui/select.js +14 -76
- package/plugins/filters/ui/select.mjs +14 -52
- package/plugins/filters/utils.js +6 -39
- package/plugins/filters/utils.mjs +6 -23
- package/plugins/formulas/engine/register.js +24 -74
- package/plugins/formulas/engine/register.mjs +29 -51
- package/plugins/formulas/engine/settings.js +4 -24
- package/plugins/formulas/engine/settings.mjs +4 -12
- package/plugins/formulas/formulas.js +103 -295
- package/plugins/formulas/formulas.mjs +104 -248
- package/plugins/formulas/index.js +0 -2
- package/plugins/formulas/utils.js +1 -3
- package/plugins/formulas/utils.mjs +1 -1
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
- package/plugins/hiddenColumns/hiddenColumns.js +72 -153
- package/plugins/hiddenColumns/hiddenColumns.mjs +72 -110
- package/plugins/hiddenColumns/index.js +0 -2
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
- package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
- package/plugins/hiddenRows/hiddenRows.js +70 -152
- package/plugins/hiddenRows/hiddenRows.mjs +70 -109
- package/plugins/hiddenRows/index.js +0 -2
- package/plugins/index.js +0 -71
- package/plugins/index.mjs +3 -5
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
- package/plugins/manualColumnFreeze/index.js +0 -2
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
- package/plugins/manualColumnMove/index.js +0 -2
- package/plugins/manualColumnMove/manualColumnMove.js +45 -134
- package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
- package/plugins/manualColumnMove/ui/_base.js +12 -30
- package/plugins/manualColumnMove/ui/_base.mjs +12 -27
- package/plugins/manualColumnMove/ui/backlight.js +1 -37
- package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
- package/plugins/manualColumnMove/ui/guideline.js +1 -37
- package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
- package/plugins/manualColumnResize/index.js +0 -2
- package/plugins/manualColumnResize/manualColumnResize.js +44 -143
- package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
- package/plugins/manualRowMove/index.js +0 -2
- package/plugins/manualRowMove/manualRowMove.js +45 -137
- package/plugins/manualRowMove/manualRowMove.mjs +45 -109
- package/plugins/manualRowMove/ui/_base.js +12 -27
- package/plugins/manualRowMove/ui/_base.mjs +12 -26
- package/plugins/manualRowMove/ui/backlight.js +1 -37
- package/plugins/manualRowMove/ui/backlight.mjs +1 -22
- package/plugins/manualRowMove/ui/guideline.js +1 -37
- package/plugins/manualRowMove/ui/guideline.mjs +1 -22
- package/plugins/manualRowResize/index.js +0 -2
- package/plugins/manualRowResize/manualRowResize.js +42 -138
- package/plugins/manualRowResize/manualRowResize.mjs +41 -112
- package/plugins/mergeCells/calculations/autofill.js +39 -130
- package/plugins/mergeCells/calculations/autofill.mjs +44 -122
- package/plugins/mergeCells/calculations/selection.js +9 -40
- package/plugins/mergeCells/calculations/selection.mjs +9 -37
- package/plugins/mergeCells/cellCoords.js +30 -51
- package/plugins/mergeCells/cellCoords.mjs +35 -54
- package/plugins/mergeCells/cellsCollection.js +13 -84
- package/plugins/mergeCells/cellsCollection.mjs +18 -69
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
- package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
- package/plugins/mergeCells/index.js +0 -2
- package/plugins/mergeCells/mergeCells.js +130 -333
- package/plugins/mergeCells/mergeCells.mjs +130 -292
- package/plugins/mergeCells/utils.js +0 -3
- package/plugins/mergeCells/utils.mjs +0 -1
- package/plugins/multiColumnSorting/domHelpers.js +3 -15
- package/plugins/multiColumnSorting/domHelpers.mjs +3 -7
- package/plugins/multiColumnSorting/index.js +0 -2
- package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
- package/plugins/multiColumnSorting/rootComparator.js +2 -26
- package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
- package/plugins/multiColumnSorting/utils.js +0 -7
- package/plugins/multiColumnSorting/utils.mjs +3 -8
- package/plugins/multipleSelectionHandles/index.js +0 -2
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
- package/plugins/nestedHeaders/index.js +0 -2
- package/plugins/nestedHeaders/nestedHeaders.js +79 -200
- package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
- package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
- package/plugins/nestedHeaders/stateManager/index.js +24 -107
- package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
- package/plugins/nestedHeaders/stateManager/utils.js +19 -22
- package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
- package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
- package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
- package/plugins/nestedRows/data/dataManager.js +40 -161
- package/plugins/nestedRows/data/dataManager.mjs +44 -148
- package/plugins/nestedRows/index.js +0 -2
- package/plugins/nestedRows/nestedRows.js +41 -119
- package/plugins/nestedRows/nestedRows.mjs +41 -86
- package/plugins/nestedRows/ui/_base.js +1 -9
- package/plugins/nestedRows/ui/_base.mjs +1 -8
- package/plugins/nestedRows/ui/collapsing.js +28 -134
- package/plugins/nestedRows/ui/collapsing.mjs +34 -118
- package/plugins/nestedRows/ui/contextMenu.js +2 -53
- package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
- package/plugins/nestedRows/ui/headers.js +5 -50
- package/plugins/nestedRows/ui/headers.mjs +11 -41
- package/plugins/nestedRows/utils/rowMoveController.js +28 -78
- package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
- package/plugins/persistentState/index.js +0 -2
- package/plugins/persistentState/persistentState.js +10 -58
- package/plugins/persistentState/persistentState.mjs +10 -37
- package/plugins/persistentState/storage.js +9 -25
- package/plugins/persistentState/storage.mjs +12 -26
- package/plugins/registry.js +7 -51
- package/plugins/registry.mjs +8 -34
- package/plugins/search/index.js +0 -2
- package/plugins/search/search.js +16 -98
- package/plugins/search/search.mjs +16 -68
- package/plugins/touchScroll/index.js +0 -2
- package/plugins/touchScroll/touchScroll.js +15 -76
- package/plugins/touchScroll/touchScroll.mjs +15 -58
- package/plugins/trimRows/index.js +0 -2
- package/plugins/trimRows/trimRows.js +62 -88
- package/plugins/trimRows/trimRows.mjs +62 -65
- package/plugins/undoRedo/index.js +0 -14
- package/plugins/undoRedo/undoRedo.js +48 -218
- package/plugins/undoRedo/undoRedo.mjs +48 -188
- package/registry.js +0 -11
- package/registry.mjs +2 -4
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
- package/renderers/autocompleteRenderer/index.js +0 -2
- package/renderers/baseRenderer/baseRenderer.js +2 -11
- package/renderers/baseRenderer/baseRenderer.mjs +2 -9
- package/renderers/baseRenderer/index.js +0 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
- package/renderers/checkboxRenderer/index.js +0 -2
- package/renderers/htmlRenderer/htmlRenderer.js +1 -7
- package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
- package/renderers/htmlRenderer/index.js +0 -2
- package/renderers/index.js +0 -19
- package/renderers/index.mjs +3 -5
- package/renderers/numericRenderer/index.js +0 -2
- package/renderers/numericRenderer/numericRenderer.js +1 -23
- package/renderers/numericRenderer/numericRenderer.mjs +1 -10
- package/renderers/passwordRenderer/index.js +0 -2
- package/renderers/passwordRenderer/passwordRenderer.js +1 -8
- package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
- package/renderers/registry.js +7 -16
- package/renderers/registry.mjs +7 -14
- package/renderers/textRenderer/index.js +0 -2
- package/renderers/textRenderer/textRenderer.js +2 -14
- package/renderers/textRenderer/textRenderer.mjs +2 -6
- package/renderers/timeRenderer/index.js +0 -2
- package/renderers/timeRenderer/timeRenderer.js +1 -6
- package/renderers/timeRenderer/timeRenderer.mjs +1 -1
- package/selection/highlight/highlight.js +17 -73
- package/selection/highlight/highlight.mjs +31 -64
- package/selection/highlight/types/activeHeader.js +1 -21
- package/selection/highlight/types/activeHeader.mjs +6 -16
- package/selection/highlight/types/area.js +2 -22
- package/selection/highlight/types/area.mjs +10 -20
- package/selection/highlight/types/cell.js +1 -21
- package/selection/highlight/types/cell.mjs +9 -19
- package/selection/highlight/types/customSelection.js +2 -22
- package/selection/highlight/types/customSelection.mjs +11 -21
- package/selection/highlight/types/fill.js +2 -17
- package/selection/highlight/types/fill.mjs +9 -14
- package/selection/highlight/types/header.js +3 -23
- package/selection/highlight/types/header.mjs +13 -23
- package/selection/highlight/types/index.js +3 -24
- package/selection/highlight/types/index.mjs +3 -10
- package/selection/highlight/visualSelection.js +24 -74
- package/selection/highlight/visualSelection.mjs +24 -62
- package/selection/index.js +0 -14
- package/selection/mouseEventHandler.js +19 -30
- package/selection/mouseEventHandler.mjs +32 -36
- package/selection/range.js +11 -31
- package/selection/range.mjs +11 -22
- package/selection/selection.js +62 -157
- package/selection/selection.mjs +65 -132
- package/selection/transformation.js +10 -40
- package/selection/transformation.mjs +18 -45
- package/selection/utils.js +22 -70
- package/selection/utils.mjs +22 -47
- package/shortcuts/context.js +23 -78
- package/shortcuts/context.mjs +23 -55
- package/shortcuts/index.js +0 -2
- package/shortcuts/keyObserver.js +4 -17
- package/shortcuts/keyObserver.mjs +4 -12
- package/shortcuts/manager.js +16 -36
- package/shortcuts/manager.mjs +16 -33
- package/shortcuts/recorder.js +20 -47
- package/shortcuts/recorder.mjs +20 -39
- package/shortcuts/utils.js +5 -24
- package/shortcuts/utils.mjs +5 -8
- package/tableView.js +100 -270
- package/tableView.mjs +100 -248
- package/translations/changesObservable/observable.js +5 -54
- package/translations/changesObservable/observable.mjs +12 -51
- package/translations/changesObservable/observer.js +4 -32
- package/translations/changesObservable/observer.mjs +9 -29
- package/translations/changesObservable/utils.js +1 -5
- package/translations/changesObservable/utils.mjs +1 -4
- package/translations/index.js +0 -11
- package/translations/indexMapper.js +70 -158
- package/translations/indexMapper.mjs +70 -125
- package/translations/mapCollections/aggregatedCollection.js +9 -51
- package/translations/mapCollections/aggregatedCollection.mjs +12 -41
- package/translations/mapCollections/index.js +0 -7
- package/translations/mapCollections/mapCollection.js +10 -33
- package/translations/mapCollections/mapCollection.mjs +10 -22
- package/translations/maps/hidingMap.js +2 -35
- package/translations/maps/hidingMap.mjs +7 -28
- package/translations/maps/index.js +1 -24
- package/translations/maps/index.mjs +1 -3
- package/translations/maps/indexMap.js +12 -34
- package/translations/maps/indexMap.mjs +16 -32
- package/translations/maps/indexesSequence.js +3 -41
- package/translations/maps/indexesSequence.mjs +9 -32
- package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
- package/translations/maps/physicalIndexToValueMap.js +2 -39
- package/translations/maps/physicalIndexToValueMap.mjs +8 -31
- package/translations/maps/trimmingMap.js +2 -35
- package/translations/maps/trimmingMap.mjs +7 -28
- package/translations/maps/utils/actionsOnIndexes.js +1 -7
- package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
- package/translations/maps/utils/index.js +0 -13
- package/translations/maps/utils/index.mjs +0 -3
- package/translations/maps/utils/indexesSequence.js +1 -24
- package/translations/maps/utils/indexesSequence.mjs +10 -19
- package/translations/maps/utils/physicallyIndexed.js +1 -27
- package/translations/maps/utils/physicallyIndexed.mjs +11 -21
- package/utils/dataStructures/linkedList.js +15 -56
- package/utils/dataStructures/linkedList.mjs +15 -54
- package/utils/dataStructures/priorityMap.js +8 -46
- package/utils/dataStructures/priorityMap.mjs +8 -29
- package/utils/dataStructures/queue.js +6 -17
- package/utils/dataStructures/queue.mjs +6 -16
- package/utils/dataStructures/stack.js +6 -17
- package/utils/dataStructures/stack.mjs +6 -16
- package/utils/dataStructures/tree.js +11 -75
- package/utils/dataStructures/tree.mjs +11 -54
- package/utils/dataStructures/uniqueMap.js +17 -56
- package/utils/dataStructures/uniqueMap.mjs +17 -42
- package/utils/dataStructures/uniqueSet.js +5 -32
- package/utils/dataStructures/uniqueSet.mjs +5 -19
- package/utils/ghostTable.js +33 -104
- package/utils/ghostTable.mjs +35 -92
- package/utils/interval.js +10 -37
- package/utils/interval.mjs +7 -29
- package/utils/parseTable.js +11 -92
- package/utils/parseTable.mjs +11 -62
- package/utils/rootInstance.js +3 -14
- package/utils/rootInstance.mjs +3 -3
- package/utils/samplesGenerator.js +15 -51
- package/utils/samplesGenerator.mjs +17 -44
- package/utils/staticRegister.js +6 -33
- package/utils/staticRegister.mjs +6 -19
- package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
- package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
- package/validators/autocompleteValidator/index.js +0 -2
- package/validators/dateValidator/dateValidator.js +2 -21
- package/validators/dateValidator/dateValidator.mjs +2 -11
- package/validators/dateValidator/index.js +0 -2
- package/validators/index.js +0 -11
- package/validators/index.mjs +3 -5
- package/validators/numericValidator/index.js +0 -2
- package/validators/numericValidator/numericValidator.js +1 -7
- package/validators/numericValidator/numericValidator.mjs +1 -3
- package/validators/registry.js +7 -16
- package/validators/registry.mjs +7 -14
- package/validators/timeValidator/index.js +0 -2
- package/validators/timeValidator/timeValidator.js +6 -18
- package/validators/timeValidator/timeValidator.mjs +8 -13
- package/utils/sortingAlgorithms/mergeSort.js +0 -120
- package/utils/sortingAlgorithms/mergeSort.mjs +0 -110
@@ -1,128 +1,67 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
require("core-js/modules/es.object.set-prototype-of.js");
|
4
|
-
|
5
4
|
require("core-js/modules/es.object.get-prototype-of.js");
|
6
|
-
|
7
5
|
require("core-js/modules/es.reflect.construct.js");
|
8
|
-
|
9
6
|
require("core-js/modules/es.reflect.get.js");
|
10
|
-
|
11
7
|
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
12
|
-
|
13
8
|
require("core-js/modules/es.symbol.js");
|
14
|
-
|
15
9
|
require("core-js/modules/es.symbol.description.js");
|
16
|
-
|
17
10
|
require("core-js/modules/es.symbol.iterator.js");
|
18
|
-
|
19
11
|
require("core-js/modules/es.array.slice.js");
|
20
|
-
|
21
12
|
require("core-js/modules/es.function.name.js");
|
22
|
-
|
23
13
|
require("core-js/modules/es.array.from.js");
|
24
|
-
|
25
14
|
exports.__esModule = true;
|
26
15
|
exports.PLUGIN_PRIORITY = exports.PLUGIN_KEY = exports.CopyPaste = void 0;
|
27
|
-
|
28
16
|
require("core-js/modules/es.array.iterator.js");
|
29
|
-
|
30
17
|
require("core-js/modules/es.object.to-string.js");
|
31
|
-
|
32
18
|
require("core-js/modules/es.string.iterator.js");
|
33
|
-
|
34
19
|
require("core-js/modules/es.weak-map.js");
|
35
|
-
|
36
20
|
require("core-js/modules/web.dom-collections.iterator.js");
|
37
|
-
|
38
21
|
require("core-js/modules/es.array.join.js");
|
39
|
-
|
40
22
|
require("core-js/modules/es.array.index-of.js");
|
41
|
-
|
42
23
|
require("core-js/modules/es.regexp.exec.js");
|
43
|
-
|
44
24
|
require("core-js/modules/es.array.concat.js");
|
45
|
-
|
46
25
|
var _base = require("../base");
|
47
|
-
|
48
26
|
var _pluginHooks = _interopRequireDefault(require("../../pluginHooks"));
|
49
|
-
|
50
27
|
var _SheetClip = require("../../3rdparty/SheetClip");
|
51
|
-
|
52
28
|
var _array = require("../../helpers/array");
|
53
|
-
|
54
29
|
var _number = require("../../helpers/number");
|
55
|
-
|
56
30
|
var _string = require("../../helpers/string");
|
57
|
-
|
58
31
|
var _element = require("../../helpers/dom/element");
|
59
|
-
|
60
32
|
var _copy = _interopRequireDefault(require("./contextMenuItem/copy"));
|
61
|
-
|
62
33
|
var _cut = _interopRequireDefault(require("./contextMenuItem/cut"));
|
63
|
-
|
64
34
|
var _pasteEvent = _interopRequireDefault(require("./pasteEvent"));
|
65
|
-
|
66
35
|
var _focusableElement = require("./focusableElement");
|
67
|
-
|
68
36
|
var _parseTable = require("../../utils/parseTable");
|
69
|
-
|
70
37
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
71
|
-
|
72
38
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
73
|
-
|
74
39
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
75
|
-
|
76
40
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
77
|
-
|
78
41
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
79
|
-
|
80
42
|
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
81
|
-
|
82
43
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
83
|
-
|
84
44
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
85
|
-
|
86
45
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
87
|
-
|
88
46
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
89
|
-
|
90
47
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
91
|
-
|
92
48
|
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); }
|
93
|
-
|
94
49
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
95
|
-
|
96
50
|
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); }
|
97
|
-
|
98
51
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
99
|
-
|
100
52
|
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); }; }
|
101
|
-
|
102
53
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
103
|
-
|
104
54
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
105
|
-
|
106
55
|
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; } }
|
107
|
-
|
108
56
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
109
|
-
|
110
57
|
_pluginHooks.default.getSingleton().register('afterCopyLimit');
|
111
|
-
|
112
58
|
_pluginHooks.default.getSingleton().register('modifyCopyableRange');
|
113
|
-
|
114
59
|
_pluginHooks.default.getSingleton().register('beforeCut');
|
115
|
-
|
116
60
|
_pluginHooks.default.getSingleton().register('afterCut');
|
117
|
-
|
118
61
|
_pluginHooks.default.getSingleton().register('beforePaste');
|
119
|
-
|
120
62
|
_pluginHooks.default.getSingleton().register('afterPaste');
|
121
|
-
|
122
63
|
_pluginHooks.default.getSingleton().register('beforeCopy');
|
123
|
-
|
124
64
|
_pluginHooks.default.getSingleton().register('afterCopy');
|
125
|
-
|
126
65
|
var PLUGIN_KEY = 'copyPaste';
|
127
66
|
exports.PLUGIN_KEY = PLUGIN_KEY;
|
128
67
|
var PLUGIN_PRIORITY = 80;
|
@@ -132,8 +71,8 @@ var ROWS_LIMIT = Infinity;
|
|
132
71
|
var COLUMNS_LIMIT = Infinity;
|
133
72
|
var privatePool = new WeakMap();
|
134
73
|
var META_HEAD = ['<meta name="generator" content="Handsontable"/>', '<style type="text/css">td{white-space:normal}br{mso-data-placement:same-cell}</style>'].join('');
|
135
|
-
/* eslint-disable jsdoc/require-description-complete-sentence */
|
136
74
|
|
75
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
137
76
|
/**
|
138
77
|
* @description
|
139
78
|
* This plugin enables the copy/paste functionality in the Handsontable. The functionality works for API, Context Menu,
|
@@ -165,17 +104,12 @@ var META_HEAD = ['<meta name="generator" content="Handsontable"/>', '<style type
|
|
165
104
|
* @class CopyPaste
|
166
105
|
* @plugin CopyPaste
|
167
106
|
*/
|
168
|
-
|
169
107
|
var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
170
108
|
_inherits(CopyPaste, _BasePlugin);
|
171
|
-
|
172
109
|
var _super = _createSuper(CopyPaste);
|
173
|
-
|
174
110
|
function CopyPaste(hotInstance) {
|
175
111
|
var _this;
|
176
|
-
|
177
112
|
_classCallCheck(this, CopyPaste);
|
178
|
-
|
179
113
|
_this = _super.call(this, hotInstance);
|
180
114
|
/**
|
181
115
|
* Maximum number of columns than can be copied to clipboard using <kbd>**Ctrl**</kbd>/<kbd>**Cmd**</kbd> + <kbd>**C**</kbd>.
|
@@ -183,7 +117,6 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
183
117
|
* @type {number}
|
184
118
|
* @default Infinity
|
185
119
|
*/
|
186
|
-
|
187
120
|
_this.columnsLimit = COLUMNS_LIMIT;
|
188
121
|
/**
|
189
122
|
* Ranges of the cells coordinates, which should be used to copy/cut/paste actions.
|
@@ -191,7 +124,6 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
191
124
|
* @private
|
192
125
|
* @type {Array}
|
193
126
|
*/
|
194
|
-
|
195
127
|
_this.copyableRanges = [];
|
196
128
|
/**
|
197
129
|
* Provides focusable element to support IME and copy/paste/cut actions.
|
@@ -199,7 +131,6 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
199
131
|
* @private
|
200
132
|
* @type {FocusableWrapper}
|
201
133
|
*/
|
202
|
-
|
203
134
|
_this.focusableElement = void 0;
|
204
135
|
/**
|
205
136
|
* Defines paste (<kbd>**Ctrl**</kbd>/<kbd>**Cmd**</kbd> + <kbd>**V**</kbd>) behavior.
|
@@ -210,7 +141,6 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
210
141
|
* @type {string}
|
211
142
|
* @default 'overwrite'
|
212
143
|
*/
|
213
|
-
|
214
144
|
_this.pasteMode = 'overwrite';
|
215
145
|
/**
|
216
146
|
* Maximum number of rows than can be copied to clipboard using <kbd>**Ctrl**</kbd>/<kbd>**Cmd**</kbd> + <kbd>**C**</kbd>.
|
@@ -218,14 +148,13 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
218
148
|
* @type {number}
|
219
149
|
* @default Infinity
|
220
150
|
*/
|
221
|
-
|
222
151
|
_this.rowsLimit = ROWS_LIMIT;
|
152
|
+
|
223
153
|
/**
|
224
154
|
* UI container for the secondary focusable element.
|
225
155
|
*
|
226
156
|
* @type {HTMLElement}
|
227
157
|
*/
|
228
|
-
|
229
158
|
_this.uiContainer = _this.hot.rootDocument.body;
|
230
159
|
privatePool.set(_assertThisInitialized(_this), {
|
231
160
|
isTriggeredByCopy: false,
|
@@ -235,46 +164,40 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
235
164
|
});
|
236
165
|
return _this;
|
237
166
|
}
|
167
|
+
|
238
168
|
/**
|
239
169
|
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
240
|
-
* hook and if it returns `true`
|
170
|
+
* hook and if it returns `true` then the {@link CopyPaste#enablePlugin} method is called.
|
241
171
|
*
|
242
172
|
* @returns {boolean}
|
243
173
|
*/
|
244
|
-
|
245
|
-
|
246
174
|
_createClass(CopyPaste, [{
|
247
175
|
key: "isEnabled",
|
248
176
|
value: function isEnabled() {
|
249
177
|
return !!this.hot.getSettings()[PLUGIN_KEY];
|
250
178
|
}
|
179
|
+
|
251
180
|
/**
|
252
181
|
* Enables the plugin functionality for this Handsontable instance.
|
253
182
|
*/
|
254
|
-
|
255
183
|
}, {
|
256
184
|
key: "enablePlugin",
|
257
185
|
value: function enablePlugin() {
|
258
186
|
var _this2 = this;
|
259
|
-
|
260
187
|
if (this.enabled) {
|
261
188
|
return;
|
262
189
|
}
|
263
|
-
|
264
190
|
var _this$hot$getSettings = this.hot.getSettings(),
|
265
|
-
|
266
|
-
|
267
|
-
|
191
|
+
settings = _this$hot$getSettings[PLUGIN_KEY],
|
192
|
+
fragmentSelection = _this$hot$getSettings.fragmentSelection;
|
268
193
|
var priv = privatePool.get(this);
|
269
194
|
priv.isFragmentSelectionEnabled = !!fragmentSelection;
|
270
|
-
|
271
195
|
if (_typeof(settings) === 'object') {
|
272
196
|
this.pasteMode = settings.pasteMode || this.pasteMode;
|
273
197
|
this.rowsLimit = isNaN(settings.rowsLimit) ? this.rowsLimit : settings.rowsLimit;
|
274
198
|
this.columnsLimit = isNaN(settings.columnsLimit) ? this.columnsLimit : settings.columnsLimit;
|
275
199
|
this.uiContainer = settings.uiContainer || this.uiContainer;
|
276
200
|
}
|
277
|
-
|
278
201
|
this.addHook('afterContextMenuDefaultOptions', function (options) {
|
279
202
|
return _this2.onAfterContextMenuDefaultOptions(options);
|
280
203
|
});
|
@@ -295,9 +218,9 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
295
218
|
}).addLocalHook('paste', function (event) {
|
296
219
|
return _this2.onPaste(event);
|
297
220
|
});
|
298
|
-
|
299
221
|
_get(_getPrototypeOf(CopyPaste.prototype), "enablePlugin", this).call(this);
|
300
222
|
}
|
223
|
+
|
301
224
|
/**
|
302
225
|
* Updates the plugin's state.
|
303
226
|
*
|
@@ -305,33 +228,30 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
305
228
|
* - [`copyPaste`](@/api/options.md#copypaste)
|
306
229
|
* - [`fragmentSelection`](@/api/options.md#fragmentselection)
|
307
230
|
*/
|
308
|
-
|
309
231
|
}, {
|
310
232
|
key: "updatePlugin",
|
311
233
|
value: function updatePlugin() {
|
312
234
|
this.disablePlugin();
|
313
235
|
this.enablePlugin();
|
314
236
|
this.getOrCreateFocusableElement();
|
315
|
-
|
316
237
|
_get(_getPrototypeOf(CopyPaste.prototype), "updatePlugin", this).call(this);
|
317
238
|
}
|
239
|
+
|
318
240
|
/**
|
319
241
|
* Disables the plugin functionality for this Handsontable instance.
|
320
242
|
*/
|
321
|
-
|
322
243
|
}, {
|
323
244
|
key: "disablePlugin",
|
324
245
|
value: function disablePlugin() {
|
325
246
|
if (this.focusableElement) {
|
326
247
|
(0, _focusableElement.destroyElement)(this.focusableElement);
|
327
248
|
}
|
328
|
-
|
329
249
|
_get(_getPrototypeOf(CopyPaste.prototype), "disablePlugin", this).call(this);
|
330
250
|
}
|
251
|
+
|
331
252
|
/**
|
332
253
|
* Copies the selected cell into the clipboard.
|
333
254
|
*/
|
334
|
-
|
335
255
|
}, {
|
336
256
|
key: "copy",
|
337
257
|
value: function copy() {
|
@@ -341,10 +261,10 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
341
261
|
this.focusableElement.focus();
|
342
262
|
this.hot.rootDocument.execCommand('copy');
|
343
263
|
}
|
264
|
+
|
344
265
|
/**
|
345
266
|
* Cuts the selected cell into the clipboard.
|
346
267
|
*/
|
347
|
-
|
348
268
|
}, {
|
349
269
|
key: "cut",
|
350
270
|
value: function cut() {
|
@@ -354,22 +274,22 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
354
274
|
this.focusableElement.focus();
|
355
275
|
this.hot.rootDocument.execCommand('cut');
|
356
276
|
}
|
277
|
+
|
357
278
|
/**
|
358
279
|
* Creates copyable text releated to range objects.
|
359
280
|
*
|
360
281
|
* @param {object[]} ranges Array of objects with properties `startRow`, `endRow`, `startCol` and `endCol`.
|
361
282
|
* @returns {string} Returns string which will be copied into clipboard.
|
362
283
|
*/
|
363
|
-
|
364
284
|
}, {
|
365
285
|
key: "getRangedCopyableData",
|
366
286
|
value: function getRangedCopyableData(ranges) {
|
367
287
|
var _this3 = this;
|
368
|
-
|
369
288
|
var dataSet = [];
|
370
289
|
var copyableRows = [];
|
371
|
-
var copyableColumns = [];
|
290
|
+
var copyableColumns = [];
|
372
291
|
|
292
|
+
// Count all copyable rows and columns
|
373
293
|
(0, _array.arrayEach)(ranges, function (range) {
|
374
294
|
(0, _number.rangeEach)(range.startRow, range.endRow, function (row) {
|
375
295
|
if (copyableRows.indexOf(row) === -1) {
|
@@ -381,8 +301,8 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
381
301
|
copyableColumns.push(column);
|
382
302
|
}
|
383
303
|
});
|
384
|
-
});
|
385
|
-
|
304
|
+
});
|
305
|
+
// Concat all rows and columns data defined in ranges into one copyable string
|
386
306
|
(0, _array.arrayEach)(copyableRows, function (row) {
|
387
307
|
var rowSet = [];
|
388
308
|
(0, _array.arrayEach)(copyableColumns, function (column) {
|
@@ -392,22 +312,22 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
392
312
|
});
|
393
313
|
return (0, _SheetClip.stringify)(dataSet);
|
394
314
|
}
|
315
|
+
|
395
316
|
/**
|
396
317
|
* Creates copyable text releated to range objects.
|
397
318
|
*
|
398
319
|
* @param {object[]} ranges Array of objects with properties `startRow`, `startCol`, `endRow` and `endCol`.
|
399
320
|
* @returns {Array[]} Returns array of arrays which will be copied into clipboard.
|
400
321
|
*/
|
401
|
-
|
402
322
|
}, {
|
403
323
|
key: "getRangedData",
|
404
324
|
value: function getRangedData(ranges) {
|
405
325
|
var _this4 = this;
|
406
|
-
|
407
326
|
var dataSet = [];
|
408
327
|
var copyableRows = [];
|
409
|
-
var copyableColumns = [];
|
328
|
+
var copyableColumns = [];
|
410
329
|
|
330
|
+
// Count all copyable rows and columns
|
411
331
|
(0, _array.arrayEach)(ranges, function (range) {
|
412
332
|
(0, _number.rangeEach)(range.startRow, range.endRow, function (row) {
|
413
333
|
if (copyableRows.indexOf(row) === -1) {
|
@@ -419,8 +339,8 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
419
339
|
copyableColumns.push(column);
|
420
340
|
}
|
421
341
|
});
|
422
|
-
});
|
423
|
-
|
342
|
+
});
|
343
|
+
// Concat all rows and columns data defined in ranges into one copyable string
|
424
344
|
(0, _array.arrayEach)(copyableRows, function (row) {
|
425
345
|
var rowSet = [];
|
426
346
|
(0, _array.arrayEach)(copyableColumns, function (column) {
|
@@ -430,49 +350,44 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
430
350
|
});
|
431
351
|
return dataSet;
|
432
352
|
}
|
353
|
+
|
433
354
|
/**
|
434
355
|
* Simulates the paste action.
|
435
356
|
*
|
357
|
+
* Due to security reasons, modern browsers disallow reading from the system clipboard.
|
358
|
+
*
|
436
359
|
* @param {string} pastableText Value as raw string to paste.
|
437
360
|
* @param {string} [pastableHtml=''] Value as HTML to paste.
|
438
361
|
*/
|
439
|
-
|
440
362
|
}, {
|
441
363
|
key: "paste",
|
442
364
|
value: function paste() {
|
443
365
|
var pastableText = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
444
366
|
var pastableHtml = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : pastableText;
|
445
|
-
|
446
367
|
if (!pastableText && !pastableHtml) {
|
447
368
|
return;
|
448
369
|
}
|
449
|
-
|
450
370
|
var pasteData = new _pasteEvent.default();
|
451
|
-
|
452
371
|
if (pastableText) {
|
453
372
|
pasteData.clipboardData.setData('text/plain', pastableText);
|
454
373
|
}
|
455
|
-
|
456
374
|
if (pastableHtml) {
|
457
375
|
pasteData.clipboardData.setData('text/html', pastableHtml);
|
458
376
|
}
|
459
|
-
|
460
377
|
this.getOrCreateFocusableElement();
|
461
378
|
this.onPaste(pasteData);
|
462
379
|
}
|
380
|
+
|
463
381
|
/**
|
464
382
|
* Prepares copyable text from the cells selection in the invisible textarea.
|
465
383
|
*/
|
466
|
-
|
467
384
|
}, {
|
468
385
|
key: "setCopyableText",
|
469
386
|
value: function setCopyableText() {
|
470
387
|
var selRange = this.hot.getSelectedRangeLast();
|
471
|
-
|
472
388
|
if (!selRange) {
|
473
389
|
return;
|
474
390
|
}
|
475
|
-
|
476
391
|
var topStart = selRange.getTopStartCorner();
|
477
392
|
var bottomEnd = selRange.getBottomEndCorner();
|
478
393
|
var startRow = topStart.row;
|
@@ -489,42 +404,41 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
489
404
|
endCol: finalEndCol
|
490
405
|
});
|
491
406
|
this.copyableRanges = this.hot.runHooks('modifyCopyableRange', this.copyableRanges);
|
492
|
-
|
493
407
|
if (endRow !== finalEndRow || endCol !== finalEndCol) {
|
494
408
|
this.hot.runHooks('afterCopyLimit', endRow - startRow + 1, endCol - startCol + 1, this.rowsLimit, this.columnsLimit);
|
495
409
|
}
|
496
410
|
}
|
411
|
+
|
497
412
|
/**
|
498
413
|
* Force focus on editable element.
|
499
414
|
*
|
500
415
|
* @private
|
501
416
|
*/
|
502
|
-
|
503
417
|
}, {
|
504
418
|
key: "getOrCreateFocusableElement",
|
505
419
|
value: function getOrCreateFocusableElement() {
|
506
420
|
var editor = this.hot.getActiveEditor();
|
507
421
|
var editableElement = editor ? editor.TEXTAREA : void 0;
|
508
|
-
|
509
422
|
if (editableElement) {
|
510
423
|
this.focusableElement.setFocusableElement(editableElement);
|
511
424
|
} else {
|
512
425
|
this.focusableElement.useSecondaryElement();
|
513
426
|
}
|
514
427
|
}
|
428
|
+
|
515
429
|
/**
|
516
430
|
* Verifies if editor exists and is open.
|
517
431
|
*
|
518
432
|
* @private
|
519
433
|
* @returns {boolean}
|
520
434
|
*/
|
521
|
-
|
522
435
|
}, {
|
523
436
|
key: "isEditorOpened",
|
524
437
|
value: function isEditorOpened() {
|
525
438
|
var editor = this.hot.getActiveEditor();
|
526
439
|
return editor && editor.isOpened();
|
527
440
|
}
|
441
|
+
|
528
442
|
/**
|
529
443
|
* Prepares new values to populate them into datasource.
|
530
444
|
*
|
@@ -533,99 +447,81 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
533
447
|
* @param {Array} [selection] The selection which indicates from what position the data will be populated.
|
534
448
|
* @returns {Array} Range coordinates after populate data.
|
535
449
|
*/
|
536
|
-
|
537
450
|
}, {
|
538
451
|
key: "populateValues",
|
539
452
|
value: function populateValues(inputArray) {
|
540
453
|
var selection = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.hot.getSelectedRangeLast();
|
541
|
-
|
542
454
|
if (!inputArray.length) {
|
543
455
|
return;
|
544
456
|
}
|
545
|
-
|
546
457
|
var populatedRowsLength = inputArray.length;
|
547
458
|
var populatedColumnsLength = inputArray[0].length;
|
548
459
|
var newRows = [];
|
549
|
-
|
550
460
|
var _selection$getTopStar = selection.getTopStartCorner(),
|
551
|
-
|
552
|
-
|
553
|
-
|
461
|
+
startRow = _selection$getTopStar.row,
|
462
|
+
startColumn = _selection$getTopStar.col;
|
554
463
|
var _selection$getBottomE = selection.getBottomEndCorner(),
|
555
|
-
|
556
|
-
|
557
|
-
|
464
|
+
endRowFromSelection = _selection$getBottomE.row,
|
465
|
+
endColumnFromSelection = _selection$getBottomE.col;
|
558
466
|
var visualRowForPopulatedData = startRow;
|
559
467
|
var visualColumnForPopulatedData = startColumn;
|
560
468
|
var lastVisualRow = startRow;
|
561
|
-
var lastVisualColumn = startColumn;
|
469
|
+
var lastVisualColumn = startColumn;
|
470
|
+
|
471
|
+
// We try to populate just all copied data or repeat copied data within a selection. Please keep in mind that we
|
562
472
|
// don't know whether populated data is bigger than selection on start as there are some cells for which values
|
563
473
|
// should be not inserted (it's known right after getting cell meta).
|
564
|
-
|
565
474
|
while (newRows.length < populatedRowsLength || visualRowForPopulatedData <= endRowFromSelection) {
|
566
475
|
var _this$hot$getCellMeta = this.hot.getCellMeta(visualRowForPopulatedData, startColumn),
|
567
|
-
|
568
|
-
|
569
|
-
|
476
|
+
skipRowOnPaste = _this$hot$getCellMeta.skipRowOnPaste,
|
477
|
+
visualRow = _this$hot$getCellMeta.visualRow;
|
570
478
|
visualRowForPopulatedData = visualRow + 1;
|
571
|
-
|
572
479
|
if (skipRowOnPaste === true) {
|
573
480
|
/* eslint-disable no-continue */
|
574
481
|
continue;
|
575
482
|
}
|
576
|
-
|
577
483
|
lastVisualRow = visualRow;
|
578
484
|
visualColumnForPopulatedData = startColumn;
|
579
485
|
var newRow = [];
|
580
486
|
var insertedRow = newRows.length % populatedRowsLength;
|
581
|
-
|
582
487
|
while (newRow.length < populatedColumnsLength || visualColumnForPopulatedData <= endColumnFromSelection) {
|
583
488
|
var _this$hot$getCellMeta2 = this.hot.getCellMeta(startRow, visualColumnForPopulatedData),
|
584
|
-
|
585
|
-
|
586
|
-
|
489
|
+
skipColumnOnPaste = _this$hot$getCellMeta2.skipColumnOnPaste,
|
490
|
+
visualCol = _this$hot$getCellMeta2.visualCol;
|
587
491
|
visualColumnForPopulatedData = visualCol + 1;
|
588
|
-
|
589
492
|
if (skipColumnOnPaste === true) {
|
590
493
|
/* eslint-disable no-continue */
|
591
494
|
continue;
|
592
495
|
}
|
593
|
-
|
594
496
|
lastVisualColumn = visualCol;
|
595
497
|
var insertedColumn = newRow.length % populatedColumnsLength;
|
596
498
|
newRow.push(inputArray[insertedRow][insertedColumn]);
|
597
499
|
}
|
598
|
-
|
599
500
|
newRows.push(newRow);
|
600
501
|
}
|
601
|
-
|
602
502
|
this.hot.populateFromArray(startRow, startColumn, newRows, void 0, void 0, 'CopyPaste.paste', this.pasteMode);
|
603
503
|
return [startRow, startColumn, lastVisualRow, lastVisualColumn];
|
604
504
|
}
|
505
|
+
|
605
506
|
/**
|
606
507
|
* `copy` event callback on textarea element.
|
607
508
|
*
|
608
509
|
* @param {Event} event ClipboardEvent.
|
609
510
|
* @private
|
610
511
|
*/
|
611
|
-
|
612
512
|
}, {
|
613
513
|
key: "onCopy",
|
614
514
|
value: function onCopy(event) {
|
615
515
|
var priv = privatePool.get(this);
|
616
|
-
|
617
516
|
if (!this.hot.isListening() && !priv.isTriggeredByCopy || this.isEditorOpened()) {
|
618
517
|
return;
|
619
518
|
}
|
620
|
-
|
621
519
|
this.setCopyableText();
|
622
520
|
priv.isTriggeredByCopy = false;
|
623
521
|
var rangedData = this.getRangedData(this.copyableRanges);
|
624
522
|
var allowCopying = !!this.hot.runHooks('beforeCopy', rangedData, this.copyableRanges);
|
625
|
-
|
626
523
|
if (allowCopying) {
|
627
524
|
var textPlain = (0, _SheetClip.stringify)(rangedData);
|
628
|
-
|
629
525
|
if (event && event.clipboardData) {
|
630
526
|
var textHTML = (0, _parseTable._dataToHTML)(rangedData, this.hot.rootDocument);
|
631
527
|
event.clipboardData.setData('text/plain', textPlain);
|
@@ -633,36 +529,30 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
633
529
|
} else if (typeof ClipboardEvent === 'undefined') {
|
634
530
|
this.hot.rootWindow.clipboardData.setData('Text', textPlain);
|
635
531
|
}
|
636
|
-
|
637
532
|
this.hot.runHooks('afterCopy', rangedData, this.copyableRanges);
|
638
533
|
}
|
639
|
-
|
640
534
|
event.preventDefault();
|
641
535
|
}
|
536
|
+
|
642
537
|
/**
|
643
538
|
* `cut` event callback on textarea element.
|
644
539
|
*
|
645
540
|
* @param {Event} event ClipboardEvent.
|
646
541
|
* @private
|
647
542
|
*/
|
648
|
-
|
649
543
|
}, {
|
650
544
|
key: "onCut",
|
651
545
|
value: function onCut(event) {
|
652
546
|
var priv = privatePool.get(this);
|
653
|
-
|
654
547
|
if (!this.hot.isListening() && !priv.isTriggeredByCut || this.isEditorOpened()) {
|
655
548
|
return;
|
656
549
|
}
|
657
|
-
|
658
550
|
this.setCopyableText();
|
659
551
|
priv.isTriggeredByCut = false;
|
660
552
|
var rangedData = this.getRangedData(this.copyableRanges);
|
661
553
|
var allowCuttingOut = !!this.hot.runHooks('beforeCut', rangedData, this.copyableRanges);
|
662
|
-
|
663
554
|
if (allowCuttingOut) {
|
664
555
|
var textPlain = (0, _SheetClip.stringify)(rangedData);
|
665
|
-
|
666
556
|
if (event && event.clipboardData) {
|
667
557
|
var textHTML = (0, _parseTable._dataToHTML)(rangedData, this.hot.rootDocument);
|
668
558
|
event.clipboardData.setData('text/plain', textPlain);
|
@@ -670,40 +560,34 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
670
560
|
} else if (typeof ClipboardEvent === 'undefined') {
|
671
561
|
this.hot.rootWindow.clipboardData.setData('Text', textPlain);
|
672
562
|
}
|
673
|
-
|
674
563
|
this.hot.emptySelectedCells('CopyPaste.cut');
|
675
564
|
this.hot.runHooks('afterCut', rangedData, this.copyableRanges);
|
676
565
|
}
|
677
|
-
|
678
566
|
event.preventDefault();
|
679
567
|
}
|
568
|
+
|
680
569
|
/**
|
681
570
|
* `paste` event callback on textarea element.
|
682
571
|
*
|
683
572
|
* @param {Event} event ClipboardEvent or pseudo ClipboardEvent, if paste was called manually.
|
684
573
|
* @private
|
685
574
|
*/
|
686
|
-
|
687
575
|
}, {
|
688
576
|
key: "onPaste",
|
689
577
|
value: function onPaste(event) {
|
690
578
|
if (!this.hot.isListening() || this.isEditorOpened()) {
|
691
579
|
return;
|
692
580
|
}
|
693
|
-
|
694
581
|
if (event && event.preventDefault) {
|
695
582
|
event.preventDefault();
|
696
583
|
}
|
697
|
-
|
698
584
|
var pastedData;
|
699
|
-
|
700
585
|
if (event && typeof event.clipboardData !== 'undefined') {
|
701
586
|
var textHTML = (0, _string.sanitize)(event.clipboardData.getData('text/html'), {
|
702
587
|
ADD_TAGS: ['meta'],
|
703
588
|
ADD_ATTR: ['content'],
|
704
589
|
FORCE_BODY: true
|
705
590
|
});
|
706
|
-
|
707
591
|
if (textHTML && /(<table)|(<TABLE)/g.test(textHTML)) {
|
708
592
|
var parsedConfig = (0, _parseTable.htmlToGridSettings)(textHTML, this.hot.rootDocument);
|
709
593
|
pastedData = parsedConfig.data;
|
@@ -713,36 +597,31 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
713
597
|
} else if (typeof ClipboardEvent === 'undefined' && typeof this.hot.rootWindow.clipboardData !== 'undefined') {
|
714
598
|
pastedData = this.hot.rootWindow.clipboardData.getData('Text');
|
715
599
|
}
|
716
|
-
|
717
600
|
if (typeof pastedData === 'string') {
|
718
601
|
pastedData = (0, _SheetClip.parse)(pastedData);
|
719
602
|
}
|
720
|
-
|
721
603
|
if (pastedData && pastedData.length === 0) {
|
722
604
|
return;
|
723
605
|
}
|
724
|
-
|
725
606
|
if (this.hot.runHooks('beforePaste', pastedData, this.copyableRanges) === false) {
|
726
607
|
return;
|
727
608
|
}
|
728
|
-
|
729
609
|
var _this$populateValues = this.populateValues(pastedData),
|
730
|
-
|
731
|
-
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
610
|
+
_this$populateValues2 = _slicedToArray(_this$populateValues, 4),
|
611
|
+
startRow = _this$populateValues2[0],
|
612
|
+
startColumn = _this$populateValues2[1],
|
613
|
+
endRow = _this$populateValues2[2],
|
614
|
+
endColumn = _this$populateValues2[3];
|
736
615
|
this.hot.selectCell(startRow, startColumn, Math.min(this.hot.countRows() - 1, endRow), Math.min(this.hot.countCols() - 1, endColumn));
|
737
616
|
this.hot.runHooks('afterPaste', pastedData, this.copyableRanges);
|
738
617
|
}
|
618
|
+
|
739
619
|
/**
|
740
620
|
* Add copy and cut options to the Context Menu.
|
741
621
|
*
|
742
622
|
* @private
|
743
623
|
* @param {object} options Contains default added options of the Context Menu.
|
744
624
|
*/
|
745
|
-
|
746
625
|
}, {
|
747
626
|
key: "onAfterContextMenuDefaultOptions",
|
748
627
|
value: function onAfterContextMenuDefaultOptions(options) {
|
@@ -750,12 +629,12 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
750
629
|
name: '---------'
|
751
630
|
}, (0, _copy.default)(this), (0, _cut.default)(this));
|
752
631
|
}
|
632
|
+
|
753
633
|
/**
|
754
634
|
* Force focus on focusableElement.
|
755
635
|
*
|
756
636
|
* @private
|
757
637
|
*/
|
758
|
-
|
759
638
|
}, {
|
760
639
|
key: "onAfterOnCellMouseUp",
|
761
640
|
value: function onAfterOnCellMouseUp() {
|
@@ -764,62 +643,54 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
764
643
|
if (!this.hot.isListening() || this.isEditorOpened() || this.hot.getSettings().fragmentSelection) {
|
765
644
|
return;
|
766
645
|
}
|
767
|
-
|
768
646
|
this.getOrCreateFocusableElement();
|
769
647
|
this.focusableElement.focus();
|
770
648
|
}
|
649
|
+
|
771
650
|
/**
|
772
651
|
* Force focus on focusableElement after end of the selection.
|
773
652
|
*
|
774
653
|
* @private
|
775
654
|
*/
|
776
|
-
|
777
655
|
}, {
|
778
656
|
key: "onAfterSelectionEnd",
|
779
657
|
value: function onAfterSelectionEnd() {
|
780
658
|
var _privatePool$get = privatePool.get(this),
|
781
|
-
|
782
|
-
|
659
|
+
isFragmentSelectionEnabled = _privatePool$get.isFragmentSelectionEnabled;
|
783
660
|
if (this.isEditorOpened()) {
|
784
661
|
return;
|
785
662
|
}
|
786
|
-
|
787
663
|
this.getOrCreateFocusableElement();
|
788
|
-
|
789
664
|
if (isFragmentSelectionEnabled && this.focusableElement.getFocusableElement() !== this.hot.rootDocument.activeElement && (0, _element.getSelectionText)()) {
|
790
665
|
return;
|
791
666
|
}
|
792
|
-
|
793
667
|
this.setCopyableText();
|
794
668
|
this.focusableElement.focus();
|
795
669
|
}
|
670
|
+
|
796
671
|
/**
|
797
672
|
* `beforeKeyDown` listener to force focus of focusableElement.
|
798
673
|
*
|
799
674
|
* @private
|
800
675
|
*/
|
801
|
-
|
802
676
|
}, {
|
803
677
|
key: "onBeforeKeyDown",
|
804
678
|
value: function onBeforeKeyDown() {
|
805
679
|
if (!this.hot.isListening() || this.isEditorOpened()) {
|
806
680
|
return;
|
807
681
|
}
|
808
|
-
|
809
682
|
var activeElement = this.hot.rootDocument.activeElement;
|
810
683
|
var activeEditor = this.hot.getActiveEditor();
|
811
|
-
|
812
684
|
if (!activeEditor || activeElement !== this.focusableElement.getFocusableElement() && activeElement !== activeEditor.select) {
|
813
685
|
return;
|
814
686
|
}
|
815
|
-
|
816
687
|
this.getOrCreateFocusableElement();
|
817
688
|
this.focusableElement.focus();
|
818
689
|
}
|
690
|
+
|
819
691
|
/**
|
820
692
|
* Destroys the plugin instance.
|
821
693
|
*/
|
822
|
-
|
823
694
|
}, {
|
824
695
|
key: "destroy",
|
825
696
|
value: function destroy() {
|
@@ -827,7 +698,6 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
827
698
|
(0, _focusableElement.destroyElement)(this.focusableElement);
|
828
699
|
this.focusableElement = null;
|
829
700
|
}
|
830
|
-
|
831
701
|
_get(_getPrototypeOf(CopyPaste.prototype), "destroy", this).call(this);
|
832
702
|
}
|
833
703
|
}], [{
|
@@ -846,8 +716,6 @@ var CopyPaste = /*#__PURE__*/function (_BasePlugin) {
|
|
846
716
|
return PLUGIN_PRIORITY;
|
847
717
|
}
|
848
718
|
}]);
|
849
|
-
|
850
719
|
return CopyPaste;
|
851
720
|
}(_base.BasePlugin);
|
852
|
-
|
853
721
|
exports.CopyPaste = CopyPaste;
|