This commit is contained in:
2026-04-29 20:56:59 +08:00
parent fb6f455530
commit 730f485f48
200 changed files with 9881 additions and 2221 deletions

View File

@@ -6,6 +6,7 @@ export type AuthUser = {
publicUserCode: string;
username: string;
displayName: string;
avatarUrl: string | null;
phoneNumberMasked: string | null;
loginMethod: AuthLoginMethod;
bindingStatus: AuthBindingStatus;
@@ -16,6 +17,7 @@ export type PublicUserSummary = {
id: string;
publicUserCode: string;
displayName: string;
avatarUrl: string | null;
};
export type PublicUserSearchResponse = {
@@ -41,6 +43,15 @@ export type AuthPasswordChangeResponse = {
user: AuthUser;
};
export type AuthProfileUpdateRequest = {
displayName?: string;
avatarDataUrl?: string;
};
export type AuthProfileUpdateResponse = {
user: AuthUser;
};
export type AuthPasswordResetRequest = {
phone: string;
code: string;

View File

@@ -19,6 +19,7 @@ export interface BigFishWorkSummary {
playCount?: number;
remixCount?: number;
likeCount?: number;
recentPlayCount7d?: number;
}
export interface BigFishWorksResponse {

View File

@@ -39,7 +39,12 @@ export interface PuzzleAgentOperationRecord {
}
export type PuzzleAgentActionRequest =
| { action: 'compile_puzzle_draft' }
| {
action: 'compile_puzzle_draft';
promptText?: string | null;
referenceImageSrc?: string | null;
candidateCount?: number;
}
| {
action: 'generate_puzzle_images';
promptText?: string | null;

View File

@@ -22,7 +22,7 @@ export interface PuzzleAnchorPack {
}
export interface PuzzleCreatorIntent {
sourceMode: 'agent_chat';
sourceMode: 'agent_chat' | 'form';
rawMessagesSummary: string;
themePromise: string;
visualSubject: string;

View File

@@ -42,6 +42,8 @@ export interface PuzzleAgentSessionSnapshot {
export interface CreatePuzzleAgentSessionRequest {
seedText?: string;
pictureDescription?: string;
referenceImageSrc?: string | null;
}
export interface CreatePuzzleAgentSessionResponse {

View File

@@ -27,6 +27,10 @@ export interface PuzzleLeaderboardEntry {
isCurrentPlayer?: boolean;
}
export type PuzzleRuntimeLevelStatus = 'playing' | 'cleared' | 'failed';
export type PuzzleRuntimePropKind = 'hint' | 'reference' | 'freezeTime';
export interface PuzzleBoardSnapshot {
rows: number;
cols: number;
@@ -46,10 +50,17 @@ export interface PuzzleRuntimeLevelSnapshot {
themeTags: string[];
coverImageSrc: string | null;
board: PuzzleBoardSnapshot;
status: 'playing' | 'cleared';
status: PuzzleRuntimeLevelStatus;
startedAtMs: number;
clearedAtMs: number | null;
elapsedMs: number | null;
timeLimitMs: number;
remainingMs: number;
pausedAccumulatedMs: number;
pauseStartedAtMs: number | null;
freezeAccumulatedMs: number;
freezeStartedAtMs: number | null;
freezeUntilMs: number | null;
leaderboardEntries: PuzzleLeaderboardEntry[];
}
@@ -96,3 +107,11 @@ export interface DragPuzzlePieceRequest {
targetRow: number;
targetCol: number;
}
export interface UsePuzzleRuntimePropRequest {
propKind: PuzzleRuntimePropKind;
}
export interface UpdatePuzzleRuntimePauseRequest {
paused: boolean;
}

View File

@@ -20,6 +20,7 @@ export interface PuzzleWorkSummary {
playCount?: number;
remixCount?: number;
likeCount?: number;
recentPlayCount7d?: number;
publishReady: boolean;
}

View File

@@ -252,6 +252,7 @@ export type CustomWorldLibraryEntry<TProfile = CustomWorldProfileRecord> = {
playCount?: number;
remixCount?: number;
likeCount?: number;
recentPlayCount7d?: number;
};
export type CustomWorldGalleryCard = Omit<