InterfaceWithAuthenticationRequiredOptions

Options for the withAuthenticationRequired Higher Order Component

interface WithAuthenticationRequiredOptions {
    returnTo?: string | (() => string);
    onRedirecting?: (() => Element);
    onBeforeAuthentication?: (() => Promise<void>);
    loginOptions?: RedirectLoginOptions<any>;
    context?: Context<FortContextProps>;
}

Properties

returnTo?: string | (() => string)
withAuthenticationRequired(Profile, {
returnTo: '/profile'
})

or

withAuthenticationRequired(Profile, {
returnTo: () => window.location.hash.substr(1)
})

Add a path for the onRedirectCallback handler to return the user to after login.

onRedirecting?: (() => Element)
withAuthenticationRequired(Profile, {
onRedirecting: () => <div>Redirecting you to the login...</div>
})

Render a message to show that the user is being redirected to the login.

onBeforeAuthentication?: (() => Promise<void>)
withAuthenticationRequired(Profile, {
onBeforeAuthentication: () => { analyticsLibrary.track('login_triggered'); }
})

Allows executing logic before the user is redirected to the login page.

loginOptions?: RedirectLoginOptions<any>
withAuthenticationRequired(Profile, {
loginOptions: {
appState: {
customProp: 'foo'
}
}
})

Pass additional login options, like extra appState to the login page. This will be merged with the returnTo option used by the onRedirectCallback handler.

context?: Context<FortContextProps>

The context to be used when calling useFort, this should only be provided if you are using multiple FortProviders within your application and you wish to tie a specific component to a FortProvider other than the FortProvider associated with the default FortContext.