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 DataEngineBase 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(): DataEnginepropertysymbolstatic readonly symbol: typeof symbolDI token for resolving the abstract data engine singleton.
methodenforceWriteBoundary enforceWriteBoundary(token: object): voidRestricts registered state and view changes to the owning runtime after setup.
token: object
methodgetDataType getDataType<T>(key: PluginKey): T | undefinedRetrieves a plugin-owned data value.
ReturnsRegistered value, or void 0 when absent.
key: PluginKeyPlugin key to read.
methodgetDataTypeOptions getDataTypeOptions(key: PluginKey): DataEngineRegistrationOptions<unknown> | undefinedReads registration metadata for a plugin-owned data value.
ReturnsRegistration metadata, or void 0 when the key is not registered.
key: PluginKeyPlugin key to inspect.
methodgetDataViewFieldKeys getDataViewFieldKeys(viewKey: string): string[]Lists fields registered for one named data view.
ReturnsField names in registration order.
viewKey: stringNamed data view to inspect.
methodgetRegisteredDataTypeKey getRegisteredDataTypeKey(key: string): PluginKey | undefinedResolves 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: stringStable key string carried by a transport message.
methodhasDataType hasDataType(key: PluginKey): booleanReports whether a plugin state has been registered with this engine.
ReturnsTrue when the key owns a DataEngine-visible state value.
key: PluginKeyPlugin key to inspect.
methodinitialize initialize(): voidInitializes engine-owned registries or projections.
methodreadDataViewField readDataViewField<FieldType>(viewKey: string, fieldKey: string): FieldType | undefinedReads 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: stringNamed data view containing the field.
fieldKey: stringField to read.
methodregisterDataType registerDataType<StateType>(key: PluginKey, value: StateType, options?: DataEngineRegistrationOptions<StateType>, token?: object): voidRegisters a plugin-owned data value.
key: PluginKeyPlugin key owning the data.
value: StateTypeData value to store.
options: DataEngineRegistrationOptions<StateType>token: object
methodregisterDataViewField registerDataViewField<StateType>(ownerKey: PluginKey, field: DataEngineViewFieldRegistration<StateType>, token?: object): voidRegisters one field selector for a named data view.
ThrowsDataViewFieldDuplicateError when another owner already registered the same field in the same view.
ownerKey: PluginKeyPlugin key whose current state feeds the selector.
field: DataEngineViewFieldRegistration<StateType>Named view field selector.
token: object
methodreplaceDataType replaceDataType(key: PluginKey, value: unknown, token?: object): voidReplaces a plugin-owned data value.
key: PluginKeyPlugin key owning the data.
value: unknownNew data value.
token: object
- classDataViewFieldDuplicateErrorsource ↗
-
class DataViewFieldDuplicateError extends SearErrorError 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 }): DataViewFieldDuplicateErrorCreates 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 RenderContextFactoryFactory registry for render-context implementations.
constructorconstructor RenderContextFactory(): RenderContextFactorymethodcreateContextstatic createContext(type: string | symbol, args: unknown): RenderContextCreates a render context for a registered type.
ReturnsNew render context instance.
type: string | symbolContext type key.
args: unknownAdapter-specific construction input.
methodregisterContextstatic registerContext(type: string | symbol, contextCreator: (args: unknown): RenderContext): voidRegisters a render-context creator.
type: string | symbolContext type key.
contextCreator: (args: unknown): RenderContextFactory 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: ScrollManagerrenderContext: RenderContextconfigEngine: ConfigEnginerenderCoordinatorManager: RenderCoordinatorManagerTyperenderStrategyManager: RenderStrategyManager<NodeType>
propertyconfigEngine readonly configEngine: ConfigEnginepropertyrenderContext readonly renderContext: RenderContextpropertyrenderCoordinatorManager readonly renderCoordinatorManager: RenderCoordinatorManagerTypepropertyrenderStrategyManager readonly renderStrategyManager: RenderStrategyManager<NodeType>propertyscrollManager readonly scrollManager: ScrollManagerpropertysymbolstatic readonly symbol: symbolDI token for resolving RenderEngine.
methodinitialize initialize(): voidInitializes RenderEngine.
methodinvalidateScreenCache invalidateScreenCache(): voidDiscard pixel-cache reuse before the next render.
methodmarkDirty markDirty(rect: PositionRect<templateLiteral>): voidMarks a region or the current scene for rendering on the next frame.
rect: PositionRect<templateLiteral>
methodrender render(node: Node<NodeType>): voidRenders RenderEngine scene output.
node: Node<NodeType>
methodresize resize(width: number, height: number, scale: number): voidResizes the render target and invalidates dependent frame state.
width: numberheight: numberscale: number
methodsetViewScale setViewScale(scale: number): voidUpdates the view scale.
scale: number
- classSheetDataEnginesource ↗
-
class SheetDataEngine extends DataEngineData engine specialization for sheet matrix state.
constructorconstructor SheetDataEngine(): SheetDataEnginemethodinitialize initialize(): voidInitializes 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): SheetDataPluginConstructs the sheet data plugin.
state: SheetDataPluginStateShared 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: falseSheet 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: PluginKeyStable plugin key shared by all sheet data plugin instances.
propertysymbolstatic readonly symbol: symbolDI token for resolving the sheet data plugin.
methodapply apply(pluginState: SheetDataPluginState, transaction: Transaction): SheetDataPluginState | nullApplies sheet-data operations to the persisted cell matrix.
ReturnsUpdated plugin state, or null when the transaction has no relevant operations.
pluginState: SheetDataPluginStateCurrent sheet data state.
transaction: TransactionTransaction containing MatrixOT-compatible operations.
methodgetPluginConfig getPluginConfig(): nullSheet data has no render-time configuration.
methodregisterFormatTransfers registerFormatTransfers(registry: SheetFormatTransferRegistry): voidContributes this owner's cell state to atomic range moves.
registry: SheetFormatTransferRegistry
methodregisterQueries registerQueries(queries: SheetDataQueryRegistry): voidPublishes a live read-only projection for consumers that do not need an export snapshot.
queries: SheetDataQueryRegistry
methodregisterRangeMoves registerRangeMoves(registry: SheetRangeMoveRegistry): voidregistry: SheetRangeMoveRegistry
methodregisterRangeReorders registerRangeReorders(registry: SheetRangeReorderRegistry): voidregistry: 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.
- depth
- pluginKey
- transactionHistory
- key
- dirtyRect
- enforceRuntimeWriteBoundary
- enforceStateWriteBoundary
- getState
- hasStateWriteBoundary
- lockCommittedState
- onClick
- onDblClick
- onInitialDataCell
- onInitialDataComplete
- onMouseDown
- onMouseMove
- onMouseUp
- onResize
- onScroll
- onTransactionCommitted
- projectTransaction
- registerConfig
- sealRuntimeMetadata
- sealRuntimeMethods
- sealRuntimeWrites
- setState
- 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>): SheetRenderEngineCreates a SheetRenderEngine instance.
scrollManager: ScrollManagerrenderContext: RenderContextoffScreenRenderContext: RenderContexthitRenderContext: RenderContextconfigEngine: ConfigEnginerenderCoordinatorManager: SheetRenderCoordinatorManagerrenderStrategyManager: RenderStrategyManager<CellProperties>screenRenderStrategy: ScreenRenderStrategy<CellProperties>dirtyRenderStrategy: DirtyRenderStrategy<CellProperties>stickyRenderStrategy: StickyRenderStrategy<CellProperties>overlayRenderStrategy: OverlayRenderStrategy<CellProperties>
methodapply apply(operations: MatrixOTOperation<number>[]): voidApplies a transaction to SheetRenderEngine state.
operations: MatrixOTOperation<number>[]
methodgetLayer getLayer(): voidReturns the layer.
methodgetStage getStage(): voidReturns the stage.
methodinitialize initialize(): voidInitializes SheetRenderEngine.
methodinvalidateScreenCache invalidateScreenCache(): voidDrops retained screen content so the next frame repaints it.
methodmarkDirty markDirty(rect: PositionRect<templateLiteral>): voidMarks a region or the current scene for rendering on the next frame.
rect: PositionRect<templateLiteral>
methodonClick onClick(): voidHandles the click lifecycle event.
methodonScroll onScroll(scrollManagerState: ScrollManagerState): voidHandles the scroll lifecycle event.
scrollManagerState: ScrollManagerState
methodrender render(node: Node<CellProperties>): voidRenders SheetRenderEngine scene output.
node: Node<CellProperties>
methodresize resize(width: number, height: number, scale: number): voidResizes every canvas layer and invalidates scroll optimization buffers.
width: numberheight: numberscale: number
methodsetViewScale setViewScale(scale: number): voidUpdates the view scale.
scale: number
Inherited members 6
Inherited from RenderEngine.
- classVisibleRowDimensionssource ↗
-
class VisibleRowDimensions extends DimensionsCSRMatrixDimension view shared by layout, hit testing, and rendering.
constructorconstructor VisibleRowDimensions(source: DimensionsCSRMatrix, visibility: SheetRowVisibility): VisibleRowDimensionssource: DimensionsCSRMatrixvisibility: SheetRowVisibility
methodgetDefaultValue getDefaultValue(): number | undefinedReturns 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
Exampleconst matrix = new DimensionsCSRMatrix(...); const map = matrix.getDimensionsMap(); // [10, 30, 60]methodgetItem getItem(row: number, column: number): number | nullRetrieves an item from the matrix at the specified row and column.
ReturnsThe item at the specified position or null if not present.
row: numberThe row index.
column: number
Inherited members 37
Inherited from DimensionsCSRMatrix.
- name
- ndim
- nnz
- shape
- addColumn
- addItem
- addListener
- addRow
- clone
- cloneCommittedView
- cloneDetached
- cloneForStaging
- deleteColumns
- deleteRows
- dispatch
- dot
- forEach
- forEachStored
- forEachStoredInRange
- forEachStoredInRow
- fromDense
- getCol
- getDimensionLeftBoundaryByIndex
- getDimensionRightBoundaryByIndex
- getLeftBoundaryColIndexByDimension
- getRightBoundaryColIndexByDimension
- getRow
- lockMutations
- multiply
- removeItem
- removeListener
- setDefaultValue
- sum
- swapColumn
- swapRow
- toArray
- transpose
- 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: stringField name written into the named view.
propertyrequired readonly required?: booleanWhen false, missing owner state or void field values do not make the containing view unavailable.
propertyselect readonly select: (state: StateType): unknownReads the field value from the current owner state.
propertyviewKey readonly viewKey: stringNamed read model that receives the selected field.
- interfaceSheetCellDataReadersource ↗
-
interface SheetCellDataReaderRead-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): voidstartRow: numberstartColumn: numberendRow: numberendColumn: numbervisit: (cell: CellMatrixElement, row: number, column: number): void
methodgetItem getItem(row: number, column: number): CellMatrixElement | nullrow: numbercolumn: number
- interfaceSheetDataPluginStatesource ↗
-
interface SheetDataPluginStateState owned by SheetDataPlugin.
propertysheetData sheetData: SheetMatrixMain sheet matrix containing persisted cell values.
- interfaceSheetDataQueryRegistrysource ↗
-
interface SheetDataQueryRegistryMinimal query registry surface consumed by SheetDataPlugin.
methodregister register(definition: ReadSheetCellDataQueryDefinition, handler: (input: void): SheetCellDataReader): (): voiddefinition: ReadSheetCellDataQueryDefinitionhandler: (input: void): SheetCellDataReader
- interfaceSheetRowVisibilitysource ↗
-
interface SheetRowVisibilityA Sheet presentation contribution that can suppress rows without changing their stored heights.
propertyactive readonly active: booleanpropertyversion readonly version: numbermethodisRowFiltered isRowFiltered(row: number): booleanrow: number
- typeDataEngineViewFieldSelectorsource ↗
-
type DataEngineViewFieldSelector = { select: unknown }["select"]Selector used to publish one registered state field into a named data view.
- variableReadSheetCellDataQuerysource ↗
-
ReadSheetCellDataQuery: ReadSheetCellDataQueryDefinitionReads 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> | nullProjection-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: numberColumn 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: numberRow index to snapshot.
- functionreadSheetDataMatrixsource ↗
-
readSheetDataMatrix(dataEngine: DataEngine): SheetMatrix | nullReads the persisted cell matrix published by SheetDataPlugin.
dataEngine: DataEngine
- functionreadSheetRawRowSizessource ↗
-
readSheetRawRowSizes(dataEngine: DataEngine): DimensionsCSRMatrix | nullReads the resize owner's stored row heights, without presentation visibility.
dataEngine: DataEngine
- functionregisterReadSheetCellDataQuerysource ↗
-
registerReadSheetCellDataQuery(queries: SheetDataQueryRegistry, read: (): SheetMatrix): voidRegisters the live, read-only cell-data projection owned by SheetDataPlugin.
queries: SheetDataQueryRegistryread: (): SheetMatrix
- interfaceCellMatrixElementsource ↗
-
interface CellMatrixElementPersisted cell payload stored in the sheet matrix.
propertyformula formula?: stringFormula 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: stringCell type identifier owned by the cell type catalog.
propertyvalue value?: unknownRaw 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>): DocRenderEngineCreates a render engine for one document editor instance.
scrollManager: ScrollManagerrenderContext: RenderContextconfigEngine: ConfigEnginerenderCoordinatorManager: RenderCoordinatorManagerstage: SceneGraph<NodeProperties>renderStrategyManager: RenderStrategyManager<NodeProperties>screenRenderStrategy: ScreenRenderStrategy<NodeProperties>dirtyRenderStrategy: DirtyRenderStrategy<NodeProperties>stickyRenderStrategy: StickyRenderStrategy<NodeProperties>overlayRenderStrategy: OverlayRenderStrategy<NodeProperties>
propertysymbolstatic readonly symbol: symbolDI token for resolving DocRenderEngine.
methodgetLastScreenRenderMode getLastScreenRenderMode(): ScreenRenderFrameMode | nullReturns the screen strategy mode used by the last render pass, if it painted.
methodinitialize initialize(): voidInitializes DocRenderEngine.
methodinvalidateScreenCache invalidateScreenCache(): voidInvalidates the off-screen body cache used by the screen strategy.
methodmarkDirty markDirty(rect: PositionRect<templateLiteral>): voidMarks one document-world rectangle dirty for the next dirty pass.
rect: PositionRect<templateLiteral>
methodrender render(node: Node<NodeProperties>): voidRuns the configured document render strategies over the current scene graph.
node: Node<NodeProperties>
methodresize resize(width: number, height: number, scale: number): voidResizes all Doc render layers and invalidates screen-cache reuse.
width: numberheight: numberscale: number
methodsetBlockRasterCopyPlan setBlockRasterCopyPlan(plan: BlockRasterCopyPlan | null): voidSupplies one layout-shift raster-copy plan for the next screen render pass.
plan: BlockRasterCopyPlan | null
methodsetViewport setViewport(viewport: DocRenderViewport): voidUpdates the viewport model used by subsequent render frames.
viewport: DocRenderViewport
methodsetViewScale setViewScale(scale: number): voidUpdates the view scale on every render strategy context.
scale: number
Inherited members 5
Inherited from RenderEngine.
- interfaceDocRenderViewportsource ↗
-
interface DocRenderViewportSnapshot of the current document viewport used by render strategies.
propertycontentRect readonly contentRect: PositionRectPropsEditable content rectangle inside the viewport.
propertyheight readonly height: numberVisible viewport height in host-view units.
propertywidth readonly width: numberVisible viewport width in host-view units.
- functionreadSheetColumnSizessource ↗
-
readSheetColumnSizes(dataEngine: DataEngine): DimensionsCSRMatrix | nullReads column dimensions published by SheetResizePlugin.
dataEngine: DataEngine
- functionreadSheetRowSizessource ↗
-
readSheetRowSizes(dataEngine: DataEngine): DimensionsCSRMatrix | nullReads row dimensions published by SheetResizePlugin.
dataEngine: DataEngine
- 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]): SheetMatrixConstructs 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(): thisCopies stored cell payloads as well as sparse indexes.
Inherited members 34
Inherited from CSRMatrix.
- name
- ndim
- nnz
- shape
- addColumn
- addItem
- addListener
- addRow
- cloneCommittedView
- cloneDetached
- cloneForStaging
- deleteColumns
- deleteRows
- dispatch
- dot
- forEach
- forEachStored
- forEachStoredInRange
- forEachStoredInRow
- fromDense
- getCol
- getDefaultValue
- getItem
- getRow
- lockMutations
- multiply
- removeItem
- removeListener
- setDefaultValue
- sum
- swapColumn
- swapRow
- toArray
- transpose
- 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.
No public exports match that search.