ui优化
This commit is contained in:
1 parent
648b274c55
commit
18cb51670c
14 files changed
+420
-171
No files matched your search
@@ -101,8 +101,7 @@ const imageSizePresets = [
|
||||
type ImageSizePreset = (typeof imageSizePresets)[number];
|
||||
|
||||
type TemplateConsoleSnapshot = {
|
||||
mode: GenerateMode;
|
||||
imagePrompt: string;
|
||||
promptByMode: Record<GenerateMode, string>;
|
||||
imageSize: ImageSizePreset;
|
||||
imageEngine: ImageGenerateEngine;
|
||||
jimengInfluence: string;
|
||||
@@ -541,8 +540,7 @@ export function CreateStudio({ initialMode = "image" }: { initialMode?: Generate
|
||||
}
|
||||
if (!templateRestoreState) {
|
||||
setTemplateRestoreState({
|
||||
mode: generateMode,
|
||||
imagePrompt: promptByMode.image,
|
||||
promptByMode: { ...promptByMode },
|
||||
imageSize,
|
||||
imageEngine,
|
||||
jimengInfluence,
|
||||
@@ -561,14 +559,13 @@ export function CreateStudio({ initialMode = "image" }: { initialMode?: Generate
|
||||
setPromptScrollTop(0);
|
||||
setError(null);
|
||||
if (snapshot) {
|
||||
setMode(snapshot.mode);
|
||||
setPromptByMode((items) => ({ ...items, image: snapshot.imagePrompt }));
|
||||
setPromptByMode(snapshot.promptByMode);
|
||||
setImageSize(snapshot.imageSize);
|
||||
setImageEngine(snapshot.imageEngine);
|
||||
setJimengInfluence(snapshot.jimengInfluence);
|
||||
setEvolinkQuality(snapshot.evolinkQuality);
|
||||
} else {
|
||||
setPromptByMode((items) => ({ ...items, image: "" }));
|
||||
setPromptByMode((items) => ({ ...items, [generateMode]: "" }));
|
||||
setImageSize(imageSizePresets[0]);
|
||||
setImageEngine("jimeng");
|
||||
setJimengInfluence(jimengInfluenceOptions[1].id);
|
||||
@@ -578,18 +575,19 @@ export function CreateStudio({ initialMode = "image" }: { initialMode?: Generate
|
||||
}
|
||||
|
||||
function applyTemplateToConsole(template: ImageTemplate, message: string) {
|
||||
setMode("image");
|
||||
setPromptByMode((items) => ({ ...items, image: template.prompt }));
|
||||
setPromptByMode((items) => ({ ...items, [generateMode]: template.prompt }));
|
||||
setActiveTemplateId(template.id);
|
||||
setMaterialDraft(null);
|
||||
const templateEngine = normalizeImageEngine(template.settings.engine);
|
||||
if (templateEngine) setImageEngine(templateEngine);
|
||||
const preset = imageSizePresets.find((item) => item.width === template.settings.width && item.height === template.settings.height);
|
||||
if (preset) setImageSize(preset);
|
||||
const templateInfluence = jimengInfluenceOptions.find((option) => option.scale === template.settings.scale);
|
||||
if (templateInfluence) setJimengInfluence(templateInfluence.id);
|
||||
const templateQuality = evolinkQualityOptions.find((option) => option.quality === template.settings.quality);
|
||||
if (templateQuality) setEvolinkQuality(templateQuality.id);
|
||||
if (generateMode === "image") {
|
||||
const templateEngine = normalizeImageEngine(template.settings.engine);
|
||||
if (templateEngine) setImageEngine(templateEngine);
|
||||
const preset = imageSizePresets.find((item) => item.width === template.settings.width && item.height === template.settings.height);
|
||||
if (preset) setImageSize(preset);
|
||||
const templateInfluence = jimengInfluenceOptions.find((option) => option.scale === template.settings.scale);
|
||||
if (templateInfluence) setJimengInfluence(templateInfluence.id);
|
||||
const templateQuality = evolinkQualityOptions.find((option) => option.quality === template.settings.quality);
|
||||
if (templateQuality) setEvolinkQuality(templateQuality.id);
|
||||
}
|
||||
setMentionState(null);
|
||||
setPromptScrollTop(0);
|
||||
setNotice(message);
|
||||
|
||||
Reference in new issue
Block a user