owncast/web/interfaces/user.model.ts

38 lines
736 B
TypeScript
Raw Normal View History

/* eslint-disable import/prefer-default-export */
export class User {
constructor(u) {
this.id = u.id;
this.displayName = u.displayName;
this.displayColor = u.displayColor;
this.createdAt = u.createdAt;
this.previousNames = u.previousNames;
this.nameChangedAt = u.nameChangedAt;
this.scopes = u.scopes;
this.authenticated = u.authenticated;
}
id: string;
displayName: string;
displayColor: number;
createdAt: Date;
previousNames: string[];
nameChangedAt: Date;
scopes: string[];
authenticated: boolean;
public isModerator = (): boolean => {
if (!this.scopes || this.scopes.length === 0) {
return false;
}
return this.scopes.includes('MODERATOR');
};
}