/**
* Get document information
*/
export async function getDocumentInfo(): Promise<{
name: string;
currentPage: {
id: string;
name: string;
childCount: number;
};
pages: Array<{ id: string; name: string }>;
}> {
return {
name: figma.root.name,
currentPage: {
id: figma.currentPage.id,
name: figma.currentPage.name,
childCount: figma.currentPage.children.length,
},
pages: figma.root.children.map((page) => ({
id: page.id,
name: page.name,
})),
};
}
/**
* Get current selection
*/
export async function getSelection(): Promise<
Array<{
id: string;
name: string;
type: string;
}>
> {
return figma.currentPage.selection.map((node) => ({
id: node.id,
name: node.name,
type: node.type,
}));
}