2025-01-02 15:33:37 +11:00
|
|
|
import { DocumentVisibility, TeamMemberRole } from '@prisma/client';
|
2025-01-16 13:36:00 +11:00
|
|
|
|
|
|
|
|
export const determineDocumentVisibility = (
|
|
|
|
|
globalVisibility: DocumentVisibility | null | undefined,
|
|
|
|
|
userRole: TeamMemberRole,
|
|
|
|
|
): DocumentVisibility => {
|
|
|
|
|
if (globalVisibility) {
|
|
|
|
|
return globalVisibility;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (userRole === TeamMemberRole.ADMIN) {
|
|
|
|
|
return DocumentVisibility.ADMIN;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (userRole === TeamMemberRole.MANAGER) {
|
|
|
|
|
return DocumentVisibility.MANAGER_AND_ABOVE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return DocumentVisibility.EVERYONE;
|
|
|
|
|
};
|