

















@@ -85,35 +85,45 @@ function mergeVideoGenerationModeCapabilities<
8585if (!base) {
8686return overlay;
8787}
88+const overlayOptions = overlay.providerOptions;
89+const hasOverlayOptions = Object.hasOwn(overlay, "providerOptions");
90+const mergedProviderOptions =
91+hasOverlayOptions && overlayOptions && Object.keys(overlayOptions).length === 0
92+ ? overlayOptions
93+ : base.providerOptions || overlayOptions
94+ ? {
95+ ...base.providerOptions,
96+ ...overlayOptions,
97+}
98+ : undefined;
99+88100return {
89101 ...base,
90102 ...overlay,
91- ...(base.providerOptions || overlay.providerOptions
92- ? {
93-providerOptions: {
94- ...base.providerOptions,
95- ...overlay.providerOptions,
96-},
97-}
98- : {}),
103+ ...(mergedProviderOptions ? { providerOptions: mergedProviderOptions } : {}),
99104} as T;
100105}
101106102107export function mergeVideoGenerationProviderCapabilities(
103108base: VideoGenerationProviderCapabilities,
104109overlay: VideoGenerationProviderCapabilities,
105110): VideoGenerationProviderCapabilities {
111+const overlayOptions = overlay.providerOptions;
112+const hasOverlayOptions = Object.hasOwn(overlay, "providerOptions");
113+const mergedProviderOptions =
114+hasOverlayOptions && overlayOptions && Object.keys(overlayOptions).length === 0
115+ ? overlayOptions
116+ : base.providerOptions || overlayOptions
117+ ? {
118+ ...base.providerOptions,
119+ ...overlayOptions,
120+}
121+ : undefined;
122+106123return {
107124 ...base,
108125 ...overlay,
109- ...(base.providerOptions || overlay.providerOptions
110- ? {
111-providerOptions: {
112- ...base.providerOptions,
113- ...overlay.providerOptions,
114-},
115-}
116- : {}),
126+ ...(mergedProviderOptions ? { providerOptions: mergedProviderOptions } : {}),
117127generate: mergeVideoGenerationModeCapabilities(base.generate, overlay.generate),
118128imageToVideo: mergeVideoGenerationModeCapabilities(base.imageToVideo, overlay.imageToVideo),
119129videoToVideo: mergeVideoGenerationModeCapabilities(base.videoToVideo, overlay.videoToVideo),
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。