M7: plugin panels and settings (#124)

Plugin ABI v2: a plugin can show a panel (text, number, checkbox, select, colour, list, notes, buttons) rendered with FigCraft's widgets, react to events with its state kept between calls (each editing callback one undo step, full sandbox limits on every call), and store per-plugin settings (64 KB). plugin.ui / plugin.event / plugin.close drive panels from the CLI and MCP; v1 plugins run unchanged. The Swatch grid example gains a Palettes panel that remembers the last palette.
This commit is contained in:
BFlat
2026-10-11 14:45:19 +07:00
committed by GitHub
parent 09a3b74466
commit a003e3de4f
27 changed files with 1639 additions and 233 deletions
Generated
+2
View File
@@ -1585,6 +1585,7 @@ dependencies = [
name = "figcraft-plugin"
version = "0.3.1"
dependencies = [
"figcraft-color",
"serde",
"serde_json",
"thiserror 2.0.21",
@@ -1673,6 +1674,7 @@ dependencies = [
"serde",
"serde_json",
"toml",
"wat",
]
[[package]]