polling interval from config qrcode as link courses list page journal.pl as name fix package-lock lesson missed students merge students list reset version 1.0.0 styled page of visits rename students fake students, delete comments Обновил Readme Squashed commit of the following: commit ebc511e36b84c077f7bc029540ead1e3c58c49ab Author: Alexei <adu864222@gmail.com> Date: Tue Mar 19 00:23:30 2024 +1000 fake students, delete comments commit 018582d16c581663103e5fded99cc10fca400532 Author: Alexei <adu864222@gmail.com> Date: Mon Mar 18 23:13:01 2024 +1000 rename students commit e53922d7fd89cf371c90e167c6486b36b0789036 Author: Alexei <adu864222@gmail.com> Date: Sun Mar 17 00:45:11 2024 +1000 styled page of visits Обновил Readme Squashed commit of the following: commit ebc511e36b84c077f7bc029540ead1e3c58c49ab Author: Alexei <adu864222@gmail.com> Date: Tue Mar 19 00:23:30 2024 +1000 fake students, delete comments commit 018582d16c581663103e5fded99cc10fca400532 Author: Alexei <adu864222@gmail.com> Date: Mon Mar 18 23:13:01 2024 +1000 rename students commit e53922d7fd89cf371c90e167c6486b36b0789036 Author: Alexei <adu864222@gmail.com> Date: Sun Mar 17 00:45:11 2024 +1000 styled page of visits JRL-51 breadcrumbs + fonts 1.1.0 1.2.0 correct width h1 on page of visits students styled card of course
88 lines
1.5 KiB
TypeScript
88 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;
|
|
}
|
|
|
|
export interface Course {
|
|
_id: string;
|
|
name: string;
|
|
teachers: User[];
|
|
lessons: Lesson[];
|
|
creator: User;
|
|
startDt: string;
|
|
created: string;
|
|
}
|