openpencil/packages/core/tests/editor/components
Danila Poyarkov cb7018a2d7
perf: stop repeating glyph coverage and component sync during layout (#957)
* perf(text): keep glyph coverage when layout resizes a text box

Every layout write invalidated a text node's coverage record by id, and the record compared its width and height, so each measurement shaped the text twice. Coverage now ignores the box size unless the text is truncated, and an update that changes only fields coverage compares keeps the record. A demo load went from about 38,000 coverage checks with 228 hits to one shaping per text node.

* perf(editor): skip component sync for layout's own writes

Layout lays out instances itself, and the edit that made it run has already scheduled its sync. Its size and position writes scheduled about 56,000 more, so each yield of an async build re-synchronised components and re-laid out whole pages.
2026-10-07 18:46:56 +00:00
..
slots test: typecheck the test suites and fix what that found (#896) 2026-10-05 12:42:38 +00:00
behaviours.test.ts test(core): type the behaviour tests for the test typecheck (#934) 2026-10-06 13:58:17 +00:00
combine-variants.test.ts fix: share Figma's creation and grouping between editor and plugin API (#919) 2026-10-06 12:28:52 +00:00
create-component.test.ts fix: match Figma's transforms, strokes, booleans, sections, and names (#931) 2026-10-07 08:36:50 +00:00
library-capabilities.test.ts
properties.test.ts feat(fig): occurrence-scoped instance interpretation as the single .fig reader 2026-10-01 11:20:27 +04:00
sync-layout-scope.test.ts perf: stop repeating glyph coverage and component sync during layout (#957) 2026-10-07 18:46:56 +00:00
transitive-sync.test.ts test(core): move the fig round-trip suite home, and stop test imports drilling 2026-10-01 14:11:53 +04:00
variants.test.ts