Summary
The InspectorPane currently renders enum-constrained string properties as plain text inputs (StringField). After the select control type was added to Stream View overlay controls (PR #327), there is a UI inconsistency:
- Stream View (overlay controls): enum strings render as
<select> dropdowns
- Inspector/Monitor View: enum strings render as free-text
<input> fields
Proposed Solution
Add a SelectField renderer in InspectorPane.tsx that renders a dropdown when a tunable string property has an enum constraint in its JSON Schema. The field should:
- Render a
<select> dropdown with the enum values as options
- Send an
UpdateParams message on selection change
- Follow the existing field renderer pattern (
StringField, NumberField, BooleanField)
Context
Summary
The
InspectorPanecurrently renders enum-constrained string properties as plain text inputs (StringField). After theselectcontrol type was added to Stream View overlay controls (PR #327), there is a UI inconsistency:<select>dropdowns<input>fieldsProposed Solution
Add a
SelectFieldrenderer inInspectorPane.tsxthat renders a dropdown when a tunable string property has anenumconstraint in its JSON Schema. The field should:<select>dropdown with the enum values as optionsUpdateParamsmessage on selection changeStringField,NumberField,BooleanField)Context
schemaToControlConfigsutility injsonSchema.tsalready correctly maps enum strings to select controls — the gap is only in the Inspector view's direct field rendering.