diff options
Diffstat (limited to 'src/screens')
| -rw-r--r-- | src/screens/moments/TagSelectionScreen.tsx | 26 | ||||
| -rw-r--r-- | src/screens/profile/CaptionScreen.tsx | 8 |
2 files changed, 13 insertions, 21 deletions
diff --git a/src/screens/moments/TagSelectionScreen.tsx b/src/screens/moments/TagSelectionScreen.tsx index 08e17eab..3177b638 100644 --- a/src/screens/moments/TagSelectionScreen.tsx +++ b/src/screens/moments/TagSelectionScreen.tsx @@ -9,7 +9,7 @@ import {SearchBar, TaggUserSelectionCell} from '../../components'; import {SEARCH_ENDPOINT_MESSAGES} from '../../constants'; import {MainStackParams} from '../../routes'; import {loadSearchResults} from '../../services'; -import {ProfilePreviewType} from '../../types'; +import {MomentTagType, ProfilePreviewType} from '../../types'; import { isIPhoneX, loadTaggUserSuggestions, @@ -30,9 +30,7 @@ interface TagSelectionScreenProps { const TagSelectionScreen: React.FC<TagSelectionScreenProps> = ({route}) => { const navigation = useNavigation(); const [users, setUsers] = useState<ProfilePreviewType[]>([]); - const [selectedUsers, setSelectedUsers] = useState<ProfilePreviewType[]>( - route.params.selectedTags.map((tag) => tag.user), - ); + const [tags, setTags] = useState<MomentTagType[]>(route.params.selectedTags); const [searching, setSearching] = useState(false); const [query, setQuery] = useState<string>(''); const [label, setLabel] = useState<string>('Recent'); @@ -48,13 +46,7 @@ const TagSelectionScreen: React.FC<TagSelectionScreenProps> = ({route}) => { onPress={() => { navigation.navigate('TagFriendsScreen', { ...route.params, - selectedTags: selectedUsers.map((user) => ({ - id: '', - x: 50, - y: 50, - z: 1, - user, - })), + selectedTags: tags, }); }}> <BackIcon @@ -73,12 +65,12 @@ const TagSelectionScreen: React.FC<TagSelectionScreenProps> = ({route}) => { * that the loggedInUser might want to select */ const loadUsers = async () => { - const data: ProfilePreviewType[] = await loadTaggUserSuggestions(); + const data = await loadTaggUserSuggestions(); const filteredData: ProfilePreviewType[] = data.filter((user) => { - const index = selectedUsers.findIndex((s) => s.id === user.id); + const index = tags.findIndex((tag) => tag.user.id === user.id); return index === -1; }); - setUsers([...filteredData, ...selectedUsers]); + setUsers([...filteredData, ...tags.map((tag) => tag.user)]); }; /* @@ -89,7 +81,7 @@ const TagSelectionScreen: React.FC<TagSelectionScreenProps> = ({route}) => { const searchResults = await loadSearchResults( `${SEARCH_ENDPOINT_MESSAGES}?query=${query}`, ); - setUsers(searchResults?.users); + setUsers(searchResults ? searchResults.users : []); } else { setUsers([]); } @@ -136,8 +128,8 @@ const TagSelectionScreen: React.FC<TagSelectionScreenProps> = ({route}) => { <TaggUserSelectionCell key={item.item.id} item={item.item} - selectedUsers={selectedUsers} - setSelectedUsers={setSelectedUsers} + tags={tags} + setTags={setTags} /> )} /> diff --git a/src/screens/profile/CaptionScreen.tsx b/src/screens/profile/CaptionScreen.tsx index d85ffead..8bffd82b 100644 --- a/src/screens/profile/CaptionScreen.tsx +++ b/src/screens/profile/CaptionScreen.tsx @@ -116,10 +116,10 @@ const CaptionScreen: React.FC<CaptionScreenProps> = ({route, navigation}) => { const momentTagResponse = await postMomentTags( momentResponse.moment_id, tags.map((tag) => ({ - x: tag.x, - y: tag.y, - z: tag.z, - user_id: tag.id, + x: Math.floor(tag.x), + y: Math.floor(tag.y), + z: Math.floor(tag.z), + user_id: tag.user.id, })), ); if (!momentTagResponse) { |
