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
|
@@ -71,12 +71,6 @@ function _interop_require_default(obj) {
|
|
|
71
71
|
default: obj
|
|
72
72
|
};
|
|
73
73
|
}
|
|
74
|
-
/**
|
|
75
|
-
* A set of deprecated feature names.
|
|
76
|
-
*
|
|
77
|
-
* @type {Set<string>}
|
|
78
|
-
*/ // eslint-disable-next-line no-unused-vars
|
|
79
|
-
const deprecationWarns = new Set();
|
|
80
74
|
var /**
|
|
81
75
|
* Map of observed IndexMap instances to their registered callback sets.
|
|
82
76
|
* Used by {@link IndexMapper#observeMapChange} to track which maps are being
|
|
@@ -94,7 +88,15 @@ var /**
|
|
|
94
88
|
* @param {IndexMap} map The map whose observers to notify.
|
|
95
89
|
*/ _notifyMapObservers = /*#__PURE__*/ new WeakSet(), /**
|
|
96
90
|
* Flushes all dirty observed maps collected during a batch, notifying their observers.
|
|
97
|
-
*/ _flushDirtyObservedMaps = /*#__PURE__*/ new WeakSet()
|
|
91
|
+
*/ _flushDirtyObservedMaps = /*#__PURE__*/ new WeakSet(), /**
|
|
92
|
+
* Returns a `-1`-filled `Int32Array` of the given length, reusing the passed one when its length
|
|
93
|
+
* matches so a cache rebuild does not allocate a new buffer.
|
|
94
|
+
*
|
|
95
|
+
* @private
|
|
96
|
+
* @param {Int32Array} cache The existing cache to reuse when possible.
|
|
97
|
+
* @param {number} length The required length.
|
|
98
|
+
* @returns {Int32Array}
|
|
99
|
+
*/ _allocateIndexCache = /*#__PURE__*/ new WeakSet();
|
|
98
100
|
class IndexMapper {
|
|
99
101
|
/**
|
|
100
102
|
* Suspends the cache update for this map. The method is helpful to group multiple
|
|
@@ -124,8 +126,8 @@ class IndexMapper {
|
|
|
124
126
|
}
|
|
125
127
|
return this.hidingChangesObservable.createObserver();
|
|
126
128
|
}
|
|
127
|
-
createAndRegisterIndexMap(indexName, mapType, initValueOrFn) {
|
|
128
|
-
return this.registerMap(indexName, (0, _maps.createIndexMap)(mapType, initValueOrFn));
|
|
129
|
+
createAndRegisterIndexMap(indexName, mapType, initValueOrFn, options) {
|
|
130
|
+
return this.registerMap(indexName, (0, _maps.createIndexMap)(mapType, initValueOrFn, options));
|
|
129
131
|
}
|
|
130
132
|
/* eslint-enable jsdoc/require-jsdoc */ /**
|
|
131
133
|
* Register map which provide some index mappings. Type of map determining to which collection it will be added.
|
|
@@ -204,9 +206,15 @@ class IndexMapper {
|
|
|
204
206
|
* @param {number} physicalIndex Physical index to search.
|
|
205
207
|
* @returns {number|null} Returns a visual index of the index mapper.
|
|
206
208
|
*/ getVisualFromPhysicalIndex(physicalIndex) {
|
|
207
|
-
|
|
208
|
-
//
|
|
209
|
-
|
|
209
|
+
// The typed-array cache coerces non-integer keys: a string like `'0'` would index slot 0 and
|
|
210
|
+
// `'__proto__'`/`'constructor'` would return prototype-chain values. The previous `Map` treated those
|
|
211
|
+
// as misses, so reject any non-integer key here to keep that exact-key semantics.
|
|
212
|
+
if (!Number.isInteger(physicalIndex)) {
|
|
213
|
+
return null;
|
|
214
|
+
}
|
|
215
|
+
const visualIndex = this.fromPhysicalToVisualIndexesCache[physicalIndex];
|
|
216
|
+
// Index in the table boundaries provided by the `DataMap`. `-1`/`undefined` means no mapping.
|
|
217
|
+
return visualIndex === undefined || visualIndex === -1 ? null : visualIndex;
|
|
210
218
|
}
|
|
211
219
|
/**
|
|
212
220
|
* Get a visual index corresponding to the given renderable index.
|
|
@@ -222,9 +230,14 @@ class IndexMapper {
|
|
|
222
230
|
* @param {number} visualIndex Visual index.
|
|
223
231
|
* @returns {null|number}
|
|
224
232
|
*/ getRenderableFromVisualIndex(visualIndex) {
|
|
225
|
-
|
|
226
|
-
//
|
|
227
|
-
|
|
233
|
+
// Reject non-integer keys (string-numeric, `'__proto__'`, etc.) to keep the previous `Map`'s
|
|
234
|
+
// exact-key semantics — see getVisualFromPhysicalIndex.
|
|
235
|
+
if (!Number.isInteger(visualIndex)) {
|
|
236
|
+
return null;
|
|
237
|
+
}
|
|
238
|
+
const renderableIndex = this.fromVisualToRenderableIndexesCache[visualIndex];
|
|
239
|
+
// Index in the renderable table boundaries. `-1`/`undefined` means no mapping.
|
|
240
|
+
return renderableIndex === undefined || renderableIndex === -1 ? null : renderableIndex;
|
|
228
241
|
}
|
|
229
242
|
/**
|
|
230
243
|
* Search for the nearest not-hidden row or column.
|
|
@@ -242,23 +255,25 @@ class IndexMapper {
|
|
|
242
255
|
if (physicalIndex === null) {
|
|
243
256
|
return null;
|
|
244
257
|
}
|
|
245
|
-
|
|
258
|
+
const renderableCache = this.fromVisualToRenderableIndexesCache;
|
|
259
|
+
const fromRenderableIndex = renderableCache[fromVisualIndex];
|
|
260
|
+
// The visual index is already visible when it has a renderable mapping. The `typeof number` check
|
|
261
|
+
// keeps non-integer keys (e.g. `'__proto__'`) from matching prototype-chain values.
|
|
262
|
+
if (typeof fromRenderableIndex === 'number' && fromRenderableIndex !== -1) {
|
|
246
263
|
return fromVisualIndex;
|
|
247
264
|
}
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
}
|
|
255
|
-
if (index === -1) {
|
|
256
|
-
if (searchAlsoOtherWayAround) {
|
|
257
|
-
return this.getNearestNotHiddenIndex(fromVisualIndex, -searchDirection, false);
|
|
265
|
+
// Scan outward for the nearest visible visual index in the requested direction
|
|
266
|
+
// (`searchDirection` is `1` or `-1`, so the same loop covers both directions).
|
|
267
|
+
const length = renderableCache.length;
|
|
268
|
+
for(let visualIndex = fromVisualIndex + searchDirection; visualIndex >= 0 && visualIndex < length; visualIndex += searchDirection){
|
|
269
|
+
if (renderableCache[visualIndex] !== -1) {
|
|
270
|
+
return visualIndex;
|
|
258
271
|
}
|
|
259
|
-
return null;
|
|
260
272
|
}
|
|
261
|
-
|
|
273
|
+
if (searchAlsoOtherWayAround) {
|
|
274
|
+
return this.getNearestNotHiddenIndex(fromVisualIndex, -searchDirection, false);
|
|
275
|
+
}
|
|
276
|
+
return null;
|
|
262
277
|
}
|
|
263
278
|
/**
|
|
264
279
|
* Set default values for all indexes in registered index maps.
|
|
@@ -333,7 +348,18 @@ class IndexMapper {
|
|
|
333
348
|
return this.notTrimmedIndexesCache;
|
|
334
349
|
}
|
|
335
350
|
const indexesSequence = this.getIndexesSequence();
|
|
336
|
-
|
|
351
|
+
// Read the merged trimming cache directly instead of calling `isTrimmed()` per element (which
|
|
352
|
+
// resolves through getMergedValueAtIndex → getMergedValues on every index). Same semantics:
|
|
353
|
+
// `isTrimmed(i) === false` ⟺ the merged value is not strictly `true`.
|
|
354
|
+
const trimmedValues = this.trimmingMapsCollection.getMergedValues();
|
|
355
|
+
const notTrimmedIndexes = [];
|
|
356
|
+
for(let i = 0; i < indexesSequence.length; i += 1){
|
|
357
|
+
const physicalIndex = indexesSequence[i];
|
|
358
|
+
if (trimmedValues[physicalIndex] !== true) {
|
|
359
|
+
notTrimmedIndexes.push(physicalIndex);
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
return notTrimmedIndexes;
|
|
337
363
|
}
|
|
338
364
|
/**
|
|
339
365
|
* Get length of all NOT trimmed indexes.
|
|
@@ -356,7 +382,15 @@ class IndexMapper {
|
|
|
356
382
|
return this.notHiddenIndexesCache;
|
|
357
383
|
}
|
|
358
384
|
const indexesSequence = this.getIndexesSequence();
|
|
359
|
-
|
|
385
|
+
const hiddenValues = this.hidingMapsCollection.getMergedValues();
|
|
386
|
+
const notHiddenIndexes = [];
|
|
387
|
+
for(let i = 0; i < indexesSequence.length; i += 1){
|
|
388
|
+
const physicalIndex = indexesSequence[i];
|
|
389
|
+
if (hiddenValues[physicalIndex] !== true) {
|
|
390
|
+
notHiddenIndexes.push(physicalIndex);
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
return notHiddenIndexes;
|
|
360
394
|
}
|
|
361
395
|
/**
|
|
362
396
|
* Get length of all NOT hidden indexes.
|
|
@@ -378,7 +412,15 @@ class IndexMapper {
|
|
|
378
412
|
return this.renderablePhysicalIndexesCache;
|
|
379
413
|
}
|
|
380
414
|
const notTrimmedIndexes = this.getNotTrimmedIndexes();
|
|
381
|
-
|
|
415
|
+
const hiddenValues = this.hidingMapsCollection.getMergedValues();
|
|
416
|
+
const renderableIndexes = [];
|
|
417
|
+
for(let i = 0; i < notTrimmedIndexes.length; i += 1){
|
|
418
|
+
const physicalIndex = notTrimmedIndexes[i];
|
|
419
|
+
if (hiddenValues[physicalIndex] !== true) {
|
|
420
|
+
renderableIndexes.push(physicalIndex);
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
return renderableIndexes;
|
|
382
424
|
}
|
|
383
425
|
/**
|
|
384
426
|
* Get length of all NOT trimmed and NOT hidden indexes.
|
|
@@ -542,13 +584,16 @@ class IndexMapper {
|
|
|
542
584
|
* @private
|
|
543
585
|
*/ cacheFromPhysicalToVisualIndexes() {
|
|
544
586
|
const nrOfNotTrimmedIndexes = this.getNotTrimmedIndexesLength();
|
|
545
|
-
this.fromPhysicalToVisualIndexesCache.
|
|
587
|
+
const cache = _class_private_method_get(this, _allocateIndexCache, allocateIndexCache).call(this, this.fromPhysicalToVisualIndexesCache, this.getNumberOfIndexes());
|
|
546
588
|
for(let visualIndex = 0; visualIndex < nrOfNotTrimmedIndexes; visualIndex += 1){
|
|
547
589
|
const physicalIndex = this.getPhysicalFromVisualIndex(visualIndex);
|
|
548
|
-
// Every visual index
|
|
549
|
-
//
|
|
550
|
-
|
|
590
|
+
// Every visual index has a corresponding physical index. Physical indexes with no visual index
|
|
591
|
+
// (trimmed indexes, beyond the table boundaries) keep the `-1` sentinel.
|
|
592
|
+
if (physicalIndex !== null) {
|
|
593
|
+
cache[physicalIndex] = visualIndex;
|
|
594
|
+
}
|
|
551
595
|
}
|
|
596
|
+
this.fromPhysicalToVisualIndexesCache = cache;
|
|
552
597
|
}
|
|
553
598
|
/**
|
|
554
599
|
* Update cache for translations from visual to renderable indexes.
|
|
@@ -556,13 +601,17 @@ class IndexMapper {
|
|
|
556
601
|
* @private
|
|
557
602
|
*/ cacheFromVisualToRenderableIndexes() {
|
|
558
603
|
const nrOfRenderableIndexes = this.getRenderableIndexesLength();
|
|
559
|
-
this.fromVisualToRenderableIndexesCache.
|
|
604
|
+
const cache = _class_private_method_get(this, _allocateIndexCache, allocateIndexCache).call(this, this.fromVisualToRenderableIndexesCache, this.getNotTrimmedIndexesLength());
|
|
560
605
|
for(let renderableIndex = 0; renderableIndex < nrOfRenderableIndexes; renderableIndex += 1){
|
|
561
606
|
// Can't use getRenderableFromVisualIndex here because we're building the cache here
|
|
562
607
|
const physicalIndex = this.getPhysicalFromRenderableIndex(renderableIndex);
|
|
563
608
|
const visualIndex = this.getVisualFromPhysicalIndex(physicalIndex);
|
|
564
|
-
|
|
609
|
+
// Visual indexes with no renderable index (hidden indexes) keep the `-1` sentinel.
|
|
610
|
+
if (visualIndex !== null) {
|
|
611
|
+
cache[visualIndex] = renderableIndex;
|
|
612
|
+
}
|
|
565
613
|
}
|
|
614
|
+
this.fromVisualToRenderableIndexesCache = cache;
|
|
566
615
|
}
|
|
567
616
|
/**
|
|
568
617
|
* Destroys the IndexMapper instance. Clears all registered map observers
|
|
@@ -578,6 +627,7 @@ class IndexMapper {
|
|
|
578
627
|
_class_private_method_init(this, _handleObservedMapChange);
|
|
579
628
|
_class_private_method_init(this, _notifyMapObservers);
|
|
580
629
|
_class_private_method_init(this, _flushDirtyObservedMaps);
|
|
630
|
+
_class_private_method_init(this, _allocateIndexCache);
|
|
581
631
|
_class_private_field_init(this, _mapObservers, {
|
|
582
632
|
writable: true,
|
|
583
633
|
value: void 0
|
|
@@ -682,17 +732,21 @@ class IndexMapper {
|
|
|
682
732
|
* @type {Array}
|
|
683
733
|
*/ this.renderablePhysicalIndexesCache = [];
|
|
684
734
|
/**
|
|
685
|
-
* Visual indexes (
|
|
735
|
+
* Visual indexes (typed array value) corresponding to physical indexes (typed array index).
|
|
736
|
+
* `-1` marks a physical index with no visual index (trimmed). Backed by a typed array instead of a
|
|
737
|
+
* `Map` to avoid per-rebuild hashing churn on large datasets.
|
|
686
738
|
*
|
|
687
739
|
* @private
|
|
688
|
-
* @type {
|
|
689
|
-
*/ this.fromPhysicalToVisualIndexesCache = new
|
|
740
|
+
* @type {Int32Array}
|
|
741
|
+
*/ this.fromPhysicalToVisualIndexesCache = new Int32Array(0);
|
|
690
742
|
/**
|
|
691
|
-
*
|
|
743
|
+
* Renderable indexes (typed array value) corresponding to visual indexes (typed array index).
|
|
744
|
+
* `-1` marks a visual index with no renderable index (hidden). Backed by a typed array instead of a
|
|
745
|
+
* `Map` to avoid per-rebuild hashing churn on large datasets.
|
|
692
746
|
*
|
|
693
747
|
* @private
|
|
694
|
-
* @type {
|
|
695
|
-
*/ this.fromVisualToRenderableIndexesCache = new
|
|
748
|
+
* @type {Int32Array}
|
|
749
|
+
*/ this.fromVisualToRenderableIndexesCache = new Int32Array(0);
|
|
696
750
|
_class_private_field_set(this, _mapObservers, new WeakMap());
|
|
697
751
|
_class_private_field_set(this, _dirtyObservedMaps, new Set());
|
|
698
752
|
this.indexesSequence.addLocalHook('change', ()=>{
|
|
@@ -741,4 +795,11 @@ function flushDirtyObservedMaps() {
|
|
|
741
795
|
_class_private_field_get(this, _dirtyObservedMaps).clear();
|
|
742
796
|
}
|
|
743
797
|
}
|
|
798
|
+
function allocateIndexCache(cache, length) {
|
|
799
|
+
if (cache.length === length) {
|
|
800
|
+
cache.fill(-1);
|
|
801
|
+
return cache;
|
|
802
|
+
}
|
|
803
|
+
return new Int32Array(length).fill(-1);
|
|
804
|
+
}
|
|
744
805
|
(0, _object.mixin)(IndexMapper, _localHooks.default);
|
|
@@ -56,12 +56,6 @@ import { mixin } from '../helpers/object.mjs';
|
|
|
56
56
|
import { isDefined } from '../helpers/mixed.mjs';
|
|
57
57
|
import { ChangesObservable } from './changesObservable/observable.mjs';
|
|
58
58
|
import { throwWithCause } from '../helpers/errors.mjs';
|
|
59
|
-
/**
|
|
60
|
-
* A set of deprecated feature names.
|
|
61
|
-
*
|
|
62
|
-
* @type {Set<string>}
|
|
63
|
-
*/ // eslint-disable-next-line no-unused-vars
|
|
64
|
-
const deprecationWarns = new Set();
|
|
65
59
|
var /**
|
|
66
60
|
* Map of observed IndexMap instances to their registered callback sets.
|
|
67
61
|
* Used by {@link IndexMapper#observeMapChange} to track which maps are being
|
|
@@ -79,7 +73,15 @@ var /**
|
|
|
79
73
|
* @param {IndexMap} map The map whose observers to notify.
|
|
80
74
|
*/ _notifyMapObservers = /*#__PURE__*/ new WeakSet(), /**
|
|
81
75
|
* Flushes all dirty observed maps collected during a batch, notifying their observers.
|
|
82
|
-
*/ _flushDirtyObservedMaps = /*#__PURE__*/ new WeakSet()
|
|
76
|
+
*/ _flushDirtyObservedMaps = /*#__PURE__*/ new WeakSet(), /**
|
|
77
|
+
* Returns a `-1`-filled `Int32Array` of the given length, reusing the passed one when its length
|
|
78
|
+
* matches so a cache rebuild does not allocate a new buffer.
|
|
79
|
+
*
|
|
80
|
+
* @private
|
|
81
|
+
* @param {Int32Array} cache The existing cache to reuse when possible.
|
|
82
|
+
* @param {number} length The required length.
|
|
83
|
+
* @returns {Int32Array}
|
|
84
|
+
*/ _allocateIndexCache = /*#__PURE__*/ new WeakSet();
|
|
83
85
|
/**
|
|
84
86
|
* @class IndexMapper
|
|
85
87
|
* @description
|
|
@@ -127,8 +129,8 @@ var /**
|
|
|
127
129
|
}
|
|
128
130
|
return this.hidingChangesObservable.createObserver();
|
|
129
131
|
}
|
|
130
|
-
createAndRegisterIndexMap(indexName, mapType, initValueOrFn) {
|
|
131
|
-
return this.registerMap(indexName, createIndexMap(mapType, initValueOrFn));
|
|
132
|
+
createAndRegisterIndexMap(indexName, mapType, initValueOrFn, options) {
|
|
133
|
+
return this.registerMap(indexName, createIndexMap(mapType, initValueOrFn, options));
|
|
132
134
|
}
|
|
133
135
|
/* eslint-enable jsdoc/require-jsdoc */ /**
|
|
134
136
|
* Register map which provide some index mappings. Type of map determining to which collection it will be added.
|
|
@@ -207,9 +209,15 @@ var /**
|
|
|
207
209
|
* @param {number} physicalIndex Physical index to search.
|
|
208
210
|
* @returns {number|null} Returns a visual index of the index mapper.
|
|
209
211
|
*/ getVisualFromPhysicalIndex(physicalIndex) {
|
|
210
|
-
|
|
211
|
-
//
|
|
212
|
-
|
|
212
|
+
// The typed-array cache coerces non-integer keys: a string like `'0'` would index slot 0 and
|
|
213
|
+
// `'__proto__'`/`'constructor'` would return prototype-chain values. The previous `Map` treated those
|
|
214
|
+
// as misses, so reject any non-integer key here to keep that exact-key semantics.
|
|
215
|
+
if (!Number.isInteger(physicalIndex)) {
|
|
216
|
+
return null;
|
|
217
|
+
}
|
|
218
|
+
const visualIndex = this.fromPhysicalToVisualIndexesCache[physicalIndex];
|
|
219
|
+
// Index in the table boundaries provided by the `DataMap`. `-1`/`undefined` means no mapping.
|
|
220
|
+
return visualIndex === undefined || visualIndex === -1 ? null : visualIndex;
|
|
213
221
|
}
|
|
214
222
|
/**
|
|
215
223
|
* Get a visual index corresponding to the given renderable index.
|
|
@@ -225,9 +233,14 @@ var /**
|
|
|
225
233
|
* @param {number} visualIndex Visual index.
|
|
226
234
|
* @returns {null|number}
|
|
227
235
|
*/ getRenderableFromVisualIndex(visualIndex) {
|
|
228
|
-
|
|
229
|
-
//
|
|
230
|
-
|
|
236
|
+
// Reject non-integer keys (string-numeric, `'__proto__'`, etc.) to keep the previous `Map`'s
|
|
237
|
+
// exact-key semantics — see getVisualFromPhysicalIndex.
|
|
238
|
+
if (!Number.isInteger(visualIndex)) {
|
|
239
|
+
return null;
|
|
240
|
+
}
|
|
241
|
+
const renderableIndex = this.fromVisualToRenderableIndexesCache[visualIndex];
|
|
242
|
+
// Index in the renderable table boundaries. `-1`/`undefined` means no mapping.
|
|
243
|
+
return renderableIndex === undefined || renderableIndex === -1 ? null : renderableIndex;
|
|
231
244
|
}
|
|
232
245
|
/**
|
|
233
246
|
* Search for the nearest not-hidden row or column.
|
|
@@ -245,23 +258,25 @@ var /**
|
|
|
245
258
|
if (physicalIndex === null) {
|
|
246
259
|
return null;
|
|
247
260
|
}
|
|
248
|
-
|
|
261
|
+
const renderableCache = this.fromVisualToRenderableIndexesCache;
|
|
262
|
+
const fromRenderableIndex = renderableCache[fromVisualIndex];
|
|
263
|
+
// The visual index is already visible when it has a renderable mapping. The `typeof number` check
|
|
264
|
+
// keeps non-integer keys (e.g. `'__proto__'`) from matching prototype-chain values.
|
|
265
|
+
if (typeof fromRenderableIndex === 'number' && fromRenderableIndex !== -1) {
|
|
249
266
|
return fromVisualIndex;
|
|
250
267
|
}
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
}
|
|
258
|
-
if (index === -1) {
|
|
259
|
-
if (searchAlsoOtherWayAround) {
|
|
260
|
-
return this.getNearestNotHiddenIndex(fromVisualIndex, -searchDirection, false);
|
|
268
|
+
// Scan outward for the nearest visible visual index in the requested direction
|
|
269
|
+
// (`searchDirection` is `1` or `-1`, so the same loop covers both directions).
|
|
270
|
+
const length = renderableCache.length;
|
|
271
|
+
for(let visualIndex = fromVisualIndex + searchDirection; visualIndex >= 0 && visualIndex < length; visualIndex += searchDirection){
|
|
272
|
+
if (renderableCache[visualIndex] !== -1) {
|
|
273
|
+
return visualIndex;
|
|
261
274
|
}
|
|
262
|
-
return null;
|
|
263
275
|
}
|
|
264
|
-
|
|
276
|
+
if (searchAlsoOtherWayAround) {
|
|
277
|
+
return this.getNearestNotHiddenIndex(fromVisualIndex, -searchDirection, false);
|
|
278
|
+
}
|
|
279
|
+
return null;
|
|
265
280
|
}
|
|
266
281
|
/**
|
|
267
282
|
* Set default values for all indexes in registered index maps.
|
|
@@ -336,7 +351,18 @@ var /**
|
|
|
336
351
|
return this.notTrimmedIndexesCache;
|
|
337
352
|
}
|
|
338
353
|
const indexesSequence = this.getIndexesSequence();
|
|
339
|
-
|
|
354
|
+
// Read the merged trimming cache directly instead of calling `isTrimmed()` per element (which
|
|
355
|
+
// resolves through getMergedValueAtIndex → getMergedValues on every index). Same semantics:
|
|
356
|
+
// `isTrimmed(i) === false` ⟺ the merged value is not strictly `true`.
|
|
357
|
+
const trimmedValues = this.trimmingMapsCollection.getMergedValues();
|
|
358
|
+
const notTrimmedIndexes = [];
|
|
359
|
+
for(let i = 0; i < indexesSequence.length; i += 1){
|
|
360
|
+
const physicalIndex = indexesSequence[i];
|
|
361
|
+
if (trimmedValues[physicalIndex] !== true) {
|
|
362
|
+
notTrimmedIndexes.push(physicalIndex);
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
return notTrimmedIndexes;
|
|
340
366
|
}
|
|
341
367
|
/**
|
|
342
368
|
* Get length of all NOT trimmed indexes.
|
|
@@ -359,7 +385,15 @@ var /**
|
|
|
359
385
|
return this.notHiddenIndexesCache;
|
|
360
386
|
}
|
|
361
387
|
const indexesSequence = this.getIndexesSequence();
|
|
362
|
-
|
|
388
|
+
const hiddenValues = this.hidingMapsCollection.getMergedValues();
|
|
389
|
+
const notHiddenIndexes = [];
|
|
390
|
+
for(let i = 0; i < indexesSequence.length; i += 1){
|
|
391
|
+
const physicalIndex = indexesSequence[i];
|
|
392
|
+
if (hiddenValues[physicalIndex] !== true) {
|
|
393
|
+
notHiddenIndexes.push(physicalIndex);
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
return notHiddenIndexes;
|
|
363
397
|
}
|
|
364
398
|
/**
|
|
365
399
|
* Get length of all NOT hidden indexes.
|
|
@@ -381,7 +415,15 @@ var /**
|
|
|
381
415
|
return this.renderablePhysicalIndexesCache;
|
|
382
416
|
}
|
|
383
417
|
const notTrimmedIndexes = this.getNotTrimmedIndexes();
|
|
384
|
-
|
|
418
|
+
const hiddenValues = this.hidingMapsCollection.getMergedValues();
|
|
419
|
+
const renderableIndexes = [];
|
|
420
|
+
for(let i = 0; i < notTrimmedIndexes.length; i += 1){
|
|
421
|
+
const physicalIndex = notTrimmedIndexes[i];
|
|
422
|
+
if (hiddenValues[physicalIndex] !== true) {
|
|
423
|
+
renderableIndexes.push(physicalIndex);
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
return renderableIndexes;
|
|
385
427
|
}
|
|
386
428
|
/**
|
|
387
429
|
* Get length of all NOT trimmed and NOT hidden indexes.
|
|
@@ -545,13 +587,16 @@ var /**
|
|
|
545
587
|
* @private
|
|
546
588
|
*/ cacheFromPhysicalToVisualIndexes() {
|
|
547
589
|
const nrOfNotTrimmedIndexes = this.getNotTrimmedIndexesLength();
|
|
548
|
-
this.fromPhysicalToVisualIndexesCache.
|
|
590
|
+
const cache = _class_private_method_get(this, _allocateIndexCache, allocateIndexCache).call(this, this.fromPhysicalToVisualIndexesCache, this.getNumberOfIndexes());
|
|
549
591
|
for(let visualIndex = 0; visualIndex < nrOfNotTrimmedIndexes; visualIndex += 1){
|
|
550
592
|
const physicalIndex = this.getPhysicalFromVisualIndex(visualIndex);
|
|
551
|
-
// Every visual index
|
|
552
|
-
//
|
|
553
|
-
|
|
593
|
+
// Every visual index has a corresponding physical index. Physical indexes with no visual index
|
|
594
|
+
// (trimmed indexes, beyond the table boundaries) keep the `-1` sentinel.
|
|
595
|
+
if (physicalIndex !== null) {
|
|
596
|
+
cache[physicalIndex] = visualIndex;
|
|
597
|
+
}
|
|
554
598
|
}
|
|
599
|
+
this.fromPhysicalToVisualIndexesCache = cache;
|
|
555
600
|
}
|
|
556
601
|
/**
|
|
557
602
|
* Update cache for translations from visual to renderable indexes.
|
|
@@ -559,13 +604,17 @@ var /**
|
|
|
559
604
|
* @private
|
|
560
605
|
*/ cacheFromVisualToRenderableIndexes() {
|
|
561
606
|
const nrOfRenderableIndexes = this.getRenderableIndexesLength();
|
|
562
|
-
this.fromVisualToRenderableIndexesCache.
|
|
607
|
+
const cache = _class_private_method_get(this, _allocateIndexCache, allocateIndexCache).call(this, this.fromVisualToRenderableIndexesCache, this.getNotTrimmedIndexesLength());
|
|
563
608
|
for(let renderableIndex = 0; renderableIndex < nrOfRenderableIndexes; renderableIndex += 1){
|
|
564
609
|
// Can't use getRenderableFromVisualIndex here because we're building the cache here
|
|
565
610
|
const physicalIndex = this.getPhysicalFromRenderableIndex(renderableIndex);
|
|
566
611
|
const visualIndex = this.getVisualFromPhysicalIndex(physicalIndex);
|
|
567
|
-
|
|
612
|
+
// Visual indexes with no renderable index (hidden indexes) keep the `-1` sentinel.
|
|
613
|
+
if (visualIndex !== null) {
|
|
614
|
+
cache[visualIndex] = renderableIndex;
|
|
615
|
+
}
|
|
568
616
|
}
|
|
617
|
+
this.fromVisualToRenderableIndexesCache = cache;
|
|
569
618
|
}
|
|
570
619
|
/**
|
|
571
620
|
* Destroys the IndexMapper instance. Clears all registered map observers
|
|
@@ -581,6 +630,7 @@ var /**
|
|
|
581
630
|
_class_private_method_init(this, _handleObservedMapChange);
|
|
582
631
|
_class_private_method_init(this, _notifyMapObservers);
|
|
583
632
|
_class_private_method_init(this, _flushDirtyObservedMaps);
|
|
633
|
+
_class_private_method_init(this, _allocateIndexCache);
|
|
584
634
|
_class_private_field_init(this, _mapObservers, {
|
|
585
635
|
writable: true,
|
|
586
636
|
value: void 0
|
|
@@ -685,17 +735,21 @@ var /**
|
|
|
685
735
|
* @type {Array}
|
|
686
736
|
*/ this.renderablePhysicalIndexesCache = [];
|
|
687
737
|
/**
|
|
688
|
-
* Visual indexes (
|
|
738
|
+
* Visual indexes (typed array value) corresponding to physical indexes (typed array index).
|
|
739
|
+
* `-1` marks a physical index with no visual index (trimmed). Backed by a typed array instead of a
|
|
740
|
+
* `Map` to avoid per-rebuild hashing churn on large datasets.
|
|
689
741
|
*
|
|
690
742
|
* @private
|
|
691
|
-
* @type {
|
|
692
|
-
*/ this.fromPhysicalToVisualIndexesCache = new
|
|
743
|
+
* @type {Int32Array}
|
|
744
|
+
*/ this.fromPhysicalToVisualIndexesCache = new Int32Array(0);
|
|
693
745
|
/**
|
|
694
|
-
*
|
|
746
|
+
* Renderable indexes (typed array value) corresponding to visual indexes (typed array index).
|
|
747
|
+
* `-1` marks a visual index with no renderable index (hidden). Backed by a typed array instead of a
|
|
748
|
+
* `Map` to avoid per-rebuild hashing churn on large datasets.
|
|
695
749
|
*
|
|
696
750
|
* @private
|
|
697
|
-
* @type {
|
|
698
|
-
*/ this.fromVisualToRenderableIndexesCache = new
|
|
751
|
+
* @type {Int32Array}
|
|
752
|
+
*/ this.fromVisualToRenderableIndexesCache = new Int32Array(0);
|
|
699
753
|
_class_private_field_set(this, _mapObservers, new WeakMap());
|
|
700
754
|
_class_private_field_set(this, _dirtyObservedMaps, new Set());
|
|
701
755
|
this.indexesSequence.addLocalHook('change', ()=>{
|
|
@@ -744,4 +798,11 @@ function flushDirtyObservedMaps() {
|
|
|
744
798
|
_class_private_field_get(this, _dirtyObservedMaps).clear();
|
|
745
799
|
}
|
|
746
800
|
}
|
|
801
|
+
function allocateIndexCache(cache, length) {
|
|
802
|
+
if (cache.length === length) {
|
|
803
|
+
cache.fill(-1);
|
|
804
|
+
return cache;
|
|
805
|
+
}
|
|
806
|
+
return new Int32Array(length).fill(-1);
|
|
807
|
+
}
|
|
747
808
|
mixin(IndexMapper, localHooks);
|
|
@@ -21,45 +21,30 @@ class AggregatedCollection extends _mapCollection.MapCollection {
|
|
|
21
21
|
if (readFromCache === true) {
|
|
22
22
|
return this.mergedValuesCache;
|
|
23
23
|
}
|
|
24
|
-
|
|
24
|
+
const maps = this.get();
|
|
25
|
+
const numberOfMaps = maps.length;
|
|
26
|
+
if (numberOfMaps === 0) {
|
|
25
27
|
return [];
|
|
26
28
|
}
|
|
27
|
-
//
|
|
28
|
-
//
|
|
29
|
-
//
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
//
|
|
34
|
-
//
|
|
35
|
-
//
|
|
36
|
-
//
|
|
37
|
-
//
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
// +---------+---------------------+
|
|
43
|
-
// | | maps |
|
|
44
|
-
// +---------+---------------------+
|
|
45
|
-
// | indexes | 0 | 1 |
|
|
46
|
-
// +---------+----------+----------+
|
|
47
|
-
// | 0 | [[ value, value ], |
|
|
48
|
-
// | 1 | [ value, value ], |
|
|
49
|
-
// | 2 | [ value, value ], |
|
|
50
|
-
// | 3 | [ value, value ], |
|
|
51
|
-
// | 4 | [ value, value ]] |
|
|
52
|
-
// +---------+----------+----------+
|
|
53
|
-
const indexesValuesMatrix = [];
|
|
54
|
-
const mapsLength = (0, _mixed.isDefined)(mapsValuesMatrix[0]) && mapsValuesMatrix[0].length || 0;
|
|
55
|
-
for(let index = 0; index < mapsLength; index += 1){
|
|
56
|
-
const valuesForIndex = [];
|
|
57
|
-
for(let mapIndex = 0; mapIndex < this.getLength(); mapIndex += 1){
|
|
58
|
-
valuesForIndex.push(mapsValuesMatrix[mapIndex][index]);
|
|
29
|
+
// Per-map value arrays. For 2 maps of length 5:
|
|
30
|
+
// maps 0 | [ value, value, value, value, value ]
|
|
31
|
+
// maps 1 | [ value, value, value, value, value ]
|
|
32
|
+
const mapsValuesMatrix = (0, _array.arrayMap)(maps, (map)=>map.getValues());
|
|
33
|
+
const indexesLength = (0, _mixed.isDefined)(mapsValuesMatrix[0]) && mapsValuesMatrix[0].length || 0;
|
|
34
|
+
const mergedValues = new Array(indexesLength);
|
|
35
|
+
// A single scratch row, reused for every index, is passed to the aggregation function instead
|
|
36
|
+
// of allocating one `[value, value, ...]` array per index. The previous matrix approach built
|
|
37
|
+
// O(rows) throwaway sub-arrays on every sort/trim/hide rebuild (the dominant cost of updateCache
|
|
38
|
+
// on large datasets). The aggregation functions read this array synchronously and never retain
|
|
39
|
+
// it, so reuse is safe.
|
|
40
|
+
const valuesForIndex = new Array(numberOfMaps);
|
|
41
|
+
for(let index = 0; index < indexesLength; index += 1){
|
|
42
|
+
for(let mapIndex = 0; mapIndex < numberOfMaps; mapIndex += 1){
|
|
43
|
+
valuesForIndex[mapIndex] = mapsValuesMatrix[mapIndex][index];
|
|
59
44
|
}
|
|
60
|
-
|
|
45
|
+
mergedValues[index] = this.aggregationFunction(valuesForIndex);
|
|
61
46
|
}
|
|
62
|
-
return
|
|
47
|
+
return mergedValues;
|
|
63
48
|
}
|
|
64
49
|
/**
|
|
65
50
|
* Get merged value for particular index.
|
|
@@ -14,45 +14,30 @@ import { isDefined } from '../../helpers/mixed.mjs';
|
|
|
14
14
|
if (readFromCache === true) {
|
|
15
15
|
return this.mergedValuesCache;
|
|
16
16
|
}
|
|
17
|
-
|
|
17
|
+
const maps = this.get();
|
|
18
|
+
const numberOfMaps = maps.length;
|
|
19
|
+
if (numberOfMaps === 0) {
|
|
18
20
|
return [];
|
|
19
21
|
}
|
|
20
|
-
//
|
|
21
|
-
//
|
|
22
|
-
//
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
//
|
|
27
|
-
//
|
|
28
|
-
//
|
|
29
|
-
//
|
|
30
|
-
//
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
// +---------+---------------------+
|
|
36
|
-
// | | maps |
|
|
37
|
-
// +---------+---------------------+
|
|
38
|
-
// | indexes | 0 | 1 |
|
|
39
|
-
// +---------+----------+----------+
|
|
40
|
-
// | 0 | [[ value, value ], |
|
|
41
|
-
// | 1 | [ value, value ], |
|
|
42
|
-
// | 2 | [ value, value ], |
|
|
43
|
-
// | 3 | [ value, value ], |
|
|
44
|
-
// | 4 | [ value, value ]] |
|
|
45
|
-
// +---------+----------+----------+
|
|
46
|
-
const indexesValuesMatrix = [];
|
|
47
|
-
const mapsLength = isDefined(mapsValuesMatrix[0]) && mapsValuesMatrix[0].length || 0;
|
|
48
|
-
for(let index = 0; index < mapsLength; index += 1){
|
|
49
|
-
const valuesForIndex = [];
|
|
50
|
-
for(let mapIndex = 0; mapIndex < this.getLength(); mapIndex += 1){
|
|
51
|
-
valuesForIndex.push(mapsValuesMatrix[mapIndex][index]);
|
|
22
|
+
// Per-map value arrays. For 2 maps of length 5:
|
|
23
|
+
// maps 0 | [ value, value, value, value, value ]
|
|
24
|
+
// maps 1 | [ value, value, value, value, value ]
|
|
25
|
+
const mapsValuesMatrix = arrayMap(maps, (map)=>map.getValues());
|
|
26
|
+
const indexesLength = isDefined(mapsValuesMatrix[0]) && mapsValuesMatrix[0].length || 0;
|
|
27
|
+
const mergedValues = new Array(indexesLength);
|
|
28
|
+
// A single scratch row, reused for every index, is passed to the aggregation function instead
|
|
29
|
+
// of allocating one `[value, value, ...]` array per index. The previous matrix approach built
|
|
30
|
+
// O(rows) throwaway sub-arrays on every sort/trim/hide rebuild (the dominant cost of updateCache
|
|
31
|
+
// on large datasets). The aggregation functions read this array synchronously and never retain
|
|
32
|
+
// it, so reuse is safe.
|
|
33
|
+
const valuesForIndex = new Array(numberOfMaps);
|
|
34
|
+
for(let index = 0; index < indexesLength; index += 1){
|
|
35
|
+
for(let mapIndex = 0; mapIndex < numberOfMaps; mapIndex += 1){
|
|
36
|
+
valuesForIndex[mapIndex] = mapsValuesMatrix[mapIndex][index];
|
|
52
37
|
}
|
|
53
|
-
|
|
38
|
+
mergedValues[index] = this.aggregationFunction(valuesForIndex);
|
|
54
39
|
}
|
|
55
|
-
return
|
|
40
|
+
return mergedValues;
|
|
56
41
|
}
|
|
57
42
|
/**
|
|
58
43
|
* Get merged value for particular index.
|