added temporary (react state) image
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
import React, {useCallback} from 'react'
|
import React, {useCallback, useState} from 'react'
|
||||||
import {StyleSheet, View, TouchableOpacity, Alert, Image} from 'react-native'
|
import {StyleSheet, View, TouchableOpacity, Alert, Image} from 'react-native'
|
||||||
import Svg, {Circle, Text, Defs, LinearGradient, Stop} from 'react-native-svg'
|
import Svg, {Circle, Text, Defs, LinearGradient, Stop} from 'react-native-svg'
|
||||||
import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
|
import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
|
||||||
@@ -24,6 +24,8 @@ export function UserAvatar({
|
|||||||
const initials = getInitials(displayName || handle)
|
const initials = getInitials(displayName || handle)
|
||||||
const gradient = getGradient(handle)
|
const gradient = getGradient(handle)
|
||||||
|
|
||||||
|
const [uploadedImage, setUploadedImage] = useState<string | null>(null)
|
||||||
|
|
||||||
const handleEditAvatar = useCallback(() => {
|
const handleEditAvatar = useCallback(() => {
|
||||||
Alert.alert('Select upload method', '', [
|
Alert.alert('Select upload method', '', [
|
||||||
{
|
{
|
||||||
@@ -36,8 +38,7 @@ export function UserAvatar({
|
|||||||
height: 80,
|
height: 80,
|
||||||
cropperCircleOverlay: true,
|
cropperCircleOverlay: true,
|
||||||
}).then(item => {
|
}).then(item => {
|
||||||
// setLocalAvatarPicture(item.path)
|
setUploadedImage(item.path)
|
||||||
console.log(item)
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -54,7 +55,7 @@ export function UserAvatar({
|
|||||||
height: 80,
|
height: 80,
|
||||||
cropperCircleOverlay: true,
|
cropperCircleOverlay: true,
|
||||||
}).then(croppedItem => {
|
}).then(croppedItem => {
|
||||||
// setLocalAvatarPicture(croppedItem.path)
|
setUploadedImage(croppedItem.path)
|
||||||
console.log(croppedItem)
|
console.log(croppedItem)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@@ -86,12 +87,12 @@ export function UserAvatar({
|
|||||||
|
|
||||||
return isEditable ? (
|
return isEditable ? (
|
||||||
<TouchableOpacity onPress={handleEditAvatar}>
|
<TouchableOpacity onPress={handleEditAvatar}>
|
||||||
{/* {localAvatarPicture != null ? (
|
{/* Added a react state temporary photo white the protocol does not support imagery */}
|
||||||
<Image style={styles.avatarImage} source={{uri: localAvatarPicture}} />
|
{uploadedImage != null ? (
|
||||||
|
<Image style={styles.avatarImage} source={{uri: uploadedImage}} />
|
||||||
) : (
|
) : (
|
||||||
renderSvg(size, initials)
|
renderSvg(size, initials)
|
||||||
)} */}
|
)}
|
||||||
{renderSvg(size, initials)}
|
|
||||||
<View style={styles.editButtonContainer}>
|
<View style={styles.editButtonContainer}>
|
||||||
<FontAwesomeIcon
|
<FontAwesomeIcon
|
||||||
icon="camera"
|
icon="camera"
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import React, {useCallback} from 'react'
|
import React, {useCallback, useState} from 'react'
|
||||||
import {StyleSheet, View, TouchableOpacity, Alert, Image, Dimensions} from 'react-native'
|
import {StyleSheet, View, TouchableOpacity, Alert, Image} from 'react-native'
|
||||||
import Svg, {Rect, Defs, LinearGradient, Stop} from 'react-native-svg'
|
import Svg, {Rect, Defs, LinearGradient, Stop} from 'react-native-svg'
|
||||||
import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
|
import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
|
||||||
import {getGradient} from '../../lib/asset-gen'
|
import {getGradient} from '../../lib/asset-gen'
|
||||||
@@ -19,6 +19,8 @@ export function UserBanner({
|
|||||||
}) {
|
}) {
|
||||||
const gradient = getGradient(handle)
|
const gradient = getGradient(handle)
|
||||||
|
|
||||||
|
const [uploadedImage, setUploadedImage] = useState<string | null>(null)
|
||||||
|
|
||||||
const handleEditBanner = useCallback(() => {
|
const handleEditBanner = useCallback(() => {
|
||||||
Alert.alert('Select upload method', '', [
|
Alert.alert('Select upload method', '', [
|
||||||
{
|
{
|
||||||
@@ -30,7 +32,7 @@ export function UserBanner({
|
|||||||
width: 1500,
|
width: 1500,
|
||||||
height: 500,
|
height: 500,
|
||||||
}).then(item => {
|
}).then(item => {
|
||||||
// setLocalBannerPicture(item.path)
|
setUploadedImage(item.path)
|
||||||
console.log(item)
|
console.log(item)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@@ -47,7 +49,7 @@ export function UserBanner({
|
|||||||
width: 1500,
|
width: 1500,
|
||||||
height: 500,
|
height: 500,
|
||||||
}).then(croppedItem => {
|
}).then(croppedItem => {
|
||||||
// setLocalBannerPicture(croppedItem.path)
|
setUploadedImage(croppedItem.path)
|
||||||
console.log(croppedItem)
|
console.log(croppedItem)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@@ -75,12 +77,16 @@ export function UserBanner({
|
|||||||
|
|
||||||
return isEditable ? (
|
return isEditable ? (
|
||||||
<TouchableOpacity onPress={handleEditBanner}>
|
<TouchableOpacity onPress={handleEditBanner}>
|
||||||
{/* {localBannerPicture != null ? (
|
{/* Added a react state temporary photo white the protocol does not support imagery */}
|
||||||
<Image style={styles.bannerImage} source={{uri: localBannerPicture}} />
|
{uploadedImage != null ? (
|
||||||
|
<Image
|
||||||
|
style={styles.bannerImage}
|
||||||
|
resizeMode="stretch"
|
||||||
|
source={{uri: uploadedImage}}
|
||||||
|
/>
|
||||||
) : (
|
) : (
|
||||||
renderSvg()
|
renderSvg()
|
||||||
)} */}
|
)}
|
||||||
{renderSvg()}
|
|
||||||
<View style={styles.editButtonContainer}>
|
<View style={styles.editButtonContainer}>
|
||||||
<FontAwesomeIcon
|
<FontAwesomeIcon
|
||||||
icon="camera"
|
icon="camera"
|
||||||
@@ -110,6 +116,5 @@ const styles = StyleSheet.create({
|
|||||||
bannerImage: {
|
bannerImage: {
|
||||||
width: '100%',
|
width: '100%',
|
||||||
height: 120,
|
height: 120,
|
||||||
resizeMode: 'contain',
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user