diff --git a/web-frontend/src/main/v3/packages/constants/src/types/ConfigUserGroup.ts b/web-frontend/src/main/v3/packages/constants/src/types/ConfigUserGroup.ts index adfa6bb9d80a..49531379e329 100644 --- a/web-frontend/src/main/v3/packages/constants/src/types/ConfigUserGroup.ts +++ b/web-frontend/src/main/v3/packages/constants/src/types/ConfigUserGroup.ts @@ -1,5 +1,5 @@ export namespace ConfigUserGroup { - export type Parameters = { userId: string | undefined } | { userGroupId: string }; + export type Parameters = {} | { userId: string } | { userGroupId: string }; export type Body = { id: string; userId: string; diff --git a/web-frontend/src/main/v3/packages/hooks/src/api/useGetConfigUserGroup.ts b/web-frontend/src/main/v3/packages/hooks/src/api/useGetConfigUserGroup.ts index 6d16f418d38d..f12b3c34e2a7 100644 --- a/web-frontend/src/main/v3/packages/hooks/src/api/useGetConfigUserGroup.ts +++ b/web-frontend/src/main/v3/packages/hooks/src/api/useGetConfigUserGroup.ts @@ -1,20 +1,21 @@ import useSWR from 'swr'; import { END_POINTS, ConfigUserGroup } from '@pinpoint-fe/constants'; import { swrConfigs } from './swrConfigs'; -import { convertParamsToQueryString } from '@pinpoint-fe/utils'; +import { convertParamsToQueryString, isEmpty } from '@pinpoint-fe/utils'; const getQueryString = (queryParams: ConfigUserGroup.Parameters) => { - if ('userId' in queryParams || queryParams.userGroupId) { - return `?${convertParamsToQueryString(queryParams)}`; + if (isEmpty(queryParams)) { + return ''; } - return ''; + + return `?${convertParamsToQueryString(queryParams)}`; }; export const useGetConfigUserGroup = (params: ConfigUserGroup.Parameters) => { const queryString = getQueryString(params); return useSWR( - queryString ? `${END_POINTS.CONFIG_USER_GROUP}${queryString}` : null, + `${END_POINTS.CONFIG_USER_GROUP}${queryString}`, swrConfigs, ); }; diff --git a/web-frontend/src/main/v3/packages/ui/src/components/Config/user-group/user-group/UserGroup.tsx b/web-frontend/src/main/v3/packages/ui/src/components/Config/user-group/user-group/UserGroup.tsx index ba1fbf1f4852..c3d91102d409 100644 --- a/web-frontend/src/main/v3/packages/ui/src/components/Config/user-group/user-group/UserGroup.tsx +++ b/web-frontend/src/main/v3/packages/ui/src/components/Config/user-group/user-group/UserGroup.tsx @@ -2,15 +2,11 @@ import { Configuration } from '@pinpoint-fe/constants'; import { UserGroupTable } from './UserGroupTable'; export interface UserGroupProps { - configuration?: Configuration & { userId?: string }; + configuration?: Configuration; } export const UserGroup = ({ configuration }: UserGroupProps) => { - const userId = configuration?.userId || ''; - return ( - configuration && ( - - ) + configuration && ); }; diff --git a/web-frontend/src/main/v3/packages/ui/src/components/Config/user-group/user-group/UserGroupTableFetcher.tsx b/web-frontend/src/main/v3/packages/ui/src/components/Config/user-group/user-group/UserGroupTableFetcher.tsx index d47e1f041130..38f3b659dc75 100644 --- a/web-frontend/src/main/v3/packages/ui/src/components/Config/user-group/user-group/UserGroupTableFetcher.tsx +++ b/web-frontend/src/main/v3/packages/ui/src/components/Config/user-group/user-group/UserGroupTableFetcher.tsx @@ -10,14 +10,14 @@ import { convertParamsToQueryString } from '@pinpoint-fe/utils'; import { UserGroupTableToolbar } from './UserGroupTableToolbar'; export interface UserGroupTableFetcherProps { - userId: string; + userId?: string; enableUserGroupAdd?: boolean; enableAllUserGroupRemove?: boolean; enableOnlyMyUserGroupRemove?: boolean; } export const UserGroupTableFetcher = ({ - userId, + userId = '', enableAllUserGroupRemove = false, enableOnlyMyUserGroupRemove = true, ...props @@ -25,7 +25,8 @@ export const UserGroupTableFetcher = ({ const navigate = useNavigate(); const { t } = useTranslation(); const [query, setQuery] = React.useState(''); - const { data, mutate } = useGetConfigUserGroup(query ? { userGroupId: query } : { userId }); + const queryParams = query ? { userGroupId: query } : userId ? { userId } : {}; + const { data, mutate } = useGetConfigUserGroup(queryParams); const myUserGroupListRef = React.useRef(); const myUserGroupList = query ? myUserGroupListRef.current : data; const { isMutating, onRemove } = useDeleteConfigUserGroup({