better-auth 1.7.14 → 1.7.16

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 (70) hide show
  1. package/dist/api/dispatch.mjs +1 -1
  2. package/dist/api/index.d.mts +2 -1
  3. package/dist/api/index.mjs +3 -2
  4. package/dist/api/routes/account.mjs +14 -6
  5. package/dist/api/routes/email-verification.mjs +29 -37
  6. package/dist/api/routes/sign-in.mjs +2 -2
  7. package/dist/api/routes/sign-up.mjs +1 -1
  8. package/dist/api/routes/update-user.mjs +10 -4
  9. package/dist/api/state/session-source.d.mts +10 -0
  10. package/dist/api/state/session-source.mjs +28 -0
  11. package/dist/auth/trusted-origins.mjs +31 -8
  12. package/dist/client/index.d.mts +2 -1
  13. package/dist/client/parser.mjs +1 -11
  14. package/dist/client/vue/index.mjs +13 -7
  15. package/dist/context/secret-utils.mjs +3 -3
  16. package/dist/db/internal-adapter.mjs +24 -6
  17. package/dist/index.d.mts +2 -2
  18. package/dist/index.mjs +2 -2
  19. package/dist/oauth2/link-account.d.mts +3 -5
  20. package/dist/oauth2/link-account.mjs +33 -3
  21. package/dist/oauth2/state.d.mts +6 -5
  22. package/dist/package.mjs +1 -1
  23. package/dist/plugins/admin/access/statement.d.mts +10 -10
  24. package/dist/plugins/admin/access/statement.mjs +2 -0
  25. package/dist/plugins/admin/admin.d.mts +6 -4
  26. package/dist/plugins/admin/admin.mjs +4 -4
  27. package/dist/plugins/admin/client.d.mts +6 -4
  28. package/dist/plugins/admin/error-codes.d.mts +2 -0
  29. package/dist/plugins/admin/error-codes.mjs +3 -1
  30. package/dist/plugins/admin/routes.mjs +9 -0
  31. package/dist/plugins/anonymous/index.mjs +2 -1
  32. package/dist/plugins/device-authorization/routes.mjs +3 -3
  33. package/dist/plugins/email-otp/routes.mjs +33 -50
  34. package/dist/plugins/generic-oauth/index.mjs +54 -30
  35. package/dist/plugins/generic-oauth/providers/hubspot.mjs +5 -2
  36. package/dist/plugins/index.d.mts +2 -1
  37. package/dist/plugins/index.mjs +2 -1
  38. package/dist/plugins/oauth-proxy/index.mjs +1 -1
  39. package/dist/plugins/one-tap/index.mjs +1 -1
  40. package/dist/plugins/organization/adapter.mjs +1 -0
  41. package/dist/plugins/organization/client.d.mts +1 -0
  42. package/dist/plugins/organization/error-codes.d.mts +1 -0
  43. package/dist/plugins/organization/error-codes.mjs +1 -0
  44. package/dist/plugins/organization/has-permission.d.mts +2 -3
  45. package/dist/plugins/organization/has-permission.mjs +62 -23
  46. package/dist/plugins/organization/index.d.mts +2 -1
  47. package/dist/plugins/organization/index.mjs +2 -1
  48. package/dist/plugins/organization/organization.d.mts +2 -2
  49. package/dist/plugins/organization/organization.mjs +1 -3
  50. package/dist/plugins/organization/permission.mjs +3 -3
  51. package/dist/plugins/organization/roles.d.mts +8 -0
  52. package/dist/plugins/organization/roles.mjs +26 -0
  53. package/dist/plugins/organization/routes/crud-access-control.mjs +2 -1
  54. package/dist/plugins/organization/routes/crud-invites.mjs +22 -11
  55. package/dist/plugins/organization/routes/crud-members.mjs +10 -14
  56. package/dist/plugins/organization/routes/crud-org.mjs +12 -3
  57. package/dist/plugins/phone-number/client.d.mts +2 -0
  58. package/dist/plugins/phone-number/error-codes.d.mts +2 -0
  59. package/dist/plugins/phone-number/error-codes.mjs +2 -0
  60. package/dist/plugins/phone-number/index.d.mts +25 -1
  61. package/dist/plugins/phone-number/index.mjs +22 -6
  62. package/dist/plugins/phone-number/routes.mjs +34 -35
  63. package/dist/plugins/two-factor/index.d.mts +9 -2
  64. package/dist/plugins/two-factor/index.mjs +73 -26
  65. package/dist/plugins/two-factor/verify-two-factor.mjs +2 -2
  66. package/dist/plugins/username/index.mjs +6 -19
  67. package/dist/state.d.mts +6 -0
  68. package/dist/state.mjs +5 -2
  69. package/dist/utils/index.d.mts +2 -2
  70. package/package.json +9 -9
package/dist/state.d.mts CHANGED
@@ -12,12 +12,17 @@ declare const stateDataSchema: z.ZodObject<{
12
12
  link: z.ZodOptional<z.ZodObject<{
13
13
  email: z.ZodString;
14
14
  userId: z.ZodCoercedString<unknown>;
15
+ encryptedSessionToken: z.ZodOptional<z.ZodString>;
15
16
  }, z.core.$strip>>;
16
17
  requestSignUp: z.ZodOptional<z.ZodBoolean>;
17
18
  idTokenNonce: z.ZodOptional<z.ZodString>;
18
19
  serverContext: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
19
20
  }, z.core.$loose>;
20
21
  export type StateData = z.infer<typeof stateDataSchema>;
22
+ /**
23
+ * Verification key for database-backed OAuth and SAML relay state.
24
+ */
25
+ export declare const getAuthStateVerificationIdentifier: (state: string) => string;
21
26
  export declare function generateGenericState(c: GenericEndpointContext, stateData: StateData, settings?: {
22
27
  cookieName: string;
23
28
  }): Promise<{
@@ -38,6 +43,7 @@ export declare function parseGenericState(c: GenericEndpointContext, state: stri
38
43
  link?: {
39
44
  email: string;
40
45
  userId: string;
46
+ encryptedSessionToken?: string | undefined;
41
47
  } | undefined;
42
48
  requestSignUp?: boolean | undefined;
43
49
  idTokenNonce?: string | undefined;
package/dist/state.mjs CHANGED
@@ -18,7 +18,8 @@ const stateDataSchema = z.looseObject({
18
18
  oauthState: z.string().optional(),
19
19
  link: z.object({
20
20
  email: z.string(),
21
- userId: z.coerce.string()
21
+ userId: z.coerce.string(),
22
+ encryptedSessionToken: z.string().optional()
22
23
  }).optional(),
23
24
  requestSignUp: z.boolean().optional(),
24
25
  /**
@@ -33,7 +34,9 @@ const stateDataSchema = z.looseObject({
33
34
  */
34
35
  serverContext: z.record(z.string(), z.unknown()).optional()
35
36
  });
36
- /** Verification key for database-backed OAuth and SAML relay state. */
37
+ /**
38
+ * Verification key for database-backed OAuth and SAML relay state.
39
+ */
37
40
  const getAuthStateVerificationIdentifier = (state) => `auth-state:${state}`;
38
41
  const INTERNAL_STATE_KEYS = new Set(Object.keys(stateDataSchema.shape));
39
42
  var StateError = class extends BetterAuthError {
@@ -1,5 +1,5 @@
1
+ import { StateData, generateGenericState, getAuthStateVerificationIdentifier, parseGenericState } from "../state.mjs";
1
2
  import { GenerateStateOptions, generateIdTokenNonce, generateState, parseState } from "../oauth2/state.mjs";
2
- import { StateData, generateGenericState, parseGenericState } from "../state.mjs";
3
3
  import { HIDE_METADATA } from "./hide-metadata.mjs";
4
4
  import { getBaseURL, getHost, getHostFromSource, getOrigin, getProtocol, getProtocolFromSource, isDynamicBaseURLConfig, isRequestLike, matchesHostPattern, resolveBaseURL, resolveDynamicBaseURL, trimTrailingSlashes } from "./url.mjs";
5
- export { GenerateStateOptions, HIDE_METADATA, type StateData, generateGenericState, generateIdTokenNonce, generateState, getBaseURL, getHost, getHostFromSource, getOrigin, getProtocol, getProtocolFromSource, isDynamicBaseURLConfig, isRequestLike, matchesHostPattern, parseGenericState, parseState, resolveBaseURL, resolveDynamicBaseURL, trimTrailingSlashes };
5
+ export { GenerateStateOptions, HIDE_METADATA, type StateData, generateGenericState, generateIdTokenNonce, generateState, getAuthStateVerificationIdentifier, getBaseURL, getHost, getHostFromSource, getOrigin, getProtocol, getProtocolFromSource, isDynamicBaseURLConfig, isRequestLike, matchesHostPattern, parseGenericState, parseState, resolveBaseURL, resolveDynamicBaseURL, trimTrailingSlashes };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "better-auth",
3
- "version": "1.7.14",
3
+ "version": "1.7.16",
4
4
  "description": "The most comprehensive authentication framework for TypeScript.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -497,19 +497,19 @@
497
497
  "@better-fetch/fetch": "1.3.3",
498
498
  "@noble/ciphers": "^2.2.0",
499
499
  "@noble/hashes": "^2.2.0",
500
- "better-call": "1.4.4",
500
+ "better-call": "1.4.5",
501
501
  "defu": "^6.1.4",
502
502
  "jose": "^6.2.3",
503
503
  "kysely": "^0.28.17 || ^0.29.0",
504
504
  "nanostores": "^1.3.0",
505
505
  "zod": "^4.5.4",
506
- "@better-auth/core": "1.7.14",
507
- "@better-auth/drizzle-adapter": "1.7.14",
508
- "@better-auth/kysely-adapter": "1.7.14",
509
- "@better-auth/memory-adapter": "1.7.14",
510
- "@better-auth/mongo-adapter": "1.7.14",
511
- "@better-auth/prisma-adapter": "1.7.14",
512
- "@better-auth/telemetry": "1.7.14"
506
+ "@better-auth/core": "1.7.16",
507
+ "@better-auth/drizzle-adapter": "1.7.16",
508
+ "@better-auth/kysely-adapter": "1.7.16",
509
+ "@better-auth/memory-adapter": "1.7.16",
510
+ "@better-auth/mongo-adapter": "1.7.16",
511
+ "@better-auth/prisma-adapter": "1.7.16",
512
+ "@better-auth/telemetry": "1.7.16"
513
513
  },
514
514
  "devDependencies": {
515
515
  "@lynx-js/react": "^0.121.2",