Files
journal.pl/src/__data__/model.ts
primakov 927bf3929d
All checks were successful
platform/bro/pipeline/head This commit looks good
platform/bro/pipeline/pr-master This commit looks good
students list layout
2024-04-03 19:47:18 +03:00

89 lines
1.5 KiB
TypeScript

interface TokenData {
exp: number;
iat: number;
auth_time: number;
jti: string;
iss: string;
aud: string[];
sub: string;
typ: string;
azp: string;
nonce: string;
session_state: string;
acr: string;
"allowed-origins": string[];
realm_access: Realmaccess;
resource_access: Resourceaccess;
scope: string;
sid: string;
email_verified: boolean;
name: string;
preferred_username: string;
given_name: string;
family_name: string;
email: string;
}
interface Resourceaccess {
journal: Realmaccess;
}
interface Realmaccess {
roles: (string | "teacher")[];
}
export interface UserData extends TokenData {
sub: string;
gravatar: string;
email_verified: boolean;
attributes: Record<string, string[]>;
name: string;
preferred_username: string;
given_name: string;
family_name: string;
email: string;
}
export type BaseResponse<Data> = {
success: boolean;
body: Data;
};
export interface Lesson {
_id: string;
name: string;
students: User[];
date: string;
created: string;
}
export interface AccessCode {
expires: string;
lesson: Lesson;
_id: string;
created: string;
}
export interface User {
sub: string;
email_verified: boolean;
gravatar: string;
name: string;
groups: string[];
preferred_username: string;
given_name: string;
family_name: string;
email: string;
picture?: string;
}
export interface Course {
_id: string;
name: string;
teachers: User[];
lessons: Lesson[];
creator: User;
startDt: string;
created: string;
}