GUI / control-visibility helpers extracted from recording-panel.ts.
The buildGUI and updateControlVisibility methods stay in the
panel — they touch a dozen lil-gui controller instances by name and
parameterizing them would just move the coupling around. What this
module owns is the pure mode → format and format → predicate logic
that the visibility rule checks against.
Pulling these out makes the rules testable without instantiating a
RecordingPanel and lets future format additions land in one place.
GUI / control-visibility helpers extracted from
recording-panel.ts.The
buildGUIandupdateControlVisibilitymethods stay in the panel — they touch a dozen lil-gui controller instances by name and parameterizing them would just move the coupling around. What this module owns is the pure mode → format and format → predicate logic that the visibility rule checks against.Pulling these out makes the rules testable without instantiating a RecordingPanel and lets future format additions land in one place.