M1: fill/stroke props accept "none" and null (#1036)

node.create, node.set and the other prop appliers map fill/stroke
"none" (either case) and null to an empty fills/strokes list, as
fills: [] already did (undocumented), so an outline-only shape is one
call - agents write "none" for no paint. KEYS and docs/mcp.md
document it; the error names the accepted forms. fill_none_tests
covers create, set, undo, text and the error.
This commit is contained in:
lileeei
2026-10-22 23:04:57 +08:00
parent a86897dc91
commit 2437a65d1b
5 changed files with 113 additions and 6 deletions
+2
View File
@@ -144,6 +144,8 @@ Or in a project's `.mcp.json`:
there is none, so they are page coordinates then). Groups and boolean groups have no coordinate
space of their own: a layer in a group is placed in the frame (or on the page) the group is in.
`inspect_document` reports `x`/`y` the same way, plus `absoluteBounds` in page coordinates.
In `props`, `fill` and `stroke` also accept `"none"` (either case) or `null` as no paint, the
same as an empty `fills`/`strokes` list, so an outline-only shape can be made in one call.
- Frames, groups, sections and masks: drawing a frame or section with the `pointer` tool around
layers puts those fully inside it in it; sections go only on the page or in sections (moves,
drags, pastes and new sections elsewhere are refused or land on the page); resizing a section