diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/components/common/MomentTags.tsx | 14 | ||||
-rw-r--r-- | src/components/moments/MomentPost.tsx | 12 | ||||
-rw-r--r-- | src/components/taggs/TaggDraggable.tsx | 4 |
3 files changed, 18 insertions, 12 deletions
diff --git a/src/components/common/MomentTags.tsx b/src/components/common/MomentTags.tsx index 4afacddb..d8a70353 100644 --- a/src/components/common/MomentTags.tsx +++ b/src/components/common/MomentTags.tsx @@ -1,4 +1,5 @@ -import React, {createRef, MutableRefObject, useEffect, useState} from 'react'; +import React, {createRef, RefObject, useEffect, useState} from 'react'; +import {Image, View} from 'react-native'; import {MomentTagType, ProfilePreviewType} from '../../types'; import TaggDraggable from '../taggs/TaggDraggable'; import Draggable from './Draggable'; @@ -7,7 +8,7 @@ interface MomentTagsProps { editing: boolean; tags: MomentTagType[]; setTags: (tag: MomentTagType[]) => void; - imageRef: MutableRefObject<null>; + imageRef: RefObject<Image>; deleteFromList?: (user: ProfilePreviewType) => void; } @@ -21,14 +22,9 @@ const MomentTags: React.FC<MomentTagsProps> = ({ const [offset, setOffset] = useState([0, 0]); const [imageDimensions, setImageDimensions] = useState([0, 0]); const [maxZIndex, setMaxZIndex] = useState(1); - const [draggableRefs, setDraggableRefs] = useState< - React.MutableRefObject<null>[] - >([]); + const [draggableRefs, setDraggableRefs] = useState<RefObject<View>[]>([]); - const updateTagPosition = ( - ref: React.MutableRefObject<null>, - userId: string, - ) => { + const updateTagPosition = (ref: RefObject<Image>, userId: string) => { if (ref !== null && ref.current !== null) { ref.current.measure( ( diff --git a/src/components/moments/MomentPost.tsx b/src/components/moments/MomentPost.tsx index e6bb5405..7d0752d5 100644 --- a/src/components/moments/MomentPost.tsx +++ b/src/components/moments/MomentPost.tsx @@ -1,5 +1,13 @@ import {useNavigation} from '@react-navigation/native'; -import React, {useContext, useEffect, useRef, useState} from 'react'; +import React, { + createRef, + LegacyRef, + MutableRefObject, + useContext, + useEffect, + useRef, + useState, +} from 'react'; import { Image, KeyboardAvoidingView, @@ -72,6 +80,7 @@ const MomentPost: React.FC<MomentPostProps> = ({ const [momentTagId, setMomentTagId] = useState<string>(''); const imageRef = useRef(null); + const videoRef = useRef<Video>(null); const {keyboardVisible, currentVisibleMomentId} = useContext(MomentContext); const isVideo = !( moment.moment_url.endsWith('jpg') || @@ -197,6 +206,7 @@ const MomentPost: React.FC<MomentPostProps> = ({ }, ]}> <Video + ref={videoRef} source={{ uri: moment.moment_url, }} diff --git a/src/components/taggs/TaggDraggable.tsx b/src/components/taggs/TaggDraggable.tsx index d458fab6..ea19591d 100644 --- a/src/components/taggs/TaggDraggable.tsx +++ b/src/components/taggs/TaggDraggable.tsx @@ -1,5 +1,5 @@ import {useNavigation} from '@react-navigation/native'; -import React from 'react'; +import React, {RefObject} from 'react'; import { Image, StyleSheet, @@ -17,7 +17,7 @@ import {normalize} from '../../utils'; import {navigateToProfile} from '../../utils/users'; interface TaggDraggableProps extends ViewProps { - draggableRef: React.MutableRefObject<null>; + draggableRef: RefObject<View>; taggedUser: ProfilePreviewType; editingView: boolean; deleteFromList: () => void; |