@@ -5,7 +5,11 @@ import type { Auth, BetterAuthOptions } from 'better-auth';
55import { organization } from 'better-auth/plugins/organization' ;
66import { twoFactor } from 'better-auth/plugins/two-factor' ;
77import { magicLink } from 'better-auth/plugins/magic-link' ;
8- import type { AuthConfig } from '@objectstack/spec/system' ;
8+ import type {
9+ AuthConfig ,
10+ EmailAndPasswordConfig ,
11+ AuthPluginConfig ,
12+ } from '@objectstack/spec/system' ;
913import type { IDataEngine } from '@objectstack/core' ;
1014import { createObjectQLAdapterFactory } from './objectql-adapter.js' ;
1115import {
@@ -374,20 +378,20 @@ export class AuthManager {
374378 }
375379
376380 // Extract email/password config (safe fields only)
377- const emailPasswordConfig = this . config . emailAndPassword || { } ;
381+ const emailPasswordConfig : Partial < EmailAndPasswordConfig > = this . config . emailAndPassword ?? { } ;
378382 const emailPassword = {
379383 enabled : emailPasswordConfig . enabled !== false , // Default to true
380- disableSignUp : emailPasswordConfig . disableSignUp ,
381- requireEmailVerification : emailPasswordConfig . requireEmailVerification ,
384+ disableSignUp : emailPasswordConfig . disableSignUp ?? false ,
385+ requireEmailVerification : emailPasswordConfig . requireEmailVerification ?? false ,
382386 } ;
383387
384388 // Extract enabled features
385- const pluginConfig = this . config . plugins || { } ;
389+ const pluginConfig : Partial < AuthPluginConfig > = this . config . plugins ?? { } ;
386390 const features = {
387- twoFactor : pluginConfig . twoFactor || false ,
388- passkeys : pluginConfig . passkeys || false ,
389- magicLink : pluginConfig . magicLink || false ,
390- organization : pluginConfig . organization || false ,
391+ twoFactor : pluginConfig . twoFactor ?? false ,
392+ passkeys : pluginConfig . passkeys ?? false ,
393+ magicLink : pluginConfig . magicLink ?? false ,
394+ organization : pluginConfig . organization ?? false ,
391395 } ;
392396
393397 return {
0 commit comments