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

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 (91) hide show
  1. package/dist/commonjs/client/adapter.d.ts +10 -1
  2. package/dist/commonjs/client/adapter.d.ts.map +1 -1
  3. package/dist/commonjs/client/adapter.js +183 -192
  4. package/dist/commonjs/client/adapter.js.map +1 -1
  5. package/dist/commonjs/client/index.d.ts +238 -179
  6. package/dist/commonjs/client/index.d.ts.map +1 -1
  7. package/dist/commonjs/client/index.js +46 -58
  8. package/dist/commonjs/client/index.js.map +1 -1
  9. package/dist/commonjs/component/adapterTest.d.ts +19 -0
  10. package/dist/commonjs/component/adapterTest.d.ts.map +1 -0
  11. package/dist/commonjs/component/adapterTest.js +82 -0
  12. package/dist/commonjs/component/adapterTest.js.map +1 -0
  13. package/dist/commonjs/component/lib.d.ts +218 -548
  14. package/dist/commonjs/component/lib.d.ts.map +1 -1
  15. package/dist/commonjs/component/lib.js +315 -286
  16. package/dist/commonjs/component/lib.js.map +1 -1
  17. package/dist/commonjs/component/schema.d.ts +90 -28
  18. package/dist/commonjs/component/schema.d.ts.map +1 -1
  19. package/dist/commonjs/component/schema.js +76 -18
  20. package/dist/commonjs/component/schema.js.map +1 -1
  21. package/dist/commonjs/component/util.d.ts +148 -86
  22. package/dist/commonjs/component/util.d.ts.map +1 -1
  23. package/dist/commonjs/nextjs/index.d.ts.map +1 -1
  24. package/dist/commonjs/nextjs/index.js +3 -9
  25. package/dist/commonjs/nextjs/index.js.map +1 -1
  26. package/dist/commonjs/plugins/convex/index.d.ts +14 -11
  27. package/dist/commonjs/plugins/convex/index.d.ts.map +1 -1
  28. package/dist/commonjs/plugins/convex/index.js +3 -2
  29. package/dist/commonjs/plugins/convex/index.js.map +1 -1
  30. package/dist/commonjs/plugins/cross-domain/client.d.ts +1 -1
  31. package/dist/commonjs/plugins/cross-domain/index.d.ts +5 -3
  32. package/dist/commonjs/plugins/cross-domain/index.d.ts.map +1 -1
  33. package/dist/commonjs/plugins/cross-domain/index.js +19 -5
  34. package/dist/commonjs/plugins/cross-domain/index.js.map +1 -1
  35. package/dist/commonjs/react-start/index.d.ts +4 -4
  36. package/dist/commonjs/utils/index.d.ts +2 -0
  37. package/dist/commonjs/utils/index.d.ts.map +1 -0
  38. package/dist/commonjs/utils/index.js +8 -0
  39. package/dist/commonjs/utils/index.js.map +1 -0
  40. package/dist/esm/client/adapter.d.ts +10 -1
  41. package/dist/esm/client/adapter.d.ts.map +1 -1
  42. package/dist/esm/client/adapter.js +183 -192
  43. package/dist/esm/client/adapter.js.map +1 -1
  44. package/dist/esm/client/index.d.ts +238 -179
  45. package/dist/esm/client/index.d.ts.map +1 -1
  46. package/dist/esm/client/index.js +46 -58
  47. package/dist/esm/client/index.js.map +1 -1
  48. package/dist/esm/component/adapterTest.d.ts +19 -0
  49. package/dist/esm/component/adapterTest.d.ts.map +1 -0
  50. package/dist/esm/component/adapterTest.js +82 -0
  51. package/dist/esm/component/adapterTest.js.map +1 -0
  52. package/dist/esm/component/lib.d.ts +218 -548
  53. package/dist/esm/component/lib.d.ts.map +1 -1
  54. package/dist/esm/component/lib.js +315 -286
  55. package/dist/esm/component/lib.js.map +1 -1
  56. package/dist/esm/component/schema.d.ts +90 -28
  57. package/dist/esm/component/schema.d.ts.map +1 -1
  58. package/dist/esm/component/schema.js +76 -18
  59. package/dist/esm/component/schema.js.map +1 -1
  60. package/dist/esm/component/util.d.ts +148 -86
  61. package/dist/esm/component/util.d.ts.map +1 -1
  62. package/dist/esm/nextjs/index.d.ts.map +1 -1
  63. package/dist/esm/nextjs/index.js +3 -9
  64. package/dist/esm/nextjs/index.js.map +1 -1
  65. package/dist/esm/plugins/convex/index.d.ts +14 -11
  66. package/dist/esm/plugins/convex/index.d.ts.map +1 -1
  67. package/dist/esm/plugins/convex/index.js +3 -2
  68. package/dist/esm/plugins/convex/index.js.map +1 -1
  69. package/dist/esm/plugins/cross-domain/client.d.ts +1 -1
  70. package/dist/esm/plugins/cross-domain/index.d.ts +5 -3
  71. package/dist/esm/plugins/cross-domain/index.d.ts.map +1 -1
  72. package/dist/esm/plugins/cross-domain/index.js +19 -5
  73. package/dist/esm/plugins/cross-domain/index.js.map +1 -1
  74. package/dist/esm/react-start/index.d.ts +4 -4
  75. package/dist/esm/utils/index.d.ts +2 -0
  76. package/dist/esm/utils/index.d.ts.map +1 -0
  77. package/dist/esm/utils/index.js +8 -0
  78. package/dist/esm/utils/index.js.map +1 -0
  79. package/package.json +20 -5
  80. package/src/client/adapter.test.ts +144 -0
  81. package/src/client/adapter.ts +191 -195
  82. package/src/client/index.ts +46 -71
  83. package/src/component/_generated/api.d.ts +605 -149
  84. package/src/component/adapterTest.ts +141 -0
  85. package/src/component/lib.ts +444 -335
  86. package/src/component/schema.ts +81 -19
  87. package/src/nextjs/index.ts +3 -14
  88. package/src/plugins/convex/index.ts +5 -2
  89. package/src/plugins/cross-domain/index.ts +19 -5
  90. package/src/client/cors.ts +0 -425
  91. /package/src/{util.ts → utils/index.ts} +0 -0
@@ -0,0 +1,141 @@
1
+ import {
2
+ convexAdapter,
3
+ AuthFunctions,
4
+ BetterAuth,
5
+ PublicAuthFunctions,
6
+ } from "../client";
7
+ import { api, internal } from "./_generated/api";
8
+ import { GenericCtx, mutation, query } from "./_generated/server";
9
+ import {
10
+ GenericMutationCtx,
11
+ GenericQueryCtx,
12
+ RegisteredMutation,
13
+ RegisteredQuery,
14
+ } from "convex/server";
15
+
16
+ // @ts-expect-error - this is a test
17
+ const authFunctions: AuthFunctions = internal.adapterTest as any;
18
+
19
+ const publicAuthFunctions: PublicAuthFunctions = api.adapterTest as any;
20
+
21
+ export const betterAuthComponent = new BetterAuth(api as any, {
22
+ authFunctions,
23
+ publicAuthFunctions,
24
+ verbose: false,
25
+ }) as any;
26
+
27
+ export const createAdapter = (ctx: GenericCtx) =>
28
+ convexAdapter(ctx, betterAuthComponent, {
29
+ debugLogs: {
30
+ isRunningAdapterTests: true,
31
+ },
32
+ });
33
+
34
+ export const {
35
+ createUser,
36
+ deleteUser,
37
+ updateUser,
38
+ createSession,
39
+ isAuthenticated,
40
+ } = betterAuthComponent.createAuthFunctions({
41
+ onCreateUser: async (ctx: GenericCtx, args: any) => {
42
+ // noop
43
+ // not required for the adapter test
44
+ },
45
+ });
46
+
47
+ export const deserialize = (data: any) => {
48
+ const dateStringRegex =
49
+ /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/;
50
+ return Object.fromEntries(
51
+ Object.entries(data).map(([key, value]) => [
52
+ key,
53
+ dateStringRegex.test(value as string) ? new Date(value as string) : value,
54
+ ])
55
+ );
56
+ };
57
+
58
+ export const serialize = (data: any) => {
59
+ if (!data) {
60
+ return data;
61
+ }
62
+ return Object.fromEntries(
63
+ Object.entries(data).map(([key, value]) => [
64
+ key,
65
+ value instanceof Date ? value.toISOString() : value,
66
+ ])
67
+ );
68
+ };
69
+
70
+ export const create: RegisteredMutation<"public", any, Promise<any>> = mutation(
71
+ async (ctx: GenericMutationCtx<any>, args: any) => {
72
+ const adapter = createAdapter(ctx);
73
+ const result = await adapter({}).create({
74
+ ...args,
75
+ data: deserialize(args.data),
76
+ });
77
+ return serialize(result);
78
+ }
79
+ );
80
+
81
+ export const findOne: RegisteredQuery<"public", any, Promise<any>> = query(
82
+ async (ctx: GenericQueryCtx<any>, args: any) => {
83
+ const adapter = createAdapter(ctx);
84
+ const result = await adapter({}).findOne(args);
85
+ return serialize(result);
86
+ }
87
+ );
88
+
89
+ export const findMany: RegisteredQuery<"public", any, Promise<any>> = query(
90
+ async (ctx: GenericQueryCtx<any>, args: any) => {
91
+ const adapter = createAdapter(ctx);
92
+ const result = await adapter({}).findMany(args);
93
+ return result.map(serialize);
94
+ }
95
+ );
96
+
97
+ export const count: RegisteredQuery<"public", any, Promise<any>> = query(
98
+ async (ctx: GenericQueryCtx<any>, args: any) => {
99
+ const adapter = createAdapter(ctx);
100
+ return adapter({}).count(args);
101
+ }
102
+ );
103
+
104
+ export const update: RegisteredMutation<"public", any, Promise<any>> = mutation(
105
+ async (ctx: GenericMutationCtx<any>, args: any) => {
106
+ const adapter = createAdapter(ctx);
107
+ const result = await adapter({}).update({
108
+ ...args,
109
+ update: deserialize(args.update),
110
+ });
111
+ return serialize(result);
112
+ }
113
+ );
114
+
115
+ export const updateMany: RegisteredMutation<
116
+ "public",
117
+ any,
118
+ Promise<any>
119
+ > = mutation(async (ctx: GenericMutationCtx<any>, args: any) => {
120
+ const adapter = createAdapter(ctx);
121
+ return adapter({}).updateMany(args);
122
+ });
123
+
124
+ const deleteMutation: RegisteredMutation<
125
+ "public",
126
+ any,
127
+ Promise<any>
128
+ > = mutation(async (ctx: GenericMutationCtx<any>, args: any) => {
129
+ const adapter = createAdapter(ctx);
130
+ await adapter({}).delete(args);
131
+ });
132
+ export { deleteMutation as delete };
133
+
134
+ export const deleteMany: RegisteredMutation<
135
+ "public",
136
+ any,
137
+ Promise<any>
138
+ > = mutation(async (ctx: GenericMutationCtx<any>, args: any) => {
139
+ const adapter = createAdapter(ctx);
140
+ return adapter({}).deleteMany(args);
141
+ });