From 726f43cda2143cbce8000b0b59281077ee4287f3 Mon Sep 17 00:00:00 2001 From: Shreyag02 Date: Wed, 8 Jul 2026 16:38:38 +0530 Subject: [PATCH] fix(users): resolve user detail via frontierService.getUser instead of searchUsers --- .../users/details/security/block-user.tsx | 23 ++++++++----------- .../views/users/details/user-details.tsx | 8 +++---- 2 files changed, 13 insertions(+), 18 deletions(-) diff --git a/web/sdk/admin/views/users/details/security/block-user.tsx b/web/sdk/admin/views/users/details/security/block-user.tsx index 60666e653..d5a3688af 100644 --- a/web/sdk/admin/views/users/details/security/block-user.tsx +++ b/web/sdk/admin/views/users/details/security/block-user.tsx @@ -7,21 +7,18 @@ import { useMutation, useTransport, } from "@connectrpc/connect-query"; -import { - AdminServiceQueries, - FrontierServiceQueries, -} from "@raystack/proton/frontier"; +import { FrontierServiceQueries } from "@raystack/proton/frontier"; import { useQueryClient } from "@tanstack/react-query"; import { handleConnectError } from "~/utils/error"; import { useTerminology } from "../../../../hooks/useTerminology"; type ButtonColorType = ComponentProps["color"]; -type SearchUsersQueryData = { - users: Array<{ +type GetUserQueryData = { + user?: { id: string; state?: string; - }>; + }; }; export const BlockUserDialog = () => { @@ -36,20 +33,18 @@ export const BlockUserDialog = () => { const optimisticUpdateState = useCallback( (state: string) => { - queryClient.setQueryData( + queryClient.setQueryData( createConnectQueryKey({ - schema: AdminServiceQueries.searchUsers, + schema: FrontierServiceQueries.getUser, transport, - input: { query: { search: user?.id || "" } }, + input: { id: user?.id || "" }, cardinality: "finite", }), oldData => { - if (!oldData) return oldData; + if (!oldData?.user) return oldData; return { ...oldData, - users: oldData.users.map(u => - u.id === user?.id ? { ...u, state } : u, - ), + user: { ...oldData.user, state }, }; }, ); diff --git a/web/sdk/admin/views/users/details/user-details.tsx b/web/sdk/admin/views/users/details/user-details.tsx index 6befd997b..7beaf0b33 100644 --- a/web/sdk/admin/views/users/details/user-details.tsx +++ b/web/sdk/admin/views/users/details/user-details.tsx @@ -5,7 +5,7 @@ import { UserDetailsLayout } from "./layout"; import { UserProvider } from "./user-context"; import { useQuery } from "@connectrpc/connect-query"; import type { User } from "@raystack/proton/frontier"; -import { AdminServiceQueries } from "@raystack/proton/frontier"; +import { FrontierServiceQueries } from "@raystack/proton/frontier"; import { UserDetailsSecurityContent } from "./security/security"; import { useTerminology } from "../../../hooks/useTerminology"; @@ -35,8 +35,8 @@ interface UserDetailsByUserIdProps { export const UserDetailsByUserId = ({ userId, currentPath, onNavigate }: UserDetailsByUserIdProps) => { const t = useTerminology(); const { data, isLoading, refetch } = useQuery( - AdminServiceQueries.searchUsers, - { query: { search: userId } }, + FrontierServiceQueries.getUser, + { id: userId }, { enabled: !!userId, staleTime: 0, @@ -45,7 +45,7 @@ export const UserDetailsByUserId = ({ userId, currentPath, onNavigate }: UserDet retryDelay: 1000, }, ); - const user = data?.users?.[0]; + const user = data?.user; if (isLoading) { return (