openpencil/src/engine
Danila Poyarkov 3c5795f90b Add components, component sets, and instances
- SceneNode: componentId and overrides fields for instance tracking
- SceneGraph: cloneTree, createInstance, detachInstance, getMainComponent,
  getInstances methods
- Editor store: createComponentFromSelection (converts frame/group or wraps
  selection), createComponentSetFromComponents (groups multiple components),
  createInstanceFromComponent, detachInstance, goToMainComponent
- Renderer: purple (#9747ff) selection outlines, hover highlights, size pills,
  and name labels for component types; dashed purple border for component sets
- Layers panel: diamond icons for components/instances with purple tint
- Properties panel: component type indicator, Go to Main Component and
  Detach Instance buttons for instances, Create Instance for components
- Keyboard shortcuts: Ctrl+Alt+K (create component), Ctrl+Shift+K
  (create component set), Ctrl+Alt+B (detach instance)
- Clipboard: preserve COMPONENT/COMPONENT_SET/INSTANCE types
- Fig export: emit proper Kiwi node types instead of FRAME
2026-02-28 17:46:28 +03:00
..
canvaskit.ts Add oxlint, oxfmt, typescript-go 2026-02-27 15:52:55 +03:00
clipboard.ts Add components, component sets, and instances 2026-02-28 17:46:28 +03:00
color.ts Fill type picker with solid/gradient/image tabs and gradient stop editing 2026-02-28 17:26:50 +03:00
fig-export.ts Add components, component sets, and instances 2026-02-28 17:46:28 +03:00
fonts.ts Fix production build type errors 2026-02-28 11:37:02 +03:00
layout.ts Add layout tests, fix cross-axis sizing bugs 2026-02-28 13:59:39 +03:00
renderer.ts Add components, component sets, and instances 2026-02-28 17:46:28 +03:00
scene-graph.ts Add components, component sets, and instances 2026-02-28 17:46:28 +03:00
snap.ts Rotation-aware snap guides and selection bounds 2026-02-28 01:24:23 +03:00
undo.ts Wire undo/redo into all editor operations 2026-02-28 06:28:17 +03:00
vector.ts Fix open paths rendering as closed 2026-02-28 07:15:07 +03:00