@hot-updater/server 0.30.12 → 0.31.1
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/dist/_virtual/_rolldown/runtime.cjs +25 -0
- package/dist/_virtual/_rolldown/runtime.mjs +6 -0
- package/dist/adapters/drizzle.cjs +6 -9
- package/dist/adapters/drizzle.d.cts +8 -1
- package/dist/adapters/drizzle.d.mts +8 -1
- package/dist/adapters/drizzle.mjs +5 -2
- package/dist/adapters/kysely.cjs +7 -9
- package/dist/adapters/kysely.d.cts +14 -1
- package/dist/adapters/kysely.d.mts +14 -1
- package/dist/adapters/kysely.mjs +6 -2
- package/dist/adapters/mongodb.cjs +7 -9
- package/dist/adapters/mongodb.d.cts +9 -1
- package/dist/adapters/mongodb.d.mts +9 -1
- package/dist/adapters/mongodb.mjs +5 -2
- package/dist/adapters/prisma.cjs +6 -9
- package/dist/adapters/prisma.d.cts +8 -1
- package/dist/adapters/prisma.d.mts +8 -1
- package/dist/adapters/prisma.mjs +5 -2
- package/dist/db/createBundleDiff.cjs +166 -0
- package/dist/db/createBundleDiff.d.cts +20 -0
- package/dist/db/createBundleDiff.d.mts +20 -0
- package/dist/db/createBundleDiff.mjs +161 -0
- package/dist/db/index.cjs +15 -16
- package/dist/db/index.d.cts +5 -4
- package/dist/db/index.d.mts +5 -4
- package/dist/db/index.mjs +14 -16
- package/dist/db/ormCore.cjs +173 -65
- package/dist/db/ormCore.d.cts +100 -34
- package/dist/db/ormCore.d.mts +100 -34
- package/dist/db/ormCore.mjs +171 -64
- package/dist/db/pluginCore.cjs +37 -3
- package/dist/db/pluginCore.mjs +36 -3
- package/dist/db/schemaEnhancements.cjs +171 -0
- package/dist/db/schemaEnhancements.mjs +167 -0
- package/dist/db/types.cjs +6 -0
- package/dist/db/types.d.cts +19 -7
- package/dist/db/types.d.mts +22 -10
- package/dist/db/types.mjs +6 -1
- package/dist/db/updateArtifacts.cjs +127 -0
- package/dist/db/updateArtifacts.mjs +125 -0
- package/dist/handler.cjs +61 -5
- package/dist/handler.d.cts +2 -2
- package/dist/handler.d.mts +5 -5
- package/dist/handler.mjs +59 -5
- package/dist/index.cjs +2 -0
- package/dist/index.d.cts +3 -2
- package/dist/index.d.mts +3 -2
- package/dist/index.mjs +2 -1
- package/dist/node.d.cts +0 -1
- package/dist/node.d.mts +0 -1
- package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/_u64.cjs +112 -0
- package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/_u64.mjs +108 -0
- package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/cryptoNode.cjs +22 -0
- package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/cryptoNode.mjs +18 -0
- package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/sha3.cjs +219 -0
- package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/sha3.mjs +214 -0
- package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/utils.cjs +275 -0
- package/dist/node_modules/.pnpm/@noble_hashes@1.8.0/node_modules/@noble/hashes/utils.mjs +270 -0
- package/dist/node_modules/.pnpm/@paralleldrive_cuid2@2.3.1/node_modules/@paralleldrive/cuid2/index.cjs +17 -0
- package/dist/node_modules/.pnpm/@paralleldrive_cuid2@2.3.1/node_modules/@paralleldrive/cuid2/index.mjs +13 -0
- package/dist/node_modules/.pnpm/@paralleldrive_cuid2@2.3.1/node_modules/@paralleldrive/cuid2/src/index.cjs +69 -0
- package/dist/node_modules/.pnpm/@paralleldrive_cuid2@2.3.1/node_modules/@paralleldrive/cuid2/src/index.mjs +65 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/column.cjs +52 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/column.mjs +52 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/entity.cjs +16 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/entity.mjs +15 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/pg-core/columns/enum.cjs +7 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/pg-core/columns/enum.mjs +7 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/sql/expressions/conditions.cjs +92 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/sql/expressions/conditions.mjs +78 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/sql/expressions/select.cjs +11 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/sql/expressions/select.mjs +10 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/sql/sql.cjs +383 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/sql/sql.mjs +366 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/subquery.cjs +17 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/subquery.mjs +17 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/table.cjs +60 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/table.mjs +59 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/table.utils.cjs +4 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/table.utils.mjs +4 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/tracing.cjs +6 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/tracing.mjs +6 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/view-common.cjs +4 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pglite@0.2.17_@_31f44b782f9321d71f3ce9d35aa1edf7/node_modules/drizzle-orm/view-common.mjs +4 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/drizzle/index.cjs +383 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/drizzle/index.d.cts +12 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/drizzle/index.d.mts +12 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/drizzle/index.mjs +383 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/kysely/index.cjs +4 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/kysely/index.mjs +5 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/prisma/index.cjs +339 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/prisma/index.d.cts +70 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/prisma/index.d.mts +70 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/adapters/prisma/index.mjs +339 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-7PZK4ONR.cjs +57 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-7PZK4ONR.mjs +56 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-C6OTUURW.cjs +330 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-C6OTUURW.mjs +326 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-CHTIKPQU.cjs +166 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-CHTIKPQU.mjs +163 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-GUE4GMNC.cjs +14 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-GUE4GMNC.mjs +13 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-LHHP6UVP.cjs +24 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-LHHP6UVP.mjs +24 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-LVCPMTAT.cjs +1190 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-LVCPMTAT.mjs +1189 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-PK2W2SQ7.cjs +197 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-PK2W2SQ7.mjs +197 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-ZEQMAIFI.cjs +410 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-ZEQMAIFI.mjs +400 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-ZOCGSAWS.cjs +213 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/chunk-ZOCGSAWS.mjs +212 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/create-tg0451Y_.d.cts +285 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/create-tg0451Y_.d.mts +285 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index-CMqePMTF.d.cts +45 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index-CMqePMTF.d.mts +45 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index.cjs +69 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index.d.cts +49 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index.d.mts +49 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index.mjs +67 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/query/index.d.cts +156 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/query/index.d.mts +156 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/schema/index.cjs +1 -0
- package/dist/node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare_workers-types@4.20260313.1_@electric-sql_pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/schema/index.mjs +2 -0
- package/dist/{package.cjs → packages/server/package.cjs} +1 -1
- package/dist/{package.mjs → packages/server/package.mjs} +1 -1
- package/dist/runtime.cjs +13 -13
- package/dist/runtime.d.cts +4 -4
- package/dist/runtime.d.mts +4 -4
- package/dist/runtime.mjs +12 -13
- package/dist/schema/v0_21_0.cjs +16 -15
- package/dist/schema/v0_21_0.mjs +3 -2
- package/dist/schema/v0_29_0.cjs +18 -17
- package/dist/schema/v0_29_0.mjs +3 -2
- package/dist/schema/v0_31_0.cjs +48 -0
- package/dist/schema/v0_31_0.mjs +48 -0
- package/dist/storageAccess.cjs +44 -0
- package/dist/storageAccess.mjs +44 -0
- package/dist/version.cjs +1 -1
- package/dist/version.mjs +1 -1
- package/package.json +15 -7
- package/src/adapters/drizzle.ts +15 -1
- package/src/adapters/kysely.ts +24 -1
- package/src/adapters/mongodb.ts +19 -1
- package/src/adapters/prisma.ts +15 -1
- package/src/db/createBundleDiff.spec.ts +402 -0
- package/src/db/createBundleDiff.ts +375 -0
- package/src/db/index.spec.ts +528 -27
- package/src/db/index.ts +22 -36
- package/src/db/ormCore.ts +308 -75
- package/src/db/pluginCore.spec.ts +385 -0
- package/src/db/pluginCore.ts +45 -4
- package/src/db/schemaEnhancements.ts +460 -0
- package/src/db/types.ts +38 -7
- package/src/db/updateArtifacts.ts +388 -0
- package/src/handler-standalone.integration.spec.ts +1 -0
- package/src/handler.spec.ts +121 -0
- package/src/handler.ts +117 -5
- package/src/runtime.spec.ts +287 -55
- package/src/runtime.ts +21 -37
- package/src/schema/v0_21_0.ts +1 -1
- package/src/schema/v0_29_0.ts +1 -1
- package/src/schema/v0_31_0.ts +58 -0
- package/src/storageAccess.spec.ts +57 -0
- package/src/storageAccess.ts +90 -0
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
//#region ../../node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare+workers-types@4.20260313.1_@electric-sql+pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/create-tg0451Y_.d.ts
|
|
2
|
+
type AnySchema = Schema<string, Record<string, AnyTable>>;
|
|
3
|
+
type AnyRelation = Relation;
|
|
4
|
+
type AnyTable = Table;
|
|
5
|
+
type AnyColumn = Column<keyof TypeMap, unknown, unknown> | IdColumn<IdColumnType, unknown, unknown>;
|
|
6
|
+
type ForeignKeyAction = "RESTRICT" | "CASCADE" | "SET NULL";
|
|
7
|
+
interface NameVariants {
|
|
8
|
+
sql: string;
|
|
9
|
+
drizzle: string;
|
|
10
|
+
prisma: string;
|
|
11
|
+
convex: string;
|
|
12
|
+
mongodb: string;
|
|
13
|
+
}
|
|
14
|
+
interface ForeignKey {
|
|
15
|
+
name: string;
|
|
16
|
+
table: AnyTable;
|
|
17
|
+
columns: AnyColumn[];
|
|
18
|
+
referencedTable: AnyTable;
|
|
19
|
+
referencedColumns: AnyColumn[];
|
|
20
|
+
onUpdate: ForeignKeyAction;
|
|
21
|
+
onDelete: ForeignKeyAction;
|
|
22
|
+
}
|
|
23
|
+
interface UniqueConstraint {
|
|
24
|
+
name: string;
|
|
25
|
+
columns: AnyColumn[];
|
|
26
|
+
}
|
|
27
|
+
interface BaseRelation<Type extends RelationType = RelationType, T extends AnyTable = AnyTable> {
|
|
28
|
+
/**
|
|
29
|
+
* The relation id shared between implied/implying relation
|
|
30
|
+
*/
|
|
31
|
+
id: string;
|
|
32
|
+
name: string;
|
|
33
|
+
type: Type;
|
|
34
|
+
table: T;
|
|
35
|
+
referencer: AnyTable;
|
|
36
|
+
on: [string, string][];
|
|
37
|
+
}
|
|
38
|
+
interface ImplicitRelation<Type extends RelationType = RelationType, T extends AnyTable = AnyTable> extends BaseRelation<Type, T> {
|
|
39
|
+
implied: true;
|
|
40
|
+
readonly impliedBy: ExplicitRelation;
|
|
41
|
+
}
|
|
42
|
+
interface ExplicitRelation<Type extends RelationType = RelationType, T extends AnyTable = AnyTable> extends BaseRelation<Type, T> {
|
|
43
|
+
implied: false;
|
|
44
|
+
implying: ImplicitRelation | undefined;
|
|
45
|
+
foreignKey?: ForeignKey;
|
|
46
|
+
}
|
|
47
|
+
type Relation<Type extends RelationType = RelationType, T extends AnyTable = AnyTable> = ImplicitRelation<Type, T> | ExplicitRelation<Type, T>;
|
|
48
|
+
interface Table<Columns extends Record<string, AnyColumn> = Record<string, AnyColumn>, Relations extends Record<string, AnyRelation> = Record<string, AnyRelation>> {
|
|
49
|
+
names: NameVariants;
|
|
50
|
+
ormName: string;
|
|
51
|
+
columns: Columns;
|
|
52
|
+
relations: Relations;
|
|
53
|
+
foreignKeys: ForeignKey[];
|
|
54
|
+
/**
|
|
55
|
+
* @param level default to 'all'
|
|
56
|
+
*/
|
|
57
|
+
getUniqueConstraints: (level?: "table" | "column" | "all") => UniqueConstraint[];
|
|
58
|
+
/**
|
|
59
|
+
* @param name - name
|
|
60
|
+
* @param type - default to "sql"
|
|
61
|
+
*/
|
|
62
|
+
getColumnByName: (name: string, type?: keyof NameVariants) => AnyColumn | undefined;
|
|
63
|
+
getIdColumn: () => AnyColumn;
|
|
64
|
+
/**
|
|
65
|
+
* Add unique constraint to the fields, for consistency, duplicated null values are allowed.
|
|
66
|
+
*/
|
|
67
|
+
unique: (name: string, columns: (keyof Columns)[]) => Table<Columns, Relations>;
|
|
68
|
+
clone: () => Table<Columns, Relations>;
|
|
69
|
+
}
|
|
70
|
+
type DefaultFunctionMap = {
|
|
71
|
+
date: "now";
|
|
72
|
+
timestamp: "now";
|
|
73
|
+
string: "auto";
|
|
74
|
+
} & Record<`varchar(${number})`, "auto">;
|
|
75
|
+
type DefaultFunction<Type extends keyof TypeMap> = (Type extends keyof DefaultFunctionMap ? DefaultFunctionMap[Type] : never) | (() => TypeMap[Type]);
|
|
76
|
+
type IdColumnType = `varchar(${number})` | "uuid";
|
|
77
|
+
type TypeMap = {
|
|
78
|
+
string: string;
|
|
79
|
+
bigint: bigint;
|
|
80
|
+
integer: number;
|
|
81
|
+
decimal: number;
|
|
82
|
+
bool: boolean;
|
|
83
|
+
json: unknown;
|
|
84
|
+
/**
|
|
85
|
+
* this follows the same specs as Prisma `Bytes` for consistency.
|
|
86
|
+
*/
|
|
87
|
+
binary: Uint8Array;
|
|
88
|
+
date: Date;
|
|
89
|
+
timestamp: Date;
|
|
90
|
+
uuid: string;
|
|
91
|
+
} & Record<`varchar(${number})`, string>;
|
|
92
|
+
declare class Column<Type extends keyof TypeMap, In = unknown, Out = unknown> {
|
|
93
|
+
type: Type;
|
|
94
|
+
ormName: string;
|
|
95
|
+
isNullable: boolean;
|
|
96
|
+
isUnique: boolean;
|
|
97
|
+
default?: {
|
|
98
|
+
value: TypeMap[Type];
|
|
99
|
+
} | {
|
|
100
|
+
runtime: DefaultFunction<Type>;
|
|
101
|
+
};
|
|
102
|
+
table: AnyTable;
|
|
103
|
+
private initNames;
|
|
104
|
+
get names(): NameVariants;
|
|
105
|
+
set names(v: NameVariants);
|
|
106
|
+
constructor(type: Type, onInitNames: (ormName: string) => NameVariants);
|
|
107
|
+
nullable<T extends boolean = true>(nullable?: T): Column<Type, T extends true ? In | null : Exclude<In, null>, T extends true ? Out | null : Exclude<Out, null>>;
|
|
108
|
+
/**
|
|
109
|
+
* Add unique constraint to the field, for consistency, duplicated null values are allowed.
|
|
110
|
+
*/
|
|
111
|
+
unique(unique?: boolean): this;
|
|
112
|
+
/**
|
|
113
|
+
* Generate default value on runtime
|
|
114
|
+
*/
|
|
115
|
+
defaultTo$(fn: DefaultFunction<Type>): Column<Type, In | null, Out>;
|
|
116
|
+
/**
|
|
117
|
+
* Set a database-level default value
|
|
118
|
+
*
|
|
119
|
+
* For schemaless database, it's still generated on runtime
|
|
120
|
+
*/
|
|
121
|
+
defaultTo(value: TypeMap[Type]): Column<Type, In | null, Out>;
|
|
122
|
+
clone(): Column<Type, unknown, unknown>;
|
|
123
|
+
getUniqueConstraintName(): string;
|
|
124
|
+
/**
|
|
125
|
+
* Generate default value for the column on runtime.
|
|
126
|
+
*/
|
|
127
|
+
generateDefaultValue(): TypeMap[Type] | undefined;
|
|
128
|
+
get $in(): In;
|
|
129
|
+
get $out(): Out;
|
|
130
|
+
}
|
|
131
|
+
declare class IdColumn<Type extends IdColumnType = IdColumnType, In = unknown, Out = unknown> extends Column<Type, In, Out> {
|
|
132
|
+
id: boolean;
|
|
133
|
+
constructor(type: Type, onInitNames: (ormName: string) => NameVariants);
|
|
134
|
+
clone(): IdColumn<Type, unknown, unknown>;
|
|
135
|
+
defaultTo$(fn: DefaultFunction<Type>): IdColumn<Type, In | null, Out>;
|
|
136
|
+
defaultTo(value: TypeMap[Type]): IdColumn<Type, In | null, Out>;
|
|
137
|
+
}
|
|
138
|
+
type RelationType = "many" | "one";
|
|
139
|
+
interface Schema<Version extends string = string, Tables extends Record<string, AnyTable> = Record<string, AnyTable>> {
|
|
140
|
+
/**
|
|
141
|
+
* @description The version of the schema, it should be a semantic version string.
|
|
142
|
+
*/
|
|
143
|
+
version: Version;
|
|
144
|
+
tables: Tables;
|
|
145
|
+
up?: CustomMigrationFn;
|
|
146
|
+
down?: CustomMigrationFn;
|
|
147
|
+
clone: () => Schema<Version, Tables>;
|
|
148
|
+
}
|
|
149
|
+
type NameVariantsConfig = Record<string, Partial<NameVariants>>;
|
|
150
|
+
type BuildNameVariants<Tables extends Record<string, AnyTable>> = { [K in keyof Tables as K extends string ? keyof Tables[K]["columns"] extends string ? `${K}.${keyof Tables[K]["columns"]}` : never : never]?: Partial<NameVariants> } & { [k in keyof Tables]?: Partial<NameVariants> };
|
|
151
|
+
type NameVariantsBuilder<Schemas extends AnySchema[], Out> = {
|
|
152
|
+
(variants: BuildNameVariants<Schemas[number]["tables"]>): Out;
|
|
153
|
+
<Version extends Schemas[number]["version"]>(versions: Version[], variants: BuildNameVariants<Extract<Schemas[number], {
|
|
154
|
+
version: Version;
|
|
155
|
+
}>["tables"]>): Out;
|
|
156
|
+
/**
|
|
157
|
+
* Add prefix to table names.
|
|
158
|
+
*
|
|
159
|
+
* If true, use package's `namespace` as prefix.
|
|
160
|
+
*/
|
|
161
|
+
prefix: (prefix: true | string) => Out;
|
|
162
|
+
};
|
|
163
|
+
interface ForeignKeyInfo {
|
|
164
|
+
name: string;
|
|
165
|
+
columns: string[];
|
|
166
|
+
referencedTable: string;
|
|
167
|
+
referencedColumns: string[];
|
|
168
|
+
onUpdate: "RESTRICT" | "CASCADE" | "SET NULL";
|
|
169
|
+
onDelete: "RESTRICT" | "CASCADE" | "SET NULL";
|
|
170
|
+
}
|
|
171
|
+
type MigrationOperation = TableOperation | {
|
|
172
|
+
type: "add-foreign-key";
|
|
173
|
+
table: string;
|
|
174
|
+
value: ForeignKeyInfo;
|
|
175
|
+
} | {
|
|
176
|
+
type: "drop-foreign-key";
|
|
177
|
+
table: string;
|
|
178
|
+
name: string;
|
|
179
|
+
} | {
|
|
180
|
+
type: "drop-unique-constraint";
|
|
181
|
+
table: string;
|
|
182
|
+
name: string;
|
|
183
|
+
} | {
|
|
184
|
+
type: "add-unique-constraint";
|
|
185
|
+
table: string;
|
|
186
|
+
columns: string[];
|
|
187
|
+
name: string;
|
|
188
|
+
} | CustomOperation;
|
|
189
|
+
type CustomOperation = {
|
|
190
|
+
type: "custom";
|
|
191
|
+
} & Record<string, unknown>;
|
|
192
|
+
type TableOperation = {
|
|
193
|
+
type: "create-table";
|
|
194
|
+
value: AnyTable;
|
|
195
|
+
} | {
|
|
196
|
+
type: "drop-table";
|
|
197
|
+
name: string;
|
|
198
|
+
} | {
|
|
199
|
+
/**
|
|
200
|
+
* Not supported by FumaDB
|
|
201
|
+
* - update table's primary key
|
|
202
|
+
*/
|
|
203
|
+
type: "update-table";
|
|
204
|
+
name: string;
|
|
205
|
+
value: ColumnOperation[];
|
|
206
|
+
} | {
|
|
207
|
+
type: "rename-table";
|
|
208
|
+
from: string;
|
|
209
|
+
to: string;
|
|
210
|
+
};
|
|
211
|
+
type ColumnOperation = {
|
|
212
|
+
type: "rename-column";
|
|
213
|
+
from: string;
|
|
214
|
+
to: string;
|
|
215
|
+
} | {
|
|
216
|
+
type: "drop-column";
|
|
217
|
+
name: string;
|
|
218
|
+
} | {
|
|
219
|
+
/**
|
|
220
|
+
* Note: unique constraints are not created, please use dedicated operations like `add-unique-constraint` instead
|
|
221
|
+
*/
|
|
222
|
+
type: "create-column";
|
|
223
|
+
value: AnyColumn;
|
|
224
|
+
} | {
|
|
225
|
+
/**
|
|
226
|
+
* warning: Not supported by SQLite
|
|
227
|
+
*/
|
|
228
|
+
type: "update-column";
|
|
229
|
+
name: string;
|
|
230
|
+
/**
|
|
231
|
+
* For databases like MySQL, it requires the full definition for any modify column statement.
|
|
232
|
+
* Hence, you need to specify the full information of your column here.
|
|
233
|
+
*
|
|
234
|
+
* Then, opt-in for in-detail modification for other databases that supports changing data type/nullable/default separately, such as PostgreSQL.
|
|
235
|
+
*
|
|
236
|
+
* Note: unique constraints are not updated, please use dedicated operations like `add-unique-constraint` instead
|
|
237
|
+
*/
|
|
238
|
+
value: AnyColumn;
|
|
239
|
+
updateNullable: boolean;
|
|
240
|
+
updateDefault: boolean;
|
|
241
|
+
updateDataType: boolean;
|
|
242
|
+
};
|
|
243
|
+
type Awaitable<T> = T | Promise<T>;
|
|
244
|
+
interface MigrationContext {
|
|
245
|
+
auto: () => Promise<MigrationOperation[]>;
|
|
246
|
+
}
|
|
247
|
+
type CustomMigrationFn = (context: MigrationContext) => Awaitable<MigrationOperation[]>;
|
|
248
|
+
interface MigrateOptions {
|
|
249
|
+
/**
|
|
250
|
+
* Manage how migrations are generated.
|
|
251
|
+
*
|
|
252
|
+
* - `from-schema` (default): compare fumadb schemas
|
|
253
|
+
* - `from-database`: introspect & compare the database with schema
|
|
254
|
+
*/
|
|
255
|
+
mode?: "from-schema" | "from-database";
|
|
256
|
+
/**
|
|
257
|
+
* Update internal settings, it's true by default.
|
|
258
|
+
* We don't recommend to disable it other than testing purposes.
|
|
259
|
+
*/
|
|
260
|
+
updateSettings?: boolean;
|
|
261
|
+
/**
|
|
262
|
+
* Enable unsafe operations when auto-generating migration.
|
|
263
|
+
*/
|
|
264
|
+
unsafe?: boolean;
|
|
265
|
+
}
|
|
266
|
+
interface MigrationResult {
|
|
267
|
+
operations: MigrationOperation[];
|
|
268
|
+
getSQL?: () => string;
|
|
269
|
+
execute: () => Promise<void>;
|
|
270
|
+
}
|
|
271
|
+
interface Migrator {
|
|
272
|
+
/**
|
|
273
|
+
* Get current version, undefined if not initialized
|
|
274
|
+
*/
|
|
275
|
+
getVersion: () => Promise<string | undefined>;
|
|
276
|
+
getNameVariants: () => Promise<NameVariantsConfig | undefined>;
|
|
277
|
+
next: () => Promise<AnySchema | undefined>;
|
|
278
|
+
previous: () => Promise<AnySchema | undefined>;
|
|
279
|
+
up: (options?: MigrateOptions) => Promise<MigrationResult>;
|
|
280
|
+
down: (options?: MigrateOptions) => Promise<MigrationResult>;
|
|
281
|
+
migrateTo: (version: string, options?: MigrateOptions) => Promise<MigrationResult>;
|
|
282
|
+
migrateToLatest: (options?: MigrateOptions) => Promise<MigrationResult>;
|
|
283
|
+
}
|
|
284
|
+
//#endregion
|
|
285
|
+
export { AnyColumn, AnyRelation, AnySchema, AnyTable, Column, ExplicitRelation, IdColumn, Migrator, NameVariantsBuilder, Relation, Schema, Table };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { AnySchema, Migrator } from "./create-tg0451Y_.cjs";
|
|
2
|
+
import { AbstractQuery } from "./query/index.cjs";
|
|
3
|
+
//#region ../../node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare+workers-types@4.20260313.1_@electric-sql+pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index-CMqePMTF.d.ts
|
|
4
|
+
declare const sqlProviders: readonly ["sqlite", "cockroachdb", "mysql", "postgresql", "mssql"];
|
|
5
|
+
declare const providers: readonly ["sqlite", "cockroachdb", "mysql", "postgresql", "mssql", "mongodb"];
|
|
6
|
+
type Provider = (typeof providers)[number];
|
|
7
|
+
type SQLProvider = (typeof sqlProviders)[number];
|
|
8
|
+
interface LibraryConfig<Schemas extends AnySchema[] = AnySchema[]> {
|
|
9
|
+
namespace: string;
|
|
10
|
+
/**
|
|
11
|
+
* different versions of schemas (sorted in ascending order)
|
|
12
|
+
*/
|
|
13
|
+
schemas: Schemas;
|
|
14
|
+
/**
|
|
15
|
+
* The initial version, it refers to the version of database **before** being initialized.
|
|
16
|
+
*
|
|
17
|
+
* You should not use this version number in your schemas.
|
|
18
|
+
*
|
|
19
|
+
* @defaultValue '0.0.0'
|
|
20
|
+
*/
|
|
21
|
+
initialVersion?: string;
|
|
22
|
+
}
|
|
23
|
+
type RelationMode = "foreign-keys" | "fumadb";
|
|
24
|
+
interface FumaDBAdapterContext extends LibraryConfig {}
|
|
25
|
+
interface FumaDBAdapter {
|
|
26
|
+
/**
|
|
27
|
+
* Name of the adapter
|
|
28
|
+
*/
|
|
29
|
+
name: string;
|
|
30
|
+
/**
|
|
31
|
+
* Generate ORM schema based on FumaDB Schema
|
|
32
|
+
*/
|
|
33
|
+
generateSchema?: (this: FumaDBAdapterContext, schema: AnySchema, schemaName: string) => {
|
|
34
|
+
code: string;
|
|
35
|
+
path: string;
|
|
36
|
+
};
|
|
37
|
+
createORM(this: FumaDBAdapterContext, schema: AnySchema): AbstractQuery<AnySchema>;
|
|
38
|
+
/**
|
|
39
|
+
* Get current schema version, undefined if not initialized.
|
|
40
|
+
*/
|
|
41
|
+
getSchemaVersion(this: FumaDBAdapterContext): Promise<string | undefined>;
|
|
42
|
+
createMigrationEngine?: (this: FumaDBAdapterContext) => Migrator;
|
|
43
|
+
}
|
|
44
|
+
//#endregion
|
|
45
|
+
export { FumaDBAdapter, LibraryConfig, Provider, RelationMode, SQLProvider, providers, sqlProviders };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { AnySchema, Migrator } from "./create-tg0451Y_.mjs";
|
|
2
|
+
import { AbstractQuery } from "./query/index.mjs";
|
|
3
|
+
//#region ../../node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare+workers-types@4.20260313.1_@electric-sql+pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index-CMqePMTF.d.ts
|
|
4
|
+
declare const sqlProviders: readonly ["sqlite", "cockroachdb", "mysql", "postgresql", "mssql"];
|
|
5
|
+
declare const providers: readonly ["sqlite", "cockroachdb", "mysql", "postgresql", "mssql", "mongodb"];
|
|
6
|
+
type Provider = (typeof providers)[number];
|
|
7
|
+
type SQLProvider = (typeof sqlProviders)[number];
|
|
8
|
+
interface LibraryConfig<Schemas extends AnySchema[] = AnySchema[]> {
|
|
9
|
+
namespace: string;
|
|
10
|
+
/**
|
|
11
|
+
* different versions of schemas (sorted in ascending order)
|
|
12
|
+
*/
|
|
13
|
+
schemas: Schemas;
|
|
14
|
+
/**
|
|
15
|
+
* The initial version, it refers to the version of database **before** being initialized.
|
|
16
|
+
*
|
|
17
|
+
* You should not use this version number in your schemas.
|
|
18
|
+
*
|
|
19
|
+
* @defaultValue '0.0.0'
|
|
20
|
+
*/
|
|
21
|
+
initialVersion?: string;
|
|
22
|
+
}
|
|
23
|
+
type RelationMode = "foreign-keys" | "fumadb";
|
|
24
|
+
interface FumaDBAdapterContext extends LibraryConfig {}
|
|
25
|
+
interface FumaDBAdapter {
|
|
26
|
+
/**
|
|
27
|
+
* Name of the adapter
|
|
28
|
+
*/
|
|
29
|
+
name: string;
|
|
30
|
+
/**
|
|
31
|
+
* Generate ORM schema based on FumaDB Schema
|
|
32
|
+
*/
|
|
33
|
+
generateSchema?: (this: FumaDBAdapterContext, schema: AnySchema, schemaName: string) => {
|
|
34
|
+
code: string;
|
|
35
|
+
path: string;
|
|
36
|
+
};
|
|
37
|
+
createORM(this: FumaDBAdapterContext, schema: AnySchema): AbstractQuery<AnySchema>;
|
|
38
|
+
/**
|
|
39
|
+
* Get current schema version, undefined if not initialized.
|
|
40
|
+
*/
|
|
41
|
+
getSchemaVersion(this: FumaDBAdapterContext): Promise<string | undefined>;
|
|
42
|
+
createMigrationEngine?: (this: FumaDBAdapterContext) => Migrator;
|
|
43
|
+
}
|
|
44
|
+
//#endregion
|
|
45
|
+
export { FumaDBAdapter, LibraryConfig, Provider, RelationMode, SQLProvider, providers, sqlProviders };
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
require("../../../../../../_virtual/_rolldown/runtime.cjs");
|
|
2
|
+
const require_chunk_7PZK4ONR = require("./chunk-7PZK4ONR.cjs");
|
|
3
|
+
let semver = require("semver");
|
|
4
|
+
//#region ../../node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare+workers-types@4.20260313.1_@electric-sql+pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index.js
|
|
5
|
+
var sqlProviders = [
|
|
6
|
+
"sqlite",
|
|
7
|
+
"cockroachdb",
|
|
8
|
+
"mysql",
|
|
9
|
+
"postgresql",
|
|
10
|
+
"mssql"
|
|
11
|
+
];
|
|
12
|
+
var noSqlProviders = ["mongodb"];
|
|
13
|
+
[...sqlProviders, ...noSqlProviders];
|
|
14
|
+
function fumadb(config) {
|
|
15
|
+
const schemas = config.schemas.sort((a, b) => (0, semver.compare)(a.version, b.version));
|
|
16
|
+
return {
|
|
17
|
+
names: require_chunk_7PZK4ONR.createNameVariantsBuilder(config.namespace, schemas, (schemas2) => {
|
|
18
|
+
return fumadb({
|
|
19
|
+
...config,
|
|
20
|
+
schemas: schemas2
|
|
21
|
+
});
|
|
22
|
+
}),
|
|
23
|
+
version(targetVersion) {
|
|
24
|
+
return targetVersion;
|
|
25
|
+
},
|
|
26
|
+
client(adapter) {
|
|
27
|
+
const orms = /* @__PURE__ */ new Map();
|
|
28
|
+
const adapterContext = { ...config };
|
|
29
|
+
return {
|
|
30
|
+
adapter,
|
|
31
|
+
schemas,
|
|
32
|
+
orm(version) {
|
|
33
|
+
let orm = orms.get(version);
|
|
34
|
+
if (orm) return orm;
|
|
35
|
+
const schema = schemas.find((schema2) => schema2.version === version);
|
|
36
|
+
if (!schema) throw new Error(`unknown schema version ${version}`);
|
|
37
|
+
orm = adapter.createORM.call(adapterContext, schema);
|
|
38
|
+
orms.set(version, orm);
|
|
39
|
+
return orm;
|
|
40
|
+
},
|
|
41
|
+
async version() {
|
|
42
|
+
const version = await adapter.getSchemaVersion.call(adapterContext);
|
|
43
|
+
if (!version) throw new Error(`FumaDB ${config.namespace} is not initialized.`);
|
|
44
|
+
return version;
|
|
45
|
+
},
|
|
46
|
+
generateSchema(version, name = config.namespace) {
|
|
47
|
+
if (!adapter.generateSchema) throw new Error("The adapter doesn't support schema API.");
|
|
48
|
+
let schema;
|
|
49
|
+
if (version === "latest") schema = schemas.at(-1);
|
|
50
|
+
else {
|
|
51
|
+
schema = schemas.find((schema2) => schema2.version === version);
|
|
52
|
+
if (!schema) throw new Error(`Invalid version: ${version}`);
|
|
53
|
+
}
|
|
54
|
+
return adapter.generateSchema.call(adapterContext, schema, name);
|
|
55
|
+
},
|
|
56
|
+
createMigrator() {
|
|
57
|
+
if (!adapter.createMigrationEngine) throw new Error("The adapter doesn't support migration engine.");
|
|
58
|
+
return adapter.createMigrationEngine.call(adapterContext);
|
|
59
|
+
},
|
|
60
|
+
get abstract() {
|
|
61
|
+
return this.orm(schemas.at(-1).version);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
//#endregion
|
|
68
|
+
exports.fumadb = fumadb;
|
|
69
|
+
exports.sqlProviders = sqlProviders;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { AnySchema, Migrator, NameVariantsBuilder } from "./create-tg0451Y_.cjs";
|
|
2
|
+
import { AbstractQuery } from "./query/index.cjs";
|
|
3
|
+
import { FumaDBAdapter, LibraryConfig, Provider, RelationMode, SQLProvider, providers, sqlProviders } from "./index-CMqePMTF.cjs";
|
|
4
|
+
//#region ../../node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare+workers-types@4.20260313.1_@electric-sql+pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index.d.ts
|
|
5
|
+
type Last<T extends unknown[]> = T extends [...infer _, infer L] ? L : T[number];
|
|
6
|
+
interface FumaDB<Schemas extends AnySchema[] = AnySchema[]> {
|
|
7
|
+
schemas: Schemas;
|
|
8
|
+
adapter: FumaDBAdapter;
|
|
9
|
+
/**
|
|
10
|
+
* Shorthand for `orm()` latest schema version
|
|
11
|
+
* @deprecated use `orm()` directly
|
|
12
|
+
*/
|
|
13
|
+
readonly abstract: AbstractQuery<Last<Schemas>>;
|
|
14
|
+
/**
|
|
15
|
+
* Get current schema version
|
|
16
|
+
*/
|
|
17
|
+
version: () => Promise<Schemas[number]["version"]>;
|
|
18
|
+
orm: <V extends Schemas[number]["version"]>(version: V) => AbstractQuery<Extract<Schemas[number], {
|
|
19
|
+
version: V;
|
|
20
|
+
}>>;
|
|
21
|
+
/**
|
|
22
|
+
* Kysely & MongoDB only
|
|
23
|
+
*/
|
|
24
|
+
createMigrator: () => Migrator;
|
|
25
|
+
/**
|
|
26
|
+
* ORM only
|
|
27
|
+
*/
|
|
28
|
+
generateSchema: (version: Schemas[number]["version"] | "latest", name?: string) => {
|
|
29
|
+
code: string;
|
|
30
|
+
path: string;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
interface FumaDBFactory<Schemas extends AnySchema[]> {
|
|
34
|
+
/**
|
|
35
|
+
* A static type-checker
|
|
36
|
+
*/
|
|
37
|
+
version: <T extends Schemas[number]["version"]>(target: T) => T;
|
|
38
|
+
/**
|
|
39
|
+
* Configure consumer-side integration
|
|
40
|
+
*/
|
|
41
|
+
client: (adapter: FumaDBAdapter) => FumaDB<Schemas>;
|
|
42
|
+
/**
|
|
43
|
+
* Set name variants
|
|
44
|
+
*/
|
|
45
|
+
names: NameVariantsBuilder<Schemas, FumaDBFactory<Schemas>>;
|
|
46
|
+
}
|
|
47
|
+
type InferFumaDB<Factory extends FumaDBFactory<any>> = Factory extends FumaDBFactory<infer Schemas> ? FumaDB<Schemas> : never;
|
|
48
|
+
//#endregion
|
|
49
|
+
export { type FumaDBFactory, type InferFumaDB };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { AnySchema, Migrator, NameVariantsBuilder } from "./create-tg0451Y_.mjs";
|
|
2
|
+
import { AbstractQuery } from "./query/index.mjs";
|
|
3
|
+
import { FumaDBAdapter, LibraryConfig, Provider, RelationMode, SQLProvider, providers, sqlProviders } from "./index-CMqePMTF.mjs";
|
|
4
|
+
//#region ../../node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare+workers-types@4.20260313.1_@electric-sql+pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index.d.ts
|
|
5
|
+
type Last<T extends unknown[]> = T extends [...infer _, infer L] ? L : T[number];
|
|
6
|
+
interface FumaDB<Schemas extends AnySchema[] = AnySchema[]> {
|
|
7
|
+
schemas: Schemas;
|
|
8
|
+
adapter: FumaDBAdapter;
|
|
9
|
+
/**
|
|
10
|
+
* Shorthand for `orm()` latest schema version
|
|
11
|
+
* @deprecated use `orm()` directly
|
|
12
|
+
*/
|
|
13
|
+
readonly abstract: AbstractQuery<Last<Schemas>>;
|
|
14
|
+
/**
|
|
15
|
+
* Get current schema version
|
|
16
|
+
*/
|
|
17
|
+
version: () => Promise<Schemas[number]["version"]>;
|
|
18
|
+
orm: <V extends Schemas[number]["version"]>(version: V) => AbstractQuery<Extract<Schemas[number], {
|
|
19
|
+
version: V;
|
|
20
|
+
}>>;
|
|
21
|
+
/**
|
|
22
|
+
* Kysely & MongoDB only
|
|
23
|
+
*/
|
|
24
|
+
createMigrator: () => Migrator;
|
|
25
|
+
/**
|
|
26
|
+
* ORM only
|
|
27
|
+
*/
|
|
28
|
+
generateSchema: (version: Schemas[number]["version"] | "latest", name?: string) => {
|
|
29
|
+
code: string;
|
|
30
|
+
path: string;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
interface FumaDBFactory<Schemas extends AnySchema[]> {
|
|
34
|
+
/**
|
|
35
|
+
* A static type-checker
|
|
36
|
+
*/
|
|
37
|
+
version: <T extends Schemas[number]["version"]>(target: T) => T;
|
|
38
|
+
/**
|
|
39
|
+
* Configure consumer-side integration
|
|
40
|
+
*/
|
|
41
|
+
client: (adapter: FumaDBAdapter) => FumaDB<Schemas>;
|
|
42
|
+
/**
|
|
43
|
+
* Set name variants
|
|
44
|
+
*/
|
|
45
|
+
names: NameVariantsBuilder<Schemas, FumaDBFactory<Schemas>>;
|
|
46
|
+
}
|
|
47
|
+
type InferFumaDB<Factory extends FumaDBFactory<any>> = Factory extends FumaDBFactory<infer Schemas> ? FumaDB<Schemas> : never;
|
|
48
|
+
//#endregion
|
|
49
|
+
export { type FumaDBFactory, type InferFumaDB };
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { createNameVariantsBuilder } from "./chunk-7PZK4ONR.mjs";
|
|
2
|
+
import { compare } from "semver";
|
|
3
|
+
//#region ../../node_modules/.pnpm/fumadb@0.2.2_drizzle-orm@0.44.7_@cloudflare+workers-types@4.20260313.1_@electric-sql+pg_c72c8c754becd21f6d6662e8fbd28e7f/node_modules/fumadb/dist/index.js
|
|
4
|
+
var sqlProviders = [
|
|
5
|
+
"sqlite",
|
|
6
|
+
"cockroachdb",
|
|
7
|
+
"mysql",
|
|
8
|
+
"postgresql",
|
|
9
|
+
"mssql"
|
|
10
|
+
];
|
|
11
|
+
var noSqlProviders = ["mongodb"];
|
|
12
|
+
[...sqlProviders, ...noSqlProviders];
|
|
13
|
+
function fumadb(config) {
|
|
14
|
+
const schemas = config.schemas.sort((a, b) => compare(a.version, b.version));
|
|
15
|
+
return {
|
|
16
|
+
names: createNameVariantsBuilder(config.namespace, schemas, (schemas2) => {
|
|
17
|
+
return fumadb({
|
|
18
|
+
...config,
|
|
19
|
+
schemas: schemas2
|
|
20
|
+
});
|
|
21
|
+
}),
|
|
22
|
+
version(targetVersion) {
|
|
23
|
+
return targetVersion;
|
|
24
|
+
},
|
|
25
|
+
client(adapter) {
|
|
26
|
+
const orms = /* @__PURE__ */ new Map();
|
|
27
|
+
const adapterContext = { ...config };
|
|
28
|
+
return {
|
|
29
|
+
adapter,
|
|
30
|
+
schemas,
|
|
31
|
+
orm(version) {
|
|
32
|
+
let orm = orms.get(version);
|
|
33
|
+
if (orm) return orm;
|
|
34
|
+
const schema = schemas.find((schema2) => schema2.version === version);
|
|
35
|
+
if (!schema) throw new Error(`unknown schema version ${version}`);
|
|
36
|
+
orm = adapter.createORM.call(adapterContext, schema);
|
|
37
|
+
orms.set(version, orm);
|
|
38
|
+
return orm;
|
|
39
|
+
},
|
|
40
|
+
async version() {
|
|
41
|
+
const version = await adapter.getSchemaVersion.call(adapterContext);
|
|
42
|
+
if (!version) throw new Error(`FumaDB ${config.namespace} is not initialized.`);
|
|
43
|
+
return version;
|
|
44
|
+
},
|
|
45
|
+
generateSchema(version, name = config.namespace) {
|
|
46
|
+
if (!adapter.generateSchema) throw new Error("The adapter doesn't support schema API.");
|
|
47
|
+
let schema;
|
|
48
|
+
if (version === "latest") schema = schemas.at(-1);
|
|
49
|
+
else {
|
|
50
|
+
schema = schemas.find((schema2) => schema2.version === version);
|
|
51
|
+
if (!schema) throw new Error(`Invalid version: ${version}`);
|
|
52
|
+
}
|
|
53
|
+
return adapter.generateSchema.call(adapterContext, schema, name);
|
|
54
|
+
},
|
|
55
|
+
createMigrator() {
|
|
56
|
+
if (!adapter.createMigrationEngine) throw new Error("The adapter doesn't support migration engine.");
|
|
57
|
+
return adapter.createMigrationEngine.call(adapterContext);
|
|
58
|
+
},
|
|
59
|
+
get abstract() {
|
|
60
|
+
return this.orm(schemas.at(-1).version);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
//#endregion
|
|
67
|
+
export { fumadb, sqlProviders };
|