Commit graph

1461 commits

Author SHA1 Message Date
Danila Poyarkov 28f7ef165b feat(text): wrap styled outline text 2026-05-17 20:23:55 +03:00
Danila Poyarkov 1c8fe1ee8b feat(editor): add outline stroke command 2026-05-17 20:18:14 +03:00
Danila Poyarkov 655f4fcb89 test(ui): cover boolean outline menu placement 2026-05-17 20:09:53 +03:00
Danila Poyarkov 1b1c7e6409 test(text): lock complex outline guards 2026-05-17 20:01:37 +03:00
Danila Poyarkov 75c2975fdc feat(text): outline loaded fallback glyphs 2026-05-17 19:59:30 +03:00
Danila Poyarkov 12787abf85 feat(text): outline loaded style runs 2026-05-17 19:49:44 +03:00
Danila Poyarkov d927a2b443 feat(text): share outline conversion for paths 2026-05-17 19:45:39 +03:00
Danila Poyarkov fa3f60d10c feat(canvas): flatten loaded text outlines 2026-05-17 19:25:43 +03:00
Danila Poyarkov 0772354bff test(canvas): assert boolean matrix cells 2026-05-17 19:16:56 +03:00
Danila Poyarkov 3151132fd3 fix(editor): reject image boolean sources 2026-05-17 19:15:14 +03:00
Danila Poyarkov af70b0eeaf feat(canvas): flatten container and stroke paths 2026-05-17 19:11:22 +03:00
Danila Poyarkov 5ddd0b966f fix(app): wire renderer into figma api 2026-05-17 18:49:35 +03:00
Danila Poyarkov d48e3e5335 test(canvas): verify boolean visual matrix 2026-05-17 18:41:32 +03:00
Danila Poyarkov becbf4360c refactor(figma-api): share renderer-backed flatten 2026-05-17 18:37:53 +03:00
Danila Poyarkov 28829a56a9 fix(editor): guard unsupported boolean sources 2026-05-17 18:32:01 +03:00
Danila Poyarkov dc93ec54c5 feat(editor): add flatten selection command 2026-05-17 18:27:54 +03:00
Danila Poyarkov 365c6f70d0 refactor(app): centralize demo color palette 2026-05-17 18:08:48 +03:00
Danila Poyarkov 92328a21d8 build(lint): enforce shared black color constants 2026-05-17 18:05:07 +03:00
Danila Poyarkov 2eab8f9a50 test(canvas): add boolean shape visual matrix 2026-05-17 18:00:35 +03:00
Danila Poyarkov 40d8a54046 feat(canvas): render boolean operation paths 2026-05-17 17:54:19 +03:00
Danila Poyarkov 104114cb3f feat(ui): add boolean operations panel control 2026-05-17 17:44:48 +03:00
Danila Poyarkov 15c3ee3f00 fix(vue): remove boolean submenu from canvas menu 2026-05-17 17:42:15 +03:00
Danila Poyarkov 958f800b8c fix(ui): size canvas submenus to content 2026-05-17 17:39:13 +03:00
Danila Poyarkov d23e2930ae fix(ui): tighten canvas submenu icon layout 2026-05-17 17:37:26 +03:00
Danila Poyarkov 83c24925e8 feat(editor): add boolean operation commands 2026-05-17 17:33:26 +03:00
Danila Poyarkov bf57a429d9 refactor(figma-api): align grouping API signatures 2026-05-17 17:11:15 +03:00
Danila Poyarkov 7da08789cd refactor(figma-api): type creation methods against plugin typings 2026-05-17 16:30:35 +03:00
Danila Poyarkov f9a75b70a3 test(figma-api): type-check plugin compatibility subset 2026-05-17 16:24:47 +03:00
Danila Poyarkov 2154bb09a2 fix(app): align paste to replace menu label 2026-05-17 16:13:25 +03:00
Danila Poyarkov 011ff17c87 refactor(editor): isolate paste replacement logic 2026-05-17 16:11:31 +03:00
Danila Poyarkov c322f80893 test(editor): harden paste to replace coverage 2026-05-17 16:08:03 +03:00
Danila Poyarkov bdbb37b092 feat(editor): add paste to replace 2026-05-17 16:05:28 +03:00
Danila Poyarkov daef4bdde7 fix(editor): use frame defaults for framed selection 2026-05-17 15:54:47 +03:00
Danila Poyarkov 4a37a5e534 feat(editor): add frame selection command 2026-05-17 15:52:20 +03:00
Danila Poyarkov a23c75531a refactor(canvas): align overlay file layout 2026-05-17 15:48:20 +03:00
Danila Poyarkov 1c1753c4a0 build(lint): generalize sibling domain suffix rule 2026-05-17 15:44:55 +03:00
Danila Poyarkov 29fd7042f7 build(lint): catch sibling menu suffix files 2026-05-17 15:42:35 +03:00
Danila Poyarkov 1d8f4bf8c4 refactor(app): align canvas menu file layout 2026-05-17 15:29:14 +03:00
Danila Poyarkov f37a263279 refactor(app): centralize canvas menu actions 2026-05-17 15:27:10 +03:00
Danila Poyarkov b790a044e4 refactor(app): model canvas copy submenu 2026-05-17 15:14:55 +03:00
Danila Poyarkov 0da23d5526 refactor(app): derive command menu shortcuts 2026-05-17 15:07:14 +03:00
Danila Poyarkov 75d1726640 test(app): cover menu shortcut conversion 2026-05-17 15:02:42 +03:00
Danila Poyarkov 38d30e25e0 refactor(app): derive menu shortcut formats 2026-05-17 14:50:43 +03:00
Danila Poyarkov 1a03c0e8e8 refactor(app): reuse menu shortcut metadata 2026-05-17 14:44:37 +03:00
Danila Poyarkov 6c8fd8fc59 refactor(app): reuse menu shortcuts in chrome 2026-05-17 14:35:50 +03:00
Danila Poyarkov 883601f548 fix(ui): format shortcut tooltips by platform 2026-05-17 14:31:29 +03:00
Danila Poyarkov 8bd9abac15 docs: document command menu conventions 2026-05-17 14:25:46 +03:00
Danila Poyarkov c922e1d9a4 fix(i18n): localize provider settings 2026-05-17 14:24:24 +03:00
Danila Poyarkov 52149e5771 fix(vue): localize static canvas menu labels 2026-05-17 14:20:33 +03:00
Danila Poyarkov 433d812b9d refactor(vue): format command shortcuts by platform 2026-05-17 14:19:37 +03:00