UNPKG

very-express

Version:

based on json schema and openapi, generate Express RestApi server with mongoDb

23 lines (18 loc) 704 B
// {{headerComment}} export type accessAction = "create" | "read" | "search" | "update" | "delete"; export const accessActionArr: accessAction[] = ["create", "read", "search", "update", "delete"]; export interface accessControl< T = accessAction > { [key:string]: T[] } export class _RoleFactory<T = accessAction> { private accessControl: accessControl<T> = {}; constructor(accessControl: accessControl<T>) { this.accessControl = accessControl; } public checkAccess(document: string, access: string): boolean { if (this.accessControl[document]) { return this.accessControl[document].includes(access as T); } return false; } }