handsontable 18.0.0 → 18.1.0-rc7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/3rdparty/walkontable/src/axisSizing/axisSizeSource.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/axisSizeSource.d.ts +55 -0
- package/3rdparty/walkontable/src/axisSizing/axisSizeSource.js +15 -0
- package/3rdparty/walkontable/src/axisSizing/axisSizeSource.mjs +14 -0
- package/3rdparty/walkontable/src/axisSizing/boxModel.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/boxModel.d.ts +32 -0
- package/3rdparty/walkontable/src/axisSizing/boxModel.js +45 -0
- package/3rdparty/walkontable/src/axisSizing/boxModel.mjs +33 -0
- package/3rdparty/walkontable/src/axisSizing/columnUtils.d.mts +2 -0
- package/3rdparty/walkontable/src/{utils/column.d.ts → axisSizing/columnUtils.d.ts} +12 -10
- package/3rdparty/walkontable/src/axisSizing/columnUtils.js +147 -0
- package/3rdparty/walkontable/src/axisSizing/columnUtils.mjs +142 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.d.ts +58 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.js +129 -0
- package/3rdparty/walkontable/src/axisSizing/defaultSizeSource.mjs +119 -0
- package/3rdparty/walkontable/src/axisSizing/oversizedRows.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/oversizedRows.d.ts +162 -0
- package/3rdparty/walkontable/src/axisSizing/oversizedRows.js +424 -0
- package/3rdparty/walkontable/src/axisSizing/oversizedRows.mjs +522 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/index.d.ts +130 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/index.js +256 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/index.mjs +262 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.d.ts +51 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.js +121 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/prefixSumStrategy.mjs +117 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.d.ts +53 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.js +206 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/sparseStrategy.mjs +203 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.d.ts +53 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.js +40 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/strategy.mjs +41 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.d.mts +1 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.d.ts +47 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.js +121 -0
- package/3rdparty/walkontable/src/axisSizing/positionCache/uniformStrategy.mjs +115 -0
- package/3rdparty/walkontable/src/axisSizing/rowUtils.d.mts +2 -0
- package/3rdparty/walkontable/src/{utils/row.d.ts → axisSizing/rowUtils.d.ts} +11 -9
- package/3rdparty/walkontable/src/axisSizing/rowUtils.js +111 -0
- package/3rdparty/walkontable/src/axisSizing/rowUtils.mjs +106 -0
- package/3rdparty/walkontable/src/axisSizing/sizeGetters.d.mts +2 -0
- package/3rdparty/walkontable/src/axisSizing/sizeGetters.d.ts +84 -0
- package/3rdparty/walkontable/src/axisSizing/sizeGetters.js +102 -0
- package/3rdparty/walkontable/src/axisSizing/sizeGetters.mjs +92 -0
- package/3rdparty/walkontable/src/calculator/axisCalculation.d.ts +1 -1
- package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.d.ts +10 -0
- package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.js +10 -1
- package/3rdparty/walkontable/src/calculator/calculationType/renderedColumns.mjs +10 -1
- package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.d.ts +9 -0
- package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.js +9 -1
- package/3rdparty/walkontable/src/calculator/calculationType/renderedRows.mjs +9 -1
- package/3rdparty/walkontable/src/calculator/viewportColumns.d.ts +1 -1
- package/3rdparty/walkontable/src/calculator/viewportRows.d.ts +1 -1
- package/3rdparty/walkontable/src/cell/range.d.ts +10 -0
- package/3rdparty/walkontable/src/cell/range.js +14 -3
- package/3rdparty/walkontable/src/cell/range.mjs +11 -0
- package/3rdparty/walkontable/src/core/_base.d.ts +21 -21
- package/3rdparty/walkontable/src/core/_base.js +58 -147
- package/3rdparty/walkontable/src/core/_base.mjs +17 -147
- package/3rdparty/walkontable/src/core/clone.d.ts +4 -14
- package/3rdparty/walkontable/src/core/clone.js +51 -5
- package/3rdparty/walkontable/src/core/clone.mjs +10 -5
- package/3rdparty/walkontable/src/core/core.d.ts +1 -5
- package/3rdparty/walkontable/src/core/core.js +52 -47
- package/3rdparty/walkontable/src/core/core.mjs +12 -48
- package/3rdparty/walkontable/src/domMeasure/geometryReader.d.mts +1 -0
- package/3rdparty/walkontable/src/domMeasure/geometryReader.d.ts +172 -0
- package/3rdparty/walkontable/src/domMeasure/geometryReader.js +19 -0
- package/3rdparty/walkontable/src/domMeasure/geometryReader.mjs +16 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.d.mts +1 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.d.ts +134 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.js +200 -0
- package/3rdparty/walkontable/src/domMeasure/liveGeometryReader.mjs +198 -0
- package/3rdparty/walkontable/src/event.d.ts +25 -12
- package/3rdparty/walkontable/src/event.js +91 -224
- package/3rdparty/walkontable/src/event.mjs +90 -224
- package/3rdparty/walkontable/src/facade/core.d.ts +6 -6
- package/3rdparty/walkontable/src/index.d.ts +1 -1
- package/3rdparty/walkontable/src/index.js +2 -2
- package/3rdparty/walkontable/src/index.mjs +1 -1
- package/3rdparty/walkontable/src/overlay/index.d.ts +6 -6
- package/3rdparty/walkontable/src/overlay/index.js +11 -11
- package/3rdparty/walkontable/src/overlay/index.mjs +6 -6
- package/3rdparty/walkontable/src/overlay/overlays.d.ts +375 -0
- package/3rdparty/walkontable/src/overlay/overlays.js +612 -0
- package/3rdparty/walkontable/src/overlay/overlays.mjs +601 -0
- package/3rdparty/walkontable/src/overlay/{_base.d.ts → regions/_base.d.ts} +65 -16
- package/3rdparty/walkontable/src/overlay/{_base.js → regions/_base.js} +160 -50
- package/3rdparty/walkontable/src/overlay/{_base.mjs → regions/_base.mjs} +163 -47
- package/3rdparty/walkontable/src/overlay/regions/bottomInlineStartCornerOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.d.ts → regions/bottomInlineStartCornerOverlay.d.ts} +5 -10
- package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.js → regions/bottomInlineStartCornerOverlay.js} +18 -20
- package/3rdparty/walkontable/src/overlay/{bottomInlineStartCorner.mjs → regions/bottomInlineStartCornerOverlay.mjs} +18 -20
- package/3rdparty/walkontable/src/overlay/regions/bottomOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{bottom.d.ts → regions/bottomOverlay.d.ts} +16 -11
- package/3rdparty/walkontable/src/overlay/{bottom.js → regions/bottomOverlay.js} +113 -66
- package/3rdparty/walkontable/src/overlay/{bottom.mjs → regions/bottomOverlay.mjs} +113 -66
- package/3rdparty/walkontable/src/overlay/regions/inlineStartOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{inlineStart.d.ts → regions/inlineStartOverlay.d.ts} +17 -11
- package/3rdparty/walkontable/src/overlay/{inlineStart.js → regions/inlineStartOverlay.js} +122 -67
- package/3rdparty/walkontable/src/overlay/{inlineStart.mjs → regions/inlineStartOverlay.mjs} +122 -67
- package/3rdparty/walkontable/src/overlay/regions/topInlineStartCornerOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.d.ts → regions/topInlineStartCornerOverlay.d.ts} +5 -10
- package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.js → regions/topInlineStartCornerOverlay.js} +13 -16
- package/3rdparty/walkontable/src/overlay/{topInlineStartCorner.mjs → regions/topInlineStartCornerOverlay.mjs} +13 -16
- package/3rdparty/walkontable/src/overlay/regions/topOverlay.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/{top.d.ts → regions/topOverlay.d.ts} +32 -11
- package/3rdparty/walkontable/src/overlay/{top.js → regions/topOverlay.js} +163 -77
- package/3rdparty/walkontable/src/overlay/{top.mjs → regions/topOverlay.mjs} +163 -77
- package/3rdparty/walkontable/src/overlay/resizeMonitor.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/resizeMonitor.d.ts +49 -0
- package/3rdparty/walkontable/src/overlay/resizeMonitor.js +154 -0
- package/3rdparty/walkontable/src/overlay/resizeMonitor.mjs +153 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.d.ts +62 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.js +290 -0
- package/3rdparty/walkontable/src/overlay/scroll/nativeScrollInput.mjs +295 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.d.ts +176 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.js +549 -0
- package/3rdparty/walkontable/src/overlay/scroll/scrollSync.mjs +557 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.d.mts +1 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.d.ts +67 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.js +178 -0
- package/3rdparty/walkontable/src/overlay/spreaderSize.mjs +179 -0
- package/3rdparty/walkontable/src/{stickyScrollStrategy.d.ts → overlay/strategies/stickyScrollStrategy.d.ts} +33 -21
- package/3rdparty/walkontable/src/{stickyScrollStrategy.js → overlay/strategies/stickyScrollStrategy.js} +60 -41
- package/3rdparty/walkontable/src/{stickyScrollStrategy.mjs → overlay/strategies/stickyScrollStrategy.mjs} +58 -38
- package/3rdparty/walkontable/src/ports.d.mts +1 -0
- package/3rdparty/walkontable/src/ports.d.ts +54 -0
- package/3rdparty/walkontable/src/ports.js +23 -0
- package/3rdparty/walkontable/src/ports.mjs +24 -0
- package/3rdparty/walkontable/src/{renderer → render}/_base.d.ts +1 -1
- package/3rdparty/walkontable/src/{renderer → render}/cells.js +1 -1
- package/3rdparty/walkontable/src/{renderer → render}/cells.mjs +1 -1
- package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.d.ts +1 -0
- package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.js +43 -1
- package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.mjs +44 -2
- package/3rdparty/walkontable/src/render/index.d.mts +1 -0
- package/3rdparty/walkontable/src/{renderer → render}/index.d.ts +11 -3
- package/3rdparty/walkontable/src/{renderer → render}/index.js +13 -3
- package/3rdparty/walkontable/src/{renderer → render}/index.mjs +11 -1
- package/3rdparty/walkontable/src/{renderer → render}/rows.js +1 -1
- package/3rdparty/walkontable/src/{renderer → render}/rows.mjs +1 -1
- package/3rdparty/walkontable/src/render/tableRenderer.d.mts +1 -0
- package/3rdparty/walkontable/src/{renderer/table.d.ts → render/tableRenderer.d.ts} +12 -2
- package/3rdparty/walkontable/src/render/tableRenderer.js +382 -0
- package/3rdparty/walkontable/src/{renderer/table.mjs → render/tableRenderer.mjs} +159 -6
- package/3rdparty/walkontable/src/{scroll.d.ts → scroll/scroll.d.ts} +27 -10
- package/3rdparty/walkontable/src/{scroll.js → scroll/scroll.js} +108 -32
- package/3rdparty/walkontable/src/{scroll.mjs → scroll/scroll.mjs} +106 -29
- package/3rdparty/walkontable/src/selection/border/border.d.ts +313 -5
- package/3rdparty/walkontable/src/selection/border/border.js +861 -51
- package/3rdparty/walkontable/src/selection/border/border.mjs +863 -53
- package/3rdparty/walkontable/src/selection/border/types.d.ts +30 -0
- package/3rdparty/walkontable/src/selection/manager.js +237 -0
- package/3rdparty/walkontable/src/selection/manager.mjs +238 -1
- package/3rdparty/walkontable/src/settings/accessor.d.mts +2 -0
- package/3rdparty/walkontable/src/settings/accessor.d.ts +74 -0
- package/3rdparty/walkontable/src/settings/accessor.js +78 -0
- package/3rdparty/walkontable/src/settings/accessor.mjs +71 -0
- package/3rdparty/walkontable/src/settings/defaults.d.mts +1 -0
- package/3rdparty/walkontable/src/{settings.d.ts → settings/defaults.d.ts} +16 -77
- package/3rdparty/walkontable/src/settings/defaults.js +146 -0
- package/3rdparty/walkontable/src/settings/defaults.mjs +225 -0
- package/3rdparty/walkontable/src/settings/index.d.mts +1 -0
- package/3rdparty/walkontable/src/settings/index.d.ts +6 -0
- package/3rdparty/walkontable/src/settings/index.js +20 -0
- package/3rdparty/walkontable/src/settings/index.mjs +5 -0
- package/3rdparty/walkontable/src/table/baseTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/baseTable.d.ts +284 -0
- package/3rdparty/walkontable/src/table/baseTable.js +295 -0
- package/3rdparty/walkontable/src/table/baseTable.mjs +283 -0
- package/3rdparty/walkontable/src/table/cellAccess.d.mts +1 -0
- package/3rdparty/walkontable/src/table/cellAccess.d.ts +101 -0
- package/3rdparty/walkontable/src/table/cellAccess.js +238 -0
- package/3rdparty/walkontable/src/table/cellAccess.mjs +229 -0
- package/3rdparty/walkontable/src/table/domScaffold.d.mts +1 -0
- package/3rdparty/walkontable/src/table/domScaffold.d.ts +37 -0
- package/3rdparty/walkontable/src/table/domScaffold.js +145 -0
- package/3rdparty/walkontable/src/table/domScaffold.mjs +136 -0
- package/3rdparty/walkontable/src/table/drawCycle.d.mts +1 -0
- package/3rdparty/walkontable/src/table/drawCycle.d.ts +16 -0
- package/3rdparty/walkontable/src/table/drawCycle.js +405 -0
- package/3rdparty/walkontable/src/table/drawCycle.mjs +403 -0
- package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.d.mts +1 -0
- package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.d.ts +38 -0
- package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.js +15 -0
- package/3rdparty/walkontable/src/table/rangeQuery/renderedRange.mjs +14 -0
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.d.ts +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.js +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.mjs +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.d.ts +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.d.ts +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.js +1 -1
- package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.mjs +1 -1
- package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.d.mts +2 -0
- package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.d.ts +226 -0
- package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.js +251 -0
- package/3rdparty/walkontable/src/table/rangeQuery/viewportPredicates.mjs +241 -0
- package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.d.mts +1 -0
- package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.d.ts +14 -0
- package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.js +196 -0
- package/3rdparty/walkontable/src/table/rangeQuery/virtualRange.mjs +179 -0
- package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.d.ts +16 -0
- package/3rdparty/walkontable/src/table/{bottomInlineStartCorner.js → regions/bottomInlineStartCornerTable.js} +9 -12
- package/3rdparty/walkontable/src/table/regions/bottomInlineStartCornerTable.mjs +21 -0
- package/3rdparty/walkontable/src/table/regions/bottomTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/bottomTable.d.ts +15 -0
- package/3rdparty/walkontable/src/table/regions/bottomTable.js +35 -0
- package/3rdparty/walkontable/src/table/regions/bottomTable.mjs +20 -0
- package/3rdparty/walkontable/src/table/regions/inlineStartTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/inlineStartTable.d.ts +12 -0
- package/3rdparty/walkontable/src/table/regions/inlineStartTable.js +32 -0
- package/3rdparty/walkontable/src/table/regions/inlineStartTable.mjs +17 -0
- package/3rdparty/walkontable/src/table/regions/masterTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/{master.d.ts → regions/masterTable.d.ts} +4 -13
- package/3rdparty/walkontable/src/table/{master.js → regions/masterTable.js} +23 -48
- package/3rdparty/walkontable/src/table/{master.mjs → regions/masterTable.mjs} +22 -47
- package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.d.ts +16 -0
- package/3rdparty/walkontable/src/table/{topInlineStartCorner.js → regions/topInlineStartCornerTable.js} +9 -12
- package/3rdparty/walkontable/src/table/regions/topInlineStartCornerTable.mjs +21 -0
- package/3rdparty/walkontable/src/table/regions/topTable.d.mts +2 -0
- package/3rdparty/walkontable/src/table/regions/topTable.d.ts +15 -0
- package/3rdparty/walkontable/src/table/regions/topTable.js +35 -0
- package/3rdparty/walkontable/src/table/regions/topTable.mjs +20 -0
- package/3rdparty/walkontable/src/types.d.ts +7 -69
- package/3rdparty/walkontable/src/types.mjs +2 -1
- package/3rdparty/walkontable/src/utils/pointerToCoords.d.mts +1 -0
- package/3rdparty/walkontable/src/utils/{cellCoords.d.ts → pointerToCoords.d.ts} +24 -0
- package/3rdparty/walkontable/src/utils/pointerToCoords.js +181 -0
- package/3rdparty/walkontable/src/utils/pointerToCoords.mjs +186 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.d.ts +40 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.js +139 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/gatherLayoutInput.mjs +131 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.d.ts +133 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.js +18 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/layoutSnapshot.mjs +18 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.d.ts +17 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.js +104 -0
- package/3rdparty/walkontable/src/viewport/boxLayout/resolveLayout.mjs +99 -0
- package/3rdparty/walkontable/src/viewport/calculatorFactory.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/calculatorFactory.d.ts +84 -0
- package/3rdparty/walkontable/src/viewport/calculatorFactory.js +588 -0
- package/3rdparty/walkontable/src/viewport/calculatorFactory.mjs +601 -0
- package/3rdparty/walkontable/src/viewport/viewport.d.ts +267 -0
- package/3rdparty/walkontable/src/viewport/viewport.js +368 -0
- package/3rdparty/walkontable/src/viewport/viewport.mjs +360 -0
- package/3rdparty/walkontable/src/viewport/workspaceSize.d.mts +1 -0
- package/3rdparty/walkontable/src/viewport/workspaceSize.d.ts +59 -0
- package/3rdparty/walkontable/src/viewport/workspaceSize.js +284 -0
- package/3rdparty/walkontable/src/viewport/workspaceSize.mjs +282 -0
- package/3rdparty/walkontable/src/wire.d.mts +1 -0
- package/3rdparty/walkontable/src/wire.d.ts +81 -0
- package/3rdparty/walkontable/src/wire.js +56 -0
- package/3rdparty/walkontable/src/wire.mjs +56 -0
- package/CHANGELOG.md +114 -1
- package/LICENSE.txt +1 -1
- package/README.md +2 -2
- package/base.d.ts +13 -4
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/cellTypes/checkboxType/accessors/valueSetter.d.ts +1 -1
- package/cellTypes/checkboxType/accessors/valueSetter.js +3 -1
- package/cellTypes/checkboxType/accessors/valueSetter.mjs +3 -1
- package/cellTypes/index.d.ts +3 -2
- package/cellTypes/index.js +9 -0
- package/cellTypes/index.mjs +5 -2
- package/cellTypes/intlDatetimeType/index.d.mts +1 -0
- package/cellTypes/intlDatetimeType/index.d.ts +1 -0
- package/cellTypes/intlDatetimeType/index.js +19 -0
- package/cellTypes/intlDatetimeType/index.mjs +1 -0
- package/cellTypes/intlDatetimeType/intlDatetimeType.d.mts +1 -0
- package/cellTypes/intlDatetimeType/intlDatetimeType.d.ts +16 -0
- package/cellTypes/intlDatetimeType/intlDatetimeType.js +31 -0
- package/cellTypes/intlDatetimeType/intlDatetimeType.mjs +15 -0
- package/cellTypes/multiSelectType/index.d.ts +1 -1
- package/cellTypes/multiSelectType/index.js +3 -0
- package/cellTypes/multiSelectType/index.mjs +1 -1
- package/cellTypes/multiSelectType/multiSelectType.d.ts +1 -0
- package/cellTypes/multiSelectType/multiSelectType.js +4 -0
- package/cellTypes/multiSelectType/multiSelectType.mjs +1 -0
- package/cellTypes/numericType/accessors/valueSetter.js +30 -2
- package/cellTypes/numericType/accessors/valueSetter.mjs +31 -3
- package/core/hooks/bucket.d.ts +40 -6
- package/core/hooks/bucket.js +108 -72
- package/core/hooks/bucket.mjs +113 -72
- package/core/hooks/constants.js +254 -16
- package/core/hooks/constants.mjs +254 -16
- package/core/hooks/index.js +27 -22
- package/core/hooks/index.mjs +27 -22
- package/core/layout/constants.d.ts +11 -0
- package/core/layout/constants.js +6 -0
- package/core/layout/constants.mjs +12 -0
- package/core/layout/domSlot.d.ts +3 -1
- package/core/layout/domSlot.js +16 -2
- package/core/layout/domSlot.mjs +16 -2
- package/core/layout/index.d.ts +2 -2
- package/core/layout/index.js +6 -0
- package/core/layout/index.mjs +2 -2
- package/core/layout/layoutManager.d.ts +13 -0
- package/core/layout/layoutManager.js +21 -4
- package/core/layout/layoutManager.mjs +22 -2
- package/core/settings.d.ts +102 -6
- package/core/types.d.ts +15 -1
- package/core/types.mjs +9 -0
- package/core.js +534 -88
- package/core.mjs +537 -91
- package/dataMap/dataMap.d.ts +3 -13
- package/dataMap/dataMap.js +100 -41
- package/dataMap/dataMap.mjs +101 -42
- package/dataMap/dataSource.js +4 -1
- package/dataMap/dataSource.mjs +4 -1
- package/dataMap/metaManager/index.d.ts +62 -8
- package/dataMap/metaManager/index.js +66 -0
- package/dataMap/metaManager/index.mjs +66 -0
- package/dataMap/metaManager/lazyFactoryMap.d.ts +68 -43
- package/dataMap/metaManager/lazyFactoryMap.js +497 -110
- package/dataMap/metaManager/lazyFactoryMap.mjs +511 -111
- package/dataMap/metaManager/metaLayers/cellMeta.d.ts +55 -8
- package/dataMap/metaManager/metaLayers/cellMeta.js +108 -8
- package/dataMap/metaManager/metaLayers/cellMeta.mjs +108 -8
- package/dataMap/metaManager/metaLayers/columnMeta.d.ts +2 -1
- package/dataMap/metaManager/metaLayers/columnMeta.js +1 -0
- package/dataMap/metaManager/metaLayers/columnMeta.mjs +1 -0
- package/dataMap/metaManager/metaSchema.js +759 -39
- package/dataMap/metaManager/metaSchema.mjs +759 -39
- package/dataMap/metaManager/mods/dynamicCellMeta.d.ts +24 -10
- package/dataMap/metaManager/mods/dynamicCellMeta.js +252 -28
- package/dataMap/metaManager/mods/dynamicCellMeta.mjs +253 -29
- package/dataMap/sourceDataValidator.d.ts +13 -21
- package/dataMap/sourceDataValidator.js +39 -29
- package/dataMap/sourceDataValidator.mjs +50 -33
- package/dist/handsontable.full.js +30027 -11261
- package/dist/handsontable.full.min.js +168 -112
- package/dist/handsontable.js +32468 -13762
- package/dist/handsontable.min.js +172 -116
- package/dist/languages/all.js +2 -1
- package/dist/languages/all.min.js +1 -1
- package/dist/languages/fa-IR.js +2 -1
- package/dist/languages/fa-IR.min.js +1 -1
- package/dist/themes/classic.js +9 -3
- package/dist/themes/classic.min.js +4 -4
- package/dist/themes/horizon.js +9 -3
- package/dist/themes/horizon.min.js +4 -4
- package/dist/themes/main.js +9 -3
- package/dist/themes/main.min.js +4 -4
- package/dist/themes/static/variables/colors/ant.js +3 -3
- package/dist/themes/static/variables/colors/ant.min.js +3 -3
- package/dist/themes/static/variables/colors/classic.js +3 -3
- package/dist/themes/static/variables/colors/classic.min.js +3 -3
- package/dist/themes/static/variables/colors/horizon.js +3 -3
- package/dist/themes/static/variables/colors/horizon.min.js +3 -3
- package/dist/themes/static/variables/colors/main.js +3 -3
- package/dist/themes/static/variables/colors/main.min.js +3 -3
- package/dist/themes/static/variables/colors/material.js +3 -3
- package/dist/themes/static/variables/colors/material.min.js +3 -3
- package/dist/themes/static/variables/colors/shadcn.js +3 -3
- package/dist/themes/static/variables/colors/shadcn.min.js +3 -3
- package/dist/themes/static/variables/density.js +3 -3
- package/dist/themes/static/variables/density.min.js +3 -3
- package/dist/themes/static/variables/helpers/iconsMap.js +4 -9
- package/dist/themes/static/variables/helpers/iconsMap.min.js +4 -9
- package/dist/themes/static/variables/icons/horizon.js +3 -3
- package/dist/themes/static/variables/icons/horizon.min.js +3 -3
- package/dist/themes/static/variables/icons/main.js +3 -3
- package/dist/themes/static/variables/icons/main.min.js +3 -3
- package/dist/themes/static/variables/sizing.js +3 -3
- package/dist/themes/static/variables/sizing.min.js +3 -3
- package/dist/themes/static/variables/tokens/classic.js +9 -3
- package/dist/themes/static/variables/tokens/classic.min.js +4 -4
- package/dist/themes/static/variables/tokens/horizon.js +9 -3
- package/dist/themes/static/variables/tokens/horizon.min.js +4 -4
- package/dist/themes/static/variables/tokens/main.js +9 -3
- package/dist/themes/static/variables/tokens/main.min.js +4 -4
- package/editorManager.js +152 -3
- package/editorManager.mjs +152 -3
- package/editors/autocompleteEditor/autocompleteEditor.js +58 -11
- package/editors/autocompleteEditor/autocompleteEditor.mjs +59 -12
- package/editors/baseEditor/baseEditor.d.ts +15 -3
- package/editors/baseEditor/baseEditor.js +5 -3
- package/editors/baseEditor/baseEditor.mjs +15 -3
- package/editors/factory.js +5 -2
- package/editors/factory.mjs +5 -2
- package/editors/index.d.ts +3 -2
- package/editors/index.js +8 -0
- package/editors/index.mjs +3 -1
- package/editors/intlDatetimeEditor/index.d.mts +1 -0
- package/editors/intlDatetimeEditor/index.d.ts +1 -0
- package/editors/intlDatetimeEditor/index.js +19 -0
- package/editors/intlDatetimeEditor/index.mjs +1 -0
- package/editors/intlDatetimeEditor/intlDatetimeEditor.d.mts +1 -0
- package/editors/intlDatetimeEditor/intlDatetimeEditor.d.ts +42 -0
- package/editors/intlDatetimeEditor/intlDatetimeEditor.js +108 -0
- package/editors/intlDatetimeEditor/intlDatetimeEditor.mjs +93 -0
- package/editors/multiSelectEditor/multiSelectEditor.js +11 -9
- package/editors/multiSelectEditor/multiSelectEditor.mjs +12 -10
- package/editors/selectEditor/selectEditor.js +2 -1
- package/editors/selectEditor/selectEditor.mjs +2 -1
- package/editors/textEditor/textEditor.js +1 -1
- package/editors/textEditor/textEditor.mjs +2 -2
- package/eventManager.d.ts +3 -3
- package/focusManager/grid.d.ts +28 -0
- package/focusManager/grid.js +85 -2
- package/focusManager/grid.mjs +81 -3
- package/focusManager/scopeManager.js +1 -1
- package/focusManager/scopeManager.mjs +2 -2
- package/handsontable-non-commercial-license.pdf +0 -0
- package/helpers/array.d.ts +25 -0
- package/helpers/array.js +41 -4
- package/helpers/array.mjs +56 -4
- package/helpers/console.d.ts +25 -3
- package/helpers/console.js +40 -7
- package/helpers/console.mjs +52 -7
- package/helpers/dateTime.d.ts +14 -0
- package/helpers/dateTime.js +74 -2
- package/helpers/dateTime.mjs +73 -2
- package/helpers/dom/cellCoords.js +156 -13
- package/helpers/dom/cellCoords.mjs +156 -13
- package/helpers/dom/element.d.ts +47 -8
- package/helpers/dom/element.js +104 -18
- package/helpers/dom/element.mjs +132 -23
- package/helpers/dom/event.d.ts +58 -0
- package/helpers/dom/event.js +39 -0
- package/helpers/dom/event.mjs +63 -0
- package/helpers/errors.d.ts +5 -0
- package/helpers/errors.js +10 -6
- package/helpers/errors.mjs +10 -6
- package/helpers/feature.d.ts +19 -0
- package/helpers/feature.js +21 -0
- package/helpers/feature.mjs +30 -0
- package/helpers/function.d.ts +1 -1
- package/helpers/function.js +4 -1
- package/helpers/function.mjs +4 -1
- package/helpers/mixed.d.ts +103 -0
- package/helpers/mixed.js +373 -4
- package/helpers/mixed.mjs +413 -4
- package/helpers/moves.js +2 -1
- package/helpers/moves.mjs +2 -1
- package/helpers/number.d.ts +22 -0
- package/helpers/number.js +49 -0
- package/helpers/number.mjs +66 -0
- package/helpers/string.d.ts +14 -10
- package/helpers/string.js +17 -9
- package/helpers/string.mjs +27 -17
- package/helpers/templateString.d.mts +1 -0
- package/helpers/templateString.d.ts +13 -0
- package/helpers/templateString.js +29 -0
- package/helpers/templateString.mjs +19 -0
- package/helpers/uiButton.d.mts +1 -0
- package/helpers/uiButton.d.ts +21 -0
- package/helpers/uiButton.js +37 -0
- package/helpers/uiButton.mjs +31 -0
- package/i18n/languages/fa-IR.d.ts +1 -0
- package/i18n/languages/fa-IR.js +1 -0
- package/i18n/languages/fa-IR.mjs +1 -0
- package/index.d.ts +3 -3
- package/languages/all.js +2 -1
- package/languages/fa-IR.js +2 -1
- package/languages/fa-IR.mjs +1 -0
- package/languages/index.js +2 -1
- package/package.json +61 -1
- package/plugins/autoColumnSize/autoColumnSize.d.ts +24 -1
- package/plugins/autoColumnSize/autoColumnSize.js +501 -82
- package/plugins/autoColumnSize/autoColumnSize.mjs +508 -83
- package/plugins/autoRowSize/autoRowSize.d.ts +40 -5
- package/plugins/autoRowSize/autoRowSize.js +68 -24
- package/plugins/autoRowSize/autoRowSize.mjs +98 -29
- package/plugins/autofill/autofill.js +30 -12
- package/plugins/autofill/autofill.mjs +30 -12
- package/plugins/base/base.d.ts +10 -0
- package/plugins/collapsibleColumns/collapsibleColumns.d.ts +4 -0
- package/plugins/collapsibleColumns/collapsibleColumns.js +89 -8
- package/plugins/collapsibleColumns/collapsibleColumns.mjs +93 -8
- package/plugins/columnSorting/columnSorting.d.ts +31 -2
- package/plugins/columnSorting/columnSorting.js +151 -24
- package/plugins/columnSorting/columnSorting.mjs +153 -26
- package/plugins/columnSorting/columnStatesManager.d.ts +1 -1
- package/plugins/columnSorting/columnStatesManager.js +1 -7
- package/plugins/columnSorting/columnStatesManager.mjs +1 -7
- package/plugins/columnSorting/domHelpers.d.ts +3 -0
- package/plugins/columnSorting/domHelpers.js +9 -0
- package/plugins/columnSorting/domHelpers.mjs +3 -3
- package/plugins/columnSorting/rootComparator.js +21 -16
- package/plugins/columnSorting/rootComparator.mjs +21 -16
- package/plugins/columnSorting/sortFunction/checkbox.js +7 -5
- package/plugins/columnSorting/sortFunction/checkbox.mjs +7 -5
- package/plugins/columnSorting/sortFunction/default.js +15 -4
- package/plugins/columnSorting/sortFunction/default.mjs +15 -4
- package/plugins/columnSorting/sortFunction/intlDatetime.d.mts +1 -0
- package/plugins/columnSorting/sortFunction/intlDatetime.d.ts +10 -0
- package/plugins/columnSorting/sortFunction/intlDatetime.js +23 -0
- package/plugins/columnSorting/sortFunction/intlDatetime.mjs +12 -0
- package/plugins/columnSorting/sortService/registry.js +2 -0
- package/plugins/columnSorting/sortService/registry.mjs +2 -0
- package/plugins/columnSorting/utils.d.ts +8 -0
- package/plugins/columnSorting/utils.js +37 -45
- package/plugins/columnSorting/utils.mjs +42 -47
- package/plugins/columnSummary/columnSummary.js +9 -5
- package/plugins/columnSummary/columnSummary.mjs +9 -5
- package/plugins/columnSummary/endpoints.d.ts +69 -2
- package/plugins/columnSummary/endpoints.js +181 -29
- package/plugins/columnSummary/endpoints.mjs +181 -29
- package/plugins/comments/commentEditor.js +1 -1
- package/plugins/comments/commentEditor.mjs +2 -2
- package/plugins/contextMenu/contextMenu.d.ts +12 -1
- package/plugins/contextMenu/contextMenu.js +30 -6
- package/plugins/contextMenu/contextMenu.mjs +30 -6
- package/plugins/contextMenu/index.d.ts +1 -1
- package/plugins/contextMenu/menu/menu.d.ts +22 -1
- package/plugins/contextMenu/menu/menu.js +211 -3
- package/plugins/contextMenu/menu/menu.mjs +212 -4
- package/plugins/contextMenu/menu/menuItemRenderer.js +2 -2
- package/plugins/contextMenu/menu/menuItemRenderer.mjs +2 -2
- package/plugins/contextMenu/predefinedItems/alignment.js +14 -14
- package/plugins/contextMenu/predefinedItems/alignment.mjs +14 -14
- package/plugins/contextMenu/predefinedItems/clearColumn.js +1 -1
- package/plugins/contextMenu/predefinedItems/clearColumn.mjs +1 -1
- package/plugins/contextMenu/predefinedItems/readOnly.js +3 -3
- package/plugins/contextMenu/predefinedItems/readOnly.mjs +3 -3
- package/plugins/contextMenu/utils.js +1 -1
- package/plugins/contextMenu/utils.mjs +1 -1
- package/plugins/copyPaste/copyPaste.js +70 -16
- package/plugins/copyPaste/copyPaste.mjs +71 -17
- package/plugins/copyPaste/copyableRanges.js +6 -2
- package/plugins/copyPaste/copyableRanges.mjs +6 -2
- package/plugins/copyPaste/pasteEvent.d.ts +1 -1
- package/plugins/customBorders/customBorders.d.ts +21 -40
- package/plugins/customBorders/customBorders.js +1080 -201
- package/plugins/customBorders/customBorders.mjs +1082 -203
- package/plugins/customBorders/utils.d.ts +71 -0
- package/plugins/customBorders/utils.js +63 -0
- package/plugins/customBorders/utils.mjs +101 -0
- package/plugins/dataProvider/dataProvider.d.ts +2 -1
- package/plugins/dataProvider/dataProvider.js +22 -7
- package/plugins/dataProvider/dataProvider.mjs +22 -7
- package/plugins/dataProvider/query/crud.js +1 -1
- package/plugins/dataProvider/query/crud.mjs +1 -1
- package/plugins/dialog/dialog.js +14 -9
- package/plugins/dialog/dialog.mjs +14 -9
- package/plugins/dialog/templates/confirm.d.ts +1 -1
- package/plugins/dialog/templates/confirm.js +2 -1
- package/plugins/dialog/templates/confirm.mjs +2 -1
- package/plugins/dialog/ui.d.ts +5 -3
- package/plugins/dialog/ui.js +12 -4
- package/plugins/dialog/ui.mjs +12 -4
- package/plugins/dragToScroll/dragToScroll.d.ts +2 -2
- package/plugins/dragToScroll/dragToScroll.js +150 -14
- package/plugins/dragToScroll/dragToScroll.mjs +151 -15
- package/plugins/dropdownMenu/dropdownMenu.d.ts +5 -1
- package/plugins/dropdownMenu/dropdownMenu.js +45 -3
- package/plugins/dropdownMenu/dropdownMenu.mjs +46 -4
- package/plugins/dropdownMenu/index.d.ts +1 -0
- package/plugins/emptyDataState/emptyDataState.js +4 -6
- package/plugins/emptyDataState/emptyDataState.mjs +4 -6
- package/plugins/emptyDataState/ui.js +2 -1
- package/plugins/emptyDataState/ui.mjs +2 -1
- package/plugins/exportFile/dataProvider.js +7 -9
- package/plugins/exportFile/dataProvider.mjs +7 -9
- package/plugins/exportFile/exportFile.d.ts +10 -3
- package/plugins/exportFile/types/_base.js +4 -10
- package/plugins/exportFile/types/_base.mjs +4 -10
- package/plugins/exportFile/types/xlsx/cell-style.js +4 -2
- package/plugins/exportFile/types/xlsx/cell-style.mjs +4 -2
- package/plugins/exportFile/types/xlsx/date-utils.d.ts +15 -0
- package/plugins/exportFile/types/xlsx/date-utils.js +31 -0
- package/plugins/exportFile/types/xlsx/date-utils.mjs +36 -0
- package/plugins/exportFile/types/xlsx.js +13 -9
- package/plugins/exportFile/types/xlsx.mjs +14 -10
- package/plugins/exportFile/utils.d.ts +9 -1
- package/plugins/exportFile/utils.js +27 -4
- package/plugins/exportFile/utils.mjs +40 -2
- package/plugins/filters/component/_base.d.ts +1 -2
- package/plugins/filters/component/_base.js +1 -2
- package/plugins/filters/component/_base.mjs +1 -2
- package/plugins/filters/component/condition.d.ts +1 -0
- package/plugins/filters/component/condition.js +2 -0
- package/plugins/filters/component/condition.mjs +2 -0
- package/plugins/filters/component/value.d.ts +5 -6
- package/plugins/filters/component/value.js +53 -34
- package/plugins/filters/component/value.mjs +54 -35
- package/plugins/filters/condition/date/after.js +2 -1
- package/plugins/filters/condition/date/after.mjs +2 -1
- package/plugins/filters/condition/date/afterOrEqual.js +2 -1
- package/plugins/filters/condition/date/afterOrEqual.mjs +2 -1
- package/plugins/filters/condition/date/before.js +2 -1
- package/plugins/filters/condition/date/before.mjs +2 -1
- package/plugins/filters/condition/date/beforeOrEqual.js +2 -1
- package/plugins/filters/condition/date/beforeOrEqual.mjs +2 -1
- package/plugins/filters/condition/equal.d.ts +7 -0
- package/plugins/filters/condition/equal.js +4 -0
- package/plugins/filters/condition/equal.mjs +10 -0
- package/plugins/filters/condition/intlDatetime/after.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/after.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/after.js +77 -0
- package/plugins/filters/condition/intlDatetime/after.mjs +22 -0
- package/plugins/filters/condition/intlDatetime/afterOrEqual.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/afterOrEqual.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/afterOrEqual.js +77 -0
- package/plugins/filters/condition/intlDatetime/afterOrEqual.mjs +22 -0
- package/plugins/filters/condition/intlDatetime/before.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/before.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/before.js +77 -0
- package/plugins/filters/condition/intlDatetime/before.mjs +22 -0
- package/plugins/filters/condition/intlDatetime/beforeOrEqual.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/beforeOrEqual.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/beforeOrEqual.js +77 -0
- package/plugins/filters/condition/intlDatetime/beforeOrEqual.mjs +22 -0
- package/plugins/filters/condition/intlDatetime/between.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/between.d.ts +18 -0
- package/plugins/filters/condition/intlDatetime/between.js +78 -0
- package/plugins/filters/condition/intlDatetime/between.mjs +23 -0
- package/plugins/filters/condition/intlDatetime/today.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/today.d.ts +17 -0
- package/plugins/filters/condition/intlDatetime/today.js +76 -0
- package/plugins/filters/condition/intlDatetime/today.mjs +20 -0
- package/plugins/filters/condition/intlDatetime/tomorrow.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/tomorrow.d.ts +17 -0
- package/plugins/filters/condition/intlDatetime/tomorrow.js +77 -0
- package/plugins/filters/condition/intlDatetime/tomorrow.mjs +21 -0
- package/plugins/filters/condition/intlDatetime/yesterday.d.mts +1 -0
- package/plugins/filters/condition/intlDatetime/yesterday.d.ts +17 -0
- package/plugins/filters/condition/intlDatetime/yesterday.js +77 -0
- package/plugins/filters/condition/intlDatetime/yesterday.mjs +21 -0
- package/plugins/filters/conditionCollection.js +4 -7
- package/plugins/filters/conditionCollection.mjs +4 -7
- package/plugins/filters/conditionUpdateObserver.d.ts +2 -2
- package/plugins/filters/conditionUpdateObserver.js +148 -49
- package/plugins/filters/conditionUpdateObserver.mjs +148 -49
- package/plugins/filters/constants.d.ts +1 -0
- package/plugins/filters/constants.js +31 -0
- package/plugins/filters/constants.mjs +28 -0
- package/plugins/filters/dataFilter.d.ts +4 -12
- package/plugins/filters/dataFilter.js +7 -19
- package/plugins/filters/dataFilter.mjs +8 -20
- package/plugins/filters/filters.d.ts +33 -9
- package/plugins/filters/filters.js +91 -31
- package/plugins/filters/filters.mjs +92 -32
- package/plugins/filters/sortComparators.d.ts +9 -2
- package/plugins/filters/sortComparators.js +34 -1
- package/plugins/filters/sortComparators.mjs +38 -3
- package/plugins/filters/ui/input.d.ts +4 -0
- package/plugins/filters/ui/input.js +18 -6
- package/plugins/filters/ui/input.mjs +18 -6
- package/plugins/filters/ui/multipleSelect.js +27 -4
- package/plugins/filters/ui/multipleSelect.mjs +27 -4
- package/plugins/filters/ui/select.js +1 -1
- package/plugins/filters/ui/select.mjs +1 -1
- package/plugins/formulas/engine/register.d.ts +5 -4
- package/plugins/formulas/engine/register.js +5 -2
- package/plugins/formulas/engine/register.mjs +9 -5
- package/plugins/formulas/engine/settings.d.ts +2 -6
- package/plugins/formulas/engine/settings.js +29 -4
- package/plugins/formulas/engine/settings.mjs +29 -4
- package/plugins/formulas/engine/types.d.ts +12 -2
- package/plugins/formulas/formulas.d.ts +39 -0
- package/plugins/formulas/formulas.js +789 -47
- package/plugins/formulas/formulas.mjs +793 -49
- package/plugins/formulas/hyperlinkUrl.d.mts +1 -0
- package/plugins/formulas/hyperlinkUrl.d.ts +12 -0
- package/plugins/formulas/hyperlinkUrl.js +32 -0
- package/plugins/formulas/hyperlinkUrl.mjs +32 -0
- package/plugins/formulas/indexSyncer/axisSyncer.d.ts +1 -0
- package/plugins/formulas/indexSyncer/axisSyncer.js +72 -15
- package/plugins/formulas/indexSyncer/axisSyncer.mjs +72 -15
- package/plugins/formulas/utils.d.ts +9 -0
- package/plugins/formulas/utils.js +21 -0
- package/plugins/formulas/utils.mjs +25 -0
- package/plugins/hiddenColumns/contextMenuItem/showColumn.js +6 -1
- package/plugins/hiddenColumns/contextMenuItem/showColumn.mjs +6 -1
- package/plugins/hiddenColumns/hiddenColumns.js +6 -3
- package/plugins/hiddenColumns/hiddenColumns.mjs +6 -3
- package/plugins/hiddenRows/contextMenuItem/showRow.js +6 -1
- package/plugins/hiddenRows/contextMenuItem/showRow.mjs +6 -1
- package/plugins/hiddenRows/hiddenRows.js +6 -3
- package/plugins/hiddenRows/hiddenRows.mjs +6 -3
- package/plugins/index.d.ts +5 -1
- package/plugins/index.js +10 -0
- package/plugins/index.mjs +5 -1
- package/plugins/loading/content.d.ts +5 -3
- package/plugins/loading/content.js +3 -2
- package/plugins/loading/content.mjs +8 -5
- package/plugins/loading/loading.d.ts +5 -2
- package/plugins/loading/loading.mjs +5 -2
- package/plugins/manualColumnMove/manualColumnMove.d.ts +10 -0
- package/plugins/manualColumnMove/manualColumnMove.js +122 -20
- package/plugins/manualColumnMove/manualColumnMove.mjs +123 -21
- package/plugins/manualColumnResize/manualColumnResize.d.ts +20 -7
- package/plugins/manualColumnResize/manualColumnResize.js +33 -13
- package/plugins/manualColumnResize/manualColumnResize.mjs +34 -14
- package/plugins/manualRowResize/manualRowResize.d.ts +21 -8
- package/plugins/manualRowResize/manualRowResize.js +34 -14
- package/plugins/manualRowResize/manualRowResize.mjs +35 -15
- package/plugins/mergeCells/cellCoords.d.ts +8 -0
- package/plugins/mergeCells/cellCoords.js +11 -0
- package/plugins/mergeCells/cellCoords.mjs +11 -0
- package/plugins/mergeCells/cellsCollection.d.ts +46 -2
- package/plugins/mergeCells/cellsCollection.js +189 -68
- package/plugins/mergeCells/cellsCollection.mjs +189 -68
- package/plugins/mergeCells/focusOrder.d.ts +26 -20
- package/plugins/mergeCells/focusOrder.js +358 -177
- package/plugins/mergeCells/focusOrder.mjs +363 -172
- package/plugins/mergeCells/mergeCells.d.ts +13 -8
- package/plugins/mergeCells/mergeCells.js +322 -64
- package/plugins/mergeCells/mergeCells.mjs +322 -64
- package/plugins/moveCells/helpers.d.mts +1 -0
- package/plugins/moveCells/helpers.d.ts +21 -0
- package/plugins/moveCells/helpers.js +20 -0
- package/plugins/moveCells/helpers.mjs +15 -0
- package/plugins/moveCells/index.d.mts +1 -0
- package/plugins/moveCells/index.d.ts +1 -0
- package/plugins/moveCells/index.js +22 -0
- package/plugins/moveCells/index.mjs +1 -0
- package/plugins/moveCells/moveCells.d.mts +1 -0
- package/plugins/moveCells/moveCells.d.ts +80 -0
- package/plugins/moveCells/moveCells.js +602 -0
- package/plugins/moveCells/moveCells.mjs +587 -0
- package/plugins/multiColumnSorting/multiColumnSorting.d.ts +8 -8
- package/plugins/multiColumnSorting/multiColumnSorting.js +11 -16
- package/plugins/multiColumnSorting/multiColumnSorting.mjs +11 -16
- package/plugins/multiColumnSorting/rootComparator.js +26 -19
- package/plugins/multiColumnSorting/rootComparator.mjs +26 -19
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.d.ts +19 -4
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.js +273 -58
- package/plugins/multipleSelectionHandles/multipleSelectionHandles.mjs +273 -58
- package/plugins/nestedHeaders/nestedHeaders.d.ts +10 -1
- package/plugins/nestedHeaders/nestedHeaders.js +222 -23
- package/plugins/nestedHeaders/nestedHeaders.mjs +222 -23
- package/plugins/nestedHeaders/stateManager/columnArrangement.d.mts +1 -0
- package/plugins/nestedHeaders/stateManager/columnArrangement.d.ts +37 -0
- package/plugins/nestedHeaders/stateManager/columnArrangement.js +35 -0
- package/plugins/nestedHeaders/stateManager/columnArrangement.mjs +30 -0
- package/plugins/nestedHeaders/stateManager/deriveSettings.d.mts +1 -0
- package/plugins/nestedHeaders/stateManager/deriveSettings.d.ts +57 -0
- package/plugins/nestedHeaders/stateManager/deriveSettings.js +115 -0
- package/plugins/nestedHeaders/stateManager/deriveSettings.mjs +135 -0
- package/plugins/nestedHeaders/stateManager/headersTree.d.ts +14 -1
- package/plugins/nestedHeaders/stateManager/index.d.ts +76 -13
- package/plugins/nestedHeaders/stateManager/index.js +381 -38
- package/plugins/nestedHeaders/stateManager/index.mjs +382 -39
- package/plugins/nestedHeaders/stateManager/matrixGenerator.js +3 -2
- package/plugins/nestedHeaders/stateManager/matrixGenerator.mjs +3 -2
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.js +5 -1
- package/plugins/nestedHeaders/stateManager/settingsNormalizer.mjs +5 -1
- package/plugins/nestedHeaders/stateManager/sourceSettings.d.ts +23 -6
- package/plugins/nestedHeaders/stateManager/sourceSettings.js +20 -4
- package/plugins/nestedHeaders/stateManager/sourceSettings.mjs +20 -4
- package/plugins/nestedHeaders/stateManager/utils.d.ts +17 -1
- package/plugins/nestedHeaders/stateManager/utils.js +6 -1
- package/plugins/nestedHeaders/stateManager/utils.mjs +6 -1
- package/plugins/nestedHeaders/utils/ghostTable.js +21 -8
- package/plugins/nestedHeaders/utils/ghostTable.mjs +21 -8
- package/plugins/nestedRows/data/dataManager.d.ts +4 -1
- package/plugins/nestedRows/data/dataManager.js +10 -4
- package/plugins/nestedRows/data/dataManager.mjs +10 -4
- package/plugins/nestedRows/nestedRows.d.ts +127 -1
- package/plugins/nestedRows/nestedRows.js +330 -8
- package/plugins/nestedRows/nestedRows.mjs +330 -8
- package/plugins/nestedRows/ui/collapsing.d.ts +58 -0
- package/plugins/nestedRows/ui/collapsing.js +236 -40
- package/plugins/nestedRows/ui/collapsing.mjs +236 -40
- package/plugins/notification/notification.d.ts +2 -1
- package/plugins/notification/notification.js +6 -3
- package/plugins/notification/notification.mjs +6 -3
- package/plugins/notification/ui.d.ts +8 -5
- package/plugins/notification/ui.js +18 -6
- package/plugins/notification/ui.mjs +18 -6
- package/plugins/pagination/pagination.js +2 -2
- package/plugins/pagination/pagination.mjs +2 -2
- package/plugins/search/search.js +23 -2
- package/plugins/search/search.mjs +23 -2
- package/plugins/selectionHandles/helpers.d.mts +1 -0
- package/plugins/selectionHandles/helpers.d.ts +17 -0
- package/plugins/selectionHandles/helpers.js +16 -0
- package/plugins/selectionHandles/helpers.mjs +11 -0
- package/plugins/selectionHandles/index.d.mts +1 -0
- package/plugins/selectionHandles/index.d.ts +1 -0
- package/plugins/selectionHandles/index.js +22 -0
- package/plugins/selectionHandles/index.mjs +1 -0
- package/plugins/selectionHandles/selectionHandles.d.mts +1 -0
- package/plugins/selectionHandles/selectionHandles.d.ts +52 -0
- package/plugins/selectionHandles/selectionHandles.js +342 -0
- package/plugins/selectionHandles/selectionHandles.mjs +323 -0
- package/plugins/trimRows/trimRows.d.ts +1 -1
- package/plugins/trimRows/trimRows.js +6 -2
- package/plugins/trimRows/trimRows.mjs +6 -2
- package/plugins/types.d.ts +4 -0
- package/plugins/undoRedo/actions/cellAlignment.js +1 -1
- package/plugins/undoRedo/actions/cellAlignment.mjs +1 -1
- package/plugins/undoRedo/actions/createColumn.js +4 -1
- package/plugins/undoRedo/actions/createColumn.mjs +4 -1
- package/plugins/undoRedo/actions/createRow.js +4 -1
- package/plugins/undoRedo/actions/createRow.mjs +4 -1
- package/plugins/undoRedo/actions/fixedCounts.d.mts +1 -0
- package/plugins/undoRedo/actions/fixedCounts.d.ts +36 -0
- package/plugins/undoRedo/actions/fixedCounts.js +63 -0
- package/plugins/undoRedo/actions/fixedCounts.mjs +62 -0
- package/plugins/undoRedo/actions/index.js +2 -0
- package/plugins/undoRedo/actions/index.mjs +2 -0
- package/plugins/undoRedo/actions/moveCells.d.mts +1 -0
- package/plugins/undoRedo/actions/moveCells.d.ts +104 -0
- package/plugins/undoRedo/actions/moveCells.js +225 -0
- package/plugins/undoRedo/actions/moveCells.mjs +227 -0
- package/plugins/undoRedo/actions/removeColumn.d.ts +18 -2
- package/plugins/undoRedo/actions/removeColumn.js +11 -4
- package/plugins/undoRedo/actions/removeColumn.mjs +12 -5
- package/plugins/undoRedo/actions/removeRow.js +2 -57
- package/plugins/undoRedo/actions/removeRow.mjs +2 -57
- package/plugins/undoRedo/undoRedo.d.ts +26 -0
- package/plugins/undoRedo/undoRedo.js +36 -2
- package/plugins/undoRedo/undoRedo.mjs +36 -2
- package/plugins/undoRedo/utils.d.ts +29 -0
- package/plugins/undoRedo/utils.js +55 -3
- package/plugins/undoRedo/utils.mjs +59 -0
- package/renderSizeProbe.d.mts +1 -0
- package/renderSizeProbe.d.ts +60 -0
- package/renderSizeProbe.js +163 -0
- package/renderSizeProbe.mjs +176 -0
- package/renderers/checkboxRenderer/checkboxRenderer.js +9 -4
- package/renderers/checkboxRenderer/checkboxRenderer.mjs +9 -4
- package/renderers/index.d.ts +3 -2
- package/renderers/index.js +8 -0
- package/renderers/index.mjs +3 -1
- package/renderers/intlDatetimeRenderer/index.d.mts +1 -0
- package/renderers/intlDatetimeRenderer/index.d.ts +1 -0
- package/renderers/intlDatetimeRenderer/index.js +22 -0
- package/renderers/intlDatetimeRenderer/index.mjs +1 -0
- package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.d.mts +1 -0
- package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.d.ts +26 -0
- package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.js +82 -0
- package/renderers/intlDatetimeRenderer/intlDatetimeRenderer.mjs +67 -0
- package/renderers/multiSelectRenderer/multiSelectRenderer.js +2 -3
- package/renderers/multiSelectRenderer/multiSelectRenderer.mjs +2 -3
- package/renderers/multiSelectRenderer/utils/utils.d.ts +1 -1
- package/renderers/multiSelectRenderer/utils/utils.js +11 -8
- package/renderers/multiSelectRenderer/utils/utils.mjs +11 -8
- package/renderers/passwordRenderer/passwordRenderer.js +6 -1
- package/renderers/passwordRenderer/passwordRenderer.mjs +6 -1
- package/renderers/renderCell.d.mts +1 -0
- package/renderers/renderCell.d.ts +37 -0
- package/renderers/renderCell.js +43 -0
- package/renderers/renderCell.mjs +48 -0
- package/selection/highlight/types/areaLayered.d.ts +3 -1
- package/selection/highlight/types/areaLayered.js +4 -2
- package/selection/highlight/types/areaLayered.mjs +6 -2
- package/selection/highlight/types/focus.d.ts +3 -1
- package/selection/highlight/types/focus.js +3 -2
- package/selection/highlight/types/focus.mjs +5 -2
- package/selection/mouseEventHandler.js +29 -26
- package/selection/mouseEventHandler.mjs +29 -26
- package/selection/moveCells.d.mts +1 -0
- package/selection/moveCells.d.ts +15 -0
- package/selection/moveCells.js +13 -0
- package/selection/moveCells.mjs +9 -0
- package/selection/selection.d.ts +56 -2
- package/selection/selection.js +149 -5
- package/selection/selection.mjs +149 -5
- package/selection/types.d.ts +3 -0
- package/settings.d.ts +24 -3
- package/shortcuts/context.d.ts +4 -0
- package/shortcuts/context.js +16 -8
- package/shortcuts/context.mjs +20 -8
- package/shortcuts/contexts/commands/populateSelectedCellsData.js +1 -1
- package/shortcuts/contexts/commands/populateSelectedCellsData.mjs +1 -1
- package/styles/handsontable.css +504 -158
- package/styles/handsontable.min.css +4 -4
- package/styles/handsontableStyles.d.mts +2 -0
- package/styles/handsontableStyles.d.ts +2 -0
- package/styles/handsontableStyles.js +1 -1
- package/styles/handsontableStyles.mjs +1 -1
- package/styles/ht-icons-horizon.css +1 -10
- package/styles/ht-icons-horizon.min.css +4 -4
- package/styles/ht-icons-main.css +1 -10
- package/styles/ht-icons-main.min.css +4 -4
- package/styles/ht-theme-classic-no-icons.css +6 -0
- package/styles/ht-theme-classic-no-icons.min.css +4 -4
- package/styles/ht-theme-classic.css +7 -10
- package/styles/ht-theme-classic.min.css +4 -4
- package/styles/ht-theme-horizon-no-icons.css +6 -0
- package/styles/ht-theme-horizon-no-icons.min.css +4 -4
- package/styles/ht-theme-horizon.css +7 -10
- package/styles/ht-theme-horizon.min.css +4 -4
- package/styles/ht-theme-main-no-icons.css +6 -0
- package/styles/ht-theme-main-no-icons.min.css +4 -4
- package/styles/ht-theme-main.css +7 -10
- package/styles/ht-theme-main.min.css +4 -4
- package/tableView.d.ts +17 -4
- package/tableView.js +208 -42
- package/tableView.mjs +209 -43
- package/themes/engine/index.d.ts +2 -1
- package/themes/engine/index.js +3 -0
- package/themes/engine/index.mjs +1 -1
- package/themes/engine/manager.d.ts +75 -3
- package/themes/engine/manager.js +242 -6
- package/themes/engine/manager.mjs +249 -6
- package/themes/engine/utils/cssVariables.d.ts +18 -1
- package/themes/engine/utils/cssVariables.js +27 -11
- package/themes/engine/utils/cssVariables.mjs +28 -11
- package/themes/engine/utils/validation.js +7 -0
- package/themes/engine/utils/validation.mjs +7 -0
- package/themes/static/variables/helpers/iconsMap.js +1 -6
- package/themes/static/variables/helpers/iconsMap.mjs +1 -6
- package/themes/static/variables/tokens/classic.js +6 -0
- package/themes/static/variables/tokens/classic.mjs +6 -0
- package/themes/static/variables/tokens/horizon.js +6 -0
- package/themes/static/variables/tokens/horizon.mjs +6 -0
- package/themes/static/variables/tokens/main.js +6 -0
- package/themes/static/variables/tokens/main.mjs +6 -0
- package/themes/types.d.ts +1 -1
- package/translations/indexMapper.d.ts +14 -9
- package/translations/indexMapper.js +104 -43
- package/translations/indexMapper.mjs +104 -43
- package/translations/mapCollections/aggregatedCollection.js +20 -35
- package/translations/mapCollections/aggregatedCollection.mjs +20 -35
- package/translations/mapCollections/mapCollection.d.ts +10 -4
- package/translations/mapCollections/mapCollection.js +2 -2
- package/translations/mapCollections/mapCollection.mjs +2 -2
- package/translations/maps/booleanMap.d.mts +1 -0
- package/translations/maps/booleanMap.d.ts +86 -0
- package/translations/maps/booleanMap.js +300 -0
- package/translations/maps/booleanMap.mjs +308 -0
- package/translations/maps/hidingMap.d.ts +5 -2
- package/translations/maps/hidingMap.js +8 -3
- package/translations/maps/hidingMap.mjs +8 -3
- package/translations/maps/index.d.ts +5 -2
- package/translations/maps/index.js +7 -3
- package/translations/maps/index.mjs +10 -2
- package/translations/maps/indexMap.d.ts +26 -2
- package/translations/maps/indexMap.js +78 -6
- package/translations/maps/indexMap.mjs +78 -6
- package/translations/maps/indexesSequence.d.ts +53 -2
- package/translations/maps/indexesSequence.js +225 -3
- package/translations/maps/indexesSequence.mjs +233 -3
- package/translations/maps/trimmingMap.d.ts +5 -2
- package/translations/maps/trimmingMap.js +8 -3
- package/translations/maps/trimmingMap.mjs +8 -3
- package/translations/maps/utils/actionsOnIndexes.js +20 -1
- package/translations/maps/utils/actionsOnIndexes.mjs +20 -1
- package/translations/maps/utils/indexesSequence.js +12 -3
- package/translations/maps/utils/indexesSequence.mjs +12 -3
- package/translations/maps/utils/physicallyIndexed.js +12 -1
- package/translations/maps/utils/physicallyIndexed.mjs +12 -1
- package/utils/entitlementLicenseKey/classify.d.mts +1 -0
- package/utils/entitlementLicenseKey/classify.d.ts +34 -0
- package/utils/entitlementLicenseKey/classify.js +97 -0
- package/utils/entitlementLicenseKey/classify.mjs +96 -0
- package/utils/entitlementLicenseKey/constants.d.mts +1 -0
- package/utils/entitlementLicenseKey/constants.d.ts +69 -0
- package/utils/entitlementLicenseKey/constants.js +54 -0
- package/utils/entitlementLicenseKey/constants.mjs +66 -0
- package/utils/entitlementLicenseKey/detectFormat.d.mts +1 -0
- package/utils/entitlementLicenseKey/detectFormat.d.ts +23 -0
- package/utils/entitlementLicenseKey/detectFormat.js +60 -0
- package/utils/entitlementLicenseKey/detectFormat.mjs +60 -0
- package/utils/entitlementLicenseKey/encoding.d.mts +1 -0
- package/utils/entitlementLicenseKey/encoding.d.ts +58 -0
- package/utils/entitlementLicenseKey/encoding.js +161 -0
- package/utils/entitlementLicenseKey/encoding.mjs +172 -0
- package/utils/entitlementLicenseKey/extractKeyData.d.mts +1 -0
- package/utils/entitlementLicenseKey/extractKeyData.d.ts +47 -0
- package/utils/entitlementLicenseKey/extractKeyData.js +213 -0
- package/utils/entitlementLicenseKey/extractKeyData.mjs +232 -0
- package/utils/entitlementLicenseKey/grants.d.mts +1 -0
- package/utils/entitlementLicenseKey/grants.d.ts +54 -0
- package/utils/entitlementLicenseKey/grants.js +68 -0
- package/utils/entitlementLicenseKey/grants.mjs +84 -0
- package/utils/entitlementLicenseKey/index.d.mts +1 -0
- package/utils/entitlementLicenseKey/index.d.ts +8 -0
- package/utils/entitlementLicenseKey/index.js +53 -0
- package/utils/entitlementLicenseKey/index.mjs +6 -0
- package/utils/entitlementLicenseKey/sha512.d.mts +1 -0
- package/utils/entitlementLicenseKey/sha512.d.ts +11 -0
- package/utils/entitlementLicenseKey/sha512.js +328 -0
- package/utils/entitlementLicenseKey/sha512.mjs +327 -0
- package/utils/entitlementLicenseKey/types.d.mts +1 -0
- package/utils/entitlementLicenseKey/types.d.ts +84 -0
- package/utils/entitlementLicenseKey/types.js +8 -0
- package/utils/entitlementLicenseKey/types.mjs +10 -0
- package/utils/ghostTable.d.ts +1 -0
- package/utils/ghostTable.js +60 -11
- package/utils/ghostTable.mjs +60 -11
- package/utils/licenseBranding/badge.d.mts +1 -0
- package/utils/licenseBranding/badge.d.ts +21 -0
- package/utils/licenseBranding/badge.js +237 -0
- package/utils/licenseBranding/badge.mjs +244 -0
- package/utils/licenseBranding/content.d.mts +1 -0
- package/utils/licenseBranding/content.d.ts +54 -0
- package/utils/licenseBranding/content.js +93 -0
- package/utils/licenseBranding/content.mjs +79 -0
- package/utils/licenseBranding/index.d.mts +1 -0
- package/utils/licenseBranding/index.d.ts +14 -0
- package/utils/licenseBranding/index.js +55 -0
- package/utils/licenseBranding/index.mjs +56 -0
- package/utils/licenseBranding/lockScreen.d.mts +1 -0
- package/utils/licenseBranding/lockScreen.d.ts +23 -0
- package/utils/licenseBranding/lockScreen.js +150 -0
- package/utils/licenseBranding/lockScreen.mjs +159 -0
- package/utils/licenseNotification.d.ts +19 -0
- package/utils/licenseNotification.js +56 -29
- package/utils/licenseNotification.mjs +61 -29
- package/utils/movableMeta.d.mts +1 -0
- package/utils/movableMeta.d.ts +40 -0
- package/utils/movableMeta.js +47 -0
- package/utils/movableMeta.mjs +46 -0
- package/utils/parseTable.js +16 -7
- package/utils/parseTable.mjs +16 -7
- package/utils/samplesGenerator.d.ts +41 -14
- package/utils/samplesGenerator.js +114 -42
- package/utils/samplesGenerator.mjs +114 -42
- package/utils/sanitizer.d.mts +1 -0
- package/utils/sanitizer.d.ts +47 -0
- package/utils/sanitizer.js +43 -0
- package/utils/sanitizer.mjs +55 -0
- package/utils/stylesHandler.d.ts +13 -0
- package/utils/stylesHandler.js +55 -2
- package/utils/stylesHandler.mjs +55 -2
- package/validators/autocompleteValidator/autocompleteValidator.js +3 -0
- package/validators/autocompleteValidator/autocompleteValidator.mjs +3 -0
- package/validators/index.d.ts +3 -2
- package/validators/index.js +8 -0
- package/validators/index.mjs +3 -1
- package/validators/intlDatetimeValidator/index.d.mts +1 -0
- package/validators/intlDatetimeValidator/index.d.ts +1 -0
- package/validators/intlDatetimeValidator/index.js +25 -0
- package/validators/intlDatetimeValidator/index.mjs +1 -0
- package/validators/intlDatetimeValidator/intlDatetimeValidator.d.mts +1 -0
- package/validators/intlDatetimeValidator/intlDatetimeValidator.d.ts +28 -0
- package/validators/intlDatetimeValidator/intlDatetimeValidator.js +49 -0
- package/validators/intlDatetimeValidator/intlDatetimeValidator.mjs +37 -0
- package/3rdparty/walkontable/src/overlay/bottom.d.mts +0 -1
- package/3rdparty/walkontable/src/overlay/bottomInlineStartCorner.d.mts +0 -1
- package/3rdparty/walkontable/src/overlay/inlineStart.d.mts +0 -1
- package/3rdparty/walkontable/src/overlay/top.d.mts +0 -1
- package/3rdparty/walkontable/src/overlay/topInlineStartCorner.d.mts +0 -1
- package/3rdparty/walkontable/src/overlays.d.ts +0 -329
- package/3rdparty/walkontable/src/overlays.js +0 -870
- package/3rdparty/walkontable/src/overlays.mjs +0 -860
- package/3rdparty/walkontable/src/renderer/table.d.mts +0 -1
- package/3rdparty/walkontable/src/renderer/table.js +0 -229
- package/3rdparty/walkontable/src/settings.d.mts +0 -2
- package/3rdparty/walkontable/src/settings.js +0 -196
- package/3rdparty/walkontable/src/settings.mjs +0 -263
- package/3rdparty/walkontable/src/table/bottom.d.mts +0 -2
- package/3rdparty/walkontable/src/table/bottom.d.ts +0 -19
- package/3rdparty/walkontable/src/table/bottom.js +0 -38
- package/3rdparty/walkontable/src/table/bottom.mjs +0 -23
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.d.mts +0 -2
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.d.ts +0 -20
- package/3rdparty/walkontable/src/table/bottomInlineStartCorner.mjs +0 -24
- package/3rdparty/walkontable/src/table/inlineStart.d.mts +0 -2
- package/3rdparty/walkontable/src/table/inlineStart.d.ts +0 -16
- package/3rdparty/walkontable/src/table/inlineStart.js +0 -35
- package/3rdparty/walkontable/src/table/inlineStart.mjs +0 -20
- package/3rdparty/walkontable/src/table/master.d.mts +0 -2
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.d.mts +0 -2
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.d.ts +0 -75
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.js +0 -122
- package/3rdparty/walkontable/src/table/mixin/calculatedColumns.mjs +0 -112
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.d.mts +0 -2
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.d.ts +0 -75
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.js +0 -122
- package/3rdparty/walkontable/src/table/mixin/calculatedRows.mjs +0 -112
- package/3rdparty/walkontable/src/table/top.d.mts +0 -2
- package/3rdparty/walkontable/src/table/top.d.ts +0 -19
- package/3rdparty/walkontable/src/table/top.js +0 -38
- package/3rdparty/walkontable/src/table/top.mjs +0 -23
- package/3rdparty/walkontable/src/table/topInlineStartCorner.d.mts +0 -2
- package/3rdparty/walkontable/src/table/topInlineStartCorner.d.ts +0 -20
- package/3rdparty/walkontable/src/table/topInlineStartCorner.mjs +0 -24
- package/3rdparty/walkontable/src/table.d.mts +0 -2
- package/3rdparty/walkontable/src/table.d.ts +0 -741
- package/3rdparty/walkontable/src/table.js +0 -1120
- package/3rdparty/walkontable/src/table.mjs +0 -1105
- package/3rdparty/walkontable/src/utils/cellCoords.d.mts +0 -1
- package/3rdparty/walkontable/src/utils/cellCoords.js +0 -54
- package/3rdparty/walkontable/src/utils/cellCoords.mjs +0 -54
- package/3rdparty/walkontable/src/utils/column.d.mts +0 -2
- package/3rdparty/walkontable/src/utils/column.js +0 -75
- package/3rdparty/walkontable/src/utils/column.mjs +0 -70
- package/3rdparty/walkontable/src/utils/positionCache.d.mts +0 -1
- package/3rdparty/walkontable/src/utils/positionCache.d.ts +0 -91
- package/3rdparty/walkontable/src/utils/positionCache.js +0 -193
- package/3rdparty/walkontable/src/utils/positionCache.mjs +0 -194
- package/3rdparty/walkontable/src/utils/row.d.mts +0 -2
- package/3rdparty/walkontable/src/utils/row.js +0 -46
- package/3rdparty/walkontable/src/utils/row.mjs +0 -41
- package/3rdparty/walkontable/src/viewport.d.ts +0 -254
- package/3rdparty/walkontable/src/viewport.js +0 -533
- package/3rdparty/walkontable/src/viewport.mjs +0 -523
- /package/3rdparty/walkontable/src/{renderer → axisSizing/positionCache}/index.d.mts +0 -0
- /package/3rdparty/walkontable/src/{overlays.d.mts → overlay/overlays.d.mts} +0 -0
- /package/3rdparty/walkontable/src/overlay/{_base.d.mts → regions/_base.d.mts} +0 -0
- /package/3rdparty/walkontable/src/{stickyScrollStrategy.d.mts → overlay/strategies/stickyScrollStrategy.d.mts} +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/_base.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/_base.js +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/_base.mjs +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/cells.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/cells.d.ts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/colGroup.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/colGroup.d.ts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/colGroup.js +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/colGroup.mjs +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.d.ts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.js +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaderRows.mjs +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/columnHeaders.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.d.ts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.js +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rowHeaders.mjs +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rows.d.mts +0 -0
- /package/3rdparty/walkontable/src/{renderer → render}/rows.d.ts +0 -0
- /package/3rdparty/walkontable/src/{scroll.d.mts → scroll/scroll.d.mts} +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyColumnsStart.d.mts +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.d.mts +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.js +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsBottom.mjs +0 -0
- /package/3rdparty/walkontable/src/table/{mixin → rangeQuery}/stickyRowsTop.d.mts +0 -0
- /package/3rdparty/walkontable/src/{viewport.d.mts → viewport/viewport.d.mts} +0 -0
|
@@ -146,6 +146,16 @@ const _default = ()=>{
|
|
|
146
146
|
* @default undefined
|
|
147
147
|
*/ _userDefinedMetaProps: undefined,
|
|
148
148
|
/**
|
|
149
|
+
* Information on which cell meta properties were set through `setCellMeta` - both imperatively
|
|
150
|
+
* (user, context menu) and declaratively (the `cell` option). Unlike values derived on demand by
|
|
151
|
+
* `getCellMeta` (the cascade, the `cells` function, `type` expansion), these are not rebuilt on
|
|
152
|
+
* access, so the viewport-eviction pass keeps any cell whose set is non-empty.
|
|
153
|
+
*
|
|
154
|
+
* @private
|
|
155
|
+
* @type {Set}
|
|
156
|
+
* @default undefined
|
|
157
|
+
*/ _persistedMetaProps: undefined,
|
|
158
|
+
/**
|
|
149
159
|
* The `activeHeaderClassName` option lets you add a CSS class name
|
|
150
160
|
* to every currently-active, currently-selected header (when a whole column or row is selected).
|
|
151
161
|
*
|
|
@@ -190,7 +200,11 @@ const _default = ()=>{
|
|
|
190
200
|
* | `false` | - Don't accept `null`, `undefined` and `''` values<br>- Mark cells that contain `null`, `undefined` or `''` values with as `invalid` |
|
|
191
201
|
*
|
|
192
202
|
* ::: tip
|
|
193
|
-
*
|
|
203
|
+
* The [`allowEmpty`](#allowempty) option only takes effect when the cell has a [`validator`](#validator).
|
|
204
|
+
* You can set a validator directly, or use a [`type`](#type) that comes with a built-in validator,
|
|
205
|
+
* such as `numeric`, `date`, `time`, `autocomplete`, `dropdown`, or `multiSelect`.
|
|
206
|
+
* Types without a built-in validator, such as `text`, `checkbox`, `password`, and `handsontable`,
|
|
207
|
+
* ignore the `allowEmpty` option unless you also set a `validator`.
|
|
194
208
|
* :::
|
|
195
209
|
*
|
|
196
210
|
* This option can be set at any level of the [cascading configuration](@/guides/getting-started/configuration-options/configuration-options.md#cascading-configuration):
|
|
@@ -237,11 +251,14 @@ const _default = ()=>{
|
|
|
237
251
|
* | `true` | The [`source`](#source) data is treated as HTML |
|
|
238
252
|
*
|
|
239
253
|
* __Warning:__ Setting the `allowHtml` option to `true` can cause serious XSS vulnerabilities.
|
|
254
|
+
* The [`sanitizer`](#sanitizer) option does not apply to this content: `allowHtml` exists to render
|
|
255
|
+
* the markup you supply, so sanitize the [`source`](#source) items yourself before passing them in.
|
|
240
256
|
*
|
|
241
257
|
* Read more:
|
|
242
258
|
* - [Autocomplete cell type](@/guides/cell-types/autocomplete-cell-type/autocomplete-cell-type.md)
|
|
243
259
|
* - [Dropdown cell type](@/guides/cell-types/dropdown-cell-type/dropdown-cell-type.md)
|
|
244
260
|
* - [`source`](#source)
|
|
261
|
+
* - [`sanitizer`](#sanitizer)
|
|
245
262
|
*
|
|
246
263
|
* @memberof Options#
|
|
247
264
|
* @type {boolean}
|
|
@@ -286,6 +303,9 @@ const _default = ()=>{
|
|
|
286
303
|
* - **Insert row above**
|
|
287
304
|
* - **Insert row below**
|
|
288
305
|
*
|
|
306
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
307
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
308
|
+
*
|
|
289
309
|
* @memberof Options#
|
|
290
310
|
* @type {boolean}
|
|
291
311
|
* @default true
|
|
@@ -356,6 +376,9 @@ const _default = ()=>{
|
|
|
356
376
|
* Read more:
|
|
357
377
|
* - [Context menu](@/guides/accessories-and-menus/context-menu/context-menu.md)
|
|
358
378
|
*
|
|
379
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
380
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
381
|
+
*
|
|
359
382
|
* @memberof Options#
|
|
360
383
|
* @type {boolean}
|
|
361
384
|
* @default true
|
|
@@ -408,6 +431,9 @@ const _default = ()=>{
|
|
|
408
431
|
* Read more:
|
|
409
432
|
* - [Plugins: `AutoColumnSize`](@/api/autoColumnSize.md)
|
|
410
433
|
*
|
|
434
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
435
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
436
|
+
*
|
|
411
437
|
* @memberof Options#
|
|
412
438
|
* @type {object|boolean}
|
|
413
439
|
* @default undefined
|
|
@@ -442,15 +468,20 @@ const _default = ()=>{
|
|
|
442
468
|
*
|
|
443
469
|
* If you set the `autoRowSize` option to an object, you can set the following [`AutoRowSize`](@/api/autoRowSize.md) plugin options:
|
|
444
470
|
*
|
|
445
|
-
* | Property
|
|
446
|
-
* |
|
|
447
|
-
* | `syncLimit`
|
|
471
|
+
* | Property | Possible values | Description |
|
|
472
|
+
* | ----------------------- | ------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
|
473
|
+
* | `syncLimit` | A number \| A percentage string | The number/percentage of rows to keep in sync<br>(default: `500`) |
|
|
474
|
+
* | `samplingRatio` | A number | The number of samples of the same length to be used in row height calculations |
|
|
475
|
+
* | `allowSampleDuplicates` | `true` \| `false` | When calculating row heights:<br>`true`: Allow duplicate samples<br>`false`: Don't allow duplicate samples |
|
|
448
476
|
*
|
|
449
477
|
* Using the [`rowHeights`](#rowHeights) option forcibly disables the [`AutoRowSize`](@/api/autoRowSize.md) plugin.
|
|
450
478
|
*
|
|
451
479
|
* Read more:
|
|
452
480
|
* - [Plugins: `AutoRowSize`](@/api/autoRowSize.md)
|
|
453
481
|
*
|
|
482
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
483
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
484
|
+
*
|
|
454
485
|
* @memberof Options#
|
|
455
486
|
* @type {object|boolean}
|
|
456
487
|
* @default undefined
|
|
@@ -460,7 +491,11 @@ const _default = ()=>{
|
|
|
460
491
|
* ```js
|
|
461
492
|
* autoRowSize: {
|
|
462
493
|
* // keep 40% of rows in sync (the rest of rows: async)
|
|
463
|
-
* syncLimit: '40%'
|
|
494
|
+
* syncLimit: '40%',
|
|
495
|
+
* // when calculating row heights, use 10 samples of the same length
|
|
496
|
+
* samplingRatio: 10,
|
|
497
|
+
* // when calculating row heights, allow duplicate samples
|
|
498
|
+
* allowSampleDuplicates: true
|
|
464
499
|
* },
|
|
465
500
|
* ```
|
|
466
501
|
*/ autoRowSize: undefined,
|
|
@@ -470,6 +505,9 @@ const _default = ()=>{
|
|
|
470
505
|
* | `false` (default) | When you select a bottom-most cell, pressing <kbd>**↓**</kbd> doesn't do anything.<br><br>When you select a top-most cell, pressing <kbd>**↑**</kbd> doesn't do anything. |
|
|
471
506
|
* | `true` | When you select a bottom-most cell, pressing <kbd>**↓**</kbd> takes you to the top-most cell of the next column.<br><br>When you select a top-most cell, pressing <kbd>**↑**</kbd> takes you to the bottom-most cell of the previous column. |
|
|
472
507
|
*
|
|
508
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
509
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
510
|
+
*
|
|
473
511
|
* @memberof Options#
|
|
474
512
|
* @type {boolean}
|
|
475
513
|
* @default false
|
|
@@ -495,6 +533,9 @@ const _default = ()=>{
|
|
|
495
533
|
* \* The exact key depends on your [`layoutDirection`](#layoutdirection) configuration.<br>
|
|
496
534
|
* \*\* Unless [`tabNavigation`](#tabnavigation) is set to `false`.
|
|
497
535
|
*
|
|
536
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
537
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
538
|
+
*
|
|
498
539
|
* @memberof Options#
|
|
499
540
|
* @type {boolean}
|
|
500
541
|
* @default false
|
|
@@ -549,9 +590,16 @@ const _default = ()=>{
|
|
|
549
590
|
* The `cell` option overwrites the [top-level grid options](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options),
|
|
550
591
|
* and the [`columns`](#columns) options.
|
|
551
592
|
*
|
|
593
|
+
* Each entry's `row` and `col` are **visual** indexes. This differs from the [`cells`](#cells)
|
|
594
|
+
* option, whose `row` and `column` are physical indexes.
|
|
595
|
+
*
|
|
552
596
|
* Read more:
|
|
553
597
|
* - [Configuration options: Setting cell options](@/guides/getting-started/configuration-options/configuration-options.md#set-cell-options)
|
|
554
598
|
* - [`columns`](#columns)
|
|
599
|
+
* - [`cells`](#cells)
|
|
600
|
+
*
|
|
601
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
602
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
555
603
|
*
|
|
556
604
|
* @memberof Options#
|
|
557
605
|
* @type {Array[]}
|
|
@@ -585,6 +633,12 @@ const _default = ()=>{
|
|
|
585
633
|
* | `column` | Yes | Number | A physical column index |
|
|
586
634
|
* | `prop` | No | String \| Number | If [`data`](#data) is set to an [array of arrays](@/guides/getting-started/binding-to-data/binding-to-data.md#array-of-arrays), `prop` is the same number as `column`.<br><br>If [`data`](#data) is set to an [array of objects](@/guides/getting-started/binding-to-data/binding-to-data.md#array-of-objects), `prop` is a property name for the column's data object. |
|
|
587
635
|
*
|
|
636
|
+
* Inside a regular (non-arrow) `cells` function, `this` is the cell meta object. Its
|
|
637
|
+
* `this.instance` property is the Handsontable instance, so you can call core API methods
|
|
638
|
+
* such as `this.instance.toVisualRow(row)` or `this.instance.toVisualColumn(column)` (as in
|
|
639
|
+
* the example below). Arrow functions (`cells: () => {}`) do not bind `this`, so
|
|
640
|
+
* `this.instance` is not available inside them – use a regular or shorthand function instead.
|
|
641
|
+
*
|
|
588
642
|
* Read more:
|
|
589
643
|
* - [Configuration options: Implementing custom logic](@/guides/getting-started/configuration-options/configuration-options.md#implement-custom-logic)
|
|
590
644
|
* - [Configuration options: Setting row options](@/guides/getting-started/configuration-options/configuration-options.md#set-row-options)
|
|
@@ -665,14 +719,14 @@ const _default = ()=>{
|
|
|
665
719
|
* ```
|
|
666
720
|
*/ checkedTemplate: undefined,
|
|
667
721
|
/**
|
|
668
|
-
* The `className` option lets you add CSS class names to every
|
|
722
|
+
* The `className` option lets you add CSS class names to every cell that has this option set.
|
|
669
723
|
*
|
|
670
724
|
* You can set the `className` option to one of the following:
|
|
671
725
|
*
|
|
672
|
-
* | Setting | Description
|
|
673
|
-
* | ------------------- |
|
|
674
|
-
* | A string | Add a single CSS class name to every
|
|
675
|
-
* | An array of strings | Add multiple CSS class names to every
|
|
726
|
+
* | Setting | Description |
|
|
727
|
+
* | ------------------- | --------------------------------------------------- |
|
|
728
|
+
* | A string | Add a single CSS class name to every matching cell |
|
|
729
|
+
* | An array of strings | Add multiple CSS class names to every matching cell |
|
|
676
730
|
*
|
|
677
731
|
* ::: tip
|
|
678
732
|
* Don't change the `className` metadata of the [column summary](@/guides/columns/column-summary/column-summary.md) row.
|
|
@@ -701,12 +755,10 @@ const _default = ()=>{
|
|
|
701
755
|
*
|
|
702
756
|
* @example
|
|
703
757
|
* ```js
|
|
704
|
-
* // add a `your-class-name` CSS class name
|
|
705
|
-
* // to every currently-selected element
|
|
758
|
+
* // add a `your-class-name` CSS class name to every cell
|
|
706
759
|
* className: 'your-class-name',
|
|
707
760
|
*
|
|
708
|
-
* // add `first-class-name` and `second-class-name` CSS class names
|
|
709
|
-
* // to every currently-selected element
|
|
761
|
+
* // add `first-class-name` and `second-class-name` CSS class names to every cell
|
|
710
762
|
* className: ['first-class-name', 'second-class-name'],
|
|
711
763
|
* ```
|
|
712
764
|
*/ className: undefined,
|
|
@@ -722,8 +774,14 @@ const _default = ()=>{
|
|
|
722
774
|
* | An array | Define your own column headers (e.g. `['One', 'Two', 'Three', ...]`) |
|
|
723
775
|
* | A function | Define your own column headers, using a function |
|
|
724
776
|
*
|
|
777
|
+
* To set the header label of an individual column, use that column's [`title`](#title) option.
|
|
778
|
+
*
|
|
725
779
|
* Read more:
|
|
726
780
|
* - [Column header](@/guides/columns/column-header/column-header.md)
|
|
781
|
+
* - [`title`](#title)
|
|
782
|
+
*
|
|
783
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
784
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
727
785
|
*
|
|
728
786
|
* @memberof Options#
|
|
729
787
|
* @type {boolean|string[]|Function}
|
|
@@ -766,6 +824,7 @@ const _default = ()=>{
|
|
|
766
824
|
*
|
|
767
825
|
* Read more:
|
|
768
826
|
* - [Plugins: `CollapsibleColumns`](@/api/collapsibleColumns.md)
|
|
827
|
+
* - [Column groups: Collapsible headers](@/guides/columns/column-groups/column-groups.md#collapsible-headers)
|
|
769
828
|
* - [`nestedHeaders`](#nestedHeaders)
|
|
770
829
|
*
|
|
771
830
|
* @memberof Options#
|
|
@@ -796,6 +855,9 @@ const _default = ()=>{
|
|
|
796
855
|
* | A number | Set the same height for every column header |
|
|
797
856
|
* | An array | Set different heights for individual column headers |
|
|
798
857
|
*
|
|
858
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
859
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
860
|
+
*
|
|
799
861
|
* @memberof Options#
|
|
800
862
|
* @type {number|number[]}
|
|
801
863
|
* @default undefined
|
|
@@ -829,6 +891,9 @@ const _default = ()=>{
|
|
|
829
891
|
* - [`maxCols`](#maxCols)
|
|
830
892
|
* - [`data`](#data)
|
|
831
893
|
*
|
|
894
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
895
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
896
|
+
*
|
|
832
897
|
* @memberof Options#
|
|
833
898
|
* @type {object[]|Function}
|
|
834
899
|
* @default undefined
|
|
@@ -963,6 +1028,9 @@ const _default = ()=>{
|
|
|
963
1028
|
* - [Column summary](@/guides/columns/column-summary/column-summary.md)
|
|
964
1029
|
* - [Plugins: `ColumnSummary`](@/api/columnSummary.md)
|
|
965
1030
|
*
|
|
1031
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1032
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1033
|
+
*
|
|
966
1034
|
* @memberof Options#
|
|
967
1035
|
* @type {object[]|Function}
|
|
968
1036
|
* @default undefined
|
|
@@ -1014,6 +1082,9 @@ const _default = ()=>{
|
|
|
1014
1082
|
* - [Hooks: `modifyColWidth`](@/api/hooks.md#modifyColWidth)
|
|
1015
1083
|
* - [`autoColumnSize`](#autoColumnSize)
|
|
1016
1084
|
*
|
|
1085
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1086
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1087
|
+
*
|
|
1017
1088
|
* @memberof Options#
|
|
1018
1089
|
* @type {number|number[]|string|string[]|Array<undefined>|Function}
|
|
1019
1090
|
* @default undefined
|
|
@@ -1097,6 +1168,9 @@ const _default = ()=>{
|
|
|
1097
1168
|
* - [`readOnly`](#readOnly)
|
|
1098
1169
|
* - [`commentedCellClassName`](#commentedCellClassName)
|
|
1099
1170
|
*
|
|
1171
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1172
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1173
|
+
*
|
|
1100
1174
|
* @memberof Options#
|
|
1101
1175
|
* @type {boolean|object[]}
|
|
1102
1176
|
* @default false
|
|
@@ -1142,6 +1216,9 @@ const _default = ()=>{
|
|
|
1142
1216
|
* - [Context menu: Context menu with fully custom configuration options](@/guides/accessories-and-menus/context-menu/context-menu.md#context-menu-with-a-fully-custom-configuration)
|
|
1143
1217
|
* - [Plugins: `ContextMenu`](@/api/contextMenu.md)
|
|
1144
1218
|
*
|
|
1219
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1220
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1221
|
+
*
|
|
1145
1222
|
* @memberof Options#
|
|
1146
1223
|
* @type {boolean|string[]|object}
|
|
1147
1224
|
* @default undefined
|
|
@@ -1261,6 +1338,9 @@ const _default = ()=>{
|
|
|
1261
1338
|
* - [Plugins: `CopyPaste`](@/api/copyPaste.md)
|
|
1262
1339
|
* - [Guides: Clipboard](@/guides/cell-features/clipboard/clipboard.md)
|
|
1263
1340
|
*
|
|
1341
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1342
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1343
|
+
*
|
|
1264
1344
|
* @memberof Options#
|
|
1265
1345
|
* @type {object|boolean}
|
|
1266
1346
|
* @default true
|
|
@@ -1315,6 +1395,9 @@ const _default = ()=>{
|
|
|
1315
1395
|
* - [`TableClassName`](#TableClassName)
|
|
1316
1396
|
* - [`className`](#className)
|
|
1317
1397
|
*
|
|
1398
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1399
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1400
|
+
*
|
|
1318
1401
|
* @memberof Options#
|
|
1319
1402
|
* @type {string}
|
|
1320
1403
|
* @default undefined
|
|
@@ -1342,6 +1425,9 @@ const _default = ()=>{
|
|
|
1342
1425
|
* - [`TableClassName`](#TableClassName)
|
|
1343
1426
|
* - [`className`](#className)
|
|
1344
1427
|
*
|
|
1428
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1429
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1430
|
+
*
|
|
1345
1431
|
* @memberof Options#
|
|
1346
1432
|
* @type {string}
|
|
1347
1433
|
* @default 'ht__highlight'
|
|
@@ -1370,6 +1456,9 @@ const _default = ()=>{
|
|
|
1370
1456
|
* - [`TableClassName`](#TableClassName)
|
|
1371
1457
|
* - [`className`](#className)
|
|
1372
1458
|
*
|
|
1459
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1460
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1461
|
+
*
|
|
1373
1462
|
* @memberof Options#
|
|
1374
1463
|
* @type {string}
|
|
1375
1464
|
* @default undefined
|
|
@@ -1424,6 +1513,9 @@ const _default = ()=>{
|
|
|
1424
1513
|
* - [Layout direction](@/guides/internationalization/layout-direction/layout-direction.md)
|
|
1425
1514
|
* - [`layoutDirection`](#layoutDirection)
|
|
1426
1515
|
*
|
|
1516
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1517
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1518
|
+
*
|
|
1427
1519
|
* @memberof Options#
|
|
1428
1520
|
* @type {boolean|object[]}
|
|
1429
1521
|
* @default false
|
|
@@ -1497,6 +1589,38 @@ const _default = ()=>{
|
|
|
1497
1589
|
*/ customBorders: false,
|
|
1498
1590
|
/**
|
|
1499
1591
|
* @description
|
|
1592
|
+
* The `customBordersProgressive` option controls how a large [`customBorders`](#customborders)
|
|
1593
|
+
* configuration is applied at initialization.
|
|
1594
|
+
*
|
|
1595
|
+
* By default (`false`), all custom borders are built synchronously before the first render, which
|
|
1596
|
+
* can block the initial paint when the configuration contains a very large number of borders.
|
|
1597
|
+
*
|
|
1598
|
+
* Set it to `true` to apply the borders in background batches after the grid has rendered: the
|
|
1599
|
+
* grid becomes interactive immediately and the borders fill in progressively. Pass an object to
|
|
1600
|
+
* tune the batch size, for example `{ chunkSize: 5000 }`.
|
|
1601
|
+
*
|
|
1602
|
+
* When enabled, [`getBorders()`](@/api/customBorders.md#getborders) and the borders' cell meta
|
|
1603
|
+
* are populated incrementally, so they may be incomplete until the
|
|
1604
|
+
* [`afterCustomBordersUpdate`](@/api/hooks.md#aftercustombordersupdate) hook fires.
|
|
1605
|
+
*
|
|
1606
|
+
* @since 18.1.0
|
|
1607
|
+
* @memberof Options#
|
|
1608
|
+
* @type {boolean|object}
|
|
1609
|
+
* @default false
|
|
1610
|
+
* @category CustomBorders
|
|
1611
|
+
*
|
|
1612
|
+
* @example
|
|
1613
|
+
* ```js
|
|
1614
|
+
* // apply a large custom-borders config in background batches
|
|
1615
|
+
* customBorders: [ / * ...many borders... * / ],
|
|
1616
|
+
* customBordersProgressive: true,
|
|
1617
|
+
*
|
|
1618
|
+
* // tune the batch size
|
|
1619
|
+
* customBordersProgressive: { chunkSize: 5000 },
|
|
1620
|
+
* ```
|
|
1621
|
+
*/ customBordersProgressive: false,
|
|
1622
|
+
/**
|
|
1623
|
+
* @description
|
|
1500
1624
|
* The `data` option sets the initial [data](@/guides/getting-started/binding-to-data/binding-to-data.md) of your Handsontable instance.
|
|
1501
1625
|
*
|
|
1502
1626
|
* Handsontable's data is bound to your source data by reference (i.e. when you edit Handsontable's data, your source data alters as well).
|
|
@@ -1517,6 +1641,9 @@ const _default = ()=>{
|
|
|
1517
1641
|
* - [`startRows`](#startRows)
|
|
1518
1642
|
* - [`startCols`](#startCols)
|
|
1519
1643
|
*
|
|
1644
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1645
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1646
|
+
*
|
|
1520
1647
|
* @memberof Options#
|
|
1521
1648
|
* @type {Array[]|object[]}
|
|
1522
1649
|
* @default undefined
|
|
@@ -1555,6 +1682,9 @@ const _default = ()=>{
|
|
|
1555
1682
|
* map cleanly to your backend. Pair with **`pagination`** for server-side paging.
|
|
1556
1683
|
* Valid cell edits apply at once; if **`onRowsUpdate`** fails or **`beforeRowsMutation`** blocks the update, affected cells roll back.
|
|
1557
1684
|
*
|
|
1685
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1686
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1687
|
+
*
|
|
1558
1688
|
* @since 17.1.0
|
|
1559
1689
|
* @memberof Options#
|
|
1560
1690
|
* @type {object}
|
|
@@ -1592,6 +1722,9 @@ const _default = ()=>{
|
|
|
1592
1722
|
*
|
|
1593
1723
|
* The option only works when defined in the global table settings.
|
|
1594
1724
|
*
|
|
1725
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1726
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1727
|
+
*
|
|
1595
1728
|
* @since 14.4.0
|
|
1596
1729
|
* @memberof Options#
|
|
1597
1730
|
* @type {boolean}
|
|
@@ -1638,6 +1771,9 @@ const _default = ()=>{
|
|
|
1638
1771
|
* - [Binding to data: Function data source and schema](@/guides/getting-started/binding-to-data/binding-to-data.md#function-data-source-and-schema)
|
|
1639
1772
|
* - [`data`](#data)
|
|
1640
1773
|
*
|
|
1774
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1775
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1776
|
+
*
|
|
1641
1777
|
* @memberof Options#
|
|
1642
1778
|
* @type {object|Function}
|
|
1643
1779
|
* @default undefined
|
|
@@ -1670,6 +1806,11 @@ const _default = ()=>{
|
|
|
1670
1806
|
* Source data must be in ISO 8601 date format (`YYYY-MM-DD`). Otherwise operations such
|
|
1671
1807
|
* as sorting and filtering can be unstable or unpredictable. The `dateFormat` object affects only how dates are
|
|
1672
1808
|
* displayed; the underlying value should remain ISO.
|
|
1809
|
+
*
|
|
1810
|
+
* Time-related options (`hour`, `minute`, `second`, `timeStyle`, `hour12`, `hourCycle`,
|
|
1811
|
+
* `fractionalSecondDigits`) only affect display and always render midnight (`00:00:00`) for
|
|
1812
|
+
* `date`/`intl-date` cells, because their source data is date-only. For editable date *and*
|
|
1813
|
+
* time values, use the [`intl-datetime` cell type](@/guides/cell-types/datetime-cell-type/datetime-cell-type.md).
|
|
1673
1814
|
* :::
|
|
1674
1815
|
*
|
|
1675
1816
|
* **Style shortcuts:**
|
|
@@ -1800,6 +1941,53 @@ const _default = ()=>{
|
|
|
1800
1941
|
minute: '2-digit'
|
|
1801
1942
|
},
|
|
1802
1943
|
/**
|
|
1944
|
+
* Configures the date-time format for `intl-datetime` cells using an
|
|
1945
|
+
* [`Intl.DateTimeFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat)
|
|
1946
|
+
* options object. The locale is controlled separately via the [`locale`](@/api/options.md#locale) option.
|
|
1947
|
+
*
|
|
1948
|
+
* ::: tip Source data format
|
|
1949
|
+
* Source data must be in ISO 8601 date-time format (`YYYY-MM-DDTHH:mm:ss`; a date-only
|
|
1950
|
+
* `YYYY-MM-DD` value is treated as midnight). Otherwise operations such as sorting and filtering
|
|
1951
|
+
* can be unstable or unpredictable. The `dateTimeFormat` object affects only how values are
|
|
1952
|
+
* displayed; the underlying value should remain ISO.
|
|
1953
|
+
* :::
|
|
1954
|
+
*
|
|
1955
|
+
* For the full list of supported properties, see
|
|
1956
|
+
* [MDN: Intl.DateTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat).
|
|
1957
|
+
*
|
|
1958
|
+
* Read more:
|
|
1959
|
+
* - [Date-time cell type](@/guides/cell-types/datetime-cell-type/datetime-cell-type.md)
|
|
1960
|
+
* - [`locale`](@/api/options.md#locale)
|
|
1961
|
+
*
|
|
1962
|
+
* @since 18.1.0
|
|
1963
|
+
* @memberof Options#
|
|
1964
|
+
* @type {object}
|
|
1965
|
+
* @default { year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit', hour12: false }
|
|
1966
|
+
* @category Core
|
|
1967
|
+
*
|
|
1968
|
+
* @example
|
|
1969
|
+
* ```js
|
|
1970
|
+
* columns: [
|
|
1971
|
+
* {
|
|
1972
|
+
* type: 'intl-datetime',
|
|
1973
|
+
* locale: 'en-US',
|
|
1974
|
+
* dateTimeFormat: {
|
|
1975
|
+
* dateStyle: 'medium',
|
|
1976
|
+
* timeStyle: 'short'
|
|
1977
|
+
* }
|
|
1978
|
+
* }
|
|
1979
|
+
* ]
|
|
1980
|
+
* ```
|
|
1981
|
+
*/ dateTimeFormat: {
|
|
1982
|
+
year: 'numeric',
|
|
1983
|
+
month: '2-digit',
|
|
1984
|
+
day: '2-digit',
|
|
1985
|
+
hour: '2-digit',
|
|
1986
|
+
minute: '2-digit',
|
|
1987
|
+
second: '2-digit',
|
|
1988
|
+
hour12: false
|
|
1989
|
+
},
|
|
1990
|
+
/**
|
|
1803
1991
|
* The `defaultDate` option configures the date pre-selected in the date picker editor
|
|
1804
1992
|
* when opening an empty [`date`](@/guides/cell-types/date-cell-type/date-cell-type.md) cell for editing.
|
|
1805
1993
|
*
|
|
@@ -1849,9 +2037,6 @@ const _default = ()=>{
|
|
|
1849
2037
|
* | `'header'` | - Show single-cell selection<br>- Show range selection<br>- Don't show header selection |
|
|
1850
2038
|
* | An array | A combination of `'current'`, `'area'`, and/or `'header'` |
|
|
1851
2039
|
*
|
|
1852
|
-
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
1853
|
-
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
1854
|
-
*
|
|
1855
2040
|
* When set to any non-`false` value, the second-click deselect behavior
|
|
1856
2041
|
* (Ctrl/Cmd+click on an already-selected cell removing it from a multi-cell selection)
|
|
1857
2042
|
* is also skipped. Without visible feedback, toggling layers off can cause unexpected
|
|
@@ -1904,7 +2089,7 @@ const _default = ()=>{
|
|
|
1904
2089
|
* | `template.description` | The description of the template | The description of the template |
|
|
1905
2090
|
* | `template.buttons` | Array of objects with the buttons configuration (default: `[]`) | The buttons of the template |
|
|
1906
2091
|
* | `template.buttons.text` | The text of the button | The text of the button |
|
|
1907
|
-
* | `template.buttons.type` | The type of the button ('primary'
|
|
2092
|
+
* | `template.buttons.type` | The type of the button (`'primary'` \| `'secondary'`) | The type of the button |
|
|
1908
2093
|
* | `template.buttons.callback` | The callback function to trigger when the button is clicked | The callback function to trigger when the button is clicked |
|
|
1909
2094
|
* | `content` | A string, HTMLElement or DocumentFragment (default: `''`) | The content of the dialog |
|
|
1910
2095
|
* | `customClassName` | A string (default: `''`) | The custom class name of the dialog |
|
|
@@ -1913,7 +2098,7 @@ const _default = ()=>{
|
|
|
1913
2098
|
* | `animation` | Boolean (default: `true`) | Whether to show the animation |
|
|
1914
2099
|
* | `closable` | Boolean (default: `false`) | Whether to make the dialog closable |
|
|
1915
2100
|
* | `a11y` | Object with accessibility options (default: `{ role: 'dialog', ariaLabel: 'Dialog', ariaLabelledby: '', ariaDescribedby: '' }`) | Accessibility options for the dialog |
|
|
1916
|
-
* | `a11y.role` | The role of the dialog ('dialog'
|
|
2101
|
+
* | `a11y.role` | The role of the dialog (`'dialog'` \| `'alertdialog'`) | The role of the dialog |
|
|
1917
2102
|
* | `a11y.ariaLabel` | The label of the dialog | The label of the dialog |
|
|
1918
2103
|
* | `a11y.ariaLabelledby` | The ID of the element that labels the dialog | The ID of the element that labels the dialog |
|
|
1919
2104
|
* | `a11y.ariaDescribedby` | The ID of the element that describes the dialog | The ID of the element that describes the dialog |
|
|
@@ -1921,6 +2106,9 @@ const _default = ()=>{
|
|
|
1921
2106
|
* Read more:
|
|
1922
2107
|
* - [Plugins: `Dialog`](@/api/dialog.md)
|
|
1923
2108
|
*
|
|
2109
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2110
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2111
|
+
*
|
|
1924
2112
|
* @since 16.1.0
|
|
1925
2113
|
* @memberof Options#
|
|
1926
2114
|
* @type {boolean|object}
|
|
@@ -2077,6 +2265,9 @@ const _default = ()=>{
|
|
|
2077
2265
|
* Read more:
|
|
2078
2266
|
* - [Plugins: `DragToScroll`](@/api/dragToScroll.md)
|
|
2079
2267
|
*
|
|
2268
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2269
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2270
|
+
*
|
|
2080
2271
|
* @memberof Options#
|
|
2081
2272
|
* @type {boolean|object}
|
|
2082
2273
|
* @default true
|
|
@@ -2184,10 +2375,18 @@ const _default = ()=>{
|
|
|
2184
2375
|
* You'll still be able to change cells' content through Handsontable's API
|
|
2185
2376
|
* or through plugins (e.g. [`CopyPaste`](@/api/copyPaste.md)), though.
|
|
2186
2377
|
*
|
|
2378
|
+
* When the `editor` option is set to `false`, you can still use these keyboard shortcuts:
|
|
2379
|
+
*
|
|
2380
|
+
* | Shortcut | Action |
|
|
2381
|
+
* | --------------------------------------- | ----------------------------------------------------------- |
|
|
2382
|
+
* | `Delete` / `Backspace` | Clear the contents of the selected cells |
|
|
2383
|
+
* | `Ctrl` + `Enter` / `Cmd` + `Enter` | Fill selected cells with the value of the active cell |
|
|
2384
|
+
*
|
|
2187
2385
|
* To set the [`editor`](#editor), [`renderer`](#renderer), and [`validator`](#validator)
|
|
2188
2386
|
* options all at once, use the [`type`](#type) option.
|
|
2189
2387
|
*
|
|
2190
2388
|
* Read more:
|
|
2389
|
+
* - [Keyboard shortcuts](@/guides/navigation/keyboard-shortcuts/keyboard-shortcuts.md)
|
|
2191
2390
|
* - [Cell editor](@/guides/cell-functions/cell-editor/cell-editor.md)
|
|
2192
2391
|
* - [Cell type](@/guides/cell-types/cell-type/cell-type.md)
|
|
2193
2392
|
* - [Configuration options: Cascading configuration](@/guides/getting-started/configuration-options/configuration-options.md#cascading-configuration)
|
|
@@ -2260,6 +2459,9 @@ const _default = ()=>{
|
|
|
2260
2459
|
* Read more:
|
|
2261
2460
|
* - [Plugins: `EmptyDataState`](@/api/emptyDataState.md)
|
|
2262
2461
|
*
|
|
2462
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2463
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2464
|
+
*
|
|
2263
2465
|
* @since 16.2.0
|
|
2264
2466
|
* @memberof Options#
|
|
2265
2467
|
* @type {boolean|object}
|
|
@@ -2323,6 +2525,9 @@ const _default = ()=>{
|
|
|
2323
2525
|
* Read more:
|
|
2324
2526
|
* - [`enterMoves`](#enterMoves)
|
|
2325
2527
|
*
|
|
2528
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2529
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2530
|
+
*
|
|
2326
2531
|
* @memberof Options#
|
|
2327
2532
|
* @type {boolean}
|
|
2328
2533
|
* @default true
|
|
@@ -2380,6 +2585,9 @@ const _default = ()=>{
|
|
|
2380
2585
|
* Read more:
|
|
2381
2586
|
* - [`enterBeginsEditing`](#enterBeginsEditing)
|
|
2382
2587
|
*
|
|
2588
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2589
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2590
|
+
*
|
|
2383
2591
|
* @memberof Options#
|
|
2384
2592
|
* @type {object|Function}
|
|
2385
2593
|
* @default {col: 0, row: 1}
|
|
@@ -2461,6 +2669,9 @@ const _default = ()=>{
|
|
|
2461
2669
|
* Read more:
|
|
2462
2670
|
* - [AutoFill values](@/guides/cell-features/autofill-values/autofill-values.md)
|
|
2463
2671
|
*
|
|
2672
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2673
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2674
|
+
*
|
|
2464
2675
|
* @memberof Options#
|
|
2465
2676
|
* @type {boolean|string|object}
|
|
2466
2677
|
* @default true
|
|
@@ -2523,10 +2734,9 @@ const _default = ()=>{
|
|
|
2523
2734
|
* // set the `type` of each cell in this column to `autocomplete`
|
|
2524
2735
|
* type: 'autocomplete',
|
|
2525
2736
|
* // set options available in every `autocomplete` cell of this column
|
|
2526
|
-
* source: ['
|
|
2527
|
-
* // when the end user types in `
|
|
2528
|
-
* // when the end user types in `
|
|
2529
|
-
* // when the end user types in `C`, display only the C option
|
|
2737
|
+
* source: ['Apple', 'Apricot', 'Avocado', 'Banana', 'Blueberry'],
|
|
2738
|
+
* // when the end user types in `a`, display options that contain `a`
|
|
2739
|
+
* // when the end user types in `ap`, display only `Apple` and `Apricot`
|
|
2530
2740
|
* filter: true
|
|
2531
2741
|
* }],
|
|
2532
2742
|
* ```
|
|
@@ -2594,6 +2804,9 @@ const _default = ()=>{
|
|
|
2594
2804
|
* - [Plugins: `Filters`](@/api/filters.md)
|
|
2595
2805
|
* - [`dropdownMenu`](#dropdownMenu)
|
|
2596
2806
|
*
|
|
2807
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2808
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2809
|
+
*
|
|
2597
2810
|
* @memberof Options#
|
|
2598
2811
|
* @type {boolean}
|
|
2599
2812
|
* @default undefined
|
|
@@ -2633,6 +2846,9 @@ const _default = ()=>{
|
|
|
2633
2846
|
* Read more:
|
|
2634
2847
|
* - [`fixedColumnsStart`](#fixedcolumnsstart)
|
|
2635
2848
|
*
|
|
2849
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2850
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2851
|
+
*
|
|
2636
2852
|
* @memberof Options#
|
|
2637
2853
|
* @type {number}
|
|
2638
2854
|
* @default 0
|
|
@@ -2655,6 +2871,9 @@ const _default = ()=>{
|
|
|
2655
2871
|
* - [`fixedColumnsLeft`](#fixedcolumnsleft)
|
|
2656
2872
|
* - [`layoutDirection`](#layoutDirection)
|
|
2657
2873
|
*
|
|
2874
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2875
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2876
|
+
*
|
|
2658
2877
|
* @memberof Options#
|
|
2659
2878
|
* @type {number}
|
|
2660
2879
|
* @default 0
|
|
@@ -2695,6 +2914,9 @@ const _default = ()=>{
|
|
|
2695
2914
|
* - [Row freezing](@/guides/rows/row-freezing/row-freezing.md)
|
|
2696
2915
|
* - [`height`](#height)
|
|
2697
2916
|
*
|
|
2917
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2918
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2919
|
+
*
|
|
2698
2920
|
* @memberof Options#
|
|
2699
2921
|
* @type {number}
|
|
2700
2922
|
* @default 0
|
|
@@ -2719,6 +2941,9 @@ const _default = ()=>{
|
|
|
2719
2941
|
* - [Row freezing](@/guides/rows/row-freezing/row-freezing.md)
|
|
2720
2942
|
* - [`height`](#height)
|
|
2721
2943
|
*
|
|
2944
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2945
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2946
|
+
*
|
|
2722
2947
|
* @memberof Options#
|
|
2723
2948
|
* @type {number}
|
|
2724
2949
|
* @default 0
|
|
@@ -2744,6 +2969,17 @@ const _default = ()=>{
|
|
|
2744
2969
|
* | `engine` | `HyperFormula` \|<br>A [HyperFormula](https://handsontable.github.io/hyperformula/) instance \|<br>A [HyperFormula configuration](https://handsontable.github.io/hyperformula/api/interfaces/configparams.html) object |
|
|
2745
2970
|
* | `sheetId` | A number |
|
|
2746
2971
|
* | `sheetName` | A string |
|
|
2972
|
+
* | `language` | A [HyperFormula language pack](https://handsontable.github.io/hyperformula/guide/localizing-functions.html), imported from `hyperformula/es/i18n/languages` |
|
|
2973
|
+
* | `hyperlinks` | `true` \|<br>`false` (default) |
|
|
2974
|
+
*
|
|
2975
|
+
* Set `hyperlinks` to `true` to render a cell whose formula is `HYPERLINK()` as a link. The cell
|
|
2976
|
+
* keeps its own renderer, and the link label is the value the formula returns. Only a cell whose
|
|
2977
|
+
* root expression is `HYPERLINK()` becomes a link, so a nested call such as
|
|
2978
|
+
* `=CONCATENATE("see ", HYPERLINK("https://example.com"))` renders as plain text.
|
|
2979
|
+
*
|
|
2980
|
+
* A link is created only for the `http`, `https`, `mailto` and `tel` schemes. Any other scheme,
|
|
2981
|
+
* `javascript:` included, renders the label as plain text instead. Press
|
|
2982
|
+
* <kbd>**Alt**</kbd>+<kbd>**Enter**</kbd> to open the link of the selected cell.
|
|
2747
2983
|
*
|
|
2748
2984
|
* Read more:
|
|
2749
2985
|
* - [Plugins: `Formulas`](@/api/formulas.md)
|
|
@@ -2751,6 +2987,9 @@ const _default = ()=>{
|
|
|
2751
2987
|
* - [HyperFormula documentation: Client-side installation](https://handsontable.github.io/hyperformula/guide/client-side-installation)
|
|
2752
2988
|
* - [HyperFormula documentation: Configuration options](https://handsontable.github.io/hyperformula/api/interfaces/configparams.html)
|
|
2753
2989
|
*
|
|
2990
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
2991
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
2992
|
+
*
|
|
2754
2993
|
* @memberof Options#
|
|
2755
2994
|
* @type {object}
|
|
2756
2995
|
* @default undefined
|
|
@@ -2766,6 +3005,12 @@ const _default = ()=>{
|
|
|
2766
3005
|
* sheetName: 'Sheet 1'
|
|
2767
3006
|
* }
|
|
2768
3007
|
*
|
|
3008
|
+
* // or, render `HYPERLINK()` formulas as links
|
|
3009
|
+
* formulas: {
|
|
3010
|
+
* engine: HyperFormula,
|
|
3011
|
+
* hyperlinks: true
|
|
3012
|
+
* }
|
|
3013
|
+
*
|
|
2769
3014
|
* // or, add a HyperFormula instance
|
|
2770
3015
|
* // initialized with the `'internal-use-in-handsontable'` license key
|
|
2771
3016
|
* const hyperformulaInstance = HyperFormula.buildEmpty({
|
|
@@ -2806,6 +3051,22 @@ const _default = ()=>{
|
|
|
2806
3051
|
* sheetId: 1,
|
|
2807
3052
|
* sheetName: 'Sheet 1'
|
|
2808
3053
|
* }
|
|
3054
|
+
*
|
|
3055
|
+
* // set a language pack for the built-in function names and formula syntax
|
|
3056
|
+
* import plPL from 'hyperformula/es/i18n/languages/plPL';
|
|
3057
|
+
*
|
|
3058
|
+
* formulas: {
|
|
3059
|
+
* engine: HyperFormula,
|
|
3060
|
+
* sheetName: 'Sheet 1',
|
|
3061
|
+
* language: plPL
|
|
3062
|
+
* }
|
|
3063
|
+
*
|
|
3064
|
+
* // update the language at runtime
|
|
3065
|
+
* hot.updateSettings({
|
|
3066
|
+
* formulas: {
|
|
3067
|
+
* language: plPL
|
|
3068
|
+
* }
|
|
3069
|
+
* });
|
|
2809
3070
|
* ```
|
|
2810
3071
|
*/ formulas: undefined,
|
|
2811
3072
|
/**
|
|
@@ -2819,6 +3080,14 @@ const _default = ()=>{
|
|
|
2819
3080
|
* | `true` | Enable text selection in multiple cells at a time |
|
|
2820
3081
|
* | `'cell'` | Enable text selection in one cell at a time |
|
|
2821
3082
|
*
|
|
3083
|
+
* With `fragmentSelection: true`, copying text across multiple cells requires a
|
|
3084
|
+
* [`selectionMode`](@/api/options.md#selectionmode) that allows selecting more than one cell.
|
|
3085
|
+
* When [`selectionMode`](@/api/options.md#selectionmode) is set to `'single'`, copying is
|
|
3086
|
+
* limited to a single cell.
|
|
3087
|
+
*
|
|
3088
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3089
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3090
|
+
*
|
|
2822
3091
|
* @memberof Options#
|
|
2823
3092
|
* @type {boolean|string}
|
|
2824
3093
|
* @default false
|
|
@@ -2958,6 +3227,9 @@ const _default = ()=>{
|
|
|
2958
3227
|
* Read more:
|
|
2959
3228
|
* - [Grid size](@/guides/getting-started/grid-size/grid-size.md)
|
|
2960
3229
|
*
|
|
3230
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3231
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3232
|
+
*
|
|
2961
3233
|
* @memberof Options#
|
|
2962
3234
|
* @type {number|'auto'|string|Function}
|
|
2963
3235
|
* @default undefined
|
|
@@ -3003,6 +3275,9 @@ const _default = ()=>{
|
|
|
3003
3275
|
* - [Plugins: `HiddenColumns`](@/api/hiddenColumns.md)
|
|
3004
3276
|
* - [Column hiding](@/guides/columns/column-hiding/column-hiding.md)
|
|
3005
3277
|
*
|
|
3278
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3279
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3280
|
+
*
|
|
3006
3281
|
* @memberof Options#
|
|
3007
3282
|
* @type {boolean|object}
|
|
3008
3283
|
* @default undefined
|
|
@@ -3047,6 +3322,9 @@ const _default = ()=>{
|
|
|
3047
3322
|
* - [Plugins: `HiddenRows`](@/api/hiddenRows.md)
|
|
3048
3323
|
* - [Row hiding](@/guides/rows/row-hiding/row-hiding.md)
|
|
3049
3324
|
*
|
|
3325
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3326
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3327
|
+
*
|
|
3050
3328
|
* @memberof Options#
|
|
3051
3329
|
* @type {boolean|object}
|
|
3052
3330
|
* @default undefined
|
|
@@ -3075,6 +3353,9 @@ const _default = ()=>{
|
|
|
3075
3353
|
* Note: The `initialState` option is ignored when passed to the
|
|
3076
3354
|
* [`updateSettings()`](@/api/core.md#updatesettings) method.
|
|
3077
3355
|
*
|
|
3356
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3357
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3358
|
+
*
|
|
3078
3359
|
* @since 16.1.0
|
|
3079
3360
|
* @memberof Options#
|
|
3080
3361
|
* @type {object | undefined}
|
|
@@ -3123,6 +3404,9 @@ const _default = ()=>{
|
|
|
3123
3404
|
*
|
|
3124
3405
|
* Enabling this option can make a negative impact on how some screen readers handle reading the table cells.
|
|
3125
3406
|
*
|
|
3407
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3408
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3409
|
+
*
|
|
3126
3410
|
* @since 14.0.0
|
|
3127
3411
|
* @memberof Options#
|
|
3128
3412
|
* @type {boolean}
|
|
@@ -3330,6 +3614,9 @@ const _default = ()=>{
|
|
|
3330
3614
|
* - [`fixedColumnsStart`](#fixedcolumnsstart)
|
|
3331
3615
|
* - [`customBorders`](#customBorders)
|
|
3332
3616
|
*
|
|
3617
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3618
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3619
|
+
*
|
|
3333
3620
|
* @memberof Options#
|
|
3334
3621
|
* @type {string}
|
|
3335
3622
|
* @default 'inherit'
|
|
@@ -3358,6 +3645,9 @@ const _default = ()=>{
|
|
|
3358
3645
|
* modal layer, such as the dialog) are not orderable through this option. The license
|
|
3359
3646
|
* notification is not orderable either; it always renders last in the `bottom` slot.
|
|
3360
3647
|
*
|
|
3648
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3649
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3650
|
+
*
|
|
3361
3651
|
* @since 18.0.0
|
|
3362
3652
|
* @memberof Options#
|
|
3363
3653
|
* @type {object}
|
|
@@ -3380,11 +3670,15 @@ const _default = ()=>{
|
|
|
3380
3670
|
* | Setting | Description |
|
|
3381
3671
|
* | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
|
|
3382
3672
|
* | A string with your [commercial license key](@/guides/getting-started/license-key/license-key.md#commercial-license) | For [commercial use](@/guides/technical-specification/software-license/software-license.md#commercial-use) |
|
|
3673
|
+
* | A string with your [entitlement license key](@/guides/getting-started/license-key/license-key.md#entitlement-license-keys) (plain-English text ending with a `[...]` block) | For trial, subscription, or perpetual use |
|
|
3383
3674
|
* | `'non-commercial-and-evaluation'` | For [non-commercial use](@/guides/technical-specification/software-license/software-license.md#non-commercial-use) |
|
|
3384
3675
|
*
|
|
3385
3676
|
* Read more:
|
|
3386
3677
|
* - [License key](@/guides/getting-started/license-key/license-key.md)
|
|
3387
3678
|
*
|
|
3679
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3680
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3681
|
+
*
|
|
3388
3682
|
* @memberof Options#
|
|
3389
3683
|
* @type {string}
|
|
3390
3684
|
* @default undefined
|
|
@@ -3392,9 +3686,13 @@ const _default = ()=>{
|
|
|
3392
3686
|
*
|
|
3393
3687
|
* @example
|
|
3394
3688
|
* ```js
|
|
3395
|
-
* // for commercial use
|
|
3689
|
+
* // for commercial use (legacy 25-character format)
|
|
3396
3690
|
* licenseKey: 'xxxxx-xxxxx-xxxxx-xxxxx-xxxxx', // your commercial license key
|
|
3397
3691
|
*
|
|
3692
|
+
* // for an entitlement license key (trial, subscription, or perpetual),
|
|
3693
|
+
* // pass the whole key string exactly as you received it
|
|
3694
|
+
* licenseKey: 'This is a Handsontable license key for Acme Corp, ... [eyJwcm9kdWN0cyI6...3a4f8361]',
|
|
3695
|
+
*
|
|
3398
3696
|
* // for non-commercial use
|
|
3399
3697
|
* licenseKey: 'non-commercial-and-evaluation',
|
|
3400
3698
|
* ```
|
|
@@ -3456,8 +3754,15 @@ const _default = ()=>{
|
|
|
3456
3754
|
* | `title` | A string | Custom loading title to display (default: `'Loading...'`) |
|
|
3457
3755
|
* | `description` | A string | Custom loading description to display (default: `''`) |
|
|
3458
3756
|
*
|
|
3757
|
+
* `title` and `description` render as text. Markup passed in them shows up literally rather
|
|
3758
|
+
* than being interpreted, so use `icon` for the one slot that takes markup.
|
|
3759
|
+
*
|
|
3459
3760
|
* Read more:
|
|
3460
3761
|
* - [Plugins: `Loading`](@/api/loading.md)
|
|
3762
|
+
*
|
|
3763
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3764
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3765
|
+
*
|
|
3461
3766
|
* @since 16.1.0
|
|
3462
3767
|
* @memberof Options#
|
|
3463
3768
|
* @type {boolean|object}
|
|
@@ -3499,6 +3804,9 @@ const _default = ()=>{
|
|
|
3499
3804
|
* Read more:
|
|
3500
3805
|
* - [Plugins: `Notification`](@/api/notification.md)
|
|
3501
3806
|
*
|
|
3807
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3808
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3809
|
+
*
|
|
3502
3810
|
* @since 17.1.0
|
|
3503
3811
|
* @memberof Options#
|
|
3504
3812
|
* @type {boolean|object}
|
|
@@ -3523,6 +3831,9 @@ const _default = ()=>{
|
|
|
3523
3831
|
* Read more:
|
|
3524
3832
|
* - [Column freezing](@/guides/columns/column-freezing/column-freezing.md#user-triggered-freeze)
|
|
3525
3833
|
*
|
|
3834
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3835
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3836
|
+
*
|
|
3526
3837
|
* @memberof Options#
|
|
3527
3838
|
* @type {boolean}
|
|
3528
3839
|
* @default undefined
|
|
@@ -3548,6 +3859,9 @@ const _default = ()=>{
|
|
|
3548
3859
|
* Read more:
|
|
3549
3860
|
* - [Column moving](@/guides/columns/column-moving/column-moving.md)
|
|
3550
3861
|
*
|
|
3862
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3863
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3864
|
+
*
|
|
3551
3865
|
* @memberof Options#
|
|
3552
3866
|
* @type {boolean|number[]}
|
|
3553
3867
|
* @default undefined
|
|
@@ -3579,6 +3893,13 @@ const _default = ()=>{
|
|
|
3579
3893
|
*
|
|
3580
3894
|
* Read more:
|
|
3581
3895
|
* - [Column width: Column stretching](@/guides/columns/column-width/column-width.md#column-stretching)
|
|
3896
|
+
* - [Column width: Column stretching and manual resizing](@/guides/columns/column-width/column-width.md#column-stretching-and-manual-resizing)
|
|
3897
|
+
*
|
|
3898
|
+
* When you set initial widths through the array form, those columns are excluded from
|
|
3899
|
+
* [`stretchH`](#stretchh) redistribution. Only the columns without a pre-defined width are stretched.
|
|
3900
|
+
*
|
|
3901
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3902
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3582
3903
|
*
|
|
3583
3904
|
* @memberof Options#
|
|
3584
3905
|
* @type {boolean|number[]}
|
|
@@ -3612,6 +3933,9 @@ const _default = ()=>{
|
|
|
3612
3933
|
* Read more:
|
|
3613
3934
|
* - [Row moving](@/guides/rows/row-moving/row-moving.md)
|
|
3614
3935
|
*
|
|
3936
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3937
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3938
|
+
*
|
|
3615
3939
|
* @memberof Options#
|
|
3616
3940
|
* @type {boolean|number[]}
|
|
3617
3941
|
* @default undefined
|
|
@@ -3644,6 +3968,9 @@ const _default = ()=>{
|
|
|
3644
3968
|
* Read more:
|
|
3645
3969
|
* - [Row height: Adjust the row height manually](@/guides/rows/row-height/row-height.md#adjust-the-row-height-manually)
|
|
3646
3970
|
*
|
|
3971
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
3972
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
3973
|
+
*
|
|
3647
3974
|
* @memberof Options#
|
|
3648
3975
|
* @type {boolean|number[]}
|
|
3649
3976
|
* @default undefined
|
|
@@ -3669,6 +3996,9 @@ const _default = ()=>{
|
|
|
3669
3996
|
* Handsontable trims columns from the right.
|
|
3670
3997
|
* - At runtime: for example, when inserting columns.
|
|
3671
3998
|
*
|
|
3999
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4000
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4001
|
+
*
|
|
3672
4002
|
* @memberof Options#
|
|
3673
4003
|
* @type {number}
|
|
3674
4004
|
* @default Infinity
|
|
@@ -3688,6 +4018,9 @@ const _default = ()=>{
|
|
|
3688
4018
|
* Handsontable trims rows from the bottom.
|
|
3689
4019
|
* - At runtime: for example, when inserting rows.
|
|
3690
4020
|
*
|
|
4021
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4022
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4023
|
+
*
|
|
3691
4024
|
* @memberof Options#
|
|
3692
4025
|
* @type {number}
|
|
3693
4026
|
* @default Infinity
|
|
@@ -3737,8 +4070,8 @@ const _default = ()=>{
|
|
|
3737
4070
|
*
|
|
3738
4071
|
* | Property | Description |
|
|
3739
4072
|
* | --------- | ---------------------------------------------------------- |
|
|
3740
|
-
* | `row` | The row index of the merged section's beginning
|
|
3741
|
-
* | `col` | The column index of the merged section's beginning
|
|
4073
|
+
* | `row` | The visual row index of the merged section's beginning |
|
|
4074
|
+
* | `col` | The visual column index of the merged section's beginning |
|
|
3742
4075
|
* | `rowspan` | The width (as a number of rows) of the merged section |
|
|
3743
4076
|
* | `colspan` | The height (as a number of columns ) of the merged section |
|
|
3744
4077
|
*
|
|
@@ -3799,6 +4132,9 @@ const _default = ()=>{
|
|
|
3799
4132
|
* - The [`dataSchema`](#dataSchema) option
|
|
3800
4133
|
* - The [`columns`](#columns) option
|
|
3801
4134
|
*
|
|
4135
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4136
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4137
|
+
*
|
|
3802
4138
|
* @memberof Options#
|
|
3803
4139
|
* @type {number}
|
|
3804
4140
|
* @default 0
|
|
@@ -3815,6 +4151,9 @@ const _default = ()=>{
|
|
|
3815
4151
|
*
|
|
3816
4152
|
* See the [`rowHeights`](#rowHeights) option description for more information.
|
|
3817
4153
|
*
|
|
4154
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4155
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4156
|
+
*
|
|
3818
4157
|
* @since 16.2.0
|
|
3819
4158
|
* @memberof Options#
|
|
3820
4159
|
* @type {number|number[]|string|string[]|Array<undefined>|Function}
|
|
@@ -3848,6 +4187,9 @@ const _default = ()=>{
|
|
|
3848
4187
|
* Handsontable adds empty rows at the bottom.
|
|
3849
4188
|
* - At runtime: for example, when removing rows.
|
|
3850
4189
|
*
|
|
4190
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4191
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4192
|
+
*
|
|
3851
4193
|
* @memberof Options#
|
|
3852
4194
|
* @type {number}
|
|
3853
4195
|
* @default 0
|
|
@@ -3875,6 +4217,9 @@ const _default = ()=>{
|
|
|
3875
4217
|
* - The [`dataSchema`](#dataSchema) option
|
|
3876
4218
|
* - The [`columns`](#columns) option
|
|
3877
4219
|
*
|
|
4220
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4221
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4222
|
+
*
|
|
3878
4223
|
* @memberof Options#
|
|
3879
4224
|
* @type {number}
|
|
3880
4225
|
* @default 0
|
|
@@ -3895,6 +4240,9 @@ const _default = ()=>{
|
|
|
3895
4240
|
*
|
|
3896
4241
|
* The total number of rows can't exceed the [`maxRows`](#maxRows) value.
|
|
3897
4242
|
*
|
|
4243
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4244
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4245
|
+
*
|
|
3898
4246
|
* @memberof Options#
|
|
3899
4247
|
* @type {number}
|
|
3900
4248
|
* @default 0
|
|
@@ -3981,6 +4329,9 @@ const _default = ()=>{
|
|
|
3981
4329
|
/**
|
|
3982
4330
|
* When set to `true`, the `navigableHeaders` option lets you navigate [row headers](@/guides/rows/row-header/row-header.md) and [column headers](@/guides/columns/column-header/column-header.md), using the arrow keys or the <kbd>**Tab**</kbd> key (if the [`tabNavigation`](#tabNavigation) option is set to `true`).
|
|
3983
4331
|
*
|
|
4332
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4333
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4334
|
+
*
|
|
3984
4335
|
* @since 14.0.0
|
|
3985
4336
|
* @memberof Options#
|
|
3986
4337
|
* @type {boolean}
|
|
@@ -4002,6 +4353,9 @@ const _default = ()=>{
|
|
|
4002
4353
|
* no more captures that shortcuts to make the grid navigation available (`tabNavigation: true`)
|
|
4003
4354
|
* but returns control to the browser so the native page navigation is possible.
|
|
4004
4355
|
*
|
|
4356
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4357
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4358
|
+
*
|
|
4005
4359
|
* @since 14.0.0
|
|
4006
4360
|
* @memberof Options#
|
|
4007
4361
|
* @type {boolean}
|
|
@@ -4048,6 +4402,7 @@ const _default = ()=>{
|
|
|
4048
4402
|
* | `rowspan` | `number` | The number of header rows the header spans (an integer greater than `1`). |
|
|
4049
4403
|
* | `headerClassName` | `string` | One or more space-separated CSS class names added to the header element (for example, `'htRight'`). |
|
|
4050
4404
|
* | `visibleWhen` | `string` | For a header inside a collapsible group, sets in which collapse state the header (and its columns) stays visible: `'collapsed'` (visible only while the group is collapsed), `'expanded'` (visible only while the group is expanded), or `'always'` (visible in both states). When omitted, a header in such a group defaults to `'expanded'` - it is hidden when the group collapses. At least one column of a group always stays visible. |
|
|
4405
|
+
* | `columnDropMode` | `string` | Controls what a group does when a column move (with the [`ManualColumnMove`](#manualcolumnmove) plugin) drops a foreign column (one belonging to another group) into its span. With `'adopt'` (default), the group adopts that column as a child and stays one banner. With `'split'`, the group keeps its identity and renders as several same-label banners around the foreign column (it splits). A group always reclaims its own columns when they move back into its span, regardless of this setting. Meaningful only on a header that spans columns. |
|
|
4051
4406
|
*
|
|
4052
4407
|
* ::: tip
|
|
4053
4408
|
* A header group is made collapsible through the [`collapsibleColumns`](#collapsibleColumns) option, not through
|
|
@@ -4060,11 +4415,22 @@ const _default = ()=>{
|
|
|
4060
4415
|
* column is replaced by the `label` from `nestedHeaders`. The `nestedHeaders` label takes precedence.
|
|
4061
4416
|
* :::
|
|
4062
4417
|
*
|
|
4418
|
+
* ::: warning
|
|
4419
|
+
* A `label` is written to the DOM as HTML, so a label built from user input or an external system can
|
|
4420
|
+
* inject markup. Handsontable does not sanitize it by default. Set the [`sanitizer`](#sanitizer) option,
|
|
4421
|
+
* which receives nested header labels under the `'header'` source. The `sanitizer` option is grid-level,
|
|
4422
|
+
* so it cannot be narrowed to one header or one column.
|
|
4423
|
+
* :::
|
|
4424
|
+
*
|
|
4063
4425
|
* Read more:
|
|
4064
4426
|
* - [Plugins: `NestedHeaders`](@/api/nestedHeaders.md)
|
|
4427
|
+
* - [Security: Content sanitizing](@/guides/security/security/security.md#content-sanitizing)
|
|
4065
4428
|
* - [Column groups: Nested headers](@/guides/columns/column-groups/column-groups.md#nested-headers)
|
|
4066
4429
|
* - [Column groups: Choose which columns stay visible when collapsed](@/guides/columns/column-groups/column-groups.md#choose-which-columns-stay-visible-when-collapsed)
|
|
4067
4430
|
*
|
|
4431
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4432
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4433
|
+
*
|
|
4068
4434
|
* @memberof Options#
|
|
4069
4435
|
* @type {boolean|Array[]}
|
|
4070
4436
|
* @default undefined
|
|
@@ -4102,6 +4468,9 @@ const _default = ()=>{
|
|
|
4102
4468
|
* Read more:
|
|
4103
4469
|
* - [Plugins: `NestedRows`](@/guides/rows/row-parent-child/row-parent-child.md)
|
|
4104
4470
|
*
|
|
4471
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4472
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4473
|
+
*
|
|
4105
4474
|
* @example
|
|
4106
4475
|
* ```js
|
|
4107
4476
|
* // enable the `NestedRows` plugin
|
|
@@ -4233,6 +4602,47 @@ const _default = ()=>{
|
|
|
4233
4602
|
* ```
|
|
4234
4603
|
*/ numericFormat: undefined,
|
|
4235
4604
|
/**
|
|
4605
|
+
* Controls whether a [`numeric`](@/guides/cell-types/numeric-cell-type/numeric-cell-type.md)
|
|
4606
|
+
* cell keeps the exact text you typed when converting it to a JavaScript number would lose
|
|
4607
|
+
* information.
|
|
4608
|
+
*
|
|
4609
|
+
* By default (`false`), a numeric cell always stores the parsed JavaScript number, so a value
|
|
4610
|
+
* like `9.0` is stored as `9` and the editor shows `9` the next time you open it. Numbers whose
|
|
4611
|
+
* magnitude exceeds the safe-integer limit (`9007199254740991`) also lose precision.
|
|
4612
|
+
*
|
|
4613
|
+
* When set to `true`, and only when parsing would be lossy, the cell keeps the original literal
|
|
4614
|
+
* string instead of the number. This preserves trailing decimal zeros (`9.0`, `9.50`) and the
|
|
4615
|
+
* full precision of large numbers in the cell editor, matching spreadsheet software. Values
|
|
4616
|
+
* that convert without loss (for example `9`, `9.5`, `1000`) are still stored as numbers, so
|
|
4617
|
+
* sorting, filtering, and formula calculations are unaffected. A preserved literal also keeps
|
|
4618
|
+
* behaving like a number in those features: column sorting and filter conditions compare it
|
|
4619
|
+
* numerically, and the [`Formulas`](@/api/formulas.md) engine parses the literal as a number,
|
|
4620
|
+
* so functions such as `SUM` still include the cell. The cell renderer still formats
|
|
4621
|
+
* the value according to [`numericFormat`](@/api/options.md#numericformat); only the editor
|
|
4622
|
+
* shows the preserved literal. One exception: the filter menu's "Filter by value" checkbox
|
|
4623
|
+
* list compares values strictly, so a preserved literal (`'9.0'`) and its plain number (`9`)
|
|
4624
|
+
* appear as two separate entries.
|
|
4625
|
+
*
|
|
4626
|
+
* The default is `false` so existing configurations keep their current behavior.
|
|
4627
|
+
*
|
|
4628
|
+
* @memberof Options#
|
|
4629
|
+
* @since 18.1.0
|
|
4630
|
+
* @type {boolean}
|
|
4631
|
+
* @default false
|
|
4632
|
+
* @category Core
|
|
4633
|
+
*
|
|
4634
|
+
* @example
|
|
4635
|
+
* ```js
|
|
4636
|
+
* columns: [
|
|
4637
|
+
* {
|
|
4638
|
+
* type: 'numeric',
|
|
4639
|
+
* // keep `9.0` and very large numbers as typed in the editor
|
|
4640
|
+
* preserveNumericLiteral: true,
|
|
4641
|
+
* }
|
|
4642
|
+
* ],
|
|
4643
|
+
* ```
|
|
4644
|
+
*/ preserveNumericLiteral: false,
|
|
4645
|
+
/**
|
|
4236
4646
|
* If the `observeDOMVisibility` option is set to `true`,
|
|
4237
4647
|
* Handsontable rerenders every time it detects that the grid was made visible in the DOM.
|
|
4238
4648
|
*
|
|
@@ -4241,6 +4651,9 @@ const _default = ()=>{
|
|
|
4241
4651
|
* Handsontable automatically triggers a rerender to ensure correct layout and dimensions.
|
|
4242
4652
|
* Set this option to `false` if you want to control rendering manually (e.g. by calling `render()` yourself).
|
|
4243
4653
|
*
|
|
4654
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4655
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4656
|
+
*
|
|
4244
4657
|
* @memberof Options#
|
|
4245
4658
|
* @type {boolean}
|
|
4246
4659
|
* @default true
|
|
@@ -4264,6 +4677,9 @@ const _default = ()=>{
|
|
|
4264
4677
|
* | `false` | On a mouse click outside of the grid, keep the current [selection](@/guides/cell-features/selection/selection.md) |
|
|
4265
4678
|
* | A function | A function that takes the click event target and returns a boolean |
|
|
4266
4679
|
*
|
|
4680
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4681
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4682
|
+
*
|
|
4267
4683
|
* @memberof Options#
|
|
4268
4684
|
* @type {boolean|Function}
|
|
4269
4685
|
* @default true
|
|
@@ -4317,6 +4733,9 @@ const _default = ()=>{
|
|
|
4317
4733
|
* - [Rows pagination](@/guides/rows/rows-pagination/rows-pagination.md)
|
|
4318
4734
|
* - [Plugins: `Pagination`](@/api/pagination.md)
|
|
4319
4735
|
*
|
|
4736
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4737
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4738
|
+
*
|
|
4320
4739
|
* @since 16.1.0
|
|
4321
4740
|
* @memberof Options#
|
|
4322
4741
|
* @type {boolean}
|
|
@@ -4410,6 +4829,9 @@ const _default = ()=>{
|
|
|
4410
4829
|
* | `'horizontal'` | Prevent horizontal overflowing |
|
|
4411
4830
|
* | `'vertical'` | Prevent vertical overflowing |
|
|
4412
4831
|
*
|
|
4832
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4833
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4834
|
+
*
|
|
4413
4835
|
* @memberof Options#
|
|
4414
4836
|
* @type {string|boolean}
|
|
4415
4837
|
* @default false
|
|
@@ -4446,9 +4868,9 @@ const _default = ()=>{
|
|
|
4446
4868
|
*/ preventWheel: false,
|
|
4447
4869
|
/**
|
|
4448
4870
|
* @description
|
|
4449
|
-
* The `readOnly` option determines whether a [cell](@/guides/cell-features/
|
|
4450
|
-
* [comment](@/guides/cell-features/comments/comments.md#make-a-comment-read-only), [column](@/guides/cell-features/
|
|
4451
|
-
* or the [entire grid](@/guides/cell-features/
|
|
4871
|
+
* The `readOnly` option determines whether a [cell](@/guides/cell-features/read-only-cells/read-only-cells.md#make-specific-cells-read-only),
|
|
4872
|
+
* [comment](@/guides/cell-features/comments/comments.md#make-a-comment-read-only), [column](@/guides/cell-features/read-only-cells/read-only-cells.md#make-a-column-read-only)
|
|
4873
|
+
* or the [entire grid](@/guides/cell-features/read-only-cells/read-only-cells.md#make-the-grid-read-only) is editable or not. You can configure it as follows:
|
|
4452
4874
|
*
|
|
4453
4875
|
* | Setting | Description |
|
|
4454
4876
|
* | ----------------- | ------------------------------------------------------------------------------------------------------------------------- |
|
|
@@ -4458,7 +4880,7 @@ const _default = ()=>{
|
|
|
4458
4880
|
* `readOnly` cells can't be changed by the [`populateFromArray()`](@/api/core.md#populatefromarray) method.
|
|
4459
4881
|
*
|
|
4460
4882
|
* Read more:
|
|
4461
|
-
* - [
|
|
4883
|
+
* - [Read-only cells](@/guides/cell-features/read-only-cells/read-only-cells.md)
|
|
4462
4884
|
* - [Configuration options: Cascading configuration](@/guides/getting-started/configuration-options/configuration-options.md#cascading-configuration)
|
|
4463
4885
|
*
|
|
4464
4886
|
* @memberof Options#
|
|
@@ -4536,6 +4958,9 @@ const _default = ()=>{
|
|
|
4536
4958
|
* Read more:
|
|
4537
4959
|
* - [Row virtualization](@/guides/rows/row-virtualization/row-virtualization.md)
|
|
4538
4960
|
*
|
|
4961
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4962
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4963
|
+
*
|
|
4539
4964
|
* @memberof Options#
|
|
4540
4965
|
* @type {boolean}
|
|
4541
4966
|
* @default false
|
|
@@ -4562,6 +4987,9 @@ const _default = ()=>{
|
|
|
4562
4987
|
* Read more:
|
|
4563
4988
|
* - [Column virtualization](@/guides/columns/column-virtualization/column-virtualization.md)
|
|
4564
4989
|
*
|
|
4990
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
4991
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
4992
|
+
*
|
|
4565
4993
|
* @since 14.1.0
|
|
4566
4994
|
* @memberof Options#
|
|
4567
4995
|
* @type {boolean}
|
|
@@ -4808,6 +5236,9 @@ const _default = ()=>{
|
|
|
4808
5236
|
* Read more:
|
|
4809
5237
|
* - [Row header](@/guides/rows/row-header/row-header.md)
|
|
4810
5238
|
*
|
|
5239
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5240
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5241
|
+
*
|
|
4811
5242
|
* @memberof Options#
|
|
4812
5243
|
* @type {boolean|string[]|Function}
|
|
4813
5244
|
* @default undefined
|
|
@@ -4838,6 +5269,9 @@ const _default = ()=>{
|
|
|
4838
5269
|
* | A number | Set the same width for every row header |
|
|
4839
5270
|
* | An array | Set different widths for individual row headers |
|
|
4840
5271
|
*
|
|
5272
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5273
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5274
|
+
*
|
|
4841
5275
|
* @memberof Options#
|
|
4842
5276
|
* @type {number|number[]}
|
|
4843
5277
|
* @default undefined
|
|
@@ -4872,6 +5306,9 @@ const _default = ()=>{
|
|
|
4872
5306
|
* Read more:
|
|
4873
5307
|
* - [Row height](@/guides/rows/row-height/row-height.md)
|
|
4874
5308
|
*
|
|
5309
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5310
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5311
|
+
*
|
|
4875
5312
|
* @memberof Options#
|
|
4876
5313
|
* @type {number|number[]|string|string[]|Array<undefined>|Function}
|
|
4877
5314
|
* @default undefined
|
|
@@ -5003,9 +5440,15 @@ const _default = ()=>{
|
|
|
5003
5440
|
* | `'range'` | Allow the user to select one range of cells at a time. |
|
|
5004
5441
|
* | `'multiple'` | Allow the user to select multiple ranges of cells at a time. |
|
|
5005
5442
|
*
|
|
5443
|
+
* When `selectionMode` is set to `'single'`, copying with
|
|
5444
|
+
* [`fragmentSelection`](@/api/options.md#fragmentselection) enabled is limited to a single cell.
|
|
5445
|
+
*
|
|
5006
5446
|
* Read more:
|
|
5007
5447
|
* - [Selection: Selecting ranges](@/guides/cell-features/selection/selection.md#select-ranges)
|
|
5008
5448
|
*
|
|
5449
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5450
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5451
|
+
*
|
|
5009
5452
|
* @memberof Options#
|
|
5010
5453
|
* @type {string}
|
|
5011
5454
|
* @default 'multiple'
|
|
@@ -5024,6 +5467,61 @@ const _default = ()=>{
|
|
|
5024
5467
|
* ```
|
|
5025
5468
|
*/ selectionMode: 'multiple',
|
|
5026
5469
|
/**
|
|
5470
|
+
* The `selectionHandles` option enables draggable handles on the edges of a
|
|
5471
|
+
* [selection](@/guides/cell-features/selection/selection.md). When enabled, hovering over a
|
|
5472
|
+
* selected range shows a pill-shaped handle at the midpoint of each edge; dragging a handle
|
|
5473
|
+
* resizes that edge of the selection. This adjusts the selected area only – it does not move,
|
|
5474
|
+
* fill, or change any cell data.
|
|
5475
|
+
*
|
|
5476
|
+
* Handles are shown on desktop only and are hidden on any edge that is flush with the grid
|
|
5477
|
+
* boundary -- or that lands on a frozen-pane line ([`fixedRowsTop`](#fixedrowstop),
|
|
5478
|
+
* [`fixedRowsBottom`](#fixedrowsbottom), [`fixedColumnsStart`](#fixedcolumnsstart)). The option
|
|
5479
|
+
* has no effect when [`selectionMode`](#selectionmode) is `'single'`.
|
|
5480
|
+
*
|
|
5481
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5482
|
+
*
|
|
5483
|
+
* @since 18.1.0
|
|
5484
|
+
* @memberof Options#
|
|
5485
|
+
* @type {boolean}
|
|
5486
|
+
* @default false
|
|
5487
|
+
* @category Core
|
|
5488
|
+
*
|
|
5489
|
+
* @example
|
|
5490
|
+
* ```js
|
|
5491
|
+
* // enable draggable selection-edge handles
|
|
5492
|
+
* selectionHandles: true,
|
|
5493
|
+
* ```
|
|
5494
|
+
*/ selectionHandles: false,
|
|
5495
|
+
/**
|
|
5496
|
+
* The `moveCells` option lets you move a [selection](@/guides/cell-features/selection/selection.md) by
|
|
5497
|
+
* dragging its edge. When enabled, hovering the border of a selected cell range shows a grab cursor;
|
|
5498
|
+
* dragging the border moves the block's data (values, the [`className`](#classname) cell meta, and – with the
|
|
5499
|
+
* [`formulas`](@/api/options.md#formulas) plugin – adjusted formula references) to the new location.
|
|
5500
|
+
* Other cell meta (for example [`numericFormat`](#numericformat) or [`readOnly`](#readonly)) stays at the
|
|
5501
|
+
* source cells.
|
|
5502
|
+
* Hold <kbd>Ctrl</kbd>/<kbd>Cmd</kbd> during the drag to copy instead of move.
|
|
5503
|
+
*
|
|
5504
|
+
* The move applies to a single contiguous cell range only. It has no effect on full-row, full-column,
|
|
5505
|
+
* select-all, or multiple selections, the range may span at most 100,000 cells, and the source and
|
|
5506
|
+
* target must stay within the grid. Neither the target nor
|
|
5507
|
+
* the source may overlap read-only cells, because a move has to clear the source — a copy leaves the
|
|
5508
|
+
* source in place, so a read-only source cell blocks a move but not a copy.
|
|
5509
|
+
*
|
|
5510
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5511
|
+
*
|
|
5512
|
+
* @since 18.1.0
|
|
5513
|
+
* @memberof Options#
|
|
5514
|
+
* @type {boolean}
|
|
5515
|
+
* @default false
|
|
5516
|
+
* @category Core
|
|
5517
|
+
*
|
|
5518
|
+
* @example
|
|
5519
|
+
* ```js
|
|
5520
|
+
* // enable drag-to-move for selections
|
|
5521
|
+
* moveCells: true,
|
|
5522
|
+
* ```
|
|
5523
|
+
*/ moveCells: false,
|
|
5524
|
+
/**
|
|
5027
5525
|
* The `selectOptions` option configures options that the end user can choose from in [`select`](@/guides/cell-types/select-cell-type/select-cell-type.md) cells.
|
|
5028
5526
|
*
|
|
5029
5527
|
* You can set the `selectOptions` option to one of the following:
|
|
@@ -5276,6 +5774,9 @@ const _default = ()=>{
|
|
|
5276
5774
|
* `startCols` and `minSpareCols`.
|
|
5277
5775
|
* :::
|
|
5278
5776
|
*
|
|
5777
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5778
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5779
|
+
*
|
|
5279
5780
|
* @memberof Options#
|
|
5280
5781
|
* @type {number}
|
|
5281
5782
|
* @default 5
|
|
@@ -5299,6 +5800,9 @@ const _default = ()=>{
|
|
|
5299
5800
|
* `startRows` and `minSpareRows`.
|
|
5300
5801
|
* :::
|
|
5301
5802
|
*
|
|
5803
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5804
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5805
|
+
*
|
|
5302
5806
|
* @memberof Options#
|
|
5303
5807
|
* @type {number}
|
|
5304
5808
|
* @default 5
|
|
@@ -5325,6 +5829,14 @@ const _default = ()=>{
|
|
|
5325
5829
|
*
|
|
5326
5830
|
* Read more:
|
|
5327
5831
|
* - [Column width: Column stretching](@/guides/columns/column-width/column-width.md#column-stretching)
|
|
5832
|
+
* - [Column width: Column stretching and manual resizing](@/guides/columns/column-width/column-width.md#column-stretching-and-manual-resizing)
|
|
5833
|
+
*
|
|
5834
|
+
* When used with [`manualColumnResize`](#manualcolumnresize), columns that have a width set
|
|
5835
|
+
* through pre-defined manual sizes are excluded from stretching. Only the remaining columns
|
|
5836
|
+
* are stretched to fill the container.
|
|
5837
|
+
*
|
|
5838
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5839
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5328
5840
|
*
|
|
5329
5841
|
* @memberof Options#
|
|
5330
5842
|
* @type {string}
|
|
@@ -5397,6 +5909,9 @@ const _default = ()=>{
|
|
|
5397
5909
|
* - [`commentedCellClassName`](#commentedCellClassName)
|
|
5398
5910
|
* - [`className`](#className)
|
|
5399
5911
|
*
|
|
5912
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5913
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5914
|
+
*
|
|
5400
5915
|
* @memberof Options#
|
|
5401
5916
|
* @type {string|string[]}
|
|
5402
5917
|
* @default undefined
|
|
@@ -5449,6 +5964,9 @@ const _default = ()=>{
|
|
|
5449
5964
|
* Read more:
|
|
5450
5965
|
* - [Themes](@/guides/styling/themes/themes.md)
|
|
5451
5966
|
*
|
|
5967
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
5968
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
5969
|
+
*
|
|
5452
5970
|
* @memberof Options#
|
|
5453
5971
|
* @type {string|undefined}
|
|
5454
5972
|
* @default undefined
|
|
@@ -5484,6 +6002,9 @@ const _default = ()=>{
|
|
|
5484
6002
|
* - [Themes](@/guides/styling/themes/themes.md)
|
|
5485
6003
|
* - [`themeName`](#themeName)
|
|
5486
6004
|
*
|
|
6005
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6006
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6007
|
+
*
|
|
5487
6008
|
* @memberof Options#
|
|
5488
6009
|
* @type {ThemeBuilder|string|undefined}
|
|
5489
6010
|
* @default undefined
|
|
@@ -5527,6 +6048,108 @@ const _default = ()=>{
|
|
|
5527
6048
|
* ```
|
|
5528
6049
|
*/ theme: undefined,
|
|
5529
6050
|
/**
|
|
6051
|
+
* The `colorScheme` option sets the color scheme of the grid without declaring a theme.
|
|
6052
|
+
*
|
|
6053
|
+
* You can set it to one of the following:
|
|
6054
|
+
*
|
|
6055
|
+
* | Setting | Description |
|
|
6056
|
+
* | --------------------- | --------------------------------------------------------------- |
|
|
6057
|
+
* | `undefined` (default) | Use the color scheme of the current theme |
|
|
6058
|
+
* | `'light'` | Always render the light color scheme |
|
|
6059
|
+
* | `'dark'` | Always render the dark color scheme |
|
|
6060
|
+
* | `'auto'` | Follow the color scheme of the operating system |
|
|
6061
|
+
*
|
|
6062
|
+
* The option is a per-instance override. It applies on top of the current theme, so the theme
|
|
6063
|
+
* itself stays unchanged and other grids that use the same theme keep their own color scheme.
|
|
6064
|
+
* You can change it at runtime with [`updateSettings()`](@/api/core.md#updatesettings).
|
|
6065
|
+
*
|
|
6066
|
+
* The option requires the theme engine, so it has no effect when the theme comes from a CSS
|
|
6067
|
+
* class name (the [`theme`](#theme) option set to a string, or an `ht-theme-*` class on the
|
|
6068
|
+
* container element). In that case, use the theme's dark class name instead.
|
|
6069
|
+
*
|
|
6070
|
+
* An unsupported value is ignored with a console warning rather than throwing.
|
|
6071
|
+
*
|
|
6072
|
+
* Read more:
|
|
6073
|
+
* - [Themes](@/guides/styling/themes/themes.md)
|
|
6074
|
+
* - [`density`](#density)
|
|
6075
|
+
* - [`theme`](#theme)
|
|
6076
|
+
*
|
|
6077
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6078
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6079
|
+
*
|
|
6080
|
+
* @memberof Options#
|
|
6081
|
+
* @type {string|undefined}
|
|
6082
|
+
* @default undefined
|
|
6083
|
+
* @category Core
|
|
6084
|
+
* @since 18.1.0
|
|
6085
|
+
*
|
|
6086
|
+
* @example
|
|
6087
|
+
* ```js
|
|
6088
|
+
* // Render the grid in dark mode, without declaring a theme
|
|
6089
|
+
* const hot = new Handsontable(container, {
|
|
6090
|
+
* colorScheme: 'dark',
|
|
6091
|
+
* });
|
|
6092
|
+
* ```
|
|
6093
|
+
* @example
|
|
6094
|
+
* ```js
|
|
6095
|
+
* // Switch the color scheme at runtime
|
|
6096
|
+
* hot.updateSettings({
|
|
6097
|
+
* colorScheme: 'auto',
|
|
6098
|
+
* });
|
|
6099
|
+
* ```
|
|
6100
|
+
*/ colorScheme: undefined,
|
|
6101
|
+
/**
|
|
6102
|
+
* The `density` option sets the amount of white space inside the grid without declaring a theme.
|
|
6103
|
+
*
|
|
6104
|
+
* You can set it to one of the following:
|
|
6105
|
+
*
|
|
6106
|
+
* | Setting | Description |
|
|
6107
|
+
* | --------------------- | -------------------------------------------------------- |
|
|
6108
|
+
* | `undefined` (default) | Use the density of the current theme |
|
|
6109
|
+
* | `'default'` | Standard spacing |
|
|
6110
|
+
* | `'compact'` | Tighter spacing, fits more rows on the screen |
|
|
6111
|
+
* | `'comfortable'` | Looser spacing, easier to read and to tap |
|
|
6112
|
+
*
|
|
6113
|
+
* The option is a per-instance override. It applies on top of the current theme, so the theme
|
|
6114
|
+
* itself stays unchanged and other grids that use the same theme keep their own density.
|
|
6115
|
+
* You can change it at runtime with [`updateSettings()`](@/api/core.md#updatesettings).
|
|
6116
|
+
*
|
|
6117
|
+
* The option requires the theme engine, so it has no effect when the theme comes from a CSS
|
|
6118
|
+
* class name (the [`theme`](#theme) option set to a string, or an `ht-theme-*` class on the
|
|
6119
|
+
* container element).
|
|
6120
|
+
*
|
|
6121
|
+
* An unsupported value is ignored with a console warning rather than throwing.
|
|
6122
|
+
*
|
|
6123
|
+
* Read more:
|
|
6124
|
+
* - [Themes](@/guides/styling/themes/themes.md)
|
|
6125
|
+
* - [`colorScheme`](#colorScheme)
|
|
6126
|
+
* - [`theme`](#theme)
|
|
6127
|
+
*
|
|
6128
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6129
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6130
|
+
*
|
|
6131
|
+
* @memberof Options#
|
|
6132
|
+
* @type {string|undefined}
|
|
6133
|
+
* @default undefined
|
|
6134
|
+
* @category Core
|
|
6135
|
+
* @since 18.1.0
|
|
6136
|
+
*
|
|
6137
|
+
* @example
|
|
6138
|
+
* ```js
|
|
6139
|
+
* // Render the grid with tighter spacing, without declaring a theme
|
|
6140
|
+
* const hot = new Handsontable(container, {
|
|
6141
|
+
* density: 'compact',
|
|
6142
|
+
* });
|
|
6143
|
+
* ```
|
|
6144
|
+
* @example
|
|
6145
|
+
* ```js
|
|
6146
|
+
* // Change the density at runtime
|
|
6147
|
+
* hot.updateSettings({
|
|
6148
|
+
* density: 'comfortable',
|
|
6149
|
+
* });
|
|
6150
|
+
* ```
|
|
6151
|
+
*/ density: undefined,
|
|
6152
|
+
/**
|
|
5530
6153
|
* The `injectCoreCss` option controls whether Handsontable injects its core CSS into the document.
|
|
5531
6154
|
*
|
|
5532
6155
|
* You can set the `injectCoreCss` option to one of the following:
|
|
@@ -5539,6 +6162,9 @@ const _default = ()=>{
|
|
|
5539
6162
|
* Read more:
|
|
5540
6163
|
* - [Themes](@/guides/styling/themes/themes.md)
|
|
5541
6164
|
*
|
|
6165
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6166
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6167
|
+
*
|
|
5542
6168
|
* @memberof Options#
|
|
5543
6169
|
* @type {boolean}
|
|
5544
6170
|
* @default true
|
|
@@ -5565,6 +6191,9 @@ const _default = ()=>{
|
|
|
5565
6191
|
* | `row` | Number | - On pressing <kbd>**Tab**</kbd>, move selection `row` rows down<br>- On pressing <kbd>**Shift**</kbd>+<kbd>**Tab**</kbd>, move selection `row` rows up |
|
|
5566
6192
|
* | `col` | Number | - On pressing <kbd>**Tab**</kbd>, move selection `col` columns right<br>- On pressing <kbd>**Shift**</kbd>+<kbd>**Tab**</kbd>, move selection `col` columns left |
|
|
5567
6193
|
*
|
|
6194
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6195
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6196
|
+
*
|
|
5568
6197
|
* @memberof Options#
|
|
5569
6198
|
* @type {object|Function}
|
|
5570
6199
|
* @default {row: 0, col: 1}
|
|
@@ -5593,10 +6222,16 @@ const _default = ()=>{
|
|
|
5593
6222
|
*
|
|
5594
6223
|
* You can set the `title` option to a string.
|
|
5595
6224
|
*
|
|
6225
|
+
* To set the labels of all column headers at once, use the [`colHeaders`](#colheaders) option.
|
|
6226
|
+
*
|
|
5596
6227
|
* Read more:
|
|
5597
6228
|
* - [Column header](@/guides/columns/column-header/column-header.md)
|
|
6229
|
+
* - [`colHeaders`](#colheaders)
|
|
5598
6230
|
* - [`columns`](#columns)
|
|
5599
6231
|
*
|
|
6232
|
+
* This option can only be set at the [`columns`](#columns) level.
|
|
6233
|
+
* It has no effect when set at the grid level, or in the [`cells`](#cells) or [`cell`](#cell) options.
|
|
6234
|
+
*
|
|
5600
6235
|
* @memberof Options#
|
|
5601
6236
|
* @type {string}
|
|
5602
6237
|
* @default undefined
|
|
@@ -5624,14 +6259,14 @@ const _default = ()=>{
|
|
|
5624
6259
|
*
|
|
5625
6260
|
* When set to `true` (default), the list is trimmed to match the width of the edited cell,
|
|
5626
6261
|
* which can truncate long option labels. When set to `false`, the list expands to fit its
|
|
5627
|
-
* longest option
|
|
6262
|
+
* longest option – it can grow wider than the cell, but never narrower.
|
|
5628
6263
|
*
|
|
5629
6264
|
* You can set the `trimDropdown` option to one of the following:
|
|
5630
6265
|
*
|
|
5631
6266
|
* | Setting | Description |
|
|
5632
6267
|
* | ---------------- | ------------------------------------------------------------------------------- |
|
|
5633
6268
|
* | `true` (default) | Make the dropdown/autocomplete list's width the same as the edited cell's width |
|
|
5634
|
-
* | `false` |
|
|
6269
|
+
* | `false` | Expand the list to its content, but keep it at least as wide as the edited cell |
|
|
5635
6270
|
*
|
|
5636
6271
|
* This option can be set at any level of the [cascading configuration](@/guides/getting-started/configuration-options/configuration-options.md#cascading-configuration):
|
|
5637
6272
|
* the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options), the [`columns`](#columns) level, the [`cells`](#cells) level, and the [`cell`](#cell) level.
|
|
@@ -5679,6 +6314,9 @@ const _default = ()=>{
|
|
|
5679
6314
|
* - [Plugins: `TrimRows`](@/api/trimRows.md)
|
|
5680
6315
|
* - [Row trimming](@/guides/rows/row-trimming/row-trimming.md)
|
|
5681
6316
|
*
|
|
6317
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6318
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6319
|
+
*
|
|
5682
6320
|
* @memberof Options#
|
|
5683
6321
|
* @type {boolean|number[]}
|
|
5684
6322
|
* @default undefined
|
|
@@ -5742,6 +6380,7 @@ const _default = ()=>{
|
|
|
5742
6380
|
* | `'text'` | Renderer: `TextRenderer`<br>Editor: `TextEditor`<br>Validator: - |
|
|
5743
6381
|
* | [`'time`'](@/guides/cell-types/time-cell-type/time-cell-type.md) | Renderer: `TimeRenderer`<br>Editor: `TimeEditor`<br>Validator: `TimeValidator` |
|
|
5744
6382
|
* | [`'intl-time'`](@/guides/cell-types/time-cell-type/time-cell-type.md) | Renderer: `IntlTimeRenderer`<br>Editor: `IntlTimeEditor`<br>Validator: `IntlTimeValidator` |
|
|
6383
|
+
* | [`'intl-datetime'`](@/guides/cell-types/datetime-cell-type/datetime-cell-type.md) | Renderer: `IntlDatetimeRenderer`<br>Editor: `IntlDatetimeEditor`<br>Validator: `IntlDatetimeValidator` |
|
|
5745
6384
|
*
|
|
5746
6385
|
* Read more:
|
|
5747
6386
|
* - [Cell type](@/guides/cell-types/cell-type/cell-type.md)
|
|
@@ -5845,6 +6484,9 @@ const _default = ()=>{
|
|
|
5845
6484
|
* Read more:
|
|
5846
6485
|
* - [Undo and redo](@/guides/accessories-and-menus/undo-redo/undo-redo.md)
|
|
5847
6486
|
*
|
|
6487
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6488
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6489
|
+
*
|
|
5848
6490
|
* @memberof Options#
|
|
5849
6491
|
* @type {boolean}
|
|
5850
6492
|
* @default undefined
|
|
@@ -5913,7 +6555,7 @@ const _default = ()=>{
|
|
|
5913
6555
|
* {
|
|
5914
6556
|
* // add a custom cell validator function
|
|
5915
6557
|
* validator(value, callback) {
|
|
5916
|
-
*
|
|
6558
|
+
* callback(value >= 0 && value <= 100);
|
|
5917
6559
|
* }
|
|
5918
6560
|
* },
|
|
5919
6561
|
* ],
|
|
@@ -5937,6 +6579,14 @@ const _default = ()=>{
|
|
|
5937
6579
|
* Optionally set [`sourceDataWarningMessage`](@/api/options.md#sourcedatawarningmessage) to customize the
|
|
5938
6580
|
* message logged for invalid values.
|
|
5939
6581
|
*
|
|
6582
|
+
* __Limitation:__ source-data validation only sees a `sourceDataValidator` (and a validating cell
|
|
6583
|
+
* [`type`](@/api/options.md#type)) that you define in the global settings, the
|
|
6584
|
+
* [`columns`](@/api/options.md#columns) option, the [`cell`](@/api/options.md#cell) option, or with
|
|
6585
|
+
* [`setCellMeta()`](@/api/core.md#setcellmeta). It does __not__ run the [`cells`](@/api/options.md#cells)
|
|
6586
|
+
* function or the [`beforeGetCellMeta`](@/api/hooks.md#beforegetcellmeta) /
|
|
6587
|
+
* [`afterGetCellMeta`](@/api/hooks.md#aftergetcellmeta) hooks, so a validator that you add only through those
|
|
6588
|
+
* is skipped. Define the validator in one of the supported places to validate the source data.
|
|
6589
|
+
*
|
|
5940
6590
|
* @example
|
|
5941
6591
|
* ```js
|
|
5942
6592
|
* sourceDataWarningMessage: 'The source data is invalid.',
|
|
@@ -6033,11 +6683,29 @@ const _default = ()=>{
|
|
|
6033
6683
|
* | `auto` (default) | Use the offset calculated automatically by Handsontable |
|
|
6034
6684
|
* | A number | Set the offset manually |
|
|
6035
6685
|
*
|
|
6686
|
+
* With `auto`, the option works in a dynamic overscan mode: Handsontable renders 1 extra
|
|
6687
|
+
* column on each side of the viewport and, while you scroll horizontally, extends the
|
|
6688
|
+
* rendered area by up to 8 extra columns in the scroll direction, so consecutive scroll
|
|
6689
|
+
* steps reuse the already-rendered columns instead of re-rendering them.
|
|
6690
|
+
*
|
|
6691
|
+
* The scroll-direction overscan works only when Handsontable knows every column's width up
|
|
6692
|
+
* front and all columns share the same width: set [`colWidths`](#colWidths) to a single
|
|
6693
|
+
* number. Features that measure or change individual column widths turn the overscan off for
|
|
6694
|
+
* the column axis – for example, [`autoColumnSize`](#autoColumnSize) (enabled by default),
|
|
6695
|
+
* [`manualColumnResize`](#manualColumnResize), or [`hiddenColumns`](#hiddenColumns). The grid
|
|
6696
|
+
* then keeps the static offset of 1 column on each side.
|
|
6697
|
+
*
|
|
6698
|
+
* An explicit number switches the option to a manual mode: exactly that many extra columns
|
|
6699
|
+
* render on both sides, with no scroll-direction overscan.
|
|
6700
|
+
*
|
|
6036
6701
|
* The `viewportColumnRenderingOffset` setting is ignored when [`renderAllColumns`](#renderAllColumns) is set to `true`.
|
|
6037
6702
|
*
|
|
6038
6703
|
* Read more:
|
|
6039
6704
|
* - [Performance: Define the number of pre-rendered rows and columns](@/guides/optimization/performance/performance.md#define-the-number-of-pre-rendered-rows-and-columns)
|
|
6040
6705
|
*
|
|
6706
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6707
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6708
|
+
*
|
|
6041
6709
|
* @memberof Options#
|
|
6042
6710
|
* @type {number|'auto'}
|
|
6043
6711
|
* @default 'auto'
|
|
@@ -6061,12 +6729,30 @@ const _default = ()=>{
|
|
|
6061
6729
|
* | `auto` (default) | Use the offset calculated automatically by Handsontable |
|
|
6062
6730
|
* | A number | Set the offset manually |
|
|
6063
6731
|
*
|
|
6732
|
+
* With `auto`, the option works in a dynamic overscan mode: Handsontable renders 1 extra row
|
|
6733
|
+
* on each side of the viewport and, while you scroll vertically, extends the rendered area by
|
|
6734
|
+
* up to 4 extra rows in the scroll direction, so consecutive scroll steps reuse the
|
|
6735
|
+
* already-rendered rows instead of re-rendering them.
|
|
6736
|
+
*
|
|
6737
|
+
* The scroll-direction overscan works only when Handsontable knows every row's height up
|
|
6738
|
+
* front and all rows share the same height: keep the default [`rowHeights`](#rowHeights) or
|
|
6739
|
+
* set it to a single number. Features that measure or change individual row heights turn the
|
|
6740
|
+
* overscan off for the row axis – for example, [`autoRowSize`](#autoRowSize),
|
|
6741
|
+
* [`manualRowResize`](#manualRowResize), or [`hiddenRows`](#hiddenRows). The grid then keeps
|
|
6742
|
+
* the static offset of 1 row on each side.
|
|
6743
|
+
*
|
|
6744
|
+
* An explicit number switches the option to a manual mode: exactly that many extra rows
|
|
6745
|
+
* render on both sides, with no scroll-direction overscan.
|
|
6746
|
+
*
|
|
6064
6747
|
* The `viewportRowRenderingOffset` setting is ignored when [`renderAllRows`](#renderAllRows) is set to `true`.
|
|
6065
6748
|
*
|
|
6066
6749
|
* Read more:
|
|
6067
6750
|
* - [Performance: Define the number of pre-rendered rows and columns](@/guides/optimization/performance/performance.md#define-the-number-of-pre-rendered-rows-and-columns)
|
|
6068
6751
|
* - [Column virtualization](@/guides/columns/column-virtualization/column-virtualization.md)
|
|
6069
6752
|
*
|
|
6753
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6754
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6755
|
+
*
|
|
6070
6756
|
* @memberof Options#
|
|
6071
6757
|
* @type {number|'auto'}
|
|
6072
6758
|
* @default 'auto'
|
|
@@ -6096,6 +6782,9 @@ const _default = ()=>{
|
|
|
6096
6782
|
* - [Performance: Define the number of pre-rendered rows and columns](@/guides/optimization/performance/performance.md#define-the-number-of-pre-rendered-rows-and-columns)
|
|
6097
6783
|
* - [Column virtualization](@/guides/columns/column-virtualization/column-virtualization.md)
|
|
6098
6784
|
*
|
|
6785
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6786
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6787
|
+
*
|
|
6099
6788
|
* @memberof Options#
|
|
6100
6789
|
* @since 1.14.7
|
|
6101
6790
|
* @type {number|'auto'}
|
|
@@ -6128,6 +6817,9 @@ const _default = ()=>{
|
|
|
6128
6817
|
* - [Performance: Define the number of pre-rendered rows and columns](@/guides/optimization/performance/performance.md#define-the-number-of-pre-rendered-rows-and-columns)
|
|
6129
6818
|
* - [Row virtualization](@/guides/rows/row-virtualization/row-virtualization.md)
|
|
6130
6819
|
*
|
|
6820
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
6821
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
6822
|
+
*
|
|
6131
6823
|
* @memberof Options#
|
|
6132
6824
|
* @since 1.14.7
|
|
6133
6825
|
* @type {number|'auto'}
|
|
@@ -6286,24 +6978,52 @@ const _default = ()=>{
|
|
|
6286
6978
|
*/ wordWrap: true,
|
|
6287
6979
|
/**
|
|
6288
6980
|
* The `sanitizer` option configures the function used to sanitize HTML before it is written to the DOM.
|
|
6289
|
-
*
|
|
6290
|
-
*
|
|
6291
|
-
* when content comes from users or external sources to prevent XSS (e.g. script injection, event handlers).
|
|
6981
|
+
* Sanitization is important when content comes from users or external sources to prevent XSS
|
|
6982
|
+
* (e.g. script injection, event handlers).
|
|
6292
6983
|
*
|
|
6293
6984
|
* By default (when no sanitizer is set), HTML is applied as-is (pass-through). You are responsible for
|
|
6294
6985
|
* XSS protection. Set a sanitizer when you need to allow rich content while stripping or neutralizing
|
|
6295
6986
|
* dangerous markup.
|
|
6296
6987
|
*
|
|
6297
|
-
* The
|
|
6298
|
-
*
|
|
6988
|
+
* The sanitizer covers the HTML that Handsontable writes on your behalf:
|
|
6989
|
+
*
|
|
6990
|
+
* - cells rendered by the [`password`](@/guides/cell-types/password-cell-type/password-cell-type.md) cell type
|
|
6991
|
+
* - column and row headers, including [`nestedHeaders`](#nestedheaders) labels
|
|
6992
|
+
* - [context menu](#contextmenu) and [dropdown menu](#dropdownmenu) item labels
|
|
6993
|
+
* - [`select`](@/api/options.md#selectoptions) editor options
|
|
6994
|
+
* - [dialog](#dialog) and [notification](#notification) content
|
|
6995
|
+
* - HTML pasted from the clipboard, and Handsontable's own clipboard payload carrying the source
|
|
6996
|
+
* data behind copied cells
|
|
6997
|
+
*
|
|
6998
|
+
* Two surfaces are deliberately excluded, because both exist to render raw markup you supply:
|
|
6999
|
+
* the [`html`](@/guides/cell-types/cell-type/cell-type.md) cell type, and
|
|
7000
|
+
* [`allowHtml`](#allowhtml) sources in `autocomplete` and `dropdown` cells. Sanitize that content
|
|
7001
|
+
* yourself before passing it to the grid.
|
|
7002
|
+
*
|
|
7003
|
+
* The function receives the raw HTML string and a second argument (source) naming the write surface
|
|
7004
|
+
* (`'header'`, `'password'`, `'contextMenu'`, `'selectEditor'`, `'dialog'`, `'notification'`,
|
|
7005
|
+
* `'CopyPaste.paste'`, `'CopyPaste.paste.sourceData'`), so you can apply different rules per source.
|
|
6299
7006
|
* It must return a string that is safe to assign to `innerHTML`.
|
|
6300
7007
|
*
|
|
7008
|
+
* In TypeScript, annotate that parameter with the exported `SanitizerContext` type
|
|
7009
|
+
* (see [TypeScript types](@/guides/tools-and-building/typescript-types/typescript-types.md))
|
|
7010
|
+
* to get editor completion on the values above.
|
|
7011
|
+
*
|
|
7012
|
+
* `'CopyPaste.paste.sourceData'` carries Handsontable's own clipboard payload, the one that lets an
|
|
7013
|
+
* object-valued cell survive a copy between grids. It is parsed into an inert document, so returning it
|
|
7014
|
+
* unchanged does not expose you to a crafted clipboard, and doing so is what keeps
|
|
7015
|
+
* [`parsePastedValue`](#parsepastedvalue) working under a sanitizer that escapes HTML rather than
|
|
7016
|
+
* stripping it.
|
|
7017
|
+
*
|
|
6301
7018
|
* This option is only respected when set in the table settings. It does not work when defined per column
|
|
6302
7019
|
* or per cell (e.g. in `columns` or cell meta).
|
|
6303
7020
|
*
|
|
7021
|
+
* This option can only be set at the [grid level](@/guides/getting-started/configuration-options/configuration-options.md#set-grid-options).
|
|
7022
|
+
* It has no effect when set in the [`columns`](#columns), [`cells`](#cells), or [`cell`](#cell) options.
|
|
7023
|
+
*
|
|
6304
7024
|
* @since 17.0.0
|
|
6305
7025
|
* @memberof Options#
|
|
6306
|
-
* @type {function(string,
|
|
7026
|
+
* @type {function(string, SanitizerContext): string}
|
|
6307
7027
|
* @default undefined
|
|
6308
7028
|
* @category Core
|
|
6309
7029
|
*
|