feat: refactored the map unpack to a function

This commit is contained in:
Akhil Mohan
2024-05-06 23:27:51 +05:30
parent b3579cb271
commit d198ba1a79
@@ -48,6 +48,11 @@ export const UnpackedPermissionSchema = z.object({
.optional() .optional()
}); });
const unpackPermissions = (permissions: unknown) =>
UnpackedPermissionSchema.array().parse(
unpackRules((permissions || []) as PackRule<RawRuleOf<MongoAbility<ProjectPermissionSet>>>[])
);
export const identityProjectAdditionalPrivilegeServiceFactory = ({ export const identityProjectAdditionalPrivilegeServiceFactory = ({
identityProjectAdditionalPrivilegeDAL, identityProjectAdditionalPrivilegeDAL,
identityProjectDAL, identityProjectDAL,
@@ -106,11 +111,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({
}); });
return { return {
...additionalPrivilege, ...additionalPrivilege,
permissions: UnpackedPermissionSchema.array().parse( permissions: unpackPermissions(additionalPrivilege.permissions)
unpackRules(
(additionalPrivilege.permissions || []) as PackRule<RawRuleOf<MongoAbility<ProjectPermissionSet>>>[]
)
)
}; };
} }
@@ -127,11 +128,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({
}); });
return { return {
...additionalPrivilege, ...additionalPrivilege,
permissions: UnpackedPermissionSchema.array().parse( permissions: unpackPermissions(additionalPrivilege.permissions)
unpackRules(
(additionalPrivilege.permissions || []) as PackRule<RawRuleOf<MongoAbility<ProjectPermissionSet>>>[]
)
)
}; };
}; };
@@ -197,11 +194,8 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({
}); });
return { return {
...additionalPrivilege, ...additionalPrivilege,
permissions: UnpackedPermissionSchema.array().parse(
unpackRules( permissions: unpackPermissions(additionalPrivilege.permissions)
(additionalPrivilege.permissions || []) as PackRule<RawRuleOf<MongoAbility<ProjectPermissionSet>>>[]
)
)
}; };
} }
@@ -215,11 +209,8 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({
}); });
return { return {
...additionalPrivilege, ...additionalPrivilege,
permissions: UnpackedPermissionSchema.array().parse(
unpackRules( permissions: unpackPermissions(additionalPrivilege.permissions)
(additionalPrivilege.permissions || []) as PackRule<RawRuleOf<MongoAbility<ProjectPermissionSet>>>[]
)
)
}; };
}; };
@@ -268,9 +259,8 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({
const deletedPrivilege = await identityProjectAdditionalPrivilegeDAL.deleteById(identityPrivilege.id); const deletedPrivilege = await identityProjectAdditionalPrivilegeDAL.deleteById(identityPrivilege.id);
return { return {
...deletedPrivilege, ...deletedPrivilege,
permissions: UnpackedPermissionSchema.array().parse(
unpackRules((deletedPrivilege.permissions || []) as PackRule<RawRuleOf<MongoAbility<ProjectPermissionSet>>>[]) permissions: unpackPermissions(deletedPrivilege.permissions)
)
}; };
}; };
@@ -307,9 +297,7 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({
return { return {
...identityPrivilege, ...identityPrivilege,
permissions: UnpackedPermissionSchema.array().parse( permissions: unpackPermissions(identityPrivilege.permissions)
unpackRules((identityPrivilege.permissions || []) as PackRule<RawRuleOf<MongoAbility<ProjectPermissionSet>>>[])
)
}; };
}; };
@@ -342,9 +330,8 @@ export const identityProjectAdditionalPrivilegeServiceFactory = ({
}); });
return identityPrivileges.map((el) => ({ return identityPrivileges.map((el) => ({
...el, ...el,
permissions: UnpackedPermissionSchema.array().parse(
unpackRules((el.permissions || []) as PackRule<RawRuleOf<MongoAbility<ProjectPermissionSet>>>[]) permissions: unpackPermissions(el.permissions)
)
})); }));
}; };