@delmaredigital/payload-better-auth 0.3.1 → 0.3.3

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.
package/README.md CHANGED
@@ -44,6 +44,8 @@ Better Auth requires these environment variables:
44
44
  ```bash
45
45
  # Required
46
46
  BETTER_AUTH_SECRET=your-secret-key-min-32-chars # Must be at least 32 characters
47
+
48
+ # Optional - only needed if not using the getBaseUrl() helper below
47
49
  BETTER_AUTH_URL=http://localhost:3000 # Your app's base URL
48
50
 
49
51
  # OAuth Providers (if using social login)
@@ -55,9 +57,29 @@ GOOGLE_CLIENT_SECRET=...
55
57
  **Notes:**
56
58
  - `BETTER_AUTH_SECRET` is used for signing sessions and tokens - use a secure random string
57
59
  - `BETTER_AUTH_URL` tells Better Auth where it's hosted - plugins like passkey derive their config from this
58
- - For production, set `BETTER_AUTH_URL` to your actual domain (e.g., `https://yourdomain.com`)
59
60
  - WebAuthn (passkeys) requires HTTPS in production but works on `localhost` for development
60
61
 
62
+ **Vercel Deployment:**
63
+
64
+ For seamless support of Vercel preview deployments, use this helper instead of hardcoding URLs:
65
+
66
+ ```ts
67
+ // src/lib/auth/getBaseUrl.ts
68
+ export function getBaseUrl() {
69
+ // Vercel preview/production deployments
70
+ if (process.env.VERCEL_URL) return `https://${process.env.VERCEL_URL}`
71
+ // Explicit override
72
+ if (process.env.BETTER_AUTH_URL) return process.env.BETTER_AUTH_URL
73
+ // Local development
74
+ return 'http://localhost:3000'
75
+ }
76
+ ```
77
+
78
+ This automatically handles:
79
+ - **Local dev**: Uses `http://localhost:3000`
80
+ - **Vercel preview**: Uses the auto-generated `*.vercel.app` URL
81
+ - **Production**: Uses your custom domain (set `BETTER_AUTH_URL` in production env)
82
+
61
83
  ---
62
84
 
63
85
  ## Quick Start
@@ -141,6 +163,9 @@ import {
141
163
  } from '@delmaredigital/payload-better-auth'
142
164
  import { betterAuthOptions } from './lib/auth/config'
143
165
  import { Users } from './collections/Users'
166
+ import { getBaseUrl } from './lib/auth/getBaseUrl'
167
+
168
+ const baseUrl = getBaseUrl()
144
169
 
145
170
  export default buildConfig({
146
171
  collections: [Users /* ...other collections */],
@@ -165,8 +190,9 @@ export default buildConfig({
165
190
  generateId: 'serial',
166
191
  },
167
192
  },
193
+ baseURL: baseUrl,
168
194
  secret: process.env.BETTER_AUTH_SECRET,
169
- trustedOrigins: [process.env.NEXT_PUBLIC_APP_URL || ''],
195
+ trustedOrigins: [baseUrl],
170
196
  }),
171
197
  }),
172
198
  ],
@@ -190,17 +216,15 @@ export default buildConfig({
190
216
  import { createPayloadAuthClient } from '@delmaredigital/payload-better-auth/client'
191
217
 
192
218
  // Pre-configured with twoFactor, apiKey, and passkey plugins
219
+ // Uses window.location.origin automatically - works on any deployment URL
193
220
  export const authClient = createPayloadAuthClient()
194
221
 
195
- // Or with custom baseURL:
196
- // export const authClient = createPayloadAuthClient({
197
- // baseURL: process.env.NEXT_PUBLIC_APP_URL,
198
- // })
199
-
200
222
  export const { useSession, signIn, signUp, signOut, twoFactor, passkey } = authClient
201
223
  ```
202
224
 
203
- **Note:** `createPayloadAuthClient()` comes pre-configured with common plugins (twoFactor, apiKey, passkey). For full control, you can also use the raw `createAuthClient` from Better Auth:
225
+ **Note:** `createPayloadAuthClient()` automatically uses `window.location.origin` as the base URL, so it works seamlessly across local dev, Vercel previews, and production without any configuration.
226
+
227
+ For full control, you can also use the raw `createAuthClient` from Better Auth:
204
228
 
205
229
  ```ts
206
230
  import { createAuthClient } from '@delmaredigital/payload-better-auth/client'
@@ -377,7 +401,7 @@ API keys can have granular permission scopes. By default, scopes are auto-genera
377
401
  |--------|------|---------|-------------|
378
402
  | `scopes` | `Record<string, ScopeDefinition>` | - | Custom scope definitions |
379
403
  | `includeCollectionScopes` | `boolean` | `true` when no custom scopes, `false` when custom scopes provided | Include auto-generated collection scopes |
380
- | `excludeCollections` | `string[]` | `['sessions', 'verifications', 'accounts', 'twoFactors', 'apiKeys']` | Collections to exclude from auto-generated scopes |
404
+ | `excludeCollections` | `string[]` | `['sessions', 'verifications', 'accounts', 'twoFactors', 'apikeys']` | Collections to exclude from auto-generated scopes |
381
405
  | `defaultScopes` | `string[]` | `[]` | Default scopes pre-selected when creating a key |
382
406
 
383
407
  **Zero Config (recommended):**
@@ -744,7 +768,7 @@ async function myEndpoint({ req }) {
744
768
 
745
769
  ```typescript
746
770
  requireScope('posts:read', {
747
- apiKeysCollection: 'apiKeys', // Collection slug (auto-detected)
771
+ apiKeysCollection: 'apikeys', // Collection slug (auto-detected)
748
772
  allowAuthenticatedUsers: false, // Also allow session auth
749
773
  extractApiKey: (req) => { ... }, // Custom extraction function
750
774
  })
@@ -775,7 +799,7 @@ The adapter uses Better Auth's `createAdapterFactory` which is **schema-aware**
775
799
  | Email OTP | `better-auth` (core) | Uses verifications collection |
776
800
  | Password Reset | `better-auth` (core) | Uses verifications collection |
777
801
  | Two-Factor (TOTP) | `better-auth` (core) | Auto-generates twoFactors collection |
778
- | API Keys | `better-auth` (core) | Auto-generates apiKeys collection |
802
+ | API Keys | `better-auth` (core) | Auto-generates apikeys collection |
779
803
  | Organizations | `better-auth` (core) | Auto-generates organizations, members, invitations |
780
804
  | Admin | `better-auth` (core) | Adds admin fields to users |
781
805
  | Passkey | Bundled | Auto-generates passkeys collection |
@@ -843,8 +867,8 @@ export const Users: CollectionConfig = {
843
867
  {
844
868
  name: 'apiKeys',
845
869
  type: 'join',
846
- collection: 'apiKeys', // Auto-generated collection
847
- on: 'user', // The field in apiKeys that references users
870
+ collection: 'apikeys', // Auto-generated collection (lowercase)
871
+ on: 'user', // The field in apikeys that references users
848
872
  },
849
873
  ],
850
874
  }
@@ -976,6 +1000,8 @@ When a Better Auth plugin creates a model with a foreign key (e.g., `userId`, `o
976
1000
 
977
1001
  The auto-generated collections create relationship fields like `user` (from `userId`), so your join's `on` property should match that field name.
978
1002
 
1003
+ **Collection Slug Casing:** Collection slugs are derived from Better Auth's model names (pluralized). Some plugins use lowercase (`apikey` → `apikeys`, `passkey` → `passkeys`) while others use camelCase (`twoFactor` → `twoFactors`). Always check the actual slug in your Payload admin panel if unsure.
1004
+
979
1005
  ### Cascade Delete (Cleanup Orphaned Records)
980
1006
 
981
1007
  When a user is deleted, their related records (sessions, accounts, API keys, passkeys, etc.) become orphaned. Better Auth provides an `afterDelete` hook for cleanup:
@@ -992,7 +1018,7 @@ export const auth = betterAuth({
992
1018
  enabled: true,
993
1019
  afterDelete: async (user) => {
994
1020
  // Clean up all related records
995
- const collections = ['sessions', 'accounts', 'apiKeys', 'passkeys', 'twoFactors']
1021
+ const collections = ['sessions', 'accounts', 'apikeys', 'passkeys', 'twoFactors']
996
1022
 
997
1023
  for (const collection of collections) {
998
1024
  try {
@@ -0,0 +1,10 @@
1
+ import type { AdminViewProps } from 'payload';
2
+ type LoginViewWrapperProps = AdminViewProps;
3
+ /**
4
+ * Server component wrapper for LoginView.
5
+ * Reads login configuration from payload.config.custom.betterAuth.login
6
+ * and passes it as props to the client LoginView component.
7
+ */
8
+ export declare function LoginViewWrapper({ initPageResult }: LoginViewWrapperProps): Promise<import("react/jsx-runtime").JSX.Element>;
9
+ export default LoginViewWrapper;
10
+ //# sourceMappingURL=LoginViewWrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoginViewWrapper.d.ts","sourceRoot":"","sources":["../../src/components/LoginViewWrapper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAK7C,KAAK,qBAAqB,GAAG,cAAc,CAAA;AAE3C;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,cAAc,EAAE,EAAE,qBAAqB,oDAoB/E;AAED,eAAe,gBAAgB,CAAA"}
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { LoginView } from './LoginView.js';
3
+ /**
4
+ * Server component wrapper for LoginView.
5
+ * Reads login configuration from payload.config.custom.betterAuth.login
6
+ * and passes it as props to the client LoginView component.
7
+ */
8
+ export async function LoginViewWrapper({ initPageResult }) {
9
+ const { req } = initPageResult;
10
+ const { payload } = req;
11
+ // Read login config from payload.config.custom.betterAuth.login
12
+ const loginConfig = (payload.config.custom?.betterAuth?.login ?? {});
13
+ return (_jsx(LoginView, { afterLoginPath: loginConfig.afterLoginPath, requiredRole: loginConfig.requiredRole, requireAllRoles: loginConfig.requireAllRoles, enablePasskey: loginConfig.enablePasskey, enableSignUp: loginConfig.enableSignUp, defaultSignUpRole: loginConfig.defaultSignUpRole, enableForgotPassword: loginConfig.enableForgotPassword, resetPasswordUrl: loginConfig.resetPasswordUrl, title: loginConfig.title }));
14
+ }
15
+ export default LoginViewWrapper;
16
+ //# sourceMappingURL=LoginViewWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoginViewWrapper.js","sourceRoot":"","sources":["../../src/components/LoginViewWrapper.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAA;AAM/D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EAAE,cAAc,EAAyB;IAC9E,MAAM,EAAE,GAAG,EAAE,GAAG,cAAc,CAAA;IAC9B,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;IAEvB,gEAAgE;IAChE,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,CAAgB,CAAA;IAEnF,OAAO,CACL,KAAC,SAAS,IACR,cAAc,EAAE,WAAW,CAAC,cAAc,EAC1C,YAAY,EAAE,WAAW,CAAC,YAAY,EACtC,eAAe,EAAE,WAAW,CAAC,eAAe,EAC5C,aAAa,EAAE,WAAW,CAAC,aAAa,EACxC,YAAY,EAAE,WAAW,CAAC,YAAY,EACtC,iBAAiB,EAAE,WAAW,CAAC,iBAAiB,EAChD,oBAAoB,EAAE,WAAW,CAAC,oBAAoB,EACtD,gBAAgB,EAAE,WAAW,CAAC,gBAAgB,EAC9C,KAAK,EAAE,WAAW,CAAC,KAAK,GACxB,CACH,CAAA;AACH,CAAC;AAED,eAAe,gBAAgB,CAAA"}
@@ -113,13 +113,13 @@ export declare function createPayloadAuthClient(options?: PayloadAuthClientOptio
113
113
  token: string | null;
114
114
  user: {
115
115
  id: string;
116
- email: string;
117
- name: string;
118
- image: string | null | undefined;
119
- emailVerified: boolean;
120
116
  createdAt: Date;
121
117
  updatedAt: Date;
122
- };
118
+ email: string;
119
+ emailVerified: boolean;
120
+ name: string;
121
+ image?: string | null | undefined;
122
+ } & Record<string, any>;
123
123
  }, {
124
124
  code?: string | undefined;
125
125
  message?: string | undefined;
@@ -252,13 +252,13 @@ export declare function createPayloadAuthClient(options?: PayloadAuthClientOptio
252
252
  query?: Record<string, any> | undefined;
253
253
  fetchOptions?: FetchOptions | undefined;
254
254
  }> | undefined, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<{
255
+ scopes: string[];
255
256
  id: string;
256
- providerId: string;
257
257
  createdAt: Date;
258
258
  updatedAt: Date;
259
- accountId: string;
260
259
  userId: string;
261
- scopes: string[];
260
+ providerId: string;
261
+ accountId: string;
262
262
  }[], {
263
263
  code?: string | undefined;
264
264
  message?: string | undefined;
@@ -403,15 +403,15 @@ export declare function createPayloadAuthClient(options?: PayloadAuthClientOptio
403
403
  fetchOptions?: FetchOptions | undefined;
404
404
  }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<{
405
405
  token: string | undefined;
406
- user: {
406
+ user: (Record<string, any> & {
407
407
  id: string;
408
+ createdAt: Date;
409
+ updatedAt: Date;
408
410
  email: string;
409
411
  emailVerified: boolean;
410
412
  name: string;
411
- image: string | null | undefined;
412
- createdAt: Date;
413
- updatedAt: Date;
414
- };
413
+ image?: string | null | undefined;
414
+ }) | import("better-auth/plugins").UserWithTwoFactor;
415
415
  }, {
416
416
  code?: string | undefined;
417
417
  message?: string | undefined;
@@ -457,18 +457,21 @@ export declare function createPayloadAuthClient(options?: PayloadAuthClientOptio
457
457
  trustDevice?: boolean | undefined;
458
458
  } & {
459
459
  fetchOptions?: FetchOptions | undefined;
460
- }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<{
460
+ }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<NonNullable<{
461
461
  token: string;
462
- user: {
462
+ user: import("better-auth/plugins").UserWithTwoFactor;
463
+ } | {
464
+ token: string;
465
+ user: Record<string, any> & {
463
466
  id: string;
467
+ createdAt: Date;
468
+ updatedAt: Date;
464
469
  email: string;
465
470
  emailVerified: boolean;
466
471
  name: string;
467
- image: string | null | undefined;
468
- createdAt: Date;
469
- updatedAt: Date;
472
+ image?: string | null | undefined;
470
473
  };
471
- }, {
474
+ }>, {
472
475
  code?: string | undefined;
473
476
  message?: string | undefined;
474
477
  }, FetchOptions["throw"] extends true ? true : false>>;
@@ -498,18 +501,21 @@ export declare function createPayloadAuthClient(options?: PayloadAuthClientOptio
498
501
  trustDevice?: boolean | undefined;
499
502
  } & {
500
503
  fetchOptions?: FetchOptions | undefined;
501
- }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<{
504
+ }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<NonNullable<{
502
505
  token: string;
503
- user: {
506
+ user: import("better-auth/plugins").UserWithTwoFactor;
507
+ } | {
508
+ token: string;
509
+ user: Record<string, any> & {
504
510
  id: string;
511
+ createdAt: Date;
512
+ updatedAt: Date;
505
513
  email: string;
506
514
  emailVerified: boolean;
507
515
  name: string;
508
- image: string | null | undefined;
509
- createdAt: Date;
510
- updatedAt: Date;
516
+ image?: string | null | undefined;
511
517
  };
512
- }, {
518
+ }>, {
513
519
  code?: string | undefined;
514
520
  message?: string | undefined;
515
521
  }, FetchOptions["throw"] extends true ? true : false>>;
@@ -1154,6 +1160,7 @@ export declare function createPayloadAuthClient(options?: PayloadAuthClientOptio
1154
1160
  })[];
1155
1161
  cache?: RequestCache | undefined;
1156
1162
  method: string;
1163
+ window?: null | undefined;
1157
1164
  headers?: (HeadersInit & (HeadersInit | {
1158
1165
  accept: "application/json" | "text/plain" | "application/octet-stream";
1159
1166
  "content-type": "application/json" | "text/plain" | "application/x-www-form-urlencoded" | "multipart/form-data" | "application/octet-stream";
@@ -1168,7 +1175,6 @@ export declare function createPayloadAuthClient(options?: PayloadAuthClientOptio
1168
1175
  referrer?: string | undefined;
1169
1176
  referrerPolicy?: ReferrerPolicy | undefined;
1170
1177
  signal?: (AbortSignal | null) | undefined;
1171
- window?: null | undefined;
1172
1178
  onRetry?: ((response: import("better-auth/react").ResponseContext) => Promise<void> | void) | undefined;
1173
1179
  hookOptions?: {
1174
1180
  cloneResponse?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/exports/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/exports/client.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * These async server components use DefaultTemplate for proper
5
5
  * integration with Payload's admin panel layout.
6
6
  */
7
+ export { LoginViewWrapper } from '../components/LoginViewWrapper.js';
7
8
  export { TwoFactorView } from '../components/management/views/TwoFactorView.js';
8
9
  export { ApiKeysView } from '../components/management/views/ApiKeysView.js';
9
10
  export { PasskeysView } from '../components/management/views/PasskeysView.js';
@@ -1 +1 @@
1
- {"version":3,"file":"rsc.d.ts","sourceRoot":"","sources":["../../src/exports/rsc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAA"}
1
+ {"version":3,"file":"rsc.d.ts","sourceRoot":"","sources":["../../src/exports/rsc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAA"}
@@ -4,6 +4,7 @@
4
4
  * These async server components use DefaultTemplate for proper
5
5
  * integration with Payload's admin panel layout.
6
6
  */
7
+ export { LoginViewWrapper } from '../components/LoginViewWrapper.js';
7
8
  export { TwoFactorView } from '../components/management/views/TwoFactorView.js';
8
9
  export { ApiKeysView } from '../components/management/views/ApiKeysView.js';
9
10
  export { PasskeysView } from '../components/management/views/PasskeysView.js';
@@ -1 +1 @@
1
- {"version":3,"file":"rsc.js","sourceRoot":"","sources":["../../src/exports/rsc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAA"}
1
+ {"version":3,"file":"rsc.js","sourceRoot":"","sources":["../../src/exports/rsc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAA"}
@@ -137,15 +137,26 @@ export declare function createBetterAuthPlugin(options: BetterAuthPluginOptions)
137
137
  export type BetterAuthStrategyOptions = {
138
138
  /**
139
139
  * The collection slug for users
140
- * Default: 'users'
140
+ * @default 'users'
141
141
  */
142
142
  usersCollection?: string;
143
+ /**
144
+ * The collection slug for organization members (used for organization role lookup)
145
+ * @default 'members'
146
+ */
147
+ membersCollection?: string;
143
148
  };
144
149
  /**
145
150
  * Payload auth strategy that uses Better Auth for authentication.
146
151
  *
147
152
  * Use this in your Users collection to authenticate via Better Auth sessions.
148
153
  *
154
+ * Session fields (like `activeOrganizationId` from the organization plugin) are
155
+ * automatically merged onto `req.user`, making them available in access control functions.
156
+ *
157
+ * If an active organization is set, the user's role in that organization is also
158
+ * fetched and available as `req.user.organizationRole`.
159
+ *
149
160
  * @example
150
161
  * ```ts
151
162
  * import { betterAuthStrategy } from '@delmaredigital/payload-better-auth/plugin'
@@ -159,6 +170,17 @@ export type BetterAuthStrategyOptions = {
159
170
  * // ...
160
171
  * }
161
172
  * ```
173
+ *
174
+ * @example Access control with organization data
175
+ * ```ts
176
+ * // In your access control:
177
+ * export const orgReadAccess: Access = ({ req }) => {
178
+ * if (!req.user?.activeOrganizationId) return false
179
+ * return {
180
+ * organization: { equals: req.user.activeOrganizationId }
181
+ * }
182
+ * }
183
+ * ```
162
184
  */
163
185
  export declare function betterAuthStrategy(options?: BetterAuthStrategyOptions): AuthStrategy;
164
186
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EAEZ,WAAW,EAIZ,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAMhE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE5D,MAAM,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAA;AAGhD,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAE7D,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAA;AAE/D,MAAM,MAAM,4BAA4B,GAAG;IACzC,8CAA8C;IAC9C,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,qDAAqD;IACrD,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,+BAA+B;IAC/B,KAAK,CAAC,EAAE;QACN,kCAAkC;QAClC,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,iEAAiE;QACjE,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB;;;;;WAKG;QACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAA;QACvC;;;WAGG;QACH,eAAe,CAAC,EAAE,OAAO,CAAA;QACzB,+DAA+D;QAC/D,aAAa,CAAC,EAAE,OAAO,CAAA;KACxB,CAAA;IACD,iEAAiE;IACjE,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,+DAA+D;IAC/D,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,8DAA8D;IAC9D,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC9C,wCAAwC;IACxC,eAAe,CAAC,EAAE;QAChB,uEAAuE;QACvE,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,mEAAmE;QACnE,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,mEAAmE;QACnE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;IACD;;;;OAIG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;OAGG;IACH,UAAU,EAAE,kBAAkB,CAAA;IAE9B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAE/B;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAA;IAEnC;;OAEG;IACH,KAAK,CAAC,EAAE,4BAA4B,CAAA;CACrC,CAAA;AAQD;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,kBAAkB,GAAG,SAAS,CAEtE;AAkPD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,uBAAuB,GAC/B,MAAM,CAiER;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,GAAE,yBAA8B,GACtC,YAAY,CAmDd;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EAEZ,WAAW,EAIZ,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAMhE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE5D,MAAM,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAA;AAGhD,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAE7D,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAA;AAE/D,MAAM,MAAM,4BAA4B,GAAG;IACzC,8CAA8C;IAC9C,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,qDAAqD;IACrD,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,+BAA+B;IAC/B,KAAK,CAAC,EAAE;QACN,kCAAkC;QAClC,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,iEAAiE;QACjE,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB;;;;;WAKG;QACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAA;QACvC;;;WAGG;QACH,eAAe,CAAC,EAAE,OAAO,CAAA;QACzB,+DAA+D;QAC/D,aAAa,CAAC,EAAE,OAAO,CAAA;KACxB,CAAA;IACD,iEAAiE;IACjE,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,+DAA+D;IAC/D,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,8DAA8D;IAC9D,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC9C,wCAAwC;IACxC,eAAe,CAAC,EAAE;QAChB,uEAAuE;QACvE,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,mEAAmE;QACnE,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,mEAAmE;QACnE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;IACD;;;;OAIG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;OAGG;IACH,UAAU,EAAE,kBAAkB,CAAA;IAE9B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAE/B;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAA;IAEnC;;OAEG;IACH,KAAK,CAAC,EAAE,4BAA4B,CAAA;CACrC,CAAA;AAQD;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,kBAAkB,GAAG,SAAS,CAEtE;AA4PD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,uBAAuB,GAC/B,MAAM,CAiER;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,GAAE,yBAA8B,GACtC,YAAY,CAsFd;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
@@ -119,15 +119,24 @@ function injectAdminComponents(config, options) {
119
119
  ? undefined
120
120
  : {
121
121
  Component: adminOptions.loginViewComponent ??
122
- '@delmaredigital/payload-better-auth/components#LoginView',
122
+ '@delmaredigital/payload-better-auth/rsc#LoginViewWrapper',
123
123
  path: '/login',
124
124
  };
125
125
  const views = {
126
126
  ...existingViews,
127
127
  ...(newLoginView ? { login: newLoginView } : {}),
128
128
  };
129
+ // Store login config in config.custom for the RSC wrapper to read
130
+ const loginConfig = adminOptions.login ?? {};
129
131
  return {
130
132
  ...config,
133
+ custom: {
134
+ ...config.custom,
135
+ betterAuth: {
136
+ ...config.custom?.betterAuth,
137
+ login: loginConfig,
138
+ },
139
+ },
131
140
  admin: {
132
141
  ...config.admin,
133
142
  components: {
@@ -297,6 +306,12 @@ export function createBetterAuthPlugin(options) {
297
306
  *
298
307
  * Use this in your Users collection to authenticate via Better Auth sessions.
299
308
  *
309
+ * Session fields (like `activeOrganizationId` from the organization plugin) are
310
+ * automatically merged onto `req.user`, making them available in access control functions.
311
+ *
312
+ * If an active organization is set, the user's role in that organization is also
313
+ * fetched and available as `req.user.organizationRole`.
314
+ *
300
315
  * @example
301
316
  * ```ts
302
317
  * import { betterAuthStrategy } from '@delmaredigital/payload-better-auth/plugin'
@@ -310,9 +325,20 @@ export function createBetterAuthPlugin(options) {
310
325
  * // ...
311
326
  * }
312
327
  * ```
328
+ *
329
+ * @example Access control with organization data
330
+ * ```ts
331
+ * // In your access control:
332
+ * export const orgReadAccess: Access = ({ req }) => {
333
+ * if (!req.user?.activeOrganizationId) return false
334
+ * return {
335
+ * organization: { equals: req.user.activeOrganizationId }
336
+ * }
337
+ * }
338
+ * ```
313
339
  */
314
340
  export function betterAuthStrategy(options = {}) {
315
- const { usersCollection = 'users' } = options;
341
+ const { usersCollection = 'users', membersCollection = 'members' } = options;
316
342
  return {
317
343
  name: 'better-auth',
318
344
  authenticate: async ({ payload, headers, }) => {
@@ -323,22 +349,50 @@ export function betterAuthStrategy(options = {}) {
323
349
  console.error('Better Auth not initialized on payload instance');
324
350
  return { user: null };
325
351
  }
326
- const session = await auth.api.getSession({ headers });
327
- if (!session?.user?.id) {
352
+ const sessionData = await auth.api.getSession({ headers });
353
+ if (!sessionData?.user?.id) {
328
354
  return { user: null };
329
355
  }
330
356
  const users = await payload.find({
331
357
  collection: usersCollection,
332
- where: { id: { equals: session.user.id } },
358
+ where: { id: { equals: sessionData.user.id } },
333
359
  limit: 1,
334
360
  depth: 0,
335
361
  });
336
362
  if (users.docs.length === 0) {
337
363
  return { user: null };
338
364
  }
365
+ // Extract session fields to merge onto user (e.g., activeOrganizationId from org plugin)
366
+ // Exclude fields that might conflict with user fields
367
+ const { id: _sessionId, userId: _userId, expiresAt: _expiresAt, token: _token, ...sessionFields } = sessionData.session || {};
368
+ // If there's an active organization, fetch the user's role in that org
369
+ let organizationRole;
370
+ if (sessionFields.activeOrganizationId) {
371
+ try {
372
+ const memberships = await payload.find({
373
+ collection: membersCollection,
374
+ where: {
375
+ and: [
376
+ { user: { equals: sessionData.user.id } },
377
+ { organization: { equals: sessionFields.activeOrganizationId } },
378
+ ],
379
+ },
380
+ limit: 1,
381
+ depth: 0,
382
+ });
383
+ if (memberships.docs.length > 0) {
384
+ organizationRole = memberships.docs[0].role;
385
+ }
386
+ }
387
+ catch {
388
+ // Members collection might not exist (org plugin not used), silently ignore
389
+ }
390
+ }
339
391
  return {
340
392
  user: {
341
393
  ...users.docs[0],
394
+ ...sessionFields, // Merge session fields (activeOrganizationId, etc.)
395
+ ...(organizationRole && { organizationRole }), // Add org role if found
342
396
  collection: usersCollection,
343
397
  _strategy: 'better-auth',
344
398
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC/D,OAAO,EACL,oBAAoB,GAErB,MAAM,kCAAkC,CAAA;AA2GzC,8BAA8B;AAC9B,IAAI,YAAY,GAAgB,IAAI,CAAA;AAEpC,6DAA6D;AAC7D,IAAI,kBAAkB,GAAmC,SAAS,CAAA;AAElE;;;GAGG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,kBAAkB,CAAA;AAC3B,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB;IAChC,OAAO,KAAK,EAAE,GAAG,EAAE,EAAE;QACnB,MAAM,eAAe,GAAG,GAAG,CAAC,OAA0B,CAAA;QACtD,MAAM,IAAI,GAAG,eAAe,CAAC,UAAU,CAAA;QAEvC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,CAAC,EACxD,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CACjE,CAAA;QACH,CAAC;QAED,IAAI,CAAC;YACH,yCAAyC;YACzC,2CAA2C;YAC3C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,MAAM,CAAA;YAC/D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,WAAW,CAAA;YACnD,MAAM,QAAQ,GAAI,GAAwC,CAAC,QAAQ,IAAI,EAAE,CAAA;YACzE,MAAM,MAAM,GACT,GAAsC,CAAC,MAAM;gBAC7C,GAAmC,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACvD,EAAE,CAAA;YAEJ,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC,CAAA;YACtD,IAAI,MAAM,EAAE,CAAC;gBACX,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAA;YAC7D,CAAC;YAED,uCAAuC;YACvC,IAAI,IAAwB,CAAA;YAC5B,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxD,IAAI,CAAC;oBACH,+BAA+B;oBAC/B,IAAI,OAAQ,GAAmD,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBACpF,IAAI,GAAG,MAAO,GAAkD,CAAC,IAAI,EAAE,CAAA;oBACzE,CAAC;yBAAM,IAAK,GAAqC,CAAC,IAAI,EAAE,CAAC;wBACvD,IAAI,GAAG,IAAI,CAAC,SAAS,CAAE,GAAoC,CAAC,IAAI,CAAC,CAAA;oBACnE,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,oDAAoD;oBACpD,IAAK,GAAqC,CAAC,IAAI,EAAE,CAAC;wBAChD,IAAI,GAAG,IAAI,CAAC,SAAS,CAAE,GAAoC,CAAC,IAAI,CAAC,CAAA;oBACnE,CAAC;gBACH,CAAC;YACH,CAAC;YAED,uCAAuC;YACvC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;gBAC1C,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,KAAK;gBAC3B,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,IAAI;aACL,CAAC,CAAA;YAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAE5C,OAAO,QAAQ,CAAA;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;YAC7D,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,EAClD,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,CACjE,CAAA;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,QAAgB;IAC7C,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAA;IAC3C,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAU,CAAA;IAElE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9B,IAAI,EAAE,GAAG,QAAQ,SAAS;QAC1B,MAAM;QACN,OAAO;KACR,CAAC,CAAC,CAAA;AACL,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAC5B,MAAc,EACd,OAAgC;IAEhC,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAE9C,uEAAuE;IACvE,IACE,CAAC,aAAa,CAAC,uBAAuB;QACtC,OAAO,CAAC,yBAAyB,KAAK,KAAK,EAC3C,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAA;IACxC,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,IAAI,EAAE,CAAA;IAEzD,6BAA6B;IAC7B,MAAM,YAAY,GAAG,YAAY,CAAC,mBAAmB;QACnD,CAAC,CAAE,kBAAkB,CAAC,MAA8B,EAAE,MAAM;QAC5D,CAAC,CAAC,YAAY,CAAC,qBAAqB;YAClC,6DAA6D,CAAA;IAEjE,2BAA2B;IAC3B,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,WAAW,IAAI,EAAE,CAAA;IAChE,MAAM,WAAW,GAAG,YAAY,CAAC,kBAAkB;QACjD,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC;YACE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC;gBACpC,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;YAC1B,YAAY,CAAC,oBAAoB;gBAC/B,4DAA4D;SAC/D,CAAA;IAEL,0BAA0B;IAC1B,MAAM,aAAa,GAChB,kBAAkB,CAAC,KAA6C,IAAI,EAAE,CAAA;IACzE,MAAM,YAAY,GAAG,YAAY,CAAC,gBAAgB;QAChD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,SAAS,EACP,YAAY,CAAC,kBAAkB;gBAC/B,0DAA0D;YAC5D,IAAI,EAAE,QAAiB;SACxB,CAAA;IAEL,MAAM,KAAK,GAAG;QACZ,GAAG,aAAa;QAChB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CAAA;IAED,kEAAkE;IAClE,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,IAAI,EAAE,CAAA;IAE5C,OAAO;QACL,GAAG,MAAM;QACT,MAAM,EAAE;YACN,GAAG,MAAM,CAAC,MAAM;YAChB,UAAU,EAAE;gBACV,GAAI,MAAM,CAAC,MAAM,EAAE,UAAkD;gBACrE,KAAK,EAAE,WAAW;aACnB;SACF;QACD,KAAK,EAAE;YACL,GAAG,MAAM,CAAC,KAAK;YACf,UAAU,EAAE;gBACV,GAAG,kBAAkB;gBACrB,MAAM,EAAE,YAAY;oBAClB,CAAC,CAAC;wBACE,GAAG,CAAC,OAAO,kBAAkB,CAAC,MAAM,KAAK,QAAQ;4BAC/C,CAAC,CAAC,kBAAkB,CAAC,MAAM;4BAC3B,CAAC,CAAC,EAAE,CAAC;wBACP,MAAM,EAAE,YAAY;qBACrB;oBACH,CAAC,CAAC,kBAAkB,CAAC,MAAM;gBAC7B,WAAW;gBACX,KAAK;aACN;SACF;KACQ,CAAA;AACb,CAAC;AAED;;GAEG;AACH,SAAS,0BAA0B,CACjC,MAAc,EACd,OAAgC;IAEhC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAA;IAExC,oCAAoC;IACpC,IAAI,YAAY,CAAC,kBAAkB,KAAK,KAAK,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAA;IACf,CAAC;IAED,mCAAmC;IACnC,MAAM,cAAc,GAAG,oBAAoB,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;IAE3E,mCAAmC;IACnC,MAAM,KAAK,GAAG;QACZ,SAAS,EAAE,YAAY,CAAC,eAAe,EAAE,SAAS,IAAI,sBAAsB;QAC5E,OAAO,EAAE,YAAY,CAAC,eAAe,EAAE,OAAO,IAAI,oBAAoB;QACtE,QAAQ,EAAE,YAAY,CAAC,eAAe,EAAE,QAAQ,IAAI,oBAAoB;KACzE,CAAA;IAED,MAAM,kBAAkB,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,IAAI,EAAE,CAAA;IACzD,MAAM,aAAa,GAChB,kBAAkB,CAAC,KAA6C,IAAI,EAAE,CAAA;IACzE,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,aAAa,IAAI,EAAE,CAAA;IAEpE,kDAAkD;IAClD,qEAAqE;IACrE,MAAM,eAAe,GAAwD,EAAE,CAAA;IAE/E,0BAA0B;IAC1B,IAAI,cAAc,CAAC,YAAY,EAAE,CAAC;QAChC,eAAe,CAAC,iBAAiB,GAAG;YAClC,SAAS,EAAE,uDAAuD;YAClE,IAAI,EAAE,KAAK,CAAC,SAAS;SACtB,CAAA;IACH,CAAC;IAED,wBAAwB;IACxB,IAAI,cAAc,CAAC,SAAS,EAAE,CAAC;QAC7B,eAAe,CAAC,eAAe,GAAG;YAChC,SAAS,EAAE,qDAAqD;YAChE,IAAI,EAAE,KAAK,CAAC,OAAO;SACpB,CAAA;IACH,CAAC;IAED,wBAAwB;IACxB,IAAI,cAAc,CAAC,UAAU,EAAE,CAAC;QAC9B,eAAe,CAAC,gBAAgB,GAAG;YACjC,SAAS,EAAE,sDAAsD;YACjE,IAAI,EAAE,KAAK,CAAC,QAAQ;SACrB,CAAA;IACH,CAAC;IAED,wCAAwC;IACxC,MAAM,aAAa,GAAG;QACpB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC;YACtC,CAAC,CAAC,qBAAqB;YACvB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;QAC5B,4EAA4E;KAC7E,CAAA;IAED,OAAO;QACL,GAAG,MAAM;QACT,KAAK,EAAE;YACL,GAAG,MAAM,CAAC,KAAK;YACf,UAAU,EAAE;gBACV,GAAG,kBAAkB;gBACrB,KAAK,EAAE;oBACL,GAAG,aAAa;oBAChB,GAAG,eAAe;iBACnB;gBACD,aAAa;aACd;SACF;KACQ,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAgC;IAEhC,MAAM,EACJ,UAAU,EACV,YAAY,GAAG,OAAO,EACtB,qBAAqB,GAAG,IAAI,EAC5B,yBAAyB,GAAG,IAAI,GACjC,GAAG,OAAO,CAAA;IAEX,6DAA6D;IAC7D,kBAAkB,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAA;IAE1C,OAAO,CAAC,cAAc,EAAE,EAAE;QACxB,qCAAqC;QACrC,IAAI,MAAM,GACR,yBAAyB;YACvB,CAAC,CAAC,qBAAqB,CAAC,cAAc,EAAE,OAAO,CAAC;YAChD,CAAC,CAAC,cAAc,CAAA;QAEpB,kCAAkC;QAClC,MAAM,GAAG,0BAA0B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAEpD,qCAAqC;QACrC,MAAM,aAAa,GAAG,qBAAqB;YACzC,CAAC,CAAC,qBAAqB,CAAC,YAAY,CAAC;YACrC,CAAC,CAAC,EAAE,CAAA;QAEN,kBAAkB;QAClB,MAAM,iBAAiB,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAA;QAEhD,sBAAsB;QACtB,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAA;QAEpC,OAAO;YACL,GAAG,MAAM;YACT,SAAS,EAAE,CAAC,GAAG,iBAAiB,EAAE,GAAG,aAAa,CAAC;YACnD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACxB,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,cAAc,CAAC,OAAO,CAAC,CAAA;gBAC/B,CAAC;gBAED,2CAA2C;gBAC3C,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;oBAC5B,OAAM;gBACR,CAAC;gBAED,gCAAgC;gBAChC,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,IAAI,CAAC;wBACH,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;oBACpC,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAA;wBAC5D,MAAM,KAAK,CAAA;oBACb,CAAC;gBACH,CAAC;gBAED,sCAAsC;gBACtC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE;oBAC3C,KAAK,EAAE,YAAY;oBACnB,QAAQ,EAAE,KAAK;oBACf,UAAU,EAAE,KAAK;oBACjB,YAAY,EAAE,KAAK;iBACpB,CAAC,CAAA;YACJ,CAAC;SACF,CAAA;IACH,CAAC,CAAA;AACH,CAAC;AAeD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,UAAU,kBAAkB,CAChC,UAAqC,EAAE;IAEvC,MAAM,EAAE,eAAe,GAAG,OAAO,EAAE,iBAAiB,GAAG,SAAS,EAAE,GAAG,OAAO,CAAA;IAE5E,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,YAAY,EAAE,KAAK,EAAE,EACnB,OAAO,EACP,OAAO,GAIR,EAAE,EAAE;YACH,IAAI,CAAC;gBACH,MAAM,eAAe,GAAG,OAA0B,CAAA;gBAClD,MAAM,IAAI,GAAG,eAAe,CAAC,UAAU,CAAA;gBAEvC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAA;oBAChE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;gBACvB,CAAC;gBAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;gBAE1D,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;oBAC3B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;gBACvB,CAAC;gBAED,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;oBAC/B,UAAU,EAAE,eAAe;oBAC3B,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE;oBAC9C,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;iBACT,CAAC,CAAA;gBAEF,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;gBACvB,CAAC;gBAED,yFAAyF;gBACzF,sDAAsD;gBACtD,MAAM,EACJ,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,UAAU,EACrB,KAAK,EAAE,MAAM,EACb,GAAG,aAAa,EACjB,GAAI,WAAW,CAAC,OAAmC,IAAI,EAAE,CAAA;gBAE1D,uEAAuE;gBACvE,IAAI,gBAAoC,CAAA;gBACxC,IAAI,aAAa,CAAC,oBAAoB,EAAE,CAAC;oBACvC,IAAI,CAAC;wBACH,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;4BACrC,UAAU,EAAE,iBAAiB;4BAC7B,KAAK,EAAE;gCACL,GAAG,EAAE;oCACH,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE;oCACzC,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,aAAa,CAAC,oBAAoB,EAAE,EAAE;iCACjE;6BACF;4BACD,KAAK,EAAE,CAAC;4BACR,KAAK,EAAE,CAAC;yBACT,CAAC,CAAA;wBACF,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAChC,gBAAgB,GAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAuB,CAAC,IAAI,CAAA;wBACpE,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,4EAA4E;oBAC9E,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE;wBACJ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;wBAChB,GAAG,aAAa,EAAE,oDAAoD;wBACtE,GAAG,CAAC,gBAAgB,IAAI,EAAE,gBAAgB,EAAE,CAAC,EAAE,wBAAwB;wBACvE,UAAU,EAAE,eAAe;wBAC3B,SAAS,EAAE,aAAa;qBACzB;iBACF,CAAA;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAA;gBACnD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YACvB,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,YAAY,GAAG,IAAI,CAAA;AACrB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@delmaredigital/payload-better-auth",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "Better Auth adapter and plugins for Payload CMS",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -63,7 +63,7 @@
63
63
  "prepublishOnly": "pnpm build"
64
64
  },
65
65
  "dependencies": {
66
- "@better-auth/passkey": "^1.4.12"
66
+ "@better-auth/passkey": "^1.4.17"
67
67
  },
68
68
  "peerDependencies": {
69
69
  "@payloadcms/next": ">=3.69.0",
@@ -74,14 +74,14 @@
74
74
  "react": ">=19.2.1"
75
75
  },
76
76
  "devDependencies": {
77
- "@payloadcms/next": "^3.71.1",
78
- "@payloadcms/ui": "^3.71.1",
79
- "@types/node": "^25.0.8",
80
- "@types/react": "^19.2.8",
77
+ "@payloadcms/next": "^3.73.0",
78
+ "@payloadcms/ui": "^3.73.0",
79
+ "@types/node": "^25.0.10",
80
+ "@types/react": "^19.2.9",
81
81
  "@vitest/coverage-v8": "^2.1.9",
82
- "better-auth": "^1.4.12",
83
- "next": "^16.1.1",
84
- "payload": "^3.71.1",
82
+ "better-auth": "^1.4.17",
83
+ "next": "^16.1.4",
84
+ "payload": "^3.73.0",
85
85
  "react": "^19.2.3",
86
86
  "tsx": "^4.21.0",
87
87
  "typescript": "^5.9.3",