Skip to content

feat(studio+components): typed enum fields, palette-prefilled colors, string lists #84

Description

@LeadcodeDev

User iteration round 6 (chart inspector screenshot):

  1. Colors not editable: chart colors is empty (engine uses its internal default palette) so the list shows nothing. "+ Add color" must prefill from the engine's default palette (exposed as a pub const) so users edit what they actually see.
  2. direction must be a select: it's a stringly-typed field in the component — fix at the schema root: audit closed-set String fields across components (direction, orientation, routing, modes/themes where closed) and convert to real Rust enums → the schema-driven inspector renders selects automatically and validate rejects invalid values (aligned with feat(cli): validate rm-* and JSON component attributes at validation time #33). Serde-compatible values; unknown strings now fail the typed parse (blocking validate, intended).
  3. No arrays as input values: string arrays (axes, categories) become per-entry input lists with add/remove; radar_data (array of objects = chart data) joins the structured-data exclusion list. Third list control (ColorRows, NumberList, StringList) → rule of three: factor ListRows.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions