Commit graph

11 commits

Author SHA1 Message Date
rcoenen be272dc4dc
feat(fig): support text on path 2026-08-17 12:00:01 +03:00
Danila Poyarkov 38e98095b2 chore(fig): format instance override test 2026-08-12 19:44:32 +03:00
Danila Poyarkov 7d0f9746ee fix(fig): preserve nested text overrides
- Propagate effective text through structurally protected clone chains

- Preserve explicit text overrides and add focused regression coverage
2026-08-12 19:36:37 +03:00
Danila Poyarkov 7b091723a2 style: format FIG compatibility fixes 2026-08-07 08:50:40 +03:00
Danila Poyarkov f9701ef855 fix(fig): preserve effective clone geometry
- Restore authoritative image-leaf bounds after final component swaps\n- Preserve derived cross-axis positions for thin divider clones\n- Add synthetic and Gold Preview regression coverage
2026-08-07 08:50:39 +03:00
Danila Poyarkov 77263c1d48 fix(fig): limit target-aspect scaling
- Traverse fixed wrappers only to reach descendants with SCALE constraints

- Preserve fixed siblings and use component geometry as the scale basis

- Cover target-aspect icons without changing the Preline geometry baseline
2026-08-05 18:00:52 +03:00
Zack Chapple fcfe259f26 fix(fig): scale target-aspect instance subtrees
- Use preserved targetAspectRatio metadata as the instance scale basis

- Scale nested geometry through fixed wrapper layers

- Cover proportion-constrained logo imports with a regression test
2026-08-05 17:18:34 +03:00
Danila Poyarkov 75dd86d0ad fix(fig): improve imported component layout parity
- Preserve Figma min/max constraints, scalar variable bindings, and direct text bounds
- Reflow only authoritative generated instance geometry and pinned descendants
- Avoid double-applying auto spacing and unsafe lone-child normalization
2026-08-03 18:00:15 +03:00
Danila Poyarkov fc8bccac7f
perf(fig): speed up large page switches (#428)
* perf(fig): scope lazy page population work

- Limit override propagation and clone indexing to active page nodes
- Reuse clone membership sets instead of rebuilding them per subtree
- Coalesce Layers tree structural rebuilds during population
- Add a regression test that rejects document-wide scans

* fix(fig): preserve global override propagation

- Keep fill and child-placement propagation across clone lineages
- Retain scoped work only for passes proven independent of inactive pages
- Cover the two required global propagation scans

* perf(fig): finish scoped population review

- Stream active override candidates without temporary arrays
- Scope fallback clone maps when no lineage index is supplied
- Skip stale queued Layers tree rebuilds after synchronous refreshes
2026-07-28 00:12:53 +03:00
Danila Poyarkov 8b9be17a56 perf(fig): remove large fixture bottlenecks
- Index component property definitions and variable asset references once per export or override context\n- Skip converged instance fill and text propagation and use native binary hex encoding\n- Add a non-populating parse mode for raw fixture validation\n- Reduce the Material 3 round trip from minutes to about twenty seconds
2026-07-18 03:37:58 +03:00
Danila Poyarkov 2bd2304bcb refactor(fig): own instance interpretation
- Move component properties, symbol overrides, derived symbol data, and clone synchronization into @open-pencil/fig\n- Add the public instance-overrides subpath with package tests and packed smoke coverage\n- Remove cross-package forwarding modules and enforce direct owner imports in architecture checks
2026-07-18 02:06:34 +03:00