openpencil/packages/scene-graph
Danila Poyarkov b7126322eb
fix(core): show imported page backgrounds and stop fixed text collapsing
Three defects a confidential Figma file surfaced, each reproduced by a
test that fails without the change.

A page's background lived only in viewport state, so an imported canvas
colour never reached the canvas and an edit was lost on the next page
switch or save. It is read from and written to the page's paints, which
the Figma API and export already carry.

Fixed-size text in a Hug container reported no intrinsic cross-axis
size, so a stretched label collapsed and clipped beside smaller
siblings. Yoga now measures it.

Populating a page resynchronised an instance whose text the file had
already resolved, replacing it with the component's default.

Co-authored-by: Victor Wads <victor@wads.dev>
2026-10-02 12:10:06 +04:00
..
scripts feat: split SceneGraph and Pen packages 2026-06-30 10:54:32 +03:00
src fix(core): show imported page backgrounds and stop fixed text collapsing 2026-10-02 12:10:06 +04:00
tests test(core): move the fig round-trip suite home, and stop test imports drilling 2026-10-01 14:11:53 +04:00
AGENTS.md feat(fig): occurrence-scoped instance interpretation as the single .fig reader 2026-10-01 11:20:27 +04:00
package.json test: migrate Scene Graph tests into the package and gate new tests/engine files (#790) 2026-09-30 04:53:28 +04:00
README.md feat: split SceneGraph and Pen packages 2026-06-30 10:54:32 +03:00
tsconfig.json feat: split SceneGraph and Pen packages 2026-06-30 10:54:32 +03:00
tsconfig.test.json test: migrate Scene Graph tests into the package and gate new tests/engine files (#790) 2026-09-30 04:53:28 +04:00
tsdown.config.ts refactor!: move shared primitives below dom-css and core (#771) 2026-09-26 11:39:11 +04:00

@open-pencil/scene-graph

Shared OpenPencil design document model.

This package owns SceneGraph, SceneNode, paint/effect/layout/variable types, graph mutation helpers, source metadata, and model-level utilities. It does not own editor state, UI, file format policy, rendering, or app document I/O.