e1e4f487f5
新增独立 SFX Prompt 助手状态机与请求隔离、单层撤销。 抽取通用音频预设跑马灯并接入 SFX 预设、计数和优化入口。 实现自动/手动时长、Loop、模型展示及同步提交参数冻结。 恢复项目布局状态,补齐回归测试并更新 T4 权威文档与共享决策。
29 lines
858 B
TypeScript
29 lines
858 B
TypeScript
import type { ReactNode } from 'react';
|
|
|
|
import { ImageCanvasAudioPresetMarquee } from './ImageCanvasAudioPresetMarquee';
|
|
import type { BackgroundMusicPromptPreset } from './ImageCanvasBackgroundMusicPresetModel';
|
|
|
|
export function ImageCanvasBackgroundMusicPresetMarquee({
|
|
presets,
|
|
isLocked,
|
|
onSelectPreset,
|
|
headerTrailing,
|
|
}: {
|
|
presets: readonly BackgroundMusicPromptPreset[];
|
|
isLocked: boolean;
|
|
onSelectPreset: (preset: BackgroundMusicPromptPreset) => void;
|
|
headerTrailing?: ReactNode;
|
|
}) {
|
|
return (
|
|
<ImageCanvasAudioPresetMarquee
|
|
presets={presets}
|
|
isLocked={isLocked}
|
|
onSelectPreset={onSelectPreset}
|
|
headerTrailing={headerTrailing}
|
|
getPresetClassName={(preset) =>
|
|
`image-canvas-editor__background-music-preset image-canvas-editor__background-music-preset--${preset.group}`
|
|
}
|
|
/>
|
|
);
|
|
}
|