handsontable 18.0.0 → 18.1.0-rc1
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 +142 -0
- package/3rdparty/walkontable/src/axisSizing/columnUtils.mjs +137 -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 +124 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.mjs +114 -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 +251 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/index.mjs +257 -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 +116 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.mjs +112 -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 +199 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.mjs +196 -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 +116 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.mjs +110 -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 +106 -0
- package/3rdparty/walkontable/src/axisSizing/rowUtils.mjs +101 -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/coords.js +4 -9
- package/3rdparty/walkontable/src/cell/coords.mjs +4 -9
- package/3rdparty/walkontable/src/cell/range.d.ts +10 -0
- package/3rdparty/walkontable/src/cell/range.js +19 -15
- package/3rdparty/walkontable/src/cell/range.mjs +16 -12
- package/3rdparty/walkontable/src/core/_base.d.ts +21 -21
- package/3rdparty/walkontable/src/core/_base.js +47 -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 +40 -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 +41 -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 +195 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.mjs +193 -0
- package/3rdparty/walkontable/src/event.d.ts +25 -12
- package/3rdparty/walkontable/src/event.js +96 -236
- package/3rdparty/walkontable/src/event.mjs +95 -236
- 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 +10 -21
- 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 +605 -0
- package/3rdparty/walkontable/src/overlay/overlays.mjs +594 -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} +155 -50
- package/3rdparty/walkontable/src/overlay/{_base.mjs → regions/_base.mjs} +158 -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} +111 -66
- package/3rdparty/walkontable/src/overlay/{bottom.mjs → regions/bottomOverlay.mjs} +111 -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} +120 -67
- package/3rdparty/walkontable/src/overlay/{inlineStart.mjs → regions/inlineStartOverlay.mjs} +120 -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} +161 -77
- package/3rdparty/walkontable/src/overlay/{top.mjs → regions/topOverlay.mjs} +161 -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 +149 -0
- package/3rdparty/walkontable/src/overlay/resizeMonitor.mjs +148 -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 +283 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.mjs +288 -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 +542 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.mjs +550 -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 +173 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.mjs +174 -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} +65 -53
- package/3rdparty/walkontable/src/{stickyScrollStrategy.mjs → overlay/strategies/stickyScrollStrategy.mjs} +63 -50
- 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 +41 -1
- package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.mjs +42 -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 +375 -0
- package/3rdparty/walkontable/src/{renderer/table.mjs → render/tableRenderer.mjs} +152 -6
- package/3rdparty/walkontable/src/{scroll.d.ts → scroll/scroll.d.ts} +27 -10
- package/3rdparty/walkontable/src/{scroll.js → scroll/scroll.js} +104 -35
- package/3rdparty/walkontable/src/{scroll.mjs → scroll/scroll.mjs} +102 -32
- 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 +242 -12
- package/3rdparty/walkontable/src/selection/manager.mjs +243 -13
- package/3rdparty/walkontable/src/selection/scanner.js +5 -12
- package/3rdparty/walkontable/src/selection/scanner.mjs +5 -12
- 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 +290 -0
- package/3rdparty/walkontable/src/table/baseTable.mjs +278 -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} +27 -57
- package/3rdparty/walkontable/src/table/{master.mjs → regions/masterTable.mjs} +26 -56
- 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 +363 -0
- package/3rdparty/walkontable/src/viewport/viewport.mjs +355 -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/LICENSE.txt +1 -1
- package/README.md +2 -2
- package/base.d.ts +10 -2
- 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/coordsMapper/rangeToRenderableMapper.js +5 -12
- package/core/coordsMapper/rangeToRenderableMapper.mjs +5 -12
- package/core/hooks/bucket.d.ts +40 -6
- package/core/hooks/bucket.js +113 -84
- package/core/hooks/bucket.mjs +118 -84
- package/core/hooks/constants.js +254 -16
- package/core/hooks/constants.mjs +254 -16
- package/core/hooks/index.js +28 -25
- package/core/hooks/index.mjs +28 -25
- 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 +21 -14
- package/core/layout/domSlot.mjs +21 -14
- 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 +25 -13
- package/core/layout/layoutManager.mjs +26 -11
- package/core/settings.d.ts +59 -6
- package/core/types.d.ts +15 -1
- package/core/types.mjs +9 -0
- package/core.js +481 -85
- package/core.mjs +483 -87
- package/dataMap/dataMap.d.ts +3 -13
- package/dataMap/dataMap.js +101 -44
- package/dataMap/dataMap.mjs +102 -45
- 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 +490 -110
- package/dataMap/metaManager/lazyFactoryMap.mjs +504 -111
- package/dataMap/metaManager/metaLayers/cellMeta.d.ts +55 -8
- package/dataMap/metaManager/metaLayers/cellMeta.js +112 -17
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +112 -17
- 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 +712 -31
- package/dataMap/metaManager/metaSchema.mjs +712 -31
- package/dataMap/metaManager/mods/dynamicCellMeta.d.ts +24 -10
- package/dataMap/metaManager/mods/dynamicCellMeta.js +245 -28
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +246 -29
- package/dataMap/metaManager/mods/extendMetaProperties.js +4 -9
- package/dataMap/metaManager/mods/extendMetaProperties.mjs +4 -9
- package/dataMap/sourceDataValidator.d.ts +13 -21
- package/dataMap/sourceDataValidator.js +39 -29
- package/dataMap/sourceDataValidator.mjs +50 -33
- package/dist/handsontable.full.js +34553 -9903
- package/dist/handsontable.full.min.js +168 -112
- package/dist/handsontable.js +31541 -13409
- 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 +1 -3
- package/editorManager.mjs +1 -3
- package/editors/autocompleteEditor/autocompleteEditor.js +48 -22
- package/editors/autocompleteEditor/autocompleteEditor.mjs +48 -22
- package/editors/baseEditor/baseEditor.d.ts +15 -3
- package/editors/baseEditor/baseEditor.js +6 -6
- package/editors/baseEditor/baseEditor.mjs +16 -6
- 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/controllers/dropdownController.js +5 -12
- package/editors/multiSelectEditor/controllers/dropdownController.mjs +5 -12
- package/editors/multiSelectEditor/controllers/inputController.js +1 -3
- package/editors/multiSelectEditor/controllers/inputController.mjs +1 -3
- package/editors/multiSelectEditor/multiSelectEditor.js +16 -21
- package/editors/multiSelectEditor/multiSelectEditor.mjs +17 -22
- package/editors/passwordEditor/passwordEditor.js +5 -12
- package/editors/passwordEditor/passwordEditor.mjs +5 -12
- package/editors/registry.js +4 -9
- package/editors/registry.mjs +4 -9
- 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 +84 -14
- package/focusManager/grid.mjs +80 -15
- 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/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 +27 -3
- package/helpers/dom/element.js +92 -16
- package/helpers/dom/element.mjs +107 -17
- 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/i18n/languages/ar-AR.js +8 -19
- package/i18n/languages/cs-CZ.js +8 -19
- package/i18n/languages/de-CH.js +8 -19
- package/i18n/languages/de-DE.js +8 -19
- package/i18n/languages/en-US.js +8 -19
- package/i18n/languages/es-MX.js +8 -19
- package/i18n/languages/fa-IR.d.ts +1 -0
- package/i18n/languages/fa-IR.js +9 -19
- package/i18n/languages/fa-IR.mjs +1 -0
- package/i18n/languages/fr-FR.js +8 -19
- package/i18n/languages/hr-HR.js +8 -19
- package/i18n/languages/it-IT.js +8 -19
- package/i18n/languages/ja-JP.js +8 -19
- package/i18n/languages/ko-KR.js +8 -19
- package/i18n/languages/lv-LV.js +8 -19
- package/i18n/languages/nb-NO.js +8 -19
- package/i18n/languages/nl-NL.js +8 -19
- package/i18n/languages/pl-PL.js +8 -19
- package/i18n/languages/pt-BR.js +8 -19
- package/i18n/languages/ru-RU.js +8 -19
- package/i18n/languages/sr-SP.js +8 -19
- package/i18n/languages/zh-CN.js +8 -19
- package/i18n/languages/zh-TW.js +8 -19
- package/i18n/registry.js +8 -19
- package/index.d.ts +2 -2
- package/index.js +8 -19
- 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 +506 -94
- package/plugins/autoColumnSize/autoColumnSize.mjs +513 -95
- package/plugins/autoRowSize/autoRowSize.d.ts +40 -5
- package/plugins/autoRowSize/autoRowSize.js +73 -36
- package/plugins/autoRowSize/autoRowSize.mjs +103 -41
- package/plugins/autofill/autofill.js +35 -24
- package/plugins/autofill/autofill.mjs +35 -24
- package/plugins/base/base.d.ts +10 -0
- package/plugins/base/base.js +5 -12
- package/plugins/base/base.mjs +5 -12
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.js +4 -9
- package/plugins/bindRowsWithHeaders/bindRowsWithHeaders.mjs +4 -9
- package/plugins/collapsibleColumns/collapsibleColumns.d.ts +4 -0
- package/plugins/collapsibleColumns/collapsibleColumns.js +94 -20
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +98 -20
- package/plugins/columnSorting/columnSorting.d.ts +31 -2
- package/plugins/columnSorting/columnSorting.js +153 -33
- package/plugins/columnSorting/columnSorting.mjs +155 -35
- 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 +13 -14
- package/plugins/columnSummary/columnSummary.mjs +13 -14
- package/plugins/columnSummary/endpoints.d.ts +69 -2
- package/plugins/columnSummary/endpoints.js +176 -29
- package/plugins/columnSummary/endpoints.mjs +176 -29
- package/plugins/comments/commentEditor.js +5 -10
- package/plugins/comments/commentEditor.mjs +6 -11
- package/plugins/comments/comments.js +5 -12
- package/plugins/comments/comments.mjs +5 -12
- package/plugins/comments/contextMenuItem/addEditComment.js +8 -19
- package/plugins/comments/contextMenuItem/readOnlyComment.js +8 -19
- package/plugins/comments/contextMenuItem/removeComment.js +8 -19
- package/plugins/comments/editorResizeObserver.js +5 -12
- package/plugins/comments/editorResizeObserver.mjs +5 -12
- package/plugins/contextMenu/contextMenu.d.ts +12 -1
- package/plugins/contextMenu/contextMenu.js +34 -15
- package/plugins/contextMenu/contextMenu.mjs +34 -15
- package/plugins/contextMenu/index.d.ts +1 -1
- package/plugins/contextMenu/menu/menu.d.ts +22 -1
- package/plugins/contextMenu/menu/menu.js +216 -15
- package/plugins/contextMenu/menu/menu.mjs +217 -16
- package/plugins/contextMenu/menu/positioner.js +4 -9
- package/plugins/contextMenu/menu/positioner.mjs +4 -9
- package/plugins/contextMenu/predefinedItems/alignment.js +22 -33
- package/plugins/contextMenu/predefinedItems/alignment.mjs +14 -14
- package/plugins/contextMenu/predefinedItems/clearColumn.js +9 -20
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/columnLeft.js +8 -19
- package/plugins/contextMenu/predefinedItems/columnRight.js +8 -19
- package/plugins/contextMenu/predefinedItems/index.js +8 -19
- package/plugins/contextMenu/predefinedItems/readOnly.js +11 -22
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +3 -3
- package/plugins/contextMenu/predefinedItems/redo.js +8 -19
- package/plugins/contextMenu/predefinedItems/removeColumn.js +8 -19
- package/plugins/contextMenu/predefinedItems/removeRow.js +8 -19
- package/plugins/contextMenu/predefinedItems/rowAbove.js +8 -19
- package/plugins/contextMenu/predefinedItems/rowBelow.js +8 -19
- package/plugins/contextMenu/predefinedItems/undo.js +8 -19
- package/plugins/contextMenu/utils.js +1 -1
- package/plugins/contextMenu/utils.mjs +1 -1
- package/plugins/copyPaste/contextMenuItem/cut.js +8 -19
- package/plugins/copyPaste/copyPaste.js +62 -20
- package/plugins/copyPaste/copyPaste.mjs +63 -21
- package/plugins/copyPaste/copyableRanges.js +11 -14
- package/plugins/copyPaste/copyableRanges.mjs +11 -14
- package/plugins/copyPaste/pasteEvent.d.ts +1 -1
- package/plugins/customBorders/contextMenuItem/bottom.js +8 -19
- package/plugins/customBorders/contextMenuItem/left.js +8 -19
- package/plugins/customBorders/contextMenuItem/noBorders.js +8 -19
- package/plugins/customBorders/contextMenuItem/right.js +8 -19
- package/plugins/customBorders/contextMenuItem/top.js +8 -19
- package/plugins/customBorders/customBorders.d.ts +21 -40
- package/plugins/customBorders/customBorders.js +1084 -223
- package/plugins/customBorders/customBorders.mjs +1078 -206
- 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.js +35 -38
- package/plugins/dataProvider/dataProvider.mjs +27 -19
- package/plugins/dataProvider/query/crud.js +1 -1
- package/plugins/dataProvider/query/crud.mjs +1 -1
- package/plugins/dialog/dialog.js +15 -33
- package/plugins/dialog/dialog.mjs +7 -14
- package/plugins/dialog/ui.js +5 -12
- package/plugins/dialog/ui.mjs +5 -12
- package/plugins/dragToScroll/autoScroller.js +4 -9
- package/plugins/dragToScroll/autoScroller.mjs +4 -9
- package/plugins/dragToScroll/dragToScroll.d.ts +2 -2
- package/plugins/dragToScroll/dragToScroll.js +155 -26
- package/plugins/dragToScroll/dragToScroll.mjs +156 -27
- package/plugins/dragToScroll/scrollTimer.js +4 -9
- package/plugins/dragToScroll/scrollTimer.mjs +4 -9
- package/plugins/dropdownMenu/dropdownMenu.d.ts +5 -1
- package/plugins/dropdownMenu/dropdownMenu.js +50 -15
- package/plugins/dropdownMenu/dropdownMenu.mjs +51 -16
- package/plugins/dropdownMenu/index.d.ts +1 -0
- package/plugins/emptyDataState/emptyDataState.js +15 -33
- package/plugins/emptyDataState/emptyDataState.mjs +7 -14
- package/plugins/emptyDataState/ui.js +4 -9
- package/plugins/emptyDataState/ui.mjs +4 -9
- package/plugins/exportFile/dataProvider.js +5 -1
- package/plugins/exportFile/dataProvider.mjs +5 -1
- package/plugins/exportFile/exportFile.js +13 -31
- package/plugins/exportFile/exportFile.mjs +5 -12
- package/plugins/exportFile/types/csv.js +1 -3
- package/plugins/exportFile/types/csv.mjs +1 -3
- 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 +10 -3
- package/plugins/exportFile/types/xlsx.mjs +11 -4
- 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/actionBar.js +9 -22
- package/plugins/filters/component/actionBar.mjs +1 -3
- package/plugins/filters/component/condition.d.ts +1 -0
- package/plugins/filters/component/condition.js +11 -22
- package/plugins/filters/component/condition.mjs +3 -3
- package/plugins/filters/component/operators.js +1 -3
- package/plugins/filters/component/operators.mjs +1 -3
- package/plugins/filters/component/value.d.ts +5 -6
- package/plugins/filters/component/value.js +62 -56
- package/plugins/filters/component/value.mjs +55 -38
- package/plugins/filters/condition/beginsWith.js +8 -19
- package/plugins/filters/condition/between.js +8 -19
- package/plugins/filters/condition/contains.js +8 -19
- package/plugins/filters/condition/date/after.js +10 -20
- package/plugins/filters/condition/date/after.mjs +2 -1
- package/plugins/filters/condition/date/afterOrEqual.js +10 -20
- package/plugins/filters/condition/date/afterOrEqual.mjs +2 -1
- package/plugins/filters/condition/date/before.js +10 -20
- package/plugins/filters/condition/date/before.mjs +2 -1
- package/plugins/filters/condition/date/beforeOrEqual.js +10 -20
- package/plugins/filters/condition/date/beforeOrEqual.mjs +2 -1
- package/plugins/filters/condition/date/today.js +8 -19
- package/plugins/filters/condition/date/tomorrow.js +8 -19
- package/plugins/filters/condition/date/yesterday.js +8 -19
- package/plugins/filters/condition/empty.js +8 -19
- package/plugins/filters/condition/endsWith.js +8 -19
- package/plugins/filters/condition/equal.d.ts +7 -0
- package/plugins/filters/condition/equal.js +12 -19
- package/plugins/filters/condition/equal.mjs +10 -0
- package/plugins/filters/condition/greaterThan.js +8 -19
- package/plugins/filters/condition/greaterThanOrEqual.js +8 -19
- package/plugins/filters/condition/intlDate/after.js +8 -19
- package/plugins/filters/condition/intlDate/afterOrEqual.js +8 -19
- package/plugins/filters/condition/intlDate/before.js +8 -19
- package/plugins/filters/condition/intlDate/beforeOrEqual.js +8 -19
- package/plugins/filters/condition/intlDate/between.js +8 -19
- package/plugins/filters/condition/intlDate/today.js +8 -19
- package/plugins/filters/condition/intlDate/tomorrow.js +8 -19
- package/plugins/filters/condition/intlDate/yesterday.js +8 -19
- 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 +66 -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 +66 -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 +66 -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 +66 -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 +67 -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 +65 -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 +66 -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 +66 -0
- package/plugins/filters/condition/intlDatetime/yesterday.mjs +21 -0
- package/plugins/filters/condition/intlTime/after.js +8 -19
- package/plugins/filters/condition/intlTime/afterOrEqual.js +8 -19
- package/plugins/filters/condition/intlTime/before.js +8 -19
- package/plugins/filters/condition/intlTime/beforeOrEqual.js +8 -19
- package/plugins/filters/condition/intlTime/between.js +8 -19
- package/plugins/filters/condition/lessThan.js +8 -19
- package/plugins/filters/condition/lessThanOrEqual.js +8 -19
- package/plugins/filters/condition/none.js +8 -19
- package/plugins/filters/condition/notBetween.js +8 -19
- package/plugins/filters/condition/notContains.js +8 -19
- package/plugins/filters/condition/notEmpty.js +8 -19
- package/plugins/filters/condition/notEqual.js +8 -19
- 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 +144 -52
- package/plugins/filters/conditionUpdateObserver.mjs +144 -52
- 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 +104 -62
- package/plugins/filters/filters.mjs +97 -44
- package/plugins/filters/logicalOperations/conjunction.js +8 -19
- package/plugins/filters/logicalOperations/disjunction.js +8 -19
- package/plugins/filters/logicalOperations/disjunctionWithExtraCondition.js +8 -19
- 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/_base.js +8 -19
- package/plugins/filters/ui/input.d.ts +4 -0
- package/plugins/filters/ui/input.js +23 -18
- package/plugins/filters/ui/input.mjs +23 -18
- package/plugins/filters/ui/link.js +4 -9
- package/plugins/filters/ui/link.mjs +4 -9
- package/plugins/filters/ui/multipleSelect.js +40 -35
- package/plugins/filters/ui/multipleSelect.mjs +32 -16
- package/plugins/filters/ui/radioInput.js +4 -9
- package/plugins/filters/ui/radioInput.mjs +4 -9
- package/plugins/filters/ui/select.js +14 -32
- package/plugins/filters/ui/select.mjs +6 -13
- 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 +748 -55
- package/plugins/formulas/formulas.mjs +752 -57
- 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 +77 -27
- package/plugins/formulas/indexSyncer/axisSyncer.mjs +77 -27
- package/plugins/formulas/indexSyncer/index.js +4 -9
- package/plugins/formulas/indexSyncer/index.mjs +4 -9
- 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/hideColumn.js +8 -19
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +14 -20
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +6 -1
- package/plugins/hiddenColumns/hiddenColumns.js +11 -15
- package/plugins/hiddenColumns/hiddenColumns.mjs +11 -15
- package/plugins/hiddenRows/contextMenuItem/hideRow.js +8 -19
- package/plugins/hiddenRows/contextMenuItem/showRow.js +14 -20
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +6 -1
- package/plugins/hiddenRows/hiddenRows.js +11 -15
- package/plugins/hiddenRows/hiddenRows.mjs +11 -15
- package/plugins/index.d.ts +5 -1
- package/plugins/index.js +10 -0
- package/plugins/index.mjs +5 -1
- package/plugins/loading/loading.js +13 -31
- package/plugins/loading/loading.mjs +5 -12
- package/plugins/manualColumnFreeze/contextMenuItem/freezeColumn.js +8 -19
- package/plugins/manualColumnFreeze/contextMenuItem/unfreezeColumn.js +8 -19
- package/plugins/manualColumnFreeze/manualColumnFreeze.js +5 -12
- package/plugins/manualColumnFreeze/manualColumnFreeze.mjs +5 -12
- package/plugins/manualColumnMove/manualColumnMove.d.ts +10 -0
- package/plugins/manualColumnMove/manualColumnMove.js +128 -33
- package/plugins/manualColumnMove/manualColumnMove.mjs +129 -34
- package/plugins/manualColumnResize/manualColumnResize.d.ts +12 -1
- package/plugins/manualColumnResize/manualColumnResize.js +28 -17
- package/plugins/manualColumnResize/manualColumnResize.mjs +28 -17
- package/plugins/manualRowMove/manualRowMove.js +5 -12
- package/plugins/manualRowMove/manualRowMove.mjs +5 -12
- package/plugins/manualRowResize/manualRowResize.d.ts +13 -2
- package/plugins/manualRowResize/manualRowResize.js +29 -18
- package/plugins/manualRowResize/manualRowResize.mjs +29 -18
- package/plugins/mergeCells/cellCoords.d.ts +8 -0
- package/plugins/mergeCells/cellCoords.js +15 -9
- package/plugins/mergeCells/cellCoords.mjs +15 -9
- package/plugins/mergeCells/cellsCollection.d.ts +46 -2
- package/plugins/mergeCells/cellsCollection.js +190 -71
- package/plugins/mergeCells/cellsCollection.mjs +190 -71
- package/plugins/mergeCells/contextMenuItem/toggleMerge.js +8 -19
- package/plugins/mergeCells/focusOrder.d.ts +26 -20
- package/plugins/mergeCells/focusOrder.js +363 -189
- package/plugins/mergeCells/focusOrder.mjs +368 -184
- package/plugins/mergeCells/mergeCells.d.ts +13 -8
- package/plugins/mergeCells/mergeCells.js +327 -76
- package/plugins/mergeCells/mergeCells.mjs +327 -76
- 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 +595 -0
- package/plugins/moveCells/moveCells.mjs +580 -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 +266 -58
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +266 -58
- package/plugins/nestedHeaders/nestedHeaders.d.ts +10 -1
- package/plugins/nestedHeaders/nestedHeaders.js +227 -35
- package/plugins/nestedHeaders/nestedHeaders.mjs +227 -35
- 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/headersTree.js +4 -9
- package/plugins/nestedHeaders/stateManager/headersTree.mjs +4 -9
- package/plugins/nestedHeaders/stateManager/index.d.ts +76 -13
- package/plugins/nestedHeaders/stateManager/index.js +386 -50
- package/plugins/nestedHeaders/stateManager/index.mjs +387 -51
- 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 +24 -13
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +24 -13
- 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 +1 -3
- package/plugins/nestedHeaders/utils/ghostTable.mjs +1 -3
- 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 +332 -17
- package/plugins/nestedRows/nestedRows.mjs +332 -17
- package/plugins/nestedRows/ui/collapsing.d.ts +58 -0
- package/plugins/nestedRows/ui/collapsing.js +234 -40
- package/plugins/nestedRows/ui/collapsing.mjs +234 -40
- package/plugins/nestedRows/ui/contextMenu.js +12 -28
- package/plugins/nestedRows/ui/contextMenu.mjs +4 -9
- package/plugins/notification/notification.js +13 -31
- package/plugins/notification/notification.mjs +5 -12
- package/plugins/notification/ui.js +4 -9
- package/plugins/notification/ui.mjs +4 -9
- package/plugins/pagination/pagination.js +7 -14
- package/plugins/pagination/pagination.mjs +7 -14
- package/plugins/pagination/ui.js +13 -31
- package/plugins/pagination/ui.mjs +5 -12
- package/plugins/search/search.js +27 -11
- package/plugins/search/search.mjs +27 -11
- 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 +335 -0
- package/plugins/selectionHandles/selectionHandles.mjs +316 -0
- package/plugins/stretchColumns/calculator.js +5 -12
- package/plugins/stretchColumns/calculator.mjs +5 -12
- package/plugins/stretchColumns/strategies/last.js +4 -9
- package/plugins/stretchColumns/strategies/last.mjs +4 -9
- package/plugins/stretchColumns/stretchColumns.js +4 -9
- package/plugins/stretchColumns/stretchColumns.mjs +4 -9
- package/plugins/touchScroll/touchScroll.js +4 -9
- package/plugins/touchScroll/touchScroll.mjs +4 -9
- package/plugins/trimRows/trimRows.d.ts +1 -1
- package/plugins/trimRows/trimRows.js +10 -11
- package/plugins/trimRows/trimRows.mjs +10 -11
- 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 +40 -11
- package/plugins/undoRedo/undoRedo.mjs +40 -11
- 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 +161 -0
- package/renderSizeProbe.mjs +174 -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/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/highlight.js +1 -3
- package/selection/highlight/highlight.mjs +1 -3
- 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 +162 -36
- package/selection/selection.mjs +154 -17
- package/selection/transformation/_base.js +5 -12
- package/selection/transformation/_base.mjs +5 -12
- 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.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 +211 -53
- package/tableView.mjs +212 -54
- package/themes/engine/builder.js +5 -12
- package/themes/engine/builder.mjs +5 -12
- 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 +247 -18
- package/themes/engine/manager.mjs +254 -18
- 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/changesObservable/observable.js +4 -9
- package/translations/changesObservable/observable.mjs +4 -9
- package/translations/changesObservable/observer.js +4 -9
- package/translations/changesObservable/observer.mjs +4 -9
- package/translations/indexMapper.d.ts +14 -9
- package/translations/indexMapper.js +109 -49
- package/translations/indexMapper.mjs +109 -49
- 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 +293 -0
- package/translations/maps/booleanMap.mjs +301 -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 +73 -6
- package/translations/maps/indexMap.mjs +73 -6
- package/translations/maps/indexesSequence.d.ts +53 -2
- package/translations/maps/indexesSequence.js +218 -3
- package/translations/maps/indexesSequence.mjs +226 -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 +58 -11
- package/utils/ghostTable.mjs +58 -11
- package/utils/interval.js +5 -12
- package/utils/interval.mjs +5 -12
- 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 +1 -1
- package/utils/parseTable.mjs +1 -1
- package/utils/samplesGenerator.d.ts +41 -14
- package/utils/samplesGenerator.js +112 -42
- package/utils/samplesGenerator.mjs +112 -42
- package/utils/stylesHandler.d.ts +13 -0
- package/utils/stylesHandler.js +60 -14
- package/utils/stylesHandler.mjs +60 -14
- 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
|
@@ -15,6 +15,8 @@ const _nodeModifiers = require("./nodeModifiers");
|
|
|
15
15
|
const _tree = require("./nodeModifiers/utils/tree");
|
|
16
16
|
const _matrixGenerator = require("./matrixGenerator");
|
|
17
17
|
const _syncVisibility = require("./syncVisibility");
|
|
18
|
+
const _deriveSettings = require("./deriveSettings");
|
|
19
|
+
const _columnArrangement = require("./columnArrangement");
|
|
18
20
|
const _tree1 = require("../../../utils/dataStructures/tree");
|
|
19
21
|
function _check_private_redeclaration(obj, privateCollection) {
|
|
20
22
|
if (privateCollection.has(obj)) {
|
|
@@ -22,15 +24,12 @@ function _check_private_redeclaration(obj, privateCollection) {
|
|
|
22
24
|
}
|
|
23
25
|
}
|
|
24
26
|
function _class_apply_descriptor_get(receiver, descriptor) {
|
|
25
|
-
if (descriptor.get)
|
|
26
|
-
return descriptor.get.call(receiver);
|
|
27
|
-
}
|
|
27
|
+
if (descriptor.get) return descriptor.get.call(receiver);
|
|
28
28
|
return descriptor.value;
|
|
29
29
|
}
|
|
30
30
|
function _class_apply_descriptor_set(receiver, descriptor, value) {
|
|
31
|
-
if (descriptor.set)
|
|
32
|
-
|
|
33
|
-
} else {
|
|
31
|
+
if (descriptor.set) descriptor.set.call(receiver, value);
|
|
32
|
+
else {
|
|
34
33
|
if (!descriptor.writable) {
|
|
35
34
|
throw new TypeError("attempted to set read only private field");
|
|
36
35
|
}
|
|
@@ -38,9 +37,7 @@ function _class_apply_descriptor_set(receiver, descriptor, value) {
|
|
|
38
37
|
}
|
|
39
38
|
}
|
|
40
39
|
function _class_extract_field_descriptor(receiver, privateMap, action) {
|
|
41
|
-
if (!privateMap.has(receiver))
|
|
42
|
-
throw new TypeError("attempted to " + action + " private field on non-instance");
|
|
43
|
-
}
|
|
40
|
+
if (!privateMap.has(receiver)) throw new TypeError("attempted to " + action + " private field on non-instance");
|
|
44
41
|
return privateMap.get(receiver);
|
|
45
42
|
}
|
|
46
43
|
function _class_private_field_get(receiver, privateMap) {
|
|
@@ -57,9 +54,7 @@ function _class_private_field_set(receiver, privateMap, value) {
|
|
|
57
54
|
return value;
|
|
58
55
|
}
|
|
59
56
|
function _class_private_method_get(receiver, privateSet, fn) {
|
|
60
|
-
if (!privateSet.has(receiver))
|
|
61
|
-
throw new TypeError("attempted to get private field on non-instance");
|
|
62
|
-
}
|
|
57
|
+
if (!privateSet.has(receiver)) throw new TypeError("attempted to get private field on non-instance");
|
|
63
58
|
return fn;
|
|
64
59
|
}
|
|
65
60
|
function _class_private_method_init(obj, privateSet) {
|
|
@@ -71,7 +66,7 @@ function _interop_require_default(obj) {
|
|
|
71
66
|
default: obj
|
|
72
67
|
};
|
|
73
68
|
}
|
|
74
|
-
var _sourceSettings1 = /*#__PURE__*/ new WeakMap(), _headersTree1 = /*#__PURE__*/ new WeakMap(), /**
|
|
69
|
+
var _sourceSettings1 = /*#__PURE__*/ new WeakMap(), _derivedSettings = /*#__PURE__*/ new WeakMap(), _headersTree1 = /*#__PURE__*/ new WeakMap(), /**
|
|
75
70
|
* Cached matrix which is generated from the tree structure.
|
|
76
71
|
*
|
|
77
72
|
* @private
|
|
@@ -80,6 +75,33 @@ var _sourceSettings1 = /*#__PURE__*/ new WeakMap(), _headersTree1 = /*#__PURE__*
|
|
|
80
75
|
* The last column-visibility adapter passed to syncVisibility(). Stored so that
|
|
81
76
|
* mapState()/mergeStateWith() can re-apply it after rebuilding the tree.
|
|
82
77
|
*/ _lastColumnVisibility = /*#__PURE__*/ new WeakMap(), /**
|
|
78
|
+
* The column arrangement the headers tree is derived against. When null, an identity arrangement
|
|
79
|
+
* (visual equals physical) is used, which reproduces the authored structure. The plugin sets a
|
|
80
|
+
* live adapter so the structure follows column moves.
|
|
81
|
+
*/ _columnArrangement1 = /*#__PURE__*/ new WeakMap(), /**
|
|
82
|
+
* Per-column membership overrides set by column moves (`physical -> level -> owner identity`). They
|
|
83
|
+
* re-parent a moved column into the cohesive (`columnDropMode: 'adopt'`) group it was dropped inside, or
|
|
84
|
+
* mark it standalone when it left its group - the piece a pure derive cannot infer from the final
|
|
85
|
+
* arrangement alone. Consumed by `#deriveTree`. Empty means "use the authored structure".
|
|
86
|
+
*/ _membershipOverrides = /*#__PURE__*/ new WeakMap(), /**
|
|
87
|
+
* Captures the header level and authored group identity of every currently collapsed group, so the
|
|
88
|
+
* collapsed state can be re-attached after a move re-derives the tree.
|
|
89
|
+
*
|
|
90
|
+
* @returns {Array<{headerLevel: number, authoredColumnIndex: number}>}
|
|
91
|
+
*/ _snapshotCollapsedGroups = /*#__PURE__*/ new WeakSet(), /**
|
|
92
|
+
* Re-collapses the groups captured by #snapshotCollapsedGroups() on the freshly re-derived tree,
|
|
93
|
+
* matching by authored identity. A group that maps to exactly one node stayed contiguous and is
|
|
94
|
+
* re-collapsed; a group that maps to more than one node was split by the move and is left expanded.
|
|
95
|
+
*
|
|
96
|
+
* @param {Array<{headerLevel: number, authoredColumnIndex: number}>} collapsedGroups The captured groups.
|
|
97
|
+
*/ _reapplyCollapsedGroupsByIdentity = /*#__PURE__*/ new WeakSet(), /**
|
|
98
|
+
* Finds every tree node at the given header level that was derived from the given authored owner
|
|
99
|
+
* column. More than one match means the authored group is split across non-adjacent visual columns.
|
|
100
|
+
*
|
|
101
|
+
* @param {number} headerLevel Header level index.
|
|
102
|
+
* @param {number} authoredColumnIndex The authored owner column index identifying the group.
|
|
103
|
+
* @returns {TreeNode[]} The matching nodes.
|
|
104
|
+
*/ _findNodesByAuthoredIdentity = /*#__PURE__*/ new WeakSet(), /**
|
|
83
105
|
* Rebuilds the header tree after a structural mutation while preserving the collapsed state.
|
|
84
106
|
*
|
|
85
107
|
* Visibility is derived BEFORE re-collapsing, so collapseNode picks the correct first *visible*
|
|
@@ -104,6 +126,16 @@ var _sourceSettings1 = /*#__PURE__*/ new WeakMap(), _headersTree1 = /*#__PURE__*
|
|
|
104
126
|
* @param {Array<{headerLevel: number, columnIndex: number}>} collapsedNodes The captured nodes.
|
|
105
127
|
* @param {Function} shiftColumnIndex Maps an old visual column index to the new one.
|
|
106
128
|
*/ _reapplyCollapsedNodes = /*#__PURE__*/ new WeakSet(), /**
|
|
129
|
+
* Applies a NodeModifiers action to the tree WITHOUT regenerating the state matrix, and reports
|
|
130
|
+
* whether a node was actually modified. Callers that batch several modifications (re-applying
|
|
131
|
+
* collapse after a re-derive) use this and regenerate the matrix once at the end, instead of paying
|
|
132
|
+
* a full whole-matrix regeneration per modified node.
|
|
133
|
+
*
|
|
134
|
+
* @param {string} action An action name to trigger.
|
|
135
|
+
* @param {number} headerLevel Header level index.
|
|
136
|
+
* @param {number} columnIndex A visual column index.
|
|
137
|
+
* @returns {{ actionResult: NodeModificationResult|undefined, modified: boolean }}
|
|
138
|
+
*/ _applyNodeModification = /*#__PURE__*/ new WeakSet(), /**
|
|
107
139
|
* Re-applies the last column visibility adapter after a tree rebuild, so that mapState() and
|
|
108
140
|
* mergeStateWith() calls from CollapsibleColumns do not discard visibility state set earlier.
|
|
109
141
|
* The collapsed state is restored separately by #rebuildPreservingCollapse re-running the collapse.
|
|
@@ -111,7 +143,36 @@ var _sourceSettings1 = /*#__PURE__*/ new WeakMap(), _headersTree1 = /*#__PURE__*
|
|
|
111
143
|
* Re-derives tree-node visibility (colspan, isHidden, crossHiddenColumns) from the last column
|
|
112
144
|
* visibility adapter WITHOUT regenerating the state matrix. Used as the first pass of
|
|
113
145
|
* #rebuildPreservingCollapse, where the matrix would be immediately discarded by re-collapsing.
|
|
114
|
-
*/ _deriveVisibility = /*#__PURE__*/ new WeakSet()
|
|
146
|
+
*/ _deriveVisibility = /*#__PURE__*/ new WeakSet(), /**
|
|
147
|
+
* Derives the visual-order settings from the authored source settings, then builds the headers
|
|
148
|
+
* tree from them. The headers tree is therefore always a function of the authored configuration
|
|
149
|
+
* and the current column arrangement. With the identity arrangement the derived settings equal the
|
|
150
|
+
* authored ones, so the built tree is identical to building directly from the authored settings; a
|
|
151
|
+
* non-identity arrangement (a column move) makes the structure follow the data.
|
|
152
|
+
*/ _deriveTree = /*#__PURE__*/ new WeakSet(), /**
|
|
153
|
+
* Resolves the owner a moved column takes at an enclosing level (at or outside its cohesive adoption
|
|
154
|
+
* level), so the adopted column is contained by the same group its visual neighbors belong to. Uses
|
|
155
|
+
* the neighbors' shared effective owner when they agree (which keeps the run contiguous, never
|
|
156
|
+
* straddling), and otherwise falls back to the authored ancestor of the adopted group's anchor.
|
|
157
|
+
*
|
|
158
|
+
* @param {number} visualColumn - The column's post-move visual index.
|
|
159
|
+
* @param {number} level - The enclosing header level.
|
|
160
|
+
* @param {Function} enclosingOwnerAt - Resolves the owner shared by both neighbors, or -1.
|
|
161
|
+
* @param {Function} authoredOwnerAt - Resolves the authored owner of a (visual, level).
|
|
162
|
+
* @param {number[][]} ownerIndexByLevel - The authored owner column index per (level, column).
|
|
163
|
+
* @returns {number} The owner identity the column takes at this level.
|
|
164
|
+
*/ _adoptedAncestorOwner = /*#__PURE__*/ new WeakSet(), /**
|
|
165
|
+
* Clears all move-driven membership overrides. Call when the authored structure changes - a fresh
|
|
166
|
+
* config (setState) or an index-shifting insert/remove - because the overrides are keyed by physical
|
|
167
|
+
* column and their owner identities index the authored structure, both invalidated by such a change.
|
|
168
|
+
*/ _resetMembershipOverrides = /*#__PURE__*/ new WeakSet(), /**
|
|
169
|
+
* Records or clears one membership override.
|
|
170
|
+
*
|
|
171
|
+
* @param {number} physical - The physical column index.
|
|
172
|
+
* @param {number} level - The header level.
|
|
173
|
+
* @param {number|null} identity - The owner identity to record (`>= 0` group, `< 0` standalone), or
|
|
174
|
+
* `null` to clear it (fall back to the authored structure).
|
|
175
|
+
*/ _setMembershipOverride = /*#__PURE__*/ new WeakSet();
|
|
115
176
|
class StateManager {
|
|
116
177
|
/**
|
|
117
178
|
* Sets a new state for the nested headers plugin based on settings passed
|
|
@@ -121,11 +182,15 @@ class StateManager {
|
|
|
121
182
|
* @returns {boolean} Returns `true` if the settings are processed correctly, `false` otherwise.
|
|
122
183
|
*/ setState(nestedHeadersSettings) {
|
|
123
184
|
_class_private_field_get(this, _sourceSettings1).setData(nestedHeadersSettings);
|
|
185
|
+
// A fresh authored configuration invalidates move-driven membership overrides (their owner
|
|
186
|
+
// identities index the previous structure), so reset them.
|
|
187
|
+
_class_private_method_get(this, _resetMembershipOverrides, resetMembershipOverrides).call(this);
|
|
124
188
|
let hasError = false;
|
|
125
189
|
try {
|
|
126
|
-
|
|
190
|
+
_class_private_method_get(this, _deriveTree, deriveTree).call(this);
|
|
127
191
|
} catch (ex) {
|
|
128
192
|
_class_private_field_get(this, _headersTree1).clear();
|
|
193
|
+
_class_private_field_get(this, _derivedSettings).clear();
|
|
129
194
|
_class_private_field_get(this, _sourceSettings1).clear();
|
|
130
195
|
hasError = true;
|
|
131
196
|
}
|
|
@@ -140,6 +205,32 @@ class StateManager {
|
|
|
140
205
|
_class_private_field_get(this, _sourceSettings1).setColumnsLimit(columnsCount);
|
|
141
206
|
}
|
|
142
207
|
/**
|
|
208
|
+
* Sets the column arrangement the headers tree is derived against. Pass a live adapter (backed by
|
|
209
|
+
* the column index mapper) so the rendered structure follows column moves, or `null` to fall back
|
|
210
|
+
* to the identity arrangement (authored structure). Does not rebuild on its own - call
|
|
211
|
+
* `rebuildState()` (or any structural mutation) to re-derive the tree.
|
|
212
|
+
*
|
|
213
|
+
* @param {ColumnArrangement|null} columnArrangement The arrangement to derive against, or null.
|
|
214
|
+
*/ setColumnArrangement(columnArrangement) {
|
|
215
|
+
_class_private_field_set(this, _columnArrangement1, columnArrangement);
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Re-derives the headers tree from the current authored settings and column arrangement, preserving
|
|
219
|
+
* the collapsed state and re-applying visibility. Call this when only the arrangement changed (a
|
|
220
|
+
* column move) and no structural mutation of the authored settings is needed.
|
|
221
|
+
*
|
|
222
|
+
* Collapse is re-attached by authored group identity (not visual column index, which the move just
|
|
223
|
+
* changed): a group that stayed contiguous is re-collapsed at its new position; a group split apart
|
|
224
|
+
* by the move auto-expands (its collapse is dropped), since a non-contiguous group cannot stay
|
|
225
|
+
* collapsed coherently.
|
|
226
|
+
*/ rebuildState() {
|
|
227
|
+
const collapsedGroups = _class_private_method_get(this, _snapshotCollapsedGroups, snapshotCollapsedGroups).call(this);
|
|
228
|
+
_class_private_method_get(this, _deriveTree, deriveTree).call(this);
|
|
229
|
+
_class_private_method_get(this, _deriveVisibility, deriveVisibility).call(this);
|
|
230
|
+
_class_private_method_get(this, _reapplyCollapsedGroupsByIdentity, reapplyCollapsedGroupsByIdentity).call(this, collapsedGroups);
|
|
231
|
+
_class_private_method_get(this, _applySyncVisibility, applySyncVisibility).call(this);
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
143
234
|
* Merges settings with current plugin state.
|
|
144
235
|
*
|
|
145
236
|
* @param {object[]} settings An array of objects to merge with the current source settings.
|
|
@@ -162,30 +253,51 @@ class StateManager {
|
|
|
162
253
|
_class_private_method_get(this, _rebuildPreservingCollapse, rebuildPreservingCollapse).call(this, ()=>_class_private_field_get(this, _sourceSettings1).map(callback), (columnIndex)=>columnIndex);
|
|
163
254
|
}
|
|
164
255
|
/**
|
|
165
|
-
* Inserts `amount` columns into the source settings
|
|
166
|
-
*
|
|
167
|
-
*
|
|
256
|
+
* Inserts `amount` columns into the source settings, then rebuilds the tree and re-derives
|
|
257
|
+
* visibility. Headers spanning the insertion point are extended; columns inserted at a header
|
|
258
|
+
* boundary become standalone headers.
|
|
259
|
+
*
|
|
260
|
+
* The authored source settings are keyed by physical column, while the collapsed state is keyed by
|
|
261
|
+
* visual column - so the insertion takes both indexes. They are equal when no column move is active;
|
|
262
|
+
* after a move they differ, and using each in its own space keeps headers and collapse aligned.
|
|
168
263
|
*
|
|
169
|
-
* @param {number}
|
|
264
|
+
* @param {number} visualColumnIndex The visual index the columns were inserted at (collapse space).
|
|
265
|
+
* @param {number} physicalColumnIndex The physical index the columns were inserted at (source space).
|
|
170
266
|
* @param {number} amount The number of columns to insert.
|
|
171
|
-
*/ insertColumns(
|
|
172
|
-
|
|
267
|
+
*/ insertColumns(visualColumnIndex, physicalColumnIndex, amount) {
|
|
268
|
+
// An index-shifting structural change invalidates move-driven membership overrides (keyed by
|
|
269
|
+
// physical column, with owner identities indexing the authored structure - both shifted here).
|
|
270
|
+
_class_private_method_get(this, _resetMembershipOverrides, resetMembershipOverrides).call(this);
|
|
271
|
+
_class_private_method_get(this, _rebuildPreservingCollapse, rebuildPreservingCollapse).call(this, ()=>_class_private_field_get(this, _sourceSettings1).insertColumns(physicalColumnIndex, amount), (c)=>c >= visualColumnIndex ? c + amount : c);
|
|
173
272
|
}
|
|
174
273
|
/**
|
|
175
|
-
* Removes
|
|
176
|
-
*
|
|
177
|
-
*
|
|
178
|
-
*
|
|
179
|
-
*
|
|
180
|
-
*
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
274
|
+
* Removes the given columns from the source settings, then rebuilds the tree and re-derives
|
|
275
|
+
* visibility. Headers overlapping the removed columns are shrunk, re-anchored, or dropped when they
|
|
276
|
+
* lose all their columns.
|
|
277
|
+
*
|
|
278
|
+
* The removed columns are identified by physical index (authored source settings are physical-keyed)
|
|
279
|
+
* and may be non-contiguous after a column move; they are removed highest-index-first so the lower
|
|
280
|
+
* indexes stay valid. The collapsed state is shifted in visual space, which an insert/remove always
|
|
281
|
+
* changes the same way regardless of any active move.
|
|
282
|
+
*
|
|
283
|
+
* @param {number} visualColumnIndex The visual index the columns were removed from (collapse space).
|
|
284
|
+
* @param {number} amount The number of columns removed (length of `physicalColumns`).
|
|
285
|
+
* @param {number[]} physicalColumns The physical indexes of the removed columns (source space).
|
|
286
|
+
*/ removeColumns(visualColumnIndex, amount, physicalColumns) {
|
|
287
|
+
const endIndex = visualColumnIndex + amount;
|
|
288
|
+
// An index-shifting structural change invalidates move-driven membership overrides (keyed by
|
|
289
|
+
// physical column, with owner identities indexing the authored structure - both shifted here).
|
|
290
|
+
_class_private_method_get(this, _resetMembershipOverrides, resetMembershipOverrides).call(this);
|
|
291
|
+
_class_private_method_get(this, _rebuildPreservingCollapse, rebuildPreservingCollapse).call(this, ()=>{
|
|
292
|
+
[
|
|
293
|
+
...physicalColumns
|
|
294
|
+
].sort((a, b)=>b - a).forEach((physicalColumn)=>_class_private_field_get(this, _sourceSettings1).removeColumns(physicalColumn, 1));
|
|
295
|
+
}, (c)=>{
|
|
296
|
+
if (c < visualColumnIndex) {
|
|
185
297
|
return c;
|
|
186
298
|
}
|
|
187
299
|
// The anchor column was removed but the group may survive - re-anchor to the range start.
|
|
188
|
-
return c >= endIndex ? c - amount :
|
|
300
|
+
return c >= endIndex ? c - amount : visualColumnIndex;
|
|
189
301
|
});
|
|
190
302
|
}
|
|
191
303
|
/**
|
|
@@ -194,15 +306,18 @@ class StateManager {
|
|
|
194
306
|
* @param {Function} callback A function that is called for every tree node.
|
|
195
307
|
* @returns {Array}
|
|
196
308
|
*/ mapNodes(callback) {
|
|
197
|
-
|
|
309
|
+
const results = [];
|
|
310
|
+
// getRoots() returns TreeNode<HeaderNodeData>, so node.data is already HeaderNodeData here - the
|
|
311
|
+
// previous `as TreeNode`/`as unknown[]` casts only threw that type away. Walk and collect directly.
|
|
312
|
+
_class_private_field_get(this, _headersTree1).getRoots().forEach((rootNode)=>{
|
|
198
313
|
rootNode.walkDown((node)=>{
|
|
199
314
|
const result = callback(node.data);
|
|
200
315
|
if (result !== undefined) {
|
|
201
|
-
|
|
316
|
+
results.push(result);
|
|
202
317
|
}
|
|
203
318
|
});
|
|
204
|
-
|
|
205
|
-
|
|
319
|
+
});
|
|
320
|
+
return results;
|
|
206
321
|
}
|
|
207
322
|
/**
|
|
208
323
|
* Triggers an action from the NodeModifiers module.
|
|
@@ -212,16 +327,11 @@ class StateManager {
|
|
|
212
327
|
* @param {number} columnIndex A visual column index.
|
|
213
328
|
* @returns {object|undefined}
|
|
214
329
|
*/ triggerNodeModification(action, headerLevel, columnIndex) {
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
}
|
|
218
|
-
const nodeToProcess = _class_private_field_get(this, _headersTree1).getNode(headerLevel, columnIndex);
|
|
219
|
-
let actionResult;
|
|
220
|
-
if (nodeToProcess) {
|
|
221
|
-
actionResult = (0, _nodeModifiers.triggerNodeModification)(action, nodeToProcess, columnIndex);
|
|
330
|
+
const { actionResult, modified } = _class_private_method_get(this, _applyNodeModification, applyNodeModification).call(this, action, headerLevel, columnIndex);
|
|
331
|
+
if (modified) {
|
|
222
332
|
_class_private_field_set(this, _stateMatrix, (0, _matrixGenerator.generateMatrix)(_class_private_field_get(this, _headersTree1).getRoots()));
|
|
223
333
|
}
|
|
224
|
-
return actionResult
|
|
334
|
+
return actionResult;
|
|
225
335
|
}
|
|
226
336
|
/**
|
|
227
337
|
* Triggers an action from the NodeModifiers module starting from the lowest header.
|
|
@@ -244,6 +354,91 @@ class StateManager {
|
|
|
244
354
|
_class_private_field_set(this, _stateMatrix, (0, _matrixGenerator.generateMatrix)(_class_private_field_get(this, _headersTree1).getRoots()));
|
|
245
355
|
}
|
|
246
356
|
/**
|
|
357
|
+
* Re-parents the moved columns after a column move, recording membership overrides the derive uses
|
|
358
|
+
* to keep `columnDropMode: 'adopt'` groups cohesive. Call before `rebuildState()`.
|
|
359
|
+
*
|
|
360
|
+
* For each moved column the deepest group level at which it was dropped strictly inside a cohesive
|
|
361
|
+
* group is found first. From that level outward the column joins that group's ancestor chain (the
|
|
362
|
+
* group the column visually sits inside at each enclosing level), so a splitting ancestor grows
|
|
363
|
+
* to contain the adopted column instead of the inner run straddling its boundary. At every other
|
|
364
|
+
* level (deeper than the adoption, or none found) the column keeps its group when still beside a
|
|
365
|
+
* sibling, else goes standalone. The decisions are taken from the pre-update layout, then applied,
|
|
366
|
+
* so a whole group moved together (each member adjacent to a sibling) stays intact.
|
|
367
|
+
*
|
|
368
|
+
* @param {number[]} movedVisualColumns - The post-move visual indexes of the columns that moved.
|
|
369
|
+
*/ reparentColumns(movedVisualColumns) {
|
|
370
|
+
const arrangement = _class_private_field_get(this, _columnArrangement1) ?? (0, _columnArrangement.createIdentityColumnArrangement)();
|
|
371
|
+
const authoredLayers = _class_private_field_get(this, _sourceSettings1).getData();
|
|
372
|
+
const layersCount = authoredLayers.length;
|
|
373
|
+
const columnsCount = layersCount > 0 ? authoredLayers[0].length : 0;
|
|
374
|
+
if (layersCount <= 1 || columnsCount === 0) {
|
|
375
|
+
return; // a single header level is all leaves - nothing to re-parent
|
|
376
|
+
}
|
|
377
|
+
const ownerIndexByLevel = authoredLayers.map((layer)=>(0, _deriveSettings.computeOwnerIndex)(layer));
|
|
378
|
+
// Effective owner = the move override if any, else the authored owner (see resolveOwnerKey).
|
|
379
|
+
const effectiveOwnerAt = (visualColumn, level)=>{
|
|
380
|
+
const physical = arrangement.getPhysicalFromVisual(visualColumn);
|
|
381
|
+
return (0, _deriveSettings.resolveOwnerKey)(physical, ownerIndexByLevel[level], _class_private_field_get(this, _membershipOverrides).get(physical)?.get(level));
|
|
382
|
+
};
|
|
383
|
+
// Authored owner ignores any override - the group the column belongs to in the authored config.
|
|
384
|
+
const authoredOwnerAt = (visualColumn, level)=>{
|
|
385
|
+
const physical = arrangement.getPhysicalFromVisual(visualColumn);
|
|
386
|
+
return (0, _deriveSettings.resolveOwnerKey)(physical, ownerIndexByLevel[level]);
|
|
387
|
+
};
|
|
388
|
+
// The columns moved together in this operation. Their mutual adjacency must be skipped when
|
|
389
|
+
// looking for the group a moved column sits inside, so a whole group dropped into another cohesive
|
|
390
|
+
// group is adopted as a block (each member's neighbor toward the block is a fellow moved column,
|
|
391
|
+
// not the surrounding group).
|
|
392
|
+
const movedSet = new Set(movedVisualColumns);
|
|
393
|
+
// The effective owner shared by the columns flanking the moved block at a level (the group the
|
|
394
|
+
// block sits strictly inside), or -1 when they differ or the block sits at an edge. Fellow moved
|
|
395
|
+
// columns are stepped over so the whole block is judged against the columns surrounding it.
|
|
396
|
+
const enclosingOwnerAt = (visualColumn, level)=>{
|
|
397
|
+
let left = visualColumn - 1;
|
|
398
|
+
let right = visualColumn + 1;
|
|
399
|
+
while(left >= 0 && movedSet.has(left)){
|
|
400
|
+
left -= 1;
|
|
401
|
+
}
|
|
402
|
+
while(right < columnsCount && movedSet.has(right)){
|
|
403
|
+
right += 1;
|
|
404
|
+
}
|
|
405
|
+
if (left < 0 || right >= columnsCount) {
|
|
406
|
+
return -1;
|
|
407
|
+
}
|
|
408
|
+
const leftOwner = effectiveOwnerAt(left, level);
|
|
409
|
+
return leftOwner === effectiveOwnerAt(right, level) && leftOwner >= 0 ? leftOwner : -1;
|
|
410
|
+
};
|
|
411
|
+
// Decide from the current layout first, then apply, so moved siblings see each other's old owner.
|
|
412
|
+
const decisions = [];
|
|
413
|
+
movedVisualColumns.forEach((visualColumn)=>{
|
|
414
|
+
const physical = arrangement.getPhysicalFromVisual(visualColumn);
|
|
415
|
+
// Deepest level at which the column was dropped strictly inside a cohesive group. The adoption
|
|
416
|
+
// there propagates outward through the group's ancestors (see #adoptedAncestorOwner).
|
|
417
|
+
let adoptionLevel = -1;
|
|
418
|
+
for(let level = 0; level < layersCount - 1; level++){
|
|
419
|
+
const enclosing = enclosingOwnerAt(visualColumn, level);
|
|
420
|
+
if (enclosing >= 0 && authoredLayers[level][enclosing]?.columnDropMode !== 'split') {
|
|
421
|
+
adoptionLevel = level;
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
for(let level = 0; level < layersCount - 1; level++){
|
|
425
|
+
const authoredOwner = authoredOwnerAt(visualColumn, level);
|
|
426
|
+
// At or inside the adoption level the column joins the cohesive group's ancestor chain;
|
|
427
|
+
// anywhere else it reverts to its authored owner, so a column moved out of a group keeps its
|
|
428
|
+
// own ancestor labels and the group renders a same-label banner over each contiguous run.
|
|
429
|
+
const target = level <= adoptionLevel ? _class_private_method_get(this, _adoptedAncestorOwner, adoptedAncestorOwner).call(this, visualColumn, level, enclosingOwnerAt, authoredOwnerAt, ownerIndexByLevel) : authoredOwner;
|
|
430
|
+
decisions.push({
|
|
431
|
+
physical,
|
|
432
|
+
level,
|
|
433
|
+
identity: target === authoredOwner ? null : target
|
|
434
|
+
});
|
|
435
|
+
}
|
|
436
|
+
});
|
|
437
|
+
decisions.forEach(({ physical, level, identity })=>{
|
|
438
|
+
_class_private_method_get(this, _setMembershipOverride, setMembershipOverride).call(this, physical, level, identity);
|
|
439
|
+
});
|
|
440
|
+
}
|
|
441
|
+
/**
|
|
247
442
|
* @memberof StateManager#
|
|
248
443
|
* @function rowCoordsToLevel
|
|
249
444
|
*
|
|
@@ -420,11 +615,13 @@ class StateManager {
|
|
|
420
615
|
return _class_private_field_get(this, _sourceSettings1).getLayersCount();
|
|
421
616
|
}
|
|
422
617
|
/**
|
|
423
|
-
* Gets
|
|
618
|
+
* Gets the number of columns the rendered header structure spans (the visual width). This reads
|
|
619
|
+
* the derived settings, so it matches the generated matrix and the current column arrangement.
|
|
620
|
+
* With an identity arrangement it equals the authored column count.
|
|
424
621
|
*
|
|
425
622
|
* @returns {number}
|
|
426
623
|
*/ getColumnsCount() {
|
|
427
|
-
return _class_private_field_get(this,
|
|
624
|
+
return _class_private_field_get(this, _derivedSettings).getColumnsCount();
|
|
428
625
|
}
|
|
429
626
|
/**
|
|
430
627
|
* Computes the visual column indexes that should be hidden purely by the `visibleWhen` rules of
|
|
@@ -480,21 +677,54 @@ class StateManager {
|
|
|
480
677
|
return columnsToHide;
|
|
481
678
|
}
|
|
482
679
|
/**
|
|
680
|
+
* Gets every currently collapsed group as its header level and the visual column span it covers
|
|
681
|
+
* (its left-edge visual column index and original colspan). Used to detect, before a column move,
|
|
682
|
+
* whether the move would split a collapsed group.
|
|
683
|
+
*
|
|
684
|
+
* @returns {Array<{headerLevel: number, columnIndex: number, origColspan: number}>}
|
|
685
|
+
*/ getCollapsedGroups() {
|
|
686
|
+
const groups = [];
|
|
687
|
+
_class_private_field_get(this, _headersTree1).getRoots().forEach((rootNode)=>{
|
|
688
|
+
rootNode.walkDown((node)=>{
|
|
689
|
+
const { isCollapsed, headerLevel, columnIndex, origColspan } = node.data;
|
|
690
|
+
if (isCollapsed) {
|
|
691
|
+
groups.push({
|
|
692
|
+
headerLevel,
|
|
693
|
+
columnIndex,
|
|
694
|
+
origColspan
|
|
695
|
+
});
|
|
696
|
+
}
|
|
697
|
+
});
|
|
698
|
+
});
|
|
699
|
+
return groups;
|
|
700
|
+
}
|
|
701
|
+
/**
|
|
483
702
|
* Clears the column state manager to the initial state.
|
|
484
703
|
*/ clear() {
|
|
485
704
|
_class_private_field_set(this, _stateMatrix, []);
|
|
486
705
|
_class_private_field_get(this, _sourceSettings1).clear();
|
|
706
|
+
_class_private_field_get(this, _derivedSettings).clear();
|
|
487
707
|
_class_private_field_get(this, _headersTree1).clear();
|
|
488
708
|
_class_private_field_set(this, _lastColumnVisibility, null);
|
|
709
|
+
_class_private_field_set(this, _membershipOverrides, new Map());
|
|
489
710
|
}
|
|
490
711
|
constructor(){
|
|
712
|
+
_class_private_method_init(this, _snapshotCollapsedGroups);
|
|
713
|
+
_class_private_method_init(this, _reapplyCollapsedGroupsByIdentity);
|
|
714
|
+
_class_private_method_init(this, _findNodesByAuthoredIdentity);
|
|
491
715
|
_class_private_method_init(this, _rebuildPreservingCollapse);
|
|
492
716
|
_class_private_method_init(this, _snapshotCollapsedNodes);
|
|
493
717
|
_class_private_method_init(this, _reapplyCollapsedNodes);
|
|
718
|
+
_class_private_method_init(this, _applyNodeModification);
|
|
494
719
|
_class_private_method_init(this, _applySyncVisibility);
|
|
495
720
|
_class_private_method_init(this, _deriveVisibility);
|
|
721
|
+
_class_private_method_init(this, _deriveTree);
|
|
722
|
+
_class_private_method_init(this, _adoptedAncestorOwner);
|
|
723
|
+
_class_private_method_init(this, _resetMembershipOverrides);
|
|
724
|
+
_class_private_method_init(this, _setMembershipOverride);
|
|
496
725
|
/**
|
|
497
|
-
* The
|
|
726
|
+
* The authored (physical-order) source settings - the normalized user configuration. All
|
|
727
|
+
* structural mutations (setData, mergeWith, map, insertColumns, removeColumns) operate on this.
|
|
498
728
|
*
|
|
499
729
|
* @private
|
|
500
730
|
* @type {SourceSettings}
|
|
@@ -503,6 +733,17 @@ class StateManager {
|
|
|
503
733
|
value: void 0
|
|
504
734
|
});
|
|
505
735
|
/**
|
|
736
|
+
* Visual-order settings derived from #sourceSettings through deriveVisualSettings(). The headers
|
|
737
|
+
* tree is built from these, so the rendered structure follows the current column arrangement. With
|
|
738
|
+
* an identity arrangement they equal the authored settings, so the built tree is unchanged.
|
|
739
|
+
*
|
|
740
|
+
* @private
|
|
741
|
+
* @type {SourceSettings}
|
|
742
|
+
*/ _class_private_field_init(this, _derivedSettings, {
|
|
743
|
+
writable: true,
|
|
744
|
+
value: void 0
|
|
745
|
+
});
|
|
746
|
+
/**
|
|
506
747
|
* The instance of the headers tree.
|
|
507
748
|
*
|
|
508
749
|
* @private
|
|
@@ -519,18 +760,64 @@ class StateManager {
|
|
|
519
760
|
writable: true,
|
|
520
761
|
value: void 0
|
|
521
762
|
});
|
|
763
|
+
_class_private_field_init(this, _columnArrangement1, {
|
|
764
|
+
writable: true,
|
|
765
|
+
value: void 0
|
|
766
|
+
});
|
|
767
|
+
_class_private_field_init(this, _membershipOverrides, {
|
|
768
|
+
writable: true,
|
|
769
|
+
value: void 0
|
|
770
|
+
});
|
|
522
771
|
_class_private_field_set(this, _sourceSettings1, new _sourceSettings.default());
|
|
523
|
-
_class_private_field_set(this,
|
|
772
|
+
_class_private_field_set(this, _derivedSettings, new _sourceSettings.default());
|
|
773
|
+
_class_private_field_set(this, _headersTree1, new _headersTree.default(_class_private_field_get(this, _derivedSettings)));
|
|
524
774
|
_class_private_field_set(this, _stateMatrix, [
|
|
525
775
|
[]
|
|
526
776
|
]);
|
|
527
777
|
_class_private_field_set(this, _lastColumnVisibility, null);
|
|
778
|
+
_class_private_field_set(this, _columnArrangement1, null);
|
|
779
|
+
_class_private_field_set(this, _membershipOverrides, new Map());
|
|
528
780
|
}
|
|
529
781
|
}
|
|
782
|
+
function snapshotCollapsedGroups() {
|
|
783
|
+
const groups = [];
|
|
784
|
+
_class_private_field_get(this, _headersTree1).getRoots().forEach((rootNode)=>{
|
|
785
|
+
rootNode.walkDown((node)=>{
|
|
786
|
+
const { isCollapsed, headerLevel, authoredColumnIndex } = node.data;
|
|
787
|
+
if (isCollapsed && typeof authoredColumnIndex === 'number' && authoredColumnIndex >= 0) {
|
|
788
|
+
groups.push({
|
|
789
|
+
headerLevel,
|
|
790
|
+
authoredColumnIndex
|
|
791
|
+
});
|
|
792
|
+
}
|
|
793
|
+
});
|
|
794
|
+
});
|
|
795
|
+
return groups;
|
|
796
|
+
}
|
|
797
|
+
function reapplyCollapsedGroupsByIdentity(collapsedGroups) {
|
|
798
|
+
collapsedGroups.forEach(({ headerLevel, authoredColumnIndex })=>{
|
|
799
|
+
const matches = _class_private_method_get(this, _findNodesByAuthoredIdentity, findNodesByAuthoredIdentity).call(this, headerLevel, authoredColumnIndex);
|
|
800
|
+
if (matches.length === 1) {
|
|
801
|
+
// Matrix-free: the trailing #applySyncVisibility regenerates the matrix once for all groups.
|
|
802
|
+
_class_private_method_get(this, _applyNodeModification, applyNodeModification).call(this, 'collapse', headerLevel, matches[0].data.columnIndex);
|
|
803
|
+
}
|
|
804
|
+
});
|
|
805
|
+
}
|
|
806
|
+
function findNodesByAuthoredIdentity(headerLevel, authoredColumnIndex) {
|
|
807
|
+
const matches = [];
|
|
808
|
+
_class_private_field_get(this, _headersTree1).getRoots().forEach((rootNode)=>{
|
|
809
|
+
rootNode.walkDown((node)=>{
|
|
810
|
+
if (node.data.headerLevel === headerLevel && node.data.authoredColumnIndex === authoredColumnIndex) {
|
|
811
|
+
matches.push(node);
|
|
812
|
+
}
|
|
813
|
+
});
|
|
814
|
+
});
|
|
815
|
+
return matches;
|
|
816
|
+
}
|
|
530
817
|
function rebuildPreservingCollapse(mutate, shiftColumnIndex) {
|
|
531
818
|
const collapsedNodes = _class_private_method_get(this, _snapshotCollapsedNodes, snapshotCollapsedNodes).call(this);
|
|
532
819
|
mutate();
|
|
533
|
-
|
|
820
|
+
_class_private_method_get(this, _deriveTree, deriveTree).call(this);
|
|
534
821
|
// Derive visibility before re-collapsing, but skip the matrix here - #reapplyCollapsedNodes
|
|
535
822
|
// reads the tree (not the matrix) and the trailing #applySyncVisibility regenerates it once,
|
|
536
823
|
// so building the matrix at this point would only be discarded work.
|
|
@@ -555,9 +842,26 @@ function snapshotCollapsedNodes() {
|
|
|
555
842
|
}
|
|
556
843
|
function reapplyCollapsedNodes(collapsedNodes, shiftColumnIndex) {
|
|
557
844
|
collapsedNodes.forEach(({ headerLevel, columnIndex })=>{
|
|
558
|
-
|
|
845
|
+
// Matrix-free: the trailing #applySyncVisibility regenerates the matrix once for all nodes.
|
|
846
|
+
_class_private_method_get(this, _applyNodeModification, applyNodeModification).call(this, 'collapse', headerLevel, shiftColumnIndex(columnIndex));
|
|
559
847
|
});
|
|
560
848
|
}
|
|
849
|
+
function applyNodeModification(action, headerLevel, columnIndex) {
|
|
850
|
+
if (headerLevel < 0) {
|
|
851
|
+
headerLevel = this.rowCoordsToLevel(headerLevel) ?? 0;
|
|
852
|
+
}
|
|
853
|
+
const nodeToProcess = _class_private_field_get(this, _headersTree1).getNode(headerLevel, columnIndex);
|
|
854
|
+
if (!nodeToProcess) {
|
|
855
|
+
return {
|
|
856
|
+
actionResult: undefined,
|
|
857
|
+
modified: false
|
|
858
|
+
};
|
|
859
|
+
}
|
|
860
|
+
return {
|
|
861
|
+
actionResult: (0, _nodeModifiers.triggerNodeModification)(action, nodeToProcess, columnIndex) ?? undefined,
|
|
862
|
+
modified: true
|
|
863
|
+
};
|
|
864
|
+
}
|
|
561
865
|
function applySyncVisibility() {
|
|
562
866
|
_class_private_method_get(this, _deriveVisibility, deriveVisibility).call(this);
|
|
563
867
|
_class_private_field_set(this, _stateMatrix, (0, _matrixGenerator.generateMatrix)(_class_private_field_get(this, _headersTree1).getRoots()));
|
|
@@ -567,3 +871,35 @@ function deriveVisibility() {
|
|
|
567
871
|
(0, _syncVisibility.syncVisibilityOnTree)(_class_private_field_get(this, _headersTree1).getRoots(), _class_private_field_get(this, _lastColumnVisibility));
|
|
568
872
|
}
|
|
569
873
|
}
|
|
874
|
+
function deriveTree() {
|
|
875
|
+
const arrangement = _class_private_field_get(this, _columnArrangement1) ?? (0, _columnArrangement.createIdentityColumnArrangement)();
|
|
876
|
+
_class_private_field_get(this, _derivedSettings).setNormalizedData((0, _deriveSettings.deriveVisualSettings)(_class_private_field_get(this, _sourceSettings1).getData(), arrangement, _class_private_field_get(this, _membershipOverrides)));
|
|
877
|
+
_class_private_field_get(this, _headersTree1).buildTree();
|
|
878
|
+
}
|
|
879
|
+
function adoptedAncestorOwner(visualColumn, level, enclosingOwnerAt, authoredOwnerAt, ownerIndexByLevel) {
|
|
880
|
+
const enclosing = enclosingOwnerAt(visualColumn, level);
|
|
881
|
+
if (enclosing >= 0) {
|
|
882
|
+
return enclosing;
|
|
883
|
+
}
|
|
884
|
+
// The neighbors disagree at this enclosing level; fall back to the authored ancestor of the group
|
|
885
|
+
// the column sits inside one level deeper, which is a valid (properly nested) parent.
|
|
886
|
+
const innerOwner = enclosingOwnerAt(visualColumn, level + 1);
|
|
887
|
+
return innerOwner >= 0 ? ownerIndexByLevel[level][innerOwner] : authoredOwnerAt(visualColumn, level);
|
|
888
|
+
}
|
|
889
|
+
function resetMembershipOverrides() {
|
|
890
|
+
_class_private_field_set(this, _membershipOverrides, new Map());
|
|
891
|
+
}
|
|
892
|
+
function setMembershipOverride(physical, level, identity) {
|
|
893
|
+
if (identity === null) {
|
|
894
|
+
const levels = _class_private_field_get(this, _membershipOverrides).get(physical);
|
|
895
|
+
levels?.delete(level);
|
|
896
|
+
if (levels?.size === 0) {
|
|
897
|
+
_class_private_field_get(this, _membershipOverrides).delete(physical);
|
|
898
|
+
}
|
|
899
|
+
return;
|
|
900
|
+
}
|
|
901
|
+
if (!_class_private_field_get(this, _membershipOverrides).has(physical)) {
|
|
902
|
+
_class_private_field_get(this, _membershipOverrides).set(physical, new Map());
|
|
903
|
+
}
|
|
904
|
+
_class_private_field_get(this, _membershipOverrides).get(physical).set(level, identity);
|
|
905
|
+
}
|