diff --git a/src/components/specific/users/user-card/UserCard.vue b/src/components/specific/users/user-card/UserCard.vue
index 026ee840f..9c5aaf8ae 100644
--- a/src/components/specific/users/user-card/UserCard.vue
+++ b/src/components/specific/users/user-card/UserCard.vue
@@ -36,9 +36,8 @@
:text="fullName(user) + (isSelf(user) ? ` (${$t('UserCard.self')})` : '')"
/>
@@ -95,11 +94,11 @@ export default {
const { isSelf, isSpaceAdmin, isProjectAdmin } = useUser();
const showActionMenu = computed(() => {
- return !isSelf(props.user) && isSpaceAdmin(props.space) || !isSelf(props.user) && isProjectAdmin(props.project) && props.user.cloud_role !== 100;
+ return (
+ (!isSelf(props.user) && isSpaceAdmin(props.space)) ||
+ (!isSelf(props.user) && isProjectAdmin(props.project) && props.user.cloud_role !== 100)
+ );
});
- const role = computed(() => (props.project ? props.user.role : props.user.cloud_role));
- const cloudRole = computed(() => props.user.cloud_role);
- const projectRole = computed(() => props.user.role);
const loading = ref(false);
provide("loading", loading);
@@ -116,9 +115,6 @@ export default {
return {
// References
loading,
- role,
- cloudRole,
- projectRole,
showActionMenu,
showDeleteGuard,
showUpdateForm,
diff --git a/src/components/specific/users/user-role-badge/UserRoleBadge.vue b/src/components/specific/users/user-role-badge/UserRoleBadge.vue
index 0936fdcaf..a94a7af59 100644
--- a/src/components/specific/users/user-role-badge/UserRoleBadge.vue
+++ b/src/components/specific/users/user-role-badge/UserRoleBadge.vue
@@ -1,20 +1,6 @@
-
- {{ $t("UserRoleBadge.guest") }}
-
-
- {{ $t(`UserRoleBadge.spaceAdmin`) }}
-
-
- {{ $t(`UserRoleBadge.projectAdmin`) }}
-
-
- {{ $t(`UserRoleBadge.spaceUser`) }}
-
-
- {{ $t(`UserRoleBadge.projectUser`) }}
-
+ {{ $t(`UserRoleBadge.${badgeKey}`) }}
@@ -25,10 +11,6 @@ import { SPACE_ROLE } from "../../../../config/spaces.js";
export default {
props: {
- role: {
- type: Number,
- required: true,
- },
cloudRole: {
type: Number,
default: null,
@@ -43,24 +25,31 @@ export default {
},
},
setup(props) {
- const roleName = computed(() => {
- switch (props.role) {
- case SPACE_ROLE.ADMIN:
- return props.cloudRole === 100 ? "spaceAdmin" : "projectAdmin";
- case SPACE_ROLE.USER:
- return props.isSpaceRole ? "spaceUser" : "projectUser";
- case PROJECT_ROLE.GUEST:
- default:
- return "guest";
+ const roleClass = computed(() =>
+ badgeKey.value.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase(),
+ );
+
+ const badgeKey = computed(() => {
+ if (props.cloudRole === SPACE_ROLE.ADMIN) {
+ return "spaceAdmin";
}
- });
- const roleClass = computed(() => {
- return roleName.value.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
+ if (props.projectRole === PROJECT_ROLE.ADMIN) {
+ return "projectAdmin";
+ }
+
+ if (props.isSpaceRole) {
+ return "spaceUser";
+ }
+
+ if (props.projectRole === PROJECT_ROLE.GUEST) {
+ return "guest";
+ }
+ return "projectUser";
});
return {
- roleName,
+ badgeKey,
roleClass,
};
},