{groupingTypes.map((grouping) => {
@@ -140,7 +155,12 @@ export function FriendsPage() {
{filteredFriends.map((friend) => (
{}}
+ onShowResourceProgress={(resourceId) => {
+ setShowFriendProgress({
+ resourceId,
+ friend,
+ });
+ }}
key={friend.userId}
onReload={() => {
pageProgressMessage.set('Reloading friends ..');
diff --git a/src/components/UserProgress/UserProgressModal.tsx b/src/components/UserProgress/UserProgressModal.tsx
index ac184bd50..1b565ba71 100644
--- a/src/components/UserProgress/UserProgressModal.tsx
+++ b/src/components/UserProgress/UserProgressModal.tsx
@@ -13,8 +13,10 @@ import { Spinner } from '../ReactIcons/Spinner';
import { ErrorIcon } from '../ReactIcons/ErrorIcon';
export type ProgressMapProps = {
+ userId?: string;
resourceId: string;
resourceType: ResourceType;
+ onClose?: () => void;
};
type UserProgressResponse = {
@@ -31,8 +33,13 @@ type UserProgressResponse = {
};
export function UserProgressModal(props: ProgressMapProps) {
- const { s: userId } = getUrlParams();
- const { resourceId, resourceType } = props;
+ const {
+ resourceId,
+ resourceType,
+ userId: propUserId,
+ onClose: onModalClose,
+ } = props;
+ const { s: userId = propUserId } = getUrlParams();
const resourceSvgEl = useRef(null);
const popupBodyEl = useRef(null);
@@ -95,6 +102,7 @@ export function UserProgressModal(props: ProgressMapProps) {
deleteUrlParam('s');
setError('');
setShowModal(false);
+ onModalClose?.();
}
useKeydown('Escape', () => {
diff --git a/src/pages/account/friends.astro b/src/pages/account/friends.astro
index 8a7fed1e1..bfdbd64b9 100644
--- a/src/pages/account/friends.astro
+++ b/src/pages/account/friends.astro
@@ -10,6 +10,6 @@ import { FriendsPage } from '../../components/Friends/FriendsPage';
initialLoadingMessage='Loading friends'
>
-
+