@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.
Files changed (200) hide show
  1. package/README.md +3 -0
  2. package/dist/D1.d.mts +11 -11
  3. package/dist/D1.mjs +2 -1
  4. package/dist/D1.mjs.map +1 -1
  5. package/dist/Libsql.d.mts +40 -56
  6. package/dist/Libsql.mjs +2 -1
  7. package/dist/Libsql.mjs.map +1 -1
  8. package/dist/Mysql2.d.mts +16 -17
  9. package/dist/Pglite.d.mts +18 -18
  10. package/dist/Pglite.mjs +2 -1
  11. package/dist/Pglite.mjs.map +1 -1
  12. package/dist/Postgres.d.mts +24 -24
  13. package/dist/Postgres.mjs +2 -1
  14. package/dist/Postgres.mjs.map +1 -1
  15. package/dist/SqliteBun.d.mts +39 -55
  16. package/dist/SqliteBun.mjs +2 -1
  17. package/dist/SqliteBun.mjs.map +1 -1
  18. package/dist/SqliteDo.d.mts +48 -64
  19. package/dist/SqliteDo.mjs +2 -1
  20. package/dist/SqliteDo.mjs.map +1 -1
  21. package/dist/SqliteNode.d.mts +45 -61
  22. package/dist/SqliteNode.mjs +2 -1
  23. package/dist/SqliteNode.mjs.map +1 -1
  24. package/dist/SqliteWasm.d.mts +48 -64
  25. package/dist/SqliteWasm.mjs +2 -1
  26. package/dist/SqliteWasm.mjs.map +1 -1
  27. package/dist/drizzle/crypto.mjs +1 -1
  28. package/dist/drizzle/d1-emails.d.mts +1 -1
  29. package/dist/drizzle/d1-oauth.d.mts +14 -14
  30. package/dist/drizzle/d1-passkey.d.mts +1 -1
  31. package/dist/drizzle/d1-password-prepared.d.mts +4 -4
  32. package/dist/drizzle/d1-password-prepared.mjs.map +1 -1
  33. package/dist/drizzle/d1-passwords.d.mts +18 -35
  34. package/dist/drizzle/d1-passwords.mjs +78 -290
  35. package/dist/drizzle/d1-passwords.mjs.map +1 -1
  36. package/dist/drizzle/d1-phone.d.mts +1 -1
  37. package/dist/drizzle/d1-proofs.d.mts +2 -2
  38. package/dist/drizzle/d1-sessions.d.mts +3 -3
  39. package/dist/drizzle/d1-sessions.mjs +11 -6
  40. package/dist/drizzle/d1-sessions.mjs.map +1 -1
  41. package/dist/drizzle/d1-totp.d.mts +1 -1
  42. package/dist/drizzle/mysql-password-prepared.d.mts +5 -5
  43. package/dist/drizzle/mysql-password-prepared.mjs.map +1 -1
  44. package/dist/drizzle/mysql-passwords.d.mts +16 -32
  45. package/dist/drizzle/mysql-passwords.mjs.map +1 -1
  46. package/dist/drizzle/mysql-sessions.d.mts +1 -1
  47. package/dist/drizzle/native-sql-table.mjs +135 -0
  48. package/dist/drizzle/native-sql-table.mjs.map +1 -0
  49. package/dist/drizzle/oauth-connected-model.d.mts +20 -281
  50. package/dist/drizzle/oauth-connected-model.mjs +3 -17
  51. package/dist/drizzle/oauth-connected-model.mjs.map +1 -1
  52. package/dist/drizzle/oauth-connected-reference.d.mts +1 -3
  53. package/dist/drizzle/oauth-connected-reference.mjs +4 -53
  54. package/dist/drizzle/oauth-connected-reference.mjs.map +1 -1
  55. package/dist/drizzle/oauth-connected-target.d.mts +3 -990
  56. package/dist/drizzle/oauth-connected-target.mjs +8 -92
  57. package/dist/drizzle/oauth-connected-target.mjs.map +1 -1
  58. package/dist/drizzle/oauth-kernel.mjs +11 -0
  59. package/dist/drizzle/oauth-kernel.mjs.map +1 -0
  60. package/dist/drizzle/oauth-model.d.mts +35 -438
  61. package/dist/drizzle/oauth-model.mjs +6 -44
  62. package/dist/drizzle/oauth-model.mjs.map +1 -1
  63. package/dist/drizzle/oauth-mysql.mjs +2 -2
  64. package/dist/drizzle/oauth-mysql.mjs.map +1 -1
  65. package/dist/drizzle/oauth-proxy.d.mts +10 -0
  66. package/dist/drizzle/oauth-proxy.mjs +54 -0
  67. package/dist/drizzle/oauth-proxy.mjs.map +1 -0
  68. package/dist/drizzle/oauth-target.d.mts +6 -107
  69. package/dist/drizzle/oauth-target.mjs +15 -245
  70. package/dist/drizzle/oauth-target.mjs.map +1 -1
  71. package/dist/drizzle/password-model.d.mts +5 -8
  72. package/dist/drizzle/password-prepared-model.d.mts +5 -5
  73. package/dist/drizzle/password-prepared-model.mjs.map +1 -1
  74. package/dist/drizzle/password-prepared-state.mjs +1 -1
  75. package/dist/drizzle/password-sql.mjs +2 -1
  76. package/dist/drizzle/password-sql.mjs.map +1 -1
  77. package/dist/drizzle/password-target.mjs +13 -2
  78. package/dist/drizzle/password-target.mjs.map +1 -1
  79. package/dist/drizzle/pg-password-prepared.d.mts +5 -5
  80. package/dist/drizzle/pg-password-prepared.mjs.map +1 -1
  81. package/dist/drizzle/pg-passwords.d.mts +16 -32
  82. package/dist/drizzle/pg-passwords.mjs.map +1 -1
  83. package/dist/drizzle/pg-sessions.d.mts +1 -1
  84. package/dist/drizzle/phone-target.d.mts +2 -2
  85. package/dist/drizzle/phone-target.mjs +1 -1
  86. package/dist/drizzle/query-operations.mjs +3 -1
  87. package/dist/drizzle/query-operations.mjs.map +1 -1
  88. package/dist/drizzle/session-sql.mjs +2 -1
  89. package/dist/drizzle/session-sql.mjs.map +1 -1
  90. package/dist/drizzle/sqlite-password-prepared.mjs.map +1 -1
  91. package/dist/drizzle/sqlite-passwords.mjs.map +1 -1
  92. package/dist/drizzle/storage-validation.mjs +10 -198
  93. package/dist/drizzle/storage-validation.mjs.map +1 -1
  94. package/dist/drizzle/totp-target.d.mts +3 -3
  95. package/dist/drizzle/totp-target.mjs +2 -2
  96. package/dist/drizzle/transaction-execution.d.mts +2 -2
  97. package/dist/drizzle/transaction-owner.d.mts +1 -2
  98. package/dist/index.d.mts +3 -2
  99. package/dist/internal/drizzle-postgres-oauth-proxy.d.mts +138 -0
  100. package/dist/internal/drizzle-postgres-oauth-proxy.mjs +29 -0
  101. package/dist/internal/drizzle-postgres-oauth-proxy.mjs.map +1 -0
  102. package/dist/internal/drizzle-postgres.mjs +2 -0
  103. package/dist/internal/drizzle-postgres.mjs.map +1 -1
  104. package/dist/internal/drizzle-sqlite-oauth-proxy.d.mts +146 -0
  105. package/dist/internal/drizzle-sqlite-oauth-proxy.mjs +29 -0
  106. package/dist/internal/drizzle-sqlite-oauth-proxy.mjs.map +1 -0
  107. package/dist/internal/drizzle-sqlite.mjs +2 -0
  108. package/dist/internal/drizzle-sqlite.mjs.map +1 -1
  109. package/package.json +1 -1
  110. package/src/D1.ts +2 -0
  111. package/src/Libsql.ts +2 -0
  112. package/src/Pglite.ts +2 -0
  113. package/src/Postgres.ts +2 -0
  114. package/src/SqliteBun.ts +2 -0
  115. package/src/SqliteDo.ts +2 -0
  116. package/src/SqliteNode.ts +2 -0
  117. package/src/SqliteWasm.ts +2 -0
  118. package/src/drizzle/d1-password-prepared.ts +2 -23
  119. package/src/drizzle/d1-passwords.ts +158 -780
  120. package/src/drizzle/d1-sessions.ts +21 -6
  121. package/src/drizzle/mysql-password-prepared.ts +4 -16
  122. package/src/drizzle/mysql-passwords.ts +5 -20
  123. package/src/drizzle/native-sql-table.ts +259 -0
  124. package/src/drizzle/oauth-connected-model.ts +97 -315
  125. package/src/drizzle/oauth-connected-reference.ts +13 -93
  126. package/src/drizzle/oauth-connected-target.ts +14 -271
  127. package/src/drizzle/oauth-kernel.ts +10 -0
  128. package/src/drizzle/oauth-model.ts +188 -541
  129. package/src/drizzle/oauth-mysql.ts +2 -2
  130. package/src/drizzle/oauth-proxy.ts +101 -0
  131. package/src/drizzle/oauth-target.ts +33 -737
  132. package/src/drizzle/password-model.ts +0 -33
  133. package/src/drizzle/password-prepared-model.ts +0 -18
  134. package/src/drizzle/password-sql.ts +3 -0
  135. package/src/drizzle/password-target.ts +41 -4
  136. package/src/drizzle/pg-password-prepared.ts +4 -16
  137. package/src/drizzle/pg-passwords.ts +5 -20
  138. package/src/drizzle/query-operations.ts +4 -0
  139. package/src/drizzle/session-sql.ts +2 -1
  140. package/src/drizzle/sqlite-password-prepared.ts +4 -52
  141. package/src/drizzle/sqlite-passwords.ts +7 -28
  142. package/src/drizzle/storage-validation.ts +13 -222
  143. package/src/index.ts +2 -8
  144. package/src/internal/drizzle-postgres-oauth-proxy.ts +37 -0
  145. package/src/internal/drizzle-postgres.ts +2 -0
  146. package/src/internal/drizzle-sqlite-oauth-proxy.ts +44 -0
  147. package/src/internal/drizzle-sqlite.ts +2 -0
  148. package/dist/_virtual/_rolldown/runtime.mjs +0 -13
  149. package/dist/drizzle/oauth-accounts.mjs +0 -359
  150. package/dist/drizzle/oauth-accounts.mjs.map +0 -1
  151. package/dist/drizzle/oauth-connected-access.mjs +0 -212
  152. package/dist/drizzle/oauth-connected-access.mjs.map +0 -1
  153. package/dist/drizzle/oauth-connected-collection.mjs +0 -202
  154. package/dist/drizzle/oauth-connected-collection.mjs.map +0 -1
  155. package/dist/drizzle/oauth-connected-custody.mjs +0 -147
  156. package/dist/drizzle/oauth-connected-custody.mjs.map +0 -1
  157. package/dist/drizzle/oauth-connected-flow.mjs +0 -297
  158. package/dist/drizzle/oauth-connected-flow.mjs.map +0 -1
  159. package/dist/drizzle/oauth-connected-input.mjs +0 -122
  160. package/dist/drizzle/oauth-connected-input.mjs.map +0 -1
  161. package/dist/drizzle/oauth-connected-maintenance.mjs +0 -214
  162. package/dist/drizzle/oauth-connected-maintenance.mjs.map +0 -1
  163. package/dist/drizzle/oauth-connected-management.mjs +0 -229
  164. package/dist/drizzle/oauth-connected-management.mjs.map +0 -1
  165. package/dist/drizzle/oauth-connected-settlement.mjs +0 -128
  166. package/dist/drizzle/oauth-connected-settlement.mjs.map +0 -1
  167. package/dist/drizzle/oauth-connected-sign-in.mjs +0 -265
  168. package/dist/drizzle/oauth-connected-sign-in.mjs.map +0 -1
  169. package/dist/drizzle/oauth-connected-state.d.mts +0 -2062
  170. package/dist/drizzle/oauth-connected-state.mjs +0 -430
  171. package/dist/drizzle/oauth-connected-state.mjs.map +0 -1
  172. package/dist/drizzle/oauth-flow.d.mts +0 -22
  173. package/dist/drizzle/oauth-flow.mjs +0 -253
  174. package/dist/drizzle/oauth-flow.mjs.map +0 -1
  175. package/dist/drizzle/oauth-input.mjs +0 -127
  176. package/dist/drizzle/oauth-input.mjs.map +0 -1
  177. package/dist/drizzle/oauth-owner.d.mts +0 -10
  178. package/dist/drizzle/oauth-owner.mjs +0 -10
  179. package/dist/drizzle/oauth-owner.mjs.map +0 -1
  180. package/dist/drizzle/oauth-registration.d.mts +0 -5
  181. package/dist/drizzle/oauth-registration.mjs +0 -374
  182. package/dist/drizzle/oauth-registration.mjs.map +0 -1
  183. package/dist/drizzle/oauth-state.mjs +0 -107
  184. package/dist/drizzle/oauth-state.mjs.map +0 -1
  185. package/src/drizzle/oauth-accounts.ts +0 -805
  186. package/src/drizzle/oauth-connected-access.ts +0 -361
  187. package/src/drizzle/oauth-connected-collection.ts +0 -324
  188. package/src/drizzle/oauth-connected-custody.ts +0 -279
  189. package/src/drizzle/oauth-connected-flow.ts +0 -529
  190. package/src/drizzle/oauth-connected-input.ts +0 -147
  191. package/src/drizzle/oauth-connected-maintenance.ts +0 -346
  192. package/src/drizzle/oauth-connected-management.ts +0 -365
  193. package/src/drizzle/oauth-connected-settlement.ts +0 -251
  194. package/src/drizzle/oauth-connected-sign-in.ts +0 -443
  195. package/src/drizzle/oauth-connected-state.ts +0 -872
  196. package/src/drizzle/oauth-flow.ts +0 -462
  197. package/src/drizzle/oauth-input.ts +0 -201
  198. package/src/drizzle/oauth-owner.ts +0 -29
  199. package/src/drizzle/oauth-registration.ts +0 -640
  200. 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":";;;;;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,kBAA8B;CAC5B;CACA;CACA,YAAY;CACZ;CACA,UAAU,qBAAqB,sBAAsB;AACvD,CAAC"}
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":";;;;;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,kBAAkC;CAChC;CACA;CACA,YAAY;CACZ;CACA,UAAU,qBAAqB,sBAAsB;AACvD,CAAC"}
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.22","dependencies":{"@yielded/auth":"0.1.0-beta.22","@yielded/auth-persistence":"0.1.0-beta.22"},"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.22","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}}}
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, At, RS, CE, M, T, B, NativeId>,
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;