@yielded/auth-persistence-drizzle 0.1.0-beta.22 → 0.1.0-beta.24
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 +3 -0
- package/dist/D1.d.mts +11 -11
- package/dist/D1.mjs +2 -1
- package/dist/D1.mjs.map +1 -1
- package/dist/Libsql.d.mts +40 -56
- package/dist/Libsql.mjs +2 -1
- package/dist/Libsql.mjs.map +1 -1
- package/dist/Mysql2.d.mts +16 -17
- package/dist/Pglite.d.mts +18 -18
- package/dist/Pglite.mjs +2 -1
- package/dist/Pglite.mjs.map +1 -1
- package/dist/Postgres.d.mts +24 -24
- package/dist/Postgres.mjs +2 -1
- package/dist/Postgres.mjs.map +1 -1
- package/dist/SqliteBun.d.mts +39 -55
- package/dist/SqliteBun.mjs +2 -1
- package/dist/SqliteBun.mjs.map +1 -1
- package/dist/SqliteDo.d.mts +48 -64
- package/dist/SqliteDo.mjs +2 -1
- package/dist/SqliteDo.mjs.map +1 -1
- package/dist/SqliteNode.d.mts +45 -61
- package/dist/SqliteNode.mjs +2 -1
- package/dist/SqliteNode.mjs.map +1 -1
- package/dist/SqliteWasm.d.mts +48 -64
- package/dist/SqliteWasm.mjs +2 -1
- package/dist/SqliteWasm.mjs.map +1 -1
- package/dist/drizzle/crypto.mjs +1 -1
- package/dist/drizzle/d1-emails.d.mts +1 -1
- package/dist/drizzle/d1-oauth.d.mts +14 -14
- package/dist/drizzle/d1-passkey.d.mts +1 -1
- package/dist/drizzle/d1-password-prepared.d.mts +4 -4
- package/dist/drizzle/d1-password-prepared.mjs.map +1 -1
- package/dist/drizzle/d1-passwords.d.mts +18 -35
- package/dist/drizzle/d1-passwords.mjs +78 -290
- package/dist/drizzle/d1-passwords.mjs.map +1 -1
- package/dist/drizzle/d1-phone.d.mts +1 -1
- package/dist/drizzle/d1-proofs.d.mts +2 -2
- package/dist/drizzle/d1-sessions.d.mts +3 -3
- package/dist/drizzle/d1-sessions.mjs +11 -6
- package/dist/drizzle/d1-sessions.mjs.map +1 -1
- package/dist/drizzle/d1-totp.d.mts +1 -1
- package/dist/drizzle/mysql-password-prepared.d.mts +5 -5
- package/dist/drizzle/mysql-password-prepared.mjs.map +1 -1
- package/dist/drizzle/mysql-passwords.d.mts +16 -32
- package/dist/drizzle/mysql-passwords.mjs.map +1 -1
- package/dist/drizzle/mysql-sessions.d.mts +1 -1
- package/dist/drizzle/native-sql-table.mjs +135 -0
- package/dist/drizzle/native-sql-table.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-model.d.mts +20 -281
- package/dist/drizzle/oauth-connected-model.mjs +3 -17
- package/dist/drizzle/oauth-connected-model.mjs.map +1 -1
- package/dist/drizzle/oauth-connected-reference.d.mts +1 -3
- package/dist/drizzle/oauth-connected-reference.mjs +4 -53
- package/dist/drizzle/oauth-connected-reference.mjs.map +1 -1
- package/dist/drizzle/oauth-connected-target.d.mts +3 -990
- package/dist/drizzle/oauth-connected-target.mjs +8 -92
- package/dist/drizzle/oauth-connected-target.mjs.map +1 -1
- package/dist/drizzle/oauth-kernel.mjs +11 -0
- package/dist/drizzle/oauth-kernel.mjs.map +1 -0
- package/dist/drizzle/oauth-model.d.mts +35 -438
- package/dist/drizzle/oauth-model.mjs +6 -44
- package/dist/drizzle/oauth-model.mjs.map +1 -1
- package/dist/drizzle/oauth-mysql.mjs +2 -2
- package/dist/drizzle/oauth-mysql.mjs.map +1 -1
- package/dist/drizzle/oauth-proxy.d.mts +10 -0
- package/dist/drizzle/oauth-proxy.mjs +54 -0
- package/dist/drizzle/oauth-proxy.mjs.map +1 -0
- package/dist/drizzle/oauth-target.d.mts +6 -107
- package/dist/drizzle/oauth-target.mjs +15 -245
- package/dist/drizzle/oauth-target.mjs.map +1 -1
- package/dist/drizzle/password-model.d.mts +5 -8
- package/dist/drizzle/password-prepared-model.d.mts +5 -5
- package/dist/drizzle/password-prepared-model.mjs.map +1 -1
- package/dist/drizzle/password-prepared-state.mjs +1 -1
- package/dist/drizzle/password-sql.mjs +2 -1
- package/dist/drizzle/password-sql.mjs.map +1 -1
- package/dist/drizzle/password-target.mjs +13 -2
- package/dist/drizzle/password-target.mjs.map +1 -1
- package/dist/drizzle/pg-password-prepared.d.mts +5 -5
- package/dist/drizzle/pg-password-prepared.mjs.map +1 -1
- package/dist/drizzle/pg-passwords.d.mts +16 -32
- package/dist/drizzle/pg-passwords.mjs.map +1 -1
- package/dist/drizzle/pg-sessions.d.mts +1 -1
- package/dist/drizzle/phone-target.d.mts +2 -2
- package/dist/drizzle/phone-target.mjs +1 -1
- package/dist/drizzle/query-operations.mjs +3 -1
- package/dist/drizzle/query-operations.mjs.map +1 -1
- package/dist/drizzle/session-sql.mjs +2 -1
- package/dist/drizzle/session-sql.mjs.map +1 -1
- package/dist/drizzle/sqlite-password-prepared.mjs.map +1 -1
- package/dist/drizzle/sqlite-passwords.mjs.map +1 -1
- package/dist/drizzle/storage-validation.mjs +10 -198
- package/dist/drizzle/storage-validation.mjs.map +1 -1
- package/dist/drizzle/totp-target.d.mts +3 -3
- package/dist/drizzle/totp-target.mjs +2 -2
- package/dist/drizzle/transaction-execution.d.mts +2 -2
- package/dist/drizzle/transaction-owner.d.mts +1 -2
- package/dist/index.d.mts +3 -2
- package/dist/internal/drizzle-postgres-oauth-proxy.d.mts +138 -0
- package/dist/internal/drizzle-postgres-oauth-proxy.mjs +29 -0
- package/dist/internal/drizzle-postgres-oauth-proxy.mjs.map +1 -0
- package/dist/internal/drizzle-postgres.mjs +2 -0
- package/dist/internal/drizzle-postgres.mjs.map +1 -1
- package/dist/internal/drizzle-sqlite-oauth-proxy.d.mts +146 -0
- package/dist/internal/drizzle-sqlite-oauth-proxy.mjs +29 -0
- package/dist/internal/drizzle-sqlite-oauth-proxy.mjs.map +1 -0
- package/dist/internal/drizzle-sqlite.mjs +2 -0
- package/dist/internal/drizzle-sqlite.mjs.map +1 -1
- package/package.json +1 -1
- package/src/D1.ts +2 -0
- package/src/Libsql.ts +2 -0
- package/src/Pglite.ts +2 -0
- package/src/Postgres.ts +2 -0
- package/src/SqliteBun.ts +2 -0
- package/src/SqliteDo.ts +2 -0
- package/src/SqliteNode.ts +2 -0
- package/src/SqliteWasm.ts +2 -0
- package/src/drizzle/d1-password-prepared.ts +2 -23
- package/src/drizzle/d1-passwords.ts +158 -780
- package/src/drizzle/d1-sessions.ts +21 -6
- package/src/drizzle/mysql-password-prepared.ts +4 -16
- package/src/drizzle/mysql-passwords.ts +5 -20
- package/src/drizzle/native-sql-table.ts +259 -0
- package/src/drizzle/oauth-connected-model.ts +97 -315
- package/src/drizzle/oauth-connected-reference.ts +13 -93
- package/src/drizzle/oauth-connected-target.ts +14 -271
- package/src/drizzle/oauth-kernel.ts +10 -0
- package/src/drizzle/oauth-model.ts +188 -541
- package/src/drizzle/oauth-mysql.ts +2 -2
- package/src/drizzle/oauth-proxy.ts +101 -0
- package/src/drizzle/oauth-target.ts +33 -737
- package/src/drizzle/password-model.ts +0 -33
- package/src/drizzle/password-prepared-model.ts +0 -18
- package/src/drizzle/password-sql.ts +3 -0
- package/src/drizzle/password-target.ts +41 -4
- package/src/drizzle/pg-password-prepared.ts +4 -16
- package/src/drizzle/pg-passwords.ts +5 -20
- package/src/drizzle/query-operations.ts +4 -0
- package/src/drizzle/session-sql.ts +2 -1
- package/src/drizzle/sqlite-password-prepared.ts +4 -52
- package/src/drizzle/sqlite-passwords.ts +7 -28
- package/src/drizzle/storage-validation.ts +13 -222
- package/src/index.ts +2 -8
- package/src/internal/drizzle-postgres-oauth-proxy.ts +37 -0
- package/src/internal/drizzle-postgres.ts +2 -0
- package/src/internal/drizzle-sqlite-oauth-proxy.ts +44 -0
- package/src/internal/drizzle-sqlite.ts +2 -0
- package/dist/_virtual/_rolldown/runtime.mjs +0 -13
- package/dist/drizzle/oauth-accounts.mjs +0 -359
- package/dist/drizzle/oauth-accounts.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-access.mjs +0 -212
- package/dist/drizzle/oauth-connected-access.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-collection.mjs +0 -202
- package/dist/drizzle/oauth-connected-collection.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-custody.mjs +0 -147
- package/dist/drizzle/oauth-connected-custody.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-flow.mjs +0 -297
- package/dist/drizzle/oauth-connected-flow.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-input.mjs +0 -122
- package/dist/drizzle/oauth-connected-input.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-maintenance.mjs +0 -214
- package/dist/drizzle/oauth-connected-maintenance.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-management.mjs +0 -229
- package/dist/drizzle/oauth-connected-management.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-settlement.mjs +0 -128
- package/dist/drizzle/oauth-connected-settlement.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-sign-in.mjs +0 -265
- package/dist/drizzle/oauth-connected-sign-in.mjs.map +0 -1
- package/dist/drizzle/oauth-connected-state.d.mts +0 -2062
- package/dist/drizzle/oauth-connected-state.mjs +0 -430
- package/dist/drizzle/oauth-connected-state.mjs.map +0 -1
- package/dist/drizzle/oauth-flow.d.mts +0 -22
- package/dist/drizzle/oauth-flow.mjs +0 -253
- package/dist/drizzle/oauth-flow.mjs.map +0 -1
- package/dist/drizzle/oauth-input.mjs +0 -127
- package/dist/drizzle/oauth-input.mjs.map +0 -1
- package/dist/drizzle/oauth-owner.d.mts +0 -10
- package/dist/drizzle/oauth-owner.mjs +0 -10
- package/dist/drizzle/oauth-owner.mjs.map +0 -1
- package/dist/drizzle/oauth-registration.d.mts +0 -5
- package/dist/drizzle/oauth-registration.mjs +0 -374
- package/dist/drizzle/oauth-registration.mjs.map +0 -1
- package/dist/drizzle/oauth-state.mjs +0 -107
- package/dist/drizzle/oauth-state.mjs.map +0 -1
- package/src/drizzle/oauth-accounts.ts +0 -805
- package/src/drizzle/oauth-connected-access.ts +0 -361
- package/src/drizzle/oauth-connected-collection.ts +0 -324
- package/src/drizzle/oauth-connected-custody.ts +0 -279
- package/src/drizzle/oauth-connected-flow.ts +0 -529
- package/src/drizzle/oauth-connected-input.ts +0 -147
- package/src/drizzle/oauth-connected-maintenance.ts +0 -346
- package/src/drizzle/oauth-connected-management.ts +0 -365
- package/src/drizzle/oauth-connected-settlement.ts +0 -251
- package/src/drizzle/oauth-connected-sign-in.ts +0 -443
- package/src/drizzle/oauth-connected-state.ts +0 -872
- package/src/drizzle/oauth-flow.ts +0 -462
- package/src/drizzle/oauth-input.ts +0 -201
- package/src/drizzle/oauth-owner.ts +0 -29
- package/src/drizzle/oauth-registration.ts +0 -640
- package/src/drizzle/oauth-state.ts +0 -218
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { oauthProxyLayer } from "../drizzle/oauth-proxy.mjs";
|
|
2
|
+
import { sql } from "drizzle-orm";
|
|
3
|
+
import { bigint, check, pgTable, primaryKey, text } from "drizzle-orm/pg-core";
|
|
4
|
+
//#region src/internal/drizzle-postgres-oauth-proxy.ts
|
|
5
|
+
/** Export the returned table from your Drizzle Kit schema before applying the Layer. */
|
|
6
|
+
const table = (name) => pgTable(name, {
|
|
7
|
+
namespace: text("namespace").notNull(),
|
|
8
|
+
flowId: text("flow_id").notNull(),
|
|
9
|
+
version: text("version").notNull(),
|
|
10
|
+
stage: text("stage").notNull(),
|
|
11
|
+
context: text("context").notNull(),
|
|
12
|
+
expiresAtMillis: bigint("expires_at_millis", { mode: "number" }).notNull(),
|
|
13
|
+
handoffExpiresAtMillis: bigint("handoff_expires_at_millis", { mode: "number" }),
|
|
14
|
+
payload: text("payload").notNull()
|
|
15
|
+
}, (columns) => [
|
|
16
|
+
primaryKey({ columns: [columns.namespace, columns.flowId] }),
|
|
17
|
+
check(`${name}_stage`, sql`${columns.stage} in ('Pending', 'Exchanging', 'Ready', 'Consumed')`),
|
|
18
|
+
check(`${name}_handoff`, sql`(${columns.stage} = 'Ready' and ${columns.handoffExpiresAtMillis} is not null)
|
|
19
|
+
or (${columns.stage} <> 'Ready' and ${columns.handoffExpiresAtMillis} is null)`)
|
|
20
|
+
]);
|
|
21
|
+
const layer = (table, columns) => oauthProxyLayer("pg", table, columns);
|
|
22
|
+
const OAuthProxyPersistence = {
|
|
23
|
+
table,
|
|
24
|
+
layer
|
|
25
|
+
};
|
|
26
|
+
//#endregion
|
|
27
|
+
export { OAuthProxyPersistence };
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=drizzle-postgres-oauth-proxy.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drizzle-postgres-oauth-proxy.mjs","names":[],"sources":["../../src/internal/drizzle-postgres-oauth-proxy.ts"],"sourcesContent":["import { sql } from \"drizzle-orm\";\nimport { bigint, check, pgTable, primaryKey, text, type PgTable } from \"drizzle-orm/pg-core\";\n\nimport { oauthProxyLayer, type OAuthProxyColumns } from \"../drizzle/oauth-proxy\";\n\n/** Export the returned table from your Drizzle Kit schema before applying the Layer. */\nconst table = (name: string) =>\n pgTable(\n name,\n {\n namespace: text(\"namespace\").notNull(),\n flowId: text(\"flow_id\").notNull(),\n version: text(\"version\").notNull(),\n stage: text(\"stage\").notNull(),\n context: text(\"context\").notNull(),\n expiresAtMillis: bigint(\"expires_at_millis\", { mode: \"number\" }).notNull(),\n handoffExpiresAtMillis: bigint(\"handoff_expires_at_millis\", { mode: \"number\" }),\n payload: text(\"payload\").notNull(),\n },\n (columns) => [\n primaryKey({ columns: [columns.namespace, columns.flowId] }),\n check(\n `${name}_stage`,\n sql`${columns.stage} in ('Pending', 'Exchanging', 'Ready', 'Consumed')`,\n ),\n check(\n `${name}_handoff`,\n sql`(${columns.stage} = 'Ready' and ${columns.handoffExpiresAtMillis} is not null)\n or (${columns.stage} <> 'Ready' and ${columns.handoffExpiresAtMillis} is null)`,\n ),\n ],\n );\n\nconst layer = <T extends PgTable>(table: T, columns?: OAuthProxyColumns<T>) =>\n oauthProxyLayer(\"pg\", table, columns);\n\nexport const OAuthProxyPersistence = { table, layer };\n"],"mappings":";;;;;AAMA,MAAM,SAAS,SACb,QACE,MACA;CACE,WAAW,KAAK,WAAW,CAAC,CAAC,QAAQ;CACrC,QAAQ,KAAK,SAAS,CAAC,CAAC,QAAQ;CAChC,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ;CACjC,OAAO,KAAK,OAAO,CAAC,CAAC,QAAQ;CAC7B,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ;CACjC,iBAAiB,OAAO,qBAAqB,EAAE,MAAM,SAAS,CAAC,CAAC,CAAC,QAAQ;CACzE,wBAAwB,OAAO,6BAA6B,EAAE,MAAM,SAAS,CAAC;CAC9E,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ;AACnC,IACC,YAAY;CACX,WAAW,EAAE,SAAS,CAAC,QAAQ,WAAW,QAAQ,MAAM,EAAE,CAAC;CAC3D,MACE,GAAG,KAAK,SACR,GAAG,GAAG,QAAQ,MAAM,mDACtB;CACA,MACE,GAAG,KAAK,WACR,GAAG,IAAI,QAAQ,MAAM,iBAAiB,QAAQ,uBAAuB;UACnE,QAAQ,MAAM,kBAAkB,QAAQ,uBAAuB,UACnE;AACF,CACF;AAEF,MAAM,SAA4B,OAAU,YAC1C,gBAAgB,MAAM,OAAO,OAAO;AAEtC,MAAa,wBAAwB;CAAE;CAAO;AAAM"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { makeDrizzleSqlTables } from "../drizzle/native-sql-table.mjs";
|
|
1
2
|
import { drizzleQueryOperations } from "../drizzle/query-operations.mjs";
|
|
2
3
|
import { PersistenceConfigurationError, createPersistence, makeComposedPasskeys } from "@yielded/auth-persistence/Adapter";
|
|
3
4
|
import { getTableColumns } from "drizzle-orm";
|
|
@@ -28,6 +29,7 @@ const postgresPersistence = (acquire) => createPersistence({
|
|
|
28
29
|
makeTable,
|
|
29
30
|
describe,
|
|
30
31
|
operations: drizzleQueryOperations,
|
|
32
|
+
nativeTables: makeDrizzleSqlTables,
|
|
31
33
|
acquire,
|
|
32
34
|
passkeys: makeComposedPasskeys(drizzleQueryOperations)
|
|
33
35
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle-postgres.mjs","names":[],"sources":["../../src/internal/drizzle-postgres.ts"],"sourcesContent":["import {\n PersistenceConfigurationError,\n makeComposedPasskeys,\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 { drizzleQueryOperations } from \"../drizzle/query-operations\";\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>({\n makeTable,\n describe,\n operations: drizzleQueryOperations,\n acquire,\n passkeys: makeComposedPasskeys(drizzleQueryOperations),\n });\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"drizzle-postgres.mjs","names":[],"sources":["../../src/internal/drizzle-postgres.ts"],"sourcesContent":["import {\n PersistenceConfigurationError,\n makeComposedPasskeys,\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 { makeDrizzleSqlTables } from \"../drizzle/native-sql-table\";\nimport { drizzleQueryOperations } from \"../drizzle/query-operations\";\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>({\n makeTable,\n describe,\n operations: drizzleQueryOperations,\n nativeTables: makeDrizzleSqlTables,\n acquire,\n passkeys: makeComposedPasskeys(drizzleQueryOperations),\n });\n"],"mappings":";;;;;;AAsBA,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,kBAA8B;CAC5B;CACA;CACA,YAAY;CACZ,cAAc;CACd;CACA,UAAU,qBAAqB,sBAAsB;AACvD,CAAC"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { OAuthProxyColumns } from "../drizzle/oauth-proxy.mjs";
|
|
2
|
+
import { SQLiteTable } from "drizzle-orm/sqlite-core";
|
|
3
|
+
//#region src/internal/drizzle-sqlite-oauth-proxy.d.ts
|
|
4
|
+
/** Export the returned table from your Drizzle Kit schema before applying the Layer. */
|
|
5
|
+
declare const table: (name: string) => import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
6
|
+
name: string;
|
|
7
|
+
schema: undefined;
|
|
8
|
+
columns: {
|
|
9
|
+
namespace: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
10
|
+
name: string;
|
|
11
|
+
tableName: string;
|
|
12
|
+
dataType: "string";
|
|
13
|
+
data: string;
|
|
14
|
+
driverParam: string;
|
|
15
|
+
notNull: true;
|
|
16
|
+
hasDefault: false;
|
|
17
|
+
isPrimaryKey: false;
|
|
18
|
+
isAutoincrement: false;
|
|
19
|
+
hasRuntimeDefault: false;
|
|
20
|
+
enumValues: [string, ...string[]];
|
|
21
|
+
baseColumn: never;
|
|
22
|
+
identity: undefined;
|
|
23
|
+
generated: undefined;
|
|
24
|
+
}, {}>;
|
|
25
|
+
flowId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
26
|
+
name: string;
|
|
27
|
+
tableName: string;
|
|
28
|
+
dataType: "string";
|
|
29
|
+
data: string;
|
|
30
|
+
driverParam: string;
|
|
31
|
+
notNull: true;
|
|
32
|
+
hasDefault: false;
|
|
33
|
+
isPrimaryKey: false;
|
|
34
|
+
isAutoincrement: false;
|
|
35
|
+
hasRuntimeDefault: false;
|
|
36
|
+
enumValues: [string, ...string[]];
|
|
37
|
+
baseColumn: never;
|
|
38
|
+
identity: undefined;
|
|
39
|
+
generated: undefined;
|
|
40
|
+
}, {}>;
|
|
41
|
+
version: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
42
|
+
name: string;
|
|
43
|
+
tableName: string;
|
|
44
|
+
dataType: "string";
|
|
45
|
+
data: string;
|
|
46
|
+
driverParam: string;
|
|
47
|
+
notNull: true;
|
|
48
|
+
hasDefault: false;
|
|
49
|
+
isPrimaryKey: false;
|
|
50
|
+
isAutoincrement: false;
|
|
51
|
+
hasRuntimeDefault: false;
|
|
52
|
+
enumValues: [string, ...string[]];
|
|
53
|
+
baseColumn: never;
|
|
54
|
+
identity: undefined;
|
|
55
|
+
generated: undefined;
|
|
56
|
+
}, {}>;
|
|
57
|
+
stage: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
58
|
+
name: string;
|
|
59
|
+
tableName: string;
|
|
60
|
+
dataType: "string";
|
|
61
|
+
data: string;
|
|
62
|
+
driverParam: string;
|
|
63
|
+
notNull: true;
|
|
64
|
+
hasDefault: false;
|
|
65
|
+
isPrimaryKey: false;
|
|
66
|
+
isAutoincrement: false;
|
|
67
|
+
hasRuntimeDefault: false;
|
|
68
|
+
enumValues: [string, ...string[]];
|
|
69
|
+
baseColumn: never;
|
|
70
|
+
identity: undefined;
|
|
71
|
+
generated: undefined;
|
|
72
|
+
}, {}>;
|
|
73
|
+
context: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
74
|
+
name: string;
|
|
75
|
+
tableName: string;
|
|
76
|
+
dataType: "string";
|
|
77
|
+
data: string;
|
|
78
|
+
driverParam: string;
|
|
79
|
+
notNull: true;
|
|
80
|
+
hasDefault: false;
|
|
81
|
+
isPrimaryKey: false;
|
|
82
|
+
isAutoincrement: false;
|
|
83
|
+
hasRuntimeDefault: false;
|
|
84
|
+
enumValues: [string, ...string[]];
|
|
85
|
+
baseColumn: never;
|
|
86
|
+
identity: undefined;
|
|
87
|
+
generated: undefined;
|
|
88
|
+
}, {}>;
|
|
89
|
+
expiresAtMillis: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
90
|
+
name: string;
|
|
91
|
+
tableName: string;
|
|
92
|
+
dataType: "number int53";
|
|
93
|
+
data: number;
|
|
94
|
+
driverParam: number;
|
|
95
|
+
notNull: true;
|
|
96
|
+
hasDefault: false;
|
|
97
|
+
isPrimaryKey: false;
|
|
98
|
+
isAutoincrement: false;
|
|
99
|
+
hasRuntimeDefault: false;
|
|
100
|
+
enumValues: undefined;
|
|
101
|
+
baseColumn: never;
|
|
102
|
+
identity: undefined;
|
|
103
|
+
generated: undefined;
|
|
104
|
+
}, {}>;
|
|
105
|
+
handoffExpiresAtMillis: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
106
|
+
name: string;
|
|
107
|
+
tableName: string;
|
|
108
|
+
dataType: "number int53";
|
|
109
|
+
data: number;
|
|
110
|
+
driverParam: number;
|
|
111
|
+
notNull: false;
|
|
112
|
+
hasDefault: false;
|
|
113
|
+
isPrimaryKey: false;
|
|
114
|
+
isAutoincrement: false;
|
|
115
|
+
hasRuntimeDefault: false;
|
|
116
|
+
enumValues: undefined;
|
|
117
|
+
baseColumn: never;
|
|
118
|
+
identity: undefined;
|
|
119
|
+
generated: undefined;
|
|
120
|
+
}, {}>;
|
|
121
|
+
payload: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
122
|
+
name: string;
|
|
123
|
+
tableName: string;
|
|
124
|
+
dataType: "string";
|
|
125
|
+
data: string;
|
|
126
|
+
driverParam: string;
|
|
127
|
+
notNull: true;
|
|
128
|
+
hasDefault: false;
|
|
129
|
+
isPrimaryKey: false;
|
|
130
|
+
isAutoincrement: false;
|
|
131
|
+
hasRuntimeDefault: false;
|
|
132
|
+
enumValues: [string, ...string[]];
|
|
133
|
+
baseColumn: never;
|
|
134
|
+
identity: undefined;
|
|
135
|
+
generated: undefined;
|
|
136
|
+
}, {}>;
|
|
137
|
+
};
|
|
138
|
+
dialect: 'sqlite';
|
|
139
|
+
}>;
|
|
140
|
+
declare const layer: <T extends SQLiteTable>(table: T, columns?: OAuthProxyColumns<T>) => import("effect/Layer").Layer<import("@yielded/auth/OAuthProxy").Persistence, import("@yielded/auth/OAuthProxy").ConfigurationError | import("@yielded/auth/OAuthProxy").Unavailable, import("effect/sql/SqlClient").SqlClient>;
|
|
141
|
+
export declare const OAuthProxyPersistence: {
|
|
142
|
+
table: typeof table;
|
|
143
|
+
layer: typeof layer;
|
|
144
|
+
};
|
|
145
|
+
//#endregion
|
|
146
|
+
//# sourceMappingURL=drizzle-sqlite-oauth-proxy.d.mts.map
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { oauthProxyLayer } from "../drizzle/oauth-proxy.mjs";
|
|
2
|
+
import { sql } from "drizzle-orm";
|
|
3
|
+
import { check, integer, primaryKey, sqliteTable, text } from "drizzle-orm/sqlite-core";
|
|
4
|
+
//#region src/internal/drizzle-sqlite-oauth-proxy.ts
|
|
5
|
+
/** Export the returned table from your Drizzle Kit schema before applying the Layer. */
|
|
6
|
+
const table = (name) => sqliteTable(name, {
|
|
7
|
+
namespace: text("namespace").notNull(),
|
|
8
|
+
flowId: text("flow_id").notNull(),
|
|
9
|
+
version: text("version").notNull(),
|
|
10
|
+
stage: text("stage").notNull(),
|
|
11
|
+
context: text("context").notNull(),
|
|
12
|
+
expiresAtMillis: integer("expires_at_millis").notNull(),
|
|
13
|
+
handoffExpiresAtMillis: integer("handoff_expires_at_millis"),
|
|
14
|
+
payload: text("payload").notNull()
|
|
15
|
+
}, (columns) => [
|
|
16
|
+
primaryKey({ columns: [columns.namespace, columns.flowId] }),
|
|
17
|
+
check(`${name}_stage`, sql`${columns.stage} in ('Pending', 'Exchanging', 'Ready', 'Consumed')`),
|
|
18
|
+
check(`${name}_handoff`, sql`(${columns.stage} = 'Ready' and ${columns.handoffExpiresAtMillis} is not null)
|
|
19
|
+
or (${columns.stage} <> 'Ready' and ${columns.handoffExpiresAtMillis} is null)`)
|
|
20
|
+
]);
|
|
21
|
+
const layer = (table, columns) => oauthProxyLayer("sqlite", table, columns);
|
|
22
|
+
const OAuthProxyPersistence = {
|
|
23
|
+
table,
|
|
24
|
+
layer
|
|
25
|
+
};
|
|
26
|
+
//#endregion
|
|
27
|
+
export { OAuthProxyPersistence };
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=drizzle-sqlite-oauth-proxy.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drizzle-sqlite-oauth-proxy.mjs","names":[],"sources":["../../src/internal/drizzle-sqlite-oauth-proxy.ts"],"sourcesContent":["import { sql } from \"drizzle-orm\";\nimport {\n check,\n integer,\n primaryKey,\n sqliteTable,\n text,\n type SQLiteTable,\n} from \"drizzle-orm/sqlite-core\";\n\nimport { oauthProxyLayer, type OAuthProxyColumns } from \"../drizzle/oauth-proxy\";\n\n/** Export the returned table from your Drizzle Kit schema before applying the Layer. */\nconst table = (name: string) =>\n sqliteTable(\n name,\n {\n namespace: text(\"namespace\").notNull(),\n flowId: text(\"flow_id\").notNull(),\n version: text(\"version\").notNull(),\n stage: text(\"stage\").notNull(),\n context: text(\"context\").notNull(),\n expiresAtMillis: integer(\"expires_at_millis\").notNull(),\n handoffExpiresAtMillis: integer(\"handoff_expires_at_millis\"),\n payload: text(\"payload\").notNull(),\n },\n (columns) => [\n primaryKey({ columns: [columns.namespace, columns.flowId] }),\n check(\n `${name}_stage`,\n sql`${columns.stage} in ('Pending', 'Exchanging', 'Ready', 'Consumed')`,\n ),\n check(\n `${name}_handoff`,\n sql`(${columns.stage} = 'Ready' and ${columns.handoffExpiresAtMillis} is not null)\n or (${columns.stage} <> 'Ready' and ${columns.handoffExpiresAtMillis} is null)`,\n ),\n ],\n );\n\nconst layer = <T extends SQLiteTable>(table: T, columns?: OAuthProxyColumns<T>) =>\n oauthProxyLayer(\"sqlite\", table, columns);\n\nexport const OAuthProxyPersistence = { table, layer };\n"],"mappings":";;;;;AAaA,MAAM,SAAS,SACb,YACE,MACA;CACE,WAAW,KAAK,WAAW,CAAC,CAAC,QAAQ;CACrC,QAAQ,KAAK,SAAS,CAAC,CAAC,QAAQ;CAChC,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ;CACjC,OAAO,KAAK,OAAO,CAAC,CAAC,QAAQ;CAC7B,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ;CACjC,iBAAiB,QAAQ,mBAAmB,CAAC,CAAC,QAAQ;CACtD,wBAAwB,QAAQ,2BAA2B;CAC3D,SAAS,KAAK,SAAS,CAAC,CAAC,QAAQ;AACnC,IACC,YAAY;CACX,WAAW,EAAE,SAAS,CAAC,QAAQ,WAAW,QAAQ,MAAM,EAAE,CAAC;CAC3D,MACE,GAAG,KAAK,SACR,GAAG,GAAG,QAAQ,MAAM,mDACtB;CACA,MACE,GAAG,KAAK,WACR,GAAG,IAAI,QAAQ,MAAM,iBAAiB,QAAQ,uBAAuB;UACnE,QAAQ,MAAM,kBAAkB,QAAQ,uBAAuB,UACnE;AACF,CACF;AAEF,MAAM,SAAgC,OAAU,YAC9C,gBAAgB,UAAU,OAAO,OAAO;AAE1C,MAAa,wBAAwB;CAAE;CAAO;AAAM"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { makeDrizzleSqlTables } from "../drizzle/native-sql-table.mjs";
|
|
1
2
|
import { drizzleQueryOperations } from "../drizzle/query-operations.mjs";
|
|
2
3
|
import { PersistenceConfigurationError, createPersistence, makeComposedPasskeys } from "@yielded/auth-persistence/Adapter";
|
|
3
4
|
import { getTableColumns } from "drizzle-orm";
|
|
@@ -26,6 +27,7 @@ const sqlitePersistence = (acquire) => createPersistence({
|
|
|
26
27
|
makeTable,
|
|
27
28
|
describe,
|
|
28
29
|
operations: drizzleQueryOperations,
|
|
30
|
+
nativeTables: makeDrizzleSqlTables,
|
|
29
31
|
acquire,
|
|
30
32
|
passkeys: makeComposedPasskeys(drizzleQueryOperations)
|
|
31
33
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle-sqlite.mjs","names":[],"sources":["../../src/internal/drizzle-sqlite.ts"],"sourcesContent":["import {\n PersistenceConfigurationError,\n makeComposedPasskeys,\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 { drizzleQueryOperations } from \"../drizzle/query-operations\";\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>({\n makeTable,\n describe,\n operations: drizzleQueryOperations,\n acquire,\n passkeys: makeComposedPasskeys(drizzleQueryOperations),\n });\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"drizzle-sqlite.mjs","names":[],"sources":["../../src/internal/drizzle-sqlite.ts"],"sourcesContent":["import {\n PersistenceConfigurationError,\n makeComposedPasskeys,\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 { makeDrizzleSqlTables } from \"../drizzle/native-sql-table\";\nimport { drizzleQueryOperations } from \"../drizzle/query-operations\";\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>({\n makeTable,\n describe,\n operations: drizzleQueryOperations,\n nativeTables: makeDrizzleSqlTables,\n acquire,\n passkeys: makeComposedPasskeys(drizzleQueryOperations),\n });\n"],"mappings":";;;;;;AAqBA,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,kBAAkC;CAChC;CACA;CACA,YAAY;CACZ,cAAc;CACd;CACA,UAAU,qBAAqB,sBAAsB;AACvD,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.24","dependencies":{"@yielded/auth":"0.1.0-beta.24","@yielded/auth-persistence":"0.1.0-beta.24"},"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.24","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,3 +1,5 @@
|
|
|
1
|
+
export { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy";
|
|
2
|
+
|
|
1
3
|
import type { D1Client } from "@effect/sql-d1/D1Client";
|
|
2
4
|
export { makeTotpPersistenceServices, coordinateTotpPersistence } from "./drizzle/d1-totp";
|
|
3
5
|
import type { AnyRelations } from "drizzle-orm";
|
package/src/Libsql.ts
CHANGED
|
@@ -3,6 +3,8 @@ import { EmailUnavailable } from "@yielded/auth/Email";
|
|
|
3
3
|
import { PasswordUnavailable } from "@yielded/auth/Password";
|
|
4
4
|
import { ProofUnavailable } from "@yielded/auth/Proofs";
|
|
5
5
|
import { SessionUnavailable } from "@yielded/auth/Sessions";
|
|
6
|
+
export { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy";
|
|
7
|
+
|
|
6
8
|
import type { AnyRelations } from "drizzle-orm";
|
|
7
9
|
import { type EffectLibsqlDatabase, makeWithDefaults } from "drizzle-orm/effect-libsql";
|
|
8
10
|
import type { AnySQLiteTable } from "drizzle-orm/sqlite-core";
|
package/src/Pglite.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export { OAuthProxyPersistence } from "./internal/drizzle-postgres-oauth-proxy";
|
|
2
|
+
|
|
1
3
|
import type { AnyRelations } from "drizzle-orm";
|
|
2
4
|
import { type EffectPgDatabase, makeWithDefaults } from "drizzle-orm/effect-pglite";
|
|
3
5
|
import type { AnyPgTable } from "drizzle-orm/pg-core";
|
package/src/Postgres.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export { OAuthProxyPersistence } from "./internal/drizzle-postgres-oauth-proxy";
|
|
2
|
+
|
|
1
3
|
import type { AnyRelations } from "drizzle-orm";
|
|
2
4
|
import { type EffectPgDatabase, makeWithDefaults } from "drizzle-orm/effect-postgres";
|
|
3
5
|
import type { AnyPgTable } from "drizzle-orm/pg-core";
|
package/src/SqliteBun.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { NativeDatabase } from "@yielded/auth-persistence/Adapter";
|
|
2
|
+
export { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy";
|
|
3
|
+
|
|
2
4
|
import type { AnyRelations } from "drizzle-orm";
|
|
3
5
|
import { type EffectSQLiteBunDatabase, makeWithDefaults } from "drizzle-orm/effect-sqlite-bun";
|
|
4
6
|
import type { AnySQLiteTable } from "drizzle-orm/sqlite-core";
|
package/src/SqliteDo.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy";
|
|
2
|
+
|
|
1
3
|
import { SqliteClient } from "@effect/sql-sqlite-do/SqliteClient";
|
|
2
4
|
import { NativeDatabase, PersistenceConfigurationError } from "@yielded/auth-persistence/Adapter";
|
|
3
5
|
import type { AnyRelations } from "drizzle-orm";
|
package/src/SqliteNode.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { NativeDatabase } from "@yielded/auth-persistence/Adapter";
|
|
2
|
+
export { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy";
|
|
3
|
+
|
|
2
4
|
import type { AnyRelations } from "drizzle-orm";
|
|
3
5
|
import { type EffectSQLiteNodeDatabase, makeWithDefaults } from "drizzle-orm/effect-sqlite-node";
|
|
4
6
|
import type { AnySQLiteTable } from "drizzle-orm/sqlite-core";
|
package/src/SqliteWasm.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { NativeDatabase } from "@yielded/auth-persistence/Adapter";
|
|
2
|
+
export { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy";
|
|
3
|
+
|
|
2
4
|
import type { AnyRelations } from "drizzle-orm";
|
|
3
5
|
import { type EffectSQLiteWasmDatabase, makeWithDefaults } from "drizzle-orm/effect-sqlite-wasm";
|
|
4
6
|
import type { AnySQLiteTable } from "drizzle-orm/sqlite-core";
|
|
@@ -76,9 +76,6 @@ type Mapping = D1PasswordPreparedPersistenceMapping<
|
|
|
76
76
|
Table,
|
|
77
77
|
Table,
|
|
78
78
|
Table,
|
|
79
|
-
Table,
|
|
80
|
-
Table,
|
|
81
|
-
Table,
|
|
82
79
|
unknown
|
|
83
80
|
>;
|
|
84
81
|
interface Planned<A> {
|
|
@@ -979,9 +976,6 @@ export const makeD1PasswordPreparedPersistenceServices = Effect.fnUntraced(funct
|
|
|
979
976
|
I extends AnySQLiteTable,
|
|
980
977
|
C extends AnySQLiteTable,
|
|
981
978
|
AC extends AnySQLiteTable,
|
|
982
|
-
At extends AnySQLiteTable,
|
|
983
|
-
RS extends AnySQLiteTable,
|
|
984
|
-
CE extends AnySQLiteTable,
|
|
985
979
|
M extends AnySQLiteTable,
|
|
986
980
|
T extends AnySQLiteTable,
|
|
987
981
|
B extends AnySQLiteTable,
|
|
@@ -994,7 +988,7 @@ export const makeD1PasswordPreparedPersistenceServices = Effect.fnUntraced(funct
|
|
|
994
988
|
PCr extends AnySQLiteTable = AnySQLiteTable,
|
|
995
989
|
PNativeId = unknown,
|
|
996
990
|
>(
|
|
997
|
-
mapping: D1PasswordPreparedPersistenceMapping<S, I, C, AC,
|
|
991
|
+
mapping: D1PasswordPreparedPersistenceMapping<S, I, C, AC, M, T, B, NativeId>,
|
|
998
992
|
proofMapping?: D1PasswordPreparedProofMapping<PS, PC, PM, PSub, PI, PCr, PNativeId>,
|
|
999
993
|
) {
|
|
1000
994
|
const database = yield* DatabaseService;
|
|
@@ -1047,9 +1041,6 @@ export function coordinateD1PasswordPreparedPersistence<
|
|
|
1047
1041
|
I extends AnySQLiteTable,
|
|
1048
1042
|
C extends AnySQLiteTable,
|
|
1049
1043
|
AC extends AnySQLiteTable,
|
|
1050
|
-
At extends AnySQLiteTable,
|
|
1051
|
-
RS extends AnySQLiteTable,
|
|
1052
|
-
CE extends AnySQLiteTable,
|
|
1053
1044
|
M extends AnySQLiteTable,
|
|
1054
1045
|
T extends AnySQLiteTable,
|
|
1055
1046
|
B extends AnySQLiteTable,
|
|
@@ -1069,19 +1060,7 @@ export function coordinateD1PasswordPreparedPersistence<
|
|
|
1069
1060
|
>(
|
|
1070
1061
|
acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>,
|
|
1071
1062
|
options: {
|
|
1072
|
-
readonly mapping: D1PasswordPreparedPersistenceMapping<
|
|
1073
|
-
S,
|
|
1074
|
-
I,
|
|
1075
|
-
C,
|
|
1076
|
-
AC,
|
|
1077
|
-
At,
|
|
1078
|
-
RS,
|
|
1079
|
-
CE,
|
|
1080
|
-
M,
|
|
1081
|
-
T,
|
|
1082
|
-
B,
|
|
1083
|
-
NativeId
|
|
1084
|
-
>;
|
|
1063
|
+
readonly mapping: D1PasswordPreparedPersistenceMapping<S, I, C, AC, M, T, B, NativeId>;
|
|
1085
1064
|
readonly proofMapping?:
|
|
1086
1065
|
| D1PasswordPreparedProofMapping<PS, PC, PM, PSub, PI, PCr, PNativeId>
|
|
1087
1066
|
| undefined;
|