client/web: refresh auth after syno login

Makes sure we refresh auth state after synology auth has run.

Updates #10261

Signed-off-by: Sonia Appasamy <sonia@tailscale.com>
This commit is contained in:
Sonia Appasamy 2023-12-12 13:35:49 -05:00 committed by Sonia Appasamy
parent 1b7d289fad
commit 343f4e4f26

View File

@ -25,6 +25,7 @@ export type AuthResponse = {
export default function useAuth() {
const [data, setData] = useState<AuthResponse>()
const [loading, setLoading] = useState<boolean>(true)
const [ranSynoAuth, setRanSynoAuth] = useState<boolean>(false)
const loadAuth = useCallback(() => {
setLoading(true)
@ -37,6 +38,7 @@ export default function useAuth() {
.then((r) => r.json())
.then((a) => {
setSynoToken(a.SynoToken)
setRanSynoAuth(true)
setLoading(false)
})
break
@ -79,6 +81,10 @@ export default function useAuth() {
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [])
useEffect(() => {
loadAuth() // Refresh auth state after syno auth runs
}, [loadAuth, ranSynoAuth])
return {
data,
loading,