@yielded/auth-persistence-drizzle 0.1.0-beta.25 → 0.1.0-beta.26

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 (383) hide show
  1. package/README.md +4 -2
  2. package/dist/D1.d.mts +495 -1151
  3. package/dist/D1.mjs +41 -19
  4. package/dist/D1.mjs.map +1 -1
  5. package/dist/Libsql.d.mts +385 -1996
  6. package/dist/Libsql.mjs +43 -47
  7. package/dist/Libsql.mjs.map +1 -1
  8. package/dist/Mysql2.d.mts +397 -1743
  9. package/dist/Mysql2.mjs +35 -41
  10. package/dist/Mysql2.mjs.map +1 -1
  11. package/dist/Pglite.d.mts +397 -1743
  12. package/dist/Pglite.mjs +42 -31
  13. package/dist/Pglite.mjs.map +1 -1
  14. package/dist/Postgres.d.mts +397 -1743
  15. package/dist/Postgres.mjs +42 -31
  16. package/dist/Postgres.mjs.map +1 -1
  17. package/dist/SqliteBun.d.mts +385 -1992
  18. package/dist/SqliteBun.mjs +43 -43
  19. package/dist/SqliteBun.mjs.map +1 -1
  20. package/dist/SqliteDo.d.mts +385 -1991
  21. package/dist/SqliteDo.mjs +42 -41
  22. package/dist/SqliteDo.mjs.map +1 -1
  23. package/dist/SqliteNode.d.mts +385 -1992
  24. package/dist/SqliteNode.mjs +43 -43
  25. package/dist/SqliteNode.mjs.map +1 -1
  26. package/dist/SqliteWasm.d.mts +385 -1992
  27. package/dist/SqliteWasm.mjs +43 -43
  28. package/dist/SqliteWasm.mjs.map +1 -1
  29. package/dist/drizzle/d1-identity.mjs +2 -2
  30. package/dist/drizzle/d1-identity.mjs.map +1 -1
  31. package/dist/drizzle/driver-types.d.mts +15 -0
  32. package/dist/drizzle/email-drivers.mjs +32 -0
  33. package/dist/drizzle/email-drivers.mjs.map +1 -0
  34. package/dist/drizzle/email-model.d.mts +9 -13
  35. package/dist/drizzle/email-target.d.mts +10 -11
  36. package/dist/drizzle/email-target.mjs +33 -70
  37. package/dist/drizzle/email-target.mjs.map +1 -1
  38. package/dist/drizzle/model.d.mts +1 -10
  39. package/dist/drizzle/model.mjs +1 -2
  40. package/dist/drizzle/model.mjs.map +1 -1
  41. package/dist/drizzle/mysql-identity.mjs +3 -6
  42. package/dist/drizzle/mysql-identity.mjs.map +1 -1
  43. package/dist/drizzle/native-clock.d.mts +9 -0
  44. package/dist/drizzle/native-clock.mjs +18 -0
  45. package/dist/drizzle/native-clock.mjs.map +1 -0
  46. package/dist/drizzle/native-database.d.mts +46 -0
  47. package/dist/drizzle/native-database.mjs +6 -5
  48. package/dist/drizzle/native-database.mjs.map +1 -1
  49. package/dist/drizzle/native-sql-table.mjs +13 -5
  50. package/dist/drizzle/native-sql-table.mjs.map +1 -1
  51. package/dist/drizzle/native-target.d.mts +6 -0
  52. package/dist/drizzle/native-target.mjs +44 -0
  53. package/dist/drizzle/native-target.mjs.map +1 -0
  54. package/dist/drizzle/oauth-connected-drivers.mjs +4 -56
  55. package/dist/drizzle/oauth-connected-drivers.mjs.map +1 -1
  56. package/dist/drizzle/oauth-connected-model.d.mts +5 -22
  57. package/dist/drizzle/oauth-connected-model.mjs +1 -7
  58. package/dist/drizzle/oauth-connected-reference.d.mts +5 -7
  59. package/dist/drizzle/oauth-connected-reference.mjs +11 -3
  60. package/dist/drizzle/oauth-connected-reference.mjs.map +1 -1
  61. package/dist/drizzle/oauth-drivers.mjs +1 -2
  62. package/dist/drizzle/oauth-drivers.mjs.map +1 -1
  63. package/dist/drizzle/oauth-model.d.mts +11 -37
  64. package/dist/drizzle/oauth-model.mjs +3 -4
  65. package/dist/drizzle/oauth-model.mjs.map +1 -1
  66. package/dist/drizzle/oauth-proxy.d.mts +1 -1
  67. package/dist/drizzle/oauth-proxy.mjs +1 -1
  68. package/dist/drizzle/oauth-target.d.mts +9 -6
  69. package/dist/drizzle/oauth-target.mjs +47 -15
  70. package/dist/drizzle/oauth-target.mjs.map +1 -1
  71. package/dist/drizzle/passkey/target.d.mts +14 -0
  72. package/dist/drizzle/passkey/target.mjs +52 -0
  73. package/dist/drizzle/passkey/target.mjs.map +1 -0
  74. package/dist/drizzle/passkey/write-target.d.mts +11 -0
  75. package/dist/drizzle/passkey/write-target.mjs +28 -0
  76. package/dist/drizzle/passkey/write-target.mjs.map +1 -0
  77. package/dist/drizzle/passkey-drivers.mjs +2 -4
  78. package/dist/drizzle/passkey-drivers.mjs.map +1 -1
  79. package/dist/drizzle/passkey-model.d.mts +5 -26
  80. package/dist/drizzle/passkey-model.mjs +2 -8
  81. package/dist/drizzle/passkey-registration-ceremony-model.d.mts +3 -6
  82. package/dist/drizzle/passkey-write-drivers.mjs +2 -3
  83. package/dist/drizzle/passkey-write-drivers.mjs.map +1 -1
  84. package/dist/drizzle/passkey-write-model.d.mts +7 -9
  85. package/dist/drizzle/passkey-write-model.mjs +1 -3
  86. package/dist/drizzle/passkey-write-model.mjs.map +1 -1
  87. package/dist/drizzle/password-drivers.mjs +31 -0
  88. package/dist/drizzle/password-drivers.mjs.map +1 -0
  89. package/dist/drizzle/password-model.d.mts +7 -10
  90. package/dist/drizzle/password-target.d.mts +7 -8
  91. package/dist/drizzle/password-target.mjs +23 -68
  92. package/dist/drizzle/password-target.mjs.map +1 -1
  93. package/dist/drizzle/pg-identity.mjs +3 -6
  94. package/dist/drizzle/pg-identity.mjs.map +1 -1
  95. package/dist/drizzle/phone-drivers.mjs +24 -0
  96. package/dist/drizzle/phone-drivers.mjs.map +1 -0
  97. package/dist/drizzle/phone-model.d.mts +13 -104
  98. package/dist/drizzle/phone-model.mjs +5 -33
  99. package/dist/drizzle/phone-model.mjs.map +1 -1
  100. package/dist/drizzle/phone-target.mjs +22 -171
  101. package/dist/drizzle/phone-target.mjs.map +1 -1
  102. package/dist/drizzle/proof-drivers.mjs +24 -0
  103. package/dist/drizzle/proof-drivers.mjs.map +1 -0
  104. package/dist/drizzle/proof-model.d.mts +7 -15
  105. package/dist/drizzle/proof-target.d.mts +5 -5
  106. package/dist/drizzle/proof-target.mjs +14 -28
  107. package/dist/drizzle/proof-target.mjs.map +1 -1
  108. package/dist/drizzle/session-drivers.mjs +97 -0
  109. package/dist/drizzle/session-drivers.mjs.map +1 -0
  110. package/dist/drizzle/session-model.d.mts +11 -22
  111. package/dist/drizzle/sqlite-do-database.d.mts +3 -3
  112. package/dist/drizzle/sqlite-do-database.mjs +6 -1
  113. package/dist/drizzle/sqlite-do-database.mjs.map +1 -1
  114. package/dist/drizzle/sqlite-identity.mjs +3 -5
  115. package/dist/drizzle/sqlite-identity.mjs.map +1 -1
  116. package/dist/drizzle/step-up-model.d.mts +2 -5
  117. package/dist/drizzle/storage-validation.mjs +2 -1
  118. package/dist/drizzle/storage-validation.mjs.map +1 -1
  119. package/dist/drizzle/totp-model.d.mts +7 -74
  120. package/dist/drizzle/totp-model.mjs +1 -5
  121. package/dist/drizzle/totp-model.mjs.map +1 -1
  122. package/dist/drizzle/totp-target.mjs +39 -75
  123. package/dist/drizzle/totp-target.mjs.map +1 -1
  124. package/dist/drizzle/transaction-handle.mjs +13 -0
  125. package/dist/drizzle/transaction-handle.mjs.map +1 -0
  126. package/dist/drizzle/transaction-mysql.mjs +43 -12
  127. package/dist/drizzle/transaction-mysql.mjs.map +1 -1
  128. package/dist/index.d.mts +17 -22
  129. package/dist/index.mjs +10 -16
  130. package/dist/internal/drizzle-postgres.mjs +4 -6
  131. package/dist/internal/drizzle-postgres.mjs.map +1 -1
  132. package/dist/internal/drizzle-sqlite.mjs +4 -6
  133. package/dist/internal/drizzle-sqlite.mjs.map +1 -1
  134. package/package.json +1 -1
  135. package/src/D1.ts +77 -74
  136. package/src/Libsql.ts +65 -105
  137. package/src/Mysql2.ts +52 -87
  138. package/src/Pglite.ts +74 -81
  139. package/src/Postgres.ts +74 -81
  140. package/src/SqliteBun.ts +65 -113
  141. package/src/SqliteDo.ts +58 -106
  142. package/src/SqliteNode.ts +65 -113
  143. package/src/SqliteWasm.ts +65 -113
  144. package/src/drizzle/d1-identity.ts +2 -2
  145. package/src/drizzle/driver-types.ts +26 -0
  146. package/src/drizzle/email-drivers.ts +320 -0
  147. package/src/drizzle/email-model.ts +24 -78
  148. package/src/drizzle/email-target.ts +118 -211
  149. package/src/drizzle/model.ts +0 -2
  150. package/src/drizzle/mysql-identity.ts +4 -24
  151. package/src/drizzle/native-clock.ts +21 -0
  152. package/src/drizzle/native-database.ts +59 -18
  153. package/src/drizzle/native-sql-table.ts +104 -87
  154. package/src/drizzle/native-target.ts +120 -0
  155. package/src/drizzle/oauth-connected-drivers.ts +24 -233
  156. package/src/drizzle/oauth-connected-model.ts +3 -93
  157. package/src/drizzle/oauth-connected-reference.ts +16 -25
  158. package/src/drizzle/oauth-drivers.ts +58 -99
  159. package/src/drizzle/oauth-model.ts +27 -132
  160. package/src/drizzle/oauth-target.ts +250 -33
  161. package/src/drizzle/passkey/target.ts +205 -0
  162. package/src/drizzle/passkey/write-target.ts +91 -0
  163. package/src/drizzle/passkey-drivers.ts +35 -133
  164. package/src/drizzle/passkey-model.ts +3 -81
  165. package/src/drizzle/passkey-registration-ceremony-model.ts +5 -25
  166. package/src/drizzle/passkey-write-drivers.ts +32 -102
  167. package/src/drizzle/passkey-write-model.ts +10 -44
  168. package/src/drizzle/password-drivers.ts +286 -0
  169. package/src/drizzle/password-model.ts +10 -44
  170. package/src/drizzle/password-target.ts +85 -239
  171. package/src/drizzle/pg-identity.ts +4 -19
  172. package/src/drizzle/phone-drivers.ts +142 -0
  173. package/src/drizzle/phone-model.ts +22 -162
  174. package/src/drizzle/phone-target.ts +51 -493
  175. package/src/drizzle/proof-drivers.ts +123 -0
  176. package/src/drizzle/proof-model.ts +12 -123
  177. package/src/drizzle/proof-target.ts +38 -102
  178. package/src/drizzle/session-drivers.ts +696 -0
  179. package/src/drizzle/session-model.ts +54 -118
  180. package/src/drizzle/sqlite-do-database.ts +8 -0
  181. package/src/drizzle/sqlite-identity.ts +4 -22
  182. package/src/drizzle/step-up-model.ts +13 -37
  183. package/src/drizzle/storage-validation.ts +2 -1
  184. package/src/drizzle/totp-model.ts +20 -77
  185. package/src/drizzle/totp-target.ts +121 -261
  186. package/src/drizzle/transaction-handle.ts +41 -0
  187. package/src/drizzle/transaction-mysql.ts +90 -25
  188. package/src/index.ts +7 -122
  189. package/src/internal/drizzle-postgres.ts +4 -7
  190. package/src/internal/drizzle-sqlite.ts +4 -7
  191. package/dist/drizzle/crypto.mjs +0 -11
  192. package/dist/drizzle/crypto.mjs.map +0 -1
  193. package/dist/drizzle/d1-emails.d.mts +0 -62
  194. package/dist/drizzle/d1-emails.mjs +0 -626
  195. package/dist/drizzle/d1-emails.mjs.map +0 -1
  196. package/dist/drizzle/d1-generated-statement.mjs +0 -79
  197. package/dist/drizzle/d1-generated-statement.mjs.map +0 -1
  198. package/dist/drizzle/d1-oauth.d.mts +0 -331
  199. package/dist/drizzle/d1-oauth.mjs +0 -79
  200. package/dist/drizzle/d1-oauth.mjs.map +0 -1
  201. package/dist/drizzle/d1-passkey.d.mts +0 -37
  202. package/dist/drizzle/d1-passkey.mjs +0 -98
  203. package/dist/drizzle/d1-passkey.mjs.map +0 -1
  204. package/dist/drizzle/d1-password-prepared.d.mts +0 -25
  205. package/dist/drizzle/d1-password-prepared.mjs +0 -473
  206. package/dist/drizzle/d1-password-prepared.mjs.map +0 -1
  207. package/dist/drizzle/d1-passwords.d.mts +0 -70
  208. package/dist/drizzle/d1-passwords.mjs +0 -808
  209. package/dist/drizzle/d1-passwords.mjs.map +0 -1
  210. package/dist/drizzle/d1-phone.d.mts +0 -23
  211. package/dist/drizzle/d1-phone.mjs +0 -33
  212. package/dist/drizzle/d1-phone.mjs.map +0 -1
  213. package/dist/drizzle/d1-planning.d.mts +0 -11
  214. package/dist/drizzle/d1-planning.mjs +0 -43
  215. package/dist/drizzle/d1-planning.mjs.map +0 -1
  216. package/dist/drizzle/d1-proofs.d.mts +0 -80
  217. package/dist/drizzle/d1-proofs.mjs +0 -842
  218. package/dist/drizzle/d1-proofs.mjs.map +0 -1
  219. package/dist/drizzle/d1-sessions.d.mts +0 -68
  220. package/dist/drizzle/d1-sessions.mjs +0 -987
  221. package/dist/drizzle/d1-sessions.mjs.map +0 -1
  222. package/dist/drizzle/d1-totp.d.mts +0 -23
  223. package/dist/drizzle/d1-totp.mjs +0 -30
  224. package/dist/drizzle/d1-totp.mjs.map +0 -1
  225. package/dist/drizzle/email-registration.d.mts +0 -33
  226. package/dist/drizzle/email-registration.mjs +0 -281
  227. package/dist/drizzle/email-registration.mjs.map +0 -1
  228. package/dist/drizzle/email-sql.d.mts +0 -1
  229. package/dist/drizzle/email-sql.mjs +0 -9
  230. package/dist/drizzle/email-sql.mjs.map +0 -1
  231. package/dist/drizzle/mysql-emails.d.mts +0 -71
  232. package/dist/drizzle/mysql-emails.mjs +0 -43
  233. package/dist/drizzle/mysql-emails.mjs.map +0 -1
  234. package/dist/drizzle/mysql-password-prepared.d.mts +0 -30
  235. package/dist/drizzle/mysql-password-prepared.mjs +0 -21
  236. package/dist/drizzle/mysql-password-prepared.mjs.map +0 -1
  237. package/dist/drizzle/mysql-passwords.d.mts +0 -71
  238. package/dist/drizzle/mysql-passwords.mjs +0 -43
  239. package/dist/drizzle/mysql-passwords.mjs.map +0 -1
  240. package/dist/drizzle/mysql-proofs.d.mts +0 -75
  241. package/dist/drizzle/mysql-proofs.mjs +0 -28
  242. package/dist/drizzle/mysql-proofs.mjs.map +0 -1
  243. package/dist/drizzle/mysql-sessions.d.mts +0 -92
  244. package/dist/drizzle/mysql-sessions.mjs +0 -58
  245. package/dist/drizzle/mysql-sessions.mjs.map +0 -1
  246. package/dist/drizzle/oauth-connected-model.mjs.map +0 -1
  247. package/dist/drizzle/oauth-connected-target.d.mts +0 -6
  248. package/dist/drizzle/oauth-connected-target.mjs +0 -12
  249. package/dist/drizzle/oauth-connected-target.mjs.map +0 -1
  250. package/dist/drizzle/oauth-kernel.mjs +0 -11
  251. package/dist/drizzle/oauth-kernel.mjs.map +0 -1
  252. package/dist/drizzle/oauth-mysql.mjs +0 -8
  253. package/dist/drizzle/oauth-mysql.mjs.map +0 -1
  254. package/dist/drizzle/passkey-kernel.mjs +0 -8
  255. package/dist/drizzle/passkey-kernel.mjs.map +0 -1
  256. package/dist/drizzle/passkey-model.mjs.map +0 -1
  257. package/dist/drizzle/passkey-registration-ceremony-model.mjs +0 -2
  258. package/dist/drizzle/passkey-state.mjs +0 -7
  259. package/dist/drizzle/passkey-state.mjs.map +0 -1
  260. package/dist/drizzle/passkey-target.d.mts +0 -2
  261. package/dist/drizzle/passkey-target.mjs +0 -7
  262. package/dist/drizzle/passkey-target.mjs.map +0 -1
  263. package/dist/drizzle/passkey-write-target.d.mts +0 -5
  264. package/dist/drizzle/passkey-write-target.mjs +0 -7
  265. package/dist/drizzle/passkey-write-target.mjs.map +0 -1
  266. package/dist/drizzle/password-prepared-model.d.mts +0 -92
  267. package/dist/drizzle/password-prepared-model.mjs +0 -11
  268. package/dist/drizzle/password-prepared-model.mjs.map +0 -1
  269. package/dist/drizzle/password-prepared-sql.mjs +0 -395
  270. package/dist/drizzle/password-prepared-sql.mjs.map +0 -1
  271. package/dist/drizzle/password-prepared-state.mjs +0 -104
  272. package/dist/drizzle/password-prepared-state.mjs.map +0 -1
  273. package/dist/drizzle/password-prepared-target.d.mts +0 -13
  274. package/dist/drizzle/password-prepared-target.mjs +0 -62
  275. package/dist/drizzle/password-prepared-target.mjs.map +0 -1
  276. package/dist/drizzle/password-registration.d.mts +0 -7
  277. package/dist/drizzle/password-registration.mjs +0 -137
  278. package/dist/drizzle/password-registration.mjs.map +0 -1
  279. package/dist/drizzle/password-sql.d.mts +0 -1
  280. package/dist/drizzle/password-sql.mjs +0 -10
  281. package/dist/drizzle/password-sql.mjs.map +0 -1
  282. package/dist/drizzle/pg-emails.d.mts +0 -72
  283. package/dist/drizzle/pg-emails.mjs +0 -43
  284. package/dist/drizzle/pg-emails.mjs.map +0 -1
  285. package/dist/drizzle/pg-password-prepared.d.mts +0 -31
  286. package/dist/drizzle/pg-password-prepared.mjs +0 -21
  287. package/dist/drizzle/pg-password-prepared.mjs.map +0 -1
  288. package/dist/drizzle/pg-passwords.d.mts +0 -72
  289. package/dist/drizzle/pg-passwords.mjs +0 -43
  290. package/dist/drizzle/pg-passwords.mjs.map +0 -1
  291. package/dist/drizzle/pg-proofs.d.mts +0 -76
  292. package/dist/drizzle/pg-proofs.mjs +0 -27
  293. package/dist/drizzle/pg-proofs.mjs.map +0 -1
  294. package/dist/drizzle/pg-sessions.d.mts +0 -93
  295. package/dist/drizzle/pg-sessions.mjs +0 -58
  296. package/dist/drizzle/pg-sessions.mjs.map +0 -1
  297. package/dist/drizzle/phone-state.mjs +0 -14
  298. package/dist/drizzle/phone-state.mjs.map +0 -1
  299. package/dist/drizzle/phone-target.d.mts +0 -15
  300. package/dist/drizzle/proof-sql.d.mts +0 -1
  301. package/dist/drizzle/proof-sql.mjs +0 -8
  302. package/dist/drizzle/proof-sql.mjs.map +0 -1
  303. package/dist/drizzle/query-operations.mjs +0 -31
  304. package/dist/drizzle/query-operations.mjs.map +0 -1
  305. package/dist/drizzle/session-sql.d.mts +0 -1
  306. package/dist/drizzle/session-sql.mjs +0 -9
  307. package/dist/drizzle/session-sql.mjs.map +0 -1
  308. package/dist/drizzle/session-target.d.mts +0 -30
  309. package/dist/drizzle/session-target.mjs +0 -49
  310. package/dist/drizzle/session-target.mjs.map +0 -1
  311. package/dist/drizzle/sqlite-emails.mjs +0 -50
  312. package/dist/drizzle/sqlite-emails.mjs.map +0 -1
  313. package/dist/drizzle/sqlite-password-prepared.mjs +0 -26
  314. package/dist/drizzle/sqlite-password-prepared.mjs.map +0 -1
  315. package/dist/drizzle/sqlite-passwords.mjs +0 -54
  316. package/dist/drizzle/sqlite-passwords.mjs.map +0 -1
  317. package/dist/drizzle/sqlite-proofs.mjs +0 -34
  318. package/dist/drizzle/sqlite-proofs.mjs.map +0 -1
  319. package/dist/drizzle/sqlite-sessions.mjs +0 -79
  320. package/dist/drizzle/sqlite-sessions.mjs.map +0 -1
  321. package/dist/drizzle/standalone-guard.d.mts +0 -2
  322. package/dist/drizzle/standalone-guard.mjs +0 -21
  323. package/dist/drizzle/standalone-guard.mjs.map +0 -1
  324. package/dist/drizzle/totp-state.d.mts +0 -37
  325. package/dist/drizzle/totp-state.mjs +0 -287
  326. package/dist/drizzle/totp-state.mjs.map +0 -1
  327. package/dist/drizzle/totp-target.d.mts +0 -15
  328. package/dist/drizzle/transaction-execution.d.mts +0 -2
  329. package/dist/drizzle/transaction-execution.mjs +0 -11
  330. package/dist/drizzle/transaction-execution.mjs.map +0 -1
  331. package/dist/drizzle/transaction-owner.d.mts +0 -1
  332. package/dist/drizzle/transaction-owner.mjs +0 -8
  333. package/dist/drizzle/transaction-owner.mjs.map +0 -1
  334. package/src/drizzle/crypto.ts +0 -14
  335. package/src/drizzle/d1-emails.ts +0 -1945
  336. package/src/drizzle/d1-generated-statement.ts +0 -129
  337. package/src/drizzle/d1-oauth.ts +0 -360
  338. package/src/drizzle/d1-passkey.ts +0 -383
  339. package/src/drizzle/d1-password-prepared.ts +0 -1266
  340. package/src/drizzle/d1-passwords.ts +0 -2061
  341. package/src/drizzle/d1-phone.ts +0 -103
  342. package/src/drizzle/d1-planning.ts +0 -104
  343. package/src/drizzle/d1-proofs.ts +0 -2354
  344. package/src/drizzle/d1-sessions.ts +0 -2940
  345. package/src/drizzle/d1-totp.ts +0 -88
  346. package/src/drizzle/email-registration.ts +0 -850
  347. package/src/drizzle/email-sql.ts +0 -25
  348. package/src/drizzle/mysql-emails.ts +0 -343
  349. package/src/drizzle/mysql-password-prepared.ts +0 -198
  350. package/src/drizzle/mysql-passwords.ts +0 -343
  351. package/src/drizzle/mysql-proofs.ts +0 -196
  352. package/src/drizzle/mysql-sessions.ts +0 -780
  353. package/src/drizzle/oauth-connected-target.ts +0 -21
  354. package/src/drizzle/oauth-kernel.ts +0 -10
  355. package/src/drizzle/oauth-mysql.ts +0 -10
  356. package/src/drizzle/passkey-kernel.ts +0 -4
  357. package/src/drizzle/passkey-state.ts +0 -3
  358. package/src/drizzle/passkey-target.ts +0 -23
  359. package/src/drizzle/passkey-write-target.ts +0 -9
  360. package/src/drizzle/password-prepared-model.ts +0 -241
  361. package/src/drizzle/password-prepared-sql.ts +0 -1202
  362. package/src/drizzle/password-prepared-state.ts +0 -231
  363. package/src/drizzle/password-prepared-target.ts +0 -169
  364. package/src/drizzle/password-registration.ts +0 -369
  365. package/src/drizzle/password-sql.ts +0 -16
  366. package/src/drizzle/pg-emails.ts +0 -343
  367. package/src/drizzle/pg-password-prepared.ts +0 -199
  368. package/src/drizzle/pg-passwords.ts +0 -342
  369. package/src/drizzle/pg-proofs.ts +0 -206
  370. package/src/drizzle/pg-sessions.ts +0 -789
  371. package/src/drizzle/phone-state.ts +0 -21
  372. package/src/drizzle/proof-sql.ts +0 -10
  373. package/src/drizzle/query-operations.ts +0 -49
  374. package/src/drizzle/session-sql.ts +0 -15
  375. package/src/drizzle/session-target.ts +0 -337
  376. package/src/drizzle/sqlite-emails.ts +0 -393
  377. package/src/drizzle/sqlite-password-prepared.ts +0 -230
  378. package/src/drizzle/sqlite-passwords.ts +0 -497
  379. package/src/drizzle/sqlite-proofs.ts +0 -229
  380. package/src/drizzle/sqlite-sessions.ts +0 -1013
  381. package/src/drizzle/totp-state.ts +0 -525
  382. package/src/drizzle/transaction-execution.ts +0 -13
  383. package/src/drizzle/transaction-owner.ts +0 -11
@@ -1,383 +0,0 @@
1
- import type { D1Client } from "@effect/sql-d1/D1Client";
2
- import { NativeDatabase } from "@yielded/auth-persistence/Adapter";
3
- import type { LifecycleHooks } from "@yielded/auth/Hooks";
4
- import {
5
- PasskeyUnavailable,
6
- PasskeyPersistence,
7
- PasskeyManagementPersistence,
8
- } from "@yielded/auth/Passkey";
9
- import type { AnyRelations } from "drizzle-orm";
10
- import type { EffectSQLiteD1Database } from "drizzle-orm/effect-d1";
11
- import type { AnySQLiteTable } from "drizzle-orm/sqlite-core";
12
- import { type Crypto, Effect, Context } from "effect";
13
-
14
- import { Database as DatabaseService } from "./d1-database";
15
- import { makeD1Owner } from "./d1-planning";
16
- import { D1BatchStatements } from "./D1BatchStatements";
17
- import { nativeDatabase } from "./native-database";
18
- import { makePasskeyTarget } from "./passkey-drivers";
19
- import type {
20
- D1PasskeyMapping,
21
- PasskeyCredentialMapping,
22
- PasskeyMappingSource,
23
- PasskeyPersistenceMapping,
24
- } from "./passkey-model";
25
- import type { PasskeyRegistrationCeremonyMapping } from "./passkey-registration-ceremony-model";
26
- import {
27
- type PasskeyCoordinatorError,
28
- coordinateTargetPasskey,
29
- coordinateTargetPasskeyRegistration,
30
- } from "./passkey-target";
31
-
32
- type Table = AnySQLiteTable<{ dialect: "sqlite" }>;
33
- type Database = EffectSQLiteD1Database<AnyRelations> & { readonly $client: D1Client };
34
-
35
- const unavailable = () => PasskeyUnavailable.make({});
36
-
37
- const configuration = {
38
- mode: "batch" as const,
39
- dialect: "sqlite" as const,
40
- locking: false,
41
- standaloneGuard: () => Effect.void,
42
- };
43
-
44
- const target = makePasskeyTarget<DatabaseService, Database, Table, D1PasskeyMapping>(
45
- DatabaseService,
46
- configuration,
47
- );
48
-
49
- export const {
50
- makePasskeyCredentialServices,
51
- makePasskeyEnrollmentContextServices,
52
- makePasskeyPersistenceServices,
53
- makePasskeyRegistrationCeremonyServices,
54
- makePasskeyManagementServices,
55
- makePasskeyRegistrationServices,
56
- } = target;
57
-
58
- export function coordinatePasskeyPersistence<
59
- D extends Database,
60
- S extends Table,
61
- C extends Table,
62
- F extends Table,
63
- O extends Table,
64
- H extends Table,
65
- M extends Table,
66
- Flow extends Table,
67
- Admission extends Table,
68
- Charge extends Table,
69
- N,
70
- A,
71
- E,
72
- R,
73
- RSetup = never,
74
- DatabaseError = never,
75
- DatabaseRequirements = never,
76
- >(
77
- acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>,
78
- options: {
79
- readonly mapping: PasskeyMappingSource<
80
- PasskeyPersistenceMapping<
81
- PasskeyCredentialMapping<S, C, F, O, H, N>,
82
- M,
83
- Flow,
84
- Admission,
85
- Charge,
86
- N
87
- > &
88
- D1PasskeyMapping,
89
- RSetup
90
- >;
91
- },
92
- body: Effect.Effect<A, E, R>,
93
- ): Effect.Effect<
94
- A,
95
- PasskeyCoordinatorError<E> | DatabaseError,
96
- | Exclude<R, PasskeyPersistence | D1BatchStatements>
97
- | Crypto.Crypto
98
- | LifecycleHooks
99
- | DatabaseRequirements
100
- | RSetup
101
- > {
102
- return Effect.flatMap(nativeDatabase(acquire), (database) =>
103
- coordinateTargetPasskey(database, options.mapping, configuration, (_, services, append) =>
104
- Effect.gen(function* () {
105
- const original = services.passkeyPersistence;
106
-
107
- const nativeCollector = D1BatchStatements.of({
108
- append: (statement) => Effect.sync(() => append(statement)),
109
- });
110
-
111
- const owner = yield* makeD1Owner(unavailable()).pipe(
112
- Effect.provideService(D1BatchStatements, nativeCollector),
113
- );
114
-
115
- const service: PasskeyPersistence["Service"] = {
116
- issue: (input, prepare) => owner.run(original.issue(input, prepare)),
117
- context: (input) => owner.run(original.context(input)),
118
- claim: (input, prepare) => owner.run(original.claim(input, prepare)),
119
- settle: (input, prepare) => owner.run(original.settle(input, prepare)),
120
- cleanup: (input, prepare) => owner.run(original.cleanup(input, prepare)),
121
- };
122
-
123
- const provided = Context.make(PasskeyPersistence, service).pipe(
124
- Context.add(D1BatchStatements, owner.collector),
125
- );
126
-
127
- return yield* owner.close(Effect.provideContext(body, provided));
128
- }),
129
- ).pipe(Effect.provideService(NativeDatabase, database)),
130
- );
131
- }
132
-
133
- export function coordinatePasskeyRegistrationCeremony<
134
- D extends Database,
135
- M extends Table,
136
- Flow extends Table,
137
- Admission extends Table,
138
- Charge extends Table,
139
- Intent extends Table,
140
- H extends Table,
141
- A,
142
- E,
143
- R,
144
- RSetup = never,
145
- DatabaseError = never,
146
- DatabaseRequirements = never,
147
- >(
148
- acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>,
149
- options: {
150
- readonly mapping: PasskeyMappingSource<
151
- PasskeyRegistrationCeremonyMapping<M, Flow, Admission, Charge, Intent, H> & D1PasskeyMapping,
152
- RSetup
153
- >;
154
- },
155
- body: Effect.Effect<A, E, R>,
156
- ): Effect.Effect<
157
- A,
158
- PasskeyCoordinatorError<E> | DatabaseError,
159
- | Exclude<R, PasskeyPersistence | D1BatchStatements>
160
- | Crypto.Crypto
161
- | LifecycleHooks
162
- | DatabaseRequirements
163
- | RSetup
164
- > {
165
- return Effect.flatMap(nativeDatabase(acquire), (database) =>
166
- coordinateTargetPasskeyRegistration(
167
- database,
168
- options.mapping,
169
- configuration,
170
- (_, services, append) =>
171
- Effect.gen(function* () {
172
- const original = services.passkeyPersistence;
173
-
174
- const nativeCollector = D1BatchStatements.of({
175
- append: (statement) => Effect.sync(() => append(statement)),
176
- });
177
-
178
- const owner = yield* makeD1Owner(unavailable()).pipe(
179
- Effect.provideService(D1BatchStatements, nativeCollector),
180
- );
181
-
182
- const service: PasskeyPersistence["Service"] = {
183
- issue: (input, prepare) => owner.run(original.issue(input, prepare)),
184
- context: (input) => owner.run(original.context(input)),
185
- claim: (input, prepare) => owner.run(original.claim(input, prepare)),
186
- settle: (input, prepare) => owner.run(original.settle(input, prepare)),
187
- cleanup: (input, prepare) => owner.run(original.cleanup(input, prepare)),
188
- };
189
-
190
- const provided = Context.make(PasskeyPersistence, service).pipe(
191
- Context.add(D1BatchStatements, owner.collector),
192
- );
193
-
194
- return yield* owner.close(Effect.provideContext(body, provided));
195
- }),
196
- ).pipe(Effect.provideService(NativeDatabase, database)),
197
- );
198
- }
199
-
200
- import type {
201
- PasskeyManagementMapping,
202
- PasskeyRegistrationMapping,
203
- PasskeyRegistrationServices,
204
- PasskeyRegistrationWriter,
205
- } from "./passkey-write-model";
206
- import {
207
- coordinateTargetPasskeyManagement,
208
- coordinateTargetPasskeyRegistrationWriter,
209
- } from "./passkey-write-target";
210
-
211
- export function coordinatePasskeyManagement<
212
- D extends Database,
213
- S extends Table,
214
- C extends Table,
215
- F extends Table,
216
- O extends Table,
217
- H extends Table,
218
- M extends Table,
219
- Flow extends Table,
220
- Admission extends Table,
221
- Charge extends Table,
222
- Command extends Table,
223
- N,
224
- A,
225
- E,
226
- R,
227
- RSetup = never,
228
- DatabaseError = never,
229
- DatabaseRequirements = never,
230
- >(
231
- acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>,
232
- options: {
233
- readonly mapping: PasskeyMappingSource<
234
- PasskeyManagementMapping<S, C, F, O, H, M, Flow, Admission, Charge, Command, N> &
235
- D1PasskeyMapping,
236
- RSetup
237
- >;
238
- },
239
- body: Effect.Effect<A, E, R>,
240
- ): Effect.Effect<
241
- A,
242
- PasskeyCoordinatorError<E> | DatabaseError,
243
- | Exclude<R, PasskeyPersistence | PasskeyManagementPersistence | D1BatchStatements>
244
- | Crypto.Crypto
245
- | LifecycleHooks
246
- | DatabaseRequirements
247
- | RSetup
248
- > {
249
- return Effect.flatMap(nativeDatabase(acquire), (database) =>
250
- coordinateTargetPasskeyManagement(
251
- database,
252
- options.mapping,
253
- configuration,
254
- (_, services, append) =>
255
- Effect.gen(function* () {
256
- const collector = D1BatchStatements.of({
257
- append: (statement) => Effect.sync(() => append(statement)),
258
- });
259
-
260
- const owner = yield* makeD1Owner(unavailable()).pipe(
261
- Effect.provideService(D1BatchStatements, collector),
262
- );
263
-
264
- const original = services.passkeyPersistence;
265
-
266
- const persistence: PasskeyPersistence["Service"] = {
267
- issue: (input, prepare) => owner.run(original.issue(input, prepare)),
268
- context: (input) => owner.run(original.context(input)),
269
- claim: (input, prepare) => owner.run(original.claim(input, prepare)),
270
- settle: (input, prepare) => owner.run(original.settle(input, prepare)),
271
- cleanup: (input, prepare) => owner.run(original.cleanup(input, prepare)),
272
- };
273
-
274
- const authority = services.passkeyManagementPersistence;
275
-
276
- const service: PasskeyManagementPersistence["Service"] = {
277
- list: (input) => owner.run(authority.list(input)),
278
- inspectRemove: (input) => owner.run(authority.inspectRemove(input)),
279
- issueEnrollment: (input, prepare) =>
280
- owner.run(authority.issueEnrollment(input, prepare)),
281
- completeEnrollment: (input, prepare) =>
282
- owner.run(authority.completeEnrollment(input, prepare)),
283
- rename: (input, prepare) => owner.run(authority.rename(input, prepare)),
284
- remove: (input, prepare) => owner.run(authority.remove(input, prepare)),
285
- };
286
-
287
- const context = Context.make(PasskeyPersistence, persistence).pipe(
288
- Context.add(PasskeyManagementPersistence, service),
289
- Context.add(D1BatchStatements, owner.collector),
290
- );
291
-
292
- return yield* owner.close(Effect.provideContext(body, context));
293
- }),
294
- ).pipe(Effect.provideService(NativeDatabase, database)),
295
- );
296
- }
297
-
298
- export function coordinatePasskeyRegistration<
299
- D extends Database,
300
- S extends Table,
301
- C extends Table,
302
- F extends Table,
303
- O extends Table,
304
- H extends Table,
305
- M extends Table,
306
- Flow extends Table,
307
- Admission extends Table,
308
- Charge extends Table,
309
- Intent extends Table,
310
- N,
311
- Value,
312
- AuthorityId,
313
- A,
314
- E,
315
- R,
316
- RSetup = never,
317
- DatabaseError = never,
318
- DatabaseRequirements = never,
319
- >(
320
- acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>,
321
- options: {
322
- readonly mapping: PasskeyMappingSource<
323
- PasskeyRegistrationMapping<S, C, F, O, H, M, Flow, Admission, Charge, Intent, N, Value> &
324
- D1PasskeyMapping,
325
- RSetup
326
- >;
327
- readonly authority: Context.Key<AuthorityId, PasskeyRegistrationWriter<Value>>;
328
- },
329
- body: Effect.Effect<A, E, R>,
330
- ): Effect.Effect<
331
- A,
332
- PasskeyCoordinatorError<E> | DatabaseError,
333
- | Exclude<R, PasskeyPersistence | AuthorityId | D1BatchStatements>
334
- | Crypto.Crypto
335
- | LifecycleHooks
336
- | DatabaseRequirements
337
- | RSetup
338
- > {
339
- return Effect.flatMap(nativeDatabase(acquire), (database) =>
340
- coordinateTargetPasskeyRegistrationWriter(
341
- database,
342
- options.mapping,
343
- configuration,
344
- (_, services: PasskeyRegistrationServices<Value>, append) =>
345
- Effect.gen(function* () {
346
- const collector = D1BatchStatements.of({
347
- append: (statement) => Effect.sync(() => append(statement)),
348
- });
349
-
350
- const owner = yield* makeD1Owner(unavailable()).pipe(
351
- Effect.provideService(D1BatchStatements, collector),
352
- );
353
-
354
- const original = services.passkeyPersistence;
355
-
356
- const persistence: PasskeyPersistence["Service"] = {
357
- issue: (input, prepare) => owner.run(original.issue(input, prepare)),
358
- context: (input) => owner.run(original.context(input)),
359
- claim: (input, prepare) => owner.run(original.claim(input, prepare)),
360
- settle: (input, prepare) => owner.run(original.settle(input, prepare)),
361
- cleanup: (input, prepare) => owner.run(original.cleanup(input, prepare)),
362
- };
363
-
364
- const authority = services.passkeyRegistrationAuthority;
365
-
366
- const service: PasskeyRegistrationWriter<Value> = {
367
- inspect: (input) => owner.run(authority.inspect(input)),
368
- issueRegistration: (input, prepare) =>
369
- owner.run(authority.issueRegistration(input, prepare)),
370
- completeRegistration: (input, prepare) =>
371
- owner.run(authority.completeRegistration(input, prepare)),
372
- };
373
-
374
- const context = Context.make(PasskeyPersistence, persistence).pipe(
375
- Context.add(options.authority, service),
376
- Context.add(D1BatchStatements, owner.collector),
377
- );
378
-
379
- return yield* owner.close(Effect.provideContext(body, context));
380
- }),
381
- ).pipe(Effect.provideService(NativeDatabase, database)),
382
- );
383
- }