"feat: refactor party user data fetching to use new endpoint URL builder and implement

This commit is contained in:
louiscklaw
2025-06-17 19:18:21 +08:00
parent 7c7a532381
commit 448825545e
2 changed files with 22 additions and 3 deletions

View File

@@ -47,9 +47,11 @@ type PartyUserData = {
};
export function useGetPartyUser(partyUserId: string) {
const url = partyUserId ? [endpoints.partyUser.details, { params: { partyUserId } }] : '';
const { data, isLoading, error, isValidating } = useSWR<PartyUserData>(url, fetcher, swrOptions);
const { data, isLoading, error, isValidating } = useSWR<PartyUserData>(
endpoints.partyUser.detailsByPartyUserId(partyUserId),
fetcher,
swrOptions
);
const memoizedValue = useMemo(
() => ({
@@ -136,6 +138,20 @@ export async function updatePartyUser(partyUserData: Partial<IPartyUserItem>) {
},
false
);
const partyUserId: string = partyUserData.id || '';
mutate(
endpoints.partyUser.detailsByPartyUserId(partyUserId),
(currentData: any) => {
const currentPartyUser: IPartyUserItem = currentData?.partyUser;
console.log({ currentPartyUser });
const partyUser = partyUserData;
return { ...currentData, partyUser };
},
false
);
}
export async function uploadUserImage(saveUserData: SaveUserData) {

View File

@@ -113,5 +113,8 @@ export const endpoints = {
create: '/api/party-user/create',
update: '/api/party-user/update',
delete: '/api/party-user/delete',
//
detailsByPartyUserId: (partyUserId: string) =>
`/api/party-user/details?partyUserId=${partyUserId}`,
},
};