From bcab4069083f3d0ee5b3829f2e2ab52ccb309a85 Mon Sep 17 00:00:00 2001 From: Akhil Meka Date: Wed, 12 Mar 2025 18:38:02 +0530 Subject: [PATCH] add tester role --- src/user/user.service.ts | 2 +- src/utils/roles.ts | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/src/user/user.service.ts b/src/user/user.service.ts index 3fbc84a..306310e 100644 --- a/src/user/user.service.ts +++ b/src/user/user.service.ts @@ -59,7 +59,7 @@ export async function getUserByEmail(email: string) { export async function listUsers(tenantId: string) { return await userModel - .find({ tenantId: tenantId }) + .find({ $and: [{ tenantId: tenantId }, { role: { $ne: "tester" } }] }) .select( "_id pid orgId firstName lastName name email role avatar status createdAt createdBy lastLogin" ); diff --git a/src/utils/roles.ts b/src/utils/roles.ts index 75c863a..ffe9ee7 100644 --- a/src/utils/roles.ts +++ b/src/utils/roles.ts @@ -4,6 +4,43 @@ export const rules: Record< string, { claims: Claim[]; hiddenFields: Record> } > = { + tester: { + claims: [ + "user:read", + "user:write", + "user:delete", + "org:read", + "org:write", + "org:delete", + "permit:read", + "permit:write", + "permit:delete", + "file:upload", + "file:download", + "file:delete", + "rts:read", + "rts:write", + "rts:delete", + "task:read", + "task:write", + "task:delete", + "notification:read", + "notification:write", + "config:read", + "config:write", + "mail:all", + "view:read", + "view:write", + "view:delete", + ], + hiddenFields: { + orgs: ["__v"], + permits: ["__v"], + rts: ["__v"], + tasks: ["__v"], + users: ["__v"], + }, + }, admin: { claims: [ "user:read",