BlockSuite API Documentation / @blocksuite/blocks / MindmapElementModel
Class: MindmapElementModel
Extends
SurfaceGroupLikeModel<MindmapElementProps>
Extended by
Constructors
new MindmapElementModel()
new MindmapElementModel(
options):MindmapElementModel
Parameters
• options
• options.id: string
• options.model: SurfaceBlockModel
• options.onChange
• options.stashedStore: Map<unknown, unknown>
• options.yMap: YMap<unknown>
Returns
Inherited from
SurfaceGroupLikeModel.constructor
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:87
Properties
_disposable
protected_disposable:DisposableGroup
Inherited from
SurfaceGroupLikeModel._disposable
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:52
_id
protected_id:string
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:53
_local
protected_local:Map<string|symbol,unknown>
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:54
_onChange()
protected_onChange: (payload) =>void
Parameters
• payload
• payload.local: boolean
• payload.oldValues: Record<string, unknown>
• payload.props: Record<string, unknown>
Returns
void
Inherited from
SurfaceGroupLikeModel._onChange
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:55
_preserved
protected_preserved:Map<string,unknown>
Used to store a copy of data in the yMap.
Inherited from
SurfaceGroupLikeModel._preserved
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:63
_stashed
protected_stashed:Map<string,unknown>
Inherited from
SurfaceGroupLikeModel._stashed
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:64
[gfxContainerSymbol]
[gfxContainerSymbol]:
true
Inherited from
SurfaceGroupLikeModel.[gfxContainerSymbol]
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:119
connectors
connectors:
Map<string,LocalConnectorElementModel>
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:67
extraConnectors
extraConnectors:
Map<string,LocalConnectorElementModel>
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:68
surface
surface:
SurfaceBlockModel
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:66
yMap
yMap:
YMap<unknown>
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:68
Accessors
childElements
getchildElements():GfxModel[]
! Note that childElements may not match the childIds during doc loading stage.
Returns
GfxModel[]
Inherited from
SurfaceGroupLikeModel.childElements
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:120
childIds
getchildIds():string[]
The ids of the children. Its role is to provide a unique way to access the children. You should update this field through setChildIds when the children are added or removed.
Returns
string[]
Inherited from
SurfaceGroupLikeModel.childIds
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:125
children
Overrides
SurfaceGroupLikeModel.children
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:140
connectable
getconnectable():boolean
Returns
boolean
Inherited from
SurfaceGroupLikeModel.connectable
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:69
container
getcontainer():null| GfxModel & GfxContainerElement
Returns
null | GfxModel & GfxContainerElement
Inherited from
SurfaceGroupLikeModel.container
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:70
descendantElements
getdescendantElements():GfxModel[]
Returns
GfxModel[]
Inherited from
SurfaceGroupLikeModel.descendantElements
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:126
deserializedXYWH
getdeserializedXYWH():XYWH
Returns
XYWH
Inherited from
SurfaceGroupLikeModel.deserializedXYWH
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:71
display
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:109
elementBound
getelementBound():Bound
The bound of the element after rotation. The bound without rotation should be created by Bound.deserialize(this.xywh).
Returns
Bound
Inherited from
SurfaceGroupLikeModel.elementBound
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:76
externalBound
getexternalBound():null|Bound
Returns
null | Bound
Inherited from
SurfaceGroupLikeModel.externalBound
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:77
externalXYWH
Inherited from
SurfaceGroupLikeModel.externalXYWH
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:110
group
getgroup():null|SurfaceGroupLikeModel<BaseElementProps>
Returns
null | SurfaceGroupLikeModel<BaseElementProps>
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:78
groups
getgroups():SurfaceGroupLikeModel<BaseElementProps>[]
Returns
SurfaceGroupLikeModel<BaseElementProps>[]
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:79
h
geth():number
Returns
number
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:80
id
getid():string
Returns
string
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:81
index
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:111
isConnected
getisConnected():boolean
Returns
boolean
Inherited from
SurfaceGroupLikeModel.isConnected
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:82
layoutType
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:141
nodeMap
getnodeMap():Map<string,MindmapNode>
Returns
Map<string, MindmapNode>
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:69
opacity
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:112
rotate
getrotate():number
setrotate(_):void
Parameters
• _: number
Returns
number
Overrides
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:70
seed
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:113
style
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:142
styleGetter
getstyleGetter():MindmapStyleGetter
Returns
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:72
tree
gettree():MindmapRoot
Returns
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:73
type
gettype():string
Returns
string
Overrides
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:74
w
getw():number
Returns
number
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:84
x
getx():number
Returns
number
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:85
xywh
getxywh(): `[${number},${number},${number},${number}]`
setxywh(_):void
Parameters
• _: `[${number},${number},${number},${number}]`
Returns
`[${number},${number},${number},${number}]`
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:127
y
gety():number
Returns
number
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:86
Methods
_getXYWH()
protected_getXYWH():Bound
Returns
Bound
Overrides
SurfaceGroupLikeModel._getXYWH
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:78
addChild()
addChild(
_element):void
Parameters
• _element: GfxModel
Returns
void
Deprecated
you should not call this method directly
Overrides
SurfaceGroupLikeModel.addChild
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:83
addConnector()
protectedaddConnector(from,to,layout,connectorStyle,extra?):LocalConnectorElementModel
Parameters
• from: MindmapNode
• to: MindmapNode
• layout: LayoutType
• connectorStyle: ConnectorStyle
• extra?: boolean
Returns
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:84
addNode()
addNode(
parent,sibling?,position?,props?):string
Parameters
• parent: null | string | MindmapNode
The parent node id of the new node. If it's null, the node will be the root node
• sibling?: string | number
• position?: "before" | "after"
• props?: Record<string, unknown>
Returns
string
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:85
buildTree()
buildTree():
void
Returns
void
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:90
containsBound()
containsBound(
bounds):boolean
Parameters
• bounds: Bound
Returns
boolean
Inherited from
SurfaceGroupLikeModel.containsBound
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:99
getChildNodes()
getChildNodes(
id,subtree?):MindmapNode[]
Parameters
• id: string
• subtree?: "left" | "right"
The subtree of root, this only take effects when the layout type is BALANCED.
Returns
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:96
getConnector()
getConnector(
from,to):null|LocalConnectorElementModel
Parameters
• from: MindmapNode
• to: MindmapNode
Returns
null | LocalConnectorElementModel
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:97
getLayoutDir()
getLayoutDir(
node):LayoutType
Parameters
• node: string | MindmapNode
Returns
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:98
getLineIntersections()
getLineIntersections(
start,end):null|PointLocation[]
Parameters
• start: IVec
• end: IVec
Returns
null | PointLocation[]
Inherited from
SurfaceGroupLikeModel.getLineIntersections
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:100
getNearestPoint()
getNearestPoint(
point):IVec
Parameters
• point: IVec
Returns
IVec
Inherited from
SurfaceGroupLikeModel.getNearestPoint
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:101
getNode()
getNode(
id):null|MindmapNode
Parameters
• id: string
Returns
null | MindmapNode
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:99
getParentNode()
getParentNode(
id):null|MindmapNode
Parameters
• id: string
Returns
null | MindmapNode
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:100
getPath()
getPath(
element):number[]
Path is an array of indexes that represent the path from the root node to the target node. The first element of the array is always 0, which represents the root node.
Parameters
• element: string | MindmapNode
Returns
number[]
Example
const path = mindmap.getPath('nodeId');
// [0, 1, 2]Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:113
getRelativePointLocation()
getRelativePointLocation(
relativePoint):PointLocation
Parameters
• relativePoint: IVec
Returns
PointLocation
Inherited from
SurfaceGroupLikeModel.getRelativePointLocation
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:102
getSiblingNode()
getSiblingNode(
id,direction?,subtree?):null|MindmapNode
Parameters
• id: string
• direction?: "prev" | "next"
• subtree?: "left" | "right"
The subtree of which that the sibling node belongs to, this is used when the layout type is BALANCED.
Returns
null | MindmapNode
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:114
hasChild()
hasChild(
element):boolean
The actual field that stores the children of the group. It should be a ymap decorated with @field.
Parameters
• element: GfxModel
Returns
boolean
Inherited from
SurfaceGroupLikeModel.hasChild
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:135
hasDescendant()
hasDescendant(
element):boolean
Check if the group has the given descendant.
Parameters
• element: GfxModel
Returns
boolean
Inherited from
SurfaceGroupLikeModel.hasDescendant
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:139
includesPoint()
includesPoint(
x,y,options):boolean
Parameters
• x: number
• y: number
• options: PointTestOptions
Returns
boolean
Overrides
SurfaceGroupLikeModel.includesPoint
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:120
intersectsBound()
intersectsBound(
bound):boolean
Parameters
• bound: Bound
Returns
boolean
Inherited from
SurfaceGroupLikeModel.intersectsBound
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:104
layout()
layout(
_tree?,_options?):void
Parameters
• _tree?: MindmapNode | MindmapRoot
• _options?
• _options.applyStyle?: boolean
• _options.calculateTreeBound?: boolean
• _options.layoutType?: LayoutType
• _options.stashed?: boolean
Returns
void
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:121
moveTo()
moveTo(
targetXYWH):void
Parameters
• targetXYWH: XYWH | `[${number},${number},${number},${number}]`
Returns
void
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:127
onCreated()
onCreated():
void
Returns
void
Overrides
SurfaceGroupLikeModel.onCreated
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:128
pop()
pop(
prop):void
Parameters
• prop: string
Returns
void
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:106
removeChild()
removeChild(
element):void
Remove the child from the group
Parameters
• element: GfxModel
Returns
void
Overrides
SurfaceGroupLikeModel.removeChild
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:129
requestBuildTree()
protectedrequestBuildTree():void
Returns
void
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:130
requestLayout()
requestLayout():
void
Returns
void
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:131
serialize()
serialize():
SerializedMindmapElement
Returns
Overrides
SurfaceGroupLikeModel.serialize
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:132
setChildIds()
setChildIds(
value,fromLocal):void
Set the new value of the childIds
Parameters
• value: string[]
the new value of the childIds
• fromLocal: boolean
if true, the change is happened in the local
Returns
void
Inherited from
SurfaceGroupLikeModel.setChildIds
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:149
stash()
stash(
prop):void
Parameters
• prop: string
Returns
void
Inherited from
Defined in
packages/framework/block-std/dist/gfx/surface/element-model.d.ts:108
stashTree()
stashTree(
node):undefined| () =>void
Stash mind map node and its children's xywh property
Parameters
• node: string | MindmapNode
Returns
undefined | () => void
a function that write back the stashed xywh into yjs
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:138
traverse()
traverse(
callback):void
Parameters
• callback
Returns
void
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:139
propsToY()
staticpropsToY(props):MindmapElementProps
Parameters
• props: Record<string, unknown>
Returns
MindmapElementProps
Overrides
SurfaceGroupLikeModel.propsToY
Defined in
packages/affine/model/dist/elements/mindmap/mindmap.d.ts:75