handsontable 12.1.3 → 12.3.0-next-bb1a7c2-20221208
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 +44 -154
- package/3rdparty/walkontable/src/border.mjs +41 -136
- 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 +36 -77
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +36 -70
- package/3rdparty/walkontable/src/calculator/viewportRows.js +30 -49
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +30 -42
- package/3rdparty/walkontable/src/cell/coords.d.ts +1 -1
- package/3rdparty/walkontable/src/cell/coords.js +73 -65
- package/3rdparty/walkontable/src/cell/coords.mjs +73 -60
- package/3rdparty/walkontable/src/cell/range.d.ts +19 -16
- package/3rdparty/walkontable/src/cell/range.js +251 -231
- package/3rdparty/walkontable/src/cell/range.mjs +251 -222
- package/3rdparty/walkontable/src/core/_base.js +30 -74
- package/3rdparty/walkontable/src/core/_base.mjs +30 -67
- package/3rdparty/walkontable/src/core/clone.js +11 -44
- package/3rdparty/walkontable/src/core/clone.mjs +11 -32
- package/3rdparty/walkontable/src/core/core.js +8 -56
- package/3rdparty/walkontable/src/core/core.mjs +8 -38
- package/3rdparty/walkontable/src/event.js +41 -79
- package/3rdparty/walkontable/src/event.mjs +41 -66
- package/3rdparty/walkontable/src/facade/core.js +14 -16
- package/3rdparty/walkontable/src/facade/core.mjs +14 -13
- package/3rdparty/walkontable/src/filter/column.js +22 -17
- package/3rdparty/walkontable/src/filter/column.mjs +22 -16
- package/3rdparty/walkontable/src/filter/row.js +22 -17
- package/3rdparty/walkontable/src/filter/row.mjs +22 -16
- package/3rdparty/walkontable/src/index.js +0 -31
- package/3rdparty/walkontable/src/overlay/_base.js +38 -69
- package/3rdparty/walkontable/src/overlay/_base.mjs +38 -61
- package/3rdparty/walkontable/src/overlay/bottom.js +38 -103
- package/3rdparty/walkontable/src/overlay/bottom.mjs +38 -88
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +12 -52
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +12 -37
- 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 +26 -90
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +26 -75
- package/3rdparty/walkontable/src/overlay/top.js +37 -104
- package/3rdparty/walkontable/src/overlay/top.mjs +37 -89
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +14 -55
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +14 -40
- package/3rdparty/walkontable/src/overlays.js +124 -145
- package/3rdparty/walkontable/src/overlays.mjs +124 -135
- package/3rdparty/walkontable/src/renderer/_base.js +17 -19
- package/3rdparty/walkontable/src/renderer/_base.mjs +17 -17
- package/3rdparty/walkontable/src/renderer/cells.js +15 -53
- package/3rdparty/walkontable/src/renderer/cells.mjs +15 -39
- package/3rdparty/walkontable/src/renderer/colGroup.js +15 -46
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +15 -34
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +13 -49
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +13 -37
- package/3rdparty/walkontable/src/renderer/index.js +26 -35
- package/3rdparty/walkontable/src/renderer/index.mjs +26 -22
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +13 -49
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +13 -36
- package/3rdparty/walkontable/src/renderer/rows.js +11 -49
- package/3rdparty/walkontable/src/renderer/rows.mjs +11 -32
- package/3rdparty/walkontable/src/renderer/table.js +35 -48
- package/3rdparty/walkontable/src/renderer/table.mjs +35 -47
- package/3rdparty/walkontable/src/scroll.js +69 -86
- package/3rdparty/walkontable/src/scroll.mjs +69 -84
- package/3rdparty/walkontable/src/selection.js +28 -103
- package/3rdparty/walkontable/src/selection.mjs +26 -83
- package/3rdparty/walkontable/src/settings.js +25 -31
- package/3rdparty/walkontable/src/settings.mjs +25 -29
- package/3rdparty/walkontable/src/table/bottom.js +6 -34
- package/3rdparty/walkontable/src/table/bottom.mjs +6 -19
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +6 -34
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +6 -19
- package/3rdparty/walkontable/src/table/inlineStart.js +6 -34
- package/3rdparty/walkontable/src/table/inlineStart.mjs +6 -19
- package/3rdparty/walkontable/src/table/master.js +15 -54
- package/3rdparty/walkontable/src/table/master.mjs +15 -38
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +1 -16
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +1 -14
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +1 -16
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +1 -14
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +1 -10
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +1 -8
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +1 -11
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +1 -9
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +1 -10
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +1 -8
- package/3rdparty/walkontable/src/table/top.js +6 -34
- package/3rdparty/walkontable/src/table/top.mjs +6 -19
- package/3rdparty/walkontable/src/table/topInlineStartCorner.js +6 -34
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +6 -19
- package/3rdparty/walkontable/src/table.js +73 -233
- package/3rdparty/walkontable/src/table.mjs +71 -210
- package/3rdparty/walkontable/src/types.js +0 -5
- package/3rdparty/walkontable/src/types.mjs +0 -5
- package/3rdparty/walkontable/src/utils/column.js +18 -30
- package/3rdparty/walkontable/src/utils/column.mjs +18 -25
- package/3rdparty/walkontable/src/utils/nodesPool.js +16 -11
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +16 -10
- 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 +7 -32
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +7 -21
- package/3rdparty/walkontable/src/utils/orderView/view.js +27 -45
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +27 -42
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +16 -14
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +16 -13
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +21 -21
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +21 -18
- package/3rdparty/walkontable/src/utils/row.js +15 -12
- package/3rdparty/walkontable/src/utils/row.mjs +15 -11
- package/3rdparty/walkontable/src/viewport.js +51 -99
- package/3rdparty/walkontable/src/viewport.mjs +51 -96
- package/CHANGELOG.md +99 -1
- package/base.d.ts +1 -0
- package/base.js +11 -17
- package/base.mjs +10 -11
- 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 +0 -1
- 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 -2
- package/core.js +714 -1070
- package/core.mjs +717 -1015
- package/dataMap/dataMap.js +202 -236
- package/dataMap/dataMap.mjs +201 -209
- package/{dataSource.js → dataMap/dataSource.js} +29 -65
- package/{dataSource.mjs → dataMap/dataSource.mjs} +29 -57
- package/dataMap/index.js +0 -13
- package/dataMap/metaManager/index.js +33 -45
- package/dataMap/metaManager/index.mjs +33 -37
- package/dataMap/metaManager/lazyFactoryMap.js +17 -62
- package/dataMap/metaManager/lazyFactoryMap.mjs +17 -46
- package/dataMap/metaManager/metaLayers/cellMeta.js +26 -57
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +25 -41
- package/dataMap/metaManager/metaLayers/columnMeta.js +23 -24
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +24 -21
- package/dataMap/metaManager/metaLayers/globalMeta.js +30 -21
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +31 -18
- package/dataMap/metaManager/metaLayers/tableMeta.js +18 -15
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +19 -14
- package/dataMap/metaManager/metaSchema.js +173 -213
- package/dataMap/metaManager/metaSchema.mjs +173 -204
- package/dataMap/metaManager/mods/dynamicCellMeta.js +15 -35
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +15 -24
- package/dataMap/metaManager/mods/extendMetaProperties.js +14 -27
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +14 -19
- package/dataMap/metaManager/utils.js +49 -28
- package/dataMap/metaManager/utils.mjs +50 -21
- package/dataMap/replaceData.js +15 -35
- package/dataMap/replaceData.mjs +15 -23
- package/dist/handsontable.css +9 -9
- package/dist/handsontable.full.css +9 -9
- package/dist/handsontable.full.js +13065 -28165
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +108 -114
- package/dist/handsontable.js +11528 -21792
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +3 -3
- package/dist/languages/all.js +111 -240
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/ar-AR.js +50 -14
- package/dist/languages/ar-AR.min.js +1 -1
- package/dist/languages/cs-CZ.js +52 -16
- package/dist/languages/cs-CZ.min.js +1 -1
- package/dist/languages/de-CH.js +52 -16
- package/dist/languages/de-CH.min.js +1 -1
- package/dist/languages/de-DE.js +53 -17
- package/dist/languages/de-DE.min.js +1 -1
- package/dist/languages/en-US.js +56 -20
- package/dist/languages/en-US.min.js +1 -1
- package/dist/languages/es-MX.js +56 -20
- package/dist/languages/es-MX.min.js +1 -1
- package/dist/languages/fr-FR.js +55 -19
- package/dist/languages/fr-FR.min.js +1 -1
- package/dist/languages/it-IT.js +55 -19
- package/dist/languages/it-IT.min.js +1 -1
- package/dist/languages/ja-JP.js +83 -43
- package/dist/languages/ja-JP.min.js +1 -1
- package/dist/languages/ko-KR.js +84 -43
- package/dist/languages/ko-KR.min.js +1 -1
- package/dist/languages/lv-LV.js +85 -43
- package/dist/languages/lv-LV.min.js +1 -1
- package/dist/languages/nb-NO.js +86 -43
- package/dist/languages/nb-NO.min.js +1 -1
- package/dist/languages/nl-NL.js +87 -43
- package/dist/languages/nl-NL.min.js +1 -1
- package/dist/languages/pl-PL.js +88 -43
- package/dist/languages/pl-PL.min.js +1 -1
- package/dist/languages/pt-BR.js +67 -28
- package/dist/languages/pt-BR.min.js +1 -1
- package/dist/languages/ru-RU.js +67 -28
- package/dist/languages/ru-RU.min.js +1 -1
- package/dist/languages/sr-SP.js +55 -16
- package/dist/languages/sr-SP.min.js +1 -1
- package/dist/languages/zh-CN.js +55 -16
- package/dist/languages/zh-CN.min.js +1 -1
- package/dist/languages/zh-TW.js +55 -16
- package/dist/languages/zh-TW.min.js +1 -1
- package/editorManager.js +53 -113
- package/editorManager.mjs +50 -90
- package/editors/autocompleteEditor/autocompleteEditor.js +36 -138
- package/editors/autocompleteEditor/autocompleteEditor.mjs +35 -108
- package/editors/autocompleteEditor/index.js +0 -2
- package/editors/baseEditor/baseEditor.js +55 -160
- package/editors/baseEditor/baseEditor.mjs +54 -133
- package/editors/baseEditor/index.js +0 -2
- package/editors/checkboxEditor/checkboxEditor.js +8 -34
- package/editors/checkboxEditor/checkboxEditor.mjs +8 -20
- package/editors/checkboxEditor/index.js +0 -2
- package/editors/dateEditor/dateEditor.js +26 -97
- package/editors/dateEditor/dateEditor.mjs +26 -76
- package/editors/dateEditor/index.js +0 -2
- package/editors/dropdownEditor/dropdownEditor.js +7 -42
- package/editors/dropdownEditor/dropdownEditor.mjs +7 -23
- package/editors/dropdownEditor/index.js +0 -2
- package/editors/handsontableEditor/handsontableEditor.js +19 -86
- package/editors/handsontableEditor/handsontableEditor.mjs +19 -67
- package/editors/handsontableEditor/index.js +0 -2
- package/editors/index.js +0 -25
- package/editors/index.mjs +0 -1
- package/editors/numericEditor/index.js +0 -2
- package/editors/numericEditor/numericEditor.js +7 -32
- package/editors/numericEditor/numericEditor.mjs +7 -19
- package/editors/passwordEditor/index.js +0 -2
- package/editors/passwordEditor/passwordEditor.js +7 -39
- package/editors/passwordEditor/passwordEditor.mjs +7 -23
- package/editors/registry.js +13 -36
- package/editors/registry.mjs +12 -26
- package/editors/selectEditor/index.js +0 -2
- package/editors/selectEditor/selectEditor.js +27 -74
- package/editors/selectEditor/selectEditor.mjs +27 -57
- package/editors/textEditor/caretPositioner.js +0 -8
- package/editors/textEditor/caretPositioner.mjs +0 -7
- package/editors/textEditor/index.js +0 -2
- package/editors/textEditor/textEditor.js +45 -139
- package/editors/textEditor/textEditor.mjs +45 -108
- package/editors/timeEditor/index.js +0 -2
- package/editors/timeEditor/timeEditor.js +7 -37
- package/editors/timeEditor/timeEditor.mjs +7 -22
- package/eventManager.js +26 -47
- package/eventManager.mjs +27 -45
- 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 +3 -10
- package/helpers/data.d.ts +0 -2
- package/helpers/data.js +8 -102
- package/helpers/data.mjs +9 -80
- package/helpers/date.js +2 -3
- package/helpers/date.mjs +2 -2
- package/helpers/dom/element.js +89 -256
- package/helpers/dom/element.mjs +88 -184
- package/helpers/dom/event.js +3 -7
- package/helpers/dom/event.mjs +3 -3
- package/helpers/feature.js +21 -82
- package/helpers/feature.mjs +15 -60
- package/helpers/function.js +14 -59
- package/helpers/function.mjs +14 -45
- package/helpers/mixed.js +9 -64
- package/helpers/mixed.mjs +9 -43
- package/helpers/number.js +4 -46
- package/helpers/number.mjs +4 -23
- package/helpers/object.js +30 -77
- package/helpers/object.mjs +25 -47
- package/helpers/string.js +6 -28
- package/helpers/string.mjs +6 -14
- package/helpers/templateLiteralTag.js +0 -6
- package/helpers/templateLiteralTag.mjs +0 -2
- package/helpers/unicode.js +17 -22
- package/helpers/unicode.mjs +17 -13
- package/helpers/wrappers/jquery.js +4 -14
- package/helpers/wrappers/jquery.mjs +4 -13
- package/i18n/constants.js +50 -45
- package/i18n/constants.mjs +46 -42
- package/i18n/index.js +0 -7
- package/i18n/languages/ar-AR.js +12 -23
- package/i18n/languages/ar-AR.mjs +14 -3
- package/i18n/languages/cs-CZ.js +12 -23
- package/i18n/languages/cs-CZ.mjs +14 -3
- package/i18n/languages/de-CH.js +12 -23
- package/i18n/languages/de-CH.mjs +14 -3
- package/i18n/languages/de-DE.js +12 -23
- package/i18n/languages/de-DE.mjs +14 -3
- package/i18n/languages/en-US.js +13 -24
- package/i18n/languages/en-US.mjs +15 -4
- package/i18n/languages/es-MX.js +13 -24
- package/i18n/languages/es-MX.mjs +17 -5
- package/i18n/languages/fr-FR.js +12 -23
- package/i18n/languages/fr-FR.mjs +14 -3
- package/i18n/languages/index.js +0 -39
- package/i18n/languages/it-IT.js +12 -23
- package/i18n/languages/it-IT.mjs +14 -3
- package/i18n/languages/ja-JP.js +12 -23
- package/i18n/languages/ja-JP.mjs +14 -3
- package/i18n/languages/ko-KR.js +12 -23
- package/i18n/languages/ko-KR.mjs +14 -3
- package/i18n/languages/lv-LV.js +13 -24
- package/i18n/languages/lv-LV.mjs +17 -6
- package/i18n/languages/nb-NO.js +12 -23
- package/i18n/languages/nb-NO.mjs +14 -3
- package/i18n/languages/nl-NL.js +13 -24
- package/i18n/languages/nl-NL.mjs +17 -6
- package/i18n/languages/pl-PL.js +13 -24
- package/i18n/languages/pl-PL.mjs +16 -5
- package/i18n/languages/pt-BR.js +12 -23
- package/i18n/languages/pt-BR.mjs +14 -3
- package/i18n/languages/ru-RU.js +12 -23
- package/i18n/languages/ru-RU.mjs +14 -3
- package/i18n/languages/sr-SP.js +12 -23
- package/i18n/languages/sr-SP.mjs +14 -3
- package/i18n/languages/zh-CN.js +12 -23
- package/i18n/languages/zh-CN.mjs +14 -3
- package/i18n/languages/zh-TW.js +12 -23
- package/i18n/languages/zh-TW.mjs +14 -3
- 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 +0 -2
- package/i18n/registry.js +18 -59
- package/i18n/registry.mjs +18 -30
- package/i18n/utils.js +4 -22
- package/i18n/utils.mjs +4 -11
- package/index.d.ts +9 -0
- package/index.js +23 -58
- package/index.mjs +21 -16
- package/languages/all.js +111 -240
- package/languages/ar-AR.js +50 -14
- package/languages/ar-AR.mjs +14 -3
- package/languages/cs-CZ.js +52 -16
- package/languages/cs-CZ.mjs +14 -3
- package/languages/de-CH.js +52 -16
- package/languages/de-CH.mjs +14 -3
- package/languages/de-DE.js +53 -17
- package/languages/de-DE.mjs +14 -3
- package/languages/en-US.js +56 -20
- package/languages/en-US.mjs +15 -4
- package/languages/es-MX.js +56 -20
- package/languages/es-MX.mjs +17 -5
- package/languages/fr-FR.js +55 -19
- package/languages/fr-FR.mjs +14 -3
- package/languages/index.js +111 -240
- package/languages/it-IT.js +55 -19
- package/languages/it-IT.mjs +14 -3
- package/languages/ja-JP.js +83 -43
- package/languages/ja-JP.mjs +14 -3
- package/languages/ko-KR.js +84 -43
- package/languages/ko-KR.mjs +14 -3
- package/languages/lv-LV.js +85 -43
- package/languages/lv-LV.mjs +17 -6
- package/languages/nb-NO.js +86 -43
- package/languages/nb-NO.mjs +14 -3
- package/languages/nl-NL.js +87 -43
- package/languages/nl-NL.mjs +17 -6
- package/languages/pl-PL.js +88 -43
- package/languages/pl-PL.mjs +16 -5
- package/languages/pt-BR.js +67 -28
- package/languages/pt-BR.mjs +14 -3
- package/languages/ru-RU.js +67 -28
- package/languages/ru-RU.mjs +14 -3
- package/languages/sr-SP.js +55 -16
- package/languages/sr-SP.mjs +14 -3
- package/languages/zh-CN.js +55 -16
- package/languages/zh-CN.mjs +14 -3
- package/languages/zh-TW.js +55 -16
- package/languages/zh-TW.mjs +14 -3
- package/mixins/hooksRefRegisterer.js +1 -12
- package/mixins/hooksRefRegisterer.mjs +1 -9
- package/mixins/localHooks.js +4 -11
- package/mixins/localHooks.mjs +4 -8
- package/package.json +2 -2
- package/pluginHooks.d.ts +10 -5
- package/pluginHooks.js +376 -116
- package/pluginHooks.mjs +375 -103
- package/plugins/autoColumnSize/autoColumnSize.js +81 -174
- package/plugins/autoColumnSize/autoColumnSize.mjs +81 -139
- package/plugins/autoColumnSize/index.js +0 -2
- package/plugins/autoRowSize/autoRowSize.js +89 -160
- package/plugins/autoRowSize/autoRowSize.mjs +89 -131
- package/plugins/autoRowSize/index.js +0 -2
- package/plugins/autofill/autofill.js +53 -165
- package/plugins/autofill/autofill.mjs +53 -133
- 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 +28 -91
- package/plugins/base/base.mjs +28 -63
- package/plugins/base/index.js +0 -2
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +25 -53
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +25 -34
- package/plugins/bindRowsWithHeaders/index.js +0 -2
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +11 -42
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +11 -30
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +12 -54
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +12 -38
- package/plugins/collapsibleColumns/collapsibleColumns.js +106 -193
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +106 -162
- package/plugins/collapsibleColumns/index.js +0 -2
- package/plugins/columnSorting/columnSorting.js +58 -192
- package/plugins/columnSorting/columnSorting.mjs +58 -147
- package/plugins/columnSorting/columnStatesManager.js +27 -77
- package/plugins/columnSorting/columnStatesManager.mjs +24 -51
- 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 +5 -13
- package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
- package/plugins/columnSorting/sortFunction/checkbox.mjs +8 -12
- package/plugins/columnSorting/sortFunction/date.js +2 -19
- package/plugins/columnSorting/sortFunction/date.mjs +2 -14
- package/plugins/columnSorting/sortFunction/default.js +2 -17
- package/plugins/columnSorting/sortFunction/default.mjs +2 -14
- package/plugins/columnSorting/sortFunction/numeric.js +2 -11
- package/plugins/columnSorting/sortFunction/numeric.mjs +2 -8
- package/plugins/columnSorting/sortService/engine.js +1 -7
- package/plugins/columnSorting/sortService/engine.mjs +1 -3
- 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 +65 -126
- package/plugins/columnSummary/columnSummary.mjs +65 -101
- package/plugins/columnSummary/endpoints.js +33 -109
- package/plugins/columnSummary/endpoints.mjs +33 -105
- package/plugins/columnSummary/index.js +0 -2
- package/plugins/columnSummary/utils.js +0 -1
- package/plugins/comments/commentEditor.js +29 -27
- package/plugins/comments/commentEditor.mjs +29 -26
- package/plugins/comments/comments.js +106 -178
- package/plugins/comments/comments.mjs +106 -152
- package/plugins/comments/displaySwitch.js +20 -24
- package/plugins/comments/displaySwitch.mjs +20 -19
- package/plugins/comments/index.js +0 -2
- package/plugins/contextMenu/commandExecutor.js +17 -29
- package/plugins/contextMenu/commandExecutor.mjs +17 -27
- package/plugins/contextMenu/contextMenu.d.ts +4 -3
- package/plugins/contextMenu/contextMenu.js +28 -121
- package/plugins/contextMenu/contextMenu.mjs +28 -91
- package/plugins/contextMenu/cursor.js +19 -19
- package/plugins/contextMenu/cursor.mjs +19 -18
- package/plugins/contextMenu/index.js +0 -2
- package/plugins/contextMenu/itemsFactory.js +21 -35
- package/plugins/contextMenu/itemsFactory.mjs +21 -31
- package/plugins/contextMenu/menu.js +71 -180
- package/plugins/contextMenu/menu.mjs +70 -151
- 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 +4 -39
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +4 -19
- package/plugins/contextMenu/predefinedItems/removeRow.js +4 -38
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +4 -18
- 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 +14 -55
- package/plugins/contextMenu/predefinedItems.mjs +16 -8
- package/plugins/contextMenu/utils.js +17 -57
- package/plugins/contextMenu/utils.mjs +17 -34
- package/plugins/copyPaste/clipboardData.js +14 -9
- package/plugins/copyPaste/clipboardData.mjs +14 -8
- package/plugins/copyPaste/contextMenuItem/copy.js +5 -32
- package/plugins/copyPaste/contextMenuItem/copy.mjs +5 -7
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +35 -0
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +31 -0
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +35 -0
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +31 -0
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +35 -0
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +31 -0
- package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
- package/plugins/copyPaste/contextMenuItem/cut.mjs +2 -4
- package/plugins/copyPaste/copyPaste.d.ts +10 -2
- package/plugins/copyPaste/copyPaste.js +339 -372
- package/plugins/copyPaste/copyPaste.mjs +339 -331
- package/plugins/copyPaste/copyableRanges.js +269 -0
- package/plugins/copyPaste/copyableRanges.mjs +264 -0
- package/plugins/copyPaste/focusableElement.js +21 -55
- package/plugins/copyPaste/focusableElement.mjs +21 -45
- package/plugins/copyPaste/index.js +0 -2
- package/plugins/copyPaste/pasteEvent.js +14 -9
- package/plugins/copyPaste/pasteEvent.mjs +14 -7
- package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
- package/plugins/customBorders/contextMenuItem/bottom.mjs +0 -3
- package/plugins/customBorders/contextMenuItem/index.js +0 -11
- package/plugins/customBorders/contextMenuItem/left.js +0 -17
- package/plugins/customBorders/contextMenuItem/left.mjs +0 -3
- package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
- package/plugins/customBorders/contextMenuItem/noBorders.mjs +0 -1
- package/plugins/customBorders/contextMenuItem/right.js +0 -17
- package/plugins/customBorders/contextMenuItem/right.mjs +0 -3
- package/plugins/customBorders/contextMenuItem/top.js +0 -17
- package/plugins/customBorders/contextMenuItem/top.mjs +0 -3
- package/plugins/customBorders/customBorders.js +64 -188
- package/plugins/customBorders/customBorders.mjs +63 -153
- package/plugins/customBorders/index.js +0 -2
- package/plugins/customBorders/utils.js +13 -52
- package/plugins/customBorders/utils.mjs +13 -31
- package/plugins/dragToScroll/dragToScroll.js +23 -75
- package/plugins/dragToScroll/dragToScroll.mjs +23 -56
- package/plugins/dragToScroll/index.js +0 -2
- package/plugins/dropdownMenu/dropdownMenu.js +49 -127
- package/plugins/dropdownMenu/dropdownMenu.mjs +49 -96
- package/plugins/dropdownMenu/index.js +0 -2
- package/plugins/exportFile/dataProvider.js +34 -72
- package/plugins/exportFile/dataProvider.mjs +31 -58
- package/plugins/exportFile/exportFile.js +56 -61
- package/plugins/exportFile/exportFile.mjs +54 -37
- package/plugins/exportFile/index.js +0 -2
- package/plugins/exportFile/typeFactory.js +15 -12
- package/plugins/exportFile/typeFactory.mjs +15 -5
- package/plugins/exportFile/types/_base.js +15 -15
- package/plugins/exportFile/types/_base.mjs +15 -13
- package/plugins/exportFile/types/csv.js +8 -51
- package/plugins/exportFile/types/csv.mjs +8 -30
- package/plugins/filters/component/_base.js +25 -31
- package/plugins/filters/component/_base.mjs +25 -26
- package/plugins/filters/component/actionBar.js +13 -56
- package/plugins/filters/component/actionBar.mjs +11 -34
- package/plugins/filters/component/condition.js +22 -95
- package/plugins/filters/component/condition.mjs +20 -63
- package/plugins/filters/component/operators.js +18 -71
- package/plugins/filters/component/operators.mjs +18 -48
- package/plugins/filters/component/value.js +22 -97
- package/plugins/filters/component/value.mjs +22 -67
- package/plugins/filters/condition/beginsWith.js +3 -33
- package/plugins/filters/condition/beginsWith.mjs +3 -11
- package/plugins/filters/condition/between.js +4 -38
- package/plugins/filters/condition/between.mjs +4 -16
- package/plugins/filters/condition/byValue.js +4 -28
- package/plugins/filters/condition/byValue.mjs +4 -13
- package/plugins/filters/condition/contains.js +3 -33
- package/plugins/filters/condition/contains.mjs +3 -11
- package/plugins/filters/condition/date/after.js +3 -35
- package/plugins/filters/condition/date/after.mjs +3 -13
- package/plugins/filters/condition/date/before.js +3 -35
- package/plugins/filters/condition/date/before.mjs +3 -13
- 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 +3 -33
- package/plugins/filters/condition/endsWith.mjs +3 -11
- package/plugins/filters/condition/equal.js +3 -32
- package/plugins/filters/condition/equal.mjs +3 -11
- package/plugins/filters/condition/false.js +1 -5
- package/plugins/filters/condition/false.mjs +1 -1
- package/plugins/filters/condition/greaterThan.js +3 -33
- package/plugins/filters/condition/greaterThan.mjs +3 -13
- package/plugins/filters/condition/greaterThanOrEqual.js +3 -33
- package/plugins/filters/condition/greaterThanOrEqual.mjs +3 -13
- package/plugins/filters/condition/lessThan.js +3 -33
- package/plugins/filters/condition/lessThan.mjs +3 -13
- package/plugins/filters/condition/lessThanOrEqual.js +3 -33
- package/plugins/filters/condition/lessThanOrEqual.mjs +3 -13
- 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 +31 -84
- package/plugins/filters/conditionCollection.mjs +39 -69
- package/plugins/filters/conditionRegisterer.js +5 -14
- package/plugins/filters/conditionRegisterer.mjs +5 -9
- package/plugins/filters/conditionUpdateObserver.js +29 -56
- package/plugins/filters/conditionUpdateObserver.mjs +29 -44
- package/plugins/filters/constants.js +15 -67
- package/plugins/filters/constants.mjs +15 -9
- package/plugins/filters/dataFilter.js +17 -20
- package/plugins/filters/dataFilter.mjs +17 -19
- package/plugins/filters/filters.js +110 -210
- package/plugins/filters/filters.mjs +110 -165
- 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 +24 -62
- package/plugins/filters/ui/_base.mjs +26 -36
- package/plugins/filters/ui/input.js +13 -53
- package/plugins/filters/ui/input.mjs +13 -35
- package/plugins/filters/ui/link.js +9 -44
- package/plugins/filters/ui/link.mjs +9 -26
- package/plugins/filters/ui/multipleSelect.js +25 -113
- package/plugins/filters/ui/multipleSelect.mjs +26 -77
- package/plugins/filters/ui/radioInput.js +12 -48
- package/plugins/filters/ui/radioInput.mjs +12 -31
- package/plugins/filters/ui/select.js +20 -77
- package/plugins/filters/ui/select.mjs +20 -53
- 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 +24 -45
- package/plugins/formulas/engine/settings.js +16 -25
- package/plugins/formulas/engine/settings.mjs +16 -13
- package/plugins/formulas/formulas.js +127 -306
- package/plugins/formulas/formulas.mjs +128 -259
- 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 +5 -39
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +5 -21
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +17 -24
- package/plugins/hiddenColumns/hiddenColumns.js +77 -150
- package/plugins/hiddenColumns/hiddenColumns.mjs +77 -109
- package/plugins/hiddenColumns/index.js +0 -2
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +5 -39
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +5 -21
- package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +17 -24
- package/plugins/hiddenRows/hiddenRows.js +75 -149
- package/plugins/hiddenRows/hiddenRows.mjs +75 -108
- package/plugins/hiddenRows/index.js +0 -2
- package/plugins/index.js +0 -71
- package/plugins/index.mjs +0 -1
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +2 -29
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +2 -13
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +2 -29
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +2 -13
- package/plugins/manualColumnFreeze/index.js +0 -2
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +27 -79
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +27 -55
- package/plugins/manualColumnMove/index.js +0 -2
- package/plugins/manualColumnMove/manualColumnMove.js +51 -135
- package/plugins/manualColumnMove/manualColumnMove.mjs +51 -107
- package/plugins/manualColumnMove/ui/_base.js +26 -31
- package/plugins/manualColumnMove/ui/_base.mjs +26 -28
- package/plugins/manualColumnMove/ui/backlight.js +7 -38
- package/plugins/manualColumnMove/ui/backlight.mjs +7 -23
- package/plugins/manualColumnMove/ui/guideline.js +7 -38
- package/plugins/manualColumnMove/ui/guideline.mjs +7 -23
- package/plugins/manualColumnResize/index.js +0 -2
- package/plugins/manualColumnResize/manualColumnResize.js +50 -144
- package/plugins/manualColumnResize/manualColumnResize.mjs +49 -119
- package/plugins/manualRowMove/index.js +0 -2
- package/plugins/manualRowMove/manualRowMove.js +51 -138
- package/plugins/manualRowMove/manualRowMove.mjs +51 -110
- package/plugins/manualRowMove/ui/_base.js +26 -28
- package/plugins/manualRowMove/ui/_base.mjs +26 -27
- package/plugins/manualRowMove/ui/backlight.js +7 -38
- package/plugins/manualRowMove/ui/backlight.mjs +7 -23
- package/plugins/manualRowMove/ui/guideline.js +7 -38
- package/plugins/manualRowMove/ui/guideline.mjs +7 -23
- package/plugins/manualRowResize/index.js +0 -2
- package/plugins/manualRowResize/manualRowResize.js +48 -139
- package/plugins/manualRowResize/manualRowResize.mjs +47 -113
- package/plugins/mergeCells/calculations/autofill.js +49 -133
- package/plugins/mergeCells/calculations/autofill.mjs +46 -117
- package/plugins/mergeCells/calculations/selection.js +22 -39
- package/plugins/mergeCells/calculations/selection.mjs +22 -36
- package/plugins/mergeCells/cellCoords.js +43 -50
- package/plugins/mergeCells/cellCoords.mjs +43 -48
- package/plugins/mergeCells/cellsCollection.js +22 -86
- package/plugins/mergeCells/cellsCollection.mjs +19 -63
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
- package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +0 -6
- package/plugins/mergeCells/index.js +0 -2
- package/plugins/mergeCells/mergeCells.js +136 -334
- package/plugins/mergeCells/mergeCells.mjs +136 -293
- package/plugins/mergeCells/utils.js +0 -3
- package/plugins/mergeCells/utils.mjs +0 -1
- package/plugins/multiColumnSorting/domHelpers.js +2 -12
- package/plugins/multiColumnSorting/domHelpers.mjs +2 -5
- package/plugins/multiColumnSorting/index.js +0 -2
- package/plugins/multiColumnSorting/multiColumnSorting.js +20 -67
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +20 -45
- package/plugins/multiColumnSorting/rootComparator.js +2 -26
- package/plugins/multiColumnSorting/rootComparator.mjs +2 -15
- package/plugins/multiColumnSorting/utils.js +0 -7
- package/plugins/multiColumnSorting/utils.mjs +0 -4
- package/plugins/multipleSelectionHandles/index.js +0 -2
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +12 -110
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +12 -88
- package/plugins/nestedHeaders/index.js +0 -2
- package/plugins/nestedHeaders/nestedHeaders.js +198 -211
- package/plugins/nestedHeaders/nestedHeaders.mjs +206 -191
- package/plugins/nestedHeaders/stateManager/headersTree.js +26 -96
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +26 -76
- package/plugins/nestedHeaders/stateManager/index.js +55 -118
- package/plugins/nestedHeaders/stateManager/index.mjs +61 -105
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +7 -18
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +12 -17
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +10 -15
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +3 -13
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +1 -3
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +3 -14
- 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 +5 -20
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +27 -81
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +33 -71
- package/plugins/nestedHeaders/stateManager/utils.js +19 -22
- package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
- package/plugins/nestedHeaders/utils/ghostTable.js +23 -37
- package/plugins/nestedHeaders/utils/ghostTable.mjs +23 -36
- package/plugins/nestedRows/data/dataManager.js +47 -162
- package/plugins/nestedRows/data/dataManager.mjs +45 -143
- package/plugins/nestedRows/index.js +0 -2
- package/plugins/nestedRows/nestedRows.js +46 -119
- package/plugins/nestedRows/nestedRows.mjs +46 -86
- package/plugins/nestedRows/ui/_base.js +14 -8
- package/plugins/nestedRows/ui/_base.mjs +14 -7
- package/plugins/nestedRows/ui/collapsing.js +33 -133
- package/plugins/nestedRows/ui/collapsing.mjs +33 -111
- package/plugins/nestedRows/ui/contextMenu.js +9 -55
- package/plugins/nestedRows/ui/contextMenu.mjs +8 -33
- package/plugins/nestedRows/ui/headers.js +10 -49
- package/plugins/nestedRows/ui/headers.mjs +10 -34
- package/plugins/nestedRows/utils/rowMoveController.js +36 -79
- package/plugins/nestedRows/utils/rowMoveController.mjs +45 -71
- package/plugins/persistentState/index.js +0 -2
- package/plugins/persistentState/persistentState.js +16 -59
- package/plugins/persistentState/persistentState.mjs +16 -38
- package/plugins/persistentState/storage.js +22 -24
- package/plugins/persistentState/storage.mjs +22 -22
- package/plugins/registry.js +8 -52
- package/plugins/registry.mjs +8 -33
- package/plugins/search/index.js +0 -2
- package/plugins/search/search.js +22 -97
- package/plugins/search/search.mjs +22 -68
- package/plugins/touchScroll/index.js +0 -2
- package/plugins/touchScroll/touchScroll.js +21 -77
- package/plugins/touchScroll/touchScroll.mjs +21 -59
- package/plugins/trimRows/index.js +0 -2
- package/plugins/trimRows/trimRows.js +64 -86
- package/plugins/trimRows/trimRows.mjs +64 -63
- package/plugins/undoRedo/index.js +0 -14
- package/plugins/undoRedo/undoRedo.js +98 -250
- package/plugins/undoRedo/undoRedo.mjs +98 -220
- package/registry.js +0 -11
- package/registry.mjs +1 -2
- 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 +1 -7
- 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 +0 -1
- package/renderers/numericRenderer/index.js +0 -2
- package/renderers/numericRenderer/numericRenderer.js +1 -21
- package/renderers/numericRenderer/numericRenderer.mjs +1 -9
- 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 +1 -13
- package/renderers/textRenderer/textRenderer.mjs +1 -5
- 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 +24 -73
- package/selection/highlight/highlight.mjs +24 -50
- package/selection/highlight/types/activeHeader.js +14 -23
- package/selection/highlight/types/activeHeader.mjs +14 -12
- package/selection/highlight/types/area.js +15 -24
- package/selection/highlight/types/area.mjs +15 -13
- package/selection/highlight/types/cell.js +14 -23
- package/selection/highlight/types/cell.mjs +14 -12
- package/selection/highlight/types/customSelection.js +15 -24
- package/selection/highlight/types/customSelection.mjs +15 -13
- package/selection/highlight/types/fill.js +16 -20
- package/selection/highlight/types/fill.mjs +16 -9
- package/selection/highlight/types/header.js +16 -25
- package/selection/highlight/types/header.mjs +16 -14
- package/selection/highlight/types/index.js +17 -27
- package/selection/highlight/types/index.mjs +17 -13
- package/selection/highlight/visualSelection.js +35 -80
- package/selection/highlight/visualSelection.mjs +35 -68
- package/selection/index.js +0 -14
- package/selection/mouseEventHandler.js +19 -30
- package/selection/mouseEventHandler.mjs +19 -22
- package/selection/range.js +17 -30
- package/selection/range.mjs +17 -21
- package/selection/selection.js +72 -160
- package/selection/selection.mjs +77 -137
- package/selection/transformation.js +23 -39
- package/selection/transformation.mjs +23 -36
- package/selection/utils.js +23 -71
- package/selection/utils.mjs +23 -48
- package/shortcuts/context.js +24 -79
- package/shortcuts/context.mjs +24 -56
- package/shortcuts/index.js +0 -2
- package/shortcuts/keyObserver.js +0 -9
- package/shortcuts/keyObserver.mjs +0 -4
- package/shortcuts/manager.js +17 -37
- package/shortcuts/manager.mjs +17 -34
- package/shortcuts/recorder.js +9 -40
- package/shortcuts/recorder.mjs +9 -31
- package/shortcuts/utils.js +5 -20
- package/shortcuts/utils.mjs +5 -6
- package/tableView.js +239 -330
- package/tableView.mjs +239 -308
- package/translations/changesObservable/observable.js +14 -53
- package/translations/changesObservable/observable.mjs +14 -43
- package/translations/changesObservable/observer.js +13 -31
- package/translations/changesObservable/observer.mjs +13 -23
- package/translations/changesObservable/utils.js +1 -5
- package/translations/changesObservable/utils.mjs +1 -4
- package/translations/index.js +0 -11
- package/translations/indexMapper.js +80 -162
- package/translations/indexMapper.mjs +85 -134
- package/translations/mapCollections/aggregatedCollection.js +14 -50
- package/translations/mapCollections/aggregatedCollection.mjs +14 -37
- package/translations/mapCollections/index.js +0 -7
- package/translations/mapCollections/mapCollection.js +20 -34
- package/translations/mapCollections/mapCollection.mjs +20 -23
- package/translations/maps/hidingMap.js +7 -34
- package/translations/maps/hidingMap.mjs +7 -22
- package/translations/maps/index.js +1 -24
- package/translations/maps/index.mjs +1 -3
- package/translations/maps/indexMap.js +25 -33
- package/translations/maps/indexMap.mjs +25 -27
- package/translations/maps/indexesSequence.js +8 -40
- package/translations/maps/indexesSequence.mjs +8 -25
- package/translations/maps/linkedPhysicalIndexToValueMap.js +18 -81
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +17 -54
- package/translations/maps/physicalIndexToValueMap.js +7 -38
- package/translations/maps/physicalIndexToValueMap.mjs +7 -24
- package/translations/maps/trimmingMap.js +7 -34
- package/translations/maps/trimmingMap.mjs +7 -22
- package/translations/maps/utils/actionsOnIndexes.js +1 -7
- package/translations/maps/utils/actionsOnIndexes.mjs +1 -3
- 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 +1 -9
- package/translations/maps/utils/physicallyIndexed.js +1 -27
- package/translations/maps/utils/physicallyIndexed.mjs +1 -10
- package/utils/dataStructures/linkedList.js +23 -50
- package/utils/dataStructures/linkedList.mjs +23 -48
- package/utils/dataStructures/priorityMap.js +9 -47
- package/utils/dataStructures/priorityMap.mjs +9 -30
- package/utils/dataStructures/queue.js +19 -16
- package/utils/dataStructures/queue.mjs +19 -15
- package/utils/dataStructures/stack.js +19 -16
- package/utils/dataStructures/stack.mjs +19 -15
- package/utils/dataStructures/tree.js +19 -77
- package/utils/dataStructures/tree.mjs +19 -56
- package/utils/dataStructures/uniqueMap.js +18 -57
- package/utils/dataStructures/uniqueMap.mjs +18 -43
- package/utils/dataStructures/uniqueSet.js +5 -32
- package/utils/dataStructures/uniqueSet.mjs +5 -19
- package/utils/ghostTable.js +42 -106
- package/utils/ghostTable.mjs +40 -90
- package/utils/interval.js +17 -29
- package/utils/interval.mjs +18 -26
- 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 +25 -51
- package/utils/samplesGenerator.mjs +25 -42
- 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 +0 -1
- 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/selection/selection.mjs
CHANGED
@@ -1,27 +1,12 @@
|
|
1
|
-
|
2
|
-
import "core-js/modules/es.object.freeze.js";
|
3
|
-
import "core-js/modules/es.symbol.js";
|
4
|
-
import "core-js/modules/es.symbol.description.js";
|
5
|
-
import "core-js/modules/es.symbol.iterator.js";
|
6
|
-
import "core-js/modules/es.function.name.js";
|
7
|
-
import "core-js/modules/es.regexp.exec.js";
|
8
|
-
|
1
|
+
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); }
|
9
2
|
var _templateObject;
|
10
|
-
|
11
3
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
12
|
-
|
13
4
|
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."); }
|
14
|
-
|
15
5
|
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); }
|
16
|
-
|
17
6
|
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; }
|
18
|
-
|
19
|
-
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; }
|
20
|
-
|
7
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) { ; } } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
21
8
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
22
|
-
|
23
9
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
24
|
-
|
25
10
|
import "core-js/modules/es.array.iterator.js";
|
26
11
|
import "core-js/modules/es.object.to-string.js";
|
27
12
|
import "core-js/modules/es.set.js";
|
@@ -34,13 +19,20 @@ import "core-js/modules/es.string.includes.js";
|
|
34
19
|
import "core-js/modules/es.number.is-integer.js";
|
35
20
|
import "core-js/modules/es.number.constructor.js";
|
36
21
|
import "core-js/modules/web.dom-collections.for-each.js";
|
37
|
-
|
22
|
+
import "core-js/modules/es.symbol.to-primitive.js";
|
23
|
+
import "core-js/modules/es.date.to-primitive.js";
|
24
|
+
import "core-js/modules/es.symbol.js";
|
25
|
+
import "core-js/modules/es.symbol.description.js";
|
26
|
+
import "core-js/modules/es.array.slice.js";
|
27
|
+
import "core-js/modules/es.object.freeze.js";
|
28
|
+
import "core-js/modules/es.symbol.iterator.js";
|
29
|
+
import "core-js/modules/es.function.name.js";
|
30
|
+
import "core-js/modules/es.regexp.exec.js";
|
38
31
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
39
|
-
|
40
|
-
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); } }
|
41
|
-
|
32
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
42
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; }
|
43
|
-
|
34
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
35
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
44
36
|
import Highlight from "./highlight/highlight.mjs";
|
45
37
|
import { AREA_TYPE, HEADER_TYPE, CELL_TYPE } from "./highlight/constants.mjs";
|
46
38
|
import SelectionRange from "./range.mjs";
|
@@ -55,13 +47,10 @@ import { toSingleLine } from "./../helpers/templateLiteralTag.mjs";
|
|
55
47
|
* @class Selection
|
56
48
|
* @util
|
57
49
|
*/
|
58
|
-
|
59
50
|
var Selection = /*#__PURE__*/function () {
|
60
51
|
function Selection(settings, tableProps) {
|
61
52
|
var _this = this;
|
62
|
-
|
63
53
|
_classCallCheck(this, Selection);
|
64
|
-
|
65
54
|
/**
|
66
55
|
* Handsontable settings instance.
|
67
56
|
*
|
@@ -73,21 +62,18 @@ var Selection = /*#__PURE__*/function () {
|
|
73
62
|
*
|
74
63
|
* @type {object}
|
75
64
|
*/
|
76
|
-
|
77
65
|
this.tableProps = tableProps;
|
78
66
|
/**
|
79
67
|
* The flag which determines if the selection is in progress.
|
80
68
|
*
|
81
69
|
* @type {boolean}
|
82
70
|
*/
|
83
|
-
|
84
71
|
this.inProgress = false;
|
85
72
|
/**
|
86
73
|
* The flag indicates that selection was performed by clicking the corner overlay.
|
87
74
|
*
|
88
75
|
* @type {boolean}
|
89
76
|
*/
|
90
|
-
|
91
77
|
this.selectedByCorner = false;
|
92
78
|
/**
|
93
79
|
* The collection of the selection layer levels where the whole row was selected using the row header or
|
@@ -95,7 +81,6 @@ var Selection = /*#__PURE__*/function () {
|
|
95
81
|
*
|
96
82
|
* @type {Set.<number>}
|
97
83
|
*/
|
98
|
-
|
99
84
|
this.selectedByRowHeader = new Set();
|
100
85
|
/**
|
101
86
|
* The collection of the selection layer levels where the whole column was selected using the column header or
|
@@ -103,14 +88,12 @@ var Selection = /*#__PURE__*/function () {
|
|
103
88
|
*
|
104
89
|
* @type {Set.<number>}
|
105
90
|
*/
|
106
|
-
|
107
91
|
this.selectedByColumnHeader = new Set();
|
108
92
|
/**
|
109
93
|
* Selection data layer (handle visual coordinates).
|
110
94
|
*
|
111
95
|
* @type {SelectionRange}
|
112
96
|
*/
|
113
|
-
|
114
97
|
this.selectedRange = new SelectionRange(function (highlight, from, to) {
|
115
98
|
return _this.tableProps.createCellRange(highlight, from, to);
|
116
99
|
});
|
@@ -119,7 +102,6 @@ var Selection = /*#__PURE__*/function () {
|
|
119
102
|
*
|
120
103
|
* @type {Highlight}
|
121
104
|
*/
|
122
|
-
|
123
105
|
this.highlight = new Highlight({
|
124
106
|
headerClassName: settings.currentHeaderClassName,
|
125
107
|
activeHeaderClassName: settings.activeHeaderClassName,
|
@@ -158,7 +140,6 @@ var Selection = /*#__PURE__*/function () {
|
|
158
140
|
*
|
159
141
|
* @type {Transformation}
|
160
142
|
*/
|
161
|
-
|
162
143
|
this.transformation = new Transformation(this.selectedRange, {
|
163
144
|
countRows: function countRows() {
|
164
145
|
return _this.tableProps.countRowsTranslated();
|
@@ -195,87 +176,81 @@ var Selection = /*#__PURE__*/function () {
|
|
195
176
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
196
177
|
args[_key] = arguments[_key];
|
197
178
|
}
|
198
|
-
|
199
179
|
return _this.runLocalHooks.apply(_this, ['beforeModifyTransformStart'].concat(args));
|
200
180
|
});
|
201
181
|
this.transformation.addLocalHook('afterTransformStart', function () {
|
202
182
|
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
203
183
|
args[_key2] = arguments[_key2];
|
204
184
|
}
|
205
|
-
|
206
185
|
return _this.runLocalHooks.apply(_this, ['afterModifyTransformStart'].concat(args));
|
207
186
|
});
|
208
187
|
this.transformation.addLocalHook('beforeTransformEnd', function () {
|
209
188
|
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
210
189
|
args[_key3] = arguments[_key3];
|
211
190
|
}
|
212
|
-
|
213
191
|
return _this.runLocalHooks.apply(_this, ['beforeModifyTransformEnd'].concat(args));
|
214
192
|
});
|
215
193
|
this.transformation.addLocalHook('afterTransformEnd', function () {
|
216
194
|
for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
217
195
|
args[_key4] = arguments[_key4];
|
218
196
|
}
|
219
|
-
|
220
197
|
return _this.runLocalHooks.apply(_this, ['afterModifyTransformEnd'].concat(args));
|
221
198
|
});
|
222
199
|
this.transformation.addLocalHook('insertRowRequire', function () {
|
223
200
|
for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
|
224
201
|
args[_key5] = arguments[_key5];
|
225
202
|
}
|
226
|
-
|
227
203
|
return _this.runLocalHooks.apply(_this, ['insertRowRequire'].concat(args));
|
228
204
|
});
|
229
205
|
this.transformation.addLocalHook('insertColRequire', function () {
|
230
206
|
for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
|
231
207
|
args[_key6] = arguments[_key6];
|
232
208
|
}
|
233
|
-
|
234
209
|
return _this.runLocalHooks.apply(_this, ['insertColRequire'].concat(args));
|
235
210
|
});
|
236
211
|
}
|
212
|
+
|
237
213
|
/**
|
238
214
|
* Get data layer for current selection.
|
239
215
|
*
|
240
216
|
* @returns {SelectionRange}
|
241
217
|
*/
|
242
|
-
|
243
|
-
|
244
218
|
_createClass(Selection, [{
|
245
219
|
key: "getSelectedRange",
|
246
220
|
value: function getSelectedRange() {
|
247
221
|
return this.selectedRange;
|
248
222
|
}
|
223
|
+
|
249
224
|
/**
|
250
225
|
* Indicate that selection process began. It sets internaly `.inProgress` property to `true`.
|
251
226
|
*/
|
252
|
-
|
253
227
|
}, {
|
254
228
|
key: "begin",
|
255
229
|
value: function begin() {
|
256
230
|
this.inProgress = true;
|
257
231
|
}
|
232
|
+
|
258
233
|
/**
|
259
234
|
* Indicate that selection process finished. It sets internaly `.inProgress` property to `false`.
|
260
235
|
*/
|
261
|
-
|
262
236
|
}, {
|
263
237
|
key: "finish",
|
264
238
|
value: function finish() {
|
265
239
|
this.runLocalHooks('afterSelectionFinished', Array.from(this.selectedRange));
|
266
240
|
this.inProgress = false;
|
267
241
|
}
|
242
|
+
|
268
243
|
/**
|
269
244
|
* Check if the process of selecting the cell/cells is in progress.
|
270
245
|
*
|
271
246
|
* @returns {boolean}
|
272
247
|
*/
|
273
|
-
|
274
248
|
}, {
|
275
249
|
key: "isInProgress",
|
276
250
|
value: function isInProgress() {
|
277
251
|
return this.inProgress;
|
278
252
|
}
|
253
|
+
|
279
254
|
/**
|
280
255
|
* Starts selection range on given coordinate object.
|
281
256
|
*
|
@@ -286,7 +261,6 @@ var Selection = /*#__PURE__*/function () {
|
|
286
261
|
* @param {boolean} [fragment=false] If `true`, the selection will be treated as a partial selection where the
|
287
262
|
* `setRangeEnd` method won't be called on every `setRangeStart` call.
|
288
263
|
*/
|
289
|
-
|
290
264
|
}, {
|
291
265
|
key: "setRangeStart",
|
292
266
|
value: function setRangeStart(coords, multipleSelection) {
|
@@ -295,36 +269,31 @@ var Selection = /*#__PURE__*/function () {
|
|
295
269
|
var isMultipleSelection = isUndefined(multipleSelection) ? this.tableProps.getShortcutManager().isCtrlPressed() : multipleSelection;
|
296
270
|
var isRowNegative = coords.row < 0;
|
297
271
|
var isColumnNegative = coords.col < 0;
|
298
|
-
var selectedByCorner = isRowNegative && isColumnNegative;
|
272
|
+
var selectedByCorner = isRowNegative && isColumnNegative;
|
273
|
+
// We are creating copy. We would like to modify just the start of the selection by below hook. Then original coords
|
299
274
|
// should be handled by next methods.
|
300
|
-
|
301
275
|
var coordsClone = coords.clone();
|
302
276
|
this.selectedByCorner = selectedByCorner;
|
303
277
|
this.runLocalHooks("beforeSetRangeStart".concat(fragment ? 'Only' : ''), coordsClone);
|
304
|
-
|
305
278
|
if (!isMultipleMode || isMultipleMode && !isMultipleSelection && isUndefined(multipleSelection)) {
|
306
279
|
this.selectedRange.clear();
|
307
280
|
}
|
308
|
-
|
309
281
|
this.selectedRange.add(coordsClone);
|
310
|
-
|
311
282
|
if (this.getLayerLevel() === 0) {
|
312
283
|
this.selectedByRowHeader.clear();
|
313
284
|
this.selectedByColumnHeader.clear();
|
314
285
|
}
|
315
|
-
|
316
286
|
if (!selectedByCorner && isColumnNegative) {
|
317
287
|
this.selectedByRowHeader.add(this.getLayerLevel());
|
318
288
|
}
|
319
|
-
|
320
289
|
if (!selectedByCorner && isRowNegative) {
|
321
290
|
this.selectedByColumnHeader.add(this.getLayerLevel());
|
322
291
|
}
|
323
|
-
|
324
292
|
if (!fragment) {
|
325
293
|
this.setRangeEnd(coords);
|
326
294
|
}
|
327
295
|
}
|
296
|
+
|
328
297
|
/**
|
329
298
|
* Starts selection range on given coordinate object.
|
330
299
|
*
|
@@ -333,46 +302,43 @@ var Selection = /*#__PURE__*/function () {
|
|
333
302
|
* only when 'selectionMode' is set as 'multiple'. If the argument is not defined
|
334
303
|
* the default trigger will be used.
|
335
304
|
*/
|
336
|
-
|
337
305
|
}, {
|
338
306
|
key: "setRangeStartOnly",
|
339
307
|
value: function setRangeStartOnly(coords, multipleSelection) {
|
340
308
|
this.setRangeStart(coords, multipleSelection, true);
|
341
309
|
}
|
310
|
+
|
342
311
|
/**
|
343
312
|
* Ends selection range on given coordinate object.
|
344
313
|
*
|
345
314
|
* @param {CellCoords} coords Visual coords.
|
346
315
|
*/
|
347
|
-
|
348
316
|
}, {
|
349
317
|
key: "setRangeEnd",
|
350
318
|
value: function setRangeEnd(coords) {
|
351
319
|
if (this.selectedRange.isEmpty()) {
|
352
320
|
return;
|
353
|
-
}
|
354
|
-
// should be handled by next methods.
|
355
|
-
|
321
|
+
}
|
356
322
|
|
323
|
+
// We are creating copy. We would like to modify just the end of the selection by below hook. Then original coords
|
324
|
+
// should be handled by next methods.
|
357
325
|
var coordsClone = coords.clone();
|
358
326
|
this.runLocalHooks('beforeSetRangeEnd', coordsClone);
|
359
327
|
this.begin();
|
360
328
|
var cellRange = this.selectedRange.current();
|
361
|
-
|
362
329
|
if (this.settings.selectionMode !== 'single') {
|
363
330
|
cellRange.setTo(this.tableProps.createCellCoords(coordsClone.row, coordsClone.col));
|
364
|
-
}
|
365
|
-
|
331
|
+
}
|
366
332
|
|
333
|
+
// Set up current selection.
|
367
334
|
this.highlight.getCell().clear();
|
368
|
-
|
369
335
|
if (this.highlight.isEnabledFor(CELL_TYPE, cellRange.highlight)) {
|
370
336
|
this.highlight.getCell().add(this.selectedRange.current().highlight).commit().syncWith(cellRange);
|
371
337
|
}
|
338
|
+
var layerLevel = this.getLayerLevel();
|
372
339
|
|
373
|
-
|
340
|
+
// If the next layer level is lower than previous then clear all area and header highlights. This is the
|
374
341
|
// indication that the new selection is performing.
|
375
|
-
|
376
342
|
if (layerLevel < this.highlight.layerLevel) {
|
377
343
|
arrayEach(this.highlight.getAreas(), function (highlight) {
|
378
344
|
return void highlight.clear();
|
@@ -384,7 +350,6 @@ var Selection = /*#__PURE__*/function () {
|
|
384
350
|
return void highlight.clear();
|
385
351
|
});
|
386
352
|
}
|
387
|
-
|
388
353
|
this.highlight.useLayerLevel(layerLevel);
|
389
354
|
var areaHighlight = this.highlight.createOrGetArea();
|
390
355
|
var headerHighlight = this.highlight.createOrGetHeader();
|
@@ -392,21 +357,19 @@ var Selection = /*#__PURE__*/function () {
|
|
392
357
|
areaHighlight.clear();
|
393
358
|
headerHighlight.clear();
|
394
359
|
activeHeaderHighlight.clear();
|
395
|
-
|
396
360
|
if (this.highlight.isEnabledFor(AREA_TYPE, cellRange.highlight) && (this.isMultiple() || layerLevel >= 1)) {
|
397
361
|
areaHighlight.add(cellRange.from).add(cellRange.to).commit();
|
398
|
-
|
399
362
|
if (layerLevel === 1) {
|
400
363
|
// For single cell selection in the same layer, we do not create area selection to prevent blue background.
|
401
364
|
// When non-consecutive selection is performed we have to add that missing area selection to the previous layer
|
402
365
|
// based on previous coordinates. It only occurs when the previous selection wasn't select multiple cells.
|
403
366
|
var previousRange = this.selectedRange.previous();
|
404
|
-
this.highlight.useLayerLevel(layerLevel - 1).createOrGetArea().add(previousRange.from).commit()
|
367
|
+
this.highlight.useLayerLevel(layerLevel - 1).createOrGetArea().add(previousRange.from).commit()
|
368
|
+
// Range may start with hidden indexes. Commit would not found start point (as we add just the `from` coords).
|
405
369
|
.syncWith(previousRange);
|
406
370
|
this.highlight.useLayerLevel(layerLevel);
|
407
371
|
}
|
408
372
|
}
|
409
|
-
|
410
373
|
if (this.highlight.isEnabledFor(HEADER_TYPE, cellRange.highlight)) {
|
411
374
|
// The header selection generally contains cell selection. In a case when all rows (or columns)
|
412
375
|
// are hidden that visual coordinates are translated to renderable coordinates that do not exist.
|
@@ -415,55 +378,49 @@ var Selection = /*#__PURE__*/function () {
|
|
415
378
|
var areAnyRowsRendered = this.tableProps.countRowsTranslated() === 0;
|
416
379
|
var areAnyColumnsRendered = this.tableProps.countColsTranslated() === 0;
|
417
380
|
var headerCellRange = cellRange;
|
418
|
-
|
419
381
|
if (areAnyRowsRendered || areAnyColumnsRendered) {
|
420
382
|
headerCellRange = cellRange.clone();
|
421
383
|
}
|
422
|
-
|
423
384
|
if (areAnyRowsRendered) {
|
424
385
|
headerCellRange.from.row = -1;
|
425
386
|
}
|
426
|
-
|
427
387
|
if (areAnyColumnsRendered) {
|
428
388
|
headerCellRange.from.col = -1;
|
429
389
|
}
|
430
|
-
|
431
390
|
if (this.settings.selectionMode === 'single') {
|
432
391
|
if (this.isSelectedByAnyHeader()) {
|
433
392
|
headerCellRange.from.normalize();
|
434
393
|
}
|
435
|
-
|
436
394
|
headerHighlight.add(headerCellRange.from).commit();
|
437
395
|
} else {
|
438
396
|
headerHighlight.add(headerCellRange.from).add(headerCellRange.to).commit();
|
439
397
|
}
|
440
|
-
|
441
398
|
if (this.isEntireRowSelected()) {
|
442
|
-
var isRowSelected = this.tableProps.countCols() === cellRange.getWidth();
|
399
|
+
var isRowSelected = this.tableProps.countCols() === cellRange.getWidth();
|
443
400
|
|
401
|
+
// Make sure that the whole row is selected (in case where selectionMode is set to 'single')
|
444
402
|
if (isRowSelected) {
|
445
403
|
activeHeaderHighlight.add(this.tableProps.createCellCoords(cellRange.from.row, -1)).add(this.tableProps.createCellCoords(cellRange.to.row, -1)).commit();
|
446
404
|
}
|
447
405
|
}
|
448
|
-
|
449
406
|
if (this.isEntireColumnSelected()) {
|
450
|
-
var isColumnSelected = this.tableProps.countRows() === cellRange.getHeight();
|
407
|
+
var isColumnSelected = this.tableProps.countRows() === cellRange.getHeight();
|
451
408
|
|
409
|
+
// Make sure that the whole column is selected (in case where selectionMode is set to 'single')
|
452
410
|
if (isColumnSelected) {
|
453
411
|
activeHeaderHighlight.add(this.tableProps.createCellCoords(-1, cellRange.from.col)).add(this.tableProps.createCellCoords(-1, cellRange.to.col)).commit();
|
454
412
|
}
|
455
413
|
}
|
456
414
|
}
|
457
|
-
|
458
415
|
this.runLocalHooks('afterSetRangeEnd', coords);
|
459
416
|
}
|
417
|
+
|
460
418
|
/**
|
461
419
|
* Returns information if we have a multiselection. This method check multiselection only on the latest layer of
|
462
420
|
* the selection.
|
463
421
|
*
|
464
422
|
* @returns {boolean}
|
465
423
|
*/
|
466
|
-
|
467
424
|
}, {
|
468
425
|
key: "isMultiple",
|
469
426
|
value: function isMultiple() {
|
@@ -471,6 +428,7 @@ var Selection = /*#__PURE__*/function () {
|
|
471
428
|
this.runLocalHooks('afterIsMultipleSelection', isMultipleListener);
|
472
429
|
return isMultipleListener.value;
|
473
430
|
}
|
431
|
+
|
474
432
|
/**
|
475
433
|
* Selects cell relative to the current cell (if possible).
|
476
434
|
*
|
@@ -479,47 +437,47 @@ var Selection = /*#__PURE__*/function () {
|
|
479
437
|
* @param {boolean} [force=false] If `true` the new rows/columns will be created if necessary. Otherwise, row/column will
|
480
438
|
* be created according to `minSpareRows/minSpareCols` settings of Handsontable.
|
481
439
|
*/
|
482
|
-
|
483
440
|
}, {
|
484
441
|
key: "transformStart",
|
485
442
|
value: function transformStart(rowDelta, colDelta) {
|
486
443
|
var force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
487
444
|
this.setRangeStart(this.transformation.transformStart(rowDelta, colDelta, force));
|
488
445
|
}
|
446
|
+
|
489
447
|
/**
|
490
448
|
* Sets selection end cell relative to the current selection end cell (if possible).
|
491
449
|
*
|
492
450
|
* @param {number} rowDelta Rows number to move, value can be passed as negative number.
|
493
451
|
* @param {number} colDelta Columns number to move, value can be passed as negative number.
|
494
452
|
*/
|
495
|
-
|
496
453
|
}, {
|
497
454
|
key: "transformEnd",
|
498
455
|
value: function transformEnd(rowDelta, colDelta) {
|
499
456
|
this.setRangeEnd(this.transformation.transformEnd(rowDelta, colDelta));
|
500
457
|
}
|
458
|
+
|
501
459
|
/**
|
502
460
|
* Returns currently used layer level.
|
503
461
|
*
|
504
462
|
* @returns {number} Returns layer level starting from 0. If no selection was added to the table -1 is returned.
|
505
463
|
*/
|
506
|
-
|
507
464
|
}, {
|
508
465
|
key: "getLayerLevel",
|
509
466
|
value: function getLayerLevel() {
|
510
467
|
return this.selectedRange.size() - 1;
|
511
468
|
}
|
469
|
+
|
512
470
|
/**
|
513
471
|
* Returns `true` if currently there is a selection on the screen, `false` otherwise.
|
514
472
|
*
|
515
473
|
* @returns {boolean}
|
516
474
|
*/
|
517
|
-
|
518
475
|
}, {
|
519
476
|
key: "isSelected",
|
520
477
|
value: function isSelected() {
|
521
478
|
return !this.selectedRange.isEmpty();
|
522
479
|
}
|
480
|
+
|
523
481
|
/**
|
524
482
|
* Returns `true` if the selection was applied by clicking to the row header. If the `layerLevel`
|
525
483
|
* argument is passed then only that layer will be checked. Otherwise, it checks if any row header
|
@@ -528,13 +486,13 @@ var Selection = /*#__PURE__*/function () {
|
|
528
486
|
* @param {number} [layerLevel=this.getLayerLevel()] Selection layer level to check.
|
529
487
|
* @returns {boolean}
|
530
488
|
*/
|
531
|
-
|
532
489
|
}, {
|
533
490
|
key: "isSelectedByRowHeader",
|
534
491
|
value: function isSelectedByRowHeader() {
|
535
492
|
var layerLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getLayerLevel();
|
536
493
|
return !this.isSelectedByCorner(layerLevel) && this.isEntireRowSelected(layerLevel);
|
537
494
|
}
|
495
|
+
|
538
496
|
/**
|
539
497
|
* Returns `true` if the selection consists of entire rows (including their headers). If the `layerLevel`
|
540
498
|
* argument is passed then only that layer will be checked. Otherwise, it checks the selection for all layers.
|
@@ -542,13 +500,13 @@ var Selection = /*#__PURE__*/function () {
|
|
542
500
|
* @param {number} [layerLevel=this.getLayerLevel()] Selection layer level to check.
|
543
501
|
* @returns {boolean}
|
544
502
|
*/
|
545
|
-
|
546
503
|
}, {
|
547
504
|
key: "isEntireRowSelected",
|
548
505
|
value: function isEntireRowSelected() {
|
549
506
|
var layerLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getLayerLevel();
|
550
507
|
return layerLevel === -1 ? this.selectedByRowHeader.size > 0 : this.selectedByRowHeader.has(layerLevel);
|
551
508
|
}
|
509
|
+
|
552
510
|
/**
|
553
511
|
* Returns `true` if the selection was applied by clicking to the column header. If the `layerLevel`
|
554
512
|
* argument is passed then only that layer will be checked. Otherwise, it checks if any column header
|
@@ -557,13 +515,13 @@ var Selection = /*#__PURE__*/function () {
|
|
557
515
|
* @param {number} [layerLevel=this.getLayerLevel()] Selection layer level to check.
|
558
516
|
* @returns {boolean}
|
559
517
|
*/
|
560
|
-
|
561
518
|
}, {
|
562
519
|
key: "isSelectedByColumnHeader",
|
563
520
|
value: function isSelectedByColumnHeader() {
|
564
521
|
var layerLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getLayerLevel();
|
565
522
|
return !this.isSelectedByCorner() && this.isEntireColumnSelected(layerLevel);
|
566
523
|
}
|
524
|
+
|
567
525
|
/**
|
568
526
|
* Returns `true` if the selection consists of entire columns (including their headers). If the `layerLevel`
|
569
527
|
* argument is passed then only that layer will be checked. Otherwise, it checks the selection for all layers.
|
@@ -571,35 +529,35 @@ var Selection = /*#__PURE__*/function () {
|
|
571
529
|
* @param {number} [layerLevel=this.getLayerLevel()] Selection layer level to check.
|
572
530
|
* @returns {boolean}
|
573
531
|
*/
|
574
|
-
|
575
532
|
}, {
|
576
533
|
key: "isEntireColumnSelected",
|
577
534
|
value: function isEntireColumnSelected() {
|
578
535
|
var layerLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.getLayerLevel();
|
579
536
|
return layerLevel === -1 ? this.selectedByColumnHeader.size > 0 : this.selectedByColumnHeader.has(layerLevel);
|
580
537
|
}
|
538
|
+
|
581
539
|
/**
|
582
540
|
* Returns `true` if the selection was applied by clicking on the row or column header on any layer level.
|
583
541
|
*
|
584
542
|
* @returns {boolean}
|
585
543
|
*/
|
586
|
-
|
587
544
|
}, {
|
588
545
|
key: "isSelectedByAnyHeader",
|
589
546
|
value: function isSelectedByAnyHeader() {
|
590
547
|
return this.isSelectedByRowHeader(-1) || this.isSelectedByColumnHeader(-1) || this.isSelectedByCorner();
|
591
548
|
}
|
549
|
+
|
592
550
|
/**
|
593
551
|
* Returns `true` if the selection was applied by clicking on the left-top corner overlay.
|
594
552
|
*
|
595
553
|
* @returns {boolean}
|
596
554
|
*/
|
597
|
-
|
598
555
|
}, {
|
599
556
|
key: "isSelectedByCorner",
|
600
557
|
value: function isSelectedByCorner() {
|
601
558
|
return this.selectedByCorner;
|
602
559
|
}
|
560
|
+
|
603
561
|
/**
|
604
562
|
* Returns `true` if coords is within selection coords. This method iterates through all selection layers to check if
|
605
563
|
* the coords object is within selection range.
|
@@ -607,44 +565,42 @@ var Selection = /*#__PURE__*/function () {
|
|
607
565
|
* @param {CellCoords} coords The CellCoords instance with defined visual coordinates.
|
608
566
|
* @returns {boolean}
|
609
567
|
*/
|
610
|
-
|
611
568
|
}, {
|
612
569
|
key: "inInSelection",
|
613
570
|
value: function inInSelection(coords) {
|
614
571
|
return this.selectedRange.includes(coords);
|
615
572
|
}
|
573
|
+
|
616
574
|
/**
|
617
575
|
* Returns `true` if the cell corner should be visible.
|
618
576
|
*
|
619
577
|
* @private
|
620
578
|
* @returns {boolean} `true` if the corner element has to be visible, `false` otherwise.
|
621
579
|
*/
|
622
|
-
|
623
580
|
}, {
|
624
581
|
key: "isCellCornerVisible",
|
625
582
|
value: function isCellCornerVisible() {
|
626
583
|
return this.settings.fillHandle && !this.tableProps.isEditorOpened() && !this.isMultiple();
|
627
584
|
}
|
585
|
+
|
628
586
|
/**
|
629
587
|
* Returns `true` if the area corner should be visible.
|
630
588
|
*
|
631
589
|
* @param {number} layerLevel The layer level.
|
632
590
|
* @returns {boolean} `true` if the corner element has to be visible, `false` otherwise.
|
633
591
|
*/
|
634
|
-
|
635
592
|
}, {
|
636
593
|
key: "isAreaCornerVisible",
|
637
594
|
value: function isAreaCornerVisible(layerLevel) {
|
638
595
|
if (Number.isInteger(layerLevel) && layerLevel !== this.getLayerLevel()) {
|
639
596
|
return false;
|
640
597
|
}
|
641
|
-
|
642
598
|
return this.settings.fillHandle && !this.tableProps.isEditorOpened() && this.isMultiple();
|
643
599
|
}
|
600
|
+
|
644
601
|
/**
|
645
602
|
* Clear the selection by resetting the collected ranges and highlights.
|
646
603
|
*/
|
647
|
-
|
648
604
|
}, {
|
649
605
|
key: "clear",
|
650
606
|
value: function clear() {
|
@@ -652,21 +608,21 @@ var Selection = /*#__PURE__*/function () {
|
|
652
608
|
this.selectedRange.clear();
|
653
609
|
this.highlight.clear();
|
654
610
|
}
|
611
|
+
|
655
612
|
/**
|
656
613
|
* Deselects all selected cells.
|
657
614
|
*/
|
658
|
-
|
659
615
|
}, {
|
660
616
|
key: "deselect",
|
661
617
|
value: function deselect() {
|
662
618
|
if (!this.isSelected()) {
|
663
619
|
return;
|
664
620
|
}
|
665
|
-
|
666
621
|
this.inProgress = false;
|
667
622
|
this.clear();
|
668
623
|
this.runLocalHooks('afterDeselect');
|
669
624
|
}
|
625
|
+
|
670
626
|
/**
|
671
627
|
* Select all cells.
|
672
628
|
*
|
@@ -675,27 +631,28 @@ var Selection = /*#__PURE__*/function () {
|
|
675
631
|
* @param {boolean} [includeColumnHeaders=false] `true` If the selection should include the column headers, `false`
|
676
632
|
* otherwise.
|
677
633
|
*/
|
678
|
-
|
679
634
|
}, {
|
680
635
|
key: "selectAll",
|
681
636
|
value: function selectAll() {
|
682
637
|
var includeRowHeaders = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
683
638
|
var includeColumnHeaders = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
684
639
|
var nrOfRows = this.tableProps.countRows();
|
685
|
-
var nrOfColumns = this.tableProps.countCols();
|
640
|
+
var nrOfColumns = this.tableProps.countCols();
|
686
641
|
|
642
|
+
// We can't select cells when there is no data.
|
687
643
|
if (!includeRowHeaders && !includeColumnHeaders && (nrOfRows === 0 || nrOfColumns === 0)) {
|
688
644
|
return;
|
689
645
|
}
|
690
|
-
|
691
646
|
var startCoords = this.tableProps.createCellCoords(includeColumnHeaders ? -1 : 0, includeRowHeaders ? -1 : 0);
|
647
|
+
var endCoords = this.tableProps.createCellCoords(nrOfRows - 1, nrOfColumns - 1);
|
692
648
|
this.clear();
|
693
649
|
this.setRangeStartOnly(startCoords);
|
694
650
|
this.selectedByRowHeader.add(this.getLayerLevel());
|
695
651
|
this.selectedByColumnHeader.add(this.getLayerLevel());
|
696
|
-
this.setRangeEnd(
|
652
|
+
this.setRangeEnd(endCoords);
|
697
653
|
this.finish();
|
698
654
|
}
|
655
|
+
|
699
656
|
/**
|
700
657
|
* Make multiple, non-contiguous selection specified by `row` and `column` values or a range of cells
|
701
658
|
* finishing at `endRow`, `endColumn`. The method supports two input formats, first as an array of arrays such
|
@@ -705,20 +662,16 @@ var Selection = /*#__PURE__*/function () {
|
|
705
662
|
* @param {Array[]|CellRange[]} selectionRanges The coordinates which define what the cells should be selected.
|
706
663
|
* @returns {boolean} Returns `true` if selection was successful, `false` otherwise.
|
707
664
|
*/
|
708
|
-
|
709
665
|
}, {
|
710
666
|
key: "selectCells",
|
711
667
|
value: function selectCells(selectionRanges) {
|
712
668
|
var _this2 = this;
|
713
|
-
|
714
669
|
var selectionType = detectSelectionType(selectionRanges);
|
715
|
-
|
716
670
|
if (selectionType === SELECTION_TYPE_EMPTY) {
|
717
671
|
return false;
|
718
672
|
} else if (selectionType === SELECTION_TYPE_UNRECOGNIZED) {
|
719
673
|
throw new Error(toSingleLine(_templateObject || (_templateObject = _taggedTemplateLiteral(["Unsupported format of the selection ranges was passed. To select cells pass \n the coordinates as an array of arrays ([[rowStart, columnStart/columnPropStart, rowEnd, \n columnEnd/columnPropEnd]]) or as an array of CellRange objects."], ["Unsupported format of the selection ranges was passed. To select cells pass\\x20\n the coordinates as an array of arrays ([[rowStart, columnStart/columnPropStart, rowEnd,\\x20\n columnEnd/columnPropEnd]]) or as an array of CellRange objects."]))));
|
720
674
|
}
|
721
|
-
|
722
675
|
var selectionSchemaNormalizer = normalizeSelectionFactory(selectionType, {
|
723
676
|
propToCol: function propToCol(prop) {
|
724
677
|
return _this2.tableProps.propToCol(prop);
|
@@ -726,41 +679,36 @@ var Selection = /*#__PURE__*/function () {
|
|
726
679
|
keepDirection: true
|
727
680
|
});
|
728
681
|
var nrOfRows = this.tableProps.countRows();
|
729
|
-
var nrOfColumns = this.tableProps.countCols();
|
682
|
+
var nrOfColumns = this.tableProps.countCols();
|
730
683
|
|
684
|
+
// Check if every layer of the coordinates are valid.
|
731
685
|
var isValid = !selectionRanges.some(function (selection) {
|
732
686
|
var _selectionSchemaNorma = selectionSchemaNormalizer(selection),
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
687
|
+
_selectionSchemaNorma2 = _slicedToArray(_selectionSchemaNorma, 4),
|
688
|
+
rowStart = _selectionSchemaNorma2[0],
|
689
|
+
columnStart = _selectionSchemaNorma2[1],
|
690
|
+
rowEnd = _selectionSchemaNorma2[2],
|
691
|
+
columnEnd = _selectionSchemaNorma2[3];
|
739
692
|
var _isValid = isValidCoord(rowStart, nrOfRows) && isValidCoord(columnStart, nrOfColumns) && isValidCoord(rowEnd, nrOfRows) && isValidCoord(columnEnd, nrOfColumns);
|
740
|
-
|
741
693
|
return !_isValid;
|
742
694
|
});
|
743
|
-
|
744
695
|
if (isValid) {
|
745
696
|
this.clear();
|
746
697
|
arrayEach(selectionRanges, function (selection) {
|
747
698
|
var _selectionSchemaNorma3 = selectionSchemaNormalizer(selection),
|
748
|
-
|
749
|
-
|
750
|
-
|
751
|
-
|
752
|
-
|
753
|
-
|
699
|
+
_selectionSchemaNorma4 = _slicedToArray(_selectionSchemaNorma3, 4),
|
700
|
+
rowStart = _selectionSchemaNorma4[0],
|
701
|
+
columnStart = _selectionSchemaNorma4[1],
|
702
|
+
rowEnd = _selectionSchemaNorma4[2],
|
703
|
+
columnEnd = _selectionSchemaNorma4[3];
|
754
704
|
_this2.setRangeStartOnly(_this2.tableProps.createCellCoords(rowStart, columnStart), false);
|
755
|
-
|
756
705
|
_this2.setRangeEnd(_this2.tableProps.createCellCoords(rowEnd, columnEnd));
|
757
|
-
|
758
706
|
_this2.finish();
|
759
707
|
});
|
760
708
|
}
|
761
|
-
|
762
709
|
return isValid;
|
763
710
|
}
|
711
|
+
|
764
712
|
/**
|
765
713
|
* Select column specified by `startColumn` visual index or column property or a range of columns finishing at
|
766
714
|
* `endColumn`.
|
@@ -772,7 +720,6 @@ var Selection = /*#__PURE__*/function () {
|
|
772
720
|
*
|
773
721
|
* @returns {boolean} Returns `true` if selection was successful, `false` otherwise.
|
774
722
|
*/
|
775
|
-
|
776
723
|
}, {
|
777
724
|
key: "selectColumns",
|
778
725
|
value: function selectColumns(startColumn) {
|
@@ -783,15 +730,14 @@ var Selection = /*#__PURE__*/function () {
|
|
783
730
|
var nrOfColumns = this.tableProps.countCols();
|
784
731
|
var nrOfRows = this.tableProps.countRows();
|
785
732
|
var isValid = isValidCoord(start, nrOfColumns) && isValidCoord(end, nrOfColumns);
|
786
|
-
|
787
733
|
if (isValid) {
|
788
734
|
this.setRangeStartOnly(this.tableProps.createCellCoords(headerLevel, start));
|
789
735
|
this.setRangeEnd(this.tableProps.createCellCoords(nrOfRows - 1, end));
|
790
736
|
this.finish();
|
791
737
|
}
|
792
|
-
|
793
738
|
return isValid;
|
794
739
|
}
|
740
|
+
|
795
741
|
/**
|
796
742
|
* Select row specified by `startRow` visual index or a range of rows finishing at `endRow`.
|
797
743
|
*
|
@@ -802,7 +748,6 @@ var Selection = /*#__PURE__*/function () {
|
|
802
748
|
* closest to the cells.
|
803
749
|
* @returns {boolean} Returns `true` if selection was successful, `false` otherwise.
|
804
750
|
*/
|
805
|
-
|
806
751
|
}, {
|
807
752
|
key: "selectRows",
|
808
753
|
value: function selectRows(startRow) {
|
@@ -811,19 +756,17 @@ var Selection = /*#__PURE__*/function () {
|
|
811
756
|
var nrOfRows = this.tableProps.countRows();
|
812
757
|
var nrOfColumns = this.tableProps.countCols();
|
813
758
|
var isValid = isValidCoord(startRow, nrOfRows) && isValidCoord(endRow, nrOfRows);
|
814
|
-
|
815
759
|
if (isValid) {
|
816
760
|
this.setRangeStartOnly(this.tableProps.createCellCoords(startRow, headerLevel));
|
817
761
|
this.setRangeEnd(this.tableProps.createCellCoords(endRow, nrOfColumns - 1));
|
818
762
|
this.finish();
|
819
763
|
}
|
820
|
-
|
821
764
|
return isValid;
|
822
765
|
}
|
766
|
+
|
823
767
|
/**
|
824
768
|
* Rewrite the rendered state of the selection as visual selection may have a new representation in the DOM.
|
825
769
|
*/
|
826
|
-
|
827
770
|
}, {
|
828
771
|
key: "refresh",
|
829
772
|
value: function refresh() {
|
@@ -831,15 +774,14 @@ var Selection = /*#__PURE__*/function () {
|
|
831
774
|
customSelections.forEach(function (customSelection) {
|
832
775
|
customSelection.commit();
|
833
776
|
});
|
834
|
-
|
835
777
|
if (!this.isSelected()) {
|
836
778
|
return;
|
837
779
|
}
|
838
|
-
|
839
780
|
var cellHighlight = this.highlight.getCell();
|
840
781
|
var currentLayer = this.getLayerLevel();
|
841
|
-
cellHighlight.commit().syncWith(this.selectedRange.current());
|
782
|
+
cellHighlight.commit().syncWith(this.selectedRange.current());
|
842
783
|
|
784
|
+
// Rewriting rendered ranges going through all layers.
|
843
785
|
for (var layerLevel = 0; layerLevel < this.selectedRange.size(); layerLevel += 1) {
|
844
786
|
this.highlight.useLayerLevel(layerLevel);
|
845
787
|
var areaHighlight = this.highlight.createOrGetArea();
|
@@ -848,15 +790,13 @@ var Selection = /*#__PURE__*/function () {
|
|
848
790
|
areaHighlight.commit();
|
849
791
|
headerHighlight.commit();
|
850
792
|
activeHeaderHighlight.commit();
|
851
|
-
}
|
852
|
-
|
793
|
+
}
|
853
794
|
|
795
|
+
// Reverting starting layer for the Highlight.
|
854
796
|
this.highlight.useLayerLevel(currentLayer);
|
855
797
|
}
|
856
798
|
}]);
|
857
|
-
|
858
799
|
return Selection;
|
859
800
|
}();
|
860
|
-
|
861
801
|
mixin(Selection, localHooks);
|
862
802
|
export default Selection;
|