aboutsummaryrefslogtreecommitdiff
path: root/src/screens/profile/InviteFriendsScreen.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/screens/profile/InviteFriendsScreen.tsx')
-rw-r--r--src/screens/profile/InviteFriendsScreen.tsx56
1 files changed, 28 insertions, 28 deletions
diff --git a/src/screens/profile/InviteFriendsScreen.tsx b/src/screens/profile/InviteFriendsScreen.tsx
index 89f2e62f..9ee6fb1c 100644
--- a/src/screens/profile/InviteFriendsScreen.tsx
+++ b/src/screens/profile/InviteFriendsScreen.tsx
@@ -21,7 +21,6 @@ import {
getRemainingInviteCount,
usersFromContactsService,
} from '../../services/UserFriendsService';
-import {ProfilePreviewType} from '../../types';
import {
extractContacts,
HeaderHeight,
@@ -45,11 +44,10 @@ export type SearchResultType = {
const InviteFriendsScreen: React.FC = () => {
const navigation = useNavigation();
- const [usersFromContacts, setUsersFromContacts] = useState<
- ProfilePreviewType[]
+ const [nonUsersFromContacts, setNonUsersFromContacts] = useState<
+ InviteContactType[]
>([]);
- const [nonUsersFromContacts, setNonUsersFromContacts] = useState<[]>([]);
- const [pendingUsers] = useState<[]>([]);
+ const [pendingUsers, setPendingUsers] = useState<InviteContactType[]>([]);
const [results, setResults] = useState<SearchResultType>({
nonUsersFromContacts: nonUsersFromContacts,
pendingUsers: pendingUsers,
@@ -80,8 +78,8 @@ const InviteFriendsScreen: React.FC = () => {
const permission = await checkPermission();
if (permission === 'authorized') {
let response = await usersFromContactsService(retrievedContacts);
- await setUsersFromContacts(response.existing_tagg_users);
await setNonUsersFromContacts(response.invite_from_contacts);
+ await setPendingUsers(response.pending_users);
setResults({
nonUsersFromContacts: response.invite_from_contacts,
pendingUsers: response.pending_users,
@@ -100,30 +98,32 @@ const InviteFriendsScreen: React.FC = () => {
useEffect(() => {
const search = async () => {
if (query.length > 0) {
- const searchResultsUsers = usersFromContacts.filter(
- (item: ProfilePreviewType) =>
- (item.first_name + ' ' + item.last_name)
- .toLowerCase()
- .startsWith(query) ||
- item.username.toLowerCase().startsWith(query) ||
- item.last_name.toLowerCase().startsWith(query),
- );
- const searchResultsNonUsers = nonUsersFromContacts.filter(
- (item: InviteContactType) =>
- (item.firstName + ' ' + item.lastName)
- .toLowerCase()
- .startsWith(query) ||
- item.lastName.toLowerCase().startsWith(query),
- );
- const sanitizedResult = {
- usersFromContacts: searchResultsUsers,
+ const searchResultsPendingUsers = pendingUsers
+ ? pendingUsers.filter(
+ (item: InviteContactType) =>
+ (item.firstName + ' ' + item.lastName)
+ .toLowerCase()
+ .startsWith(query) ||
+ item.lastName.toLowerCase().startsWith(query),
+ )
+ : [];
+ const searchResultsNonUsers = nonUsersFromContacts
+ ? nonUsersFromContacts.filter(
+ (item: InviteContactType) =>
+ (item.firstName + ' ' + item.lastName)
+ .toLowerCase()
+ .startsWith(query) ||
+ item.lastName.toLowerCase().startsWith(query),
+ )
+ : [];
+ setResults({
nonUsersFromContacts: searchResultsNonUsers,
- };
- setResults(sanitizedResult);
+ pendingUsers: searchResultsPendingUsers,
+ });
} else {
setResults({
- nonUsersFromContacts: nonUsersFromContacts,
- pendingUsers: pendingUsers,
+ nonUsersFromContacts: nonUsersFromContacts || [],
+ pendingUsers: pendingUsers || [],
});
}
};
@@ -203,7 +203,7 @@ const InviteFriendsScreen: React.FC = () => {
styles.subheader,
{
height:
- 72 *
+ 75 *
(results.pendingUsers ? results.pendingUsers.length : 1),
},
]}>