feat: 完善图像工作区与创作工具体验
Some checks failed
Electron E2E / Electron E2E (macos-latest) (push) Has been cancelled
Electron E2E / Electron E2E (ubuntu-latest) (push) Has been cancelled
Electron E2E / Electron E2E (windows-latest) (push) Has been cancelled

This commit is contained in:
inman
2026-08-16 14:08:02 +08:00
parent bfcb88cfef
commit 26b52d76e3
92 changed files with 16678 additions and 2975 deletions

View File

@@ -23,12 +23,45 @@ export type DesignBrief = {
missingDecision: string | null;
};
export type DesignGenerationOption<TValue extends string | number> = {
value: TValue;
label: string;
default: boolean;
disabled: boolean;
multiplier: number;
};
export type DesignGenerationParameters = {
model: string;
resolution: string;
aspectRatio: string;
durationSeconds: number | null;
};
export type DesignGenerationOptions = {
models: DesignGenerationOption<string>[];
resolutions: DesignGenerationOption<string>[];
durations: DesignGenerationOption<number>[];
aspectRatios: DesignGenerationOption<string>[];
};
export type DesignGenerationPricing = {
schema: string;
amount: number;
rounding: string;
};
export type DesignGenerationQuote = {
quoteId: string;
status: DesignQuoteStatus;
medium: DesignMedium;
briefVersion: number;
briefSummary: string;
finalPrompt: string;
promptMode: string;
generationParameters: DesignGenerationParameters;
generationOptions: DesignGenerationOptions;
pricing: DesignGenerationPricing;
quotedDesignPoints: number;
expiresAt: string;
};
@@ -159,6 +192,11 @@ export type DesignCreateWorkspaceInput = {
title: string;
};
export type DesignDeleteWorkspaceResult = {
workspaceId: string;
deleted: true;
};
export type DesignCreateConversationInput = {
workspaceId: string;
clientConversationId: string;
@@ -179,12 +217,21 @@ export type DesignSubmitMessageInput = {
attachmentAssetIds?: string[];
};
export type DesignGenerationQuoteUpdateInput = {
workspaceId: string;
quoteId: string;
finalPrompt: string;
generationParameters: DesignGenerationParameters;
};
export type DesignConfirmGenerationInput = {
workspaceId: string;
conversationId: string;
clientTurnId: string;
expectedTurnRevision: number;
quoteId: string;
finalPrompt: string;
generationParameters: DesignGenerationParameters;
};
export function designAssetContentPath(workspaceId: string, assetId: string): string {