diff options
Diffstat (limited to 'src/view')
-rw-r--r-- | src/view/com/modals/ComposePost.tsx | 4 | ||||
-rw-r--r-- | src/view/com/modals/EditProfile.tsx | 2 | ||||
-rw-r--r-- | src/view/com/post-thread/PostThreadItem.tsx | 2 | ||||
-rw-r--r-- | src/view/com/post/Post.tsx | 2 | ||||
-rw-r--r-- | src/view/com/posts/FeedItem.tsx | 2 | ||||
-rw-r--r-- | src/view/com/util/UserInfoText.tsx | 10 | ||||
-rw-r--r-- | src/view/lib/strings.ts | 2 | ||||
-rw-r--r-- | src/view/routes.ts | 2 | ||||
-rw-r--r-- | src/view/screens/PostLikedBy.tsx | 2 | ||||
-rw-r--r-- | src/view/screens/PostRepostedBy.tsx | 2 | ||||
-rw-r--r-- | src/view/screens/PostThread.tsx | 2 | ||||
-rw-r--r-- | src/view/shell/mobile/MainMenu.tsx | 22 |
12 files changed, 38 insertions, 16 deletions
diff --git a/src/view/com/modals/ComposePost.tsx b/src/view/com/modals/ComposePost.tsx index cecc478f7..6e634ed65 100644 --- a/src/view/com/modals/ComposePost.tsx +++ b/src/view/com/modals/ComposePost.tsx @@ -3,7 +3,7 @@ import {StyleSheet, Text, TouchableOpacity, View} from 'react-native' import {BottomSheetTextInput} from '@gorhom/bottom-sheet' import LinearGradient from 'react-native-linear-gradient' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import * as GetUserFollows from '../../../third-party/api/src/types/todo/social/getUserFollows' +import * as GetUserFollows from '../../../third-party/api/src/types/app/bsky/getUserFollows' import {Autocomplete} from './composer/Autocomplete' import Toast from '../util/Toast' import ProgressCircle from '../util/ProgressCircle' @@ -32,7 +32,7 @@ export function Component({ const [autocompleteOptions, setAutocompleteOptions] = useState<string[]>([]) useEffect(() => { - store.api.todo.social + store.api.app.bsky .getUserFollows({ user: store.me.did || '', }) diff --git a/src/view/com/modals/EditProfile.tsx b/src/view/com/modals/EditProfile.tsx index 740d81895..13a8a304d 100644 --- a/src/view/com/modals/EditProfile.tsx +++ b/src/view/com/modals/EditProfile.tsx @@ -6,7 +6,7 @@ import {ErrorMessage} from '../util/ErrorMessage' import {useStores} from '../../../state' import {ProfileViewModel} from '../../../state/models/profile-view' import {s, colors, gradients} from '../../lib/styles' -import * as Profile from '../../../third-party/api/src/types/todo/social/profile' +import * as Profile from '../../../third-party/api/src/types/app/bsky/profile' export const snapPoints = ['80%'] diff --git a/src/view/com/post-thread/PostThreadItem.tsx b/src/view/com/post-thread/PostThreadItem.tsx index ef1324bfb..6f84aff10 100644 --- a/src/view/com/post-thread/PostThreadItem.tsx +++ b/src/view/com/post-thread/PostThreadItem.tsx @@ -3,7 +3,7 @@ import {observer} from 'mobx-react-lite' import {Image, StyleSheet, Text, TouchableOpacity, View} from 'react-native' import Svg, {Line} from 'react-native-svg' import {AdxUri} from '../../../third-party/uri' -import * as PostType from '../../../third-party/api/src/types/todo/social/post' +import * as PostType from '../../../third-party/api/src/types/app/bsky/post' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {PostThreadViewPostModel} from '../../../state/models/post-thread-view' import {ComposePostModel} from '../../../state/models/shell' diff --git a/src/view/com/post/Post.tsx b/src/view/com/post/Post.tsx index 752a054b4..04cc5cdd6 100644 --- a/src/view/com/post/Post.tsx +++ b/src/view/com/post/Post.tsx @@ -1,7 +1,7 @@ import React, {useState, useEffect, useMemo} from 'react' import {observer} from 'mobx-react-lite' import {AdxUri} from '../../../third-party/uri' -import * as PostType from '../../../third-party/api/src/types/todo/social/post' +import * as PostType from '../../../third-party/api/src/types/app/bsky/post' import { ActivityIndicator, Image, diff --git a/src/view/com/posts/FeedItem.tsx b/src/view/com/posts/FeedItem.tsx index b29470d2c..9bb94ad05 100644 --- a/src/view/com/posts/FeedItem.tsx +++ b/src/view/com/posts/FeedItem.tsx @@ -2,7 +2,7 @@ import React, {useMemo} from 'react' import {observer} from 'mobx-react-lite' import {Image, StyleSheet, Text, TouchableOpacity, View} from 'react-native' import {AdxUri} from '../../../third-party/uri' -import * as PostType from '../../../third-party/api/src/types/todo/social/post' +import * as PostType from '../../../third-party/api/src/types/app/bsky/post' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {FeedViewItemModel} from '../../../state/models/feed-view' import {ComposePostModel, SharePostModel} from '../../../state/models/shell' diff --git a/src/view/com/util/UserInfoText.tsx b/src/view/com/util/UserInfoText.tsx index 39aef3306..54cb93f71 100644 --- a/src/view/com/util/UserInfoText.tsx +++ b/src/view/com/util/UserInfoText.tsx @@ -1,5 +1,5 @@ import React, {useState, useEffect} from 'react' -import * as TodoSocialGetProfile from '../../../third-party/api/src/types/todo/social/getProfile' +import * as AppBskyGetProfile from '../../../third-party/api/src/types/app/bsky/getProfile' import {StyleProp, Text, TextStyle} from 'react-native' import {useStores} from '../../../state' @@ -12,7 +12,7 @@ export function UserInfoText({ style, }: { did: string - attr?: keyof TodoSocialGetProfile.OutputSchema + attr?: keyof AppBskyGetProfile.OutputSchema loading?: string failed?: string prefix?: string @@ -24,13 +24,13 @@ export function UserInfoText({ const store = useStores() const [profile, setProfile] = useState< - undefined | TodoSocialGetProfile.OutputSchema + undefined | AppBskyGetProfile.OutputSchema >(undefined) const [didFail, setFailed] = useState<boolean>(false) useEffect(() => { // TODO use caching to reduce loads - store.api.todo.social.getProfile({user: did}).then( + store.api.app.bsky.getProfile({user: did}).then( v => { setProfile(v.data) }, @@ -38,7 +38,7 @@ export function UserInfoText({ setFailed(true) }, ) - }, [did, store.api.todo.social]) + }, [did, store.api.app.bsky]) return ( <Text style={style}> diff --git a/src/view/lib/strings.ts b/src/view/lib/strings.ts index eecec890c..89764546b 100644 --- a/src/view/lib/strings.ts +++ b/src/view/lib/strings.ts @@ -1,5 +1,5 @@ import {AdxUri} from '../../third-party/uri' -import {Entity as Entities} from '../../third-party/api/src/types/todo/social/post' +import {Entity as Entities} from '../../third-party/api/src/types/app/bsky/post' type Entity = Entities[0] diff --git a/src/view/routes.ts b/src/view/routes.ts index 1054ff8d2..e7d6de7f3 100644 --- a/src/view/routes.ts +++ b/src/view/routes.ts @@ -16,7 +16,7 @@ import {Settings} from './screens/Settings' export type ScreenParams = { params: Record<string, any> visible: boolean - scrollElRef: MutableRefObject<FlatList<any> | undefined> + scrollElRef?: MutableRefObject<FlatList<any> | undefined> } export type Route = [React.FC<ScreenParams>, IconProp, RegExp] export type MatchResult = { diff --git a/src/view/screens/PostLikedBy.tsx b/src/view/screens/PostLikedBy.tsx index 003859b85..8ec0ca5a5 100644 --- a/src/view/screens/PostLikedBy.tsx +++ b/src/view/screens/PostLikedBy.tsx @@ -7,7 +7,7 @@ import {useStores} from '../../state' export const PostLikedBy = ({visible, params}: ScreenParams) => { const store = useStores() const {name, recordKey} = params - const uri = makeRecordUri(name, 'todo.social.post', recordKey) + const uri = makeRecordUri(name, 'app.bsky.post', recordKey) useEffect(() => { if (visible) { diff --git a/src/view/screens/PostRepostedBy.tsx b/src/view/screens/PostRepostedBy.tsx index e8f0f772f..6cc84809d 100644 --- a/src/view/screens/PostRepostedBy.tsx +++ b/src/view/screens/PostRepostedBy.tsx @@ -7,7 +7,7 @@ import {useStores} from '../../state' export const PostRepostedBy = ({visible, params}: ScreenParams) => { const store = useStores() const {name, recordKey} = params - const uri = makeRecordUri(name, 'todo.social.post', recordKey) + const uri = makeRecordUri(name, 'app.bsky.post', recordKey) useEffect(() => { if (visible) { diff --git a/src/view/screens/PostThread.tsx b/src/view/screens/PostThread.tsx index 819bf4878..2c66e5e38 100644 --- a/src/view/screens/PostThread.tsx +++ b/src/view/screens/PostThread.tsx @@ -7,7 +7,7 @@ import {useStores} from '../../state' export const PostThread = ({visible, params}: ScreenParams) => { const store = useStores() const {name, recordKey} = params - const uri = makeRecordUri(name, 'todo.social.post', recordKey) + const uri = makeRecordUri(name, 'app.bsky.post', recordKey) useEffect(() => { if (visible) { diff --git a/src/view/shell/mobile/MainMenu.tsx b/src/view/shell/mobile/MainMenu.tsx index 60f7d3ce3..18b68d5af 100644 --- a/src/view/shell/mobile/MainMenu.tsx +++ b/src/view/shell/mobile/MainMenu.tsx @@ -56,10 +56,12 @@ export const MainMenu = observer( icon, label, url, + count, }: { icon: IconProp label: string url: string + count?: number }) => ( <TouchableOpacity style={[styles.menuItem, styles.menuItemMargin]} @@ -75,6 +77,11 @@ export const MainMenu = observer( /> )} </View> + {count ? ( + <View style={styles.menuItemCount}> + <Text style={styles.menuItemCountLabel}>{count}</Text> + </View> + ) : undefined} <Text style={styles.menuItemLabel} numberOfLines={1}> {label} </Text> @@ -123,6 +130,7 @@ export const MainMenu = observer( icon={['far', 'bell']} label="Notifications" url="/notifications" + count={store.me.notificationCount} /> </Animated.View> </View> @@ -212,4 +220,18 @@ const styles = StyleSheet.create({ menuItemLabel: { fontSize: 13, }, + menuItemCount: { + position: 'absolute', + left: 48, + top: 10, + backgroundColor: colors.red3, + paddingHorizontal: 4, + paddingBottom: 1, + borderRadius: 6, + }, + menuItemCountLabel: { + fontSize: 12, + fontWeight: 'bold', + color: colors.white, + }, }) |