@convex-dev/better-auth 0.9.7 → 0.9.8

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 (249) hide show
  1. package/dist/auth.d.ts.map +1 -0
  2. package/dist/{commonjs/auth.js → auth.js} +2 -2
  3. package/dist/auth.js.map +1 -0
  4. package/dist/client/adapter.d.ts +15 -0
  5. package/dist/client/adapter.d.ts.map +1 -0
  6. package/dist/{commonjs/client → client}/adapter.js +12 -3
  7. package/dist/client/adapter.js.map +1 -0
  8. package/dist/{commonjs/client → client}/adapterUtils.d.ts +15 -15
  9. package/dist/client/adapterUtils.d.ts.map +1 -0
  10. package/dist/{esm/client → client}/adapterUtils.js +1 -0
  11. package/dist/client/adapterUtils.js.map +1 -0
  12. package/dist/client/createSchema.d.ts.map +1 -0
  13. package/dist/client/createSchema.js.map +1 -0
  14. package/dist/{commonjs/client → client}/index.d.ts +23 -27
  15. package/dist/client/index.d.ts.map +1 -0
  16. package/dist/{commonjs/client → client}/index.js +24 -5
  17. package/dist/client/index.js.map +1 -0
  18. package/dist/client/plugins/index.d.ts.map +1 -0
  19. package/dist/client/plugins/index.js.map +1 -0
  20. package/dist/component/_generated/api.d.ts +36 -0
  21. package/dist/component/_generated/api.d.ts.map +1 -0
  22. package/{src → dist}/component/_generated/api.js +11 -3
  23. package/dist/component/_generated/api.js.map +1 -0
  24. package/dist/component/_generated/component.d.ts +794 -0
  25. package/dist/component/_generated/component.d.ts.map +1 -0
  26. package/dist/component/_generated/component.js +11 -0
  27. package/dist/component/_generated/component.js.map +1 -0
  28. package/dist/component/_generated/dataModel.d.ts +46 -0
  29. package/dist/component/_generated/dataModel.d.ts.map +1 -0
  30. package/dist/component/_generated/dataModel.js +11 -0
  31. package/dist/component/_generated/dataModel.js.map +1 -0
  32. package/{src → dist}/component/_generated/server.d.ts +10 -38
  33. package/dist/component/_generated/server.d.ts.map +1 -0
  34. package/dist/{commonjs/component → component}/_generated/server.js +9 -5
  35. package/dist/component/_generated/server.js.map +1 -0
  36. package/dist/{commonjs/component → component}/adapter.d.ts +11 -11
  37. package/dist/component/adapter.d.ts.map +1 -0
  38. package/dist/component/adapter.js.map +1 -0
  39. package/dist/{commonjs/component → component}/adapterTest.d.ts +2 -2
  40. package/dist/component/adapterTest.d.ts.map +1 -0
  41. package/dist/component/adapterTest.js.map +1 -0
  42. package/dist/component/convex.config.d.ts.map +1 -0
  43. package/dist/component/convex.config.js.map +1 -0
  44. package/dist/{commonjs/component → component}/schema.d.ts +6 -28
  45. package/dist/component/schema.d.ts.map +1 -0
  46. package/dist/{esm/component → component}/schema.js +2 -10
  47. package/dist/component/schema.js.map +1 -0
  48. package/dist/{esm/nextjs → nextjs}/index.d.ts +2 -2
  49. package/dist/nextjs/index.d.ts.map +1 -0
  50. package/dist/{commonjs/nextjs → nextjs}/index.js +1 -0
  51. package/dist/nextjs/index.js.map +1 -0
  52. package/dist/plugins/convex/client.d.ts.map +1 -0
  53. package/dist/{commonjs/plugins → plugins}/convex/client.js +1 -0
  54. package/dist/plugins/convex/client.js.map +1 -0
  55. package/dist/{commonjs/plugins → plugins}/convex/index.d.ts +22 -4
  56. package/dist/plugins/convex/index.d.ts.map +1 -0
  57. package/dist/{esm/plugins → plugins}/convex/index.js +2 -0
  58. package/dist/plugins/convex/index.js.map +1 -0
  59. package/dist/{commonjs/plugins → plugins}/cross-domain/client.d.ts +3 -3
  60. package/dist/plugins/cross-domain/client.d.ts.map +1 -0
  61. package/dist/{commonjs/plugins → plugins}/cross-domain/client.js +1 -0
  62. package/dist/plugins/cross-domain/client.js.map +1 -0
  63. package/dist/{commonjs/plugins → plugins}/cross-domain/index.d.ts +22 -5
  64. package/dist/plugins/cross-domain/index.d.ts.map +1 -0
  65. package/dist/{esm/plugins → plugins}/cross-domain/index.js +1 -0
  66. package/dist/plugins/cross-domain/index.js.map +1 -0
  67. package/dist/plugins/index.d.ts.map +1 -0
  68. package/dist/plugins/index.js.map +1 -0
  69. package/dist/{commonjs/react → react}/index.d.ts +4 -4
  70. package/dist/react/index.d.ts.map +1 -0
  71. package/dist/{commonjs/react → react}/index.js +9 -3
  72. package/dist/react/index.js.map +1 -0
  73. package/dist/{esm/react-start → react-start}/index.d.ts +2 -2
  74. package/dist/react-start/index.d.ts.map +1 -0
  75. package/dist/{commonjs/react-start → react-start}/index.js +3 -0
  76. package/dist/react-start/index.js.map +1 -0
  77. package/dist/{commonjs/utils → utils}/index.d.ts +2 -2
  78. package/dist/utils/index.d.ts.map +1 -0
  79. package/dist/{commonjs/utils → utils}/index.js +2 -0
  80. package/dist/utils/index.js.map +1 -0
  81. package/package.json +74 -124
  82. package/src/auth.ts +3 -3
  83. package/src/client/adapter.test.ts +2 -2
  84. package/src/client/adapter.ts +31 -23
  85. package/src/client/adapterUtils.ts +14 -14
  86. package/src/client/index.ts +40 -54
  87. package/src/component/_generated/api.ts +52 -0
  88. package/src/component/_generated/component.ts +2019 -0
  89. package/src/component/_generated/server.ts +161 -0
  90. package/src/component/adapterTest.ts +2 -2
  91. package/src/component/schema.ts +7 -15
  92. package/src/nextjs/index.ts +3 -2
  93. package/src/plugins/convex/client.ts +1 -1
  94. package/src/plugins/convex/index.ts +2 -1
  95. package/src/plugins/cross-domain/client.ts +3 -3
  96. package/src/plugins/cross-domain/index.ts +1 -2
  97. package/src/react/index.tsx +7 -6
  98. package/src/react-start/index.ts +6 -5
  99. package/src/test.ts +18 -0
  100. package/src/utils/index.ts +5 -5
  101. package/dist/commonjs/auth.d.ts.map +0 -1
  102. package/dist/commonjs/auth.js.map +0 -1
  103. package/dist/commonjs/client/adapter.d.ts +0 -15
  104. package/dist/commonjs/client/adapter.d.ts.map +0 -1
  105. package/dist/commonjs/client/adapter.js.map +0 -1
  106. package/dist/commonjs/client/adapterUtils.d.ts.map +0 -1
  107. package/dist/commonjs/client/adapterUtils.js +0 -437
  108. package/dist/commonjs/client/adapterUtils.js.map +0 -1
  109. package/dist/commonjs/client/createSchema.d.ts.map +0 -1
  110. package/dist/commonjs/client/createSchema.js.map +0 -1
  111. package/dist/commonjs/client/index.d.ts.map +0 -1
  112. package/dist/commonjs/client/index.js.map +0 -1
  113. package/dist/commonjs/client/plugins/index.d.ts.map +0 -1
  114. package/dist/commonjs/client/plugins/index.js.map +0 -1
  115. package/dist/commonjs/component/_generated/api.d.ts +0 -12
  116. package/dist/commonjs/component/_generated/api.d.ts.map +0 -1
  117. package/dist/commonjs/component/_generated/api.js +0 -22
  118. package/dist/commonjs/component/_generated/api.js.map +0 -1
  119. package/dist/commonjs/component/_generated/server.d.ts +0 -64
  120. package/dist/commonjs/component/_generated/server.d.ts.map +0 -1
  121. package/dist/commonjs/component/_generated/server.js.map +0 -1
  122. package/dist/commonjs/component/adapter.d.ts.map +0 -1
  123. package/dist/commonjs/component/adapter.js.map +0 -1
  124. package/dist/commonjs/component/adapterTest.d.ts.map +0 -1
  125. package/dist/commonjs/component/adapterTest.js.map +0 -1
  126. package/dist/commonjs/component/convex.config.d.ts.map +0 -1
  127. package/dist/commonjs/component/convex.config.js.map +0 -1
  128. package/dist/commonjs/component/schema.d.ts.map +0 -1
  129. package/dist/commonjs/component/schema.js +0 -147
  130. package/dist/commonjs/component/schema.js.map +0 -1
  131. package/dist/commonjs/nextjs/index.d.ts +0 -10
  132. package/dist/commonjs/nextjs/index.d.ts.map +0 -1
  133. package/dist/commonjs/nextjs/index.js.map +0 -1
  134. package/dist/commonjs/package.json +0 -3
  135. package/dist/commonjs/plugins/convex/client.d.ts.map +0 -1
  136. package/dist/commonjs/plugins/convex/client.js.map +0 -1
  137. package/dist/commonjs/plugins/convex/index.d.ts.map +0 -1
  138. package/dist/commonjs/plugins/convex/index.js +0 -261
  139. package/dist/commonjs/plugins/convex/index.js.map +0 -1
  140. package/dist/commonjs/plugins/cross-domain/client.d.ts.map +0 -1
  141. package/dist/commonjs/plugins/cross-domain/client.js.map +0 -1
  142. package/dist/commonjs/plugins/cross-domain/index.d.ts.map +0 -1
  143. package/dist/commonjs/plugins/cross-domain/index.js +0 -165
  144. package/dist/commonjs/plugins/cross-domain/index.js.map +0 -1
  145. package/dist/commonjs/plugins/index.d.ts.map +0 -1
  146. package/dist/commonjs/plugins/index.js.map +0 -1
  147. package/dist/commonjs/react/index.d.ts.map +0 -1
  148. package/dist/commonjs/react/index.js.map +0 -1
  149. package/dist/commonjs/react-start/index.d.ts +0 -43
  150. package/dist/commonjs/react-start/index.d.ts.map +0 -1
  151. package/dist/commonjs/react-start/index.js.map +0 -1
  152. package/dist/commonjs/utils/index.d.ts.map +0 -1
  153. package/dist/commonjs/utils/index.js.map +0 -1
  154. package/dist/esm/auth.d.ts +0 -4
  155. package/dist/esm/auth.d.ts.map +0 -1
  156. package/dist/esm/auth.js +0 -44
  157. package/dist/esm/auth.js.map +0 -1
  158. package/dist/esm/client/adapter.d.ts +0 -15
  159. package/dist/esm/client/adapter.d.ts.map +0 -1
  160. package/dist/esm/client/adapter.js +0 -264
  161. package/dist/esm/client/adapter.js.map +0 -1
  162. package/dist/esm/client/adapterUtils.d.ts +0 -66
  163. package/dist/esm/client/adapterUtils.d.ts.map +0 -1
  164. package/dist/esm/client/adapterUtils.js.map +0 -1
  165. package/dist/esm/client/createSchema.d.ts +0 -19
  166. package/dist/esm/client/createSchema.d.ts.map +0 -1
  167. package/dist/esm/client/createSchema.js +0 -108
  168. package/dist/esm/client/createSchema.js.map +0 -1
  169. package/dist/esm/client/index.d.ts +0 -279
  170. package/dist/esm/client/index.d.ts.map +0 -1
  171. package/dist/esm/client/index.js +0 -462
  172. package/dist/esm/client/index.js.map +0 -1
  173. package/dist/esm/client/plugins/index.d.ts +0 -3
  174. package/dist/esm/client/plugins/index.d.ts.map +0 -1
  175. package/dist/esm/client/plugins/index.js +0 -3
  176. package/dist/esm/client/plugins/index.js.map +0 -1
  177. package/dist/esm/component/_generated/api.d.ts +0 -12
  178. package/dist/esm/component/_generated/api.d.ts.map +0 -1
  179. package/dist/esm/component/_generated/api.js +0 -22
  180. package/dist/esm/component/_generated/api.js.map +0 -1
  181. package/dist/esm/component/_generated/server.d.ts +0 -64
  182. package/dist/esm/component/_generated/server.d.ts.map +0 -1
  183. package/dist/esm/component/_generated/server.js +0 -74
  184. package/dist/esm/component/_generated/server.js.map +0 -1
  185. package/dist/esm/component/adapter.d.ts +0 -130
  186. package/dist/esm/component/adapter.d.ts.map +0 -1
  187. package/dist/esm/component/adapter.js +0 -5
  188. package/dist/esm/component/adapter.js.map +0 -1
  189. package/dist/esm/component/adapterTest.d.ts +0 -17
  190. package/dist/esm/component/adapterTest.d.ts.map +0 -1
  191. package/dist/esm/component/adapterTest.js +0 -68
  192. package/dist/esm/component/adapterTest.js.map +0 -1
  193. package/dist/esm/component/convex.config.d.ts +0 -3
  194. package/dist/esm/component/convex.config.d.ts.map +0 -1
  195. package/dist/esm/component/convex.config.js +0 -4
  196. package/dist/esm/component/convex.config.js.map +0 -1
  197. package/dist/esm/component/schema.d.ts +0 -496
  198. package/dist/esm/component/schema.d.ts.map +0 -1
  199. package/dist/esm/component/schema.js.map +0 -1
  200. package/dist/esm/nextjs/index.d.ts.map +0 -1
  201. package/dist/esm/nextjs/index.js +0 -44
  202. package/dist/esm/nextjs/index.js.map +0 -1
  203. package/dist/esm/package.json +0 -3
  204. package/dist/esm/plugins/convex/client.d.ts +0 -6
  205. package/dist/esm/plugins/convex/client.d.ts.map +0 -1
  206. package/dist/esm/plugins/convex/client.js +0 -7
  207. package/dist/esm/plugins/convex/client.js.map +0 -1
  208. package/dist/esm/plugins/convex/index.d.ts +0 -291
  209. package/dist/esm/plugins/convex/index.d.ts.map +0 -1
  210. package/dist/esm/plugins/convex/index.js.map +0 -1
  211. package/dist/esm/plugins/cross-domain/client.d.ts +0 -132
  212. package/dist/esm/plugins/cross-domain/client.d.ts.map +0 -1
  213. package/dist/esm/plugins/cross-domain/client.js +0 -176
  214. package/dist/esm/plugins/cross-domain/client.js.map +0 -1
  215. package/dist/esm/plugins/cross-domain/index.d.ts +0 -89
  216. package/dist/esm/plugins/cross-domain/index.d.ts.map +0 -1
  217. package/dist/esm/plugins/cross-domain/index.js.map +0 -1
  218. package/dist/esm/plugins/index.d.ts +0 -3
  219. package/dist/esm/plugins/index.d.ts.map +0 -1
  220. package/dist/esm/plugins/index.js +0 -3
  221. package/dist/esm/plugins/index.js.map +0 -1
  222. package/dist/esm/react/index.d.ts +0 -30
  223. package/dist/esm/react/index.d.ts.map +0 -1
  224. package/dist/esm/react/index.js +0 -64
  225. package/dist/esm/react/index.js.map +0 -1
  226. package/dist/esm/react-start/index.d.ts.map +0 -1
  227. package/dist/esm/react-start/index.js +0 -122
  228. package/dist/esm/react-start/index.js.map +0 -1
  229. package/dist/esm/utils/index.d.ts +0 -14
  230. package/dist/esm/utils/index.d.ts.map +0 -1
  231. package/dist/esm/utils/index.js +0 -37
  232. package/dist/esm/utils/index.js.map +0 -1
  233. package/plugins/package.json +0 -5
  234. package/react/package.json +0 -5
  235. package/src/component/_generated/api.d.ts +0 -2145
  236. package/src/component/_generated/server.js +0 -90
  237. /package/dist/{commonjs/auth.d.ts → auth.d.ts} +0 -0
  238. /package/dist/{commonjs/client → client}/createSchema.d.ts +0 -0
  239. /package/dist/{commonjs/client → client}/createSchema.js +0 -0
  240. /package/dist/{commonjs/client → client}/plugins/index.d.ts +0 -0
  241. /package/dist/{commonjs/client → client}/plugins/index.js +0 -0
  242. /package/dist/{commonjs/component → component}/adapter.js +0 -0
  243. /package/dist/{commonjs/component → component}/adapterTest.js +0 -0
  244. /package/dist/{commonjs/component → component}/convex.config.d.ts +0 -0
  245. /package/dist/{commonjs/component → component}/convex.config.js +0 -0
  246. /package/dist/{commonjs/plugins → plugins}/convex/client.d.ts +0 -0
  247. /package/dist/{commonjs/plugins → plugins}/index.d.ts +0 -0
  248. /package/dist/{commonjs/plugins → plugins}/index.js +0 -0
  249. /package/src/component/_generated/{dataModel.d.ts → dataModel.ts} +0 -0
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "bugs": {
7
7
  "url": "https://github.com/get-convex/better-auth/issues"
8
8
  },
9
- "version": "0.9.7",
9
+ "version": "0.9.8",
10
10
  "license": "Apache-2.0",
11
11
  "keywords": [
12
12
  "convex",
@@ -18,171 +18,121 @@
18
18
  ],
19
19
  "type": "module",
20
20
  "scripts": {
21
- "build": "npm run build:esm && npm run build:cjs",
22
- "build:esm": "tsc --project ./esm.json && tsc-alias -p ./esm.json && npm run build:esm:generatePackageJson",
23
- "build:cjs": "tsc --project ./commonjs.json && npm run build:cjs:generatePackageJson",
24
- "build:esm:generatePackageJson": "echo '{\\n \"type\": \"module\"\\n}' > dist/esm/package.json",
25
- "build:cjs:generatePackageJson": "echo '{\\n \"type\": \"commonjs\"\\n}' > dist/commonjs/package.json",
26
- "build:watch": "chokidar 'tsconfig*.json' 'src/**/*.{ts,tsx}' -c 'npm run build' --initial",
27
- "typecheck": "tsc --noEmit",
28
- "prepack": "node node10stubs.mjs",
29
- "prepublishOnly": "npm run build",
30
- "postpack": "node node10stubs.mjs --cleanup",
31
- "generate": "concurrently \"cd examples/next && npm run generate\" \"cd examples/react && npm run generate\" \"cd examples/tanstack && npm run generate\"",
32
- "test": "vitest run",
21
+ "dev": "cd examples/react && npm run dev",
22
+ "clean": "rm -rf dist *.tsbuildinfo",
23
+ "build": "tsc --project ./tsconfig.build.json",
24
+ "typecheck": "tsc --noEmit && tsc -p examples/next && tsc -p examples/next/convex && tsc -p examples/react && tsc -p examples/react/convex && tsc -p examples/tanstack && tsc -p examples/tanstack/convex",
25
+ "lint": "eslint .",
26
+ "all": "run-p -r 'dev' 'test:watch'",
27
+ "test": "vitest run --typecheck",
28
+ "test:watch": "vitest --typecheck --clearScreen false",
33
29
  "test:debug": "vitest --inspect-brk --no-file-parallelism",
34
- "test:coverage": "vitest run --coverage --coverage.reporter=text"
30
+ "test:coverage": "vitest run --coverage --coverage.reporter=text",
31
+ "prepublishOnly": "npm run build",
32
+ "preversion": "npm run clean && npm ci && npm run build && run-p test lint typecheck",
33
+ "alpha": "npm version prerelease --preid alpha && npm publish --tag alpha && git push --tags",
34
+ "release": "npm version patch && npm publish && git push --tags && git push",
35
+ "version": "vim -c 'normal o' -c 'normal o## '$npm_package_version CHANGELOG.md && prettier -w CHANGELOG.md && git add CHANGELOG.md"
35
36
  },
36
37
  "files": [
37
38
  "dist",
38
- "src",
39
- "react",
40
- "plugins"
39
+ "src"
41
40
  ],
42
41
  "exports": {
43
42
  "./package.json": "./package.json",
44
43
  ".": {
45
- "import": {
46
- "@convex-dev/component-source": "./src/client/index.ts",
47
- "types": "./dist/esm/client/index.d.ts",
48
- "default": "./dist/esm/client/index.js"
49
- },
50
- "require": {
51
- "@convex-dev/component-source": "./src/client/index.ts",
52
- "types": "./dist/commonjs/client/index.d.ts",
53
- "default": "./dist/commonjs/client/index.js"
54
- }
44
+ "types": "./dist/client/index.d.ts",
45
+ "default": "./dist/client/index.js"
46
+ },
47
+ "./_generated/component.js": {
48
+ "types": "./dist/component/_generated/component.d.ts"
49
+ },
50
+ "./convex.config": {
51
+ "types": "./dist/component/convex.config.d.ts",
52
+ "default": "./dist/component/convex.config.js"
53
+ },
54
+ "./convex.config.js": {
55
+ "types": "./dist/component/convex.config.d.ts",
56
+ "default": "./dist/component/convex.config.js"
55
57
  },
56
58
  "./adapter": {
57
- "import": {
58
- "@convex-dev/component-source": "./src/component/adapter.ts",
59
- "types": "./dist/esm/component/adapter.d.ts",
60
- "default": "./dist/esm/component/adapter.js"
61
- },
62
- "require": {
63
- "@convex-dev/component-source": "./src/component/adapter.ts",
64
- "types": "./dist/commonjs/component/adapter.d.ts",
65
- "default": "./dist/commonjs/component/adapter.js"
66
- }
59
+ "types": "./dist/component/adapter.d.ts",
60
+ "default": "./dist/component/adapter.js"
67
61
  },
68
62
  "./client/plugins": {
69
- "import": {
70
- "@convex-dev/component-source": "./src/client/plugins/index.ts",
71
- "types": "./dist/esm/client/plugins/index.d.ts",
72
- "default": "./dist/esm/client/plugins/index.js"
73
- },
74
- "require": {
75
- "@convex-dev/component-source": "./src/client/plugins/index.ts",
76
- "types": "./dist/commonjs/client/plugins/index.d.ts",
77
- "default": "./dist/commonjs/client/plugins/index.js"
78
- }
63
+ "types": "./dist/client/plugins/index.d.ts",
64
+ "default": "./dist/client/plugins/index.js"
79
65
  },
80
66
  "./nextjs": {
81
- "import": {
82
- "@convex-dev/component-source": "./src/nextjs/index.ts",
83
- "types": "./dist/esm/nextjs/index.d.ts",
84
- "default": "./dist/esm/nextjs/index.js"
85
- },
86
- "require": {
87
- "@convex-dev/component-source": "./src/nextjs/index.ts",
88
- "types": "./dist/commonjs/nextjs/index.d.ts",
89
- "default": "./dist/commonjs/nextjs/index.js"
90
- }
67
+ "types": "./dist/nextjs/index.d.ts",
68
+ "default": "./dist/nextjs/index.js"
91
69
  },
92
70
  "./plugins": {
93
- "import": {
94
- "@convex-dev/component-source": "./src/plugins/index.ts",
95
- "types": "./dist/esm/plugins/index.d.ts",
96
- "default": "./dist/esm/plugins/index.js"
97
- },
98
- "require": {
99
- "@convex-dev/component-source": "./src/plugins/index.ts",
100
- "types": "./dist/commonjs/plugins/index.d.ts",
101
- "default": "./dist/commonjs/plugins/index.js"
102
- }
71
+ "types": "./dist/plugins/index.d.ts",
72
+ "default": "./dist/plugins/index.js"
103
73
  },
104
74
  "./react": {
105
- "import": {
106
- "@convex-dev/component-source": "./src/react/index.tsx",
107
- "types": "./dist/esm/react/index.d.ts",
108
- "default": "./dist/esm/react/index.js"
109
- },
110
- "require": {
111
- "@convex-dev/component-source": "./src/react/index.tsx",
112
- "types": "./dist/commonjs/react/index.d.ts",
113
- "default": "./dist/commonjs/react/index.js"
114
- }
75
+ "types": "./dist/react/index.d.ts",
76
+ "default": "./dist/react/index.js"
115
77
  },
116
78
  "./react-start": {
117
- "import": {
118
- "@convex-dev/component-source": "./src/react-start/index.ts",
119
- "types": "./dist/esm/react-start/index.d.ts",
120
- "default": "./dist/esm/react-start/index.js"
121
- },
122
- "require": {
123
- "@convex-dev/component-source": "./src/react-start/index.ts",
124
- "types": "./dist/commonjs/react-start/index.d.ts",
125
- "default": "./dist/commonjs/react-start/index.js"
126
- }
79
+ "types": "./dist/react-start/index.d.ts",
80
+ "default": "./dist/react-start/index.js"
127
81
  },
82
+ "./test": "./src/test.ts",
128
83
  "./utils": {
129
- "import": {
130
- "@convex-dev/component-source": "./src/utils/index.ts",
131
- "types": "./dist/esm/utils/index.d.ts",
132
- "default": "./dist/esm/utils/index.js"
133
- },
134
- "require": {
135
- "@convex-dev/component-source": "./src/utils/index.ts",
136
- "types": "./dist/commonjs/utils/index.d.ts",
137
- "default": "./dist/commonjs/utils/index.js"
138
- }
139
- },
140
- "./convex.config": {
141
- "import": {
142
- "@convex-dev/component-source": "./src/component/convex.config.ts",
143
- "types": "./dist/esm/component/convex.config.d.ts",
144
- "default": "./dist/esm/component/convex.config.js"
145
- }
84
+ "types": "./dist/utils/index.d.ts",
85
+ "default": "./dist/utils/index.js"
146
86
  }
147
87
  },
148
88
  "typesVersions": {
149
89
  "*": {
150
90
  "next-js": [
151
- "./dist/esm/nextjs/index.d.ts"
91
+ "./dist/nextjs/index.d.ts"
152
92
  ]
153
93
  }
154
94
  },
155
95
  "peerDependencies": {
156
- "better-auth": "1.3.27",
157
- "convex": ">=1.28.2 <1.35.0",
96
+ "better-auth": "1.3.34",
97
+ "convex": "^1.25.0",
158
98
  "react": "^18.3.1 || ^19.0.0",
159
99
  "react-dom": "^18.3.1 || ^19.0.0"
160
100
  },
161
101
  "devDependencies": {
162
102
  "@better-fetch/fetch": "^1.1.18",
163
- "@edge-runtime/vm": "^5.0.0",
164
- "@eslint/js": "^9.9.1",
103
+ "@edge-runtime/vm": "5.0.0",
104
+ "@eslint/eslintrc": "3.3.1",
105
+ "@eslint/js": "9.39.1",
165
106
  "@tanstack/react-start": "^1.132.37",
166
107
  "@types/common-tags": "^1.8.4",
167
- "@types/node": "^20",
168
- "@types/react": "19.1.6",
169
- "@types/react-dom": "19.1.6",
108
+ "@types/node": "20.19.24",
109
+ "@types/react": "18.3.26",
110
+ "@types/react-dom": "18.3.7",
170
111
  "@types/semver": "^7.7.0",
171
- "chokidar-cli": "^3.0.0",
112
+ "@vitejs/plugin-react": "5.0.4",
172
113
  "concurrently": "^9.2.0",
173
- "convex-test": "^0.0.33",
174
- "eslint": "^9.9.1",
175
- "globals": "^15.9.0",
114
+ "chokidar-cli": "3.0.0",
115
+ "convex": "^1.29.0",
116
+ "convex-test": "0.0.41",
117
+ "cpy-cli": "6.0.0",
118
+ "eslint": "9.39.1",
119
+ "eslint-plugin-react": "7.37.5",
120
+ "eslint-plugin-react-hooks": "5.2.0",
121
+ "eslint-plugin-react-refresh": "0.4.24",
122
+ "globals": "15.14.0",
176
123
  "next": "^15.1.8",
177
- "prettier": "3.2.5",
178
- "tsc-alias": "^1.8.16",
179
- "typescript": "5.8.3",
180
- "typescript-eslint": "^8.4.0",
181
- "vitest": "^3.2.2"
124
+ "npm-run-all2": "7.0.2",
125
+ "pkg-pr-new": "0.0.60",
126
+ "prettier": "3.6.2",
127
+ "react": "18.3.1",
128
+ "react-dom": "18.3.1",
129
+ "typescript": "5.9.3",
130
+ "typescript-eslint": "8.46.4",
131
+ "vite": "^7.1.5",
132
+ "vitest": "3.2.4"
182
133
  },
183
- "main": "./dist/commonjs/client/index.js",
184
- "types": "./dist/commonjs/client/index.d.ts",
185
- "module": "./dist/esm/client/index.js",
134
+ "types": "./dist/client/index.d.ts",
135
+ "module": "./dist/client/index.js",
186
136
  "dependencies": {
187
137
  "common-tags": "^1.8.2",
188
138
  "convex-helpers": "^0.1.95",
package/src/auth.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { betterAuth, BetterAuthOptions } from "better-auth";
1
+ import { betterAuth, type BetterAuthOptions } from "better-auth";
2
2
  import {
3
3
  anonymous,
4
4
  bearer,
@@ -13,9 +13,9 @@ import {
13
13
  twoFactor,
14
14
  username,
15
15
  } from "better-auth/plugins";
16
- import { convex } from "./plugins";
16
+ import { convex } from "./plugins/convex";
17
17
  import { passkey } from "better-auth/plugins/passkey";
18
- import { convexAdapter } from "./client";
18
+ import { convexAdapter } from "./client/adapter";
19
19
 
20
20
  // This is the config used to generate the schema
21
21
  const options = {
@@ -6,7 +6,7 @@ import { convexTest } from "convex-test";
6
6
  import { api } from "../component/_generated/api";
7
7
  import schema from "../component/schema";
8
8
  import { serialize } from "../component/adapterTest";
9
- import { Adapter } from "better-auth";
9
+ import type { DBAdapter } from "better-auth/adapters";
10
10
 
11
11
  export const getAdapter = (t: ReturnType<typeof convexTest>) => async () => {
12
12
  return {
@@ -43,7 +43,7 @@ export const getAdapter = (t: ReturnType<typeof convexTest>) => async () => {
43
43
  return t.mutation(api.adapterTest.deleteMany, data);
44
44
  },
45
45
  transaction: false as any,
46
- } satisfies Adapter;
46
+ } satisfies DBAdapter;
47
47
  };
48
48
 
49
49
  describe("Better Auth Adapter Tests", async () => {
@@ -1,24 +1,26 @@
1
1
  import {
2
2
  createAdapterFactory,
3
- DBAdapterDebugLogOption,
3
+ type DBAdapterDebugLogOption,
4
4
  } from "better-auth/adapters";
5
5
  import {
6
6
  createFunctionHandle,
7
- FunctionHandle,
8
- GenericActionCtx,
9
- GenericDataModel,
10
- PaginationOptions,
11
- PaginationResult,
12
- SchemaDefinition,
7
+ type FunctionHandle,
8
+ type GenericActionCtx,
9
+ type GenericDataModel,
10
+ type PaginationOptions,
11
+ type PaginationResult,
12
+ type SchemaDefinition,
13
+ type WithoutSystemFields,
13
14
  } from "convex/server";
14
- import { SetOptional } from "type-fest";
15
- import { AuthFunctions, GenericCtx, Triggers, UseApi } from ".";
15
+ import type { SetOptional } from "type-fest";
16
16
  import defaultSchema from "../component/schema";
17
- import { api as componentApi } from "../component/_generated/api";
18
- import { Where } from "better-auth/types";
17
+ import type { Where } from "better-auth/types";
19
18
  import { asyncMap } from "convex-helpers";
20
19
  import { prop, sortBy, unique } from "remeda";
21
20
  import { isRunMutationCtx } from "../utils";
21
+ import type { Doc, TableNames } from "../component/_generated/dataModel";
22
+ import type { ComponentApi } from "../component/_generated/component";
23
+ import type { AuthFunctions, GenericCtx, Triggers } from ".";
22
24
 
23
25
  const handlePagination = async (
24
26
  next: ({
@@ -47,7 +49,7 @@ const handlePagination = async (
47
49
  state.cursor =
48
50
  result.pageStatus === "SplitRecommended" ||
49
51
  result.pageStatus === "SplitRequired"
50
- ? result.splitCursor ?? result.continueCursor
52
+ ? (result.splitCursor ?? result.continueCursor)
51
53
  : result.continueCursor;
52
54
  if (result.page) {
53
55
  state.docs.push(...result.page);
@@ -79,8 +81,9 @@ const handlePagination = async (
79
81
  return state;
80
82
  };
81
83
 
82
- type ConvexCleanedWhere = Where & {
84
+ type ConvexCleanedWhere<TableName extends TableNames = TableNames> = Where & {
83
85
  value: string | number | boolean | string[] | number[] | null;
86
+ field: keyof WithoutSystemFields<Doc<TableName>> & string;
84
87
  };
85
88
 
86
89
  const parseWhere = (where?: Where[]): ConvexCleanedWhere[] => {
@@ -102,11 +105,8 @@ export const convexAdapter = <
102
105
  >(
103
106
  ctx: Ctx,
104
107
  api: {
105
- adapter: SetOptional<
106
- UseApi<typeof componentApi>["adapter"],
107
- "migrationRemoveUserId"
108
- >;
109
- adapterTest?: UseApi<typeof componentApi>["adapterTest"];
108
+ adapter: SetOptional<ComponentApi["adapter"], "migrationRemoveUserId">;
109
+ adapterTest?: ComponentApi["adapterTest"];
110
110
  },
111
111
  config: {
112
112
  debugLogs?: DBAdapterDebugLogOption;
@@ -156,7 +156,7 @@ export const convexAdapter = <
156
156
  isRunMutationCtx: isRunMutationCtx(ctx),
157
157
  },
158
158
  createSchema: async ({ file, tables }) => {
159
- const { createSchema } = await import("./createSchema");
159
+ const { createSchema } = await import("./createSchema.js");
160
160
  return createSchema({ file, tables });
161
161
  },
162
162
  create: async ({ model, data, select }): Promise<any> => {
@@ -170,7 +170,7 @@ export const convexAdapter = <
170
170
  )) as FunctionHandle<"mutation">)
171
171
  : undefined;
172
172
  return ctx.runMutation(api.adapter.create, {
173
- input: { model, data },
173
+ input: { model: model as any, data },
174
174
  select,
175
175
  onCreateHandle: onCreateHandle,
176
176
  });
@@ -180,6 +180,7 @@ export const convexAdapter = <
180
180
  for (const w of data.where) {
181
181
  const result = await ctx.runQuery(api.adapter.findOne, {
182
182
  ...data,
183
+ model: data.model as TableNames,
183
184
  where: parseWhere([w]),
184
185
  });
185
186
  if (result) {
@@ -189,6 +190,7 @@ export const convexAdapter = <
189
190
  }
190
191
  return await ctx.runQuery(api.adapter.findOne, {
191
192
  ...data,
193
+ model: data.model as TableNames,
192
194
  where: parseWhere(data.where),
193
195
  });
194
196
  },
@@ -202,6 +204,7 @@ export const convexAdapter = <
202
204
  async ({ paginationOpts }) => {
203
205
  return await ctx.runQuery(api.adapter.findMany, {
204
206
  ...data,
207
+ model: data.model as TableNames,
205
208
  where: parseWhere([w]),
206
209
  paginationOpts,
207
210
  });
@@ -225,6 +228,7 @@ export const convexAdapter = <
225
228
  async ({ paginationOpts }) => {
226
229
  return await ctx.runQuery(api.adapter.findMany, {
227
230
  ...data,
231
+ model: data.model as TableNames,
228
232
  where: parseWhere(data.where),
229
233
  paginationOpts,
230
234
  });
@@ -240,6 +244,7 @@ export const convexAdapter = <
240
244
  handlePagination(async ({ paginationOpts }) => {
241
245
  return await ctx.runQuery(api.adapter.findMany, {
242
246
  ...data,
247
+ model: data.model as TableNames,
243
248
  where: parseWhere([w]),
244
249
  paginationOpts,
245
250
  });
@@ -252,6 +257,7 @@ export const convexAdapter = <
252
257
  const result = await handlePagination(async ({ paginationOpts }) => {
253
258
  return await ctx.runQuery(api.adapter.findMany, {
254
259
  ...data,
260
+ model: data.model as TableNames,
255
261
  where: parseWhere(data.where),
256
262
  paginationOpts,
257
263
  });
@@ -272,7 +278,7 @@ export const convexAdapter = <
272
278
  : undefined;
273
279
  return ctx.runMutation(api.adapter.updateOne, {
274
280
  input: {
275
- model: data.model,
281
+ model: data.model as TableNames,
276
282
  where: parseWhere(data.where),
277
283
  update: data.update as any,
278
284
  },
@@ -294,7 +300,7 @@ export const convexAdapter = <
294
300
  : undefined;
295
301
  await ctx.runMutation(api.adapter.deleteOne, {
296
302
  input: {
297
- model: data.model,
303
+ model: data.model as TableNames,
298
304
  where: parseWhere(data.where),
299
305
  },
300
306
  onDeleteHandle: onDeleteHandle,
@@ -306,7 +312,7 @@ export const convexAdapter = <
306
312
  }
307
313
  const onDeleteHandle =
308
314
  config.authFunctions?.onDelete &&
309
- config.triggers?.[data.model]?.onDelete
315
+ config.triggers?.[data.model as TableNames]?.onDelete
310
316
  ? ((await createFunctionHandle(
311
317
  config.authFunctions.onDelete
312
318
  )) as FunctionHandle<"mutation">)
@@ -315,6 +321,7 @@ export const convexAdapter = <
315
321
  return await ctx.runMutation(api.adapter.deleteMany, {
316
322
  input: {
317
323
  ...data,
324
+ model: data.model as TableNames,
318
325
  where: parseWhere(data.where),
319
326
  },
320
327
  paginationOpts,
@@ -338,6 +345,7 @@ export const convexAdapter = <
338
345
  return await ctx.runMutation(api.adapter.updateMany, {
339
346
  input: {
340
347
  ...data,
348
+ model: data.model as TableNames,
341
349
  where: parseWhere(data.where),
342
350
  },
343
351
  paginationOpts,
@@ -1,18 +1,18 @@
1
1
  import { asyncMap } from "convex-helpers";
2
- import { GenericId, Infer, v } from "convex/values";
2
+ import { type GenericId, type Infer, v } from "convex/values";
3
3
  import {
4
- DocumentByName,
5
- GenericDataModel,
6
- GenericQueryCtx,
7
- PaginationOptions,
8
- PaginationResult,
9
- SchemaDefinition,
10
- TableNamesInDataModel,
4
+ type DocumentByName,
5
+ type GenericDataModel,
6
+ type GenericQueryCtx,
7
+ type PaginationOptions,
8
+ type PaginationResult,
9
+ type SchemaDefinition,
10
+ type TableNamesInDataModel,
11
11
  } from "convex/server";
12
12
  import { stream } from "convex-helpers/server/stream";
13
13
  import { mergedStream } from "convex-helpers/server/stream";
14
14
  import { stripIndent } from "common-tags";
15
- import { BetterAuthDbSchema } from "better-auth/db";
15
+ import type { BetterAuthDBSchema } from "better-auth/db";
16
16
 
17
17
  export const adapterWhereValidator = v.object({
18
18
  field: v.string(),
@@ -57,7 +57,7 @@ export const adapterArgsValidator = v.object({
57
57
  });
58
58
 
59
59
  const isUniqueField = (
60
- betterAuthSchema: BetterAuthDbSchema,
60
+ betterAuthSchema: BetterAuthDBSchema,
61
61
  model: string,
62
62
  field: string
63
63
  ) => {
@@ -72,7 +72,7 @@ const isUniqueField = (
72
72
  .includes(field);
73
73
  };
74
74
  export const hasUniqueFields = (
75
- betterAuthSchema: BetterAuthDbSchema,
75
+ betterAuthSchema: BetterAuthDBSchema,
76
76
  model: string,
77
77
  input: Record<string, any>
78
78
  ) => {
@@ -241,7 +241,7 @@ export const checkUniqueFields = async <
241
241
  >(
242
242
  ctx: GenericQueryCtx<GenericDataModel>,
243
243
  schema: Schema,
244
- betterAuthSchema: BetterAuthDbSchema,
244
+ betterAuthSchema: BetterAuthDBSchema,
245
245
  table: string,
246
246
  input: Record<string, any>,
247
247
  doc?: Record<string, any>
@@ -466,7 +466,7 @@ export const paginate = async <
466
466
  >(
467
467
  ctx: GenericQueryCtx<GenericDataModel>,
468
468
  schema: SchemaDefinition<any, any>,
469
- betterAuthSchema: BetterAuthDbSchema,
469
+ betterAuthSchema: BetterAuthDBSchema,
470
470
  args: Infer<typeof adapterArgsValidator> & {
471
471
  paginationOpts: PaginationOptions;
472
472
  }
@@ -623,7 +623,7 @@ export const listOne = async <
623
623
  >(
624
624
  ctx: GenericQueryCtx<GenericDataModel>,
625
625
  schema: SchemaDefinition<any, any>,
626
- betterAuthSchema: BetterAuthDbSchema,
626
+ betterAuthSchema: BetterAuthDBSchema,
627
627
  args: Infer<typeof adapterArgsValidator>
628
628
  ): Promise<Doc | null> => {
629
629
  return (