handsontable 12.1.2 → 12.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/3rdparty/SheetClip/SheetClip.js +3 -32
- package/3rdparty/SheetClip/SheetClip.mjs +3 -23
- package/3rdparty/SheetClip/index.js +0 -2
- package/3rdparty/autoResize/autoResize.js +119 -145
- package/3rdparty/autoResize/autoResize.mjs +119 -143
- package/3rdparty/autoResize/index.js +0 -2
- package/3rdparty/walkontable/src/border.js +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,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,50 +509,50 @@ 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
|
*
|
531
|
+
* The `executeCommand()` method works only for selected cells.
|
532
|
+
*
|
533
|
+
* When no cells are selected, `executeCommand()` doesn't do anything.
|
534
|
+
*
|
610
535
|
* @param {Event} [event] The mouse event object.
|
611
536
|
*/
|
612
|
-
|
613
537
|
}, {
|
614
538
|
key: "executeCommand",
|
615
539
|
value: function executeCommand(event) {
|
616
540
|
if (!this.isOpened() || !this.hasSelectedItem()) {
|
617
541
|
return;
|
618
542
|
}
|
619
|
-
|
620
543
|
var selectedItem = this.getSelectedItem();
|
621
544
|
this.runLocalHooks('select', selectedItem, event);
|
622
|
-
|
623
545
|
if (this.isCommandPassive(selectedItem)) {
|
624
546
|
return;
|
625
547
|
}
|
626
|
-
|
627
548
|
var selRanges = this.hot.getSelectedRange();
|
628
549
|
var normalizedSelection = selRanges ? (0, _utils.normalizeSelection)(selRanges) : [];
|
629
550
|
this.runLocalHooks('executeCommand', selectedItem.key, normalizedSelection, event);
|
630
|
-
|
631
551
|
if (this.isSubMenu()) {
|
632
552
|
this.parentMenu.runLocalHooks('executeCommand', selectedItem.key, normalizedSelection, event);
|
633
553
|
}
|
634
554
|
}
|
555
|
+
|
635
556
|
/**
|
636
557
|
* Checks if the passed command is passive or not. The command is passive when it's marked as
|
637
558
|
* disabled, the descriptor object contains `isCommand` property set to `false`, command
|
@@ -641,28 +562,26 @@ var Menu = /*#__PURE__*/function () {
|
|
641
562
|
* @param {object} commandDescriptor Selected menu item from the menu data source.
|
642
563
|
* @returns {boolean}
|
643
564
|
*/
|
644
|
-
|
645
565
|
}, {
|
646
566
|
key: "isCommandPassive",
|
647
567
|
value: function isCommandPassive(commandDescriptor) {
|
648
568
|
var isCommand = commandDescriptor.isCommand,
|
649
|
-
|
650
|
-
|
651
|
-
|
569
|
+
commandName = commandDescriptor.name,
|
570
|
+
disabled = commandDescriptor.disabled,
|
571
|
+
submenu = commandDescriptor.submenu;
|
652
572
|
var isItemDisabled = disabled === true || typeof disabled === 'function' && disabled.call(this.hot) === true;
|
653
573
|
return isCommand === false || commandName === _predefinedItems.SEPARATOR || isItemDisabled === true || submenu;
|
654
574
|
}
|
575
|
+
|
655
576
|
/**
|
656
577
|
* Set menu position based on dom event or based on literal object.
|
657
578
|
*
|
658
579
|
* @param {Event|object} coords Event or literal Object with coordinates.
|
659
580
|
*/
|
660
|
-
|
661
581
|
}, {
|
662
582
|
key: "setPosition",
|
663
583
|
value: function setPosition(coords) {
|
664
584
|
var cursor = new _cursor.default(coords, this.container.ownerDocument.defaultView);
|
665
|
-
|
666
585
|
if (this.options.keepInViewport) {
|
667
586
|
if (cursor.fitsBelow(this.container)) {
|
668
587
|
this.setPositionBelowCursor(cursor);
|
@@ -671,7 +590,6 @@ var Menu = /*#__PURE__*/function () {
|
|
671
590
|
} else {
|
672
591
|
this.setPositionBelowCursor(cursor);
|
673
592
|
}
|
674
|
-
|
675
593
|
if (this.hot.isLtr()) {
|
676
594
|
this.setHorizontalPositionForLtr(cursor);
|
677
595
|
} else {
|
@@ -682,12 +600,12 @@ var Menu = /*#__PURE__*/function () {
|
|
682
600
|
this.setPositionOnRightOfCursor(cursor);
|
683
601
|
}
|
684
602
|
}
|
603
|
+
|
685
604
|
/**
|
686
605
|
* Set menu horizontal position for RTL mode.
|
687
606
|
*
|
688
607
|
* @param {Cursor} cursor `Cursor` object.
|
689
608
|
*/
|
690
|
-
|
691
609
|
}, {
|
692
610
|
key: "setHorizontalPositionForRtl",
|
693
611
|
value: function setHorizontalPositionForRtl(cursor) {
|
@@ -697,12 +615,12 @@ var Menu = /*#__PURE__*/function () {
|
|
697
615
|
this.setPositionOnRightOfCursor(cursor);
|
698
616
|
}
|
699
617
|
}
|
618
|
+
|
700
619
|
/**
|
701
620
|
* Set menu horizontal position for LTR mode.
|
702
621
|
*
|
703
622
|
* @param {Cursor} cursor `Cursor` object.
|
704
623
|
*/
|
705
|
-
|
706
624
|
}, {
|
707
625
|
key: "setHorizontalPositionForLtr",
|
708
626
|
value: function setHorizontalPositionForLtr(cursor) {
|
@@ -712,164 +630,151 @@ var Menu = /*#__PURE__*/function () {
|
|
712
630
|
this.setPositionOnLeftOfCursor(cursor);
|
713
631
|
}
|
714
632
|
}
|
633
|
+
|
715
634
|
/**
|
716
635
|
* Set menu position above cursor object.
|
717
636
|
*
|
718
637
|
* @param {Cursor} cursor `Cursor` object.
|
719
638
|
*/
|
720
|
-
|
721
639
|
}, {
|
722
640
|
key: "setPositionAboveCursor",
|
723
641
|
value: function setPositionAboveCursor(cursor) {
|
724
642
|
var top = this.offset.above + cursor.top - this.container.offsetHeight;
|
725
|
-
|
726
643
|
if (this.isSubMenu()) {
|
727
644
|
top = cursor.top + cursor.cellHeight - this.container.offsetHeight + 3;
|
728
645
|
}
|
729
|
-
|
730
646
|
this.container.style.top = "".concat(top, "px");
|
731
647
|
}
|
648
|
+
|
732
649
|
/**
|
733
650
|
* Set menu position below cursor object.
|
734
651
|
*
|
735
652
|
* @param {Cursor} cursor `Cursor` object.
|
736
653
|
*/
|
737
|
-
|
738
654
|
}, {
|
739
655
|
key: "setPositionBelowCursor",
|
740
656
|
value: function setPositionBelowCursor(cursor) {
|
741
657
|
var top = this.offset.below + cursor.top + 1;
|
742
|
-
|
743
658
|
if (this.isSubMenu()) {
|
744
659
|
top = cursor.top - 1;
|
745
660
|
}
|
746
|
-
|
747
661
|
this.container.style.top = "".concat(top, "px");
|
748
662
|
}
|
663
|
+
|
749
664
|
/**
|
750
665
|
* Set menu position on the right of cursor object.
|
751
666
|
*
|
752
667
|
* @param {Cursor} cursor `Cursor` object.
|
753
668
|
*/
|
754
|
-
|
755
669
|
}, {
|
756
670
|
key: "setPositionOnRightOfCursor",
|
757
671
|
value: function setPositionOnRightOfCursor(cursor) {
|
758
672
|
var left = cursor.left;
|
759
|
-
|
760
673
|
if (this.isSubMenu()) {
|
761
674
|
var _this$parentMenu$cont = this.parentMenu.container.getBoundingClientRect(),
|
762
|
-
|
763
|
-
|
675
|
+
parentMenuRight = _this$parentMenu$cont.right;
|
764
676
|
|
677
|
+
// move the sub menu by the width of the parent's border (usually by 1-2 pixels)
|
765
678
|
left += cursor.cellWidth + parentMenuRight - (cursor.left + cursor.cellWidth);
|
766
679
|
} else {
|
767
680
|
left += this.offset.right;
|
768
681
|
}
|
769
|
-
|
770
682
|
this.container.style.left = "".concat(left, "px");
|
771
683
|
}
|
684
|
+
|
772
685
|
/**
|
773
686
|
* Set menu position on the left of cursor object.
|
774
687
|
*
|
775
688
|
* @param {Cursor} cursor `Cursor` object.
|
776
689
|
*/
|
777
|
-
|
778
690
|
}, {
|
779
691
|
key: "setPositionOnLeftOfCursor",
|
780
692
|
value: function setPositionOnLeftOfCursor(cursor) {
|
781
693
|
var left = this.offset.left + cursor.left - this.container.offsetWidth;
|
782
|
-
|
783
694
|
if (this.isSubMenu()) {
|
784
695
|
var _this$parentMenu$cont2 = this.parentMenu.container.getBoundingClientRect(),
|
785
|
-
|
786
|
-
|
696
|
+
parentMenuLeft = _this$parentMenu$cont2.left;
|
787
697
|
|
698
|
+
// move the sub menu by the width of the parent's border (usually by 1-2 pixels)
|
788
699
|
left -= cursor.left - parentMenuLeft;
|
789
700
|
}
|
790
|
-
|
791
701
|
this.container.style.left = "".concat(left, "px");
|
792
702
|
}
|
703
|
+
|
793
704
|
/**
|
794
705
|
* Select first cell in opened menu.
|
795
706
|
*/
|
796
|
-
|
797
707
|
}, {
|
798
708
|
key: "selectFirstCell",
|
799
709
|
value: function selectFirstCell() {
|
800
710
|
var cell = this.hotMenu.getCell(0, 0);
|
801
|
-
|
802
711
|
if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
|
803
712
|
this.selectNextCell(0, 0);
|
804
713
|
} else {
|
805
714
|
this.hotMenu.selectCell(0, 0);
|
806
715
|
}
|
807
716
|
}
|
717
|
+
|
808
718
|
/**
|
809
719
|
* Select last cell in opened menu.
|
810
720
|
*/
|
811
|
-
|
812
721
|
}, {
|
813
722
|
key: "selectLastCell",
|
814
723
|
value: function selectLastCell() {
|
815
724
|
var lastRow = this.hotMenu.countRows() - 1;
|
816
725
|
var cell = this.hotMenu.getCell(lastRow, 0);
|
817
|
-
|
818
726
|
if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
|
819
727
|
this.selectPrevCell(lastRow, 0);
|
820
728
|
} else {
|
821
729
|
// disable default "scroll-to-cell" option and instead of that...
|
822
|
-
this.hotMenu.selectCell(lastRow, 0, undefined, undefined, false);
|
823
|
-
|
730
|
+
this.hotMenu.selectCell(lastRow, 0, undefined, undefined, false);
|
731
|
+
// ...scroll to the cell with "snap to the bottom" option
|
824
732
|
this.hotMenu.scrollViewportTo(lastRow, 0, true, false);
|
825
733
|
}
|
826
734
|
}
|
735
|
+
|
827
736
|
/**
|
828
737
|
* Select next cell in opened menu.
|
829
738
|
*
|
830
739
|
* @param {number} row Row index.
|
831
740
|
* @param {number} col Column index.
|
832
741
|
*/
|
833
|
-
|
834
742
|
}, {
|
835
743
|
key: "selectNextCell",
|
836
744
|
value: function selectNextCell(row, col) {
|
837
745
|
var nextRow = row + 1;
|
838
746
|
var cell = nextRow < this.hotMenu.countRows() ? this.hotMenu.getCell(nextRow, col) : null;
|
839
|
-
|
840
747
|
if (!cell) {
|
841
748
|
return;
|
842
749
|
}
|
843
|
-
|
844
750
|
if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
|
845
751
|
this.selectNextCell(nextRow, col);
|
846
752
|
} else {
|
847
753
|
this.hotMenu.selectCell(nextRow, col);
|
848
754
|
}
|
849
755
|
}
|
756
|
+
|
850
757
|
/**
|
851
758
|
* Select previous cell in opened menu.
|
852
759
|
*
|
853
760
|
* @param {number} row Row index.
|
854
761
|
* @param {number} col Column index.
|
855
762
|
*/
|
856
|
-
|
857
763
|
}, {
|
858
764
|
key: "selectPrevCell",
|
859
765
|
value: function selectPrevCell(row, col) {
|
860
766
|
var prevRow = row - 1;
|
861
767
|
var cell = prevRow >= 0 ? this.hotMenu.getCell(prevRow, col) : null;
|
862
|
-
|
863
768
|
if (!cell) {
|
864
769
|
return;
|
865
770
|
}
|
866
|
-
|
867
771
|
if ((0, _utils.isSeparator)(cell) || (0, _utils.isDisabled)(cell) || (0, _utils.isSelectionDisabled)(cell)) {
|
868
772
|
this.selectPrevCell(prevRow, col);
|
869
773
|
} else {
|
870
774
|
this.hotMenu.selectCell(prevRow, col);
|
871
775
|
}
|
872
776
|
}
|
777
|
+
|
873
778
|
/**
|
874
779
|
* Menu item renderer.
|
875
780
|
*
|
@@ -881,41 +786,31 @@ var Menu = /*#__PURE__*/function () {
|
|
881
786
|
* @param {string} prop The column property if used.
|
882
787
|
* @param {string} value The cell value.
|
883
788
|
*/
|
884
|
-
|
885
789
|
}, {
|
886
790
|
key: "menuItemRenderer",
|
887
791
|
value: function menuItemRenderer(hot, TD, row, col, prop, value) {
|
888
792
|
var _this4 = this;
|
889
|
-
|
890
793
|
var item = hot.getSourceDataAtRow(row);
|
891
794
|
var wrapper = this.hot.rootDocument.createElement('div');
|
892
|
-
|
893
795
|
var isSubMenu = function isSubMenu(itemToTest) {
|
894
796
|
return (0, _object.hasOwnProperty)(itemToTest, 'submenu');
|
895
797
|
};
|
896
|
-
|
897
798
|
var itemIsSeparator = function itemIsSeparator(itemToTest) {
|
898
799
|
return new RegExp(_predefinedItems.SEPARATOR, 'i').test(itemToTest.name);
|
899
800
|
};
|
900
|
-
|
901
801
|
var itemIsDisabled = function itemIsDisabled(itemToTest) {
|
902
802
|
return itemToTest.disabled === true || typeof itemToTest.disabled === 'function' && itemToTest.disabled.call(_this4.hot) === true;
|
903
803
|
};
|
904
|
-
|
905
804
|
var itemIsSelectionDisabled = function itemIsSelectionDisabled(itemToTest) {
|
906
805
|
return itemToTest.disableSelection;
|
907
806
|
};
|
908
|
-
|
909
807
|
var itemValue = value;
|
910
|
-
|
911
808
|
if (typeof itemValue === 'function') {
|
912
809
|
itemValue = itemValue.call(this.hot);
|
913
810
|
}
|
914
|
-
|
915
811
|
(0, _element.empty)(TD);
|
916
812
|
(0, _element.addClass)(wrapper, 'htItemWrapper');
|
917
813
|
TD.appendChild(wrapper);
|
918
|
-
|
919
814
|
if (itemIsSeparator(item)) {
|
920
815
|
(0, _element.addClass)(TD, 'htSeparator');
|
921
816
|
} else if (typeof item.renderer === 'function') {
|
@@ -924,7 +819,6 @@ var Menu = /*#__PURE__*/function () {
|
|
924
819
|
} else {
|
925
820
|
(0, _element.fastInnerHTML)(wrapper, itemValue);
|
926
821
|
}
|
927
|
-
|
928
822
|
if (itemIsDisabled(item)) {
|
929
823
|
(0, _element.addClass)(TD, 'htDisabled');
|
930
824
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
@@ -937,7 +831,6 @@ var Menu = /*#__PURE__*/function () {
|
|
937
831
|
});
|
938
832
|
} else if (isSubMenu(item)) {
|
939
833
|
(0, _element.addClass)(TD, 'htSubmenu');
|
940
|
-
|
941
834
|
if (itemIsSelectionDisabled(item)) {
|
942
835
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
943
836
|
return hot.deselectCell();
|
@@ -949,7 +842,6 @@ var Menu = /*#__PURE__*/function () {
|
|
949
842
|
}
|
950
843
|
} else {
|
951
844
|
(0, _element.removeClass)(TD, ['htSubmenu', 'htDisabled']);
|
952
|
-
|
953
845
|
if (itemIsSelectionDisabled(item)) {
|
954
846
|
this.eventManager.addEventListener(TD, 'mouseenter', function () {
|
955
847
|
return hot.deselectCell();
|
@@ -961,6 +853,7 @@ var Menu = /*#__PURE__*/function () {
|
|
961
853
|
}
|
962
854
|
}
|
963
855
|
}
|
856
|
+
|
964
857
|
/**
|
965
858
|
* Create container/wrapper for handsontable.
|
966
859
|
*
|
@@ -968,7 +861,6 @@ var Menu = /*#__PURE__*/function () {
|
|
968
861
|
* @param {string} [name] Class name.
|
969
862
|
* @returns {HTMLElement}
|
970
863
|
*/
|
971
|
-
|
972
864
|
}, {
|
973
865
|
key: "createContainer",
|
974
866
|
value: function createContainer() {
|
@@ -976,52 +868,44 @@ var Menu = /*#__PURE__*/function () {
|
|
976
868
|
var doc = this.options.container.ownerDocument;
|
977
869
|
var className = name;
|
978
870
|
var container;
|
979
|
-
|
980
871
|
if (className) {
|
981
872
|
if ((0, _function.isFunction)(className)) {
|
982
873
|
className = className.call(this.hot);
|
983
|
-
|
984
874
|
if (className === null || (0, _mixed.isUndefined)(className)) {
|
985
875
|
className = '';
|
986
876
|
} else {
|
987
877
|
className = className.toString();
|
988
878
|
}
|
989
879
|
}
|
990
|
-
|
991
880
|
className = className.replace(/[^A-z0-9]/g, '_');
|
992
881
|
className = "".concat(this.options.className, "Sub_").concat(className);
|
993
882
|
container = doc.querySelector(".".concat(this.options.className, ".").concat(className));
|
994
883
|
}
|
995
|
-
|
996
884
|
if (!container) {
|
997
885
|
container = doc.createElement('div');
|
998
886
|
(0, _element.addClass)(container, "htMenu ".concat(this.options.className));
|
999
|
-
|
1000
887
|
if (className) {
|
1001
888
|
(0, _element.addClass)(container, className);
|
1002
889
|
}
|
1003
|
-
|
1004
890
|
this.options.container.appendChild(container);
|
1005
891
|
}
|
1006
|
-
|
1007
892
|
return container;
|
1008
893
|
}
|
894
|
+
|
1009
895
|
/**
|
1010
896
|
* @private
|
1011
897
|
*/
|
1012
|
-
|
1013
898
|
}, {
|
1014
899
|
key: "blockMainTableCallbacks",
|
1015
900
|
value: function blockMainTableCallbacks() {
|
1016
901
|
this._afterScrollCallback = function () {};
|
1017
|
-
|
1018
902
|
this.hot.addHook('afterScrollVertically', this._afterScrollCallback);
|
1019
903
|
this.hot.addHook('afterScrollHorizontally', this._afterScrollCallback);
|
1020
904
|
}
|
905
|
+
|
1021
906
|
/**
|
1022
907
|
* @private
|
1023
908
|
*/
|
1024
|
-
|
1025
909
|
}, {
|
1026
910
|
key: "releaseMainTableCallbacks",
|
1027
911
|
value: function releaseMainTableCallbacks() {
|
@@ -1031,12 +915,12 @@ var Menu = /*#__PURE__*/function () {
|
|
1031
915
|
this._afterScrollCallback = null;
|
1032
916
|
}
|
1033
917
|
}
|
918
|
+
|
1034
919
|
/**
|
1035
920
|
* On after init listener.
|
1036
921
|
*
|
1037
922
|
* @private
|
1038
923
|
*/
|
1039
|
-
|
1040
924
|
}, {
|
1041
925
|
key: "onAfterInit",
|
1042
926
|
value: function onAfterInit() {
|
@@ -1047,12 +931,14 @@ var Menu = /*#__PURE__*/function () {
|
|
1047
931
|
var currentHiderWidth = parseInt(hiderStyle.width, 10);
|
1048
932
|
var realHeight = (0, _array.arrayReduce)(data, function (accumulator, value) {
|
1049
933
|
return accumulator + (value.name === _predefinedItems.SEPARATOR ? 1 : 26);
|
1050
|
-
}, 0);
|
934
|
+
}, 0);
|
1051
935
|
|
936
|
+
// Additional 3px to menu's size because of additional border around its `table.htCore`.
|
1052
937
|
holderStyle.width = "".concat(currentHiderWidth + 3, "px");
|
1053
938
|
holderStyle.height = "".concat(realHeight + 3, "px");
|
1054
939
|
hiderStyle.height = holderStyle.height;
|
1055
940
|
}
|
941
|
+
|
1056
942
|
/**
|
1057
943
|
* On after selection listener.
|
1058
944
|
*
|
@@ -1062,7 +948,6 @@ var Menu = /*#__PURE__*/function () {
|
|
1062
948
|
* @param {number} c2 Selection end column index.
|
1063
949
|
* @param {object} preventScrolling Object with `value` property where its value change will be observed.
|
1064
950
|
*/
|
1065
|
-
|
1066
951
|
}, {
|
1067
952
|
key: "onAfterSelection",
|
1068
953
|
value: function onAfterSelection(r, c, r2, c2, preventScrolling) {
|
@@ -1070,50 +955,49 @@ var Menu = /*#__PURE__*/function () {
|
|
1070
955
|
preventScrolling.value = true;
|
1071
956
|
}
|
1072
957
|
}
|
958
|
+
|
1073
959
|
/**
|
1074
960
|
* Document mouse down listener.
|
1075
961
|
*
|
1076
962
|
* @private
|
1077
963
|
* @param {Event} event The mouse event object.
|
1078
964
|
*/
|
1079
|
-
|
1080
965
|
}, {
|
1081
966
|
key: "onDocumentMouseDown",
|
1082
967
|
value: function onDocumentMouseDown(event) {
|
1083
968
|
if (!this.isOpened()) {
|
1084
969
|
return;
|
1085
|
-
}
|
1086
|
-
|
970
|
+
}
|
1087
971
|
|
972
|
+
// Close menu when clicked element is not belongs to menu itself
|
1088
973
|
if (this.options.standalone && this.hotMenu && !(0, _element.isChildOf)(event.target, this.hotMenu.rootElement)) {
|
1089
|
-
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)
|
1090
977
|
} else if ((this.isAllSubMenusClosed() || this.isSubMenu()) && !(0, _element.isChildOf)(event.target, '.htMenu')) {
|
1091
978
|
this.close(true);
|
1092
979
|
}
|
1093
980
|
}
|
981
|
+
|
1094
982
|
/**
|
1095
983
|
* Document's contextmenu listener.
|
1096
984
|
*
|
1097
985
|
* @private
|
1098
986
|
* @param {MouseEvent} event The mouse event object.
|
1099
987
|
*/
|
1100
|
-
|
1101
988
|
}, {
|
1102
989
|
key: "onDocumentContextMenu",
|
1103
990
|
value: function onDocumentContextMenu(event) {
|
1104
991
|
if (!this.isOpened()) {
|
1105
992
|
return;
|
1106
993
|
}
|
1107
|
-
|
1108
994
|
if ((0, _element.hasClass)(event.target, 'htCore') && (0, _element.isChildOf)(event.target, this.hotMenu.rootElement)) {
|
1109
995
|
event.preventDefault();
|
1110
996
|
}
|
1111
997
|
}
|
1112
998
|
}]);
|
1113
|
-
|
1114
999
|
return Menu;
|
1115
1000
|
}();
|
1116
|
-
|
1117
1001
|
(0, _object.mixin)(Menu, _localHooks.default);
|
1118
1002
|
var _default = Menu;
|
1119
1003
|
exports.default = _default;
|