Skip to content

Commit 7ba2b5f

Browse files
author
puranban
committed
Fix OSM username in user and user group dashboard
1 parent a6b2679 commit 7ba2b5f

File tree

4 files changed

+19
-8
lines changed

4 files changed

+19
-8
lines changed

community-dashboard/app/components/ItemSelectInput/index.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {
66
IoPeople,
77
IoSearch,
88
} from 'react-icons/io5';
9-
import { _cs } from '@togglecorp/fujs';
9+
import { isFalsyString, _cs } from '@togglecorp/fujs';
1010
import {
1111
useQuery,
1212
gql,
@@ -192,7 +192,7 @@ function ItemSelectInput<Name extends string>(props: ItemSelectInputProps<Name>)
192192
() => ([
193193
...(usersData?.map((user) => ({
194194
id: user.userId,
195-
name: user.username ?? 'Unknown',
195+
name: (isFalsyString(user.username) ? user.userId : user.username) ?? 'Unknown',
196196
type: 'user' as const,
197197
})) ?? []),
198198
...(userGroupsData?.map((userGroup) => ({

community-dashboard/app/components/MemberItem/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React from 'react';
22
import { Link, generatePath } from 'react-router-dom';
3-
import { isDefined, isFalsyString, isNotDefined } from '@togglecorp/fujs';
3+
import { isDefined, isFalsyString } from '@togglecorp/fujs';
44

55
import NumberOutput from '#components/NumberOutput';
66
import routes from '#base/configs/routes';

community-dashboard/app/views/UserDashboard/index.tsx

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import React from 'react';
1+
import React, { useMemo } from 'react';
22
import { gql, useQuery } from '@apollo/client';
3-
import { encodeDate } from '@togglecorp/fujs';
3+
import { encodeDate, isDefined, isNotDefined } from '@togglecorp/fujs';
44
import { useParams, generatePath, Link } from 'react-router-dom';
55

66
import useUrlState from '#hooks/useUrlState';
@@ -181,11 +181,22 @@ function UserDashboard(props: Props) {
181181

182182
const filteredStats = filteredUserStats?.userStats?.filteredStats;
183183

184+
// NOTE: OSM user does not have username stored
185+
const userName = useMemo(() => {
186+
if (isDefined(userStats) && isDefined(userStats.user)) {
187+
return isNotDefined(userStats.user.username)
188+
? userStats.user.userId
189+
: userStats.user.username;
190+
}
191+
192+
return null;
193+
}, [userStats]);
194+
184195
return (
185196
<Page
186197
className={className}
187198
variant="user"
188-
heading={userStats?.user.username}
199+
heading={userName}
189200
totalSwipes={totalSwipes}
190201
totalSwipesLastMonth={totalSwipesLastMonth}
191202
totalTimeSpent={totalSwipeTime}

community-dashboard/app/views/UserGroupDashboard/index.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React, { useCallback, useMemo, useState } from 'react';
22
import { gql, useQuery, useLazyQuery } from '@apollo/client';
3-
import { encodeDate } from '@togglecorp/fujs';
3+
import { encodeDate, isFalsyString } from '@togglecorp/fujs';
44
import { useParams } from 'react-router-dom';
55

66
import StatsBoard from '#views/StatsBoard';
@@ -239,7 +239,7 @@ function UserGroupDashboard(props: Props) {
239239
['User', 'Total swipes', 'Project contributed', 'Time spent(mins)'],
240240
...(newUserMembershipsData?.map((user) => (
241241
[
242-
user.username,
242+
isFalsyString(user.username) ? user.userId : user.username,
243243
user.totalSwipes,
244244
user.totalMappingProjects,
245245
user.totalSwipeTime,

0 commit comments

Comments
 (0)