handsontable 18.0.0 → 18.1.0-rc7
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/axisSizing/axisSizeSource.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/axisSizeSource.d.ts +55 -0
- package/3rdparty/walkontable/src/axisSizing/axisSizeSource.js +15 -0
- package/3rdparty/walkontable/src/axisSizing/axisSizeSource.mjs +14 -0
- package/3rdparty/walkontable/src/axisSizing/boxModel.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/boxModel.d.ts +32 -0
- package/3rdparty/walkontable/src/axisSizing/boxModel.js +45 -0
- package/3rdparty/walkontable/src/axisSizing/boxModel.mjs +33 -0
- package/3rdparty/walkontable/src/axisSizing/columnUtils.d.mts +2 -0
- package/3rdparty/walkontable/src/{utils/column.d.ts → axisSizing/columnUtils.d.ts} +12 -10
- package/3rdparty/walkontable/src/axisSizing/columnUtils.js +147 -0
- package/3rdparty/walkontable/src/axisSizing/columnUtils.mjs +142 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.d.ts +58 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.js +129 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.mjs +119 -0
- package/3rdparty/walkontable/src/axisSizing/oversizedRows.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/oversizedRows.d.ts +162 -0
- package/3rdparty/walkontable/src/axisSizing/oversizedRows.js +424 -0
- package/3rdparty/walkontable/src/axisSizing/oversizedRows.mjs +522 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/index.d.ts +130 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/index.js +256 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/index.mjs +262 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.d.ts +51 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.js +121 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.mjs +117 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.d.ts +53 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.js +206 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.mjs +203 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.d.ts +53 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.js +40 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.mjs +41 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.d.ts +47 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.js +121 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.mjs +115 -0
- package/3rdparty/walkontable/src/axisSizing/rowUtils.d.mts +2 -0
- package/3rdparty/walkontable/src/{utils/row.d.ts → axisSizing/rowUtils.d.ts} +11 -9
- package/3rdparty/walkontable/src/axisSizing/rowUtils.js +111 -0
- package/3rdparty/walkontable/src/axisSizing/rowUtils.mjs +106 -0
- package/3rdparty/walkontable/src/axisSizing/sizeGetters.d.mts +2 -0
- package/3rdparty/walkontable/src/axisSizing/sizeGetters.d.ts +84 -0
- package/3rdparty/walkontable/src/axisSizing/sizeGetters.js +102 -0
- package/3rdparty/walkontable/src/axisSizing/sizeGetters.mjs +92 -0
- package/3rdparty/walkontable/src/calculator/axisCalculation.d.ts +1 -1
- package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.d.ts +10 -0
- package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.js +10 -1
- package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.mjs +10 -1
- package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.d.ts +9 -0
- package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.js +9 -1
- package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.mjs +9 -1
- package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +1 -1
- package/3rdparty/walkontable/src/calculator/viewportRows.d.ts +1 -1
- package/3rdparty/walkontable/src/cell/range.d.ts +10 -0
- package/3rdparty/walkontable/src/cell/range.js +14 -3
- package/3rdparty/walkontable/src/cell/range.mjs +11 -0
- package/3rdparty/walkontable/src/core/_base.d.ts +21 -21
- package/3rdparty/walkontable/src/core/_base.js +58 -147
- package/3rdparty/walkontable/src/core/_base.mjs +17 -147
- package/3rdparty/walkontable/src/core/clone.d.ts +4 -14
- package/3rdparty/walkontable/src/core/clone.js +51 -5
- package/3rdparty/walkontable/src/core/clone.mjs +10 -5
- package/3rdparty/walkontable/src/core/core.d.ts +1 -5
- package/3rdparty/walkontable/src/core/core.js +52 -47
- package/3rdparty/walkontable/src/core/core.mjs +12 -48
- package/3rdparty/walkontable/src/domMeasure/geometryReader.d.mts +1 -0
- package/3rdparty/walkontable/src/domMeasure/geometryReader.d.ts +172 -0
- package/3rdparty/walkontable/src/domMeasure/geometryReader.js +19 -0
- package/3rdparty/walkontable/src/domMeasure/geometryReader.mjs +16 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.d.mts +1 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.d.ts +134 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.js +200 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.mjs +198 -0
- package/3rdparty/walkontable/src/event.d.ts +25 -12
- package/3rdparty/walkontable/src/event.js +91 -224
- package/3rdparty/walkontable/src/event.mjs +90 -224
- package/3rdparty/walkontable/src/facade/core.d.ts +6 -6
- package/3rdparty/walkontable/src/index.d.ts +1 -1
- package/3rdparty/walkontable/src/index.js +2 -2
- package/3rdparty/walkontable/src/index.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/index.d.ts +6 -6
- package/3rdparty/walkontable/src/overlay/index.js +11 -11
- package/3rdparty/walkontable/src/overlay/index.mjs +6 -6
- package/3rdparty/walkontable/src/overlay/overlays.d.ts +375 -0
- package/3rdparty/walkontable/src/overlay/overlays.js +612 -0
- package/3rdparty/walkontable/src/overlay/overlays.mjs +601 -0
- package/3rdparty/walkontable/src/overlay/{_base.d.ts → regions/_base.d.ts} +65 -16
- package/3rdparty/walkontable/src/overlay/{_base.js → regions/_base.js} +160 -50
- package/3rdparty/walkontable/src/overlay/{_base.mjs → regions/_base.mjs} +163 -47
- package/3rdparty/walkontable/src/overlay/regions/bottomInlineStartCornerOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.d.ts → regions/bottomInlineStartCornerOverlay.d.ts} +5 -10
- package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.js → regions/bottomInlineStartCornerOverlay.js} +18 -20
- package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.mjs → regions/bottomInlineStartCornerOverlay.mjs} +18 -20
- package/3rdparty/walkontable/src/overlay/regions/bottomOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{bottom.d.ts → regions/bottomOverlay.d.ts} +16 -11
- package/3rdparty/walkontable/src/overlay/{bottom.js → regions/bottomOverlay.js} +113 -66
- package/3rdparty/walkontable/src/overlay/{bottom.mjs → regions/bottomOverlay.mjs} +113 -66
- package/3rdparty/walkontable/src/overlay/regions/inlineStartOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{inlineStart.d.ts → regions/inlineStartOverlay.d.ts} +17 -11
- package/3rdparty/walkontable/src/overlay/{inlineStart.js → regions/inlineStartOverlay.js} +122 -67
- package/3rdparty/walkontable/src/overlay/{inlineStart.mjs → regions/inlineStartOverlay.mjs} +122 -67
- package/3rdparty/walkontable/src/overlay/regions/topInlineStartCornerOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.d.ts → regions/topInlineStartCornerOverlay.d.ts} +5 -10
- package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.js → regions/topInlineStartCornerOverlay.js} +13 -16
- package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.mjs → regions/topInlineStartCornerOverlay.mjs} +13 -16
- package/3rdparty/walkontable/src/overlay/regions/topOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{top.d.ts → regions/topOverlay.d.ts} +32 -11
- package/3rdparty/walkontable/src/overlay/{top.js → regions/topOverlay.js} +163 -77
- package/3rdparty/walkontable/src/overlay/{top.mjs → regions/topOverlay.mjs} +163 -77
- package/3rdparty/walkontable/src/overlay/resizeMonitor.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/resizeMonitor.d.ts +49 -0
- package/3rdparty/walkontable/src/overlay/resizeMonitor.js +154 -0
- package/3rdparty/walkontable/src/overlay/resizeMonitor.mjs +153 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.d.ts +62 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.js +290 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.mjs +295 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.d.ts +176 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.js +549 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.mjs +557 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.d.ts +67 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.js +178 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.mjs +179 -0
- package/3rdparty/walkontable/src/{stickyScrollStrategy.d.ts → overlay/strategies/stickyScrollStrategy.d.ts} +33 -21
- package/3rdparty/walkontable/src/{stickyScrollStrategy.js → overlay/strategies/stickyScrollStrategy.js} +60 -41
- package/3rdparty/walkontable/src/{stickyScrollStrategy.mjs → overlay/strategies/stickyScrollStrategy.mjs} +58 -38
- package/3rdparty/walkontable/src/ports.d.mts +1 -0
- package/3rdparty/walkontable/src/ports.d.ts +54 -0
- package/3rdparty/walkontable/src/ports.js +23 -0
- package/3rdparty/walkontable/src/ports.mjs +24 -0
- package/3rdparty/walkontable/src/{renderer → render}/_base.d.ts +1 -1
- package/3rdparty/walkontable/src/{renderer → render}/cells.js +1 -1
- package/3rdparty/walkontable/src/{renderer → render}/cells.mjs +1 -1
- package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.d.ts +1 -0
- package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.js +43 -1
- package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.mjs +44 -2
- package/3rdparty/walkontable/src/render/index.d.mts +1 -0
- package/3rdparty/walkontable/src/{renderer → render}/index.d.ts +11 -3
- package/3rdparty/walkontable/src/{renderer → render}/index.js +13 -3
- package/3rdparty/walkontable/src/{renderer → render}/index.mjs +11 -1
- package/3rdparty/walkontable/src/{renderer → render}/rows.js +1 -1
- package/3rdparty/walkontable/src/{renderer → render}/rows.mjs +1 -1
- package/3rdparty/walkontable/src/render/tableRenderer.d.mts +1 -0
- package/3rdparty/walkontable/src/{renderer/table.d.ts → render/tableRenderer.d.ts} +12 -2
- package/3rdparty/walkontable/src/render/tableRenderer.js +382 -0
- package/3rdparty/walkontable/src/{renderer/table.mjs → render/tableRenderer.mjs} +159 -6
- package/3rdparty/walkontable/src/{scroll.d.ts → scroll/scroll.d.ts} +27 -10
- package/3rdparty/walkontable/src/{scroll.js → scroll/scroll.js} +108 -32
- package/3rdparty/walkontable/src/{scroll.mjs → scroll/scroll.mjs} +106 -29
- package/3rdparty/walkontable/src/selection/border/border.d.ts +313 -5
- package/3rdparty/walkontable/src/selection/border/border.js +861 -51
- package/3rdparty/walkontable/src/selection/border/border.mjs +863 -53
- package/3rdparty/walkontable/src/selection/border/types.d.ts +30 -0
- package/3rdparty/walkontable/src/selection/manager.js +237 -0
- package/3rdparty/walkontable/src/selection/manager.mjs +238 -1
- package/3rdparty/walkontable/src/settings/accessor.d.mts +2 -0
- package/3rdparty/walkontable/src/settings/accessor.d.ts +74 -0
- package/3rdparty/walkontable/src/settings/accessor.js +78 -0
- package/3rdparty/walkontable/src/settings/accessor.mjs +71 -0
- package/3rdparty/walkontable/src/settings/defaults.d.mts +1 -0
- package/3rdparty/walkontable/src/{settings.d.ts → settings/defaults.d.ts} +16 -77
- package/3rdparty/walkontable/src/settings/defaults.js +146 -0
- package/3rdparty/walkontable/src/settings/defaults.mjs +225 -0
- package/3rdparty/walkontable/src/settings/index.d.mts +1 -0
- package/3rdparty/walkontable/src/settings/index.d.ts +6 -0
- package/3rdparty/walkontable/src/settings/index.js +20 -0
- package/3rdparty/walkontable/src/settings/index.mjs +5 -0
- package/3rdparty/walkontable/src/table/baseTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/baseTable.d.ts +284 -0
- package/3rdparty/walkontable/src/table/baseTable.js +295 -0
- package/3rdparty/walkontable/src/table/baseTable.mjs +283 -0
- package/3rdparty/walkontable/src/table/cellAccess.d.mts +1 -0
- package/3rdparty/walkontable/src/table/cellAccess.d.ts +101 -0
- package/3rdparty/walkontable/src/table/cellAccess.js +238 -0
- package/3rdparty/walkontable/src/table/cellAccess.mjs +229 -0
- package/3rdparty/walkontable/src/table/domScaffold.d.mts +1 -0
- package/3rdparty/walkontable/src/table/domScaffold.d.ts +37 -0
- package/3rdparty/walkontable/src/table/domScaffold.js +145 -0
- package/3rdparty/walkontable/src/table/domScaffold.mjs +136 -0
- package/3rdparty/walkontable/src/table/drawCycle.d.mts +1 -0
- package/3rdparty/walkontable/src/table/drawCycle.d.ts +16 -0
- package/3rdparty/walkontable/src/table/drawCycle.js +405 -0
- package/3rdparty/walkontable/src/table/drawCycle.mjs +403 -0
- package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.d.mts +1 -0
- package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.d.ts +38 -0
- package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.js +15 -0
- package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.mjs +14 -0
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.d.ts +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.js +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.mjs +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.d.ts +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.d.ts +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.js +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.mjs +1 -1
- package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.d.mts +2 -0
- package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.d.ts +226 -0
- package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.js +251 -0
- package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.mjs +241 -0
- package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.d.mts +1 -0
- package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.d.ts +14 -0
- package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.js +196 -0
- package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.mjs +179 -0
- package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.d.ts +16 -0
- package/3rdparty/walkontable/src/table/{bottomInlineStartCorner.js → regions/bottomInlineStartCornerTable.js} +9 -12
- package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.mjs +21 -0
- package/3rdparty/walkontable/src/table/regions/bottomTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/bottomTable.d.ts +15 -0
- package/3rdparty/walkontable/src/table/regions/bottomTable.js +35 -0
- package/3rdparty/walkontable/src/table/regions/bottomTable.mjs +20 -0
- package/3rdparty/walkontable/src/table/regions/inlineStartTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/inlineStartTable.d.ts +12 -0
- package/3rdparty/walkontable/src/table/regions/inlineStartTable.js +32 -0
- package/3rdparty/walkontable/src/table/regions/inlineStartTable.mjs +17 -0
- package/3rdparty/walkontable/src/table/regions/masterTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/{master.d.ts → regions/masterTable.d.ts} +4 -13
- package/3rdparty/walkontable/src/table/{master.js → regions/masterTable.js} +23 -48
- package/3rdparty/walkontable/src/table/{master.mjs → regions/masterTable.mjs} +22 -47
- package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.d.ts +16 -0
- package/3rdparty/walkontable/src/table/{topInlineStartCorner.js → regions/topInlineStartCornerTable.js} +9 -12
- package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.mjs +21 -0
- package/3rdparty/walkontable/src/table/regions/topTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/topTable.d.ts +15 -0
- package/3rdparty/walkontable/src/table/regions/topTable.js +35 -0
- package/3rdparty/walkontable/src/table/regions/topTable.mjs +20 -0
- package/3rdparty/walkontable/src/types.d.ts +7 -69
- package/3rdparty/walkontable/src/types.mjs +2 -1
- package/3rdparty/walkontable/src/utils/pointerToCoords.d.mts +1 -0
- package/3rdparty/walkontable/src/utils/{cellCoords.d.ts → pointerToCoords.d.ts} +24 -0
- package/3rdparty/walkontable/src/utils/pointerToCoords.js +181 -0
- package/3rdparty/walkontable/src/utils/pointerToCoords.mjs +186 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.d.ts +40 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.js +139 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.mjs +131 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.d.ts +133 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.js +18 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.mjs +18 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.d.ts +17 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.js +104 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.mjs +99 -0
- package/3rdparty/walkontable/src/viewport/calculatorFactory.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/calculatorFactory.d.ts +84 -0
- package/3rdparty/walkontable/src/viewport/calculatorFactory.js +588 -0
- package/3rdparty/walkontable/src/viewport/calculatorFactory.mjs +601 -0
- package/3rdparty/walkontable/src/viewport/viewport.d.ts +267 -0
- package/3rdparty/walkontable/src/viewport/viewport.js +368 -0
- package/3rdparty/walkontable/src/viewport/viewport.mjs +360 -0
- package/3rdparty/walkontable/src/viewport/workspaceSize.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/workspaceSize.d.ts +59 -0
- package/3rdparty/walkontable/src/viewport/workspaceSize.js +284 -0
- package/3rdparty/walkontable/src/viewport/workspaceSize.mjs +282 -0
- package/3rdparty/walkontable/src/wire.d.mts +1 -0
- package/3rdparty/walkontable/src/wire.d.ts +81 -0
- package/3rdparty/walkontable/src/wire.js +56 -0
- package/3rdparty/walkontable/src/wire.mjs +56 -0
- package/CHANGELOG.md +114 -1
- package/LICENSE.txt +1 -1
- package/README.md +2 -2
- package/base.d.ts +13 -4
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/cellTypes/checkboxType/accessors/valueSetter.d.ts +1 -1
- package/cellTypes/checkboxType/accessors/valueSetter.js +3 -1
- package/cellTypes/checkboxType/accessors/valueSetter.mjs +3 -1
- package/cellTypes/index.d.ts +3 -2
- package/cellTypes/index.js +9 -0
- package/cellTypes/index.mjs +5 -2
- package/cellTypes/intlDatetimeType/index.d.mts +1 -0
- package/cellTypes/intlDatetimeType/index.d.ts +1 -0
- package/cellTypes/intlDatetimeType/index.js +19 -0
- package/cellTypes/intlDatetimeType/index.mjs +1 -0
- package/cellTypes/intlDatetimeType/intlDatetimeType.d.mts +1 -0
- package/cellTypes/intlDatetimeType/intlDatetimeType.d.ts +16 -0
- package/cellTypes/intlDatetimeType/intlDatetimeType.js +31 -0
- package/cellTypes/intlDatetimeType/intlDatetimeType.mjs +15 -0
- package/cellTypes/multiSelectType/index.d.ts +1 -1
- package/cellTypes/multiSelectType/index.js +3 -0
- package/cellTypes/multiSelectType/index.mjs +1 -1
- package/cellTypes/multiSelectType/multiSelectType.d.ts +1 -0
- package/cellTypes/multiSelectType/multiSelectType.js +4 -0
- package/cellTypes/multiSelectType/multiSelectType.mjs +1 -0
- package/cellTypes/numericType/accessors/valueSetter.js +30 -2
- package/cellTypes/numericType/accessors/valueSetter.mjs +31 -3
- package/core/hooks/bucket.d.ts +40 -6
- package/core/hooks/bucket.js +108 -72
- package/core/hooks/bucket.mjs +113 -72
- package/core/hooks/constants.js +254 -16
- package/core/hooks/constants.mjs +254 -16
- package/core/hooks/index.js +27 -22
- package/core/hooks/index.mjs +27 -22
- package/core/layout/constants.d.ts +11 -0
- package/core/layout/constants.js +6 -0
- package/core/layout/constants.mjs +12 -0
- package/core/layout/domSlot.d.ts +3 -1
- package/core/layout/domSlot.js +16 -2
- package/core/layout/domSlot.mjs +16 -2
- package/core/layout/index.d.ts +2 -2
- package/core/layout/index.js +6 -0
- package/core/layout/index.mjs +2 -2
- package/core/layout/layoutManager.d.ts +13 -0
- package/core/layout/layoutManager.js +21 -4
- package/core/layout/layoutManager.mjs +22 -2
- package/core/settings.d.ts +102 -6
- package/core/types.d.ts +15 -1
- package/core/types.mjs +9 -0
- package/core.js +534 -88
- package/core.mjs +537 -91
- package/dataMap/dataMap.d.ts +3 -13
- package/dataMap/dataMap.js +100 -41
- package/dataMap/dataMap.mjs +101 -42
- package/dataMap/dataSource.js +4 -1
- package/dataMap/dataSource.mjs +4 -1
- package/dataMap/metaManager/index.d.ts +62 -8
- package/dataMap/metaManager/index.js +66 -0
- package/dataMap/metaManager/index.mjs +66 -0
- package/dataMap/metaManager/lazyFactoryMap.d.ts +68 -43
- package/dataMap/metaManager/lazyFactoryMap.js +497 -110
- package/dataMap/metaManager/lazyFactoryMap.mjs +511 -111
- package/dataMap/metaManager/metaLayers/cellMeta.d.ts +55 -8
- package/dataMap/metaManager/metaLayers/cellMeta.js +108 -8
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +108 -8
- package/dataMap/metaManager/metaLayers/columnMeta.d.ts +2 -1
- package/dataMap/metaManager/metaLayers/columnMeta.js +1 -0
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -0
- package/dataMap/metaManager/metaSchema.js +759 -39
- package/dataMap/metaManager/metaSchema.mjs +759 -39
- package/dataMap/metaManager/mods/dynamicCellMeta.d.ts +24 -10
- package/dataMap/metaManager/mods/dynamicCellMeta.js +252 -28
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +253 -29
- package/dataMap/sourceDataValidator.d.ts +13 -21
- package/dataMap/sourceDataValidator.js +39 -29
- package/dataMap/sourceDataValidator.mjs +50 -33
- package/dist/handsontable.full.js +30027 -11261
- package/dist/handsontable.full.min.js +168 -112
- package/dist/handsontable.js +32468 -13762
- package/dist/handsontable.min.js +172 -116
- package/dist/languages/all.js +2 -1
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/fa-IR.js +2 -1
- package/dist/languages/fa-IR.min.js +1 -1
- package/dist/themes/classic.js +9 -3
- package/dist/themes/classic.min.js +4 -4
- package/dist/themes/horizon.js +9 -3
- package/dist/themes/horizon.min.js +4 -4
- package/dist/themes/main.js +9 -3
- package/dist/themes/main.min.js +4 -4
- package/dist/themes/static/variables/colors/ant.js +3 -3
- package/dist/themes/static/variables/colors/ant.min.js +3 -3
- package/dist/themes/static/variables/colors/classic.js +3 -3
- package/dist/themes/static/variables/colors/classic.min.js +3 -3
- package/dist/themes/static/variables/colors/horizon.js +3 -3
- package/dist/themes/static/variables/colors/horizon.min.js +3 -3
- package/dist/themes/static/variables/colors/main.js +3 -3
- package/dist/themes/static/variables/colors/main.min.js +3 -3
- package/dist/themes/static/variables/colors/material.js +3 -3
- package/dist/themes/static/variables/colors/material.min.js +3 -3
- package/dist/themes/static/variables/colors/shadcn.js +3 -3
- package/dist/themes/static/variables/colors/shadcn.min.js +3 -3
- package/dist/themes/static/variables/density.js +3 -3
- package/dist/themes/static/variables/density.min.js +3 -3
- package/dist/themes/static/variables/helpers/iconsMap.js +4 -9
- package/dist/themes/static/variables/helpers/iconsMap.min.js +4 -9
- package/dist/themes/static/variables/icons/horizon.js +3 -3
- package/dist/themes/static/variables/icons/horizon.min.js +3 -3
- package/dist/themes/static/variables/icons/main.js +3 -3
- package/dist/themes/static/variables/icons/main.min.js +3 -3
- package/dist/themes/static/variables/sizing.js +3 -3
- package/dist/themes/static/variables/sizing.min.js +3 -3
- package/dist/themes/static/variables/tokens/classic.js +9 -3
- package/dist/themes/static/variables/tokens/classic.min.js +4 -4
- package/dist/themes/static/variables/tokens/horizon.js +9 -3
- package/dist/themes/static/variables/tokens/horizon.min.js +4 -4
- package/dist/themes/static/variables/tokens/main.js +9 -3
- package/dist/themes/static/variables/tokens/main.min.js +4 -4
- package/editorManager.js +152 -3
- package/editorManager.mjs +152 -3
- package/editors/autocompleteEditor/autocompleteEditor.js +58 -11
- package/editors/autocompleteEditor/autocompleteEditor.mjs +59 -12
- package/editors/baseEditor/baseEditor.d.ts +15 -3
- package/editors/baseEditor/baseEditor.js +5 -3
- package/editors/baseEditor/baseEditor.mjs +15 -3
- package/editors/factory.js +5 -2
- package/editors/factory.mjs +5 -2
- package/editors/index.d.ts +3 -2
- package/editors/index.js +8 -0
- package/editors/index.mjs +3 -1
- package/editors/intlDatetimeEditor/index.d.mts +1 -0
- package/editors/intlDatetimeEditor/index.d.ts +1 -0
- package/editors/intlDatetimeEditor/index.js +19 -0
- package/editors/intlDatetimeEditor/index.mjs +1 -0
- package/editors/intlDatetimeEditor/intlDatetimeEditor.d.mts +1 -0
- package/editors/intlDatetimeEditor/intlDatetimeEditor.d.ts +42 -0
- package/editors/intlDatetimeEditor/intlDatetimeEditor.js +108 -0
- package/editors/intlDatetimeEditor/intlDatetimeEditor.mjs +93 -0
- package/editors/multiSelectEditor/multiSelectEditor.js +11 -9
- package/editors/multiSelectEditor/multiSelectEditor.mjs +12 -10
- package/editors/selectEditor/selectEditor.js +2 -1
- package/editors/selectEditor/selectEditor.mjs +2 -1
- package/editors/textEditor/textEditor.js +1 -1
- package/editors/textEditor/textEditor.mjs +2 -2
- package/eventManager.d.ts +3 -3
- package/focusManager/grid.d.ts +28 -0
- package/focusManager/grid.js +85 -2
- package/focusManager/grid.mjs +81 -3
- package/focusManager/scopeManager.js +1 -1
- package/focusManager/scopeManager.mjs +2 -2
- package/handsontable-non-commercial-license.pdf +0 -0
- package/helpers/array.d.ts +25 -0
- package/helpers/array.js +41 -4
- package/helpers/array.mjs +56 -4
- package/helpers/console.d.ts +25 -3
- package/helpers/console.js +40 -7
- package/helpers/console.mjs +52 -7
- package/helpers/dateTime.d.ts +14 -0
- package/helpers/dateTime.js +74 -2
- package/helpers/dateTime.mjs +73 -2
- package/helpers/dom/cellCoords.js +156 -13
- package/helpers/dom/cellCoords.mjs +156 -13
- package/helpers/dom/element.d.ts +47 -8
- package/helpers/dom/element.js +104 -18
- package/helpers/dom/element.mjs +132 -23
- package/helpers/dom/event.d.ts +58 -0
- package/helpers/dom/event.js +39 -0
- package/helpers/dom/event.mjs +63 -0
- package/helpers/errors.d.ts +5 -0
- package/helpers/errors.js +10 -6
- package/helpers/errors.mjs +10 -6
- package/helpers/feature.d.ts +19 -0
- package/helpers/feature.js +21 -0
- package/helpers/feature.mjs +30 -0
- package/helpers/function.d.ts +1 -1
- package/helpers/function.js +4 -1
- package/helpers/function.mjs +4 -1
- package/helpers/mixed.d.ts +103 -0
- package/helpers/mixed.js +373 -4
- package/helpers/mixed.mjs +413 -4
- package/helpers/moves.js +2 -1
- package/helpers/moves.mjs +2 -1
- package/helpers/number.d.ts +22 -0
- package/helpers/number.js +49 -0
- package/helpers/number.mjs +66 -0
- package/helpers/string.d.ts +14 -10
- package/helpers/string.js +17 -9
- package/helpers/string.mjs +27 -17
- package/helpers/templateString.d.mts +1 -0
- package/helpers/templateString.d.ts +13 -0
- package/helpers/templateString.js +29 -0
- package/helpers/templateString.mjs +19 -0
- package/helpers/uiButton.d.mts +1 -0
- package/helpers/uiButton.d.ts +21 -0
- package/helpers/uiButton.js +37 -0
- package/helpers/uiButton.mjs +31 -0
- package/i18n/languages/fa-IR.d.ts +1 -0
- package/i18n/languages/fa-IR.js +1 -0
- package/i18n/languages/fa-IR.mjs +1 -0
- package/index.d.ts +3 -3
- package/languages/all.js +2 -1
- package/languages/fa-IR.js +2 -1
- package/languages/fa-IR.mjs +1 -0
- package/languages/index.js +2 -1
- package/package.json +61 -1
- package/plugins/autoColumnSize/autoColumnSize.d.ts +24 -1
- package/plugins/autoColumnSize/autoColumnSize.js +501 -82
- package/plugins/autoColumnSize/autoColumnSize.mjs +508 -83
- package/plugins/autoRowSize/autoRowSize.d.ts +40 -5
- package/plugins/autoRowSize/autoRowSize.js +68 -24
- package/plugins/autoRowSize/autoRowSize.mjs +98 -29
- package/plugins/autofill/autofill.js +30 -12
- package/plugins/autofill/autofill.mjs +30 -12
- package/plugins/base/base.d.ts +10 -0
- package/plugins/collapsibleColumns/collapsibleColumns.d.ts +4 -0
- package/plugins/collapsibleColumns/collapsibleColumns.js +89 -8
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +93 -8
- package/plugins/columnSorting/columnSorting.d.ts +31 -2
- package/plugins/columnSorting/columnSorting.js +151 -24
- package/plugins/columnSorting/columnSorting.mjs +153 -26
- package/plugins/columnSorting/columnStatesManager.d.ts +1 -1
- package/plugins/columnSorting/columnStatesManager.js +1 -7
- package/plugins/columnSorting/columnStatesManager.mjs +1 -7
- package/plugins/columnSorting/domHelpers.d.ts +3 -0
- package/plugins/columnSorting/domHelpers.js +9 -0
- package/plugins/columnSorting/domHelpers.mjs +3 -3
- package/plugins/columnSorting/rootComparator.js +21 -16
- package/plugins/columnSorting/rootComparator.mjs +21 -16
- package/plugins/columnSorting/sortFunction/checkbox.js +7 -5
- package/plugins/columnSorting/sortFunction/checkbox.mjs +7 -5
- package/plugins/columnSorting/sortFunction/default.js +15 -4
- package/plugins/columnSorting/sortFunction/default.mjs +15 -4
- package/plugins/columnSorting/sortFunction/intlDatetime.d.mts +1 -0
- package/plugins/columnSorting/sortFunction/intlDatetime.d.ts +10 -0
- package/plugins/columnSorting/sortFunction/intlDatetime.js +23 -0
- package/plugins/columnSorting/sortFunction/intlDatetime.mjs +12 -0
- package/plugins/columnSorting/sortService/registry.js +2 -0
- package/plugins/columnSorting/sortService/registry.mjs +2 -0
- package/plugins/columnSorting/utils.d.ts +8 -0
- package/plugins/columnSorting/utils.js +37 -45
- package/plugins/columnSorting/utils.mjs +42 -47
- package/plugins/columnSummary/columnSummary.js +9 -5
- package/plugins/columnSummary/columnSummary.mjs +9 -5
- package/plugins/columnSummary/endpoints.d.ts +69 -2
- package/plugins/columnSummary/endpoints.js +181 -29
- package/plugins/columnSummary/endpoints.mjs +181 -29
- package/plugins/comments/commentEditor.js +1 -1
- package/plugins/comments/commentEditor.mjs +2 -2
- package/plugins/contextMenu/contextMenu.d.ts +12 -1
- package/plugins/contextMenu/contextMenu.js +30 -6
- package/plugins/contextMenu/contextMenu.mjs +30 -6
- package/plugins/contextMenu/index.d.ts +1 -1
- package/plugins/contextMenu/menu/menu.d.ts +22 -1
- package/plugins/contextMenu/menu/menu.js +211 -3
- package/plugins/contextMenu/menu/menu.mjs +212 -4
- package/plugins/contextMenu/menu/menuItemRenderer.js +2 -2
- package/plugins/contextMenu/menu/menuItemRenderer.mjs +2 -2
- package/plugins/contextMenu/predefinedItems/alignment.js +14 -14
- package/plugins/contextMenu/predefinedItems/alignment.mjs +14 -14
- package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/readOnly.js +3 -3
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +3 -3
- package/plugins/contextMenu/utils.js +1 -1
- package/plugins/contextMenu/utils.mjs +1 -1
- package/plugins/copyPaste/copyPaste.js +70 -16
- package/plugins/copyPaste/copyPaste.mjs +71 -17
- package/plugins/copyPaste/copyableRanges.js +6 -2
- package/plugins/copyPaste/copyableRanges.mjs +6 -2
- package/plugins/copyPaste/pasteEvent.d.ts +1 -1
- package/plugins/customBorders/customBorders.d.ts +21 -40
- package/plugins/customBorders/customBorders.js +1080 -201
- package/plugins/customBorders/customBorders.mjs +1082 -203
- package/plugins/customBorders/utils.d.ts +71 -0
- package/plugins/customBorders/utils.js +63 -0
- package/plugins/customBorders/utils.mjs +101 -0
- package/plugins/dataProvider/dataProvider.d.ts +2 -1
- package/plugins/dataProvider/dataProvider.js +22 -7
- package/plugins/dataProvider/dataProvider.mjs +22 -7
- package/plugins/dataProvider/query/crud.js +1 -1
- package/plugins/dataProvider/query/crud.mjs +1 -1
- package/plugins/dialog/dialog.js +14 -9
- package/plugins/dialog/dialog.mjs +14 -9
- package/plugins/dialog/templates/confirm.d.ts +1 -1
- package/plugins/dialog/templates/confirm.js +2 -1
- package/plugins/dialog/templates/confirm.mjs +2 -1
- package/plugins/dialog/ui.d.ts +5 -3
- package/plugins/dialog/ui.js +12 -4
- package/plugins/dialog/ui.mjs +12 -4
- package/plugins/dragToScroll/dragToScroll.d.ts +2 -2
- package/plugins/dragToScroll/dragToScroll.js +150 -14
- package/plugins/dragToScroll/dragToScroll.mjs +151 -15
- package/plugins/dropdownMenu/dropdownMenu.d.ts +5 -1
- package/plugins/dropdownMenu/dropdownMenu.js +45 -3
- package/plugins/dropdownMenu/dropdownMenu.mjs +46 -4
- package/plugins/dropdownMenu/index.d.ts +1 -0
- package/plugins/emptyDataState/emptyDataState.js +4 -6
- package/plugins/emptyDataState/emptyDataState.mjs +4 -6
- package/plugins/emptyDataState/ui.js +2 -1
- package/plugins/emptyDataState/ui.mjs +2 -1
- package/plugins/exportFile/dataProvider.js +7 -9
- package/plugins/exportFile/dataProvider.mjs +7 -9
- package/plugins/exportFile/exportFile.d.ts +10 -3
- package/plugins/exportFile/types/_base.js +4 -10
- package/plugins/exportFile/types/_base.mjs +4 -10
- package/plugins/exportFile/types/xlsx/cell-style.js +4 -2
- package/plugins/exportFile/types/xlsx/cell-style.mjs +4 -2
- package/plugins/exportFile/types/xlsx/date-utils.d.ts +15 -0
- package/plugins/exportFile/types/xlsx/date-utils.js +31 -0
- package/plugins/exportFile/types/xlsx/date-utils.mjs +36 -0
- package/plugins/exportFile/types/xlsx.js +13 -9
- package/plugins/exportFile/types/xlsx.mjs +14 -10
- package/plugins/exportFile/utils.d.ts +9 -1
- package/plugins/exportFile/utils.js +27 -4
- package/plugins/exportFile/utils.mjs +40 -2
- package/plugins/filters/component/_base.d.ts +1 -2
- package/plugins/filters/component/_base.js +1 -2
- package/plugins/filters/component/_base.mjs +1 -2
- package/plugins/filters/component/condition.d.ts +1 -0
- package/plugins/filters/component/condition.js +2 -0
- package/plugins/filters/component/condition.mjs +2 -0
- package/plugins/filters/component/value.d.ts +5 -6
- package/plugins/filters/component/value.js +53 -34
- package/plugins/filters/component/value.mjs +54 -35
- package/plugins/filters/condition/date/after.js +2 -1
- package/plugins/filters/condition/date/after.mjs +2 -1
- package/plugins/filters/condition/date/afterOrEqual.js +2 -1
- package/plugins/filters/condition/date/afterOrEqual.mjs +2 -1
- package/plugins/filters/condition/date/before.js +2 -1
- package/plugins/filters/condition/date/before.mjs +2 -1
- package/plugins/filters/condition/date/beforeOrEqual.js +2 -1
- package/plugins/filters/condition/date/beforeOrEqual.mjs +2 -1
- package/plugins/filters/condition/equal.d.ts +7 -0
- package/plugins/filters/condition/equal.js +4 -0
- package/plugins/filters/condition/equal.mjs +10 -0
- package/plugins/filters/condition/intlDatetime/after.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/after.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/after.js +77 -0
- package/plugins/filters/condition/intlDatetime/after.mjs +22 -0
- package/plugins/filters/condition/intlDatetime/afterOrEqual.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/afterOrEqual.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/afterOrEqual.js +77 -0
- package/plugins/filters/condition/intlDatetime/afterOrEqual.mjs +22 -0
- package/plugins/filters/condition/intlDatetime/before.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/before.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/before.js +77 -0
- package/plugins/filters/condition/intlDatetime/before.mjs +22 -0
- package/plugins/filters/condition/intlDatetime/beforeOrEqual.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/beforeOrEqual.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/beforeOrEqual.js +77 -0
- package/plugins/filters/condition/intlDatetime/beforeOrEqual.mjs +22 -0
- package/plugins/filters/condition/intlDatetime/between.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/between.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/between.js +78 -0
- package/plugins/filters/condition/intlDatetime/between.mjs +23 -0
- package/plugins/filters/condition/intlDatetime/today.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/today.d.ts +17 -0
- package/plugins/filters/condition/intlDatetime/today.js +76 -0
- package/plugins/filters/condition/intlDatetime/today.mjs +20 -0
- package/plugins/filters/condition/intlDatetime/tomorrow.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/tomorrow.d.ts +17 -0
- package/plugins/filters/condition/intlDatetime/tomorrow.js +77 -0
- package/plugins/filters/condition/intlDatetime/tomorrow.mjs +21 -0
- package/plugins/filters/condition/intlDatetime/yesterday.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/yesterday.d.ts +17 -0
- package/plugins/filters/condition/intlDatetime/yesterday.js +77 -0
- package/plugins/filters/condition/intlDatetime/yesterday.mjs +21 -0
- package/plugins/filters/conditionCollection.js +4 -7
- package/plugins/filters/conditionCollection.mjs +4 -7
- package/plugins/filters/conditionUpdateObserver.d.ts +2 -2
- package/plugins/filters/conditionUpdateObserver.js +148 -49
- package/plugins/filters/conditionUpdateObserver.mjs +148 -49
- package/plugins/filters/constants.d.ts +1 -0
- package/plugins/filters/constants.js +31 -0
- package/plugins/filters/constants.mjs +28 -0
- package/plugins/filters/dataFilter.d.ts +4 -12
- package/plugins/filters/dataFilter.js +7 -19
- package/plugins/filters/dataFilter.mjs +8 -20
- package/plugins/filters/filters.d.ts +33 -9
- package/plugins/filters/filters.js +91 -31
- package/plugins/filters/filters.mjs +92 -32
- package/plugins/filters/sortComparators.d.ts +9 -2
- package/plugins/filters/sortComparators.js +34 -1
- package/plugins/filters/sortComparators.mjs +38 -3
- package/plugins/filters/ui/input.d.ts +4 -0
- package/plugins/filters/ui/input.js +18 -6
- package/plugins/filters/ui/input.mjs +18 -6
- package/plugins/filters/ui/multipleSelect.js +27 -4
- package/plugins/filters/ui/multipleSelect.mjs +27 -4
- package/plugins/filters/ui/select.js +1 -1
- package/plugins/filters/ui/select.mjs +1 -1
- package/plugins/formulas/engine/register.d.ts +5 -4
- package/plugins/formulas/engine/register.js +5 -2
- package/plugins/formulas/engine/register.mjs +9 -5
- package/plugins/formulas/engine/settings.d.ts +2 -6
- package/plugins/formulas/engine/settings.js +29 -4
- package/plugins/formulas/engine/settings.mjs +29 -4
- package/plugins/formulas/engine/types.d.ts +12 -2
- package/plugins/formulas/formulas.d.ts +39 -0
- package/plugins/formulas/formulas.js +789 -47
- package/plugins/formulas/formulas.mjs +793 -49
- package/plugins/formulas/hyperlinkUrl.d.mts +1 -0
- package/plugins/formulas/hyperlinkUrl.d.ts +12 -0
- package/plugins/formulas/hyperlinkUrl.js +32 -0
- package/plugins/formulas/hyperlinkUrl.mjs +32 -0
- package/plugins/formulas/indexSyncer/axisSyncer.d.ts +1 -0
- package/plugins/formulas/indexSyncer/axisSyncer.js +72 -15
- package/plugins/formulas/indexSyncer/axisSyncer.mjs +72 -15
- package/plugins/formulas/utils.d.ts +9 -0
- package/plugins/formulas/utils.js +21 -0
- package/plugins/formulas/utils.mjs +25 -0
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +6 -1
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +6 -1
- package/plugins/hiddenColumns/hiddenColumns.js +6 -3
- package/plugins/hiddenColumns/hiddenColumns.mjs +6 -3
- package/plugins/hiddenRows/contextMenuItem/showRow.js +6 -1
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +6 -1
- package/plugins/hiddenRows/hiddenRows.js +6 -3
- package/plugins/hiddenRows/hiddenRows.mjs +6 -3
- package/plugins/index.d.ts +5 -1
- package/plugins/index.js +10 -0
- package/plugins/index.mjs +5 -1
- package/plugins/loading/content.d.ts +5 -3
- package/plugins/loading/content.js +3 -2
- package/plugins/loading/content.mjs +8 -5
- package/plugins/loading/loading.d.ts +5 -2
- package/plugins/loading/loading.mjs +5 -2
- package/plugins/manualColumnMove/manualColumnMove.d.ts +10 -0
- package/plugins/manualColumnMove/manualColumnMove.js +122 -20
- package/plugins/manualColumnMove/manualColumnMove.mjs +123 -21
- package/plugins/manualColumnResize/manualColumnResize.d.ts +20 -7
- package/plugins/manualColumnResize/manualColumnResize.js +33 -13
- package/plugins/manualColumnResize/manualColumnResize.mjs +34 -14
- package/plugins/manualRowResize/manualRowResize.d.ts +21 -8
- package/plugins/manualRowResize/manualRowResize.js +34 -14
- package/plugins/manualRowResize/manualRowResize.mjs +35 -15
- package/plugins/mergeCells/cellCoords.d.ts +8 -0
- package/plugins/mergeCells/cellCoords.js +11 -0
- package/plugins/mergeCells/cellCoords.mjs +11 -0
- package/plugins/mergeCells/cellsCollection.d.ts +46 -2
- package/plugins/mergeCells/cellsCollection.js +189 -68
- package/plugins/mergeCells/cellsCollection.mjs +189 -68
- package/plugins/mergeCells/focusOrder.d.ts +26 -20
- package/plugins/mergeCells/focusOrder.js +358 -177
- package/plugins/mergeCells/focusOrder.mjs +363 -172
- package/plugins/mergeCells/mergeCells.d.ts +13 -8
- package/plugins/mergeCells/mergeCells.js +322 -64
- package/plugins/mergeCells/mergeCells.mjs +322 -64
- package/plugins/moveCells/helpers.d.mts +1 -0
- package/plugins/moveCells/helpers.d.ts +21 -0
- package/plugins/moveCells/helpers.js +20 -0
- package/plugins/moveCells/helpers.mjs +15 -0
- package/plugins/moveCells/index.d.mts +1 -0
- package/plugins/moveCells/index.d.ts +1 -0
- package/plugins/moveCells/index.js +22 -0
- package/plugins/moveCells/index.mjs +1 -0
- package/plugins/moveCells/moveCells.d.mts +1 -0
- package/plugins/moveCells/moveCells.d.ts +80 -0
- package/plugins/moveCells/moveCells.js +602 -0
- package/plugins/moveCells/moveCells.mjs +587 -0
- package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -8
- package/plugins/multiColumnSorting/multiColumnSorting.js +11 -16
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +11 -16
- package/plugins/multiColumnSorting/rootComparator.js +26 -19
- package/plugins/multiColumnSorting/rootComparator.mjs +26 -19
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +19 -4
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +273 -58
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +273 -58
- package/plugins/nestedHeaders/nestedHeaders.d.ts +10 -1
- package/plugins/nestedHeaders/nestedHeaders.js +222 -23
- package/plugins/nestedHeaders/nestedHeaders.mjs +222 -23
- package/plugins/nestedHeaders/stateManager/columnArrangement.d.mts +1 -0
- package/plugins/nestedHeaders/stateManager/columnArrangement.d.ts +37 -0
- package/plugins/nestedHeaders/stateManager/columnArrangement.js +35 -0
- package/plugins/nestedHeaders/stateManager/columnArrangement.mjs +30 -0
- package/plugins/nestedHeaders/stateManager/deriveSettings.d.mts +1 -0
- package/plugins/nestedHeaders/stateManager/deriveSettings.d.ts +57 -0
- package/plugins/nestedHeaders/stateManager/deriveSettings.js +115 -0
- package/plugins/nestedHeaders/stateManager/deriveSettings.mjs +135 -0
- package/plugins/nestedHeaders/stateManager/headersTree.d.ts +14 -1
- package/plugins/nestedHeaders/stateManager/index.d.ts +76 -13
- package/plugins/nestedHeaders/stateManager/index.js +381 -38
- package/plugins/nestedHeaders/stateManager/index.mjs +382 -39
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +3 -2
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +3 -2
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -1
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +5 -1
- package/plugins/nestedHeaders/stateManager/sourceSettings.d.ts +23 -6
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +20 -4
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +20 -4
- package/plugins/nestedHeaders/stateManager/utils.d.ts +17 -1
- package/plugins/nestedHeaders/stateManager/utils.js +6 -1
- package/plugins/nestedHeaders/stateManager/utils.mjs +6 -1
- package/plugins/nestedHeaders/utils/ghostTable.js +21 -8
- package/plugins/nestedHeaders/utils/ghostTable.mjs +21 -8
- package/plugins/nestedRows/data/dataManager.d.ts +4 -1
- package/plugins/nestedRows/data/dataManager.js +10 -4
- package/plugins/nestedRows/data/dataManager.mjs +10 -4
- package/plugins/nestedRows/nestedRows.d.ts +127 -1
- package/plugins/nestedRows/nestedRows.js +330 -8
- package/plugins/nestedRows/nestedRows.mjs +330 -8
- package/plugins/nestedRows/ui/collapsing.d.ts +58 -0
- package/plugins/nestedRows/ui/collapsing.js +236 -40
- package/plugins/nestedRows/ui/collapsing.mjs +236 -40
- package/plugins/notification/notification.d.ts +2 -1
- package/plugins/notification/notification.js +6 -3
- package/plugins/notification/notification.mjs +6 -3
- package/plugins/notification/ui.d.ts +8 -5
- package/plugins/notification/ui.js +18 -6
- package/plugins/notification/ui.mjs +18 -6
- package/plugins/pagination/pagination.js +2 -2
- package/plugins/pagination/pagination.mjs +2 -2
- package/plugins/search/search.js +23 -2
- package/plugins/search/search.mjs +23 -2
- package/plugins/selectionHandles/helpers.d.mts +1 -0
- package/plugins/selectionHandles/helpers.d.ts +17 -0
- package/plugins/selectionHandles/helpers.js +16 -0
- package/plugins/selectionHandles/helpers.mjs +11 -0
- package/plugins/selectionHandles/index.d.mts +1 -0
- package/plugins/selectionHandles/index.d.ts +1 -0
- package/plugins/selectionHandles/index.js +22 -0
- package/plugins/selectionHandles/index.mjs +1 -0
- package/plugins/selectionHandles/selectionHandles.d.mts +1 -0
- package/plugins/selectionHandles/selectionHandles.d.ts +52 -0
- package/plugins/selectionHandles/selectionHandles.js +342 -0
- package/plugins/selectionHandles/selectionHandles.mjs +323 -0
- package/plugins/trimRows/trimRows.d.ts +1 -1
- package/plugins/trimRows/trimRows.js +6 -2
- package/plugins/trimRows/trimRows.mjs +6 -2
- package/plugins/types.d.ts +4 -0
- package/plugins/undoRedo/actions/cellAlignment.js +1 -1
- package/plugins/undoRedo/actions/cellAlignment.mjs +1 -1
- package/plugins/undoRedo/actions/createColumn.js +4 -1
- package/plugins/undoRedo/actions/createColumn.mjs +4 -1
- package/plugins/undoRedo/actions/createRow.js +4 -1
- package/plugins/undoRedo/actions/createRow.mjs +4 -1
- package/plugins/undoRedo/actions/fixedCounts.d.mts +1 -0
- package/plugins/undoRedo/actions/fixedCounts.d.ts +36 -0
- package/plugins/undoRedo/actions/fixedCounts.js +63 -0
- package/plugins/undoRedo/actions/fixedCounts.mjs +62 -0
- package/plugins/undoRedo/actions/index.js +2 -0
- package/plugins/undoRedo/actions/index.mjs +2 -0
- package/plugins/undoRedo/actions/moveCells.d.mts +1 -0
- package/plugins/undoRedo/actions/moveCells.d.ts +104 -0
- package/plugins/undoRedo/actions/moveCells.js +225 -0
- package/plugins/undoRedo/actions/moveCells.mjs +227 -0
- package/plugins/undoRedo/actions/removeColumn.d.ts +18 -2
- package/plugins/undoRedo/actions/removeColumn.js +11 -4
- package/plugins/undoRedo/actions/removeColumn.mjs +12 -5
- package/plugins/undoRedo/actions/removeRow.js +2 -57
- package/plugins/undoRedo/actions/removeRow.mjs +2 -57
- package/plugins/undoRedo/undoRedo.d.ts +26 -0
- package/plugins/undoRedo/undoRedo.js +36 -2
- package/plugins/undoRedo/undoRedo.mjs +36 -2
- package/plugins/undoRedo/utils.d.ts +29 -0
- package/plugins/undoRedo/utils.js +55 -3
- package/plugins/undoRedo/utils.mjs +59 -0
- package/renderSizeProbe.d.mts +1 -0
- package/renderSizeProbe.d.ts +60 -0
- package/renderSizeProbe.js +163 -0
- package/renderSizeProbe.mjs +176 -0
- package/renderers/checkboxRenderer/checkboxRenderer.js +9 -4
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +9 -4
- package/renderers/index.d.ts +3 -2
- package/renderers/index.js +8 -0
- package/renderers/index.mjs +3 -1
- package/renderers/intlDatetimeRenderer/index.d.mts +1 -0
- package/renderers/intlDatetimeRenderer/index.d.ts +1 -0
- package/renderers/intlDatetimeRenderer/index.js +22 -0
- package/renderers/intlDatetimeRenderer/index.mjs +1 -0
- package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.d.mts +1 -0
- package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.d.ts +26 -0
- package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.js +82 -0
- package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.mjs +67 -0
- package/renderers/multiSelectRenderer/multiSelectRenderer.js +2 -3
- package/renderers/multiSelectRenderer/multiSelectRenderer.mjs +2 -3
- package/renderers/multiSelectRenderer/utils/utils.d.ts +1 -1
- package/renderers/multiSelectRenderer/utils/utils.js +11 -8
- package/renderers/multiSelectRenderer/utils/utils.mjs +11 -8
- package/renderers/passwordRenderer/passwordRenderer.js +6 -1
- package/renderers/passwordRenderer/passwordRenderer.mjs +6 -1
- package/renderers/renderCell.d.mts +1 -0
- package/renderers/renderCell.d.ts +37 -0
- package/renderers/renderCell.js +43 -0
- package/renderers/renderCell.mjs +48 -0
- package/selection/highlight/types/areaLayered.d.ts +3 -1
- package/selection/highlight/types/areaLayered.js +4 -2
- package/selection/highlight/types/areaLayered.mjs +6 -2
- package/selection/highlight/types/focus.d.ts +3 -1
- package/selection/highlight/types/focus.js +3 -2
- package/selection/highlight/types/focus.mjs +5 -2
- package/selection/mouseEventHandler.js +29 -26
- package/selection/mouseEventHandler.mjs +29 -26
- package/selection/moveCells.d.mts +1 -0
- package/selection/moveCells.d.ts +15 -0
- package/selection/moveCells.js +13 -0
- package/selection/moveCells.mjs +9 -0
- package/selection/selection.d.ts +56 -2
- package/selection/selection.js +149 -5
- package/selection/selection.mjs +149 -5
- package/selection/types.d.ts +3 -0
- package/settings.d.ts +24 -3
- package/shortcuts/context.d.ts +4 -0
- package/shortcuts/context.js +16 -8
- package/shortcuts/context.mjs +20 -8
- package/shortcuts/contexts/commands/populateSelectedCellsData.js +1 -1
- package/shortcuts/contexts/commands/populateSelectedCellsData.mjs +1 -1
- package/styles/handsontable.css +504 -158
- package/styles/handsontable.min.css +4 -4
- package/styles/handsontableStyles.d.mts +2 -0
- package/styles/handsontableStyles.d.ts +2 -0
- package/styles/handsontableStyles.js +1 -1
- package/styles/handsontableStyles.mjs +1 -1
- package/styles/ht-icons-horizon.css +1 -10
- package/styles/ht-icons-horizon.min.css +4 -4
- package/styles/ht-icons-main.css +1 -10
- package/styles/ht-icons-main.min.css +4 -4
- package/styles/ht-theme-classic-no-icons.css +6 -0
- package/styles/ht-theme-classic-no-icons.min.css +4 -4
- package/styles/ht-theme-classic.css +7 -10
- package/styles/ht-theme-classic.min.css +4 -4
- package/styles/ht-theme-horizon-no-icons.css +6 -0
- package/styles/ht-theme-horizon-no-icons.min.css +4 -4
- package/styles/ht-theme-horizon.css +7 -10
- package/styles/ht-theme-horizon.min.css +4 -4
- package/styles/ht-theme-main-no-icons.css +6 -0
- package/styles/ht-theme-main-no-icons.min.css +4 -4
- package/styles/ht-theme-main.css +7 -10
- package/styles/ht-theme-main.min.css +4 -4
- package/tableView.d.ts +17 -4
- package/tableView.js +208 -42
- package/tableView.mjs +209 -43
- package/themes/engine/index.d.ts +2 -1
- package/themes/engine/index.js +3 -0
- package/themes/engine/index.mjs +1 -1
- package/themes/engine/manager.d.ts +75 -3
- package/themes/engine/manager.js +242 -6
- package/themes/engine/manager.mjs +249 -6
- package/themes/engine/utils/cssVariables.d.ts +18 -1
- package/themes/engine/utils/cssVariables.js +27 -11
- package/themes/engine/utils/cssVariables.mjs +28 -11
- package/themes/engine/utils/validation.js +7 -0
- package/themes/engine/utils/validation.mjs +7 -0
- package/themes/static/variables/helpers/iconsMap.js +1 -6
- package/themes/static/variables/helpers/iconsMap.mjs +1 -6
- package/themes/static/variables/tokens/classic.js +6 -0
- package/themes/static/variables/tokens/classic.mjs +6 -0
- package/themes/static/variables/tokens/horizon.js +6 -0
- package/themes/static/variables/tokens/horizon.mjs +6 -0
- package/themes/static/variables/tokens/main.js +6 -0
- package/themes/static/variables/tokens/main.mjs +6 -0
- package/themes/types.d.ts +1 -1
- package/translations/indexMapper.d.ts +14 -9
- package/translations/indexMapper.js +104 -43
- package/translations/indexMapper.mjs +104 -43
- package/translations/mapCollections/aggregatedCollection.js +20 -35
- package/translations/mapCollections/aggregatedCollection.mjs +20 -35
- package/translations/mapCollections/mapCollection.d.ts +10 -4
- package/translations/mapCollections/mapCollection.js +2 -2
- package/translations/mapCollections/mapCollection.mjs +2 -2
- package/translations/maps/booleanMap.d.mts +1 -0
- package/translations/maps/booleanMap.d.ts +86 -0
- package/translations/maps/booleanMap.js +300 -0
- package/translations/maps/booleanMap.mjs +308 -0
- package/translations/maps/hidingMap.d.ts +5 -2
- package/translations/maps/hidingMap.js +8 -3
- package/translations/maps/hidingMap.mjs +8 -3
- package/translations/maps/index.d.ts +5 -2
- package/translations/maps/index.js +7 -3
- package/translations/maps/index.mjs +10 -2
- package/translations/maps/indexMap.d.ts +26 -2
- package/translations/maps/indexMap.js +78 -6
- package/translations/maps/indexMap.mjs +78 -6
- package/translations/maps/indexesSequence.d.ts +53 -2
- package/translations/maps/indexesSequence.js +225 -3
- package/translations/maps/indexesSequence.mjs +233 -3
- package/translations/maps/trimmingMap.d.ts +5 -2
- package/translations/maps/trimmingMap.js +8 -3
- package/translations/maps/trimmingMap.mjs +8 -3
- package/translations/maps/utils/actionsOnIndexes.js +20 -1
- package/translations/maps/utils/actionsOnIndexes.mjs +20 -1
- package/translations/maps/utils/indexesSequence.js +12 -3
- package/translations/maps/utils/indexesSequence.mjs +12 -3
- package/translations/maps/utils/physicallyIndexed.js +12 -1
- package/translations/maps/utils/physicallyIndexed.mjs +12 -1
- package/utils/entitlementLicenseKey/classify.d.mts +1 -0
- package/utils/entitlementLicenseKey/classify.d.ts +34 -0
- package/utils/entitlementLicenseKey/classify.js +97 -0
- package/utils/entitlementLicenseKey/classify.mjs +96 -0
- package/utils/entitlementLicenseKey/constants.d.mts +1 -0
- package/utils/entitlementLicenseKey/constants.d.ts +69 -0
- package/utils/entitlementLicenseKey/constants.js +54 -0
- package/utils/entitlementLicenseKey/constants.mjs +66 -0
- package/utils/entitlementLicenseKey/detectFormat.d.mts +1 -0
- package/utils/entitlementLicenseKey/detectFormat.d.ts +23 -0
- package/utils/entitlementLicenseKey/detectFormat.js +60 -0
- package/utils/entitlementLicenseKey/detectFormat.mjs +60 -0
- package/utils/entitlementLicenseKey/encoding.d.mts +1 -0
- package/utils/entitlementLicenseKey/encoding.d.ts +58 -0
- package/utils/entitlementLicenseKey/encoding.js +161 -0
- package/utils/entitlementLicenseKey/encoding.mjs +172 -0
- package/utils/entitlementLicenseKey/extractKeyData.d.mts +1 -0
- package/utils/entitlementLicenseKey/extractKeyData.d.ts +47 -0
- package/utils/entitlementLicenseKey/extractKeyData.js +213 -0
- package/utils/entitlementLicenseKey/extractKeyData.mjs +232 -0
- package/utils/entitlementLicenseKey/grants.d.mts +1 -0
- package/utils/entitlementLicenseKey/grants.d.ts +54 -0
- package/utils/entitlementLicenseKey/grants.js +68 -0
- package/utils/entitlementLicenseKey/grants.mjs +84 -0
- package/utils/entitlementLicenseKey/index.d.mts +1 -0
- package/utils/entitlementLicenseKey/index.d.ts +8 -0
- package/utils/entitlementLicenseKey/index.js +53 -0
- package/utils/entitlementLicenseKey/index.mjs +6 -0
- package/utils/entitlementLicenseKey/sha512.d.mts +1 -0
- package/utils/entitlementLicenseKey/sha512.d.ts +11 -0
- package/utils/entitlementLicenseKey/sha512.js +328 -0
- package/utils/entitlementLicenseKey/sha512.mjs +327 -0
- package/utils/entitlementLicenseKey/types.d.mts +1 -0
- package/utils/entitlementLicenseKey/types.d.ts +84 -0
- package/utils/entitlementLicenseKey/types.js +8 -0
- package/utils/entitlementLicenseKey/types.mjs +10 -0
- package/utils/ghostTable.d.ts +1 -0
- package/utils/ghostTable.js +60 -11
- package/utils/ghostTable.mjs +60 -11
- package/utils/licenseBranding/badge.d.mts +1 -0
- package/utils/licenseBranding/badge.d.ts +21 -0
- package/utils/licenseBranding/badge.js +237 -0
- package/utils/licenseBranding/badge.mjs +244 -0
- package/utils/licenseBranding/content.d.mts +1 -0
- package/utils/licenseBranding/content.d.ts +54 -0
- package/utils/licenseBranding/content.js +93 -0
- package/utils/licenseBranding/content.mjs +79 -0
- package/utils/licenseBranding/index.d.mts +1 -0
- package/utils/licenseBranding/index.d.ts +14 -0
- package/utils/licenseBranding/index.js +55 -0
- package/utils/licenseBranding/index.mjs +56 -0
- package/utils/licenseBranding/lockScreen.d.mts +1 -0
- package/utils/licenseBranding/lockScreen.d.ts +23 -0
- package/utils/licenseBranding/lockScreen.js +150 -0
- package/utils/licenseBranding/lockScreen.mjs +159 -0
- package/utils/licenseNotification.d.ts +19 -0
- package/utils/licenseNotification.js +56 -29
- package/utils/licenseNotification.mjs +61 -29
- package/utils/movableMeta.d.mts +1 -0
- package/utils/movableMeta.d.ts +40 -0
- package/utils/movableMeta.js +47 -0
- package/utils/movableMeta.mjs +46 -0
- package/utils/parseTable.js +16 -7
- package/utils/parseTable.mjs +16 -7
- package/utils/samplesGenerator.d.ts +41 -14
- package/utils/samplesGenerator.js +114 -42
- package/utils/samplesGenerator.mjs +114 -42
- package/utils/sanitizer.d.mts +1 -0
- package/utils/sanitizer.d.ts +47 -0
- package/utils/sanitizer.js +43 -0
- package/utils/sanitizer.mjs +55 -0
- package/utils/stylesHandler.d.ts +13 -0
- package/utils/stylesHandler.js +55 -2
- package/utils/stylesHandler.mjs +55 -2
- package/validators/autocompleteValidator/autocompleteValidator.js +3 -0
- package/validators/autocompleteValidator/autocompleteValidator.mjs +3 -0
- package/validators/index.d.ts +3 -2
- package/validators/index.js +8 -0
- package/validators/index.mjs +3 -1
- package/validators/intlDatetimeValidator/index.d.mts +1 -0
- package/validators/intlDatetimeValidator/index.d.ts +1 -0
- package/validators/intlDatetimeValidator/index.js +25 -0
- package/validators/intlDatetimeValidator/index.mjs +1 -0
- package/validators/intlDatetimeValidator/intlDatetimeValidator.d.mts +1 -0
- package/validators/intlDatetimeValidator/intlDatetimeValidator.d.ts +28 -0
- package/validators/intlDatetimeValidator/intlDatetimeValidator.js +49 -0
- package/validators/intlDatetimeValidator/intlDatetimeValidator.mjs +37 -0
- package/3rdparty/walkontable/src/overlay/bottom.d.mts +0 -1
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.d.mts +0 -1
- package/3rdparty/walkontable/src/overlay/inlineStart.d.mts +0 -1
- package/3rdparty/walkontable/src/overlay/top.d.mts +0 -1
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.d.mts +0 -1
- package/3rdparty/walkontable/src/overlays.d.ts +0 -329
- package/3rdparty/walkontable/src/overlays.js +0 -870
- package/3rdparty/walkontable/src/overlays.mjs +0 -860
- package/3rdparty/walkontable/src/renderer/table.d.mts +0 -1
- package/3rdparty/walkontable/src/renderer/table.js +0 -229
- package/3rdparty/walkontable/src/settings.d.mts +0 -2
- package/3rdparty/walkontable/src/settings.js +0 -196
- package/3rdparty/walkontable/src/settings.mjs +0 -263
- package/3rdparty/walkontable/src/table/bottom.d.mts +0 -2
- package/3rdparty/walkontable/src/table/bottom.d.ts +0 -19
- package/3rdparty/walkontable/src/table/bottom.js +0 -38
- package/3rdparty/walkontable/src/table/bottom.mjs +0 -23
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.d.mts +0 -2
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.d.ts +0 -20
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +0 -24
- package/3rdparty/walkontable/src/table/inlineStart.d.mts +0 -2
- package/3rdparty/walkontable/src/table/inlineStart.d.ts +0 -16
- package/3rdparty/walkontable/src/table/inlineStart.js +0 -35
- package/3rdparty/walkontable/src/table/inlineStart.mjs +0 -20
- package/3rdparty/walkontable/src/table/master.d.mts +0 -2
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.d.mts +0 -2
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.d.ts +0 -75
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +0 -122
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +0 -112
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.d.mts +0 -2
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.d.ts +0 -75
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +0 -122
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +0 -112
- package/3rdparty/walkontable/src/table/top.d.mts +0 -2
- package/3rdparty/walkontable/src/table/top.d.ts +0 -19
- package/3rdparty/walkontable/src/table/top.js +0 -38
- package/3rdparty/walkontable/src/table/top.mjs +0 -23
- package/3rdparty/walkontable/src/table/topInlineStartCorner.d.mts +0 -2
- package/3rdparty/walkontable/src/table/topInlineStartCorner.d.ts +0 -20
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +0 -24
- package/3rdparty/walkontable/src/table.d.mts +0 -2
- package/3rdparty/walkontable/src/table.d.ts +0 -741
- package/3rdparty/walkontable/src/table.js +0 -1120
- package/3rdparty/walkontable/src/table.mjs +0 -1105
- package/3rdparty/walkontable/src/utils/cellCoords.d.mts +0 -1
- package/3rdparty/walkontable/src/utils/cellCoords.js +0 -54
- package/3rdparty/walkontable/src/utils/cellCoords.mjs +0 -54
- package/3rdparty/walkontable/src/utils/column.d.mts +0 -2
- package/3rdparty/walkontable/src/utils/column.js +0 -75
- package/3rdparty/walkontable/src/utils/column.mjs +0 -70
- package/3rdparty/walkontable/src/utils/positionCache.d.mts +0 -1
- package/3rdparty/walkontable/src/utils/positionCache.d.ts +0 -91
- package/3rdparty/walkontable/src/utils/positionCache.js +0 -193
- package/3rdparty/walkontable/src/utils/positionCache.mjs +0 -194
- package/3rdparty/walkontable/src/utils/row.d.mts +0 -2
- package/3rdparty/walkontable/src/utils/row.js +0 -46
- package/3rdparty/walkontable/src/utils/row.mjs +0 -41
- package/3rdparty/walkontable/src/viewport.d.ts +0 -254
- package/3rdparty/walkontable/src/viewport.js +0 -533
- package/3rdparty/walkontable/src/viewport.mjs +0 -523
- /package/3rdparty/walkontable/src/{renderer → axisSizing/positionCache}/index.d.mts +0 -0
- /package/3rdparty/walkontable/src/{overlays.d.mts → overlay/overlays.d.mts} +0 -0
- /package/3rdparty/walkontable/src/overlay/{_base.d.mts → regions/_base.d.mts} +0 -0
- /package/3rdparty/walkontable/src/{stickyScrollStrategy.d.mts → overlay/strategies/stickyScrollStrategy.d.mts} +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/_base.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/_base.js +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/_base.mjs +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/cells.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/cells.d.ts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/colGroup.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/colGroup.d.ts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/colGroup.js +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/colGroup.mjs +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.d.ts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.js +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.mjs +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.d.ts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.js +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.mjs +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rows.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rows.d.ts +0 -0
- /package/3rdparty/walkontable/src/{scroll.d.mts → scroll/scroll.d.mts} +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.d.mts +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.d.mts +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.js +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.mjs +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.d.mts +0 -0
- /package/3rdparty/walkontable/src/{viewport.d.mts → viewport/viewport.d.mts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './hyperlinkUrl.js';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolves the URL of a `HYPERLINK` cell against the host document, and refuses anything that is not
|
|
3
|
+
* a navigable link.
|
|
4
|
+
*
|
|
5
|
+
* The URL is parsed instead of pattern-matched, so obfuscations that survive a string comparison
|
|
6
|
+
* (`JaVaScRiPt:`, `java\tscript:`, leading whitespace) are normalized before the protocol is read.
|
|
7
|
+
*
|
|
8
|
+
* @param {string} rawUrl The URL as reported by the formula engine.
|
|
9
|
+
* @param {string} baseUrl The document URL that relative URLs are resolved against.
|
|
10
|
+
* @returns {string|null} The resolved absolute URL, or `null` when the cell must not become a link.
|
|
11
|
+
*/
|
|
12
|
+
export declare function resolveHyperlinkUrl(rawUrl: string, baseUrl: string): string | null;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "resolveHyperlinkUrl", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return resolveHyperlinkUrl;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
/**
|
|
12
|
+
* URL schemes a `HYPERLINK` cell may link to. Everything outside this list is refused, which is what
|
|
13
|
+
* keeps `javascript:`, `data:` and `vbscript:` payloads out of the anchor's `href`. Default
|
|
14
|
+
* sanitization is a pass-through in this codebase, so the guard cannot be delegated to a sanitizer.
|
|
15
|
+
*/ const ALLOWED_PROTOCOLS = new Set([
|
|
16
|
+
'http:',
|
|
17
|
+
'https:',
|
|
18
|
+
'mailto:',
|
|
19
|
+
'tel:'
|
|
20
|
+
]);
|
|
21
|
+
function resolveHyperlinkUrl(rawUrl, baseUrl) {
|
|
22
|
+
if (typeof rawUrl !== 'string' || rawUrl.trim() === '') {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
let url;
|
|
26
|
+
try {
|
|
27
|
+
url = new URL(rawUrl, baseUrl);
|
|
28
|
+
} catch (error) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
return ALLOWED_PROTOCOLS.has(url.protocol) ? url.href : null;
|
|
32
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* URL schemes a `HYPERLINK` cell may link to. Everything outside this list is refused, which is what
|
|
3
|
+
* keeps `javascript:`, `data:` and `vbscript:` payloads out of the anchor's `href`. Default
|
|
4
|
+
* sanitization is a pass-through in this codebase, so the guard cannot be delegated to a sanitizer.
|
|
5
|
+
*/ const ALLOWED_PROTOCOLS = new Set([
|
|
6
|
+
'http:',
|
|
7
|
+
'https:',
|
|
8
|
+
'mailto:',
|
|
9
|
+
'tel:'
|
|
10
|
+
]);
|
|
11
|
+
/**
|
|
12
|
+
* Resolves the URL of a `HYPERLINK` cell against the host document, and refuses anything that is not
|
|
13
|
+
* a navigable link.
|
|
14
|
+
*
|
|
15
|
+
* The URL is parsed instead of pattern-matched, so obfuscations that survive a string comparison
|
|
16
|
+
* (`JaVaScRiPt:`, `java\tscript:`, leading whitespace) are normalized before the protocol is read.
|
|
17
|
+
*
|
|
18
|
+
* @param {string} rawUrl The URL as reported by the formula engine.
|
|
19
|
+
* @param {string} baseUrl The document URL that relative URLs are resolved against.
|
|
20
|
+
* @returns {string|null} The resolved absolute URL, or `null` when the cell must not become a link.
|
|
21
|
+
*/ export function resolveHyperlinkUrl(rawUrl, baseUrl) {
|
|
22
|
+
if (typeof rawUrl !== 'string' || rawUrl.trim() === '') {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
let url;
|
|
26
|
+
try {
|
|
27
|
+
url = new URL(rawUrl, baseUrl);
|
|
28
|
+
} catch (error) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
return ALLOWED_PROTOCOLS.has(url.protocol) ? url.href : null;
|
|
32
|
+
}
|
|
@@ -81,6 +81,18 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
81
81
|
* @private
|
|
82
82
|
* @type {Array<number>}
|
|
83
83
|
*/ _removedIndexes = /*#__PURE__*/ new WeakMap(), /**
|
|
84
|
+
* Cached translation tables between physical, visual, and HF indexes. Built lazily on the first
|
|
85
|
+
* translation call and invalidated whenever the indexes sequence or the trimmed indexes change.
|
|
86
|
+
* Keeping the tables makes both translation methods O(1) per call — they are called for every
|
|
87
|
+
* rendered cell, so a per-call sequence scan would scale with the dataset size.
|
|
88
|
+
*
|
|
89
|
+
* @private
|
|
90
|
+
* @type {HfTranslationCache|null}
|
|
91
|
+
*/ _translationCache = /*#__PURE__*/ new WeakMap(), /**
|
|
92
|
+
* Gets the cached translation tables between physical, visual, and HF indexes, building them when needed.
|
|
93
|
+
*
|
|
94
|
+
* @returns {HfTranslationCache}
|
|
95
|
+
*/ _getTranslationCache = /*#__PURE__*/ new WeakSet(), /**
|
|
84
96
|
* Synchronizes the initial axis order with HF engine. When the IndexMapper's sequence is non-identity at
|
|
85
97
|
* setup time (for example, an initial `manualColumnMove` or `manualRowMove` configuration), HF needs to
|
|
86
98
|
* reorder its data so that HF visual order matches HOT visual order. Without this sync, downstream code
|
|
@@ -123,12 +135,13 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
123
135
|
* @param {number} visualIndex Visual index.
|
|
124
136
|
* @returns {number}
|
|
125
137
|
*/ getHfIndexFromVisualIndex(visualIndex) {
|
|
126
|
-
const
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
//
|
|
131
|
-
|
|
138
|
+
const physicalIndex = _class_private_field_get(this, _indexMapper).getNotTrimmedIndexes()[visualIndex];
|
|
139
|
+
if (physicalIndex === undefined) {
|
|
140
|
+
return -1;
|
|
141
|
+
}
|
|
142
|
+
// The `?? -1` covers a mid-batch state in which the mapper's not-trimmed cache still holds a
|
|
143
|
+
// physical index that is no longer part of the sequence.
|
|
144
|
+
return _class_private_method_get(this, _getTranslationCache, getTranslationCache).call(this).hfIndexOfPhysical[physicalIndex] ?? -1;
|
|
132
145
|
}
|
|
133
146
|
/**
|
|
134
147
|
* Gets corresponding visual index for a HyperFormula index. Inverse of {@link getHfIndexFromVisualIndex}.
|
|
@@ -137,13 +150,12 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
137
150
|
* @param {number} hfIndex HyperFormula index.
|
|
138
151
|
* @returns {number}
|
|
139
152
|
*/ getVisualIndexFromHfIndex(hfIndex) {
|
|
140
|
-
const
|
|
141
|
-
const
|
|
142
|
-
const physicalIndex = indexesSequence[hfIndex];
|
|
153
|
+
const { physicalIndexOfHf, visualIndexOfPhysical } = _class_private_method_get(this, _getTranslationCache, getTranslationCache).call(this);
|
|
154
|
+
const physicalIndex = physicalIndexOfHf[hfIndex];
|
|
143
155
|
if (physicalIndex === undefined) {
|
|
144
156
|
return -1;
|
|
145
157
|
}
|
|
146
|
-
return
|
|
158
|
+
return visualIndexOfPhysical[physicalIndex];
|
|
147
159
|
}
|
|
148
160
|
/**
|
|
149
161
|
* Synchronizes moves done on HOT to HF engine (based on previously calculated positions).
|
|
@@ -212,7 +224,13 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
212
224
|
}
|
|
213
225
|
const newSequence = _class_private_field_get(this, _indexMapper).getIndexesSequence();
|
|
214
226
|
if (source === 'update' && newSequence.length > 0) {
|
|
215
|
-
|
|
227
|
+
// One-pass inverse lookup instead of `newSequence.indexOf` per element, which would make
|
|
228
|
+
// every sort/unsort quadratic in the number of rows or columns.
|
|
229
|
+
const positionOfPhysical = new Array(newSequence.length);
|
|
230
|
+
for(let position = 0; position < newSequence.length; position += 1){
|
|
231
|
+
positionOfPhysical[newSequence[position]] = position;
|
|
232
|
+
}
|
|
233
|
+
const relativeTransformation = _class_private_field_get(this, _indexesSequence).map((index)=>positionOfPhysical[index] ?? -1);
|
|
216
234
|
const sheetDimensions = _class_private_field_get(this, _indexSyncer).getEngine().getSheetDimensions(_class_private_field_get(this, _indexSyncer).getSheetId());
|
|
217
235
|
let sizeForAxis;
|
|
218
236
|
if (_class_private_field_get(this, _axis) === 'row') {
|
|
@@ -241,6 +259,7 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
241
259
|
/**
|
|
242
260
|
* Initializes the axis syncer for the given axis with the corresponding index mapper and parent index syncer references.
|
|
243
261
|
*/ constructor(axis, indexMapper, indexSyncer){
|
|
262
|
+
_class_private_method_init(this, _getTranslationCache);
|
|
244
263
|
_class_private_method_init(this, _syncInitialOrder);
|
|
245
264
|
/**
|
|
246
265
|
* The axis for which the actions are performed.
|
|
@@ -285,14 +304,50 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
285
304
|
writable: true,
|
|
286
305
|
value: void 0
|
|
287
306
|
});
|
|
307
|
+
_class_private_field_init(this, _translationCache, {
|
|
308
|
+
writable: true,
|
|
309
|
+
value: void 0
|
|
310
|
+
});
|
|
288
311
|
_class_private_field_set(this, _indexesSequence, []);
|
|
289
312
|
_class_private_field_set(this, _movedIndexes, []);
|
|
290
313
|
_class_private_field_set(this, _removedIndexes, []);
|
|
314
|
+
_class_private_field_set(this, _translationCache, null);
|
|
291
315
|
_class_private_field_set(this, _axis, axis);
|
|
292
316
|
_class_private_field_set(this, _indexMapper, indexMapper);
|
|
293
317
|
_class_private_field_set(this, _indexSyncer, indexSyncer);
|
|
318
|
+
// The sequence hook fires synchronously on every sequence mutation (also mid-batch), the
|
|
319
|
+
// `cacheUpdated` hook fires when the mapper rebuilds its own `notTrimmedIndexes` cache — the
|
|
320
|
+
// same moment from which the translation methods would read the new trimming state.
|
|
321
|
+
_class_private_field_get(this, _indexMapper).addLocalHook('indexesSequenceChange', ()=>{
|
|
322
|
+
_class_private_field_set(this, _translationCache, null);
|
|
323
|
+
});
|
|
324
|
+
_class_private_field_get(this, _indexMapper).addLocalHook('cacheUpdated', (changes)=>{
|
|
325
|
+
if (changes.trimmedIndexesChanged) {
|
|
326
|
+
_class_private_field_set(this, _translationCache, null);
|
|
327
|
+
}
|
|
328
|
+
});
|
|
294
329
|
}
|
|
295
330
|
}
|
|
331
|
+
function getTranslationCache() {
|
|
332
|
+
if (_class_private_field_get(this, _translationCache) === null) {
|
|
333
|
+
const physicalIndexOfHf = _class_private_field_get(this, _indexMapper).getIndexesSequence();
|
|
334
|
+
const notTrimmedIndexes = _class_private_field_get(this, _indexMapper).getNotTrimmedIndexes();
|
|
335
|
+
const hfIndexOfPhysical = new Array(physicalIndexOfHf.length);
|
|
336
|
+
const visualIndexOfPhysical = new Array(physicalIndexOfHf.length).fill(-1);
|
|
337
|
+
for(let hfIndex = 0; hfIndex < physicalIndexOfHf.length; hfIndex += 1){
|
|
338
|
+
hfIndexOfPhysical[physicalIndexOfHf[hfIndex]] = hfIndex;
|
|
339
|
+
}
|
|
340
|
+
for(let visualIndex = 0; visualIndex < notTrimmedIndexes.length; visualIndex += 1){
|
|
341
|
+
visualIndexOfPhysical[notTrimmedIndexes[visualIndex]] = visualIndex;
|
|
342
|
+
}
|
|
343
|
+
_class_private_field_set(this, _translationCache, {
|
|
344
|
+
physicalIndexOfHf,
|
|
345
|
+
hfIndexOfPhysical,
|
|
346
|
+
visualIndexOfPhysical
|
|
347
|
+
});
|
|
348
|
+
}
|
|
349
|
+
return _class_private_field_get(this, _translationCache);
|
|
350
|
+
}
|
|
296
351
|
function syncInitialOrder() {
|
|
297
352
|
const sequence = _class_private_field_get(this, _indexMapper).getIndexesSequence();
|
|
298
353
|
const isIdentity = sequence.every((value, index)=>value === index);
|
|
@@ -310,10 +365,12 @@ function syncInitialOrder() {
|
|
|
310
365
|
const sizeForAxis = _class_private_field_get(this, _axis) === 'row' ? sheetDimensions.height : sheetDimensions.width;
|
|
311
366
|
// HF currently holds data in physical order ([0..n-1] identity). The transformation tells HF where each
|
|
312
367
|
// currently-held element should move to, so that HF's visual order matches HOT's visual order. For each
|
|
313
|
-
// current position `i`, the target position is the visual index of physical `i
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
368
|
+
// current position `i`, the target position is the visual index of physical `i` — that is, the inverse
|
|
369
|
+
// permutation of the sequence, built in one pass.
|
|
370
|
+
const transformation = new Array(sequence.length);
|
|
371
|
+
for(let position = 0; position < sequence.length; position += 1){
|
|
372
|
+
transformation[sequence[position]] = position;
|
|
373
|
+
}
|
|
317
374
|
for(let i = transformation.length; i < sizeForAxis; i += 1){
|
|
318
375
|
transformation.push(i);
|
|
319
376
|
}
|
|
@@ -71,6 +71,18 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
71
71
|
* @private
|
|
72
72
|
* @type {Array<number>}
|
|
73
73
|
*/ _removedIndexes = /*#__PURE__*/ new WeakMap(), /**
|
|
74
|
+
* Cached translation tables between physical, visual, and HF indexes. Built lazily on the first
|
|
75
|
+
* translation call and invalidated whenever the indexes sequence or the trimmed indexes change.
|
|
76
|
+
* Keeping the tables makes both translation methods O(1) per call — they are called for every
|
|
77
|
+
* rendered cell, so a per-call sequence scan would scale with the dataset size.
|
|
78
|
+
*
|
|
79
|
+
* @private
|
|
80
|
+
* @type {HfTranslationCache|null}
|
|
81
|
+
*/ _translationCache = /*#__PURE__*/ new WeakMap(), /**
|
|
82
|
+
* Gets the cached translation tables between physical, visual, and HF indexes, building them when needed.
|
|
83
|
+
*
|
|
84
|
+
* @returns {HfTranslationCache}
|
|
85
|
+
*/ _getTranslationCache = /*#__PURE__*/ new WeakSet(), /**
|
|
74
86
|
* Synchronizes the initial axis order with HF engine. When the IndexMapper's sequence is non-identity at
|
|
75
87
|
* setup time (for example, an initial `manualColumnMove` or `manualRowMove` configuration), HF needs to
|
|
76
88
|
* reorder its data so that HF visual order matches HOT visual order. Without this sync, downstream code
|
|
@@ -113,12 +125,13 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
113
125
|
* @param {number} visualIndex Visual index.
|
|
114
126
|
* @returns {number}
|
|
115
127
|
*/ getHfIndexFromVisualIndex(visualIndex) {
|
|
116
|
-
const
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
//
|
|
121
|
-
|
|
128
|
+
const physicalIndex = _class_private_field_get(this, _indexMapper).getNotTrimmedIndexes()[visualIndex];
|
|
129
|
+
if (physicalIndex === undefined) {
|
|
130
|
+
return -1;
|
|
131
|
+
}
|
|
132
|
+
// The `?? -1` covers a mid-batch state in which the mapper's not-trimmed cache still holds a
|
|
133
|
+
// physical index that is no longer part of the sequence.
|
|
134
|
+
return _class_private_method_get(this, _getTranslationCache, getTranslationCache).call(this).hfIndexOfPhysical[physicalIndex] ?? -1;
|
|
122
135
|
}
|
|
123
136
|
/**
|
|
124
137
|
* Gets corresponding visual index for a HyperFormula index. Inverse of {@link getHfIndexFromVisualIndex}.
|
|
@@ -127,13 +140,12 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
127
140
|
* @param {number} hfIndex HyperFormula index.
|
|
128
141
|
* @returns {number}
|
|
129
142
|
*/ getVisualIndexFromHfIndex(hfIndex) {
|
|
130
|
-
const
|
|
131
|
-
const
|
|
132
|
-
const physicalIndex = indexesSequence[hfIndex];
|
|
143
|
+
const { physicalIndexOfHf, visualIndexOfPhysical } = _class_private_method_get(this, _getTranslationCache, getTranslationCache).call(this);
|
|
144
|
+
const physicalIndex = physicalIndexOfHf[hfIndex];
|
|
133
145
|
if (physicalIndex === undefined) {
|
|
134
146
|
return -1;
|
|
135
147
|
}
|
|
136
|
-
return
|
|
148
|
+
return visualIndexOfPhysical[physicalIndex];
|
|
137
149
|
}
|
|
138
150
|
/**
|
|
139
151
|
* Synchronizes moves done on HOT to HF engine (based on previously calculated positions).
|
|
@@ -202,7 +214,13 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
202
214
|
}
|
|
203
215
|
const newSequence = _class_private_field_get(this, _indexMapper).getIndexesSequence();
|
|
204
216
|
if (source === 'update' && newSequence.length > 0) {
|
|
205
|
-
|
|
217
|
+
// One-pass inverse lookup instead of `newSequence.indexOf` per element, which would make
|
|
218
|
+
// every sort/unsort quadratic in the number of rows or columns.
|
|
219
|
+
const positionOfPhysical = new Array(newSequence.length);
|
|
220
|
+
for(let position = 0; position < newSequence.length; position += 1){
|
|
221
|
+
positionOfPhysical[newSequence[position]] = position;
|
|
222
|
+
}
|
|
223
|
+
const relativeTransformation = _class_private_field_get(this, _indexesSequence).map((index)=>positionOfPhysical[index] ?? -1);
|
|
206
224
|
const sheetDimensions = _class_private_field_get(this, _indexSyncer).getEngine().getSheetDimensions(_class_private_field_get(this, _indexSyncer).getSheetId());
|
|
207
225
|
let sizeForAxis;
|
|
208
226
|
if (_class_private_field_get(this, _axis) === 'row') {
|
|
@@ -231,6 +249,7 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
231
249
|
/**
|
|
232
250
|
* Initializes the axis syncer for the given axis with the corresponding index mapper and parent index syncer references.
|
|
233
251
|
*/ constructor(axis, indexMapper, indexSyncer){
|
|
252
|
+
_class_private_method_init(this, _getTranslationCache);
|
|
234
253
|
_class_private_method_init(this, _syncInitialOrder);
|
|
235
254
|
/**
|
|
236
255
|
* The axis for which the actions are performed.
|
|
@@ -275,14 +294,50 @@ var _axis = /*#__PURE__*/ new WeakMap(), _indexMapper = /*#__PURE__*/ new WeakMa
|
|
|
275
294
|
writable: true,
|
|
276
295
|
value: void 0
|
|
277
296
|
});
|
|
297
|
+
_class_private_field_init(this, _translationCache, {
|
|
298
|
+
writable: true,
|
|
299
|
+
value: void 0
|
|
300
|
+
});
|
|
278
301
|
_class_private_field_set(this, _indexesSequence, []);
|
|
279
302
|
_class_private_field_set(this, _movedIndexes, []);
|
|
280
303
|
_class_private_field_set(this, _removedIndexes, []);
|
|
304
|
+
_class_private_field_set(this, _translationCache, null);
|
|
281
305
|
_class_private_field_set(this, _axis, axis);
|
|
282
306
|
_class_private_field_set(this, _indexMapper, indexMapper);
|
|
283
307
|
_class_private_field_set(this, _indexSyncer, indexSyncer);
|
|
308
|
+
// The sequence hook fires synchronously on every sequence mutation (also mid-batch), the
|
|
309
|
+
// `cacheUpdated` hook fires when the mapper rebuilds its own `notTrimmedIndexes` cache — the
|
|
310
|
+
// same moment from which the translation methods would read the new trimming state.
|
|
311
|
+
_class_private_field_get(this, _indexMapper).addLocalHook('indexesSequenceChange', ()=>{
|
|
312
|
+
_class_private_field_set(this, _translationCache, null);
|
|
313
|
+
});
|
|
314
|
+
_class_private_field_get(this, _indexMapper).addLocalHook('cacheUpdated', (changes)=>{
|
|
315
|
+
if (changes.trimmedIndexesChanged) {
|
|
316
|
+
_class_private_field_set(this, _translationCache, null);
|
|
317
|
+
}
|
|
318
|
+
});
|
|
284
319
|
}
|
|
285
320
|
}
|
|
321
|
+
function getTranslationCache() {
|
|
322
|
+
if (_class_private_field_get(this, _translationCache) === null) {
|
|
323
|
+
const physicalIndexOfHf = _class_private_field_get(this, _indexMapper).getIndexesSequence();
|
|
324
|
+
const notTrimmedIndexes = _class_private_field_get(this, _indexMapper).getNotTrimmedIndexes();
|
|
325
|
+
const hfIndexOfPhysical = new Array(physicalIndexOfHf.length);
|
|
326
|
+
const visualIndexOfPhysical = new Array(physicalIndexOfHf.length).fill(-1);
|
|
327
|
+
for(let hfIndex = 0; hfIndex < physicalIndexOfHf.length; hfIndex += 1){
|
|
328
|
+
hfIndexOfPhysical[physicalIndexOfHf[hfIndex]] = hfIndex;
|
|
329
|
+
}
|
|
330
|
+
for(let visualIndex = 0; visualIndex < notTrimmedIndexes.length; visualIndex += 1){
|
|
331
|
+
visualIndexOfPhysical[notTrimmedIndexes[visualIndex]] = visualIndex;
|
|
332
|
+
}
|
|
333
|
+
_class_private_field_set(this, _translationCache, {
|
|
334
|
+
physicalIndexOfHf,
|
|
335
|
+
hfIndexOfPhysical,
|
|
336
|
+
visualIndexOfPhysical
|
|
337
|
+
});
|
|
338
|
+
}
|
|
339
|
+
return _class_private_field_get(this, _translationCache);
|
|
340
|
+
}
|
|
286
341
|
function syncInitialOrder() {
|
|
287
342
|
const sequence = _class_private_field_get(this, _indexMapper).getIndexesSequence();
|
|
288
343
|
const isIdentity = sequence.every((value, index)=>value === index);
|
|
@@ -300,10 +355,12 @@ function syncInitialOrder() {
|
|
|
300
355
|
const sizeForAxis = _class_private_field_get(this, _axis) === 'row' ? sheetDimensions.height : sheetDimensions.width;
|
|
301
356
|
// HF currently holds data in physical order ([0..n-1] identity). The transformation tells HF where each
|
|
302
357
|
// currently-held element should move to, so that HF's visual order matches HOT's visual order. For each
|
|
303
|
-
// current position `i`, the target position is the visual index of physical `i
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
358
|
+
// current position `i`, the target position is the visual index of physical `i` — that is, the inverse
|
|
359
|
+
// permutation of the sequence, built in one pass.
|
|
360
|
+
const transformation = new Array(sequence.length);
|
|
361
|
+
for(let position = 0; position < sequence.length; position += 1){
|
|
362
|
+
transformation[sequence[position]] = position;
|
|
363
|
+
}
|
|
307
364
|
for(let i = transformation.length; i < sizeForAxis; i += 1){
|
|
308
365
|
transformation.push(i);
|
|
309
366
|
}
|
|
@@ -65,6 +65,15 @@ export declare function getTimeFromHfTimeFraction(numericTime: number): string;
|
|
|
65
65
|
* @returns {string}
|
|
66
66
|
*/
|
|
67
67
|
export declare function getDateFromExcelDate(numericDate: unknown): string;
|
|
68
|
+
/**
|
|
69
|
+
* Coalesces a list of indexes into an ascending list of contiguous `[startIndex, amount]` spans.
|
|
70
|
+
* For example, `[5, 1, 2, 3, 9]` becomes `[[1, 3], [5, 1], [9, 1]]`. The input order does not
|
|
71
|
+
* matter and duplicate indexes are counted once.
|
|
72
|
+
*
|
|
73
|
+
* @param {number[]} indexes List of indexes to coalesce.
|
|
74
|
+
* @returns {Array<Array<number>>} Ascending list of `[startIndex, amount]` spans.
|
|
75
|
+
*/
|
|
76
|
+
export declare function coalesceIndexesToSpans(indexes: number[]): [number, number][];
|
|
68
77
|
/**
|
|
69
78
|
* Converts a Handsontable cell value to a value accepted by HyperFormula.
|
|
70
79
|
* HyperFormula doesn't accept arrays as direct cell values, so they are converted to a
|
|
@@ -9,6 +9,9 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
+
get coalesceIndexesToSpans () {
|
|
13
|
+
return coalesceIndexesToSpans;
|
|
14
|
+
},
|
|
12
15
|
get getDateFromExcelDate () {
|
|
13
16
|
return getDateFromExcelDate;
|
|
14
17
|
},
|
|
@@ -83,6 +86,24 @@ function getDateFromExcelDate(numericDate) {
|
|
|
83
86
|
const day = String(d.getUTCDate()).padStart(2, '0');
|
|
84
87
|
return `${year}-${month}-${day}`;
|
|
85
88
|
}
|
|
89
|
+
function coalesceIndexesToSpans(indexes) {
|
|
90
|
+
const sortedIndexes = [
|
|
91
|
+
...indexes
|
|
92
|
+
].sort((a, b)=>a - b);
|
|
93
|
+
const spans = [];
|
|
94
|
+
sortedIndexes.forEach((index)=>{
|
|
95
|
+
const lastSpan = spans[spans.length - 1];
|
|
96
|
+
if (lastSpan === undefined || index > lastSpan[0] + lastSpan[1]) {
|
|
97
|
+
spans.push([
|
|
98
|
+
index,
|
|
99
|
+
1
|
|
100
|
+
]);
|
|
101
|
+
} else if (index === lastSpan[0] + lastSpan[1]) {
|
|
102
|
+
lastSpan[1] += 1;
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
return spans;
|
|
106
|
+
}
|
|
86
107
|
function normalizeValueForFormulaEngine(value) {
|
|
87
108
|
if (Array.isArray(value)) {
|
|
88
109
|
return (0, _valueGetter.valueGetter)(value);
|
|
@@ -90,6 +90,31 @@ import { valueGetter as multiSelectValueGetter } from '../../cellTypes/multiSele
|
|
|
90
90
|
const day = String(d.getUTCDate()).padStart(2, '0');
|
|
91
91
|
return `${year}-${month}-${day}`;
|
|
92
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* Coalesces a list of indexes into an ascending list of contiguous `[startIndex, amount]` spans.
|
|
95
|
+
* For example, `[5, 1, 2, 3, 9]` becomes `[[1, 3], [5, 1], [9, 1]]`. The input order does not
|
|
96
|
+
* matter and duplicate indexes are counted once.
|
|
97
|
+
*
|
|
98
|
+
* @param {number[]} indexes List of indexes to coalesce.
|
|
99
|
+
* @returns {Array<Array<number>>} Ascending list of `[startIndex, amount]` spans.
|
|
100
|
+
*/ export function coalesceIndexesToSpans(indexes) {
|
|
101
|
+
const sortedIndexes = [
|
|
102
|
+
...indexes
|
|
103
|
+
].sort((a, b)=>a - b);
|
|
104
|
+
const spans = [];
|
|
105
|
+
sortedIndexes.forEach((index)=>{
|
|
106
|
+
const lastSpan = spans[spans.length - 1];
|
|
107
|
+
if (lastSpan === undefined || index > lastSpan[0] + lastSpan[1]) {
|
|
108
|
+
spans.push([
|
|
109
|
+
index,
|
|
110
|
+
1
|
|
111
|
+
]);
|
|
112
|
+
} else if (index === lastSpan[0] + lastSpan[1]) {
|
|
113
|
+
lastSpan[1] += 1;
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
return spans;
|
|
117
|
+
}
|
|
93
118
|
/**
|
|
94
119
|
* Converts a Handsontable cell value to a value accepted by HyperFormula.
|
|
95
120
|
* HyperFormula doesn't accept arrays as direct cell values, so they are converted to a
|
|
@@ -113,7 +113,12 @@ function showColumnItem(hiddenColumnsPlugin) {
|
|
|
113
113
|
// Collect not trimmed columns if there are some hidden columns in the selection range.
|
|
114
114
|
if (visualColumnsInRange > renderedColumnsInRange) {
|
|
115
115
|
const physicalIndexesInRange = notTrimmedColumnIndexes.slice(visualStartColumn, visualEndColumn + 1);
|
|
116
|
-
|
|
116
|
+
const hiddenPhysicalColumnsLookup = new Set(hiddenPhysicalColumns);
|
|
117
|
+
physicalIndexesInRange.forEach((physicalIndex)=>{
|
|
118
|
+
if (hiddenPhysicalColumnsLookup.has(physicalIndex)) {
|
|
119
|
+
physicalColumnIndexes.push(physicalIndex);
|
|
120
|
+
}
|
|
121
|
+
});
|
|
117
122
|
}
|
|
118
123
|
// Handled column is the first rendered index and there are some visual indexes before it.
|
|
119
124
|
} else if (renderableStartColumn === 0 && visualStartColumn !== null && renderableStartColumn < visualStartColumn) {
|
|
@@ -62,7 +62,12 @@ import * as C from '../../../i18n/constants.mjs';
|
|
|
62
62
|
// Collect not trimmed columns if there are some hidden columns in the selection range.
|
|
63
63
|
if (visualColumnsInRange > renderedColumnsInRange) {
|
|
64
64
|
const physicalIndexesInRange = notTrimmedColumnIndexes.slice(visualStartColumn, visualEndColumn + 1);
|
|
65
|
-
|
|
65
|
+
const hiddenPhysicalColumnsLookup = new Set(hiddenPhysicalColumns);
|
|
66
|
+
physicalIndexesInRange.forEach((physicalIndex)=>{
|
|
67
|
+
if (hiddenPhysicalColumnsLookup.has(physicalIndex)) {
|
|
68
|
+
physicalColumnIndexes.push(physicalIndex);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
66
71
|
}
|
|
67
72
|
// Handled column is the first rendered index and there are some visual indexes before it.
|
|
68
73
|
} else if (renderableStartColumn === 0 && visualStartColumn !== null && renderableStartColumn < visualStartColumn) {
|
|
@@ -27,7 +27,6 @@ const _predefinedItems = require("../contextMenu/predefinedItems");
|
|
|
27
27
|
const _hooks = require("../../core/hooks");
|
|
28
28
|
const _hideColumn = /*#__PURE__*/ _interop_require_default(require("./contextMenuItem/hideColumn"));
|
|
29
29
|
const _showColumn = /*#__PURE__*/ _interop_require_default(require("./contextMenuItem/showColumn"));
|
|
30
|
-
const _translations = require("../../translations");
|
|
31
30
|
function _check_private_redeclaration(obj, privateCollection) {
|
|
32
31
|
if (privateCollection.has(obj)) {
|
|
33
32
|
throw new TypeError("Cannot initialize the same private elements twice on an object");
|
|
@@ -158,9 +157,13 @@ class HiddenColumns extends _base.BasePlugin {
|
|
|
158
157
|
if (this.enabled) {
|
|
159
158
|
return;
|
|
160
159
|
}
|
|
161
|
-
_class_private_field_set(this, _hiddenColumnsMap,
|
|
160
|
+
_class_private_field_set(this, _hiddenColumnsMap, this.hot.columnIndexMapper.createAndRegisterIndexMap(this.pluginName ?? '', 'hiding'));
|
|
162
161
|
_class_private_field_get(this, _hiddenColumnsMap).addLocalHook('init', ()=>_class_private_method_get(this, _onMapInit, onMapInit).call(this));
|
|
163
|
-
|
|
162
|
+
// `createAndRegisterIndexMap` initializes the map synchronously when the dataset is already
|
|
163
|
+
// loaded (a plugin re-enable), before the hook above could attach - replay the init handler.
|
|
164
|
+
if (this.hot.columnIndexMapper.getNumberOfIndexes() > 0) {
|
|
165
|
+
_class_private_method_get(this, _onMapInit, onMapInit).call(this);
|
|
166
|
+
}
|
|
164
167
|
this.addHook('afterContextMenuDefaultOptions', _class_private_field_get(this, _onAfterContextMenuDefaultOptions));
|
|
165
168
|
this.addHook('afterGetCellMeta', _class_private_field_get(this, _onAfterGetCellMeta));
|
|
166
169
|
this.addHook('modifyColWidth', _class_private_field_get(this, _onModifyColWidth), 2);
|
|
@@ -56,7 +56,6 @@ import { SEPARATOR } from '../contextMenu/predefinedItems/index.mjs';
|
|
|
56
56
|
import { Hooks } from '../../core/hooks/index.mjs';
|
|
57
57
|
import hideColumnItem from './contextMenuItem/hideColumn.mjs';
|
|
58
58
|
import showColumnItem from './contextMenuItem/showColumn.mjs';
|
|
59
|
-
import { HidingMap } from '../../translations/index.mjs';
|
|
60
59
|
Hooks.getSingleton().register('beforeHideColumns');
|
|
61
60
|
Hooks.getSingleton().register('afterHideColumns');
|
|
62
61
|
Hooks.getSingleton().register('beforeUnhideColumns');
|
|
@@ -299,9 +298,13 @@ var /**
|
|
|
299
298
|
if (this.enabled) {
|
|
300
299
|
return;
|
|
301
300
|
}
|
|
302
|
-
_class_private_field_set(this, _hiddenColumnsMap,
|
|
301
|
+
_class_private_field_set(this, _hiddenColumnsMap, this.hot.columnIndexMapper.createAndRegisterIndexMap(this.pluginName ?? '', 'hiding'));
|
|
303
302
|
_class_private_field_get(this, _hiddenColumnsMap).addLocalHook('init', ()=>_class_private_method_get(this, _onMapInit, onMapInit).call(this));
|
|
304
|
-
|
|
303
|
+
// `createAndRegisterIndexMap` initializes the map synchronously when the dataset is already
|
|
304
|
+
// loaded (a plugin re-enable), before the hook above could attach - replay the init handler.
|
|
305
|
+
if (this.hot.columnIndexMapper.getNumberOfIndexes() > 0) {
|
|
306
|
+
_class_private_method_get(this, _onMapInit, onMapInit).call(this);
|
|
307
|
+
}
|
|
305
308
|
this.addHook('afterContextMenuDefaultOptions', _class_private_field_get(this, _onAfterContextMenuDefaultOptions));
|
|
306
309
|
this.addHook('afterGetCellMeta', _class_private_field_get(this, _onAfterGetCellMeta));
|
|
307
310
|
this.addHook('modifyColWidth', _class_private_field_get(this, _onModifyColWidth), 2);
|
|
@@ -113,7 +113,12 @@ function showRowItem(hiddenRowsPlugin) {
|
|
|
113
113
|
// Collect not trimmed rows if there are some hidden rows in the selection range.
|
|
114
114
|
if (visualRowsInRange > renderedRowsInRange) {
|
|
115
115
|
const physicalIndexesInRange = notTrimmedRowIndexes.slice(visualStartRow, visualEndRow + 1);
|
|
116
|
-
|
|
116
|
+
const hiddenPhysicalRowsLookup = new Set(hiddenPhysicalRows);
|
|
117
|
+
physicalIndexesInRange.forEach((physicalIndex)=>{
|
|
118
|
+
if (hiddenPhysicalRowsLookup.has(physicalIndex)) {
|
|
119
|
+
physicalRowIndexes.push(physicalIndex);
|
|
120
|
+
}
|
|
121
|
+
});
|
|
117
122
|
}
|
|
118
123
|
// Handled row is the first rendered index and there are some visual indexes before it.
|
|
119
124
|
} else if (renderableStartRow === 0 && visualStartRow !== null && renderableStartRow < visualStartRow) {
|
|
@@ -62,7 +62,12 @@ import * as C from '../../../i18n/constants.mjs';
|
|
|
62
62
|
// Collect not trimmed rows if there are some hidden rows in the selection range.
|
|
63
63
|
if (visualRowsInRange > renderedRowsInRange) {
|
|
64
64
|
const physicalIndexesInRange = notTrimmedRowIndexes.slice(visualStartRow, visualEndRow + 1);
|
|
65
|
-
|
|
65
|
+
const hiddenPhysicalRowsLookup = new Set(hiddenPhysicalRows);
|
|
66
|
+
physicalIndexesInRange.forEach((physicalIndex)=>{
|
|
67
|
+
if (hiddenPhysicalRowsLookup.has(physicalIndex)) {
|
|
68
|
+
physicalRowIndexes.push(physicalIndex);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
66
71
|
}
|
|
67
72
|
// Handled row is the first rendered index and there are some visual indexes before it.
|
|
68
73
|
} else if (renderableStartRow === 0 && visualStartRow !== null && renderableStartRow < visualStartRow) {
|
|
@@ -27,7 +27,6 @@ const _predefinedItems = require("../contextMenu/predefinedItems");
|
|
|
27
27
|
const _hooks = require("../../core/hooks");
|
|
28
28
|
const _hideRow = /*#__PURE__*/ _interop_require_default(require("./contextMenuItem/hideRow"));
|
|
29
29
|
const _showRow = /*#__PURE__*/ _interop_require_default(require("./contextMenuItem/showRow"));
|
|
30
|
-
const _translations = require("../../translations");
|
|
31
30
|
function _check_private_redeclaration(obj, privateCollection) {
|
|
32
31
|
if (privateCollection.has(obj)) {
|
|
33
32
|
throw new TypeError("Cannot initialize the same private elements twice on an object");
|
|
@@ -158,9 +157,13 @@ class HiddenRows extends _base.BasePlugin {
|
|
|
158
157
|
if (this.enabled) {
|
|
159
158
|
return;
|
|
160
159
|
}
|
|
161
|
-
_class_private_field_set(this, _hiddenRowsMap,
|
|
160
|
+
_class_private_field_set(this, _hiddenRowsMap, this.hot.rowIndexMapper.createAndRegisterIndexMap(this.pluginName, 'hiding'));
|
|
162
161
|
_class_private_field_get(this, _hiddenRowsMap).addLocalHook('init', ()=>_class_private_method_get(this, _onMapInit, onMapInit).call(this));
|
|
163
|
-
|
|
162
|
+
// `createAndRegisterIndexMap` initializes the map synchronously when the dataset is already
|
|
163
|
+
// loaded (a plugin re-enable), before the hook above could attach - replay the init handler.
|
|
164
|
+
if (this.hot.rowIndexMapper.getNumberOfIndexes() > 0) {
|
|
165
|
+
_class_private_method_get(this, _onMapInit, onMapInit).call(this);
|
|
166
|
+
}
|
|
164
167
|
this.addHook('afterContextMenuDefaultOptions', _class_private_field_get(this, _onAfterContextMenuDefaultOptions));
|
|
165
168
|
this.addHook('afterGetCellMeta', _class_private_field_get(this, _onAfterGetCellMeta));
|
|
166
169
|
this.addHook('modifyRowHeight', _class_private_field_get(this, _onModifyRowHeight));
|
|
@@ -56,7 +56,6 @@ import { SEPARATOR } from '../contextMenu/predefinedItems/index.mjs';
|
|
|
56
56
|
import { Hooks } from '../../core/hooks/index.mjs';
|
|
57
57
|
import hideRowItem from './contextMenuItem/hideRow.mjs';
|
|
58
58
|
import showRowItem from './contextMenuItem/showRow.mjs';
|
|
59
|
-
import { HidingMap } from '../../translations/index.mjs';
|
|
60
59
|
Hooks.getSingleton().register('beforeHideRows');
|
|
61
60
|
Hooks.getSingleton().register('afterHideRows');
|
|
62
61
|
Hooks.getSingleton().register('beforeUnhideRows');
|
|
@@ -299,9 +298,13 @@ var /**
|
|
|
299
298
|
if (this.enabled) {
|
|
300
299
|
return;
|
|
301
300
|
}
|
|
302
|
-
_class_private_field_set(this, _hiddenRowsMap,
|
|
301
|
+
_class_private_field_set(this, _hiddenRowsMap, this.hot.rowIndexMapper.createAndRegisterIndexMap(this.pluginName, 'hiding'));
|
|
303
302
|
_class_private_field_get(this, _hiddenRowsMap).addLocalHook('init', ()=>_class_private_method_get(this, _onMapInit, onMapInit).call(this));
|
|
304
|
-
|
|
303
|
+
// `createAndRegisterIndexMap` initializes the map synchronously when the dataset is already
|
|
304
|
+
// loaded (a plugin re-enable), before the hook above could attach - replay the init handler.
|
|
305
|
+
if (this.hot.rowIndexMapper.getNumberOfIndexes() > 0) {
|
|
306
|
+
_class_private_method_get(this, _onMapInit, onMapInit).call(this);
|
|
307
|
+
}
|
|
305
308
|
this.addHook('afterContextMenuDefaultOptions', _class_private_field_get(this, _onAfterContextMenuDefaultOptions));
|
|
306
309
|
this.addHook('afterGetCellMeta', _class_private_field_get(this, _onAfterGetCellMeta));
|
|
307
310
|
this.addHook('modifyRowHeight', _class_private_field_get(this, _onModifyRowHeight));
|