mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-03 06:25:55 +00:00
Fix: Don't display requested by when user has no access to read workspace members
This commit is contained in:
+38
-25
@@ -19,7 +19,13 @@ import {
|
|||||||
EmptyState,
|
EmptyState,
|
||||||
Skeleton
|
Skeleton
|
||||||
} from "@app/components/v2";
|
} from "@app/components/v2";
|
||||||
import { useUser, useWorkspace } from "@app/context";
|
import {
|
||||||
|
ProjectPermissionActions,
|
||||||
|
ProjectPermissionSub,
|
||||||
|
useProjectPermission,
|
||||||
|
useUser,
|
||||||
|
useWorkspace
|
||||||
|
} from "@app/context";
|
||||||
import {
|
import {
|
||||||
useGetSecretApprovalRequestCount,
|
useGetSecretApprovalRequestCount,
|
||||||
useGetSecretApprovalRequests,
|
useGetSecretApprovalRequests,
|
||||||
@@ -58,6 +64,7 @@ export const SecretApprovalRequest = () => {
|
|||||||
const { data: secretApprovalRequestCount, isSuccess: isSecretApprovalReqCountSuccess } =
|
const { data: secretApprovalRequestCount, isSuccess: isSecretApprovalReqCountSuccess } =
|
||||||
useGetSecretApprovalRequestCount({ workspaceId });
|
useGetSecretApprovalRequestCount({ workspaceId });
|
||||||
const { user: presentUser } = useUser();
|
const { user: presentUser } = useUser();
|
||||||
|
const { permission } = useProjectPermission();
|
||||||
const { data: members } = useGetWorkspaceUsers(workspaceId);
|
const { data: members } = useGetWorkspaceUsers(workspaceId);
|
||||||
const membersGroupById = members?.reduce<Record<string, TWorkspaceUser>>(
|
const membersGroupById = members?.reduce<Record<string, TWorkspaceUser>>(
|
||||||
(prev, curr) => ({ ...prev, [curr.id]: curr }),
|
(prev, curr) => ({ ...prev, [curr.id]: curr }),
|
||||||
@@ -156,31 +163,37 @@ export const SecretApprovalRequest = () => {
|
|||||||
))}
|
))}
|
||||||
</DropdownMenuContent>
|
</DropdownMenuContent>
|
||||||
</DropdownMenu>
|
</DropdownMenu>
|
||||||
<DropdownMenu>
|
{!!permission.can(ProjectPermissionActions.Read, ProjectPermissionSub.Member) && (
|
||||||
<DropdownMenuTrigger>
|
<DropdownMenu>
|
||||||
<Button
|
<DropdownMenuTrigger>
|
||||||
variant="plain"
|
<Button
|
||||||
colorSchema="secondary"
|
variant="plain"
|
||||||
className={committerFilter ? "text-white" : "text-bunker-300"}
|
colorSchema="secondary"
|
||||||
rightIcon={<FontAwesomeIcon icon={faChevronDown} size="sm" className="ml-2" />}
|
className={committerFilter ? "text-white" : "text-bunker-300"}
|
||||||
>
|
rightIcon={
|
||||||
Author
|
<FontAwesomeIcon icon={faChevronDown} size="sm" className="ml-2" />
|
||||||
</Button>
|
}
|
||||||
</DropdownMenuTrigger>
|
|
||||||
<DropdownMenuContent align="end">
|
|
||||||
<DropdownMenuLabel>Select an author</DropdownMenuLabel>
|
|
||||||
{members?.map(({ user, id }) => (
|
|
||||||
<DropdownMenuItem
|
|
||||||
onClick={() => setCommitterFilter((state) => (state === id ? undefined : id))}
|
|
||||||
key={`request-filter-member-${id}`}
|
|
||||||
icon={committerFilter === id && <FontAwesomeIcon icon={faCheckCircle} />}
|
|
||||||
iconPos="right"
|
|
||||||
>
|
>
|
||||||
{user.email}
|
Author
|
||||||
</DropdownMenuItem>
|
</Button>
|
||||||
))}
|
</DropdownMenuTrigger>
|
||||||
</DropdownMenuContent>
|
<DropdownMenuContent align="end">
|
||||||
</DropdownMenu>
|
<DropdownMenuLabel>Select an author</DropdownMenuLabel>
|
||||||
|
{members?.map(({ user, id }) => (
|
||||||
|
<DropdownMenuItem
|
||||||
|
onClick={() =>
|
||||||
|
setCommitterFilter((state) => (state === id ? undefined : id))
|
||||||
|
}
|
||||||
|
key={`request-filter-member-${id}`}
|
||||||
|
icon={committerFilter === id && <FontAwesomeIcon icon={faCheckCircle} />}
|
||||||
|
iconPos="right"
|
||||||
|
>
|
||||||
|
{user.email}
|
||||||
|
</DropdownMenuItem>
|
||||||
|
))}
|
||||||
|
</DropdownMenuContent>
|
||||||
|
</DropdownMenu>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="flex flex-col rounded-b-md border-x border-t border-b border-mineshaft-600 bg-mineshaft-800">
|
<div className="flex flex-col rounded-b-md border-x border-t border-b border-mineshaft-600 bg-mineshaft-800">
|
||||||
|
|||||||
Reference in New Issue
Block a user