handsontable 12.1.2 → 12.2.0
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 +72 -174
- package/3rdparty/walkontable/src/border.mjs +74 -161
- package/3rdparty/walkontable/src/calculator/constants.js +0 -3
- package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
- package/3rdparty/walkontable/src/calculator/index.js +0 -10
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +26 -76
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +26 -69
- package/3rdparty/walkontable/src/calculator/viewportRows.js +20 -48
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +20 -41
- package/3rdparty/walkontable/src/cell/coords.js +13 -43
- package/3rdparty/walkontable/src/cell/coords.mjs +13 -38
- package/3rdparty/walkontable/src/cell/range.js +55 -130
- package/3rdparty/walkontable/src/cell/range.mjs +60 -126
- package/3rdparty/walkontable/src/core/_base.js +16 -74
- package/3rdparty/walkontable/src/core/_base.mjs +19 -70
- package/3rdparty/walkontable/src/core/clone.js +1 -40
- package/3rdparty/walkontable/src/core/clone.mjs +3 -30
- package/3rdparty/walkontable/src/core/core.js +3 -57
- package/3rdparty/walkontable/src/core/core.mjs +5 -41
- package/3rdparty/walkontable/src/event.js +31 -78
- package/3rdparty/walkontable/src/event.mjs +31 -65
- package/3rdparty/walkontable/src/facade/core.js +1 -17
- package/3rdparty/walkontable/src/facade/core.mjs +7 -20
- package/3rdparty/walkontable/src/filter/column.js +9 -18
- package/3rdparty/walkontable/src/filter/column.mjs +9 -17
- package/3rdparty/walkontable/src/filter/row.js +9 -18
- package/3rdparty/walkontable/src/filter/row.mjs +9 -17
- package/3rdparty/walkontable/src/index.js +0 -31
- package/3rdparty/walkontable/src/overlay/_base.js +24 -69
- package/3rdparty/walkontable/src/overlay/_base.mjs +31 -68
- package/3rdparty/walkontable/src/overlay/bottom.js +28 -99
- package/3rdparty/walkontable/src/overlay/bottom.mjs +30 -86
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +7 -53
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +9 -40
- package/3rdparty/walkontable/src/overlay/constants.js +0 -6
- package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
- package/3rdparty/walkontable/src/overlay/index.js +0 -17
- package/3rdparty/walkontable/src/overlay/inlineStart.js +21 -91
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +23 -78
- package/3rdparty/walkontable/src/overlay/top.js +27 -100
- package/3rdparty/walkontable/src/overlay/top.mjs +29 -87
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +4 -51
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +6 -38
- package/3rdparty/walkontable/src/overlays.js +58 -129
- package/3rdparty/walkontable/src/overlays.mjs +60 -121
- package/3rdparty/walkontable/src/renderer/_base.js +4 -20
- package/3rdparty/walkontable/src/renderer/_base.mjs +8 -22
- package/3rdparty/walkontable/src/renderer/cells.js +10 -54
- package/3rdparty/walkontable/src/renderer/cells.mjs +22 -52
- package/3rdparty/walkontable/src/renderer/colGroup.js +10 -47
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +21 -46
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +8 -50
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +19 -49
- package/3rdparty/walkontable/src/renderer/index.js +13 -36
- package/3rdparty/walkontable/src/renderer/index.mjs +17 -27
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -50
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +20 -49
- package/3rdparty/walkontable/src/renderer/rows.js +3 -46
- package/3rdparty/walkontable/src/renderer/rows.mjs +3 -29
- package/3rdparty/walkontable/src/renderer/table.js +22 -49
- package/3rdparty/walkontable/src/renderer/table.mjs +22 -48
- package/3rdparty/walkontable/src/scroll.js +56 -86
- package/3rdparty/walkontable/src/scroll.mjs +58 -86
- package/3rdparty/walkontable/src/selection.js +20 -101
- package/3rdparty/walkontable/src/selection.mjs +22 -85
- package/3rdparty/walkontable/src/settings.js +9 -29
- package/3rdparty/walkontable/src/settings.mjs +9 -27
- package/3rdparty/walkontable/src/table/bottom.js +1 -35
- package/3rdparty/walkontable/src/table/bottom.mjs +6 -25
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -35
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +7 -26
- package/3rdparty/walkontable/src/table/inlineStart.js +1 -35
- package/3rdparty/walkontable/src/table/inlineStart.mjs +3 -22
- package/3rdparty/walkontable/src/table/master.js +10 -55
- package/3rdparty/walkontable/src/table/master.mjs +15 -44
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +7 -28
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +7 -26
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +7 -28
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +7 -26
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +7 -22
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +7 -20
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +7 -23
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +7 -21
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +7 -22
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +7 -20
- package/3rdparty/walkontable/src/table/top.js +1 -35
- package/3rdparty/walkontable/src/table/top.mjs +6 -25
- package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -35
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +7 -26
- package/3rdparty/walkontable/src/table.js +74 -238
- package/3rdparty/walkontable/src/table.mjs +84 -227
- package/3rdparty/walkontable/src/types.js +0 -5
- package/3rdparty/walkontable/src/types.mjs +0 -5
- package/3rdparty/walkontable/src/utils/column.js +9 -31
- package/3rdparty/walkontable/src/utils/column.mjs +13 -30
- package/3rdparty/walkontable/src/utils/nodesPool.js +3 -12
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +3 -11
- package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
- package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
- package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -33
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +6 -26
- package/3rdparty/walkontable/src/utils/orderView/view.js +14 -46
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +21 -50
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +3 -15
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +3 -14
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +8 -22
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +23 -34
- package/3rdparty/walkontable/src/utils/row.js +2 -13
- package/3rdparty/walkontable/src/utils/row.mjs +2 -12
- package/3rdparty/walkontable/src/viewport.js +38 -100
- package/3rdparty/walkontable/src/viewport.mjs +40 -99
- package/CHANGELOG.md +103 -5
- package/base.js +6 -17
- package/base.mjs +6 -12
- package/cellTypes/autocompleteType/autocompleteType.js +0 -4
- package/cellTypes/autocompleteType/index.js +0 -2
- package/cellTypes/checkboxType/checkboxType.js +0 -3
- package/cellTypes/checkboxType/index.js +0 -2
- package/cellTypes/dateType/dateType.js +0 -4
- package/cellTypes/dateType/index.js +0 -2
- package/cellTypes/dropdownType/dropdownType.js +0 -4
- package/cellTypes/dropdownType/index.js +0 -2
- package/cellTypes/handsontableType/handsontableType.js +0 -3
- package/cellTypes/handsontableType/index.js +0 -2
- package/cellTypes/index.js +0 -21
- package/cellTypes/index.mjs +3 -5
- package/cellTypes/numericType/index.js +0 -2
- package/cellTypes/numericType/numericType.js +0 -4
- package/cellTypes/passwordType/index.js +0 -2
- package/cellTypes/passwordType/passwordType.js +0 -3
- package/cellTypes/registry.js +10 -25
- package/cellTypes/registry.mjs +10 -20
- package/cellTypes/textType/index.js +0 -2
- package/cellTypes/textType/textType.js +0 -3
- package/cellTypes/timeType/index.js +0 -2
- package/cellTypes/timeType/timeType.js +0 -4
- package/core.d.ts +6 -4
- package/core.js +514 -974
- package/core.mjs +519 -921
- package/dataMap/dataMap.js +127 -212
- package/dataMap/dataMap.mjs +127 -188
- package/{dataSource.js → dataMap/dataSource.js} +18 -66
- package/{dataSource.mjs → dataMap/dataSource.mjs} +20 -60
- package/dataMap/index.js +0 -13
- package/dataMap/metaManager/index.js +21 -46
- package/dataMap/metaManager/index.mjs +47 -64
- package/dataMap/metaManager/lazyFactoryMap.js +23 -55
- package/dataMap/metaManager/lazyFactoryMap.mjs +23 -43
- package/dataMap/metaManager/metaLayers/cellMeta.js +16 -52
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +16 -37
- package/dataMap/metaManager/metaLayers/columnMeta.js +8 -22
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +14 -25
- package/dataMap/metaManager/metaLayers/globalMeta.js +4 -19
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -15
- package/dataMap/metaManager/metaLayers/tableMeta.js +4 -15
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +28 -37
- package/dataMap/metaManager/metaSchema.js +196 -257
- package/dataMap/metaManager/metaSchema.mjs +196 -248
- package/dataMap/metaManager/mods/dynamicCellMeta.js +6 -36
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +20 -39
- package/dataMap/metaManager/mods/extendMetaProperties.js +5 -28
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -18
- package/dataMap/metaManager/utils.js +11 -20
- package/dataMap/metaManager/utils.mjs +21 -23
- package/dataMap/replaceData.js +14 -35
- package/dataMap/replaceData.mjs +35 -45
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +64469 -93042
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +527 -284
- package/dist/handsontable.js +9616 -21414
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +3 -3
- package/dist/languages/all.js +0 -175
- package/dist/languages/ar-AR.js +0 -10
- package/dist/languages/cs-CZ.js +0 -10
- package/dist/languages/de-CH.js +0 -10
- package/dist/languages/de-DE.js +0 -10
- package/dist/languages/en-US.js +0 -10
- package/dist/languages/es-MX.js +0 -10
- package/dist/languages/fr-FR.js +0 -10
- package/dist/languages/it-IT.js +0 -10
- package/dist/languages/ja-JP.js +0 -10
- package/dist/languages/ko-KR.js +0 -10
- package/dist/languages/lv-LV.js +0 -10
- package/dist/languages/nb-NO.js +0 -10
- package/dist/languages/nl-NL.js +0 -10
- package/dist/languages/pl-PL.js +0 -10
- package/dist/languages/pt-BR.js +0 -10
- package/dist/languages/ru-RU.js +0 -10
- package/dist/languages/sr-SP.js +0 -10
- package/dist/languages/zh-CN.js +0 -10
- package/dist/languages/zh-TW.js +0 -10
- package/editorManager.js +89 -124
- package/editorManager.mjs +89 -104
- package/editors/autocompleteEditor/autocompleteEditor.js +26 -133
- package/editors/autocompleteEditor/autocompleteEditor.mjs +26 -104
- package/editors/autocompleteEditor/index.js +0 -2
- package/editors/baseEditor/baseEditor.js +45 -155
- package/editors/baseEditor/baseEditor.mjs +45 -129
- package/editors/baseEditor/index.js +0 -2
- package/editors/checkboxEditor/checkboxEditor.js +2 -33
- package/editors/checkboxEditor/checkboxEditor.mjs +2 -19
- package/editors/checkboxEditor/index.js +0 -2
- package/editors/dateEditor/dateEditor.js +36 -97
- package/editors/dateEditor/dateEditor.mjs +35 -74
- package/editors/dateEditor/index.js +0 -2
- package/editors/dropdownEditor/dropdownEditor.js +1 -41
- package/editors/dropdownEditor/dropdownEditor.mjs +1 -22
- package/editors/dropdownEditor/index.js +0 -2
- package/editors/handsontableEditor/handsontableEditor.js +13 -85
- package/editors/handsontableEditor/handsontableEditor.mjs +13 -66
- package/editors/handsontableEditor/index.js +0 -2
- package/editors/index.js +0 -25
- package/editors/index.mjs +3 -5
- package/editors/numericEditor/index.js +0 -2
- package/editors/numericEditor/numericEditor.js +1 -31
- package/editors/numericEditor/numericEditor.mjs +1 -18
- package/editors/passwordEditor/index.js +0 -2
- package/editors/passwordEditor/passwordEditor.js +1 -38
- package/editors/passwordEditor/passwordEditor.mjs +1 -22
- package/editors/registry.js +10 -36
- package/editors/registry.mjs +10 -28
- package/editors/selectEditor/index.js +0 -2
- package/editors/selectEditor/selectEditor.js +21 -73
- package/editors/selectEditor/selectEditor.mjs +21 -56
- package/editors/textEditor/caretPositioner.js +0 -12
- package/editors/textEditor/caretPositioner.mjs +10 -20
- package/editors/textEditor/index.js +0 -2
- package/editors/textEditor/textEditor.js +38 -137
- package/editors/textEditor/textEditor.mjs +38 -106
- package/editors/timeEditor/index.js +0 -2
- package/editors/timeEditor/timeEditor.js +1 -36
- package/editors/timeEditor/timeEditor.mjs +1 -21
- package/eventManager.js +20 -56
- package/eventManager.mjs +23 -56
- package/helpers/array.js +22 -88
- package/helpers/array.mjs +22 -58
- package/helpers/browser.js +25 -51
- package/helpers/browser.mjs +25 -32
- package/helpers/console.js +3 -13
- package/helpers/console.mjs +8 -16
- package/helpers/data.d.ts +0 -1
- package/helpers/data.js +10 -55
- package/helpers/data.mjs +10 -33
- package/helpers/date.js +2 -3
- package/helpers/date.mjs +2 -2
- package/helpers/dom/element.js +67 -259
- package/helpers/dom/element.mjs +74 -194
- package/helpers/dom/event.js +3 -7
- package/helpers/dom/event.mjs +3 -3
- package/helpers/feature.js +13 -47
- package/helpers/feature.mjs +13 -31
- package/helpers/function.js +14 -59
- package/helpers/function.mjs +20 -52
- package/helpers/mixed.js +9 -66
- package/helpers/mixed.mjs +15 -51
- package/helpers/number.js +4 -46
- package/helpers/number.mjs +4 -23
- package/helpers/object.js +15 -72
- package/helpers/object.mjs +21 -52
- package/helpers/string.js +6 -28
- package/helpers/string.mjs +12 -21
- package/helpers/templateLiteralTag.js +0 -6
- package/helpers/templateLiteralTag.mjs +7 -10
- package/helpers/unicode.js +17 -26
- package/helpers/unicode.mjs +17 -15
- package/helpers/wrappers/jquery.js +4 -14
- package/helpers/wrappers/jquery.mjs +4 -13
- package/i18n/constants.js +1 -3
- package/i18n/constants.mjs +1 -1
- package/i18n/index.js +0 -7
- package/i18n/languages/ar-AR.js +0 -16
- package/i18n/languages/ar-AR.mjs +1 -4
- package/i18n/languages/cs-CZ.js +0 -16
- package/i18n/languages/cs-CZ.mjs +1 -4
- package/i18n/languages/de-CH.js +0 -16
- package/i18n/languages/de-CH.mjs +1 -4
- package/i18n/languages/de-DE.js +0 -16
- package/i18n/languages/de-DE.mjs +1 -4
- package/i18n/languages/en-US.js +0 -16
- package/i18n/languages/en-US.mjs +1 -4
- package/i18n/languages/es-MX.js +0 -16
- package/i18n/languages/es-MX.mjs +1 -4
- package/i18n/languages/fr-FR.js +0 -16
- package/i18n/languages/fr-FR.mjs +1 -4
- package/i18n/languages/index.js +0 -39
- package/i18n/languages/it-IT.js +0 -16
- package/i18n/languages/it-IT.mjs +1 -4
- package/i18n/languages/ja-JP.js +0 -16
- package/i18n/languages/ja-JP.mjs +1 -4
- package/i18n/languages/ko-KR.js +0 -16
- package/i18n/languages/ko-KR.mjs +1 -4
- package/i18n/languages/lv-LV.js +0 -16
- package/i18n/languages/lv-LV.mjs +1 -4
- package/i18n/languages/nb-NO.js +0 -16
- package/i18n/languages/nb-NO.mjs +1 -4
- package/i18n/languages/nl-NL.js +0 -16
- package/i18n/languages/nl-NL.mjs +1 -4
- package/i18n/languages/pl-PL.js +0 -16
- package/i18n/languages/pl-PL.mjs +1 -4
- package/i18n/languages/pt-BR.js +0 -16
- package/i18n/languages/pt-BR.mjs +1 -4
- package/i18n/languages/ru-RU.js +0 -16
- package/i18n/languages/ru-RU.mjs +1 -4
- package/i18n/languages/sr-SP.js +0 -16
- package/i18n/languages/sr-SP.mjs +1 -4
- package/i18n/languages/zh-CN.js +0 -16
- package/i18n/languages/zh-CN.mjs +1 -4
- package/i18n/languages/zh-TW.js +0 -16
- package/i18n/languages/zh-TW.mjs +1 -4
- package/i18n/phraseFormatters/index.js +4 -11
- package/i18n/phraseFormatters/index.mjs +4 -6
- package/i18n/phraseFormatters/pluralize.js +0 -5
- package/i18n/phraseFormatters/pluralize.mjs +0 -3
- package/i18n/phraseFormatters/substituteVariables.js +0 -4
- package/i18n/phraseFormatters/substituteVariables.mjs +8 -11
- package/i18n/registry.js +18 -59
- package/i18n/registry.mjs +18 -30
- package/i18n/utils.js +4 -22
- package/i18n/utils.mjs +13 -21
- package/index.js +19 -56
- package/index.mjs +19 -15
- package/languages/all.js +0 -175
- package/languages/ar-AR.js +0 -10
- package/languages/ar-AR.mjs +1 -4
- package/languages/cs-CZ.js +0 -10
- package/languages/cs-CZ.mjs +1 -4
- package/languages/de-CH.js +0 -10
- package/languages/de-CH.mjs +1 -4
- package/languages/de-DE.js +0 -10
- package/languages/de-DE.mjs +1 -4
- package/languages/en-US.js +0 -10
- package/languages/en-US.mjs +1 -4
- package/languages/es-MX.js +0 -10
- package/languages/es-MX.mjs +1 -4
- package/languages/fr-FR.js +0 -10
- package/languages/fr-FR.mjs +1 -4
- package/languages/index.js +0 -175
- package/languages/it-IT.js +0 -10
- package/languages/it-IT.mjs +1 -4
- package/languages/ja-JP.js +0 -10
- package/languages/ja-JP.mjs +1 -4
- package/languages/ko-KR.js +0 -10
- package/languages/ko-KR.mjs +1 -4
- package/languages/lv-LV.js +0 -10
- package/languages/lv-LV.mjs +1 -4
- package/languages/nb-NO.js +0 -10
- package/languages/nb-NO.mjs +1 -4
- package/languages/nl-NL.js +0 -10
- package/languages/nl-NL.mjs +1 -4
- package/languages/pl-PL.js +0 -10
- package/languages/pl-PL.mjs +1 -4
- package/languages/pt-BR.js +0 -10
- package/languages/pt-BR.mjs +1 -4
- package/languages/ru-RU.js +0 -10
- package/languages/ru-RU.mjs +1 -4
- package/languages/sr-SP.js +0 -10
- package/languages/sr-SP.mjs +1 -4
- package/languages/zh-CN.js +0 -10
- package/languages/zh-CN.mjs +1 -4
- package/languages/zh-TW.js +0 -10
- package/languages/zh-TW.mjs +1 -4
- package/mixins/hooksRefRegisterer.js +4 -18
- package/mixins/hooksRefRegisterer.mjs +4 -15
- package/mixins/localHooks.js +7 -17
- package/mixins/localHooks.mjs +7 -14
- package/package.json +1 -1
- package/pluginHooks.d.ts +3 -4
- package/pluginHooks.js +288 -110
- package/pluginHooks.mjs +287 -97
- package/plugins/autoColumnSize/autoColumnSize.js +74 -172
- package/plugins/autoColumnSize/autoColumnSize.mjs +74 -137
- package/plugins/autoColumnSize/index.js +0 -2
- package/plugins/autoRowSize/autoRowSize.js +73 -153
- package/plugins/autoRowSize/autoRowSize.mjs +73 -124
- package/plugins/autoRowSize/index.js +0 -2
- package/plugins/autofill/autofill.js +46 -163
- package/plugins/autofill/autofill.mjs +46 -131
- package/plugins/autofill/index.js +0 -2
- package/plugins/autofill/utils.js +4 -26
- package/plugins/autofill/utils.mjs +4 -18
- package/plugins/base/base.js +21 -92
- package/plugins/base/base.mjs +21 -63
- package/plugins/base/index.js +0 -2
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +19 -52
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +19 -33
- package/plugins/bindRowsWithHeaders/index.js +0 -2
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +5 -41
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +5 -29
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -53
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +6 -37
- package/plugins/collapsibleColumns/collapsibleColumns.js +96 -188
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +97 -158
- package/plugins/collapsibleColumns/index.js +0 -2
- package/plugins/columnSorting/columnSorting.js +50 -188
- package/plugins/columnSorting/columnSorting.mjs +50 -143
- package/plugins/columnSorting/columnStatesManager.js +15 -71
- package/plugins/columnSorting/columnStatesManager.mjs +15 -48
- package/plugins/columnSorting/domHelpers.js +2 -18
- package/plugins/columnSorting/domHelpers.mjs +2 -7
- package/plugins/columnSorting/index.js +0 -2
- package/plugins/columnSorting/rootComparator.js +5 -24
- package/plugins/columnSorting/rootComparator.mjs +12 -21
- package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
- package/plugins/columnSorting/sortFunction/checkbox.mjs +16 -21
- package/plugins/columnSorting/sortFunction/date.js +2 -19
- package/plugins/columnSorting/sortFunction/date.mjs +10 -23
- package/plugins/columnSorting/sortFunction/default.js +2 -17
- package/plugins/columnSorting/sortFunction/default.mjs +10 -23
- package/plugins/columnSorting/sortFunction/numeric.js +2 -11
- package/plugins/columnSorting/sortFunction/numeric.mjs +10 -17
- package/plugins/columnSorting/sortService/engine.js +3 -13
- package/plugins/columnSorting/sortService/engine.mjs +3 -5
- package/plugins/columnSorting/sortService/index.js +0 -5
- package/plugins/columnSorting/sortService/registry.js +6 -18
- package/plugins/columnSorting/sortService/registry.mjs +6 -10
- package/plugins/columnSorting/utils.js +9 -34
- package/plugins/columnSorting/utils.mjs +9 -15
- package/plugins/columnSummary/columnSummary.js +66 -126
- package/plugins/columnSummary/columnSummary.mjs +66 -101
- package/plugins/columnSummary/endpoints.js +21 -98
- package/plugins/columnSummary/endpoints.mjs +26 -99
- package/plugins/columnSummary/index.js +0 -2
- package/plugins/columnSummary/utils.js +13 -0
- package/plugins/columnSummary/utils.mjs +9 -0
- package/plugins/comments/commentEditor.js +16 -28
- package/plugins/comments/commentEditor.mjs +21 -32
- package/plugins/comments/comments.js +92 -175
- package/plugins/comments/comments.mjs +92 -149
- package/plugins/comments/displaySwitch.js +6 -23
- package/plugins/comments/displaySwitch.mjs +6 -18
- package/plugins/comments/index.js +0 -2
- package/plugins/contextMenu/commandExecutor.js +9 -40
- package/plugins/contextMenu/commandExecutor.mjs +14 -41
- package/plugins/contextMenu/contextMenu.js +26 -105
- package/plugins/contextMenu/contextMenu.mjs +26 -75
- package/plugins/contextMenu/cursor.js +6 -20
- package/plugins/contextMenu/cursor.mjs +11 -24
- package/plugins/contextMenu/index.js +0 -2
- package/plugins/contextMenu/itemsFactory.js +14 -43
- package/plugins/contextMenu/itemsFactory.mjs +19 -44
- package/plugins/contextMenu/menu.js +61 -177
- package/plugins/contextMenu/menu.mjs +61 -149
- package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
- package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
- package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
- package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
- package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
- package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
- package/plugins/contextMenu/predefinedItems/redo.js +1 -16
- package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
- package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
- package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
- package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/separator.js +1 -2
- package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/undo.js +1 -16
- package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems.js +2 -48
- package/plugins/contextMenu/predefinedItems.mjs +2 -7
- package/plugins/contextMenu/utils.js +17 -57
- package/plugins/contextMenu/utils.mjs +21 -39
- package/plugins/copyPaste/clipboardData.js +1 -10
- package/plugins/copyPaste/clipboardData.mjs +1 -9
- package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
- package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
- package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
- package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
- package/plugins/copyPaste/copyPaste.js +53 -185
- package/plugins/copyPaste/copyPaste.mjs +53 -144
- package/plugins/copyPaste/focusableElement.js +12 -56
- package/plugins/copyPaste/focusableElement.mjs +15 -49
- package/plugins/copyPaste/index.js +0 -2
- package/plugins/copyPaste/pasteEvent.js +1 -10
- package/plugins/copyPaste/pasteEvent.mjs +3 -10
- package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
- package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/index.js +0 -11
- package/plugins/customBorders/contextMenuItem/left.js +0 -17
- package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
- package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
- package/plugins/customBorders/contextMenuItem/right.js +0 -17
- package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/top.js +0 -17
- package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
- package/plugins/customBorders/customBorders.js +52 -181
- package/plugins/customBorders/customBorders.mjs +52 -147
- package/plugins/customBorders/index.js +0 -2
- package/plugins/customBorders/utils.js +13 -52
- package/plugins/customBorders/utils.mjs +20 -39
- package/plugins/dragToScroll/dragToScroll.js +17 -74
- package/plugins/dragToScroll/dragToScroll.mjs +17 -55
- package/plugins/dragToScroll/index.js +0 -2
- package/plugins/dropdownMenu/dropdownMenu.js +47 -126
- package/plugins/dropdownMenu/dropdownMenu.mjs +47 -95
- package/plugins/dropdownMenu/index.js +0 -2
- package/plugins/exportFile/dataProvider.js +24 -69
- package/plugins/exportFile/dataProvider.mjs +26 -60
- package/plugins/exportFile/exportFile.js +48 -58
- package/plugins/exportFile/exportFile.mjs +48 -36
- package/plugins/exportFile/index.js +0 -2
- package/plugins/exportFile/typeFactory.js +1 -11
- package/plugins/exportFile/typeFactory.mjs +1 -4
- package/plugins/exportFile/types/_base.js +2 -16
- package/plugins/exportFile/types/_base.mjs +4 -16
- package/plugins/exportFile/types/csv.js +2 -50
- package/plugins/exportFile/types/csv.mjs +2 -29
- package/plugins/filters/component/_base.js +12 -32
- package/plugins/filters/component/_base.mjs +15 -30
- package/plugins/filters/component/actionBar.js +6 -55
- package/plugins/filters/component/actionBar.mjs +9 -38
- package/plugins/filters/component/condition.js +25 -122
- package/plugins/filters/component/condition.mjs +24 -88
- package/plugins/filters/component/operators.js +10 -68
- package/plugins/filters/component/operators.mjs +10 -45
- package/plugins/filters/component/value.js +25 -99
- package/plugins/filters/component/value.mjs +28 -72
- package/plugins/filters/condition/beginsWith.js +2 -32
- package/plugins/filters/condition/beginsWith.mjs +2 -10
- package/plugins/filters/condition/between.js +3 -37
- package/plugins/filters/condition/between.mjs +3 -15
- package/plugins/filters/condition/byValue.js +3 -27
- package/plugins/filters/condition/byValue.mjs +3 -12
- package/plugins/filters/condition/contains.js +2 -32
- package/plugins/filters/condition/contains.mjs +2 -10
- package/plugins/filters/condition/date/after.js +2 -34
- package/plugins/filters/condition/date/after.mjs +2 -12
- package/plugins/filters/condition/date/before.js +2 -34
- package/plugins/filters/condition/date/before.mjs +2 -12
- package/plugins/filters/condition/date/today.js +1 -22
- package/plugins/filters/condition/date/today.mjs +1 -3
- package/plugins/filters/condition/date/tomorrow.js +1 -22
- package/plugins/filters/condition/date/tomorrow.mjs +1 -3
- package/plugins/filters/condition/date/yesterday.js +1 -22
- package/plugins/filters/condition/date/yesterday.mjs +1 -3
- package/plugins/filters/condition/empty.js +1 -19
- package/plugins/filters/condition/empty.mjs +1 -1
- package/plugins/filters/condition/endsWith.js +2 -32
- package/plugins/filters/condition/endsWith.mjs +2 -10
- package/plugins/filters/condition/equal.js +2 -31
- package/plugins/filters/condition/equal.mjs +2 -10
- package/plugins/filters/condition/false.js +1 -5
- package/plugins/filters/condition/false.mjs +1 -1
- package/plugins/filters/condition/greaterThan.js +2 -32
- package/plugins/filters/condition/greaterThan.mjs +2 -12
- package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
- package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
- package/plugins/filters/condition/lessThan.js +2 -32
- package/plugins/filters/condition/lessThan.mjs +2 -12
- package/plugins/filters/condition/lessThanOrEqual.js +2 -32
- package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
- package/plugins/filters/condition/none.js +1 -18
- package/plugins/filters/condition/none.mjs +1 -1
- package/plugins/filters/condition/notBetween.js +1 -19
- package/plugins/filters/condition/notBetween.mjs +1 -1
- package/plugins/filters/condition/notContains.js +1 -19
- package/plugins/filters/condition/notContains.mjs +1 -1
- package/plugins/filters/condition/notEmpty.js +1 -19
- package/plugins/filters/condition/notEmpty.mjs +1 -1
- package/plugins/filters/condition/notEqual.js +1 -19
- package/plugins/filters/condition/notEqual.mjs +1 -1
- package/plugins/filters/condition/true.js +1 -5
- package/plugins/filters/condition/true.mjs +1 -1
- package/plugins/filters/conditionCollection.js +21 -80
- package/plugins/filters/conditionCollection.mjs +21 -57
- package/plugins/filters/conditionRegisterer.js +5 -14
- package/plugins/filters/conditionRegisterer.mjs +5 -9
- package/plugins/filters/conditionUpdateObserver.js +17 -57
- package/plugins/filters/conditionUpdateObserver.mjs +25 -53
- package/plugins/filters/constants.js +1 -66
- package/plugins/filters/constants.mjs +1 -8
- package/plugins/filters/dataFilter.js +4 -21
- package/plugins/filters/dataFilter.mjs +7 -23
- package/plugins/filters/filters.d.ts +1 -1
- package/plugins/filters/filters.js +147 -272
- package/plugins/filters/filters.mjs +148 -228
- package/plugins/filters/index.js +0 -2
- package/plugins/filters/logicalOperationRegisterer.js +3 -9
- package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
- package/plugins/filters/logicalOperations/conjunction.js +2 -19
- package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunction.js +2 -19
- package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
- package/plugins/filters/ui/_base.js +12 -55
- package/plugins/filters/ui/_base.mjs +12 -35
- package/plugins/filters/ui/input.js +7 -52
- package/plugins/filters/ui/input.mjs +7 -34
- package/plugins/filters/ui/link.js +3 -43
- package/plugins/filters/ui/link.mjs +3 -25
- package/plugins/filters/ui/multipleSelect.js +26 -120
- package/plugins/filters/ui/multipleSelect.mjs +20 -76
- package/plugins/filters/ui/radioInput.js +6 -47
- package/plugins/filters/ui/radioInput.mjs +6 -30
- package/plugins/filters/ui/select.js +14 -76
- package/plugins/filters/ui/select.mjs +14 -52
- package/plugins/filters/utils.js +6 -39
- package/plugins/filters/utils.mjs +6 -23
- package/plugins/formulas/engine/register.js +24 -74
- package/plugins/formulas/engine/register.mjs +29 -51
- package/plugins/formulas/engine/settings.js +4 -24
- package/plugins/formulas/engine/settings.mjs +4 -12
- package/plugins/formulas/formulas.js +103 -295
- package/plugins/formulas/formulas.mjs +104 -248
- package/plugins/formulas/index.js +0 -2
- package/plugins/formulas/utils.js +1 -3
- package/plugins/formulas/utils.mjs +1 -1
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
- package/plugins/hiddenColumns/hiddenColumns.js +72 -153
- package/plugins/hiddenColumns/hiddenColumns.mjs +72 -110
- package/plugins/hiddenColumns/index.js +0 -2
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
- package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
- package/plugins/hiddenRows/hiddenRows.js +70 -152
- package/plugins/hiddenRows/hiddenRows.mjs +70 -109
- package/plugins/hiddenRows/index.js +0 -2
- package/plugins/index.js +0 -71
- package/plugins/index.mjs +3 -5
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
- package/plugins/manualColumnFreeze/index.js +0 -2
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
- package/plugins/manualColumnMove/index.js +0 -2
- package/plugins/manualColumnMove/manualColumnMove.js +45 -134
- package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
- package/plugins/manualColumnMove/ui/_base.js +12 -30
- package/plugins/manualColumnMove/ui/_base.mjs +12 -27
- package/plugins/manualColumnMove/ui/backlight.js +1 -37
- package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
- package/plugins/manualColumnMove/ui/guideline.js +1 -37
- package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
- package/plugins/manualColumnResize/index.js +0 -2
- package/plugins/manualColumnResize/manualColumnResize.js +44 -143
- package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
- package/plugins/manualRowMove/index.js +0 -2
- package/plugins/manualRowMove/manualRowMove.js +45 -137
- package/plugins/manualRowMove/manualRowMove.mjs +45 -109
- package/plugins/manualRowMove/ui/_base.js +12 -27
- package/plugins/manualRowMove/ui/_base.mjs +12 -26
- package/plugins/manualRowMove/ui/backlight.js +1 -37
- package/plugins/manualRowMove/ui/backlight.mjs +1 -22
- package/plugins/manualRowMove/ui/guideline.js +1 -37
- package/plugins/manualRowMove/ui/guideline.mjs +1 -22
- package/plugins/manualRowResize/index.js +0 -2
- package/plugins/manualRowResize/manualRowResize.js +42 -138
- package/plugins/manualRowResize/manualRowResize.mjs +41 -112
- package/plugins/mergeCells/calculations/autofill.js +39 -130
- package/plugins/mergeCells/calculations/autofill.mjs +44 -122
- package/plugins/mergeCells/calculations/selection.js +9 -40
- package/plugins/mergeCells/calculations/selection.mjs +9 -37
- package/plugins/mergeCells/cellCoords.js +30 -51
- package/plugins/mergeCells/cellCoords.mjs +35 -54
- package/plugins/mergeCells/cellsCollection.js +13 -84
- package/plugins/mergeCells/cellsCollection.mjs +18 -69
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
- package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
- package/plugins/mergeCells/index.js +0 -2
- package/plugins/mergeCells/mergeCells.js +130 -333
- package/plugins/mergeCells/mergeCells.mjs +130 -292
- package/plugins/mergeCells/utils.js +0 -3
- package/plugins/mergeCells/utils.mjs +0 -1
- package/plugins/multiColumnSorting/domHelpers.js +3 -15
- package/plugins/multiColumnSorting/domHelpers.mjs +3 -7
- package/plugins/multiColumnSorting/index.js +0 -2
- package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
- package/plugins/multiColumnSorting/rootComparator.js +2 -26
- package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
- package/plugins/multiColumnSorting/utils.js +0 -7
- package/plugins/multiColumnSorting/utils.mjs +3 -8
- package/plugins/multipleSelectionHandles/index.js +0 -2
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
- package/plugins/nestedHeaders/index.js +0 -2
- package/plugins/nestedHeaders/nestedHeaders.js +79 -200
- package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
- package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
- package/plugins/nestedHeaders/stateManager/index.js +24 -107
- package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
- package/plugins/nestedHeaders/stateManager/utils.js +19 -22
- package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
- package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
- package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
- package/plugins/nestedRows/data/dataManager.js +40 -161
- package/plugins/nestedRows/data/dataManager.mjs +44 -148
- package/plugins/nestedRows/index.js +0 -2
- package/plugins/nestedRows/nestedRows.js +41 -119
- package/plugins/nestedRows/nestedRows.mjs +41 -86
- package/plugins/nestedRows/ui/_base.js +1 -9
- package/plugins/nestedRows/ui/_base.mjs +1 -8
- package/plugins/nestedRows/ui/collapsing.js +28 -134
- package/plugins/nestedRows/ui/collapsing.mjs +34 -118
- package/plugins/nestedRows/ui/contextMenu.js +2 -53
- package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
- package/plugins/nestedRows/ui/headers.js +5 -50
- package/plugins/nestedRows/ui/headers.mjs +11 -41
- package/plugins/nestedRows/utils/rowMoveController.js +28 -78
- package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
- package/plugins/persistentState/index.js +0 -2
- package/plugins/persistentState/persistentState.js +10 -58
- package/plugins/persistentState/persistentState.mjs +10 -37
- package/plugins/persistentState/storage.js +9 -25
- package/plugins/persistentState/storage.mjs +12 -26
- package/plugins/registry.js +7 -51
- package/plugins/registry.mjs +8 -34
- package/plugins/search/index.js +0 -2
- package/plugins/search/search.js +16 -98
- package/plugins/search/search.mjs +16 -68
- package/plugins/touchScroll/index.js +0 -2
- package/plugins/touchScroll/touchScroll.js +15 -76
- package/plugins/touchScroll/touchScroll.mjs +15 -58
- package/plugins/trimRows/index.js +0 -2
- package/plugins/trimRows/trimRows.js +62 -88
- package/plugins/trimRows/trimRows.mjs +62 -65
- package/plugins/undoRedo/index.js +0 -14
- package/plugins/undoRedo/undoRedo.js +48 -218
- package/plugins/undoRedo/undoRedo.mjs +48 -188
- package/registry.js +0 -11
- package/registry.mjs +2 -4
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
- package/renderers/autocompleteRenderer/index.js +0 -2
- package/renderers/baseRenderer/baseRenderer.js +2 -11
- package/renderers/baseRenderer/baseRenderer.mjs +2 -9
- package/renderers/baseRenderer/index.js +0 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
- package/renderers/checkboxRenderer/index.js +0 -2
- package/renderers/htmlRenderer/htmlRenderer.js +1 -7
- package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
- package/renderers/htmlRenderer/index.js +0 -2
- package/renderers/index.js +0 -19
- package/renderers/index.mjs +3 -5
- package/renderers/numericRenderer/index.js +0 -2
- package/renderers/numericRenderer/numericRenderer.js +1 -23
- package/renderers/numericRenderer/numericRenderer.mjs +1 -10
- package/renderers/passwordRenderer/index.js +0 -2
- package/renderers/passwordRenderer/passwordRenderer.js +1 -8
- package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
- package/renderers/registry.js +7 -16
- package/renderers/registry.mjs +7 -14
- package/renderers/textRenderer/index.js +0 -2
- package/renderers/textRenderer/textRenderer.js +2 -14
- package/renderers/textRenderer/textRenderer.mjs +2 -6
- package/renderers/timeRenderer/index.js +0 -2
- package/renderers/timeRenderer/timeRenderer.js +1 -6
- package/renderers/timeRenderer/timeRenderer.mjs +1 -1
- package/selection/highlight/highlight.js +17 -73
- package/selection/highlight/highlight.mjs +31 -64
- package/selection/highlight/types/activeHeader.js +1 -21
- package/selection/highlight/types/activeHeader.mjs +6 -16
- package/selection/highlight/types/area.js +2 -22
- package/selection/highlight/types/area.mjs +10 -20
- package/selection/highlight/types/cell.js +1 -21
- package/selection/highlight/types/cell.mjs +9 -19
- package/selection/highlight/types/customSelection.js +2 -22
- package/selection/highlight/types/customSelection.mjs +11 -21
- package/selection/highlight/types/fill.js +2 -17
- package/selection/highlight/types/fill.mjs +9 -14
- package/selection/highlight/types/header.js +3 -23
- package/selection/highlight/types/header.mjs +13 -23
- package/selection/highlight/types/index.js +3 -24
- package/selection/highlight/types/index.mjs +3 -10
- package/selection/highlight/visualSelection.js +24 -74
- package/selection/highlight/visualSelection.mjs +24 -62
- package/selection/index.js +0 -14
- package/selection/mouseEventHandler.js +19 -30
- package/selection/mouseEventHandler.mjs +32 -36
- package/selection/range.js +11 -31
- package/selection/range.mjs +11 -22
- package/selection/selection.js +62 -157
- package/selection/selection.mjs +65 -132
- package/selection/transformation.js +10 -40
- package/selection/transformation.mjs +18 -45
- package/selection/utils.js +22 -70
- package/selection/utils.mjs +22 -47
- package/shortcuts/context.js +23 -78
- package/shortcuts/context.mjs +23 -55
- package/shortcuts/index.js +0 -2
- package/shortcuts/keyObserver.js +4 -17
- package/shortcuts/keyObserver.mjs +4 -12
- package/shortcuts/manager.js +16 -36
- package/shortcuts/manager.mjs +16 -33
- package/shortcuts/recorder.js +20 -47
- package/shortcuts/recorder.mjs +20 -39
- package/shortcuts/utils.js +5 -24
- package/shortcuts/utils.mjs +5 -8
- package/tableView.js +100 -270
- package/tableView.mjs +100 -248
- package/translations/changesObservable/observable.js +5 -54
- package/translations/changesObservable/observable.mjs +12 -51
- package/translations/changesObservable/observer.js +4 -32
- package/translations/changesObservable/observer.mjs +9 -29
- package/translations/changesObservable/utils.js +1 -5
- package/translations/changesObservable/utils.mjs +1 -4
- package/translations/index.js +0 -11
- package/translations/indexMapper.js +70 -158
- package/translations/indexMapper.mjs +70 -125
- package/translations/mapCollections/aggregatedCollection.js +9 -51
- package/translations/mapCollections/aggregatedCollection.mjs +12 -41
- package/translations/mapCollections/index.js +0 -7
- package/translations/mapCollections/mapCollection.js +10 -33
- package/translations/mapCollections/mapCollection.mjs +10 -22
- package/translations/maps/hidingMap.js +2 -35
- package/translations/maps/hidingMap.mjs +7 -28
- package/translations/maps/index.js +1 -24
- package/translations/maps/index.mjs +1 -3
- package/translations/maps/indexMap.js +12 -34
- package/translations/maps/indexMap.mjs +16 -32
- package/translations/maps/indexesSequence.js +3 -41
- package/translations/maps/indexesSequence.mjs +9 -32
- package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
- package/translations/maps/physicalIndexToValueMap.js +2 -39
- package/translations/maps/physicalIndexToValueMap.mjs +8 -31
- package/translations/maps/trimmingMap.js +2 -35
- package/translations/maps/trimmingMap.mjs +7 -28
- package/translations/maps/utils/actionsOnIndexes.js +1 -7
- package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
- package/translations/maps/utils/index.js +0 -13
- package/translations/maps/utils/index.mjs +0 -3
- package/translations/maps/utils/indexesSequence.js +1 -24
- package/translations/maps/utils/indexesSequence.mjs +10 -19
- package/translations/maps/utils/physicallyIndexed.js +1 -27
- package/translations/maps/utils/physicallyIndexed.mjs +11 -21
- package/utils/dataStructures/linkedList.js +15 -56
- package/utils/dataStructures/linkedList.mjs +15 -54
- package/utils/dataStructures/priorityMap.js +8 -46
- package/utils/dataStructures/priorityMap.mjs +8 -29
- package/utils/dataStructures/queue.js +6 -17
- package/utils/dataStructures/queue.mjs +6 -16
- package/utils/dataStructures/stack.js +6 -17
- package/utils/dataStructures/stack.mjs +6 -16
- package/utils/dataStructures/tree.js +11 -75
- package/utils/dataStructures/tree.mjs +11 -54
- package/utils/dataStructures/uniqueMap.js +17 -56
- package/utils/dataStructures/uniqueMap.mjs +17 -42
- package/utils/dataStructures/uniqueSet.js +5 -32
- package/utils/dataStructures/uniqueSet.mjs +5 -19
- package/utils/ghostTable.js +33 -104
- package/utils/ghostTable.mjs +35 -92
- package/utils/interval.js +10 -37
- package/utils/interval.mjs +7 -29
- package/utils/parseTable.js +11 -92
- package/utils/parseTable.mjs +11 -62
- package/utils/rootInstance.js +3 -14
- package/utils/rootInstance.mjs +3 -3
- package/utils/samplesGenerator.js +15 -51
- package/utils/samplesGenerator.mjs +17 -44
- package/utils/staticRegister.js +6 -33
- package/utils/staticRegister.mjs +6 -19
- package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
- package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
- package/validators/autocompleteValidator/index.js +0 -2
- package/validators/dateValidator/dateValidator.js +2 -21
- package/validators/dateValidator/dateValidator.mjs +2 -11
- package/validators/dateValidator/index.js +0 -2
- package/validators/index.js +0 -11
- package/validators/index.mjs +3 -5
- package/validators/numericValidator/index.js +0 -2
- package/validators/numericValidator/numericValidator.js +1 -7
- package/validators/numericValidator/numericValidator.mjs +1 -3
- package/validators/registry.js +7 -16
- package/validators/registry.mjs +7 -14
- package/validators/timeValidator/index.js +0 -2
- package/validators/timeValidator/timeValidator.js +6 -18
- package/validators/timeValidator/timeValidator.mjs +8 -13
- package/utils/sortingAlgorithms/mergeSort.js +0 -120
- package/utils/sortingAlgorithms/mergeSort.mjs +0 -110
@@ -1,9 +1,6 @@
|
|
1
1
|
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; }
|
2
|
-
|
3
2
|
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; }
|
4
|
-
|
5
3
|
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; }
|
6
|
-
|
7
4
|
import "core-js/modules/es.function.name.js";
|
8
5
|
import "core-js/modules/web.timers.js";
|
9
6
|
import "core-js/modules/es.object.keys.js";
|
@@ -18,13 +15,9 @@ import "core-js/modules/es.array.filter.js";
|
|
18
15
|
import "core-js/modules/es.object.get-own-property-descriptor.js";
|
19
16
|
import "core-js/modules/web.dom-collections.for-each.js";
|
20
17
|
import "core-js/modules/es.object.get-own-property-descriptors.js";
|
21
|
-
|
22
18
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
23
|
-
|
24
19
|
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); } }
|
25
|
-
|
26
20
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
27
|
-
|
28
21
|
import Cursor from "./cursor.mjs";
|
29
22
|
import { SEPARATOR, NO_ITEMS, predefinedItems } from "./predefinedItems.mjs";
|
30
23
|
import { filterSeparators, hasSubMenu, isDisabled, isItemHidden, isSeparator, isSelectionDisabled, normalizeSelection } from "./utils.mjs";
|
@@ -41,6 +34,7 @@ import localHooks from "../../mixins/localHooks.mjs";
|
|
41
34
|
var MIN_WIDTH = 215;
|
42
35
|
var SHORTCUTS_CONTEXT = 'menu';
|
43
36
|
var SHORTCUTS_GROUP = SHORTCUTS_CONTEXT;
|
37
|
+
|
44
38
|
/**
|
45
39
|
* @typedef MenuOptions
|
46
40
|
* @property {Menu} [parent=null] Instance of {@link Menu}.
|
@@ -56,7 +50,6 @@ var SHORTCUTS_GROUP = SHORTCUTS_CONTEXT;
|
|
56
50
|
* @private
|
57
51
|
* @class Menu
|
58
52
|
*/
|
59
|
-
|
60
53
|
var Menu = /*#__PURE__*/function () {
|
61
54
|
/**
|
62
55
|
* @param {Core} hotInstance Handsontable instance.
|
@@ -64,7 +57,6 @@ var Menu = /*#__PURE__*/function () {
|
|
64
57
|
*/
|
65
58
|
function Menu(hotInstance, options) {
|
66
59
|
_classCallCheck(this, Menu);
|
67
|
-
|
68
60
|
this.hot = hotInstance;
|
69
61
|
this.options = options || {
|
70
62
|
parent: null,
|
@@ -92,20 +84,17 @@ var Menu = /*#__PURE__*/function () {
|
|
92
84
|
this._afterScrollCallback = null;
|
93
85
|
this.registerEvents();
|
94
86
|
}
|
87
|
+
|
95
88
|
/**
|
96
89
|
* Register event listeners.
|
97
90
|
*
|
98
91
|
* @private
|
99
92
|
*/
|
100
|
-
|
101
|
-
|
102
93
|
_createClass(Menu, [{
|
103
94
|
key: "registerEvents",
|
104
95
|
value: function registerEvents() {
|
105
96
|
var _this = this;
|
106
|
-
|
107
97
|
var frame = this.hot.rootWindow;
|
108
|
-
|
109
98
|
while (frame) {
|
110
99
|
this.eventManager.addEventListener(frame.document, 'mousedown', function (event) {
|
111
100
|
return _this.onDocumentMouseDown(event);
|
@@ -116,75 +105,74 @@ var Menu = /*#__PURE__*/function () {
|
|
116
105
|
frame = getParentWindow(frame);
|
117
106
|
}
|
118
107
|
}
|
108
|
+
|
119
109
|
/**
|
120
110
|
* Set array of objects which defines menu items.
|
121
111
|
*
|
122
112
|
* @param {Array} menuItems Menu items to display.
|
123
113
|
*/
|
124
|
-
|
125
114
|
}, {
|
126
115
|
key: "setMenuItems",
|
127
116
|
value: function setMenuItems(menuItems) {
|
128
117
|
this.menuItems = menuItems;
|
129
118
|
}
|
119
|
+
|
130
120
|
/**
|
131
121
|
* Returns currently selected menu item. Returns `null` if no item was selected.
|
132
122
|
*
|
133
123
|
* @returns {object|null}
|
134
124
|
*/
|
135
|
-
|
136
125
|
}, {
|
137
126
|
key: "getSelectedItem",
|
138
127
|
value: function getSelectedItem() {
|
139
128
|
return this.hasSelectedItem() ? this.hotMenu.getSourceDataAtRow(this.hotMenu.getSelectedLast()[0]) : null;
|
140
129
|
}
|
130
|
+
|
141
131
|
/**
|
142
132
|
* Checks if the menu has selected (highlighted) any item from the menu list.
|
143
133
|
*
|
144
134
|
* @returns {boolean}
|
145
135
|
*/
|
146
|
-
|
147
136
|
}, {
|
148
137
|
key: "hasSelectedItem",
|
149
138
|
value: function hasSelectedItem() {
|
150
139
|
return Array.isArray(this.hotMenu.getSelectedLast());
|
151
140
|
}
|
141
|
+
|
152
142
|
/**
|
153
143
|
* Set offset menu position for specified area (`above`, `below`, `left` or `right`).
|
154
144
|
*
|
155
145
|
* @param {string} area Specified area name (`above`, `below`, `left` or `right`).
|
156
146
|
* @param {number} offset Offset value.
|
157
147
|
*/
|
158
|
-
|
159
148
|
}, {
|
160
149
|
key: "setOffset",
|
161
150
|
value: function setOffset(area) {
|
162
151
|
var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
163
152
|
this.offset[area] = offset;
|
164
153
|
}
|
154
|
+
|
165
155
|
/**
|
166
156
|
* Check if menu is using as sub-menu.
|
167
157
|
*
|
168
158
|
* @returns {boolean}
|
169
159
|
*/
|
170
|
-
|
171
160
|
}, {
|
172
161
|
key: "isSubMenu",
|
173
162
|
value: function isSubMenu() {
|
174
163
|
return this.parentMenu !== null;
|
175
164
|
}
|
165
|
+
|
176
166
|
/**
|
177
167
|
* Open menu.
|
178
168
|
*
|
179
169
|
* @fires Hooks#beforeContextMenuShow
|
180
170
|
* @fires Hooks#afterContextMenuShow
|
181
171
|
*/
|
182
|
-
|
183
172
|
}, {
|
184
173
|
key: "open",
|
185
174
|
value: function open() {
|
186
175
|
var _this2 = this;
|
187
|
-
|
188
176
|
this.runLocalHooks('beforeOpen');
|
189
177
|
this.container.removeAttribute('style');
|
190
178
|
this.container.style.display = 'block';
|
@@ -197,16 +185,13 @@ var Menu = /*#__PURE__*/function () {
|
|
197
185
|
if (item.key === NO_ITEMS) {
|
198
186
|
noItemsDefined = true;
|
199
187
|
}
|
200
|
-
|
201
188
|
return isItemHidden(item, _this2.hot);
|
202
189
|
});
|
203
|
-
|
204
190
|
if (filteredItems.length < 1 && !noItemsDefined) {
|
205
191
|
filteredItems.push(predefinedItems()[NO_ITEMS]);
|
206
192
|
} else if (filteredItems.length === 0) {
|
207
193
|
return;
|
208
194
|
}
|
209
|
-
|
210
195
|
filteredItems = filterSeparators(filteredItems, SEPARATOR);
|
211
196
|
var shouldAutoCloseMenu = false;
|
212
197
|
var settings = {
|
@@ -218,7 +203,6 @@ var Menu = /*#__PURE__*/function () {
|
|
218
203
|
if (isDefined(width) && width < minWidthOfMenu) {
|
219
204
|
return minWidthOfMenu;
|
220
205
|
}
|
221
|
-
|
222
206
|
return width;
|
223
207
|
},
|
224
208
|
autoRowSize: false,
|
@@ -248,9 +232,10 @@ var Menu = /*#__PURE__*/function () {
|
|
248
232
|
return filteredItems[row].name === SEPARATOR ? 1 : 23;
|
249
233
|
},
|
250
234
|
afterOnCellContextMenu: function afterOnCellContextMenu(event) {
|
251
|
-
event.preventDefault();
|
252
|
-
// why the closing menu is here. (#6507#issuecomment-582392301).
|
235
|
+
event.preventDefault();
|
253
236
|
|
237
|
+
// On the Windows platform, the "contextmenu" is triggered after the "mouseup" so that's
|
238
|
+
// why the closing menu is here. (#6507#issuecomment-582392301).
|
254
239
|
if (isWindowsOS() && shouldAutoCloseMenu && _this2.hasSelectedItem()) {
|
255
240
|
_this2.close(true);
|
256
241
|
}
|
@@ -258,7 +243,6 @@ var Menu = /*#__PURE__*/function () {
|
|
258
243
|
beforeOnCellMouseUp: function beforeOnCellMouseUp(event) {
|
259
244
|
if (_this2.hasSelectedItem()) {
|
260
245
|
shouldAutoCloseMenu = !_this2.isCommandPassive(_this2.getSelectedItem());
|
261
|
-
|
262
246
|
_this2.executeCommand(event);
|
263
247
|
}
|
264
248
|
},
|
@@ -305,152 +289,123 @@ var Menu = /*#__PURE__*/function () {
|
|
305
289
|
var config = {
|
306
290
|
group: SHORTCUTS_CONTEXT
|
307
291
|
};
|
308
|
-
|
309
292
|
var menuContextConfig = _objectSpread(_objectSpread({}, config), {}, {
|
310
293
|
runOnlyIf: function runOnlyIf(event) {
|
311
294
|
return isInput(event.target) === false || _this2.container.contains(event.target) === false;
|
312
295
|
}
|
313
|
-
});
|
314
|
-
|
296
|
+
});
|
315
297
|
|
298
|
+
// Default shortcuts for Handsontable should not be handled. Changing context will help with that.
|
316
299
|
shortcutManager.setActiveContextName('menu');
|
317
300
|
menuContext.addShortcuts([{
|
318
301
|
keys: [['Escape']],
|
319
302
|
callback: function callback() {
|
320
303
|
_this2.keyEvent = true;
|
321
|
-
|
322
304
|
_this2.close();
|
323
|
-
|
324
305
|
_this2.keyEvent = false;
|
325
306
|
}
|
326
307
|
}, {
|
327
308
|
keys: [['ArrowDown']],
|
328
309
|
callback: function callback() {
|
329
310
|
var selection = _this2.hotMenu.getSelectedLast();
|
330
|
-
|
331
311
|
_this2.keyEvent = true;
|
332
|
-
|
333
312
|
if (selection) {
|
334
313
|
_this2.selectNextCell(selection[0], selection[1]);
|
335
314
|
} else {
|
336
315
|
_this2.selectFirstCell();
|
337
316
|
}
|
338
|
-
|
339
317
|
_this2.keyEvent = false;
|
340
318
|
}
|
341
319
|
}, {
|
342
320
|
keys: [['ArrowUp']],
|
343
321
|
callback: function callback() {
|
344
322
|
var selection = _this2.hotMenu.getSelectedLast();
|
345
|
-
|
346
323
|
_this2.keyEvent = true;
|
347
|
-
|
348
324
|
if (selection) {
|
349
325
|
_this2.selectPrevCell(selection[0], selection[1]);
|
350
326
|
} else {
|
351
327
|
_this2.selectLastCell();
|
352
328
|
}
|
353
|
-
|
354
329
|
_this2.keyEvent = false;
|
355
330
|
}
|
356
331
|
}, {
|
357
332
|
keys: [['ArrowRight']],
|
358
333
|
callback: function callback() {
|
359
334
|
var selection = _this2.hotMenu.getSelectedLast();
|
360
|
-
|
361
335
|
_this2.keyEvent = true;
|
362
|
-
|
363
336
|
if (selection) {
|
364
337
|
var menu = _this2.openSubMenu(selection[0]);
|
365
|
-
|
366
338
|
if (menu) {
|
367
339
|
menu.selectFirstCell();
|
368
340
|
}
|
369
341
|
}
|
370
|
-
|
371
342
|
_this2.keyEvent = false;
|
372
343
|
}
|
373
344
|
}, {
|
374
345
|
keys: [['ArrowLeft']],
|
375
346
|
callback: function callback() {
|
376
347
|
var selection = _this2.hotMenu.getSelectedLast();
|
377
|
-
|
378
348
|
_this2.keyEvent = true;
|
379
|
-
|
380
349
|
if (selection && _this2.isSubMenu()) {
|
381
350
|
_this2.close();
|
382
|
-
|
383
351
|
if (_this2.parentMenu) {
|
384
352
|
_this2.parentMenu.hotMenu.listen();
|
385
353
|
}
|
386
354
|
}
|
387
|
-
|
388
355
|
_this2.keyEvent = false;
|
389
356
|
}
|
390
357
|
}, {
|
391
358
|
keys: [['Enter']],
|
392
359
|
callback: function callback(event) {
|
393
360
|
var selection = _this2.hotMenu.getSelectedLast();
|
394
|
-
|
395
361
|
_this2.keyEvent = true;
|
396
|
-
|
397
362
|
if (!_this2.hotMenu.getSourceDataAtRow(selection[0]).submenu) {
|
398
363
|
_this2.executeCommand(event);
|
399
|
-
|
400
364
|
_this2.close(true);
|
401
365
|
}
|
402
|
-
|
403
366
|
_this2.keyEvent = false;
|
404
367
|
}
|
405
368
|
}, {
|
406
369
|
keys: [['PageUp']],
|
407
370
|
callback: function callback() {
|
408
371
|
var selection = _this2.hotMenu.getSelectedLast();
|
409
|
-
|
410
372
|
_this2.keyEvent = true;
|
411
|
-
|
412
373
|
if (selection) {
|
413
374
|
_this2.hotMenu.selection.transformStart(-_this2.hotMenu.countVisibleRows(), 0);
|
414
375
|
} else {
|
415
376
|
_this2.selectFirstCell();
|
416
377
|
}
|
417
|
-
|
418
378
|
_this2.keyEvent = false;
|
419
379
|
}
|
420
380
|
}, {
|
421
381
|
keys: [['PageDown']],
|
422
382
|
callback: function callback() {
|
423
383
|
var selection = _this2.hotMenu.getSelectedLast();
|
424
|
-
|
425
384
|
_this2.keyEvent = true;
|
426
|
-
|
427
385
|
if (selection) {
|
428
386
|
_this2.hotMenu.selection.transformStart(_this2.hotMenu.countVisibleRows(), 0);
|
429
387
|
} else {
|
430
388
|
_this2.selectLastCell();
|
431
389
|
}
|
432
|
-
|
433
390
|
_this2.keyEvent = false;
|
434
391
|
}
|
435
392
|
}], menuContextConfig);
|
436
393
|
this.blockMainTableCallbacks();
|
437
394
|
this.runLocalHooks('afterOpen');
|
438
395
|
}
|
396
|
+
|
439
397
|
/**
|
440
398
|
* Close menu.
|
441
399
|
*
|
442
400
|
* @param {boolean} [closeParent=false] If `true` try to close parent menu if exists.
|
443
401
|
*/
|
444
|
-
|
445
402
|
}, {
|
446
403
|
key: "close",
|
447
404
|
value: function close() {
|
448
405
|
var closeParent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
449
|
-
|
450
406
|
if (!this.isOpened()) {
|
451
407
|
return;
|
452
408
|
}
|
453
|
-
|
454
409
|
if (closeParent && this.parentMenu) {
|
455
410
|
this.parentMenu.close();
|
456
411
|
} else {
|
@@ -461,33 +416,29 @@ var Menu = /*#__PURE__*/function () {
|
|
461
416
|
this.hotMenu = null;
|
462
417
|
this.hot.getSettings().outsideClickDeselects = this.origOutsideClickDeselects;
|
463
418
|
this.runLocalHooks('afterClose');
|
464
|
-
|
465
419
|
if (this.parentMenu) {
|
466
420
|
this.parentMenu.hotMenu.listen();
|
467
421
|
}
|
468
422
|
}
|
469
423
|
}
|
424
|
+
|
470
425
|
/**
|
471
426
|
* Open sub menu at the provided row index.
|
472
427
|
*
|
473
428
|
* @param {number} row Row index.
|
474
429
|
* @returns {Menu|boolean} Returns created menu or `false` if no one menu was created.
|
475
430
|
*/
|
476
|
-
|
477
431
|
}, {
|
478
432
|
key: "openSubMenu",
|
479
433
|
value: function openSubMenu(row) {
|
480
434
|
if (!this.hotMenu) {
|
481
435
|
return false;
|
482
436
|
}
|
483
|
-
|
484
437
|
var cell = this.hotMenu.getCell(row, 0);
|
485
438
|
this.closeAllSubMenus();
|
486
|
-
|
487
439
|
if (!cell || !hasSubMenu(cell)) {
|
488
440
|
return false;
|
489
441
|
}
|
490
|
-
|
491
442
|
var dataItem = this.hotMenu.getSourceDataAtRow(row);
|
492
443
|
var subMenu = new Menu(this.hot, {
|
493
444
|
parent: this,
|
@@ -502,51 +453,49 @@ var Menu = /*#__PURE__*/function () {
|
|
502
453
|
this.hotSubMenus[dataItem.key] = subMenu;
|
503
454
|
return subMenu;
|
504
455
|
}
|
456
|
+
|
505
457
|
/**
|
506
458
|
* Close sub menu at row index.
|
507
459
|
*
|
508
460
|
* @param {number} row Row index.
|
509
461
|
*/
|
510
|
-
|
511
462
|
}, {
|
512
463
|
key: "closeSubMenu",
|
513
464
|
value: function closeSubMenu(row) {
|
514
465
|
var dataItem = this.hotMenu.getSourceDataAtRow(row);
|
515
466
|
var menus = this.hotSubMenus[dataItem.key];
|
516
|
-
|
517
467
|
if (menus) {
|
518
468
|
menus.destroy();
|
519
469
|
delete this.hotSubMenus[dataItem.key];
|
520
470
|
}
|
521
471
|
}
|
472
|
+
|
522
473
|
/**
|
523
474
|
* Close all opened sub menus.
|
524
475
|
*/
|
525
|
-
|
526
476
|
}, {
|
527
477
|
key: "closeAllSubMenus",
|
528
478
|
value: function closeAllSubMenus() {
|
529
479
|
var _this3 = this;
|
530
|
-
|
531
480
|
arrayEach(this.hotMenu.getData(), function (value, row) {
|
532
481
|
return _this3.closeSubMenu(row);
|
533
482
|
});
|
534
483
|
}
|
484
|
+
|
535
485
|
/**
|
536
486
|
* Checks if all created and opened sub menus are closed.
|
537
487
|
*
|
538
488
|
* @returns {boolean}
|
539
489
|
*/
|
540
|
-
|
541
490
|
}, {
|
542
491
|
key: "isAllSubMenusClosed",
|
543
492
|
value: function isAllSubMenusClosed() {
|
544
493
|
return Object.keys(this.hotSubMenus).length === 0;
|
545
494
|
}
|
495
|
+
|
546
496
|
/**
|
547
497
|
* Destroy instance.
|
548
498
|
*/
|
549
|
-
|
550
499
|
}, {
|
551
500
|
key: "destroy",
|
552
501
|
value: function destroy() {
|
@@ -555,50 +504,50 @@ var Menu = /*#__PURE__*/function () {
|
|
555
504
|
this.close();
|
556
505
|
this.parentMenu = null;
|
557
506
|
this.eventManager.destroy();
|
558
|
-
|
559
507
|
if (menuContainerParentElement) {
|
560
508
|
menuContainerParentElement.removeChild(this.container);
|
561
509
|
}
|
562
510
|
}
|
511
|
+
|
563
512
|
/**
|
564
513
|
* Checks if menu was opened.
|
565
514
|
*
|
566
515
|
* @returns {boolean} Returns `true` if menu was opened.
|
567
516
|
*/
|
568
|
-
|
569
517
|
}, {
|
570
518
|
key: "isOpened",
|
571
519
|
value: function isOpened() {
|
572
520
|
return this.hotMenu !== null;
|
573
521
|
}
|
522
|
+
|
574
523
|
/**
|
575
524
|
* Execute menu command.
|
576
525
|
*
|
526
|
+
* The `executeCommand()` method works only for selected cells.
|
527
|
+
*
|
528
|
+
* When no cells are selected, `executeCommand()` doesn't do anything.
|
529
|
+
*
|
577
530
|
* @param {Event} [event] The mouse event object.
|
578
531
|
*/
|
579
|
-
|
580
532
|
}, {
|
581
533
|
key: "executeCommand",
|
582
534
|
value: function executeCommand(event) {
|
583
535
|
if (!this.isOpened() || !this.hasSelectedItem()) {
|
584
536
|
return;
|
585
537
|
}
|
586
|
-
|
587
538
|
var selectedItem = this.getSelectedItem();
|
588
539
|
this.runLocalHooks('select', selectedItem, event);
|
589
|
-
|
590
540
|
if (this.isCommandPassive(selectedItem)) {
|
591
541
|
return;
|
592
542
|
}
|
593
|
-
|
594
543
|
var selRanges = this.hot.getSelectedRange();
|
595
544
|
var normalizedSelection = selRanges ? normalizeSelection(selRanges) : [];
|
596
545
|
this.runLocalHooks('executeCommand', selectedItem.key, normalizedSelection, event);
|
597
|
-
|
598
546
|
if (this.isSubMenu()) {
|
599
547
|
this.parentMenu.runLocalHooks('executeCommand', selectedItem.key, normalizedSelection, event);
|
600
548
|
}
|
601
549
|
}
|
550
|
+
|
602
551
|
/**
|
603
552
|
* Checks if the passed command is passive or not. The command is passive when it's marked as
|
604
553
|
* disabled, the descriptor object contains `isCommand` property set to `false`, command
|
@@ -608,28 +557,26 @@ var Menu = /*#__PURE__*/function () {
|
|
608
557
|
* @param {object} commandDescriptor Selected menu item from the menu data source.
|
609
558
|
* @returns {boolean}
|
610
559
|
*/
|
611
|
-
|
612
560
|
}, {
|
613
561
|
key: "isCommandPassive",
|
614
562
|
value: function isCommandPassive(commandDescriptor) {
|
615
563
|
var isCommand = commandDescriptor.isCommand,
|
616
|
-
|
617
|
-
|
618
|
-
|
564
|
+
commandName = commandDescriptor.name,
|
565
|
+
disabled = commandDescriptor.disabled,
|
566
|
+
submenu = commandDescriptor.submenu;
|
619
567
|
var isItemDisabled = disabled === true || typeof disabled === 'function' && disabled.call(this.hot) === true;
|
620
568
|
return isCommand === false || commandName === SEPARATOR || isItemDisabled === true || submenu;
|
621
569
|
}
|
570
|
+
|
622
571
|
/**
|
623
572
|
* Set menu position based on dom event or based on literal object.
|
624
573
|
*
|
625
574
|
* @param {Event|object} coords Event or literal Object with coordinates.
|
626
575
|
*/
|
627
|
-
|
628
576
|
}, {
|
629
577
|
key: "setPosition",
|
630
578
|
value: function setPosition(coords) {
|
631
579
|
var cursor = new Cursor(coords, this.container.ownerDocument.defaultView);
|
632
|
-
|
633
580
|
if (this.options.keepInViewport) {
|
634
581
|
if (cursor.fitsBelow(this.container)) {
|
635
582
|
this.setPositionBelowCursor(cursor);
|
@@ -638,7 +585,6 @@ var Menu = /*#__PURE__*/function () {
|
|
638
585
|
} else {
|
639
586
|
this.setPositionBelowCursor(cursor);
|
640
587
|
}
|
641
|
-
|
642
588
|
if (this.hot.isLtr()) {
|
643
589
|
this.setHorizontalPositionForLtr(cursor);
|
644
590
|
} else {
|
@@ -649,12 +595,12 @@ var Menu = /*#__PURE__*/function () {
|
|
649
595
|
this.setPositionOnRightOfCursor(cursor);
|
650
596
|
}
|
651
597
|
}
|
598
|
+
|
652
599
|
/**
|
653
600
|
* Set menu horizontal position for RTL mode.
|
654
601
|
*
|
655
602
|
* @param {Cursor} cursor `Cursor` object.
|
656
603
|
*/
|
657
|
-
|
658
604
|
}, {
|
659
605
|
key: "setHorizontalPositionForRtl",
|
660
606
|
value: function setHorizontalPositionForRtl(cursor) {
|
@@ -664,12 +610,12 @@ var Menu = /*#__PURE__*/function () {
|
|
664
610
|
this.setPositionOnRightOfCursor(cursor);
|
665
611
|
}
|
666
612
|
}
|
613
|
+
|
667
614
|
/**
|
668
615
|
* Set menu horizontal position for LTR mode.
|
669
616
|
*
|
670
617
|
* @param {Cursor} cursor `Cursor` object.
|
671
618
|
*/
|
672
|
-
|
673
619
|
}, {
|
674
620
|
key: "setHorizontalPositionForLtr",
|
675
621
|
value: function setHorizontalPositionForLtr(cursor) {
|
@@ -679,164 +625,151 @@ var Menu = /*#__PURE__*/function () {
|
|
679
625
|
this.setPositionOnLeftOfCursor(cursor);
|
680
626
|
}
|
681
627
|
}
|
628
|
+
|
682
629
|
/**
|
683
630
|
* Set menu position above cursor object.
|
684
631
|
*
|
685
632
|
* @param {Cursor} cursor `Cursor` object.
|
686
633
|
*/
|
687
|
-
|
688
634
|
}, {
|
689
635
|
key: "setPositionAboveCursor",
|
690
636
|
value: function setPositionAboveCursor(cursor) {
|
691
637
|
var top = this.offset.above + cursor.top - this.container.offsetHeight;
|
692
|
-
|
693
638
|
if (this.isSubMenu()) {
|
694
639
|
top = cursor.top + cursor.cellHeight - this.container.offsetHeight + 3;
|
695
640
|
}
|
696
|
-
|
697
641
|
this.container.style.top = "".concat(top, "px");
|
698
642
|
}
|
643
|
+
|
699
644
|
/**
|
700
645
|
* Set menu position below cursor object.
|
701
646
|
*
|
702
647
|
* @param {Cursor} cursor `Cursor` object.
|
703
648
|
*/
|
704
|
-
|
705
649
|
}, {
|
706
650
|
key: "setPositionBelowCursor",
|
707
651
|
value: function setPositionBelowCursor(cursor) {
|
708
652
|
var top = this.offset.below + cursor.top + 1;
|
709
|
-
|
710
653
|
if (this.isSubMenu()) {
|
711
654
|
top = cursor.top - 1;
|
712
655
|
}
|
713
|
-
|
714
656
|
this.container.style.top = "".concat(top, "px");
|
715
657
|
}
|
658
|
+
|
716
659
|
/**
|
717
660
|
* Set menu position on the right of cursor object.
|
718
661
|
*
|
719
662
|
* @param {Cursor} cursor `Cursor` object.
|
720
663
|
*/
|
721
|
-
|
722
664
|
}, {
|
723
665
|
key: "setPositionOnRightOfCursor",
|
724
666
|
value: function setPositionOnRightOfCursor(cursor) {
|
725
667
|
var left = cursor.left;
|
726
|
-
|
727
668
|
if (this.isSubMenu()) {
|
728
669
|
var _this$parentMenu$cont = this.parentMenu.container.getBoundingClientRect(),
|
729
|
-
|
730
|
-
|
670
|
+
parentMenuRight = _this$parentMenu$cont.right;
|
731
671
|
|
672
|
+
// move the sub menu by the width of the parent's border (usually by 1-2 pixels)
|
732
673
|
left += cursor.cellWidth + parentMenuRight - (cursor.left + cursor.cellWidth);
|
733
674
|
} else {
|
734
675
|
left += this.offset.right;
|
735
676
|
}
|
736
|
-
|
737
677
|
this.container.style.left = "".concat(left, "px");
|
738
678
|
}
|
679
|
+
|
739
680
|
/**
|
740
681
|
* Set menu position on the left of cursor object.
|
741
682
|
*
|
742
683
|
* @param {Cursor} cursor `Cursor` object.
|
743
684
|
*/
|
744
|
-
|
745
685
|
}, {
|
746
686
|
key: "setPositionOnLeftOfCursor",
|
747
687
|
value: function setPositionOnLeftOfCursor(cursor) {
|
748
688
|
var left = this.offset.left + cursor.left - this.container.offsetWidth;
|
749
|
-
|
750
689
|
if (this.isSubMenu()) {
|
751
690
|
var _this$parentMenu$cont2 = this.parentMenu.container.getBoundingClientRect(),
|
752
|
-
|
753
|
-
|
691
|
+
parentMenuLeft = _this$parentMenu$cont2.left;
|
754
692
|
|
693
|
+
// move the sub menu by the width of the parent's border (usually by 1-2 pixels)
|
755
694
|
left -= cursor.left - parentMenuLeft;
|
756
695
|
}
|
757
|
-
|
758
696
|
this.container.style.left = "".concat(left, "px");
|
759
697
|
}
|
698
|
+
|
760
699
|
/**
|
761
700
|
* Select first cell in opened menu.
|
762
701
|
*/
|
763
|
-
|
764
702
|
}, {
|
765
703
|
key: "selectFirstCell",
|
766
704
|
value: function selectFirstCell() {
|
767
705
|
var cell = this.hotMenu.getCell(0, 0);
|
768
|
-
|
769
706
|
if (isSeparator(cell) || isDisabled(cell) || isSelectionDisabled(cell)) {
|
770
707
|
this.selectNextCell(0, 0);
|
771
708
|
} else {
|
772
709
|
this.hotMenu.selectCell(0, 0);
|
773
710
|
}
|
774
711
|
}
|
712
|
+
|
775
713
|
/**
|
776
714
|
* Select last cell in opened menu.
|
777
715
|
*/
|
778
|
-
|
779
716
|
}, {
|
780
717
|
key: "selectLastCell",
|
781
718
|
value: function selectLastCell() {
|
782
719
|
var lastRow = this.hotMenu.countRows() - 1;
|
783
720
|
var cell = this.hotMenu.getCell(lastRow, 0);
|
784
|
-
|
785
721
|
if (isSeparator(cell) || isDisabled(cell) || isSelectionDisabled(cell)) {
|
786
722
|
this.selectPrevCell(lastRow, 0);
|
787
723
|
} else {
|
788
724
|
// disable default "scroll-to-cell" option and instead of that...
|
789
|
-
this.hotMenu.selectCell(lastRow, 0, undefined, undefined, false);
|
790
|
-
|
725
|
+
this.hotMenu.selectCell(lastRow, 0, undefined, undefined, false);
|
726
|
+
// ...scroll to the cell with "snap to the bottom" option
|
791
727
|
this.hotMenu.scrollViewportTo(lastRow, 0, true, false);
|
792
728
|
}
|
793
729
|
}
|
730
|
+
|
794
731
|
/**
|
795
732
|
* Select next cell in opened menu.
|
796
733
|
*
|
797
734
|
* @param {number} row Row index.
|
798
735
|
* @param {number} col Column index.
|
799
736
|
*/
|
800
|
-
|
801
737
|
}, {
|
802
738
|
key: "selectNextCell",
|
803
739
|
value: function selectNextCell(row, col) {
|
804
740
|
var nextRow = row + 1;
|
805
741
|
var cell = nextRow < this.hotMenu.countRows() ? this.hotMenu.getCell(nextRow, col) : null;
|
806
|
-
|
807
742
|
if (!cell) {
|
808
743
|
return;
|
809
744
|
}
|
810
|
-
|
811
745
|
if (isSeparator(cell) || isDisabled(cell) || isSelectionDisabled(cell)) {
|
812
746
|
this.selectNextCell(nextRow, col);
|
813
747
|
} else {
|
814
748
|
this.hotMenu.selectCell(nextRow, col);
|
815
749
|
}
|
816
750
|
}
|
751
|
+
|
817
752
|
/**
|
818
753
|
* Select previous cell in opened menu.
|
819
754
|
*
|
820
755
|
* @param {number} row Row index.
|
821
756
|
* @param {number} col Column index.
|
822
757
|
*/
|
823
|
-
|
824
758
|
}, {
|
825
759
|
key: "selectPrevCell",
|
826
760
|
value: function selectPrevCell(row, col) {
|
827
761
|
var prevRow = row - 1;
|
828
762
|
var cell = prevRow >= 0 ? this.hotMenu.getCell(prevRow, col) : null;
|
829
|
-
|
830
763
|
if (!cell) {
|
831
764
|
return;
|
832
765
|
}
|
833
|
-
|
834
766
|
if (isSeparator(cell) || isDisabled(cell) || isSelectionDisabled(cell)) {
|
835
767
|
this.selectPrevCell(prevRow, col);
|
836
768
|
} else {
|
837
769
|
this.hotMenu.selectCell(prevRow, col);
|
838
770
|
}
|
839
771
|
}
|
772
|
+
|
840
773
|
/**
|
841
774
|
* Menu item renderer.
|
842
775
|
*
|
@@ -848,41 +781,31 @@ var Menu = /*#__PURE__*/function () {
|
|
848
781
|
* @param {string} prop The column property if used.
|
849
782
|
* @param {string} value The cell value.
|
850
783
|
*/
|
851
|
-
|
852
784
|
}, {
|
853
785
|
key: "menuItemRenderer",
|
854
786
|
value: function menuItemRenderer(hot, TD, row, col, prop, value) {
|
855
787
|
var _this4 = this;
|
856
|
-
|
857
788
|
var item = hot.getSourceDataAtRow(row);
|
858
789
|
var wrapper = this.hot.rootDocument.createElement('div');
|
859
|
-
|
860
790
|
var isSubMenu = function isSubMenu(itemToTest) {
|
861
791
|
return hasOwnProperty(itemToTest, 'submenu');
|
862
792
|
};
|
863
|
-
|
864
793
|
var itemIsSeparator = function itemIsSeparator(itemToTest) {
|
865
794
|
return new RegExp(SEPARATOR, 'i').test(itemToTest.name);
|
866
795
|
};
|
867
|
-
|
868
796
|
var itemIsDisabled = function itemIsDisabled(itemToTest) {
|
869
797
|
return itemToTest.disabled === true || typeof itemToTest.disabled === 'function' && itemToTest.disabled.call(_this4.hot) === true;
|
870
798
|
};
|
871
|
-
|
872
799
|
var itemIsSelectionDisabled = function itemIsSelectionDisabled(itemToTest) {
|
873
800
|
return itemToTest.disableSelection;
|
874
801
|
};
|
875
|
-
|
876
802
|
var itemValue = value;
|
877
|
-
|
878
803
|
if (typeof itemValue === 'function') {
|
879
804
|
itemValue = itemValue.call(this.hot);
|
880
805
|
}
|
881
|
-
|
882
806
|
empty(TD);
|
883
807
|
addClass(wrapper, 'htItemWrapper');
|
884
808
|
TD.appendChild(wrapper);
|
885
|
-
|
886
809
|
if (itemIsSeparator(item)) {
|
887
810
|
addClass(TD, 'htSeparator');
|
888
811
|
} else if (typeof item.renderer === 'function') {
|
@@ -891,7 +814,6 @@ var Menu = /*#__PURE__*/function () {
|
|
891
814
|
} else {
|
892
815
|
fastInnerHTML(wrapper, itemValue);
|
893
816
|
}
|
894
|
-
|
895
817
|
if (itemIsDisabled(item)) {
|
896
818
|
addClass(TD, 'htDisabled');
|
897
819
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
@@ -904,7 +826,6 @@ var Menu = /*#__PURE__*/function () {
|
|
904
826
|
});
|
905
827
|
} else if (isSubMenu(item)) {
|
906
828
|
addClass(TD, 'htSubmenu');
|
907
|
-
|
908
829
|
if (itemIsSelectionDisabled(item)) {
|
909
830
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
910
831
|
return hot.deselectCell();
|
@@ -916,7 +837,6 @@ var Menu = /*#__PURE__*/function () {
|
|
916
837
|
}
|
917
838
|
} else {
|
918
839
|
removeClass(TD, ['htSubmenu', 'htDisabled']);
|
919
|
-
|
920
840
|
if (itemIsSelectionDisabled(item)) {
|
921
841
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
922
842
|
return hot.deselectCell();
|
@@ -928,6 +848,7 @@ var Menu = /*#__PURE__*/function () {
|
|
928
848
|
}
|
929
849
|
}
|
930
850
|
}
|
851
|
+
|
931
852
|
/**
|
932
853
|
* Create container/wrapper for handsontable.
|
933
854
|
*
|
@@ -935,7 +856,6 @@ var Menu = /*#__PURE__*/function () {
|
|
935
856
|
* @param {string} [name] Class name.
|
936
857
|
* @returns {HTMLElement}
|
937
858
|
*/
|
938
|
-
|
939
859
|
}, {
|
940
860
|
key: "createContainer",
|
941
861
|
value: function createContainer() {
|
@@ -943,52 +863,44 @@ var Menu = /*#__PURE__*/function () {
|
|
943
863
|
var doc = this.options.container.ownerDocument;
|
944
864
|
var className = name;
|
945
865
|
var container;
|
946
|
-
|
947
866
|
if (className) {
|
948
867
|
if (isFunction(className)) {
|
949
868
|
className = className.call(this.hot);
|
950
|
-
|
951
869
|
if (className === null || isUndefined(className)) {
|
952
870
|
className = '';
|
953
871
|
} else {
|
954
872
|
className = className.toString();
|
955
873
|
}
|
956
874
|
}
|
957
|
-
|
958
875
|
className = className.replace(/[^A-z0-9]/g, '_');
|
959
876
|
className = "".concat(this.options.className, "Sub_").concat(className);
|
960
877
|
container = doc.querySelector(".".concat(this.options.className, ".").concat(className));
|
961
878
|
}
|
962
|
-
|
963
879
|
if (!container) {
|
964
880
|
container = doc.createElement('div');
|
965
881
|
addClass(container, "htMenu ".concat(this.options.className));
|
966
|
-
|
967
882
|
if (className) {
|
968
883
|
addClass(container, className);
|
969
884
|
}
|
970
|
-
|
971
885
|
this.options.container.appendChild(container);
|
972
886
|
}
|
973
|
-
|
974
887
|
return container;
|
975
888
|
}
|
889
|
+
|
976
890
|
/**
|
977
891
|
* @private
|
978
892
|
*/
|
979
|
-
|
980
893
|
}, {
|
981
894
|
key: "blockMainTableCallbacks",
|
982
895
|
value: function blockMainTableCallbacks() {
|
983
896
|
this._afterScrollCallback = function () {};
|
984
|
-
|
985
897
|
this.hot.addHook('afterScrollVertically', this._afterScrollCallback);
|
986
898
|
this.hot.addHook('afterScrollHorizontally', this._afterScrollCallback);
|
987
899
|
}
|
900
|
+
|
988
901
|
/**
|
989
902
|
* @private
|
990
903
|
*/
|
991
|
-
|
992
904
|
}, {
|
993
905
|
key: "releaseMainTableCallbacks",
|
994
906
|
value: function releaseMainTableCallbacks() {
|
@@ -998,12 +910,12 @@ var Menu = /*#__PURE__*/function () {
|
|
998
910
|
this._afterScrollCallback = null;
|
999
911
|
}
|
1000
912
|
}
|
913
|
+
|
1001
914
|
/**
|
1002
915
|
* On after init listener.
|
1003
916
|
*
|
1004
917
|
* @private
|
1005
918
|
*/
|
1006
|
-
|
1007
919
|
}, {
|
1008
920
|
key: "onAfterInit",
|
1009
921
|
value: function onAfterInit() {
|
@@ -1014,12 +926,14 @@ var Menu = /*#__PURE__*/function () {
|
|
1014
926
|
var currentHiderWidth = parseInt(hiderStyle.width, 10);
|
1015
927
|
var realHeight = arrayReduce(data, function (accumulator, value) {
|
1016
928
|
return accumulator + (value.name === SEPARATOR ? 1 : 26);
|
1017
|
-
}, 0);
|
929
|
+
}, 0);
|
1018
930
|
|
931
|
+
// Additional 3px to menu's size because of additional border around its `table.htCore`.
|
1019
932
|
holderStyle.width = "".concat(currentHiderWidth + 3, "px");
|
1020
933
|
holderStyle.height = "".concat(realHeight + 3, "px");
|
1021
934
|
hiderStyle.height = holderStyle.height;
|
1022
935
|
}
|
936
|
+
|
1023
937
|
/**
|
1024
938
|
* On after selection listener.
|
1025
939
|
*
|
@@ -1029,7 +943,6 @@ var Menu = /*#__PURE__*/function () {
|
|
1029
943
|
* @param {number} c2 Selection end column index.
|
1030
944
|
* @param {object} preventScrolling Object with `value` property where its value change will be observed.
|
1031
945
|
*/
|
1032
|
-
|
1033
946
|
}, {
|
1034
947
|
key: "onAfterSelection",
|
1035
948
|
value: function onAfterSelection(r, c, r2, c2, preventScrolling) {
|
@@ -1037,49 +950,48 @@ var Menu = /*#__PURE__*/function () {
|
|
1037
950
|
preventScrolling.value = true;
|
1038
951
|
}
|
1039
952
|
}
|
953
|
+
|
1040
954
|
/**
|
1041
955
|
* Document mouse down listener.
|
1042
956
|
*
|
1043
957
|
* @private
|
1044
958
|
* @param {Event} event The mouse event object.
|
1045
959
|
*/
|
1046
|
-
|
1047
960
|
}, {
|
1048
961
|
key: "onDocumentMouseDown",
|
1049
962
|
value: function onDocumentMouseDown(event) {
|
1050
963
|
if (!this.isOpened()) {
|
1051
964
|
return;
|
1052
|
-
}
|
1053
|
-
|
965
|
+
}
|
1054
966
|
|
967
|
+
// Close menu when clicked element is not belongs to menu itself
|
1055
968
|
if (this.options.standalone && this.hotMenu && !isChildOf(event.target, this.hotMenu.rootElement)) {
|
1056
|
-
this.close(true);
|
969
|
+
this.close(true);
|
970
|
+
|
971
|
+
// Automatically close menu when clicked element is not belongs to menu or submenu (not necessarily to itself)
|
1057
972
|
} else if ((this.isAllSubMenusClosed() || this.isSubMenu()) && !isChildOf(event.target, '.htMenu')) {
|
1058
973
|
this.close(true);
|
1059
974
|
}
|
1060
975
|
}
|
976
|
+
|
1061
977
|
/**
|
1062
978
|
* Document's contextmenu listener.
|
1063
979
|
*
|
1064
980
|
* @private
|
1065
981
|
* @param {MouseEvent} event The mouse event object.
|
1066
982
|
*/
|
1067
|
-
|
1068
983
|
}, {
|
1069
984
|
key: "onDocumentContextMenu",
|
1070
985
|
value: function onDocumentContextMenu(event) {
|
1071
986
|
if (!this.isOpened()) {
|
1072
987
|
return;
|
1073
988
|
}
|
1074
|
-
|
1075
989
|
if (hasClass(event.target, 'htCore') && isChildOf(event.target, this.hotMenu.rootElement)) {
|
1076
990
|
event.preventDefault();
|
1077
991
|
}
|
1078
992
|
}
|
1079
993
|
}]);
|
1080
|
-
|
1081
994
|
return Menu;
|
1082
995
|
}();
|
1083
|
-
|
1084
996
|
mixin(Menu, localHooks);
|
1085
997
|
export default Menu;
|