Group
đĻ Rate limit: Level 1
đ Requires scope: boards:write
Groups the given items in the board, including unsupported items.
âšī¸ Note:
- Previously grouped items cannot be grouped again, this will cause an error. You can use the
groupId
property in the item to check whether it's already assigned to a group. - Groups can only be created with at least two items.
- Locked elements cannot be grouped.
- Mindmaps and tags are not supported in groups.
- Groups do not support metadata as other board items.
- If a group is added to a frame, all the grouped items will also be attached to that frame. The group must fit within the frame dimensions to be added.
Example of adding grouped items to a frame:
const shape = await miro.board.createShape()
const card = await miro.board.createCard()
const text = await miro.board.createText()
const boardItems = [shape, card, text]
const group = await miro.board.group({ items: boardItems })
const frame = await miro.board.createFrame();
// shape, card and text will also be added to the frame
// you can check their parentId property after this operation
await frame.add(group)
Example:
const shape = await miro.board.createShape()
const card = await miro.board.createCard()
const text = await miro.board.createText()
const boardItems = [shape, card, text]
const group = await miro.board.group({items: boardItems})
// get all groups
const allGroups = await miro.board.get({ type: 'group' });
// get a specific group by ID
const groupById = await miro.board.getById(group.id);
// get all selected groups
const selectedItems = await miro.board.getSelection();
const selectedGroups = selectedItems.filter(item => item.type === 'group');
Methods
getItems(...)
() => Promise<Array<Item>>
đĻ Rate limit: Level 1
đ Requires scope: boards:read
Returns all the items assigned to the group.
const shape = await miro.board.createShape()
const card = await miro.board.createCard()
const text = await miro.board.createText()
const boardItems = [shape, card, text]
const group = await miro.board.group({ items: boardItems })
const groupedItems = await group.getItems();
// Grouped items should be the same as items
ungroup(...)
() => Promise<Array<Item>>
đĻ Rate limit: Level 1
đ Requires scope: boards:write
Ungroups and returns all currently grouped items.
Once ungrouped, the group
object is invalidated. Each item will have its own groupId
property equal to undefined
.
To group items again, use the method miro.board.group.
const shape = await miro.board.createShape()
const card = await miro.board.createCard()
const text = await miro.board.createText()
const boardItems = [shape, card, text]
const group = await miro.board.group({ items: boardItems })
const releasedItems = await group.ungroup();
All properties
Property | Type |
---|---|
id |
readonly string |
itemsIds |
readonly Array<string> |
type |
readonly 'group' |
getItems(...) |
() => Promise<Array<Item>> |
sync(...) |
() => Promise<void> |
ungroup(...) |
() => Promise<Array<Item>> |