diff --git a/src/ageAssurance/index.tsx b/src/ageAssurance/index.tsx index 9a0a9c9d5..7c25a2291 100644 --- a/src/ageAssurance/index.tsx +++ b/src/ageAssurance/index.tsx @@ -1,20 +1,13 @@ -import {createContext, useCallback, useContext, useEffect, useMemo} from 'react' +import { createContext, useContext, useMemo } from 'react' -import {useGetAndRegisterPushToken} from '#/lib/notifications/notifications' -import {Provider as RedirectOverlayProvider} from '#/ageAssurance/components/RedirectOverlay' -import {AgeAssuranceDataProvider} from '#/ageAssurance/data' -import {useAgeAssuranceDataContext} from '#/ageAssurance/data' -import {logger} from '#/ageAssurance/logger' -import { - useAgeAssuranceState, - useOnAgeAssuranceAccessUpdate, -} from '#/ageAssurance/state' +import { Provider as RedirectOverlayProvider } from '#/ageAssurance/components/RedirectOverlay' +import { AgeAssuranceDataProvider } from '#/ageAssurance/data' +import { logger } from '#/ageAssurance/logger' import { AgeAssuranceAccess, type AgeAssuranceState, AgeAssuranceStatus, } from '#/ageAssurance/types' -import {isUserUnderAdultAge} from '#/ageAssurance/util' export { prefetchConfig as prefetchAgeAssuranceConfig, @@ -23,7 +16,7 @@ export { usePatchOtherRequiredData as usePatchAgeAssuranceOtherRequiredData, usePatchServerState as usePatchAgeAssuranceServerState, } from '#/ageAssurance/data' -export {logger} from '#/ageAssurance/logger' +export { logger } from '#/ageAssurance/logger' const AgeAssuranceStateContext = createContext<{ Access: typeof AgeAssuranceAccess @@ -56,7 +49,7 @@ export function useAgeAssurance() { return useContext(AgeAssuranceStateContext) } -export function Provider({children}: {children: React.ReactNode}) { +export function Provider({ children }: { children: React.ReactNode }) { return ( @@ -66,44 +59,31 @@ export function Provider({children}: {children: React.ReactNode}) { ) } -function InnerProvider({children}: {children: React.ReactNode}) { - const state = useAgeAssuranceState() - const {data} = useAgeAssuranceDataContext() - const getAndRegisterPushToken = useGetAndRegisterPushToken() - - const handleAccessUpdate = useCallback( - (s: AgeAssuranceState) => { - getAndRegisterPushToken({ - isAgeRestricted: s.access !== AgeAssuranceAccess.Full, - }) - }, - [getAndRegisterPushToken], +function InnerProvider({ children }: { children: React.ReactNode }) { + // Completely ignore internal state and force Full access + const flags = useMemo( + () => ({ + adultContentDisabled: false, + chatDisabled: false, + }), + [], ) - useOnAgeAssuranceAccessUpdate(handleAccessUpdate) - useEffect(() => { - logger.debug(`useAgeAssuranceState`, {state}) - }, [state]) + const contextValue = useMemo(() => { + return { + Access: AgeAssuranceAccess, + Status: AgeAssuranceStatus, + state: { + lastInitiatedAt: undefined, + status: AgeAssuranceStatus.Unknown, + access: AgeAssuranceAccess.Full, + }, + flags, + } + }, [flags]) return ( - { - const chatDisabled = state.access !== AgeAssuranceAccess.Full - const isUnderage = data?.birthdate - ? isUserUnderAdultAge(data.birthdate) - : true - const adultContentDisabled = - state.access !== AgeAssuranceAccess.Full || isUnderage - return { - Access: AgeAssuranceAccess, - Status: AgeAssuranceStatus, - state, - flags: { - adultContentDisabled, - chatDisabled, - }, - } - }, [state, data])}> + {children} )