Document structure: Document (root) → Pages (CANVAS) → Nodes. Each page has its own viewport (pan/zoom) and background color. - CANVAS node type for pages - SceneGraph: addPage(), getPages(), getAbsolutePosition stops at CANVAS - Store: currentPageId, switchPage(), addPage(), deletePage(), renamePage() - All operations (create, select, paste, hit test, render) scoped to current page - Per-page viewport state saved/restored on page switch - Pages list in LayersPanel with add/switch/double-click rename - .fig import creates proper pages from DOCUMENT→CANVAS hierarchy - Renderer takes pageId to render correct page's children - Unit test for pages, updated E2E tests for page-scoped graph
53 lines
3.4 KiB
TypeScript
53 lines
3.4 KiB
TypeScript
/* eslint-disable */
|
|
// @ts-nocheck
|
|
// biome-ignore lint: disable
|
|
// oxlint-disable
|
|
// ------
|
|
// Generated by unplugin-vue-components
|
|
// Read more: https://github.com/vuejs/core/pull/3399
|
|
|
|
export {}
|
|
|
|
/* prettier-ignore */
|
|
declare module 'vue' {
|
|
export interface GlobalComponents {
|
|
AppearanceSection: typeof import('./src/components/properties/AppearanceSection.vue')['default']
|
|
ColorPicker: typeof import('./src/components/ColorPicker.vue')['default']
|
|
EditorCanvas: typeof import('./src/components/EditorCanvas.vue')['default']
|
|
FillSection: typeof import('./src/components/properties/FillSection.vue')['default']
|
|
IconLucideALargeSmall: typeof import('~icons/lucide/a-large-small')['default']
|
|
IconLucideAlignCenter: typeof import('~icons/lucide/align-center')['default']
|
|
IconLucideAlignHorizontalJustifyCenter: typeof import('~icons/lucide/align-horizontal-justify-center')['default']
|
|
IconLucideAlignHorizontalJustifyEnd: typeof import('~icons/lucide/align-horizontal-justify-end')['default']
|
|
IconLucideAlignHorizontalJustifyStart: typeof import('~icons/lucide/align-horizontal-justify-start')['default']
|
|
IconLucideAlignLeft: typeof import('~icons/lucide/align-left')['default']
|
|
IconLucideAlignRight: typeof import('~icons/lucide/align-right')['default']
|
|
IconLucideAlignVerticalJustifyCenter: typeof import('~icons/lucide/align-vertical-justify-center')['default']
|
|
IconLucideAlignVerticalJustifyEnd: typeof import('~icons/lucide/align-vertical-justify-end')['default']
|
|
IconLucideAlignVerticalJustifyStart: typeof import('~icons/lucide/align-vertical-justify-start')['default']
|
|
IconLucideBaseline: typeof import('~icons/lucide/baseline')['default']
|
|
IconLucideBlend: typeof import('~icons/lucide/blend')['default']
|
|
IconLucideCheck: typeof import('~icons/lucide/check')['default']
|
|
IconLucideChevronDown: typeof import('~icons/lucide/chevron-down')['default']
|
|
IconLucideChevronRight: typeof import('~icons/lucide/chevron-right')['default']
|
|
IconLucideEye: typeof import('~icons/lucide/eye')['default']
|
|
IconLucideEyeOff: typeof import('~icons/lucide/eye-off')['default']
|
|
IconLucideFile: typeof import('~icons/lucide/file')['default']
|
|
IconLucideFlipHorizontal: typeof import('~icons/lucide/flip-horizontal')['default']
|
|
IconLucideFlipVertical: typeof import('~icons/lucide/flip-vertical')['default']
|
|
IconLucideRadius: typeof import('~icons/lucide/radius')['default']
|
|
IconLucideRotateCcw: typeof import('~icons/lucide/rotate-ccw')['default']
|
|
IconLucideRotateCw: typeof import('~icons/lucide/rotate-cw')['default']
|
|
IconLucideSearch: typeof import('~icons/lucide/search')['default']
|
|
LayersPanel: typeof import('./src/components/LayersPanel.vue')['default']
|
|
LayoutSection: typeof import('./src/components/properties/LayoutSection.vue')['default']
|
|
PageSection: typeof import('./src/components/properties/PageSection.vue')['default']
|
|
PositionSection: typeof import('./src/components/properties/PositionSection.vue')['default']
|
|
PropertiesPanel: typeof import('./src/components/PropertiesPanel.vue')['default']
|
|
ScrubInput: typeof import('./src/components/ScrubInput.vue')['default']
|
|
StrokeSection: typeof import('./src/components/properties/StrokeSection.vue')['default']
|
|
Toolbar: typeof import('./src/components/Toolbar.vue')['default']
|
|
TypographySection: typeof import('./src/components/properties/TypographySection.vue')['default']
|
|
}
|
|
}
|