From 1e68bf8ecb6106ddcbe07edd3111c75e80a0ce45 Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Tue, 14 Apr 2026 03:01:30 +0200 Subject: [PATCH] Add baselineResolved to RuntimeControlSurfaceDefinition --- src/controls/control-surface.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/controls/control-surface.ts b/src/controls/control-surface.ts index 712ae239..bbbda7dd 100644 --- a/src/controls/control-surface.ts +++ b/src/controls/control-surface.ts @@ -360,6 +360,7 @@ export interface RuntimeResolvedControlState { export interface RuntimeControlSurfaceDefinition { targets: ControlTargetDescriptor[]; channels: ControlChannelDescriptor[]; + baselineResolved: RuntimeResolvedControlState; resolved: RuntimeResolvedControlState; } @@ -1062,6 +1063,7 @@ export function createEmptyRuntimeControlSurfaceDefinition(): RuntimeControlSurf return { targets: [], channels: [], + baselineResolved: createEmptyRuntimeResolvedControlState(), resolved: createEmptyRuntimeResolvedControlState() }; } @@ -1069,11 +1071,15 @@ export function createEmptyRuntimeControlSurfaceDefinition(): RuntimeControlSurf export function createRuntimeControlSurfaceDefinition(options: { targets: ControlTargetDescriptor[]; channels?: ControlChannelDescriptor[]; + baselineResolved?: RuntimeResolvedControlState; resolved?: RuntimeResolvedControlState; }): RuntimeControlSurfaceDefinition { return { targets: options.targets.map(cloneControlTargetDescriptor), channels: (options.channels ?? []).map(cloneControlChannelDescriptor), + baselineResolved: cloneRuntimeResolvedControlState( + options.baselineResolved ?? options.resolved ?? createEmptyRuntimeResolvedControlState() + ), resolved: cloneRuntimeResolvedControlState( options.resolved ?? createEmptyRuntimeResolvedControlState() ) @@ -1451,6 +1457,9 @@ export function cloneRuntimeControlSurfaceDefinition( return { targets: controlSurface.targets.map(cloneControlTargetDescriptor), channels: controlSurface.channels.map(cloneControlChannelDescriptor), + baselineResolved: cloneRuntimeResolvedControlState( + controlSurface.baselineResolved + ), resolved: cloneRuntimeResolvedControlState(controlSurface.resolved) }; }