@convex-dev/better-auth 0.8.5 → 0.8.7

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 (235) hide show
  1. package/dist/commonjs/client/adapterUtils.js +1 -1
  2. package/dist/commonjs/client/adapterUtils.js.map +1 -1
  3. package/dist/commonjs/client/index.d.ts.map +1 -1
  4. package/dist/commonjs/client/index.js +2 -2
  5. package/dist/commonjs/client/index.js.map +1 -1
  6. package/dist/commonjs/plugins/cross-domain/index.d.ts +4 -3
  7. package/dist/commonjs/plugins/cross-domain/index.d.ts.map +1 -1
  8. package/dist/commonjs/plugins/cross-domain/index.js +20 -13
  9. package/dist/commonjs/plugins/cross-domain/index.js.map +1 -1
  10. package/dist/commonjs/react/index.d.ts +28 -7
  11. package/dist/commonjs/react/index.d.ts.map +1 -1
  12. package/dist/commonjs/react/index.js +59 -11
  13. package/dist/commonjs/react/index.js.map +1 -1
  14. package/dist/commonjs/{src/react/index.d.ts → react/old-index.d.ts} +1 -1
  15. package/dist/commonjs/react/old-index.d.ts.map +1 -0
  16. package/dist/commonjs/{src/react/index.js → react/old-index.js} +1 -1
  17. package/dist/commonjs/react/old-index.js.map +1 -0
  18. package/dist/commonjs/react-start/index.d.ts +3 -3
  19. package/dist/commonjs/react-start/index.d.ts.map +1 -1
  20. package/dist/commonjs/react-start/index.js.map +1 -1
  21. package/dist/esm/client/adapterUtils.js +1 -1
  22. package/dist/esm/client/adapterUtils.js.map +1 -1
  23. package/dist/esm/client/index.d.ts.map +1 -1
  24. package/dist/esm/client/index.js +2 -2
  25. package/dist/esm/client/index.js.map +1 -1
  26. package/dist/esm/plugins/cross-domain/index.d.ts +4 -3
  27. package/dist/esm/plugins/cross-domain/index.d.ts.map +1 -1
  28. package/dist/esm/plugins/cross-domain/index.js +20 -13
  29. package/dist/esm/plugins/cross-domain/index.js.map +1 -1
  30. package/dist/esm/react/index.d.ts +28 -7
  31. package/dist/esm/react/index.d.ts.map +1 -1
  32. package/dist/esm/react/index.js +59 -11
  33. package/dist/esm/react/index.js.map +1 -1
  34. package/dist/esm/{src/react/index.d.ts → react/old-index.d.ts} +1 -1
  35. package/dist/esm/react/old-index.d.ts.map +1 -0
  36. package/dist/esm/{src/react/index.js → react/old-index.js} +1 -1
  37. package/dist/esm/react/old-index.js.map +1 -0
  38. package/dist/esm/react-start/index.d.ts +3 -3
  39. package/dist/esm/react-start/index.d.ts.map +1 -1
  40. package/dist/esm/react-start/index.js.map +1 -1
  41. package/package.json +1 -1
  42. package/src/client/adapterUtils.ts +1 -1
  43. package/src/client/index.ts +2 -2
  44. package/src/plugins/cross-domain/index.ts +33 -20
  45. package/src/react/index.tsx +110 -28
  46. package/src/react-start/index.ts +2 -2
  47. package/dist/commonjs/client/createSchemaInternal.d.ts +0 -24
  48. package/dist/commonjs/client/createSchemaInternal.d.ts.map +0 -1
  49. package/dist/commonjs/client/createSchemaInternal.js +0 -105
  50. package/dist/commonjs/client/createSchemaInternal.js.map +0 -1
  51. package/dist/commonjs/component/lib.d.ts +0 -432
  52. package/dist/commonjs/component/lib.d.ts.map +0 -1
  53. package/dist/commonjs/component/lib.js +0 -570
  54. package/dist/commonjs/component/lib.js.map +0 -1
  55. package/dist/commonjs/component/util.d.ts +0 -1406
  56. package/dist/commonjs/component/util.d.ts.map +0 -1
  57. package/dist/commonjs/component/util.js +0 -4
  58. package/dist/commonjs/component/util.js.map +0 -1
  59. package/dist/commonjs/src/auth.d.ts +0 -3085
  60. package/dist/commonjs/src/auth.d.ts.map +0 -1
  61. package/dist/commonjs/src/auth.js +0 -72
  62. package/dist/commonjs/src/auth.js.map +0 -1
  63. package/dist/commonjs/src/client/adapter.d.ts +0 -18
  64. package/dist/commonjs/src/client/adapter.d.ts.map +0 -1
  65. package/dist/commonjs/src/client/adapter.js +0 -211
  66. package/dist/commonjs/src/client/adapter.js.map +0 -1
  67. package/dist/commonjs/src/client/createSchema.d.ts +0 -25
  68. package/dist/commonjs/src/client/createSchema.d.ts.map +0 -1
  69. package/dist/commonjs/src/client/createSchema.js +0 -103
  70. package/dist/commonjs/src/client/createSchema.js.map +0 -1
  71. package/dist/commonjs/src/client/index.d.ts +0 -3310
  72. package/dist/commonjs/src/client/index.d.ts.map +0 -1
  73. package/dist/commonjs/src/client/index.js +0 -377
  74. package/dist/commonjs/src/client/index.js.map +0 -1
  75. package/dist/commonjs/src/client/plugins/index.d.ts +0 -3
  76. package/dist/commonjs/src/client/plugins/index.d.ts.map +0 -1
  77. package/dist/commonjs/src/client/plugins/index.js +0 -3
  78. package/dist/commonjs/src/client/plugins/index.js.map +0 -1
  79. package/dist/commonjs/src/component/_generated/api.d.ts +0 -12
  80. package/dist/commonjs/src/component/_generated/api.d.ts.map +0 -1
  81. package/dist/commonjs/src/component/_generated/api.js +0 -22
  82. package/dist/commonjs/src/component/_generated/api.js.map +0 -1
  83. package/dist/commonjs/src/component/_generated/server.d.ts +0 -64
  84. package/dist/commonjs/src/component/_generated/server.d.ts.map +0 -1
  85. package/dist/commonjs/src/component/_generated/server.js +0 -74
  86. package/dist/commonjs/src/component/_generated/server.js.map +0 -1
  87. package/dist/commonjs/src/component/adapter.d.ts +0 -355
  88. package/dist/commonjs/src/component/adapter.d.ts.map +0 -1
  89. package/dist/commonjs/src/component/adapter.js +0 -573
  90. package/dist/commonjs/src/component/adapter.js.map +0 -1
  91. package/dist/commonjs/src/component/adapterTest.d.ts +0 -18
  92. package/dist/commonjs/src/component/adapterTest.d.ts.map +0 -1
  93. package/dist/commonjs/src/component/adapterTest.js +0 -75
  94. package/dist/commonjs/src/component/adapterTest.js.map +0 -1
  95. package/dist/commonjs/src/component/convex.config.d.ts +0 -3
  96. package/dist/commonjs/src/component/convex.config.d.ts.map +0 -1
  97. package/dist/commonjs/src/component/convex.config.js +0 -4
  98. package/dist/commonjs/src/component/convex.config.js.map +0 -1
  99. package/dist/commonjs/src/component/schema.d.ts +0 -562
  100. package/dist/commonjs/src/component/schema.d.ts.map +0 -1
  101. package/dist/commonjs/src/component/schema.js +0 -217
  102. package/dist/commonjs/src/component/schema.js.map +0 -1
  103. package/dist/commonjs/src/nextjs/index.d.ts +0 -10
  104. package/dist/commonjs/src/nextjs/index.d.ts.map +0 -1
  105. package/dist/commonjs/src/nextjs/index.js +0 -43
  106. package/dist/commonjs/src/nextjs/index.js.map +0 -1
  107. package/dist/commonjs/src/plugins/convex/client.d.ts +0 -9
  108. package/dist/commonjs/src/plugins/convex/client.d.ts.map +0 -1
  109. package/dist/commonjs/src/plugins/convex/client.js +0 -7
  110. package/dist/commonjs/src/plugins/convex/client.js.map +0 -1
  111. package/dist/commonjs/src/plugins/convex/index.d.ts +0 -415
  112. package/dist/commonjs/src/plugins/convex/index.d.ts.map +0 -1
  113. package/dist/commonjs/src/plugins/convex/index.js +0 -354
  114. package/dist/commonjs/src/plugins/convex/index.js.map +0 -1
  115. package/dist/commonjs/src/plugins/cross-domain/client.d.ts +0 -132
  116. package/dist/commonjs/src/plugins/cross-domain/client.d.ts.map +0 -1
  117. package/dist/commonjs/src/plugins/cross-domain/client.js +0 -176
  118. package/dist/commonjs/src/plugins/cross-domain/client.js.map +0 -1
  119. package/dist/commonjs/src/plugins/cross-domain/index.d.ts +0 -83
  120. package/dist/commonjs/src/plugins/cross-domain/index.d.ts.map +0 -1
  121. package/dist/commonjs/src/plugins/cross-domain/index.js +0 -153
  122. package/dist/commonjs/src/plugins/cross-domain/index.js.map +0 -1
  123. package/dist/commonjs/src/plugins/index.d.ts +0 -3
  124. package/dist/commonjs/src/plugins/index.d.ts.map +0 -1
  125. package/dist/commonjs/src/plugins/index.js +0 -3
  126. package/dist/commonjs/src/plugins/index.js.map +0 -1
  127. package/dist/commonjs/src/react/client.d.ts +0 -31
  128. package/dist/commonjs/src/react/client.d.ts.map +0 -1
  129. package/dist/commonjs/src/react/client.js +0 -96
  130. package/dist/commonjs/src/react/client.js.map +0 -1
  131. package/dist/commonjs/src/react/index.d.ts.map +0 -1
  132. package/dist/commonjs/src/react/index.js.map +0 -1
  133. package/dist/commonjs/src/react-start/index.d.ts +0 -45
  134. package/dist/commonjs/src/react-start/index.d.ts.map +0 -1
  135. package/dist/commonjs/src/react-start/index.js +0 -60
  136. package/dist/commonjs/src/react-start/index.js.map +0 -1
  137. package/dist/commonjs/src/utils/index.d.ts +0 -9
  138. package/dist/commonjs/src/utils/index.d.ts.map +0 -1
  139. package/dist/commonjs/src/utils/index.js +0 -35
  140. package/dist/commonjs/src/utils/index.js.map +0 -1
  141. package/dist/esm/client/createSchemaInternal.d.ts +0 -24
  142. package/dist/esm/client/createSchemaInternal.d.ts.map +0 -1
  143. package/dist/esm/client/createSchemaInternal.js +0 -105
  144. package/dist/esm/client/createSchemaInternal.js.map +0 -1
  145. package/dist/esm/component/lib.d.ts +0 -432
  146. package/dist/esm/component/lib.d.ts.map +0 -1
  147. package/dist/esm/component/lib.js +0 -570
  148. package/dist/esm/component/lib.js.map +0 -1
  149. package/dist/esm/component/util.d.ts +0 -1406
  150. package/dist/esm/component/util.d.ts.map +0 -1
  151. package/dist/esm/component/util.js +0 -4
  152. package/dist/esm/component/util.js.map +0 -1
  153. package/dist/esm/src/auth.d.ts +0 -3085
  154. package/dist/esm/src/auth.d.ts.map +0 -1
  155. package/dist/esm/src/auth.js +0 -72
  156. package/dist/esm/src/auth.js.map +0 -1
  157. package/dist/esm/src/client/adapter.d.ts +0 -18
  158. package/dist/esm/src/client/adapter.d.ts.map +0 -1
  159. package/dist/esm/src/client/adapter.js +0 -211
  160. package/dist/esm/src/client/adapter.js.map +0 -1
  161. package/dist/esm/src/client/createSchema.d.ts +0 -25
  162. package/dist/esm/src/client/createSchema.d.ts.map +0 -1
  163. package/dist/esm/src/client/createSchema.js +0 -103
  164. package/dist/esm/src/client/createSchema.js.map +0 -1
  165. package/dist/esm/src/client/index.d.ts +0 -3310
  166. package/dist/esm/src/client/index.d.ts.map +0 -1
  167. package/dist/esm/src/client/index.js +0 -377
  168. package/dist/esm/src/client/index.js.map +0 -1
  169. package/dist/esm/src/client/plugins/index.d.ts +0 -3
  170. package/dist/esm/src/client/plugins/index.d.ts.map +0 -1
  171. package/dist/esm/src/client/plugins/index.js +0 -3
  172. package/dist/esm/src/client/plugins/index.js.map +0 -1
  173. package/dist/esm/src/component/_generated/api.d.ts +0 -12
  174. package/dist/esm/src/component/_generated/api.d.ts.map +0 -1
  175. package/dist/esm/src/component/_generated/api.js +0 -22
  176. package/dist/esm/src/component/_generated/api.js.map +0 -1
  177. package/dist/esm/src/component/_generated/server.d.ts +0 -64
  178. package/dist/esm/src/component/_generated/server.d.ts.map +0 -1
  179. package/dist/esm/src/component/_generated/server.js +0 -74
  180. package/dist/esm/src/component/_generated/server.js.map +0 -1
  181. package/dist/esm/src/component/adapter.d.ts +0 -355
  182. package/dist/esm/src/component/adapter.d.ts.map +0 -1
  183. package/dist/esm/src/component/adapter.js +0 -573
  184. package/dist/esm/src/component/adapter.js.map +0 -1
  185. package/dist/esm/src/component/adapterTest.d.ts +0 -18
  186. package/dist/esm/src/component/adapterTest.d.ts.map +0 -1
  187. package/dist/esm/src/component/adapterTest.js +0 -75
  188. package/dist/esm/src/component/adapterTest.js.map +0 -1
  189. package/dist/esm/src/component/convex.config.d.ts +0 -3
  190. package/dist/esm/src/component/convex.config.d.ts.map +0 -1
  191. package/dist/esm/src/component/convex.config.js +0 -4
  192. package/dist/esm/src/component/convex.config.js.map +0 -1
  193. package/dist/esm/src/component/schema.d.ts +0 -562
  194. package/dist/esm/src/component/schema.d.ts.map +0 -1
  195. package/dist/esm/src/component/schema.js +0 -217
  196. package/dist/esm/src/component/schema.js.map +0 -1
  197. package/dist/esm/src/nextjs/index.d.ts +0 -10
  198. package/dist/esm/src/nextjs/index.d.ts.map +0 -1
  199. package/dist/esm/src/nextjs/index.js +0 -43
  200. package/dist/esm/src/nextjs/index.js.map +0 -1
  201. package/dist/esm/src/plugins/convex/client.d.ts +0 -9
  202. package/dist/esm/src/plugins/convex/client.d.ts.map +0 -1
  203. package/dist/esm/src/plugins/convex/client.js +0 -7
  204. package/dist/esm/src/plugins/convex/client.js.map +0 -1
  205. package/dist/esm/src/plugins/convex/index.d.ts +0 -415
  206. package/dist/esm/src/plugins/convex/index.d.ts.map +0 -1
  207. package/dist/esm/src/plugins/convex/index.js +0 -354
  208. package/dist/esm/src/plugins/convex/index.js.map +0 -1
  209. package/dist/esm/src/plugins/cross-domain/client.d.ts +0 -132
  210. package/dist/esm/src/plugins/cross-domain/client.d.ts.map +0 -1
  211. package/dist/esm/src/plugins/cross-domain/client.js +0 -176
  212. package/dist/esm/src/plugins/cross-domain/client.js.map +0 -1
  213. package/dist/esm/src/plugins/cross-domain/index.d.ts +0 -83
  214. package/dist/esm/src/plugins/cross-domain/index.d.ts.map +0 -1
  215. package/dist/esm/src/plugins/cross-domain/index.js +0 -153
  216. package/dist/esm/src/plugins/cross-domain/index.js.map +0 -1
  217. package/dist/esm/src/plugins/index.d.ts +0 -3
  218. package/dist/esm/src/plugins/index.d.ts.map +0 -1
  219. package/dist/esm/src/plugins/index.js +0 -3
  220. package/dist/esm/src/plugins/index.js.map +0 -1
  221. package/dist/esm/src/react/client.d.ts +0 -31
  222. package/dist/esm/src/react/client.d.ts.map +0 -1
  223. package/dist/esm/src/react/client.js +0 -96
  224. package/dist/esm/src/react/client.js.map +0 -1
  225. package/dist/esm/src/react/index.d.ts.map +0 -1
  226. package/dist/esm/src/react/index.js.map +0 -1
  227. package/dist/esm/src/react-start/index.d.ts +0 -45
  228. package/dist/esm/src/react-start/index.d.ts.map +0 -1
  229. package/dist/esm/src/react-start/index.js +0 -60
  230. package/dist/esm/src/react-start/index.js.map +0 -1
  231. package/dist/esm/src/utils/index.d.ts +0 -9
  232. package/dist/esm/src/utils/index.d.ts.map +0 -1
  233. package/dist/esm/src/utils/index.js +0 -35
  234. package/dist/esm/src/utils/index.js.map +0 -1
  235. package/src/react/client.tsx +0 -178
@@ -1,60 +0,0 @@
1
- import { createCookieGetter } from "better-auth/cookies";
2
- import { betterFetch } from "@better-fetch/fetch";
3
- import { JWT_COOKIE_NAME } from "../plugins/convex/index.js";
4
- import { oneLine } from "common-tags";
5
- import { getInactiveAuthInstance } from "../client/index.js";
6
- export const getCookieName = async (createAuth) => {
7
- const auth = getInactiveAuthInstance(createAuth);
8
- const createCookie = createCookieGetter(auth.options);
9
- const cookie = createCookie(JWT_COOKIE_NAME);
10
- return cookie.name;
11
- };
12
- const requireConvexSiteUrl = (opts, calledFrom) => {
13
- if (!opts.convexSiteUrl) {
14
- throw new Error(`${calledFrom}: opts.convexSiteUrl is required`);
15
- }
16
- if (opts.verbose) {
17
- console.log(`${calledFrom}: opts.convexSiteUrl: ${opts.convexSiteUrl}`);
18
- }
19
- return opts.convexSiteUrl;
20
- };
21
- export const fetchSession = async (request, opts) => {
22
- if (!request) {
23
- throw new Error("No request found");
24
- }
25
- const convexSiteUrl = requireConvexSiteUrl(opts, "fetchSession");
26
- const { data: session } = await betterFetch("/api/auth/get-session", {
27
- baseURL: convexSiteUrl,
28
- headers: {
29
- cookie: request.headers.get("cookie") ?? "",
30
- },
31
- });
32
- return {
33
- session,
34
- };
35
- };
36
- export const reactStartHandler = (request, opts) => {
37
- const requestUrl = new URL(request.url);
38
- const convexSiteUrl = requireConvexSiteUrl(opts, "reactStartHandler");
39
- const nextUrl = `${convexSiteUrl}${requestUrl.pathname}${requestUrl.search}`;
40
- request.headers.set("accept-encoding", "application/json");
41
- return fetch(nextUrl, new Request(request, { redirect: "manual" }));
42
- };
43
- export const reactStartHelpers = (createAuth, opts) => {
44
- if (!opts.convexSiteUrl) {
45
- throw new Error("opts.convexSiteUrl is required");
46
- }
47
- if (opts.convexSiteUrl.endsWith(".convex.cloud")) {
48
- throw new Error(oneLine(`
49
- opts.convexSiteUrl ends with .convex.cloud, which is your cloud URL.
50
- Use your Convex site URL instead.
51
- https://docs.convex.dev/production/environment-variables#system-environment-variables
52
- `));
53
- }
54
- return {
55
- fetchSession: (request) => fetchSession(request, opts),
56
- reactStartHandler: (request) => reactStartHandler(request, opts),
57
- getCookieName: () => getCookieName(createAuth),
58
- };
59
- };
60
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/react-start/index.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { RunActionCtx, RunCtx, RunMutationCtx, RunQueryCtx } from "../client/index.js";
2
- export declare const requireEnv: (name: string) => string;
3
- export declare const isQueryCtx: (ctx: RunCtx) => ctx is RunQueryCtx;
4
- export declare const isMutationCtx: (ctx: RunCtx) => ctx is RunMutationCtx;
5
- export declare const isActionCtx: (ctx: RunCtx) => ctx is RunActionCtx;
6
- export declare const requireQueryCtx: (ctx: RunCtx) => RunQueryCtx;
7
- export declare const requireMutationCtx: (ctx: RunCtx) => RunMutationCtx;
8
- export declare const requireActionCtx: (ctx: RunCtx) => RunActionCtx;
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE9E,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,WAMtC,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,WAE/C,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,cAElD,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,YAEhD,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,KAAK,MAAM,KAAG,WAK7C,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,KAAK,MAAM,KAAG,cAKhD,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,KAAG,YAK9C,CAAC"}
@@ -1,35 +0,0 @@
1
- export const requireEnv = (name) => {
2
- const value = process.env[name];
3
- if (value === undefined) {
4
- throw new Error(`Missing environment variable \`${name}\``);
5
- }
6
- return value;
7
- };
8
- export const isQueryCtx = (ctx) => {
9
- return "runQuery" in ctx;
10
- };
11
- export const isMutationCtx = (ctx) => {
12
- return "runMutation" in ctx;
13
- };
14
- export const isActionCtx = (ctx) => {
15
- return "runAction" in ctx;
16
- };
17
- export const requireQueryCtx = (ctx) => {
18
- if (!isQueryCtx(ctx)) {
19
- throw new Error("Query context required");
20
- }
21
- return ctx;
22
- };
23
- export const requireMutationCtx = (ctx) => {
24
- if (!isMutationCtx(ctx)) {
25
- throw new Error("Mutation context required");
26
- }
27
- return ctx;
28
- };
29
- export const requireActionCtx = (ctx) => {
30
- if (!isActionCtx(ctx)) {
31
- throw new Error("Action context required");
32
- }
33
- return ctx;
34
- };
35
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,IAAI,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAsB,EAAE;IAC5D,OAAO,UAAU,IAAI,GAAG,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAW,EAAyB,EAAE;IAClE,OAAO,aAAa,IAAI,GAAG,CAAC;AAC9B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAuB,EAAE;IAC9D,OAAO,WAAW,IAAI,GAAG,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAW,EAAe,EAAE;IAC1D,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAkB,EAAE;IAChE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAW,EAAgB,EAAE;IAC5D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
@@ -1,178 +0,0 @@
1
- import { ConvexReactClient } from "convex/react";
2
- import isNetworkError from "is-network-error";
3
- import {
4
- createContext,
5
- ReactNode,
6
- useCallback,
7
- useContext,
8
- useEffect,
9
- useMemo,
10
- } from "react";
11
- import { createAuthClient } from "better-auth/react";
12
- import { convexClient, crossDomainClient } from "../client/plugins";
13
- import { BetterAuthClientPlugin, ClientOptions } from "better-auth";
14
-
15
- const ConvexAuthInternalContext = createContext<{
16
- isLoading: boolean;
17
- isAuthenticated: boolean;
18
- fetchAccessToken: ({
19
- forceRefreshToken,
20
- }: {
21
- forceRefreshToken: boolean;
22
- }) => Promise<string | null>;
23
- }>(undefined as any);
24
-
25
- export function useAuth() {
26
- return useContext(ConvexAuthInternalContext);
27
- }
28
-
29
- export type ConvexAuthClient = {
30
- verbose?: boolean;
31
- logger?: ConvexReactClient["logger"];
32
- };
33
-
34
- type CrossDomainClient = ReturnType<typeof crossDomainClient>;
35
- type ConvexClient = ReturnType<typeof convexClient>;
36
- type PluginsWithCrossDomain = (
37
- | CrossDomainClient
38
- | ConvexClient
39
- | BetterAuthClientPlugin
40
- )[];
41
- type PluginsWithoutCrossDomain = (ConvexClient | BetterAuthClientPlugin)[];
42
- type AuthClientWithPlugins<
43
- Plugins extends PluginsWithCrossDomain | PluginsWithoutCrossDomain,
44
- > = ReturnType<
45
- typeof createAuthClient<
46
- ClientOptions & {
47
- plugins: Plugins;
48
- }
49
- >
50
- >;
51
- export type AuthClient =
52
- | AuthClientWithPlugins<PluginsWithCrossDomain>
53
- | AuthClientWithPlugins<PluginsWithoutCrossDomain>;
54
-
55
- export function AuthProvider({
56
- client,
57
- authClient,
58
- children,
59
- }: {
60
- client: ConvexAuthClient;
61
- authClient: AuthClient;
62
- children: ReactNode;
63
- }) {
64
- const { data: session, isPending: isSessionPending } =
65
- authClient.useSession();
66
-
67
- const verbose: boolean = client.verbose ?? false;
68
- const logVerbose = useCallback(
69
- (message: string) => {
70
- if (verbose) {
71
- console.debug(`${new Date().toISOString()} ${message}`);
72
- client.logger?.logVerbose(message);
73
- }
74
- },
75
- [verbose]
76
- );
77
-
78
- const fetchToken = useCallback(async () => {
79
- const initialBackoff = 100;
80
- const maxBackoff = 1000;
81
- let retries = 0;
82
-
83
- const nextBackoff = () => {
84
- const baseBackoff = initialBackoff * Math.pow(2, retries);
85
- retries += 1;
86
- const actualBackoff = Math.min(baseBackoff, maxBackoff);
87
- const jitter = actualBackoff * (Math.random() - 0.5);
88
- return actualBackoff + jitter;
89
- };
90
-
91
- const fetchWithRetry = async () => {
92
- try {
93
- const { data } = await authClient.convex.token();
94
- return data?.token || null;
95
- } catch (e) {
96
- if (!isNetworkError(e)) {
97
- throw e;
98
- }
99
- if (retries > 10) {
100
- logVerbose(`fetchToken failed with network error, giving up`);
101
- throw e;
102
- }
103
- const backoff = nextBackoff();
104
- logVerbose(
105
- `fetchToken failed with network error, attempting retrying in ${backoff}ms`
106
- );
107
- await new Promise((resolve) => setTimeout(resolve, backoff));
108
- return fetchWithRetry();
109
- }
110
- };
111
-
112
- return fetchWithRetry();
113
- }, [client]);
114
-
115
- const fetchAccessToken = useCallback(
116
- async ({ forceRefreshToken }: { forceRefreshToken: boolean }) => {
117
- if (forceRefreshToken) {
118
- const token = await fetchToken();
119
- logVerbose(`returning retrieved token`);
120
- return token;
121
- }
122
- return null;
123
- },
124
- [fetchToken]
125
- );
126
-
127
- useEffect(
128
- () => {
129
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
130
- (async () => {
131
- const url = new URL(window.location?.href);
132
- const token = url.searchParams.get("ott");
133
- if (token) {
134
- const authClientWithCrossDomain =
135
- authClient as AuthClientWithPlugins<PluginsWithCrossDomain>;
136
- url.searchParams.delete("ott");
137
- const result =
138
- await authClientWithCrossDomain.crossDomain.oneTimeToken.verify({
139
- token,
140
- });
141
- const session = result.data?.session;
142
- if (session) {
143
- await authClient.getSession({
144
- fetchOptions: {
145
- headers: {
146
- Authorization: `Bearer ${session.token}`,
147
- },
148
- },
149
- });
150
- authClientWithCrossDomain.updateSession();
151
- }
152
- window.history.replaceState({}, "", url);
153
- }
154
- })();
155
- },
156
- // Explicitly chosen dependencies.
157
- // This effect should mostly only run once
158
- // on mount.
159
- [client, authClient]
160
- );
161
-
162
- const isAuthenticated = session !== null;
163
- const isLoading = isSessionPending;
164
- const authState = useMemo(
165
- () => ({
166
- isLoading,
167
- isAuthenticated,
168
- fetchAccessToken,
169
- }),
170
- [fetchAccessToken, isLoading, isAuthenticated]
171
- );
172
-
173
- return (
174
- <ConvexAuthInternalContext.Provider value={authState}>
175
- {children}
176
- </ConvexAuthInternalContext.Provider>
177
- );
178
- }