[Auth rework] Add a header to login flow (#9368)

This commit is contained in:
Samuel Newman
2026-02-13 20:15:36 +00:00
committed by GitHub
parent 9cdfb40ce7
commit 2e34f965fc
14 changed files with 336 additions and 167 deletions
+23 -4
View File
@@ -1,10 +1,14 @@
import React from 'react'
import {useCallback, useEffect, useState} from 'react'
import {View} from 'react-native'
import {useSafeAreaInsets} from 'react-native-safe-area-context'
import {msg} from '@lingui/macro'
import {useLingui} from '@lingui/react'
import {useQueryClient} from '@tanstack/react-query'
import {PressableScale} from '#/lib/custom-animations/PressableScale'
import {STALE} from '#/state/queries'
import {profilesQueryKey} from '#/state/queries/profile'
import {useAgent, useSession} from '#/state/session'
import {
useLoggedOutView,
useLoggedOutViewControls,
@@ -35,7 +39,7 @@ export function LoggedOut({onDismiss}: {onDismiss?: () => void}) {
const insets = useSafeAreaInsets()
const setMinimalShellMode = useSetMinimalShellMode()
const {requestedAccountSwitchTo} = useLoggedOutView()
const [screenState, setScreenState] = React.useState<ScreenState>(() => {
const [screenState, setScreenState] = useState<ScreenState>(() => {
if (requestedAccountSwitchTo === 'new') {
return ScreenState.S_CreateAccount
} else if (requestedAccountSwitchTo === 'starterpack') {
@@ -48,11 +52,26 @@ export function LoggedOut({onDismiss}: {onDismiss?: () => void}) {
})
const {clearRequestedAccount} = useLoggedOutViewControls()
React.useEffect(() => {
const queryClient = useQueryClient()
const {accounts} = useSession()
const agent = useAgent()
useEffect(() => {
const actors = accounts.map(acc => acc.did)
void queryClient.prefetchQuery({
queryKey: profilesQueryKey(actors),
staleTime: STALE.MINUTES.FIVE,
queryFn: async () => {
const res = await agent.getProfiles({actors})
return res.data
},
})
}, [accounts, agent, queryClient])
useEffect(() => {
setMinimalShellMode(true)
}, [setMinimalShellMode])
const onPressDismiss = React.useCallback(() => {
const onPressDismiss = useCallback(() => {
if (onDismiss) {
onDismiss()
}