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,11 +1,8 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
require("core-js/modules/es.symbol.js");
|
4
|
-
|
5
4
|
require("core-js/modules/es.symbol.description.js");
|
6
|
-
|
7
5
|
require("core-js/modules/es.symbol.iterator.js");
|
8
|
-
|
9
6
|
exports.__esModule = true;
|
10
7
|
exports.getRegisteredHotInstances = getRegisteredHotInstances;
|
11
8
|
exports.registerCustomFunctions = registerCustomFunctions;
|
@@ -15,47 +12,26 @@ exports.registerNamedExpressions = registerNamedExpressions;
|
|
15
12
|
exports.setupEngine = setupEngine;
|
16
13
|
exports.setupSheet = setupSheet;
|
17
14
|
exports.unregisterEngine = unregisterEngine;
|
18
|
-
|
19
15
|
require("core-js/modules/es.array.iterator.js");
|
20
|
-
|
21
16
|
require("core-js/modules/es.map.js");
|
22
|
-
|
23
17
|
require("core-js/modules/es.object.to-string.js");
|
24
|
-
|
25
18
|
require("core-js/modules/es.string.iterator.js");
|
26
|
-
|
27
19
|
require("core-js/modules/web.dom-collections.iterator.js");
|
28
|
-
|
29
20
|
require("core-js/modules/es.array.from.js");
|
30
|
-
|
31
21
|
require("core-js/modules/es.array.map.js");
|
32
|
-
|
33
22
|
require("core-js/modules/es.array.includes.js");
|
34
|
-
|
35
23
|
require("core-js/modules/es.string.includes.js");
|
36
|
-
|
37
24
|
require("core-js/modules/es.array.splice.js");
|
38
|
-
|
39
25
|
require("core-js/modules/es.array.index-of.js");
|
40
|
-
|
41
26
|
require("core-js/modules/web.dom-collections.for-each.js");
|
42
|
-
|
43
27
|
require("core-js/modules/es.function.name.js");
|
44
|
-
|
45
28
|
var _staticRegister = _interopRequireDefault(require("../../../utils/staticRegister"));
|
46
|
-
|
47
29
|
var _mixed = require("../../../helpers/mixed");
|
48
|
-
|
49
30
|
var _console = require("../../../helpers/console");
|
50
|
-
|
51
31
|
var _formulas = require("../formulas");
|
52
|
-
|
53
32
|
var _settings = require("./settings");
|
54
|
-
|
55
33
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
56
|
-
|
57
34
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
58
|
-
|
59
35
|
/**
|
60
36
|
* Prepares and returns the collection for the engine relationship with the HoT instances.
|
61
37
|
*
|
@@ -64,30 +40,26 @@ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" =
|
|
64
40
|
function getEngineRelationshipRegistry() {
|
65
41
|
var registryKey = 'engine_relationship';
|
66
42
|
var pluginStaticRegistry = (0, _staticRegister.default)(_formulas.PLUGIN_KEY);
|
67
|
-
|
68
43
|
if (!pluginStaticRegistry.hasItem(registryKey)) {
|
69
44
|
pluginStaticRegistry.register(registryKey, new Map());
|
70
45
|
}
|
71
|
-
|
72
46
|
return pluginStaticRegistry.getItem(registryKey);
|
73
47
|
}
|
48
|
+
|
74
49
|
/**
|
75
50
|
* Prepares and returns the collection for the engine shared usage.
|
76
51
|
*
|
77
52
|
* @returns {Map}
|
78
53
|
*/
|
79
|
-
|
80
|
-
|
81
54
|
function getSharedEngineUsageRegistry() {
|
82
55
|
var registryKey = 'shared_engine_usage';
|
83
56
|
var pluginStaticRegistry = (0, _staticRegister.default)(_formulas.PLUGIN_KEY);
|
84
|
-
|
85
57
|
if (!pluginStaticRegistry.hasItem(registryKey)) {
|
86
58
|
pluginStaticRegistry.register(registryKey, new Map());
|
87
59
|
}
|
88
|
-
|
89
60
|
return pluginStaticRegistry.getItem(registryKey);
|
90
61
|
}
|
62
|
+
|
91
63
|
/**
|
92
64
|
* Setups the engine instance. It either creates a new (possibly shared) engine instance, or attaches
|
93
65
|
* the plugin to an already-existing instance.
|
@@ -95,51 +67,43 @@ function getSharedEngineUsageRegistry() {
|
|
95
67
|
* @param {Handsontable} hotInstance Handsontable instance.
|
96
68
|
* @returns {null|object} Returns the engine instance if everything worked right and `null` otherwise.
|
97
69
|
*/
|
98
|
-
|
99
|
-
|
100
70
|
function setupEngine(hotInstance) {
|
101
71
|
var hotSettings = hotInstance.getSettings();
|
102
72
|
var pluginSettings = hotSettings[_formulas.PLUGIN_KEY];
|
103
73
|
var engineConfigItem = pluginSettings === null || pluginSettings === void 0 ? void 0 : pluginSettings.engine;
|
104
|
-
|
105
74
|
if (pluginSettings === true) {
|
106
75
|
return null;
|
107
76
|
}
|
108
|
-
|
109
77
|
if ((0, _mixed.isUndefined)(engineConfigItem)) {
|
110
78
|
return null;
|
111
|
-
}
|
112
|
-
|
79
|
+
}
|
113
80
|
|
81
|
+
// `engine.hyperformula` or `engine` is the engine class
|
114
82
|
if (typeof engineConfigItem.hyperformula === 'function' || typeof engineConfigItem === 'function') {
|
115
83
|
var _engineConfigItem$hyp;
|
84
|
+
return registerEngine((_engineConfigItem$hyp = engineConfigItem.hyperformula) !== null && _engineConfigItem$hyp !== void 0 ? _engineConfigItem$hyp : engineConfigItem, hotSettings, hotInstance);
|
116
85
|
|
117
|
-
|
86
|
+
// `engine` is the engine instance
|
118
87
|
} else if (_typeof(engineConfigItem) === 'object' && (0, _mixed.isUndefined)(engineConfigItem.hyperformula)) {
|
119
88
|
var engineRelationship = getEngineRelationshipRegistry();
|
120
89
|
var sharedEngineUsage = getSharedEngineUsageRegistry().get(engineConfigItem);
|
121
|
-
|
122
90
|
if (!engineRelationship.has(engineConfigItem)) {
|
123
91
|
engineRelationship.set(engineConfigItem, []);
|
124
92
|
}
|
125
|
-
|
126
93
|
engineRelationship.get(engineConfigItem).push(hotInstance);
|
127
|
-
|
128
94
|
if (sharedEngineUsage) {
|
129
95
|
sharedEngineUsage.push(hotInstance.guid);
|
130
96
|
}
|
131
|
-
|
132
97
|
if (!engineConfigItem.getConfig().licenseKey) {
|
133
98
|
engineConfigItem.updateConfig({
|
134
99
|
licenseKey: _settings.DEFAULT_LICENSE_KEY
|
135
100
|
});
|
136
101
|
}
|
137
|
-
|
138
102
|
return engineConfigItem;
|
139
103
|
}
|
140
|
-
|
141
104
|
return null;
|
142
105
|
}
|
106
|
+
|
143
107
|
/**
|
144
108
|
* Registers the engine in the global register and attaches the needed event listeners.
|
145
109
|
*
|
@@ -148,22 +112,23 @@ function setupEngine(hotInstance) {
|
|
148
112
|
* @param {Handsontable} hotInstance Handsontable instance.
|
149
113
|
* @returns {object} Returns the engine instance.
|
150
114
|
*/
|
151
|
-
|
152
|
-
|
153
115
|
function registerEngine(engineClass, hotSettings, hotInstance) {
|
154
116
|
var pluginSettings = hotSettings[_formulas.PLUGIN_KEY];
|
155
117
|
var engineSettings = (0, _settings.getEngineSettingsWithDefaultsAndOverrides)(hotSettings);
|
156
118
|
var engineRegistry = getEngineRelationshipRegistry();
|
157
119
|
var sharedEngineRegistry = getSharedEngineUsageRegistry();
|
158
120
|
registerCustomFunctions(engineClass, pluginSettings.functions);
|
159
|
-
registerLanguage(engineClass, pluginSettings.language);
|
121
|
+
registerLanguage(engineClass, pluginSettings.language);
|
160
122
|
|
161
|
-
|
123
|
+
// Create instance
|
124
|
+
var engineInstance = engineClass.buildEmpty(engineSettings);
|
162
125
|
|
126
|
+
// Add it to global registry
|
163
127
|
engineRegistry.set(engineInstance, [hotInstance]);
|
164
128
|
sharedEngineRegistry.set(engineInstance, [hotInstance.guid]);
|
165
|
-
registerNamedExpressions(engineInstance, pluginSettings.namedExpressions);
|
129
|
+
registerNamedExpressions(engineInstance, pluginSettings.namedExpressions);
|
166
130
|
|
131
|
+
// Add hooks needed for cross-referencing sheets
|
167
132
|
engineInstance.on('sheetAdded', function () {
|
168
133
|
engineInstance.rebuildAndRecalculate();
|
169
134
|
});
|
@@ -172,23 +137,22 @@ function registerEngine(engineClass, hotSettings, hotInstance) {
|
|
172
137
|
});
|
173
138
|
return engineInstance;
|
174
139
|
}
|
140
|
+
|
175
141
|
/**
|
176
142
|
* Returns the list of the Handsontable instances linked to the specific engine instance.
|
177
143
|
*
|
178
144
|
* @param {object} engine The engine instance.
|
179
145
|
* @returns {Map<number, Handsontable>} Returns Map with Handsontable instances.
|
180
146
|
*/
|
181
|
-
|
182
|
-
|
183
147
|
function getRegisteredHotInstances(engine) {
|
184
148
|
var _engineRegistry$get;
|
185
|
-
|
186
149
|
var engineRegistry = getEngineRelationshipRegistry();
|
187
150
|
var hotInstances = engineRegistry.size === 0 ? [] : Array.from((_engineRegistry$get = engineRegistry.get(engine)) !== null && _engineRegistry$get !== void 0 ? _engineRegistry$get : []);
|
188
151
|
return new Map(hotInstances.map(function (hot) {
|
189
152
|
return [hot.getPlugin('formulas').sheetId, hot];
|
190
153
|
}));
|
191
154
|
}
|
155
|
+
|
192
156
|
/**
|
193
157
|
* Removes the HOT instance from the global register's engine usage array, and if there are no HOT instances left,
|
194
158
|
* unregisters the engine itself.
|
@@ -196,26 +160,20 @@ function getRegisteredHotInstances(engine) {
|
|
196
160
|
* @param {object} engine The engine instance.
|
197
161
|
* @param {string} hotInstance The Handsontable instance.
|
198
162
|
*/
|
199
|
-
|
200
|
-
|
201
163
|
function unregisterEngine(engine, hotInstance) {
|
202
164
|
if (engine) {
|
203
165
|
var engineRegistry = getEngineRelationshipRegistry();
|
204
166
|
var engineHotRelationship = engineRegistry.get(engine);
|
205
167
|
var sharedEngineRegistry = getSharedEngineUsageRegistry();
|
206
168
|
var sharedEngineUsage = sharedEngineRegistry.get(engine);
|
207
|
-
|
208
169
|
if (engineHotRelationship && engineHotRelationship.includes(hotInstance)) {
|
209
170
|
engineHotRelationship.splice(engineHotRelationship.indexOf(hotInstance), 1);
|
210
|
-
|
211
171
|
if (engineHotRelationship.length === 0) {
|
212
172
|
engineRegistry.delete(engine);
|
213
173
|
}
|
214
174
|
}
|
215
|
-
|
216
175
|
if (sharedEngineUsage && sharedEngineUsage.includes(hotInstance.guid)) {
|
217
176
|
sharedEngineUsage.splice(sharedEngineUsage.indexOf(hotInstance.guid), 1);
|
218
|
-
|
219
177
|
if (sharedEngineUsage.length === 0) {
|
220
178
|
sharedEngineRegistry.delete(engine);
|
221
179
|
engine.destroy();
|
@@ -223,21 +181,19 @@ function unregisterEngine(engine, hotInstance) {
|
|
223
181
|
}
|
224
182
|
}
|
225
183
|
}
|
184
|
+
|
226
185
|
/**
|
227
186
|
* Registers the custom functions for the engine.
|
228
187
|
*
|
229
188
|
* @param {Function} engineClass The engine class.
|
230
189
|
* @param {Array} customFunctions The custom functions array.
|
231
190
|
*/
|
232
|
-
|
233
|
-
|
234
191
|
function registerCustomFunctions(engineClass, customFunctions) {
|
235
192
|
if (customFunctions) {
|
236
193
|
customFunctions.forEach(function (func) {
|
237
194
|
var name = func.name,
|
238
|
-
|
239
|
-
|
240
|
-
|
195
|
+
plugin = func.plugin,
|
196
|
+
translations = func.translations;
|
241
197
|
try {
|
242
198
|
engineClass.registerFunction(name, plugin, translations);
|
243
199
|
} catch (e) {
|
@@ -246,18 +202,16 @@ function registerCustomFunctions(engineClass, customFunctions) {
|
|
246
202
|
});
|
247
203
|
}
|
248
204
|
}
|
205
|
+
|
249
206
|
/**
|
250
207
|
* Registers the provided language for the engine.
|
251
208
|
*
|
252
209
|
* @param {Function} engineClass The engine class.
|
253
210
|
* @param {object} languageSetting The engine's language object.
|
254
211
|
*/
|
255
|
-
|
256
|
-
|
257
212
|
function registerLanguage(engineClass, languageSetting) {
|
258
213
|
if (languageSetting) {
|
259
214
|
var langCode = languageSetting.langCode;
|
260
|
-
|
261
215
|
try {
|
262
216
|
engineClass.registerLanguage(langCode, languageSetting);
|
263
217
|
} catch (e) {
|
@@ -265,23 +219,21 @@ function registerLanguage(engineClass, languageSetting) {
|
|
265
219
|
}
|
266
220
|
}
|
267
221
|
}
|
222
|
+
|
268
223
|
/**
|
269
224
|
* Registers the provided named expressions in the engine instance.
|
270
225
|
*
|
271
226
|
* @param {object} engineInstance The engine instance.
|
272
227
|
* @param {Array} namedExpressions Array of the named expressions to be registered.
|
273
228
|
*/
|
274
|
-
|
275
|
-
|
276
229
|
function registerNamedExpressions(engineInstance, namedExpressions) {
|
277
230
|
if (namedExpressions) {
|
278
231
|
engineInstance.suspendEvaluation();
|
279
232
|
namedExpressions.forEach(function (namedExp) {
|
280
233
|
var name = namedExp.name,
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
234
|
+
expression = namedExp.expression,
|
235
|
+
scope = namedExp.scope,
|
236
|
+
options = namedExp.options;
|
285
237
|
try {
|
286
238
|
engineInstance.addNamedExpression(name, expression, scope, options);
|
287
239
|
} catch (e) {
|
@@ -291,6 +243,7 @@ function registerNamedExpressions(engineInstance, namedExpressions) {
|
|
291
243
|
engineInstance.resumeEvaluation();
|
292
244
|
}
|
293
245
|
}
|
246
|
+
|
294
247
|
/**
|
295
248
|
* Sets up a new sheet.
|
296
249
|
*
|
@@ -298,12 +251,9 @@ function registerNamedExpressions(engineInstance, namedExpressions) {
|
|
298
251
|
* @param {string} sheetName The new sheet name.
|
299
252
|
* @returns {*}
|
300
253
|
*/
|
301
|
-
|
302
|
-
|
303
254
|
function setupSheet(engineInstance, sheetName) {
|
304
255
|
if ((0, _mixed.isUndefined)(sheetName) || !engineInstance.doesSheetExist(sheetName)) {
|
305
256
|
sheetName = engineInstance.addSheet(sheetName);
|
306
257
|
}
|
307
|
-
|
308
258
|
return sheetName;
|
309
259
|
}
|
@@ -1,5 +1,4 @@
|
|
1
1
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
2
|
-
|
3
2
|
import "core-js/modules/es.array.iterator.js";
|
4
3
|
import "core-js/modules/es.map.js";
|
5
4
|
import "core-js/modules/es.object.to-string.js";
|
@@ -20,40 +19,34 @@ import staticRegister from "../../../utils/staticRegister.mjs";
|
|
20
19
|
import { isUndefined } from "../../../helpers/mixed.mjs";
|
21
20
|
import { warn } from "../../../helpers/console.mjs";
|
22
21
|
import { PLUGIN_KEY } from "../formulas.mjs";
|
23
|
-
import { DEFAULT_LICENSE_KEY, getEngineSettingsWithDefaultsAndOverrides } from "./settings.mjs";
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
*/
|
29
|
-
|
22
|
+
import { DEFAULT_LICENSE_KEY, getEngineSettingsWithDefaultsAndOverrides } from "./settings.mjs"; /**
|
23
|
+
* Prepares and returns the collection for the engine relationship with the HoT instances.
|
24
|
+
*
|
25
|
+
* @returns {Map}
|
26
|
+
*/
|
30
27
|
function getEngineRelationshipRegistry() {
|
31
28
|
var registryKey = 'engine_relationship';
|
32
29
|
var pluginStaticRegistry = staticRegister(PLUGIN_KEY);
|
33
|
-
|
34
30
|
if (!pluginStaticRegistry.hasItem(registryKey)) {
|
35
31
|
pluginStaticRegistry.register(registryKey, new Map());
|
36
32
|
}
|
37
|
-
|
38
33
|
return pluginStaticRegistry.getItem(registryKey);
|
39
34
|
}
|
35
|
+
|
40
36
|
/**
|
41
37
|
* Prepares and returns the collection for the engine shared usage.
|
42
38
|
*
|
43
39
|
* @returns {Map}
|
44
40
|
*/
|
45
|
-
|
46
|
-
|
47
41
|
function getSharedEngineUsageRegistry() {
|
48
42
|
var registryKey = 'shared_engine_usage';
|
49
43
|
var pluginStaticRegistry = staticRegister(PLUGIN_KEY);
|
50
|
-
|
51
44
|
if (!pluginStaticRegistry.hasItem(registryKey)) {
|
52
45
|
pluginStaticRegistry.register(registryKey, new Map());
|
53
46
|
}
|
54
|
-
|
55
47
|
return pluginStaticRegistry.getItem(registryKey);
|
56
48
|
}
|
49
|
+
|
57
50
|
/**
|
58
51
|
* Setups the engine instance. It either creates a new (possibly shared) engine instance, or attaches
|
59
52
|
* the plugin to an already-existing instance.
|
@@ -61,51 +54,43 @@ function getSharedEngineUsageRegistry() {
|
|
61
54
|
* @param {Handsontable} hotInstance Handsontable instance.
|
62
55
|
* @returns {null|object} Returns the engine instance if everything worked right and `null` otherwise.
|
63
56
|
*/
|
64
|
-
|
65
|
-
|
66
57
|
export function setupEngine(hotInstance) {
|
67
58
|
var hotSettings = hotInstance.getSettings();
|
68
59
|
var pluginSettings = hotSettings[PLUGIN_KEY];
|
69
60
|
var engineConfigItem = pluginSettings === null || pluginSettings === void 0 ? void 0 : pluginSettings.engine;
|
70
|
-
|
71
61
|
if (pluginSettings === true) {
|
72
62
|
return null;
|
73
63
|
}
|
74
|
-
|
75
64
|
if (isUndefined(engineConfigItem)) {
|
76
65
|
return null;
|
77
|
-
}
|
78
|
-
|
66
|
+
}
|
79
67
|
|
68
|
+
// `engine.hyperformula` or `engine` is the engine class
|
80
69
|
if (typeof engineConfigItem.hyperformula === 'function' || typeof engineConfigItem === 'function') {
|
81
70
|
var _engineConfigItem$hyp;
|
71
|
+
return registerEngine((_engineConfigItem$hyp = engineConfigItem.hyperformula) !== null && _engineConfigItem$hyp !== void 0 ? _engineConfigItem$hyp : engineConfigItem, hotSettings, hotInstance);
|
82
72
|
|
83
|
-
|
73
|
+
// `engine` is the engine instance
|
84
74
|
} else if (_typeof(engineConfigItem) === 'object' && isUndefined(engineConfigItem.hyperformula)) {
|
85
75
|
var engineRelationship = getEngineRelationshipRegistry();
|
86
76
|
var sharedEngineUsage = getSharedEngineUsageRegistry().get(engineConfigItem);
|
87
|
-
|
88
77
|
if (!engineRelationship.has(engineConfigItem)) {
|
89
78
|
engineRelationship.set(engineConfigItem, []);
|
90
79
|
}
|
91
|
-
|
92
80
|
engineRelationship.get(engineConfigItem).push(hotInstance);
|
93
|
-
|
94
81
|
if (sharedEngineUsage) {
|
95
82
|
sharedEngineUsage.push(hotInstance.guid);
|
96
83
|
}
|
97
|
-
|
98
84
|
if (!engineConfigItem.getConfig().licenseKey) {
|
99
85
|
engineConfigItem.updateConfig({
|
100
86
|
licenseKey: DEFAULT_LICENSE_KEY
|
101
87
|
});
|
102
88
|
}
|
103
|
-
|
104
89
|
return engineConfigItem;
|
105
90
|
}
|
106
|
-
|
107
91
|
return null;
|
108
92
|
}
|
93
|
+
|
109
94
|
/**
|
110
95
|
* Registers the engine in the global register and attaches the needed event listeners.
|
111
96
|
*
|
@@ -114,21 +99,23 @@ export function setupEngine(hotInstance) {
|
|
114
99
|
* @param {Handsontable} hotInstance Handsontable instance.
|
115
100
|
* @returns {object} Returns the engine instance.
|
116
101
|
*/
|
117
|
-
|
118
102
|
export function registerEngine(engineClass, hotSettings, hotInstance) {
|
119
103
|
var pluginSettings = hotSettings[PLUGIN_KEY];
|
120
104
|
var engineSettings = getEngineSettingsWithDefaultsAndOverrides(hotSettings);
|
121
105
|
var engineRegistry = getEngineRelationshipRegistry();
|
122
106
|
var sharedEngineRegistry = getSharedEngineUsageRegistry();
|
123
107
|
registerCustomFunctions(engineClass, pluginSettings.functions);
|
124
|
-
registerLanguage(engineClass, pluginSettings.language);
|
108
|
+
registerLanguage(engineClass, pluginSettings.language);
|
125
109
|
|
126
|
-
|
110
|
+
// Create instance
|
111
|
+
var engineInstance = engineClass.buildEmpty(engineSettings);
|
127
112
|
|
113
|
+
// Add it to global registry
|
128
114
|
engineRegistry.set(engineInstance, [hotInstance]);
|
129
115
|
sharedEngineRegistry.set(engineInstance, [hotInstance.guid]);
|
130
|
-
registerNamedExpressions(engineInstance, pluginSettings.namedExpressions);
|
116
|
+
registerNamedExpressions(engineInstance, pluginSettings.namedExpressions);
|
131
117
|
|
118
|
+
// Add hooks needed for cross-referencing sheets
|
132
119
|
engineInstance.on('sheetAdded', function () {
|
133
120
|
engineInstance.rebuildAndRecalculate();
|
134
121
|
});
|
@@ -137,22 +124,22 @@ export function registerEngine(engineClass, hotSettings, hotInstance) {
|
|
137
124
|
});
|
138
125
|
return engineInstance;
|
139
126
|
}
|
127
|
+
|
140
128
|
/**
|
141
129
|
* Returns the list of the Handsontable instances linked to the specific engine instance.
|
142
130
|
*
|
143
131
|
* @param {object} engine The engine instance.
|
144
132
|
* @returns {Map<number, Handsontable>} Returns Map with Handsontable instances.
|
145
133
|
*/
|
146
|
-
|
147
134
|
export function getRegisteredHotInstances(engine) {
|
148
135
|
var _engineRegistry$get;
|
149
|
-
|
150
136
|
var engineRegistry = getEngineRelationshipRegistry();
|
151
137
|
var hotInstances = engineRegistry.size === 0 ? [] : Array.from((_engineRegistry$get = engineRegistry.get(engine)) !== null && _engineRegistry$get !== void 0 ? _engineRegistry$get : []);
|
152
138
|
return new Map(hotInstances.map(function (hot) {
|
153
139
|
return [hot.getPlugin('formulas').sheetId, hot];
|
154
140
|
}));
|
155
141
|
}
|
142
|
+
|
156
143
|
/**
|
157
144
|
* Removes the HOT instance from the global register's engine usage array, and if there are no HOT instances left,
|
158
145
|
* unregisters the engine itself.
|
@@ -160,25 +147,20 @@ export function getRegisteredHotInstances(engine) {
|
|
160
147
|
* @param {object} engine The engine instance.
|
161
148
|
* @param {string} hotInstance The Handsontable instance.
|
162
149
|
*/
|
163
|
-
|
164
150
|
export function unregisterEngine(engine, hotInstance) {
|
165
151
|
if (engine) {
|
166
152
|
var engineRegistry = getEngineRelationshipRegistry();
|
167
153
|
var engineHotRelationship = engineRegistry.get(engine);
|
168
154
|
var sharedEngineRegistry = getSharedEngineUsageRegistry();
|
169
155
|
var sharedEngineUsage = sharedEngineRegistry.get(engine);
|
170
|
-
|
171
156
|
if (engineHotRelationship && engineHotRelationship.includes(hotInstance)) {
|
172
157
|
engineHotRelationship.splice(engineHotRelationship.indexOf(hotInstance), 1);
|
173
|
-
|
174
158
|
if (engineHotRelationship.length === 0) {
|
175
159
|
engineRegistry.delete(engine);
|
176
160
|
}
|
177
161
|
}
|
178
|
-
|
179
162
|
if (sharedEngineUsage && sharedEngineUsage.includes(hotInstance.guid)) {
|
180
163
|
sharedEngineUsage.splice(sharedEngineUsage.indexOf(hotInstance.guid), 1);
|
181
|
-
|
182
164
|
if (sharedEngineUsage.length === 0) {
|
183
165
|
sharedEngineRegistry.delete(engine);
|
184
166
|
engine.destroy();
|
@@ -186,20 +168,19 @@ export function unregisterEngine(engine, hotInstance) {
|
|
186
168
|
}
|
187
169
|
}
|
188
170
|
}
|
171
|
+
|
189
172
|
/**
|
190
173
|
* Registers the custom functions for the engine.
|
191
174
|
*
|
192
175
|
* @param {Function} engineClass The engine class.
|
193
176
|
* @param {Array} customFunctions The custom functions array.
|
194
177
|
*/
|
195
|
-
|
196
178
|
export function registerCustomFunctions(engineClass, customFunctions) {
|
197
179
|
if (customFunctions) {
|
198
180
|
customFunctions.forEach(function (func) {
|
199
181
|
var name = func.name,
|
200
|
-
|
201
|
-
|
202
|
-
|
182
|
+
plugin = func.plugin,
|
183
|
+
translations = func.translations;
|
203
184
|
try {
|
204
185
|
engineClass.registerFunction(name, plugin, translations);
|
205
186
|
} catch (e) {
|
@@ -208,17 +189,16 @@ export function registerCustomFunctions(engineClass, customFunctions) {
|
|
208
189
|
});
|
209
190
|
}
|
210
191
|
}
|
192
|
+
|
211
193
|
/**
|
212
194
|
* Registers the provided language for the engine.
|
213
195
|
*
|
214
196
|
* @param {Function} engineClass The engine class.
|
215
197
|
* @param {object} languageSetting The engine's language object.
|
216
198
|
*/
|
217
|
-
|
218
199
|
export function registerLanguage(engineClass, languageSetting) {
|
219
200
|
if (languageSetting) {
|
220
201
|
var langCode = languageSetting.langCode;
|
221
|
-
|
222
202
|
try {
|
223
203
|
engineClass.registerLanguage(langCode, languageSetting);
|
224
204
|
} catch (e) {
|
@@ -226,22 +206,21 @@ export function registerLanguage(engineClass, languageSetting) {
|
|
226
206
|
}
|
227
207
|
}
|
228
208
|
}
|
209
|
+
|
229
210
|
/**
|
230
211
|
* Registers the provided named expressions in the engine instance.
|
231
212
|
*
|
232
213
|
* @param {object} engineInstance The engine instance.
|
233
214
|
* @param {Array} namedExpressions Array of the named expressions to be registered.
|
234
215
|
*/
|
235
|
-
|
236
216
|
export function registerNamedExpressions(engineInstance, namedExpressions) {
|
237
217
|
if (namedExpressions) {
|
238
218
|
engineInstance.suspendEvaluation();
|
239
219
|
namedExpressions.forEach(function (namedExp) {
|
240
220
|
var name = namedExp.name,
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
221
|
+
expression = namedExp.expression,
|
222
|
+
scope = namedExp.scope,
|
223
|
+
options = namedExp.options;
|
245
224
|
try {
|
246
225
|
engineInstance.addNamedExpression(name, expression, scope, options);
|
247
226
|
} catch (e) {
|
@@ -251,6 +230,7 @@ export function registerNamedExpressions(engineInstance, namedExpressions) {
|
|
251
230
|
engineInstance.resumeEvaluation();
|
252
231
|
}
|
253
232
|
}
|
233
|
+
|
254
234
|
/**
|
255
235
|
* Sets up a new sheet.
|
256
236
|
*
|
@@ -258,11 +238,9 @@ export function registerNamedExpressions(engineInstance, namedExpressions) {
|
|
258
238
|
* @param {string} sheetName The new sheet name.
|
259
239
|
* @returns {*}
|
260
240
|
*/
|
261
|
-
|
262
241
|
export function setupSheet(engineInstance, sheetName) {
|
263
242
|
if (isUndefined(sheetName) || !engineInstance.doesSheetExist(sheetName)) {
|
264
243
|
sheetName = engineInstance.addSheet(sheetName);
|
265
244
|
}
|
266
|
-
|
267
245
|
return sheetName;
|
268
246
|
}
|