@lenne.tech/nest-server 11.15.2 → 11.15.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/dist/core/common/interfaces/server-options.interface.d.ts +5 -0
  2. package/dist/core/modules/better-auth/better-auth.config.d.ts +17 -1
  3. package/dist/core/modules/better-auth/better-auth.config.js +58 -1
  4. package/dist/core/modules/better-auth/better-auth.config.js.map +1 -1
  5. package/dist/core/modules/better-auth/core-better-auth-api.middleware.js +1 -0
  6. package/dist/core/modules/better-auth/core-better-auth-api.middleware.js.map +1 -1
  7. package/dist/core/modules/better-auth/core-better-auth.controller.js +1 -2
  8. package/dist/core/modules/better-auth/core-better-auth.controller.js.map +1 -1
  9. package/dist/core/modules/better-auth/core-better-auth.module.d.ts +2 -0
  10. package/dist/core/modules/better-auth/core-better-auth.module.js +29 -9
  11. package/dist/core/modules/better-auth/core-better-auth.module.js.map +1 -1
  12. package/dist/core/modules/better-auth/core-better-auth.service.d.ts +4 -1
  13. package/dist/core/modules/better-auth/core-better-auth.service.js +11 -3
  14. package/dist/core/modules/better-auth/core-better-auth.service.js.map +1 -1
  15. package/dist/tsconfig.build.tsbuildinfo +1 -1
  16. package/package.json +2 -2
  17. package/src/core/common/interfaces/server-options.interface.ts +121 -0
  18. package/src/core/modules/better-auth/README.md +79 -17
  19. package/src/core/modules/better-auth/better-auth.config.ts +134 -3
  20. package/src/core/modules/better-auth/core-better-auth-api.middleware.ts +1 -0
  21. package/src/core/modules/better-auth/core-better-auth.controller.ts +2 -6
  22. package/src/core/modules/better-auth/core-better-auth.module.ts +40 -9
  23. package/src/core/modules/better-auth/core-better-auth.service.ts +21 -0
@@ -54,6 +54,12 @@ export interface SessionResult {
54
54
  */
55
55
  export const BETTER_AUTH_CONFIG = 'BETTER_AUTH_CONFIG';
56
56
 
57
+ /**
58
+ * Injection token for resolved cross-subdomain cookie domain.
59
+ * Set during Better-Auth instance creation, undefined if disabled.
60
+ */
61
+ export const BETTER_AUTH_COOKIE_DOMAIN = 'BETTER_AUTH_COOKIE_DOMAIN';
62
+
57
63
  @Injectable()
58
64
  export class CoreBetterAuthService {
59
65
  private readonly logger = new Logger(CoreBetterAuthService.name);
@@ -65,6 +71,7 @@ export class CoreBetterAuthService {
65
71
  @Inject(BETTER_AUTH_CONFIG) @Optional() private readonly resolvedConfig?: IBetterAuth | null,
66
72
  // ConfigService is last because it's only needed as fallback when resolvedConfig is not provided
67
73
  @Optional() private readonly configService?: ConfigService,
74
+ @Inject(BETTER_AUTH_COOKIE_DOMAIN) @Optional() private readonly cookieDomain?: string | null,
68
75
  ) {
69
76
  // Use resolvedConfig if provided (has fallback secret applied), otherwise get fresh from ConfigService
70
77
  // Better-Auth is enabled by default (zero-config) - only disabled if explicitly set to false
@@ -220,6 +227,20 @@ export class CoreBetterAuthService {
220
227
  return this.config.baseUrl || 'http://localhost:3000';
221
228
  }
222
229
 
230
+ /**
231
+ * Gets the resolved cookie domain for cross-subdomain cookie sharing.
232
+ *
233
+ * Returns the domain that was resolved during Better-Auth instance creation.
234
+ * The resolution follows the Boolean Shorthand Pattern and is performed once
235
+ * by `createBetterAuthInstance()` in `better-auth.config.ts`.
236
+ *
237
+ * @returns The cookie domain string, or undefined if cross-subdomain cookies are disabled
238
+ * @since 11.15.1
239
+ */
240
+ getCookieDomain(): string | undefined {
241
+ return this.cookieDomain ?? undefined;
242
+ }
243
+
223
244
  /**
224
245
  * Gets the session cookie name based on the configured base path.
225
246
  *