diff options
Diffstat (limited to 'src/view/com/feed')
-rw-r--r-- | src/view/com/feed/Feed.tsx | 15 | ||||
-rw-r--r-- | src/view/com/feed/FeedItem.tsx | 26 |
2 files changed, 13 insertions, 28 deletions
diff --git a/src/view/com/feed/Feed.tsx b/src/view/com/feed/Feed.tsx index 6787b51ae..7c7fea58a 100644 --- a/src/view/com/feed/Feed.tsx +++ b/src/view/com/feed/Feed.tsx @@ -1,18 +1,11 @@ import React, {useRef} from 'react' import {observer} from 'mobx-react-lite' import {Text, View, FlatList} from 'react-native' -import {OnNavigateContent} from '../../routes/types' import {FeedViewModel, FeedViewItemModel} from '../../../state/models/feed-view' import {FeedItem} from './FeedItem' import {ShareModal} from '../modals/SharePost' -export const Feed = observer(function Feed({ - feed, - onNavigateContent, -}: { - feed: FeedViewModel - onNavigateContent: OnNavigateContent -}) { +export const Feed = observer(function Feed({feed}: {feed: FeedViewModel}) { const shareSheetRef = useRef<{open: (_uri: string) => void}>() const onPressShare = (uri: string) => { @@ -23,11 +16,7 @@ export const Feed = observer(function Feed({ // renderItem function renders components that follow React performance best practices // like PureComponent, shouldComponentUpdate, etc const renderItem = ({item}: {item: FeedViewItemModel}) => ( - <FeedItem - item={item} - onNavigateContent={onNavigateContent} - onPressShare={onPressShare} - /> + <FeedItem item={item} onPressShare={onPressShare} /> ) const onRefresh = () => { feed.refresh().catch(err => console.error('Failed to refresh', err)) diff --git a/src/view/com/feed/FeedItem.tsx b/src/view/com/feed/FeedItem.tsx index e79c15326..a63fb7a2c 100644 --- a/src/view/com/feed/FeedItem.tsx +++ b/src/view/com/feed/FeedItem.tsx @@ -3,39 +3,31 @@ import {observer} from 'mobx-react-lite' import {Image, StyleSheet, Text, TouchableOpacity, View} from 'react-native' import {bsky, AdxUri} from '@adxp/mock-api' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import {OnNavigateContent} from '../../routes/types' import {FeedViewItemModel} from '../../../state/models/feed-view' import {s} from '../../lib/styles' import {ago} from '../../lib/strings' import {AVIS} from '../../lib/assets' +import {useStores} from '../../../state' export const FeedItem = observer(function FeedItem({ item, - onNavigateContent, onPressShare, }: { item: FeedViewItemModel - onNavigateContent: OnNavigateContent onPressShare: (_uri: string) => void }) { + const store = useStores() const record = item.record as unknown as bsky.Post.Record const onPressOuter = () => { const urip = new AdxUri(item.uri) - onNavigateContent('PostThread', { - name: item.author.name, - recordKey: urip.recordKey, - }) + store.nav.navigate(`/profile/${item.author.name}/post/${urip.recordKey}`) } const onPressAuthor = () => { - onNavigateContent('Profile', { - name: item.author.name, - }) + store.nav.navigate(`/profile/${item.author.name}`) } const onPressReply = () => { - onNavigateContent('Composer', { - replyTo: item.uri, - }) + store.nav.navigate('/composer') } const onPressToggleRepost = () => { item @@ -137,8 +129,11 @@ export const FeedItem = observer(function FeedItem({ const styles = StyleSheet.create({ outer: { - borderTopWidth: 1, - borderTopColor: '#e8e8e8', + // borderWidth: 1, + // borderColor: '#e8e8e8', + borderRadius: 10, + margin: 2, + marginBottom: 0, backgroundColor: '#fff', padding: 10, }, @@ -175,6 +170,7 @@ const styles = StyleSheet.create({ }, postText: { paddingBottom: 5, + fontFamily: 'Helvetica Neue', }, ctrls: { flexDirection: 'row', |