Add study activity tracking and refresh class header UI
All checks were successful
Automated Container Build / build-and-push (push) Successful in 54s

This commit is contained in:
Elijah 2026-07-12 11:44:26 -07:00
parent 95af276d2e
commit dad62c9914
21 changed files with 1598 additions and 44 deletions

View file

@ -395,6 +395,7 @@ export const ModelName = {
ShareLink: 'ShareLink',
AuthSecurity: 'AuthSecurity',
Setting: 'Setting',
StudyActivity: 'StudyActivity',
MaterialGroup: 'MaterialGroup'
} as const
@ -411,7 +412,7 @@ export type TypeMap<ExtArgs extends runtime.Types.Extensions.InternalArgs = runt
omit: GlobalOmitOptions
}
meta: {
modelProps: "class" | "deck" | "flashcard" | "quizSet" | "question" | "answerOption" | "studyProgress" | "quizAttempt" | "shareLink" | "authSecurity" | "setting" | "materialGroup"
modelProps: "class" | "deck" | "flashcard" | "quizSet" | "question" | "answerOption" | "studyProgress" | "quizAttempt" | "shareLink" | "authSecurity" | "setting" | "studyActivity" | "materialGroup"
txIsolationLevel: TransactionIsolationLevel
}
model: {
@ -1229,6 +1230,80 @@ export type TypeMap<ExtArgs extends runtime.Types.Extensions.InternalArgs = runt
}
}
}
StudyActivity: {
payload: Prisma.$StudyActivityPayload<ExtArgs>
fields: Prisma.StudyActivityFieldRefs
operations: {
findUnique: {
args: Prisma.StudyActivityFindUniqueArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload> | null
}
findUniqueOrThrow: {
args: Prisma.StudyActivityFindUniqueOrThrowArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>
}
findFirst: {
args: Prisma.StudyActivityFindFirstArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload> | null
}
findFirstOrThrow: {
args: Prisma.StudyActivityFindFirstOrThrowArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>
}
findMany: {
args: Prisma.StudyActivityFindManyArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>[]
}
create: {
args: Prisma.StudyActivityCreateArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>
}
createMany: {
args: Prisma.StudyActivityCreateManyArgs<ExtArgs>
result: BatchPayload
}
createManyAndReturn: {
args: Prisma.StudyActivityCreateManyAndReturnArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>[]
}
delete: {
args: Prisma.StudyActivityDeleteArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>
}
update: {
args: Prisma.StudyActivityUpdateArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>
}
deleteMany: {
args: Prisma.StudyActivityDeleteManyArgs<ExtArgs>
result: BatchPayload
}
updateMany: {
args: Prisma.StudyActivityUpdateManyArgs<ExtArgs>
result: BatchPayload
}
updateManyAndReturn: {
args: Prisma.StudyActivityUpdateManyAndReturnArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>[]
}
upsert: {
args: Prisma.StudyActivityUpsertArgs<ExtArgs>
result: runtime.Types.Utils.PayloadToResult<Prisma.$StudyActivityPayload>
}
aggregate: {
args: Prisma.StudyActivityAggregateArgs<ExtArgs>
result: runtime.Types.Utils.Optional<Prisma.AggregateStudyActivity>
}
groupBy: {
args: Prisma.StudyActivityGroupByArgs<ExtArgs>
result: runtime.Types.Utils.Optional<Prisma.StudyActivityGroupByOutputType>[]
}
count: {
args: Prisma.StudyActivityCountArgs<ExtArgs>
result: runtime.Types.Utils.Optional<Prisma.StudyActivityCountAggregateOutputType> | number
}
}
}
MaterialGroup: {
payload: Prisma.$MaterialGroupPayload<ExtArgs>
fields: Prisma.MaterialGroupFieldRefs
@ -1470,6 +1545,15 @@ export const SettingScalarFieldEnum = {
export type SettingScalarFieldEnum = (typeof SettingScalarFieldEnum)[keyof typeof SettingScalarFieldEnum]
export const StudyActivityScalarFieldEnum = {
id: 'id',
type: 'type',
occurredAt: 'occurredAt'
} as const
export type StudyActivityScalarFieldEnum = (typeof StudyActivityScalarFieldEnum)[keyof typeof StudyActivityScalarFieldEnum]
export const MaterialGroupScalarFieldEnum = {
id: 'id',
classId: 'classId',
@ -1659,6 +1743,7 @@ export type GlobalOmitConfig = {
shareLink?: Prisma.ShareLinkOmit
authSecurity?: Prisma.AuthSecurityOmit
setting?: Prisma.SettingOmit
studyActivity?: Prisma.StudyActivityOmit
materialGroup?: Prisma.MaterialGroupOmit
}