← All packages

API reference

@searsuite/sear-render-engine

Frame scheduling, dirty-region coordination, and Sheet render orchestration.

37 exportsderived from source

Concept 1

From owner state to a frame

DataEngine publishes typed field projections from state-owning features. SheetRenderEngine consumes the selected projections, tracks dirty regions, and schedules a frame. Render nodes and strategies turn those values into draw operations on a RenderContext; the host supplies the concrete drawing adapter.

A command changes owner state first. After commit, the relevant projection and dirty region determine what is repainted. Rendering a value does not make it durable document state: formula results, layout caches, and viewport data may be derived or local to one editor session.

Concept 2

Choose render and input adapters

A visual editor needs a render context, text shaping, input, and viewport adapters compatible with its host. RenderContextFactory helps the assembly obtain the chosen context; Canvas, SVG, and other concrete adapters stay outside the portable domain model. A headless editor can omit visual services.

Use when: building a visual host or contributing a rendering feature. Register the feature's data field or visual reader at its owner, then consume that projection in the render layer. Host event handlers should request edits through commands rather than changing render data directly.

classDataEnginesource ↗
class DataEngine

Base registry for plugin-owned data engines.

Concrete engines can register custom data types by plugin key while exposing their own initialization and read APIs.

constructorconstructor
DataEngine(): DataEngine
propertysymbolstatic
readonly symbol: typeof symbol

DI token for resolving the abstract data engine singleton.

methodenforceWriteBoundary
enforceWriteBoundary(token: object): void

Restricts registered state and view changes to the owning runtime after setup.

token: object
methodgetDataType
getDataType<T>(key: PluginKey): T | undefined

Retrieves a plugin-owned data value.

ReturnsRegistered value, or void 0 when absent.

key: PluginKey

Plugin key to read.

methodgetDataTypeOptions
getDataTypeOptions(key: PluginKey): DataEngineRegistrationOptions<unknown> | undefined

Reads registration metadata for a plugin-owned data value.

ReturnsRegistration metadata, or void 0 when the key is not registered.

key: PluginKey

Plugin key to inspect.

methodgetDataViewFieldKeys
getDataViewFieldKeys(viewKey: string): string[]

Lists fields registered for one named data view.

ReturnsField names in registration order.

viewKey: string

Named data view to inspect.

methodgetRegisteredDataTypeKey
getRegisteredDataTypeKey(key: string): PluginKey | undefined

Resolves a transport-safe plugin-key string to the registered key object.

PluginKey construction intentionally creates a unique identity, so remote transports must resolve the received string back to this registry's existing key before creating a transaction for PluginManager.

ReturnsRegistered PluginKey, or void 0 when no state owner has that key.

key: string

Stable key string carried by a transport message.

methodhasDataType
hasDataType(key: PluginKey): boolean

Reports whether a plugin state has been registered with this engine.

ReturnsTrue when the key owns a DataEngine-visible state value.

key: PluginKey

Plugin key to inspect.

methodinitialize
initialize(): void

Initializes engine-owned registries or projections.

methodreadDataViewField
readDataViewField<FieldType>(viewKey: string, fieldKey: string): FieldType | undefined

Reads one field from a named data view without materializing the whole view.

ReturnsField value, or void 0 when the field is unregistered or unavailable.

viewKey: string

Named data view containing the field.

fieldKey: string

Field to read.

methodregisterDataType
registerDataType<StateType>(key: PluginKey, value: StateType, options?: DataEngineRegistrationOptions<StateType>, token?: object): void

Registers a plugin-owned data value.

key: PluginKey

Plugin key owning the data.

value: StateType

Data value to store.

options: DataEngineRegistrationOptions<StateType>
token: object
methodregisterDataViewField
registerDataViewField<StateType>(ownerKey: PluginKey, field: DataEngineViewFieldRegistration<StateType>, token?: object): void

Registers one field selector for a named data view.

ThrowsDataViewFieldDuplicateError when another owner already registered the same field in the same view.

ownerKey: PluginKey

Plugin key whose current state feeds the selector.

field: DataEngineViewFieldRegistration<StateType>

Named view field selector.

token: object
methodreplaceDataType
replaceDataType(key: PluginKey, value: unknown, token?: object): void

Replaces a plugin-owned data value.

key: PluginKey

Plugin key owning the data.

value: unknown

New data value.

token: object
classDataViewFieldDuplicateErrorsource ↗
class DataViewFieldDuplicateError extends SearError

Error thrown when two different state owners try to publish the same data view field.

constructorconstructor
DataViewFieldDuplicateError(details: { existingOwnerKey: string; fieldKey: string; ownerKey: string; viewKey: string }): DataViewFieldDuplicateError

Creates a duplicate data view field error.

details: { existingOwnerKey: string; fieldKey: string; ownerKey: string; viewKey: string }

View key, field key, existing owner, and conflicting owner.

propertycode
readonly code: "DATA_VIEW_FIELD_DUPLICATE"

Stable machine-readable code for duplicate data view field registrations.

Inherited members 9

Inherited from SearError.

classRenderContextFactorysource ↗
class RenderContextFactory

Factory registry for render-context implementations.

constructorconstructor
RenderContextFactory(): RenderContextFactory
methodcreateContextstatic
createContext(type: string | symbol, args: unknown): RenderContext

Creates a render context for a registered type.

ReturnsNew render context instance.

type: string | symbol

Context type key.

args: unknown

Adapter-specific construction input.

methodregisterContextstatic
registerContext(type: string | symbol, contextCreator: (args: unknown): RenderContext): void

Registers a render-context creator.

type: string | symbol

Context type key.

contextCreator: (args: unknown): RenderContext

Factory invoked by createContext().

classRenderEnginesource ↗
class RenderEngine<NodeType, RenderCoordinatorManagerType>

Schedules frames and applies a render strategy to the current scene.

constructorconstructor
RenderEngine<NodeType, RenderCoordinatorManagerType>(scrollManager: ScrollManager, renderContext: RenderContext, configEngine: ConfigEngine, renderCoordinatorManager: RenderCoordinatorManagerType, renderStrategyManager: RenderStrategyManager<NodeType>): RenderEngine<NodeType, RenderCoordinatorManagerType>

Creates a RenderEngine instance.

scrollManager: ScrollManager
renderContext: RenderContext
configEngine: ConfigEngine
renderCoordinatorManager: RenderCoordinatorManagerType
renderStrategyManager: RenderStrategyManager<NodeType>
propertyconfigEngine
readonly configEngine: ConfigEngine
propertyrenderContext
readonly renderContext: RenderContext
propertyrenderCoordinatorManager
readonly renderCoordinatorManager: RenderCoordinatorManagerType
propertyrenderStrategyManager
readonly renderStrategyManager: RenderStrategyManager<NodeType>
propertyscrollManager
readonly scrollManager: ScrollManager
propertysymbolstatic
readonly symbol: symbol

DI token for resolving RenderEngine.

methodinitialize
initialize(): void

Initializes RenderEngine.

methodinvalidateScreenCache
invalidateScreenCache(): void

Discard pixel-cache reuse before the next render.

methodmarkDirty
markDirty(rect: PositionRect<templateLiteral>): void

Marks a region or the current scene for rendering on the next frame.

rect: PositionRect<templateLiteral>
methodrender
render(node: Node<NodeType>): void

Renders RenderEngine scene output.

node: Node<NodeType>
methodresize
resize(width: number, height: number, scale: number): void

Resizes the render target and invalidates dependent frame state.

width: number
height: number
scale: number
methodsetViewScale
setViewScale(scale: number): void

Updates the view scale.

scale: number
classSheetDataEnginesource ↗
class SheetDataEngine extends DataEngine

Data engine specialization for sheet matrix state.

constructorconstructor
SheetDataEngine(): SheetDataEngine
methodinitialize
initialize(): void

Initializes sheet data projections.

Inherited members 11

Inherited from DataEngine.

classSheetDataPluginsource ↗
class SheetDataPlugin extends Plugin<unknown, CellProperties, SheetDataPluginState>

Plugin that owns the persisted sheet cell matrix.

It applies cell and sheet-structure transactions through MatrixOT and builds inverse OT payloads for inversion. Derived projections such as alignment and dimensions live in their own feature plugins.

constructorconstructor
SheetDataPlugin(state: SheetDataPluginState, formatCodecs?: (): CellFormatTransferRegistry): SheetDataPlugin

Constructs the sheet data plugin.

state: SheetDataPluginState

Shared sheet data state.

formatCodecs: (): CellFormatTransferRegistry
propertydocumentState
readonly documentState: PluginDocumentStateContribution<SheetDataPluginState, SheetDataPluginState>

SheetDataPlugin owns the persisted sheet-data export module.

propertyinterestedIn
interestedIn: string[]

Sheet data reacts to cell changes and row/column structure edits from any command owner.

propertytransactionOT
readonly transactionOT: { collaborative: boolean; definition: TransactionOTDefinition<MatrixOTOperation<unknown>>; ownerId: string; relations: OTTransformRelation<MatrixOTOperation<unknown>, MatrixOTOperation<unknown>>[] }

Sheet data transactions share the registered MatrixOT algebra.

propertywarnOnDuplicateDepth
readonly warnOnDuplicateDepth: false

Sheet data is state-only; duplicate render/event depth diagnostics do not apply.

propertydocumentStatestatic
readonly documentState: PluginDocumentStateContribution<SheetDataPluginState, SheetDataPluginState>

Document-state export contribution for persisted sheet cells.

propertypluginKeystatic
readonly pluginKey: PluginKey

Stable plugin key shared by all sheet data plugin instances.

propertysymbolstatic
readonly symbol: symbol

DI token for resolving the sheet data plugin.

methodapply
apply(pluginState: SheetDataPluginState, transaction: Transaction): SheetDataPluginState | null

Applies sheet-data operations to the persisted cell matrix.

ReturnsUpdated plugin state, or null when the transaction has no relevant operations.

pluginState: SheetDataPluginState

Current sheet data state.

transaction: Transaction

Transaction containing MatrixOT-compatible operations.

methodgetPluginConfig
getPluginConfig(): null

Sheet data has no render-time configuration.

methodregisterFormatTransfers
registerFormatTransfers(registry: SheetFormatTransferRegistry): void

Contributes this owner's cell state to atomic range moves.

registry: SheetFormatTransferRegistry
methodregisterQueries
registerQueries(queries: SheetDataQueryRegistry): void

Publishes a live read-only projection for consumers that do not need an export snapshot.

queries: SheetDataQueryRegistry
methodregisterRangeMoves
registerRangeMoves(registry: SheetRangeMoveRegistry): void
registry: SheetRangeMoveRegistry
methodregisterRangeReorders
registerRangeReorders(registry: SheetRangeReorderRegistry): void
registry: SheetRangeReorderRegistry
methodregisterState
registerState(): { dataEngine: { dataView: { fieldKey: string; select: (state: unknown): SheetMatrix; viewKey: string }[] }; key: PluginKey; state: SheetDataPluginState }

Registers the sheet data matrix for commands, rendering, and collaboration.

methodrender
render(): Node<CellProperties>[]

Sheet data does not render scene nodes directly.

ReturnsAn empty node list.

Inherited members 26

Inherited from Plugin.

classSheetRenderEnginesource ↗
class SheetRenderEngine extends RenderEngine<CellProperties, SheetRenderCoordinatorManager>

Coordinates Sheet invalidation, frame scheduling, and screen-cache reuse.

constructorconstructor
SheetRenderEngine(scrollManager: ScrollManager, renderContext: RenderContext, offScreenRenderContext: RenderContext, hitRenderContext: RenderContext, configEngine: ConfigEngine, renderCoordinatorManager: SheetRenderCoordinatorManager, renderStrategyManager: RenderStrategyManager<CellProperties>, screenRenderStrategy: ScreenRenderStrategy<CellProperties>, dirtyRenderStrategy: DirtyRenderStrategy<CellProperties>, stickyRenderStrategy: StickyRenderStrategy<CellProperties>, overlayRenderStrategy: OverlayRenderStrategy<CellProperties>): SheetRenderEngine

Creates a SheetRenderEngine instance.

scrollManager: ScrollManager
renderContext: RenderContext
offScreenRenderContext: RenderContext
hitRenderContext: RenderContext
configEngine: ConfigEngine
renderCoordinatorManager: SheetRenderCoordinatorManager
renderStrategyManager: RenderStrategyManager<CellProperties>
screenRenderStrategy: ScreenRenderStrategy<CellProperties>
dirtyRenderStrategy: DirtyRenderStrategy<CellProperties>
stickyRenderStrategy: StickyRenderStrategy<CellProperties>
overlayRenderStrategy: OverlayRenderStrategy<CellProperties>
methodapply
apply(operations: MatrixOTOperation<number>[]): void

Applies a transaction to SheetRenderEngine state.

operations: MatrixOTOperation<number>[]
methodgetLayer
getLayer(): void

Returns the layer.

methodgetStage
getStage(): void

Returns the stage.

methodinitialize
initialize(): void

Initializes SheetRenderEngine.

methodinvalidateScreenCache
invalidateScreenCache(): void

Drops retained screen content so the next frame repaints it.

methodmarkDirty
markDirty(rect: PositionRect<templateLiteral>): void

Marks a region or the current scene for rendering on the next frame.

rect: PositionRect<templateLiteral>
methodonClick
onClick(): void

Handles the click lifecycle event.

methodonScroll
onScroll(scrollManagerState: ScrollManagerState): void

Handles the scroll lifecycle event.

scrollManagerState: ScrollManagerState
methodrender
render(node: Node<CellProperties>): void

Renders SheetRenderEngine scene output.

node: Node<CellProperties>
methodresize
resize(width: number, height: number, scale: number): void

Resizes every canvas layer and invalidates scroll optimization buffers.

width: number
height: number
scale: number
methodsetViewScale
setViewScale(scale: number): void

Updates the view scale.

scale: number
Inherited members 6

Inherited from RenderEngine.

classVisibleRowDimensionssource ↗
class VisibleRowDimensions extends DimensionsCSRMatrix

Dimension view shared by layout, hit testing, and rendering.

constructorconstructor
VisibleRowDimensions(source: DimensionsCSRMatrix, visibility: SheetRowVisibility): VisibleRowDimensions
source: DimensionsCSRMatrix
visibility: SheetRowVisibility
methodgetDefaultValue
getDefaultValue(): number | undefined

Returns the configured fallback used for absent sparse entries, if one exists.

methodgetDimensionsMap
getDimensionsMap(): number[]

Computes and returns the cumulative dimension map.

The dimensions map stores the cumulative sum of all dimension values up to each column. For example, if dimensions are [10, 20, 30], the map is [10, 30, 60]. This allows O(1) lookups of boundaries without recalculating sums.

Result is cached until the matrix is modified. Cache is automatically invalidated when rows/columns are added, deleted, or modified.

ReturnsArray where element i contains the sum of dimensions 0..i Time Complexity: O(rows * cols) on first call or after modification, O(1) for cached result

Example
const matrix = new DimensionsCSRMatrix(...);
const map = matrix.getDimensionsMap(); // [10, 30, 60]
methodgetItem
getItem(row: number, column: number): number | null

Retrieves an item from the matrix at the specified row and column.

ReturnsThe item at the specified position or null if not present.

row: number

The row index.

column: number
Inherited members 37

Inherited from DimensionsCSRMatrix.

interfaceDataEngineRegistrationOptionssource ↗
interface DataEngineRegistrationOptions<StateType>

Metadata associated with one DataEngine state registration.

propertydataView
readonly dataView?: readonly DataEngineViewFieldRegistration<StateType>[]

Field selectors contributed by the registered state to named data views.

interfaceDataEngineViewFieldRegistrationsource ↗
interface DataEngineViewFieldRegistration<StateType>

Field metadata associated with one DataEngine state registration.

propertyfieldKey
readonly fieldKey: string

Field name written into the named view.

propertyrequired
readonly required?: boolean

When false, missing owner state or void field values do not make the containing view unavailable.

propertyselect
readonly select: (state: StateType): unknown

Reads the field value from the current owner state.

propertyviewKey
readonly viewKey: string

Named read model that receives the selected field.

interfaceSheetCellDataReadersource ↗
interface SheetCellDataReader

Read-only live cell-data projection exposed by SheetDataPlugin.

propertyshape
readonly shape: readonly number[]
methodforEachStoredInRange
forEachStoredInRange(startRow: number, startColumn: number, endRow: number, endColumn: number, visit: (cell: CellMatrixElement, row: number, column: number): void): void
startRow: number
startColumn: number
endRow: number
endColumn: number
visit: (cell: CellMatrixElement, row: number, column: number): void
methodgetItem
getItem(row: number, column: number): CellMatrixElement | null
row: number
column: number
interfaceSheetDataPluginStatesource ↗
interface SheetDataPluginState

State owned by SheetDataPlugin.

propertysheetData
sheetData: SheetMatrix

Main sheet matrix containing persisted cell values.

interfaceSheetDataQueryRegistrysource ↗
interface SheetDataQueryRegistry

Minimal query registry surface consumed by SheetDataPlugin.

methodregister
register(definition: ReadSheetCellDataQueryDefinition, handler: (input: void): SheetCellDataReader): (): void
definition: ReadSheetCellDataQueryDefinition
handler: (input: void): SheetCellDataReader
interfaceSheetRowVisibilitysource ↗
interface SheetRowVisibility

A Sheet presentation contribution that can suppress rows without changing their stored heights.

propertyactive
readonly active: boolean
propertyversion
readonly version: number
methodisRowFiltered
isRowFiltered(row: number): boolean
row: number
typeDataEngineViewFieldSelectorsource ↗
type DataEngineViewFieldSelector = { select: unknown }["select"]

Selector used to publish one registered state field into a named data view.

variableReadSheetCellDataQuerysource ↗
ReadSheetCellDataQuery: ReadSheetCellDataQueryDefinition

Reads the mounted editor's live cell matrix without creating a document snapshot.

variableSheetDataFieldNamespacesource ↗
SheetDataFieldNamespace: "SheetDataFields"

Shared DataEngine view containing Sheet feature projections.

variableSheetDataMatrixFieldKeysource ↗
SheetDataMatrixFieldKey: "sheet.data"

DataEngine field owned by SheetDataPlugin.

functioncreateInvertibleProjectedOperationssource ↗
createInvertibleProjectedOperations<T>(matrix: CSRMatrix<T>, operations: Operation[], createInvertible: (matrix: CSRMatrix<T>, operation: Operation): MatrixOTOperation<T> | null): MatrixOTOperation<T>[]

Builds invertible operations for a matrix projection by replaying through a cloned snapshot.

ReturnsOrdered MatrixOT operations with completed inverse payloads.

matrix: CSRMatrix<T>

Projection matrix before the transaction.

operations: Operation[]

Source transaction operations.

createInvertible: (matrix: CSRMatrix<T>, operation: Operation): MatrixOTOperation<T> | null

Projection-specific operation builder.

functionreadDenseColumnsource ↗
readDenseColumn<T>(matrix: CSRMatrix<T>, colIndex: number): T | null[]

Reads a dense column snapshot from a sparse matrix.

ReturnsDense column including null entries for empty cells.

matrix: CSRMatrix<T>

Matrix to read.

colIndex: number

Column index to snapshot.

functionreadDenseRowsource ↗
readDenseRow<T>(matrix: CSRMatrix<T>, rowIndex: number): T | null[]

Reads a dense row snapshot from a sparse matrix.

ReturnsDense row including null entries for empty cells.

matrix: CSRMatrix<T>

Matrix to read.

rowIndex: number

Row index to snapshot.

functionreadSheetDataMatrixsource ↗
readSheetDataMatrix(dataEngine: DataEngine): SheetMatrix | null

Reads the persisted cell matrix published by SheetDataPlugin.

dataEngine: DataEngine
functionreadSheetRawRowSizessource ↗
readSheetRawRowSizes(dataEngine: DataEngine): DimensionsCSRMatrix | null

Reads the resize owner's stored row heights, without presentation visibility.

dataEngine: DataEngine
functionregisterReadSheetCellDataQuerysource ↗
registerReadSheetCellDataQuery(queries: SheetDataQueryRegistry, read: (): SheetMatrix): void

Registers the live, read-only cell-data projection owned by SheetDataPlugin.

queries: SheetDataQueryRegistry
read: (): SheetMatrix
interfaceCellMatrixElementsource ↗
interface CellMatrixElement

Persisted cell payload stored in the sheet matrix.

propertyformula
formula?: string

Formula source text for formula cells; calculated results live in formula plugin state.

propertyformulaEvaluationMode
formulaEvaluationMode?: "dynamic" | "legacy"

Array evaluation mode used when the formula was entered.

propertytype
type: string

Cell type identifier owned by the cell type catalog.

propertyvalue
value?: unknown

Raw value whose shape is owned by the cell type.

classDocRenderEnginesource ↗
class DocRenderEngine extends RenderEngine<NodeProperties, RenderCoordinatorManager>

Document render engine that mirrors Sheet's fixed strategy chain.

Domain-specific layout and SceneGraph projection happen before this class. The render engine owns only SceneGraph painting, dirty marks, viewport resizing, and ordered strategy dispatch.

constructorconstructor
DocRenderEngine(scrollManager: ScrollManager, renderContext: RenderContext, configEngine: ConfigEngine, renderCoordinatorManager: RenderCoordinatorManager, stage: SceneGraph<NodeProperties>, renderStrategyManager: RenderStrategyManager<NodeProperties>, screenRenderStrategy: ScreenRenderStrategy<NodeProperties>, dirtyRenderStrategy: DirtyRenderStrategy<NodeProperties>, stickyRenderStrategy: StickyRenderStrategy<NodeProperties>, overlayRenderStrategy: OverlayRenderStrategy<NodeProperties>): DocRenderEngine

Creates a render engine for one document editor instance.

scrollManager: ScrollManager
renderContext: RenderContext
configEngine: ConfigEngine
renderCoordinatorManager: RenderCoordinatorManager
stage: SceneGraph<NodeProperties>
renderStrategyManager: RenderStrategyManager<NodeProperties>
screenRenderStrategy: ScreenRenderStrategy<NodeProperties>
dirtyRenderStrategy: DirtyRenderStrategy<NodeProperties>
stickyRenderStrategy: StickyRenderStrategy<NodeProperties>
overlayRenderStrategy: OverlayRenderStrategy<NodeProperties>
propertysymbolstatic
readonly symbol: symbol

DI token for resolving DocRenderEngine.

methodgetLastScreenRenderMode
getLastScreenRenderMode(): ScreenRenderFrameMode | null

Returns the screen strategy mode used by the last render pass, if it painted.

methodinitialize
initialize(): void

Initializes DocRenderEngine.

methodinvalidateScreenCache
invalidateScreenCache(): void

Invalidates the off-screen body cache used by the screen strategy.

methodmarkDirty
markDirty(rect: PositionRect<templateLiteral>): void

Marks one document-world rectangle dirty for the next dirty pass.

rect: PositionRect<templateLiteral>
methodrender
render(node: Node<NodeProperties>): void

Runs the configured document render strategies over the current scene graph.

node: Node<NodeProperties>
methodresize
resize(width: number, height: number, scale: number): void

Resizes all Doc render layers and invalidates screen-cache reuse.

width: number
height: number
scale: number
methodsetBlockRasterCopyPlan
setBlockRasterCopyPlan(plan: BlockRasterCopyPlan | null): void

Supplies one layout-shift raster-copy plan for the next screen render pass.

plan: BlockRasterCopyPlan | null
methodsetViewport
setViewport(viewport: DocRenderViewport): void

Updates the viewport model used by subsequent render frames.

viewport: DocRenderViewport
methodsetViewScale
setViewScale(scale: number): void

Updates the view scale on every render strategy context.

scale: number
Inherited members 5

Inherited from RenderEngine.

interfaceDocRenderViewportsource ↗
interface DocRenderViewport

Snapshot of the current document viewport used by render strategies.

propertycontentRect
readonly contentRect: PositionRectProps

Editable content rectangle inside the viewport.

propertyheight
readonly height: number

Visible viewport height in host-view units.

propertywidth
readonly width: number

Visible viewport width in host-view units.

functionreadSheetColumnHiddenOriginalSizessource ↗
readSheetColumnHiddenOriginalSizes(dataEngine: DataEngine): CSRMatrix<number> | null

Reads original column sizes captured while columns are hidden.

dataEngine: DataEngine
functionreadSheetColumnSizessource ↗
readSheetColumnSizes(dataEngine: DataEngine): DimensionsCSRMatrix | null

Reads column dimensions published by SheetResizePlugin.

dataEngine: DataEngine
functionreadSheetRowHiddenOriginalSizessource ↗
readSheetRowHiddenOriginalSizes(dataEngine: DataEngine): CSRMatrix<number> | null

Reads original row sizes captured while rows are hidden.

dataEngine: DataEngine
functionreadSheetRowSizessource ↗
readSheetRowSizes(dataEngine: DataEngine): DimensionsCSRMatrix | null

Reads row dimensions published by SheetResizePlugin.

dataEngine: DataEngine
variableSheetColumnHiddenOriginalSizesFieldKeysource ↗
SheetColumnHiddenOriginalSizesFieldKey: "sheet.resize.columnHiddenOriginalSizes"

DataEngine field for original dimensions of hidden columns owned by SheetResizePlugin.

variableSheetColumnSizesFieldKeysource ↗
SheetColumnSizesFieldKey: "sheet.resize.columnSizes"

DataEngine field for column dimensions owned by SheetResizePlugin.

classSheetMatrixsource ↗
class SheetMatrix extends CSRMatrix<CellMatrixElement>

SheetMatrix public API.

constructorconstructor
SheetMatrix(data?: { data: CellMatrixElement[]; indices: number[]; indptr: number[] }, shape?: [number, number]): SheetMatrix

Constructs a CSRMatrix instance.

data: { data: CellMatrixElement[]; indices: number[]; indptr: number[] }

The data for the matrix.

shape: [number, number]

The shape of the matrix as [numRows, numCols].

methodclone
clone(): this

Copies stored cell payloads as well as sparse indexes.

Inherited members 34

Inherited from CSRMatrix.

variableSheetRowHiddenOriginalSizesFieldKeysource ↗
SheetRowHiddenOriginalSizesFieldKey: "sheet.resize.rowHiddenOriginalSizes"

DataEngine field for original dimensions of hidden rows owned by SheetResizePlugin.

variableSheetRowSizesFieldKeysource ↗
SheetRowSizesFieldKey: "sheet.resize.rowSizes"

DataEngine field for row dimensions owned by SheetResizePlugin.

variableSheetRowVisibilityFieldKeysource ↗
SheetRowVisibilityFieldKey: "sheet.filter.rowVisibility"

Neutral field contract re-exported by the plugin that owns the contribution.