Skip to content

API > @blocksuite/store > Page

Class: Page ​

Extends ​

Constructors ​

constructor ​

new Page(__namedParameters): Page

Parameters ​

ParameterType
__namedParametersPageOptions

Returns ​

Page

Overrides ​

Space.constructor

Defined In ​

packages/store/src/workspace/page.ts:86

Properties ​

_blockTree ​

private readonly _blockTree: BlockTree

Defined In ​

packages/store/src/workspace/page.ts:41


_docLoaded ​

private _docLoaded: boolean = false

Indicate whether the underlying subdoc has been loaded.

Defined In ​

packages/store/src/workspace/page.ts:45


_history ​

private _history: UndoManager

Defined In ​

packages/store/src/workspace/page.ts:42


_idGenerator ​

private readonly _idGenerator: IdGenerator

Defined In ​

packages/store/src/workspace/page.ts:40


_ready ​

private _ready: boolean = false

Indicate whether the block tree is ready

Defined In ​

packages/store/src/workspace/page.ts:47


_root ​

private _root: null | BaseBlockModel< object > = null

Defined In ​

packages/store/src/workspace/page.ts:43


_shouldTransact ​

private _shouldTransact: boolean = true

Defined In ​

packages/store/src/workspace/page.ts:48


_workspace ​

private readonly _workspace: Workspace

Defined In ​

packages/store/src/workspace/page.ts:39


_yBlocks ​

protected readonly _yBlocks: Map< YBlock >

Defined In ​

packages/store/src/workspace/space.ts:29

Inherited from ​

Space._yBlocks


_ySpaceDoc ​

protected readonly _ySpaceDoc: Doc

Used for convenient access to the underlying Yjs map, can be used interchangeably with ySpace

Defined In ​

packages/store/src/workspace/space.ts:28

Inherited from ​

Space._ySpaceDoc


awarenessStore ​

readonly awarenessStore: AwarenessStore< BlockSuiteFlags >

Defined In ​

packages/store/src/workspace/space.ts:18

Inherited from ​

Space.awarenessStore


doc ​

readonly doc: BlockSuiteDoc

Defined In ​

packages/store/src/workspace/space.ts:17

Inherited from ​

Space.doc


id ​

readonly id: string

Defined In ​

packages/store/src/workspace/space.ts:16

Inherited from ​

Space.id


slots ​

readonly slots: object

Type declaration ​

slots.blockUpdated ​

blockUpdated: Slot< {flavour: string; id: string; type: "add";} | {flavour: string; id: string; model: BaseBlockModel< object >; parent: string; type: "delete";} | {flavour: string; id: string; type: "update";} >

slots.historyUpdated ​

historyUpdated: Slot< void >

slots.ready ​

ready: Slot< void >

This fires when the block tree is initialized via API call or underlying existing ydoc binary. Note that this is different with the doc.loaded field, since loaded only indicates that the ydoc is loaded, not the block tree.

slots.rootAdded ​

rootAdded: Slot< BaseBlockModel< object > >

This fires when the root block is added via API call or has just been initialized from existing ydoc. useful for internal block UI components to start subscribing following up events. Note that at this moment, the whole block tree may not be fully initialized yet.

slots.rootDeleted ​

rootDeleted: Slot< string | string[] >

Defined In ​

packages/store/src/workspace/page.ts:50

Accessors ​

Text ​

get Text(): typeof Text

Defined In ​

packages/store/src/workspace/page.ts:152


blob ​

get blob(): BlobManager

Defined In ​

packages/store/src/workspace/page.ts:126


canRedo ​

get canRedo(): boolean

Defined In ​

packages/store/src/workspace/page.ts:145


canUndo ​

get canUndo(): boolean

Defined In ​

packages/store/src/workspace/page.ts:138


history ​

get history(): UndoManager

Defined In ​

packages/store/src/workspace/page.ts:110


isEmpty ​

get isEmpty(): boolean

Defined In ​

packages/store/src/workspace/page.ts:134


loaded ​

get loaded(): boolean

Defined In ​

packages/store/src/workspace/space.ts:45

Inherited from ​

Space.loaded


meta ​

get meta(): PageMeta

Defined In ​

packages/store/src/workspace/page.ts:122


readonly ​

get readonly(): boolean

Defined In ​

packages/store/src/workspace/page.ts:102


ready ​

get ready(): boolean

Defined In ​

packages/store/src/workspace/page.ts:106


root ​

get root(): null | BaseBlockModel< object >

Defined In ​

packages/store/src/workspace/page.ts:130


schema ​

get schema(): Schema

Defined In ​

packages/store/src/workspace/page.ts:118


spaceDoc ​

get spaceDoc(): Doc

Defined In ​

packages/store/src/workspace/space.ts:49

Inherited from ​

Space.spaceDoc


workspace ​

get workspace(): Workspace

Defined In ​

packages/store/src/workspace/page.ts:114


yBlocks ​

get yBlocks(): Map< State[keyof State] >

Defined In ​

packages/store/src/workspace/space.ts:41

Inherited from ​

Space.yBlocks

Methods ​

_getYBlock ​

private _getYBlock(id): null | YBlock

Parameters ​

ParameterType
idstring

Returns ​

null | YBlock

Defined In ​

packages/store/src/workspace/page.ts:678


_handleVersion ​

private _handleVersion(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:783


_handleYBlockAdd ​

private _handleYBlockAdd(id): void

Parameters ​

ParameterType
idstring

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:688


_handleYBlockDelete ​

private _handleYBlockDelete(id): void

Parameters ​

ParameterType
idstring

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:737


_handleYEvent ​

private _handleYEvent(event): void

Parameters ​

ParameterType
eventYEvent< Text | Array< unknown > | YBlock >

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:754


_handleYEvents ​

private _handleYEvents(events): void

Parameters ​

ParameterType
eventsYEvent< Text | YBlock >[]

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:773


_historyObserver ​

private _historyObserver(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:684


_initYBlocks ​

private _initYBlocks(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:665


addBlock ​

addBlock( flavour, blockProps = {}, parent?, parentIndex?): string

Parameters ​

ParameterType
flavourstring
blockPropsPartial< BlockSysProps & {} & Omit< BlockProps, "flavour" > >
parent?null | string | BaseBlockModel< object >
parentIndex?number

Returns ​

string

Defined In ​

packages/store/src/workspace/page.ts:325


addBlocks ​

addBlocks( blocks, parent?, parentIndex?): string[]

Parameters ​

ParameterType
blocks{blockProps: Partial< BlockSysProps & {} & Omit< BlockProps, "id" | "flavour" > >; flavour: string;}[]
parent?null | string | BaseBlockModel< object >
parentIndex?number

Returns ​

string[]

Defined In ​

packages/store/src/workspace/page.ts:302


addSiblingBlocks ​

addSiblingBlocks( targetModel, props, place = 'after'): string[]

Parameters ​

ParameterTypeDefault value
targetModelBaseBlockModel< object >undefined
propsPartial< BlockProps >[]undefined
place"after" | "before"'after'

Returns ​

string[]

Defined In ​

packages/store/src/workspace/page.ts:520


captureSync ​

captureSync(): void

Capture current operations to undo stack synchronously.

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:186


clear ​

clear(): void

Returns ​

void

Inherited from ​

Space.clear

Defined In ​

packages/store/src/workspace/space.ts:82


deleteBlock ​

deleteBlock(model, options = ...): void

Parameters ​

ParameterType
modelBaseBlockModel< object >
optionsobject
options.bringChildrenTo?BaseBlockModel< object >
options.deleteChildren?boolean

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:552


destroy ​

destroy(): void

Returns ​

void

Inherited from ​

Space.destroy

Defined In ​

packages/store/src/workspace/space.ts:76


dispose ​

dispose(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:653


generateBlockId ​

generateBlockId(): string

Returns ​

string

Defined In ​

packages/store/src/workspace/page.ts:194


getBlockByFlavour ​

getBlockByFlavour(blockFlavour): BaseBlockModel< object >[]

Parameters ​

ParameterType
blockFlavourstring | string[]

Returns ​

BaseBlockModel< object >[]

Defined In ​

packages/store/src/workspace/page.ts:202


getBlockById ​

getBlockById(id): null | BaseBlockModel< object >

Parameters ​

ParameterType
idstring

Returns ​

null | BaseBlockModel< object >

Defined In ​

packages/store/src/workspace/page.ts:198


getInitialPropsByFlavour ​

getInitialPropsByFlavour(flavour): Record< string, any >

Parameters ​

ParameterType
flavourstring

Returns ​

Record< string, any >

Defined In ​

packages/store/src/workspace/page.ts:296


getNextSibling ​

getNextSibling(block): null | BaseBlockModel< object >

Parameters ​

ParameterType
blockBaseBlockModel< object >

Returns ​

null | BaseBlockModel< object >

Defined In ​

packages/store/src/workspace/page.ts:264


getNextSiblings ​

getNextSiblings(block): BaseBlockModel< object >[]

Parameters ​

ParameterType
blockBaseBlockModel< object >

Returns ​

BaseBlockModel< object >[]

Defined In ​

packages/store/src/workspace/page.ts:278


getParent ​

getParent(target): null | BaseBlockModel< object >

Parameters ​

ParameterType
targetstring | BaseBlockModel< object >

Returns ​

null | BaseBlockModel< object >

Defined In ​

packages/store/src/workspace/page.ts:211


getPreviousSibling ​

getPreviousSibling(block): null | BaseBlockModel< object >

Parameters ​

ParameterType
blockBaseBlockModel< object >

Returns ​

null | BaseBlockModel< object >

Defined In ​

packages/store/src/workspace/page.ts:236


getPreviousSiblings ​

getPreviousSiblings(block): BaseBlockModel< object >[]

Parameters ​

ParameterType
blockBaseBlockModel< object >

Returns ​

BaseBlockModel< object >[]

Defined In ​

packages/store/src/workspace/page.ts:250


getSchemaByFlavour ​

getSchemaByFlavour(flavour): undefined | {model: { flavour: string; role: "root" | "hub" | "content"; parent?: string[] | undefined; children?: string[] | undefined; props?: ((args_0: InternalPrimitives, ...args_1: unknown[]) => Record<...>) | undefined; toModel?: ((...args: unknown[]) => BaseBlockModel<...>) | undefined; }; onUpgrade: (...args) => void; transformer: (...args) => BaseBlockTransformer< object >; version: number;}

Parameters ​

ParameterType
flavourstring

Returns ​

undefined | {model: { flavour: string; role: "root" | "hub" | "content"; parent?: string[] | undefined; children?: string[] | undefined; props?: ((args_0: InternalPrimitives, ...args_1: unknown[]) => Record<...>) | undefined; toModel?: ((...args: unknown[]) => BaseBlockModel<...>) | undefined; }; onUpgrade: (...args) => void; transformer: (...args) => BaseBlockTransformer< object >; version: number;}

Defined In ​

packages/store/src/workspace/page.ts:292


load ​

load(initFn?): Promise< Page >

Parameters ​

ParameterType
initFn?function

Returns ​

Promise< Page >

Overrides ​

Space.load

Defined In ​

packages/store/src/workspace/page.ts:793


moveBlocks ​

moveBlocks( blocksToMove, newParent, targetSibling = null, shouldInsertBeforeSibling = true): void

Parameters ​

ParameterTypeDefault value
blocksToMoveBaseBlockModel< object >[]undefined
newParentBaseBlockModel< object >undefined
targetSiblingnull | BaseBlockModel< object >null
shouldInsertBeforeSiblingbooleantrue

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:376


redo ​

redo(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:177


remove ​

remove(): void

Returns ​

void

Inherited from ​

Space.remove

Defined In ​

packages/store/src/workspace/space.ts:71


resetHistory ​

resetHistory(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:190


transact ​

transact(fn, shouldTransact = ...): void

If shouldTransact is false, the transaction will not be push to the history stack.

Parameters ​

ParameterType
fnfunction
shouldTransactboolean

Returns ​

void

Overrides ​

Space.transact

Defined In ​

packages/store/src/workspace/page.ts:162


trySyncFromExistingDoc ​

trySyncFromExistingDoc(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:630


undo ​

undo(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:169


updateBlock ​

updateBlock<T>(model, props): void

Type parameters ​

Parameter
T extends Partial< BlockProps >

Parameters ​

ParameterType
modelBaseBlockModel< object >
propsT

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:468

updateBlock(model, callback): void

Parameters ​

ParameterType
modelBaseBlockModel< object >
callbackfunction

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:472


validateVersion ​

validateVersion(): void

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:779


waitForLoaded ​

waitForLoaded(): Promise< void >

Returns ​

Promise< void >

Deprecated ​

use page.load() instead

Defined In ​

packages/store/src/workspace/page.ts:809


withoutTransact ​

withoutTransact(callback): void

Parameters ​

ParameterType
callbackfunction

Returns ​

void

Defined In ​

packages/store/src/workspace/page.ts:156