Added backend interfaces

This commit is contained in:
Ferdinand Thiessen 2020-10-21 17:39:04 +02:00
parent e6da94ad0e
commit 05fd255a51
2 changed files with 54 additions and 23 deletions

View File

@ -1,20 +1,51 @@
interface Session { declare namespace FG {
expires: Date; interface Event {
token: string; id: number;
lifetime: number; begin: Date;
browser: string; end?: Date;
platform: string; description: string;
} kind: EventKind;
interface User { slots: Array<EventSlot>;
userid: string; }
display_name: string; interface EventKind {
firstname: string; id: number;
lastname: string; name: string;
mail: string; }
roles: Array<Role>; interface EventSlot {
} id: number;
type Permission = string; start: Date;
interface Role { end?: any;
name: string; slots: Array<any>;
permissions: Array<Permission>; }
interface Job {
userid: string;
value: number;
}
type JobKind = string;
interface JobSlot {
id: number;
needed_persons: number;
kind: JobKind;
jobs: Array<Job>;
}
interface User {
userid: string;
display_name: string;
firstname: string;
lastname: string;
mail: string;
roles: Array<Role>;
}
interface Session {
expires: Date;
token: string;
lifetime: number;
browser: string;
platform: string;
}
type Permission = string;
interface Role {
name: string;
permissions: Array<Permission>;
}
} }

View File

@ -11,8 +11,8 @@ export interface UserStateInterface extends LoginResponse {
} }
export interface LoginResponse { export interface LoginResponse {
user: User; user: FG.User;
session: Session; session: FG.Session;
} }
const state: UserStateInterface = { const state: UserStateInterface = {
@ -35,10 +35,10 @@ const state: UserStateInterface = {
}; };
const mutations: MutationTree<UserStateInterface> = { const mutations: MutationTree<UserStateInterface> = {
setUser (state, data: User) { setUser (state, data: FG.User) {
state.user = data; state.user = data;
}, },
setSession (state, data: Session) { setSession (state, data: FG.Session) {
state.session = data; state.session = data;
}, },
setLoginLoading (state, data: boolean) { setLoginLoading (state, data: boolean) {