diff options
| author | Ivan Chen <ivan@tagg.id> | 2021-05-27 11:00:46 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-05-27 11:00:46 -0400 |
| commit | 0e31510f9f1669c766195d1d245fcee6a745bf93 (patch) | |
| tree | 83eb093863c73f47de1936c91066279ec23e31d2 /src/screens/moments/TagFriendsScreen.tsx | |
| parent | 928b94f77581216e1e6d2d180986a4260f040c93 (diff) | |
| parent | b87ad0f18d491a27bbb458887abdd2ab09e64d1e (diff) | |
Merge pull request #449 from grusuTagg/tma883-Layered-Taggs
[TMA-883] Layered Tags
Diffstat (limited to 'src/screens/moments/TagFriendsScreen.tsx')
| -rw-r--r-- | src/screens/moments/TagFriendsScreen.tsx | 33 |
1 files changed, 12 insertions, 21 deletions
diff --git a/src/screens/moments/TagFriendsScreen.tsx b/src/screens/moments/TagFriendsScreen.tsx index b2a8586a..d960f3b9 100644 --- a/src/screens/moments/TagFriendsScreen.tsx +++ b/src/screens/moments/TagFriendsScreen.tsx @@ -19,7 +19,7 @@ import { } from '../../components'; import {TagFriendsFooter} from '../../components/moments'; import {TAGG_LIGHT_BLUE_2} from '../../constants'; -import {ProfilePreviewType} from '../../types'; +import {MomentTagType} from '../../types'; import {SCREEN_WIDTH, StatusBarHeight} from '../../utils'; type TagFriendsScreenRouteProps = RouteProp< @@ -30,19 +30,17 @@ interface TagFriendsScreenProps { route: TagFriendsScreenRouteProps; } const TagFriendsScreen: React.FC<TagFriendsScreenProps> = ({route}) => { - const {image, selectedUsers} = route.params; + const {image, selectedTags} = route.params; const navigation = useNavigation(); const imageRef = useRef(null); - const [taggedUsers, setTaggedUsers] = useState<ProfilePreviewType[]>([]); + const [tags, setTags] = useState<MomentTagType[]>([]); /* * Update list of tagged users from route params */ useEffect(() => { - if (selectedUsers !== undefined) { - setTaggedUsers(selectedUsers); - } - }, [selectedUsers]); + setTags(selectedTags ? selectedTags : []); + }, [selectedTags]); /* * Navigate back to Tag Users Screen, send selected users @@ -50,7 +48,7 @@ const TagFriendsScreen: React.FC<TagFriendsScreenProps> = ({route}) => { const handleDone = () => { navigation.navigate('CaptionScreen', { ...route.params, - selectedUsers: taggedUsers, + selectedTags: tags, }); }; @@ -79,7 +77,7 @@ const TagFriendsScreen: React.FC<TagFriendsScreenProps> = ({route}) => { title={'Tap on photo to Tag friends!'} /> <TouchableWithoutFeedback - disabled={taggedUsers.length > 0} + disabled={tags.length > 0} onPress={() => navigation.navigate('TagSelectionScreen', { selectedUsers: [], @@ -92,26 +90,19 @@ const TagFriendsScreen: React.FC<TagFriendsScreenProps> = ({route}) => { resizeMode={'cover'} /> </TouchableWithoutFeedback> - {taggedUsers.length !== 0 && ( + {tags.length !== 0 && ( <MomentTags + tags={tags} + setTags={setTags} editing={true} - tags={taggedUsers.map((user) => ({ - id: '', - x: 0, - y: 0, - user, - }))} imageRef={imageRef} deleteFromList={(user) => - setTaggedUsers(taggedUsers.filter((u) => u.id !== user.id)) + setTags(tags.filter((tag) => tag.user.id !== user.id)) } /> )} <View style={styles.footerContainer}> - <TagFriendsFooter - taggedUsers={taggedUsers} - setTaggedUsers={setTaggedUsers} - /> + <TagFriendsFooter tags={tags} setTags={setTags} /> </View> </View> </KeyboardAvoidingView> |
