handsontable 12.1.3 → 12.3.0-next-bb1a7c2-20221208
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 +44 -154
- package/3rdparty/walkontable/src/border.mjs +41 -136
- package/3rdparty/walkontable/src/calculator/constants.js +0 -3
- package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
- package/3rdparty/walkontable/src/calculator/index.js +0 -10
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +36 -77
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +36 -70
- package/3rdparty/walkontable/src/calculator/viewportRows.js +30 -49
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +30 -42
- package/3rdparty/walkontable/src/cell/coords.d.ts +1 -1
- package/3rdparty/walkontable/src/cell/coords.js +73 -65
- package/3rdparty/walkontable/src/cell/coords.mjs +73 -60
- package/3rdparty/walkontable/src/cell/range.d.ts +19 -16
- package/3rdparty/walkontable/src/cell/range.js +251 -231
- package/3rdparty/walkontable/src/cell/range.mjs +251 -222
- package/3rdparty/walkontable/src/core/_base.js +30 -74
- package/3rdparty/walkontable/src/core/_base.mjs +30 -67
- package/3rdparty/walkontable/src/core/clone.js +11 -44
- package/3rdparty/walkontable/src/core/clone.mjs +11 -32
- package/3rdparty/walkontable/src/core/core.js +8 -56
- package/3rdparty/walkontable/src/core/core.mjs +8 -38
- package/3rdparty/walkontable/src/event.js +41 -79
- package/3rdparty/walkontable/src/event.mjs +41 -66
- package/3rdparty/walkontable/src/facade/core.js +14 -16
- package/3rdparty/walkontable/src/facade/core.mjs +14 -13
- package/3rdparty/walkontable/src/filter/column.js +22 -17
- package/3rdparty/walkontable/src/filter/column.mjs +22 -16
- package/3rdparty/walkontable/src/filter/row.js +22 -17
- package/3rdparty/walkontable/src/filter/row.mjs +22 -16
- package/3rdparty/walkontable/src/index.js +0 -31
- package/3rdparty/walkontable/src/overlay/_base.js +38 -69
- package/3rdparty/walkontable/src/overlay/_base.mjs +38 -61
- package/3rdparty/walkontable/src/overlay/bottom.js +38 -103
- package/3rdparty/walkontable/src/overlay/bottom.mjs +38 -88
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +12 -52
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +12 -37
- package/3rdparty/walkontable/src/overlay/constants.js +0 -6
- package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
- package/3rdparty/walkontable/src/overlay/index.js +0 -17
- package/3rdparty/walkontable/src/overlay/inlineStart.js +26 -90
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +26 -75
- package/3rdparty/walkontable/src/overlay/top.js +37 -104
- package/3rdparty/walkontable/src/overlay/top.mjs +37 -89
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +14 -55
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +14 -40
- package/3rdparty/walkontable/src/overlays.js +124 -145
- package/3rdparty/walkontable/src/overlays.mjs +124 -135
- package/3rdparty/walkontable/src/renderer/_base.js +17 -19
- package/3rdparty/walkontable/src/renderer/_base.mjs +17 -17
- package/3rdparty/walkontable/src/renderer/cells.js +15 -53
- package/3rdparty/walkontable/src/renderer/cells.mjs +15 -39
- package/3rdparty/walkontable/src/renderer/colGroup.js +15 -46
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +15 -34
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +13 -49
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +13 -37
- package/3rdparty/walkontable/src/renderer/index.js +26 -35
- package/3rdparty/walkontable/src/renderer/index.mjs +26 -22
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +13 -49
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +13 -36
- package/3rdparty/walkontable/src/renderer/rows.js +11 -49
- package/3rdparty/walkontable/src/renderer/rows.mjs +11 -32
- package/3rdparty/walkontable/src/renderer/table.js +35 -48
- package/3rdparty/walkontable/src/renderer/table.mjs +35 -47
- package/3rdparty/walkontable/src/scroll.js +69 -86
- package/3rdparty/walkontable/src/scroll.mjs +69 -84
- package/3rdparty/walkontable/src/selection.js +28 -103
- package/3rdparty/walkontable/src/selection.mjs +26 -83
- package/3rdparty/walkontable/src/settings.js +25 -31
- package/3rdparty/walkontable/src/settings.mjs +25 -29
- package/3rdparty/walkontable/src/table/bottom.js +6 -34
- package/3rdparty/walkontable/src/table/bottom.mjs +6 -19
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +6 -34
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +6 -19
- package/3rdparty/walkontable/src/table/inlineStart.js +6 -34
- package/3rdparty/walkontable/src/table/inlineStart.mjs +6 -19
- package/3rdparty/walkontable/src/table/master.js +15 -54
- package/3rdparty/walkontable/src/table/master.mjs +15 -38
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +1 -16
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +1 -14
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +1 -16
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +1 -14
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +1 -10
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +1 -8
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +1 -11
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +1 -9
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +1 -10
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +1 -8
- package/3rdparty/walkontable/src/table/top.js +6 -34
- package/3rdparty/walkontable/src/table/top.mjs +6 -19
- package/3rdparty/walkontable/src/table/topInlineStartCorner.js +6 -34
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +6 -19
- package/3rdparty/walkontable/src/table.js +73 -233
- package/3rdparty/walkontable/src/table.mjs +71 -210
- package/3rdparty/walkontable/src/types.js +0 -5
- package/3rdparty/walkontable/src/types.mjs +0 -5
- package/3rdparty/walkontable/src/utils/column.js +18 -30
- package/3rdparty/walkontable/src/utils/column.mjs +18 -25
- package/3rdparty/walkontable/src/utils/nodesPool.js +16 -11
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +16 -10
- package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
- package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
- package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +7 -32
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +7 -21
- package/3rdparty/walkontable/src/utils/orderView/view.js +27 -45
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +27 -42
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +16 -14
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +16 -13
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +21 -21
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +21 -18
- package/3rdparty/walkontable/src/utils/row.js +15 -12
- package/3rdparty/walkontable/src/utils/row.mjs +15 -11
- package/3rdparty/walkontable/src/viewport.js +51 -99
- package/3rdparty/walkontable/src/viewport.mjs +51 -96
- package/CHANGELOG.md +99 -1
- package/base.d.ts +1 -0
- package/base.js +11 -17
- package/base.mjs +10 -11
- package/cellTypes/autocompleteType/autocompleteType.js +0 -4
- package/cellTypes/autocompleteType/index.js +0 -2
- package/cellTypes/checkboxType/checkboxType.js +0 -3
- package/cellTypes/checkboxType/index.js +0 -2
- package/cellTypes/dateType/dateType.js +0 -4
- package/cellTypes/dateType/index.js +0 -2
- package/cellTypes/dropdownType/dropdownType.js +0 -4
- package/cellTypes/dropdownType/index.js +0 -2
- package/cellTypes/handsontableType/handsontableType.js +0 -3
- package/cellTypes/handsontableType/index.js +0 -2
- package/cellTypes/index.js +0 -21
- package/cellTypes/index.mjs +0 -1
- package/cellTypes/numericType/index.js +0 -2
- package/cellTypes/numericType/numericType.js +0 -4
- package/cellTypes/passwordType/index.js +0 -2
- package/cellTypes/passwordType/passwordType.js +0 -3
- package/cellTypes/registry.js +10 -25
- package/cellTypes/registry.mjs +10 -20
- package/cellTypes/textType/index.js +0 -2
- package/cellTypes/textType/textType.js +0 -3
- package/cellTypes/timeType/index.js +0 -2
- package/cellTypes/timeType/timeType.js +0 -4
- package/core.d.ts +6 -2
- package/core.js +714 -1070
- package/core.mjs +717 -1015
- package/dataMap/dataMap.js +202 -236
- package/dataMap/dataMap.mjs +201 -209
- package/{dataSource.js → dataMap/dataSource.js} +29 -65
- package/{dataSource.mjs → dataMap/dataSource.mjs} +29 -57
- package/dataMap/index.js +0 -13
- package/dataMap/metaManager/index.js +33 -45
- package/dataMap/metaManager/index.mjs +33 -37
- package/dataMap/metaManager/lazyFactoryMap.js +17 -62
- package/dataMap/metaManager/lazyFactoryMap.mjs +17 -46
- package/dataMap/metaManager/metaLayers/cellMeta.js +26 -57
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +25 -41
- package/dataMap/metaManager/metaLayers/columnMeta.js +23 -24
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +24 -21
- package/dataMap/metaManager/metaLayers/globalMeta.js +30 -21
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +31 -18
- package/dataMap/metaManager/metaLayers/tableMeta.js +18 -15
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +19 -14
- package/dataMap/metaManager/metaSchema.js +173 -213
- package/dataMap/metaManager/metaSchema.mjs +173 -204
- package/dataMap/metaManager/mods/dynamicCellMeta.js +15 -35
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +15 -24
- package/dataMap/metaManager/mods/extendMetaProperties.js +14 -27
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +14 -19
- package/dataMap/metaManager/utils.js +49 -28
- package/dataMap/metaManager/utils.mjs +50 -21
- package/dataMap/replaceData.js +15 -35
- package/dataMap/replaceData.mjs +15 -23
- package/dist/handsontable.css +9 -9
- package/dist/handsontable.full.css +9 -9
- package/dist/handsontable.full.js +13065 -28165
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +108 -114
- package/dist/handsontable.js +11528 -21792
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +3 -3
- package/dist/languages/all.js +111 -240
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/ar-AR.js +50 -14
- package/dist/languages/ar-AR.min.js +1 -1
- package/dist/languages/cs-CZ.js +52 -16
- package/dist/languages/cs-CZ.min.js +1 -1
- package/dist/languages/de-CH.js +52 -16
- package/dist/languages/de-CH.min.js +1 -1
- package/dist/languages/de-DE.js +53 -17
- package/dist/languages/de-DE.min.js +1 -1
- package/dist/languages/en-US.js +56 -20
- package/dist/languages/en-US.min.js +1 -1
- package/dist/languages/es-MX.js +56 -20
- package/dist/languages/es-MX.min.js +1 -1
- package/dist/languages/fr-FR.js +55 -19
- package/dist/languages/fr-FR.min.js +1 -1
- package/dist/languages/it-IT.js +55 -19
- package/dist/languages/it-IT.min.js +1 -1
- package/dist/languages/ja-JP.js +83 -43
- package/dist/languages/ja-JP.min.js +1 -1
- package/dist/languages/ko-KR.js +84 -43
- package/dist/languages/ko-KR.min.js +1 -1
- package/dist/languages/lv-LV.js +85 -43
- package/dist/languages/lv-LV.min.js +1 -1
- package/dist/languages/nb-NO.js +86 -43
- package/dist/languages/nb-NO.min.js +1 -1
- package/dist/languages/nl-NL.js +87 -43
- package/dist/languages/nl-NL.min.js +1 -1
- package/dist/languages/pl-PL.js +88 -43
- package/dist/languages/pl-PL.min.js +1 -1
- package/dist/languages/pt-BR.js +67 -28
- package/dist/languages/pt-BR.min.js +1 -1
- package/dist/languages/ru-RU.js +67 -28
- package/dist/languages/ru-RU.min.js +1 -1
- package/dist/languages/sr-SP.js +55 -16
- package/dist/languages/sr-SP.min.js +1 -1
- package/dist/languages/zh-CN.js +55 -16
- package/dist/languages/zh-CN.min.js +1 -1
- package/dist/languages/zh-TW.js +55 -16
- package/dist/languages/zh-TW.min.js +1 -1
- package/editorManager.js +53 -113
- package/editorManager.mjs +50 -90
- package/editors/autocompleteEditor/autocompleteEditor.js +36 -138
- package/editors/autocompleteEditor/autocompleteEditor.mjs +35 -108
- package/editors/autocompleteEditor/index.js +0 -2
- package/editors/baseEditor/baseEditor.js +55 -160
- package/editors/baseEditor/baseEditor.mjs +54 -133
- package/editors/baseEditor/index.js +0 -2
- package/editors/checkboxEditor/checkboxEditor.js +8 -34
- package/editors/checkboxEditor/checkboxEditor.mjs +8 -20
- package/editors/checkboxEditor/index.js +0 -2
- package/editors/dateEditor/dateEditor.js +26 -97
- package/editors/dateEditor/dateEditor.mjs +26 -76
- package/editors/dateEditor/index.js +0 -2
- package/editors/dropdownEditor/dropdownEditor.js +7 -42
- package/editors/dropdownEditor/dropdownEditor.mjs +7 -23
- package/editors/dropdownEditor/index.js +0 -2
- package/editors/handsontableEditor/handsontableEditor.js +19 -86
- package/editors/handsontableEditor/handsontableEditor.mjs +19 -67
- package/editors/handsontableEditor/index.js +0 -2
- package/editors/index.js +0 -25
- package/editors/index.mjs +0 -1
- package/editors/numericEditor/index.js +0 -2
- package/editors/numericEditor/numericEditor.js +7 -32
- package/editors/numericEditor/numericEditor.mjs +7 -19
- package/editors/passwordEditor/index.js +0 -2
- package/editors/passwordEditor/passwordEditor.js +7 -39
- package/editors/passwordEditor/passwordEditor.mjs +7 -23
- package/editors/registry.js +13 -36
- package/editors/registry.mjs +12 -26
- package/editors/selectEditor/index.js +0 -2
- package/editors/selectEditor/selectEditor.js +27 -74
- package/editors/selectEditor/selectEditor.mjs +27 -57
- package/editors/textEditor/caretPositioner.js +0 -8
- package/editors/textEditor/caretPositioner.mjs +0 -7
- package/editors/textEditor/index.js +0 -2
- package/editors/textEditor/textEditor.js +45 -139
- package/editors/textEditor/textEditor.mjs +45 -108
- package/editors/timeEditor/index.js +0 -2
- package/editors/timeEditor/timeEditor.js +7 -37
- package/editors/timeEditor/timeEditor.mjs +7 -22
- package/eventManager.js +26 -47
- package/eventManager.mjs +27 -45
- package/helpers/array.js +22 -88
- package/helpers/array.mjs +22 -58
- package/helpers/browser.js +25 -51
- package/helpers/browser.mjs +25 -32
- package/helpers/console.js +3 -13
- package/helpers/console.mjs +3 -10
- package/helpers/data.d.ts +0 -2
- package/helpers/data.js +8 -102
- package/helpers/data.mjs +9 -80
- package/helpers/date.js +2 -3
- package/helpers/date.mjs +2 -2
- package/helpers/dom/element.js +89 -256
- package/helpers/dom/element.mjs +88 -184
- package/helpers/dom/event.js +3 -7
- package/helpers/dom/event.mjs +3 -3
- package/helpers/feature.js +21 -82
- package/helpers/feature.mjs +15 -60
- package/helpers/function.js +14 -59
- package/helpers/function.mjs +14 -45
- package/helpers/mixed.js +9 -64
- package/helpers/mixed.mjs +9 -43
- package/helpers/number.js +4 -46
- package/helpers/number.mjs +4 -23
- package/helpers/object.js +30 -77
- package/helpers/object.mjs +25 -47
- package/helpers/string.js +6 -28
- package/helpers/string.mjs +6 -14
- package/helpers/templateLiteralTag.js +0 -6
- package/helpers/templateLiteralTag.mjs +0 -2
- package/helpers/unicode.js +17 -22
- package/helpers/unicode.mjs +17 -13
- package/helpers/wrappers/jquery.js +4 -14
- package/helpers/wrappers/jquery.mjs +4 -13
- package/i18n/constants.js +50 -45
- package/i18n/constants.mjs +46 -42
- package/i18n/index.js +0 -7
- package/i18n/languages/ar-AR.js +12 -23
- package/i18n/languages/ar-AR.mjs +14 -3
- package/i18n/languages/cs-CZ.js +12 -23
- package/i18n/languages/cs-CZ.mjs +14 -3
- package/i18n/languages/de-CH.js +12 -23
- package/i18n/languages/de-CH.mjs +14 -3
- package/i18n/languages/de-DE.js +12 -23
- package/i18n/languages/de-DE.mjs +14 -3
- package/i18n/languages/en-US.js +13 -24
- package/i18n/languages/en-US.mjs +15 -4
- package/i18n/languages/es-MX.js +13 -24
- package/i18n/languages/es-MX.mjs +17 -5
- package/i18n/languages/fr-FR.js +12 -23
- package/i18n/languages/fr-FR.mjs +14 -3
- package/i18n/languages/index.js +0 -39
- package/i18n/languages/it-IT.js +12 -23
- package/i18n/languages/it-IT.mjs +14 -3
- package/i18n/languages/ja-JP.js +12 -23
- package/i18n/languages/ja-JP.mjs +14 -3
- package/i18n/languages/ko-KR.js +12 -23
- package/i18n/languages/ko-KR.mjs +14 -3
- package/i18n/languages/lv-LV.js +13 -24
- package/i18n/languages/lv-LV.mjs +17 -6
- package/i18n/languages/nb-NO.js +12 -23
- package/i18n/languages/nb-NO.mjs +14 -3
- package/i18n/languages/nl-NL.js +13 -24
- package/i18n/languages/nl-NL.mjs +17 -6
- package/i18n/languages/pl-PL.js +13 -24
- package/i18n/languages/pl-PL.mjs +16 -5
- package/i18n/languages/pt-BR.js +12 -23
- package/i18n/languages/pt-BR.mjs +14 -3
- package/i18n/languages/ru-RU.js +12 -23
- package/i18n/languages/ru-RU.mjs +14 -3
- package/i18n/languages/sr-SP.js +12 -23
- package/i18n/languages/sr-SP.mjs +14 -3
- package/i18n/languages/zh-CN.js +12 -23
- package/i18n/languages/zh-CN.mjs +14 -3
- package/i18n/languages/zh-TW.js +12 -23
- package/i18n/languages/zh-TW.mjs +14 -3
- package/i18n/phraseFormatters/index.js +4 -11
- package/i18n/phraseFormatters/index.mjs +4 -6
- package/i18n/phraseFormatters/pluralize.js +0 -5
- package/i18n/phraseFormatters/pluralize.mjs +0 -3
- package/i18n/phraseFormatters/substituteVariables.js +0 -4
- package/i18n/phraseFormatters/substituteVariables.mjs +0 -2
- package/i18n/registry.js +18 -59
- package/i18n/registry.mjs +18 -30
- package/i18n/utils.js +4 -22
- package/i18n/utils.mjs +4 -11
- package/index.d.ts +9 -0
- package/index.js +23 -58
- package/index.mjs +21 -16
- package/languages/all.js +111 -240
- package/languages/ar-AR.js +50 -14
- package/languages/ar-AR.mjs +14 -3
- package/languages/cs-CZ.js +52 -16
- package/languages/cs-CZ.mjs +14 -3
- package/languages/de-CH.js +52 -16
- package/languages/de-CH.mjs +14 -3
- package/languages/de-DE.js +53 -17
- package/languages/de-DE.mjs +14 -3
- package/languages/en-US.js +56 -20
- package/languages/en-US.mjs +15 -4
- package/languages/es-MX.js +56 -20
- package/languages/es-MX.mjs +17 -5
- package/languages/fr-FR.js +55 -19
- package/languages/fr-FR.mjs +14 -3
- package/languages/index.js +111 -240
- package/languages/it-IT.js +55 -19
- package/languages/it-IT.mjs +14 -3
- package/languages/ja-JP.js +83 -43
- package/languages/ja-JP.mjs +14 -3
- package/languages/ko-KR.js +84 -43
- package/languages/ko-KR.mjs +14 -3
- package/languages/lv-LV.js +85 -43
- package/languages/lv-LV.mjs +17 -6
- package/languages/nb-NO.js +86 -43
- package/languages/nb-NO.mjs +14 -3
- package/languages/nl-NL.js +87 -43
- package/languages/nl-NL.mjs +17 -6
- package/languages/pl-PL.js +88 -43
- package/languages/pl-PL.mjs +16 -5
- package/languages/pt-BR.js +67 -28
- package/languages/pt-BR.mjs +14 -3
- package/languages/ru-RU.js +67 -28
- package/languages/ru-RU.mjs +14 -3
- package/languages/sr-SP.js +55 -16
- package/languages/sr-SP.mjs +14 -3
- package/languages/zh-CN.js +55 -16
- package/languages/zh-CN.mjs +14 -3
- package/languages/zh-TW.js +55 -16
- package/languages/zh-TW.mjs +14 -3
- package/mixins/hooksRefRegisterer.js +1 -12
- package/mixins/hooksRefRegisterer.mjs +1 -9
- package/mixins/localHooks.js +4 -11
- package/mixins/localHooks.mjs +4 -8
- package/package.json +2 -2
- package/pluginHooks.d.ts +10 -5
- package/pluginHooks.js +376 -116
- package/pluginHooks.mjs +375 -103
- package/plugins/autoColumnSize/autoColumnSize.js +81 -174
- package/plugins/autoColumnSize/autoColumnSize.mjs +81 -139
- package/plugins/autoColumnSize/index.js +0 -2
- package/plugins/autoRowSize/autoRowSize.js +89 -160
- package/plugins/autoRowSize/autoRowSize.mjs +89 -131
- package/plugins/autoRowSize/index.js +0 -2
- package/plugins/autofill/autofill.js +53 -165
- package/plugins/autofill/autofill.mjs +53 -133
- package/plugins/autofill/index.js +0 -2
- package/plugins/autofill/utils.js +4 -26
- package/plugins/autofill/utils.mjs +4 -18
- package/plugins/base/base.js +28 -91
- package/plugins/base/base.mjs +28 -63
- package/plugins/base/index.js +0 -2
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +25 -53
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +25 -34
- package/plugins/bindRowsWithHeaders/index.js +0 -2
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +11 -42
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +11 -30
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +12 -54
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +12 -38
- package/plugins/collapsibleColumns/collapsibleColumns.js +106 -193
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +106 -162
- package/plugins/collapsibleColumns/index.js +0 -2
- package/plugins/columnSorting/columnSorting.js +58 -192
- package/plugins/columnSorting/columnSorting.mjs +58 -147
- package/plugins/columnSorting/columnStatesManager.js +27 -77
- package/plugins/columnSorting/columnStatesManager.mjs +24 -51
- package/plugins/columnSorting/domHelpers.js +2 -18
- package/plugins/columnSorting/domHelpers.mjs +2 -7
- package/plugins/columnSorting/index.js +0 -2
- package/plugins/columnSorting/rootComparator.js +5 -24
- package/plugins/columnSorting/rootComparator.mjs +5 -13
- package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
- package/plugins/columnSorting/sortFunction/checkbox.mjs +8 -12
- package/plugins/columnSorting/sortFunction/date.js +2 -19
- package/plugins/columnSorting/sortFunction/date.mjs +2 -14
- package/plugins/columnSorting/sortFunction/default.js +2 -17
- package/plugins/columnSorting/sortFunction/default.mjs +2 -14
- package/plugins/columnSorting/sortFunction/numeric.js +2 -11
- package/plugins/columnSorting/sortFunction/numeric.mjs +2 -8
- package/plugins/columnSorting/sortService/engine.js +1 -7
- package/plugins/columnSorting/sortService/engine.mjs +1 -3
- package/plugins/columnSorting/sortService/index.js +0 -5
- package/plugins/columnSorting/sortService/registry.js +6 -18
- package/plugins/columnSorting/sortService/registry.mjs +6 -10
- package/plugins/columnSorting/utils.js +9 -34
- package/plugins/columnSorting/utils.mjs +9 -15
- package/plugins/columnSummary/columnSummary.js +65 -126
- package/plugins/columnSummary/columnSummary.mjs +65 -101
- package/plugins/columnSummary/endpoints.js +33 -109
- package/plugins/columnSummary/endpoints.mjs +33 -105
- package/plugins/columnSummary/index.js +0 -2
- package/plugins/columnSummary/utils.js +0 -1
- package/plugins/comments/commentEditor.js +29 -27
- package/plugins/comments/commentEditor.mjs +29 -26
- package/plugins/comments/comments.js +106 -178
- package/plugins/comments/comments.mjs +106 -152
- package/plugins/comments/displaySwitch.js +20 -24
- package/plugins/comments/displaySwitch.mjs +20 -19
- package/plugins/comments/index.js +0 -2
- package/plugins/contextMenu/commandExecutor.js +17 -29
- package/plugins/contextMenu/commandExecutor.mjs +17 -27
- package/plugins/contextMenu/contextMenu.d.ts +4 -3
- package/plugins/contextMenu/contextMenu.js +28 -121
- package/plugins/contextMenu/contextMenu.mjs +28 -91
- package/plugins/contextMenu/cursor.js +19 -19
- package/plugins/contextMenu/cursor.mjs +19 -18
- package/plugins/contextMenu/index.js +0 -2
- package/plugins/contextMenu/itemsFactory.js +21 -35
- package/plugins/contextMenu/itemsFactory.mjs +21 -31
- package/plugins/contextMenu/menu.js +71 -180
- package/plugins/contextMenu/menu.mjs +70 -151
- package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
- package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
- package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
- package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
- package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
- package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
- package/plugins/contextMenu/predefinedItems/redo.js +1 -16
- package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/removeColumn.js +4 -39
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +4 -19
- package/plugins/contextMenu/predefinedItems/removeRow.js +4 -38
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +4 -18
- package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
- package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/separator.js +1 -2
- package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/undo.js +1 -16
- package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems.js +14 -55
- package/plugins/contextMenu/predefinedItems.mjs +16 -8
- package/plugins/contextMenu/utils.js +17 -57
- package/plugins/contextMenu/utils.mjs +17 -34
- package/plugins/copyPaste/clipboardData.js +14 -9
- package/plugins/copyPaste/clipboardData.mjs +14 -8
- package/plugins/copyPaste/contextMenuItem/copy.js +5 -32
- package/plugins/copyPaste/contextMenuItem/copy.mjs +5 -7
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.js +35 -0
- package/plugins/copyPaste/contextMenuItem/copyColumnHeadersOnly.mjs +31 -0
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.js +35 -0
- package/plugins/copyPaste/contextMenuItem/copyWithColumnGroupHeaders.mjs +31 -0
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.js +35 -0
- package/plugins/copyPaste/contextMenuItem/copyWithColumnHeaders.mjs +31 -0
- package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
- package/plugins/copyPaste/contextMenuItem/cut.mjs +2 -4
- package/plugins/copyPaste/copyPaste.d.ts +10 -2
- package/plugins/copyPaste/copyPaste.js +339 -372
- package/plugins/copyPaste/copyPaste.mjs +339 -331
- package/plugins/copyPaste/copyableRanges.js +269 -0
- package/plugins/copyPaste/copyableRanges.mjs +264 -0
- package/plugins/copyPaste/focusableElement.js +21 -55
- package/plugins/copyPaste/focusableElement.mjs +21 -45
- package/plugins/copyPaste/index.js +0 -2
- package/plugins/copyPaste/pasteEvent.js +14 -9
- package/plugins/copyPaste/pasteEvent.mjs +14 -7
- package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
- package/plugins/customBorders/contextMenuItem/bottom.mjs +0 -3
- package/plugins/customBorders/contextMenuItem/index.js +0 -11
- package/plugins/customBorders/contextMenuItem/left.js +0 -17
- package/plugins/customBorders/contextMenuItem/left.mjs +0 -3
- package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
- package/plugins/customBorders/contextMenuItem/noBorders.mjs +0 -1
- package/plugins/customBorders/contextMenuItem/right.js +0 -17
- package/plugins/customBorders/contextMenuItem/right.mjs +0 -3
- package/plugins/customBorders/contextMenuItem/top.js +0 -17
- package/plugins/customBorders/contextMenuItem/top.mjs +0 -3
- package/plugins/customBorders/customBorders.js +64 -188
- package/plugins/customBorders/customBorders.mjs +63 -153
- package/plugins/customBorders/index.js +0 -2
- package/plugins/customBorders/utils.js +13 -52
- package/plugins/customBorders/utils.mjs +13 -31
- package/plugins/dragToScroll/dragToScroll.js +23 -75
- package/plugins/dragToScroll/dragToScroll.mjs +23 -56
- package/plugins/dragToScroll/index.js +0 -2
- package/plugins/dropdownMenu/dropdownMenu.js +49 -127
- package/plugins/dropdownMenu/dropdownMenu.mjs +49 -96
- package/plugins/dropdownMenu/index.js +0 -2
- package/plugins/exportFile/dataProvider.js +34 -72
- package/plugins/exportFile/dataProvider.mjs +31 -58
- package/plugins/exportFile/exportFile.js +56 -61
- package/plugins/exportFile/exportFile.mjs +54 -37
- package/plugins/exportFile/index.js +0 -2
- package/plugins/exportFile/typeFactory.js +15 -12
- package/plugins/exportFile/typeFactory.mjs +15 -5
- package/plugins/exportFile/types/_base.js +15 -15
- package/plugins/exportFile/types/_base.mjs +15 -13
- package/plugins/exportFile/types/csv.js +8 -51
- package/plugins/exportFile/types/csv.mjs +8 -30
- package/plugins/filters/component/_base.js +25 -31
- package/plugins/filters/component/_base.mjs +25 -26
- package/plugins/filters/component/actionBar.js +13 -56
- package/plugins/filters/component/actionBar.mjs +11 -34
- package/plugins/filters/component/condition.js +22 -95
- package/plugins/filters/component/condition.mjs +20 -63
- package/plugins/filters/component/operators.js +18 -71
- package/plugins/filters/component/operators.mjs +18 -48
- package/plugins/filters/component/value.js +22 -97
- package/plugins/filters/component/value.mjs +22 -67
- package/plugins/filters/condition/beginsWith.js +3 -33
- package/plugins/filters/condition/beginsWith.mjs +3 -11
- package/plugins/filters/condition/between.js +4 -38
- package/plugins/filters/condition/between.mjs +4 -16
- package/plugins/filters/condition/byValue.js +4 -28
- package/plugins/filters/condition/byValue.mjs +4 -13
- package/plugins/filters/condition/contains.js +3 -33
- package/plugins/filters/condition/contains.mjs +3 -11
- package/plugins/filters/condition/date/after.js +3 -35
- package/plugins/filters/condition/date/after.mjs +3 -13
- package/plugins/filters/condition/date/before.js +3 -35
- package/plugins/filters/condition/date/before.mjs +3 -13
- package/plugins/filters/condition/date/today.js +1 -22
- package/plugins/filters/condition/date/today.mjs +1 -3
- package/plugins/filters/condition/date/tomorrow.js +1 -22
- package/plugins/filters/condition/date/tomorrow.mjs +1 -3
- package/plugins/filters/condition/date/yesterday.js +1 -22
- package/plugins/filters/condition/date/yesterday.mjs +1 -3
- package/plugins/filters/condition/empty.js +1 -19
- package/plugins/filters/condition/empty.mjs +1 -1
- package/plugins/filters/condition/endsWith.js +3 -33
- package/plugins/filters/condition/endsWith.mjs +3 -11
- package/plugins/filters/condition/equal.js +3 -32
- package/plugins/filters/condition/equal.mjs +3 -11
- package/plugins/filters/condition/false.js +1 -5
- package/plugins/filters/condition/false.mjs +1 -1
- package/plugins/filters/condition/greaterThan.js +3 -33
- package/plugins/filters/condition/greaterThan.mjs +3 -13
- package/plugins/filters/condition/greaterThanOrEqual.js +3 -33
- package/plugins/filters/condition/greaterThanOrEqual.mjs +3 -13
- package/plugins/filters/condition/lessThan.js +3 -33
- package/plugins/filters/condition/lessThan.mjs +3 -13
- package/plugins/filters/condition/lessThanOrEqual.js +3 -33
- package/plugins/filters/condition/lessThanOrEqual.mjs +3 -13
- package/plugins/filters/condition/none.js +1 -18
- package/plugins/filters/condition/none.mjs +1 -1
- package/plugins/filters/condition/notBetween.js +1 -19
- package/plugins/filters/condition/notBetween.mjs +1 -1
- package/plugins/filters/condition/notContains.js +1 -19
- package/plugins/filters/condition/notContains.mjs +1 -1
- package/plugins/filters/condition/notEmpty.js +1 -19
- package/plugins/filters/condition/notEmpty.mjs +1 -1
- package/plugins/filters/condition/notEqual.js +1 -19
- package/plugins/filters/condition/notEqual.mjs +1 -1
- package/plugins/filters/condition/true.js +1 -5
- package/plugins/filters/condition/true.mjs +1 -1
- package/plugins/filters/conditionCollection.js +31 -84
- package/plugins/filters/conditionCollection.mjs +39 -69
- package/plugins/filters/conditionRegisterer.js +5 -14
- package/plugins/filters/conditionRegisterer.mjs +5 -9
- package/plugins/filters/conditionUpdateObserver.js +29 -56
- package/plugins/filters/conditionUpdateObserver.mjs +29 -44
- package/plugins/filters/constants.js +15 -67
- package/plugins/filters/constants.mjs +15 -9
- package/plugins/filters/dataFilter.js +17 -20
- package/plugins/filters/dataFilter.mjs +17 -19
- package/plugins/filters/filters.js +110 -210
- package/plugins/filters/filters.mjs +110 -165
- package/plugins/filters/index.js +0 -2
- package/plugins/filters/logicalOperationRegisterer.js +3 -9
- package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
- package/plugins/filters/logicalOperations/conjunction.js +2 -19
- package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunction.js +2 -19
- package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
- package/plugins/filters/ui/_base.js +24 -62
- package/plugins/filters/ui/_base.mjs +26 -36
- package/plugins/filters/ui/input.js +13 -53
- package/plugins/filters/ui/input.mjs +13 -35
- package/plugins/filters/ui/link.js +9 -44
- package/plugins/filters/ui/link.mjs +9 -26
- package/plugins/filters/ui/multipleSelect.js +25 -113
- package/plugins/filters/ui/multipleSelect.mjs +26 -77
- package/plugins/filters/ui/radioInput.js +12 -48
- package/plugins/filters/ui/radioInput.mjs +12 -31
- package/plugins/filters/ui/select.js +20 -77
- package/plugins/filters/ui/select.mjs +20 -53
- package/plugins/filters/utils.js +6 -39
- package/plugins/filters/utils.mjs +6 -23
- package/plugins/formulas/engine/register.js +24 -74
- package/plugins/formulas/engine/register.mjs +24 -45
- package/plugins/formulas/engine/settings.js +16 -25
- package/plugins/formulas/engine/settings.mjs +16 -13
- package/plugins/formulas/formulas.js +127 -306
- package/plugins/formulas/formulas.mjs +128 -259
- package/plugins/formulas/index.js +0 -2
- package/plugins/formulas/utils.js +1 -3
- package/plugins/formulas/utils.mjs +1 -1
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +5 -39
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +5 -21
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +17 -24
- package/plugins/hiddenColumns/hiddenColumns.js +77 -150
- package/plugins/hiddenColumns/hiddenColumns.mjs +77 -109
- package/plugins/hiddenColumns/index.js +0 -2
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +5 -39
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +5 -21
- package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +17 -24
- package/plugins/hiddenRows/hiddenRows.js +75 -149
- package/plugins/hiddenRows/hiddenRows.mjs +75 -108
- package/plugins/hiddenRows/index.js +0 -2
- package/plugins/index.js +0 -71
- package/plugins/index.mjs +0 -1
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +2 -29
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +2 -13
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +2 -29
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +2 -13
- package/plugins/manualColumnFreeze/index.js +0 -2
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +27 -79
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +27 -55
- package/plugins/manualColumnMove/index.js +0 -2
- package/plugins/manualColumnMove/manualColumnMove.js +51 -135
- package/plugins/manualColumnMove/manualColumnMove.mjs +51 -107
- package/plugins/manualColumnMove/ui/_base.js +26 -31
- package/plugins/manualColumnMove/ui/_base.mjs +26 -28
- package/plugins/manualColumnMove/ui/backlight.js +7 -38
- package/plugins/manualColumnMove/ui/backlight.mjs +7 -23
- package/plugins/manualColumnMove/ui/guideline.js +7 -38
- package/plugins/manualColumnMove/ui/guideline.mjs +7 -23
- package/plugins/manualColumnResize/index.js +0 -2
- package/plugins/manualColumnResize/manualColumnResize.js +50 -144
- package/plugins/manualColumnResize/manualColumnResize.mjs +49 -119
- package/plugins/manualRowMove/index.js +0 -2
- package/plugins/manualRowMove/manualRowMove.js +51 -138
- package/plugins/manualRowMove/manualRowMove.mjs +51 -110
- package/plugins/manualRowMove/ui/_base.js +26 -28
- package/plugins/manualRowMove/ui/_base.mjs +26 -27
- package/plugins/manualRowMove/ui/backlight.js +7 -38
- package/plugins/manualRowMove/ui/backlight.mjs +7 -23
- package/plugins/manualRowMove/ui/guideline.js +7 -38
- package/plugins/manualRowMove/ui/guideline.mjs +7 -23
- package/plugins/manualRowResize/index.js +0 -2
- package/plugins/manualRowResize/manualRowResize.js +48 -139
- package/plugins/manualRowResize/manualRowResize.mjs +47 -113
- package/plugins/mergeCells/calculations/autofill.js +49 -133
- package/plugins/mergeCells/calculations/autofill.mjs +46 -117
- package/plugins/mergeCells/calculations/selection.js +22 -39
- package/plugins/mergeCells/calculations/selection.mjs +22 -36
- package/plugins/mergeCells/cellCoords.js +43 -50
- package/plugins/mergeCells/cellCoords.mjs +43 -48
- package/plugins/mergeCells/cellsCollection.js +22 -86
- package/plugins/mergeCells/cellsCollection.mjs +19 -63
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
- package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +0 -6
- package/plugins/mergeCells/index.js +0 -2
- package/plugins/mergeCells/mergeCells.js +136 -334
- package/plugins/mergeCells/mergeCells.mjs +136 -293
- package/plugins/mergeCells/utils.js +0 -3
- package/plugins/mergeCells/utils.mjs +0 -1
- package/plugins/multiColumnSorting/domHelpers.js +2 -12
- package/plugins/multiColumnSorting/domHelpers.mjs +2 -5
- package/plugins/multiColumnSorting/index.js +0 -2
- package/plugins/multiColumnSorting/multiColumnSorting.js +20 -67
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +20 -45
- package/plugins/multiColumnSorting/rootComparator.js +2 -26
- package/plugins/multiColumnSorting/rootComparator.mjs +2 -15
- package/plugins/multiColumnSorting/utils.js +0 -7
- package/plugins/multiColumnSorting/utils.mjs +0 -4
- package/plugins/multipleSelectionHandles/index.js +0 -2
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +12 -110
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +12 -88
- package/plugins/nestedHeaders/index.js +0 -2
- package/plugins/nestedHeaders/nestedHeaders.js +198 -211
- package/plugins/nestedHeaders/nestedHeaders.mjs +206 -191
- package/plugins/nestedHeaders/stateManager/headersTree.js +26 -96
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +26 -76
- package/plugins/nestedHeaders/stateManager/index.js +55 -118
- package/plugins/nestedHeaders/stateManager/index.mjs +61 -105
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +7 -18
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +12 -17
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +10 -15
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +3 -13
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +1 -3
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +3 -14
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +5 -20
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +27 -81
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +33 -71
- package/plugins/nestedHeaders/stateManager/utils.js +19 -22
- package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
- package/plugins/nestedHeaders/utils/ghostTable.js +23 -37
- package/plugins/nestedHeaders/utils/ghostTable.mjs +23 -36
- package/plugins/nestedRows/data/dataManager.js +47 -162
- package/plugins/nestedRows/data/dataManager.mjs +45 -143
- package/plugins/nestedRows/index.js +0 -2
- package/plugins/nestedRows/nestedRows.js +46 -119
- package/plugins/nestedRows/nestedRows.mjs +46 -86
- package/plugins/nestedRows/ui/_base.js +14 -8
- package/plugins/nestedRows/ui/_base.mjs +14 -7
- package/plugins/nestedRows/ui/collapsing.js +33 -133
- package/plugins/nestedRows/ui/collapsing.mjs +33 -111
- package/plugins/nestedRows/ui/contextMenu.js +9 -55
- package/plugins/nestedRows/ui/contextMenu.mjs +8 -33
- package/plugins/nestedRows/ui/headers.js +10 -49
- package/plugins/nestedRows/ui/headers.mjs +10 -34
- package/plugins/nestedRows/utils/rowMoveController.js +36 -79
- package/plugins/nestedRows/utils/rowMoveController.mjs +45 -71
- package/plugins/persistentState/index.js +0 -2
- package/plugins/persistentState/persistentState.js +16 -59
- package/plugins/persistentState/persistentState.mjs +16 -38
- package/plugins/persistentState/storage.js +22 -24
- package/plugins/persistentState/storage.mjs +22 -22
- package/plugins/registry.js +8 -52
- package/plugins/registry.mjs +8 -33
- package/plugins/search/index.js +0 -2
- package/plugins/search/search.js +22 -97
- package/plugins/search/search.mjs +22 -68
- package/plugins/touchScroll/index.js +0 -2
- package/plugins/touchScroll/touchScroll.js +21 -77
- package/plugins/touchScroll/touchScroll.mjs +21 -59
- package/plugins/trimRows/index.js +0 -2
- package/plugins/trimRows/trimRows.js +64 -86
- package/plugins/trimRows/trimRows.mjs +64 -63
- package/plugins/undoRedo/index.js +0 -14
- package/plugins/undoRedo/undoRedo.js +98 -250
- package/plugins/undoRedo/undoRedo.mjs +98 -220
- package/registry.js +0 -11
- package/registry.mjs +1 -2
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
- package/renderers/autocompleteRenderer/index.js +0 -2
- package/renderers/baseRenderer/baseRenderer.js +2 -11
- package/renderers/baseRenderer/baseRenderer.mjs +1 -7
- package/renderers/baseRenderer/index.js +0 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
- package/renderers/checkboxRenderer/index.js +0 -2
- package/renderers/htmlRenderer/htmlRenderer.js +1 -7
- package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
- package/renderers/htmlRenderer/index.js +0 -2
- package/renderers/index.js +0 -19
- package/renderers/index.mjs +0 -1
- package/renderers/numericRenderer/index.js +0 -2
- package/renderers/numericRenderer/numericRenderer.js +1 -21
- package/renderers/numericRenderer/numericRenderer.mjs +1 -9
- package/renderers/passwordRenderer/index.js +0 -2
- package/renderers/passwordRenderer/passwordRenderer.js +1 -8
- package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
- package/renderers/registry.js +7 -16
- package/renderers/registry.mjs +7 -14
- package/renderers/textRenderer/index.js +0 -2
- package/renderers/textRenderer/textRenderer.js +1 -13
- package/renderers/textRenderer/textRenderer.mjs +1 -5
- package/renderers/timeRenderer/index.js +0 -2
- package/renderers/timeRenderer/timeRenderer.js +1 -6
- package/renderers/timeRenderer/timeRenderer.mjs +1 -1
- package/selection/highlight/highlight.js +24 -73
- package/selection/highlight/highlight.mjs +24 -50
- package/selection/highlight/types/activeHeader.js +14 -23
- package/selection/highlight/types/activeHeader.mjs +14 -12
- package/selection/highlight/types/area.js +15 -24
- package/selection/highlight/types/area.mjs +15 -13
- package/selection/highlight/types/cell.js +14 -23
- package/selection/highlight/types/cell.mjs +14 -12
- package/selection/highlight/types/customSelection.js +15 -24
- package/selection/highlight/types/customSelection.mjs +15 -13
- package/selection/highlight/types/fill.js +16 -20
- package/selection/highlight/types/fill.mjs +16 -9
- package/selection/highlight/types/header.js +16 -25
- package/selection/highlight/types/header.mjs +16 -14
- package/selection/highlight/types/index.js +17 -27
- package/selection/highlight/types/index.mjs +17 -13
- package/selection/highlight/visualSelection.js +35 -80
- package/selection/highlight/visualSelection.mjs +35 -68
- package/selection/index.js +0 -14
- package/selection/mouseEventHandler.js +19 -30
- package/selection/mouseEventHandler.mjs +19 -22
- package/selection/range.js +17 -30
- package/selection/range.mjs +17 -21
- package/selection/selection.js +72 -160
- package/selection/selection.mjs +77 -137
- package/selection/transformation.js +23 -39
- package/selection/transformation.mjs +23 -36
- package/selection/utils.js +23 -71
- package/selection/utils.mjs +23 -48
- package/shortcuts/context.js +24 -79
- package/shortcuts/context.mjs +24 -56
- package/shortcuts/index.js +0 -2
- package/shortcuts/keyObserver.js +0 -9
- package/shortcuts/keyObserver.mjs +0 -4
- package/shortcuts/manager.js +17 -37
- package/shortcuts/manager.mjs +17 -34
- package/shortcuts/recorder.js +9 -40
- package/shortcuts/recorder.mjs +9 -31
- package/shortcuts/utils.js +5 -20
- package/shortcuts/utils.mjs +5 -6
- package/tableView.js +239 -330
- package/tableView.mjs +239 -308
- package/translations/changesObservable/observable.js +14 -53
- package/translations/changesObservable/observable.mjs +14 -43
- package/translations/changesObservable/observer.js +13 -31
- package/translations/changesObservable/observer.mjs +13 -23
- package/translations/changesObservable/utils.js +1 -5
- package/translations/changesObservable/utils.mjs +1 -4
- package/translations/index.js +0 -11
- package/translations/indexMapper.js +80 -162
- package/translations/indexMapper.mjs +85 -134
- package/translations/mapCollections/aggregatedCollection.js +14 -50
- package/translations/mapCollections/aggregatedCollection.mjs +14 -37
- package/translations/mapCollections/index.js +0 -7
- package/translations/mapCollections/mapCollection.js +20 -34
- package/translations/mapCollections/mapCollection.mjs +20 -23
- package/translations/maps/hidingMap.js +7 -34
- package/translations/maps/hidingMap.mjs +7 -22
- package/translations/maps/index.js +1 -24
- package/translations/maps/index.mjs +1 -3
- package/translations/maps/indexMap.js +25 -33
- package/translations/maps/indexMap.mjs +25 -27
- package/translations/maps/indexesSequence.js +8 -40
- package/translations/maps/indexesSequence.mjs +8 -25
- package/translations/maps/linkedPhysicalIndexToValueMap.js +18 -81
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +17 -54
- package/translations/maps/physicalIndexToValueMap.js +7 -38
- package/translations/maps/physicalIndexToValueMap.mjs +7 -24
- package/translations/maps/trimmingMap.js +7 -34
- package/translations/maps/trimmingMap.mjs +7 -22
- package/translations/maps/utils/actionsOnIndexes.js +1 -7
- package/translations/maps/utils/actionsOnIndexes.mjs +1 -3
- package/translations/maps/utils/index.js +0 -13
- package/translations/maps/utils/index.mjs +0 -3
- package/translations/maps/utils/indexesSequence.js +1 -24
- package/translations/maps/utils/indexesSequence.mjs +1 -9
- package/translations/maps/utils/physicallyIndexed.js +1 -27
- package/translations/maps/utils/physicallyIndexed.mjs +1 -10
- package/utils/dataStructures/linkedList.js +23 -50
- package/utils/dataStructures/linkedList.mjs +23 -48
- package/utils/dataStructures/priorityMap.js +9 -47
- package/utils/dataStructures/priorityMap.mjs +9 -30
- package/utils/dataStructures/queue.js +19 -16
- package/utils/dataStructures/queue.mjs +19 -15
- package/utils/dataStructures/stack.js +19 -16
- package/utils/dataStructures/stack.mjs +19 -15
- package/utils/dataStructures/tree.js +19 -77
- package/utils/dataStructures/tree.mjs +19 -56
- package/utils/dataStructures/uniqueMap.js +18 -57
- package/utils/dataStructures/uniqueMap.mjs +18 -43
- package/utils/dataStructures/uniqueSet.js +5 -32
- package/utils/dataStructures/uniqueSet.mjs +5 -19
- package/utils/ghostTable.js +42 -106
- package/utils/ghostTable.mjs +40 -90
- package/utils/interval.js +17 -29
- package/utils/interval.mjs +18 -26
- package/utils/parseTable.js +11 -92
- package/utils/parseTable.mjs +11 -62
- package/utils/rootInstance.js +3 -14
- package/utils/rootInstance.mjs +3 -3
- package/utils/samplesGenerator.js +25 -51
- package/utils/samplesGenerator.mjs +25 -42
- package/utils/staticRegister.js +6 -33
- package/utils/staticRegister.mjs +6 -19
- package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
- package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
- package/validators/autocompleteValidator/index.js +0 -2
- package/validators/dateValidator/dateValidator.js +2 -21
- package/validators/dateValidator/dateValidator.mjs +2 -11
- package/validators/dateValidator/index.js +0 -2
- package/validators/index.js +0 -11
- package/validators/index.mjs +0 -1
- package/validators/numericValidator/index.js +0 -2
- package/validators/numericValidator/numericValidator.js +1 -7
- package/validators/numericValidator/numericValidator.mjs +1 -3
- package/validators/registry.js +7 -16
- package/validators/registry.mjs +7 -14
- package/validators/timeValidator/index.js +0 -2
- package/validators/timeValidator/timeValidator.js +6 -18
- package/validators/timeValidator/timeValidator.mjs +8 -13
package/pluginHooks.mjs
CHANGED
@@ -1,14 +1,18 @@
|
|
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); }
|
1
2
|
import "core-js/modules/es.array.slice.js";
|
2
3
|
import "core-js/modules/es.object.freeze.js";
|
3
|
-
|
4
|
+
import "core-js/modules/es.symbol.to-primitive.js";
|
5
|
+
import "core-js/modules/es.date.to-primitive.js";
|
6
|
+
import "core-js/modules/es.symbol.js";
|
7
|
+
import "core-js/modules/es.symbol.description.js";
|
8
|
+
import "core-js/modules/es.number.constructor.js";
|
9
|
+
import "core-js/modules/es.symbol.iterator.js";
|
4
10
|
var _templateObject;
|
5
|
-
|
6
11
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
7
|
-
|
8
|
-
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); } }
|
9
|
-
|
12
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
10
13
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
11
|
-
|
14
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
15
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
12
16
|
import "core-js/modules/es.array.iterator.js";
|
13
17
|
import "core-js/modules/es.map.js";
|
14
18
|
import "core-js/modules/es.object.to-string.js";
|
@@ -16,23 +20,32 @@ import "core-js/modules/es.string.iterator.js";
|
|
16
20
|
import "core-js/modules/web.dom-collections.iterator.js";
|
17
21
|
import "core-js/modules/es.array.index-of.js";
|
18
22
|
import "core-js/modules/es.array.splice.js";
|
19
|
-
|
20
23
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
21
|
-
|
22
24
|
import { arrayEach } from "./helpers/array.mjs";
|
23
25
|
import { objectEach } from "./helpers/object.mjs";
|
24
26
|
import { substitute } from "./helpers/string.mjs";
|
25
27
|
import { warn } from "./helpers/console.mjs";
|
26
28
|
import { toSingleLine } from "./helpers/templateLiteralTag.mjs";
|
27
29
|
import { fastCall } from "./helpers/function.mjs";
|
30
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
28
31
|
/**
|
29
32
|
* @description
|
33
|
+
*
|
34
|
+
* ::: only-for javascript
|
30
35
|
* Handsontable events are the common interface that function in 2 ways: as __callbacks__ and as __hooks__.
|
36
|
+
* :::
|
37
|
+
*
|
38
|
+
* ::: only-for react
|
39
|
+
* This page lists all the **Handsontable hooks** – callbacks that let you react before or after an action occurs.
|
40
|
+
*
|
41
|
+
* Read more on the [Events and hooks](@/guides/getting-started/events-and-hooks.md) page.
|
42
|
+
* :::
|
31
43
|
*
|
32
44
|
* @example
|
33
45
|
*
|
46
|
+
* ::: only-for javascript
|
34
47
|
* ```js
|
35
|
-
* //
|
48
|
+
* // using events as callbacks
|
36
49
|
* ...
|
37
50
|
* const hot1 = new Handsontable(document.getElementById('example1'), {
|
38
51
|
* afterChange: function(changes, source) {
|
@@ -44,9 +57,27 @@ import { fastCall } from "./helpers/function.mjs";
|
|
44
57
|
* });
|
45
58
|
* ...
|
46
59
|
* ```
|
60
|
+
* :::
|
61
|
+
*
|
62
|
+
* ::: only-for react
|
63
|
+
* ```jsx
|
64
|
+
* <HotTable
|
65
|
+
* afterChange={(changes, source) => {
|
66
|
+
* fetch('save.php', {
|
67
|
+
* method: 'POST',
|
68
|
+
* headers: {
|
69
|
+
* 'Accept': 'application/json',
|
70
|
+
* 'Content-Type': 'application/json'
|
71
|
+
* },
|
72
|
+
* body: JSON.stringify(changes)
|
73
|
+
* });
|
74
|
+
* }}
|
75
|
+
* />
|
76
|
+
* :::
|
47
77
|
*
|
78
|
+
* ::: only-for javascript
|
48
79
|
* ```js
|
49
|
-
* //
|
80
|
+
* // using events as plugin hooks
|
50
81
|
* ...
|
51
82
|
* const hot1 = new Handsontable(document.getElementById('example1'), {
|
52
83
|
* myPlugin: true
|
@@ -69,13 +100,46 @@ import { fastCall } from "./helpers/function.mjs";
|
|
69
100
|
* // function body - will only run in #example2
|
70
101
|
* });
|
71
102
|
* ```
|
103
|
+
* :::
|
104
|
+
*
|
105
|
+
* ::: only-for react
|
106
|
+
* ```jsx
|
107
|
+
* const hotRef1 = useRef(null);
|
108
|
+
* const hotRef2 = useRef(null);
|
109
|
+
*
|
110
|
+
* // Using events as plugin hooks:
|
111
|
+
* ...
|
112
|
+
*
|
113
|
+
* <HotTable
|
114
|
+
* ref={hotRef1}
|
115
|
+
* myPlugin={true}
|
116
|
+
* });
|
117
|
+
*
|
118
|
+
* <HotTable
|
119
|
+
* ref={hotRef2}
|
120
|
+
* myPlugin={false}
|
121
|
+
* });
|
122
|
+
*
|
123
|
+
* ...
|
124
|
+
*
|
125
|
+
* const hot2 = hotRef2.current.hotInstance;
|
126
|
+
* // local hook (has same effect as a callback)
|
127
|
+
* hot2.addHook('afterChange', function() {
|
128
|
+
* // function body - will only run in #example2
|
129
|
+
* });
|
130
|
+
*
|
131
|
+
* // global hook
|
132
|
+
* Handsontable.hooks.add('afterChange', function() {
|
133
|
+
* // Fired twice - for hot1 and hot2
|
134
|
+
* if (this.getSettings().myPlugin) {
|
135
|
+
* // function body - will only run for first instance
|
136
|
+
* }
|
137
|
+
* });
|
138
|
+
* :::
|
72
139
|
* ...
|
73
140
|
*/
|
74
141
|
// @TODO: Move plugin description hooks to plugin?
|
75
|
-
|
76
|
-
var REGISTERED_HOOKS = [
|
77
|
-
/* eslint-disable jsdoc/require-description-complete-sentence */
|
78
|
-
|
142
|
+
var REGISTERED_HOOKS = [/* eslint-disable jsdoc/require-description-complete-sentence */
|
79
143
|
/**
|
80
144
|
* Fired after resetting a cell's meta. This happens when the {@link Core#updateSettings} method is called.
|
81
145
|
*
|
@@ -92,15 +156,29 @@ var REGISTERED_HOOKS = [
|
|
92
156
|
* @param {Array[]} changes 2D array containing information about each of the edited cells `[[row, prop, oldVal, newVal], ...]`. `row` is a visual row index.
|
93
157
|
* @param {string} [source] String that identifies source of hook call ([list of all available sources](@/guides/getting-started/events-and-hooks.md#definition-for-source-argument)).
|
94
158
|
* @example
|
159
|
+
* ::: only-for javascript
|
95
160
|
* ```js
|
96
161
|
* new Handsontable(element, {
|
97
162
|
* afterChange: (changes) => {
|
98
|
-
* changes
|
163
|
+
* changes?.forEach(([row, prop, oldValue, newValue]) => {
|
99
164
|
* // Some logic...
|
100
165
|
* });
|
101
166
|
* }
|
102
167
|
* })
|
103
168
|
* ```
|
169
|
+
* :::
|
170
|
+
*
|
171
|
+
* ::: only-for react
|
172
|
+
* ```jsx
|
173
|
+
* <HotTable
|
174
|
+
* afterChange={(changes, source) => {
|
175
|
+
* changes?.forEach(([row, prop, oldValue, newValue]) => {
|
176
|
+
* // Some logic...
|
177
|
+
* });
|
178
|
+
* }}
|
179
|
+
* />
|
180
|
+
* ```
|
181
|
+
* :::
|
104
182
|
*/
|
105
183
|
'afterChange',
|
106
184
|
/**
|
@@ -183,6 +261,7 @@ var REGISTERED_HOOKS = [
|
|
183
261
|
* ([list of all available sources](@/guides/getting-started/events-and-hooks.md#definition-for-source-argument)).
|
184
262
|
* @returns {*} If `false` then creating columns is cancelled.
|
185
263
|
* @example
|
264
|
+
* ::: only-for javascript
|
186
265
|
* ```js
|
187
266
|
* // Return `false` to cancel column inserting.
|
188
267
|
* new Handsontable(element, {
|
@@ -191,6 +270,18 @@ var REGISTERED_HOOKS = [
|
|
191
270
|
* }
|
192
271
|
* });
|
193
272
|
* ```
|
273
|
+
* :::
|
274
|
+
*
|
275
|
+
* ::: only-for react
|
276
|
+
* ```jsx
|
277
|
+
* // Return `false` to cancel column inserting.
|
278
|
+
* <HotTable
|
279
|
+
* beforeCreateCol={(data, coords) => {
|
280
|
+
* return false;
|
281
|
+
* }}
|
282
|
+
* />
|
283
|
+
* ```
|
284
|
+
* :::
|
194
285
|
*/
|
195
286
|
'beforeCreateCol',
|
196
287
|
/**
|
@@ -278,6 +369,10 @@ var REGISTERED_HOOKS = [
|
|
278
369
|
* @event Hooks#afterGetColHeader
|
279
370
|
* @param {number} column Visual column index.
|
280
371
|
* @param {HTMLTableCellElement} TH Header's TH element.
|
372
|
+
* @param {number} [headerLevel=0] (Since 12.2.0) Header level index. Accepts positive (0 to n)
|
373
|
+
* and negative (-1 to -n) values. For positive values, 0 points to the
|
374
|
+
* topmost header. For negative values, -1 points to the bottom-most
|
375
|
+
* header (the header closest to the cells).
|
281
376
|
*/
|
282
377
|
'afterGetColHeader',
|
283
378
|
/**
|
@@ -477,6 +572,7 @@ var REGISTERED_HOOKS = [
|
|
477
572
|
* @param {object} preventScrolling Object with `value` property where its value change will be observed.
|
478
573
|
* @param {number} selectionLayerLevel The number which indicates what selection layer is currently modified.
|
479
574
|
* @example
|
575
|
+
* ::: only-for javascript
|
480
576
|
* ```js
|
481
577
|
* new Handsontable(element, {
|
482
578
|
* afterSelection: (row, column, row2, column2, preventScrolling, selectionLayerLevel) => {
|
@@ -488,6 +584,21 @@ var REGISTERED_HOOKS = [
|
|
488
584
|
* }
|
489
585
|
* })
|
490
586
|
* ```
|
587
|
+
* :::
|
588
|
+
*
|
589
|
+
* ::: only-for react
|
590
|
+
* ```jsx
|
591
|
+
* <HotTable
|
592
|
+
* afterSelection={(row, column, row2, column2, preventScrolling, selectionLayerLevel) => {
|
593
|
+
* // If set to `false` (default): when cell selection is outside the viewport,
|
594
|
+
* // Handsontable scrolls the viewport to cell selection's end corner.
|
595
|
+
* // If set to `true`: when cell selection is outside the viewport,
|
596
|
+
* // Handsontable doesn't scroll to cell selection's end corner.
|
597
|
+
* preventScrolling.value = true;
|
598
|
+
* }}
|
599
|
+
* />
|
600
|
+
* ```
|
601
|
+
* :::
|
491
602
|
*/
|
492
603
|
'afterSelection',
|
493
604
|
/**
|
@@ -504,6 +615,7 @@ var REGISTERED_HOOKS = [
|
|
504
615
|
* @param {number} selectionLayerLevel The number which indicates what selection layer is currently modified.
|
505
616
|
* @example
|
506
617
|
* ```js
|
618
|
+
* ::: only-for javascript
|
507
619
|
* new Handsontable(element, {
|
508
620
|
* afterSelectionByProp: (row, column, row2, column2, preventScrolling, selectionLayerLevel) => {
|
509
621
|
* // setting if prevent scrolling after selection
|
@@ -511,6 +623,18 @@ var REGISTERED_HOOKS = [
|
|
511
623
|
* }
|
512
624
|
* })
|
513
625
|
* ```
|
626
|
+
* :::
|
627
|
+
*
|
628
|
+
* ::: only-for react
|
629
|
+
* ```jsx
|
630
|
+
* <HotTable
|
631
|
+
* afterSelectionByProp={(row, column, row2, column2, preventScrolling, selectionLayerLevel) => {
|
632
|
+
* // setting if prevent scrolling after selection
|
633
|
+
* preventScrolling.value = true;
|
634
|
+
* }}
|
635
|
+
* />
|
636
|
+
* ```
|
637
|
+
* :::
|
514
638
|
*/
|
515
639
|
'afterSelectionByProp',
|
516
640
|
/**
|
@@ -672,8 +796,11 @@ var REGISTERED_HOOKS = [
|
|
672
796
|
*/
|
673
797
|
'beforeCellAlignment',
|
674
798
|
/**
|
675
|
-
* Fired before one or more cells
|
676
|
-
*
|
799
|
+
* Fired before one or more cells are changed.
|
800
|
+
*
|
801
|
+
* Use this hook to silently alter the user's changes before Handsontable re-renders.
|
802
|
+
*
|
803
|
+
* To ignore the user's changes, use a nullified array or return `false`.
|
677
804
|
*
|
678
805
|
* @event Hooks#beforeChange
|
679
806
|
* @param {Array[]} changes 2D array containing information about each of the edited cells `[[row, prop, oldVal, newVal], ...]`. `row` is a visual row index.
|
@@ -681,22 +808,27 @@ var REGISTERED_HOOKS = [
|
|
681
808
|
* ([list of all available sources](@/guides/getting-started/events-and-hooks.md#definition-for-source-argument)).
|
682
809
|
* @returns {undefined | boolean} If `false` all changes were cancelled, `true` otherwise.
|
683
810
|
* @example
|
811
|
+
* ::: only-for javascript
|
684
812
|
* ```js
|
685
|
-
* //
|
813
|
+
* // to alter a single change, overwrite the value with `changes[i][3]`
|
686
814
|
* new Handsontable(element, {
|
687
815
|
* beforeChange: (changes, source) => {
|
688
816
|
* // [[row, prop, oldVal, newVal], ...]
|
689
|
-
* changes[0] =
|
817
|
+
* changes[0][3] = 10;
|
690
818
|
* }
|
691
819
|
* });
|
692
|
-
*
|
820
|
+
*
|
821
|
+
* // to ignore a single change, set `changes[i]` to `null`
|
822
|
+
* // or remove `changes[i]` from the array, by using `changes.splice(i, 1)`
|
693
823
|
* new Handsontable(element, {
|
694
824
|
* beforeChange: (changes, source) => {
|
695
825
|
* // [[row, prop, oldVal, newVal], ...]
|
696
|
-
* changes[0]
|
826
|
+
* changes[0] = null;
|
697
827
|
* }
|
698
828
|
* });
|
699
|
-
*
|
829
|
+
*
|
830
|
+
* // to ignore all changes, return `false`
|
831
|
+
* // or set the array's length to 0, by using `changes.length = 0`
|
700
832
|
* new Handsontable(element, {
|
701
833
|
* beforeChange: (changes, source) => {
|
702
834
|
* // [[row, prop, oldVal, newVal], ...]
|
@@ -704,6 +836,37 @@ var REGISTERED_HOOKS = [
|
|
704
836
|
* }
|
705
837
|
* });
|
706
838
|
* ```
|
839
|
+
* :::
|
840
|
+
*
|
841
|
+
* ::: only-for react
|
842
|
+
* ```jsx
|
843
|
+
* // to alter a single change, overwrite the desired value with `changes[i][3]`
|
844
|
+
* <HotTable
|
845
|
+
* beforeChange={(changes, source) => {
|
846
|
+
* // [[row, prop, oldVal, newVal], ...]
|
847
|
+
* changes[0][3] = 10;
|
848
|
+
* }}
|
849
|
+
* />
|
850
|
+
*
|
851
|
+
* // to ignore a single change, set `changes[i]` to `null`
|
852
|
+
* // or remove `changes[i]` from the array, by using changes.splice(i, 1).
|
853
|
+
* <HotTable
|
854
|
+
* beforeChange={(changes, source) => {
|
855
|
+
* // [[row, prop, oldVal, newVal], ...]
|
856
|
+
* changes[0] = null;
|
857
|
+
* }}
|
858
|
+
* />
|
859
|
+
*
|
860
|
+
* // to ignore all changes, return `false`
|
861
|
+
* // or set the array's length to 0 (`changes.length = 0`)
|
862
|
+
* <HotTable
|
863
|
+
* beforeChange={(changes, source) => {
|
864
|
+
* // [[row, prop, oldVal, newVal], ...]
|
865
|
+
* return false;
|
866
|
+
* }}
|
867
|
+
* />
|
868
|
+
* ```
|
869
|
+
* :::
|
707
870
|
*/
|
708
871
|
'beforeChange',
|
709
872
|
/**
|
@@ -1160,7 +1323,7 @@ var REGISTERED_HOOKS = [
|
|
1160
1323
|
*/
|
1161
1324
|
'modifyCopyableRange',
|
1162
1325
|
/**
|
1163
|
-
* Fired by {@link CopyPaste} plugin before copying the values
|
1326
|
+
* Fired by {@link CopyPaste} plugin before copying the values to the clipboard and before clearing values of
|
1164
1327
|
* the selected cells. This hook is fired when {@link Options#copyPaste} option is enabled.
|
1165
1328
|
*
|
1166
1329
|
* @event Hooks#beforeCut
|
@@ -1169,6 +1332,7 @@ var REGISTERED_HOOKS = [
|
|
1169
1332
|
* which will be cut out.
|
1170
1333
|
* @returns {*} If returns `false` then operation of the cutting out is canceled.
|
1171
1334
|
* @example
|
1335
|
+
* ::: only-for javascript
|
1172
1336
|
* ```js
|
1173
1337
|
* // To disregard a single row, remove it from the array using data.splice(i, 1).
|
1174
1338
|
* new Handsontable(element, {
|
@@ -1186,6 +1350,27 @@ var REGISTERED_HOOKS = [
|
|
1186
1350
|
* }
|
1187
1351
|
* });
|
1188
1352
|
* ```
|
1353
|
+
* :::
|
1354
|
+
*
|
1355
|
+
* ::: only-for react
|
1356
|
+
* ```jsx
|
1357
|
+
* // To disregard a single row, remove it from the array using data.splice(i, 1).
|
1358
|
+
* <HotTable
|
1359
|
+
* beforeCut={(data, coords) => {
|
1360
|
+
* // data -> [[1, 2, 3], [4, 5, 6]]
|
1361
|
+
* data.splice(0, 1);
|
1362
|
+
* // data -> [[4, 5, 6]]
|
1363
|
+
* // coords -> [{startRow: 0, startCol: 0, endRow: 1, endCol: 2}]
|
1364
|
+
* }}
|
1365
|
+
* />
|
1366
|
+
* // To cancel a cutting action, just return `false`.
|
1367
|
+
* <HotTable
|
1368
|
+
* beforeCut={(data, coords) => {
|
1369
|
+
* return false;
|
1370
|
+
* }}
|
1371
|
+
* />
|
1372
|
+
* ```
|
1373
|
+
* :::
|
1189
1374
|
*/
|
1190
1375
|
'beforeCut',
|
1191
1376
|
/**
|
@@ -1193,21 +1378,23 @@ var REGISTERED_HOOKS = [
|
|
1193
1378
|
* {@link Options#copyPaste} option is enabled.
|
1194
1379
|
*
|
1195
1380
|
* @event Hooks#afterCut
|
1196
|
-
* @param {Array[]} data An array of arrays
|
1381
|
+
* @param {Array[]} data An array of arrays with the cut data.
|
1197
1382
|
* @param {object[]} coords An array of objects with ranges of the visual indexes (`startRow`, `startCol`, `endRow`, `endCol`)
|
1198
1383
|
* which was cut out.
|
1199
1384
|
*/
|
1200
1385
|
'afterCut',
|
1201
1386
|
/**
|
1202
|
-
* Fired before values are copied
|
1387
|
+
* Fired before values are copied to the clipboard.
|
1203
1388
|
*
|
1204
1389
|
* @event Hooks#beforeCopy
|
1205
1390
|
* @param {Array[]} data An array of arrays which contains data to copied.
|
1206
1391
|
* @param {object[]} coords An array of objects with ranges of the visual indexes (`startRow`, `startCol`, `endRow`, `endCol`)
|
1207
1392
|
* which will copied.
|
1393
|
+
* @param {{ columnHeadersCount: number }} copiedHeadersCount (Since 12.3.0) The number of copied column headers.
|
1208
1394
|
* @returns {*} If returns `false` then copying is canceled.
|
1209
1395
|
*
|
1210
1396
|
* @example
|
1397
|
+
* ::: only-for javascript
|
1211
1398
|
* ```js
|
1212
1399
|
* // To disregard a single row, remove it from array using data.splice(i, 1).
|
1213
1400
|
* ...
|
@@ -1230,6 +1417,32 @@ var REGISTERED_HOOKS = [
|
|
1230
1417
|
* });
|
1231
1418
|
* ...
|
1232
1419
|
* ```
|
1420
|
+
* :::
|
1421
|
+
*
|
1422
|
+
* ::: only-for react
|
1423
|
+
* ```jsx
|
1424
|
+
* // To disregard a single row, remove it from array using data.splice(i, 1).
|
1425
|
+
* ...
|
1426
|
+
* <HotTable
|
1427
|
+
* beforeCopy={(data, coords) => {
|
1428
|
+
* // data -> [[1, 2, 3], [4, 5, 6]]
|
1429
|
+
* data.splice(0, 1);
|
1430
|
+
* // data -> [[4, 5, 6]]
|
1431
|
+
* // coords -> [{startRow: 0, startCol: 0, endRow: 1, endCol: 2}]
|
1432
|
+
* }}
|
1433
|
+
* />
|
1434
|
+
* ...
|
1435
|
+
*
|
1436
|
+
* // To cancel copying, return false from the callback.
|
1437
|
+
* ...
|
1438
|
+
* <HotTable
|
1439
|
+
* beforeCopy={(data, coords) => {
|
1440
|
+
* return false;
|
1441
|
+
* }}
|
1442
|
+
* />
|
1443
|
+
* ...
|
1444
|
+
* ```
|
1445
|
+
* :::
|
1233
1446
|
*/
|
1234
1447
|
'beforeCopy',
|
1235
1448
|
/**
|
@@ -1240,6 +1453,7 @@ var REGISTERED_HOOKS = [
|
|
1240
1453
|
* @param {Array[]} data An array of arrays which contains the copied data.
|
1241
1454
|
* @param {object[]} coords An array of objects with ranges of the visual indexes (`startRow`, `startCol`, `endRow`, `endCol`)
|
1242
1455
|
* which was copied.
|
1456
|
+
* @param {{ columnHeadersCount: number }} copiedHeadersCount (Since 12.3.0) The number of copied column headers.
|
1243
1457
|
*/
|
1244
1458
|
'afterCopy',
|
1245
1459
|
/**
|
@@ -1253,6 +1467,7 @@ var REGISTERED_HOOKS = [
|
|
1253
1467
|
* @returns {*} If returns `false` then pasting is canceled.
|
1254
1468
|
* @example
|
1255
1469
|
* ```js
|
1470
|
+
* ::: only-for javascript
|
1256
1471
|
* // To disregard a single row, remove it from array using data.splice(i, 1).
|
1257
1472
|
* new Handsontable(example, {
|
1258
1473
|
* beforePaste: (data, coords) => {
|
@@ -1269,6 +1484,27 @@ var REGISTERED_HOOKS = [
|
|
1269
1484
|
* }
|
1270
1485
|
* });
|
1271
1486
|
* ```
|
1487
|
+
* :::
|
1488
|
+
*
|
1489
|
+
* ::: only-for react
|
1490
|
+
* ```jsx
|
1491
|
+
* // To disregard a single row, remove it from array using data.splice(i, 1).
|
1492
|
+
* <HotTable
|
1493
|
+
* beforePaste={(data, coords) => {
|
1494
|
+
* // data -> [[1, 2, 3], [4, 5, 6]]
|
1495
|
+
* data.splice(0, 1);
|
1496
|
+
* // data -> [[4, 5, 6]]
|
1497
|
+
* // coords -> [{startRow: 0, startCol: 0, endRow: 1, endCol: 2}]
|
1498
|
+
* }}
|
1499
|
+
* />
|
1500
|
+
* // To cancel pasting, return false from the callback.
|
1501
|
+
* <HotTable
|
1502
|
+
* beforePaste={(data, coords) => {
|
1503
|
+
* return false;
|
1504
|
+
* }}
|
1505
|
+
* />
|
1506
|
+
* ```
|
1507
|
+
* :::
|
1272
1508
|
*/
|
1273
1509
|
'beforePaste',
|
1274
1510
|
/**
|
@@ -1276,7 +1512,7 @@ var REGISTERED_HOOKS = [
|
|
1276
1512
|
* {@link Options#copyPaste} option is enabled.
|
1277
1513
|
*
|
1278
1514
|
* @event Hooks#afterPaste
|
1279
|
-
* @param {Array[]} data An array of arrays
|
1515
|
+
* @param {Array[]} data An array of arrays with the pasted data.
|
1280
1516
|
* @param {object[]} coords An array of objects with ranges of the visual indexes (`startRow`, `startCol`, `endRow`, `endCol`)
|
1281
1517
|
* that correspond to the previously selected area.
|
1282
1518
|
*/
|
@@ -1461,13 +1697,22 @@ var REGISTERED_HOOKS = [
|
|
1461
1697
|
*/
|
1462
1698
|
'beforeStretchingColumnWidth',
|
1463
1699
|
/**
|
1464
|
-
* Fired by
|
1465
|
-
*
|
1700
|
+
* Fired by the [`Filters`](@/api/filters.md) plugin,
|
1701
|
+
* before a [column filter](@/guides/columns/column-filter.md) gets applied.
|
1702
|
+
*
|
1703
|
+
* [`beforeFilter`](#beforefilter) takes one argument (`conditionsStack`), which is an array of objects.
|
1704
|
+
* Each object represents one of your [column filters](@/api/filters.md#addcondition),
|
1705
|
+
* and consists of the following properties:
|
1706
|
+
*
|
1707
|
+
* | Property | Possible values | Description |
|
1708
|
+
* | ------------ | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
|
1709
|
+
* | `column` | Number | A visual index of the column to which the filter will be applied. |
|
1710
|
+
* | `conditions` | Array of objects | Each object represents one condition. For details, see [`addCondition()`](@/api/filters.md#addcondition). |
|
1711
|
+
* | `operation` | `'conjunction'` \| `'disjunction'` \| `'disjunctionWithExtraCondition'` | An operation to perform on your set of `conditions`. For details, see [`addCondition()`](@/api/filters.md#addcondition). |
|
1712
|
+
*
|
1713
|
+
* An example of the format of the `conditionsStack` argument:
|
1466
1714
|
*
|
1467
|
-
* @event Hooks#beforeFilter
|
1468
|
-
* @param {object[]} conditionsStack An array of objects with added formulas.
|
1469
1715
|
* ```js
|
1470
|
-
* // Example format of the conditionsStack argument:
|
1471
1716
|
* [
|
1472
1717
|
* {
|
1473
1718
|
* column: 2,
|
@@ -1485,17 +1730,47 @@ var REGISTERED_HOOKS = [
|
|
1485
1730
|
* },
|
1486
1731
|
* ]
|
1487
1732
|
* ```
|
1488
|
-
*
|
1733
|
+
*
|
1734
|
+
* To perform server-side filtering (i.e., to not apply filtering to Handsontable's UI),
|
1735
|
+
* set [`beforeFilter`](#beforefilter) to return `false`:
|
1736
|
+
*
|
1737
|
+
* ```js
|
1738
|
+
* new Handsontable(document.getElementById('example'), {
|
1739
|
+
* beforeFilter: (conditionsStack) => {
|
1740
|
+
* return false;
|
1741
|
+
* }
|
1742
|
+
* });
|
1743
|
+
*```
|
1744
|
+
*
|
1745
|
+
* Read more:
|
1746
|
+
* - [Guides: Column filter](@/guides/columns/column-filter.md)
|
1747
|
+
* - [Hooks: `afterFilter`](#afterfilter)
|
1748
|
+
* - [Options: `filters`](@/api/options.md#filters)
|
1749
|
+
* - [Plugins: `Filters`](@/api/filters.md)
|
1750
|
+
* – [Plugin methods: `addCondition()`](@/api/filters.md#addcondition)
|
1751
|
+
*
|
1752
|
+
* @event Hooks#beforeFilter
|
1753
|
+
* @param {object[]} conditionsStack An array of objects with your [column filters](@/api/filters.md#addcondition).
|
1754
|
+
* @returns {boolean} To perform server-side filtering (i.e., to not apply filtering to Handsontable's UI), return `false`.
|
1489
1755
|
*/
|
1490
1756
|
'beforeFilter',
|
1491
1757
|
/**
|
1492
|
-
* Fired by
|
1493
|
-
*
|
1758
|
+
* Fired by the [`Filters`](@/api/filters.md) plugin,
|
1759
|
+
* after a [column filter](@/guides/columns/column-filter.md) gets applied.
|
1760
|
+
*
|
1761
|
+
* [`afterFilter`](#afterfilter) takes one argument (`conditionsStack`), which is an array of objects.
|
1762
|
+
* Each object represents one of your [column filters](@/api/filters.md#addcondition),
|
1763
|
+
* and consists of the following properties:
|
1764
|
+
*
|
1765
|
+
* | Property | Possible values | Description |
|
1766
|
+
* | ------------ | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
|
1767
|
+
* | `column` | Number | A visual index of the column to which the filter was applied. |
|
1768
|
+
* | `conditions` | Array of objects | Each object represents one condition. For details, see [`addCondition()`](@/api/filters.md#addcondition). |
|
1769
|
+
* | `operation` | `'conjunction'` \| `'disjunction'` \| `'disjunctionWithExtraCondition'` | An operation to perform on your set of `conditions`. For details, see [`addCondition()`](@/api/filters.md#addcondition). |
|
1770
|
+
*
|
1771
|
+
* An example of the format of the `conditionsStack` argument:
|
1494
1772
|
*
|
1495
|
-
* @event Hooks#afterFilter
|
1496
|
-
* @param {object[]} conditionsStack An array of objects with added conditions.
|
1497
1773
|
* ```js
|
1498
|
-
* // Example format of the conditionsStack argument:
|
1499
1774
|
* [
|
1500
1775
|
* {
|
1501
1776
|
* column: 2,
|
@@ -1513,18 +1788,38 @@ var REGISTERED_HOOKS = [
|
|
1513
1788
|
* },
|
1514
1789
|
* ]
|
1515
1790
|
* ```
|
1791
|
+
*
|
1792
|
+
* Read more:
|
1793
|
+
* - [Guides: Column filter](@/guides/columns/column-filter.md)
|
1794
|
+
* - [Hooks: `beforeFilter`](#beforefilter)
|
1795
|
+
* - [Options: `filters`](@/api/options.md#filters)
|
1796
|
+
* - [Plugins: `Filters`](@/api/filters.md)
|
1797
|
+
* – [Plugin methods: `addCondition()`](@/api/filters.md#addcondition)
|
1798
|
+
*
|
1799
|
+
* @event Hooks#afterFilter
|
1800
|
+
* @param {object[]} conditionsStack An array of objects with your [column filters](@/api/filters.md#addcondition).
|
1516
1801
|
*/
|
1517
1802
|
'afterFilter',
|
1518
1803
|
/**
|
1519
|
-
*
|
1804
|
+
* Fired by the {@link Formulas} plugin, when any cell value changes.
|
1805
|
+
*
|
1806
|
+
* Returns an array of objects that contains:
|
1807
|
+
* - The addresses (`sheet`, `row`, `col`) and new values (`newValue`) of the changed cells.
|
1808
|
+
* - The addresses and new values of any cells that had to be recalculated (because their formulas depend on the cells that changed).
|
1809
|
+
*
|
1810
|
+
* This hook gets also fired on Handsontable's initialization, returning the addresses and values of all cells.
|
1811
|
+
*
|
1812
|
+
* Read more:
|
1813
|
+
* - [Guides: Formula calculation](@/guides/formulas/formula-calculation.md)
|
1814
|
+
* - [HyperFormula documentation: `valuesUpdated`](https://hyperformula.handsontable.com/api/interfaces/listeners.html#valuesupdated)
|
1520
1815
|
*
|
1521
1816
|
* @since 9.0.0
|
1522
1817
|
* @event Hooks#afterFormulasValuesUpdate
|
1523
|
-
* @param {Array} changes The
|
1818
|
+
* @param {Array} changes The addresses and new values of all the changed and recalculated cells.
|
1524
1819
|
*/
|
1525
1820
|
'afterFormulasValuesUpdate',
|
1526
1821
|
/**
|
1527
|
-
*
|
1822
|
+
* Fired when a named expression is added to the Formulas' engine instance.
|
1528
1823
|
*
|
1529
1824
|
* @since 9.0.0
|
1530
1825
|
* @event Hooks#afterNamedExpressionAdded
|
@@ -1533,7 +1828,7 @@ var REGISTERED_HOOKS = [
|
|
1533
1828
|
*/
|
1534
1829
|
'afterNamedExpressionAdded',
|
1535
1830
|
/**
|
1536
|
-
*
|
1831
|
+
* Fired when a named expression is removed from the Formulas' engine instance.
|
1537
1832
|
*
|
1538
1833
|
* @since 9.0.0
|
1539
1834
|
* @event Hooks#afterNamedExpressionRemoved
|
@@ -1542,7 +1837,7 @@ var REGISTERED_HOOKS = [
|
|
1542
1837
|
*/
|
1543
1838
|
'afterNamedExpressionRemoved',
|
1544
1839
|
/**
|
1545
|
-
*
|
1840
|
+
* Fired when a new sheet is added to the Formulas' engine instance.
|
1546
1841
|
*
|
1547
1842
|
* @since 9.0.0
|
1548
1843
|
* @event Hooks#afterSheetAdded
|
@@ -1550,7 +1845,7 @@ var REGISTERED_HOOKS = [
|
|
1550
1845
|
*/
|
1551
1846
|
'afterSheetAdded',
|
1552
1847
|
/**
|
1553
|
-
*
|
1848
|
+
* Fired when a sheet in the Formulas' engine instance is renamed.
|
1554
1849
|
*
|
1555
1850
|
* @since 9.0.0
|
1556
1851
|
* @event Hooks#afterSheetRenamed
|
@@ -1559,7 +1854,7 @@ var REGISTERED_HOOKS = [
|
|
1559
1854
|
*/
|
1560
1855
|
'afterSheetRenamed',
|
1561
1856
|
/**
|
1562
|
-
*
|
1857
|
+
* Fired when a sheet is removed from the Formulas' engine instance.
|
1563
1858
|
*
|
1564
1859
|
* @since 9.0.0
|
1565
1860
|
* @event Hooks#afterSheetRemoved
|
@@ -1573,6 +1868,20 @@ var REGISTERED_HOOKS = [
|
|
1573
1868
|
* @event Hooks#modifyColumnHeaderHeight
|
1574
1869
|
*/
|
1575
1870
|
'modifyColumnHeaderHeight',
|
1871
|
+
/**
|
1872
|
+
* Fired while retrieving a column header's value.
|
1873
|
+
*
|
1874
|
+
* @since 12.3.0
|
1875
|
+
* @event Hooks#modifyColumnHeaderValue
|
1876
|
+
* @param {string} value A column header value.
|
1877
|
+
* @param {number} visualColumnIndex A visual column index.
|
1878
|
+
* @param {number} [headerLevel=0] Header level index. Accepts positive (0 to n)
|
1879
|
+
* and negative (-1 to -n) values. For positive values, 0 points to the
|
1880
|
+
* topmost header. For negative values, -1 points to the bottom-most
|
1881
|
+
* header (the header closest to the cells).
|
1882
|
+
* @returns {string} The column header value to be updated.
|
1883
|
+
*/
|
1884
|
+
'modifyColumnHeaderValue',
|
1576
1885
|
/**
|
1577
1886
|
* Fired by {@link UndoRedo} plugin before the undo action. Contains information about the action that is being undone.
|
1578
1887
|
* This hook is fired when {@link Options#undo} option is enabled.
|
@@ -1973,7 +2282,7 @@ var REGISTERED_HOOKS = [
|
|
1973
2282
|
*/
|
1974
2283
|
'afterUnlisten',
|
1975
2284
|
/**
|
1976
|
-
* Fired after the window was resized.
|
2285
|
+
* Fired after the window was resized or the size of the Handsontable root element was changed.
|
1977
2286
|
*
|
1978
2287
|
* @event Hooks#afterRefreshDimensions
|
1979
2288
|
* @param {object} previousDimensions Previous dimensions of the container.
|
@@ -1982,7 +2291,8 @@ var REGISTERED_HOOKS = [
|
|
1982
2291
|
*/
|
1983
2292
|
'afterRefreshDimensions',
|
1984
2293
|
/**
|
1985
|
-
* Cancellable hook, called after resizing a window
|
2294
|
+
* Cancellable hook, called after resizing a window or after detecting size change of the
|
2295
|
+
* Handsontable root element, but before redrawing a table.
|
1986
2296
|
*
|
1987
2297
|
* @event Hooks#beforeRefreshDimensions
|
1988
2298
|
* @param {object} previousDimensions Previous dimensions of the container.
|
@@ -2045,13 +2355,14 @@ var REGISTERED_HOOKS = [
|
|
2045
2355
|
* @param {*} cellValue Value of the cell.
|
2046
2356
|
*/
|
2047
2357
|
'modifyAutoColumnSizeSeed'];
|
2358
|
+
|
2048
2359
|
/**
|
2049
2360
|
* Template warning message for removed hooks.
|
2050
2361
|
*
|
2051
2362
|
* @type {string}
|
2052
2363
|
*/
|
2053
|
-
|
2054
2364
|
var REMOVED_MESSAGE = toSingleLine(_templateObject || (_templateObject = _taggedTemplateLiteral(["The plugin hook \"[hookName]\" was removed in Handsontable [removedInVersion]. \n Please consult release notes https://github.com/handsontable/handsontable/releases/tag/[removedInVersion] to \n learn about the migration path."], ["The plugin hook \"[hookName]\" was removed in Handsontable [removedInVersion].\\x20\n Please consult release notes https://github.com/handsontable/handsontable/releases/tag/[removedInVersion] to\\x20\n learn about the migration path."])));
|
2365
|
+
|
2055
2366
|
/**
|
2056
2367
|
* The list of the hooks which are removed from the API. The warning message is printed out in
|
2057
2368
|
* the developer console when the hook is used.
|
@@ -2061,10 +2372,9 @@ var REMOVED_MESSAGE = toSingleLine(_templateObject || (_templateObject = _tagged
|
|
2061
2372
|
*
|
2062
2373
|
* @type {Map<string, string>}
|
2063
2374
|
*/
|
2064
|
-
|
2065
2375
|
var REMOVED_HOOKS = new Map([['modifyRow', '8.0.0'], ['modifyCol', '8.0.0'], ['unmodifyRow', '8.0.0'], ['unmodifyCol', '8.0.0'], ['skipLengthCache', '8.0.0'], ['hiddenColumn', '8.0.0'], ['hiddenRow', '8.0.0']]);
|
2066
|
-
/* eslint-disable jsdoc/require-description-complete-sentence */
|
2067
2376
|
|
2377
|
+
/* eslint-disable jsdoc/require-description-complete-sentence */
|
2068
2378
|
/**
|
2069
2379
|
* The list of the hooks which are deprecated. The warning message is printed out in
|
2070
2380
|
* the developer console when the hook is used.
|
@@ -2084,20 +2394,17 @@ var REMOVED_HOOKS = new Map([['modifyRow', '8.0.0'], ['modifyCol', '8.0.0'], ['u
|
|
2084
2394
|
*
|
2085
2395
|
* @type {Map<string, string>}
|
2086
2396
|
*/
|
2087
|
-
|
2088
2397
|
/* eslint-enable jsdoc/require-description-complete-sentence */
|
2089
|
-
|
2090
2398
|
var DEPRECATED_HOOKS = new Map([['beforeAutofillInsidePopulate', 'The plugin hook "beforeAutofillInsidePopulate" is deprecated and will be removed in the next major release.']]);
|
2091
|
-
|
2092
2399
|
var Hooks = /*#__PURE__*/function () {
|
2093
2400
|
/**
|
2094
2401
|
*
|
2095
2402
|
*/
|
2096
2403
|
function Hooks() {
|
2097
2404
|
_classCallCheck(this, Hooks);
|
2098
|
-
|
2099
2405
|
this.globalBucket = this.createEmptyBucket();
|
2100
2406
|
}
|
2407
|
+
|
2101
2408
|
/**
|
2102
2409
|
* Returns a new object with empty handlers related to every registered hook name.
|
2103
2410
|
*
|
@@ -2116,40 +2423,37 @@ var Hooks = /*#__PURE__*/function () {
|
|
2116
2423
|
* }
|
2117
2424
|
* ```
|
2118
2425
|
*/
|
2119
|
-
|
2120
|
-
|
2121
2426
|
_createClass(Hooks, [{
|
2122
2427
|
key: "createEmptyBucket",
|
2123
2428
|
value: function createEmptyBucket() {
|
2124
|
-
var bucket = Object.create(null);
|
2429
|
+
var bucket = Object.create(null);
|
2125
2430
|
|
2431
|
+
// eslint-disable-next-line no-return-assign
|
2126
2432
|
arrayEach(REGISTERED_HOOKS, function (hook) {
|
2127
2433
|
return bucket[hook] = [];
|
2128
2434
|
});
|
2129
2435
|
return bucket;
|
2130
2436
|
}
|
2437
|
+
|
2131
2438
|
/**
|
2132
2439
|
* Get hook bucket based on the context of the object or if argument is `undefined`, get the global hook bucket.
|
2133
2440
|
*
|
2134
2441
|
* @param {object} [context=null] A Handsontable instance.
|
2135
2442
|
* @returns {object} Returns a global or Handsontable instance bucket.
|
2136
2443
|
*/
|
2137
|
-
|
2138
2444
|
}, {
|
2139
2445
|
key: "getBucket",
|
2140
2446
|
value: function getBucket() {
|
2141
2447
|
var context = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
2142
|
-
|
2143
2448
|
if (context) {
|
2144
2449
|
if (!context.pluginHookBucket) {
|
2145
2450
|
context.pluginHookBucket = this.createEmptyBucket();
|
2146
2451
|
}
|
2147
|
-
|
2148
2452
|
return context.pluginHookBucket;
|
2149
2453
|
}
|
2150
|
-
|
2151
2454
|
return this.globalBucket;
|
2152
2455
|
}
|
2456
|
+
|
2153
2457
|
/**
|
2154
2458
|
* Adds a listener (globally or locally) to a specified hook name.
|
2155
2459
|
* If the `context` parameter is provided, the hook will be added only to the instance it references.
|
@@ -2178,14 +2482,11 @@ var Hooks = /*#__PURE__*/function () {
|
|
2178
2482
|
* Handsontable.hooks.add('beforeInit', [myCallback, anotherCallback]);
|
2179
2483
|
* ```
|
2180
2484
|
*/
|
2181
|
-
|
2182
2485
|
}, {
|
2183
2486
|
key: "add",
|
2184
2487
|
value: function add(key, callback) {
|
2185
2488
|
var _this = this;
|
2186
|
-
|
2187
2489
|
var context = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
2188
|
-
|
2189
2490
|
if (Array.isArray(callback)) {
|
2190
2491
|
arrayEach(callback, function (c) {
|
2191
2492
|
return _this.add(key, c, context);
|
@@ -2197,24 +2498,18 @@ var Hooks = /*#__PURE__*/function () {
|
|
2197
2498
|
removedInVersion: REMOVED_HOOKS.get(key)
|
2198
2499
|
}));
|
2199
2500
|
}
|
2200
|
-
|
2201
2501
|
if (DEPRECATED_HOOKS.has(key)) {
|
2202
2502
|
warn(DEPRECATED_HOOKS.get(key));
|
2203
2503
|
}
|
2204
|
-
|
2205
2504
|
var bucket = this.getBucket(context);
|
2206
|
-
|
2207
2505
|
if (typeof bucket[key] === 'undefined') {
|
2208
2506
|
this.register(key);
|
2209
2507
|
bucket[key] = [];
|
2210
2508
|
}
|
2211
|
-
|
2212
2509
|
callback.skip = false;
|
2213
|
-
|
2214
2510
|
if (bucket[key].indexOf(callback) === -1) {
|
2215
2511
|
// only add a hook if it has not already been added (adding the same hook twice is now silently ignored)
|
2216
2512
|
var foundInitialHook = false;
|
2217
|
-
|
2218
2513
|
if (callback.initialHook) {
|
2219
2514
|
arrayEach(bucket[key], function (cb, i) {
|
2220
2515
|
if (cb.initialHook) {
|
@@ -2224,15 +2519,14 @@ var Hooks = /*#__PURE__*/function () {
|
|
2224
2519
|
}
|
2225
2520
|
});
|
2226
2521
|
}
|
2227
|
-
|
2228
2522
|
if (!foundInitialHook) {
|
2229
2523
|
bucket[key].push(callback);
|
2230
2524
|
}
|
2231
2525
|
}
|
2232
2526
|
}
|
2233
|
-
|
2234
2527
|
return this;
|
2235
2528
|
}
|
2529
|
+
|
2236
2530
|
/**
|
2237
2531
|
* Adds a listener to a specified hook. After the hook runs this listener will be automatically removed from the bucket.
|
2238
2532
|
*
|
@@ -2246,14 +2540,11 @@ var Hooks = /*#__PURE__*/function () {
|
|
2246
2540
|
* Handsontable.hooks.once('beforeInit', myCallback, hotInstance);
|
2247
2541
|
* ```
|
2248
2542
|
*/
|
2249
|
-
|
2250
2543
|
}, {
|
2251
2544
|
key: "once",
|
2252
2545
|
value: function once(key, callback) {
|
2253
2546
|
var _this2 = this;
|
2254
|
-
|
2255
2547
|
var context = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
2256
|
-
|
2257
2548
|
if (Array.isArray(callback)) {
|
2258
2549
|
arrayEach(callback, function (c) {
|
2259
2550
|
return _this2.once(key, c, context);
|
@@ -2263,6 +2554,7 @@ var Hooks = /*#__PURE__*/function () {
|
|
2263
2554
|
this.add(key, callback, context);
|
2264
2555
|
}
|
2265
2556
|
}
|
2557
|
+
|
2266
2558
|
/**
|
2267
2559
|
* Removes a listener from a hook with a given name. If the `context` argument is provided, it removes a listener from a local hook assigned to the given Handsontable instance.
|
2268
2560
|
*
|
@@ -2277,22 +2569,20 @@ var Hooks = /*#__PURE__*/function () {
|
|
2277
2569
|
* Handsontable.hooks.remove('beforeInit', myCallback);
|
2278
2570
|
* ```
|
2279
2571
|
*/
|
2280
|
-
|
2281
2572
|
}, {
|
2282
2573
|
key: "remove",
|
2283
2574
|
value: function remove(key, callback) {
|
2284
2575
|
var context = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
2285
2576
|
var bucket = this.getBucket(context);
|
2286
|
-
|
2287
2577
|
if (typeof bucket[key] !== 'undefined') {
|
2288
2578
|
if (bucket[key].indexOf(callback) >= 0) {
|
2289
2579
|
callback.skip = true;
|
2290
2580
|
return true;
|
2291
2581
|
}
|
2292
2582
|
}
|
2293
|
-
|
2294
2583
|
return false;
|
2295
2584
|
}
|
2585
|
+
|
2296
2586
|
/**
|
2297
2587
|
* Checks whether there are any registered listeners for the provided hook name.
|
2298
2588
|
* If the `context` parameter is provided, it only checks for listeners assigned to the given Handsontable instance.
|
@@ -2301,7 +2591,6 @@ var Hooks = /*#__PURE__*/function () {
|
|
2301
2591
|
* @param {object} [context=null] A Handsontable instance.
|
2302
2592
|
* @returns {boolean} `true` for success, `false` otherwise.
|
2303
2593
|
*/
|
2304
|
-
|
2305
2594
|
}, {
|
2306
2595
|
key: "has",
|
2307
2596
|
value: function has(key) {
|
@@ -2309,6 +2598,7 @@ var Hooks = /*#__PURE__*/function () {
|
|
2309
2598
|
var bucket = this.getBucket(context);
|
2310
2599
|
return !!(bucket[key] !== void 0 && bucket[key].length);
|
2311
2600
|
}
|
2601
|
+
|
2312
2602
|
/**
|
2313
2603
|
* Runs all local and global callbacks assigned to the hook identified by the `key` parameter.
|
2314
2604
|
* It returns either a return value from the last called callback or the first parameter (`p1`) passed to the `run` function.
|
@@ -2329,7 +2619,6 @@ var Hooks = /*#__PURE__*/function () {
|
|
2329
2619
|
* Handsontable.hooks.run(hot, 'beforeInit');
|
2330
2620
|
* ```
|
2331
2621
|
*/
|
2332
|
-
|
2333
2622
|
}, {
|
2334
2623
|
key: "run",
|
2335
2624
|
value: function run(context, key, p1, p2, p3, p4, p5, p6) {
|
@@ -2337,66 +2626,53 @@ var Hooks = /*#__PURE__*/function () {
|
|
2337
2626
|
var globalHandlers = this.globalBucket[key];
|
2338
2627
|
var length = globalHandlers ? globalHandlers.length : 0;
|
2339
2628
|
var index = 0;
|
2340
|
-
|
2341
2629
|
if (length) {
|
2342
2630
|
// Do not optimise this loop with arrayEach or arrow function! If you do You'll decrease perf because of GC.
|
2343
2631
|
while (index < length) {
|
2344
2632
|
if (!globalHandlers[index] || globalHandlers[index].skip) {
|
2345
2633
|
index += 1;
|
2346
2634
|
/* eslint-disable no-continue */
|
2347
|
-
|
2348
2635
|
continue;
|
2349
2636
|
}
|
2350
|
-
|
2351
2637
|
var res = fastCall(globalHandlers[index], context, p1, p2, p3, p4, p5, p6);
|
2352
|
-
|
2353
2638
|
if (res !== void 0) {
|
2354
2639
|
// eslint-disable-next-line no-param-reassign
|
2355
2640
|
p1 = res;
|
2356
2641
|
}
|
2357
|
-
|
2358
2642
|
if (globalHandlers[index] && globalHandlers[index].runOnce) {
|
2359
2643
|
this.remove(key, globalHandlers[index]);
|
2360
2644
|
}
|
2361
|
-
|
2362
2645
|
index += 1;
|
2363
2646
|
}
|
2364
2647
|
}
|
2365
2648
|
}
|
2366
2649
|
{
|
2367
2650
|
var localHandlers = this.getBucket(context)[key];
|
2368
|
-
|
2369
2651
|
var _length = localHandlers ? localHandlers.length : 0;
|
2370
|
-
|
2371
2652
|
var _index = 0;
|
2372
|
-
|
2373
2653
|
if (_length) {
|
2374
2654
|
// Do not optimise this loop with arrayEach or arrow function! If you do You'll decrease perf because of GC.
|
2375
2655
|
while (_index < _length) {
|
2376
2656
|
if (!localHandlers[_index] || localHandlers[_index].skip) {
|
2377
2657
|
_index += 1;
|
2378
2658
|
/* eslint-disable no-continue */
|
2379
|
-
|
2380
2659
|
continue;
|
2381
2660
|
}
|
2382
|
-
|
2383
2661
|
var _res = fastCall(localHandlers[_index], context, p1, p2, p3, p4, p5, p6);
|
2384
|
-
|
2385
2662
|
if (_res !== void 0) {
|
2386
2663
|
// eslint-disable-next-line no-param-reassign
|
2387
2664
|
p1 = _res;
|
2388
2665
|
}
|
2389
|
-
|
2390
2666
|
if (localHandlers[_index] && localHandlers[_index].runOnce) {
|
2391
2667
|
this.remove(key, localHandlers[_index], context);
|
2392
2668
|
}
|
2393
|
-
|
2394
2669
|
_index += 1;
|
2395
2670
|
}
|
2396
2671
|
}
|
2397
2672
|
}
|
2398
2673
|
return p1;
|
2399
2674
|
}
|
2675
|
+
|
2400
2676
|
/**
|
2401
2677
|
* Destroy all listeners connected to the context. If no context is provided, the global listeners will be destroyed.
|
2402
2678
|
*
|
@@ -2410,7 +2686,6 @@ var Hooks = /*#__PURE__*/function () {
|
|
2410
2686
|
* Handsontable.hooks.destroy(hotInstance);
|
2411
2687
|
* ```
|
2412
2688
|
*/
|
2413
|
-
|
2414
2689
|
}, {
|
2415
2690
|
key: "destroy",
|
2416
2691
|
value: function destroy() {
|
@@ -2420,6 +2695,7 @@ var Hooks = /*#__PURE__*/function () {
|
|
2420
2695
|
return bucket[key].length = 0;
|
2421
2696
|
});
|
2422
2697
|
}
|
2698
|
+
|
2423
2699
|
/**
|
2424
2700
|
* Registers a hook name (adds it to the list of the known hook names). Used by plugins.
|
2425
2701
|
* It is not necessary to call register, but if you use it, your plugin hook will be used returned by
|
@@ -2432,7 +2708,6 @@ var Hooks = /*#__PURE__*/function () {
|
|
2432
2708
|
* Handsontable.hooks.register('myHook');
|
2433
2709
|
* ```
|
2434
2710
|
*/
|
2435
|
-
|
2436
2711
|
}, {
|
2437
2712
|
key: "register",
|
2438
2713
|
value: function register(key) {
|
@@ -2440,6 +2715,7 @@ var Hooks = /*#__PURE__*/function () {
|
|
2440
2715
|
REGISTERED_HOOKS.push(key);
|
2441
2716
|
}
|
2442
2717
|
}
|
2718
|
+
|
2443
2719
|
/**
|
2444
2720
|
* Deregisters a hook name (removes it from the list of known hook names).
|
2445
2721
|
*
|
@@ -2450,7 +2726,6 @@ var Hooks = /*#__PURE__*/function () {
|
|
2450
2726
|
* Handsontable.hooks.deregister('myHook');
|
2451
2727
|
* ```
|
2452
2728
|
*/
|
2453
|
-
|
2454
2729
|
}, {
|
2455
2730
|
key: "deregister",
|
2456
2731
|
value: function deregister(key) {
|
@@ -2458,6 +2733,7 @@ var Hooks = /*#__PURE__*/function () {
|
|
2458
2733
|
REGISTERED_HOOKS.splice(REGISTERED_HOOKS.indexOf(key), 1);
|
2459
2734
|
}
|
2460
2735
|
}
|
2736
|
+
|
2461
2737
|
/**
|
2462
2738
|
* Returns a boolean value depending on if a hook by such name has been removed or deprecated.
|
2463
2739
|
*
|
@@ -2472,12 +2748,12 @@ var Hooks = /*#__PURE__*/function () {
|
|
2472
2748
|
* true
|
2473
2749
|
* ```
|
2474
2750
|
*/
|
2475
|
-
|
2476
2751
|
}, {
|
2477
2752
|
key: "isDeprecated",
|
2478
2753
|
value: function isDeprecated(hookName) {
|
2479
2754
|
return DEPRECATED_HOOKS.has(hookName) || REMOVED_HOOKS.has(hookName);
|
2480
2755
|
}
|
2756
|
+
|
2481
2757
|
/**
|
2482
2758
|
* Returns a boolean depending on if a hook by such name has been registered.
|
2483
2759
|
*
|
@@ -2491,12 +2767,12 @@ var Hooks = /*#__PURE__*/function () {
|
|
2491
2767
|
* true
|
2492
2768
|
* ```
|
2493
2769
|
*/
|
2494
|
-
|
2495
2770
|
}, {
|
2496
2771
|
key: "isRegistered",
|
2497
2772
|
value: function isRegistered(hookName) {
|
2498
2773
|
return REGISTERED_HOOKS.indexOf(hookName) >= 0;
|
2499
2774
|
}
|
2775
|
+
|
2500
2776
|
/**
|
2501
2777
|
* Returns an array of registered hooks.
|
2502
2778
|
*
|
@@ -2518,7 +2794,6 @@ var Hooks = /*#__PURE__*/function () {
|
|
2518
2794
|
* ]
|
2519
2795
|
* ```
|
2520
2796
|
*/
|
2521
|
-
|
2522
2797
|
}, {
|
2523
2798
|
key: "getRegistered",
|
2524
2799
|
value: function getRegistered() {
|
@@ -2530,17 +2805,14 @@ var Hooks = /*#__PURE__*/function () {
|
|
2530
2805
|
return getGlobalSingleton();
|
2531
2806
|
}
|
2532
2807
|
}]);
|
2533
|
-
|
2534
2808
|
return Hooks;
|
2535
2809
|
}();
|
2536
|
-
|
2537
2810
|
var globalSingleton = new Hooks();
|
2811
|
+
|
2538
2812
|
/**
|
2539
2813
|
* @returns {Hooks}
|
2540
2814
|
*/
|
2541
|
-
|
2542
2815
|
function getGlobalSingleton() {
|
2543
2816
|
return globalSingleton;
|
2544
2817
|
}
|
2545
|
-
|
2546
2818
|
export default Hooks;
|