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
@@ -1,79 +1,56 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
require("core-js/modules/es.symbol.js");
|
4
|
-
|
5
3
|
require("core-js/modules/es.array.filter.js");
|
6
|
-
|
7
4
|
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
8
|
-
|
9
5
|
require("core-js/modules/web.dom-collections.for-each.js");
|
10
|
-
|
11
6
|
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
12
|
-
|
7
|
+
require("core-js/modules/es.symbol.iterator.js");
|
8
|
+
require("core-js/modules/es.array.iterator.js");
|
9
|
+
require("core-js/modules/es.string.iterator.js");
|
10
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
13
11
|
exports.__esModule = true;
|
14
12
|
exports.default = void 0;
|
15
|
-
|
16
13
|
require("core-js/modules/es.function.name.js");
|
17
|
-
|
18
14
|
require("core-js/modules/web.timers.js");
|
19
|
-
|
20
15
|
require("core-js/modules/es.object.keys.js");
|
21
|
-
|
22
16
|
require("core-js/modules/es.regexp.exec.js");
|
23
|
-
|
24
17
|
require("core-js/modules/es.regexp.constructor.js");
|
25
|
-
|
26
18
|
require("core-js/modules/es.regexp.to-string.js");
|
27
|
-
|
28
19
|
require("core-js/modules/es.object.to-string.js");
|
29
|
-
|
30
20
|
require("core-js/modules/es.string.replace.js");
|
31
|
-
|
32
21
|
require("core-js/modules/es.array.concat.js");
|
33
|
-
|
22
|
+
require("core-js/modules/es.symbol.to-primitive.js");
|
23
|
+
require("core-js/modules/es.date.to-primitive.js");
|
24
|
+
require("core-js/modules/es.symbol.js");
|
25
|
+
require("core-js/modules/es.symbol.description.js");
|
26
|
+
require("core-js/modules/es.number.constructor.js");
|
34
27
|
var _cursor = _interopRequireDefault(require("./cursor"));
|
35
|
-
|
36
28
|
var _predefinedItems = require("./predefinedItems");
|
37
|
-
|
38
29
|
var _utils = require("./utils");
|
39
|
-
|
40
30
|
var _core = _interopRequireDefault(require("../../core"));
|
41
|
-
|
42
31
|
var _eventManager = _interopRequireDefault(require("../../eventManager"));
|
43
|
-
|
44
32
|
var _array = require("../../helpers/array");
|
45
|
-
|
46
33
|
var _browser = require("../../helpers/browser");
|
47
|
-
|
48
34
|
var _element = require("../../helpers/dom/element");
|
49
|
-
|
50
35
|
var _event = require("../../helpers/dom/event");
|
51
|
-
|
52
36
|
var _function = require("../../helpers/function");
|
53
|
-
|
54
37
|
var _mixed = require("../../helpers/mixed");
|
55
|
-
|
56
38
|
var _object = require("../../helpers/object");
|
57
|
-
|
58
39
|
var _localHooks = _interopRequireDefault(require("../../mixins/localHooks"));
|
59
|
-
|
60
40
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
61
|
-
|
41
|
+
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); }
|
62
42
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
63
|
-
|
64
43
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
65
|
-
|
66
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
67
|
-
|
44
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
68
45
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
69
|
-
|
70
|
-
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); } }
|
71
|
-
|
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, _toPropertyKey(descriptor.key), descriptor); } }
|
72
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; }
|
73
|
-
|
48
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
49
|
+
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); }
|
74
50
|
var MIN_WIDTH = 215;
|
75
51
|
var SHORTCUTS_CONTEXT = 'menu';
|
76
52
|
var SHORTCUTS_GROUP = SHORTCUTS_CONTEXT;
|
53
|
+
|
77
54
|
/**
|
78
55
|
* @typedef MenuOptions
|
79
56
|
* @property {Menu} [parent=null] Instance of {@link Menu}.
|
@@ -89,7 +66,6 @@ var SHORTCUTS_GROUP = SHORTCUTS_CONTEXT;
|
|
89
66
|
* @private
|
90
67
|
* @class Menu
|
91
68
|
*/
|
92
|
-
|
93
69
|
var Menu = /*#__PURE__*/function () {
|
94
70
|
/**
|
95
71
|
* @param {Core} hotInstance Handsontable instance.
|
@@ -97,7 +73,6 @@ var Menu = /*#__PURE__*/function () {
|
|
97
73
|
*/
|
98
74
|
function Menu(hotInstance, options) {
|
99
75
|
_classCallCheck(this, Menu);
|
100
|
-
|
101
76
|
this.hot = hotInstance;
|
102
77
|
this.options = options || {
|
103
78
|
parent: null,
|
@@ -125,20 +100,17 @@ var Menu = /*#__PURE__*/function () {
|
|
125
100
|
this._afterScrollCallback = null;
|
126
101
|
this.registerEvents();
|
127
102
|
}
|
103
|
+
|
128
104
|
/**
|
129
105
|
* Register event listeners.
|
130
106
|
*
|
131
107
|
* @private
|
132
108
|
*/
|
133
|
-
|
134
|
-
|
135
109
|
_createClass(Menu, [{
|
136
110
|
key: "registerEvents",
|
137
111
|
value: function registerEvents() {
|
138
112
|
var _this = this;
|
139
|
-
|
140
113
|
var frame = this.hot.rootWindow;
|
141
|
-
|
142
114
|
while (frame) {
|
143
115
|
this.eventManager.addEventListener(frame.document, 'mousedown', function (event) {
|
144
116
|
return _this.onDocumentMouseDown(event);
|
@@ -149,75 +121,74 @@ var Menu = /*#__PURE__*/function () {
|
|
149
121
|
frame = (0, _element.getParentWindow)(frame);
|
150
122
|
}
|
151
123
|
}
|
124
|
+
|
152
125
|
/**
|
153
126
|
* Set array of objects which defines menu items.
|
154
127
|
*
|
155
128
|
* @param {Array} menuItems Menu items to display.
|
156
129
|
*/
|
157
|
-
|
158
130
|
}, {
|
159
131
|
key: "setMenuItems",
|
160
132
|
value: function setMenuItems(menuItems) {
|
161
133
|
this.menuItems = menuItems;
|
162
134
|
}
|
135
|
+
|
163
136
|
/**
|
164
137
|
* Returns currently selected menu item. Returns `null` if no item was selected.
|
165
138
|
*
|
166
139
|
* @returns {object|null}
|
167
140
|
*/
|
168
|
-
|
169
141
|
}, {
|
170
142
|
key: "getSelectedItem",
|
171
143
|
value: function getSelectedItem() {
|
172
144
|
return this.hasSelectedItem() ? this.hotMenu.getSourceDataAtRow(this.hotMenu.getSelectedLast()[0]) : null;
|
173
145
|
}
|
146
|
+
|
174
147
|
/**
|
175
148
|
* Checks if the menu has selected (highlighted) any item from the menu list.
|
176
149
|
*
|
177
150
|
* @returns {boolean}
|
178
151
|
*/
|
179
|
-
|
180
152
|
}, {
|
181
153
|
key: "hasSelectedItem",
|
182
154
|
value: function hasSelectedItem() {
|
183
155
|
return Array.isArray(this.hotMenu.getSelectedLast());
|
184
156
|
}
|
157
|
+
|
185
158
|
/**
|
186
159
|
* Set offset menu position for specified area (`above`, `below`, `left` or `right`).
|
187
160
|
*
|
188
161
|
* @param {string} area Specified area name (`above`, `below`, `left` or `right`).
|
189
162
|
* @param {number} offset Offset value.
|
190
163
|
*/
|
191
|
-
|
192
164
|
}, {
|
193
165
|
key: "setOffset",
|
194
166
|
value: function setOffset(area) {
|
195
167
|
var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
196
168
|
this.offset[area] = offset;
|
197
169
|
}
|
170
|
+
|
198
171
|
/**
|
199
172
|
* Check if menu is using as sub-menu.
|
200
173
|
*
|
201
174
|
* @returns {boolean}
|
202
175
|
*/
|
203
|
-
|
204
176
|
}, {
|
205
177
|
key: "isSubMenu",
|
206
178
|
value: function isSubMenu() {
|
207
179
|
return this.parentMenu !== null;
|
208
180
|
}
|
181
|
+
|
209
182
|
/**
|
210
183
|
* Open menu.
|
211
184
|
*
|
212
185
|
* @fires Hooks#beforeContextMenuShow
|
213
186
|
* @fires Hooks#afterContextMenuShow
|
214
187
|
*/
|
215
|
-
|
216
188
|
}, {
|
217
189
|
key: "open",
|
218
190
|
value: function open() {
|
219
191
|
var _this2 = this;
|
220
|
-
|
221
192
|
this.runLocalHooks('beforeOpen');
|
222
193
|
this.container.removeAttribute('style');
|
223
194
|
this.container.style.display = 'block';
|
@@ -230,16 +201,13 @@ var Menu = /*#__PURE__*/function () {
|
|
230
201
|
if (item.key === _predefinedItems.NO_ITEMS) {
|
231
202
|
noItemsDefined = true;
|
232
203
|
}
|
233
|
-
|
234
204
|
return (0, _utils.isItemHidden)(item, _this2.hot);
|
235
205
|
});
|
236
|
-
|
237
206
|
if (filteredItems.length < 1 && !noItemsDefined) {
|
238
207
|
filteredItems.push((0, _predefinedItems.predefinedItems)()[_predefinedItems.NO_ITEMS]);
|
239
208
|
} else if (filteredItems.length === 0) {
|
240
209
|
return;
|
241
210
|
}
|
242
|
-
|
243
211
|
filteredItems = (0, _utils.filterSeparators)(filteredItems, _predefinedItems.SEPARATOR);
|
244
212
|
var shouldAutoCloseMenu = false;
|
245
213
|
var settings = {
|
@@ -251,7 +219,6 @@ var Menu = /*#__PURE__*/function () {
|
|
251
219
|
if ((0, _mixed.isDefined)(width) && width < minWidthOfMenu) {
|
252
220
|
return minWidthOfMenu;
|
253
221
|
}
|
254
|
-
|
255
222
|
return width;
|
256
223
|
},
|
257
224
|
autoRowSize: false,
|
@@ -281,9 +248,10 @@ var Menu = /*#__PURE__*/function () {
|
|
281
248
|
return filteredItems[row].name === _predefinedItems.SEPARATOR ? 1 : 23;
|
282
249
|
},
|
283
250
|
afterOnCellContextMenu: function afterOnCellContextMenu(event) {
|
284
|
-
event.preventDefault();
|
285
|
-
// why the closing menu is here. (#6507#issuecomment-582392301).
|
251
|
+
event.preventDefault();
|
286
252
|
|
253
|
+
// On the Windows platform, the "contextmenu" is triggered after the "mouseup" so that's
|
254
|
+
// why the closing menu is here. (#6507#issuecomment-582392301).
|
287
255
|
if ((0, _browser.isWindowsOS)() && shouldAutoCloseMenu && _this2.hasSelectedItem()) {
|
288
256
|
_this2.close(true);
|
289
257
|
}
|
@@ -291,7 +259,6 @@ var Menu = /*#__PURE__*/function () {
|
|
291
259
|
beforeOnCellMouseUp: function beforeOnCellMouseUp(event) {
|
292
260
|
if (_this2.hasSelectedItem()) {
|
293
261
|
shouldAutoCloseMenu = !_this2.isCommandPassive(_this2.getSelectedItem());
|
294
|
-
|
295
262
|
_this2.executeCommand(event);
|
296
263
|
}
|
297
264
|
},
|
@@ -338,152 +305,123 @@ var Menu = /*#__PURE__*/function () {
|
|
338
305
|
var config = {
|
339
306
|
group: SHORTCUTS_CONTEXT
|
340
307
|
};
|
341
|
-
|
342
308
|
var menuContextConfig = _objectSpread(_objectSpread({}, config), {}, {
|
343
309
|
runOnlyIf: function runOnlyIf(event) {
|
344
310
|
return (0, _element.isInput)(event.target) === false || _this2.container.contains(event.target) === false;
|
345
311
|
}
|
346
|
-
});
|
347
|
-
|
312
|
+
});
|
348
313
|
|
314
|
+
// Default shortcuts for Handsontable should not be handled. Changing context will help with that.
|
349
315
|
shortcutManager.setActiveContextName('menu');
|
350
316
|
menuContext.addShortcuts([{
|
351
317
|
keys: [['Escape']],
|
352
318
|
callback: function callback() {
|
353
319
|
_this2.keyEvent = true;
|
354
|
-
|
355
320
|
_this2.close();
|
356
|
-
|
357
321
|
_this2.keyEvent = false;
|
358
322
|
}
|
359
323
|
}, {
|
360
324
|
keys: [['ArrowDown']],
|
361
325
|
callback: function callback() {
|
362
326
|
var selection = _this2.hotMenu.getSelectedLast();
|
363
|
-
|
364
327
|
_this2.keyEvent = true;
|
365
|
-
|
366
328
|
if (selection) {
|
367
329
|
_this2.selectNextCell(selection[0], selection[1]);
|
368
330
|
} else {
|
369
331
|
_this2.selectFirstCell();
|
370
332
|
}
|
371
|
-
|
372
333
|
_this2.keyEvent = false;
|
373
334
|
}
|
374
335
|
}, {
|
375
336
|
keys: [['ArrowUp']],
|
376
337
|
callback: function callback() {
|
377
338
|
var selection = _this2.hotMenu.getSelectedLast();
|
378
|
-
|
379
339
|
_this2.keyEvent = true;
|
380
|
-
|
381
340
|
if (selection) {
|
382
341
|
_this2.selectPrevCell(selection[0], selection[1]);
|
383
342
|
} else {
|
384
343
|
_this2.selectLastCell();
|
385
344
|
}
|
386
|
-
|
387
345
|
_this2.keyEvent = false;
|
388
346
|
}
|
389
347
|
}, {
|
390
348
|
keys: [['ArrowRight']],
|
391
349
|
callback: function callback() {
|
392
350
|
var selection = _this2.hotMenu.getSelectedLast();
|
393
|
-
|
394
351
|
_this2.keyEvent = true;
|
395
|
-
|
396
352
|
if (selection) {
|
397
353
|
var menu = _this2.openSubMenu(selection[0]);
|
398
|
-
|
399
354
|
if (menu) {
|
400
355
|
menu.selectFirstCell();
|
401
356
|
}
|
402
357
|
}
|
403
|
-
|
404
358
|
_this2.keyEvent = false;
|
405
359
|
}
|
406
360
|
}, {
|
407
361
|
keys: [['ArrowLeft']],
|
408
362
|
callback: function callback() {
|
409
363
|
var selection = _this2.hotMenu.getSelectedLast();
|
410
|
-
|
411
364
|
_this2.keyEvent = true;
|
412
|
-
|
413
365
|
if (selection && _this2.isSubMenu()) {
|
414
366
|
_this2.close();
|
415
|
-
|
416
367
|
if (_this2.parentMenu) {
|
417
368
|
_this2.parentMenu.hotMenu.listen();
|
418
369
|
}
|
419
370
|
}
|
420
|
-
|
421
371
|
_this2.keyEvent = false;
|
422
372
|
}
|
423
373
|
}, {
|
424
374
|
keys: [['Enter']],
|
425
375
|
callback: function callback(event) {
|
426
376
|
var selection = _this2.hotMenu.getSelectedLast();
|
427
|
-
|
428
377
|
_this2.keyEvent = true;
|
429
|
-
|
430
378
|
if (!_this2.hotMenu.getSourceDataAtRow(selection[0]).submenu) {
|
431
379
|
_this2.executeCommand(event);
|
432
|
-
|
433
380
|
_this2.close(true);
|
434
381
|
}
|
435
|
-
|
436
382
|
_this2.keyEvent = false;
|
437
383
|
}
|
438
384
|
}, {
|
439
385
|
keys: [['PageUp']],
|
440
386
|
callback: function callback() {
|
441
387
|
var selection = _this2.hotMenu.getSelectedLast();
|
442
|
-
|
443
388
|
_this2.keyEvent = true;
|
444
|
-
|
445
389
|
if (selection) {
|
446
390
|
_this2.hotMenu.selection.transformStart(-_this2.hotMenu.countVisibleRows(), 0);
|
447
391
|
} else {
|
448
392
|
_this2.selectFirstCell();
|
449
393
|
}
|
450
|
-
|
451
394
|
_this2.keyEvent = false;
|
452
395
|
}
|
453
396
|
}, {
|
454
397
|
keys: [['PageDown']],
|
455
398
|
callback: function callback() {
|
456
399
|
var selection = _this2.hotMenu.getSelectedLast();
|
457
|
-
|
458
400
|
_this2.keyEvent = true;
|
459
|
-
|
460
401
|
if (selection) {
|
461
402
|
_this2.hotMenu.selection.transformStart(_this2.hotMenu.countVisibleRows(), 0);
|
462
403
|
} else {
|
463
404
|
_this2.selectLastCell();
|
464
405
|
}
|
465
|
-
|
466
406
|
_this2.keyEvent = false;
|
467
407
|
}
|
468
408
|
}], menuContextConfig);
|
469
409
|
this.blockMainTableCallbacks();
|
470
410
|
this.runLocalHooks('afterOpen');
|
471
411
|
}
|
412
|
+
|
472
413
|
/**
|
473
414
|
* Close menu.
|
474
415
|
*
|
475
416
|
* @param {boolean} [closeParent=false] If `true` try to close parent menu if exists.
|
476
417
|
*/
|
477
|
-
|
478
418
|
}, {
|
479
419
|
key: "close",
|
480
420
|
value: function close() {
|
481
421
|
var closeParent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
482
|
-
|
483
422
|
if (!this.isOpened()) {
|
484
423
|
return;
|
485
424
|
}
|
486
|
-
|
487
425
|
if (closeParent && this.parentMenu) {
|
488
426
|
this.parentMenu.close();
|
489
427
|
} else {
|
@@ -494,33 +432,29 @@ var Menu = /*#__PURE__*/function () {
|
|
494
432
|
this.hotMenu = null;
|
495
433
|
this.hot.getSettings().outsideClickDeselects = this.origOutsideClickDeselects;
|
496
434
|
this.runLocalHooks('afterClose');
|
497
|
-
|
498
435
|
if (this.parentMenu) {
|
499
436
|
this.parentMenu.hotMenu.listen();
|
500
437
|
}
|
501
438
|
}
|
502
439
|
}
|
440
|
+
|
503
441
|
/**
|
504
442
|
* Open sub menu at the provided row index.
|
505
443
|
*
|
506
444
|
* @param {number} row Row index.
|
507
445
|
* @returns {Menu|boolean} Returns created menu or `false` if no one menu was created.
|
508
446
|
*/
|
509
|
-
|
510
447
|
}, {
|
511
448
|
key: "openSubMenu",
|
512
449
|
value: function openSubMenu(row) {
|
513
450
|
if (!this.hotMenu) {
|
514
451
|
return false;
|
515
452
|
}
|
516
|
-
|
517
453
|
var cell = this.hotMenu.getCell(row, 0);
|
518
454
|
this.closeAllSubMenus();
|
519
|
-
|
520
455
|
if (!cell || !(0, _utils.hasSubMenu)(cell)) {
|
521
456
|
return false;
|
522
457
|
}
|
523
|
-
|
524
458
|
var dataItem = this.hotMenu.getSourceDataAtRow(row);
|
525
459
|
var subMenu = new Menu(this.hot, {
|
526
460
|
parent: this,
|
@@ -535,51 +469,49 @@ var Menu = /*#__PURE__*/function () {
|
|
535
469
|
this.hotSubMenus[dataItem.key] = subMenu;
|
536
470
|
return subMenu;
|
537
471
|
}
|
472
|
+
|
538
473
|
/**
|
539
474
|
* Close sub menu at row index.
|
540
475
|
*
|
541
476
|
* @param {number} row Row index.
|
542
477
|
*/
|
543
|
-
|
544
478
|
}, {
|
545
479
|
key: "closeSubMenu",
|
546
480
|
value: function closeSubMenu(row) {
|
547
481
|
var dataItem = this.hotMenu.getSourceDataAtRow(row);
|
548
482
|
var menus = this.hotSubMenus[dataItem.key];
|
549
|
-
|
550
483
|
if (menus) {
|
551
484
|
menus.destroy();
|
552
485
|
delete this.hotSubMenus[dataItem.key];
|
553
486
|
}
|
554
487
|
}
|
488
|
+
|
555
489
|
/**
|
556
490
|
* Close all opened sub menus.
|
557
491
|
*/
|
558
|
-
|
559
492
|
}, {
|
560
493
|
key: "closeAllSubMenus",
|
561
494
|
value: function closeAllSubMenus() {
|
562
495
|
var _this3 = this;
|
563
|
-
|
564
496
|
(0, _array.arrayEach)(this.hotMenu.getData(), function (value, row) {
|
565
497
|
return _this3.closeSubMenu(row);
|
566
498
|
});
|
567
499
|
}
|
500
|
+
|
568
501
|
/**
|
569
502
|
* Checks if all created and opened sub menus are closed.
|
570
503
|
*
|
571
504
|
* @returns {boolean}
|
572
505
|
*/
|
573
|
-
|
574
506
|
}, {
|
575
507
|
key: "isAllSubMenusClosed",
|
576
508
|
value: function isAllSubMenusClosed() {
|
577
509
|
return Object.keys(this.hotSubMenus).length === 0;
|
578
510
|
}
|
511
|
+
|
579
512
|
/**
|
580
513
|
* Destroy instance.
|
581
514
|
*/
|
582
|
-
|
583
515
|
}, {
|
584
516
|
key: "destroy",
|
585
517
|
value: function destroy() {
|
@@ -588,22 +520,22 @@ var Menu = /*#__PURE__*/function () {
|
|
588
520
|
this.close();
|
589
521
|
this.parentMenu = null;
|
590
522
|
this.eventManager.destroy();
|
591
|
-
|
592
523
|
if (menuContainerParentElement) {
|
593
524
|
menuContainerParentElement.removeChild(this.container);
|
594
525
|
}
|
595
526
|
}
|
527
|
+
|
596
528
|
/**
|
597
529
|
* Checks if menu was opened.
|
598
530
|
*
|
599
531
|
* @returns {boolean} Returns `true` if menu was opened.
|
600
532
|
*/
|
601
|
-
|
602
533
|
}, {
|
603
534
|
key: "isOpened",
|
604
535
|
value: function isOpened() {
|
605
536
|
return this.hotMenu !== null;
|
606
537
|
}
|
538
|
+
|
607
539
|
/**
|
608
540
|
* Execute menu command.
|
609
541
|
*
|
@@ -613,29 +545,25 @@ var Menu = /*#__PURE__*/function () {
|
|
613
545
|
*
|
614
546
|
* @param {Event} [event] The mouse event object.
|
615
547
|
*/
|
616
|
-
|
617
548
|
}, {
|
618
549
|
key: "executeCommand",
|
619
550
|
value: function executeCommand(event) {
|
620
551
|
if (!this.isOpened() || !this.hasSelectedItem()) {
|
621
552
|
return;
|
622
553
|
}
|
623
|
-
|
624
554
|
var selectedItem = this.getSelectedItem();
|
625
555
|
this.runLocalHooks('select', selectedItem, event);
|
626
|
-
|
627
556
|
if (this.isCommandPassive(selectedItem)) {
|
628
557
|
return;
|
629
558
|
}
|
630
|
-
|
631
559
|
var selRanges = this.hot.getSelectedRange();
|
632
560
|
var normalizedSelection = selRanges ? (0, _utils.normalizeSelection)(selRanges) : [];
|
633
561
|
this.runLocalHooks('executeCommand', selectedItem.key, normalizedSelection, event);
|
634
|
-
|
635
562
|
if (this.isSubMenu()) {
|
636
563
|
this.parentMenu.runLocalHooks('executeCommand', selectedItem.key, normalizedSelection, event);
|
637
564
|
}
|
638
565
|
}
|
566
|
+
|
639
567
|
/**
|
640
568
|
* Checks if the passed command is passive or not. The command is passive when it's marked as
|
641
569
|
* disabled, the descriptor object contains `isCommand` property set to `false`, command
|
@@ -645,28 +573,26 @@ var Menu = /*#__PURE__*/function () {
|
|
645
573
|
* @param {object} commandDescriptor Selected menu item from the menu data source.
|
646
574
|
* @returns {boolean}
|
647
575
|
*/
|
648
|
-
|
649
576
|
}, {
|
650
577
|
key: "isCommandPassive",
|
651
578
|
value: function isCommandPassive(commandDescriptor) {
|
652
579
|
var isCommand = commandDescriptor.isCommand,
|
653
|
-
|
654
|
-
|
655
|
-
|
580
|
+
commandName = commandDescriptor.name,
|
581
|
+
disabled = commandDescriptor.disabled,
|
582
|
+
submenu = commandDescriptor.submenu;
|
656
583
|
var isItemDisabled = disabled === true || typeof disabled === 'function' && disabled.call(this.hot) === true;
|
657
584
|
return isCommand === false || commandName === _predefinedItems.SEPARATOR || isItemDisabled === true || submenu;
|
658
585
|
}
|
586
|
+
|
659
587
|
/**
|
660
588
|
* Set menu position based on dom event or based on literal object.
|
661
589
|
*
|
662
590
|
* @param {Event|object} coords Event or literal Object with coordinates.
|
663
591
|
*/
|
664
|
-
|
665
592
|
}, {
|
666
593
|
key: "setPosition",
|
667
594
|
value: function setPosition(coords) {
|
668
595
|
var cursor = new _cursor.default(coords, this.container.ownerDocument.defaultView);
|
669
|
-
|
670
596
|
if (this.options.keepInViewport) {
|
671
597
|
if (cursor.fitsBelow(this.container)) {
|
672
598
|
this.setPositionBelowCursor(cursor);
|
@@ -675,7 +601,6 @@ var Menu = /*#__PURE__*/function () {
|
|
675
601
|
} else {
|
676
602
|
this.setPositionBelowCursor(cursor);
|
677
603
|
}
|
678
|
-
|
679
604
|
if (this.hot.isLtr()) {
|
680
605
|
this.setHorizontalPositionForLtr(cursor);
|
681
606
|
} else {
|
@@ -686,12 +611,12 @@ var Menu = /*#__PURE__*/function () {
|
|
686
611
|
this.setPositionOnRightOfCursor(cursor);
|
687
612
|
}
|
688
613
|
}
|
614
|
+
|
689
615
|
/**
|
690
616
|
* Set menu horizontal position for RTL mode.
|
691
617
|
*
|
692
618
|
* @param {Cursor} cursor `Cursor` object.
|
693
619
|
*/
|
694
|
-
|
695
620
|
}, {
|
696
621
|
key: "setHorizontalPositionForRtl",
|
697
622
|
value: function setHorizontalPositionForRtl(cursor) {
|
@@ -701,12 +626,12 @@ var Menu = /*#__PURE__*/function () {
|
|
701
626
|
this.setPositionOnRightOfCursor(cursor);
|
702
627
|
}
|
703
628
|
}
|
629
|
+
|
704
630
|
/**
|
705
631
|
* Set menu horizontal position for LTR mode.
|
706
632
|
*
|
707
633
|
* @param {Cursor} cursor `Cursor` object.
|
708
634
|
*/
|
709
|
-
|
710
635
|
}, {
|
711
636
|
key: "setHorizontalPositionForLtr",
|
712
637
|
value: function setHorizontalPositionForLtr(cursor) {
|
@@ -716,164 +641,151 @@ var Menu = /*#__PURE__*/function () {
|
|
716
641
|
this.setPositionOnLeftOfCursor(cursor);
|
717
642
|
}
|
718
643
|
}
|
644
|
+
|
719
645
|
/**
|
720
646
|
* Set menu position above cursor object.
|
721
647
|
*
|
722
648
|
* @param {Cursor} cursor `Cursor` object.
|
723
649
|
*/
|
724
|
-
|
725
650
|
}, {
|
726
651
|
key: "setPositionAboveCursor",
|
727
652
|
value: function setPositionAboveCursor(cursor) {
|
728
653
|
var top = this.offset.above + cursor.top - this.container.offsetHeight;
|
729
|
-
|
730
654
|
if (this.isSubMenu()) {
|
731
655
|
top = cursor.top + cursor.cellHeight - this.container.offsetHeight + 3;
|
732
656
|
}
|
733
|
-
|
734
657
|
this.container.style.top = "".concat(top, "px");
|
735
658
|
}
|
659
|
+
|
736
660
|
/**
|
737
661
|
* Set menu position below cursor object.
|
738
662
|
*
|
739
663
|
* @param {Cursor} cursor `Cursor` object.
|
740
664
|
*/
|
741
|
-
|
742
665
|
}, {
|
743
666
|
key: "setPositionBelowCursor",
|
744
667
|
value: function setPositionBelowCursor(cursor) {
|
745
668
|
var top = this.offset.below + cursor.top + 1;
|
746
|
-
|
747
669
|
if (this.isSubMenu()) {
|
748
670
|
top = cursor.top - 1;
|
749
671
|
}
|
750
|
-
|
751
672
|
this.container.style.top = "".concat(top, "px");
|
752
673
|
}
|
674
|
+
|
753
675
|
/**
|
754
676
|
* Set menu position on the right of cursor object.
|
755
677
|
*
|
756
678
|
* @param {Cursor} cursor `Cursor` object.
|
757
679
|
*/
|
758
|
-
|
759
680
|
}, {
|
760
681
|
key: "setPositionOnRightOfCursor",
|
761
682
|
value: function setPositionOnRightOfCursor(cursor) {
|
762
683
|
var left = cursor.left;
|
763
|
-
|
764
684
|
if (this.isSubMenu()) {
|
765
685
|
var _this$parentMenu$cont = this.parentMenu.container.getBoundingClientRect(),
|
766
|
-
|
767
|
-
|
686
|
+
parentMenuRight = _this$parentMenu$cont.right;
|
768
687
|
|
688
|
+
// move the sub menu by the width of the parent's border (usually by 1-2 pixels)
|
769
689
|
left += cursor.cellWidth + parentMenuRight - (cursor.left + cursor.cellWidth);
|
770
690
|
} else {
|
771
691
|
left += this.offset.right;
|
772
692
|
}
|
773
|
-
|
774
693
|
this.container.style.left = "".concat(left, "px");
|
775
694
|
}
|
695
|
+
|
776
696
|
/**
|
777
697
|
* Set menu position on the left of cursor object.
|
778
698
|
*
|
779
699
|
* @param {Cursor} cursor `Cursor` object.
|
780
700
|
*/
|
781
|
-
|
782
701
|
}, {
|
783
702
|
key: "setPositionOnLeftOfCursor",
|
784
703
|
value: function setPositionOnLeftOfCursor(cursor) {
|
785
704
|
var left = this.offset.left + cursor.left - this.container.offsetWidth;
|
786
|
-
|
787
705
|
if (this.isSubMenu()) {
|
788
706
|
var _this$parentMenu$cont2 = this.parentMenu.container.getBoundingClientRect(),
|
789
|
-
|
790
|
-
|
707
|
+
parentMenuLeft = _this$parentMenu$cont2.left;
|
791
708
|
|
709
|
+
// move the sub menu by the width of the parent's border (usually by 1-2 pixels)
|
792
710
|
left -= cursor.left - parentMenuLeft;
|
793
711
|
}
|
794
|
-
|
795
712
|
this.container.style.left = "".concat(left, "px");
|
796
713
|
}
|
714
|
+
|
797
715
|
/**
|
798
716
|
* Select first cell in opened menu.
|
799
717
|
*/
|
800
|
-
|
801
718
|
}, {
|
802
719
|
key: "selectFirstCell",
|
803
720
|
value: function selectFirstCell() {
|
804
721
|
var cell = this.hotMenu.getCell(0, 0);
|
805
|
-
|
806
722
|
if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
|
807
723
|
this.selectNextCell(0, 0);
|
808
724
|
} else {
|
809
725
|
this.hotMenu.selectCell(0, 0);
|
810
726
|
}
|
811
727
|
}
|
728
|
+
|
812
729
|
/**
|
813
730
|
* Select last cell in opened menu.
|
814
731
|
*/
|
815
|
-
|
816
732
|
}, {
|
817
733
|
key: "selectLastCell",
|
818
734
|
value: function selectLastCell() {
|
819
735
|
var lastRow = this.hotMenu.countRows() - 1;
|
820
736
|
var cell = this.hotMenu.getCell(lastRow, 0);
|
821
|
-
|
822
737
|
if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
|
823
738
|
this.selectPrevCell(lastRow, 0);
|
824
739
|
} else {
|
825
740
|
// disable default "scroll-to-cell" option and instead of that...
|
826
|
-
this.hotMenu.selectCell(lastRow, 0, undefined, undefined, false);
|
827
|
-
|
741
|
+
this.hotMenu.selectCell(lastRow, 0, undefined, undefined, false);
|
742
|
+
// ...scroll to the cell with "snap to the bottom" option
|
828
743
|
this.hotMenu.scrollViewportTo(lastRow, 0, true, false);
|
829
744
|
}
|
830
745
|
}
|
746
|
+
|
831
747
|
/**
|
832
748
|
* Select next cell in opened menu.
|
833
749
|
*
|
834
750
|
* @param {number} row Row index.
|
835
751
|
* @param {number} col Column index.
|
836
752
|
*/
|
837
|
-
|
838
753
|
}, {
|
839
754
|
key: "selectNextCell",
|
840
755
|
value: function selectNextCell(row, col) {
|
841
756
|
var nextRow = row + 1;
|
842
757
|
var cell = nextRow < this.hotMenu.countRows() ? this.hotMenu.getCell(nextRow, col) : null;
|
843
|
-
|
844
758
|
if (!cell) {
|
845
759
|
return;
|
846
760
|
}
|
847
|
-
|
848
761
|
if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
|
849
762
|
this.selectNextCell(nextRow, col);
|
850
763
|
} else {
|
851
764
|
this.hotMenu.selectCell(nextRow, col);
|
852
765
|
}
|
853
766
|
}
|
767
|
+
|
854
768
|
/**
|
855
769
|
* Select previous cell in opened menu.
|
856
770
|
*
|
857
771
|
* @param {number} row Row index.
|
858
772
|
* @param {number} col Column index.
|
859
773
|
*/
|
860
|
-
|
861
774
|
}, {
|
862
775
|
key: "selectPrevCell",
|
863
776
|
value: function selectPrevCell(row, col) {
|
864
777
|
var prevRow = row - 1;
|
865
778
|
var cell = prevRow >= 0 ? this.hotMenu.getCell(prevRow, col) : null;
|
866
|
-
|
867
779
|
if (!cell) {
|
868
780
|
return;
|
869
781
|
}
|
870
|
-
|
871
782
|
if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
|
872
783
|
this.selectPrevCell(prevRow, col);
|
873
784
|
} else {
|
874
785
|
this.hotMenu.selectCell(prevRow, col);
|
875
786
|
}
|
876
787
|
}
|
788
|
+
|
877
789
|
/**
|
878
790
|
* Menu item renderer.
|
879
791
|
*
|
@@ -885,41 +797,31 @@ var Menu = /*#__PURE__*/function () {
|
|
885
797
|
* @param {string} prop The column property if used.
|
886
798
|
* @param {string} value The cell value.
|
887
799
|
*/
|
888
|
-
|
889
800
|
}, {
|
890
801
|
key: "menuItemRenderer",
|
891
802
|
value: function menuItemRenderer(hot, TD, row, col, prop, value) {
|
892
803
|
var _this4 = this;
|
893
|
-
|
894
804
|
var item = hot.getSourceDataAtRow(row);
|
895
805
|
var wrapper = this.hot.rootDocument.createElement('div');
|
896
|
-
|
897
806
|
var isSubMenu = function isSubMenu(itemToTest) {
|
898
807
|
return (0, _object.hasOwnProperty)(itemToTest, 'submenu');
|
899
808
|
};
|
900
|
-
|
901
809
|
var itemIsSeparator = function itemIsSeparator(itemToTest) {
|
902
810
|
return new RegExp(_predefinedItems.SEPARATOR, 'i').test(itemToTest.name);
|
903
811
|
};
|
904
|
-
|
905
812
|
var itemIsDisabled = function itemIsDisabled(itemToTest) {
|
906
813
|
return itemToTest.disabled === true || typeof itemToTest.disabled === 'function' && itemToTest.disabled.call(_this4.hot) === true;
|
907
814
|
};
|
908
|
-
|
909
815
|
var itemIsSelectionDisabled = function itemIsSelectionDisabled(itemToTest) {
|
910
816
|
return itemToTest.disableSelection;
|
911
817
|
};
|
912
|
-
|
913
818
|
var itemValue = value;
|
914
|
-
|
915
819
|
if (typeof itemValue === 'function') {
|
916
820
|
itemValue = itemValue.call(this.hot);
|
917
821
|
}
|
918
|
-
|
919
822
|
(0, _element.empty)(TD);
|
920
823
|
(0, _element.addClass)(wrapper, 'htItemWrapper');
|
921
824
|
TD.appendChild(wrapper);
|
922
|
-
|
923
825
|
if (itemIsSeparator(item)) {
|
924
826
|
(0, _element.addClass)(TD, 'htSeparator');
|
925
827
|
} else if (typeof item.renderer === 'function') {
|
@@ -928,7 +830,6 @@ var Menu = /*#__PURE__*/function () {
|
|
928
830
|
} else {
|
929
831
|
(0, _element.fastInnerHTML)(wrapper, itemValue);
|
930
832
|
}
|
931
|
-
|
932
833
|
if (itemIsDisabled(item)) {
|
933
834
|
(0, _element.addClass)(TD, 'htDisabled');
|
934
835
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
@@ -941,7 +842,6 @@ var Menu = /*#__PURE__*/function () {
|
|
941
842
|
});
|
942
843
|
} else if (isSubMenu(item)) {
|
943
844
|
(0, _element.addClass)(TD, 'htSubmenu');
|
944
|
-
|
945
845
|
if (itemIsSelectionDisabled(item)) {
|
946
846
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
947
847
|
return hot.deselectCell();
|
@@ -953,7 +853,6 @@ var Menu = /*#__PURE__*/function () {
|
|
953
853
|
}
|
954
854
|
} else {
|
955
855
|
(0, _element.removeClass)(TD, ['htSubmenu', 'htDisabled']);
|
956
|
-
|
957
856
|
if (itemIsSelectionDisabled(item)) {
|
958
857
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
959
858
|
return hot.deselectCell();
|
@@ -965,6 +864,7 @@ var Menu = /*#__PURE__*/function () {
|
|
965
864
|
}
|
966
865
|
}
|
967
866
|
}
|
867
|
+
|
968
868
|
/**
|
969
869
|
* Create container/wrapper for handsontable.
|
970
870
|
*
|
@@ -972,7 +872,6 @@ var Menu = /*#__PURE__*/function () {
|
|
972
872
|
* @param {string} [name] Class name.
|
973
873
|
* @returns {HTMLElement}
|
974
874
|
*/
|
975
|
-
|
976
875
|
}, {
|
977
876
|
key: "createContainer",
|
978
877
|
value: function createContainer() {
|
@@ -980,52 +879,44 @@ var Menu = /*#__PURE__*/function () {
|
|
980
879
|
var doc = this.options.container.ownerDocument;
|
981
880
|
var className = name;
|
982
881
|
var container;
|
983
|
-
|
984
882
|
if (className) {
|
985
883
|
if ((0, _function.isFunction)(className)) {
|
986
884
|
className = className.call(this.hot);
|
987
|
-
|
988
885
|
if (className === null || (0, _mixed.isUndefined)(className)) {
|
989
886
|
className = '';
|
990
887
|
} else {
|
991
888
|
className = className.toString();
|
992
889
|
}
|
993
890
|
}
|
994
|
-
|
995
891
|
className = className.replace(/[^A-z0-9]/g, '_');
|
996
892
|
className = "".concat(this.options.className, "Sub_").concat(className);
|
997
893
|
container = doc.querySelector(".".concat(this.options.className, ".").concat(className));
|
998
894
|
}
|
999
|
-
|
1000
895
|
if (!container) {
|
1001
896
|
container = doc.createElement('div');
|
1002
897
|
(0, _element.addClass)(container, "htMenu ".concat(this.options.className));
|
1003
|
-
|
1004
898
|
if (className) {
|
1005
899
|
(0, _element.addClass)(container, className);
|
1006
900
|
}
|
1007
|
-
|
1008
901
|
this.options.container.appendChild(container);
|
1009
902
|
}
|
1010
|
-
|
1011
903
|
return container;
|
1012
904
|
}
|
905
|
+
|
1013
906
|
/**
|
1014
907
|
* @private
|
1015
908
|
*/
|
1016
|
-
|
1017
909
|
}, {
|
1018
910
|
key: "blockMainTableCallbacks",
|
1019
911
|
value: function blockMainTableCallbacks() {
|
1020
912
|
this._afterScrollCallback = function () {};
|
1021
|
-
|
1022
913
|
this.hot.addHook('afterScrollVertically', this._afterScrollCallback);
|
1023
914
|
this.hot.addHook('afterScrollHorizontally', this._afterScrollCallback);
|
1024
915
|
}
|
916
|
+
|
1025
917
|
/**
|
1026
918
|
* @private
|
1027
919
|
*/
|
1028
|
-
|
1029
920
|
}, {
|
1030
921
|
key: "releaseMainTableCallbacks",
|
1031
922
|
value: function releaseMainTableCallbacks() {
|
@@ -1035,12 +926,12 @@ var Menu = /*#__PURE__*/function () {
|
|
1035
926
|
this._afterScrollCallback = null;
|
1036
927
|
}
|
1037
928
|
}
|
929
|
+
|
1038
930
|
/**
|
1039
931
|
* On after init listener.
|
1040
932
|
*
|
1041
933
|
* @private
|
1042
934
|
*/
|
1043
|
-
|
1044
935
|
}, {
|
1045
936
|
key: "onAfterInit",
|
1046
937
|
value: function onAfterInit() {
|
@@ -1051,12 +942,14 @@ var Menu = /*#__PURE__*/function () {
|
|
1051
942
|
var currentHiderWidth = parseInt(hiderStyle.width, 10);
|
1052
943
|
var realHeight = (0, _array.arrayReduce)(data, function (accumulator, value) {
|
1053
944
|
return accumulator + (value.name === _predefinedItems.SEPARATOR ? 1 : 26);
|
1054
|
-
}, 0);
|
945
|
+
}, 0);
|
1055
946
|
|
947
|
+
// Additional 3px to menu's size because of additional border around its `table.htCore`.
|
1056
948
|
holderStyle.width = "".concat(currentHiderWidth + 3, "px");
|
1057
949
|
holderStyle.height = "".concat(realHeight + 3, "px");
|
1058
950
|
hiderStyle.height = holderStyle.height;
|
1059
951
|
}
|
952
|
+
|
1060
953
|
/**
|
1061
954
|
* On after selection listener.
|
1062
955
|
*
|
@@ -1066,7 +959,6 @@ var Menu = /*#__PURE__*/function () {
|
|
1066
959
|
* @param {number} c2 Selection end column index.
|
1067
960
|
* @param {object} preventScrolling Object with `value` property where its value change will be observed.
|
1068
961
|
*/
|
1069
|
-
|
1070
962
|
}, {
|
1071
963
|
key: "onAfterSelection",
|
1072
964
|
value: function onAfterSelection(r, c, r2, c2, preventScrolling) {
|
@@ -1074,50 +966,49 @@ var Menu = /*#__PURE__*/function () {
|
|
1074
966
|
preventScrolling.value = true;
|
1075
967
|
}
|
1076
968
|
}
|
969
|
+
|
1077
970
|
/**
|
1078
971
|
* Document mouse down listener.
|
1079
972
|
*
|
1080
973
|
* @private
|
1081
974
|
* @param {Event} event The mouse event object.
|
1082
975
|
*/
|
1083
|
-
|
1084
976
|
}, {
|
1085
977
|
key: "onDocumentMouseDown",
|
1086
978
|
value: function onDocumentMouseDown(event) {
|
1087
979
|
if (!this.isOpened()) {
|
1088
980
|
return;
|
1089
|
-
}
|
1090
|
-
|
981
|
+
}
|
1091
982
|
|
983
|
+
// Close menu when clicked element is not belongs to menu itself
|
1092
984
|
if (this.options.standalone && this.hotMenu && !(0, _element.isChildOf)(event.target, this.hotMenu.rootElement)) {
|
1093
|
-
this.close(true);
|
985
|
+
this.close(true);
|
986
|
+
|
987
|
+
// Automatically close menu when clicked element is not belongs to menu or submenu (not necessarily to itself)
|
1094
988
|
} else if ((this.isAllSubMenusClosed() || this.isSubMenu()) && !(0, _element.isChildOf)(event.target, '.htMenu')) {
|
1095
989
|
this.close(true);
|
1096
990
|
}
|
1097
991
|
}
|
992
|
+
|
1098
993
|
/**
|
1099
994
|
* Document's contextmenu listener.
|
1100
995
|
*
|
1101
996
|
* @private
|
1102
997
|
* @param {MouseEvent} event The mouse event object.
|
1103
998
|
*/
|
1104
|
-
|
1105
999
|
}, {
|
1106
1000
|
key: "onDocumentContextMenu",
|
1107
1001
|
value: function onDocumentContextMenu(event) {
|
1108
1002
|
if (!this.isOpened()) {
|
1109
1003
|
return;
|
1110
1004
|
}
|
1111
|
-
|
1112
1005
|
if ((0, _element.hasClass)(event.target, 'htCore') && (0, _element.isChildOf)(event.target, this.hotMenu.rootElement)) {
|
1113
1006
|
event.preventDefault();
|
1114
1007
|
}
|
1115
1008
|
}
|
1116
1009
|
}]);
|
1117
|
-
|
1118
1010
|
return Menu;
|
1119
1011
|
}();
|
1120
|
-
|
1121
1012
|
(0, _object.mixin)(Menu, _localHooks.default);
|
1122
1013
|
var _default = Menu;
|
1123
1014
|
exports.default = _default;
|