Implemented invitation logic. Implemented play list method. Mild refactoring.
This commit is contained in:
@@ -1,10 +1,17 @@
|
||||
import { sql } from 'bun';
|
||||
import { ClaimDefinition } from '../utilities/claimDefinitions';
|
||||
import { SecureId } from '../utilities/requestModels';
|
||||
|
||||
export class Claims extends ClaimDefinition {
|
||||
userId?: string;
|
||||
userId?: SecureId;
|
||||
claims: string[] = [];
|
||||
|
||||
constructor(raw?:{userId?:string, claims?: string[]}) {
|
||||
super();
|
||||
this.userId = raw?.userId ? SecureId.fromHash(raw.userId) : undefined;
|
||||
this.claims = raw?.claims ?? [];
|
||||
}
|
||||
|
||||
public static test(guardClaim: string, userClaims?: Claims): Boolean {
|
||||
return userClaims === undefined || userClaims.claims.some((x) => x === guardClaim);
|
||||
}
|
||||
@@ -17,7 +24,7 @@ export class ClaimsOrm {
|
||||
JOIN claims as c on uc.claim_id = c.id
|
||||
where uc.user_id = ${userId};`;
|
||||
const claims = new Claims();
|
||||
claims.userId = userId;
|
||||
claims.userId = SecureId.fromID(userId);
|
||||
claims.claims = dbResults.map((x) => x.name);
|
||||
return claims;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user