From 8caaf184b97dbef5e351d761abd9d5fb070a7e5e Mon Sep 17 00:00:00 2001 From: Micah Lindley Date: Wed, 20 Mar 2024 13:04:49 -0500 Subject: [PATCH] Use dedicated user avatar component --- .github/workflows/android-debug.yml | 5 ++- src/components/ActivityItem.jsx | 20 +-------- src/components/Comment.jsx | 29 ++++--------- src/components/GroupAvatar.jsx | 18 +++++---- src/components/Post.jsx | 34 ++++------------ src/components/UserAvatar.jsx | 63 +++++++++++++++++++++++++++++ 6 files changed, 92 insertions(+), 77 deletions(-) create mode 100644 src/components/UserAvatar.jsx diff --git a/.github/workflows/android-debug.yml b/.github/workflows/android-debug.yml index af3d807..f0c66bd 100644 --- a/.github/workflows/android-debug.yml +++ b/.github/workflows/android-debug.yml @@ -50,13 +50,14 @@ jobs: echo "COMMIT_SHORT_SHA=$calculatedSha" >> $GITHUB_ENV - name: Rename APK - run: mv android/app/build/outputs/apk/release/app-release.apk offsides-nightly-${{ env.COMMIT_SHORT_SHA }}.apk + run: mv android/app/build/outputs/apk/release/app-release.apk android/app/build/outputs/apk/release/offsides-nightly-${{ env.COMMIT_SHORT_SHA }}.apk - name: Create prerelease uses: ncipollo/release-action@v1.14.0 with: name: ${{ env.COMMIT_SHORT_SHA }} [NIGHTLY] - artifacts: offsides-${{ env.COMMIT_SHORT_SHA }}-nightly.apk + artifacts: android/app/build/outputs/apk/release/offsides-nightly-${{ env.COMMIT_SHORT_SHA }}.apk + artifactContentType: application/vnd.android.package-archive body: This is a release created automatically from commit ${{ github.sha }}. It has not been tested - do not use if you are not prepared for bugs and glitches. Instead, try the [latest versioned release](https://github.com/micahlt/offsides/releases/latest). prerelease: true allowUpdates: true diff --git a/src/components/ActivityItem.jsx b/src/components/ActivityItem.jsx index 5eb68e9..b5521e6 100644 --- a/src/components/ActivityItem.jsx +++ b/src/components/ActivityItem.jsx @@ -11,6 +11,7 @@ import { } from 'react-native-paper'; import timesago from 'timesago'; import { AppContext } from '../App'; +import UserAvatar from './UserAvatar'; function ActivityItem({ activity }) { const { @@ -112,24 +113,7 @@ function ActivityItem({ activity }) { {timesago(activity.timestamp)} - {activity.conversation_icon ? ( - - ) : ( - - )} + diff --git a/src/components/Comment.jsx b/src/components/Comment.jsx index 6f1d583..b4429df 100644 --- a/src/components/Comment.jsx +++ b/src/components/Comment.jsx @@ -12,6 +12,7 @@ import { import timesago from 'timesago'; import { AppContext } from '../App'; import AutoImage from './AutoImage'; +import UserAvatar from './UserAvatar.jsx'; const BORDER_RADIUS = 10; @@ -69,28 +70,12 @@ function Comment({ comment, nav }) { mode="contained"> - {comment?.identity?.conversation_icon ? ( - - ) : ( - - )} + {comment.reply_comment_alias && ( {}, - onLongPress = () => {}, + onPress, + onLongPress, borderRadius = 12, style = {}, + size = 45, + clickableByDefault = true, }) { const { colors } = useTheme(); const ComponentOption = React.useCallback(() => { @@ -17,7 +19,7 @@ function GroupAvatar({ return ( diff --git a/src/components/Post.jsx b/src/components/Post.jsx index c2ebddb..d7d4988 100644 --- a/src/components/Post.jsx +++ b/src/components/Post.jsx @@ -5,8 +5,8 @@ import timesago from 'timesago'; import { AppContext } from '../App'; import AutoImage from './AutoImage'; import GroupAvatar from './GroupAvatar'; -import Video from 'react-native-video'; import AutoVideo from './AutoVideo'; +import UserAvatar from './UserAvatar'; const BORDER_RADIUS = 12; @@ -65,32 +65,12 @@ function Post({ post, nav, commentView = false, repost = false }) { style={repost ? { marginBottom: 10 } : {}}> - {post?.identity?.conversation_icon ? ( - - ) : ( - - nav.navigate('Home', { - groupID: post.group.id, - groupColor: post.group.color, - groupImage: post.group.icon_url, - groupName: post.group.name, - }) - } - /> - )} + + {conversationIcon?.emoji ? ( + <> + + + nav.navigate('Home', { + groupID: group.id, + groupColor: group.color, + groupImage: group.icon_url, + groupName: group.name, + }) + } + style={{ + position: 'absolute', + bottom: 5 - size / 5, + left: size - 5 - size / 5, + overflow: 'hidden', + }} + size={20} + borderRadius={borderRadius / 2} + /> + + ) : ( + + nav.navigate('Home', { + groupID: group.id, + groupColor: group.color, + groupImage: group.icon_url, + groupName: group.name, + }) + } + /> + )} + , + [], + ); +} + +export default UserAvatar;