Add comments

This commit is contained in:
Eric Bailey
2025-08-07 11:23:42 -05:00
parent 99c6275ad6
commit 27c2f3650b
3 changed files with 22 additions and 1 deletions
@@ -20,6 +20,11 @@ const Context = createContext<{
completed: true,
complete: () => {},
},
/**
* Although our data will be ready to go when the app shell mounts, we don't
* want to show the overlay until we actually render it, which happens after
* sigin/signup/onboarding in `createNativeStackNavigatorWithAuth`.
*/
setIsReadyToShowOverlay: () => {},
})
@@ -16,6 +16,9 @@ export function PolicyUpdateOverlay() {
const {state, setIsReadyToShowOverlay} = usePolicyUpdateContext()
useEffect(() => {
/**
* Tell the context that we are ready to show the overlay.
*/
setIsReadyToShowOverlay()
}, [setIsReadyToShowOverlay])
@@ -11,13 +11,26 @@ export type PolicyUpdateState = {
complete: () => void
}
export function usePolicyUpdateState({enabled}: {enabled: boolean}) {
export function usePolicyUpdateState({
enabled,
}: {
/**
* Used to skip the policy update overlay until we're actually ready to
* show it.
*/
enabled: boolean
}) {
const nux = useNux(ACTIVE_UPDATE_ID)
const {mutate: save, variables} = useSaveNux()
const deviceStorage = useStorage(device, [ACTIVE_UPDATE_ID])
const debugOverride =
!!useStorage(device, ['policyUpdateDebugOverride'])[0] && IS_DEV
return useMemo(() => {
/**
* If not enabled, then just return a completed state so the app functions
* as normal.
*/
if (!enabled) {
return {
completed: true,