aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/screens/profile/CaptionScreen.tsx43
1 files changed, 29 insertions, 14 deletions
diff --git a/src/screens/profile/CaptionScreen.tsx b/src/screens/profile/CaptionScreen.tsx
index bb02494d..48724620 100644
--- a/src/screens/profile/CaptionScreen.tsx
+++ b/src/screens/profile/CaptionScreen.tsx
@@ -51,7 +51,7 @@ interface CaptionScreenProps {
}
const CaptionScreen: React.FC<CaptionScreenProps> = ({route, navigation}) => {
- const {title, media, screenType, selectedTags, moment} = route.params;
+ const {title, screenType, selectedTags, moment} = route.params;
const {
user: {userId},
} = useSelector((state: RootState) => state.user);
@@ -62,6 +62,17 @@ const CaptionScreen: React.FC<CaptionScreenProps> = ({route, navigation}) => {
selectedTags ? selectedTags : [],
);
const [taggedList, setTaggedList] = useState<string>('');
+ const mediaFilename = moment ? undefined : route.params.media!.filename;
+ const mediaUri = moment ? moment.moment_url : route.params.media!.uri;
+ // TODO: change this once moment refactor is done
+ const isMediaAVideo = moment
+ ? !(
+ moment.moment_url.endsWith('.jpg') ||
+ moment.moment_url.endsWith('.JPG') ||
+ moment.moment_url.endsWith('.png') ||
+ moment.moment_url.endsWith('.PNG')
+ )
+ : route.params.media?.type === 'video';
useEffect(() => {
setTags(selectedTags ? selectedTags : []);
@@ -120,12 +131,12 @@ const CaptionScreen: React.FC<CaptionScreenProps> = ({route, navigation}) => {
const handleShare = async () => {
setLoading(true);
- if (!media || !title) {
+ if (moment || !mediaFilename || !title) {
return;
}
const momentResponse = await postMoment(
- media.filename,
- media.uri,
+ mediaFilename,
+ mediaUri,
caption,
title,
userId,
@@ -191,14 +202,18 @@ const CaptionScreen: React.FC<CaptionScreenProps> = ({route, navigation}) => {
</View>
<CaptionScreenHeader
style={styles.header}
- {...{title: moment ? moment.moment_category : title}}
- />
- {/* this is the image we want to center our tags' initial location within */}
- <Image
- style={styles.image}
- source={{uri: moment ? moment.moment_url : image?.path}}
- resizeMode={'cover'}
+ {...{title: moment ? moment.moment_category : title ?? ''}}
/>
+ {isMediaAVideo ? (
+ // <Video uri={mediaUri} style={styles.media} />
+ <></>
+ ) : (
+ <Image
+ style={styles.media}
+ source={{uri: mediaUri}}
+ resizeMode={'cover'}
+ />
+ )}
<MentionInput
containerStyle={styles.text}
placeholder="Write something....."
@@ -212,8 +227,8 @@ const CaptionScreen: React.FC<CaptionScreenProps> = ({route, navigation}) => {
navigation.navigate('TagFriendsScreen', {
imagePath: moment
? moment.moment_url
- : image
- ? image.path
+ : media
+ ? media.uri
: '',
selectedTags: tags,
})
@@ -257,7 +272,7 @@ const styles = StyleSheet.create({
header: {
marginVertical: 20,
},
- image: {
+ media: {
position: 'relative',
width: SCREEN_WIDTH,
aspectRatio: 1,