|
|
|
|
@ -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, |
|
|
|
|
|