diff --git a/src/components/StarterPack/Wizard/WizardProfileCard.tsx b/src/components/StarterPack/Wizard/WizardProfileCard.tsx index 52e83b6b53..a78c12834e 100644 --- a/src/components/StarterPack/Wizard/WizardProfileCard.tsx +++ b/src/components/StarterPack/Wizard/WizardProfileCard.tsx @@ -4,6 +4,7 @@ import {AppBskyActorDefs} from '@atproto/api' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useSession} from 'state/session' import {UserAvatar} from 'view/com/util/UserAvatar' import {WizardAction, WizardState} from '#/screens/StarterPack/Wizard/State' import {atoms as a, useTheme} from '#/alf' @@ -21,6 +22,7 @@ export function WizardProfileCard({ }) { const {_} = useLingui() const t = useTheme() + const {currentAccount} = useSession() const includesProfile = state.profiles.some(p => p.did === profile.did) @@ -57,17 +59,19 @@ export function WizardProfileCard({ @{profile?.handle} - + {profile.did !== currentAccount?.did && ( + + )} ) } diff --git a/src/screens/StarterPack/Wizard/State.tsx b/src/screens/StarterPack/Wizard/State.tsx index 96ced694a2..5ce6c93ef9 100644 --- a/src/screens/StarterPack/Wizard/State.tsx +++ b/src/screens/StarterPack/Wizard/State.tsx @@ -117,10 +117,12 @@ function reducer(state: State, action: Action): State { export function Provider({ starterPack, listItems, + profile, children, }: { starterPack?: AppBskyGraphDefs.StarterPackView listItems?: AppBskyGraphDefs.ListItemView[] + profile: AppBskyActorDefs.ProfileView children: React.ReactNode }) { const createInitialState = (): State => { @@ -139,7 +141,7 @@ export function Provider({ return { canNext: false, currentStep: 'Details', - profiles: [], + profiles: [profile], feeds: [], processing: false, } diff --git a/src/screens/StarterPack/Wizard/index.tsx b/src/screens/StarterPack/Wizard/index.tsx index 264e819810..c5fc8dcc67 100644 --- a/src/screens/StarterPack/Wizard/index.tsx +++ b/src/screens/StarterPack/Wizard/index.tsx @@ -52,6 +52,7 @@ export function Wizard({ }: NativeStackScreenProps) { const params = route.params const {name, rkey} = params ?? {} + const {currentAccount} = useSession() const {_} = useLingui() @@ -76,6 +77,12 @@ export function Wizard({ } = useListMembersQuery(listUri, 51) // 51 because we also include the current user const listItems = profilesData?.pages.flatMap(p => p.items) + const { + data: profile, + isLoading: isLoadingProfile, + isError: isErrorProfile, + } = useProfileQuery({did: currentAccount?.did}) + if ( name && rkey && @@ -88,10 +95,18 @@ export function Wizard({ errorMessage={_(msg`Could not find that starter pack`)} /> ) + } else if (!profile) { + return ( + + ) } return ( - + - {items.slice(0, 5).map((p, index) => ( + {items.slice(0, 6).map((p, index) => ( ) : ( - {items.length === 1 ? ( + {state.currentStep === 'Profiles' && items.length === 1 ? ( + + It's just you right now! Add more people to your starter pack by + searching above. + + ) : items.length === 1 ? ( {getName(items[0])} is included in your starter pack