handsontable 11.1.0 → 12.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/3rdparty/walkontable/src/border.js +120 -98
- package/3rdparty/walkontable/src/border.mjs +120 -94
- package/3rdparty/walkontable/src/cell/coords.js +59 -17
- package/3rdparty/walkontable/src/cell/coords.mjs +55 -17
- package/3rdparty/walkontable/src/cell/range.d.ts +10 -2
- package/3rdparty/walkontable/src/cell/range.js +278 -99
- package/3rdparty/walkontable/src/cell/range.mjs +273 -99
- package/3rdparty/walkontable/src/core/_base.js +452 -0
- package/3rdparty/walkontable/src/core/_base.mjs +440 -0
- package/3rdparty/walkontable/src/core/clone.js +97 -0
- package/3rdparty/walkontable/src/core/clone.mjs +80 -0
- package/3rdparty/walkontable/src/core/core.js +183 -0
- package/3rdparty/walkontable/src/core/core.mjs +160 -0
- package/3rdparty/walkontable/src/event.js +99 -66
- package/3rdparty/walkontable/src/event.mjs +99 -63
- package/3rdparty/walkontable/src/facade/core.js +251 -0
- package/3rdparty/walkontable/src/facade/core.mjs +243 -0
- package/3rdparty/walkontable/src/index.js +2 -46
- package/3rdparty/walkontable/src/index.mjs +3 -13
- package/3rdparty/walkontable/src/overlay/_base.js +124 -57
- package/3rdparty/walkontable/src/overlay/_base.mjs +124 -57
- package/3rdparty/walkontable/src/overlay/bottom.js +96 -80
- package/3rdparty/walkontable/src/overlay/bottom.mjs +96 -80
- package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.js → bottomInlineStartCorner.js} +45 -62
- package/3rdparty/walkontable/src/overlay/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +44 -61
- package/3rdparty/walkontable/src/overlay/constants.js +25 -9
- package/3rdparty/walkontable/src/overlay/constants.mjs +14 -4
- package/3rdparty/walkontable/src/overlay/index.js +10 -19
- package/3rdparty/walkontable/src/overlay/index.mjs +4 -5
- package/3rdparty/walkontable/src/overlay/{left.js → inlineStart.js} +113 -82
- package/3rdparty/walkontable/src/overlay/{left.mjs → inlineStart.mjs} +112 -81
- package/3rdparty/walkontable/src/overlay/top.js +93 -68
- package/3rdparty/walkontable/src/overlay/top.mjs +93 -68
- package/3rdparty/walkontable/src/overlay/{topLeftCorner.js → topInlineStartCorner.js} +56 -57
- package/3rdparty/walkontable/src/overlay/{topLeftCorner.mjs → topInlineStartCorner.mjs} +51 -52
- package/3rdparty/walkontable/src/overlays.js +225 -156
- package/3rdparty/walkontable/src/overlays.mjs +224 -154
- package/3rdparty/walkontable/src/renderer/cells.js +4 -3
- package/3rdparty/walkontable/src/renderer/cells.mjs +4 -3
- package/3rdparty/walkontable/src/renderer/colGroup.js +2 -2
- package/3rdparty/walkontable/src/renderer/colGroup.mjs +2 -2
- package/3rdparty/walkontable/src/renderer/columnHeaders.js +2 -2
- package/3rdparty/walkontable/src/renderer/columnHeaders.mjs +2 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.js +2 -2
- package/3rdparty/walkontable/src/renderer/rowHeaders.mjs +2 -2
- package/3rdparty/walkontable/src/renderer/rows.js +2 -2
- package/3rdparty/walkontable/src/renderer/rows.mjs +2 -2
- package/3rdparty/walkontable/src/scroll.js +125 -104
- package/3rdparty/walkontable/src/scroll.mjs +124 -104
- package/3rdparty/walkontable/src/selection.js +10 -14
- package/3rdparty/walkontable/src/selection.mjs +10 -12
- package/3rdparty/walkontable/src/settings.js +235 -126
- package/3rdparty/walkontable/src/settings.mjs +235 -125
- package/3rdparty/walkontable/src/table/bottom.js +16 -5
- package/3rdparty/walkontable/src/table/bottom.mjs +15 -5
- package/3rdparty/walkontable/src/table/{bottomLeftCorner.js → bottomInlineStartCorner.js} +27 -15
- package/3rdparty/walkontable/src/table/{bottomLeftCorner.mjs → bottomInlineStartCorner.mjs} +26 -15
- package/3rdparty/walkontable/src/table/{left.js → inlineStart.js} +23 -15
- package/3rdparty/walkontable/src/table/{left.mjs → inlineStart.mjs} +22 -15
- package/3rdparty/walkontable/src/table/master.js +22 -12
- package/3rdparty/walkontable/src/table/master.mjs +22 -12
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +12 -6
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +12 -6
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +12 -6
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +12 -6
- package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.js → stickyColumnsStart.js} +13 -7
- package/3rdparty/walkontable/src/table/mixin/{stickyColumnsLeft.mjs → stickyColumnsStart.mjs} +13 -7
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.js +11 -5
- package/3rdparty/walkontable/src/table/mixin/stickyRowsBottom.mjs +11 -5
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.js +9 -3
- package/3rdparty/walkontable/src/table/mixin/stickyRowsTop.mjs +9 -3
- package/3rdparty/walkontable/src/table/top.js +16 -5
- package/3rdparty/walkontable/src/table/top.mjs +15 -5
- package/3rdparty/walkontable/src/table/{topLeftCorner.js → topInlineStartCorner.js} +27 -15
- package/3rdparty/walkontable/src/table/{topLeftCorner.mjs → topInlineStartCorner.mjs} +26 -15
- package/3rdparty/walkontable/src/table.js +235 -140
- package/3rdparty/walkontable/src/table.mjs +231 -134
- package/3rdparty/walkontable/src/types.js +103 -0
- package/3rdparty/walkontable/src/types.mjs +102 -0
- package/3rdparty/walkontable/src/utils/column.js +22 -33
- package/3rdparty/walkontable/src/utils/column.mjs +22 -30
- package/3rdparty/walkontable/src/utils/orderView/sharedView.js +2 -2
- package/3rdparty/walkontable/src/utils/orderView/sharedView.mjs +2 -2
- package/3rdparty/walkontable/src/utils/row.js +9 -4
- package/3rdparty/walkontable/src/utils/row.mjs +9 -4
- package/3rdparty/walkontable/src/viewport.js +89 -100
- package/3rdparty/walkontable/src/viewport.mjs +89 -97
- package/CHANGELOG.md +92 -0
- package/LICENSE.txt +1 -1
- package/README.md +0 -1
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/cellTypes/timeType/timeType.d.ts +6 -6
- package/cellTypes/timeType/timeType.js +4 -5
- package/cellTypes/timeType/timeType.mjs +4 -5
- package/core.d.ts +6 -1
- package/core.js +508 -80
- package/core.mjs +517 -92
- package/dataMap/index.js +4 -0
- package/dataMap/index.mjs +2 -1
- package/dataMap/metaManager/index.js +2 -2
- package/dataMap/metaManager/index.mjs +2 -2
- package/dataMap/metaManager/metaLayers/globalMeta.js +4 -0
- package/dataMap/metaManager/metaLayers/globalMeta.mjs +4 -0
- package/dataMap/metaManager/metaLayers/tableMeta.js +2 -2
- package/dataMap/metaManager/metaLayers/tableMeta.mjs +2 -2
- package/dataMap/metaManager/metaSchema.js +282 -187
- package/dataMap/metaManager/metaSchema.mjs +282 -187
- package/dataMap/metaManager/mods/extendMetaProperties.js +126 -0
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +113 -0
- package/dataMap/replaceData.js +3 -17
- package/dataMap/replaceData.mjs +3 -17
- package/dist/handsontable.css +268 -92
- package/dist/handsontable.full.css +269 -103
- package/dist/handsontable.full.js +41990 -35658
- package/dist/handsontable.full.min.css +9 -9
- package/dist/handsontable.full.min.js +144 -144
- package/dist/handsontable.js +29561 -25597
- package/dist/handsontable.min.css +8 -8
- package/dist/handsontable.min.js +4 -4
- package/dist/languages/all.js +131 -34
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/ar-AR.js +167 -0
- package/dist/languages/ar-AR.min.js +1 -0
- package/dist/languages/cs-CZ.js +167 -0
- package/dist/languages/cs-CZ.min.js +1 -0
- package/dist/languages/de-CH.js +31 -29
- package/dist/languages/de-CH.min.js +1 -1
- package/dist/languages/de-DE.js +4 -2
- package/dist/languages/de-DE.min.js +1 -1
- package/dist/languages/en-US.js +4 -2
- package/dist/languages/en-US.min.js +1 -1
- package/dist/languages/es-MX.js +4 -2
- package/dist/languages/es-MX.min.js +1 -1
- package/dist/languages/fr-FR.js +4 -2
- package/dist/languages/fr-FR.min.js +1 -1
- package/dist/languages/it-IT.js +4 -2
- package/dist/languages/it-IT.min.js +1 -1
- package/dist/languages/ja-JP.js +36 -38
- package/dist/languages/ja-JP.min.js +1 -1
- package/dist/languages/ko-KR.js +36 -39
- package/dist/languages/ko-KR.min.js +1 -1
- package/dist/languages/lv-LV.js +2 -2
- package/dist/languages/lv-LV.min.js +1 -1
- package/dist/languages/nb-NO.js +2 -2
- package/dist/languages/nb-NO.min.js +1 -1
- package/dist/languages/nl-NL.js +2 -2
- package/dist/languages/nl-NL.min.js +1 -1
- package/dist/languages/pl-PL.js +2 -2
- package/dist/languages/pl-PL.min.js +1 -1
- package/dist/languages/pt-BR.js +2 -2
- package/dist/languages/pt-BR.min.js +1 -1
- package/dist/languages/ru-RU.js +2 -2
- package/dist/languages/ru-RU.min.js +1 -1
- package/dist/languages/sr-SP.js +171 -0
- package/dist/languages/sr-SP.min.js +1 -0
- package/dist/languages/zh-CN.js +24 -24
- package/dist/languages/zh-CN.min.js +1 -1
- package/dist/languages/zh-TW.js +24 -24
- package/dist/languages/zh-TW.min.js +1 -1
- package/editorManager.js +120 -267
- package/editorManager.mjs +128 -278
- package/editors/autocompleteEditor/autocompleteEditor.js +22 -25
- package/editors/autocompleteEditor/autocompleteEditor.mjs +22 -25
- package/editors/baseEditor/baseEditor.js +205 -34
- package/editors/baseEditor/baseEditor.mjs +200 -32
- package/editors/checkboxEditor/checkboxEditor.js +2 -2
- package/editors/checkboxEditor/checkboxEditor.mjs +2 -2
- package/editors/dateEditor/dateEditor.js +21 -8
- package/editors/dateEditor/dateEditor.mjs +22 -9
- package/editors/dropdownEditor/dropdownEditor.js +3 -3
- package/editors/dropdownEditor/dropdownEditor.mjs +3 -3
- package/editors/handsontableEditor/handsontableEditor.js +106 -55
- package/editors/handsontableEditor/handsontableEditor.mjs +106 -55
- package/editors/index.d.ts +3 -0
- package/editors/index.js +6 -0
- package/editors/index.mjs +3 -1
- package/editors/numericEditor/numericEditor.js +2 -2
- package/editors/numericEditor/numericEditor.mjs +2 -2
- package/editors/passwordEditor/passwordEditor.js +3 -3
- package/editors/passwordEditor/passwordEditor.mjs +3 -3
- package/editors/selectEditor/selectEditor.js +65 -110
- package/editors/selectEditor/selectEditor.mjs +66 -109
- package/editors/textEditor/caretPositioner.js +49 -0
- package/editors/textEditor/caretPositioner.mjs +42 -0
- package/editors/textEditor/textEditor.js +205 -181
- package/editors/textEditor/textEditor.mjs +199 -179
- package/editors/timeEditor/index.d.ts +1 -0
- package/editors/timeEditor/index.js +9 -0
- package/editors/timeEditor/index.mjs +1 -0
- package/editors/timeEditor/timeEditor.d.ts +7 -0
- package/editors/timeEditor/timeEditor.js +105 -0
- package/editors/timeEditor/timeEditor.mjs +84 -0
- package/eventManager.js +4 -2
- package/eventManager.mjs +4 -2
- package/helpers/mixed.js +2 -2
- package/helpers/mixed.mjs +2 -2
- package/i18n/languages/ar-AR.js +41 -0
- package/i18n/languages/ar-AR.mjs +17 -0
- package/i18n/languages/cs-CZ.js +40 -0
- package/i18n/languages/cs-CZ.mjs +16 -0
- package/i18n/languages/index.js +12 -0
- package/i18n/languages/index.mjs +4 -1
- package/i18n/languages/sr-SP.js +40 -0
- package/i18n/languages/sr-SP.mjs +16 -0
- package/index.d.ts +4 -0
- package/languages/all.js +131 -34
- package/languages/ar-AR.js +167 -0
- package/languages/ar-AR.mjs +19 -0
- package/languages/cs-CZ.js +167 -0
- package/languages/cs-CZ.mjs +18 -0
- package/languages/de-CH.js +31 -29
- package/languages/de-DE.js +4 -2
- package/languages/en-US.js +4 -2
- package/languages/es-MX.js +4 -2
- package/languages/fr-FR.js +4 -2
- package/languages/index.js +131 -34
- package/languages/index.mjs +4 -1
- package/languages/it-IT.js +4 -2
- package/languages/ja-JP.js +36 -38
- package/languages/ko-KR.js +36 -39
- package/languages/lv-LV.js +2 -2
- package/languages/nb-NO.js +2 -2
- package/languages/nl-NL.js +2 -2
- package/languages/pl-PL.js +2 -2
- package/languages/pt-BR.js +2 -2
- package/languages/ru-RU.js +2 -2
- package/languages/sr-SP.js +171 -0
- package/languages/sr-SP.mjs +18 -0
- package/languages/zh-CN.js +24 -24
- package/languages/zh-TW.js +24 -24
- package/package.json +44 -4
- package/pluginHooks.js +49 -13
- package/pluginHooks.mjs +49 -13
- package/plugins/autoColumnSize/autoColumnSize.js +15 -10
- package/plugins/autoColumnSize/autoColumnSize.mjs +15 -10
- package/plugins/autoRowSize/autoRowSize.js +14 -9
- package/plugins/autoRowSize/autoRowSize.mjs +14 -9
- package/plugins/autofill/autofill.js +49 -33
- package/plugins/autofill/autofill.mjs +49 -32
- package/plugins/autofill/utils.js +10 -11
- package/plugins/autofill/utils.mjs +10 -10
- package/plugins/base/base.d.ts +8 -2
- package/plugins/base/base.js +67 -4
- package/plugins/base/base.mjs +66 -4
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +3 -3
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +3 -3
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.js +3 -3
- package/plugins/bindRowsWithHeaders/maps/looseBindsMap.mjs +3 -3
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.js +3 -3
- package/plugins/bindRowsWithHeaders/maps/strictBindsMap.mjs +3 -3
- package/plugins/collapsibleColumns/collapsibleColumns.js +27 -9
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +27 -9
- package/plugins/columnSorting/columnSorting.js +5 -7
- package/plugins/columnSorting/columnSorting.mjs +5 -6
- package/plugins/columnSummary/columnSummary.js +3 -3
- package/plugins/columnSummary/columnSummary.mjs +3 -3
- package/plugins/comments/commentEditor.js +18 -2
- package/plugins/comments/commentEditor.mjs +19 -3
- package/plugins/comments/comments.js +57 -46
- package/plugins/comments/comments.mjs +58 -46
- package/plugins/contextMenu/contextMenu.js +10 -6
- package/plugins/contextMenu/contextMenu.mjs +10 -6
- package/plugins/contextMenu/menu.js +222 -110
- package/plugins/contextMenu/menu.mjs +219 -111
- package/plugins/contextMenu/predefinedItems/columnLeft.js +12 -4
- package/plugins/contextMenu/predefinedItems/columnLeft.mjs +11 -4
- package/plugins/contextMenu/predefinedItems/columnRight.js +9 -9
- package/plugins/contextMenu/predefinedItems/columnRight.mjs +9 -9
- package/plugins/contextMenu/utils.js +2 -2
- package/plugins/contextMenu/utils.mjs +2 -2
- package/plugins/copyPaste/copyPaste.js +31 -21
- package/plugins/copyPaste/copyPaste.mjs +30 -21
- package/plugins/customBorders/contextMenuItem/left.js +4 -3
- package/plugins/customBorders/contextMenuItem/left.mjs +4 -3
- package/plugins/customBorders/contextMenuItem/right.js +4 -3
- package/plugins/customBorders/contextMenuItem/right.mjs +4 -3
- package/plugins/customBorders/customBorders.js +144 -87
- package/plugins/customBorders/customBorders.mjs +143 -85
- package/plugins/customBorders/utils.js +131 -27
- package/plugins/customBorders/utils.mjs +115 -27
- package/plugins/dragToScroll/dragToScroll.js +10 -5
- package/plugins/dragToScroll/dragToScroll.mjs +10 -5
- package/plugins/dropdownMenu/dropdownMenu.js +9 -7
- package/plugins/dropdownMenu/dropdownMenu.mjs +9 -7
- package/plugins/exportFile/exportFile.js +2 -2
- package/plugins/exportFile/exportFile.mjs +2 -2
- package/plugins/exportFile/types/csv.js +2 -2
- package/plugins/exportFile/types/csv.mjs +2 -2
- package/plugins/filters/component/actionBar.js +2 -2
- package/plugins/filters/component/actionBar.mjs +2 -2
- package/plugins/filters/component/condition.js +3 -3
- package/plugins/filters/component/condition.mjs +3 -3
- package/plugins/filters/component/operators.js +2 -2
- package/plugins/filters/component/operators.mjs +2 -2
- package/plugins/filters/component/value.js +3 -3
- package/plugins/filters/component/value.mjs +3 -3
- package/plugins/filters/filters.js +11 -8
- package/plugins/filters/filters.mjs +11 -8
- package/plugins/filters/ui/input.js +3 -3
- package/plugins/filters/ui/input.mjs +3 -3
- package/plugins/filters/ui/link.js +3 -3
- package/plugins/filters/ui/link.mjs +3 -3
- package/plugins/filters/ui/multipleSelect.js +18 -31
- package/plugins/filters/ui/multipleSelect.mjs +18 -31
- package/plugins/filters/ui/radioInput.js +3 -3
- package/plugins/filters/ui/radioInput.mjs +3 -3
- package/plugins/filters/ui/select.js +4 -4
- package/plugins/filters/ui/select.mjs +4 -4
- package/plugins/formulas/formulas.js +14 -9
- package/plugins/formulas/formulas.mjs +14 -9
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.js +2 -4
- package/plugins/hiddenColumns/contextMenuItem/hideColumn.mjs +2 -4
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +5 -5
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +5 -5
- package/plugins/hiddenColumns/hiddenColumns.js +9 -4
- package/plugins/hiddenColumns/hiddenColumns.mjs +9 -4
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +2 -4
- package/plugins/hiddenRows/contextMenuItem/hideRow.mjs +2 -4
- package/plugins/hiddenRows/contextMenuItem/showRow.js +5 -5
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +5 -5
- package/plugins/hiddenRows/hiddenRows.js +9 -4
- package/plugins/hiddenRows/hiddenRows.mjs +9 -4
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +1 -1
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.mjs +1 -1
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +54 -15
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +49 -15
- package/plugins/manualColumnMove/manualColumnMove.js +70 -70
- package/plugins/manualColumnMove/manualColumnMove.mjs +71 -71
- package/plugins/manualColumnMove/ui/_base.js +25 -12
- package/plugins/manualColumnMove/ui/_base.mjs +24 -12
- package/plugins/manualColumnMove/ui/backlight.js +3 -3
- package/plugins/manualColumnMove/ui/backlight.mjs +3 -3
- package/plugins/manualColumnMove/ui/guideline.js +3 -3
- package/plugins/manualColumnMove/ui/guideline.mjs +3 -3
- package/plugins/manualColumnResize/manualColumnResize.js +37 -21
- package/plugins/manualColumnResize/manualColumnResize.mjs +37 -21
- package/plugins/manualRowMove/manualRowMove.js +26 -34
- package/plugins/manualRowMove/manualRowMove.mjs +26 -34
- package/plugins/manualRowMove/ui/backlight.js +3 -3
- package/plugins/manualRowMove/ui/backlight.mjs +3 -3
- package/plugins/manualRowMove/ui/guideline.js +3 -3
- package/plugins/manualRowMove/ui/guideline.mjs +3 -3
- package/plugins/manualRowResize/manualRowResize.js +34 -19
- package/plugins/manualRowResize/manualRowResize.mjs +34 -19
- package/plugins/mergeCells/calculations/autofill.js +6 -5
- package/plugins/mergeCells/calculations/autofill.mjs +6 -4
- package/plugins/mergeCells/calculations/selection.js +9 -4
- package/plugins/mergeCells/calculations/selection.mjs +9 -4
- package/plugins/mergeCells/cellCoords.js +16 -4
- package/plugins/mergeCells/cellCoords.mjs +16 -3
- package/plugins/mergeCells/cellsCollection.js +30 -23
- package/plugins/mergeCells/cellsCollection.mjs +30 -22
- package/plugins/mergeCells/mergeCells.js +94 -61
- package/plugins/mergeCells/mergeCells.mjs +94 -59
- package/plugins/multiColumnSorting/multiColumnSorting.js +4 -6
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +4 -5
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +51 -57
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +52 -57
- package/plugins/nestedHeaders/nestedHeaders.js +31 -20
- package/plugins/nestedHeaders/nestedHeaders.mjs +31 -20
- package/plugins/nestedHeaders/stateManager/utils.js +3 -4
- package/plugins/nestedHeaders/stateManager/utils.mjs +3 -4
- package/plugins/nestedHeaders/utils/ghostTable.js +114 -75
- package/plugins/nestedHeaders/utils/ghostTable.mjs +114 -74
- package/plugins/nestedRows/nestedRows.js +9 -4
- package/plugins/nestedRows/nestedRows.mjs +9 -4
- package/plugins/nestedRows/ui/collapsing.js +2 -2
- package/plugins/nestedRows/ui/collapsing.mjs +2 -2
- package/plugins/nestedRows/ui/contextMenu.js +2 -2
- package/plugins/nestedRows/ui/contextMenu.mjs +2 -2
- package/plugins/nestedRows/ui/headers.js +2 -2
- package/plugins/nestedRows/ui/headers.mjs +2 -2
- package/plugins/nestedRows/utils/rowMoveController.js +2 -4
- package/plugins/nestedRows/utils/rowMoveController.mjs +2 -3
- package/plugins/persistentState/persistentState.js +9 -4
- package/plugins/persistentState/persistentState.mjs +9 -4
- package/plugins/search/search.js +9 -4
- package/plugins/search/search.mjs +9 -4
- package/plugins/touchScroll/touchScroll.js +27 -21
- package/plugins/touchScroll/touchScroll.mjs +27 -21
- package/plugins/trimRows/trimRows.js +9 -4
- package/plugins/trimRows/trimRows.mjs +9 -4
- package/plugins/undoRedo/undoRedo.js +53 -47
- package/plugins/undoRedo/undoRedo.mjs +53 -46
- package/renderers/autocompleteRenderer/autocompleteRenderer.js +1 -3
- package/renderers/autocompleteRenderer/autocompleteRenderer.mjs +1 -2
- package/renderers/checkboxRenderer/checkboxRenderer.js +48 -43
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +48 -41
- package/renderers/index.d.ts +4 -1
- package/renderers/index.js +6 -0
- package/renderers/index.mjs +3 -1
- package/renderers/numericRenderer/numericRenderer.js +1 -0
- package/renderers/numericRenderer/numericRenderer.mjs +1 -0
- package/renderers/timeRenderer/index.d.ts +1 -0
- package/renderers/timeRenderer/index.js +9 -0
- package/renderers/timeRenderer/index.mjs +1 -0
- package/renderers/timeRenderer/timeRenderer.d.ts +5 -0
- package/renderers/timeRenderer/timeRenderer.js +31 -0
- package/renderers/timeRenderer/timeRenderer.mjs +20 -0
- package/selection/highlight/visualSelection.js +94 -220
- package/selection/highlight/visualSelection.mjs +91 -213
- package/selection/mouseEventHandler.js +15 -10
- package/selection/mouseEventHandler.mjs +15 -9
- package/selection/range.js +4 -5
- package/selection/range.mjs +4 -5
- package/selection/selection.js +35 -22
- package/selection/selection.mjs +35 -20
- package/selection/transformation.js +4 -6
- package/selection/transformation.mjs +4 -5
- package/settings.d.ts +3 -1
- package/shortcuts/context.d.ts +20 -0
- package/shortcuts/context.js +296 -0
- package/shortcuts/context.mjs +268 -0
- package/shortcuts/index.d.ts +1 -0
- package/shortcuts/index.js +8 -0
- package/shortcuts/index.mjs +1 -0
- package/shortcuts/keyObserver.js +67 -0
- package/shortcuts/keyObserver.mjs +58 -0
- package/shortcuts/manager.d.ts +10 -0
- package/shortcuts/manager.js +185 -0
- package/shortcuts/manager.mjs +176 -0
- package/shortcuts/recorder.js +192 -0
- package/shortcuts/recorder.mjs +180 -0
- package/shortcuts/utils.js +77 -0
- package/shortcuts/utils.mjs +54 -0
- package/tableView.js +164 -84
- package/tableView.mjs +164 -74
- package/translations/changesObservable/observer.js +0 -1
- package/translations/changesObservable/observer.mjs +0 -1
- package/translations/indexMapper.d.ts +3 -1
- package/translations/indexMapper.js +89 -11
- package/translations/indexMapper.mjs +91 -20
- package/translations/mapCollections/aggregatedCollection.js +2 -2
- package/translations/mapCollections/aggregatedCollection.mjs +2 -2
- package/translations/maps/hidingMap.js +4 -2
- package/translations/maps/hidingMap.mjs +4 -2
- package/translations/maps/indexMap.js +2 -0
- package/translations/maps/indexMap.mjs +2 -0
- package/translations/maps/indexesSequence.js +5 -3
- package/translations/maps/indexesSequence.mjs +5 -3
- package/translations/maps/linkedPhysicalIndexToValueMap.js +5 -3
- package/translations/maps/linkedPhysicalIndexToValueMap.mjs +5 -3
- package/translations/maps/physicalIndexToValueMap.js +5 -3
- package/translations/maps/physicalIndexToValueMap.mjs +5 -3
- package/translations/maps/trimmingMap.js +4 -2
- package/translations/maps/trimmingMap.mjs +4 -2
- package/utils/dataStructures/uniqueMap.js +14 -1
- package/utils/dataStructures/uniqueMap.mjs +14 -1
- package/utils/dataStructures/uniqueSet.js +9 -0
- package/utils/dataStructures/uniqueSet.mjs +9 -0
- package/utils/ghostTable.js +1 -1
- package/utils/ghostTable.mjs +1 -1
- package/3rdparty/walkontable/src/core.js +0 -309
- package/3rdparty/walkontable/src/core.mjs +0 -293
- package/3rdparty/walkontable/src/overlay/registerer.js +0 -70
- package/3rdparty/walkontable/src/overlay/registerer.mjs +0 -57
- package/utils/keyStateObserver.js +0 -121
- package/utils/keyStateObserver.mjs +0 -103
@@ -3,16 +3,12 @@
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.default = void 0;
|
5
5
|
|
6
|
-
var _element = require("
|
6
|
+
var _element = require("../../../helpers/dom/element");
|
7
7
|
|
8
|
-
var _object = require("
|
9
|
-
|
10
|
-
var _eventManager = _interopRequireDefault(require("./../../../eventManager"));
|
8
|
+
var _object = require("../../../helpers/object");
|
11
9
|
|
12
10
|
var _calculator = require("./calculator");
|
13
11
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
|
-
|
16
12
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
17
13
|
|
18
14
|
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); } }
|
@@ -24,16 +20,24 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
24
20
|
*/
|
25
21
|
var Viewport = /*#__PURE__*/function () {
|
26
22
|
/**
|
27
|
-
* @param {
|
23
|
+
* @param {ViewportDao} dataAccessObject The Walkontable instance.
|
24
|
+
* @param {DomBindings} domBindings Bindings into DOM.
|
25
|
+
* @param {Settings} wtSettings The Walkontable settings.
|
26
|
+
* @param {EventManager} eventManager The instance event manager.
|
27
|
+
* @param {Table} wtTable The table.
|
28
28
|
*/
|
29
|
-
function Viewport(
|
29
|
+
function Viewport(dataAccessObject, domBindings, wtSettings, eventManager, wtTable) {
|
30
30
|
var _this = this;
|
31
31
|
|
32
32
|
_classCallCheck(this, Viewport);
|
33
33
|
|
34
|
-
this.
|
34
|
+
this.dataAccessObject = dataAccessObject; // legacy support
|
35
35
|
|
36
|
+
this.wot = dataAccessObject.wot;
|
36
37
|
this.instance = this.wot;
|
38
|
+
this.domBindings = domBindings;
|
39
|
+
this.wtSettings = wtSettings;
|
40
|
+
this.wtTable = wtTable;
|
37
41
|
this.oversizedRows = [];
|
38
42
|
this.oversizedColumnHeaders = [];
|
39
43
|
this.hasOversizedColumnHeadersMarked = {};
|
@@ -42,8 +46,8 @@ var Viewport = /*#__PURE__*/function () {
|
|
42
46
|
this.rowHeaderWidth = NaN;
|
43
47
|
this.rowsVisibleCalculator = null;
|
44
48
|
this.columnsVisibleCalculator = null;
|
45
|
-
this.eventManager =
|
46
|
-
this.eventManager.addEventListener(this.
|
49
|
+
this.eventManager = eventManager;
|
50
|
+
this.eventManager.addEventListener(this.domBindings.rootWindow, 'resize', function () {
|
47
51
|
_this.clientHeight = _this.getWorkspaceHeight();
|
48
52
|
});
|
49
53
|
}
|
@@ -55,11 +59,11 @@ var Viewport = /*#__PURE__*/function () {
|
|
55
59
|
_createClass(Viewport, [{
|
56
60
|
key: "getWorkspaceHeight",
|
57
61
|
value: function getWorkspaceHeight() {
|
58
|
-
var currentDocument = this.
|
59
|
-
var trimmingContainer = this.
|
62
|
+
var currentDocument = this.domBindings.rootDocument;
|
63
|
+
var trimmingContainer = this.dataAccessObject.topOverlayTrimmingContainer;
|
60
64
|
var height = 0;
|
61
65
|
|
62
|
-
if (trimmingContainer === this.
|
66
|
+
if (trimmingContainer === this.domBindings.rootWindow) {
|
63
67
|
height = currentDocument.documentElement.clientHeight;
|
64
68
|
} else {
|
65
69
|
var elemHeight = (0, _element.outerHeight)(trimmingContainer); // returns height without DIV scrollbar
|
@@ -72,24 +76,29 @@ var Viewport = /*#__PURE__*/function () {
|
|
72
76
|
}, {
|
73
77
|
key: "getWorkspaceWidth",
|
74
78
|
value: function getWorkspaceWidth() {
|
75
|
-
var
|
76
|
-
var
|
77
|
-
|
78
|
-
|
79
|
+
var wtSettings = this.wtSettings;
|
80
|
+
var _this$domBindings = this.domBindings,
|
81
|
+
rootDocument = _this$domBindings.rootDocument,
|
82
|
+
rootWindow = _this$domBindings.rootWindow;
|
83
|
+
var trimmingContainer = this.dataAccessObject.inlineStartOverlayTrimmingContainer;
|
79
84
|
var docOffsetWidth = rootDocument.documentElement.offsetWidth;
|
80
|
-
var totalColumns =
|
81
|
-
var preventOverflow =
|
85
|
+
var totalColumns = wtSettings.getSetting('totalColumns');
|
86
|
+
var preventOverflow = wtSettings.getSetting('preventOverflow');
|
87
|
+
var isRtl = wtSettings.getSetting('rtlMode');
|
88
|
+
var tableRect = this.wtTable.TABLE.getBoundingClientRect();
|
89
|
+
var inlineStart = isRtl ? tableRect.right - docOffsetWidth : tableRect.left;
|
90
|
+
var tableOffset = docOffsetWidth - inlineStart;
|
82
91
|
var width;
|
83
92
|
var overflow;
|
84
93
|
|
85
94
|
if (preventOverflow) {
|
86
|
-
return (0, _element.outerWidth)(this.
|
95
|
+
return (0, _element.outerWidth)(this.wtTable.wtRootElement);
|
87
96
|
}
|
88
97
|
|
89
|
-
if (
|
90
|
-
width = Math.min(
|
98
|
+
if (wtSettings.getSetting('freezeOverlays')) {
|
99
|
+
width = Math.min(tableOffset, docOffsetWidth);
|
91
100
|
} else {
|
92
|
-
width = Math.min(this.getContainerFillWidth(),
|
101
|
+
width = Math.min(this.getContainerFillWidth(), tableOffset, docOffsetWidth);
|
93
102
|
}
|
94
103
|
|
95
104
|
if (trimmingContainer === rootWindow && totalColumns > 0 && this.sumColumnWidths(0, totalColumns - 1) > width) {
|
@@ -101,7 +110,7 @@ var Viewport = /*#__PURE__*/function () {
|
|
101
110
|
}
|
102
111
|
|
103
112
|
if (trimmingContainer !== rootWindow) {
|
104
|
-
overflow = (0, _element.getStyle)(this.
|
113
|
+
overflow = (0, _element.getStyle)(this.dataAccessObject.inlineStartOverlayTrimmingContainer, 'overflow', rootWindow);
|
105
114
|
|
106
115
|
if (overflow === 'scroll' || overflow === 'hidden' || overflow === 'auto') {
|
107
116
|
// this is used in `scroll.html`
|
@@ -110,11 +119,11 @@ var Viewport = /*#__PURE__*/function () {
|
|
110
119
|
}
|
111
120
|
}
|
112
121
|
|
113
|
-
var stretchSetting =
|
122
|
+
var stretchSetting = wtSettings.getSetting('stretchH');
|
114
123
|
|
115
124
|
if (stretchSetting === 'none' || !stretchSetting) {
|
116
125
|
// if no stretching is used, return the maximum used workspace width
|
117
|
-
return Math.max(width, (0, _element.outerWidth)(this.
|
126
|
+
return Math.max(width, (0, _element.outerWidth)(this.wtTable.TABLE));
|
118
127
|
} // if stretching is used, return the actual container width, so the columns can fit inside it
|
119
128
|
|
120
129
|
|
@@ -129,7 +138,7 @@ var Viewport = /*#__PURE__*/function () {
|
|
129
138
|
}, {
|
130
139
|
key: "hasVerticalScroll",
|
131
140
|
value: function hasVerticalScroll() {
|
132
|
-
return this.
|
141
|
+
return this.wtTable.hider.offsetHeight > this.getWorkspaceHeight();
|
133
142
|
}
|
134
143
|
/**
|
135
144
|
* Checks if viewport has horizontal scroll.
|
@@ -140,7 +149,7 @@ var Viewport = /*#__PURE__*/function () {
|
|
140
149
|
}, {
|
141
150
|
key: "hasHorizontalScroll",
|
142
151
|
value: function hasHorizontalScroll() {
|
143
|
-
return this.
|
152
|
+
return this.wtTable.hider.offsetWidth > this.getWorkspaceWidth();
|
144
153
|
}
|
145
154
|
/**
|
146
155
|
* @param {number} from The visual column index from the width sum is start calculated.
|
@@ -151,12 +160,11 @@ var Viewport = /*#__PURE__*/function () {
|
|
151
160
|
}, {
|
152
161
|
key: "sumColumnWidths",
|
153
162
|
value: function sumColumnWidths(from, length) {
|
154
|
-
var wtTable = this.wot.wtTable;
|
155
163
|
var sum = 0;
|
156
164
|
var column = from;
|
157
165
|
|
158
166
|
while (column < length) {
|
159
|
-
sum += wtTable.getColumnWidth(column);
|
167
|
+
sum += this.wtTable.getColumnWidth(column);
|
160
168
|
column += 1;
|
161
169
|
}
|
162
170
|
|
@@ -173,8 +181,8 @@ var Viewport = /*#__PURE__*/function () {
|
|
173
181
|
return this.containerWidth;
|
174
182
|
}
|
175
183
|
|
176
|
-
var mainContainer = this.
|
177
|
-
var dummyElement = this.
|
184
|
+
var mainContainer = this.wtTable.holder;
|
185
|
+
var dummyElement = this.domBindings.rootDocument.createElement('div');
|
178
186
|
dummyElement.style.width = '100%';
|
179
187
|
dummyElement.style.height = '1px';
|
180
188
|
mainContainer.appendChild(dummyElement);
|
@@ -190,26 +198,7 @@ var Viewport = /*#__PURE__*/function () {
|
|
190
198
|
}, {
|
191
199
|
key: "getWorkspaceOffset",
|
192
200
|
value: function getWorkspaceOffset() {
|
193
|
-
return (0, _element.offset)(this.
|
194
|
-
}
|
195
|
-
/**
|
196
|
-
* @returns {number}
|
197
|
-
*/
|
198
|
-
|
199
|
-
}, {
|
200
|
-
key: "getWorkspaceActualHeight",
|
201
|
-
value: function getWorkspaceActualHeight() {
|
202
|
-
return (0, _element.outerHeight)(this.wot.wtTable.TABLE);
|
203
|
-
}
|
204
|
-
/**
|
205
|
-
* @returns {number}
|
206
|
-
*/
|
207
|
-
|
208
|
-
}, {
|
209
|
-
key: "getWorkspaceActualWidth",
|
210
|
-
value: function getWorkspaceActualWidth() {
|
211
|
-
var wtTable = this.wot.wtTable;
|
212
|
-
return (0, _element.outerWidth)(wtTable.TABLE) || (0, _element.outerWidth)(wtTable.TBODY) || (0, _element.outerWidth)(wtTable.THEAD); // IE8 reports 0 as <table> offsetWidth;
|
201
|
+
return (0, _element.offset)(this.wtTable.TABLE);
|
213
202
|
}
|
214
203
|
/**
|
215
204
|
* @returns {number}
|
@@ -218,12 +207,12 @@ var Viewport = /*#__PURE__*/function () {
|
|
218
207
|
}, {
|
219
208
|
key: "getColumnHeaderHeight",
|
220
209
|
value: function getColumnHeaderHeight() {
|
221
|
-
var columnHeaders = this.
|
210
|
+
var columnHeaders = this.wtSettings.getSetting('columnHeaders');
|
222
211
|
|
223
212
|
if (!columnHeaders.length) {
|
224
213
|
this.columnHeaderHeight = 0;
|
225
214
|
} else if (isNaN(this.columnHeaderHeight)) {
|
226
|
-
this.columnHeaderHeight = (0, _element.outerHeight)(this.
|
215
|
+
this.columnHeaderHeight = (0, _element.outerHeight)(this.wtTable.THEAD);
|
227
216
|
}
|
228
217
|
|
229
218
|
return this.columnHeaderHeight;
|
@@ -256,8 +245,8 @@ var Viewport = /*#__PURE__*/function () {
|
|
256
245
|
}, {
|
257
246
|
key: "getRowHeaderWidth",
|
258
247
|
value: function getRowHeaderWidth() {
|
259
|
-
var rowHeadersWidthSetting = this.
|
260
|
-
var rowHeaders = this.
|
248
|
+
var rowHeadersWidthSetting = this.wtSettings.getSetting('rowHeaderWidth');
|
249
|
+
var rowHeaders = this.wtSettings.getSetting('rowHeaders');
|
261
250
|
|
262
251
|
if (rowHeadersWidthSetting) {
|
263
252
|
this.rowHeaderWidth = 0;
|
@@ -267,13 +256,9 @@ var Viewport = /*#__PURE__*/function () {
|
|
267
256
|
}
|
268
257
|
}
|
269
258
|
|
270
|
-
if (this.wot.cloneSource) {
|
271
|
-
return this.wot.cloneSource.wtViewport.getRowHeaderWidth();
|
272
|
-
}
|
273
|
-
|
274
259
|
if (isNaN(this.rowHeaderWidth)) {
|
275
260
|
if (rowHeaders.length) {
|
276
|
-
var TH = this.
|
261
|
+
var TH = this.wtTable.TABLE.querySelector('TH');
|
277
262
|
this.rowHeaderWidth = 0;
|
278
263
|
|
279
264
|
for (var _i = 0, _len = rowHeaders.length; _i < _len; _i++) {
|
@@ -291,7 +276,7 @@ var Viewport = /*#__PURE__*/function () {
|
|
291
276
|
}
|
292
277
|
}
|
293
278
|
|
294
|
-
this.rowHeaderWidth = this.
|
279
|
+
this.rowHeaderWidth = this.wtSettings.getSetting('onModifyRowHeaderWidth', this.rowHeaderWidth) || this.rowHeaderWidth;
|
295
280
|
return this.rowHeaderWidth;
|
296
281
|
}
|
297
282
|
/**
|
@@ -329,57 +314,54 @@ var Viewport = /*#__PURE__*/function () {
|
|
329
314
|
key: "createRowsCalculator",
|
330
315
|
value: function createRowsCalculator() {
|
331
316
|
var calculationType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _calculator.RENDER_TYPE;
|
332
|
-
var
|
333
|
-
|
334
|
-
wtOverlays = wot.wtOverlays,
|
335
|
-
wtTable = wot.wtTable,
|
336
|
-
rootDocument = wot.rootDocument;
|
317
|
+
var wtSettings = this.wtSettings,
|
318
|
+
wtTable = this.wtTable;
|
337
319
|
var height;
|
338
320
|
var scrollbarHeight;
|
339
321
|
var fixedRowsHeight;
|
340
322
|
this.rowHeaderWidth = NaN;
|
341
323
|
|
342
|
-
if (wtSettings.
|
324
|
+
if (wtSettings.getSetting('renderAllRows') && calculationType === _calculator.RENDER_TYPE) {
|
343
325
|
height = Infinity;
|
344
326
|
} else {
|
345
327
|
height = this.getViewportHeight();
|
346
328
|
}
|
347
329
|
|
348
|
-
var pos =
|
330
|
+
var pos = this.dataAccessObject.topScrollPosition - this.dataAccessObject.topParentOffset;
|
349
331
|
|
350
332
|
if (pos < 0) {
|
351
333
|
pos = 0;
|
352
334
|
}
|
353
335
|
|
354
|
-
var fixedRowsTop =
|
355
|
-
var fixedRowsBottom =
|
356
|
-
var totalRows =
|
336
|
+
var fixedRowsTop = wtSettings.getSetting('fixedRowsTop');
|
337
|
+
var fixedRowsBottom = wtSettings.getSetting('fixedRowsBottom');
|
338
|
+
var totalRows = wtSettings.getSetting('totalRows');
|
357
339
|
|
358
340
|
if (fixedRowsTop) {
|
359
|
-
fixedRowsHeight =
|
341
|
+
fixedRowsHeight = this.dataAccessObject.topOverlay.sumCellSizes(0, fixedRowsTop);
|
360
342
|
pos += fixedRowsHeight;
|
361
343
|
height -= fixedRowsHeight;
|
362
344
|
}
|
363
345
|
|
364
|
-
if (fixedRowsBottom &&
|
365
|
-
fixedRowsHeight =
|
346
|
+
if (fixedRowsBottom && this.dataAccessObject.bottomOverlay.clone) {
|
347
|
+
fixedRowsHeight = this.dataAccessObject.bottomOverlay.sumCellSizes(totalRows - fixedRowsBottom, totalRows);
|
366
348
|
height -= fixedRowsHeight;
|
367
349
|
}
|
368
350
|
|
369
351
|
if (wtTable.holder.clientHeight === wtTable.holder.offsetHeight) {
|
370
352
|
scrollbarHeight = 0;
|
371
353
|
} else {
|
372
|
-
scrollbarHeight = (0, _element.getScrollbarWidth)(rootDocument);
|
354
|
+
scrollbarHeight = (0, _element.getScrollbarWidth)(this.domBindings.rootDocument);
|
373
355
|
}
|
374
356
|
|
375
357
|
return new _calculator.ViewportRowsCalculator({
|
376
358
|
viewportSize: height,
|
377
359
|
scrollOffset: pos,
|
378
|
-
totalItems:
|
360
|
+
totalItems: wtSettings.getSetting('totalRows'),
|
379
361
|
itemSizeFn: function itemSizeFn(sourceRow) {
|
380
362
|
return wtTable.getRowHeight(sourceRow);
|
381
363
|
},
|
382
|
-
overrideFn: wtSettings.
|
364
|
+
overrideFn: wtSettings.getSettingPure('viewportRowCalculatorOverride'),
|
383
365
|
calculationType: calculationType,
|
384
366
|
scrollbarHeight: scrollbarHeight
|
385
367
|
});
|
@@ -391,50 +373,47 @@ var Viewport = /*#__PURE__*/function () {
|
|
391
373
|
*
|
392
374
|
* @param {number} calculationType The render type ID, which determines for what type of
|
393
375
|
* calculation calculator is created.
|
394
|
-
* @returns {
|
376
|
+
* @returns {ViewportColumnsCalculator}
|
395
377
|
*/
|
396
378
|
|
397
379
|
}, {
|
398
380
|
key: "createColumnsCalculator",
|
399
381
|
value: function createColumnsCalculator() {
|
400
382
|
var calculationType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _calculator.RENDER_TYPE;
|
401
|
-
var
|
402
|
-
|
403
|
-
wtOverlays = wot.wtOverlays,
|
404
|
-
wtTable = wot.wtTable,
|
405
|
-
rootDocument = wot.rootDocument;
|
383
|
+
var wtSettings = this.wtSettings,
|
384
|
+
wtTable = this.wtTable;
|
406
385
|
var width = this.getViewportWidth();
|
407
|
-
var pos =
|
386
|
+
var pos = Math.abs(this.dataAccessObject.inlineStartScrollPosition) - this.dataAccessObject.inlineStartParentOffset;
|
408
387
|
this.columnHeaderHeight = NaN;
|
409
388
|
|
410
389
|
if (pos < 0) {
|
411
390
|
pos = 0;
|
412
391
|
}
|
413
392
|
|
414
|
-
var
|
393
|
+
var fixedColumnsStart = wtSettings.getSetting('fixedColumnsStart');
|
415
394
|
|
416
|
-
if (
|
417
|
-
var fixedColumnsWidth =
|
395
|
+
if (fixedColumnsStart) {
|
396
|
+
var fixedColumnsWidth = this.dataAccessObject.inlineStartOverlay.sumCellSizes(0, fixedColumnsStart);
|
418
397
|
pos += fixedColumnsWidth;
|
419
398
|
width -= fixedColumnsWidth;
|
420
399
|
}
|
421
400
|
|
422
401
|
if (wtTable.holder.clientWidth !== wtTable.holder.offsetWidth) {
|
423
|
-
width -= (0, _element.getScrollbarWidth)(rootDocument);
|
402
|
+
width -= (0, _element.getScrollbarWidth)(this.domBindings.rootDocument);
|
424
403
|
}
|
425
404
|
|
426
405
|
return new _calculator.ViewportColumnsCalculator({
|
427
406
|
viewportSize: width,
|
428
|
-
scrollOffset: pos,
|
429
|
-
totalItems:
|
407
|
+
scrollOffset: Math.abs(pos),
|
408
|
+
totalItems: wtSettings.getSetting('totalColumns'),
|
430
409
|
itemSizeFn: function itemSizeFn(sourceCol) {
|
431
|
-
return
|
410
|
+
return wtTable.getColumnWidth(sourceCol);
|
432
411
|
},
|
433
|
-
overrideFn: wtSettings.
|
412
|
+
overrideFn: wtSettings.getSettingPure('viewportColumnCalculatorOverride'),
|
434
413
|
calculationType: calculationType,
|
435
|
-
stretchMode:
|
414
|
+
stretchMode: wtSettings.getSetting('stretchH'),
|
436
415
|
stretchingItemWidthFn: function stretchingItemWidthFn(stretchedWidth, column) {
|
437
|
-
return
|
416
|
+
return wtSettings.getSetting('onBeforeStretchingColumnWidth', stretchedWidth, column);
|
438
417
|
}
|
439
418
|
});
|
440
419
|
}
|
@@ -500,14 +479,19 @@ var Viewport = /*#__PURE__*/function () {
|
|
500
479
|
}
|
501
480
|
|
502
481
|
var startRow = proposedRowsVisibleCalculator.startRow,
|
503
|
-
endRow = proposedRowsVisibleCalculator.endRow;
|
482
|
+
endRow = proposedRowsVisibleCalculator.endRow; // if there are no fully visible rows at all, return false
|
483
|
+
|
484
|
+
if (startRow === null && endRow === null) {
|
485
|
+
return false;
|
486
|
+
}
|
487
|
+
|
504
488
|
var _this$rowsRenderCalcu = this.rowsRenderCalculator,
|
505
489
|
renderedStartRow = _this$rowsRenderCalcu.startRow,
|
506
490
|
renderedEndRow = _this$rowsRenderCalcu.endRow;
|
507
491
|
|
508
492
|
if (startRow < renderedStartRow || startRow === renderedStartRow && startRow > 0) {
|
509
493
|
return false;
|
510
|
-
} else if (endRow > renderedEndRow || endRow === renderedEndRow && endRow < this.
|
494
|
+
} else if (endRow > renderedEndRow || endRow === renderedEndRow && endRow < this.wtSettings.getSetting('totalRows') - 1) {
|
511
495
|
return false;
|
512
496
|
}
|
513
497
|
|
@@ -530,14 +514,19 @@ var Viewport = /*#__PURE__*/function () {
|
|
530
514
|
}
|
531
515
|
|
532
516
|
var startColumn = proposedColumnsVisibleCalculator.startColumn,
|
533
|
-
endColumn = proposedColumnsVisibleCalculator.endColumn;
|
517
|
+
endColumn = proposedColumnsVisibleCalculator.endColumn; // if there are no fully visible columns at all, return false
|
518
|
+
|
519
|
+
if (startColumn === null && endColumn === null) {
|
520
|
+
return false;
|
521
|
+
}
|
522
|
+
|
534
523
|
var _this$columnsRenderCa = this.columnsRenderCalculator,
|
535
524
|
renderedStartColumn = _this$columnsRenderCa.startColumn,
|
536
525
|
renderedEndColumn = _this$columnsRenderCa.endColumn;
|
537
526
|
|
538
527
|
if (startColumn < renderedStartColumn || startColumn === renderedStartColumn && startColumn > 0) {
|
539
528
|
return false;
|
540
|
-
} else if (endColumn > renderedEndColumn || endColumn === renderedEndColumn && endColumn < this.
|
529
|
+
} else if (endColumn > renderedEndColumn || endColumn === renderedEndColumn && endColumn < this.wtSettings.getSetting('totalColumns') - 1) {
|
541
530
|
return false;
|
542
531
|
}
|
543
532
|
|