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/tableView.js
CHANGED
@@ -1,154 +1,159 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
+
require("core-js/modules/es.symbol.to-primitive.js");
|
4
|
+
require("core-js/modules/es.date.to-primitive.js");
|
3
5
|
require("core-js/modules/es.symbol.js");
|
4
|
-
|
5
6
|
require("core-js/modules/es.symbol.description.js");
|
6
|
-
|
7
7
|
require("core-js/modules/es.symbol.iterator.js");
|
8
|
-
|
9
8
|
require("core-js/modules/es.array.from.js");
|
10
|
-
|
11
9
|
require("core-js/modules/es.array.slice.js");
|
12
|
-
|
13
10
|
require("core-js/modules/es.function.name.js");
|
14
|
-
|
15
11
|
require("core-js/modules/es.regexp.exec.js");
|
16
|
-
|
12
|
+
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); }
|
17
13
|
exports.__esModule = true;
|
18
14
|
exports.default = void 0;
|
19
|
-
|
20
15
|
require("core-js/modules/es.array.iterator.js");
|
21
|
-
|
22
16
|
require("core-js/modules/es.object.to-string.js");
|
23
|
-
|
24
17
|
require("core-js/modules/es.string.iterator.js");
|
25
|
-
|
26
18
|
require("core-js/modules/es.weak-map.js");
|
27
|
-
|
28
19
|
require("core-js/modules/web.dom-collections.iterator.js");
|
29
|
-
|
30
20
|
require("core-js/modules/es.number.is-integer.js");
|
31
|
-
|
32
21
|
require("core-js/modules/es.number.constructor.js");
|
33
|
-
|
34
22
|
var _element = require("./helpers/dom/element");
|
35
|
-
|
36
23
|
var _eventManager = _interopRequireDefault(require("./eventManager"));
|
37
|
-
|
38
24
|
var _event = require("./helpers/dom/event");
|
39
|
-
|
40
25
|
var _src = _interopRequireDefault(require("./3rdparty/walkontable/src"));
|
41
|
-
|
42
26
|
var _mouseEventHandler = require("./selection/mouseEventHandler");
|
43
|
-
|
44
27
|
var _rootInstance = require("./utils/rootInstance");
|
45
|
-
|
46
28
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
47
|
-
|
48
29
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
49
|
-
|
50
30
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
51
|
-
|
52
|
-
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
53
|
-
|
31
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) { ; } } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
54
32
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
55
|
-
|
56
33
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
57
|
-
|
58
34
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
59
|
-
|
60
35
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
61
|
-
|
62
36
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
63
|
-
|
64
37
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
65
|
-
|
66
38
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
67
|
-
|
68
39
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
69
|
-
|
70
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
71
|
-
|
40
|
+
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); } }
|
72
41
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
73
|
-
|
42
|
+
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
43
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
44
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
45
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
46
|
+
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); }
|
47
|
+
function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
|
48
|
+
function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
|
49
|
+
function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
|
50
|
+
function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
|
51
|
+
function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
|
74
52
|
var privatePool = new WeakMap();
|
53
|
+
|
75
54
|
/**
|
76
55
|
* @class TableView
|
77
56
|
* @private
|
78
57
|
*/
|
79
|
-
|
58
|
+
var _columnHeadersCount = /*#__PURE__*/new WeakMap();
|
59
|
+
var _rowHeadersCount = /*#__PURE__*/new WeakMap();
|
80
60
|
var TableView = /*#__PURE__*/function () {
|
81
61
|
/**
|
82
|
-
*
|
62
|
+
* Instance of {@link Handsontable}.
|
63
|
+
*
|
64
|
+
* @private
|
65
|
+
* @type {Handsontable}
|
83
66
|
*/
|
84
|
-
function TableView(instance) {
|
85
|
-
_classCallCheck(this, TableView);
|
86
67
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
this.instance = instance;
|
94
|
-
/**
|
95
|
-
* Instance of {@link EventManager}.
|
96
|
-
*
|
97
|
-
* @private
|
98
|
-
* @type {EventManager}
|
99
|
-
*/
|
68
|
+
/**
|
69
|
+
* Instance of {@link EventManager}.
|
70
|
+
*
|
71
|
+
* @private
|
72
|
+
* @type {EventManager}
|
73
|
+
*/
|
100
74
|
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
*/
|
75
|
+
/**
|
76
|
+
* Current Handsontable's GridSettings object.
|
77
|
+
*
|
78
|
+
* @private
|
79
|
+
* @type {GridSettings}
|
80
|
+
*/
|
108
81
|
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
*/
|
82
|
+
/**
|
83
|
+
* Main <THEAD> element.
|
84
|
+
*
|
85
|
+
* @private
|
86
|
+
* @type {HTMLTableSectionElement}
|
87
|
+
*/
|
116
88
|
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
*/
|
89
|
+
/**
|
90
|
+
* Main <TBODY> element.
|
91
|
+
*
|
92
|
+
* @private
|
93
|
+
* @type {HTMLTableSectionElement}
|
94
|
+
*/
|
124
95
|
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
*/
|
96
|
+
/**
|
97
|
+
* Main Walkontable instance.
|
98
|
+
*
|
99
|
+
* @private
|
100
|
+
* @type {Walkontable}
|
101
|
+
*/
|
132
102
|
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
*/
|
103
|
+
/**
|
104
|
+
* Main Walkontable instance.
|
105
|
+
*
|
106
|
+
* @private
|
107
|
+
* @type {Walkontable}
|
108
|
+
*/
|
140
109
|
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
110
|
+
/**
|
111
|
+
* The total number of the column header renderers applied to the table through the
|
112
|
+
* `afterGetColumnHeaderRenderers` hook.
|
113
|
+
*
|
114
|
+
* @type {number}
|
115
|
+
*/
|
116
|
+
|
117
|
+
/**
|
118
|
+
* The total number of the row header renderers applied to the table through the
|
119
|
+
* `afterGetRowHeaderRenderers` hook.
|
120
|
+
*
|
121
|
+
* @type {number}
|
122
|
+
*/
|
123
|
+
|
124
|
+
/**
|
125
|
+
* The flag determines if the `adjustElementsSize` method call was made during
|
126
|
+
* the render suspending. If true, the method has to be triggered once after render
|
127
|
+
* resuming.
|
128
|
+
*
|
129
|
+
* @private
|
130
|
+
* @type {boolean}
|
131
|
+
*/
|
150
132
|
|
151
|
-
|
133
|
+
/**
|
134
|
+
* @param {Hanstontable} instance Instance of {@link Handsontable}.
|
135
|
+
*/
|
136
|
+
function TableView(instance) {
|
137
|
+
_classCallCheck(this, TableView);
|
138
|
+
_defineProperty(this, "instance", void 0);
|
139
|
+
_defineProperty(this, "eventManager", void 0);
|
140
|
+
_defineProperty(this, "settings", void 0);
|
141
|
+
_defineProperty(this, "THEAD", void 0);
|
142
|
+
_defineProperty(this, "TBODY", void 0);
|
143
|
+
_defineProperty(this, "_wt", void 0);
|
144
|
+
_defineProperty(this, "activeWt", void 0);
|
145
|
+
_classPrivateFieldInitSpec(this, _columnHeadersCount, {
|
146
|
+
writable: true,
|
147
|
+
value: 0
|
148
|
+
});
|
149
|
+
_classPrivateFieldInitSpec(this, _rowHeadersCount, {
|
150
|
+
writable: true,
|
151
|
+
value: 0
|
152
|
+
});
|
153
|
+
_defineProperty(this, "postponedAdjustElementsSize", false);
|
154
|
+
this.instance = instance;
|
155
|
+
this.eventManager = new _eventManager.default(this.instance);
|
156
|
+
this.settings = this.instance.getSettings();
|
152
157
|
privatePool.set(this, {
|
153
158
|
/**
|
154
159
|
* Defines if the text should be selected during mousemove.
|
@@ -157,13 +162,11 @@ var TableView = /*#__PURE__*/function () {
|
|
157
162
|
* @type {boolean}
|
158
163
|
*/
|
159
164
|
selectionMouseDown: false,
|
160
|
-
|
161
165
|
/**
|
162
166
|
* @private
|
163
167
|
* @type {boolean}
|
164
168
|
*/
|
165
169
|
mouseDown: void 0,
|
166
|
-
|
167
170
|
/**
|
168
171
|
* Main <TABLE> element.
|
169
172
|
*
|
@@ -171,14 +174,12 @@ var TableView = /*#__PURE__*/function () {
|
|
171
174
|
* @type {HTMLTableElement}
|
172
175
|
*/
|
173
176
|
table: void 0,
|
174
|
-
|
175
177
|
/**
|
176
178
|
* Cached width of the rootElement.
|
177
179
|
*
|
178
180
|
* @type {number}
|
179
181
|
*/
|
180
182
|
lastWidth: 0,
|
181
|
-
|
182
183
|
/**
|
183
184
|
* Cached height of the rootElement.
|
184
185
|
*
|
@@ -190,46 +191,42 @@ var TableView = /*#__PURE__*/function () {
|
|
190
191
|
this.registerEvents();
|
191
192
|
this.initializeWalkontable();
|
192
193
|
}
|
194
|
+
|
193
195
|
/**
|
194
196
|
* Renders WalkontableUI.
|
195
197
|
*/
|
196
|
-
|
197
|
-
|
198
198
|
_createClass(TableView, [{
|
199
199
|
key: "render",
|
200
200
|
value: function render() {
|
201
201
|
if (!this.instance.isRenderSuspended()) {
|
202
202
|
this.instance.runHooks('beforeRender', this.instance.forceFullRender);
|
203
|
-
|
204
203
|
if (this.postponedAdjustElementsSize) {
|
205
204
|
this.postponedAdjustElementsSize = false;
|
206
205
|
this.adjustElementsSize(true);
|
207
206
|
}
|
208
|
-
|
209
207
|
this._wt.draw(!this.instance.forceFullRender);
|
210
|
-
|
211
208
|
this.instance.runHooks('afterRender', this.instance.forceFullRender);
|
212
209
|
this.instance.forceFullRender = false;
|
213
210
|
this.instance.renderCall = false;
|
214
211
|
}
|
215
212
|
}
|
213
|
+
|
216
214
|
/**
|
217
215
|
* Adjust overlays elements size and master table size.
|
218
216
|
*
|
219
217
|
* @param {boolean} [force=false] When `true`, it adjust the DOM nodes sizes for all overlays.
|
220
218
|
*/
|
221
|
-
|
222
219
|
}, {
|
223
220
|
key: "adjustElementsSize",
|
224
221
|
value: function adjustElementsSize() {
|
225
222
|
var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
226
|
-
|
227
223
|
if (this.instance.isRenderSuspended()) {
|
228
224
|
this.postponedAdjustElementsSize = true;
|
229
225
|
} else {
|
230
226
|
this._wt.wtOverlays.adjustElementsSize(force);
|
231
227
|
}
|
232
228
|
}
|
229
|
+
|
233
230
|
/**
|
234
231
|
* Returns td object given coordinates.
|
235
232
|
*
|
@@ -237,19 +234,17 @@ var TableView = /*#__PURE__*/function () {
|
|
237
234
|
* @param {boolean} topmost Indicates whether the cell should be calculated from the topmost.
|
238
235
|
* @returns {HTMLTableCellElement|null}
|
239
236
|
*/
|
240
|
-
|
241
237
|
}, {
|
242
238
|
key: "getCellAtCoords",
|
243
239
|
value: function getCellAtCoords(coords, topmost) {
|
244
240
|
var td = this._wt.getCell(coords, topmost);
|
245
|
-
|
246
241
|
if (td < 0) {
|
247
242
|
// there was an exit code (cell is out of bounds)
|
248
243
|
return null;
|
249
244
|
}
|
250
|
-
|
251
245
|
return td;
|
252
246
|
}
|
247
|
+
|
253
248
|
/**
|
254
249
|
* Scroll viewport to a cell.
|
255
250
|
*
|
@@ -260,12 +255,12 @@ var TableView = /*#__PURE__*/function () {
|
|
260
255
|
* @param {boolean} [snapToLeft] If `true`, viewport is scrolled to show the cell on the left side of the table.
|
261
256
|
* @returns {boolean}
|
262
257
|
*/
|
263
|
-
|
264
258
|
}, {
|
265
259
|
key: "scrollViewport",
|
266
260
|
value: function scrollViewport(coords, snapToTop, snapToRight, snapToBottom, snapToLeft) {
|
267
261
|
return this._wt.scrollViewport(coords, snapToTop, snapToRight, snapToBottom, snapToLeft);
|
268
262
|
}
|
263
|
+
|
269
264
|
/**
|
270
265
|
* Scroll viewport to a column.
|
271
266
|
*
|
@@ -274,12 +269,12 @@ var TableView = /*#__PURE__*/function () {
|
|
274
269
|
* @param {boolean} [snapToLeft] If `true`, viewport is scrolled to show the cell on the left side of the table.
|
275
270
|
* @returns {boolean}
|
276
271
|
*/
|
277
|
-
|
278
272
|
}, {
|
279
273
|
key: "scrollViewportHorizontally",
|
280
274
|
value: function scrollViewportHorizontally(column, snapToRight, snapToLeft) {
|
281
275
|
return this._wt.scrollViewportHorizontally(column, snapToRight, snapToLeft);
|
282
276
|
}
|
277
|
+
|
283
278
|
/**
|
284
279
|
* Scroll viewport to a row.
|
285
280
|
*
|
@@ -288,27 +283,25 @@ var TableView = /*#__PURE__*/function () {
|
|
288
283
|
* @param {boolean} [snapToBottom] If `true`, viewport is scrolled to show the cell on the bottom side of the table.
|
289
284
|
* @returns {boolean}
|
290
285
|
*/
|
291
|
-
|
292
286
|
}, {
|
293
287
|
key: "scrollViewportVertically",
|
294
288
|
value: function scrollViewportVertically(row, snapToTop, snapToBottom) {
|
295
289
|
return this._wt.scrollViewportVertically(row, snapToTop, snapToBottom);
|
296
290
|
}
|
291
|
+
|
297
292
|
/**
|
298
293
|
* Prepares DOMElements and adds correct className to the root element.
|
299
294
|
*
|
300
295
|
* @private
|
301
296
|
*/
|
302
|
-
|
303
297
|
}, {
|
304
298
|
key: "createElements",
|
305
299
|
value: function createElements() {
|
306
300
|
var priv = privatePool.get(this);
|
307
301
|
var _this$instance = this.instance,
|
308
|
-
|
309
|
-
|
302
|
+
rootElement = _this$instance.rootElement,
|
303
|
+
rootDocument = _this$instance.rootDocument;
|
310
304
|
var originalStyle = rootElement.getAttribute('style');
|
311
|
-
|
312
305
|
if (originalStyle) {
|
313
306
|
rootElement.setAttribute('data-originalstyle', originalStyle); // needed to retrieve original style in jsFiddle link generator in HT examples. may be removed in future versions
|
314
307
|
}
|
@@ -316,11 +309,9 @@ var TableView = /*#__PURE__*/function () {
|
|
316
309
|
(0, _element.addClass)(rootElement, 'handsontable');
|
317
310
|
priv.table = rootDocument.createElement('TABLE');
|
318
311
|
(0, _element.addClass)(priv.table, 'htCore');
|
319
|
-
|
320
312
|
if (this.instance.getSettings().tableClassName) {
|
321
313
|
(0, _element.addClass)(priv.table, this.instance.getSettings().tableClassName);
|
322
314
|
}
|
323
|
-
|
324
315
|
this.THEAD = rootDocument.createElement('THEAD');
|
325
316
|
priv.table.appendChild(this.THEAD);
|
326
317
|
this.TBODY = rootDocument.createElement('TBODY');
|
@@ -328,26 +319,24 @@ var TableView = /*#__PURE__*/function () {
|
|
328
319
|
this.instance.table = priv.table;
|
329
320
|
this.instance.container.insertBefore(priv.table, this.instance.container.firstChild);
|
330
321
|
}
|
322
|
+
|
331
323
|
/**
|
332
324
|
* Attaches necessary listeners.
|
333
325
|
*
|
334
326
|
* @private
|
335
327
|
*/
|
336
|
-
|
337
328
|
}, {
|
338
329
|
key: "registerEvents",
|
339
330
|
value: function registerEvents() {
|
340
331
|
var _this = this;
|
341
|
-
|
342
332
|
var priv = privatePool.get(this);
|
343
333
|
var _this$instance2 = this.instance,
|
344
|
-
|
345
|
-
|
346
|
-
|
334
|
+
rootElement = _this$instance2.rootElement,
|
335
|
+
rootDocument = _this$instance2.rootDocument,
|
336
|
+
selection = _this$instance2.selection;
|
347
337
|
var documentElement = rootDocument.documentElement;
|
348
338
|
this.eventManager.addEventListener(rootElement, 'mousedown', function (event) {
|
349
339
|
priv.selectionMouseDown = true;
|
350
|
-
|
351
340
|
if (!_this.isTextSelectionAllowed(event.target)) {
|
352
341
|
var rootWindow = _this.instance.rootWindow;
|
353
342
|
(0, _element.clearTextSelection)(rootWindow);
|
@@ -355,6 +344,7 @@ var TableView = /*#__PURE__*/function () {
|
|
355
344
|
rootWindow.focus(); // make sure that window that contains HOT is active. Important when HOT is in iframe.
|
356
345
|
}
|
357
346
|
});
|
347
|
+
|
358
348
|
this.eventManager.addEventListener(rootElement, 'mouseup', function () {
|
359
349
|
priv.selectionMouseDown = false;
|
360
350
|
});
|
@@ -364,7 +354,6 @@ var TableView = /*#__PURE__*/function () {
|
|
364
354
|
if (_this.settings.fragmentSelection) {
|
365
355
|
(0, _element.clearTextSelection)(_this.instance.rootWindow);
|
366
356
|
}
|
367
|
-
|
368
357
|
event.preventDefault();
|
369
358
|
}
|
370
359
|
});
|
@@ -379,9 +368,7 @@ var TableView = /*#__PURE__*/function () {
|
|
379
368
|
// is left mouse button
|
380
369
|
selection.finish();
|
381
370
|
}
|
382
|
-
|
383
371
|
priv.mouseDown = false;
|
384
|
-
|
385
372
|
if ((0, _element.isOutsideInput)(rootDocument.activeElement) || !selection.isSelected() && !selection.isSelectedByAnyHeader() && !rootElement.contains(event.target) && !(0, _event.isRightClick)(event)) {
|
386
373
|
_this.instance.unlisten();
|
387
374
|
}
|
@@ -396,7 +383,6 @@ var TableView = /*#__PURE__*/function () {
|
|
396
383
|
if (selection.isInProgress()) {
|
397
384
|
selection.finish();
|
398
385
|
}
|
399
|
-
|
400
386
|
priv.mouseDown = false;
|
401
387
|
});
|
402
388
|
this.eventManager.addEventListener(documentElement, 'mousedown', function (event) {
|
@@ -404,17 +390,14 @@ var TableView = /*#__PURE__*/function () {
|
|
404
390
|
var eventX = event.x || event.clientX;
|
405
391
|
var eventY = event.y || event.clientY;
|
406
392
|
var next = event.target;
|
407
|
-
|
408
393
|
if (priv.mouseDown || !rootElement || !_this.instance.view) {
|
409
394
|
return; // it must have been started in a cell
|
410
|
-
}
|
411
|
-
|
395
|
+
}
|
412
396
|
|
397
|
+
// immediate click on "holder" means click on the right side of vertical scrollbar
|
413
398
|
var holder = _this.instance.view._wt.wtTable.holder;
|
414
|
-
|
415
399
|
if (next === holder) {
|
416
400
|
var scrollbarWidth = (0, _element.getScrollbarWidth)(rootDocument);
|
417
|
-
|
418
401
|
if (rootDocument.elementFromPoint(eventX + scrollbarWidth, eventY) !== holder || rootDocument.elementFromPoint(eventX, eventY + scrollbarWidth) !== holder) {
|
419
402
|
return;
|
420
403
|
}
|
@@ -423,24 +406,21 @@ var TableView = /*#__PURE__*/function () {
|
|
423
406
|
if (next === null) {
|
424
407
|
if (event.isTargetWebComponent) {
|
425
408
|
break;
|
426
|
-
}
|
427
|
-
|
409
|
+
}
|
428
410
|
|
411
|
+
// click on something that was a row but now is detached (possibly because your click triggered a rerender)
|
429
412
|
return;
|
430
413
|
}
|
431
|
-
|
432
414
|
if (next === rootElement) {
|
433
415
|
// click inside container
|
434
416
|
return;
|
435
417
|
}
|
436
|
-
|
437
418
|
next = next.parentNode;
|
438
419
|
}
|
439
|
-
}
|
440
|
-
|
420
|
+
}
|
441
421
|
|
422
|
+
// function did not return until here, we have an outside click!
|
442
423
|
var outsideClickDeselects = typeof _this.settings.outsideClickDeselects === 'function' ? _this.settings.outsideClickDeselects(originalTarget) : _this.settings.outsideClickDeselects;
|
443
|
-
|
444
424
|
if (outsideClickDeselects) {
|
445
425
|
_this.instance.deselectCell();
|
446
426
|
} else {
|
@@ -450,30 +430,29 @@ var TableView = /*#__PURE__*/function () {
|
|
450
430
|
this.eventManager.addEventListener(priv.table, 'selectstart', function (event) {
|
451
431
|
if (_this.settings.fragmentSelection || (0, _element.isInput)(event.target)) {
|
452
432
|
return;
|
453
|
-
}
|
433
|
+
}
|
434
|
+
// https://github.com/handsontable/handsontable/issues/160
|
454
435
|
// Prevent text from being selected when performing drag down.
|
455
|
-
|
456
|
-
|
457
436
|
event.preventDefault();
|
458
437
|
});
|
459
438
|
}
|
439
|
+
|
460
440
|
/**
|
461
441
|
* Translate renderable cell coordinates to visual coordinates.
|
462
442
|
*
|
463
443
|
* @param {CellCoords} coords The cell coordinates.
|
464
444
|
* @returns {CellCoords}
|
465
445
|
*/
|
466
|
-
|
467
446
|
}, {
|
468
447
|
key: "translateFromRenderableToVisualCoords",
|
469
448
|
value: function translateFromRenderableToVisualCoords(_ref) {
|
470
449
|
var _this$instance3;
|
471
|
-
|
472
450
|
var row = _ref.row,
|
473
|
-
|
451
|
+
col = _ref.col;
|
474
452
|
// TODO: To consider an idea to reusing the CellCoords instance instead creating new one.
|
475
453
|
return (_this$instance3 = this.instance)._createCellCoords.apply(_this$instance3, _toConsumableArray(this.translateFromRenderableToVisualIndex(row, col)));
|
476
454
|
}
|
455
|
+
|
477
456
|
/**
|
478
457
|
* Translate renderable row and column indexes to visual row and column indexes.
|
479
458
|
*
|
@@ -481,7 +460,6 @@ var TableView = /*#__PURE__*/function () {
|
|
481
460
|
* @param {number} renderableColumn Renderable columnIndex.
|
482
461
|
* @returns {number[]}
|
483
462
|
*/
|
484
|
-
|
485
463
|
}, {
|
486
464
|
key: "translateFromRenderableToVisualIndex",
|
487
465
|
value: function translateFromRenderableToVisualIndex(renderableRow, renderableColumn) {
|
@@ -489,17 +467,15 @@ var TableView = /*#__PURE__*/function () {
|
|
489
467
|
// We perform translation for indexes (without headers).
|
490
468
|
var visualRow = renderableRow >= 0 ? this.instance.rowIndexMapper.getVisualFromRenderableIndex(renderableRow) : renderableRow;
|
491
469
|
var visualColumn = renderableColumn >= 0 ? this.instance.columnIndexMapper.getVisualFromRenderableIndex(renderableColumn) : renderableColumn;
|
492
|
-
|
493
470
|
if (visualRow === null) {
|
494
471
|
visualRow = renderableRow;
|
495
472
|
}
|
496
|
-
|
497
473
|
if (visualColumn === null) {
|
498
474
|
visualColumn = renderableColumn;
|
499
475
|
}
|
500
|
-
|
501
476
|
return [visualRow, visualColumn];
|
502
477
|
}
|
478
|
+
|
503
479
|
/**
|
504
480
|
* Returns the number of renderable indexes.
|
505
481
|
*
|
@@ -509,42 +485,42 @@ var TableView = /*#__PURE__*/function () {
|
|
509
485
|
*
|
510
486
|
* @returns {number|*}
|
511
487
|
*/
|
512
|
-
|
513
488
|
}, {
|
514
489
|
key: "countRenderableIndexes",
|
515
490
|
value: function countRenderableIndexes(indexMapper, maxElements) {
|
516
|
-
var consideredElements = Math.min(indexMapper.getNotTrimmedIndexesLength(), maxElements);
|
517
|
-
|
518
|
-
var firstNotHiddenIndex = indexMapper.getNearestNotHiddenIndex(consideredElements - 1, -1);
|
491
|
+
var consideredElements = Math.min(indexMapper.getNotTrimmedIndexesLength(), maxElements);
|
492
|
+
// Don't take hidden indexes into account. We are looking just for renderable indexes.
|
493
|
+
var firstNotHiddenIndex = indexMapper.getNearestNotHiddenIndex(consideredElements - 1, -1);
|
519
494
|
|
495
|
+
// There are no renderable indexes.
|
520
496
|
if (firstNotHiddenIndex === null) {
|
521
497
|
return 0;
|
522
498
|
}
|
523
|
-
|
524
499
|
return indexMapper.getRenderableFromVisualIndex(firstNotHiddenIndex) + 1;
|
525
500
|
}
|
501
|
+
|
526
502
|
/**
|
527
503
|
* Returns the number of renderable columns.
|
528
504
|
*
|
529
505
|
* @returns {number}
|
530
506
|
*/
|
531
|
-
|
532
507
|
}, {
|
533
508
|
key: "countRenderableColumns",
|
534
509
|
value: function countRenderableColumns() {
|
535
510
|
return this.countRenderableIndexes(this.instance.columnIndexMapper, this.settings.maxCols);
|
536
511
|
}
|
512
|
+
|
537
513
|
/**
|
538
514
|
* Returns the number of renderable rows.
|
539
515
|
*
|
540
516
|
* @returns {number}
|
541
517
|
*/
|
542
|
-
|
543
518
|
}, {
|
544
519
|
key: "countRenderableRows",
|
545
520
|
value: function countRenderableRows() {
|
546
521
|
return this.countRenderableIndexes(this.instance.rowIndexMapper, this.settings.maxRows);
|
547
522
|
}
|
523
|
+
|
548
524
|
/**
|
549
525
|
* Returns number of not hidden row indexes counting from the passed starting index.
|
550
526
|
* The counting direction can be controlled by `incrementBy` argument.
|
@@ -553,12 +529,12 @@ var TableView = /*#__PURE__*/function () {
|
|
553
529
|
* @param {number} incrementBy If `-1` then counting is backwards or forward when `1`.
|
554
530
|
* @returns {number}
|
555
531
|
*/
|
556
|
-
|
557
532
|
}, {
|
558
533
|
key: "countNotHiddenRowIndexes",
|
559
534
|
value: function countNotHiddenRowIndexes(visualIndex, incrementBy) {
|
560
535
|
return this.countNotHiddenIndexes(visualIndex, incrementBy, this.instance.rowIndexMapper, this.countRenderableRows());
|
561
536
|
}
|
537
|
+
|
562
538
|
/**
|
563
539
|
* Returns number of not hidden column indexes counting from the passed starting index.
|
564
540
|
* The counting direction can be controlled by `incrementBy` argument.
|
@@ -567,12 +543,12 @@ var TableView = /*#__PURE__*/function () {
|
|
567
543
|
* @param {number} incrementBy If `-1` then counting is backwards or forward when `1`.
|
568
544
|
* @returns {number}
|
569
545
|
*/
|
570
|
-
|
571
546
|
}, {
|
572
547
|
key: "countNotHiddenColumnIndexes",
|
573
548
|
value: function countNotHiddenColumnIndexes(visualIndex, incrementBy) {
|
574
549
|
return this.countNotHiddenIndexes(visualIndex, incrementBy, this.instance.columnIndexMapper, this.countRenderableColumns());
|
575
550
|
}
|
551
|
+
|
576
552
|
/**
|
577
553
|
* Returns number of not hidden indexes counting from the passed starting index.
|
578
554
|
* The counting direction can be controlled by `incrementBy` argument.
|
@@ -583,39 +559,33 @@ var TableView = /*#__PURE__*/function () {
|
|
583
559
|
* @param {number} renderableIndexesCount Total count of renderable indexes for specific axis.
|
584
560
|
* @returns {number}
|
585
561
|
*/
|
586
|
-
|
587
562
|
}, {
|
588
563
|
key: "countNotHiddenIndexes",
|
589
564
|
value: function countNotHiddenIndexes(visualIndex, incrementBy, indexMapper, renderableIndexesCount) {
|
590
565
|
if (isNaN(visualIndex) || visualIndex < 0) {
|
591
566
|
return 0;
|
592
567
|
}
|
593
|
-
|
594
568
|
var firstVisibleIndex = indexMapper.getNearestNotHiddenIndex(visualIndex, incrementBy);
|
595
569
|
var renderableIndex = indexMapper.getRenderableFromVisualIndex(firstVisibleIndex);
|
596
|
-
|
597
570
|
if (!Number.isInteger(renderableIndex)) {
|
598
571
|
return 0;
|
599
572
|
}
|
600
|
-
|
601
573
|
var notHiddenIndexes = 0;
|
602
|
-
|
603
574
|
if (incrementBy < 0) {
|
604
575
|
// Zero-based numbering for renderable indexes corresponds to a number of not hidden indexes.
|
605
576
|
notHiddenIndexes = renderableIndex + 1;
|
606
577
|
} else if (incrementBy > 0) {
|
607
578
|
notHiddenIndexes = renderableIndexesCount - renderableIndex;
|
608
579
|
}
|
609
|
-
|
610
580
|
return notHiddenIndexes;
|
611
581
|
}
|
582
|
+
|
612
583
|
/**
|
613
584
|
* The function returns the number of not hidden column indexes that fit between the first and
|
614
585
|
* last fixed column in the left (or right in RTL mode) overlay.
|
615
586
|
*
|
616
587
|
* @returns {number}
|
617
588
|
*/
|
618
|
-
|
619
589
|
}, {
|
620
590
|
key: "countNotHiddenFixedColumnsStart",
|
621
591
|
value: function countNotHiddenFixedColumnsStart() {
|
@@ -623,13 +593,13 @@ var TableView = /*#__PURE__*/function () {
|
|
623
593
|
var visualFixedColumnsStart = Math.min(parseInt(this.settings.fixedColumnsStart, 10), countCols) - 1;
|
624
594
|
return this.countNotHiddenColumnIndexes(visualFixedColumnsStart, -1);
|
625
595
|
}
|
596
|
+
|
626
597
|
/**
|
627
598
|
* The function returns the number of not hidden row indexes that fit between the first and
|
628
599
|
* last fixed row in the top overlay.
|
629
600
|
*
|
630
601
|
* @returns {number}
|
631
602
|
*/
|
632
|
-
|
633
603
|
}, {
|
634
604
|
key: "countNotHiddenFixedRowsTop",
|
635
605
|
value: function countNotHiddenFixedRowsTop() {
|
@@ -637,13 +607,13 @@ var TableView = /*#__PURE__*/function () {
|
|
637
607
|
var visualFixedRowsTop = Math.min(parseInt(this.settings.fixedRowsTop, 10), countRows) - 1;
|
638
608
|
return this.countNotHiddenRowIndexes(visualFixedRowsTop, -1);
|
639
609
|
}
|
610
|
+
|
640
611
|
/**
|
641
612
|
* The function returns the number of not hidden row indexes that fit between the first and
|
642
613
|
* last fixed row in the bottom overlay.
|
643
614
|
*
|
644
615
|
* @returns {number}
|
645
616
|
*/
|
646
|
-
|
647
617
|
}, {
|
648
618
|
key: "countNotHiddenFixedRowsBottom",
|
649
619
|
value: function countNotHiddenFixedRowsBottom() {
|
@@ -651,13 +621,13 @@ var TableView = /*#__PURE__*/function () {
|
|
651
621
|
var visualFixedRowsBottom = Math.max(countRows - parseInt(this.settings.fixedRowsBottom, 10), 0);
|
652
622
|
return this.countNotHiddenRowIndexes(visualFixedRowsBottom, 1);
|
653
623
|
}
|
624
|
+
|
654
625
|
/**
|
655
626
|
* Checks if at least one cell than belongs to the main table is not covered by the top, left or
|
656
627
|
* bottom overlay.
|
657
628
|
*
|
658
629
|
* @returns {boolean}
|
659
630
|
*/
|
660
|
-
|
661
631
|
}, {
|
662
632
|
key: "isMainTableNotFullyCoveredByOverlays",
|
663
633
|
value: function isMainTableNotFullyCoveredByOverlays() {
|
@@ -665,17 +635,16 @@ var TableView = /*#__PURE__*/function () {
|
|
665
635
|
var fixedAllColumns = this.countNotHiddenFixedColumnsStart();
|
666
636
|
return this.instance.countRenderedRows() > fixedAllRows && this.instance.countRenderedCols() > fixedAllColumns;
|
667
637
|
}
|
638
|
+
|
668
639
|
/**
|
669
640
|
* Defines default configuration and initializes WalkOnTable instance.
|
670
641
|
*
|
671
642
|
* @private
|
672
643
|
*/
|
673
|
-
|
674
644
|
}, {
|
675
645
|
key: "initializeWalkontable",
|
676
646
|
value: function initializeWalkontable() {
|
677
647
|
var _this2 = this;
|
678
|
-
|
679
648
|
var priv = privatePool.get(this);
|
680
649
|
var walkontableConfig = {
|
681
650
|
rtlMode: this.instance.isRtl(),
|
@@ -695,7 +664,6 @@ var TableView = /*#__PURE__*/function () {
|
|
695
664
|
},
|
696
665
|
data: function data(renderableRow, renderableColumn) {
|
697
666
|
var _this2$instance;
|
698
|
-
|
699
667
|
return (_this2$instance = _this2.instance).getDataAtCell.apply(_this2$instance, _toConsumableArray(_this2.translateFromRenderableToVisualIndex(renderableRow, renderableColumn)));
|
700
668
|
},
|
701
669
|
totalRows: function totalRows() {
|
@@ -734,84 +702,67 @@ var TableView = /*#__PURE__*/function () {
|
|
734
702
|
renderAllRows: this.settings.renderAllRows,
|
735
703
|
rowHeaders: function rowHeaders() {
|
736
704
|
var headerRenderers = [];
|
737
|
-
|
738
705
|
if (_this2.instance.hasRowHeaders()) {
|
739
706
|
headerRenderers.push(function (renderableRowIndex, TH) {
|
740
707
|
// TODO: Some helper may be needed.
|
741
708
|
// We perform translation for row indexes (without row headers).
|
742
709
|
var visualRowIndex = renderableRowIndex >= 0 ? _this2.instance.rowIndexMapper.getVisualFromRenderableIndex(renderableRowIndex) : renderableRowIndex;
|
743
|
-
|
744
710
|
_this2.appendRowHeader(visualRowIndex, TH);
|
745
711
|
});
|
746
712
|
}
|
747
|
-
|
748
713
|
_this2.instance.runHooks('afterGetRowHeaderRenderers', headerRenderers);
|
749
|
-
|
714
|
+
_classPrivateFieldSet(_this2, _rowHeadersCount, headerRenderers.length);
|
750
715
|
return headerRenderers;
|
751
716
|
},
|
752
717
|
columnHeaders: function columnHeaders() {
|
753
718
|
var headerRenderers = [];
|
754
|
-
|
755
719
|
if (_this2.instance.hasColHeaders()) {
|
756
720
|
headerRenderers.push(function (renderedColumnIndex, TH) {
|
757
721
|
// TODO: Some helper may be needed.
|
758
722
|
// We perform translation for columns indexes (without column headers).
|
759
723
|
var visualColumnsIndex = renderedColumnIndex >= 0 ? _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(renderedColumnIndex) : renderedColumnIndex;
|
760
|
-
|
761
724
|
_this2.appendColHeader(visualColumnsIndex, TH);
|
762
725
|
});
|
763
726
|
}
|
764
|
-
|
765
727
|
_this2.instance.runHooks('afterGetColumnHeaderRenderers', headerRenderers);
|
766
|
-
|
728
|
+
_classPrivateFieldSet(_this2, _columnHeadersCount, headerRenderers.length);
|
767
729
|
return headerRenderers;
|
768
730
|
},
|
769
731
|
columnWidth: function columnWidth(renderedColumnIndex) {
|
770
|
-
var visualIndex = _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(renderedColumnIndex);
|
732
|
+
var visualIndex = _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(renderedColumnIndex);
|
733
|
+
|
734
|
+
// It's not a bug that we can't find visual index for some handled by method indexes. The function is called also
|
771
735
|
// for indexes that are not displayed (indexes that are beyond the grid's boundaries), i.e. when `fixedColumnsStart` > `startCols` (wrong config?) or
|
772
736
|
// scrolling and dataset is empty (scroll should handle that?).
|
773
|
-
|
774
|
-
|
775
737
|
return _this2.instance.getColWidth(visualIndex === null ? renderedColumnIndex : visualIndex);
|
776
738
|
},
|
777
739
|
rowHeight: function rowHeight(renderedRowIndex) {
|
778
740
|
var visualIndex = _this2.instance.rowIndexMapper.getVisualFromRenderableIndex(renderedRowIndex);
|
779
|
-
|
780
741
|
return _this2.instance.getRowHeight(visualIndex === null ? renderedRowIndex : visualIndex);
|
781
742
|
},
|
782
743
|
cellRenderer: function cellRenderer(renderedRowIndex, renderedColumnIndex, TD) {
|
783
744
|
var _this2$translateFromR = _this2.translateFromRenderableToVisualIndex(renderedRowIndex, renderedColumnIndex),
|
784
|
-
|
785
|
-
|
786
|
-
|
787
|
-
|
745
|
+
_this2$translateFromR2 = _slicedToArray(_this2$translateFromR, 2),
|
746
|
+
visualRowIndex = _this2$translateFromR2[0],
|
747
|
+
visualColumnIndex = _this2$translateFromR2[1];
|
788
748
|
|
749
|
+
// Coords may be modified. For example, by the `MergeCells` plugin. It should affect cell value and cell meta.
|
789
750
|
var modifiedCellCoords = _this2.instance.runHooks('modifyGetCellCoords', visualRowIndex, visualColumnIndex);
|
790
|
-
|
791
751
|
var visualRowToCheck = visualRowIndex;
|
792
752
|
var visualColumnToCheck = visualColumnIndex;
|
793
|
-
|
794
753
|
if (Array.isArray(modifiedCellCoords)) {
|
795
754
|
var _modifiedCellCoords = _slicedToArray(modifiedCellCoords, 2);
|
796
|
-
|
797
755
|
visualRowToCheck = _modifiedCellCoords[0];
|
798
756
|
visualColumnToCheck = _modifiedCellCoords[1];
|
799
757
|
}
|
800
|
-
|
801
758
|
var cellProperties = _this2.instance.getCellMeta(visualRowToCheck, visualColumnToCheck);
|
802
|
-
|
803
759
|
var prop = _this2.instance.colToProp(visualColumnToCheck);
|
804
|
-
|
805
760
|
var value = _this2.instance.getDataAtRowProp(visualRowToCheck, prop);
|
806
|
-
|
807
761
|
if (_this2.instance.hasHook('beforeValueRender')) {
|
808
762
|
value = _this2.instance.runHooks('beforeValueRender', value, cellProperties);
|
809
763
|
}
|
810
|
-
|
811
764
|
_this2.instance.runHooks('beforeRenderer', TD, visualRowIndex, visualColumnIndex, prop, value, cellProperties);
|
812
|
-
|
813
765
|
_this2.instance.getCellRenderer(cellProperties)(_this2.instance, TD, visualRowIndex, visualColumnIndex, prop, value, cellProperties);
|
814
|
-
|
815
766
|
_this2.instance.runHooks('afterRenderer', TD, visualRowIndex, visualColumnIndex, prop, value, cellProperties);
|
816
767
|
},
|
817
768
|
selections: this.instance.selection.highlight,
|
@@ -819,32 +770,29 @@ var TableView = /*#__PURE__*/function () {
|
|
819
770
|
return _this2.settings.fragmentSelection;
|
820
771
|
},
|
821
772
|
onWindowResize: function onWindowResize() {
|
822
|
-
if (
|
823
|
-
|
773
|
+
if (_this2.instance && !_this2.instance.isDestroyed) {
|
774
|
+
_this2.instance.refreshDimensions();
|
775
|
+
}
|
776
|
+
},
|
777
|
+
onContainerElementResize: function onContainerElementResize() {
|
778
|
+
if (_this2.instance && !_this2.instance.isDestroyed) {
|
779
|
+
_this2.instance.refreshDimensions();
|
824
780
|
}
|
825
|
-
|
826
|
-
_this2.instance.refreshDimensions();
|
827
781
|
},
|
828
782
|
onCellMouseDown: function onCellMouseDown(event, coords, TD, wt) {
|
829
783
|
var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
|
830
|
-
|
831
784
|
var controller = {
|
832
785
|
row: false,
|
833
786
|
column: false,
|
834
787
|
cell: false
|
835
788
|
};
|
836
|
-
|
837
789
|
_this2.instance.listen();
|
838
|
-
|
839
790
|
_this2.activeWt = wt;
|
840
791
|
priv.mouseDown = true;
|
841
|
-
|
842
792
|
_this2.instance.runHooks('beforeOnCellMouseDown', event, visualCoords, TD, controller);
|
843
|
-
|
844
793
|
if ((0, _event.isImmediatePropagationStopped)(event)) {
|
845
794
|
return;
|
846
795
|
}
|
847
|
-
|
848
796
|
(0, _mouseEventHandler.handleMouseEvent)(event, {
|
849
797
|
coords: visualCoords,
|
850
798
|
selection: _this2.instance.selection,
|
@@ -853,62 +801,45 @@ var TableView = /*#__PURE__*/function () {
|
|
853
801
|
return _this2.instance._createCellCoords(row, column);
|
854
802
|
}
|
855
803
|
});
|
856
|
-
|
857
804
|
_this2.instance.runHooks('afterOnCellMouseDown', event, visualCoords, TD);
|
858
|
-
|
859
805
|
_this2.activeWt = _this2._wt;
|
860
806
|
},
|
861
807
|
onCellContextMenu: function onCellContextMenu(event, coords, TD, wt) {
|
862
808
|
var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
|
863
|
-
|
864
809
|
_this2.activeWt = wt;
|
865
810
|
priv.mouseDown = false;
|
866
|
-
|
867
811
|
if (_this2.instance.selection.isInProgress()) {
|
868
812
|
_this2.instance.selection.finish();
|
869
813
|
}
|
870
|
-
|
871
814
|
_this2.instance.runHooks('beforeOnCellContextMenu', event, visualCoords, TD);
|
872
|
-
|
873
815
|
if ((0, _event.isImmediatePropagationStopped)(event)) {
|
874
816
|
return;
|
875
817
|
}
|
876
|
-
|
877
818
|
_this2.instance.runHooks('afterOnCellContextMenu', event, visualCoords, TD);
|
878
|
-
|
879
819
|
_this2.activeWt = _this2._wt;
|
880
820
|
},
|
881
821
|
onCellMouseOut: function onCellMouseOut(event, coords, TD, wt) {
|
882
822
|
var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
|
883
|
-
|
884
823
|
_this2.activeWt = wt;
|
885
|
-
|
886
824
|
_this2.instance.runHooks('beforeOnCellMouseOut', event, visualCoords, TD);
|
887
|
-
|
888
825
|
if ((0, _event.isImmediatePropagationStopped)(event)) {
|
889
826
|
return;
|
890
827
|
}
|
891
|
-
|
892
828
|
_this2.instance.runHooks('afterOnCellMouseOut', event, visualCoords, TD);
|
893
|
-
|
894
829
|
_this2.activeWt = _this2._wt;
|
895
830
|
},
|
896
831
|
onCellMouseOver: function onCellMouseOver(event, coords, TD, wt) {
|
897
832
|
var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
|
898
|
-
|
899
833
|
var controller = {
|
900
834
|
row: false,
|
901
835
|
column: false,
|
902
836
|
cell: false
|
903
837
|
};
|
904
838
|
_this2.activeWt = wt;
|
905
|
-
|
906
839
|
_this2.instance.runHooks('beforeOnCellMouseOver', event, visualCoords, TD, controller);
|
907
|
-
|
908
840
|
if ((0, _event.isImmediatePropagationStopped)(event)) {
|
909
841
|
return;
|
910
842
|
}
|
911
|
-
|
912
843
|
if (priv.mouseDown) {
|
913
844
|
(0, _mouseEventHandler.handleMouseEvent)(event, {
|
914
845
|
coords: visualCoords,
|
@@ -919,38 +850,30 @@ var TableView = /*#__PURE__*/function () {
|
|
919
850
|
}
|
920
851
|
});
|
921
852
|
}
|
922
|
-
|
923
853
|
_this2.instance.runHooks('afterOnCellMouseOver', event, visualCoords, TD);
|
924
|
-
|
925
854
|
_this2.activeWt = _this2._wt;
|
926
855
|
},
|
927
856
|
onCellMouseUp: function onCellMouseUp(event, coords, TD, wt) {
|
928
857
|
var visualCoords = _this2.translateFromRenderableToVisualCoords(coords);
|
929
|
-
|
930
858
|
_this2.activeWt = wt;
|
859
|
+
_this2.instance.runHooks('beforeOnCellMouseUp', event, visualCoords, TD);
|
931
860
|
|
932
|
-
|
861
|
+
// TODO: The second condition check is a workaround. Callback corresponding the method `updateSettings`
|
933
862
|
// disable plugin and enable it again. Disabling plugin closes the menu. Thus, calling the
|
934
863
|
// `updateSettings` in a body of any callback executed right after some context-menu action
|
935
864
|
// breaks the table (#7231).
|
936
|
-
|
937
|
-
|
938
865
|
if ((0, _event.isImmediatePropagationStopped)(event) || _this2.instance.isDestroyed) {
|
939
866
|
return;
|
940
867
|
}
|
941
|
-
|
942
868
|
_this2.instance.runHooks('afterOnCellMouseUp', event, visualCoords, TD);
|
943
|
-
|
944
869
|
_this2.activeWt = _this2._wt;
|
945
870
|
},
|
946
871
|
onCellCornerMouseDown: function onCellCornerMouseDown(event) {
|
947
872
|
event.preventDefault();
|
948
|
-
|
949
873
|
_this2.instance.runHooks('afterOnCellCornerMouseDown', event);
|
950
874
|
},
|
951
875
|
onCellCornerDblClick: function onCellCornerDblClick(event) {
|
952
876
|
event.preventDefault();
|
953
|
-
|
954
877
|
_this2.instance.runHooks('afterOnCellCornerDblClick', event);
|
955
878
|
},
|
956
879
|
beforeDraw: function beforeDraw(force, skipRender) {
|
@@ -971,31 +894,23 @@ var TableView = /*#__PURE__*/function () {
|
|
971
894
|
onBeforeHighlightingRowHeader: function onBeforeHighlightingRowHeader(renderableRow, headerLevel, highlightMeta) {
|
972
895
|
var rowMapper = _this2.instance.rowIndexMapper;
|
973
896
|
var visualRow = rowMapper.getVisualFromRenderableIndex(renderableRow);
|
974
|
-
|
975
897
|
var newVisualRow = _this2.instance.runHooks('beforeHighlightingRowHeader', visualRow, headerLevel, highlightMeta);
|
976
|
-
|
977
898
|
return rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(newVisualRow, 1));
|
978
899
|
},
|
979
900
|
onBeforeHighlightingColumnHeader: function onBeforeHighlightingColumnHeader(renderableColumn, headerLevel, highlightMeta) {
|
980
901
|
var columnMapper = _this2.instance.columnIndexMapper;
|
981
902
|
var visualColumn = columnMapper.getVisualFromRenderableIndex(renderableColumn);
|
982
|
-
|
983
903
|
var newVisualColumn = _this2.instance.runHooks('beforeHighlightingColumnHeader', visualColumn, headerLevel, highlightMeta);
|
984
|
-
|
985
904
|
return columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(newVisualColumn, 1));
|
986
905
|
},
|
987
906
|
onAfterDrawSelection: function onAfterDrawSelection(currentRow, currentColumn, layerLevel) {
|
988
907
|
var cornersOfSelection;
|
989
|
-
|
990
908
|
var _this2$translateFromR3 = _this2.translateFromRenderableToVisualIndex(currentRow, currentColumn),
|
991
|
-
|
992
|
-
|
993
|
-
|
994
|
-
|
909
|
+
_this2$translateFromR4 = _slicedToArray(_this2$translateFromR3, 2),
|
910
|
+
visualRowIndex = _this2$translateFromR4[0],
|
911
|
+
visualColumnIndex = _this2$translateFromR4[1];
|
995
912
|
var selectedRange = _this2.instance.selection.getSelectedRange();
|
996
|
-
|
997
913
|
var selectionRangeSize = selectedRange.size();
|
998
|
-
|
999
914
|
if (selectionRangeSize > 0) {
|
1000
915
|
// Selection layers are stored from the "oldest" to the "newest". We should calculate the offset.
|
1001
916
|
// Please look at the `SelectedRange` class and it's method for getting selection's layer for more information.
|
@@ -1003,16 +918,14 @@ var TableView = /*#__PURE__*/function () {
|
|
1003
918
|
var selectionForLayer = selectedRange.peekByIndex(selectionOffset);
|
1004
919
|
cornersOfSelection = [selectionForLayer.from.row, selectionForLayer.from.col, selectionForLayer.to.row, selectionForLayer.to.col];
|
1005
920
|
}
|
1006
|
-
|
1007
921
|
return _this2.instance.runHooks('afterDrawSelection', visualRowIndex, visualColumnIndex, cornersOfSelection, layerLevel);
|
1008
922
|
},
|
1009
923
|
onBeforeDrawBorders: function onBeforeDrawBorders(corners, borderClassName) {
|
1010
924
|
var _corners = _slicedToArray(corners, 4),
|
1011
|
-
|
1012
|
-
|
1013
|
-
|
1014
|
-
|
1015
|
-
|
925
|
+
startRenderableRow = _corners[0],
|
926
|
+
startRenderableColumn = _corners[1],
|
927
|
+
endRenderableRow = _corners[2],
|
928
|
+
endRenderableColumn = _corners[3];
|
1016
929
|
var visualCorners = [_this2.instance.rowIndexMapper.getVisualFromRenderableIndex(startRenderableRow), _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(startRenderableColumn), _this2.instance.rowIndexMapper.getVisualFromRenderableIndex(endRenderableRow), _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(endRenderableColumn)];
|
1017
930
|
return _this2.instance.runHooks('beforeDrawBorders', visualCorners, borderClassName);
|
1018
931
|
},
|
@@ -1024,7 +937,6 @@ var TableView = /*#__PURE__*/function () {
|
|
1024
937
|
},
|
1025
938
|
onBeforeStretchingColumnWidth: function onBeforeStretchingColumnWidth(stretchedWidth, renderedColumnIndex) {
|
1026
939
|
var visualColumnIndex = _this2.instance.columnIndexMapper.getVisualFromRenderableIndex(renderedColumnIndex);
|
1027
|
-
|
1028
940
|
return _this2.instance.runHooks('beforeStretchingColumnWidth', stretchedWidth, visualColumnIndex);
|
1029
941
|
},
|
1030
942
|
onModifyRowHeaderWidth: function onModifyRowHeaderWidth(rowHeaderWidth) {
|
@@ -1032,37 +944,32 @@ var TableView = /*#__PURE__*/function () {
|
|
1032
944
|
},
|
1033
945
|
onModifyGetCellCoords: function onModifyGetCellCoords(renderableRowIndex, renderableColumnIndex, topmost) {
|
1034
946
|
var rowMapper = _this2.instance.rowIndexMapper;
|
1035
|
-
var columnMapper = _this2.instance.columnIndexMapper;
|
947
|
+
var columnMapper = _this2.instance.columnIndexMapper;
|
1036
948
|
|
949
|
+
// Callback handle also headers. We shouldn't translate them.
|
1037
950
|
var visualColumnIndex = renderableColumnIndex >= 0 ? columnMapper.getVisualFromRenderableIndex(renderableColumnIndex) : renderableColumnIndex;
|
1038
951
|
var visualRowIndex = renderableRowIndex >= 0 ? rowMapper.getVisualFromRenderableIndex(renderableRowIndex) : renderableRowIndex;
|
1039
|
-
|
1040
952
|
var visualIndexes = _this2.instance.runHooks('modifyGetCellCoords', visualRowIndex, visualColumnIndex, topmost);
|
1041
|
-
|
1042
953
|
if (Array.isArray(visualIndexes)) {
|
1043
954
|
var _visualIndexes = _slicedToArray(visualIndexes, 4),
|
1044
|
-
|
1045
|
-
|
1046
|
-
|
1047
|
-
|
1048
|
-
|
955
|
+
visualRowFrom = _visualIndexes[0],
|
956
|
+
visualColumnFrom = _visualIndexes[1],
|
957
|
+
visualRowTo = _visualIndexes[2],
|
958
|
+
visualColumnTo = _visualIndexes[3];
|
1049
959
|
|
960
|
+
// Result of the hook is handled by the Walkontable (renderable indexes).
|
1050
961
|
return [visualRowFrom >= 0 ? rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(visualRowFrom, 1)) : visualRowFrom, visualColumnFrom >= 0 ? columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(visualColumnFrom, 1)) : visualColumnFrom, visualRowTo >= 0 ? rowMapper.getRenderableFromVisualIndex(rowMapper.getNearestNotHiddenIndex(visualRowTo, -1)) : visualRowTo, visualColumnTo >= 0 ? columnMapper.getRenderableFromVisualIndex(columnMapper.getNearestNotHiddenIndex(visualColumnTo, -1)) : visualColumnTo];
|
1051
962
|
}
|
1052
963
|
},
|
1053
964
|
viewportRowCalculatorOverride: function viewportRowCalculatorOverride(calc) {
|
1054
965
|
var viewportOffset = _this2.settings.viewportRowRenderingOffset;
|
1055
|
-
|
1056
966
|
if (viewportOffset === 'auto' && _this2.settings.fixedRowsTop) {
|
1057
967
|
viewportOffset = 10;
|
1058
968
|
}
|
1059
|
-
|
1060
969
|
if (viewportOffset > 0 || viewportOffset === 'auto') {
|
1061
970
|
var renderableRows = _this2.countRenderableRows();
|
1062
|
-
|
1063
971
|
var firstRenderedRow = calc.startRow;
|
1064
972
|
var lastRenderedRow = calc.endRow;
|
1065
|
-
|
1066
973
|
if (typeof viewportOffset === 'number') {
|
1067
974
|
calc.startRow = Math.max(firstRenderedRow - viewportOffset, 0);
|
1068
975
|
calc.endRow = Math.min(lastRenderedRow + viewportOffset, renderableRows - 1);
|
@@ -1072,34 +979,27 @@ var TableView = /*#__PURE__*/function () {
|
|
1072
979
|
calc.endRow = Math.min(lastRenderedRow + offset, renderableRows - 1);
|
1073
980
|
}
|
1074
981
|
}
|
1075
|
-
|
1076
982
|
_this2.instance.runHooks('afterViewportRowCalculatorOverride', calc);
|
1077
983
|
},
|
1078
984
|
viewportColumnCalculatorOverride: function viewportColumnCalculatorOverride(calc) {
|
1079
985
|
var viewportOffset = _this2.settings.viewportColumnRenderingOffset;
|
1080
|
-
|
1081
986
|
if (viewportOffset === 'auto' && _this2.settings.fixedColumnsStart) {
|
1082
987
|
viewportOffset = 10;
|
1083
988
|
}
|
1084
|
-
|
1085
989
|
if (viewportOffset > 0 || viewportOffset === 'auto') {
|
1086
990
|
var renderableColumns = _this2.countRenderableColumns();
|
1087
|
-
|
1088
991
|
var firstRenderedColumn = calc.startColumn;
|
1089
992
|
var lastRenderedColumn = calc.endColumn;
|
1090
|
-
|
1091
993
|
if (typeof viewportOffset === 'number') {
|
1092
994
|
calc.startColumn = Math.max(firstRenderedColumn - viewportOffset, 0);
|
1093
995
|
calc.endColumn = Math.min(lastRenderedColumn + viewportOffset, renderableColumns - 1);
|
1094
996
|
}
|
1095
|
-
|
1096
997
|
if (viewportOffset === 'auto') {
|
1097
998
|
var offset = Math.ceil(lastRenderedColumn / renderableColumns * 6);
|
1098
999
|
calc.startColumn = Math.max(firstRenderedColumn - offset, 0);
|
1099
1000
|
calc.endColumn = Math.min(lastRenderedColumn + offset, renderableColumns - 1);
|
1100
1001
|
}
|
1101
1002
|
}
|
1102
|
-
|
1103
1003
|
_this2.instance.runHooks('afterViewportColumnCalculatorOverride', calc);
|
1104
1004
|
},
|
1105
1005
|
rowHeaderWidth: function rowHeaderWidth() {
|
@@ -1107,19 +1007,17 @@ var TableView = /*#__PURE__*/function () {
|
|
1107
1007
|
},
|
1108
1008
|
columnHeaderHeight: function columnHeaderHeight() {
|
1109
1009
|
var columnHeaderHeight = _this2.instance.runHooks('modifyColumnHeaderHeight');
|
1110
|
-
|
1111
1010
|
return _this2.settings.columnHeaderHeight || columnHeaderHeight;
|
1112
1011
|
}
|
1113
1012
|
};
|
1114
1013
|
this.instance.runHooks('beforeInitWalkontable', walkontableConfig);
|
1115
1014
|
this._wt = new _src.default(walkontableConfig);
|
1116
1015
|
this.activeWt = this._wt;
|
1117
|
-
var spreader = this._wt.wtTable.spreader;
|
1118
|
-
|
1016
|
+
var spreader = this._wt.wtTable.spreader;
|
1017
|
+
// We have to cache width and height after Walkontable initialization.
|
1119
1018
|
var _this$instance$rootEl = this.instance.rootElement.getBoundingClientRect(),
|
1120
|
-
|
1121
|
-
|
1122
|
-
|
1019
|
+
width = _this$instance$rootEl.width,
|
1020
|
+
height = _this$instance$rootEl.height;
|
1123
1021
|
this.setLastSize(width, height);
|
1124
1022
|
this.eventManager.addEventListener(spreader, 'mousedown', function (event) {
|
1125
1023
|
// right mouse button exactly on spreader means right click on the right hand side of vertical scrollbar
|
@@ -1137,12 +1035,12 @@ var TableView = /*#__PURE__*/function () {
|
|
1137
1035
|
if (_this2.settings.observeDOMVisibility) {
|
1138
1036
|
if (_this2._wt.drawInterrupted) {
|
1139
1037
|
_this2.instance.forceFullRender = true;
|
1140
|
-
|
1141
1038
|
_this2.render();
|
1142
1039
|
}
|
1143
1040
|
}
|
1144
1041
|
});
|
1145
1042
|
}
|
1043
|
+
|
1146
1044
|
/**
|
1147
1045
|
* Checks if it's possible to create text selection in element.
|
1148
1046
|
*
|
@@ -1150,69 +1048,63 @@ var TableView = /*#__PURE__*/function () {
|
|
1150
1048
|
* @param {HTMLElement} el The element to check.
|
1151
1049
|
* @returns {boolean}
|
1152
1050
|
*/
|
1153
|
-
|
1154
1051
|
}, {
|
1155
1052
|
key: "isTextSelectionAllowed",
|
1156
1053
|
value: function isTextSelectionAllowed(el) {
|
1157
1054
|
if ((0, _element.isInput)(el)) {
|
1158
1055
|
return true;
|
1159
1056
|
}
|
1160
|
-
|
1161
1057
|
var isChildOfTableBody = (0, _element.isChildOf)(el, this.instance.view._wt.wtTable.spreader);
|
1162
|
-
|
1163
1058
|
if (this.settings.fragmentSelection === true && isChildOfTableBody) {
|
1164
1059
|
return true;
|
1165
1060
|
}
|
1166
|
-
|
1167
1061
|
if (this.settings.fragmentSelection === 'cell' && this.isSelectedOnlyCell() && isChildOfTableBody) {
|
1168
1062
|
return true;
|
1169
1063
|
}
|
1170
|
-
|
1171
1064
|
if (!this.settings.fragmentSelection && this.isCellEdited() && this.isSelectedOnlyCell()) {
|
1172
1065
|
return true;
|
1173
1066
|
}
|
1174
|
-
|
1175
1067
|
return false;
|
1176
1068
|
}
|
1069
|
+
|
1177
1070
|
/**
|
1178
1071
|
* Checks if user's been called mousedown.
|
1179
1072
|
*
|
1180
1073
|
* @private
|
1181
1074
|
* @returns {boolean}
|
1182
1075
|
*/
|
1183
|
-
|
1184
1076
|
}, {
|
1185
1077
|
key: "isMouseDown",
|
1186
1078
|
value: function isMouseDown() {
|
1187
1079
|
return privatePool.get(this).mouseDown;
|
1188
1080
|
}
|
1081
|
+
|
1189
1082
|
/**
|
1190
1083
|
* Check if selected only one cell.
|
1191
1084
|
*
|
1192
1085
|
* @private
|
1193
1086
|
* @returns {boolean}
|
1194
1087
|
*/
|
1195
|
-
|
1196
1088
|
}, {
|
1197
1089
|
key: "isSelectedOnlyCell",
|
1198
1090
|
value: function isSelectedOnlyCell() {
|
1199
1091
|
var _this$instance$getSel, _this$instance$getSel2;
|
1200
|
-
|
1201
1092
|
return (_this$instance$getSel = (_this$instance$getSel2 = this.instance.getSelectedRangeLast()) === null || _this$instance$getSel2 === void 0 ? void 0 : _this$instance$getSel2.isSingle()) !== null && _this$instance$getSel !== void 0 ? _this$instance$getSel : false;
|
1202
1093
|
}
|
1094
|
+
|
1203
1095
|
/**
|
1204
1096
|
* Checks if active cell is editing.
|
1205
1097
|
*
|
1206
1098
|
* @private
|
1207
1099
|
* @returns {boolean}
|
1208
1100
|
*/
|
1209
|
-
|
1210
1101
|
}, {
|
1211
1102
|
key: "isCellEdited",
|
1212
1103
|
value: function isCellEdited() {
|
1213
1104
|
var activeEditor = this.instance.getActiveEditor();
|
1214
1105
|
return activeEditor && activeEditor.isOpened();
|
1215
1106
|
}
|
1107
|
+
|
1216
1108
|
/**
|
1217
1109
|
* `beforeDraw` callback.
|
1218
1110
|
*
|
@@ -1222,7 +1114,6 @@ var TableView = /*#__PURE__*/function () {
|
|
1222
1114
|
* @param {object} skipRender Object with `skipRender` property, if it is set to `true ` the next rendering
|
1223
1115
|
* cycle will be skipped.
|
1224
1116
|
*/
|
1225
|
-
|
1226
1117
|
}, {
|
1227
1118
|
key: "beforeRender",
|
1228
1119
|
value: function beforeRender(force, skipRender) {
|
@@ -1231,6 +1122,7 @@ var TableView = /*#__PURE__*/function () {
|
|
1231
1122
|
this.instance.runHooks('beforeViewRender', this.instance.forceFullRender, skipRender);
|
1232
1123
|
}
|
1233
1124
|
}
|
1125
|
+
|
1234
1126
|
/**
|
1235
1127
|
* `afterRender` callback.
|
1236
1128
|
*
|
@@ -1238,7 +1130,6 @@ var TableView = /*#__PURE__*/function () {
|
|
1238
1130
|
* @param {boolean} force If `true` rendering was triggered by a change of settings or data or `false` if
|
1239
1131
|
* rendering was triggered by scrolling or moving selection.
|
1240
1132
|
*/
|
1241
|
-
|
1242
1133
|
}, {
|
1243
1134
|
key: "afterRender",
|
1244
1135
|
value: function afterRender(force) {
|
@@ -1247,6 +1138,7 @@ var TableView = /*#__PURE__*/function () {
|
|
1247
1138
|
this.instance.runHooks('afterViewRender', this.instance.forceFullRender);
|
1248
1139
|
}
|
1249
1140
|
}
|
1141
|
+
|
1250
1142
|
/**
|
1251
1143
|
* Append row header to a TH element.
|
1252
1144
|
*
|
@@ -1254,24 +1146,21 @@ var TableView = /*#__PURE__*/function () {
|
|
1254
1146
|
* @param {number} visualRowIndex The visual row index.
|
1255
1147
|
* @param {HTMLTableHeaderCellElement} TH The table header element.
|
1256
1148
|
*/
|
1257
|
-
|
1258
1149
|
}, {
|
1259
1150
|
key: "appendRowHeader",
|
1260
1151
|
value: function appendRowHeader(visualRowIndex, TH) {
|
1261
1152
|
if (TH.firstChild) {
|
1262
1153
|
var container = TH.firstChild;
|
1263
|
-
|
1264
1154
|
if (!(0, _element.hasClass)(container, 'relative')) {
|
1265
1155
|
(0, _element.empty)(TH);
|
1266
1156
|
this.appendRowHeader(visualRowIndex, TH);
|
1267
1157
|
return;
|
1268
1158
|
}
|
1269
|
-
|
1270
1159
|
this.updateCellHeader(container.querySelector('.rowHeader'), visualRowIndex, this.instance.getRowHeader);
|
1271
1160
|
} else {
|
1272
1161
|
var _this$instance4 = this.instance,
|
1273
|
-
|
1274
|
-
|
1162
|
+
rootDocument = _this$instance4.rootDocument,
|
1163
|
+
getRowHeader = _this$instance4.getRowHeader;
|
1275
1164
|
var div = rootDocument.createElement('div');
|
1276
1165
|
var span = rootDocument.createElement('span');
|
1277
1166
|
div.className = 'relative';
|
@@ -1280,28 +1169,31 @@ var TableView = /*#__PURE__*/function () {
|
|
1280
1169
|
div.appendChild(span);
|
1281
1170
|
TH.appendChild(div);
|
1282
1171
|
}
|
1283
|
-
|
1284
1172
|
this.instance.runHooks('afterGetRowHeader', visualRowIndex, TH);
|
1285
1173
|
}
|
1174
|
+
|
1286
1175
|
/**
|
1287
1176
|
* Append column header to a TH element.
|
1288
1177
|
*
|
1289
1178
|
* @private
|
1290
1179
|
* @param {number} visualColumnIndex Visual column index.
|
1291
|
-
* @param {
|
1180
|
+
* @param {HTMLTableCellElement} TH The table header element.
|
1181
|
+
* @param {Function} [label] The function that returns the header label.
|
1182
|
+
* @param {number} [headerLevel=0] The index of header level counting from the top (positive
|
1183
|
+
* values counting from 0 to N).
|
1292
1184
|
*/
|
1293
|
-
|
1294
1185
|
}, {
|
1295
1186
|
key: "appendColHeader",
|
1296
1187
|
value: function appendColHeader(visualColumnIndex, TH) {
|
1188
|
+
var label = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.instance.getColHeader;
|
1189
|
+
var headerLevel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
1297
1190
|
if (TH.firstChild) {
|
1298
1191
|
var container = TH.firstChild;
|
1299
|
-
|
1300
1192
|
if ((0, _element.hasClass)(container, 'relative')) {
|
1301
|
-
this.updateCellHeader(container.querySelector('.colHeader'), visualColumnIndex,
|
1193
|
+
this.updateCellHeader(container.querySelector('.colHeader'), visualColumnIndex, label, headerLevel);
|
1302
1194
|
} else {
|
1303
1195
|
(0, _element.empty)(TH);
|
1304
|
-
this.appendColHeader(visualColumnIndex, TH);
|
1196
|
+
this.appendColHeader(visualColumnIndex, TH, label, headerLevel);
|
1305
1197
|
}
|
1306
1198
|
} else {
|
1307
1199
|
var rootDocument = this.instance.rootDocument;
|
@@ -1309,30 +1201,31 @@ var TableView = /*#__PURE__*/function () {
|
|
1309
1201
|
var span = rootDocument.createElement('span');
|
1310
1202
|
div.className = 'relative';
|
1311
1203
|
span.className = 'colHeader';
|
1312
|
-
this.updateCellHeader(span, visualColumnIndex,
|
1204
|
+
this.updateCellHeader(span, visualColumnIndex, label, headerLevel);
|
1313
1205
|
div.appendChild(span);
|
1314
1206
|
TH.appendChild(div);
|
1315
1207
|
}
|
1316
|
-
|
1317
|
-
this.instance.runHooks('afterGetColHeader', visualColumnIndex, TH);
|
1208
|
+
this.instance.runHooks('afterGetColHeader', visualColumnIndex, TH, headerLevel);
|
1318
1209
|
}
|
1210
|
+
|
1319
1211
|
/**
|
1320
1212
|
* Updates header cell content.
|
1321
1213
|
*
|
1322
|
-
* @
|
1214
|
+
* @private
|
1323
1215
|
* @param {HTMLElement} element Element to update.
|
1324
1216
|
* @param {number} index Row index or column index.
|
1325
1217
|
* @param {Function} content Function which should be returns content for this cell.
|
1218
|
+
* @param {number} [headerLevel=0] The index of header level counting from the top (positive
|
1219
|
+
* values counting from 0 to N).
|
1326
1220
|
*/
|
1327
|
-
|
1328
1221
|
}, {
|
1329
1222
|
key: "updateCellHeader",
|
1330
1223
|
value: function updateCellHeader(element, index, content) {
|
1224
|
+
var headerLevel = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
1331
1225
|
var renderedIndex = index;
|
1226
|
+
var parentOverlay = this._wt.wtOverlays.getParentOverlay(element) || this._wt;
|
1332
1227
|
|
1333
|
-
|
1334
|
-
|
1335
|
-
|
1228
|
+
// prevent wrong calculations from SampleGenerator
|
1336
1229
|
if (element.parentNode) {
|
1337
1230
|
if ((0, _element.hasClass)(element, 'colHeader')) {
|
1338
1231
|
renderedIndex = parentOverlay.wtTable.columnFilter.sourceToRendered(index);
|
@@ -1340,15 +1233,15 @@ var TableView = /*#__PURE__*/function () {
|
|
1340
1233
|
renderedIndex = parentOverlay.wtTable.rowFilter.sourceToRendered(index);
|
1341
1234
|
}
|
1342
1235
|
}
|
1343
|
-
|
1344
1236
|
if (renderedIndex > -1) {
|
1345
|
-
(0, _element.fastInnerHTML)(element, content(index));
|
1237
|
+
(0, _element.fastInnerHTML)(element, content(index, headerLevel));
|
1346
1238
|
} else {
|
1347
1239
|
// workaround for https://github.com/handsontable/handsontable/issues/1946
|
1348
1240
|
(0, _element.fastInnerText)(element, String.fromCharCode(160));
|
1349
1241
|
(0, _element.addClass)(element, 'cornerHeader');
|
1350
1242
|
}
|
1351
1243
|
}
|
1244
|
+
|
1352
1245
|
/**
|
1353
1246
|
* Given a element's left (or right in RTL mode) position relative to the viewport, returns maximum
|
1354
1247
|
* element width until the right (or left) edge of the viewport (before scrollbar).
|
@@ -1357,15 +1250,14 @@ var TableView = /*#__PURE__*/function () {
|
|
1357
1250
|
* @param {number} inlineOffset The left (or right in RTL mode) offset.
|
1358
1251
|
* @returns {number}
|
1359
1252
|
*/
|
1360
|
-
|
1361
1253
|
}, {
|
1362
1254
|
key: "maximumVisibleElementWidth",
|
1363
1255
|
value: function maximumVisibleElementWidth(inlineOffset) {
|
1364
1256
|
var workspaceWidth = this._wt.wtViewport.getWorkspaceWidth();
|
1365
|
-
|
1366
1257
|
var maxWidth = workspaceWidth - inlineOffset;
|
1367
1258
|
return maxWidth > 0 ? maxWidth : 0;
|
1368
1259
|
}
|
1260
|
+
|
1369
1261
|
/**
|
1370
1262
|
* Given a element's top position relative to the viewport, returns maximum element height until the bottom
|
1371
1263
|
* edge of the viewport (before scrollbar).
|
@@ -1374,22 +1266,20 @@ var TableView = /*#__PURE__*/function () {
|
|
1374
1266
|
* @param {number} topOffset The top offset.
|
1375
1267
|
* @returns {number}
|
1376
1268
|
*/
|
1377
|
-
|
1378
1269
|
}, {
|
1379
1270
|
key: "maximumVisibleElementHeight",
|
1380
1271
|
value: function maximumVisibleElementHeight(topOffset) {
|
1381
1272
|
var workspaceHeight = this._wt.wtViewport.getWorkspaceHeight();
|
1382
|
-
|
1383
1273
|
var maxHeight = workspaceHeight - topOffset;
|
1384
1274
|
return maxHeight > 0 ? maxHeight : 0;
|
1385
1275
|
}
|
1276
|
+
|
1386
1277
|
/**
|
1387
1278
|
* Sets new dimensions of the container.
|
1388
1279
|
*
|
1389
1280
|
* @param {number} width The table width.
|
1390
1281
|
* @param {number} height The table height.
|
1391
1282
|
*/
|
1392
|
-
|
1393
1283
|
}, {
|
1394
1284
|
key: "setLastSize",
|
1395
1285
|
value: function setLastSize(width, height) {
|
@@ -1398,12 +1288,12 @@ var TableView = /*#__PURE__*/function () {
|
|
1398
1288
|
priv.lastWidth = _ref2[0];
|
1399
1289
|
priv.lastHeight = _ref2[1];
|
1400
1290
|
}
|
1291
|
+
|
1401
1292
|
/**
|
1402
1293
|
* Returns cached dimensions.
|
1403
1294
|
*
|
1404
1295
|
* @returns {object}
|
1405
1296
|
*/
|
1406
|
-
|
1407
1297
|
}, {
|
1408
1298
|
key: "getLastSize",
|
1409
1299
|
value: function getLastSize() {
|
@@ -1413,67 +1303,86 @@ var TableView = /*#__PURE__*/function () {
|
|
1413
1303
|
height: priv.lastHeight
|
1414
1304
|
};
|
1415
1305
|
}
|
1306
|
+
|
1416
1307
|
/**
|
1417
1308
|
* Returns the first fully visible row in the table viewport.
|
1418
1309
|
*
|
1419
1310
|
* @returns {number}
|
1420
1311
|
*/
|
1421
|
-
|
1422
1312
|
}, {
|
1423
1313
|
key: "getFirstFullyVisibleRow",
|
1424
1314
|
value: function getFirstFullyVisibleRow() {
|
1425
1315
|
return this.instance.rowIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getFirstVisibleRow());
|
1426
1316
|
}
|
1317
|
+
|
1427
1318
|
/**
|
1428
1319
|
* Returns the last fully visible row in the table viewport.
|
1429
1320
|
*
|
1430
1321
|
* @returns {number}
|
1431
1322
|
*/
|
1432
|
-
|
1433
1323
|
}, {
|
1434
1324
|
key: "getLastFullyVisibleRow",
|
1435
1325
|
value: function getLastFullyVisibleRow() {
|
1436
1326
|
return this.instance.rowIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getLastVisibleRow());
|
1437
1327
|
}
|
1328
|
+
|
1438
1329
|
/**
|
1439
1330
|
* Returns the first fully visible column in the table viewport.
|
1440
1331
|
*
|
1441
1332
|
* @returns {number}
|
1442
1333
|
*/
|
1443
|
-
|
1444
1334
|
}, {
|
1445
1335
|
key: "getFirstFullyVisibleColumn",
|
1446
1336
|
value: function getFirstFullyVisibleColumn() {
|
1447
1337
|
return this.instance.columnIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getFirstVisibleColumn());
|
1448
1338
|
}
|
1339
|
+
|
1449
1340
|
/**
|
1450
1341
|
* Returns the last fully visible column in the table viewport.
|
1451
1342
|
*
|
1452
1343
|
* @returns {number}
|
1453
1344
|
*/
|
1454
|
-
|
1455
1345
|
}, {
|
1456
1346
|
key: "getLastFullyVisibleColumn",
|
1457
1347
|
value: function getLastFullyVisibleColumn() {
|
1458
1348
|
return this.instance.columnIndexMapper.getVisualFromRenderableIndex(this.instance.view._wt.wtScroll.getLastVisibleColumn());
|
1459
1349
|
}
|
1350
|
+
|
1351
|
+
/**
|
1352
|
+
* Returns the total count of the rendered column headers.
|
1353
|
+
*
|
1354
|
+
* @returns {number}
|
1355
|
+
*/
|
1356
|
+
}, {
|
1357
|
+
key: "getColumnHeadersCount",
|
1358
|
+
value: function getColumnHeadersCount() {
|
1359
|
+
return _classPrivateFieldGet(this, _columnHeadersCount);
|
1360
|
+
}
|
1361
|
+
|
1362
|
+
/**
|
1363
|
+
* Returns the total count of the rendered row headers.
|
1364
|
+
*
|
1365
|
+
* @returns {number}
|
1366
|
+
*/
|
1367
|
+
}, {
|
1368
|
+
key: "getRowHeadersCount",
|
1369
|
+
value: function getRowHeadersCount() {
|
1370
|
+
return _classPrivateFieldGet(this, _rowHeadersCount);
|
1371
|
+
}
|
1372
|
+
|
1460
1373
|
/**
|
1461
1374
|
* Destroys internal WalkOnTable's instance. Detaches all of the bonded listeners.
|
1462
1375
|
*
|
1463
1376
|
* @private
|
1464
1377
|
*/
|
1465
|
-
|
1466
1378
|
}, {
|
1467
1379
|
key: "destroy",
|
1468
1380
|
value: function destroy() {
|
1469
1381
|
this._wt.destroy();
|
1470
|
-
|
1471
1382
|
this.eventManager.destroy();
|
1472
1383
|
}
|
1473
1384
|
}]);
|
1474
|
-
|
1475
1385
|
return TableView;
|
1476
1386
|
}();
|
1477
|
-
|
1478
1387
|
var _default = TableView;
|
1479
1388
|
exports.default = _default;
|