feat: complete placement analysis workflow

This commit is contained in:
2026-08-18 14:22:04 +09:00
parent dd3ea911f6
commit 7b713bffe3
452 changed files with 97115 additions and 24 deletions
+53
View File
@@ -0,0 +1,53 @@
export type CollectionCardState = {
owned: boolean;
awakening: number;
};
export type SavedDeck = {
id: string;
name: string;
cardIds: string[];
settings: Record<string, unknown>;
createdAt: string;
updatedAt: string;
};
export type CardListPreferences = {
types: string[];
stats: string[];
activeConditions: string[];
specialConditions: string[];
activeProbabilities: string[];
cardVariants: string[];
generations: string[];
};
export type BoardCardPlacements = Record<string, Record<string, string>>;
export type UserDataV1 = {
schemaVersion: 1;
updatedAt: string;
memoryCount: number;
memberPowerUpPercent: number;
collection: Record<string, CollectionCardState>;
memberBoards: Record<string, string[]>;
boardCards: BoardCardPlacements;
savedDecks: SavedDeck[];
preferences: CardListPreferences;
};
export type UserData = UserDataV1;
export function createUserData(preferences: CardListPreferences): UserDataV1 {
return {
schemaVersion: 1,
updatedAt: new Date().toISOString(),
memoryCount: 0,
memberPowerUpPercent: 0,
collection: {},
memberBoards: {},
boardCards: {},
savedDecks: [],
preferences
};
}