Initial addition of the Arcade study feature. Add connections as the first working game.
All checks were successful
Automated Container Build / build-and-push (push) Successful in 1m4s
All checks were successful
Automated Container Build / build-and-push (push) Successful in 1m4s
This commit is contained in:
parent
7b90409f2e
commit
611a585757
43 changed files with 5990 additions and 68 deletions
|
|
@ -18,6 +18,7 @@ model Class {
|
|||
quizSets QuizSet[]
|
||||
materialGroups MaterialGroup[]
|
||||
spacedRepetitionSets SpacedRepetitionSet[]
|
||||
arcadePacks ArcadePack[]
|
||||
}
|
||||
|
||||
model Deck {
|
||||
|
|
@ -146,12 +147,52 @@ model Setting {
|
|||
|
||||
model StudyActivity {
|
||||
id String @id @default(uuid())
|
||||
type String // "FLASHCARD" | "QUIZ_QUESTION"
|
||||
type String // "FLASHCARD" | "QUIZ_QUESTION" | "ARCADE_GROUP"
|
||||
occurredAt DateTime @default(now())
|
||||
|
||||
@@index([occurredAt])
|
||||
}
|
||||
|
||||
model ArcadePack {
|
||||
id String @id @default(uuid())
|
||||
classId String
|
||||
gameType String
|
||||
name String
|
||||
description String?
|
||||
schemaVersion Int
|
||||
sourceJson String
|
||||
normalizedJson String
|
||||
validationReportJson String
|
||||
sortOrder Int @default(0)
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
||||
class Class @relation(fields: [classId], references: [id], onDelete: Cascade)
|
||||
attempts ArcadeAttempt[]
|
||||
|
||||
@@index([classId, gameType, sortOrder])
|
||||
}
|
||||
|
||||
model ArcadeAttempt {
|
||||
id String @id @default(uuid())
|
||||
arcadePackId String
|
||||
mode String
|
||||
score Int
|
||||
maxScore Int
|
||||
accuracy Float
|
||||
durationSeconds Int
|
||||
mistakes Int
|
||||
hintsUsed Int
|
||||
settingsJson String
|
||||
resultsJson String
|
||||
seed String
|
||||
completedAt DateTime @default(now())
|
||||
|
||||
arcadePack ArcadePack @relation(fields: [arcadePackId], references: [id], onDelete: Cascade)
|
||||
|
||||
@@index([arcadePackId, completedAt])
|
||||
}
|
||||
|
||||
model MaterialGroup {
|
||||
id String @id @default(uuid())
|
||||
classId String
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue