better-auth 1.4.0-beta.1 → 1.4.0-beta.2

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 (250) hide show
  1. package/dist/adapters/drizzle-adapter/index.d.cts +1 -1
  2. package/dist/adapters/drizzle-adapter/index.d.mts +1 -1
  3. package/dist/adapters/drizzle-adapter/index.d.ts +1 -1
  4. package/dist/adapters/index.d.cts +2 -2
  5. package/dist/adapters/index.d.mts +2 -2
  6. package/dist/adapters/index.d.ts +2 -2
  7. package/dist/adapters/kysely-adapter/index.d.cts +1 -1
  8. package/dist/adapters/kysely-adapter/index.d.mts +1 -1
  9. package/dist/adapters/kysely-adapter/index.d.ts +1 -1
  10. package/dist/adapters/memory-adapter/index.d.cts +1 -1
  11. package/dist/adapters/memory-adapter/index.d.mts +1 -1
  12. package/dist/adapters/memory-adapter/index.d.ts +1 -1
  13. package/dist/adapters/mongodb-adapter/index.d.cts +1 -1
  14. package/dist/adapters/mongodb-adapter/index.d.mts +1 -1
  15. package/dist/adapters/mongodb-adapter/index.d.ts +1 -1
  16. package/dist/adapters/prisma-adapter/index.d.cts +1 -1
  17. package/dist/adapters/prisma-adapter/index.d.mts +1 -1
  18. package/dist/adapters/prisma-adapter/index.d.ts +1 -1
  19. package/dist/adapters/test.d.cts +1 -1
  20. package/dist/adapters/test.d.mts +1 -1
  21. package/dist/adapters/test.d.ts +1 -1
  22. package/dist/api/index.cjs +1 -1
  23. package/dist/api/index.d.cts +1 -1
  24. package/dist/api/index.d.mts +1 -1
  25. package/dist/api/index.d.ts +1 -1
  26. package/dist/api/index.mjs +2 -2
  27. package/dist/client/index.cjs +2 -2
  28. package/dist/client/index.d.cts +3 -3
  29. package/dist/client/index.d.mts +3 -3
  30. package/dist/client/index.d.ts +3 -3
  31. package/dist/client/index.mjs +2 -2
  32. package/dist/client/plugins/index.cjs +1 -4
  33. package/dist/client/plugins/index.d.cts +3 -5
  34. package/dist/client/plugins/index.d.mts +3 -5
  35. package/dist/client/plugins/index.d.ts +3 -5
  36. package/dist/client/plugins/index.mjs +1 -4
  37. package/dist/client/react/index.cjs +1 -1
  38. package/dist/client/react/index.d.cts +5 -5
  39. package/dist/client/react/index.d.mts +5 -5
  40. package/dist/client/react/index.d.ts +5 -5
  41. package/dist/client/react/index.mjs +1 -1
  42. package/dist/client/solid/index.cjs +1 -1
  43. package/dist/client/solid/index.d.cts +5 -5
  44. package/dist/client/solid/index.d.mts +5 -5
  45. package/dist/client/solid/index.d.ts +5 -5
  46. package/dist/client/solid/index.mjs +1 -1
  47. package/dist/client/svelte/index.cjs +1 -1
  48. package/dist/client/svelte/index.d.cts +5 -5
  49. package/dist/client/svelte/index.d.mts +5 -5
  50. package/dist/client/svelte/index.d.ts +5 -5
  51. package/dist/client/svelte/index.mjs +1 -1
  52. package/dist/client/vue/index.cjs +1 -1
  53. package/dist/client/vue/index.d.cts +5 -5
  54. package/dist/client/vue/index.d.mts +5 -5
  55. package/dist/client/vue/index.d.ts +5 -5
  56. package/dist/client/vue/index.mjs +1 -1
  57. package/dist/cookies/index.d.cts +1 -1
  58. package/dist/cookies/index.d.mts +1 -1
  59. package/dist/cookies/index.d.ts +1 -1
  60. package/dist/db/index.cjs +1 -1
  61. package/dist/db/index.d.cts +2 -2
  62. package/dist/db/index.d.mts +2 -2
  63. package/dist/db/index.d.ts +2 -2
  64. package/dist/db/index.mjs +1 -1
  65. package/dist/index.cjs +3 -3
  66. package/dist/index.d.cts +4 -4
  67. package/dist/index.d.mts +4 -4
  68. package/dist/index.d.ts +4 -4
  69. package/dist/index.mjs +3 -3
  70. package/dist/integrations/next-js.cjs +2 -2
  71. package/dist/integrations/next-js.d.cts +1 -1
  72. package/dist/integrations/next-js.d.mts +1 -1
  73. package/dist/integrations/next-js.d.ts +1 -1
  74. package/dist/integrations/next-js.mjs +2 -2
  75. package/dist/integrations/node.d.cts +1 -1
  76. package/dist/integrations/node.d.mts +1 -1
  77. package/dist/integrations/node.d.ts +1 -1
  78. package/dist/integrations/react-start.cjs +2 -2
  79. package/dist/integrations/react-start.d.cts +1 -1
  80. package/dist/integrations/react-start.d.mts +1 -1
  81. package/dist/integrations/react-start.d.ts +1 -1
  82. package/dist/integrations/react-start.mjs +2 -2
  83. package/dist/integrations/svelte-kit.cjs +1 -1
  84. package/dist/integrations/svelte-kit.d.cts +1 -1
  85. package/dist/integrations/svelte-kit.d.mts +1 -1
  86. package/dist/integrations/svelte-kit.d.ts +1 -1
  87. package/dist/integrations/svelte-kit.mjs +1 -1
  88. package/dist/oauth2/index.cjs +1 -1
  89. package/dist/oauth2/index.d.cts +2 -2
  90. package/dist/oauth2/index.d.mts +2 -2
  91. package/dist/oauth2/index.d.ts +2 -2
  92. package/dist/oauth2/index.mjs +1 -1
  93. package/dist/plugins/admin/index.cjs +2 -2
  94. package/dist/plugins/admin/index.d.cts +1 -1
  95. package/dist/plugins/admin/index.d.mts +1 -1
  96. package/dist/plugins/admin/index.d.ts +1 -1
  97. package/dist/plugins/admin/index.mjs +2 -2
  98. package/dist/plugins/anonymous/index.cjs +1 -1
  99. package/dist/plugins/anonymous/index.d.cts +1 -1
  100. package/dist/plugins/anonymous/index.d.mts +1 -1
  101. package/dist/plugins/anonymous/index.d.ts +1 -1
  102. package/dist/plugins/anonymous/index.mjs +1 -1
  103. package/dist/plugins/bearer/index.cjs +1 -1
  104. package/dist/plugins/bearer/index.d.cts +1 -1
  105. package/dist/plugins/bearer/index.d.mts +1 -1
  106. package/dist/plugins/bearer/index.d.ts +1 -1
  107. package/dist/plugins/bearer/index.mjs +1 -1
  108. package/dist/plugins/captcha/index.d.cts +1 -1
  109. package/dist/plugins/captcha/index.d.mts +1 -1
  110. package/dist/plugins/captcha/index.d.ts +1 -1
  111. package/dist/plugins/custom-session/index.cjs +1 -1
  112. package/dist/plugins/custom-session/index.d.cts +1 -1
  113. package/dist/plugins/custom-session/index.d.mts +1 -1
  114. package/dist/plugins/custom-session/index.d.ts +1 -1
  115. package/dist/plugins/custom-session/index.mjs +1 -1
  116. package/dist/plugins/device-authorization/index.d.cts +1 -1
  117. package/dist/plugins/device-authorization/index.d.mts +1 -1
  118. package/dist/plugins/device-authorization/index.d.ts +1 -1
  119. package/dist/plugins/email-otp/index.cjs +1 -1
  120. package/dist/plugins/email-otp/index.d.cts +1 -1
  121. package/dist/plugins/email-otp/index.d.mts +1 -1
  122. package/dist/plugins/email-otp/index.d.ts +1 -1
  123. package/dist/plugins/email-otp/index.mjs +1 -1
  124. package/dist/plugins/generic-oauth/index.cjs +1 -1
  125. package/dist/plugins/generic-oauth/index.d.cts +1 -1
  126. package/dist/plugins/generic-oauth/index.d.mts +1 -1
  127. package/dist/plugins/generic-oauth/index.d.ts +1 -1
  128. package/dist/plugins/generic-oauth/index.mjs +1 -1
  129. package/dist/plugins/haveibeenpwned/index.cjs +1 -1
  130. package/dist/plugins/haveibeenpwned/index.d.cts +1 -1
  131. package/dist/plugins/haveibeenpwned/index.d.mts +1 -1
  132. package/dist/plugins/haveibeenpwned/index.d.ts +1 -1
  133. package/dist/plugins/haveibeenpwned/index.mjs +1 -1
  134. package/dist/plugins/index.cjs +7 -6
  135. package/dist/plugins/index.d.cts +3 -3
  136. package/dist/plugins/index.d.mts +3 -3
  137. package/dist/plugins/index.d.ts +3 -3
  138. package/dist/plugins/index.mjs +8 -7
  139. package/dist/plugins/jwt/index.cjs +1 -1
  140. package/dist/plugins/jwt/index.d.cts +1 -1
  141. package/dist/plugins/jwt/index.d.mts +1 -1
  142. package/dist/plugins/jwt/index.d.ts +1 -1
  143. package/dist/plugins/jwt/index.mjs +1 -1
  144. package/dist/plugins/magic-link/index.cjs +1 -1
  145. package/dist/plugins/magic-link/index.mjs +1 -1
  146. package/dist/plugins/multi-session/index.cjs +1 -1
  147. package/dist/plugins/multi-session/index.d.cts +1 -1
  148. package/dist/plugins/multi-session/index.d.mts +1 -1
  149. package/dist/plugins/multi-session/index.d.ts +1 -1
  150. package/dist/plugins/multi-session/index.mjs +1 -1
  151. package/dist/plugins/oauth-proxy/index.cjs +1 -1
  152. package/dist/plugins/oauth-proxy/index.d.cts +1 -1
  153. package/dist/plugins/oauth-proxy/index.d.mts +1 -1
  154. package/dist/plugins/oauth-proxy/index.d.ts +1 -1
  155. package/dist/plugins/oauth-proxy/index.mjs +1 -1
  156. package/dist/plugins/oidc-provider/index.cjs +2 -2
  157. package/dist/plugins/oidc-provider/index.d.cts +1 -1
  158. package/dist/plugins/oidc-provider/index.d.mts +1 -1
  159. package/dist/plugins/oidc-provider/index.d.ts +1 -1
  160. package/dist/plugins/oidc-provider/index.mjs +2 -2
  161. package/dist/plugins/one-tap/index.cjs +1 -1
  162. package/dist/plugins/one-tap/index.mjs +1 -1
  163. package/dist/plugins/one-time-token/index.cjs +3 -3
  164. package/dist/plugins/one-time-token/index.d.cts +1 -1
  165. package/dist/plugins/one-time-token/index.d.mts +1 -1
  166. package/dist/plugins/one-time-token/index.d.ts +1 -1
  167. package/dist/plugins/one-time-token/index.mjs +3 -3
  168. package/dist/plugins/open-api/index.cjs +1 -1
  169. package/dist/plugins/open-api/index.d.cts +1 -1
  170. package/dist/plugins/open-api/index.d.mts +1 -1
  171. package/dist/plugins/open-api/index.d.ts +1 -1
  172. package/dist/plugins/open-api/index.mjs +1 -1
  173. package/dist/plugins/organization/index.cjs +3 -3
  174. package/dist/plugins/organization/index.d.cts +1 -1
  175. package/dist/plugins/organization/index.d.mts +1 -1
  176. package/dist/plugins/organization/index.d.ts +1 -1
  177. package/dist/plugins/organization/index.mjs +3 -3
  178. package/dist/plugins/passkey/index.cjs +4 -9
  179. package/dist/plugins/passkey/index.d.cts +3 -8
  180. package/dist/plugins/passkey/index.d.mts +3 -8
  181. package/dist/plugins/passkey/index.d.ts +3 -8
  182. package/dist/plugins/passkey/index.mjs +4 -9
  183. package/dist/plugins/phone-number/index.cjs +1 -1
  184. package/dist/plugins/phone-number/index.d.cts +1 -1
  185. package/dist/plugins/phone-number/index.d.mts +1 -1
  186. package/dist/plugins/phone-number/index.d.ts +1 -1
  187. package/dist/plugins/phone-number/index.mjs +1 -1
  188. package/dist/plugins/siwe/index.cjs +1 -1
  189. package/dist/plugins/siwe/index.d.cts +1 -1
  190. package/dist/plugins/siwe/index.d.mts +1 -1
  191. package/dist/plugins/siwe/index.d.ts +1 -1
  192. package/dist/plugins/siwe/index.mjs +1 -1
  193. package/dist/plugins/sso/index.cjs +1 -1
  194. package/dist/plugins/sso/index.d.cts +1 -1
  195. package/dist/plugins/sso/index.d.mts +1 -1
  196. package/dist/plugins/sso/index.d.ts +1 -1
  197. package/dist/plugins/sso/index.mjs +1 -1
  198. package/dist/plugins/two-factor/index.cjs +1 -1
  199. package/dist/plugins/two-factor/index.d.cts +1 -1
  200. package/dist/plugins/two-factor/index.d.mts +1 -1
  201. package/dist/plugins/two-factor/index.d.ts +1 -1
  202. package/dist/plugins/two-factor/index.mjs +1 -1
  203. package/dist/plugins/username/index.cjs +24 -3
  204. package/dist/plugins/username/index.d.cts +1 -1
  205. package/dist/plugins/username/index.d.mts +1 -1
  206. package/dist/plugins/username/index.d.ts +1 -1
  207. package/dist/plugins/username/index.mjs +24 -3
  208. package/dist/shared/{better-auth.DU-jrbrJ.mjs → better-auth.-8Mk4DBL.mjs} +1 -1
  209. package/dist/shared/{better-auth.CszjuPqX.cjs → better-auth.1YBeofpK.cjs} +2 -2
  210. package/dist/shared/{better-auth.C6XqSToF.mjs → better-auth.3naUdTMW.mjs} +1 -1
  211. package/dist/shared/{better-auth.Dp3TDU01.cjs → better-auth.B7A2AeSg.cjs} +2 -2
  212. package/dist/shared/{better-auth.C0eUWmDH.cjs → better-auth.BDdoXh_7.cjs} +6 -1
  213. package/dist/shared/{better-auth.CwXs-abq.d.ts → better-auth.BLORa3vY.d.ts} +1 -1
  214. package/dist/shared/{better-auth.BpnW3Y7U.d.ts → better-auth.BQv0wGSb.d.ts} +16 -12
  215. package/dist/shared/{better-auth.B3bZoclS.d.mts → better-auth.B_xbPKKL.d.mts} +16 -12
  216. package/dist/shared/{better-auth.DNOixpmw.d.mts → better-auth.Bbkp5JKM.d.mts} +1 -1
  217. package/dist/shared/{better-auth.4_1BfAo1.cjs → better-auth.BkcRiga0.cjs} +1 -1
  218. package/dist/shared/{better-auth.4EzI70WC.mjs → better-auth.C1TnI_Rz.mjs} +3 -1
  219. package/dist/shared/{better-auth.BIcpessK.d.cts → better-auth.CLmuULOM.d.cts} +16 -12
  220. package/dist/shared/{better-auth.DFFLg_0h.mjs → better-auth.CV6SLN2A.mjs} +1 -1
  221. package/dist/shared/{better-auth.BKhlUl4L.mjs → better-auth.CnD_hzZ_.mjs} +2 -2
  222. package/dist/shared/{better-auth.BK2FHZMq.d.mts → better-auth.CreeZQ__.d.mts} +1 -1
  223. package/dist/shared/{better-auth.B5_hCdeH.cjs → better-auth.CvVm_hFg.cjs} +1 -1
  224. package/dist/shared/{better-auth.BgUht1zc.cjs → better-auth.CveVqL58.cjs} +1 -1
  225. package/dist/shared/{better-auth.T_KylejJ.d.cts → better-auth.CxLMKBFr.d.cts} +1 -1
  226. package/dist/shared/{better-auth.BF7a6yeC.d.ts → better-auth.DBmu12iE.d.ts} +1 -1
  227. package/dist/shared/{better-auth.B_r2AcFE.cjs → better-auth.DIAGL28F.cjs} +1 -1
  228. package/dist/shared/{better-auth.PwYG2bh2.cjs → better-auth.DIPz2ymP.cjs} +3 -1
  229. package/dist/shared/{better-auth.SCAGFnmj.mjs → better-auth.DL8idXrv.mjs} +1 -1
  230. package/dist/shared/{better-auth.D2Ya06I8.mjs → better-auth.DWm9SJv0.mjs} +2 -2
  231. package/dist/shared/{better-auth.DFAe0eEY.d.mts → better-auth.DabBNJnG.d.mts} +1 -1
  232. package/dist/shared/{better-auth.Dfaw6tuq.d.cts → better-auth.DqKvGWll.d.cts} +1 -1
  233. package/dist/shared/{better-auth.C4cxDzG3.mjs → better-auth.DsRTWTq9.mjs} +6 -1
  234. package/dist/shared/{better-auth.CREk28fc.mjs → better-auth.Dx5-aWCB.mjs} +1 -1
  235. package/dist/shared/{better-auth.CT1UdMDg.d.ts → better-auth.XB1l7SdM.d.ts} +1 -1
  236. package/dist/shared/{better-auth.CVJiT-QN.mjs → better-auth.aytbwQG-.mjs} +31 -20
  237. package/dist/shared/{better-auth.BXsMSpax.cjs → better-auth.b3V1DCfW.cjs} +31 -20
  238. package/dist/shared/{better-auth.zNVyHBMf.d.cts → better-auth.gfiicitY.d.cts} +1 -1
  239. package/dist/shared/{better-auth.CTOuNmcf.cjs → better-auth.owJK4RTO.cjs} +1 -1
  240. package/dist/social-providers/index.cjs +1 -1
  241. package/dist/social-providers/index.mjs +1 -1
  242. package/dist/test-utils/index.cjs +6 -6
  243. package/dist/test-utils/index.d.cts +2 -2
  244. package/dist/test-utils/index.d.mts +2 -2
  245. package/dist/test-utils/index.d.ts +2 -2
  246. package/dist/test-utils/index.mjs +6 -6
  247. package/dist/types/index.d.cts +2 -2
  248. package/dist/types/index.d.mts +2 -2
  249. package/dist/types/index.d.ts +2 -2
  250. package/package.json +1 -1
@@ -355,8 +355,8 @@ declare const createFieldAttribute: <T extends FieldType, C extends Omit<FieldAt
355
355
  };
356
356
  returned?: boolean;
357
357
  required?: boolean;
358
- unique?: boolean;
359
- sortable?: boolean;
358
+ defaultValue?: Primitive | (() => Primitive);
359
+ onUpdate?: () => Primitive;
360
360
  references?: {
361
361
  /**
362
362
  * The model to reference.
@@ -372,13 +372,13 @@ declare const createFieldAttribute: <T extends FieldType, C extends Omit<FieldAt
372
372
  */
373
373
  onDelete?: "no action" | "restrict" | "cascade" | "set null" | "set default";
374
374
  };
375
- defaultValue?: Primitive | (() => Primitive);
376
- fieldName?: string;
377
- onUpdate?: () => Primitive;
375
+ unique?: boolean;
378
376
  validator?: {
379
377
  input?: ZodType;
380
378
  output?: ZodType;
381
379
  };
380
+ fieldName?: string;
381
+ sortable?: boolean;
382
382
  type: T;
383
383
  };
384
384
  type InferValueType<T extends FieldType> = T extends "string" ? string : T extends "number" ? number : T extends "boolean" ? boolean : T extends "date" ? Date : T extends `${infer T}[]` ? T extends "string" ? string[] : number[] : T extends Array<any> ? T[number] : never;
@@ -5588,7 +5588,7 @@ declare function getEndpoints<Option extends BetterAuthOptions>(ctx: Promise<Aut
5588
5588
  user?: string | undefined;
5589
5589
  } | undefined;
5590
5590
  } & {
5591
- method: "GET" | "POST";
5591
+ method: "POST" | "GET";
5592
5592
  } & {
5593
5593
  query?: {
5594
5594
  code?: string | undefined;
@@ -5619,7 +5619,7 @@ declare function getEndpoints<Option extends BetterAuthOptions>(ctx: Promise<Aut
5619
5619
  response: void;
5620
5620
  } : void>;
5621
5621
  options: {
5622
- method: ("GET" | "POST")[];
5622
+ method: ("POST" | "GET")[];
5623
5623
  body: z.ZodOptional<z.ZodObject<{
5624
5624
  code: z.ZodOptional<z.ZodString>;
5625
5625
  error: z.ZodOptional<z.ZodString>;
@@ -9280,7 +9280,7 @@ declare const router: <Option extends BetterAuthOptions>(ctx: AuthContext, optio
9280
9280
  user?: string | undefined;
9281
9281
  } | undefined;
9282
9282
  } & {
9283
- method: "GET" | "POST";
9283
+ method: "POST" | "GET";
9284
9284
  } & {
9285
9285
  query?: {
9286
9286
  code?: string | undefined;
@@ -9311,7 +9311,7 @@ declare const router: <Option extends BetterAuthOptions>(ctx: AuthContext, optio
9311
9311
  response: void;
9312
9312
  } : void>;
9313
9313
  options: {
9314
- method: ("GET" | "POST")[];
9314
+ method: ("POST" | "GET")[];
9315
9315
  body: z.ZodOptional<z.ZodObject<{
9316
9316
  code: z.ZodOptional<z.ZodString>;
9317
9317
  error: z.ZodOptional<z.ZodString>;
@@ -17408,17 +17408,21 @@ type FilterActions<API> = Omit<API, API extends {
17408
17408
  type InferSessionAPI<API> = API extends {
17409
17409
  [key: string]: infer E;
17410
17410
  } ? UnionToIntersection<E extends Endpoint ? E["path"] extends "/get-session" ? {
17411
- getSession: <R extends boolean>(context: {
17411
+ getSession: <R extends boolean, H extends boolean = false>(context: {
17412
17412
  headers: Headers;
17413
17413
  query?: {
17414
17414
  disableCookieCache?: boolean;
17415
17415
  disableRefresh?: boolean;
17416
17416
  };
17417
17417
  asResponse?: R;
17418
- }) => false extends R ? Promise<PrettifyDeep<Awaited<ReturnType<E>>>> & {
17418
+ returnHeaders?: H;
17419
+ }) => false extends R ? H extends true ? Promise<{
17420
+ headers: Headers;
17421
+ response: PrettifyDeep<Awaited<ReturnType<E>>>;
17422
+ }> : Promise<PrettifyDeep<Awaited<ReturnType<E>>> & {
17419
17423
  options: E["options"];
17420
17424
  path: E["path"];
17421
- } : Promise<Response>;
17425
+ }> : Promise<Response>;
17422
17426
  } : never : never> : never;
17423
17427
  type InferAPI<API> = InferSessionAPI<API> & FilteredAPI<API>;
17424
17428
 
@@ -1,4 +1,4 @@
1
- import { G as GenericEndpointContext, I as InferOptionSchema, H as HookEndpointContext, d as AuthContext } from './better-auth.B3bZoclS.mjs';
1
+ import { G as GenericEndpointContext, I as InferOptionSchema, H as HookEndpointContext, d as AuthContext } from './better-auth.B_xbPKKL.mjs';
2
2
  import { Statements } from '../plugins/access/index.mjs';
3
3
  import * as zod_v4_core from 'zod/v4/core';
4
4
  import * as z from 'zod';
@@ -38,7 +38,7 @@ function getSessionAtom($fetch) {
38
38
 
39
39
  const getClientConfig = (options) => {
40
40
  const isCredentialsSupported = "credentials" in Request.prototype;
41
- const baseURL = url.getBaseURL(options?.baseURL, options?.basePath);
41
+ const baseURL = url.getBaseURL(options?.baseURL, options?.basePath) ?? "/api/auth";
42
42
  const pluginsFetchPlugins = options?.plugins?.flatMap((plugin) => plugin.fetchPlugins).filter((pl) => pl !== void 0) || [];
43
43
  const lifeCyclePlugin = {
44
44
  id: "lifecycle-hooks",
@@ -138,7 +138,9 @@ const createInternalAdapter = (adapter, ctx) => {
138
138
  const parsed = safeJSONParse(cached);
139
139
  if (!parsed) return;
140
140
  const sessionTTL = Math.max(
141
- Math.floor(new Date(parsed.session.expiresAt).getTime() - now) / 1e3,
141
+ Math.floor(
142
+ (new Date(parsed.session.expiresAt).getTime() - now) / 1e3
143
+ ),
142
144
  0
143
145
  );
144
146
  await secondaryStorage.set(
@@ -355,8 +355,8 @@ declare const createFieldAttribute: <T extends FieldType, C extends Omit<FieldAt
355
355
  };
356
356
  returned?: boolean;
357
357
  required?: boolean;
358
- unique?: boolean;
359
- sortable?: boolean;
358
+ defaultValue?: Primitive | (() => Primitive);
359
+ onUpdate?: () => Primitive;
360
360
  references?: {
361
361
  /**
362
362
  * The model to reference.
@@ -372,13 +372,13 @@ declare const createFieldAttribute: <T extends FieldType, C extends Omit<FieldAt
372
372
  */
373
373
  onDelete?: "no action" | "restrict" | "cascade" | "set null" | "set default";
374
374
  };
375
- defaultValue?: Primitive | (() => Primitive);
376
- fieldName?: string;
377
- onUpdate?: () => Primitive;
375
+ unique?: boolean;
378
376
  validator?: {
379
377
  input?: ZodType;
380
378
  output?: ZodType;
381
379
  };
380
+ fieldName?: string;
381
+ sortable?: boolean;
382
382
  type: T;
383
383
  };
384
384
  type InferValueType<T extends FieldType> = T extends "string" ? string : T extends "number" ? number : T extends "boolean" ? boolean : T extends "date" ? Date : T extends `${infer T}[]` ? T extends "string" ? string[] : number[] : T extends Array<any> ? T[number] : never;
@@ -5588,7 +5588,7 @@ declare function getEndpoints<Option extends BetterAuthOptions>(ctx: Promise<Aut
5588
5588
  user?: string | undefined;
5589
5589
  } | undefined;
5590
5590
  } & {
5591
- method: "GET" | "POST";
5591
+ method: "POST" | "GET";
5592
5592
  } & {
5593
5593
  query?: {
5594
5594
  code?: string | undefined;
@@ -5619,7 +5619,7 @@ declare function getEndpoints<Option extends BetterAuthOptions>(ctx: Promise<Aut
5619
5619
  response: void;
5620
5620
  } : void>;
5621
5621
  options: {
5622
- method: ("GET" | "POST")[];
5622
+ method: ("POST" | "GET")[];
5623
5623
  body: z.ZodOptional<z.ZodObject<{
5624
5624
  code: z.ZodOptional<z.ZodString>;
5625
5625
  error: z.ZodOptional<z.ZodString>;
@@ -9280,7 +9280,7 @@ declare const router: <Option extends BetterAuthOptions>(ctx: AuthContext, optio
9280
9280
  user?: string | undefined;
9281
9281
  } | undefined;
9282
9282
  } & {
9283
- method: "GET" | "POST";
9283
+ method: "POST" | "GET";
9284
9284
  } & {
9285
9285
  query?: {
9286
9286
  code?: string | undefined;
@@ -9311,7 +9311,7 @@ declare const router: <Option extends BetterAuthOptions>(ctx: AuthContext, optio
9311
9311
  response: void;
9312
9312
  } : void>;
9313
9313
  options: {
9314
- method: ("GET" | "POST")[];
9314
+ method: ("POST" | "GET")[];
9315
9315
  body: z.ZodOptional<z.ZodObject<{
9316
9316
  code: z.ZodOptional<z.ZodString>;
9317
9317
  error: z.ZodOptional<z.ZodString>;
@@ -17408,17 +17408,21 @@ type FilterActions<API> = Omit<API, API extends {
17408
17408
  type InferSessionAPI<API> = API extends {
17409
17409
  [key: string]: infer E;
17410
17410
  } ? UnionToIntersection<E extends Endpoint ? E["path"] extends "/get-session" ? {
17411
- getSession: <R extends boolean>(context: {
17411
+ getSession: <R extends boolean, H extends boolean = false>(context: {
17412
17412
  headers: Headers;
17413
17413
  query?: {
17414
17414
  disableCookieCache?: boolean;
17415
17415
  disableRefresh?: boolean;
17416
17416
  };
17417
17417
  asResponse?: R;
17418
- }) => false extends R ? Promise<PrettifyDeep<Awaited<ReturnType<E>>>> & {
17418
+ returnHeaders?: H;
17419
+ }) => false extends R ? H extends true ? Promise<{
17420
+ headers: Headers;
17421
+ response: PrettifyDeep<Awaited<ReturnType<E>>>;
17422
+ }> : Promise<PrettifyDeep<Awaited<ReturnType<E>>> & {
17419
17423
  options: E["options"];
17420
17424
  path: E["path"];
17421
- } : Promise<Response>;
17425
+ }> : Promise<Response>;
17422
17426
  } : never : never> : never;
17423
17427
  type InferAPI<API> = InferSessionAPI<API> & FilteredAPI<API>;
17424
17428
 
@@ -1,6 +1,6 @@
1
1
  import * as z from 'zod';
2
2
  import { APIError } from 'better-call';
3
- import './better-auth.C4cxDzG3.mjs';
3
+ import './better-auth.DsRTWTq9.mjs';
4
4
  import { c as createAuthMiddleware, g as getSessionFromCtx, a as createAuthEndpoint, B as BASE_ERROR_CODES } from './better-auth.CBY7cUGy.mjs';
5
5
  import { s as setSessionCookie, d as deleteSessionCookie } from './better-auth.fV_ra52g.mjs';
6
6
  import { m as mergeSchema, d as parseUserOutput } from './better-auth.Dlh8OCID.mjs';
@@ -1,13 +1,13 @@
1
1
  import { checkEndpointConflicts, getEndpoints, router } from '../api/index.mjs';
2
2
  import { defu } from 'defu';
3
3
  import { hashToBase64, verifyPassword, hashPassword } from '../crypto/index.mjs';
4
- import { a as getAdapter, c as createInternalAdapter, e as getMigrations } from './better-auth.4EzI70WC.mjs';
4
+ import { a as getAdapter, c as createInternalAdapter, e as getMigrations } from './better-auth.C1TnI_Rz.mjs';
5
5
  import { g as getAuthTables } from './better-auth.Cjw1GDsh.mjs';
6
6
  import { n as runWithAdapter } from './better-auth.Dlh8OCID.mjs';
7
7
  import 'zod';
8
8
  import { g as getCookies, c as createCookieGetter } from './better-auth.fV_ra52g.mjs';
9
9
  import { a as logger, c as createLogger } from './better-auth.C4g12FAA.mjs';
10
- import { U as socialProviders } from './better-auth.C4cxDzG3.mjs';
10
+ import { U as socialProviders } from './better-auth.DsRTWTq9.mjs';
11
11
  import { g as generateId } from './better-auth.BUPPRXfK.mjs';
12
12
  import 'better-call';
13
13
  import '@better-auth/utils/hash';
@@ -1,4 +1,4 @@
1
- import { G as GenericEndpointContext } from './better-auth.B3bZoclS.mjs';
1
+ import { G as GenericEndpointContext } from './better-auth.B_xbPKKL.mjs';
2
2
 
3
3
  declare function generateState(c: GenericEndpointContext, link?: {
4
4
  email: string;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const proxy = require('./better-auth.4_1BfAo1.cjs');
3
+ const proxy = require('./better-auth.BkcRiga0.cjs');
4
4
  const misc = require('./better-auth.BLDOwz3i.cjs');
5
5
 
6
6
  function createAuthClient(options) {
@@ -2,7 +2,7 @@
2
2
 
3
3
  const session = require('./better-auth.CAcHGnwq.cjs');
4
4
  require('better-call');
5
- require('./better-auth.C0eUWmDH.cjs');
5
+ require('./better-auth.BDdoXh_7.cjs');
6
6
  const z = require('zod');
7
7
  require('./better-auth.B6fIklBU.cjs');
8
8
  require('@better-auth/utils/base64');
@@ -1,4 +1,4 @@
1
- import { G as GenericEndpointContext } from './better-auth.BIcpessK.cjs';
1
+ import { G as GenericEndpointContext } from './better-auth.CLmuULOM.cjs';
2
2
 
3
3
  declare function generateState(c: GenericEndpointContext, link?: {
4
4
  email: string;
@@ -1,4 +1,4 @@
1
- import { n as BetterAuthPlugin, B as BetterAuthOptions, T as InferFieldsInputClient, Q as InferFieldsOutput, U as User, S as Session, c as Auth } from './better-auth.BpnW3Y7U.js';
1
+ import { n as BetterAuthPlugin, B as BetterAuthOptions, T as InferFieldsInputClient, Q as InferFieldsOutput, U as User, S as Session, c as Auth } from './better-auth.BQv0wGSb.js';
2
2
  import { BetterFetchOption, BetterFetchResponse, BetterFetch, BetterFetchPlugin } from '@better-fetch/fetch';
3
3
  import { WritableAtom, Atom } from 'nanostores';
4
4
  import { U as UnionToIntersection, H as HasRequiredKeys, a as Prettify, L as LiteralString, S as StripEmptyObjects } from './better-auth.DTtXpZYr.js';
@@ -3,7 +3,7 @@
3
3
  const z = require('zod');
4
4
  const jose = require('jose');
5
5
  const betterCall = require('better-call');
6
- require('./better-auth.C0eUWmDH.cjs');
6
+ require('./better-auth.BDdoXh_7.cjs');
7
7
  const session = require('./better-auth.CAcHGnwq.cjs');
8
8
  require('./better-auth.B6fIklBU.cjs');
9
9
  const base64 = require('@better-auth/utils/base64');
@@ -140,7 +140,9 @@ const createInternalAdapter = (adapter, ctx) => {
140
140
  const parsed = json.safeJSONParse(cached);
141
141
  if (!parsed) return;
142
142
  const sessionTTL = Math.max(
143
- Math.floor(new Date(parsed.session.expiresAt).getTime() - now) / 1e3,
143
+ Math.floor(
144
+ (new Date(parsed.session.expiresAt).getTime() - now) / 1e3
145
+ ),
144
146
  0
145
147
  );
146
148
  await secondaryStorage.set(
@@ -1,4 +1,4 @@
1
- import { g as getClientConfig, c as createDynamicPathProxy } from './better-auth.C6XqSToF.mjs';
1
+ import { g as getClientConfig, c as createDynamicPathProxy } from './better-auth.3naUdTMW.mjs';
2
2
  import { c as capitalizeFirstLetter } from './better-auth.D-2CmEwz.mjs';
3
3
 
4
4
  function createAuthClient(options) {
@@ -1,14 +1,14 @@
1
1
  import * as z from 'zod';
2
2
  import { APIError } from 'better-call';
3
3
  import { a as createAuthEndpoint, g as getSessionFromCtx, s as sessionMiddleware, c as createAuthMiddleware } from './better-auth.CBY7cUGy.mjs';
4
- import './better-auth.C4cxDzG3.mjs';
4
+ import './better-auth.DsRTWTq9.mjs';
5
5
  import './better-auth.CiuwFiHM.mjs';
6
6
  import { base64Url } from '@better-auth/utils/base64';
7
7
  import '@better-auth/utils/hmac';
8
8
  import './better-auth.C4g12FAA.mjs';
9
9
  import '@better-auth/utils/binary';
10
10
  import { m as mergeSchema } from './better-auth.Dlh8OCID.mjs';
11
- import './better-auth.CREk28fc.mjs';
11
+ import './better-auth.Dx5-aWCB.mjs';
12
12
  import '../plugins/organization/access/index.mjs';
13
13
  import '@better-auth/utils/random';
14
14
  import { createHash } from '@better-auth/utils/hash';
@@ -1,4 +1,4 @@
1
- import { n as BetterAuthPlugin, B as BetterAuthOptions, T as InferFieldsInputClient, Q as InferFieldsOutput, U as User, S as Session, c as Auth } from './better-auth.B3bZoclS.mjs';
1
+ import { n as BetterAuthPlugin, B as BetterAuthOptions, T as InferFieldsInputClient, Q as InferFieldsOutput, U as User, S as Session, c as Auth } from './better-auth.B_xbPKKL.mjs';
2
2
  import { BetterFetchOption, BetterFetchResponse, BetterFetch, BetterFetchPlugin } from '@better-fetch/fetch';
3
3
  import { WritableAtom, Atom } from 'nanostores';
4
4
  import { U as UnionToIntersection, H as HasRequiredKeys, a as Prettify, L as LiteralString, S as StripEmptyObjects } from './better-auth.DTtXpZYr.mjs';
@@ -1,4 +1,4 @@
1
- import { n as BetterAuthPlugin, B as BetterAuthOptions, T as InferFieldsInputClient, Q as InferFieldsOutput, U as User, S as Session, c as Auth } from './better-auth.BIcpessK.cjs';
1
+ import { n as BetterAuthPlugin, B as BetterAuthOptions, T as InferFieldsInputClient, Q as InferFieldsOutput, U as User, S as Session, c as Auth } from './better-auth.CLmuULOM.cjs';
2
2
  import { BetterFetchOption, BetterFetchResponse, BetterFetch, BetterFetchPlugin } from '@better-fetch/fetch';
3
3
  import { WritableAtom, Atom } from 'nanostores';
4
4
  import { U as UnionToIntersection, H as HasRequiredKeys, a as Prettify, L as LiteralString, S as StripEmptyObjects } from './better-auth.DTtXpZYr.cjs';
@@ -6656,7 +6656,12 @@ function toAuthEndpoints(endpoints, ctx) {
6656
6656
  }
6657
6657
  internalContext = defuReplaceArrays(rest, internalContext);
6658
6658
  } else if (before) {
6659
- return before;
6659
+ return context?.asResponse ? toResponse(before, {
6660
+ headers: context?.headers
6661
+ }) : context?.returnHeaders ? {
6662
+ headers: context?.headers,
6663
+ response: before
6664
+ } : before;
6660
6665
  }
6661
6666
  internalContext.asResponse = false;
6662
6667
  internalContext.returnHeaders = true;
@@ -1,6 +1,6 @@
1
1
  import { c as createAuthMiddleware, s as sessionMiddleware } from './better-auth.CBY7cUGy.mjs';
2
2
  import 'better-call';
3
- import './better-auth.C4cxDzG3.mjs';
3
+ import './better-auth.DsRTWTq9.mjs';
4
4
  import * as z from 'zod';
5
5
  import './better-auth.CiuwFiHM.mjs';
6
6
  import '@better-auth/utils/base64';
@@ -1,4 +1,4 @@
1
- import { G as GenericEndpointContext } from './better-auth.BpnW3Y7U.js';
1
+ import { G as GenericEndpointContext } from './better-auth.BQv0wGSb.js';
2
2
 
3
3
  declare function generateState(c: GenericEndpointContext, link?: {
4
4
  email: string;
@@ -1,7 +1,7 @@
1
1
  import { APIError } from 'better-call';
2
2
  import * as z from 'zod';
3
3
  import { a as createAuthEndpoint, g as getSessionFromCtx, s as sessionMiddleware, B as BASE_ERROR_CODES, j as requestOnlySessionMiddleware } from './better-auth.CBY7cUGy.mjs';
4
- import './better-auth.C4cxDzG3.mjs';
4
+ import './better-auth.DsRTWTq9.mjs';
5
5
  import './better-auth.CiuwFiHM.mjs';
6
6
  import '@better-auth/utils/base64';
7
7
  import '@better-auth/utils/hmac';
@@ -11,7 +11,7 @@ import { g as getCurrentAdapter } from './better-auth.Dlh8OCID.mjs';
11
11
  import { g as getDate } from './better-auth.CW6D9eSx.mjs';
12
12
  import { B as BetterAuthError } from './better-auth.DdzSJf-n.mjs';
13
13
  import { p as parseJSON } from './better-auth.ffWeg50w.mjs';
14
- import { o as orgMiddleware, a as orgSessionMiddleware, t as teamSchema } from './better-auth.CREk28fc.mjs';
14
+ import { o as orgMiddleware, a as orgSessionMiddleware, t as teamSchema } from './better-auth.Dx5-aWCB.mjs';
15
15
  import { s as setSessionCookie } from './better-auth.fV_ra52g.mjs';
16
16
  import { defaultRoles } from '../plugins/organization/access/index.mjs';
17
17
  import { c as cacheAllRoles, h as hasPermissionFn } from './better-auth.DaEBQJp_.mjs';
@@ -70,7 +70,8 @@ const getOrgAdapter = (context, options) => {
70
70
  data: {
71
71
  ...data.organization,
72
72
  metadata: data.organization.metadata ? JSON.stringify(data.organization.metadata) : void 0
73
- }
73
+ },
74
+ forceAllowId: true
74
75
  });
75
76
  return {
76
77
  ...organization,
@@ -348,12 +349,13 @@ const getOrgAdapter = (context, options) => {
348
349
  });
349
350
  return organizationId;
350
351
  },
351
- setActiveOrganization: async (sessionToken, organizationId) => {
352
+ setActiveOrganization: async (sessionToken, organizationId, ctx) => {
352
353
  const session = await context.internalAdapter.updateSession(
353
354
  sessionToken,
354
355
  {
355
356
  activeOrganizationId: organizationId
356
- }
357
+ },
358
+ ctx
357
359
  );
358
360
  return session;
359
361
  },
@@ -609,12 +611,13 @@ const getOrgAdapter = (context, options) => {
609
611
  });
610
612
  return invitation;
611
613
  },
612
- setActiveTeam: async (sessionToken, teamId) => {
614
+ setActiveTeam: async (sessionToken, teamId, ctx) => {
613
615
  const session = await context.internalAdapter.updateSession(
614
616
  sessionToken,
615
617
  {
616
618
  activeTeamId: teamId
617
- }
619
+ },
620
+ ctx
618
621
  );
619
622
  return session;
620
623
  },
@@ -1381,7 +1384,8 @@ const acceptInvitation = (options) => createAuthEndpoint(
1381
1384
  const teamId = teamIds[0];
1382
1385
  const updatedSession = await adapter.setActiveTeam(
1383
1386
  session.session.token,
1384
- teamId
1387
+ teamId,
1388
+ ctx
1385
1389
  );
1386
1390
  await setSessionCookie(ctx, {
1387
1391
  session: updatedSession,
@@ -1397,7 +1401,8 @@ const acceptInvitation = (options) => createAuthEndpoint(
1397
1401
  });
1398
1402
  await adapter.setActiveOrganization(
1399
1403
  session.session.token,
1400
- invitation.organizationId
1404
+ invitation.organizationId,
1405
+ ctx
1401
1406
  );
1402
1407
  if (!acceptedI) {
1403
1408
  return ctx.json(null, {
@@ -2095,7 +2100,7 @@ const removeMember = (options) => createAuthEndpoint(
2095
2100
  }
2096
2101
  await adapter.deleteMember(toBeRemovedMember.id);
2097
2102
  if (session.user.id === toBeRemovedMember.userId && session.session.activeOrganizationId === toBeRemovedMember.organizationId) {
2098
- await adapter.setActiveOrganization(session.session.token, null);
2103
+ await adapter.setActiveOrganization(session.session.token, null, ctx);
2099
2104
  }
2100
2105
  if (options?.organizationHooks?.afterRemoveMember) {
2101
2106
  await options?.organizationHooks.afterRemoveMember({
@@ -2429,7 +2434,7 @@ const leaveOrganization = (options) => createAuthEndpoint(
2429
2434
  }
2430
2435
  await adapter.deleteMember(member.id);
2431
2436
  if (session.session.activeOrganizationId === ctx.body.organizationId) {
2432
- await adapter.setActiveOrganization(session.session.token, null);
2437
+ await adapter.setActiveOrganization(session.session.token, null, ctx);
2433
2438
  }
2434
2439
  return ctx.json(member);
2435
2440
  }
@@ -2769,13 +2774,15 @@ const createOrganization = (options) => {
2769
2774
  if (ctx.context.session && !ctx.body.keepCurrentActiveOrganization) {
2770
2775
  await adapter.setActiveOrganization(
2771
2776
  ctx.context.session.session.token,
2772
- organization.id
2777
+ organization.id,
2778
+ ctx
2773
2779
  );
2774
2780
  }
2775
2781
  if (teamMember && ctx.context.session && !ctx.body.keepCurrentActiveOrganization) {
2776
2782
  await adapter.setActiveTeam(
2777
2783
  ctx.context.session.session.token,
2778
- teamMember.teamId
2784
+ teamMember.teamId,
2785
+ ctx
2779
2786
  );
2780
2787
  }
2781
2788
  return ctx.json({
@@ -3014,7 +3021,7 @@ const deleteOrganization = (options) => {
3014
3021
  });
3015
3022
  }
3016
3023
  if (organizationId === session.session.activeOrganizationId) {
3017
- await adapter.setActiveOrganization(session.session.token, null);
3024
+ await adapter.setActiveOrganization(session.session.token, null, ctx);
3018
3025
  }
3019
3026
  const org = await adapter.findOrganizationById(organizationId);
3020
3027
  if (!org) {
@@ -3102,7 +3109,7 @@ const getFullOrganization = (options) => createAuthEndpoint(
3102
3109
  organizationId: organization.id
3103
3110
  });
3104
3111
  if (!isMember) {
3105
- await adapter.setActiveOrganization(session.session.token, null);
3112
+ await adapter.setActiveOrganization(session.session.token, null, ctx);
3106
3113
  throw new APIError("FORBIDDEN", {
3107
3114
  message: ORGANIZATION_ERROR_CODES.USER_IS_NOT_A_MEMBER_OF_THE_ORGANIZATION
3108
3115
  });
@@ -3156,7 +3163,8 @@ const setActiveOrganization = (options) => {
3156
3163
  }
3157
3164
  const updatedSession2 = await adapter.setActiveOrganization(
3158
3165
  session.session.token,
3159
- null
3166
+ null,
3167
+ ctx
3160
3168
  );
3161
3169
  await setSessionCookie(ctx, {
3162
3170
  session: updatedSession2,
@@ -3190,7 +3198,7 @@ const setActiveOrganization = (options) => {
3190
3198
  organizationId
3191
3199
  });
3192
3200
  if (!isMember) {
3193
- await adapter.setActiveOrganization(session.session.token, null);
3201
+ await adapter.setActiveOrganization(session.session.token, null, ctx);
3194
3202
  throw new APIError("FORBIDDEN", {
3195
3203
  message: ORGANIZATION_ERROR_CODES.USER_IS_NOT_A_MEMBER_OF_THE_ORGANIZATION
3196
3204
  });
@@ -3203,7 +3211,8 @@ const setActiveOrganization = (options) => {
3203
3211
  }
3204
3212
  const updatedSession = await adapter.setActiveOrganization(
3205
3213
  session.session.token,
3206
- organization.id
3214
+ organization.id,
3215
+ ctx
3207
3216
  );
3208
3217
  await setSessionCookie(ctx, {
3209
3218
  session: updatedSession,
@@ -3830,7 +3839,8 @@ const setActiveTeam = (options) => createAuthEndpoint(
3830
3839
  }
3831
3840
  const updatedSession2 = await adapter.setActiveTeam(
3832
3841
  session.session.token,
3833
- null
3842
+ null,
3843
+ ctx
3834
3844
  );
3835
3845
  await setSessionCookie(ctx, {
3836
3846
  session: updatedSession2,
@@ -3866,7 +3876,8 @@ const setActiveTeam = (options) => createAuthEndpoint(
3866
3876
  }
3867
3877
  const updatedSession = await adapter.setActiveTeam(
3868
3878
  session.session.token,
3869
- team.id
3879
+ team.id,
3880
+ ctx
3870
3881
  );
3871
3882
  await setSessionCookie(ctx, {
3872
3883
  session: updatedSession,