BlockSuite API Documentation / @blocksuite/blocks / GroupElementModel
Class: GroupElementModel
Extends
ElementModel<GroupElementProps>
Constructors
new GroupElementModel(options)
new GroupElementModel(
options):GroupElementModel
Parameters
• options
• options.model: SurfaceBlockModel
• options.onChange
• options.stashedStore: Map<unknown, unknown>
• options.yMap: Map<unknown>
Returns
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:113
Properties
_disposable
protected_disposable:DisposableGroup
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:72
_local
protected_local:Map<string|symbol,unknown>
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:67
_onChange
protected_onChange: (payload) =>void
Parameters
• payload
• payload.oldValues: Record<string, unknown>
• payload.props: Record<string, unknown>
Returns
void
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:68
_preserved
protected_preserved:Map<string,unknown>
When the ymap is not connected to the doc, its value cannot be read. But we need to use those value during the creation, so the yfied decorated field's value will be stored in this map too during the creation.
After the ymap is connected to the doc, this map will be cleared.
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:65
_stashed
protected_stashed:Map<string,unknown>
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:66
childIds
childIds:
string[] =[]
Source
packages/blocks/src/surface-block/element-model/group.ts:83
children
children:
Map<boolean>
Source
packages/blocks/src/surface-block/element-model/group.ts:46
display
display:
boolean=true
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:90
externalXYWH
externalXYWH:
undefined| `[${number},${number},${number},${number}]` =undefined
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:99
index
index:
string
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:84
opacity
opacity:
number=1
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:93
seed
seed:
number
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:87
showTitle
showTitle:
boolean=true
Source
packages/blocks/src/surface-block/element-model/group.ts:52
surface
surface:
SurfaceBlockModel
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:75
title
title:
Text
Source
packages/blocks/src/surface-block/element-model/group.ts:49
yMap
yMap:
Map<unknown>
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:74
Accessors
childElements
getchildElements(): (ElementModel<BaseProps> |EdgelessBlock<EdgelessSelectableProps>)[]
Returns
(ElementModel<BaseProps> | EdgelessBlock<EdgelessSelectableProps>)[]
Source
packages/blocks/src/surface-block/element-model/group.ts:85
connectable
getconnectable():boolean
Returns
boolean
Source
packages/blocks/src/surface-block/element-model/group.ts:74
deserializedXYWH
getdeserializedXYWH():XYWH
Returns
XYWH
Source
packages/blocks/src/surface-block/element-model/base.ts:141
elementBound
getelementBound():Bound
Returns
Source
packages/blocks/src/surface-block/element-model/base.ts:179
externalBound
getexternalBound():null|Bound
Returns
null | Bound
Source
packages/blocks/src/surface-block/element-model/base.ts:101
group
getgroup():null|GroupElementModel
Returns
null | GroupElementModel
Source
packages/blocks/src/surface-block/element-model/base.ts:167
groups
getgroups():GroupElementModel[]
Returns
Source
packages/blocks/src/surface-block/element-model/base.ts:171
h
geth():number
Returns
number
Source
packages/blocks/src/surface-block/element-model/base.ts:163
id
getid():string
Returns
string
Source
packages/blocks/src/surface-block/element-model/base.ts:175
rotate
getrotate():number
setrotate(_):void
Parameters
• _: number
Returns
number
Source
packages/blocks/src/surface-block/element-model/group.ts:68
type
gettype():string
Returns
string
Source
packages/blocks/src/surface-block/element-model/group.ts:78
w
getw():number
Returns
number
Source
packages/blocks/src/surface-block/element-model/base.ts:159
x
getx():number
Returns
number
Source
packages/blocks/src/surface-block/element-model/base.ts:151
xywh
getxywh(): `[${number},${number},${number},${number}]`
setxywh(_):void
Parameters
• _: `[${number},${number},${number},${number}]`
Returns
`[${number},${number},${number},${number}]`
Source
packages/blocks/src/surface-block/element-model/group.ts:54
y
gety():number
Returns
number
Source
packages/blocks/src/surface-block/element-model/base.ts:155
Methods
addChild()
addChild(
element):void
Parameters
• element: string | IEdgelessElement
Returns
void
Source
packages/blocks/src/surface-block/element-model/group.ts:109
boxSelect()
boxSelect(
bound):boolean
Parameters
• bound: Bound
Returns
boolean
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:275
containedByBounds()
containedByBounds(
bound):boolean
Parameters
• bound: Bound
Returns
boolean
Overrides
ElementModel.containedByBounds
Source
packages/blocks/src/surface-block/element-model/group.ts:146
decendants()
decendants(
withoutGroup): (ElementModel<BaseProps> |EdgelessBlock<EdgelessSelectableProps>)[]
Get all decendants of this group
Parameters
• withoutGroup: boolean= true
if true, will not include group element
Returns
(ElementModel<BaseProps> | EdgelessBlock<EdgelessSelectableProps>)[]
Source
packages/blocks/src/surface-block/element-model/group.ts:129
getNearestPoint()
getNearestPoint(
point):IVec
Parameters
• point: IVec
Returns
IVec
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:256
getRelativePointLocation()
getRelativePointLocation(
relativePoint):PointLocation
Parameters
• relativePoint: IVec
Returns
PointLocation
Inherited from
ElementModel.getRelativePointLocation
Source
packages/blocks/src/surface-block/element-model/base.ts:266
hasDescendant()
hasDescendant(
element):boolean
Parameters
• element: string | IEdgelessElement
Returns
boolean
Source
packages/blocks/src/surface-block/element-model/group.ts:100
hitTest()
hitTest(
x,y,_,__):boolean
Parameters
• x: number
• y: number
• _: HitTestOptions
• __: EditorHost
Returns
boolean
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:284
intersectWithLine()
intersectWithLine(
start,end):null|PointLocation[]
Parameters
• start: IVec2
• end: IVec2
Returns
null | PointLocation[]
Overrides
ElementModel.intersectWithLine
Source
packages/blocks/src/surface-block/element-model/group.ts:150
pop()
pop(
prop):void
Parameters
• prop: string
Returns
void
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:226
removeChild()
removeChild(
element):void
Parameters
• element: string | IEdgelessElement
Returns
void
Source
packages/blocks/src/surface-block/element-model/group.ts:117
serialize()
serialize():
Object
Returns
Object
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:288
stash()
stash(
prop):void
Parameters
• prop: string
Returns
void
Inherited from
Source
packages/blocks/src/surface-block/element-model/base.ts:187
propsToY()
staticpropsToY(props):GroupElementProps
Parameters
• props: GroupElementProps
Returns
GroupElementProps
Overrides
Source
packages/blocks/src/surface-block/element-model/group.ts:24