diff --git a/apps/web/src/components/tournament-card/FriendListDialog.tsx b/apps/web/src/components/tournament-card/FriendListDialog.tsx
index 26718962..e28ac099 100644
--- a/apps/web/src/components/tournament-card/FriendListDialog.tsx
+++ b/apps/web/src/components/tournament-card/FriendListDialog.tsx
@@ -41,9 +41,10 @@ const toUser = (friend: FriendListItemT): UserT => ({
function FriendListDialog({ open, onOpenChange, tournamentId }: FriendListDialogProps) {
// 모달이 열렸을 때만 group-result fetch.
- const { groupResultData, isGroupResultPending } = useGetGroupResult(tournamentId, {
- enabled: open,
- });
+ const { groupResultData, isGroupResultPending, isGroupResultError } = useGetGroupResult(
+ tournamentId,
+ { enabled: open }
+ );
const { userData } = useGetMe();
const myUserId = userData.id;
@@ -78,7 +79,11 @@ function FriendListDialog({ open, onOpenChange, tournamentId }: FriendListDialog
이 토너먼트에 참여한 친구 목록입니다.
-
+ 친구 목록을 불러오지 못했어요. +
+ ); + } + if (friends.length === 0) { return (
diff --git a/apps/web/src/components/tournament-card/MorePopover.tsx b/apps/web/src/components/tournament-card/MorePopover.tsx
index af5b986b..2efae3f0 100644
--- a/apps/web/src/components/tournament-card/MorePopover.tsx
+++ b/apps/web/src/components/tournament-card/MorePopover.tsx
@@ -1,7 +1,7 @@
'use client';
import { useRouter } from 'next/navigation';
-import { type ComponentType, type SVGProps, useState } from 'react';
+import { type ComponentType, type MouseEvent, type SVGProps, useState } from 'react';
import {
GroupIconFill,
@@ -57,76 +57,81 @@ function MorePopover({ status, tournamentId, participantCount = 0 }: MorePopover
router.push(ROUTES.TOURNAMENT_RESULT(tournamentId));
};
+ /** 카드 전체가 Link 라 더보기 조작이 페이지 이동으로 이어지지 않게 막는다 */
+ const handleStopCardNavigation = (event: MouseEvent