Build (or extend) a color preset palette for a fixture selection in one call.
For each color: selects ``target``, sets R/G/B/W, stores the preset (Global by
default), labels it, and sets its pool appearance swatch.
To extend an existing palette to a new fixture group without disturbing
already-stored values, pass that group as ``target`` and ``merge=True``.
Args:
target: A grandMA2 selection command (e.g. "Group 3", "Group 1 Thru 5").
colors: List of {id, name?, r, g, b, w?} with r/g/b/w in 0-100.
scope: "global" (default), "selective", or "universal".
merge: Merge into existing presets (non-destructive extend).
label: Apply each color's name as the preset label.
appearance: Set each preset's pool swatch from its color.
Returns:
str: Operation result message
Examples:
- Build a palette on LED Par: target="Group 3", colors=[{"id":7,"name":"Red","r":100,"g":0,"b":0}]
- Extend it to Wash: target="Group 4", merge=True, same colors