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