@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.
- package/README.md +4 -2
- package/dist/D1.d.mts +495 -1151
- package/dist/D1.mjs +41 -19
- package/dist/D1.mjs.map +1 -1
- package/dist/Libsql.d.mts +385 -1996
- package/dist/Libsql.mjs +43 -47
- package/dist/Libsql.mjs.map +1 -1
- package/dist/Mysql2.d.mts +397 -1743
- package/dist/Mysql2.mjs +35 -41
- package/dist/Mysql2.mjs.map +1 -1
- package/dist/Pglite.d.mts +397 -1743
- package/dist/Pglite.mjs +42 -31
- package/dist/Pglite.mjs.map +1 -1
- package/dist/Postgres.d.mts +397 -1743
- package/dist/Postgres.mjs +42 -31
- package/dist/Postgres.mjs.map +1 -1
- package/dist/SqliteBun.d.mts +385 -1992
- package/dist/SqliteBun.mjs +43 -43
- package/dist/SqliteBun.mjs.map +1 -1
- package/dist/SqliteDo.d.mts +385 -1991
- package/dist/SqliteDo.mjs +42 -41
- package/dist/SqliteDo.mjs.map +1 -1
- package/dist/SqliteNode.d.mts +385 -1992
- package/dist/SqliteNode.mjs +43 -43
- package/dist/SqliteNode.mjs.map +1 -1
- package/dist/SqliteWasm.d.mts +385 -1992
- package/dist/SqliteWasm.mjs +43 -43
- package/dist/SqliteWasm.mjs.map +1 -1
- package/dist/drizzle/d1-identity.mjs +2 -2
- package/dist/drizzle/d1-identity.mjs.map +1 -1
- package/dist/drizzle/driver-types.d.mts +15 -0
- package/dist/drizzle/email-drivers.mjs +32 -0
- package/dist/drizzle/email-drivers.mjs.map +1 -0
- package/dist/drizzle/email-model.d.mts +9 -13
- package/dist/drizzle/email-target.d.mts +10 -11
- package/dist/drizzle/email-target.mjs +33 -70
- package/dist/drizzle/email-target.mjs.map +1 -1
- package/dist/drizzle/model.d.mts +1 -10
- package/dist/drizzle/model.mjs +1 -2
- package/dist/drizzle/model.mjs.map +1 -1
- package/dist/drizzle/mysql-identity.mjs +3 -6
- package/dist/drizzle/mysql-identity.mjs.map +1 -1
- package/dist/drizzle/native-clock.d.mts +9 -0
- package/dist/drizzle/native-clock.mjs +18 -0
- package/dist/drizzle/native-clock.mjs.map +1 -0
- package/dist/drizzle/native-database.d.mts +46 -0
- package/dist/drizzle/native-database.mjs +6 -5
- package/dist/drizzle/native-database.mjs.map +1 -1
- package/dist/drizzle/native-sql-table.mjs +13 -5
- package/dist/drizzle/native-sql-table.mjs.map +1 -1
- package/dist/drizzle/native-target.d.mts +6 -0
- package/dist/drizzle/native-target.mjs +44 -0
- package/dist/drizzle/native-target.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-drivers.mjs +4 -56
- package/dist/drizzle/oauth-connected-drivers.mjs.map +1 -1
- package/dist/drizzle/oauth-connected-model.d.mts +5 -22
- package/dist/drizzle/oauth-connected-model.mjs +1 -7
- package/dist/drizzle/oauth-connected-reference.d.mts +5 -7
- package/dist/drizzle/oauth-connected-reference.mjs +11 -3
- package/dist/drizzle/oauth-connected-reference.mjs.map +1 -1
- package/dist/drizzle/oauth-drivers.mjs +1 -2
- package/dist/drizzle/oauth-drivers.mjs.map +1 -1
- package/dist/drizzle/oauth-model.d.mts +11 -37
- package/dist/drizzle/oauth-model.mjs +3 -4
- package/dist/drizzle/oauth-model.mjs.map +1 -1
- package/dist/drizzle/oauth-proxy.d.mts +1 -1
- package/dist/drizzle/oauth-proxy.mjs +1 -1
- package/dist/drizzle/oauth-target.d.mts +9 -6
- package/dist/drizzle/oauth-target.mjs +47 -15
- package/dist/drizzle/oauth-target.mjs.map +1 -1
- package/dist/drizzle/passkey/target.d.mts +14 -0
- package/dist/drizzle/passkey/target.mjs +52 -0
- package/dist/drizzle/passkey/target.mjs.map +1 -0
- package/dist/drizzle/passkey/write-target.d.mts +11 -0
- package/dist/drizzle/passkey/write-target.mjs +28 -0
- package/dist/drizzle/passkey/write-target.mjs.map +1 -0
- package/dist/drizzle/passkey-drivers.mjs +2 -4
- package/dist/drizzle/passkey-drivers.mjs.map +1 -1
- package/dist/drizzle/passkey-model.d.mts +5 -26
- package/dist/drizzle/passkey-model.mjs +2 -8
- package/dist/drizzle/passkey-registration-ceremony-model.d.mts +3 -6
- package/dist/drizzle/passkey-write-drivers.mjs +2 -3
- package/dist/drizzle/passkey-write-drivers.mjs.map +1 -1
- package/dist/drizzle/passkey-write-model.d.mts +7 -9
- package/dist/drizzle/passkey-write-model.mjs +1 -3
- package/dist/drizzle/passkey-write-model.mjs.map +1 -1
- package/dist/drizzle/password-drivers.mjs +31 -0
- package/dist/drizzle/password-drivers.mjs.map +1 -0
- package/dist/drizzle/password-model.d.mts +7 -10
- package/dist/drizzle/password-target.d.mts +7 -8
- package/dist/drizzle/password-target.mjs +23 -68
- package/dist/drizzle/password-target.mjs.map +1 -1
- package/dist/drizzle/pg-identity.mjs +3 -6
- package/dist/drizzle/pg-identity.mjs.map +1 -1
- package/dist/drizzle/phone-drivers.mjs +24 -0
- package/dist/drizzle/phone-drivers.mjs.map +1 -0
- package/dist/drizzle/phone-model.d.mts +13 -104
- package/dist/drizzle/phone-model.mjs +5 -33
- package/dist/drizzle/phone-model.mjs.map +1 -1
- package/dist/drizzle/phone-target.mjs +22 -171
- package/dist/drizzle/phone-target.mjs.map +1 -1
- package/dist/drizzle/proof-drivers.mjs +24 -0
- package/dist/drizzle/proof-drivers.mjs.map +1 -0
- package/dist/drizzle/proof-model.d.mts +7 -15
- package/dist/drizzle/proof-target.d.mts +5 -5
- package/dist/drizzle/proof-target.mjs +14 -28
- package/dist/drizzle/proof-target.mjs.map +1 -1
- package/dist/drizzle/session-drivers.mjs +97 -0
- package/dist/drizzle/session-drivers.mjs.map +1 -0
- package/dist/drizzle/session-model.d.mts +11 -22
- package/dist/drizzle/sqlite-do-database.d.mts +3 -3
- package/dist/drizzle/sqlite-do-database.mjs +6 -1
- package/dist/drizzle/sqlite-do-database.mjs.map +1 -1
- package/dist/drizzle/sqlite-identity.mjs +3 -5
- package/dist/drizzle/sqlite-identity.mjs.map +1 -1
- package/dist/drizzle/step-up-model.d.mts +2 -5
- package/dist/drizzle/storage-validation.mjs +2 -1
- package/dist/drizzle/storage-validation.mjs.map +1 -1
- package/dist/drizzle/totp-model.d.mts +7 -74
- package/dist/drizzle/totp-model.mjs +1 -5
- package/dist/drizzle/totp-model.mjs.map +1 -1
- package/dist/drizzle/totp-target.mjs +39 -75
- package/dist/drizzle/totp-target.mjs.map +1 -1
- package/dist/drizzle/transaction-handle.mjs +13 -0
- package/dist/drizzle/transaction-handle.mjs.map +1 -0
- package/dist/drizzle/transaction-mysql.mjs +43 -12
- package/dist/drizzle/transaction-mysql.mjs.map +1 -1
- package/dist/index.d.mts +17 -22
- package/dist/index.mjs +10 -16
- package/dist/internal/drizzle-postgres.mjs +4 -6
- package/dist/internal/drizzle-postgres.mjs.map +1 -1
- package/dist/internal/drizzle-sqlite.mjs +4 -6
- package/dist/internal/drizzle-sqlite.mjs.map +1 -1
- package/package.json +1 -1
- package/src/D1.ts +77 -74
- package/src/Libsql.ts +65 -105
- package/src/Mysql2.ts +52 -87
- package/src/Pglite.ts +74 -81
- package/src/Postgres.ts +74 -81
- package/src/SqliteBun.ts +65 -113
- package/src/SqliteDo.ts +58 -106
- package/src/SqliteNode.ts +65 -113
- package/src/SqliteWasm.ts +65 -113
- package/src/drizzle/d1-identity.ts +2 -2
- package/src/drizzle/driver-types.ts +26 -0
- package/src/drizzle/email-drivers.ts +320 -0
- package/src/drizzle/email-model.ts +24 -78
- package/src/drizzle/email-target.ts +118 -211
- package/src/drizzle/model.ts +0 -2
- package/src/drizzle/mysql-identity.ts +4 -24
- package/src/drizzle/native-clock.ts +21 -0
- package/src/drizzle/native-database.ts +59 -18
- package/src/drizzle/native-sql-table.ts +104 -87
- package/src/drizzle/native-target.ts +120 -0
- package/src/drizzle/oauth-connected-drivers.ts +24 -233
- package/src/drizzle/oauth-connected-model.ts +3 -93
- package/src/drizzle/oauth-connected-reference.ts +16 -25
- package/src/drizzle/oauth-drivers.ts +58 -99
- package/src/drizzle/oauth-model.ts +27 -132
- package/src/drizzle/oauth-target.ts +250 -33
- package/src/drizzle/passkey/target.ts +205 -0
- package/src/drizzle/passkey/write-target.ts +91 -0
- package/src/drizzle/passkey-drivers.ts +35 -133
- package/src/drizzle/passkey-model.ts +3 -81
- package/src/drizzle/passkey-registration-ceremony-model.ts +5 -25
- package/src/drizzle/passkey-write-drivers.ts +32 -102
- package/src/drizzle/passkey-write-model.ts +10 -44
- package/src/drizzle/password-drivers.ts +286 -0
- package/src/drizzle/password-model.ts +10 -44
- package/src/drizzle/password-target.ts +85 -239
- package/src/drizzle/pg-identity.ts +4 -19
- package/src/drizzle/phone-drivers.ts +142 -0
- package/src/drizzle/phone-model.ts +22 -162
- package/src/drizzle/phone-target.ts +51 -493
- package/src/drizzle/proof-drivers.ts +123 -0
- package/src/drizzle/proof-model.ts +12 -123
- package/src/drizzle/proof-target.ts +38 -102
- package/src/drizzle/session-drivers.ts +696 -0
- package/src/drizzle/session-model.ts +54 -118
- package/src/drizzle/sqlite-do-database.ts +8 -0
- package/src/drizzle/sqlite-identity.ts +4 -22
- package/src/drizzle/step-up-model.ts +13 -37
- package/src/drizzle/storage-validation.ts +2 -1
- package/src/drizzle/totp-model.ts +20 -77
- package/src/drizzle/totp-target.ts +121 -261
- package/src/drizzle/transaction-handle.ts +41 -0
- package/src/drizzle/transaction-mysql.ts +90 -25
- package/src/index.ts +7 -122
- package/src/internal/drizzle-postgres.ts +4 -7
- package/src/internal/drizzle-sqlite.ts +4 -7
- package/dist/drizzle/crypto.mjs +0 -11
- package/dist/drizzle/crypto.mjs.map +0 -1
- package/dist/drizzle/d1-emails.d.mts +0 -62
- package/dist/drizzle/d1-emails.mjs +0 -626
- package/dist/drizzle/d1-emails.mjs.map +0 -1
- package/dist/drizzle/d1-generated-statement.mjs +0 -79
- package/dist/drizzle/d1-generated-statement.mjs.map +0 -1
- package/dist/drizzle/d1-oauth.d.mts +0 -331
- package/dist/drizzle/d1-oauth.mjs +0 -79
- package/dist/drizzle/d1-oauth.mjs.map +0 -1
- package/dist/drizzle/d1-passkey.d.mts +0 -37
- package/dist/drizzle/d1-passkey.mjs +0 -98
- package/dist/drizzle/d1-passkey.mjs.map +0 -1
- package/dist/drizzle/d1-password-prepared.d.mts +0 -25
- package/dist/drizzle/d1-password-prepared.mjs +0 -473
- package/dist/drizzle/d1-password-prepared.mjs.map +0 -1
- package/dist/drizzle/d1-passwords.d.mts +0 -70
- package/dist/drizzle/d1-passwords.mjs +0 -808
- package/dist/drizzle/d1-passwords.mjs.map +0 -1
- package/dist/drizzle/d1-phone.d.mts +0 -23
- package/dist/drizzle/d1-phone.mjs +0 -33
- package/dist/drizzle/d1-phone.mjs.map +0 -1
- package/dist/drizzle/d1-planning.d.mts +0 -11
- package/dist/drizzle/d1-planning.mjs +0 -43
- package/dist/drizzle/d1-planning.mjs.map +0 -1
- package/dist/drizzle/d1-proofs.d.mts +0 -80
- package/dist/drizzle/d1-proofs.mjs +0 -842
- package/dist/drizzle/d1-proofs.mjs.map +0 -1
- package/dist/drizzle/d1-sessions.d.mts +0 -68
- package/dist/drizzle/d1-sessions.mjs +0 -987
- package/dist/drizzle/d1-sessions.mjs.map +0 -1
- package/dist/drizzle/d1-totp.d.mts +0 -23
- package/dist/drizzle/d1-totp.mjs +0 -30
- package/dist/drizzle/d1-totp.mjs.map +0 -1
- package/dist/drizzle/email-registration.d.mts +0 -33
- package/dist/drizzle/email-registration.mjs +0 -281
- package/dist/drizzle/email-registration.mjs.map +0 -1
- package/dist/drizzle/email-sql.d.mts +0 -1
- package/dist/drizzle/email-sql.mjs +0 -9
- package/dist/drizzle/email-sql.mjs.map +0 -1
- package/dist/drizzle/mysql-emails.d.mts +0 -71
- package/dist/drizzle/mysql-emails.mjs +0 -43
- package/dist/drizzle/mysql-emails.mjs.map +0 -1
- package/dist/drizzle/mysql-password-prepared.d.mts +0 -30
- package/dist/drizzle/mysql-password-prepared.mjs +0 -21
- package/dist/drizzle/mysql-password-prepared.mjs.map +0 -1
- package/dist/drizzle/mysql-passwords.d.mts +0 -71
- package/dist/drizzle/mysql-passwords.mjs +0 -43
- package/dist/drizzle/mysql-passwords.mjs.map +0 -1
- package/dist/drizzle/mysql-proofs.d.mts +0 -75
- package/dist/drizzle/mysql-proofs.mjs +0 -28
- package/dist/drizzle/mysql-proofs.mjs.map +0 -1
- package/dist/drizzle/mysql-sessions.d.mts +0 -92
- package/dist/drizzle/mysql-sessions.mjs +0 -58
- package/dist/drizzle/mysql-sessions.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-model.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-target.d.mts +0 -6
- package/dist/drizzle/oauth-connected-target.mjs +0 -12
- package/dist/drizzle/oauth-connected-target.mjs.map +0 -1
- package/dist/drizzle/oauth-kernel.mjs +0 -11
- package/dist/drizzle/oauth-kernel.mjs.map +0 -1
- package/dist/drizzle/oauth-mysql.mjs +0 -8
- package/dist/drizzle/oauth-mysql.mjs.map +0 -1
- package/dist/drizzle/passkey-kernel.mjs +0 -8
- package/dist/drizzle/passkey-kernel.mjs.map +0 -1
- package/dist/drizzle/passkey-model.mjs.map +0 -1
- package/dist/drizzle/passkey-registration-ceremony-model.mjs +0 -2
- package/dist/drizzle/passkey-state.mjs +0 -7
- package/dist/drizzle/passkey-state.mjs.map +0 -1
- package/dist/drizzle/passkey-target.d.mts +0 -2
- package/dist/drizzle/passkey-target.mjs +0 -7
- package/dist/drizzle/passkey-target.mjs.map +0 -1
- package/dist/drizzle/passkey-write-target.d.mts +0 -5
- package/dist/drizzle/passkey-write-target.mjs +0 -7
- package/dist/drizzle/passkey-write-target.mjs.map +0 -1
- package/dist/drizzle/password-prepared-model.d.mts +0 -92
- package/dist/drizzle/password-prepared-model.mjs +0 -11
- package/dist/drizzle/password-prepared-model.mjs.map +0 -1
- package/dist/drizzle/password-prepared-sql.mjs +0 -395
- package/dist/drizzle/password-prepared-sql.mjs.map +0 -1
- package/dist/drizzle/password-prepared-state.mjs +0 -104
- package/dist/drizzle/password-prepared-state.mjs.map +0 -1
- package/dist/drizzle/password-prepared-target.d.mts +0 -13
- package/dist/drizzle/password-prepared-target.mjs +0 -62
- package/dist/drizzle/password-prepared-target.mjs.map +0 -1
- package/dist/drizzle/password-registration.d.mts +0 -7
- package/dist/drizzle/password-registration.mjs +0 -137
- package/dist/drizzle/password-registration.mjs.map +0 -1
- package/dist/drizzle/password-sql.d.mts +0 -1
- package/dist/drizzle/password-sql.mjs +0 -10
- package/dist/drizzle/password-sql.mjs.map +0 -1
- package/dist/drizzle/pg-emails.d.mts +0 -72
- package/dist/drizzle/pg-emails.mjs +0 -43
- package/dist/drizzle/pg-emails.mjs.map +0 -1
- package/dist/drizzle/pg-password-prepared.d.mts +0 -31
- package/dist/drizzle/pg-password-prepared.mjs +0 -21
- package/dist/drizzle/pg-password-prepared.mjs.map +0 -1
- package/dist/drizzle/pg-passwords.d.mts +0 -72
- package/dist/drizzle/pg-passwords.mjs +0 -43
- package/dist/drizzle/pg-passwords.mjs.map +0 -1
- package/dist/drizzle/pg-proofs.d.mts +0 -76
- package/dist/drizzle/pg-proofs.mjs +0 -27
- package/dist/drizzle/pg-proofs.mjs.map +0 -1
- package/dist/drizzle/pg-sessions.d.mts +0 -93
- package/dist/drizzle/pg-sessions.mjs +0 -58
- package/dist/drizzle/pg-sessions.mjs.map +0 -1
- package/dist/drizzle/phone-state.mjs +0 -14
- package/dist/drizzle/phone-state.mjs.map +0 -1
- package/dist/drizzle/phone-target.d.mts +0 -15
- package/dist/drizzle/proof-sql.d.mts +0 -1
- package/dist/drizzle/proof-sql.mjs +0 -8
- package/dist/drizzle/proof-sql.mjs.map +0 -1
- package/dist/drizzle/query-operations.mjs +0 -31
- package/dist/drizzle/query-operations.mjs.map +0 -1
- package/dist/drizzle/session-sql.d.mts +0 -1
- package/dist/drizzle/session-sql.mjs +0 -9
- package/dist/drizzle/session-sql.mjs.map +0 -1
- package/dist/drizzle/session-target.d.mts +0 -30
- package/dist/drizzle/session-target.mjs +0 -49
- package/dist/drizzle/session-target.mjs.map +0 -1
- package/dist/drizzle/sqlite-emails.mjs +0 -50
- package/dist/drizzle/sqlite-emails.mjs.map +0 -1
- package/dist/drizzle/sqlite-password-prepared.mjs +0 -26
- package/dist/drizzle/sqlite-password-prepared.mjs.map +0 -1
- package/dist/drizzle/sqlite-passwords.mjs +0 -54
- package/dist/drizzle/sqlite-passwords.mjs.map +0 -1
- package/dist/drizzle/sqlite-proofs.mjs +0 -34
- package/dist/drizzle/sqlite-proofs.mjs.map +0 -1
- package/dist/drizzle/sqlite-sessions.mjs +0 -79
- package/dist/drizzle/sqlite-sessions.mjs.map +0 -1
- package/dist/drizzle/standalone-guard.d.mts +0 -2
- package/dist/drizzle/standalone-guard.mjs +0 -21
- package/dist/drizzle/standalone-guard.mjs.map +0 -1
- package/dist/drizzle/totp-state.d.mts +0 -37
- package/dist/drizzle/totp-state.mjs +0 -287
- package/dist/drizzle/totp-state.mjs.map +0 -1
- package/dist/drizzle/totp-target.d.mts +0 -15
- package/dist/drizzle/transaction-execution.d.mts +0 -2
- package/dist/drizzle/transaction-execution.mjs +0 -11
- package/dist/drizzle/transaction-execution.mjs.map +0 -1
- package/dist/drizzle/transaction-owner.d.mts +0 -1
- package/dist/drizzle/transaction-owner.mjs +0 -8
- package/dist/drizzle/transaction-owner.mjs.map +0 -1
- package/src/drizzle/crypto.ts +0 -14
- package/src/drizzle/d1-emails.ts +0 -1945
- package/src/drizzle/d1-generated-statement.ts +0 -129
- package/src/drizzle/d1-oauth.ts +0 -360
- package/src/drizzle/d1-passkey.ts +0 -383
- package/src/drizzle/d1-password-prepared.ts +0 -1266
- package/src/drizzle/d1-passwords.ts +0 -2061
- package/src/drizzle/d1-phone.ts +0 -103
- package/src/drizzle/d1-planning.ts +0 -104
- package/src/drizzle/d1-proofs.ts +0 -2354
- package/src/drizzle/d1-sessions.ts +0 -2940
- package/src/drizzle/d1-totp.ts +0 -88
- package/src/drizzle/email-registration.ts +0 -850
- package/src/drizzle/email-sql.ts +0 -25
- package/src/drizzle/mysql-emails.ts +0 -343
- package/src/drizzle/mysql-password-prepared.ts +0 -198
- package/src/drizzle/mysql-passwords.ts +0 -343
- package/src/drizzle/mysql-proofs.ts +0 -196
- package/src/drizzle/mysql-sessions.ts +0 -780
- package/src/drizzle/oauth-connected-target.ts +0 -21
- package/src/drizzle/oauth-kernel.ts +0 -10
- package/src/drizzle/oauth-mysql.ts +0 -10
- package/src/drizzle/passkey-kernel.ts +0 -4
- package/src/drizzle/passkey-state.ts +0 -3
- package/src/drizzle/passkey-target.ts +0 -23
- package/src/drizzle/passkey-write-target.ts +0 -9
- package/src/drizzle/password-prepared-model.ts +0 -241
- package/src/drizzle/password-prepared-sql.ts +0 -1202
- package/src/drizzle/password-prepared-state.ts +0 -231
- package/src/drizzle/password-prepared-target.ts +0 -169
- package/src/drizzle/password-registration.ts +0 -369
- package/src/drizzle/password-sql.ts +0 -16
- package/src/drizzle/pg-emails.ts +0 -343
- package/src/drizzle/pg-password-prepared.ts +0 -199
- package/src/drizzle/pg-passwords.ts +0 -342
- package/src/drizzle/pg-proofs.ts +0 -206
- package/src/drizzle/pg-sessions.ts +0 -789
- package/src/drizzle/phone-state.ts +0 -21
- package/src/drizzle/proof-sql.ts +0 -10
- package/src/drizzle/query-operations.ts +0 -49
- package/src/drizzle/session-sql.ts +0 -15
- package/src/drizzle/session-target.ts +0 -337
- package/src/drizzle/sqlite-emails.ts +0 -393
- package/src/drizzle/sqlite-password-prepared.ts +0 -230
- package/src/drizzle/sqlite-passwords.ts +0 -497
- package/src/drizzle/sqlite-proofs.ts +0 -229
- package/src/drizzle/sqlite-sessions.ts +0 -1013
- package/src/drizzle/totp-state.ts +0 -525
- package/src/drizzle/transaction-execution.ts +0 -13
- package/src/drizzle/transaction-owner.ts +0 -11
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Predicate } from "effect";
|
|
2
|
+
import { PasskeyConfigurationError } from "@yielded/auth/Passkey";
|
|
3
|
+
//#region src/drizzle/transaction-handle.ts
|
|
4
|
+
const makeDrizzleTransactionHandle = (database, constructor) => {
|
|
5
|
+
if (constructor === void 0 || !Predicate.hasProperty(database, "_") || !Predicate.hasProperty(database._, "session") || !Predicate.hasProperty(database._, "relations") || !Predicate.hasProperty(database, "select") || typeof database.select !== "function") throw PasskeyConfigurationError.make({});
|
|
6
|
+
const selection = database.select();
|
|
7
|
+
if (!Predicate.hasProperty(selection, "dialect")) throw PasskeyConfigurationError.make({});
|
|
8
|
+
return new constructor(selection.dialect, database._.session, database._.relations, 0, Predicate.hasProperty(database, "forbidJsonb") ? database.forbidJsonb : Predicate.hasProperty(database, "parseRqbJson") ? database.parseRqbJson : void 0);
|
|
9
|
+
};
|
|
10
|
+
//#endregion
|
|
11
|
+
export { makeDrizzleTransactionHandle };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=transaction-handle.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction-handle.mjs","names":[],"sources":["../../src/drizzle/transaction-handle.ts"],"sourcesContent":["import { PasskeyConfigurationError } from \"@yielded/auth/Passkey\";\nimport { Predicate } from \"effect\";\n\n/** Only foreign constructor types are erased; this creates Drizzle's actual\n * transaction handle while the shared SqlClient owner holds the transaction. */\n// oxlint-disable-next-line no-explicit-any\n// oxlint-disable-next-line no-explicit-any\nexport type DrizzleTransactionFactory = (database: any) => object;\n\n// oxlint-disable-next-line no-explicit-any\nexport type DrizzleTransactionConstructor = new (...arguments_: any[]) => object;\n\nexport const makeDrizzleTransactionHandle = (\n database: object,\n constructor: DrizzleTransactionConstructor | undefined,\n): object => {\n if (\n constructor === undefined ||\n !Predicate.hasProperty(database, \"_\") ||\n !Predicate.hasProperty(database._, \"session\") ||\n !Predicate.hasProperty(database._, \"relations\") ||\n !Predicate.hasProperty(database, \"select\") ||\n typeof database.select !== \"function\"\n )\n throw PasskeyConfigurationError.make({});\n const selection: unknown = database.select();\n\n if (!Predicate.hasProperty(selection, \"dialect\")) throw PasskeyConfigurationError.make({});\n\n return new constructor(\n selection.dialect,\n database._.session,\n database._.relations,\n 0,\n Predicate.hasProperty(database, \"forbidJsonb\")\n ? database.forbidJsonb\n : Predicate.hasProperty(database, \"parseRqbJson\")\n ? database.parseRqbJson\n : undefined,\n );\n};\n"],"mappings":";;;AAYA,MAAa,gCACX,UACA,gBACW;CACX,IACE,gBAAgB,KAAA,KAChB,CAAC,UAAU,YAAY,UAAU,GAAG,KACpC,CAAC,UAAU,YAAY,SAAS,GAAG,SAAS,KAC5C,CAAC,UAAU,YAAY,SAAS,GAAG,WAAW,KAC9C,CAAC,UAAU,YAAY,UAAU,QAAQ,KACzC,OAAO,SAAS,WAAW,YAE3B,MAAM,0BAA0B,KAAK,CAAC,CAAC;CACzC,MAAM,YAAqB,SAAS,OAAO;CAE3C,IAAI,CAAC,UAAU,YAAY,WAAW,SAAS,GAAG,MAAM,0BAA0B,KAAK,CAAC,CAAC;CAEzF,OAAO,IAAI,YACT,UAAU,SACV,SAAS,EAAE,SACX,SAAS,EAAE,WACX,GACA,UAAU,YAAY,UAAU,aAAa,IACzC,SAAS,cACT,UAAU,YAAY,UAAU,cAAc,IAC5C,SAAS,eACT,KAAA,CACR;AACF"}
|
|
@@ -1,13 +1,35 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { PersistenceMappingError } from "@yielded/auth-persistence/Adapter";
|
|
2
|
+
import { Context, Effect, Option } from "effect";
|
|
3
3
|
import { EffectMysql2Transaction } from "drizzle-orm/effect-mysql2";
|
|
4
|
+
import { makeWithTransaction } from "effect/sql/SqlClient";
|
|
4
5
|
//#region src/drizzle/transaction-mysql.ts
|
|
6
|
+
var CurrentMysqlTransaction = class extends Context.Service()("@yielded/auth-persistence-drizzle/CurrentMysqlTransaction") {};
|
|
7
|
+
/** The native handle reuses the physical owner's exact savepoint closure. */
|
|
8
|
+
const makeMysqlTransactionHandle = (database) => Effect.map(Effect.serviceOption(CurrentMysqlTransaction), (current) => {
|
|
9
|
+
if (Option.isNone(current)) throw PersistenceMappingError.make({
|
|
10
|
+
operation: "transaction",
|
|
11
|
+
cause: "MySQL transaction owner is required"
|
|
12
|
+
});
|
|
13
|
+
const scope = current.value;
|
|
14
|
+
class NativeTransaction extends EffectMysql2Transaction {
|
|
15
|
+
transaction(body) {
|
|
16
|
+
return Effect.gen(function* () {
|
|
17
|
+
const current = yield* Effect.serviceOption(CurrentMysqlTransaction);
|
|
18
|
+
if (!scope.active || Option.isNone(current) || current.value !== scope || scope.client.transactionService !== database.$client.transactionService) return yield* Effect.die(PersistenceMappingError.make({
|
|
19
|
+
operation: "transaction",
|
|
20
|
+
cause: "MySQL transaction handle escaped its owner"
|
|
21
|
+
}));
|
|
22
|
+
return yield* scope.transaction(Effect.suspend(() => body(new NativeTransaction(database.dialect, database._.session, database._.relations))));
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return new NativeTransaction(database.dialect, database._.session, database._.relations);
|
|
27
|
+
});
|
|
5
28
|
/** Locking discovery and later SQL policy predicates must see the same current
|
|
6
29
|
* authority. MySQL's default repeatable-read snapshot is unsuitable after a
|
|
7
30
|
* contended authority lock. Own one connection and one-shot transaction mode;
|
|
8
31
|
* the pooled connection's session default is never changed. */
|
|
9
|
-
const
|
|
10
|
-
const client = database.$client;
|
|
32
|
+
const withMysqlTransaction = (unavailable, client, body) => Effect.scoped(Effect.gen(function* () {
|
|
11
33
|
const connection = yield* client.reserve;
|
|
12
34
|
const nativeConnection = connection.conn;
|
|
13
35
|
if (typeof nativeConnection?.destroy !== "function" || typeof nativeConnection.release !== "function") return yield* Effect.fail(unavailable());
|
|
@@ -32,16 +54,25 @@ const mysqlTransaction = (unavailable, database, body) => Effect.scoped(Effect.g
|
|
|
32
54
|
releaseSavepoint: (_connection, id) => statement(`RELEASE SAVEPOINT effect_auth_oauth_${id}`),
|
|
33
55
|
rollbackSavepoint: (_connection, id) => statement(`ROLLBACK TO SAVEPOINT effect_auth_oauth_${id}`)
|
|
34
56
|
});
|
|
35
|
-
class NativeTransaction extends EffectMysql2Transaction {
|
|
36
|
-
transaction(nested) {
|
|
37
|
-
return transaction(Effect.suspend(() => nested(new NativeTransaction(database.dialect, database._.session, database._.relations))));
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
const native = new NativeTransaction(database.dialect, database._.session, database._.relations);
|
|
41
57
|
const cleanup = statement("ROLLBACK").pipe(Effect.andThen(statement(`SET TRANSACTION ISOLATION LEVEL ${isolation}`)), Effect.onExit((exit) => exit._tag === "Failure" ? Effect.sync(destroy) : Effect.void), Effect.orDie);
|
|
42
|
-
|
|
58
|
+
const scope = {
|
|
59
|
+
client,
|
|
60
|
+
transaction,
|
|
61
|
+
active: true
|
|
62
|
+
};
|
|
63
|
+
return yield* transaction(Effect.suspend(() => body(transaction)).pipe(Effect.provideService(CurrentMysqlTransaction, scope))).pipe(Effect.ensuring(Effect.sync(() => {
|
|
64
|
+
scope.active = false;
|
|
65
|
+
})), Effect.ensuring(cleanup));
|
|
43
66
|
}));
|
|
67
|
+
/** Shared owner capability: one reserved connection, one-shot READ COMMITTED. */
|
|
68
|
+
const mysqlNativeCommit = (client) => ({
|
|
69
|
+
client,
|
|
70
|
+
withTransaction: (effect) => withMysqlTransaction(() => PersistenceMappingError.make({
|
|
71
|
+
operation: "transaction",
|
|
72
|
+
cause: "Unable to acquire MySQL transaction ownership"
|
|
73
|
+
}), client, () => effect)
|
|
74
|
+
});
|
|
44
75
|
//#endregion
|
|
45
|
-
export {
|
|
76
|
+
export { makeMysqlTransactionHandle, mysqlNativeCommit };
|
|
46
77
|
|
|
47
78
|
//# sourceMappingURL=transaction-mysql.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction-mysql.mjs","names":[],"sources":["../../src/drizzle/transaction-mysql.ts"],"sourcesContent":["/* oxlint-disable no-explicit-any -- this private acquisition preserves the installed native transaction; public wrappers retain its exact type. */\nimport { EffectMysql2Transaction } from \"drizzle-orm/effect-mysql2\";\nimport { Effect } from \"effect\";\nimport { makeWithTransaction, type SqlClient } from \"effect/sql/SqlClient\";\n\n/** Locking discovery and later SQL policy predicates must see the same current\n * authority. MySQL's default repeatable-read snapshot is unsuitable after a\n * contended authority lock. Own one connection and one-shot transaction mode;\n * the pooled connection's session default is never changed. */\
|
|
1
|
+
{"version":3,"file":"transaction-mysql.mjs","names":[],"sources":["../../src/drizzle/transaction-mysql.ts"],"sourcesContent":["/* oxlint-disable no-explicit-any -- this private acquisition preserves the installed native transaction; public wrappers retain its exact type. */\nimport type { SqlNativeCommit } from \"@yielded/auth-persistence/Adapter\";\nimport { PersistenceMappingError } from \"@yielded/auth-persistence/Adapter\";\nimport { EffectMysql2Transaction } from \"drizzle-orm/effect-mysql2\";\nimport { Context, Effect, Option } from \"effect\";\nimport { makeWithTransaction, type SqlClient } from \"effect/sql/SqlClient\";\nimport type { SqlError } from \"effect/sql/SqlError\";\n\ninterface MysqlTransactionScope {\n readonly client: SqlClient;\n readonly transaction: SqlClient[\"withTransaction\"];\n active: boolean;\n}\n\nclass CurrentMysqlTransaction extends Context.Service<\n CurrentMysqlTransaction,\n MysqlTransactionScope\n>()(\"@yielded/auth-persistence-drizzle/CurrentMysqlTransaction\") {}\n\n/** The native handle reuses the physical owner's exact savepoint closure. */\nexport const makeMysqlTransactionHandle = (\n database: any,\n): Effect.Effect<EffectMysql2Transaction<any, any>> =>\n Effect.map(Effect.serviceOption(CurrentMysqlTransaction), (current) => {\n if (Option.isNone(current))\n throw PersistenceMappingError.make({\n operation: \"transaction\",\n cause: \"MySQL transaction owner is required\",\n });\n const scope = current.value;\n\n class NativeTransaction extends EffectMysql2Transaction<any, any> {\n override transaction<A, E, R>(body: (transaction: any) => Effect.Effect<A, E, R>) {\n return Effect.gen(function* () {\n const current = yield* Effect.serviceOption(CurrentMysqlTransaction);\n\n if (\n !scope.active ||\n Option.isNone(current) ||\n current.value !== scope ||\n scope.client.transactionService !== database.$client.transactionService\n )\n return yield* Effect.die(\n PersistenceMappingError.make({\n operation: \"transaction\",\n cause: \"MySQL transaction handle escaped its owner\",\n }),\n );\n\n return yield* scope.transaction(\n Effect.suspend(() =>\n body(\n new NativeTransaction(database.dialect, database._.session, database._.relations),\n ),\n ),\n );\n });\n }\n }\n\n return new NativeTransaction(database.dialect, database._.session, database._.relations);\n });\n\n/** Locking discovery and later SQL policy predicates must see the same current\n * authority. MySQL's default repeatable-read snapshot is unsuitable after a\n * contended authority lock. Own one connection and one-shot transaction mode;\n * the pooled connection's session default is never changed. */\nconst withMysqlTransaction = <A, E, R, Failure>(\n unavailable: () => Failure,\n client: SqlClient,\n body: (transaction: SqlClient[\"withTransaction\"]) => Effect.Effect<A, E, R>,\n): Effect.Effect<A, E | Failure | SqlError, R> =>\n Effect.scoped(\n Effect.gen(function* () {\n const connection = yield* client.reserve;\n\n // Installed @effect/sql-mysql2 ConnectionImpl exposes its reserved native\n // PoolConnection as `conn`. Capture only its public disposal method; fail\n // before transaction work if an installed driver no longer provides it.\n const nativeConnection = (\n connection as {\n readonly conn?: { readonly destroy?: () => void; readonly release?: () => void };\n }\n ).conn;\n\n if (\n typeof nativeConnection?.destroy !== \"function\" ||\n typeof nativeConnection.release !== \"function\"\n )\n return yield* Effect.fail(unavailable());\n const destroy = nativeConnection.destroy.bind(nativeConnection);\n\n const defaults = yield* connection.executeUnprepared(\n \"select @@session.transaction_isolation as isolation\",\n [],\n undefined,\n );\n\n const isolation = String(defaults[0]?.isolation).replaceAll(\"-\", \" \").toUpperCase();\n\n if (\n ![\"READ UNCOMMITTED\", \"READ COMMITTED\", \"REPEATABLE READ\", \"SERIALIZABLE\"].includes(\n isolation,\n )\n )\n return yield* Effect.fail(unavailable());\n\n const statement = (source: string) =>\n Effect.asVoid(connection.executeUnprepared(source, [], undefined));\n\n const transaction = makeWithTransaction({\n transactionService: client.transactionService,\n spanAttributes: [\n [\"db.system\", \"mysql\"],\n [\"effect_auth.owner\", \"oauth\"],\n ],\n acquireConnection: Effect.succeed([undefined, connection] as const),\n begin: () =>\n statement(\"SET TRANSACTION ISOLATION LEVEL READ COMMITTED\").pipe(\n Effect.andThen(statement(\"BEGIN\")),\n ),\n commit: () => statement(\"COMMIT\"),\n rollback: () => statement(\"ROLLBACK\"),\n savepoint: (_connection, id) => statement(`SAVEPOINT effect_auth_oauth_${id}`),\n releaseSavepoint: (_connection, id) =>\n statement(`RELEASE SAVEPOINT effect_auth_oauth_${id}`),\n rollbackSavepoint: (_connection, id) =>\n statement(`ROLLBACK TO SAVEPOINT effect_auth_oauth_${id}`),\n });\n\n const cleanup = statement(\"ROLLBACK\").pipe(\n Effect.andThen(statement(`SET TRANSACTION ISOLATION LEVEL ${isolation}`)),\n Effect.onExit((exit) => (exit._tag === \"Failure\" ? Effect.sync(destroy) : Effect.void)),\n Effect.orDie,\n );\n\n const scope: MysqlTransactionScope = { client, transaction, active: true };\n\n return yield* transaction(\n Effect.suspend(() => body(transaction)).pipe(\n Effect.provideService(CurrentMysqlTransaction, scope),\n ),\n ).pipe(\n Effect.ensuring(\n Effect.sync(() => {\n scope.active = false;\n }),\n ),\n // BEGIN/COMMIT acknowledgments can be lost after the server acted.\n // Roll back any surviving transaction before resetting one-shot mode.\n // Failed cleanup destroys the connection before its reserve is released;\n // the unknown owner result cannot release a prepared receipt.\n Effect.ensuring(cleanup),\n );\n }),\n );\n\n/** Shared owner capability: one reserved connection, one-shot READ COMMITTED. */\nexport const mysqlNativeCommit = (client: SqlClient): SqlNativeCommit[\"Service\"] => ({\n client,\n withTransaction: (effect) =>\n withMysqlTransaction(\n () =>\n PersistenceMappingError.make({\n operation: \"transaction\",\n cause: \"Unable to acquire MySQL transaction ownership\",\n }),\n client,\n () => effect,\n ),\n});\n"],"mappings":";;;;;AAcA,IAAM,0BAAN,cAAsC,QAAQ,QAG5C,CAAC,CAAC,2DAA2D,CAAC,CAAC,CAAC;;AAGlE,MAAa,8BACX,aAEA,OAAO,IAAI,OAAO,cAAc,uBAAuB,IAAI,YAAY;CACrE,IAAI,OAAO,OAAO,OAAO,GACvB,MAAM,wBAAwB,KAAK;EACjC,WAAW;EACX,OAAO;CACT,CAAC;CACH,MAAM,QAAQ,QAAQ;CAEtB,MAAM,0BAA0B,wBAAkC;EAChE,YAA8B,MAAoD;GAChF,OAAO,OAAO,IAAI,aAAa;IAC7B,MAAM,UAAU,OAAO,OAAO,cAAc,uBAAuB;IAEnE,IACE,CAAC,MAAM,UACP,OAAO,OAAO,OAAO,KACrB,QAAQ,UAAU,SAClB,MAAM,OAAO,uBAAuB,SAAS,QAAQ,oBAErD,OAAO,OAAO,OAAO,IACnB,wBAAwB,KAAK;KAC3B,WAAW;KACX,OAAO;IACT,CAAC,CACH;IAEF,OAAO,OAAO,MAAM,YAClB,OAAO,cACL,KACE,IAAI,kBAAkB,SAAS,SAAS,SAAS,EAAE,SAAS,SAAS,EAAE,SAAS,CAClF,CACF,CACF;GACF,CAAC;EACH;CACF;CAEA,OAAO,IAAI,kBAAkB,SAAS,SAAS,SAAS,EAAE,SAAS,SAAS,EAAE,SAAS;AACzF,CAAC;;;;;AAMH,MAAM,wBACJ,aACA,QACA,SAEA,OAAO,OACL,OAAO,IAAI,aAAa;CACtB,MAAM,aAAa,OAAO,OAAO;CAKjC,MAAM,mBACJ,WAGA;CAEF,IACE,OAAO,kBAAkB,YAAY,cACrC,OAAO,iBAAiB,YAAY,YAEpC,OAAO,OAAO,OAAO,KAAK,YAAY,CAAC;CACzC,MAAM,UAAU,iBAAiB,QAAQ,KAAK,gBAAgB;CAE9D,MAAM,WAAW,OAAO,WAAW,kBACjC,uDACA,CAAC,GACD,KAAA,CACF;CAEA,MAAM,YAAY,OAAO,SAAS,EAAE,EAAE,SAAS,CAAC,CAAC,WAAW,KAAK,GAAG,CAAC,CAAC,YAAY;CAElF,IACE,CAAC;EAAC;EAAoB;EAAkB;EAAmB;CAAc,CAAC,CAAC,SACzE,SACF,GAEA,OAAO,OAAO,OAAO,KAAK,YAAY,CAAC;CAEzC,MAAM,aAAa,WACjB,OAAO,OAAO,WAAW,kBAAkB,QAAQ,CAAC,GAAG,KAAA,CAAS,CAAC;CAEnE,MAAM,cAAc,oBAAoB;EACtC,oBAAoB,OAAO;EAC3B,gBAAgB,CACd,CAAC,aAAa,OAAO,GACrB,CAAC,qBAAqB,OAAO,CAC/B;EACA,mBAAmB,OAAO,QAAQ,CAAC,KAAA,GAAW,UAAU,CAAU;EAClE,aACE,UAAU,gDAAgD,CAAC,CAAC,KAC1D,OAAO,QAAQ,UAAU,OAAO,CAAC,CACnC;EACF,cAAc,UAAU,QAAQ;EAChC,gBAAgB,UAAU,UAAU;EACpC,YAAY,aAAa,OAAO,UAAU,+BAA+B,IAAI;EAC7E,mBAAmB,aAAa,OAC9B,UAAU,uCAAuC,IAAI;EACvD,oBAAoB,aAAa,OAC/B,UAAU,2CAA2C,IAAI;CAC7D,CAAC;CAED,MAAM,UAAU,UAAU,UAAU,CAAC,CAAC,KACpC,OAAO,QAAQ,UAAU,mCAAmC,WAAW,CAAC,GACxE,OAAO,QAAQ,SAAU,KAAK,SAAS,YAAY,OAAO,KAAK,OAAO,IAAI,OAAO,IAAK,GACtF,OAAO,KACT;CAEA,MAAM,QAA+B;EAAE;EAAQ;EAAa,QAAQ;CAAK;CAEzE,OAAO,OAAO,YACZ,OAAO,cAAc,KAAK,WAAW,CAAC,CAAC,CAAC,KACtC,OAAO,eAAe,yBAAyB,KAAK,CACtD,CACF,CAAC,CAAC,KACA,OAAO,SACL,OAAO,WAAW;EAChB,MAAM,SAAS;CACjB,CAAC,CACH,GAKA,OAAO,SAAS,OAAO,CACzB;AACF,CAAC,CACH;;AAGF,MAAa,qBAAqB,YAAmD;CACnF;CACA,kBAAkB,WAChB,2BAEI,wBAAwB,KAAK;EAC3B,WAAW;EACX,OAAO;CACT,CAAC,GACH,cACM,MACR;AACJ"}
|
package/dist/index.d.mts
CHANGED
|
@@ -1,26 +1,21 @@
|
|
|
1
1
|
import { OAuthProxyColumns } from "./drizzle/oauth-proxy.mjs";
|
|
2
|
-
import { AnyEmailAddressMapping, AnyEmailRegistrationMapping, AnyEmailSignInMapping,
|
|
3
|
-
import { AnyPasswordPersistenceMapping, AnyPasswordRegistrationMapping,
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { PasskeyRegistrationCeremonyCapabilities, PasskeyRegistrationCeremonyMapping, PasskeyRegistrationCeremonyServices, PasskeyRegistrationIntentReadTable, requiredPasskeyRegistrationCeremonyConstraints } from "./drizzle/passkey-registration-ceremony-model.mjs";
|
|
13
|
-
import { authenticationAuthorityLayer, pendingAuthenticationLayer, signedSessionValidityLayer, statefulSessionLayers } from "./drizzle/session-target.mjs";
|
|
14
|
-
import { proofPersistenceLayer } from "./drizzle/proof-target.mjs";
|
|
2
|
+
import { AnyEmailAddressMapping, AnyEmailRegistrationMapping, AnyEmailSignInMapping, EmailAddressMapping, EmailAuthorityCredentialTable, EmailCredentialReadTable, EmailCredentialTable, EmailIdentifierReadTable, EmailIdentifierTable, EmailRegistrationAuthorityCredentialTable, EmailRegistrationCredentialTable, EmailRegistrationIdentifierTable, EmailRegistrationIntent, EmailRegistrationMapping, EmailRegistrationProvisioning, EmailSignInMapping, EmailSubjectReadTable, EmailSubjectTable, RequiredEmailAddressConstraints, RequiredEmailRegistrationConstraints, RequiredEmailSignInConstraints, requiredEmailAddressConstraints, requiredEmailRegistrationConstraints, requiredEmailSignInConstraints } from "./drizzle/email-model.mjs";
|
|
3
|
+
import { AnyPasswordPersistenceMapping, AnyPasswordRegistrationMapping, PasswordAuthorityCredentialTable, PasswordCredentialTable, PasswordIdentifierTable, PasswordPersistenceMapping, PasswordRegistrationConstraintClassifier, PasswordRegistrationIntent, PasswordRegistrationMapping, PasswordRegistrationProvisioning, PasswordSubjectTable, RequiredPasswordConstraints, RequiredPasswordRegistrationConstraints, requiredPasswordConstraints, requiredPasswordRegistrationConstraints } from "./drizzle/password-model.mjs";
|
|
4
|
+
import { AnyProofPersistenceMapping, ProofClock, ProofPersistenceMapping, ProofTable, RequiredProofConstraints, requiredProofConstraints } from "./drizzle/proof-model.mjs";
|
|
5
|
+
import { D1ExternalIdentityMapping, D1GeneratedIdentityMapping, D1SubjectProvisioningMapping, ExternalIdentityTables, IdentityTables, InstantCodec, PersistenceMappingError, RequiredExternalIdentityConstraints, RequiredIdentityConstraints, RequiredSubjectProvisioningConstraints, SubjectIdCodec, SubjectProvisioningTables, identityServicesLayer, isMappedConstraintConflict, requiredExternalIdentityConstraints, requiredIdentityConstraints, requiredSubjectProvisioningConstraints } from "./drizzle/model.mjs";
|
|
6
|
+
import { AuthenticationAuthorityMapping, PendingAuthenticationMapping, PendingAuthenticationTables, RequiredPendingAuthenticationConstraints, RequiredSessionConstraints, RequiredSignedValidityConstraints, RequiredStatefulPendingConstraints, SessionAuthorityTables, SessionCleanupMapping, SessionIdCodec, SessionPendingInsert, SessionPendingTables, SessionSubjectTables, SignedSessionValidityMapping, SignedSessionValidityTables, StatefulSessionMapping, StatefulSessionTables, requiredPendingAuthenticationConstraints, requiredSessionConstraints, requiredSignedValidityConstraints, requiredStatefulPendingConstraints } from "./drizzle/session-model.mjs";
|
|
7
|
+
import { D1PasskeyMapping, PasskeyCeremonyMapping, PasskeyClock, PasskeyColumn, PasskeyCredentialMapping, PasskeyCredentialReadTable, PasskeyCredentialServices, PasskeyFactorReadTable, PasskeyFlowInsert, PasskeyFlowTable, PasskeyMappingSource, PasskeyPersistenceMapping, PasskeyPersistenceServices, PasskeySubjectIdCodec, PasskeySubjectReadTable, passkeyCredentialsLayer, passkeyPersistenceLayer, requiredPasskeyCredentialConstraints, requiredPasskeyPersistenceConstraints } from "./drizzle/passkey-model.mjs";
|
|
8
|
+
import { RequiredSessionStepUpConstraints, SessionStepUpMapping, SessionStepUpSourceTables, requiredSessionStepUpConstraints } from "./drizzle/step-up-model.mjs";
|
|
9
|
+
import { OAuthAccountsMapping, OAuthAction, OAuthAuthorityReadTable, OAuthAuthorityTable, OAuthCleanupDescriptor, OAuthCleanupTable, OAuthClock, OAuthCredentialReadTable, OAuthCredentialTable, OAuthD1Mapping, OAuthEligibilityDescriptor, OAuthEligibilityFact, OAuthEligibilityTable, OAuthFlowTable, OAuthOwnershipReadTable, OAuthOwnershipTable, OAuthRegistrationAuthority, OAuthRegistrationGuardDescriptor, OAuthRegistrationGuardTable, OAuthRegistrationIntentMapping, OAuthRegistrationIntentTable, OAuthRegistrationMapping, OAuthSignInMapping, OAuthSubjectReadTable, OAuthSubjectTable, oauthCleanupTable, oauthEligibilityTable, oauthRegistrationGuardTable, requiredOAuthRegistrationConstraints, requiredOAuthSignInConstraints } from "./drizzle/oauth-model.mjs";
|
|
10
|
+
import { OAuthConnectedAction, OAuthConnectedGrantTable, OAuthConnectedMapping, OAuthConnectedPolicyInput, OAuthConnectedRevocationJobTable, OAuthConnectedRevocationMapping, OAuthConnectedSqlPolicy, requiredOAuthConnectedConstraints, requiredOAuthConnectedRevocationConstraints } from "./drizzle/oauth-connected-model.mjs";
|
|
11
|
+
import { PasskeyRegistrationCeremonyCapabilities, PasskeyRegistrationCeremonyMapping, PasskeyRegistrationCeremonyServices } from "./drizzle/passkey-registration-ceremony-model.mjs";
|
|
15
12
|
import { emailAddressPersistenceLayer, emailRegistrationLayer, emailSignInTargetsLayer } from "./drizzle/email-target.mjs";
|
|
16
|
-
import { oauthAccountsPersistenceLayer, oauthRegistrationAuthorityLayer, oauthRegistrationIntentsLayer, oauthSignInPersistenceLayer } from "./drizzle/oauth-target.mjs";
|
|
13
|
+
import { oauthAccountsPersistenceLayer, oauthConnectedPersistenceLayer, oauthConnectedRevocationsLayer, oauthRegistrationAuthorityLayer, oauthRegistrationIntentsLayer, oauthSignInPersistenceLayer } from "./drizzle/oauth-target.mjs";
|
|
17
14
|
import { oauthConnectedOwnershipReferences } from "./drizzle/oauth-connected-reference.mjs";
|
|
18
|
-
import { oauthConnectedPersistenceLayer, oauthConnectedRevocationsLayer } from "./drizzle/oauth-connected-target.mjs";
|
|
19
15
|
import { passwordPersistenceLayer, passwordRegistrationLayer } from "./drizzle/password-target.mjs";
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
|
|
26
|
-
export { type AnyEmailAddressMapping, type AnyEmailRegistrationMapping, type AnyEmailSignInMapping, type AnyPasswordPersistenceMapping, type AnyPasswordPreparedPersistenceMapping, type AnyPasswordRegistrationMapping, type AnyProofPersistenceMapping, type AuthenticationAuthorityMapping, type CommitMode, type D1AuthenticationAuthorityMapping, type D1EmailAddressMapping, type D1EmailRegistrationMapping, type D1ExternalIdentityMapping, type D1GeneratedIdentityMapping, type D1PasskeyMapping, type D1PasswordPersistenceMapping, type D1PasswordPreparedPersistenceMapping, type D1PasswordPreparedProofMapping, type D1PendingAuthenticationMapping, type D1PhoneMapping, type D1ProofPersistenceMapping, type D1SessionClockMapping, type D1SessionStepUpMapping, type D1SignedSessionValidityMapping, type D1StatefulSessionMapping, type D1SubjectProvisioningMapping, type D1TotpMapping, type EmailAddressMapping, type EmailAuthorityCredentialTable, type EmailCommandTable, type EmailCredentialReadTable, type EmailCredentialTable, type EmailD1Clock, type EmailIdentifierReadTable, type EmailIdentifierTable, type EmailRegistrationAuthorityCredentialTable, type EmailRegistrationCredentialTable, type EmailRegistrationIdentifierTable, type EmailRegistrationIntent, type EmailRegistrationMapping, type EmailRegistrationProvisioning, type EmailRegistrationState, type EmailRegistrationTable, type EmailSignInMapping, type EmailSubjectReadTable, type EmailSubjectTable, type ExternalIdentityTables, type IdentityTables, type InstantCodec, type OAuthAccountsMapping, type OAuthAction, type OAuthAuthorityReadTable, type OAuthAuthorityTable, type OAuthCleanupDescriptor, type OAuthCleanupTable, type OAuthClock, type OAuthConnectedAction, type OAuthConnectedAdmissionTable, type OAuthConnectedAuthorityMapping, type OAuthConnectedClientRegistrationTable, type OAuthConnectedCohortTable, type OAuthConnectedCommandTable, type OAuthConnectedFlowTable, type OAuthConnectedGrantTable, type OAuthConnectedMapping, type OAuthConnectedOrderCodec, type OAuthConnectedOwnershipRead, type OAuthConnectedPolicyGuard, type OAuthConnectedPolicyGuardTable, type OAuthConnectedPolicyInput, type OAuthConnectedRevocationJobTable, type OAuthConnectedRevocationMapping, type OAuthConnectedSqlPolicy, type OAuthConnectedSubjectTable, type OAuthCredentialReadTable, type OAuthCredentialTable, type OAuthD1Mapping, type OAuthEligibilityDescriptor, type OAuthEligibilityFact, type OAuthEligibilityTable, type OAuthFlowState, type OAuthFlowTable, type OAuthMetadataPolicy, type OAuthOwnershipMutation, type OAuthOwnershipReadTable, type OAuthOwnershipTable, type OAuthProxyColumns, type OAuthReferenceGuardDescriptor, type OAuthReferenceGuardTable, type OAuthRegistrationAuthority, type OAuthRegistrationBase, type OAuthRegistrationCommandTable, type OAuthRegistrationEligibility, type OAuthRegistrationGuardDescriptor, type OAuthRegistrationGuardTable, type OAuthRegistrationIntentMapping, type OAuthRegistrationIntentTable, type OAuthRegistrationMapping, type OAuthRegistrationState, type OAuthSignInMapping, type OAuthSubjectReadTable, type OAuthSubjectTable, type OAuthTupleAuthorityTable, type OAuthTupleState, type OAuthUnlinkCommandTable, type PasskeyAdmissionTable, type PasskeyCeremonyMapping, type PasskeyChargeInsert, type PasskeyChargeKind, type PasskeyChargeTable, type PasskeyClock, type PasskeyColumn, type PasskeyCommandTable, type PasskeyCredentialInsert, type PasskeyCredentialMapping, type PasskeyCredentialOwnershipTable, type PasskeyCredentialReadTable, type PasskeyCredentialServices, type PasskeyEnrollmentContextMapping, type PasskeyEnrollmentContextServices, type PasskeyFactorReadTable, type PasskeyFlowInsert, type PasskeyFlowState, type PasskeyFlowTable, type PasskeyHandleOwnershipTable, type PasskeyHandleReadTable, type PasskeyHandleReservationTable, type PasskeyInvalidationInput, type PasskeyInvalidationMutation, type PasskeyManagementMapping, type PasskeyManagementServices, type PasskeyMappingSource, type PasskeyModuleTable, type PasskeyPersistenceMapping, type PasskeyPersistenceServices, type PasskeyPolicyGuard, type PasskeyRegistrationCeremonyCapabilities, type PasskeyRegistrationCeremonyMapping, type PasskeyRegistrationCeremonyServices, type PasskeyRegistrationIntentReadTable, type PasskeyRegistrationMapping, type PasskeyRegistrationServices, type PasskeyRegistrationWriter, type PasskeySubjectIdCodec, type PasskeySubjectReadTable, type PasskeyWriteTables, type PasswordAuthorityCredentialTable, type PasswordCommandTable, type PasswordConstraintClassifier, type PasswordCredentialTable, type PasswordD1Clock, type PasswordIdentifierTable, type PasswordPersistenceMapping, type PasswordPreparedAdmissionTable, type PasswordPreparedIntentTable, type PasswordPreparedPersistenceMapping, type PasswordPreparedProofMapping, type PasswordPreparedState, type PasswordRegistrationConstraintClassifier, type PasswordRegistrationIntent, type PasswordRegistrationMapping, type PasswordRegistrationProvisioning, type PasswordRegistrationState, type PasswordRegistrationTable, type PasswordSubjectTable, type PendingAuthenticationMapping, type PendingAuthenticationTables, type PersistenceMappingError, type PhoneMapping, type PhoneMappingSource, type PhonePersistenceServices, type PhoneProofCompletionMapping, type ProofAbuseEventTable, type ProofAction, type ProofAuthorityInput, type ProofAuthorityTables, type ProofCommandDecision, type ProofCommandKind, type ProofCommandTable, type ProofConstraintClassifier, type ProofContinuationRecord, type ProofContinuationTable, type ProofD1Clock, type ProofDeliveryState, type ProofFailureEventTable, type ProofGenerationState, type ProofGenerationTable, type ProofPersistenceMapping, type ProofRateScopeTable, type ProofRequestTable, type ProofScopeKeys, type ProofScopeKind, type ProofSeriesTable, type RequiredEmailAddressConstraints, type RequiredEmailRegistrationConstraints, type RequiredEmailSignInConstraints, type RequiredExternalIdentityConstraints, type RequiredIdentityConstraints, type RequiredPasswordConstraints, type RequiredPasswordPreparedConstraints, type RequiredPasswordRegistrationConstraints, type RequiredPendingAuthenticationConstraints, type RequiredProofConstraints, type RequiredSessionConstraints, type RequiredSessionStepUpConstraints, type RequiredSignedValidityConstraints, type RequiredStatefulPendingConstraints, type RequiredSubjectProvisioningConstraints, type SessionAuthorityTables, type SessionConstraintClassifier, type SessionFlowTables, type SessionIdCodec, type SessionStepUpIntentTables, type SessionStepUpMapping, type SessionStepUpSourceTables, type SessionSubjectTables, type SignedSessionValidityMapping, type SignedSessionValidityTables, type StatefulSessionMapping, type StatefulSessionTables, type SubjectIdCodec, type SubjectProvisioningTables, type TotpMapping, type TotpMappingSource, type TotpPersistenceServices, authenticationAuthorityLayer, column, decodeTotpRecord, emailAddressPersistenceLayer, emailRegistrationLayer, emailSignInTargetsLayer, encodeTotpRecord, identityServicesLayer, isMappedConstraintConflict, oauthAccountsPersistenceLayer, oauthCleanupTable, oauthConnectedOwnershipReferences, oauthConnectedPersistenceLayer, oauthConnectedPolicyGuard, oauthConnectedRevocationsLayer, oauthEligibilityTable, oauthReferenceGuardTable, oauthRegistrationAuthorityLayer, oauthRegistrationGuardTable, oauthRegistrationIntentsLayer, oauthSignInPersistenceLayer, passkeyCredentialsLayer, passkeyEnrollmentContextLayer, passkeyInvalidationMutation, passkeyManagementPersistenceLayer, passkeyPersistenceLayer, passkeyPolicyGuard, passwordPersistenceLayer, passwordPreparedPersistenceLayer, passwordRegistrationLayer, pendingAuthenticationLayer, phonePersistenceLayer, phoneProofCompletionMapping, proofPersistenceLayer, provisioningFingerprint, requiredEmailAddressConstraints, requiredEmailRegistrationConstraints, requiredEmailSignInConstraints, requiredExternalIdentityConstraints, requiredIdentityConstraints, requiredOAuthAccountsConstraints, requiredOAuthConnectedConstraints, requiredOAuthConnectedRevocationConstraints, requiredOAuthRegistrationConstraints, requiredOAuthSignInConstraints, requiredOAuthTupleConstraints, requiredPasskeyCredentialConstraints, requiredPasskeyManagementConstraints, requiredPasskeyPersistenceConstraints, requiredPasskeyRegistrationCeremonyConstraints, requiredPasskeyRegistrationWriteConstraints, requiredPasswordConstraints, requiredPasswordPreparedConstraints, requiredPasswordRegistrationConstraints, requiredPendingAuthenticationConstraints, requiredPhoneConstraints, requiredProofConstraints, requiredSessionConstraints, requiredSessionStepUpConstraints, requiredSignedValidityConstraints, requiredStatefulPendingConstraints, requiredSubjectProvisioningConstraints, requiredTotpConstraints, signedSessionValidityLayer, statefulSessionLayers, totpPersistenceLayer, updateValues };
|
|
16
|
+
import { proofPersistenceLayer } from "./drizzle/proof-target.mjs";
|
|
17
|
+
import { TotpMapping, TotpMappingSource, TotpPersistenceServices, requiredTotpConstraints, totpPersistenceLayer } from "./drizzle/totp-model.mjs";
|
|
18
|
+
import { PasskeyCredentialInsert, PasskeyInvalidationInput, PasskeyInvalidationMutation, PasskeyManagementMapping, PasskeyManagementServices, PasskeyRegistrationMapping, PasskeyRegistrationServices, PasskeyRegistrationWriter, PasskeyWriteTables, passkeyInvalidationMutation } from "./drizzle/passkey-write-model.mjs";
|
|
19
|
+
import { passkeyManagementPersistenceLayer } from "./drizzle/passkey/write-target.mjs";
|
|
20
|
+
import { PhoneMapping, PhoneMappingSource, PhonePersistenceServices, phonePersistenceLayer, requiredPhoneConstraints } from "./drizzle/phone-model.mjs";
|
|
21
|
+
export { type AnyEmailAddressMapping, type AnyEmailRegistrationMapping, type AnyEmailSignInMapping, type AnyPasswordPersistenceMapping, type AnyPasswordRegistrationMapping, type AnyProofPersistenceMapping, type AuthenticationAuthorityMapping, type D1ExternalIdentityMapping, type D1GeneratedIdentityMapping, type D1PasskeyMapping, type D1SubjectProvisioningMapping, type EmailAddressMapping, type EmailAuthorityCredentialTable, type EmailCredentialReadTable, type EmailCredentialTable, type EmailIdentifierReadTable, type EmailIdentifierTable, type EmailRegistrationAuthorityCredentialTable, type EmailRegistrationCredentialTable, type EmailRegistrationIdentifierTable, type EmailRegistrationIntent, type EmailRegistrationMapping, type EmailRegistrationProvisioning, type EmailSignInMapping, type EmailSubjectReadTable, type EmailSubjectTable, type ExternalIdentityTables, type IdentityTables, type InstantCodec, type OAuthAccountsMapping, type OAuthAction, type OAuthAuthorityReadTable, type OAuthAuthorityTable, type OAuthCleanupDescriptor, type OAuthCleanupTable, type OAuthClock, type OAuthConnectedAction, type OAuthConnectedGrantTable, type OAuthConnectedMapping, type OAuthConnectedPolicyInput, type OAuthConnectedRevocationJobTable, type OAuthConnectedRevocationMapping, type OAuthConnectedSqlPolicy, type OAuthCredentialReadTable, type OAuthCredentialTable, type OAuthD1Mapping, type OAuthEligibilityDescriptor, type OAuthEligibilityFact, type OAuthEligibilityTable, type OAuthFlowTable, type OAuthOwnershipReadTable, type OAuthOwnershipTable, type OAuthProxyColumns, type OAuthRegistrationAuthority, type OAuthRegistrationGuardDescriptor, type OAuthRegistrationGuardTable, type OAuthRegistrationIntentMapping, type OAuthRegistrationIntentTable, type OAuthRegistrationMapping, type OAuthSignInMapping, type OAuthSubjectReadTable, type OAuthSubjectTable, type PasskeyCeremonyMapping, type PasskeyClock, type PasskeyColumn, type PasskeyCredentialInsert, type PasskeyCredentialMapping, type PasskeyCredentialReadTable, type PasskeyCredentialServices, type PasskeyFactorReadTable, type PasskeyFlowInsert, type PasskeyFlowTable, type PasskeyInvalidationInput, type PasskeyInvalidationMutation, type PasskeyManagementMapping, type PasskeyManagementServices, type PasskeyMappingSource, type PasskeyPersistenceMapping, type PasskeyPersistenceServices, type PasskeyRegistrationCeremonyCapabilities, type PasskeyRegistrationCeremonyMapping, type PasskeyRegistrationCeremonyServices, type PasskeyRegistrationMapping, type PasskeyRegistrationServices, type PasskeyRegistrationWriter, type PasskeySubjectIdCodec, type PasskeySubjectReadTable, type PasskeyWriteTables, type PasswordAuthorityCredentialTable, type PasswordCredentialTable, type PasswordIdentifierTable, type PasswordPersistenceMapping, type PasswordRegistrationConstraintClassifier, type PasswordRegistrationIntent, type PasswordRegistrationMapping, type PasswordRegistrationProvisioning, type PasswordSubjectTable, type PendingAuthenticationMapping, type PendingAuthenticationTables, type PersistenceMappingError, type PhoneMapping, type PhoneMappingSource, type PhonePersistenceServices, type ProofClock, type ProofPersistenceMapping, type ProofTable, type RequiredEmailAddressConstraints, type RequiredEmailRegistrationConstraints, type RequiredEmailSignInConstraints, type RequiredExternalIdentityConstraints, type RequiredIdentityConstraints, type RequiredPasswordConstraints, type RequiredPasswordRegistrationConstraints, type RequiredPendingAuthenticationConstraints, type RequiredProofConstraints, type RequiredSessionConstraints, type RequiredSessionStepUpConstraints, type RequiredSignedValidityConstraints, type RequiredStatefulPendingConstraints, type RequiredSubjectProvisioningConstraints, type SessionAuthorityTables, type SessionCleanupMapping, type SessionIdCodec, type SessionPendingInsert, type SessionPendingTables, type SessionStepUpMapping, type SessionStepUpSourceTables, type SessionSubjectTables, type SignedSessionValidityMapping, type SignedSessionValidityTables, type StatefulSessionMapping, type StatefulSessionTables, type SubjectIdCodec, type SubjectProvisioningTables, type TotpMapping, type TotpMappingSource, type TotpPersistenceServices, emailAddressPersistenceLayer, emailRegistrationLayer, emailSignInTargetsLayer, identityServicesLayer, isMappedConstraintConflict, oauthAccountsPersistenceLayer, oauthCleanupTable, oauthConnectedOwnershipReferences, oauthConnectedPersistenceLayer, oauthConnectedRevocationsLayer, oauthEligibilityTable, oauthRegistrationAuthorityLayer, oauthRegistrationGuardTable, oauthRegistrationIntentsLayer, oauthSignInPersistenceLayer, passkeyCredentialsLayer, passkeyInvalidationMutation, passkeyManagementPersistenceLayer, passkeyPersistenceLayer, passwordPersistenceLayer, passwordRegistrationLayer, phonePersistenceLayer, proofPersistenceLayer, requiredEmailAddressConstraints, requiredEmailRegistrationConstraints, requiredEmailSignInConstraints, requiredExternalIdentityConstraints, requiredIdentityConstraints, requiredOAuthConnectedConstraints, requiredOAuthConnectedRevocationConstraints, requiredOAuthRegistrationConstraints, requiredOAuthSignInConstraints, requiredPasskeyCredentialConstraints, requiredPasskeyPersistenceConstraints, requiredPasswordConstraints, requiredPasswordRegistrationConstraints, requiredPendingAuthenticationConstraints, requiredPhoneConstraints, requiredProofConstraints, requiredSessionConstraints, requiredSessionStepUpConstraints, requiredSignedValidityConstraints, requiredStatefulPendingConstraints, requiredSubjectProvisioningConstraints, requiredTotpConstraints, totpPersistenceLayer };
|
package/dist/index.mjs
CHANGED
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
import { requiredEmailAddressConstraints, requiredEmailRegistrationConstraints, requiredEmailSignInConstraints } from "./drizzle/email-model.mjs";
|
|
2
2
|
import { requiredPasswordConstraints, requiredPasswordRegistrationConstraints } from "./drizzle/password-model.mjs";
|
|
3
|
-
import { requiredPasswordPreparedConstraints } from "./drizzle/password-prepared-model.mjs";
|
|
4
3
|
import { requiredProofConstraints } from "./drizzle/proof-model.mjs";
|
|
5
|
-
import { PersistenceMappingError,
|
|
4
|
+
import { PersistenceMappingError, identityServicesLayer, isMappedConstraintConflict, requiredExternalIdentityConstraints, requiredIdentityConstraints, requiredSubjectProvisioningConstraints } from "./drizzle/model.mjs";
|
|
6
5
|
import { requiredPendingAuthenticationConstraints, requiredSessionConstraints, requiredSignedValidityConstraints, requiredStatefulPendingConstraints } from "./drizzle/session-model.mjs";
|
|
7
|
-
import { passkeyCredentialsLayer,
|
|
6
|
+
import { passkeyCredentialsLayer, passkeyPersistenceLayer, requiredPasskeyCredentialConstraints, requiredPasskeyPersistenceConstraints } from "./drizzle/passkey-model.mjs";
|
|
8
7
|
import { requiredSessionStepUpConstraints } from "./drizzle/step-up-model.mjs";
|
|
9
|
-
import { oauthCleanupTable, oauthEligibilityTable,
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { authenticationAuthorityLayer, pendingAuthenticationLayer, signedSessionValidityLayer, statefulSessionLayers } from "./drizzle/session-target.mjs";
|
|
8
|
+
import { oauthCleanupTable, oauthEligibilityTable, oauthRegistrationGuardTable, requiredOAuthRegistrationConstraints, requiredOAuthSignInConstraints } from "./drizzle/oauth-model.mjs";
|
|
9
|
+
import { requiredOAuthConnectedConstraints, requiredOAuthConnectedRevocationConstraints } from "./drizzle/oauth-connected-model.mjs";
|
|
10
|
+
import { proofPersistenceLayer } from "./drizzle/proof-target.mjs";
|
|
13
11
|
import { emailAddressPersistenceLayer, emailRegistrationLayer, emailSignInTargetsLayer } from "./drizzle/email-target.mjs";
|
|
14
|
-
import { oauthAccountsPersistenceLayer, oauthRegistrationAuthorityLayer, oauthRegistrationIntentsLayer, oauthSignInPersistenceLayer } from "./drizzle/oauth-target.mjs";
|
|
12
|
+
import { oauthAccountsPersistenceLayer, oauthConnectedPersistenceLayer, oauthConnectedRevocationsLayer, oauthRegistrationAuthorityLayer, oauthRegistrationIntentsLayer, oauthSignInPersistenceLayer } from "./drizzle/oauth-target.mjs";
|
|
15
13
|
import { oauthConnectedOwnershipReferences } from "./drizzle/oauth-connected-reference.mjs";
|
|
16
|
-
import { oauthConnectedPersistenceLayer, oauthConnectedRevocationsLayer } from "./drizzle/oauth-connected-target.mjs";
|
|
17
14
|
import { passwordPersistenceLayer, passwordRegistrationLayer } from "./drizzle/password-target.mjs";
|
|
18
|
-
import { passwordPreparedPersistenceLayer } from "./drizzle/password-prepared-target.mjs";
|
|
19
|
-
import { proofPersistenceLayer } from "./drizzle/proof-target.mjs";
|
|
20
15
|
import { requiredTotpConstraints, totpPersistenceLayer } from "./drizzle/totp-model.mjs";
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
|
|
25
|
-
export { PersistenceMappingError, authenticationAuthorityLayer, column, decodeTotpRecord, emailAddressPersistenceLayer, emailRegistrationLayer, emailSignInTargetsLayer, encodeTotpRecord, identityServicesLayer, isMappedConstraintConflict, oauthAccountsPersistenceLayer, oauthCleanupTable, oauthConnectedOwnershipReferences, oauthConnectedPersistenceLayer, oauthConnectedPolicyGuard, oauthConnectedRevocationsLayer, oauthEligibilityTable, oauthReferenceGuardTable, oauthRegistrationAuthorityLayer, oauthRegistrationGuardTable, oauthRegistrationIntentsLayer, oauthSignInPersistenceLayer, passkeyCredentialsLayer, passkeyEnrollmentContextLayer, passkeyInvalidationMutation, passkeyManagementPersistenceLayer, passkeyPersistenceLayer, passkeyPolicyGuard, passwordPersistenceLayer, passwordPreparedPersistenceLayer, passwordRegistrationLayer, pendingAuthenticationLayer, phonePersistenceLayer, phoneProofCompletionMapping, proofPersistenceLayer, provisioningFingerprint, requiredEmailAddressConstraints, requiredEmailRegistrationConstraints, requiredEmailSignInConstraints, requiredExternalIdentityConstraints, requiredIdentityConstraints, requiredOAuthAccountsConstraints, requiredOAuthConnectedConstraints, requiredOAuthConnectedRevocationConstraints, requiredOAuthRegistrationConstraints, requiredOAuthSignInConstraints, requiredOAuthTupleConstraints, requiredPasskeyCredentialConstraints, requiredPasskeyManagementConstraints, requiredPasskeyPersistenceConstraints, requiredPasskeyRegistrationCeremonyConstraints, requiredPasskeyRegistrationWriteConstraints, requiredPasswordConstraints, requiredPasswordPreparedConstraints, requiredPasswordRegistrationConstraints, requiredPendingAuthenticationConstraints, requiredPhoneConstraints, requiredProofConstraints, requiredSessionConstraints, requiredSessionStepUpConstraints, requiredSignedValidityConstraints, requiredStatefulPendingConstraints, requiredSubjectProvisioningConstraints, requiredTotpConstraints, signedSessionValidityLayer, statefulSessionLayers, totpPersistenceLayer, updateValues };
|
|
16
|
+
import { passkeyInvalidationMutation } from "./drizzle/passkey-write-model.mjs";
|
|
17
|
+
import { passkeyManagementPersistenceLayer } from "./drizzle/passkey/write-target.mjs";
|
|
18
|
+
import { phonePersistenceLayer, requiredPhoneConstraints } from "./drizzle/phone-model.mjs";
|
|
19
|
+
export { PersistenceMappingError, emailAddressPersistenceLayer, emailRegistrationLayer, emailSignInTargetsLayer, identityServicesLayer, isMappedConstraintConflict, oauthAccountsPersistenceLayer, oauthCleanupTable, oauthConnectedOwnershipReferences, oauthConnectedPersistenceLayer, oauthConnectedRevocationsLayer, oauthEligibilityTable, oauthRegistrationAuthorityLayer, oauthRegistrationGuardTable, oauthRegistrationIntentsLayer, oauthSignInPersistenceLayer, passkeyCredentialsLayer, passkeyInvalidationMutation, passkeyManagementPersistenceLayer, passkeyPersistenceLayer, passwordPersistenceLayer, passwordRegistrationLayer, phonePersistenceLayer, proofPersistenceLayer, requiredEmailAddressConstraints, requiredEmailRegistrationConstraints, requiredEmailSignInConstraints, requiredExternalIdentityConstraints, requiredIdentityConstraints, requiredOAuthConnectedConstraints, requiredOAuthConnectedRevocationConstraints, requiredOAuthRegistrationConstraints, requiredOAuthSignInConstraints, requiredPasskeyCredentialConstraints, requiredPasskeyPersistenceConstraints, requiredPasswordConstraints, requiredPasswordRegistrationConstraints, requiredPendingAuthenticationConstraints, requiredPhoneConstraints, requiredProofConstraints, requiredSessionConstraints, requiredSessionStepUpConstraints, requiredSignedValidityConstraints, requiredStatefulPendingConstraints, requiredSubjectProvisioningConstraints, requiredTotpConstraints, totpPersistenceLayer };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { nativeDatabase } from "../drizzle/native-database.mjs";
|
|
1
2
|
import { makeDrizzleSqlTables } from "../drizzle/native-sql-table.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import { PersistenceConfigurationError, createPersistence, makeComposedPasskeys } from "@yielded/auth-persistence/Adapter";
|
|
3
|
+
import { PersistenceConfigurationError, createPersistence } from "@yielded/auth-persistence/Adapter";
|
|
4
4
|
import { getTableColumns } from "drizzle-orm";
|
|
5
5
|
import { bigint, boolean, getTableConfig, pgTable, text, uniqueIndex } from "drizzle-orm/pg-core";
|
|
6
6
|
//#region src/internal/drizzle-postgres.ts
|
|
@@ -26,12 +26,10 @@ const describe = (table) => {
|
|
|
26
26
|
};
|
|
27
27
|
};
|
|
28
28
|
const postgresPersistence = (acquire) => createPersistence({
|
|
29
|
+
nativeTables: (database) => makeDrizzleSqlTables(database.$client, database),
|
|
29
30
|
makeTable,
|
|
30
31
|
describe,
|
|
31
|
-
|
|
32
|
-
nativeTables: makeDrizzleSqlTables,
|
|
33
|
-
acquire,
|
|
34
|
-
passkeys: makeComposedPasskeys(drizzleQueryOperations)
|
|
32
|
+
acquire: nativeDatabase(acquire)
|
|
35
33
|
});
|
|
36
34
|
//#endregion
|
|
37
35
|
export { postgresPersistence };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle-postgres.mjs","names":[],"sources":["../../src/internal/drizzle-postgres.ts"],"sourcesContent":["import {\n PersistenceConfigurationError,\n
|
|
1
|
+
{"version":3,"file":"drizzle-postgres.mjs","names":[],"sources":["../../src/internal/drizzle-postgres.ts"],"sourcesContent":["import {\n PersistenceConfigurationError,\n createPersistence,\n} from \"@yielded/auth-persistence/Adapter\";\nimport type { StorageTable } from \"@yielded/auth-persistence/Adapter\";\nimport { getTableColumns } from \"drizzle-orm\";\nimport {\n getTableConfig,\n bigint,\n boolean,\n pgTable,\n text,\n uniqueIndex,\n type PgTable,\n} from \"drizzle-orm/pg-core\";\nimport type { Effect } from \"effect\";\nimport type { SqlClient } from \"effect/sql/SqlClient\";\n\nimport { nativeDatabase, type NativeDatabaseHandle } from \"../drizzle/native-database\";\nimport { makeDrizzleSqlTables } from \"../drizzle/native-sql-table\";\n\nconst makeTable = (definition: StorageTable) =>\n pgTable(\n definition.name,\n Object.fromEntries(\n Object.entries(definition.columns).map(([key, column]) => {\n const builder =\n column.type === \"text\"\n ? text(column.name)\n : column.type === \"boolean\"\n ? boolean(column.name)\n : bigint(column.name, { mode: \"number\" });\n\n return [key, column.nullable ? builder : builder.notNull()];\n }),\n ),\n (columns) =>\n definition.unique.map((keys, i) => {\n const [first, ...rest] = keys;\n\n if (first === undefined)\n throw PersistenceConfigurationError.make({ reason: \"An empty unique key is invalid\" });\n\n return uniqueIndex(`${definition.name}_key_${i}`).on(\n columns[first],\n ...rest.map((key) => columns[key]),\n );\n }),\n );\n\nconst describe = (table: PgTable): StorageTable => {\n const config = getTableConfig(table);\n\n return {\n name: config.name,\n ...(config.schema === undefined ? {} : { schema: config.schema }),\n columns: Object.fromEntries(\n Object.entries(getTableColumns(table)).map(([key, column]) => [\n key,\n {\n name: column.name,\n type:\n column.dataType === \"boolean\"\n ? \"boolean\"\n : column.dataType === \"number\"\n ? \"integer\"\n : \"text\",\n nullable: !column.notNull,\n },\n ]),\n ),\n unique: [],\n };\n};\n\nexport const postgresPersistence = <R>(acquire: Effect.Effect<object, never, R | SqlClient>) =>\n createPersistence<PgTable, R, NativeDatabaseHandle>({\n nativeTables: (database) => makeDrizzleSqlTables(database.$client, database),\n makeTable,\n describe,\n acquire: nativeDatabase(acquire),\n });\n"],"mappings":";;;;;;AAqBA,MAAM,aAAa,eACjB,QACE,WAAW,MACX,OAAO,YACL,OAAO,QAAQ,WAAW,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY;CACxD,MAAM,UACJ,OAAO,SAAS,SACZ,KAAK,OAAO,IAAI,IAChB,OAAO,SAAS,YACd,QAAQ,OAAO,IAAI,IACnB,OAAO,OAAO,MAAM,EAAE,MAAM,SAAS,CAAC;CAE9C,OAAO,CAAC,KAAK,OAAO,WAAW,UAAU,QAAQ,QAAQ,CAAC;AAC5D,CAAC,CACH,IACC,YACC,WAAW,OAAO,KAAK,MAAM,MAAM;CACjC,MAAM,CAAC,OAAO,GAAG,QAAQ;CAEzB,IAAI,UAAU,KAAA,GACZ,MAAM,8BAA8B,KAAK,EAAE,QAAQ,iCAAiC,CAAC;CAEvF,OAAO,YAAY,GAAG,WAAW,KAAK,OAAO,GAAG,CAAC,CAAC,GAChD,QAAQ,QACR,GAAG,KAAK,KAAK,QAAQ,QAAQ,IAAI,CACnC;AACF,CAAC,CACL;AAEF,MAAM,YAAY,UAAiC;CACjD,MAAM,SAAS,eAAe,KAAK;CAEnC,OAAO;EACL,MAAM,OAAO;EACb,GAAI,OAAO,WAAW,KAAA,IAAY,CAAC,IAAI,EAAE,QAAQ,OAAO,OAAO;EAC/D,SAAS,OAAO,YACd,OAAO,QAAQ,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY,CAC5D,KACA;GACE,MAAM,OAAO;GACb,MACE,OAAO,aAAa,YAChB,YACA,OAAO,aAAa,WAClB,YACA;GACR,UAAU,CAAC,OAAO;EACpB,CACF,CAAC,CACH;EACA,QAAQ,CAAC;CACX;AACF;AAEA,MAAa,uBAA0B,YACrC,kBAAoD;CAClD,eAAe,aAAa,qBAAqB,SAAS,SAAS,QAAQ;CAC3E;CACA;CACA,SAAS,eAAe,OAAO;AACjC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { nativeDatabase } from "../drizzle/native-database.mjs";
|
|
1
2
|
import { makeDrizzleSqlTables } from "../drizzle/native-sql-table.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import { PersistenceConfigurationError, createPersistence, makeComposedPasskeys } from "@yielded/auth-persistence/Adapter";
|
|
3
|
+
import { PersistenceConfigurationError, createPersistence } from "@yielded/auth-persistence/Adapter";
|
|
4
4
|
import { getTableColumns } from "drizzle-orm";
|
|
5
5
|
import { getTableConfig, integer, sqliteTable, text, uniqueIndex } from "drizzle-orm/sqlite-core";
|
|
6
6
|
//#region src/internal/drizzle-sqlite.ts
|
|
@@ -24,12 +24,10 @@ const describe = (table) => {
|
|
|
24
24
|
};
|
|
25
25
|
};
|
|
26
26
|
const sqlitePersistence = (acquire) => createPersistence({
|
|
27
|
+
nativeTables: (database) => makeDrizzleSqlTables(database.$client, database),
|
|
27
28
|
makeTable,
|
|
28
29
|
describe,
|
|
29
|
-
|
|
30
|
-
nativeTables: makeDrizzleSqlTables,
|
|
31
|
-
acquire,
|
|
32
|
-
passkeys: makeComposedPasskeys(drizzleQueryOperations)
|
|
30
|
+
acquire: nativeDatabase(acquire)
|
|
33
31
|
});
|
|
34
32
|
//#endregion
|
|
35
33
|
export { sqlitePersistence };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle-sqlite.mjs","names":[],"sources":["../../src/internal/drizzle-sqlite.ts"],"sourcesContent":["import {\n PersistenceConfigurationError,\n
|
|
1
|
+
{"version":3,"file":"drizzle-sqlite.mjs","names":[],"sources":["../../src/internal/drizzle-sqlite.ts"],"sourcesContent":["import {\n PersistenceConfigurationError,\n createPersistence,\n} from \"@yielded/auth-persistence/Adapter\";\nimport type { StorageTable } from \"@yielded/auth-persistence/Adapter\";\nimport { getTableColumns } from \"drizzle-orm\";\nimport {\n getTableConfig,\n integer,\n sqliteTable,\n text,\n uniqueIndex,\n type SQLiteTable,\n} from \"drizzle-orm/sqlite-core\";\nimport type { Effect } from \"effect\";\nimport type { SqlClient } from \"effect/sql/SqlClient\";\n\nimport { nativeDatabase, type NativeDatabaseHandle } from \"../drizzle/native-database\";\nimport { makeDrizzleSqlTables } from \"../drizzle/native-sql-table\";\n\nconst makeTable = (definition: StorageTable) =>\n sqliteTable(\n definition.name,\n Object.fromEntries(\n Object.entries(definition.columns).map(([key, column]) => {\n const builder =\n column.type === \"text\"\n ? text(column.name)\n : column.type === \"boolean\"\n ? integer(column.name, { mode: \"boolean\" })\n : integer(column.name);\n\n return [key, column.nullable ? builder : builder.notNull()];\n }),\n ),\n (columns) =>\n definition.unique.map((keys, i) => {\n const [first, ...rest] = keys;\n\n if (first === undefined)\n throw PersistenceConfigurationError.make({ reason: \"An empty unique key is invalid\" });\n\n return uniqueIndex(`${definition.name}_key_${i}`).on(\n columns[first],\n ...rest.map((key) => columns[key]),\n );\n }),\n );\n\nconst describe = (table: SQLiteTable): StorageTable => {\n const config = getTableConfig(table);\n\n return {\n name: config.name,\n columns: Object.fromEntries(\n Object.entries(getTableColumns(table)).map(([key, column]) => [\n key,\n {\n name: column.name,\n type:\n column.dataType === \"boolean\"\n ? \"boolean\"\n : column.dataType === \"number\"\n ? \"integer\"\n : \"text\",\n nullable: !column.notNull,\n },\n ]),\n ),\n unique: [],\n };\n};\n\nexport const sqlitePersistence = <R>(acquire: Effect.Effect<object, never, R | SqlClient>) =>\n createPersistence<SQLiteTable, R, NativeDatabaseHandle>({\n nativeTables: (database) => makeDrizzleSqlTables(database.$client, database),\n makeTable,\n describe,\n acquire: nativeDatabase(acquire),\n });\n"],"mappings":";;;;;;AAoBA,MAAM,aAAa,eACjB,YACE,WAAW,MACX,OAAO,YACL,OAAO,QAAQ,WAAW,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY;CACxD,MAAM,UACJ,OAAO,SAAS,SACZ,KAAK,OAAO,IAAI,IAChB,OAAO,SAAS,YACd,QAAQ,OAAO,MAAM,EAAE,MAAM,UAAU,CAAC,IACxC,QAAQ,OAAO,IAAI;CAE3B,OAAO,CAAC,KAAK,OAAO,WAAW,UAAU,QAAQ,QAAQ,CAAC;AAC5D,CAAC,CACH,IACC,YACC,WAAW,OAAO,KAAK,MAAM,MAAM;CACjC,MAAM,CAAC,OAAO,GAAG,QAAQ;CAEzB,IAAI,UAAU,KAAA,GACZ,MAAM,8BAA8B,KAAK,EAAE,QAAQ,iCAAiC,CAAC;CAEvF,OAAO,YAAY,GAAG,WAAW,KAAK,OAAO,GAAG,CAAC,CAAC,GAChD,QAAQ,QACR,GAAG,KAAK,KAAK,QAAQ,QAAQ,IAAI,CACnC;AACF,CAAC,CACL;AAEF,MAAM,YAAY,UAAqC;CAGrD,OAAO;EACL,MAHa,eAAe,KAGjB,CAAC,CAAC;EACb,SAAS,OAAO,YACd,OAAO,QAAQ,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY,CAC5D,KACA;GACE,MAAM,OAAO;GACb,MACE,OAAO,aAAa,YAChB,YACA,OAAO,aAAa,WAClB,YACA;GACR,UAAU,CAAC,OAAO;EACpB,CACF,CAAC,CACH;EACA,QAAQ,CAAC;CACX;AACF;AAEA,MAAa,qBAAwB,YACnC,kBAAwD;CACtD,eAAe,aAAa,qBAAqB,SAAS,SAAS,QAAQ;CAC3E;CACA;CACA,SAAS,eAAe,OAAO;AACjC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@yielded/auth-persistence-drizzle","version":"0.1.0-beta.
|
|
1
|
+
{"name":"@yielded/auth-persistence-drizzle","version":"0.1.0-beta.26","dependencies":{"@yielded/auth":"0.1.0-beta.26","@yielded/auth-persistence":"0.1.0-beta.26"},"devDependencies":{"@effect/platform-bun":"4.0.0","@effect/platform-node":"4.0.0","@effect/sql-d1":"4.0.0","@effect/sql-libsql":"4.0.0","@effect/sql-mysql2":"4.0.0","@effect/sql-pg":"4.0.0","@effect/sql-pglite":"4.0.0","@effect/sql-sqlite-bun":"4.0.0","@effect/sql-sqlite-do":"4.0.0","@effect/sql-sqlite-node":"4.0.0","@effect/sql-sqlite-wasm":"4.0.0","@effect/vitest":"4.0.0","@yielded/crypto":"0.1.0-beta.26","drizzle-orm":"1.0.0-rc.4","effect":"4.0.0","typescript":"7.0.2","vite-plus":"0.3.3"},"peerDependencies":{"@effect/sql-d1":">=4.0.0","@effect/sql-libsql":">=4.0.0","@effect/sql-mysql2":">=4.0.0","@effect/sql-pg":">=4.0.0","@effect/sql-pglite":">=4.0.0","@effect/sql-sqlite-bun":">=4.0.0","@effect/sql-sqlite-do":">=4.0.0","@effect/sql-sqlite-node":">=4.0.0","@effect/sql-sqlite-wasm":">=4.0.0","drizzle-orm":">=1.0.0-rc.4","effect":"^4.0.0"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"./D1":{"types":"./dist/D1.d.mts","default":"./dist/D1.mjs"},"./Libsql":{"types":"./dist/Libsql.d.mts","default":"./dist/Libsql.mjs"},"./Mysql2":{"types":"./dist/Mysql2.d.mts","default":"./dist/Mysql2.mjs"},"./Pglite":{"types":"./dist/Pglite.d.mts","default":"./dist/Pglite.mjs"},"./Postgres":{"types":"./dist/Postgres.d.mts","default":"./dist/Postgres.mjs"},"./SqliteBun":{"types":"./dist/SqliteBun.d.mts","default":"./dist/SqliteBun.mjs"},"./SqliteDo":{"types":"./dist/SqliteDo.d.mts","default":"./dist/SqliteDo.mjs"},"./SqliteNode":{"types":"./dist/SqliteNode.d.mts","default":"./dist/SqliteNode.mjs"},"./SqliteWasm":{"types":"./dist/SqliteWasm.d.mts","default":"./dist/SqliteWasm.mjs"}},"description":"Drizzle persistence, table mappings, and migration adapters for Yielded Auth.","homepage":"https://yielded.dev/auth/","bugs":{"url":"https://github.com/yielded-dev/auth/issues"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/yielded-dev/auth.git","directory":"packages/auth-persistence-drizzle"},"files":["dist","src"],"type":"module","sideEffects":[],"publishConfig":{"access":"public"},"scripts":{"build":"vp pack","check":"tsc --noEmit -p tsconfig.json","test":"vp test --passWithNoTests","example:totp":"bun test/fixtures/totp-sqlite-bun.ts"},"peerDependenciesMeta":{"@effect/sql-d1":{"optional":true},"@effect/sql-libsql":{"optional":true},"@effect/sql-mysql2":{"optional":true},"@effect/sql-pg":{"optional":true},"@effect/sql-pglite":{"optional":true},"@effect/sql-sqlite-bun":{"optional":true},"@effect/sql-sqlite-do":{"optional":true},"@effect/sql-sqlite-node":{"optional":true},"@effect/sql-sqlite-wasm":{"optional":true}}}
|
package/src/D1.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy";
|
|
2
2
|
|
|
3
3
|
import type { D1Client } from "@effect/sql-d1/D1Client";
|
|
4
|
-
export { makeTotpPersistenceServices, coordinateTotpPersistence } from "./drizzle/d1-totp";
|
|
5
4
|
import type { AnyRelations } from "drizzle-orm";
|
|
6
5
|
import { type EffectSQLiteD1Database, makeWithDefaults } from "drizzle-orm/effect-d1";
|
|
7
6
|
import type { AnySQLiteTable } from "drizzle-orm/sqlite-core";
|
|
@@ -9,53 +8,36 @@ import type { AnySQLiteTable } from "drizzle-orm/sqlite-core";
|
|
|
9
8
|
import { Database } from "./drizzle/d1-database";
|
|
10
9
|
export { Database } from "./drizzle/d1-database";
|
|
11
10
|
|
|
12
|
-
export {
|
|
13
|
-
makeD1OAuthAccountsServices as makeOAuthAccountsServices,
|
|
14
|
-
makeD1OAuthSignInServices as makeOAuthSignInServices,
|
|
15
|
-
makeD1OAuthRegistrationIntentServices as makeOAuthRegistrationIntentServices,
|
|
16
|
-
makeD1OAuthRegistrationServices as makeOAuthRegistrationServices,
|
|
17
|
-
coordinateD1OAuthRegistration as coordinateOAuthRegistration,
|
|
18
|
-
coordinateD1OAuthSignIn as coordinateOAuthSignIn,
|
|
19
|
-
coordinateD1OAuthRegistrationIntents as coordinateOAuthRegistrationIntents,
|
|
20
|
-
coordinateD1OAuthAccounts as coordinateOAuthAccounts,
|
|
21
|
-
} from "./drizzle/d1-oauth";
|
|
22
|
-
|
|
23
11
|
import {
|
|
24
12
|
makeD1ExternalIdentityServices,
|
|
25
13
|
makeD1IdentityServices,
|
|
26
14
|
makeD1SubjectProvisioningServices,
|
|
27
15
|
} from "./drizzle/d1-identity";
|
|
16
|
+
import { makeProofTarget } from "./drizzle/proof-drivers";
|
|
17
|
+
|
|
18
|
+
export const { coordinateProofPersistence, makeProofPersistenceServices } = makeProofTarget(
|
|
19
|
+
Database,
|
|
20
|
+
{ mode: "batch", dialect: "sqlite" },
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
import { makePasswordTarget } from "./drizzle/password-drivers";
|
|
28
24
|
|
|
29
|
-
export {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
export {
|
|
46
|
-
coordinateD1PasswordPersistence as coordinatePasswordPersistence,
|
|
47
|
-
coordinateD1PasswordRegistration as coordinatePasswordRegistration,
|
|
48
|
-
makeD1PasswordPersistenceServices as makePasswordPersistenceServices,
|
|
49
|
-
makeD1PasswordRegistrationServices as makePasswordRegistrationServices,
|
|
50
|
-
} from "./drizzle/d1-passwords";
|
|
51
|
-
|
|
52
|
-
export {
|
|
53
|
-
coordinateD1EmailAddress as coordinateEmailAddress,
|
|
54
|
-
coordinateD1EmailRegistration as coordinateEmailRegistration,
|
|
55
|
-
makeD1EmailAddressServices as makeEmailAddressServices,
|
|
56
|
-
makeD1EmailRegistrationServices as makeEmailRegistrationServices,
|
|
57
|
-
makeD1EmailSignInServices as makeEmailSignInServices,
|
|
58
|
-
} from "./drizzle/d1-emails";
|
|
25
|
+
export const {
|
|
26
|
+
coordinatePasswordPersistence,
|
|
27
|
+
coordinatePasswordRegistration,
|
|
28
|
+
makePasswordPersistenceServices,
|
|
29
|
+
makePasswordRegistrationServices,
|
|
30
|
+
} = makePasswordTarget(Database, { mode: "batch", dialect: "sqlite" });
|
|
31
|
+
|
|
32
|
+
import { makeEmailTarget } from "./drizzle/email-drivers";
|
|
33
|
+
|
|
34
|
+
export const {
|
|
35
|
+
makeEmailSignInServices,
|
|
36
|
+
makeEmailAddressServices,
|
|
37
|
+
makeEmailRegistrationServices,
|
|
38
|
+
coordinateEmailAddress,
|
|
39
|
+
coordinateEmailRegistration,
|
|
40
|
+
} = makeEmailTarget(Database, { mode: "batch", dialect: "sqlite" });
|
|
59
41
|
|
|
60
42
|
import type {
|
|
61
43
|
D1GeneratedIdentityMapping,
|
|
@@ -80,8 +62,6 @@ export const makeExternalIdentityServices = <
|
|
|
80
62
|
mapping: D1ExternalIdentityMapping<Subject, External, NativeId>,
|
|
81
63
|
) => makeD1ExternalIdentityServices(mapping);
|
|
82
64
|
|
|
83
|
-
export const commitMode = "batch" as const;
|
|
84
|
-
|
|
85
65
|
export const makeIdentityServices = <
|
|
86
66
|
Subject extends AnySQLiteTable,
|
|
87
67
|
Identifier extends AnySQLiteTable,
|
|
@@ -92,46 +72,38 @@ export const makeIdentityServices = <
|
|
|
92
72
|
mapping: D1GeneratedIdentityMapping<Subject, Identifier, External, Request, NativeId>,
|
|
93
73
|
) => makeD1IdentityServices(mapping);
|
|
94
74
|
|
|
95
|
-
|
|
96
|
-
makeD1SessionStepUpServices as makeSessionStepUpServices,
|
|
97
|
-
coordinateD1SessionStepUp as coordinateSessionStepUp,
|
|
98
|
-
} from "./drizzle/d1-sessions";
|
|
99
|
-
|
|
100
|
-
export {
|
|
101
|
-
makeD1PasswordPreparedPersistenceServices as makePasswordPreparedPersistenceServices,
|
|
102
|
-
coordinateD1PasswordPreparedPersistence as coordinatePasswordPreparedPersistence,
|
|
103
|
-
} from "./drizzle/d1-password-prepared";
|
|
104
|
-
|
|
105
|
-
export { passwordPreparedPersistenceLayer } from "./drizzle/password-prepared-target";
|
|
106
|
-
|
|
107
|
-
import { Effect, Layer } from "effect";
|
|
75
|
+
import { Layer } from "effect";
|
|
108
76
|
|
|
109
|
-
import {
|
|
77
|
+
import type { D1BatchStatements } from "./drizzle/D1BatchStatements";
|
|
78
|
+
import { makeOAuthTarget } from "./drizzle/oauth-drivers";
|
|
110
79
|
import type { OAuthD1Mapping } from "./drizzle/oauth-model";
|
|
80
|
+
import { makePasskeyTarget } from "./drizzle/passkey-drivers";
|
|
81
|
+
import type { D1PasskeyMapping } from "./drizzle/passkey-model";
|
|
111
82
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
EffectSQLiteD1Database<AnyRelations> & { readonly $client: D1Client },
|
|
115
|
-
AnySQLiteTable<{ dialect: "sqlite" }>,
|
|
116
|
-
OAuthD1Mapping
|
|
117
|
-
>(Database, {
|
|
118
|
-
mode: "batch",
|
|
119
|
-
dialect: "sqlite",
|
|
120
|
-
locking: false,
|
|
121
|
-
standaloneGuard: () => Effect.void,
|
|
122
|
-
});
|
|
83
|
+
type D1Database = EffectSQLiteD1Database<AnyRelations> & { readonly $client: D1Client };
|
|
84
|
+
type D1Table = AnySQLiteTable<{ dialect: "sqlite" }>;
|
|
123
85
|
|
|
124
86
|
export const {
|
|
87
|
+
makeOAuthAccountsServices,
|
|
88
|
+
makeOAuthSignInServices,
|
|
89
|
+
makeOAuthRegistrationIntentServices,
|
|
90
|
+
makeOAuthRegistrationServices,
|
|
91
|
+
coordinateOAuthRegistration,
|
|
92
|
+
coordinateOAuthSignIn,
|
|
93
|
+
coordinateOAuthRegistrationIntents,
|
|
94
|
+
coordinateOAuthAccounts,
|
|
125
95
|
makeOAuthConnectedServices,
|
|
126
96
|
makeOAuthConnectedRevocationServices,
|
|
127
97
|
coordinateOAuthConnected,
|
|
128
98
|
coordinateOAuthConnectedRevocations,
|
|
129
|
-
} =
|
|
99
|
+
} = makeOAuthTarget<Database, D1Database, D1Table, OAuthD1Mapping, D1BatchStatements>(Database, {
|
|
100
|
+
mode: "batch",
|
|
101
|
+
dialect: "sqlite",
|
|
102
|
+
});
|
|
130
103
|
|
|
131
|
-
export {
|
|
104
|
+
export const {
|
|
132
105
|
makePasskeyCredentialServices,
|
|
133
106
|
makePasskeyPersistenceServices,
|
|
134
|
-
makePasskeyEnrollmentContextServices,
|
|
135
107
|
makePasskeyRegistrationCeremonyServices,
|
|
136
108
|
coordinatePasskeyPersistence,
|
|
137
109
|
coordinatePasskeyRegistrationCeremony,
|
|
@@ -139,11 +111,42 @@ export {
|
|
|
139
111
|
makePasskeyRegistrationServices,
|
|
140
112
|
coordinatePasskeyManagement,
|
|
141
113
|
coordinatePasskeyRegistration,
|
|
142
|
-
}
|
|
114
|
+
} = makePasskeyTarget<Database, D1Database, D1Table, D1PasskeyMapping, D1BatchStatements>(
|
|
115
|
+
Database,
|
|
116
|
+
{ mode: "batch", dialect: "sqlite" },
|
|
117
|
+
);
|
|
143
118
|
|
|
144
119
|
export { D1BatchStatements } from "./drizzle/D1BatchStatements";
|
|
145
120
|
|
|
146
|
-
|
|
121
|
+
import { makePhoneTarget } from "./drizzle/phone-drivers";
|
|
122
|
+
|
|
123
|
+
export const { makePhonePersistenceServices, coordinatePhonePersistence } = makePhoneTarget(
|
|
124
|
+
Database,
|
|
125
|
+
{ mode: "batch", dialect: "sqlite" },
|
|
126
|
+
);
|
|
147
127
|
|
|
148
128
|
/** Construct Drizzle from the driver's SQL-client Layer. */
|
|
149
129
|
export const databaseLayer = Layer.effect(Database, makeWithDefaults({}));
|
|
130
|
+
|
|
131
|
+
import { makeSessionTarget } from "./drizzle/session-drivers";
|
|
132
|
+
|
|
133
|
+
export const {
|
|
134
|
+
coordinateAuthenticationAuthority,
|
|
135
|
+
coordinatePendingAuthentication,
|
|
136
|
+
coordinateSignedSessionValidity,
|
|
137
|
+
coordinateStatefulSessions,
|
|
138
|
+
makeAuthenticationAuthorityServices,
|
|
139
|
+
makePendingAuthenticationServices,
|
|
140
|
+
makeSignedSessionValidityServices,
|
|
141
|
+
makeStatefulSessionServices,
|
|
142
|
+
makeSessionStepUpServices,
|
|
143
|
+
coordinateSessionStepUp,
|
|
144
|
+
makeSessionCleanupServices,
|
|
145
|
+
} = makeSessionTarget(Database, { mode: "batch", dialect: "sqlite" });
|
|
146
|
+
|
|
147
|
+
import { makeTotpTarget } from "./drizzle/totp-target";
|
|
148
|
+
|
|
149
|
+
export const { makeTotpPersistenceServices, coordinateTotpPersistence } = makeTotpTarget(Database, {
|
|
150
|
+
mode: "batch",
|
|
151
|
+
dialect: "sqlite",
|
|
152
|
+
});
|