diff --git a/backend/src/ee/routes/v1/project-role-router.ts b/backend/src/ee/routes/v1/project-role-router.ts index 9ff1e400f..bb4d2fa8e 100644 --- a/backend/src/ee/routes/v1/project-role-router.ts +++ b/backend/src/ee/routes/v1/project-role-router.ts @@ -157,7 +157,13 @@ export const registerProjectRoleRouter = async (server: FastifyZodProvider) => { response: { 200: z.object({ data: z.object({ - membership: ProjectMembershipsSchema, + membership: ProjectMembershipsSchema.extend({ + roles: z + .object({ + role: z.string() + }) + .array() + }), permissions: z.any().array() }) }) diff --git a/frontend/src/components/v2/UpgradeProjectAlert/UpgradeProjectAlert.tsx b/frontend/src/components/v2/UpgradeProjectAlert/UpgradeProjectAlert.tsx index b4c8d9912..ebcba1d87 100644 --- a/frontend/src/components/v2/UpgradeProjectAlert/UpgradeProjectAlert.tsx +++ b/frontend/src/components/v2/UpgradeProjectAlert/UpgradeProjectAlert.tsx @@ -25,23 +25,24 @@ export const UpgradeProjectAlert = ({ project, transparent }: UpgradeProjectAlertProps): JSX.Element | null => { - const router = useRouter(); - const { membership } = useProjectPermission(); + const { hasProjectRole } = useProjectPermission(); const upgradeProject = useUpgradeProject(); const [currentStatus, setCurrentStatus] = useState(null); const [isUpgrading, setIsUpgrading] = useState(false); + const isProjectAdmin = hasProjectRole("admin"); + const { data: projectStatus, isLoading: statusIsLoading, refetch: manualProjectStatusRefetch } = useGetUpgradeProjectStatus({ projectId: project.id, - enabled: membership.role === "admin" && project.version === ProjectVersion.V1, + enabled: isProjectAdmin && project.version === ProjectVersion.V1, refetchInterval: 5_000, onSuccess: (data) => { - if (membership.role !== "admin") { + if (!isProjectAdmin) { return; } @@ -101,7 +102,7 @@ export const UpgradeProjectAlert = ({ variant="solid" size="md" isLoading={isLoading} - isDisabled={isLoading || membership.role !== "admin"} + isDisabled={isLoading || !isProjectAdmin} onClick={onUpgradeProject} > Upgrade @@ -113,13 +114,13 @@ export const UpgradeProjectAlert = ({
Upgrade your project - {membership.role === "admin" ? ( + {isProjectAdmin ? ( <>

Upgrade your project version to continue receiving the latest improvements and @@ -150,12 +151,12 @@ export const UpgradeProjectAlert = ({