diff --git a/packages/auth/src/authFactory.ts b/packages/auth/src/authFactory.ts index 953c35b90e2c..7c4d76b68000 100644 --- a/packages/auth/src/authFactory.ts +++ b/packages/auth/src/authFactory.ts @@ -38,5 +38,6 @@ export function createAuthentication< const useAuth = createUseAuth(AuthContext) const AuthProvider = createAuthProvider(AuthContext, authImplementation) + // TODO: Do we really need to return AuthContext here? return { AuthContext, AuthProvider, useAuth } } diff --git a/packages/auth/src/authImplementations/netlify.ts b/packages/auth/src/authImplementations/netlify.ts index 77af4f3fe67e..050977aee6a9 100644 --- a/packages/auth/src/authImplementations/netlify.ts +++ b/packages/auth/src/authImplementations/netlify.ts @@ -1,5 +1,7 @@ import type * as NetlifyIdentityNS from 'netlify-identity-widget' +import { isBrowser } from '@redwoodjs/prerender/browserUtils' + import { createAuthentication } from 'src/authFactory' // TODO: // In the future, when this is a separate package, we can import the full thing @@ -10,15 +12,16 @@ import { createAuthentication } from 'src/authFactory' import { AuthImplementation } from './AuthImplementation' type NetlifyIdentity = typeof NetlifyIdentityNS -type User = NetlifyIdentityNS.User export function createNetlifyAuth(netlifyIdentity: NetlifyIdentity) { const authImplementation = createNetlifyAuthImplementation(netlifyIdentity) + isBrowser && netlifyIdentity.init() + return createAuthentication< - User, - User | null, - User | null, + NetlifyIdentityNS.User, + NetlifyIdentityNS.User | null, + NetlifyIdentityNS.User | null, void, null, never, @@ -31,9 +34,9 @@ export function createNetlifyAuth(netlifyIdentity: NetlifyIdentity) { function createNetlifyAuthImplementation( netlifyIdentity: NetlifyIdentity ): AuthImplementation< - User, - User | null, - User | null, + NetlifyIdentityNS.User, + NetlifyIdentityNS.User | null, + NetlifyIdentityNS.User | null, void, null, never,