openpencil/packages/core/src
Danila Poyarkov 4dbb583218 Fix radial, angular, and diamond gradient rendering
Use the full gradientTransform affine matrix via CanvasKit's localMatrix
parameter instead of manually extracting center and radius. The previous
approach ignored rotation and aspect ratio, producing circular gradients
where Figma specifies rotated ellipses.

Define gradients in Figma's unit gradient space (center 0.5,0.5, radius
0.5) and let the localMatrix (scale(w,h) * gradientTransform) handle the
transform to pixel coordinates. Also merge the GRADIENT_DIAMOND branch
with GRADIENT_RADIAL since they use the same shader.
2026-03-13 19:05:48 +03:00
..
kiwi Fix instance swap override propagation through clone chains 2026-03-13 18:58:33 +03:00
profiler Lint all packages: fix 193 errors across core, mcp, acp 2026-03-09 13:18:08 +03:00
render Fix lint warnings: eliminate any types, split oversized files 2026-03-12 15:13:30 +03:00
renderer Fix radial, angular, and diamond gradient rendering 2026-03-13 19:05:48 +03:00
rpc Fix lint warnings: eliminate any types, split oversized files 2026-03-12 15:13:30 +03:00
svg-export Fix per-character text fill colors and vector region loop direction (#95) 2026-03-12 18:28:04 +03:00
tools Fix lint warnings: eliminate any types, split oversized files 2026-03-12 15:13:30 +03:00
canvaskit.ts Lint all packages: fix 193 errors across core, mcp, acp 2026-03-09 13:18:08 +03:00
clipboard.ts Add no-silent-catch lint rule, fix silent failures 2026-03-13 10:03:12 +03:00
color.ts Lint all packages: fix 193 errors across core, mcp, acp 2026-03-09 13:18:08 +03:00
constants.ts Fix per-character text fill colors and vector region loop direction (#95) 2026-03-12 18:28:04 +03:00
copy.ts Fix per-character text fill colors and vector region loop direction (#95) 2026-03-12 18:28:04 +03:00
fig-export-worker.ts Perf: 5.4× faster file open, worker-based parsing, instance index (#96) 2026-03-12 14:49:28 +03:00
fig-export.ts Perf: 5.4× faster file open, worker-based parsing, instance index (#96) 2026-03-12 14:49:28 +03:00
figma-api-proxy.ts Normalize colors at FigmaAPI proxy boundary 2026-03-13 13:04:29 +03:00
figma-api.ts Fix lint warnings: eliminate any types, split oversized files 2026-03-12 15:13:30 +03:00
fonts.ts Add no-silent-catch lint rule, fix silent failures 2026-03-13 10:03:12 +03:00
geometry.ts Clean up tools/schema, add geometry.ts, isMixed helper, fix imports, add tests 2026-03-06 22:33:10 +03:00
global.d.ts Add @open-pencil/cli with headless .fig file operations 2026-03-01 01:19:24 +03:00
index.ts Add subpath exports to @open-pencil/core 2026-03-12 22:10:36 +03:00
kiwi-serialize.ts Fix per-character text fill colors and vector region loop direction (#95) 2026-03-12 18:28:04 +03:00
layout.ts Fix lint warnings: eliminate any types, split oversized files 2026-03-12 15:13:30 +03:00
render-image.ts Lint all packages: fix 193 errors across core, mcp, acp 2026-03-09 13:18:08 +03:00
scene-graph-hit-test.ts Fix lint warnings: eliminate any types, split oversized files 2026-03-12 15:13:30 +03:00
scene-graph-instances.ts Fix lint warnings: eliminate any types, split oversized files 2026-03-12 15:13:30 +03:00
scene-graph.ts Fix text rendering with wrong fonts on file open 2026-03-12 22:05:59 +03:00
snap.ts Extract @open-pencil/core package 2026-03-01 01:03:07 +03:00
style-runs.ts Fix lint warnings: non-null assertions, useless spreads, unused code, type safety 2026-03-11 13:33:54 +03:00
svg-node.ts SVG export (#52) 2026-03-05 10:31:02 +03:00
text-editor.ts P2P collaboration: cursors, follow mode, cleanup 2026-03-01 18:11:07 +03:00
types.ts Extract @open-pencil/core package 2026-03-01 01:03:07 +03:00
undo.ts Eliminate as Record<string, unknown> casts 2026-03-06 21:43:32 +03:00
vector.ts Fix per-character text fill colors and vector region loop direction (#95) 2026-03-12 18:28:04 +03:00
xpath.ts Fix lint warnings: non-null assertions, useless spreads, unused code, type safety 2026-03-11 13:33:54 +03:00