handsontable 12.1.2 → 12.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/3rdparty/SheetClip/SheetClip.js +3 -32
- package/3rdparty/SheetClip/SheetClip.mjs +3 -23
- package/3rdparty/SheetClip/index.js +0 -2
- package/3rdparty/autoResize/autoResize.js +119 -145
- package/3rdparty/autoResize/autoResize.mjs +119 -143
- package/3rdparty/autoResize/index.js +0 -2
- package/3rdparty/walkontable/src/border.js +72 -174
- package/3rdparty/walkontable/src/border.mjs +74 -161
- package/3rdparty/walkontable/src/calculator/constants.js +0 -3
- package/3rdparty/walkontable/src/calculator/constants.mjs +0 -2
- package/3rdparty/walkontable/src/calculator/index.js +0 -10
- package/3rdparty/walkontable/src/calculator/viewportColumns.js +26 -76
- package/3rdparty/walkontable/src/calculator/viewportColumns.mjs +26 -69
- package/3rdparty/walkontable/src/calculator/viewportRows.js +20 -48
- package/3rdparty/walkontable/src/calculator/viewportRows.mjs +20 -41
- package/3rdparty/walkontable/src/cell/coords.js +13 -43
- package/3rdparty/walkontable/src/cell/coords.mjs +13 -38
- package/3rdparty/walkontable/src/cell/range.js +55 -130
- package/3rdparty/walkontable/src/cell/range.mjs +60 -126
- package/3rdparty/walkontable/src/core/_base.js +16 -74
- package/3rdparty/walkontable/src/core/_base.mjs +19 -70
- package/3rdparty/walkontable/src/core/clone.js +1 -40
- package/3rdparty/walkontable/src/core/clone.mjs +3 -30
- package/3rdparty/walkontable/src/core/core.js +3 -57
- package/3rdparty/walkontable/src/core/core.mjs +5 -41
- package/3rdparty/walkontable/src/event.js +31 -78
- package/3rdparty/walkontable/src/event.mjs +31 -65
- package/3rdparty/walkontable/src/facade/core.js +1 -17
- package/3rdparty/walkontable/src/facade/core.mjs +7 -20
- package/3rdparty/walkontable/src/filter/column.js +9 -18
- package/3rdparty/walkontable/src/filter/column.mjs +9 -17
- package/3rdparty/walkontable/src/filter/row.js +9 -18
- package/3rdparty/walkontable/src/filter/row.mjs +9 -17
- package/3rdparty/walkontable/src/index.js +0 -31
- package/3rdparty/walkontable/src/overlay/_base.js +24 -69
- package/3rdparty/walkontable/src/overlay/_base.mjs +31 -68
- package/3rdparty/walkontable/src/overlay/bottom.js +28 -99
- package/3rdparty/walkontable/src/overlay/bottom.mjs +30 -86
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.js +7 -53
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.mjs +9 -40
- package/3rdparty/walkontable/src/overlay/constants.js +0 -6
- package/3rdparty/walkontable/src/overlay/constants.mjs +0 -1
- package/3rdparty/walkontable/src/overlay/index.js +0 -17
- package/3rdparty/walkontable/src/overlay/inlineStart.js +21 -91
- package/3rdparty/walkontable/src/overlay/inlineStart.mjs +23 -78
- package/3rdparty/walkontable/src/overlay/top.js +27 -100
- package/3rdparty/walkontable/src/overlay/top.mjs +29 -87
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.js +4 -51
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.mjs +6 -38
- package/3rdparty/walkontable/src/overlays.js +58 -129
- package/3rdparty/walkontable/src/overlays.mjs +60 -121
- package/3rdparty/walkontable/src/renderer/_base.js +4 -20
- package/3rdparty/walkontable/src/renderer/_base.mjs +8 -22
- package/3rdparty/walkontable/src/renderer/cells.js +10 -54
- package/3rdparty/walkontable/src/renderer/cells.mjs +22 -52
- package/3rdparty/walkontable/src/renderer/colGroup.js +10 -47
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +21 -46
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +8 -50
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +19 -49
- package/3rdparty/walkontable/src/renderer/index.js +13 -36
- package/3rdparty/walkontable/src/renderer/index.mjs +17 -27
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +8 -50
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +20 -49
- package/3rdparty/walkontable/src/renderer/rows.js +3 -46
- package/3rdparty/walkontable/src/renderer/rows.mjs +3 -29
- package/3rdparty/walkontable/src/renderer/table.js +22 -49
- package/3rdparty/walkontable/src/renderer/table.mjs +22 -48
- package/3rdparty/walkontable/src/scroll.js +56 -86
- package/3rdparty/walkontable/src/scroll.mjs +58 -86
- package/3rdparty/walkontable/src/selection.js +20 -101
- package/3rdparty/walkontable/src/selection.mjs +22 -85
- package/3rdparty/walkontable/src/settings.js +9 -29
- package/3rdparty/walkontable/src/settings.mjs +9 -27
- package/3rdparty/walkontable/src/table/bottom.js +1 -35
- package/3rdparty/walkontable/src/table/bottom.mjs +6 -25
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.js +1 -35
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +7 -26
- package/3rdparty/walkontable/src/table/inlineStart.js +1 -35
- package/3rdparty/walkontable/src/table/inlineStart.mjs +3 -22
- package/3rdparty/walkontable/src/table/master.js +10 -55
- package/3rdparty/walkontable/src/table/master.mjs +15 -44
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +7 -28
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +7 -26
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +7 -28
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +7 -26
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.js +7 -22
- package/3rdparty/walkontable/src/table/mixin/stickyColumnsStart.mjs +7 -20
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +7 -23
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +7 -21
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +7 -22
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +7 -20
- package/3rdparty/walkontable/src/table/top.js +1 -35
- package/3rdparty/walkontable/src/table/top.mjs +6 -25
- package/3rdparty/walkontable/src/table/topInlineStartCorner.js +1 -35
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +7 -26
- package/3rdparty/walkontable/src/table.js +74 -238
- package/3rdparty/walkontable/src/table.mjs +84 -227
- package/3rdparty/walkontable/src/types.js +0 -5
- package/3rdparty/walkontable/src/types.mjs +0 -5
- package/3rdparty/walkontable/src/utils/column.js +9 -31
- package/3rdparty/walkontable/src/utils/column.mjs +13 -30
- package/3rdparty/walkontable/src/utils/nodesPool.js +3 -12
- package/3rdparty/walkontable/src/utils/nodesPool.mjs +3 -11
- package/3rdparty/walkontable/src/utils/orderView/constants.js +0 -3
- package/3rdparty/walkontable/src/utils/orderView/constants.mjs +0 -2
- package/3rdparty/walkontable/src/utils/orderView/index.js +0 -5
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -33
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +6 -26
- package/3rdparty/walkontable/src/utils/orderView/view.js +14 -46
- package/3rdparty/walkontable/src/utils/orderView/view.mjs +21 -50
- package/3rdparty/walkontable/src/utils/orderView/viewSize.js +3 -15
- package/3rdparty/walkontable/src/utils/orderView/viewSize.mjs +3 -14
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.js +8 -22
- package/3rdparty/walkontable/src/utils/orderView/viewSizeSet.mjs +23 -34
- package/3rdparty/walkontable/src/utils/row.js +2 -13
- package/3rdparty/walkontable/src/utils/row.mjs +2 -12
- package/3rdparty/walkontable/src/viewport.js +38 -100
- package/3rdparty/walkontable/src/viewport.mjs +40 -99
- package/CHANGELOG.md +103 -5
- package/base.js +6 -17
- package/base.mjs +6 -12
- package/cellTypes/autocompleteType/autocompleteType.js +0 -4
- package/cellTypes/autocompleteType/index.js +0 -2
- package/cellTypes/checkboxType/checkboxType.js +0 -3
- package/cellTypes/checkboxType/index.js +0 -2
- package/cellTypes/dateType/dateType.js +0 -4
- package/cellTypes/dateType/index.js +0 -2
- package/cellTypes/dropdownType/dropdownType.js +0 -4
- package/cellTypes/dropdownType/index.js +0 -2
- package/cellTypes/handsontableType/handsontableType.js +0 -3
- package/cellTypes/handsontableType/index.js +0 -2
- package/cellTypes/index.js +0 -21
- package/cellTypes/index.mjs +3 -5
- package/cellTypes/numericType/index.js +0 -2
- package/cellTypes/numericType/numericType.js +0 -4
- package/cellTypes/passwordType/index.js +0 -2
- package/cellTypes/passwordType/passwordType.js +0 -3
- package/cellTypes/registry.js +10 -25
- package/cellTypes/registry.mjs +10 -20
- package/cellTypes/textType/index.js +0 -2
- package/cellTypes/textType/textType.js +0 -3
- package/cellTypes/timeType/index.js +0 -2
- package/cellTypes/timeType/timeType.js +0 -4
- package/core.d.ts +6 -4
- package/core.js +514 -974
- package/core.mjs +519 -921
- package/dataMap/dataMap.js +127 -212
- package/dataMap/dataMap.mjs +127 -188
- package/{dataSource.js → dataMap/dataSource.js} +18 -66
- package/{dataSource.mjs → dataMap/dataSource.mjs} +20 -60
- package/dataMap/index.js +0 -13
- package/dataMap/metaManager/index.js +21 -46
- package/dataMap/metaManager/index.mjs +47 -64
- package/dataMap/metaManager/lazyFactoryMap.js +23 -55
- package/dataMap/metaManager/lazyFactoryMap.mjs +23 -43
- package/dataMap/metaManager/metaLayers/cellMeta.js +16 -52
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +16 -37
- package/dataMap/metaManager/metaLayers/columnMeta.js +8 -22
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +14 -25
- package/dataMap/metaManager/metaLayers/globalMeta.js +4 -19
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -15
- package/dataMap/metaManager/metaLayers/tableMeta.js +4 -15
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +28 -37
- package/dataMap/metaManager/metaSchema.js +196 -257
- package/dataMap/metaManager/metaSchema.mjs +196 -248
- package/dataMap/metaManager/mods/dynamicCellMeta.js +6 -36
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +20 -39
- package/dataMap/metaManager/mods/extendMetaProperties.js +5 -28
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -18
- package/dataMap/metaManager/utils.js +11 -20
- package/dataMap/metaManager/utils.mjs +21 -23
- package/dataMap/replaceData.js +14 -35
- package/dataMap/replaceData.mjs +35 -45
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +64469 -93042
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +527 -284
- package/dist/handsontable.js +9616 -21414
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +3 -3
- package/dist/languages/all.js +0 -175
- package/dist/languages/ar-AR.js +0 -10
- package/dist/languages/cs-CZ.js +0 -10
- package/dist/languages/de-CH.js +0 -10
- package/dist/languages/de-DE.js +0 -10
- package/dist/languages/en-US.js +0 -10
- package/dist/languages/es-MX.js +0 -10
- package/dist/languages/fr-FR.js +0 -10
- package/dist/languages/it-IT.js +0 -10
- package/dist/languages/ja-JP.js +0 -10
- package/dist/languages/ko-KR.js +0 -10
- package/dist/languages/lv-LV.js +0 -10
- package/dist/languages/nb-NO.js +0 -10
- package/dist/languages/nl-NL.js +0 -10
- package/dist/languages/pl-PL.js +0 -10
- package/dist/languages/pt-BR.js +0 -10
- package/dist/languages/ru-RU.js +0 -10
- package/dist/languages/sr-SP.js +0 -10
- package/dist/languages/zh-CN.js +0 -10
- package/dist/languages/zh-TW.js +0 -10
- package/editorManager.js +89 -124
- package/editorManager.mjs +89 -104
- package/editors/autocompleteEditor/autocompleteEditor.js +26 -133
- package/editors/autocompleteEditor/autocompleteEditor.mjs +26 -104
- package/editors/autocompleteEditor/index.js +0 -2
- package/editors/baseEditor/baseEditor.js +45 -155
- package/editors/baseEditor/baseEditor.mjs +45 -129
- package/editors/baseEditor/index.js +0 -2
- package/editors/checkboxEditor/checkboxEditor.js +2 -33
- package/editors/checkboxEditor/checkboxEditor.mjs +2 -19
- package/editors/checkboxEditor/index.js +0 -2
- package/editors/dateEditor/dateEditor.js +36 -97
- package/editors/dateEditor/dateEditor.mjs +35 -74
- package/editors/dateEditor/index.js +0 -2
- package/editors/dropdownEditor/dropdownEditor.js +1 -41
- package/editors/dropdownEditor/dropdownEditor.mjs +1 -22
- package/editors/dropdownEditor/index.js +0 -2
- package/editors/handsontableEditor/handsontableEditor.js +13 -85
- package/editors/handsontableEditor/handsontableEditor.mjs +13 -66
- package/editors/handsontableEditor/index.js +0 -2
- package/editors/index.js +0 -25
- package/editors/index.mjs +3 -5
- package/editors/numericEditor/index.js +0 -2
- package/editors/numericEditor/numericEditor.js +1 -31
- package/editors/numericEditor/numericEditor.mjs +1 -18
- package/editors/passwordEditor/index.js +0 -2
- package/editors/passwordEditor/passwordEditor.js +1 -38
- package/editors/passwordEditor/passwordEditor.mjs +1 -22
- package/editors/registry.js +10 -36
- package/editors/registry.mjs +10 -28
- package/editors/selectEditor/index.js +0 -2
- package/editors/selectEditor/selectEditor.js +21 -73
- package/editors/selectEditor/selectEditor.mjs +21 -56
- package/editors/textEditor/caretPositioner.js +0 -12
- package/editors/textEditor/caretPositioner.mjs +10 -20
- package/editors/textEditor/index.js +0 -2
- package/editors/textEditor/textEditor.js +38 -137
- package/editors/textEditor/textEditor.mjs +38 -106
- package/editors/timeEditor/index.js +0 -2
- package/editors/timeEditor/timeEditor.js +1 -36
- package/editors/timeEditor/timeEditor.mjs +1 -21
- package/eventManager.js +20 -56
- package/eventManager.mjs +23 -56
- package/helpers/array.js +22 -88
- package/helpers/array.mjs +22 -58
- package/helpers/browser.js +25 -51
- package/helpers/browser.mjs +25 -32
- package/helpers/console.js +3 -13
- package/helpers/console.mjs +8 -16
- package/helpers/data.d.ts +0 -1
- package/helpers/data.js +10 -55
- package/helpers/data.mjs +10 -33
- package/helpers/date.js +2 -3
- package/helpers/date.mjs +2 -2
- package/helpers/dom/element.js +67 -259
- package/helpers/dom/element.mjs +74 -194
- package/helpers/dom/event.js +3 -7
- package/helpers/dom/event.mjs +3 -3
- package/helpers/feature.js +13 -47
- package/helpers/feature.mjs +13 -31
- package/helpers/function.js +14 -59
- package/helpers/function.mjs +20 -52
- package/helpers/mixed.js +9 -66
- package/helpers/mixed.mjs +15 -51
- package/helpers/number.js +4 -46
- package/helpers/number.mjs +4 -23
- package/helpers/object.js +15 -72
- package/helpers/object.mjs +21 -52
- package/helpers/string.js +6 -28
- package/helpers/string.mjs +12 -21
- package/helpers/templateLiteralTag.js +0 -6
- package/helpers/templateLiteralTag.mjs +7 -10
- package/helpers/unicode.js +17 -26
- package/helpers/unicode.mjs +17 -15
- package/helpers/wrappers/jquery.js +4 -14
- package/helpers/wrappers/jquery.mjs +4 -13
- package/i18n/constants.js +1 -3
- package/i18n/constants.mjs +1 -1
- package/i18n/index.js +0 -7
- package/i18n/languages/ar-AR.js +0 -16
- package/i18n/languages/ar-AR.mjs +1 -4
- package/i18n/languages/cs-CZ.js +0 -16
- package/i18n/languages/cs-CZ.mjs +1 -4
- package/i18n/languages/de-CH.js +0 -16
- package/i18n/languages/de-CH.mjs +1 -4
- package/i18n/languages/de-DE.js +0 -16
- package/i18n/languages/de-DE.mjs +1 -4
- package/i18n/languages/en-US.js +0 -16
- package/i18n/languages/en-US.mjs +1 -4
- package/i18n/languages/es-MX.js +0 -16
- package/i18n/languages/es-MX.mjs +1 -4
- package/i18n/languages/fr-FR.js +0 -16
- package/i18n/languages/fr-FR.mjs +1 -4
- package/i18n/languages/index.js +0 -39
- package/i18n/languages/it-IT.js +0 -16
- package/i18n/languages/it-IT.mjs +1 -4
- package/i18n/languages/ja-JP.js +0 -16
- package/i18n/languages/ja-JP.mjs +1 -4
- package/i18n/languages/ko-KR.js +0 -16
- package/i18n/languages/ko-KR.mjs +1 -4
- package/i18n/languages/lv-LV.js +0 -16
- package/i18n/languages/lv-LV.mjs +1 -4
- package/i18n/languages/nb-NO.js +0 -16
- package/i18n/languages/nb-NO.mjs +1 -4
- package/i18n/languages/nl-NL.js +0 -16
- package/i18n/languages/nl-NL.mjs +1 -4
- package/i18n/languages/pl-PL.js +0 -16
- package/i18n/languages/pl-PL.mjs +1 -4
- package/i18n/languages/pt-BR.js +0 -16
- package/i18n/languages/pt-BR.mjs +1 -4
- package/i18n/languages/ru-RU.js +0 -16
- package/i18n/languages/ru-RU.mjs +1 -4
- package/i18n/languages/sr-SP.js +0 -16
- package/i18n/languages/sr-SP.mjs +1 -4
- package/i18n/languages/zh-CN.js +0 -16
- package/i18n/languages/zh-CN.mjs +1 -4
- package/i18n/languages/zh-TW.js +0 -16
- package/i18n/languages/zh-TW.mjs +1 -4
- package/i18n/phraseFormatters/index.js +4 -11
- package/i18n/phraseFormatters/index.mjs +4 -6
- package/i18n/phraseFormatters/pluralize.js +0 -5
- package/i18n/phraseFormatters/pluralize.mjs +0 -3
- package/i18n/phraseFormatters/substituteVariables.js +0 -4
- package/i18n/phraseFormatters/substituteVariables.mjs +8 -11
- package/i18n/registry.js +18 -59
- package/i18n/registry.mjs +18 -30
- package/i18n/utils.js +4 -22
- package/i18n/utils.mjs +13 -21
- package/index.js +19 -56
- package/index.mjs +19 -15
- package/languages/all.js +0 -175
- package/languages/ar-AR.js +0 -10
- package/languages/ar-AR.mjs +1 -4
- package/languages/cs-CZ.js +0 -10
- package/languages/cs-CZ.mjs +1 -4
- package/languages/de-CH.js +0 -10
- package/languages/de-CH.mjs +1 -4
- package/languages/de-DE.js +0 -10
- package/languages/de-DE.mjs +1 -4
- package/languages/en-US.js +0 -10
- package/languages/en-US.mjs +1 -4
- package/languages/es-MX.js +0 -10
- package/languages/es-MX.mjs +1 -4
- package/languages/fr-FR.js +0 -10
- package/languages/fr-FR.mjs +1 -4
- package/languages/index.js +0 -175
- package/languages/it-IT.js +0 -10
- package/languages/it-IT.mjs +1 -4
- package/languages/ja-JP.js +0 -10
- package/languages/ja-JP.mjs +1 -4
- package/languages/ko-KR.js +0 -10
- package/languages/ko-KR.mjs +1 -4
- package/languages/lv-LV.js +0 -10
- package/languages/lv-LV.mjs +1 -4
- package/languages/nb-NO.js +0 -10
- package/languages/nb-NO.mjs +1 -4
- package/languages/nl-NL.js +0 -10
- package/languages/nl-NL.mjs +1 -4
- package/languages/pl-PL.js +0 -10
- package/languages/pl-PL.mjs +1 -4
- package/languages/pt-BR.js +0 -10
- package/languages/pt-BR.mjs +1 -4
- package/languages/ru-RU.js +0 -10
- package/languages/ru-RU.mjs +1 -4
- package/languages/sr-SP.js +0 -10
- package/languages/sr-SP.mjs +1 -4
- package/languages/zh-CN.js +0 -10
- package/languages/zh-CN.mjs +1 -4
- package/languages/zh-TW.js +0 -10
- package/languages/zh-TW.mjs +1 -4
- package/mixins/hooksRefRegisterer.js +4 -18
- package/mixins/hooksRefRegisterer.mjs +4 -15
- package/mixins/localHooks.js +7 -17
- package/mixins/localHooks.mjs +7 -14
- package/package.json +1 -1
- package/pluginHooks.d.ts +3 -4
- package/pluginHooks.js +288 -110
- package/pluginHooks.mjs +287 -97
- package/plugins/autoColumnSize/autoColumnSize.js +74 -172
- package/plugins/autoColumnSize/autoColumnSize.mjs +74 -137
- package/plugins/autoColumnSize/index.js +0 -2
- package/plugins/autoRowSize/autoRowSize.js +73 -153
- package/plugins/autoRowSize/autoRowSize.mjs +73 -124
- package/plugins/autoRowSize/index.js +0 -2
- package/plugins/autofill/autofill.js +46 -163
- package/plugins/autofill/autofill.mjs +46 -131
- package/plugins/autofill/index.js +0 -2
- package/plugins/autofill/utils.js +4 -26
- package/plugins/autofill/utils.mjs +4 -18
- package/plugins/base/base.js +21 -92
- package/plugins/base/base.mjs +21 -63
- package/plugins/base/index.js +0 -2
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +19 -52
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +19 -33
- package/plugins/bindRowsWithHeaders/index.js +0 -2
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +5 -41
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +5 -29
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +6 -53
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +6 -37
- package/plugins/collapsibleColumns/collapsibleColumns.js +96 -188
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +97 -158
- package/plugins/collapsibleColumns/index.js +0 -2
- package/plugins/columnSorting/columnSorting.js +50 -188
- package/plugins/columnSorting/columnSorting.mjs +50 -143
- package/plugins/columnSorting/columnStatesManager.js +15 -71
- package/plugins/columnSorting/columnStatesManager.mjs +15 -48
- package/plugins/columnSorting/domHelpers.js +2 -18
- package/plugins/columnSorting/domHelpers.mjs +2 -7
- package/plugins/columnSorting/index.js +0 -2
- package/plugins/columnSorting/rootComparator.js +5 -24
- package/plugins/columnSorting/rootComparator.mjs +12 -21
- package/plugins/columnSorting/sortFunction/checkbox.js +8 -16
- package/plugins/columnSorting/sortFunction/checkbox.mjs +16 -21
- package/plugins/columnSorting/sortFunction/date.js +2 -19
- package/plugins/columnSorting/sortFunction/date.mjs +10 -23
- package/plugins/columnSorting/sortFunction/default.js +2 -17
- package/plugins/columnSorting/sortFunction/default.mjs +10 -23
- package/plugins/columnSorting/sortFunction/numeric.js +2 -11
- package/plugins/columnSorting/sortFunction/numeric.mjs +10 -17
- package/plugins/columnSorting/sortService/engine.js +3 -13
- package/plugins/columnSorting/sortService/engine.mjs +3 -5
- package/plugins/columnSorting/sortService/index.js +0 -5
- package/plugins/columnSorting/sortService/registry.js +6 -18
- package/plugins/columnSorting/sortService/registry.mjs +6 -10
- package/plugins/columnSorting/utils.js +9 -34
- package/plugins/columnSorting/utils.mjs +9 -15
- package/plugins/columnSummary/columnSummary.js +66 -126
- package/plugins/columnSummary/columnSummary.mjs +66 -101
- package/plugins/columnSummary/endpoints.js +21 -98
- package/plugins/columnSummary/endpoints.mjs +26 -99
- package/plugins/columnSummary/index.js +0 -2
- package/plugins/columnSummary/utils.js +13 -0
- package/plugins/columnSummary/utils.mjs +9 -0
- package/plugins/comments/commentEditor.js +16 -28
- package/plugins/comments/commentEditor.mjs +21 -32
- package/plugins/comments/comments.js +92 -175
- package/plugins/comments/comments.mjs +92 -149
- package/plugins/comments/displaySwitch.js +6 -23
- package/plugins/comments/displaySwitch.mjs +6 -18
- package/plugins/comments/index.js +0 -2
- package/plugins/contextMenu/commandExecutor.js +9 -40
- package/plugins/contextMenu/commandExecutor.mjs +14 -41
- package/plugins/contextMenu/contextMenu.js +26 -105
- package/plugins/contextMenu/contextMenu.mjs +26 -75
- package/plugins/contextMenu/cursor.js +6 -20
- package/plugins/contextMenu/cursor.mjs +11 -24
- package/plugins/contextMenu/index.js +0 -2
- package/plugins/contextMenu/itemsFactory.js +14 -43
- package/plugins/contextMenu/itemsFactory.mjs +19 -44
- package/plugins/contextMenu/menu.js +61 -177
- package/plugins/contextMenu/menu.mjs +61 -149
- package/plugins/contextMenu/predefinedItems/alignment.js +1 -55
- package/plugins/contextMenu/predefinedItems/alignment.mjs +1 -37
- package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -20
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -4
- package/plugins/contextMenu/predefinedItems/columnLeft.js +6 -43
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +6 -26
- package/plugins/contextMenu/predefinedItems/columnRight.js +4 -42
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/noItems.js +1 -4
- package/plugins/contextMenu/predefinedItems/noItems.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/readOnly.js +1 -25
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +1 -8
- package/plugins/contextMenu/predefinedItems/redo.js +1 -16
- package/plugins/contextMenu/predefinedItems/redo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/removeColumn.js +3 -38
- package/plugins/contextMenu/predefinedItems/removeColumn.mjs +3 -18
- package/plugins/contextMenu/predefinedItems/removeRow.js +3 -37
- package/plugins/contextMenu/predefinedItems/removeRow.mjs +3 -17
- package/plugins/contextMenu/predefinedItems/rowAbove.js +6 -35
- package/plugins/contextMenu/predefinedItems/rowAbove.mjs +6 -19
- package/plugins/contextMenu/predefinedItems/rowBelow.js +4 -42
- package/plugins/contextMenu/predefinedItems/rowBelow.mjs +4 -25
- package/plugins/contextMenu/predefinedItems/separator.js +1 -2
- package/plugins/contextMenu/predefinedItems/separator.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/undo.js +1 -16
- package/plugins/contextMenu/predefinedItems/undo.mjs +1 -1
- package/plugins/contextMenu/predefinedItems.js +2 -48
- package/plugins/contextMenu/predefinedItems.mjs +2 -7
- package/plugins/contextMenu/utils.js +17 -57
- package/plugins/contextMenu/utils.mjs +21 -39
- package/plugins/copyPaste/clipboardData.js +1 -10
- package/plugins/copyPaste/clipboardData.mjs +1 -9
- package/plugins/copyPaste/contextMenuItem/copy.js +2 -17
- package/plugins/copyPaste/contextMenuItem/copy.mjs +6 -9
- package/plugins/copyPaste/contextMenuItem/cut.js +2 -17
- package/plugins/copyPaste/contextMenuItem/cut.mjs +6 -9
- package/plugins/copyPaste/copyPaste.js +53 -185
- package/plugins/copyPaste/copyPaste.mjs +53 -144
- package/plugins/copyPaste/focusableElement.js +12 -56
- package/plugins/copyPaste/focusableElement.mjs +15 -49
- package/plugins/copyPaste/index.js +0 -2
- package/plugins/copyPaste/pasteEvent.js +1 -10
- package/plugins/copyPaste/pasteEvent.mjs +3 -10
- package/plugins/customBorders/contextMenuItem/bottom.js +0 -17
- package/plugins/customBorders/contextMenuItem/bottom.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/index.js +0 -11
- package/plugins/customBorders/contextMenuItem/left.js +0 -17
- package/plugins/customBorders/contextMenuItem/left.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/noBorders.js +0 -15
- package/plugins/customBorders/contextMenuItem/noBorders.mjs +4 -6
- package/plugins/customBorders/contextMenuItem/right.js +0 -17
- package/plugins/customBorders/contextMenuItem/right.mjs +4 -8
- package/plugins/customBorders/contextMenuItem/top.js +0 -17
- package/plugins/customBorders/contextMenuItem/top.mjs +4 -8
- package/plugins/customBorders/customBorders.js +52 -181
- package/plugins/customBorders/customBorders.mjs +52 -147
- package/plugins/customBorders/index.js +0 -2
- package/plugins/customBorders/utils.js +13 -52
- package/plugins/customBorders/utils.mjs +20 -39
- package/plugins/dragToScroll/dragToScroll.js +17 -74
- package/plugins/dragToScroll/dragToScroll.mjs +17 -55
- package/plugins/dragToScroll/index.js +0 -2
- package/plugins/dropdownMenu/dropdownMenu.js +47 -126
- package/plugins/dropdownMenu/dropdownMenu.mjs +47 -95
- package/plugins/dropdownMenu/index.js +0 -2
- package/plugins/exportFile/dataProvider.js +24 -69
- package/plugins/exportFile/dataProvider.mjs +26 -60
- package/plugins/exportFile/exportFile.js +48 -58
- package/plugins/exportFile/exportFile.mjs +48 -36
- package/plugins/exportFile/index.js +0 -2
- package/plugins/exportFile/typeFactory.js +1 -11
- package/plugins/exportFile/typeFactory.mjs +1 -4
- package/plugins/exportFile/types/_base.js +2 -16
- package/plugins/exportFile/types/_base.mjs +4 -16
- package/plugins/exportFile/types/csv.js +2 -50
- package/plugins/exportFile/types/csv.mjs +2 -29
- package/plugins/filters/component/_base.js +12 -32
- package/plugins/filters/component/_base.mjs +15 -30
- package/plugins/filters/component/actionBar.js +6 -55
- package/plugins/filters/component/actionBar.mjs +9 -38
- package/plugins/filters/component/condition.js +25 -122
- package/plugins/filters/component/condition.mjs +24 -88
- package/plugins/filters/component/operators.js +10 -68
- package/plugins/filters/component/operators.mjs +10 -45
- package/plugins/filters/component/value.js +25 -99
- package/plugins/filters/component/value.mjs +28 -72
- package/plugins/filters/condition/beginsWith.js +2 -32
- package/plugins/filters/condition/beginsWith.mjs +2 -10
- package/plugins/filters/condition/between.js +3 -37
- package/plugins/filters/condition/between.mjs +3 -15
- package/plugins/filters/condition/byValue.js +3 -27
- package/plugins/filters/condition/byValue.mjs +3 -12
- package/plugins/filters/condition/contains.js +2 -32
- package/plugins/filters/condition/contains.mjs +2 -10
- package/plugins/filters/condition/date/after.js +2 -34
- package/plugins/filters/condition/date/after.mjs +2 -12
- package/plugins/filters/condition/date/before.js +2 -34
- package/plugins/filters/condition/date/before.mjs +2 -12
- package/plugins/filters/condition/date/today.js +1 -22
- package/plugins/filters/condition/date/today.mjs +1 -3
- package/plugins/filters/condition/date/tomorrow.js +1 -22
- package/plugins/filters/condition/date/tomorrow.mjs +1 -3
- package/plugins/filters/condition/date/yesterday.js +1 -22
- package/plugins/filters/condition/date/yesterday.mjs +1 -3
- package/plugins/filters/condition/empty.js +1 -19
- package/plugins/filters/condition/empty.mjs +1 -1
- package/plugins/filters/condition/endsWith.js +2 -32
- package/plugins/filters/condition/endsWith.mjs +2 -10
- package/plugins/filters/condition/equal.js +2 -31
- package/plugins/filters/condition/equal.mjs +2 -10
- package/plugins/filters/condition/false.js +1 -5
- package/plugins/filters/condition/false.mjs +1 -1
- package/plugins/filters/condition/greaterThan.js +2 -32
- package/plugins/filters/condition/greaterThan.mjs +2 -12
- package/plugins/filters/condition/greaterThanOrEqual.js +2 -32
- package/plugins/filters/condition/greaterThanOrEqual.mjs +2 -12
- package/plugins/filters/condition/lessThan.js +2 -32
- package/plugins/filters/condition/lessThan.mjs +2 -12
- package/plugins/filters/condition/lessThanOrEqual.js +2 -32
- package/plugins/filters/condition/lessThanOrEqual.mjs +2 -12
- package/plugins/filters/condition/none.js +1 -18
- package/plugins/filters/condition/none.mjs +1 -1
- package/plugins/filters/condition/notBetween.js +1 -19
- package/plugins/filters/condition/notBetween.mjs +1 -1
- package/plugins/filters/condition/notContains.js +1 -19
- package/plugins/filters/condition/notContains.mjs +1 -1
- package/plugins/filters/condition/notEmpty.js +1 -19
- package/plugins/filters/condition/notEmpty.mjs +1 -1
- package/plugins/filters/condition/notEqual.js +1 -19
- package/plugins/filters/condition/notEqual.mjs +1 -1
- package/plugins/filters/condition/true.js +1 -5
- package/plugins/filters/condition/true.mjs +1 -1
- package/plugins/filters/conditionCollection.js +21 -80
- package/plugins/filters/conditionCollection.mjs +21 -57
- package/plugins/filters/conditionRegisterer.js +5 -14
- package/plugins/filters/conditionRegisterer.mjs +5 -9
- package/plugins/filters/conditionUpdateObserver.js +17 -57
- package/plugins/filters/conditionUpdateObserver.mjs +25 -53
- package/plugins/filters/constants.js +1 -66
- package/plugins/filters/constants.mjs +1 -8
- package/plugins/filters/dataFilter.js +4 -21
- package/plugins/filters/dataFilter.mjs +7 -23
- package/plugins/filters/filters.d.ts +1 -1
- package/plugins/filters/filters.js +147 -272
- package/plugins/filters/filters.mjs +148 -228
- package/plugins/filters/index.js +0 -2
- package/plugins/filters/logicalOperationRegisterer.js +3 -9
- package/plugins/filters/logicalOperationRegisterer.mjs +3 -4
- package/plugins/filters/logicalOperations/conjunction.js +2 -19
- package/plugins/filters/logicalOperations/conjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunction.js +2 -19
- package/plugins/filters/logicalOperations/disjunction.mjs +2 -2
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +2 -21
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.mjs +2 -3
- package/plugins/filters/ui/_base.js +12 -55
- package/plugins/filters/ui/_base.mjs +12 -35
- package/plugins/filters/ui/input.js +7 -52
- package/plugins/filters/ui/input.mjs +7 -34
- package/plugins/filters/ui/link.js +3 -43
- package/plugins/filters/ui/link.mjs +3 -25
- package/plugins/filters/ui/multipleSelect.js +26 -120
- package/plugins/filters/ui/multipleSelect.mjs +20 -76
- package/plugins/filters/ui/radioInput.js +6 -47
- package/plugins/filters/ui/radioInput.mjs +6 -30
- package/plugins/filters/ui/select.js +14 -76
- package/plugins/filters/ui/select.mjs +14 -52
- package/plugins/filters/utils.js +6 -39
- package/plugins/filters/utils.mjs +6 -23
- package/plugins/formulas/engine/register.js +24 -74
- package/plugins/formulas/engine/register.mjs +29 -51
- package/plugins/formulas/engine/settings.js +4 -24
- package/plugins/formulas/engine/settings.mjs +4 -12
- package/plugins/formulas/formulas.js +103 -295
- package/plugins/formulas/formulas.mjs +104 -248
- package/plugins/formulas/index.js +0 -2
- package/plugins/formulas/utils.js +1 -3
- package/plugins/formulas/utils.mjs +1 -1
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +4 -38
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +8 -25
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +17 -45
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +21 -29
- package/plugins/hiddenColumns/hiddenColumns.js +72 -153
- package/plugins/hiddenColumns/hiddenColumns.mjs +72 -110
- package/plugins/hiddenColumns/index.js +0 -2
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +4 -38
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +8 -25
- package/plugins/hiddenRows/contextMenuItem/showRow.js +17 -45
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +21 -29
- package/plugins/hiddenRows/hiddenRows.js +70 -152
- package/plugins/hiddenRows/hiddenRows.mjs +70 -109
- package/plugins/hiddenRows/index.js +0 -2
- package/plugins/index.js +0 -71
- package/plugins/index.mjs +3 -5
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -28
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +5 -17
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -28
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +5 -17
- package/plugins/manualColumnFreeze/index.js +0 -2
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +21 -78
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +21 -54
- package/plugins/manualColumnMove/index.js +0 -2
- package/plugins/manualColumnMove/manualColumnMove.js +45 -134
- package/plugins/manualColumnMove/manualColumnMove.mjs +45 -106
- package/plugins/manualColumnMove/ui/_base.js +12 -30
- package/plugins/manualColumnMove/ui/_base.mjs +12 -27
- package/plugins/manualColumnMove/ui/backlight.js +1 -37
- package/plugins/manualColumnMove/ui/backlight.mjs +1 -22
- package/plugins/manualColumnMove/ui/guideline.js +1 -37
- package/plugins/manualColumnMove/ui/guideline.mjs +1 -22
- package/plugins/manualColumnResize/index.js +0 -2
- package/plugins/manualColumnResize/manualColumnResize.js +44 -143
- package/plugins/manualColumnResize/manualColumnResize.mjs +43 -118
- package/plugins/manualRowMove/index.js +0 -2
- package/plugins/manualRowMove/manualRowMove.js +45 -137
- package/plugins/manualRowMove/manualRowMove.mjs +45 -109
- package/plugins/manualRowMove/ui/_base.js +12 -27
- package/plugins/manualRowMove/ui/_base.mjs +12 -26
- package/plugins/manualRowMove/ui/backlight.js +1 -37
- package/plugins/manualRowMove/ui/backlight.mjs +1 -22
- package/plugins/manualRowMove/ui/guideline.js +1 -37
- package/plugins/manualRowMove/ui/guideline.mjs +1 -22
- package/plugins/manualRowResize/index.js +0 -2
- package/plugins/manualRowResize/manualRowResize.js +42 -138
- package/plugins/manualRowResize/manualRowResize.mjs +41 -112
- package/plugins/mergeCells/calculations/autofill.js +39 -130
- package/plugins/mergeCells/calculations/autofill.mjs +44 -122
- package/plugins/mergeCells/calculations/selection.js +9 -40
- package/plugins/mergeCells/calculations/selection.mjs +9 -37
- package/plugins/mergeCells/cellCoords.js +30 -51
- package/plugins/mergeCells/cellCoords.mjs +35 -54
- package/plugins/mergeCells/cellsCollection.js +13 -84
- package/plugins/mergeCells/cellsCollection.mjs +18 -69
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +0 -22
- package/plugins/mergeCells/contextMenuItem/toggleMerge.mjs +4 -11
- package/plugins/mergeCells/index.js +0 -2
- package/plugins/mergeCells/mergeCells.js +130 -333
- package/plugins/mergeCells/mergeCells.mjs +130 -292
- package/plugins/mergeCells/utils.js +0 -3
- package/plugins/mergeCells/utils.mjs +0 -1
- package/plugins/multiColumnSorting/domHelpers.js +3 -15
- package/plugins/multiColumnSorting/domHelpers.mjs +3 -7
- package/plugins/multiColumnSorting/index.js +0 -2
- package/plugins/multiColumnSorting/multiColumnSorting.js +14 -66
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +14 -44
- package/plugins/multiColumnSorting/rootComparator.js +2 -26
- package/plugins/multiColumnSorting/rootComparator.mjs +9 -23
- package/plugins/multiColumnSorting/utils.js +0 -7
- package/plugins/multiColumnSorting/utils.mjs +3 -8
- package/plugins/multipleSelectionHandles/index.js +0 -2
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +6 -109
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +6 -87
- package/plugins/nestedHeaders/index.js +0 -2
- package/plugins/nestedHeaders/nestedHeaders.js +79 -200
- package/plugins/nestedHeaders/nestedHeaders.mjs +80 -173
- package/plugins/nestedHeaders/stateManager/headersTree.js +16 -93
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +16 -73
- package/plugins/nestedHeaders/stateManager/index.js +24 -107
- package/plugins/nestedHeaders/stateManager/index.mjs +51 -115
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +7 -25
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +38 -51
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.js +12 -27
- package/plugins/nestedHeaders/stateManager/nodeModifiers/collapse.mjs +29 -35
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.js +10 -25
- package/plugins/nestedHeaders/stateManager/nodeModifiers/expand.mjs +26 -32
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.js +3 -19
- package/plugins/nestedHeaders/stateManager/nodeModifiers/hideColumn.mjs +9 -20
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.js +2 -12
- package/plugins/nestedHeaders/stateManager/nodeModifiers/index.mjs +2 -5
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.js +3 -22
- package/plugins/nestedHeaders/stateManager/nodeModifiers/showColumn.mjs +9 -21
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.js +3 -10
- package/plugins/nestedHeaders/stateManager/nodeModifiers/utils/tree.mjs +3 -7
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -36
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +44 -61
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +16 -78
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +21 -68
- package/plugins/nestedHeaders/stateManager/utils.js +19 -22
- package/plugins/nestedHeaders/stateManager/utils.mjs +19 -20
- package/plugins/nestedHeaders/utils/ghostTable.js +9 -37
- package/plugins/nestedHeaders/utils/ghostTable.mjs +16 -43
- package/plugins/nestedRows/data/dataManager.js +40 -161
- package/plugins/nestedRows/data/dataManager.mjs +44 -148
- package/plugins/nestedRows/index.js +0 -2
- package/plugins/nestedRows/nestedRows.js +41 -119
- package/plugins/nestedRows/nestedRows.mjs +41 -86
- package/plugins/nestedRows/ui/_base.js +1 -9
- package/plugins/nestedRows/ui/_base.mjs +1 -8
- package/plugins/nestedRows/ui/collapsing.js +28 -134
- package/plugins/nestedRows/ui/collapsing.mjs +34 -118
- package/plugins/nestedRows/ui/contextMenu.js +2 -53
- package/plugins/nestedRows/ui/contextMenu.mjs +2 -32
- package/plugins/nestedRows/ui/headers.js +5 -50
- package/plugins/nestedRows/ui/headers.mjs +11 -41
- package/plugins/nestedRows/utils/rowMoveController.js +28 -78
- package/plugins/nestedRows/utils/rowMoveController.mjs +33 -66
- package/plugins/persistentState/index.js +0 -2
- package/plugins/persistentState/persistentState.js +10 -58
- package/plugins/persistentState/persistentState.mjs +10 -37
- package/plugins/persistentState/storage.js +9 -25
- package/plugins/persistentState/storage.mjs +12 -26
- package/plugins/registry.js +7 -51
- package/plugins/registry.mjs +8 -34
- package/plugins/search/index.js +0 -2
- package/plugins/search/search.js +16 -98
- package/plugins/search/search.mjs +16 -68
- package/plugins/touchScroll/index.js +0 -2
- package/plugins/touchScroll/touchScroll.js +15 -76
- package/plugins/touchScroll/touchScroll.mjs +15 -58
- package/plugins/trimRows/index.js +0 -2
- package/plugins/trimRows/trimRows.js +62 -88
- package/plugins/trimRows/trimRows.mjs +62 -65
- package/plugins/undoRedo/index.js +0 -14
- package/plugins/undoRedo/undoRedo.js +48 -218
- package/plugins/undoRedo/undoRedo.mjs +48 -188
- package/registry.js +0 -11
- package/registry.mjs +2 -4
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +5 -14
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +5 -6
- package/renderers/autocompleteRenderer/index.js +0 -2
- package/renderers/baseRenderer/baseRenderer.js +2 -11
- package/renderers/baseRenderer/baseRenderer.mjs +2 -9
- package/renderers/baseRenderer/index.js +0 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +22 -103
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +22 -81
- package/renderers/checkboxRenderer/index.js +0 -2
- package/renderers/htmlRenderer/htmlRenderer.js +1 -7
- package/renderers/htmlRenderer/htmlRenderer.mjs +1 -1
- package/renderers/htmlRenderer/index.js +0 -2
- package/renderers/index.js +0 -19
- package/renderers/index.mjs +3 -5
- package/renderers/numericRenderer/index.js +0 -2
- package/renderers/numericRenderer/numericRenderer.js +1 -23
- package/renderers/numericRenderer/numericRenderer.mjs +1 -10
- package/renderers/passwordRenderer/index.js +0 -2
- package/renderers/passwordRenderer/passwordRenderer.js +1 -8
- package/renderers/passwordRenderer/passwordRenderer.mjs +1 -1
- package/renderers/registry.js +7 -16
- package/renderers/registry.mjs +7 -14
- package/renderers/textRenderer/index.js +0 -2
- package/renderers/textRenderer/textRenderer.js +2 -14
- package/renderers/textRenderer/textRenderer.mjs +2 -6
- package/renderers/timeRenderer/index.js +0 -2
- package/renderers/timeRenderer/timeRenderer.js +1 -6
- package/renderers/timeRenderer/timeRenderer.mjs +1 -1
- package/selection/highlight/highlight.js +17 -73
- package/selection/highlight/highlight.mjs +31 -64
- package/selection/highlight/types/activeHeader.js +1 -21
- package/selection/highlight/types/activeHeader.mjs +6 -16
- package/selection/highlight/types/area.js +2 -22
- package/selection/highlight/types/area.mjs +10 -20
- package/selection/highlight/types/cell.js +1 -21
- package/selection/highlight/types/cell.mjs +9 -19
- package/selection/highlight/types/customSelection.js +2 -22
- package/selection/highlight/types/customSelection.mjs +11 -21
- package/selection/highlight/types/fill.js +2 -17
- package/selection/highlight/types/fill.mjs +9 -14
- package/selection/highlight/types/header.js +3 -23
- package/selection/highlight/types/header.mjs +13 -23
- package/selection/highlight/types/index.js +3 -24
- package/selection/highlight/types/index.mjs +3 -10
- package/selection/highlight/visualSelection.js +24 -74
- package/selection/highlight/visualSelection.mjs +24 -62
- package/selection/index.js +0 -14
- package/selection/mouseEventHandler.js +19 -30
- package/selection/mouseEventHandler.mjs +32 -36
- package/selection/range.js +11 -31
- package/selection/range.mjs +11 -22
- package/selection/selection.js +62 -157
- package/selection/selection.mjs +65 -132
- package/selection/transformation.js +10 -40
- package/selection/transformation.mjs +18 -45
- package/selection/utils.js +22 -70
- package/selection/utils.mjs +22 -47
- package/shortcuts/context.js +23 -78
- package/shortcuts/context.mjs +23 -55
- package/shortcuts/index.js +0 -2
- package/shortcuts/keyObserver.js +4 -17
- package/shortcuts/keyObserver.mjs +4 -12
- package/shortcuts/manager.js +16 -36
- package/shortcuts/manager.mjs +16 -33
- package/shortcuts/recorder.js +20 -47
- package/shortcuts/recorder.mjs +20 -39
- package/shortcuts/utils.js +5 -24
- package/shortcuts/utils.mjs +5 -8
- package/tableView.js +100 -270
- package/tableView.mjs +100 -248
- package/translations/changesObservable/observable.js +5 -54
- package/translations/changesObservable/observable.mjs +12 -51
- package/translations/changesObservable/observer.js +4 -32
- package/translations/changesObservable/observer.mjs +9 -29
- package/translations/changesObservable/utils.js +1 -5
- package/translations/changesObservable/utils.mjs +1 -4
- package/translations/index.js +0 -11
- package/translations/indexMapper.js +70 -158
- package/translations/indexMapper.mjs +70 -125
- package/translations/mapCollections/aggregatedCollection.js +9 -51
- package/translations/mapCollections/aggregatedCollection.mjs +12 -41
- package/translations/mapCollections/index.js +0 -7
- package/translations/mapCollections/mapCollection.js +10 -33
- package/translations/mapCollections/mapCollection.mjs +10 -22
- package/translations/maps/hidingMap.js +2 -35
- package/translations/maps/hidingMap.mjs +7 -28
- package/translations/maps/index.js +1 -24
- package/translations/maps/index.mjs +1 -3
- package/translations/maps/indexMap.js +12 -34
- package/translations/maps/indexMap.mjs +16 -32
- package/translations/maps/indexesSequence.js +3 -41
- package/translations/maps/indexesSequence.mjs +9 -32
- package/translations/maps/linkedPhysicalIndexToValueMap.js +9 -78
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +16 -59
- package/translations/maps/physicalIndexToValueMap.js +2 -39
- package/translations/maps/physicalIndexToValueMap.mjs +8 -31
- package/translations/maps/trimmingMap.js +2 -35
- package/translations/maps/trimmingMap.mjs +7 -28
- package/translations/maps/utils/actionsOnIndexes.js +1 -7
- package/translations/maps/utils/actionsOnIndexes.mjs +9 -12
- package/translations/maps/utils/index.js +0 -13
- package/translations/maps/utils/index.mjs +0 -3
- package/translations/maps/utils/indexesSequence.js +1 -24
- package/translations/maps/utils/indexesSequence.mjs +10 -19
- package/translations/maps/utils/physicallyIndexed.js +1 -27
- package/translations/maps/utils/physicallyIndexed.mjs +11 -21
- package/utils/dataStructures/linkedList.js +15 -56
- package/utils/dataStructures/linkedList.mjs +15 -54
- package/utils/dataStructures/priorityMap.js +8 -46
- package/utils/dataStructures/priorityMap.mjs +8 -29
- package/utils/dataStructures/queue.js +6 -17
- package/utils/dataStructures/queue.mjs +6 -16
- package/utils/dataStructures/stack.js +6 -17
- package/utils/dataStructures/stack.mjs +6 -16
- package/utils/dataStructures/tree.js +11 -75
- package/utils/dataStructures/tree.mjs +11 -54
- package/utils/dataStructures/uniqueMap.js +17 -56
- package/utils/dataStructures/uniqueMap.mjs +17 -42
- package/utils/dataStructures/uniqueSet.js +5 -32
- package/utils/dataStructures/uniqueSet.mjs +5 -19
- package/utils/ghostTable.js +33 -104
- package/utils/ghostTable.mjs +35 -92
- package/utils/interval.js +10 -37
- package/utils/interval.mjs +7 -29
- package/utils/parseTable.js +11 -92
- package/utils/parseTable.mjs +11 -62
- package/utils/rootInstance.js +3 -14
- package/utils/rootInstance.mjs +3 -3
- package/utils/samplesGenerator.js +15 -51
- package/utils/samplesGenerator.mjs +17 -44
- package/utils/staticRegister.js +6 -33
- package/utils/staticRegister.mjs +6 -19
- package/validators/autocompleteValidator/autocompleteValidator.js +2 -10
- package/validators/autocompleteValidator/autocompleteValidator.mjs +2 -8
- package/validators/autocompleteValidator/index.js +0 -2
- package/validators/dateValidator/dateValidator.js +2 -21
- package/validators/dateValidator/dateValidator.mjs +2 -11
- package/validators/dateValidator/index.js +0 -2
- package/validators/index.js +0 -11
- package/validators/index.mjs +3 -5
- package/validators/numericValidator/index.js +0 -2
- package/validators/numericValidator/numericValidator.js +1 -7
- package/validators/numericValidator/numericValidator.mjs +1 -3
- package/validators/registry.js +7 -16
- package/validators/registry.mjs +7 -14
- package/validators/timeValidator/index.js +0 -2
- package/validators/timeValidator/timeValidator.js +6 -18
- package/validators/timeValidator/timeValidator.mjs +8 -13
- package/utils/sortingAlgorithms/mergeSort.js +0 -120
- package/utils/sortingAlgorithms/mergeSort.mjs +0 -110
@@ -4,30 +4,20 @@ import "core-js/modules/web.dom-collections.for-each.js";
|
|
4
4
|
import "core-js/modules/web.timers.js";
|
5
5
|
import "core-js/modules/es.object.set-prototype-of.js";
|
6
6
|
import "core-js/modules/es.reflect.construct.js";
|
7
|
-
|
8
7
|
function _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct.bind(); } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }
|
9
|
-
|
10
8
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
11
|
-
|
12
9
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
13
|
-
|
14
10
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
15
|
-
|
16
11
|
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); } }
|
17
|
-
|
18
12
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
19
|
-
|
20
13
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
21
|
-
|
22
14
|
import { getScrollableElement, getScrollbarWidth } from "../../../helpers/dom/element.mjs";
|
23
15
|
import { arrayEach } from "../../../helpers/array.mjs";
|
24
16
|
import { isKey } from "../../../helpers/unicode.mjs";
|
25
17
|
import { isChrome } from "../../../helpers/browser.mjs";
|
26
|
-
import { InlineStartOverlay, TopOverlay, TopInlineStartCornerOverlay, BottomOverlay, BottomInlineStartCornerOverlay } from "./overlay/index.mjs";
|
27
|
-
|
28
|
-
|
29
|
-
*/
|
30
|
-
|
18
|
+
import { InlineStartOverlay, TopOverlay, TopInlineStartCornerOverlay, BottomOverlay, BottomInlineStartCornerOverlay } from "./overlay/index.mjs"; /**
|
19
|
+
* @class Overlays
|
20
|
+
*/
|
31
21
|
var Overlays = /*#__PURE__*/function () {
|
32
22
|
/**
|
33
23
|
* Walkontable instance's reference.
|
@@ -95,36 +85,28 @@ var Overlays = /*#__PURE__*/function () {
|
|
95
85
|
*/
|
96
86
|
function Overlays(wotInstance, facadeGetter, domBindings, wtSettings, eventManager, wtTable) {
|
97
87
|
_classCallCheck(this, Overlays);
|
98
|
-
|
99
88
|
_defineProperty(this, "wot", null);
|
100
|
-
|
101
89
|
_defineProperty(this, "topOverlay", null);
|
102
|
-
|
103
90
|
_defineProperty(this, "bottomOverlay", null);
|
104
|
-
|
105
91
|
_defineProperty(this, "inlineStartOverlay", null);
|
106
|
-
|
107
92
|
_defineProperty(this, "topInlineStartCornerOverlay", null);
|
108
|
-
|
109
93
|
_defineProperty(this, "bottomInlineStartCornerOverlay", null);
|
110
|
-
|
111
94
|
_defineProperty(this, "browserLineHeight", undefined);
|
112
|
-
|
113
95
|
_defineProperty(this, "wtSettings", null);
|
114
|
-
|
115
96
|
this.wot = wotInstance;
|
116
97
|
this.wtSettings = wtSettings;
|
117
98
|
this.domBindings = domBindings;
|
118
99
|
this.facadeGetter = facadeGetter;
|
119
100
|
this.wtTable = wtTable;
|
120
101
|
var _this$domBindings = this.domBindings,
|
121
|
-
|
122
|
-
|
102
|
+
rootDocument = _this$domBindings.rootDocument,
|
103
|
+
rootWindow = _this$domBindings.rootWindow;
|
123
104
|
|
105
|
+
// legacy support
|
124
106
|
this.instance = this.wot; // todo refactoring: move to facade
|
107
|
+
this.eventManager = eventManager;
|
125
108
|
|
126
|
-
|
127
|
-
|
109
|
+
// TODO refactoring: probably invalid place to this logic
|
128
110
|
this.scrollbarSize = getScrollbarWidth(rootDocument);
|
129
111
|
var isOverflowHidden = rootWindow.getComputedStyle(wtTable.wtRootElement.parentNode).getPropertyValue('overflow') === 'hidden';
|
130
112
|
this.scrollableElement = isOverflowHidden ? wtTable.holder : getScrollableElement(wtTable.TABLE);
|
@@ -144,94 +126,90 @@ var Overlays = /*#__PURE__*/function () {
|
|
144
126
|
this.lastScrollX = rootWindow.scrollX;
|
145
127
|
this.lastScrollY = rootWindow.scrollY;
|
146
128
|
}
|
129
|
+
|
147
130
|
/**
|
148
131
|
* Retrieve browser line height and apply its value to `browserLineHeight`.
|
149
132
|
*
|
150
133
|
* @private
|
151
134
|
*/
|
152
|
-
|
153
|
-
|
154
135
|
_createClass(Overlays, [{
|
155
136
|
key: "initBrowserLineHeight",
|
156
137
|
value: function initBrowserLineHeight() {
|
157
138
|
var _this$domBindings2 = this.domBindings,
|
158
|
-
|
159
|
-
|
139
|
+
rootWindow = _this$domBindings2.rootWindow,
|
140
|
+
rootDocument = _this$domBindings2.rootDocument;
|
160
141
|
var computedStyle = rootWindow.getComputedStyle(rootDocument.body);
|
161
142
|
/**
|
162
143
|
* Sometimes `line-height` might be set to 'normal'. In that case, a default `font-size` should be multiplied by roughly 1.2.
|
163
144
|
* Https://developer.mozilla.org/pl/docs/Web/CSS/line-height#Values.
|
164
145
|
*/
|
165
|
-
|
166
146
|
var lineHeight = parseInt(computedStyle.lineHeight, 10);
|
167
147
|
var lineHeightFalback = parseInt(computedStyle.fontSize, 10) * 1.2;
|
168
148
|
this.browserLineHeight = lineHeight || lineHeightFalback;
|
169
149
|
}
|
150
|
+
|
170
151
|
/**
|
171
152
|
* Prepare overlays based on user settings.
|
172
153
|
*
|
173
154
|
* @private
|
174
155
|
*/
|
175
|
-
|
176
156
|
}, {
|
177
157
|
key: "initOverlays",
|
178
158
|
value: function initOverlays() {
|
179
|
-
var args = [this.wot, this.facadeGetter, this.wtSettings, this.domBindings];
|
180
|
-
// TODO refactoring, conceive about using generic collection of overlays.
|
159
|
+
var args = [this.wot, this.facadeGetter, this.wtSettings, this.domBindings];
|
181
160
|
|
161
|
+
// todo refactoring: IOC, collection or factories.
|
162
|
+
// TODO refactoring, conceive about using generic collection of overlays.
|
182
163
|
this.topOverlay = _construct(TopOverlay, args);
|
183
164
|
this.bottomOverlay = _construct(BottomOverlay, args);
|
184
|
-
this.inlineStartOverlay = _construct(InlineStartOverlay, args);
|
185
|
-
// TODO cond. Has no any visual impact. They're initially hidden in same way like left, top, and bottom overlays.
|
165
|
+
this.inlineStartOverlay = _construct(InlineStartOverlay, args);
|
186
166
|
|
167
|
+
// TODO discuss, the controversial here would be removing the lazy creation mechanism for corners.
|
168
|
+
// TODO cond. Has no any visual impact. They're initially hidden in same way like left, top, and bottom overlays.
|
187
169
|
this.topInlineStartCornerOverlay = _construct(TopInlineStartCornerOverlay, args.concat([this.topOverlay, this.inlineStartOverlay]));
|
188
170
|
this.bottomInlineStartCornerOverlay = _construct(BottomInlineStartCornerOverlay, args.concat([this.bottomOverlay, this.inlineStartOverlay]));
|
189
171
|
}
|
172
|
+
|
190
173
|
/**
|
191
174
|
* Update state of rendering, check if changed.
|
192
175
|
*
|
193
176
|
* @package
|
194
177
|
* @returns {boolean} Returns `true` if changes applied to overlay needs scroll synchronization.
|
195
178
|
*/
|
196
|
-
|
197
179
|
}, {
|
198
180
|
key: "updateStateOfRendering",
|
199
181
|
value: function updateStateOfRendering() {
|
200
182
|
var syncScroll = this.topOverlay.updateStateOfRendering();
|
201
183
|
syncScroll = this.bottomOverlay.updateStateOfRendering() || syncScroll;
|
202
|
-
syncScroll = this.inlineStartOverlay.updateStateOfRendering() || syncScroll;
|
184
|
+
syncScroll = this.inlineStartOverlay.updateStateOfRendering() || syncScroll;
|
203
185
|
|
186
|
+
// todo refactoring: move conditions into updateStateOfRendering(),
|
204
187
|
if (this.inlineStartOverlay.needFullRender) {
|
205
188
|
if (this.topOverlay.needFullRender) {
|
206
189
|
syncScroll = this.topInlineStartCornerOverlay.updateStateOfRendering() || syncScroll;
|
207
190
|
}
|
208
|
-
|
209
191
|
if (this.bottomOverlay.needFullRender) {
|
210
192
|
syncScroll = this.bottomInlineStartCornerOverlay.updateStateOfRendering() || syncScroll;
|
211
193
|
}
|
212
194
|
}
|
213
|
-
|
214
195
|
return syncScroll;
|
215
196
|
}
|
197
|
+
|
216
198
|
/**
|
217
199
|
* Refresh and redraw table.
|
218
200
|
*/
|
219
|
-
|
220
201
|
}, {
|
221
202
|
key: "refreshAll",
|
222
203
|
value: function refreshAll() {
|
223
204
|
if (!this.wot.drawn) {
|
224
205
|
return;
|
225
206
|
}
|
226
|
-
|
227
207
|
if (!this.wtTable.holder.parentNode) {
|
228
208
|
// Walkontable was detached from DOM, but this handler was not removed
|
229
209
|
this.destroy();
|
230
210
|
return;
|
231
211
|
}
|
232
|
-
|
233
212
|
this.wot.draw(true);
|
234
|
-
|
235
213
|
if (this.verticalScrolling) {
|
236
214
|
this.inlineStartOverlay.onScroll(); // todo the inlineStartOverlay.onScroll() fires hook. Why is it needed there, not in any another place?
|
237
215
|
}
|
@@ -239,22 +217,20 @@ var Overlays = /*#__PURE__*/function () {
|
|
239
217
|
if (this.horizontalScrolling) {
|
240
218
|
this.topOverlay.onScroll();
|
241
219
|
}
|
242
|
-
|
243
220
|
this.verticalScrolling = false;
|
244
221
|
this.horizontalScrolling = false;
|
245
222
|
}
|
223
|
+
|
246
224
|
/**
|
247
225
|
* Register all necessary event listeners.
|
248
226
|
*/
|
249
|
-
|
250
227
|
}, {
|
251
228
|
key: "registerListeners",
|
252
229
|
value: function registerListeners() {
|
253
230
|
var _this = this;
|
254
|
-
|
255
231
|
var _this$domBindings3 = this.domBindings,
|
256
|
-
|
257
|
-
|
232
|
+
rootDocument = _this$domBindings3.rootDocument,
|
233
|
+
rootWindow = _this$domBindings3.rootWindow;
|
258
234
|
var topOverlayScrollableElement = this.topOverlay.mainTableScrollableElement;
|
259
235
|
var inlineStartOverlayScrollableElement = this.inlineStartOverlay.mainTableScrollableElement;
|
260
236
|
this.eventManager.addEventListener(rootDocument.documentElement, 'keydown', function (event) {
|
@@ -271,7 +247,6 @@ var Overlays = /*#__PURE__*/function () {
|
|
271
247
|
}, {
|
272
248
|
passive: true
|
273
249
|
});
|
274
|
-
|
275
250
|
if (topOverlayScrollableElement !== inlineStartOverlayScrollableElement) {
|
276
251
|
this.eventManager.addEventListener(inlineStartOverlayScrollableElement, 'scroll', function (event) {
|
277
252
|
return _this.onTableScroll(event);
|
@@ -279,20 +254,17 @@ var Overlays = /*#__PURE__*/function () {
|
|
279
254
|
passive: true
|
280
255
|
});
|
281
256
|
}
|
282
|
-
|
283
257
|
var isHighPixelRatio = rootWindow.devicePixelRatio && rootWindow.devicePixelRatio > 1;
|
284
258
|
var isScrollOnWindow = this.scrollableElement === rootWindow;
|
285
259
|
var preventWheel = this.wtSettings.getSetting('preventWheel');
|
286
260
|
var wheelEventOptions = {
|
287
261
|
passive: isScrollOnWindow
|
288
262
|
};
|
289
|
-
|
290
263
|
if (preventWheel || isHighPixelRatio || !isChrome()) {
|
291
264
|
this.eventManager.addEventListener(this.wtTable.wtRootElement, 'wheel', function (event) {
|
292
265
|
return _this.onCloneWheel(event, preventWheel);
|
293
266
|
}, wheelEventOptions);
|
294
267
|
}
|
295
|
-
|
296
268
|
var overlays = [this.topOverlay, this.bottomOverlay, this.inlineStartOverlay, this.topInlineStartCornerOverlay, this.bottomInlineStartCornerOverlay];
|
297
269
|
overlays.forEach(function (overlay) {
|
298
270
|
if (overlay && overlay.needFullRender) {
|
@@ -311,21 +283,21 @@ var Overlays = /*#__PURE__*/function () {
|
|
311
283
|
}, 200);
|
312
284
|
});
|
313
285
|
}
|
286
|
+
|
314
287
|
/**
|
315
288
|
* Deregister all previously registered listeners.
|
316
289
|
*/
|
317
|
-
|
318
290
|
}, {
|
319
291
|
key: "deregisterListeners",
|
320
292
|
value: function deregisterListeners() {
|
321
293
|
this.eventManager.clearEvents(true);
|
322
294
|
}
|
295
|
+
|
323
296
|
/**
|
324
297
|
* Scroll listener.
|
325
298
|
*
|
326
299
|
* @param {Event} event The mouse event object.
|
327
300
|
*/
|
328
|
-
|
329
301
|
}, {
|
330
302
|
key: "onTableScroll",
|
331
303
|
value: function onTableScroll(event) {
|
@@ -334,68 +306,69 @@ var Overlays = /*#__PURE__*/function () {
|
|
334
306
|
var rootWindow = this.domBindings.rootWindow;
|
335
307
|
var masterHorizontal = this.inlineStartOverlay.mainTableScrollableElement;
|
336
308
|
var masterVertical = this.topOverlay.mainTableScrollableElement;
|
337
|
-
var target = event.target;
|
338
|
-
// by hot.refreshBorder
|
309
|
+
var target = event.target;
|
339
310
|
|
311
|
+
// For key press, sync only master -> overlay position because while pressing Walkontable.render is triggered
|
312
|
+
// by hot.refreshBorder
|
340
313
|
if (this.keyPressed) {
|
341
314
|
if (masterVertical !== rootWindow && target !== rootWindow && !event.target.contains(masterVertical) || masterHorizontal !== rootWindow && target !== rootWindow && !event.target.contains(masterHorizontal)) {
|
342
315
|
return;
|
343
316
|
}
|
344
317
|
}
|
345
|
-
|
346
318
|
this.syncScrollPositions(event);
|
347
319
|
}
|
320
|
+
|
348
321
|
/**
|
349
322
|
* Wheel listener for cloned overlays.
|
350
323
|
*
|
351
324
|
* @param {Event} event The mouse event object.
|
352
325
|
* @param {boolean} preventDefault If `true`, the `preventDefault` will be called on event object.
|
353
326
|
*/
|
354
|
-
|
355
327
|
}, {
|
356
328
|
key: "onCloneWheel",
|
357
329
|
value: function onCloneWheel(event, preventDefault) {
|
358
|
-
var rootWindow = this.domBindings.rootWindow;
|
330
|
+
var rootWindow = this.domBindings.rootWindow;
|
331
|
+
|
332
|
+
// There was if statement which controlled flow of this function. It avoided the execution of the next lines
|
359
333
|
// on mobile devices. It was changed. Broader description of this case is included within issue #4856.
|
360
334
|
|
361
335
|
var masterHorizontal = this.inlineStartOverlay.mainTableScrollableElement;
|
362
336
|
var masterVertical = this.topOverlay.mainTableScrollableElement;
|
363
|
-
var target = event.target;
|
364
|
-
// by hot.refreshBorder
|
337
|
+
var target = event.target;
|
365
338
|
|
339
|
+
// For key press, sync only master -> overlay position because while pressing Walkontable.render is triggered
|
340
|
+
// by hot.refreshBorder
|
366
341
|
var shouldNotWheelVertically = masterVertical !== rootWindow && target !== rootWindow && !target.contains(masterVertical);
|
367
342
|
var shouldNotWheelHorizontally = masterHorizontal !== rootWindow && target !== rootWindow && !target.contains(masterHorizontal);
|
368
|
-
|
369
343
|
if (this.keyPressed && (shouldNotWheelVertically || shouldNotWheelHorizontally)) {
|
370
344
|
return;
|
371
345
|
}
|
372
|
-
|
373
346
|
var isScrollPossible = this.translateMouseWheelToScroll(event);
|
374
|
-
|
375
347
|
if (preventDefault || this.scrollableElement !== rootWindow && isScrollPossible) {
|
376
348
|
event.preventDefault();
|
377
349
|
}
|
378
350
|
}
|
351
|
+
|
379
352
|
/**
|
380
353
|
* Key down listener.
|
381
354
|
*
|
382
355
|
* @param {Event} event The keyboard event object.
|
383
356
|
*/
|
384
|
-
|
385
357
|
}, {
|
386
358
|
key: "onKeyDown",
|
387
359
|
value: function onKeyDown(event) {
|
388
360
|
this.keyPressed = isKey(event.keyCode, 'ARROW_UP|ARROW_RIGHT|ARROW_DOWN|ARROW_LEFT');
|
389
361
|
}
|
362
|
+
|
390
363
|
/**
|
391
364
|
* Key up listener.
|
392
365
|
*/
|
393
|
-
|
394
366
|
}, {
|
395
367
|
key: "onKeyUp",
|
396
368
|
value: function onKeyUp() {
|
397
369
|
this.keyPressed = false;
|
398
370
|
}
|
371
|
+
|
399
372
|
/**
|
400
373
|
* Translate wheel event into scroll event and sync scroll overlays position.
|
401
374
|
*
|
@@ -403,29 +376,26 @@ var Overlays = /*#__PURE__*/function () {
|
|
403
376
|
* @param {Event} event The mouse event object.
|
404
377
|
* @returns {boolean}
|
405
378
|
*/
|
406
|
-
|
407
379
|
}, {
|
408
380
|
key: "translateMouseWheelToScroll",
|
409
381
|
value: function translateMouseWheelToScroll(event) {
|
410
382
|
var deltaY = isNaN(event.deltaY) ? -1 * event.wheelDeltaY : event.deltaY;
|
411
383
|
var deltaX = isNaN(event.deltaX) ? -1 * event.wheelDeltaX : event.deltaX;
|
412
|
-
|
413
384
|
if (event.deltaMode === 1) {
|
414
385
|
deltaX += deltaX * this.browserLineHeight;
|
415
386
|
deltaY += deltaY * this.browserLineHeight;
|
416
387
|
}
|
417
|
-
|
418
388
|
var isScrollVerticallyPossible = this.scrollVertically(deltaY);
|
419
389
|
var isScrollHorizontallyPossible = this.scrollHorizontally(deltaX);
|
420
390
|
return isScrollVerticallyPossible || isScrollHorizontallyPossible;
|
421
391
|
}
|
392
|
+
|
422
393
|
/**
|
423
394
|
* Scrolls main scrollable element horizontally.
|
424
395
|
*
|
425
396
|
* @param {number} delta Relative value to scroll.
|
426
397
|
* @returns {boolean}
|
427
398
|
*/
|
428
|
-
|
429
399
|
}, {
|
430
400
|
key: "scrollVertically",
|
431
401
|
value: function scrollVertically(delta) {
|
@@ -433,13 +403,13 @@ var Overlays = /*#__PURE__*/function () {
|
|
433
403
|
this.scrollableElement.scrollTop += delta;
|
434
404
|
return previousScroll !== this.scrollableElement.scrollTop;
|
435
405
|
}
|
406
|
+
|
436
407
|
/**
|
437
408
|
* Scrolls main scrollable element horizontally.
|
438
409
|
*
|
439
410
|
* @param {number} delta Relative value to scroll.
|
440
411
|
* @returns {boolean}
|
441
412
|
*/
|
442
|
-
|
443
413
|
}, {
|
444
414
|
key: "scrollHorizontally",
|
445
415
|
value: function scrollHorizontally(delta) {
|
@@ -447,32 +417,29 @@ var Overlays = /*#__PURE__*/function () {
|
|
447
417
|
this.scrollableElement.scrollLeft += delta;
|
448
418
|
return previousScroll !== this.scrollableElement.scrollLeft;
|
449
419
|
}
|
420
|
+
|
450
421
|
/**
|
451
422
|
* Synchronize scroll position between master table and overlay table.
|
452
423
|
*
|
453
424
|
* @private
|
454
425
|
*/
|
455
|
-
|
456
426
|
}, {
|
457
427
|
key: "syncScrollPositions",
|
458
428
|
value: function syncScrollPositions() {
|
459
429
|
if (this.destroyed) {
|
460
430
|
return;
|
461
431
|
}
|
462
|
-
|
463
432
|
var rootWindow = this.domBindings.rootWindow;
|
464
433
|
var topHolder = this.topOverlay.clone.wtTable.holder; // todo rethink
|
465
|
-
|
466
434
|
var leftHolder = this.inlineStartOverlay.clone.wtTable.holder; // todo rethink
|
467
435
|
|
468
436
|
var _ref = [this.scrollableElement.scrollLeft, this.scrollableElement.scrollTop],
|
469
|
-
|
470
|
-
|
437
|
+
scrollLeft = _ref[0],
|
438
|
+
scrollTop = _ref[1];
|
471
439
|
this.horizontalScrolling = topHolder.scrollLeft !== scrollLeft || this.lastScrollX !== rootWindow.scrollX;
|
472
440
|
this.verticalScrolling = leftHolder.scrollTop !== scrollTop || this.lastScrollY !== rootWindow.scrollY;
|
473
441
|
this.lastScrollX = rootWindow.scrollX;
|
474
442
|
this.lastScrollY = rootWindow.scrollY;
|
475
|
-
|
476
443
|
if (this.horizontalScrolling) {
|
477
444
|
topHolder.scrollLeft = scrollLeft;
|
478
445
|
var bottomHolder = this.bottomOverlay.needFullRender ? this.bottomOverlay.clone.wtTable.holder : null; // todo rethink
|
@@ -481,24 +448,21 @@ var Overlays = /*#__PURE__*/function () {
|
|
481
448
|
bottomHolder.scrollLeft = scrollLeft;
|
482
449
|
}
|
483
450
|
}
|
484
|
-
|
485
451
|
if (this.verticalScrolling) {
|
486
452
|
leftHolder.scrollTop = scrollTop;
|
487
453
|
}
|
488
|
-
|
489
454
|
this.refreshAll();
|
490
455
|
}
|
456
|
+
|
491
457
|
/**
|
492
458
|
* Synchronize overlay scrollbars with the master scrollbar.
|
493
459
|
*/
|
494
|
-
|
495
460
|
}, {
|
496
461
|
key: "syncScrollWithMaster",
|
497
462
|
value: function syncScrollWithMaster() {
|
498
463
|
var master = this.topOverlay.mainTableScrollableElement;
|
499
464
|
var scrollLeft = master.scrollLeft,
|
500
|
-
|
501
|
-
|
465
|
+
scrollTop = master.scrollTop;
|
502
466
|
if (this.topOverlay.needFullRender) {
|
503
467
|
this.topOverlay.clone.wtTable.holder.scrollLeft = scrollLeft; // todo rethink, *overlay.setScroll*()
|
504
468
|
}
|
@@ -511,65 +475,56 @@ var Overlays = /*#__PURE__*/function () {
|
|
511
475
|
this.inlineStartOverlay.clone.wtTable.holder.scrollTop = scrollTop; // todo rethink, *overlay.setScroll*()
|
512
476
|
}
|
513
477
|
}
|
478
|
+
|
514
479
|
/**
|
515
480
|
* Update the main scrollable elements for all the overlays.
|
516
481
|
*/
|
517
|
-
|
518
482
|
}, {
|
519
483
|
key: "updateMainScrollableElements",
|
520
484
|
value: function updateMainScrollableElements() {
|
521
485
|
this.deregisterListeners();
|
522
486
|
this.inlineStartOverlay.updateMainScrollableElement();
|
523
487
|
this.topOverlay.updateMainScrollableElement();
|
524
|
-
|
525
488
|
if (this.bottomOverlay.needFullRender) {
|
526
489
|
this.bottomOverlay.updateMainScrollableElement();
|
527
490
|
}
|
528
|
-
|
529
491
|
var wtTable = this.wtTable;
|
530
492
|
var rootWindow = this.domBindings.rootWindow;
|
531
|
-
|
532
493
|
if (rootWindow.getComputedStyle(wtTable.wtRootElement.parentNode).getPropertyValue('overflow') === 'hidden') {
|
533
494
|
this.scrollableElement = wtTable.holder;
|
534
495
|
} else {
|
535
496
|
this.scrollableElement = getScrollableElement(wtTable.TABLE);
|
536
497
|
}
|
537
|
-
|
538
498
|
this.registerListeners();
|
539
499
|
}
|
500
|
+
|
540
501
|
/**
|
541
502
|
*
|
542
503
|
*/
|
543
|
-
|
544
504
|
}, {
|
545
505
|
key: "destroy",
|
546
506
|
value: function destroy() {
|
547
|
-
this.eventManager.destroy();
|
548
|
-
|
507
|
+
this.eventManager.destroy();
|
508
|
+
// todo, probably all below `destory` calls has no sense. To analyze
|
549
509
|
this.topOverlay.destroy();
|
550
|
-
|
551
510
|
if (this.bottomOverlay.clone) {
|
552
511
|
this.bottomOverlay.destroy();
|
553
512
|
}
|
554
|
-
|
555
513
|
this.inlineStartOverlay.destroy();
|
556
|
-
|
557
514
|
if (this.topInlineStartCornerOverlay) {
|
558
515
|
this.topInlineStartCornerOverlay.destroy();
|
559
516
|
}
|
560
|
-
|
561
517
|
if (this.bottomInlineStartCornerOverlay && this.bottomInlineStartCornerOverlay.clone) {
|
562
518
|
this.bottomInlineStartCornerOverlay.destroy();
|
563
519
|
}
|
564
|
-
|
565
520
|
this.destroyed = true;
|
566
521
|
}
|
522
|
+
|
567
523
|
/**
|
568
524
|
* @param {boolean} [fastDraw=false] When `true`, try to refresh only the positions of borders without rerendering
|
569
525
|
* the data. It will only work if Table.draw() does not force
|
570
526
|
* rendering anyway.
|
571
527
|
*/
|
572
|
-
|
573
528
|
}, {
|
574
529
|
key: "refresh",
|
575
530
|
value: function refresh() {
|
@@ -577,34 +532,29 @@ var Overlays = /*#__PURE__*/function () {
|
|
577
532
|
var spreader = this.wtTable.spreader;
|
578
533
|
var width = spreader.clientWidth;
|
579
534
|
var height = spreader.clientHeight;
|
580
|
-
|
581
535
|
if (width !== this.spreaderLastSize.width || height !== this.spreaderLastSize.height) {
|
582
536
|
this.spreaderLastSize.width = width;
|
583
537
|
this.spreaderLastSize.height = height;
|
584
538
|
this.adjustElementsSize();
|
585
539
|
}
|
586
|
-
|
587
540
|
if (this.bottomOverlay.clone) {
|
588
541
|
this.bottomOverlay.refresh(fastDraw);
|
589
542
|
}
|
590
|
-
|
591
543
|
this.inlineStartOverlay.refresh(fastDraw);
|
592
544
|
this.topOverlay.refresh(fastDraw);
|
593
|
-
|
594
545
|
if (this.topInlineStartCornerOverlay) {
|
595
546
|
this.topInlineStartCornerOverlay.refresh(fastDraw);
|
596
547
|
}
|
597
|
-
|
598
548
|
if (this.bottomInlineStartCornerOverlay && this.bottomInlineStartCornerOverlay.clone) {
|
599
549
|
this.bottomInlineStartCornerOverlay.refresh(fastDraw);
|
600
550
|
}
|
601
551
|
}
|
552
|
+
|
602
553
|
/**
|
603
554
|
* Adjust overlays elements size and master table size.
|
604
555
|
*
|
605
556
|
* @param {boolean} [force=false] When `true`, it adjust the DOM nodes sizes for all overlays.
|
606
557
|
*/
|
607
|
-
|
608
558
|
}, {
|
609
559
|
key: "adjustElementsSize",
|
610
560
|
value: function adjustElementsSize() {
|
@@ -618,69 +568,61 @@ var Overlays = /*#__PURE__*/function () {
|
|
618
568
|
var hiderStyle = wtTable.hider.style;
|
619
569
|
hiderStyle.width = "".concat(headerRowSize + this.inlineStartOverlay.sumCellSizes(0, totalColumns), "px");
|
620
570
|
hiderStyle.height = "".concat(headerColumnSize + this.topOverlay.sumCellSizes(0, totalRows) + 1, "px");
|
621
|
-
|
622
571
|
if (this.scrollbarSize > 0) {
|
623
572
|
// todo refactoring, looking as a part of logic which should be moved outside the class
|
624
573
|
var _wtTable$wtRootElemen = wtTable.wtRootElement,
|
625
|
-
|
626
|
-
|
574
|
+
rootElemScrollHeight = _wtTable$wtRootElemen.scrollHeight,
|
575
|
+
rootElemScrollWidth = _wtTable$wtRootElemen.scrollWidth;
|
627
576
|
var _wtTable$holder = wtTable.holder,
|
628
|
-
|
629
|
-
|
577
|
+
holderScrollHeight = _wtTable$holder.scrollHeight,
|
578
|
+
holderScrollWidth = _wtTable$holder.scrollWidth;
|
630
579
|
this.hasScrollbarRight = rootElemScrollHeight < holderScrollHeight;
|
631
580
|
this.hasScrollbarBottom = rootElemScrollWidth < holderScrollWidth;
|
632
|
-
|
633
581
|
if (this.hasScrollbarRight && wtTable.hider.scrollWidth + this.scrollbarSize > rootElemScrollWidth) {
|
634
582
|
this.hasScrollbarBottom = true;
|
635
583
|
} else if (this.hasScrollbarBottom && wtTable.hider.scrollHeight + this.scrollbarSize > rootElemScrollHeight) {
|
636
584
|
this.hasScrollbarRight = true;
|
637
585
|
}
|
638
586
|
}
|
639
|
-
|
640
587
|
this.topOverlay.adjustElementsSize(force);
|
641
588
|
this.inlineStartOverlay.adjustElementsSize(force);
|
642
589
|
this.bottomOverlay.adjustElementsSize(force);
|
643
590
|
}
|
591
|
+
|
644
592
|
/**
|
645
593
|
*
|
646
594
|
*/
|
647
|
-
|
648
595
|
}, {
|
649
596
|
key: "applyToDOM",
|
650
597
|
value: function applyToDOM() {
|
651
598
|
if (!this.wtTable.isVisible()) {
|
652
599
|
return;
|
653
600
|
}
|
654
|
-
|
655
601
|
this.topOverlay.applyToDOM();
|
656
|
-
|
657
602
|
if (this.bottomOverlay.clone) {
|
658
603
|
this.bottomOverlay.applyToDOM();
|
659
604
|
}
|
660
|
-
|
661
605
|
this.inlineStartOverlay.applyToDOM();
|
662
606
|
}
|
607
|
+
|
663
608
|
/**
|
664
609
|
* Get the parent overlay of the provided element.
|
665
610
|
*
|
666
611
|
* @param {HTMLElement} element An element to process.
|
667
612
|
* @returns {object|null}
|
668
613
|
*/
|
669
|
-
|
670
614
|
}, {
|
671
615
|
key: "getParentOverlay",
|
672
616
|
value: function getParentOverlay(element) {
|
673
617
|
if (!element) {
|
674
618
|
return null;
|
675
619
|
}
|
676
|
-
|
677
620
|
var overlays = [this.topOverlay, this.inlineStartOverlay, this.bottomOverlay, this.topInlineStartCornerOverlay, this.bottomInlineStartCornerOverlay];
|
678
621
|
var result = null;
|
679
622
|
arrayEach(overlays, function (overlay) {
|
680
623
|
if (!overlay) {
|
681
624
|
return;
|
682
625
|
}
|
683
|
-
|
684
626
|
if (overlay.clone && overlay.clone.wtTable.TABLE.contains(element)) {
|
685
627
|
// todo demeter
|
686
628
|
result = overlay.clone;
|
@@ -688,11 +630,11 @@ var Overlays = /*#__PURE__*/function () {
|
|
688
630
|
});
|
689
631
|
return result;
|
690
632
|
}
|
633
|
+
|
691
634
|
/**
|
692
635
|
* Synchronize the class names between the main overlay table and the tables on the other overlays.
|
693
636
|
*
|
694
637
|
*/
|
695
|
-
|
696
638
|
}, {
|
697
639
|
key: "syncOverlayTableClassNames",
|
698
640
|
value: function syncOverlayTableClassNames() {
|
@@ -702,13 +644,10 @@ var Overlays = /*#__PURE__*/function () {
|
|
702
644
|
if (!elem) {
|
703
645
|
return;
|
704
646
|
}
|
705
|
-
|
706
647
|
elem.clone.wtTable.TABLE.className = masterTable.className; // todo demeter
|
707
648
|
});
|
708
649
|
}
|
709
650
|
}]);
|
710
|
-
|
711
651
|
return Overlays;
|
712
652
|
}();
|
713
|
-
|
714
653
|
export default Overlays;
|