handsontable 12.1.3 → 12.3.0-next-bb1a7c2-20221208
Sign up to get free protection for your applications and to get access to all the features.
- 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;
|