BlockSuite API Documentation / @blocksuite/blocks / SurfaceBlockModel
Class: SurfaceBlockModel
Extends
BlockModel
<SurfaceBlockProps
>
Constructors
new SurfaceBlockModel(undefined)
new SurfaceBlockModel():
SurfaceBlockModel
Returns
Overrides
BlockModel<SurfaceBlockProps>.constructor
Source
packages/blocks/src/surface-block/surface-model.ts:213
Properties
[modelLabel]
[modelLabel]:
SurfaceBlockProps
Inherited from
BlockModel.[modelLabel]
Source
packages/framework/store/dist/schema/base.d.ts:101
_connectorToElements
private
_connectorToElements:Map
<string
,string
[]>
Source
packages/blocks/src/surface-block/surface-model.ts:186
_disposables
private
_disposables: () =>void
[] =[]
Source
packages/blocks/src/surface-block/surface-model.ts:183
_elementModels
private
_elementModels:Map
<string
,object
>
Source
packages/blocks/src/surface-block/surface-model.ts:179
_elementToConnector
private
_elementToConnector:Map
<string
,string
[]>
Source
packages/blocks/src/surface-block/surface-model.ts:187
_elementToGroup
private
_elementToGroup:Map
<string
,string
>
Source
packages/blocks/src/surface-block/surface-model.ts:185
_groupToElements
private
_groupToElements:Map
<string
,string
[]>
Source
packages/blocks/src/surface-block/surface-model.ts:184
childrenUpdated
childrenUpdated:
Slot
<void
>
Inherited from
BlockModel.childrenUpdated
Source
packages/framework/store/dist/schema/base.d.ts:120
created
created:
Slot
<void
>
Inherited from
BlockModel.created
Source
packages/framework/store/dist/schema/base.d.ts:115
deleted
deleted:
Slot
<void
>
Inherited from
BlockModel.deleted
Source
packages/framework/store/dist/schema/base.d.ts:116
elementAdded
elementAdded:
Slot
<object
>
Type declaration
id
id:
string
local
local:
boolean
Source
packages/blocks/src/surface-block/surface-model.ts:199
elementRemoved
elementRemoved:
Slot
<object
>
Type declaration
id
id:
string
local
local:
boolean
model
model:
ElementModel
<BaseProps
>
type
type:
string
Source
packages/blocks/src/surface-block/surface-model.ts:200
elementUpdated
elementUpdated:
Slot
<ElementUpdatedData
>
Source
packages/blocks/src/surface-block/surface-model.ts:198
elements
Inherited from
BlockModel.elements
Source
packages/blocks/src/surface-block/surface-model.ts:36
flavour
flavour:
string
Inherited from
BlockModel.flavour
Source
packages/framework/store/dist/schema/base.d.ts:103
hooks
protected
hooks:object
Hooks is used to attach extra logic when calling addElement
、updateElement
(or assign property directly) and removeElement
. It's usefull when dealing with relation between different model.
remove
remove:
Slot
<object
>
Type declaration
id
id:
string
model
model:
ElementModel
<BaseProps
>
type
type:
string
update
update:
Slot
<Omit
<ElementUpdatedData
,"local"
>>
Source
packages/blocks/src/surface-block/surface-model.ts:193
id
id:
string
Inherited from
BlockModel.id
Source
packages/framework/store/dist/schema/base.d.ts:109
keys
keys:
string
[]
Inherited from
BlockModel.keys
Source
packages/framework/store/dist/schema/base.d.ts:111
page
page:
Doc
Deprecated
use doc instead
Inherited from
BlockModel.page
Source
packages/framework/store/dist/schema/base.d.ts:108
pop()
pop: (
prop
) =>void
Parameters
• prop: "elements"
Returns
void
Inherited from
BlockModel.pop
Source
packages/framework/store/dist/schema/base.d.ts:113
propsUpdated
propsUpdated:
Slot
<object
>
Type declaration
key
key:
string
Inherited from
BlockModel.propsUpdated
Source
packages/framework/store/dist/schema/base.d.ts:117
role
role:
"root"
|"hub"
|"content"
Inherited from
BlockModel.role
Source
packages/framework/store/dist/schema/base.d.ts:104
stash()
stash: (
prop
) =>void
Parameters
• prop: "elements"
Returns
void
Inherited from
BlockModel.stash
Source
packages/framework/store/dist/schema/base.d.ts:112
text?
optional
text:Text
Inherited from
BlockModel.text
Source
packages/framework/store/dist/schema/base.d.ts:114
version
version:
number
Inherited from
BlockModel.version
Source
packages/framework/store/dist/schema/base.d.ts:102
yBlock
yBlock:
YBlock
Inherited from
BlockModel.yBlock
Source
packages/framework/store/dist/schema/base.d.ts:110
Accessors
childMap
get
childMap():Map
<string
,number
>
Returns
Map
<string
, number
>
Source
packages/framework/store/dist/schema/base.d.ts:123
children
get
children():BlockModel
<object
>[]
Returns
BlockModel
<object
>[]
Source
packages/framework/store/dist/schema/base.d.ts:124
doc
get
doc():Doc
set
doc(doc
):void
Parameters
• doc: Doc
Returns
Source
packages/framework/store/dist/schema/base.d.ts:121
elementModels
get
elementModels():ElementModel
<BaseProps
>[]
Returns
ElementModel
<BaseProps
>[]
Source
packages/blocks/src/surface-block/surface-model.ts:207
Methods
_applyMiddlewares()
private
_applyMiddlewares():void
Returns
void
Source
packages/blocks/src/surface-block/surface-model.ts:225
_init()
private
_init():void
Returns
void
Source
packages/blocks/src/surface-block/surface-model.ts:218
_initElementModels()
private
_initElementModels():void
Returns
void
Source
packages/blocks/src/surface-block/surface-model.ts:234
_watchConnectorRelationChange()
private
_watchConnectorRelationChange():void
Returns
void
Source
packages/blocks/src/surface-block/surface-model.ts:385
_watchGroupRelationChange()
private
_watchGroupRelationChange():void
Returns
void
Source
packages/blocks/src/surface-block/surface-model.ts:309
addElement()
addElement<
T
>(props
):string
Type parameters
• T extends object
= Record
<string
, unknown
>
Parameters
• props: Partial
<T
> & object
Returns
string
Source
packages/blocks/src/surface-block/surface-model.ts:538
dispose()
dispose():
void
Returns
void
Overrides
BlockModel.dispose
Source
packages/blocks/src/surface-block/surface-model.ts:474
firstChild()
firstChild():
null
|BlockModel
<object
>
Returns
null
| BlockModel
<object
>
Inherited from
BlockModel.firstChild
Source
packages/framework/store/dist/schema/base.d.ts:126
getConnectors()
getConnectors(
id
):ConnectorElementModel
[]
Parameters
• id: string
Returns
Source
packages/blocks/src/surface-block/surface-model.ts:496
getElementById()
getElementById(
id
):null
|ElementModel
<BaseProps
>
Parameters
• id: string
Returns
null
| ElementModel
<BaseProps
>
Source
packages/blocks/src/surface-block/surface-model.ts:534
getElementsByType()
getElementsByType<
K
>(type
):ElementModelMap
[K
][]
Type parameters
• K extends keyof ElementModelMap
Parameters
• type: K
Returns
ElementModelMap
[K
][]
Source
packages/blocks/src/surface-block/surface-model.ts:522
getGroup()
getGroup<
T
>(id
):null
|T
Type parameters
• T extends GroupLikeModel
<BaseProps
> = GroupLikeModel
<BaseProps
>
Parameters
• id: string
Returns
null
| T
Source
packages/blocks/src/surface-block/surface-model.ts:502
getGroups()
getGroups(
id
):GroupLikeModel
<BaseProps
>[]
Parameters
• id: string
Returns
GroupLikeModel
<BaseProps
>[]
Source
packages/blocks/src/surface-block/surface-model.ts:510
hasElementById()
hasElementById(
id
):boolean
Parameters
• id: string
Returns
boolean
Source
packages/blocks/src/surface-block/surface-model.ts:530
isEmpty()
isEmpty():
boolean
Returns
boolean
Inherited from
BlockModel.isEmpty
Source
packages/framework/store/dist/schema/base.d.ts:125
isInMindmap()
isInMindmap(
id
):boolean
Parameters
• id: string
Returns
boolean
Source
packages/blocks/src/surface-block/surface-model.ts:490
lastChild()
lastChild():
null
|BlockModel
<object
>
Returns
null
| BlockModel
<object
>
Inherited from
BlockModel.lastChild
Source
packages/framework/store/dist/schema/base.d.ts:127
removeElement()
removeElement(
id
):void
Parameters
• id: string
Returns
void
Source
packages/blocks/src/surface-block/surface-model.ts:563
updateElement()
updateElement<
T
>(id
,props
):void
Type parameters
• T extends object
= Record
<string
, unknown
>
Parameters
• id: string
• props: Partial
<T
>
Returns
void
Source
packages/blocks/src/surface-block/surface-model.ts:596