@better-auth/core 1.5.0-beta.3 → 1.5.0-beta.5

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 (175) hide show
  1. package/.turbo/turbo-build.log +170 -37
  2. package/dist/api/index.d.mts +188 -1
  3. package/dist/api/index.mjs +2 -1
  4. package/dist/context/endpoint-context.d.mts +19 -0
  5. package/dist/context/endpoint-context.mjs +27 -0
  6. package/dist/context/index.d.mts +3 -52
  7. package/dist/context/index.mjs +22 -1
  8. package/dist/context/request-state.d.mts +27 -0
  9. package/dist/context/request-state.mjs +45 -0
  10. package/dist/context/transaction.d.mts +16 -0
  11. package/dist/context/transaction.mjs +48 -0
  12. package/dist/db/adapter/factory.d.mts +27 -0
  13. package/dist/db/adapter/factory.mjs +738 -0
  14. package/dist/db/adapter/get-default-field-name.d.mts +18 -0
  15. package/dist/db/adapter/get-default-field-name.mjs +38 -0
  16. package/dist/db/adapter/get-default-model-name.d.mts +12 -0
  17. package/dist/db/adapter/get-default-model-name.mjs +32 -0
  18. package/dist/db/adapter/get-field-attributes.d.mts +29 -0
  19. package/dist/db/adapter/get-field-attributes.mjs +39 -0
  20. package/dist/db/adapter/get-field-name.d.mts +18 -0
  21. package/dist/db/adapter/get-field-name.mjs +33 -0
  22. package/dist/db/adapter/get-id-field.d.mts +39 -0
  23. package/dist/db/adapter/get-id-field.mjs +67 -0
  24. package/dist/db/adapter/get-model-name.d.mts +12 -0
  25. package/dist/db/adapter/get-model-name.mjs +23 -0
  26. package/dist/db/adapter/index.d.mts +513 -1
  27. package/dist/db/adapter/index.mjs +8 -970
  28. package/dist/db/adapter/types.d.mts +139 -0
  29. package/dist/db/adapter/utils.d.mts +7 -0
  30. package/dist/db/adapter/utils.mjs +38 -0
  31. package/dist/db/get-tables.d.mts +8 -0
  32. package/dist/{get-tables-CMc_Emww.mjs → db/get-tables.mjs} +1 -1
  33. package/dist/db/index.d.mts +10 -2
  34. package/dist/db/index.mjs +7 -60
  35. package/dist/db/plugin.d.mts +12 -0
  36. package/dist/db/schema/account.d.mts +26 -0
  37. package/dist/db/schema/account.mjs +19 -0
  38. package/dist/db/schema/rate-limit.d.mts +14 -0
  39. package/dist/db/schema/rate-limit.mjs +11 -0
  40. package/dist/db/schema/session.d.mts +21 -0
  41. package/dist/db/schema/session.mjs +14 -0
  42. package/dist/db/schema/shared.d.mts +10 -0
  43. package/dist/db/schema/shared.mjs +11 -0
  44. package/dist/db/schema/user.d.mts +20 -0
  45. package/dist/db/schema/user.mjs +13 -0
  46. package/dist/db/schema/verification.d.mts +19 -0
  47. package/dist/db/schema/verification.mjs +12 -0
  48. package/dist/db/type.d.mts +143 -0
  49. package/dist/env/color-depth.d.mts +4 -0
  50. package/dist/env/color-depth.mjs +88 -0
  51. package/dist/env/env-impl.d.mts +32 -0
  52. package/dist/env/env-impl.mjs +82 -0
  53. package/dist/env/index.d.mts +4 -2
  54. package/dist/env/index.mjs +3 -1
  55. package/dist/{index-BRBu0-5h.d.mts → env/logger.d.mts} +1 -35
  56. package/dist/env/logger.mjs +81 -0
  57. package/dist/error/codes.d.mts +186 -0
  58. package/dist/{error-GNtLPYaS.mjs → error/codes.mjs} +2 -29
  59. package/dist/error/index.d.mts +1 -185
  60. package/dist/error/index.mjs +28 -3
  61. package/dist/index.d.mts +7 -1
  62. package/dist/oauth2/client-credentials-token.d.mts +36 -0
  63. package/dist/oauth2/client-credentials-token.mjs +54 -0
  64. package/dist/oauth2/create-authorization-url.d.mts +45 -0
  65. package/dist/oauth2/create-authorization-url.mjs +42 -0
  66. package/dist/oauth2/index.d.mts +8 -2
  67. package/dist/oauth2/index.mjs +6 -2
  68. package/dist/oauth2/oauth-provider.d.mts +194 -0
  69. package/dist/oauth2/refresh-access-token.d.mts +36 -0
  70. package/dist/oauth2/refresh-access-token.mjs +58 -0
  71. package/dist/oauth2/utils.d.mts +7 -0
  72. package/dist/oauth2/utils.mjs +27 -0
  73. package/dist/oauth2/validate-authorization-code.d.mts +55 -0
  74. package/dist/oauth2/validate-authorization-code.mjs +71 -0
  75. package/dist/oauth2/verify.d.mts +49 -0
  76. package/dist/oauth2/verify.mjs +95 -0
  77. package/dist/social-providers/apple.d.mts +119 -0
  78. package/dist/social-providers/apple.mjs +102 -0
  79. package/dist/social-providers/atlassian.d.mts +72 -0
  80. package/dist/social-providers/atlassian.mjs +83 -0
  81. package/dist/social-providers/cognito.d.mts +87 -0
  82. package/dist/social-providers/cognito.mjs +165 -0
  83. package/dist/social-providers/discord.d.mts +126 -0
  84. package/dist/social-providers/discord.mjs +64 -0
  85. package/dist/social-providers/dropbox.d.mts +71 -0
  86. package/dist/social-providers/dropbox.mjs +75 -0
  87. package/dist/social-providers/facebook.d.mts +81 -0
  88. package/dist/social-providers/facebook.mjs +120 -0
  89. package/dist/social-providers/figma.d.mts +63 -0
  90. package/dist/social-providers/figma.mjs +84 -0
  91. package/dist/social-providers/github.d.mts +104 -0
  92. package/dist/social-providers/github.mjs +80 -0
  93. package/dist/social-providers/gitlab.d.mts +125 -0
  94. package/dist/social-providers/gitlab.mjs +82 -0
  95. package/dist/social-providers/google.d.mts +99 -0
  96. package/dist/social-providers/google.mjs +108 -0
  97. package/dist/social-providers/huggingface.d.mts +85 -0
  98. package/dist/social-providers/huggingface.mjs +75 -0
  99. package/dist/social-providers/index.d.mts +1723 -1
  100. package/dist/social-providers/index.mjs +33 -2569
  101. package/dist/social-providers/kakao.d.mts +163 -0
  102. package/dist/social-providers/kakao.mjs +72 -0
  103. package/dist/social-providers/kick.d.mts +75 -0
  104. package/dist/social-providers/kick.mjs +71 -0
  105. package/dist/social-providers/line.d.mts +107 -0
  106. package/dist/social-providers/line.mjs +113 -0
  107. package/dist/social-providers/linear.d.mts +70 -0
  108. package/dist/social-providers/linear.mjs +88 -0
  109. package/dist/social-providers/linkedin.d.mts +69 -0
  110. package/dist/social-providers/linkedin.mjs +76 -0
  111. package/dist/social-providers/microsoft-entra-id.d.mts +174 -0
  112. package/dist/social-providers/microsoft-entra-id.mjs +106 -0
  113. package/dist/social-providers/naver.d.mts +104 -0
  114. package/dist/social-providers/naver.mjs +67 -0
  115. package/dist/social-providers/notion.d.mts +66 -0
  116. package/dist/social-providers/notion.mjs +75 -0
  117. package/dist/social-providers/paybin.d.mts +73 -0
  118. package/dist/social-providers/paybin.mjs +85 -0
  119. package/dist/social-providers/paypal.d.mts +131 -0
  120. package/dist/social-providers/paypal.mjs +144 -0
  121. package/dist/social-providers/polar.d.mts +76 -0
  122. package/dist/social-providers/polar.mjs +73 -0
  123. package/dist/social-providers/reddit.d.mts +64 -0
  124. package/dist/social-providers/reddit.mjs +83 -0
  125. package/dist/social-providers/roblox.d.mts +72 -0
  126. package/dist/social-providers/roblox.mjs +59 -0
  127. package/dist/social-providers/salesforce.d.mts +81 -0
  128. package/dist/social-providers/salesforce.mjs +91 -0
  129. package/dist/social-providers/slack.d.mts +85 -0
  130. package/dist/social-providers/slack.mjs +68 -0
  131. package/dist/social-providers/spotify.d.mts +65 -0
  132. package/dist/social-providers/spotify.mjs +71 -0
  133. package/dist/social-providers/tiktok.d.mts +171 -0
  134. package/dist/social-providers/tiktok.mjs +62 -0
  135. package/dist/social-providers/twitch.d.mts +81 -0
  136. package/dist/social-providers/twitch.mjs +78 -0
  137. package/dist/social-providers/twitter.d.mts +140 -0
  138. package/dist/social-providers/twitter.mjs +87 -0
  139. package/dist/social-providers/vercel.d.mts +64 -0
  140. package/dist/social-providers/vercel.mjs +61 -0
  141. package/dist/social-providers/vk.d.mts +72 -0
  142. package/dist/social-providers/vk.mjs +83 -0
  143. package/dist/social-providers/zoom.d.mts +173 -0
  144. package/dist/social-providers/zoom.mjs +72 -0
  145. package/dist/types/context.d.mts +246 -0
  146. package/dist/types/cookie.d.mts +23 -0
  147. package/dist/types/helper.d.mts +8 -0
  148. package/dist/types/index.d.mts +8 -0
  149. package/dist/types/init-options.d.mts +1266 -0
  150. package/dist/types/plugin-client.d.mts +110 -0
  151. package/dist/types/plugin.d.mts +124 -0
  152. package/dist/utils/deprecate.d.mts +10 -0
  153. package/dist/utils/deprecate.mjs +17 -0
  154. package/dist/utils/{index.d.mts → error-codes.d.mts} +1 -19
  155. package/dist/utils/error-codes.mjs +11 -0
  156. package/dist/utils/id.d.mts +4 -0
  157. package/dist/utils/id.mjs +9 -0
  158. package/dist/utils/json.d.mts +4 -0
  159. package/dist/utils/json.mjs +25 -0
  160. package/dist/utils/string.d.mts +4 -0
  161. package/dist/utils/string.mjs +7 -0
  162. package/package.json +10 -7
  163. package/src/db/adapter/get-id-field.ts +1 -1
  164. package/src/error/codes.ts +1 -1
  165. package/src/oauth2/create-authorization-url.ts +1 -1
  166. package/src/oauth2/oauth-provider.ts +6 -0
  167. package/src/types/init-options.ts +19 -4
  168. package/tsdown.config.ts +3 -1
  169. package/dist/context-BBNwughv.mjs +0 -133
  170. package/dist/env-DbssmzoK.mjs +0 -245
  171. package/dist/index-CGr4Qrv8.d.mts +0 -8039
  172. package/dist/oauth2-BjWM15hm.mjs +0 -326
  173. package/dist/utils/index.mjs +0 -4
  174. package/dist/utils-puAL36Bz.mjs +0 -63
  175. package/src/utils/index.ts +0 -5
@@ -1,43 +1,176 @@
1
1
 
2
- > @better-auth/core@1.5.0-beta.3 build /home/runner/work/better-auth/better-auth/packages/core
2
+ > @better-auth/core@1.5.0-beta.5 build /home/runner/work/better-auth/better-auth/packages/core
3
3
  > tsdown
4
4
 
5
- ℹ tsdown v0.17.2 powered by rolldown v1.0.0-beta.53
5
+ ℹ tsdown v0.19.0 powered by rolldown v1.0.0-beta.59
6
6
  ℹ config file: /home/runner/work/better-auth/better-auth/packages/core/tsdown.config.ts
7
- ℹ entry: src/index.ts, src/db/index.ts, src/db/adapter/index.ts, src/async_hooks/index.ts, src/async_hooks/pure.index.ts, src/context/index.ts, src/env/index.ts, src/oauth2/index.ts, src/api/index.ts, src/social-providers/index.ts, src/utils/index.ts, src/error/index.ts
7
+ ℹ entry: src/index.ts, src/api/index.ts, src/async_hooks/index.ts, src/async_hooks/pure.index.ts, src/context/index.ts, src/db/index.ts, src/env/index.ts, src/error/index.ts, src/oauth2/index.ts, src/social-providers/index.ts, src/utils/deprecate.ts, src/utils/error-codes.ts, src/utils/id.ts, src/utils/json.ts, src/utils/string.ts, src/db/adapter/index.ts
8
8
  ℹ tsconfig: tsconfig.json
9
9
  ℹ Build start
10
- ℹ dist/social-providers/index.mjs  80.94 kB │ gzip: 10.43 kB
11
- ℹ dist/db/adapter/index.mjs  38.55 kB │ gzip: 7.86 kB
12
- ℹ dist/db/index.mjs  1.66 kB │ gzip: 0.54 kB
13
- ℹ dist/api/index.mjs  1.23 kB │ gzip: 0.48 kB
14
- ℹ dist/async_hooks/index.mjs  1.03 kB │ gzip: 0.54 kB
15
- ℹ dist/async_hooks/pure.index.mjs  0.99 kB │ gzip: 0.49 kB
16
- ℹ dist/oauth2/index.mjs  0.75 kB │ gzip: 0.28 kB
17
- ℹ dist/context/index.mjs  0.70 kB │ gzip: 0.24 kB
18
- ℹ dist/env/index.mjs  0.44 kB │ gzip: 0.25 kB
19
- ℹ dist/utils/index.mjs  0.26 kB │ gzip: 0.18 kB
20
- ℹ dist/error/index.mjs  0.22 kB │ gzip: 0.16 kB
21
- ℹ dist/index.mjs  0.01 kB │ gzip: 0.03 kB
22
- ℹ dist/oauth2-BjWM15hm.mjs  12.82 kB │ gzip: 3.16 kB
23
- ℹ dist/env-DbssmzoK.mjs  7.67 kB │ gzip: 2.54 kB
24
- ℹ dist/get-tables-CMc_Emww.mjs  6.76 kB │ gzip: 1.30 kB
25
- ℹ dist/context-BBNwughv.mjs  4.87 kB │ gzip: 1.40 kB
26
- ℹ dist/error-GNtLPYaS.mjs  3.19 kB │ gzip: 1.30 kB
27
- ℹ dist/utils-puAL36Bz.mjs  1.58 kB │ gzip: 0.76 kB
28
- ℹ dist/error/index.d.mts  6.11 kB │ gzip: 1.50 kB
29
- ℹ dist/social-providers/index.d.mts  3.89 kB │ gzip: 1.20 kB
30
- ℹ dist/context/index.d.mts  3.02 kB │ gzip: 0.96 kB
31
- ℹ dist/utils/index.d.mts  1.55 kB │ gzip: 0.70 kB
32
- ℹ dist/db/adapter/index.d.mts  1.34 kB │ gzip: 0.43 kB
33
- ℹ dist/index.d.mts  1.09 kB │ gzip: 0.39 kB
34
- ℹ dist/oauth2/index.d.mts  0.88 kB │ gzip: 0.32 kB
35
- ℹ dist/db/index.d.mts  0.81 kB │ gzip: 0.34 kB
36
- ℹ dist/env/index.d.mts  0.59 kB │ gzip: 0.30 kB
37
- ℹ dist/api/index.d.mts  0.26 kB │ gzip: 0.14 kB
38
- ℹ dist/async_hooks/index.d.mts  0.24 kB │ gzip: 0.16 kB
39
- ℹ dist/async_hooks/pure.index.d.mts  0.22 kB │ gzip: 0.16 kB
40
- ℹ dist/index-CGr4Qrv8.d.mts 228.51 kB │ gzip: 36.16 kB
41
- ℹ dist/index-BRBu0-5h.d.mts  3.31 kB │ gzip: 1.11 kB
42
- ℹ 32 files, total: 415.51 kB
43
- ✔ Build complete in 5246ms
10
+ ℹ dist/social-providers/index.mjs  2.32 kB │ gzip: 0.72 kB
11
+ ℹ dist/context/index.mjs  1.70 kB │ gzip: 0.68 kB
12
+ ℹ dist/api/index.mjs  1.27 kB │ gzip: 0.48 kB
13
+ ℹ dist/async_hooks/index.mjs  1.03 kB │ gzip: 0.54 kB
14
+ ℹ dist/async_hooks/pure.index.mjs  0.99 kB │ gzip: 0.49 kB
15
+ ℹ dist/oauth2/index.mjs  0.87 kB │ gzip: 0.27 kB
16
+ ℹ dist/db/adapter/index.mjs  0.71 kB │ gzip: 0.22 kB
17
+ ℹ dist/error/index.mjs  0.70 kB │ gzip: 0.34 kB
18
+ ℹ dist/utils/json.mjs  0.59 kB │ gzip: 0.35 kB
19
+ ℹ dist/db/index.mjs  0.50 kB │ gzip: 0.18 kB
20
+ ℹ dist/env/index.mjs  0.43 kB │ gzip: 0.21 kB
21
+ ℹ dist/utils/deprecate.mjs  0.36 kB │ gzip: 0.24 kB
22
+ ℹ dist/utils/error-codes.mjs  0.26 kB │ gzip: 0.19 kB
23
+ ℹ dist/utils/id.mjs  0.24 kB │ gzip: 0.18 kB
24
+ ℹ dist/utils/string.mjs  0.17 kB │ gzip: 0.14 kB
25
+ ℹ dist/index.mjs  0.01 kB │ gzip: 0.03 kB
26
+ ℹ dist/db/adapter/factory.mjs 30.09 kB │ gzip: 6.00 kB
27
+ ℹ dist/db/get-tables.mjs  6.76 kB │ gzip: 1.29 kB
28
+ ℹ dist/social-providers/cognito.mjs  5.90 kB │ gzip: 1.93 kB
29
+ ℹ dist/social-providers/paypal.mjs  5.03 kB │ gzip: 1.48 kB
30
+ ℹ dist/social-providers/google.mjs  3.75 kB │ gzip: 1.38 kB
31
+ ℹ dist/oauth2/verify.mjs  3.74 kB │ gzip: 1.32 kB
32
+ ℹ dist/social-providers/apple.mjs  3.72 kB │ gzip: 1.34 kB
33
+ ℹ dist/social-providers/facebook.mjs  3.57 kB │ gzip: 1.27 kB
34
+ ℹ dist/social-providers/line.mjs  3.57 kB │ gzip: 1.20 kB
35
+ ℹ dist/social-providers/salesforce.mjs  3.50 kB │ gzip: 1.12 kB
36
+ ℹ dist/social-providers/microsoft-entra-id.mjs  3.46 kB │ gzip: 1.22 kB
37
+ ℹ dist/oauth2/validate-authorization-code.mjs  2.76 kB │ gzip: 1.03 kB
38
+ ℹ dist/social-providers/atlassian.mjs  2.75 kB │ gzip: 0.99 kB
39
+ ℹ dist/social-providers/twitter.mjs  2.74 kB │ gzip: 0.92 kB
40
+ ℹ dist/env/color-depth.mjs  2.72 kB │ gzip: 0.99 kB
41
+ ℹ dist/social-providers/figma.mjs  2.71 kB │ gzip: 0.98 kB
42
+ ℹ dist/social-providers/paybin.mjs  2.65 kB │ gzip: 0.97 kB
43
+ ℹ dist/social-providers/gitlab.mjs  2.64 kB │ gzip: 0.97 kB
44
+ ℹ dist/db/adapter/get-id-field.mjs  2.63 kB │ gzip: 0.98 kB
45
+ ℹ dist/social-providers/reddit.mjs  2.63 kB │ gzip: 1.01 kB
46
+ ℹ dist/social-providers/discord.mjs  2.62 kB │ gzip: 1.04 kB
47
+ ℹ dist/social-providers/github.mjs  2.61 kB │ gzip: 0.91 kB
48
+ ℹ dist/social-providers/vk.mjs  2.59 kB │ gzip: 0.94 kB
49
+ ℹ dist/env/env-impl.mjs  2.58 kB │ gzip: 0.90 kB
50
+ ℹ dist/error/codes.mjs  2.56 kB │ gzip: 1.05 kB
51
+ ℹ dist/env/logger.mjs  2.42 kB │ gzip: 0.94 kB
52
+ ℹ dist/social-providers/linear.mjs  2.42 kB │ gzip: 0.90 kB
53
+ ℹ dist/social-providers/dropbox.mjs  2.38 kB │ gzip: 0.87 kB
54
+ ℹ dist/social-providers/kakao.mjs  2.31 kB │ gzip: 0.84 kB
55
+ ℹ dist/social-providers/notion.mjs  2.28 kB │ gzip: 0.86 kB
56
+ ℹ dist/social-providers/zoom.mjs  2.27 kB │ gzip: 0.89 kB
57
+ ℹ dist/social-providers/tiktok.mjs  2.27 kB │ gzip: 0.88 kB
58
+ ℹ dist/social-providers/slack.mjs  2.25 kB │ gzip: 0.84 kB
59
+ ℹ dist/social-providers/huggingface.mjs  2.22 kB │ gzip: 0.79 kB
60
+ ℹ dist/social-providers/twitch.mjs  2.20 kB │ gzip: 0.78 kB
61
+ ℹ dist/social-providers/linkedin.mjs  2.19 kB │ gzip: 0.80 kB
62
+ ℹ dist/social-providers/polar.mjs  2.19 kB │ gzip: 0.79 kB
63
+ ℹ dist/social-providers/roblox.mjs  2.17 kB │ gzip: 0.87 kB
64
+ ℹ dist/oauth2/refresh-access-token.mjs  2.15 kB │ gzip: 0.85 kB
65
+ ℹ dist/social-providers/spotify.mjs  2.13 kB │ gzip: 0.78 kB
66
+ ℹ dist/social-providers/naver.mjs  2.10 kB │ gzip: 0.79 kB
67
+ ℹ dist/social-providers/kick.mjs  2.08 kB │ gzip: 0.77 kB
68
+ ℹ dist/social-providers/vercel.mjs  1.91 kB │ gzip: 0.74 kB
69
+ ℹ dist/oauth2/create-authorization-url.mjs  1.86 kB │ gzip: 0.73 kB
70
+ ℹ dist/oauth2/client-credentials-token.mjs  1.83 kB │ gzip: 0.77 kB
71
+ ℹ dist/context/request-state.mjs  1.43 kB │ gzip: 0.54 kB
72
+ ℹ dist/context/transaction.mjs  1.43 kB │ gzip: 0.50 kB
73
+ ℹ dist/db/adapter/get-default-field-name.mjs  1.41 kB │ gzip: 0.66 kB
74
+ ℹ dist/db/adapter/get-default-model-name.mjs  1.39 kB │ gzip: 0.65 kB
75
+ ℹ dist/db/adapter/get-field-attributes.mjs  1.26 kB │ gzip: 0.46 kB
76
+ ℹ dist/db/adapter/utils.mjs  1.15 kB │ gzip: 0.46 kB
77
+ ℹ dist/context/endpoint-context.mjs  1.11 kB │ gzip: 0.48 kB
78
+ ℹ dist/db/adapter/get-field-name.mjs  1.07 kB │ gzip: 0.47 kB
79
+ ℹ dist/oauth2/utils.mjs  0.98 kB │ gzip: 0.50 kB
80
+ ℹ dist/db/adapter/get-model-name.mjs  0.89 kB │ gzip: 0.42 kB
81
+ ℹ dist/db/schema/account.mjs  0.52 kB │ gzip: 0.24 kB
82
+ ℹ dist/db/schema/user.mjs  0.33 kB │ gzip: 0.23 kB
83
+ ℹ dist/db/schema/session.mjs  0.33 kB │ gzip: 0.21 kB
84
+ ℹ dist/db/schema/shared.mjs  0.28 kB │ gzip: 0.19 kB
85
+ ℹ dist/db/schema/verification.mjs  0.27 kB │ gzip: 0.19 kB
86
+ ℹ dist/db/schema/rate-limit.mjs  0.21 kB │ gzip: 0.17 kB
87
+ ℹ dist/social-providers/index.d.mts 45.59 kB │ gzip: 3.09 kB
88
+ ℹ dist/db/adapter/index.d.mts 15.17 kB │ gzip: 3.60 kB
89
+ ℹ dist/api/index.d.mts  7.57 kB │ gzip: 1.44 kB
90
+ ℹ dist/index.d.mts  1.20 kB │ gzip: 0.36 kB
91
+ ℹ dist/oauth2/index.d.mts  1.05 kB │ gzip: 0.32 kB
92
+ ℹ dist/db/index.d.mts  1.04 kB │ gzip: 0.34 kB
93
+ ℹ dist/utils/error-codes.d.mts  0.89 kB │ gzip: 0.45 kB
94
+ ℹ dist/context/index.d.mts  0.84 kB │ gzip: 0.24 kB
95
+ ℹ dist/error/index.d.mts  0.73 kB │ gzip: 0.33 kB
96
+ ℹ dist/env/index.d.mts  0.58 kB │ gzip: 0.27 kB
97
+ ℹ dist/utils/deprecate.d.mts  0.30 kB │ gzip: 0.22 kB
98
+ ℹ dist/async_hooks/index.d.mts  0.24 kB │ gzip: 0.16 kB
99
+ ℹ dist/async_hooks/pure.index.d.mts  0.22 kB │ gzip: 0.16 kB
100
+ ℹ dist/utils/string.d.mts  0.14 kB │ gzip: 0.12 kB
101
+ ℹ dist/utils/json.d.mts  0.13 kB │ gzip: 0.13 kB
102
+ ℹ dist/utils/id.d.mts  0.12 kB │ gzip: 0.12 kB
103
+ ℹ dist/types/init-options.d.mts 38.19 kB │ gzip: 8.46 kB
104
+ ℹ dist/types/context.d.mts  9.90 kB │ gzip: 2.83 kB
105
+ ℹ dist/social-providers/zoom.d.mts  6.71 kB │ gzip: 2.29 kB
106
+ ℹ dist/oauth2/oauth-provider.d.mts  5.92 kB │ gzip: 1.67 kB
107
+ ℹ dist/social-providers/microsoft-entra-id.d.mts  5.59 kB │ gzip: 1.96 kB
108
+ ℹ dist/error/codes.d.mts  5.49 kB │ gzip: 1.29 kB
109
+ ℹ dist/db/adapter/types.d.mts  5.42 kB │ gzip: 1.57 kB
110
+ ℹ dist/social-providers/tiktok.d.mts  5.34 kB │ gzip: 1.34 kB
111
+ ℹ dist/social-providers/kakao.d.mts  4.92 kB │ gzip: 1.27 kB
112
+ ℹ dist/social-providers/twitter.d.mts  4.77 kB │ gzip: 1.43 kB
113
+ ℹ dist/db/type.d.mts  3.89 kB │ gzip: 1.28 kB
114
+ ℹ dist/social-providers/apple.d.mts  3.85 kB │ gzip: 1.50 kB
115
+ ℹ dist/types/plugin-client.d.mts  3.76 kB │ gzip: 1.45 kB
116
+ ℹ dist/social-providers/discord.d.mts  3.72 kB │ gzip: 1.24 kB
117
+ ℹ dist/types/plugin.d.mts  3.66 kB │ gzip: 1.33 kB
118
+ ℹ dist/social-providers/paypal.d.mts  3.35 kB │ gzip: 0.99 kB
119
+ ℹ dist/social-providers/gitlab.d.mts  2.95 kB │ gzip: 0.92 kB
120
+ ℹ dist/social-providers/line.d.mts  2.61 kB │ gzip: 0.80 kB
121
+ ℹ dist/social-providers/google.d.mts  2.48 kB │ gzip: 0.87 kB
122
+ ℹ dist/social-providers/naver.d.mts  2.42 kB │ gzip: 0.77 kB
123
+ ℹ dist/social-providers/slack.d.mts  2.39 kB │ gzip: 0.72 kB
124
+ ℹ dist/social-providers/github.d.mts  2.38 kB │ gzip: 0.79 kB
125
+ ℹ dist/social-providers/cognito.d.mts  2.33 kB │ gzip: 0.82 kB
126
+ ℹ dist/social-providers/salesforce.d.mts  2.15 kB │ gzip: 0.81 kB
127
+ ℹ dist/social-providers/huggingface.d.mts  2.13 kB │ gzip: 0.72 kB
128
+ ℹ dist/social-providers/polar.d.mts  2.04 kB │ gzip: 0.66 kB
129
+ ℹ dist/social-providers/roblox.d.mts  2.02 kB │ gzip: 0.73 kB
130
+ ℹ dist/social-providers/facebook.d.mts  1.95 kB │ gzip: 0.74 kB
131
+ ℹ dist/env/logger.d.mts  1.86 kB │ gzip: 0.67 kB
132
+ ℹ dist/social-providers/twitch.d.mts  1.84 kB │ gzip: 0.69 kB
133
+ ℹ dist/social-providers/paybin.d.mts  1.80 kB │ gzip: 0.66 kB
134
+ ℹ dist/social-providers/atlassian.d.mts  1.78 kB │ gzip: 0.62 kB
135
+ ℹ dist/oauth2/verify.d.mts  1.77 kB │ gzip: 0.66 kB
136
+ ℹ dist/social-providers/dropbox.d.mts  1.72 kB │ gzip: 0.64 kB
137
+ ℹ dist/social-providers/vk.d.mts  1.67 kB │ gzip: 0.62 kB
138
+ ℹ dist/social-providers/kick.d.mts  1.62 kB │ gzip: 0.59 kB
139
+ ℹ dist/social-providers/linkedin.d.mts  1.61 kB │ gzip: 0.60 kB
140
+ ℹ dist/social-providers/linear.d.mts  1.60 kB │ gzip: 0.59 kB
141
+ ℹ dist/oauth2/validate-authorization-code.d.mts  1.57 kB │ gzip: 0.49 kB
142
+ ℹ dist/social-providers/notion.d.mts  1.56 kB │ gzip: 0.59 kB
143
+ ℹ dist/social-providers/reddit.d.mts  1.54 kB │ gzip: 0.57 kB
144
+ ℹ dist/social-providers/spotify.d.mts  1.51 kB │ gzip: 0.56 kB
145
+ ℹ dist/social-providers/vercel.d.mts  1.47 kB │ gzip: 0.55 kB
146
+ ℹ dist/social-providers/figma.d.mts  1.47 kB │ gzip: 0.55 kB
147
+ ℹ dist/context/request-state.d.mts  1.35 kB │ gzip: 0.59 kB
148
+ ℹ dist/db/adapter/factory.d.mts  1.30 kB │ gzip: 0.45 kB
149
+ ℹ dist/env/env-impl.d.mts  1.26 kB │ gzip: 0.47 kB
150
+ ℹ dist/oauth2/create-authorization-url.d.mts  1.05 kB │ gzip: 0.41 kB
151
+ ℹ dist/db/schema/account.d.mts  1.05 kB │ gzip: 0.43 kB
152
+ ℹ dist/db/adapter/get-id-field.d.mts  1.04 kB │ gzip: 0.47 kB
153
+ ℹ dist/oauth2/refresh-access-token.d.mts  1.01 kB │ gzip: 0.41 kB
154
+ ℹ dist/context/endpoint-context.d.mts  0.99 kB │ gzip: 0.43 kB
155
+ ℹ dist/oauth2/client-credentials-token.d.mts  0.91 kB │ gzip: 0.36 kB
156
+ ℹ dist/context/transaction.d.mts  0.88 kB │ gzip: 0.39 kB
157
+ ℹ dist/types/index.d.mts  0.77 kB │ gzip: 0.33 kB
158
+ ℹ dist/db/schema/session.d.mts  0.75 kB │ gzip: 0.40 kB
159
+ ℹ dist/db/adapter/get-field-attributes.d.mts  0.72 kB │ gzip: 0.34 kB
160
+ ℹ dist/db/schema/user.d.mts  0.71 kB │ gzip: 0.40 kB
161
+ ℹ dist/db/schema/verification.d.mts  0.66 kB │ gzip: 0.36 kB
162
+ ℹ dist/types/helper.d.mts  0.45 kB │ gzip: 0.27 kB
163
+ ℹ dist/types/cookie.d.mts  0.43 kB │ gzip: 0.19 kB
164
+ ℹ dist/db/adapter/get-default-field-name.d.mts  0.38 kB │ gzip: 0.24 kB
165
+ ℹ dist/db/schema/rate-limit.d.mts  0.37 kB │ gzip: 0.25 kB
166
+ ℹ dist/db/adapter/get-field-name.d.mts  0.36 kB │ gzip: 0.23 kB
167
+ ℹ dist/db/adapter/utils.d.mts  0.33 kB │ gzip: 0.23 kB
168
+ ℹ dist/db/adapter/get-default-model-name.d.mts  0.32 kB │ gzip: 0.22 kB
169
+ ℹ dist/db/plugin.d.mts  0.32 kB │ gzip: 0.22 kB
170
+ ℹ dist/oauth2/utils.d.mts  0.30 kB │ gzip: 0.20 kB
171
+ ℹ dist/db/adapter/get-model-name.d.mts  0.30 kB │ gzip: 0.21 kB
172
+ ℹ dist/db/get-tables.d.mts  0.29 kB │ gzip: 0.18 kB
173
+ ℹ dist/db/schema/shared.d.mts  0.25 kB │ gzip: 0.18 kB
174
+ ℹ dist/env/color-depth.d.mts  0.12 kB │ gzip: 0.11 kB
175
+ ℹ 165 files, total: 443.38 kB
176
+ ✔ Build complete in 5199ms
@@ -1,2 +1,189 @@
1
- import { a as optionsMiddleware, i as createAuthMiddleware, n as AuthMiddleware, r as createAuthEndpoint, t as AuthEndpoint } from "../index-CGr4Qrv8.mjs";
1
+ import { BetterAuthDBSchema, ModelNames, SecondaryStorage } from "../db/type.mjs";
2
+ import { Session } from "../db/schema/session.mjs";
3
+ import { User } from "../db/schema/user.mjs";
4
+ import "../db/index.mjs";
5
+ import { DBAdapter } from "../db/adapter/index.mjs";
6
+ import { createLogger } from "../env/logger.mjs";
7
+ import { OAuthProvider } from "../oauth2/oauth-provider.mjs";
8
+ import "../oauth2/index.mjs";
9
+ import { BetterAuthCookies } from "../types/cookie.mjs";
10
+ import { BetterAuthOptions, BetterAuthRateLimitOptions } from "../types/init-options.mjs";
11
+ import { AuthContext, GenericEndpointContext, InternalAdapter, PluginContext } from "../types/context.mjs";
12
+ import "../types/index.mjs";
13
+ import "../index.mjs";
14
+ import * as better_call0 from "better-call";
15
+ import { EndpointContext, EndpointOptions, StrictEndpoint } from "better-call";
16
+
17
+ //#region src/api/index.d.ts
18
+ declare const optionsMiddleware: <InputCtx extends better_call0.MiddlewareInputContext<better_call0.MiddlewareOptions>>(inputContext: InputCtx) => Promise<AuthContext>;
19
+ declare const createAuthMiddleware: {
20
+ <Options extends better_call0.MiddlewareOptions, R>(options: Options, handler: (ctx: better_call0.MiddlewareContext<Options, {
21
+ returned?: unknown | undefined;
22
+ responseHeaders?: Headers | undefined;
23
+ } & PluginContext & {
24
+ options: BetterAuthOptions;
25
+ appName: string;
26
+ baseURL: string;
27
+ trustedOrigins: string[];
28
+ isTrustedOrigin: (url: string, settings?: {
29
+ allowRelativePaths: boolean;
30
+ }) => boolean;
31
+ oauthConfig: {
32
+ skipStateCookieCheck?: boolean | undefined;
33
+ storeStateStrategy: "database" | "cookie";
34
+ };
35
+ newSession: {
36
+ session: Session & Record<string, any>;
37
+ user: User & Record<string, any>;
38
+ } | null;
39
+ session: {
40
+ session: Session & Record<string, any>;
41
+ user: User & Record<string, any>;
42
+ } | null;
43
+ setNewSession: (session: {
44
+ session: Session & Record<string, any>;
45
+ user: User & Record<string, any>;
46
+ } | null) => void;
47
+ socialProviders: OAuthProvider[];
48
+ authCookies: BetterAuthCookies;
49
+ logger: ReturnType<typeof createLogger>;
50
+ rateLimit: {
51
+ enabled: boolean;
52
+ window: number;
53
+ max: number;
54
+ storage: "memory" | "database" | "secondary-storage";
55
+ } & BetterAuthRateLimitOptions;
56
+ adapter: DBAdapter<BetterAuthOptions>;
57
+ internalAdapter: InternalAdapter<BetterAuthOptions>;
58
+ createAuthCookie: (cookieName: string, overrideAttributes?: Partial<better_call0.CookieOptions> | undefined) => {
59
+ name: string;
60
+ attributes: better_call0.CookieOptions;
61
+ };
62
+ secret: string;
63
+ sessionConfig: {
64
+ updateAge: number;
65
+ expiresIn: number;
66
+ freshAge: number;
67
+ cookieRefreshCache: false | {
68
+ enabled: true;
69
+ updateAge: number;
70
+ };
71
+ };
72
+ generateId: (options: {
73
+ model: ModelNames;
74
+ size?: number | undefined;
75
+ }) => string | false;
76
+ secondaryStorage: SecondaryStorage | undefined;
77
+ password: {
78
+ hash: (password: string) => Promise<string>;
79
+ verify: (data: {
80
+ password: string;
81
+ hash: string;
82
+ }) => Promise<boolean>;
83
+ config: {
84
+ minPasswordLength: number;
85
+ maxPasswordLength: number;
86
+ };
87
+ checkPassword: (userId: string, ctx: GenericEndpointContext<BetterAuthOptions>) => Promise<boolean>;
88
+ };
89
+ tables: BetterAuthDBSchema;
90
+ runMigrations: () => Promise<void>;
91
+ publishTelemetry: (event: {
92
+ type: string;
93
+ anonymousId?: string | undefined;
94
+ payload: Record<string, any>;
95
+ }) => Promise<void>;
96
+ skipOriginCheck: boolean;
97
+ skipCSRFCheck: boolean;
98
+ runInBackground: (promise: Promise<void>) => void;
99
+ runInBackgroundOrAwait: (promise: Promise<unknown> | Promise<void> | void | unknown) => Promise<unknown>;
100
+ }>) => Promise<R>): (inputContext: better_call0.MiddlewareInputContext<Options>) => Promise<R>;
101
+ <Options extends better_call0.MiddlewareOptions, R_1>(handler: (ctx: better_call0.MiddlewareContext<Options, {
102
+ returned?: unknown | undefined;
103
+ responseHeaders?: Headers | undefined;
104
+ } & PluginContext & {
105
+ options: BetterAuthOptions;
106
+ appName: string;
107
+ baseURL: string;
108
+ trustedOrigins: string[];
109
+ isTrustedOrigin: (url: string, settings?: {
110
+ allowRelativePaths: boolean;
111
+ }) => boolean;
112
+ oauthConfig: {
113
+ skipStateCookieCheck?: boolean | undefined;
114
+ storeStateStrategy: "database" | "cookie";
115
+ };
116
+ newSession: {
117
+ session: Session & Record<string, any>;
118
+ user: User & Record<string, any>;
119
+ } | null;
120
+ session: {
121
+ session: Session & Record<string, any>;
122
+ user: User & Record<string, any>;
123
+ } | null;
124
+ setNewSession: (session: {
125
+ session: Session & Record<string, any>;
126
+ user: User & Record<string, any>;
127
+ } | null) => void;
128
+ socialProviders: OAuthProvider[];
129
+ authCookies: BetterAuthCookies;
130
+ logger: ReturnType<typeof createLogger>;
131
+ rateLimit: {
132
+ enabled: boolean;
133
+ window: number;
134
+ max: number;
135
+ storage: "memory" | "database" | "secondary-storage";
136
+ } & BetterAuthRateLimitOptions;
137
+ adapter: DBAdapter<BetterAuthOptions>;
138
+ internalAdapter: InternalAdapter<BetterAuthOptions>;
139
+ createAuthCookie: (cookieName: string, overrideAttributes?: Partial<better_call0.CookieOptions> | undefined) => {
140
+ name: string;
141
+ attributes: better_call0.CookieOptions;
142
+ };
143
+ secret: string;
144
+ sessionConfig: {
145
+ updateAge: number;
146
+ expiresIn: number;
147
+ freshAge: number;
148
+ cookieRefreshCache: false | {
149
+ enabled: true;
150
+ updateAge: number;
151
+ };
152
+ };
153
+ generateId: (options: {
154
+ model: ModelNames;
155
+ size?: number | undefined;
156
+ }) => string | false;
157
+ secondaryStorage: SecondaryStorage | undefined;
158
+ password: {
159
+ hash: (password: string) => Promise<string>;
160
+ verify: (data: {
161
+ password: string;
162
+ hash: string;
163
+ }) => Promise<boolean>;
164
+ config: {
165
+ minPasswordLength: number;
166
+ maxPasswordLength: number;
167
+ };
168
+ checkPassword: (userId: string, ctx: GenericEndpointContext<BetterAuthOptions>) => Promise<boolean>;
169
+ };
170
+ tables: BetterAuthDBSchema;
171
+ runMigrations: () => Promise<void>;
172
+ publishTelemetry: (event: {
173
+ type: string;
174
+ anonymousId?: string | undefined;
175
+ payload: Record<string, any>;
176
+ }) => Promise<void>;
177
+ skipOriginCheck: boolean;
178
+ skipCSRFCheck: boolean;
179
+ runInBackground: (promise: Promise<void>) => void;
180
+ runInBackgroundOrAwait: (promise: Promise<unknown> | Promise<void> | void | unknown) => Promise<unknown>;
181
+ }>) => Promise<R_1>): (inputContext: better_call0.MiddlewareInputContext<Options>) => Promise<R_1>;
182
+ };
183
+ type EndpointHandler<Path extends string, Options extends EndpointOptions, R> = (context: EndpointContext<Path, Options, AuthContext>) => Promise<R>;
184
+ declare function createAuthEndpoint<Path extends string, Options extends EndpointOptions, R>(path: Path, options: Options, handler: EndpointHandler<Path, Options, R>): StrictEndpoint<Path, Options, R>;
185
+ declare function createAuthEndpoint<Path extends string, Options extends EndpointOptions, R>(options: Options, handler: EndpointHandler<Path, Options, R>): StrictEndpoint<Path, Options, R>;
186
+ type AuthEndpoint<Path extends string, Opts extends EndpointOptions, R> = ReturnType<typeof createAuthEndpoint<Path, Opts, R>>;
187
+ type AuthMiddleware = ReturnType<typeof createAuthMiddleware>;
188
+ //#endregion
2
189
  export { AuthEndpoint, AuthMiddleware, createAuthEndpoint, createAuthMiddleware, optionsMiddleware };
@@ -1,4 +1,5 @@
1
- import { f as runWithEndpointContext } from "../context-BBNwughv.mjs";
1
+ import { runWithEndpointContext } from "../context/endpoint-context.mjs";
2
+ import "../context/index.mjs";
2
3
  import { createEndpoint, createMiddleware } from "better-call";
3
4
 
4
5
  //#region src/api/index.ts
@@ -0,0 +1,19 @@
1
+ import { AuthContext } from "../types/context.mjs";
2
+ import "../types/index.mjs";
3
+ import { EndpointContext, InputContext } from "better-call";
4
+ import { AsyncLocalStorage } from "@better-auth/core/async_hooks";
5
+
6
+ //#region src/context/endpoint-context.d.ts
7
+ type AuthEndpointContext = Partial<InputContext<string, any> & EndpointContext<string, any>> & {
8
+ context: AuthContext;
9
+ };
10
+ /**
11
+ * This is for internal use only. Most users should use `getCurrentAuthContext` instead.
12
+ *
13
+ * It is exposed for advanced use cases where you need direct access to the AsyncLocalStorage instance.
14
+ */
15
+ declare function getCurrentAuthContextAsyncLocalStorage(): Promise<AsyncLocalStorage<AuthEndpointContext>>;
16
+ declare function getCurrentAuthContext(): Promise<AuthEndpointContext>;
17
+ declare function runWithEndpointContext<T>(context: AuthEndpointContext, fn: () => T): Promise<T>;
18
+ //#endregion
19
+ export { AuthEndpointContext, getCurrentAuthContext, getCurrentAuthContextAsyncLocalStorage, runWithEndpointContext };
@@ -0,0 +1,27 @@
1
+ import { getAsyncLocalStorage } from "@better-auth/core/async_hooks";
2
+
3
+ //#region src/context/endpoint-context.ts
4
+ let currentContextAsyncStorage = null;
5
+ const ensureAsyncStorage = async () => {
6
+ if (!currentContextAsyncStorage) currentContextAsyncStorage = new (await (getAsyncLocalStorage()))();
7
+ return currentContextAsyncStorage;
8
+ };
9
+ /**
10
+ * This is for internal use only. Most users should use `getCurrentAuthContext` instead.
11
+ *
12
+ * It is exposed for advanced use cases where you need direct access to the AsyncLocalStorage instance.
13
+ */
14
+ async function getCurrentAuthContextAsyncLocalStorage() {
15
+ return ensureAsyncStorage();
16
+ }
17
+ async function getCurrentAuthContext() {
18
+ const context = (await ensureAsyncStorage()).getStore();
19
+ if (!context) throw new Error("No auth context found. Please make sure you are calling this function within a `runWithEndpointContext` callback.");
20
+ return context;
21
+ }
22
+ async function runWithEndpointContext(context, fn) {
23
+ return (await ensureAsyncStorage()).run(context, fn);
24
+ }
25
+
26
+ //#endregion
27
+ export { getCurrentAuthContext, getCurrentAuthContextAsyncLocalStorage, runWithEndpointContext };
@@ -1,53 +1,4 @@
1
- import { Qn as DBAdapter, f as AuthContext, rr as DBTransactionAdapter } from "../index-CGr4Qrv8.mjs";
2
- import { AsyncLocalStorage } from "@better-auth/core/async_hooks";
3
- import { EndpointContext, InputContext } from "better-call";
4
-
5
- //#region src/context/endpoint-context.d.ts
6
- type AuthEndpointContext = Partial<InputContext<string, any> & EndpointContext<string, any>> & {
7
- context: AuthContext;
8
- };
9
- /**
10
- * This is for internal use only. Most users should use `getCurrentAuthContext` instead.
11
- *
12
- * It is exposed for advanced use cases where you need direct access to the AsyncLocalStorage instance.
13
- */
14
- declare function getCurrentAuthContextAsyncLocalStorage(): Promise<AsyncLocalStorage<AuthEndpointContext>>;
15
- declare function getCurrentAuthContext(): Promise<AuthEndpointContext>;
16
- declare function runWithEndpointContext<T>(context: AuthEndpointContext, fn: () => T): Promise<T>;
17
- //#endregion
18
- //#region src/context/request-state.d.ts
19
- type RequestStateWeakMap = WeakMap<object, any>;
20
- declare function getRequestStateAsyncLocalStorage(): Promise<AsyncLocalStorage<RequestStateWeakMap>>;
21
- declare function hasRequestState(): Promise<boolean>;
22
- declare function getCurrentRequestState(): Promise<RequestStateWeakMap>;
23
- declare function runWithRequestState<T>(store: RequestStateWeakMap, fn: () => T): Promise<T>;
24
- interface RequestState<T> {
25
- get(): Promise<T>;
26
- set(value: T): Promise<void>;
27
- readonly ref: Readonly<object>;
28
- }
29
- /**
30
- * Defines a request-scoped state with lazy initialization.
31
- *
32
- * @param initFn - A function that initializes the state. It is called the first time `get()` is invoked within each request context, and only once per context.
33
- * @returns A RequestState object with `get` and `set` methods, and a unique `ref` for debugging.
34
- *
35
- * @example
36
- * const userState = defineRequestState(() => ({ id: '', name: '' }));
37
- * // Later, within a request context:
38
- * const user = await userState.get();
39
- */
40
- declare function defineRequestState<T>(initFn: () => T | Promise<T>): RequestState<T>;
41
- //#endregion
42
- //#region src/context/transaction.d.ts
43
- /**
44
- * This is for internal use only. Most users should use `getCurrentAdapter` instead.
45
- *
46
- * It is exposed for advanced use cases where you need direct access to the AsyncLocalStorage instance.
47
- */
48
- declare const getCurrentDBAdapterAsyncLocalStorage: () => Promise<AsyncLocalStorage<DBTransactionAdapter>>;
49
- declare const getCurrentAdapter: (fallback: DBTransactionAdapter) => Promise<DBTransactionAdapter>;
50
- declare const runWithAdapter: <R>(adapter: DBAdapter, fn: () => R) => Promise<R>;
51
- declare const runWithTransaction: <R>(adapter: DBAdapter, fn: () => R) => Promise<R>;
52
- //#endregion
1
+ import { AuthEndpointContext, getCurrentAuthContext, getCurrentAuthContextAsyncLocalStorage, runWithEndpointContext } from "./endpoint-context.mjs";
2
+ import { RequestState, RequestStateWeakMap, defineRequestState, getCurrentRequestState, getRequestStateAsyncLocalStorage, hasRequestState, runWithRequestState } from "./request-state.mjs";
3
+ import { getCurrentAdapter, getCurrentDBAdapterAsyncLocalStorage, runWithAdapter, runWithTransaction } from "./transaction.mjs";
53
4
  export { type AuthEndpointContext, type RequestState, type RequestStateWeakMap, defineRequestState, getCurrentAdapter, getCurrentAuthContext, getCurrentAuthContextAsyncLocalStorage, getCurrentDBAdapterAsyncLocalStorage, getCurrentRequestState, getRequestStateAsyncLocalStorage, hasRequestState, runWithAdapter, runWithEndpointContext, runWithRequestState, runWithTransaction };
@@ -1,3 +1,24 @@
1
- import { a as defineRequestState, c as hasRequestState, d as getCurrentAuthContextAsyncLocalStorage, f as runWithEndpointContext, i as runWithTransaction, l as runWithRequestState, n as getCurrentDBAdapterAsyncLocalStorage, o as getCurrentRequestState, r as runWithAdapter, s as getRequestStateAsyncLocalStorage, t as getCurrentAdapter, u as getCurrentAuthContext } from "../context-BBNwughv.mjs";
1
+ import { getCurrentAuthContext, getCurrentAuthContextAsyncLocalStorage, runWithEndpointContext } from "./endpoint-context.mjs";
2
+ import { defineRequestState, getCurrentRequestState, getRequestStateAsyncLocalStorage, hasRequestState, runWithRequestState } from "./request-state.mjs";
3
+ import { getCurrentAdapter, getCurrentDBAdapterAsyncLocalStorage, runWithAdapter, runWithTransaction } from "./transaction.mjs";
2
4
 
5
+ //#region src/context/index.ts
6
+ const glo = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {};
7
+ const importIdentifier = "__ $BETTER_AUTH$ __";
8
+ if (glo[importIdentifier] === true)
9
+ /**
10
+ * Dear reader of this message. Please take this seriously.
11
+ *
12
+ * If you see this message, make sure that you only import one version of Better Auth. In many cases,
13
+ * your package manager installs two versions of Better Auth that are used by different packages within your project.
14
+ *
15
+ * This often leads to issues that are hard to debug. We often need to ensure async local storage instance,
16
+ * If you imported different versions of Better Auth, it is impossible for us to
17
+ * do status synchronization per request anymore - which might break the states.
18
+ *
19
+ */
20
+ console.error("Better Auth was already imported. This breaks async local storage instance and will lead to issues!");
21
+ glo[importIdentifier] = true;
22
+
23
+ //#endregion
3
24
  export { defineRequestState, getCurrentAdapter, getCurrentAuthContext, getCurrentAuthContextAsyncLocalStorage, getCurrentDBAdapterAsyncLocalStorage, getCurrentRequestState, getRequestStateAsyncLocalStorage, hasRequestState, runWithAdapter, runWithEndpointContext, runWithRequestState, runWithTransaction };
@@ -0,0 +1,27 @@
1
+ import { AsyncLocalStorage } from "@better-auth/core/async_hooks";
2
+
3
+ //#region src/context/request-state.d.ts
4
+ type RequestStateWeakMap = WeakMap<object, any>;
5
+ declare function getRequestStateAsyncLocalStorage(): Promise<AsyncLocalStorage<RequestStateWeakMap>>;
6
+ declare function hasRequestState(): Promise<boolean>;
7
+ declare function getCurrentRequestState(): Promise<RequestStateWeakMap>;
8
+ declare function runWithRequestState<T>(store: RequestStateWeakMap, fn: () => T): Promise<T>;
9
+ interface RequestState<T> {
10
+ get(): Promise<T>;
11
+ set(value: T): Promise<void>;
12
+ readonly ref: Readonly<object>;
13
+ }
14
+ /**
15
+ * Defines a request-scoped state with lazy initialization.
16
+ *
17
+ * @param initFn - A function that initializes the state. It is called the first time `get()` is invoked within each request context, and only once per context.
18
+ * @returns A RequestState object with `get` and `set` methods, and a unique `ref` for debugging.
19
+ *
20
+ * @example
21
+ * const userState = defineRequestState(() => ({ id: '', name: '' }));
22
+ * // Later, within a request context:
23
+ * const user = await userState.get();
24
+ */
25
+ declare function defineRequestState<T>(initFn: () => T | Promise<T>): RequestState<T>;
26
+ //#endregion
27
+ export { RequestState, RequestStateWeakMap, defineRequestState, getCurrentRequestState, getRequestStateAsyncLocalStorage, hasRequestState, runWithRequestState };