Remove unnecessary new user creation promise machinery
This commit is contained in:
parent
b130e0e642
commit
344946f84f
|
@ -16,9 +16,6 @@ import { useStateCheckEquality } from 'web/hooks/use-state-check-equality'
|
||||||
|
|
||||||
const CACHED_USER_KEY = 'CACHED_USER_KEY'
|
const CACHED_USER_KEY = 'CACHED_USER_KEY'
|
||||||
|
|
||||||
// used to avoid weird race condition
|
|
||||||
let createUserPromise: Promise<User> | undefined = undefined
|
|
||||||
|
|
||||||
export const AuthContext = createContext<User | null>(null)
|
export const AuthContext = createContext<User | null>(null)
|
||||||
|
|
||||||
export function AuthProvider({ children }: any) {
|
export function AuthProvider({ children }: any) {
|
||||||
|
@ -32,17 +29,12 @@ export function AuthProvider({ children }: any) {
|
||||||
if (fbUser) {
|
if (fbUser) {
|
||||||
let user: User | null = await getUser(fbUser.uid)
|
let user: User | null = await getUser(fbUser.uid)
|
||||||
if (!user) {
|
if (!user) {
|
||||||
if (createUserPromise == null) {
|
let deviceToken = localStorage.getItem('device-token')
|
||||||
let deviceToken = localStorage.getItem('device-token')
|
if (!deviceToken) {
|
||||||
if (!deviceToken) {
|
deviceToken = randomString()
|
||||||
deviceToken = randomString()
|
localStorage.setItem('device-token', deviceToken)
|
||||||
localStorage.setItem('device-token', deviceToken)
|
|
||||||
}
|
|
||||||
createUserPromise = createUser({ deviceToken }).then(
|
|
||||||
(r) => r as User
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
user = await createUserPromise
|
user = await createUser({ deviceToken }).then((r) => r as User)
|
||||||
}
|
}
|
||||||
setCurrentUser(user)
|
setCurrentUser(user)
|
||||||
// Persist to local storage, to reduce login blink next time.
|
// Persist to local storage, to reduce login blink next time.
|
||||||
|
@ -53,7 +45,6 @@ export function AuthProvider({ children }: any) {
|
||||||
} else {
|
} else {
|
||||||
// User logged out; reset to null
|
// User logged out; reset to null
|
||||||
setCurrentUser(null)
|
setCurrentUser(null)
|
||||||
createUserPromise = undefined
|
|
||||||
localStorage.removeItem(CACHED_USER_KEY)
|
localStorage.removeItem(CACHED_USER_KEY)
|
||||||
deleteAuthCookies()
|
deleteAuthCookies()
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user