@convex-dev/better-auth 0.7.0-alpha.12 → 0.7.0-alpha.3

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 (108) hide show
  1. package/dist/commonjs/client/adapter.d.ts +1 -10
  2. package/dist/commonjs/client/adapter.d.ts.map +1 -1
  3. package/dist/commonjs/client/adapter.js +192 -183
  4. package/dist/commonjs/client/adapter.js.map +1 -1
  5. package/dist/commonjs/client/index.d.ts +179 -238
  6. package/dist/commonjs/client/index.d.ts.map +1 -1
  7. package/dist/commonjs/client/index.js +67 -60
  8. package/dist/commonjs/client/index.js.map +1 -1
  9. package/dist/commonjs/component/lib.d.ts +548 -218
  10. package/dist/commonjs/component/lib.d.ts.map +1 -1
  11. package/dist/commonjs/component/lib.js +286 -315
  12. package/dist/commonjs/component/lib.js.map +1 -1
  13. package/dist/commonjs/component/schema.d.ts +28 -90
  14. package/dist/commonjs/component/schema.d.ts.map +1 -1
  15. package/dist/commonjs/component/schema.js +18 -76
  16. package/dist/commonjs/component/schema.js.map +1 -1
  17. package/dist/commonjs/component/util.d.ts +86 -148
  18. package/dist/commonjs/component/util.d.ts.map +1 -1
  19. package/dist/commonjs/nextjs/index.d.ts.map +1 -1
  20. package/dist/commonjs/nextjs/index.js +0 -3
  21. package/dist/commonjs/nextjs/index.js.map +1 -1
  22. package/dist/commonjs/plugins/convex/index.d.ts +11 -14
  23. package/dist/commonjs/plugins/convex/index.d.ts.map +1 -1
  24. package/dist/commonjs/plugins/convex/index.js +4 -10
  25. package/dist/commonjs/plugins/convex/index.js.map +1 -1
  26. package/dist/commonjs/plugins/cross-domain/client.d.ts +1 -1
  27. package/dist/commonjs/plugins/cross-domain/index.d.ts +3 -5
  28. package/dist/commonjs/plugins/cross-domain/index.d.ts.map +1 -1
  29. package/dist/commonjs/plugins/cross-domain/index.js +5 -19
  30. package/dist/commonjs/plugins/cross-domain/index.js.map +1 -1
  31. package/dist/commonjs/react/client.d.ts +1 -1
  32. package/dist/commonjs/react/client.d.ts.map +1 -1
  33. package/dist/commonjs/react/client.js +9 -3
  34. package/dist/commonjs/react/client.js.map +1 -1
  35. package/dist/commonjs/react-start/index.d.ts +3 -37
  36. package/dist/commonjs/react-start/index.d.ts.map +1 -1
  37. package/dist/commonjs/react-start/index.js +4 -20
  38. package/dist/commonjs/react-start/index.js.map +1 -1
  39. package/dist/esm/client/adapter.d.ts +1 -10
  40. package/dist/esm/client/adapter.d.ts.map +1 -1
  41. package/dist/esm/client/adapter.js +192 -183
  42. package/dist/esm/client/adapter.js.map +1 -1
  43. package/dist/esm/client/index.d.ts +179 -238
  44. package/dist/esm/client/index.d.ts.map +1 -1
  45. package/dist/esm/client/index.js +67 -60
  46. package/dist/esm/client/index.js.map +1 -1
  47. package/dist/esm/component/lib.d.ts +548 -218
  48. package/dist/esm/component/lib.d.ts.map +1 -1
  49. package/dist/esm/component/lib.js +286 -315
  50. package/dist/esm/component/lib.js.map +1 -1
  51. package/dist/esm/component/schema.d.ts +28 -90
  52. package/dist/esm/component/schema.d.ts.map +1 -1
  53. package/dist/esm/component/schema.js +18 -76
  54. package/dist/esm/component/schema.js.map +1 -1
  55. package/dist/esm/component/util.d.ts +86 -148
  56. package/dist/esm/component/util.d.ts.map +1 -1
  57. package/dist/esm/nextjs/index.d.ts.map +1 -1
  58. package/dist/esm/nextjs/index.js +0 -3
  59. package/dist/esm/nextjs/index.js.map +1 -1
  60. package/dist/esm/plugins/convex/index.d.ts +11 -14
  61. package/dist/esm/plugins/convex/index.d.ts.map +1 -1
  62. package/dist/esm/plugins/convex/index.js +4 -10
  63. package/dist/esm/plugins/convex/index.js.map +1 -1
  64. package/dist/esm/plugins/cross-domain/client.d.ts +1 -1
  65. package/dist/esm/plugins/cross-domain/index.d.ts +3 -5
  66. package/dist/esm/plugins/cross-domain/index.d.ts.map +1 -1
  67. package/dist/esm/plugins/cross-domain/index.js +5 -19
  68. package/dist/esm/plugins/cross-domain/index.js.map +1 -1
  69. package/dist/esm/react/client.d.ts +1 -1
  70. package/dist/esm/react/client.d.ts.map +1 -1
  71. package/dist/esm/react/client.js +9 -3
  72. package/dist/esm/react/client.js.map +1 -1
  73. package/dist/esm/react-start/index.d.ts +3 -37
  74. package/dist/esm/react-start/index.d.ts.map +1 -1
  75. package/dist/esm/react-start/index.js +4 -20
  76. package/dist/esm/react-start/index.js.map +1 -1
  77. package/package.json +5 -20
  78. package/src/client/adapter.ts +195 -191
  79. package/src/client/cors.ts +425 -0
  80. package/src/client/index.ts +80 -61
  81. package/src/component/_generated/api.d.ts +149 -605
  82. package/src/component/lib.ts +335 -444
  83. package/src/component/schema.ts +19 -81
  84. package/src/nextjs/index.ts +0 -3
  85. package/src/plugins/convex/index.ts +4 -12
  86. package/src/plugins/cross-domain/index.ts +5 -19
  87. package/src/react/client.tsx +11 -5
  88. package/src/react-start/index.ts +6 -33
  89. package/dist/commonjs/component/adapterTest.d.ts +0 -19
  90. package/dist/commonjs/component/adapterTest.d.ts.map +0 -1
  91. package/dist/commonjs/component/adapterTest.js +0 -82
  92. package/dist/commonjs/component/adapterTest.js.map +0 -1
  93. package/dist/commonjs/utils/index.d.ts +0 -2
  94. package/dist/commonjs/utils/index.d.ts.map +0 -1
  95. package/dist/commonjs/utils/index.js +0 -8
  96. package/dist/commonjs/utils/index.js.map +0 -1
  97. package/dist/esm/component/adapterTest.d.ts +0 -19
  98. package/dist/esm/component/adapterTest.d.ts.map +0 -1
  99. package/dist/esm/component/adapterTest.js +0 -82
  100. package/dist/esm/component/adapterTest.js.map +0 -1
  101. package/dist/esm/utils/index.d.ts +0 -2
  102. package/dist/esm/utils/index.d.ts.map +0 -1
  103. package/dist/esm/utils/index.js +0 -8
  104. package/dist/esm/utils/index.js.map +0 -1
  105. package/src/client/adapter.test.ts +0 -144
  106. package/src/component/adapterTest.ts +0 -141
  107. package/src/react-start/vite-env.d.ts +0 -2
  108. /package/src/{utils/index.ts → util.ts} +0 -0
@@ -2,34 +2,30 @@ import { httpActionGeneric, internalMutationGeneric, queryGeneric, } from "conve
2
2
  import { v } from "convex/values";
3
3
  import schema from "../component/schema";
4
4
  import { convexAdapter } from "./adapter";
5
+ import corsRouter from "./cors";
6
+ import { getByArgsValidator, updateArgsInputValidator } from "../component/lib";
5
7
  import { omit } from "convex-helpers";
6
8
  import { createCookieGetter } from "better-auth/cookies";
7
9
  import { fetchQuery } from "convex/nextjs";
8
10
  import { JWT_COOKIE_NAME } from "../plugins/convex";
9
- import { requireEnv } from "../utils";
10
- import { partial } from "convex-helpers/validators";
11
- import { adapterArgsValidator, adapterWhereValidator } from "../component/lib";
12
- import { corsRouter } from "convex-helpers/server/cors";
11
+ import { requireEnv } from "../util";
13
12
  export { convexAdapter };
14
13
  const createUserFields = omit(schema.tables.user.validator.fields, ["userId"]);
15
14
  const createUserValidator = v.object(createUserFields);
16
15
  const createUserArgsValidator = v.object({
17
16
  input: v.object({
18
- model: v.literal("user"),
19
- data: v.object(createUserFields),
17
+ ...createUserFields,
18
+ table: v.literal("user"),
20
19
  }),
21
20
  });
22
21
  const updateUserArgsValidator = v.object({
23
- input: v.object({
24
- model: v.literal("user"),
25
- where: v.optional(v.array(adapterWhereValidator)),
26
- update: v.object(partial(createUserFields)),
27
- }),
22
+ input: updateArgsInputValidator("user"),
28
23
  });
24
+ const deleteUserArgsValidator = v.object(getByArgsValidator);
29
25
  const createSessionArgsValidator = v.object({
30
26
  input: v.object({
31
- model: v.literal("session"),
32
- data: v.object(schema.tables.session.validator.fields),
27
+ table: v.literal("session"),
28
+ ...schema.tables.session.validator.fields,
33
29
  }),
34
30
  });
35
31
  export class BetterAuth {
@@ -69,14 +65,10 @@ export class BetterAuth {
69
65
  if (!identity) {
70
66
  return null;
71
67
  }
72
- const doc = await ctx.runQuery(this.component.lib.findOne, {
73
- model: "user",
74
- where: [
75
- {
76
- field: "userId",
77
- value: identity.subject,
78
- },
79
- ],
68
+ const doc = await ctx.runQuery(this.component.lib.getBy, {
69
+ table: "user",
70
+ field: "userId",
71
+ value: identity.subject,
80
72
  });
81
73
  if (!doc) {
82
74
  return null;
@@ -106,35 +98,32 @@ export class BetterAuth {
106
98
  createUser: internalMutationGeneric({
107
99
  args: createUserArgsValidator,
108
100
  handler: async (ctx, args) => {
109
- const userId = await opts.onCreateUser(ctx, args.input.data);
101
+ const userId = await opts.onCreateUser(ctx, args.input);
102
+ const input = { ...args.input, table: "user", userId };
110
103
  return ctx.runMutation(this.component.lib.create, {
111
- input: {
112
- ...args.input,
113
- data: { ...args.input.data, userId },
114
- },
104
+ input,
115
105
  });
116
106
  },
117
107
  }),
118
108
  deleteUser: internalMutationGeneric({
119
- args: adapterArgsValidator,
109
+ args: deleteUserArgsValidator,
120
110
  handler: async (ctx, args) => {
121
- const doc = await ctx.runMutation(this.component.lib.deleteOne, args);
122
- if (doc && opts.onDeleteUser) {
111
+ const doc = await ctx.runMutation(this.component.lib.deleteBy, args);
112
+ if (opts.onDeleteUser) {
123
113
  await opts.onDeleteUser(ctx, doc.userId);
124
114
  }
125
- return doc;
126
115
  },
127
116
  }),
128
117
  updateUser: internalMutationGeneric({
129
118
  args: updateUserArgsValidator,
130
119
  handler: async (ctx, args) => {
131
- const updatedUser = await ctx.runMutation(this.component.lib.updateOne, { input: args.input });
120
+ const updatedUser = await ctx.runMutation(this.component.lib.update, args);
132
121
  // Type narrowing
133
122
  if (!("emailVerified" in updatedUser)) {
134
123
  throw new Error("invalid user");
135
124
  }
136
125
  if (opts.onUpdateUser) {
137
- await opts.onUpdateUser(ctx, omit(updatedUser, ["_id"]));
126
+ await opts.onUpdateUser(ctx, omit(updatedUser, ["id"]));
138
127
  }
139
128
  return updatedUser;
140
129
  },
@@ -142,9 +131,11 @@ export class BetterAuth {
142
131
  createSession: internalMutationGeneric({
143
132
  args: createSessionArgsValidator,
144
133
  handler: async (ctx, args) => {
145
- const session = await ctx.runMutation(this.component.lib.create, {
146
- input: args.input,
147
- });
134
+ const session = await ctx.runMutation(this.component.lib.create, args);
135
+ // Type narrowing
136
+ if (!("ipAddress" in session)) {
137
+ throw new Error("invalid session");
138
+ }
148
139
  await opts.onCreateSession?.(ctx, session);
149
140
  return session;
150
141
  },
@@ -156,7 +147,6 @@ export class BetterAuth {
156
147
  const path = betterAuthOptions.basePath ?? "/api/auth";
157
148
  const authRequestHandler = httpActionGeneric(async (ctx, request) => {
158
149
  if (this.config.verbose) {
159
- console.log("options.baseURL", betterAuthOptions.baseURL);
160
150
  console.log("request headers", request.headers);
161
151
  }
162
152
  const auth = createAuth(ctx);
@@ -166,19 +156,15 @@ export class BetterAuth {
166
156
  }
167
157
  return response;
168
158
  });
169
- const wellKnown = http.lookup("/.well-known/openid-configuration", "GET");
170
- // If registerRoutes is used multiple times, this may already be defined
171
- if (!wellKnown) {
172
- // Redirect root well-known to api well-known
173
- http.route({
174
- path: "/.well-known/openid-configuration",
175
- method: "GET",
176
- handler: httpActionGeneric(async () => {
177
- const url = `${requireEnv("CONVEX_SITE_URL")}/api/auth/convex/.well-known/openid-configuration`;
178
- return Response.redirect(url);
179
- }),
180
- });
181
- }
159
+ // Redirect root well-known to api well-known
160
+ http.route({
161
+ path: "/.well-known/openid-configuration",
162
+ method: "GET",
163
+ handler: httpActionGeneric(async () => {
164
+ const url = `${requireEnv("CONVEX_SITE_URL")}/api/auth/convex/.well-known/openid-configuration`;
165
+ return Response.redirect(url);
166
+ }),
167
+ });
182
168
  if (!opts.cors) {
183
169
  http.route({
184
170
  pathPrefix: `${path}/`,
@@ -192,18 +178,39 @@ export class BetterAuth {
192
178
  });
193
179
  return;
194
180
  }
181
+ const trustedOrigins = [
182
+ ...(Array.isArray(betterAuthOptions.trustedOrigins)
183
+ ? betterAuthOptions.trustedOrigins
184
+ : [betterAuthOptions.trustedOrigins]),
185
+ betterAuthOptions.baseURL,
186
+ ];
187
+ // The crossDomain plugin adds siteUrl to trustedOrigins
188
+ const trustedOriginsFromPlugins = betterAuthOptions.plugins?.reduce((acc, plugin) => {
189
+ if (plugin.options?.trustedOrigins) {
190
+ acc.push(...plugin.options.trustedOrigins);
191
+ }
192
+ return acc;
193
+ }, []) ?? [];
194
+ // Reuse trustedOrigins as default for allowedOrigins
195
+ const allowedOrigins = async (request) => {
196
+ return (await Promise.all([...trustedOrigins, ...trustedOriginsFromPlugins].map(async (origin) => {
197
+ if (!origin) {
198
+ return [];
199
+ }
200
+ if (typeof origin === "function") {
201
+ return origin(request);
202
+ }
203
+ return [origin];
204
+ })))
205
+ .flat()
206
+ .map((origin) =>
207
+ // Strip trailing wildcards, unsupported for allowedOrigins
208
+ origin.endsWith("*") && origin.length > 1
209
+ ? origin.slice(0, -1)
210
+ : origin);
211
+ };
195
212
  const cors = corsRouter(http, {
196
- allowedOrigins: async (request) => {
197
- const trustedOriginsOption = (await createAuth({}).$context).options.trustedOrigins ?? [];
198
- const trustedOrigins = Array.isArray(trustedOriginsOption)
199
- ? trustedOriginsOption
200
- : await trustedOriginsOption(request);
201
- return trustedOrigins.map((origin) =>
202
- // Strip trailing wildcards, unsupported for allowedOrigins
203
- origin.endsWith("*") && origin.length > 1
204
- ? origin.slice(0, -1)
205
- : origin);
206
- },
213
+ allowedOrigins,
207
214
  allowCredentials: true,
208
215
  allowedHeaders: ["Content-Type", "Better-Auth-Cookie"],
209
216
  exposedHeaders: ["Set-Better-Auth-Cookie"],
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}