@better-auth/core 1.4.0-beta.8 → 1.4.0

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 (125) hide show
  1. package/.turbo/turbo-build.log +41 -34
  2. package/dist/api/index.d.mts +3 -0
  3. package/dist/api/index.mjs +26 -0
  4. package/dist/async_hooks/index.d.mts +2 -10
  5. package/dist/async_hooks/index.mjs +2 -24
  6. package/dist/async_hooks-BfRfbd1J.mjs +18 -0
  7. package/dist/context/index.d.mts +54 -0
  8. package/dist/context/index.mjs +4 -0
  9. package/dist/context-DgQ9XGBl.mjs +114 -0
  10. package/dist/db/adapter/index.d.mts +3 -23
  11. package/dist/db/adapter/index.mjs +1 -1
  12. package/dist/db/index.d.mts +3 -127
  13. package/dist/db/index.mjs +46 -55
  14. package/dist/env/index.d.mts +2 -85
  15. package/dist/env/index.mjs +2 -299
  16. package/dist/env-DwlNAN_D.mjs +245 -0
  17. package/dist/error/index.d.mts +35 -0
  18. package/dist/error/index.mjs +4 -0
  19. package/dist/error-BhAKg8LX.mjs +45 -0
  20. package/dist/index-CdubV7uy.d.mts +82 -0
  21. package/dist/index-CkAWdKH8.d.mts +7352 -0
  22. package/dist/index-DgwIISs7.d.mts +7 -0
  23. package/dist/index.d.mts +3 -115
  24. package/dist/index.mjs +1 -1
  25. package/dist/oauth2/index.d.mts +3 -277
  26. package/dist/oauth2/index.mjs +2 -356
  27. package/dist/oauth2-DmgZmPEg.mjs +236 -0
  28. package/dist/social-providers/index.d.mts +3 -0
  29. package/dist/social-providers/index.mjs +2523 -0
  30. package/dist/utils/index.d.mts +9 -0
  31. package/dist/utils/index.mjs +3 -0
  32. package/dist/utils-C5EN75oV.mjs +7 -0
  33. package/package.json +90 -62
  34. package/src/api/index.ts +53 -0
  35. package/src/async_hooks/index.ts +1 -9
  36. package/src/context/endpoint-context.ts +49 -0
  37. package/src/context/index.ts +21 -0
  38. package/src/context/request-state.test.ts +94 -0
  39. package/src/context/request-state.ts +90 -0
  40. package/src/context/transaction.ts +73 -0
  41. package/src/db/adapter/index.ts +518 -8
  42. package/src/db/index.ts +12 -11
  43. package/src/db/plugin.ts +3 -3
  44. package/src/db/type.ts +55 -52
  45. package/src/env/color-depth.ts +5 -4
  46. package/src/env/env-impl.ts +2 -1
  47. package/src/env/index.ts +9 -9
  48. package/src/env/logger.test.ts +3 -2
  49. package/src/env/logger.ts +11 -9
  50. package/src/error/codes.ts +31 -0
  51. package/src/error/index.ts +11 -0
  52. package/src/index.ts +0 -2
  53. package/src/oauth2/client-credentials-token.ts +9 -9
  54. package/src/oauth2/create-authorization-url.ts +12 -12
  55. package/src/oauth2/index.ts +10 -11
  56. package/src/oauth2/oauth-provider.ts +96 -74
  57. package/src/oauth2/refresh-access-token.ts +12 -12
  58. package/src/oauth2/utils.ts +2 -0
  59. package/src/oauth2/validate-authorization-code.ts +13 -15
  60. package/src/social-providers/apple.ts +213 -0
  61. package/src/social-providers/atlassian.ts +132 -0
  62. package/src/social-providers/cognito.ts +269 -0
  63. package/src/social-providers/discord.ts +169 -0
  64. package/src/social-providers/dropbox.ts +112 -0
  65. package/src/social-providers/facebook.ts +206 -0
  66. package/src/social-providers/figma.ts +115 -0
  67. package/src/social-providers/github.ts +154 -0
  68. package/src/social-providers/gitlab.ts +155 -0
  69. package/src/social-providers/google.ts +171 -0
  70. package/src/social-providers/huggingface.ts +118 -0
  71. package/src/social-providers/index.ts +124 -0
  72. package/src/social-providers/kakao.ts +178 -0
  73. package/src/social-providers/kick.ts +93 -0
  74. package/src/social-providers/line.ts +169 -0
  75. package/src/social-providers/linear.ts +121 -0
  76. package/src/social-providers/linkedin.ts +110 -0
  77. package/src/social-providers/microsoft-entra-id.ts +259 -0
  78. package/src/social-providers/naver.ts +112 -0
  79. package/src/social-providers/notion.ts +108 -0
  80. package/src/social-providers/paybin.ts +122 -0
  81. package/src/social-providers/paypal.ts +263 -0
  82. package/src/social-providers/polar.ts +110 -0
  83. package/src/social-providers/reddit.ts +122 -0
  84. package/src/social-providers/roblox.ts +111 -0
  85. package/src/social-providers/salesforce.ts +159 -0
  86. package/src/social-providers/slack.ts +111 -0
  87. package/src/social-providers/spotify.ts +93 -0
  88. package/src/social-providers/tiktok.ts +210 -0
  89. package/src/social-providers/twitch.ts +111 -0
  90. package/src/social-providers/twitter.ts +198 -0
  91. package/src/social-providers/vk.ts +125 -0
  92. package/src/social-providers/zoom.ts +233 -0
  93. package/src/types/context.ts +270 -0
  94. package/src/types/cookie.ts +8 -0
  95. package/src/types/index.ts +21 -1
  96. package/src/types/init-options.ts +1328 -68
  97. package/src/types/plugin-client.ts +117 -0
  98. package/src/types/plugin.ts +158 -0
  99. package/src/utils/error-codes.ts +51 -0
  100. package/src/utils/index.ts +1 -0
  101. package/tsconfig.json +2 -5
  102. package/tsdown.config.ts +20 -0
  103. package/vitest.config.ts +3 -0
  104. package/build.config.ts +0 -19
  105. package/dist/async_hooks/index.cjs +0 -27
  106. package/dist/async_hooks/index.d.cts +0 -10
  107. package/dist/async_hooks/index.d.ts +0 -10
  108. package/dist/db/adapter/index.cjs +0 -2
  109. package/dist/db/adapter/index.d.cts +0 -23
  110. package/dist/db/adapter/index.d.ts +0 -23
  111. package/dist/db/index.cjs +0 -91
  112. package/dist/db/index.d.cts +0 -127
  113. package/dist/db/index.d.ts +0 -127
  114. package/dist/env/index.cjs +0 -315
  115. package/dist/env/index.d.cts +0 -85
  116. package/dist/env/index.d.ts +0 -85
  117. package/dist/index.cjs +0 -2
  118. package/dist/index.d.cts +0 -115
  119. package/dist/index.d.ts +0 -115
  120. package/dist/oauth2/index.cjs +0 -368
  121. package/dist/oauth2/index.d.cts +0 -277
  122. package/dist/oauth2/index.d.ts +0 -277
  123. package/dist/shared/core.DeNN5HMO.d.cts +0 -143
  124. package/dist/shared/core.DeNN5HMO.d.mts +0 -143
  125. package/dist/shared/core.DeNN5HMO.d.ts +0 -143
@@ -0,0 +1,45 @@
1
+ import { t as defineErrorCodes } from "./utils-C5EN75oV.mjs";
2
+
3
+ //#region src/error/codes.ts
4
+ const BASE_ERROR_CODES = defineErrorCodes({
5
+ USER_NOT_FOUND: "User not found",
6
+ FAILED_TO_CREATE_USER: "Failed to create user",
7
+ FAILED_TO_CREATE_SESSION: "Failed to create session",
8
+ FAILED_TO_UPDATE_USER: "Failed to update user",
9
+ FAILED_TO_GET_SESSION: "Failed to get session",
10
+ INVALID_PASSWORD: "Invalid password",
11
+ INVALID_EMAIL: "Invalid email",
12
+ INVALID_EMAIL_OR_PASSWORD: "Invalid email or password",
13
+ SOCIAL_ACCOUNT_ALREADY_LINKED: "Social account already linked",
14
+ PROVIDER_NOT_FOUND: "Provider not found",
15
+ INVALID_TOKEN: "Invalid token",
16
+ ID_TOKEN_NOT_SUPPORTED: "id_token not supported",
17
+ FAILED_TO_GET_USER_INFO: "Failed to get user info",
18
+ USER_EMAIL_NOT_FOUND: "User email not found",
19
+ EMAIL_NOT_VERIFIED: "Email not verified",
20
+ PASSWORD_TOO_SHORT: "Password too short",
21
+ PASSWORD_TOO_LONG: "Password too long",
22
+ USER_ALREADY_EXISTS: "User already exists.",
23
+ USER_ALREADY_EXISTS_USE_ANOTHER_EMAIL: "User already exists. Use another email.",
24
+ EMAIL_CAN_NOT_BE_UPDATED: "Email can not be updated",
25
+ CREDENTIAL_ACCOUNT_NOT_FOUND: "Credential account not found",
26
+ SESSION_EXPIRED: "Session expired. Re-authenticate to perform this action.",
27
+ FAILED_TO_UNLINK_LAST_ACCOUNT: "You can't unlink your last account",
28
+ ACCOUNT_NOT_FOUND: "Account not found",
29
+ USER_ALREADY_HAS_PASSWORD: "User already has a password. Provide that to delete the account."
30
+ });
31
+
32
+ //#endregion
33
+ //#region src/error/index.ts
34
+ var BetterAuthError = class extends Error {
35
+ constructor(message, cause) {
36
+ super(message);
37
+ this.name = "BetterAuthError";
38
+ this.message = message;
39
+ this.cause = cause;
40
+ this.stack = "";
41
+ }
42
+ };
43
+
44
+ //#endregion
45
+ export { BASE_ERROR_CODES as n, BetterAuthError as t };
@@ -0,0 +1,82 @@
1
+ //#region src/env/color-depth.d.ts
2
+ declare function getColorDepth(): number;
3
+ //#endregion
4
+ //#region src/env/env-impl.d.ts
5
+ type EnvObject = Record<string, string | undefined>;
6
+ declare const env: EnvObject;
7
+ declare const nodeENV: string;
8
+ /** Detect if `NODE_ENV` environment variable is `production` */
9
+ declare const isProduction: boolean;
10
+ /** Detect if `NODE_ENV` environment variable is `dev` or `development` */
11
+ declare const isDevelopment: () => boolean;
12
+ /** Detect if `NODE_ENV` environment variable is `test` */
13
+ declare const isTest: () => boolean;
14
+ /**
15
+ * Get environment variable with fallback
16
+ */
17
+ declare function getEnvVar<Fallback extends string>(key: string, fallback?: Fallback): Fallback extends string ? string : string | undefined;
18
+ /**
19
+ * Get boolean environment variable
20
+ */
21
+ declare function getBooleanEnvVar(key: string, fallback?: boolean): boolean;
22
+ /**
23
+ * Common environment variables used in Better Auth
24
+ */
25
+ declare const ENV: Readonly<{
26
+ readonly BETTER_AUTH_SECRET: string;
27
+ readonly AUTH_SECRET: string;
28
+ readonly BETTER_AUTH_TELEMETRY: string;
29
+ readonly BETTER_AUTH_TELEMETRY_ID: string;
30
+ readonly NODE_ENV: string;
31
+ readonly PACKAGE_VERSION: string;
32
+ readonly BETTER_AUTH_TELEMETRY_ENDPOINT: string;
33
+ }>;
34
+ //#endregion
35
+ //#region src/env/logger.d.ts
36
+ declare const TTY_COLORS: {
37
+ readonly reset: "\u001B[0m";
38
+ readonly bright: "\u001B[1m";
39
+ readonly dim: "\u001B[2m";
40
+ readonly undim: "\u001B[22m";
41
+ readonly underscore: "\u001B[4m";
42
+ readonly blink: "\u001B[5m";
43
+ readonly reverse: "\u001B[7m";
44
+ readonly hidden: "\u001B[8m";
45
+ readonly fg: {
46
+ readonly black: "\u001B[30m";
47
+ readonly red: "\u001B[31m";
48
+ readonly green: "\u001B[32m";
49
+ readonly yellow: "\u001B[33m";
50
+ readonly blue: "\u001B[34m";
51
+ readonly magenta: "\u001B[35m";
52
+ readonly cyan: "\u001B[36m";
53
+ readonly white: "\u001B[37m";
54
+ };
55
+ readonly bg: {
56
+ readonly black: "\u001B[40m";
57
+ readonly red: "\u001B[41m";
58
+ readonly green: "\u001B[42m";
59
+ readonly yellow: "\u001B[43m";
60
+ readonly blue: "\u001B[44m";
61
+ readonly magenta: "\u001B[45m";
62
+ readonly cyan: "\u001B[46m";
63
+ readonly white: "\u001B[47m";
64
+ };
65
+ };
66
+ type LogLevel = "info" | "success" | "warn" | "error" | "debug";
67
+ declare const levels: readonly ["info", "success", "warn", "error", "debug"];
68
+ declare function shouldPublishLog(currentLogLevel: LogLevel, logLevel: LogLevel): boolean;
69
+ interface Logger {
70
+ disabled?: boolean | undefined;
71
+ disableColors?: boolean | undefined;
72
+ level?: Exclude<LogLevel, "success"> | undefined;
73
+ log?: ((level: Exclude<LogLevel, "success">, message: string, ...args: any[]) => void) | undefined;
74
+ }
75
+ type LogHandlerParams = Parameters<NonNullable<Logger["log"]>> extends [LogLevel, ...infer Rest] ? Rest : never;
76
+ type InternalLogger = { [K in LogLevel]: (...params: LogHandlerParams) => void } & {
77
+ get level(): LogLevel;
78
+ };
79
+ declare const createLogger: (options?: Logger | undefined) => InternalLogger;
80
+ declare const logger: InternalLogger;
81
+ //#endregion
82
+ export { isTest as _, TTY_COLORS as a, logger as c, EnvObject as d, env as f, isProduction as g, isDevelopment as h, Logger as i, shouldPublishLog as l, getEnvVar as m, LogHandlerParams as n, createLogger as o, getBooleanEnvVar as p, LogLevel as r, levels as s, InternalLogger as t, ENV as u, nodeENV as v, getColorDepth as y };