@fragno-dev/db 0.1.2 → 0.1.5
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/.turbo/turbo-build.log +210 -146
- package/CHANGELOG.md +19 -0
- package/LICENSE.md +16 -0
- package/dist/adapters/adapters.js +1 -0
- package/dist/adapters/drizzle/drizzle-adapter.d.ts.map +1 -1
- package/dist/adapters/drizzle/drizzle-adapter.js +4 -2
- package/dist/adapters/drizzle/drizzle-adapter.js.map +1 -1
- package/dist/adapters/drizzle/drizzle-query.js +2 -2
- package/dist/adapters/drizzle/drizzle-query.js.map +1 -1
- package/dist/adapters/drizzle/drizzle-uow-compiler.js +4 -4
- package/dist/adapters/drizzle/drizzle-uow-decoder.js +14 -4
- package/dist/adapters/drizzle/drizzle-uow-decoder.js.map +1 -1
- package/dist/adapters/drizzle/drizzle-uow-executor.js +78 -60
- package/dist/adapters/drizzle/drizzle-uow-executor.js.map +1 -1
- package/dist/adapters/drizzle/generate.js +5 -4
- package/dist/adapters/drizzle/generate.js.map +1 -1
- package/dist/adapters/kysely/kysely-adapter.d.ts.map +1 -1
- package/dist/adapters/kysely/kysely-adapter.js +33 -22
- package/dist/adapters/kysely/kysely-adapter.js.map +1 -1
- package/dist/adapters/kysely/migration/execute-base.js +128 -0
- package/dist/adapters/kysely/migration/execute-base.js.map +1 -0
- package/dist/adapters/kysely/migration/execute-factory.js +27 -0
- package/dist/adapters/kysely/migration/execute-factory.js.map +1 -0
- package/dist/adapters/kysely/migration/execute-mssql.js +112 -0
- package/dist/adapters/kysely/migration/execute-mssql.js.map +1 -0
- package/dist/adapters/kysely/migration/execute-mysql.js +93 -0
- package/dist/adapters/kysely/migration/execute-mysql.js.map +1 -0
- package/dist/adapters/kysely/migration/execute-postgres.js +104 -0
- package/dist/adapters/kysely/migration/execute-postgres.js.map +1 -0
- package/dist/adapters/kysely/migration/execute-sqlite.js +123 -0
- package/dist/adapters/kysely/migration/execute-sqlite.js.map +1 -0
- package/dist/adapters/kysely/migration/execute.js +23 -168
- package/dist/adapters/kysely/migration/execute.js.map +1 -1
- package/dist/migration-engine/shared.d.ts +24 -5
- package/dist/migration-engine/shared.d.ts.map +1 -1
- package/dist/migration-engine/shared.js.map +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/alias.js +77 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/alias.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/casing.js +49 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/casing.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/column-builder.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/column-builder.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/column.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/column.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/entity.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/entity.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/errors.js +21 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/errors.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/pg-core/columns/common.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/pg-core/columns/common.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/pg-core/columns/enum.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/pg-core/columns/enum.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/pg-core/foreign-keys.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/pg-core/foreign-keys.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/pg-core/unique-constraint.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/pg-core/unique-constraint.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/pg-core/utils/array.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/pg-core/utils/array.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/query-builders/query-builder.js +14 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/query-builders/query-builder.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/query-promise.js +26 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/query-promise.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/relations.js +127 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/relations.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/selection-proxy.js +47 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/selection-proxy.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/sql/expressions/conditions.js +20 -2
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sql/expressions/conditions.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sql/expressions/select.js +13 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sql/expressions/select.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sql/functions/aggregate.js +10 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sql/functions/aggregate.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/sql/sql.js +1 -1
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sql/sql.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/columns/common.js +60 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/columns/common.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/db.js +269 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/db.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/dialect.js +457 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/dialect.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/foreign-keys.js +68 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/foreign-keys.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/count.js +41 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/count.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/delete.js +119 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/delete.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/insert.js +170 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/insert.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/query-builder.js +75 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/query-builder.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/query.js +107 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/query.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/raw.js +37 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/raw.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/select.js +621 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/select.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/update.js +170 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/query-builders/update.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/table.js +20 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/table.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/unique-constraint.js +48 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/unique-constraint.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/utils.js +17 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/utils.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/view-base.js +11 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/sqlite-core/view-base.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/subquery.js +2 -2
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/subquery.js.map +1 -0
- package/dist/node_modules/{.bun/drizzle-orm@0.44.6_4fae081eecb963e2 → .pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8}/node_modules/drizzle-orm/table.js +8 -2
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/table.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/table.utils.js +6 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/table.utils.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/tracing-utils.js +8 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/tracing-utils.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/tracing.js +8 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/tracing.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/utils.js +53 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/utils.js.map +1 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/view-common.js +6 -0
- package/dist/node_modules/.pnpm/drizzle-orm@0.44.7_@electric-sql_pglite@0.3.11_@types_better-sqlite3@7.6.13_better-sqlite3@12.4.1_kysely@0.28.8/node_modules/drizzle-orm/view-common.js.map +1 -0
- package/dist/query/query.d.ts +4 -4
- package/dist/query/query.d.ts.map +1 -1
- package/dist/query/unit-of-work.d.ts +22 -22
- package/dist/query/unit-of-work.d.ts.map +1 -1
- package/dist/schema/create.d.ts +41 -41
- package/dist/schema/create.d.ts.map +1 -1
- package/dist/schema/serialize.js +3 -0
- package/dist/schema/serialize.js.map +1 -1
- package/package.json +20 -24
- package/src/adapters/drizzle/drizzle-adapter-sqlite.test.ts +585 -0
- package/src/adapters/drizzle/drizzle-adapter.test.ts +2 -2
- package/src/adapters/drizzle/drizzle-adapter.ts +11 -4
- package/src/adapters/drizzle/drizzle-query.ts +2 -2
- package/src/adapters/drizzle/drizzle-uow-compiler.test.ts +1 -1
- package/src/adapters/drizzle/drizzle-uow-decoder.ts +21 -4
- package/src/adapters/drizzle/drizzle-uow-executor.ts +155 -115
- package/src/adapters/drizzle/generate.test.ts +111 -14
- package/src/adapters/drizzle/generate.ts +12 -7
- package/src/adapters/kysely/kysely-adapter.ts +46 -27
- package/src/adapters/kysely/migration/execute-base.ts +256 -0
- package/src/adapters/kysely/migration/execute-factory.ts +30 -0
- package/src/adapters/kysely/migration/execute-mssql.ts +250 -0
- package/src/adapters/kysely/migration/execute-mysql.ts +211 -0
- package/src/adapters/kysely/migration/execute-postgres.ts +234 -0
- package/src/adapters/kysely/migration/execute-sqlite.test.ts +1363 -0
- package/src/adapters/kysely/migration/execute-sqlite.ts +247 -0
- package/src/adapters/kysely/migration/execute.ts +33 -396
- package/src/adapters/kysely/migration/kysely-migrator.test.ts +84 -2
- package/src/migration-engine/shared.ts +29 -11
- package/src/schema/serialize.test.ts +1 -0
- package/src/schema/serialize.ts +7 -0
- package/tsdown.config.ts +1 -0
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/column-builder.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/column.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/entity.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/pg-core/columns/common.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/pg-core/columns/enum.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/pg-core/foreign-keys.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/pg-core/unique-constraint.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/pg-core/utils/array.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/sql/expressions/conditions.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/sql/expressions/select.js +0 -13
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/sql/expressions/select.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/sql/functions/aggregate.js +0 -10
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/sql/functions/aggregate.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/sql/sql.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/subquery.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/table.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/table.utils.js +0 -6
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/table.utils.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/tracing-utils.js +0 -8
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/tracing-utils.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/tracing.js +0 -8
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/tracing.js.map +0 -1
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/view-common.js +0 -6
- package/dist/node_modules/.bun/drizzle-orm@0.44.6_4fae081eecb963e2/node_modules/drizzle-orm/view-common.js.map +0 -1
|
@@ -32,7 +32,7 @@ type InferIdColumnName<TTable extends AnyTable> = keyof OmitNever<{ [K in keyof
|
|
|
32
32
|
* For "primary", returns only the ID column.
|
|
33
33
|
* For named indexes, returns the columns defined in that index.
|
|
34
34
|
*/
|
|
35
|
-
type ColumnsForIndex<TTable extends AnyTable, TIndexName
|
|
35
|
+
type ColumnsForIndex<TTable extends AnyTable, TIndexName extends ValidIndexName<TTable>> = TIndexName extends "primary" ? Pick<TTable["columns"], InferIdColumnName<TTable>> : TIndexName extends keyof TTable["indexes"] ? Pick<TTable["columns"], IndexColumns<TTable["indexes"][TIndexName]>> : never;
|
|
36
36
|
/**
|
|
37
37
|
* ConditionBuilder restricted to indexed columns only.
|
|
38
38
|
* Used throughout Unit of Work to ensure all queries can leverage indexes for optimal performance.
|
|
@@ -41,7 +41,7 @@ type IndexedConditionBuilder<TTable extends AnyTable> = ConditionBuilder<Pick<TT
|
|
|
41
41
|
/**
|
|
42
42
|
* ConditionBuilder restricted to columns in a specific index.
|
|
43
43
|
*/
|
|
44
|
-
type IndexSpecificConditionBuilder<TTable extends AnyTable, TIndexName
|
|
44
|
+
type IndexSpecificConditionBuilder<TTable extends AnyTable, TIndexName extends ValidIndexName<TTable>> = ConditionBuilder<ColumnsForIndex<TTable, TIndexName>>;
|
|
45
45
|
/**
|
|
46
46
|
* Valid index names for a table, including the static "primary" index
|
|
47
47
|
*/
|
|
@@ -49,7 +49,7 @@ type ValidIndexName<TTable extends AnyTable> = "primary" | (string & keyof TTabl
|
|
|
49
49
|
/**
|
|
50
50
|
* Find options for Unit of Work (internal, used after builder finalization)
|
|
51
51
|
*/
|
|
52
|
-
type FindOptions<TTable extends AnyTable = AnyTable, TSelect
|
|
52
|
+
type FindOptions<TTable extends AnyTable = AnyTable, TSelect extends SelectClause<TTable> = SelectClause<TTable>> = {
|
|
53
53
|
/**
|
|
54
54
|
* Which index to use for this query (required)
|
|
55
55
|
*/
|
|
@@ -57,7 +57,7 @@ type FindOptions<TTable extends AnyTable = AnyTable, TSelect$1 extends SelectCla
|
|
|
57
57
|
/**
|
|
58
58
|
* Select clause - which columns to return
|
|
59
59
|
*/
|
|
60
|
-
select?: TSelect
|
|
60
|
+
select?: TSelect;
|
|
61
61
|
/**
|
|
62
62
|
* Where clause - filtering restricted to indexed columns only
|
|
63
63
|
*/
|
|
@@ -127,8 +127,8 @@ type MutationOperation<TSchema extends AnySchema, TTable extends AnyTable = TSch
|
|
|
127
127
|
/**
|
|
128
128
|
* Compiled mutation with metadata for execution
|
|
129
129
|
*/
|
|
130
|
-
interface CompiledMutation<TOutput
|
|
131
|
-
query: TOutput
|
|
130
|
+
interface CompiledMutation<TOutput> {
|
|
131
|
+
query: TOutput;
|
|
132
132
|
/**
|
|
133
133
|
* Number of rows this operation must affect for the transaction to succeed.
|
|
134
134
|
* If actual affected rows doesn't match, it indicates a version conflict.
|
|
@@ -139,15 +139,15 @@ interface CompiledMutation<TOutput$1> {
|
|
|
139
139
|
/**
|
|
140
140
|
* Compiler interface for Unit of Work operations
|
|
141
141
|
*/
|
|
142
|
-
interface UOWCompiler<TSchema extends AnySchema, TOutput
|
|
142
|
+
interface UOWCompiler<TSchema extends AnySchema, TOutput> {
|
|
143
143
|
/**
|
|
144
144
|
* Compile a retrieval operation to the adapter's query format
|
|
145
145
|
*/
|
|
146
|
-
compileRetrievalOperation(op: RetrievalOperation<TSchema>): TOutput
|
|
146
|
+
compileRetrievalOperation(op: RetrievalOperation<TSchema>): TOutput | null;
|
|
147
147
|
/**
|
|
148
148
|
* Compile a mutation operation to the adapter's query format
|
|
149
149
|
*/
|
|
150
|
-
compileMutationOperation(op: MutationOperation<TSchema>): CompiledMutation<TOutput
|
|
150
|
+
compileMutationOperation(op: MutationOperation<TSchema>): CompiledMutation<TOutput> | null;
|
|
151
151
|
}
|
|
152
152
|
type MutationResult = {
|
|
153
153
|
success: true;
|
|
@@ -158,17 +158,17 @@ type MutationResult = {
|
|
|
158
158
|
/**
|
|
159
159
|
* Executor interface for Unit of Work operations
|
|
160
160
|
*/
|
|
161
|
-
interface UOWExecutor<TOutput
|
|
161
|
+
interface UOWExecutor<TOutput, TRawResult = unknown> {
|
|
162
162
|
/**
|
|
163
163
|
* Execute the retrieval phase - all queries run in a single transaction for snapshot isolation
|
|
164
164
|
*/
|
|
165
|
-
executeRetrievalPhase(retrievalBatch: TOutput
|
|
165
|
+
executeRetrievalPhase(retrievalBatch: TOutput[]): Promise<TRawResult[]>;
|
|
166
166
|
/**
|
|
167
167
|
* Execute the mutation phase - all queries run in a transaction with version checks
|
|
168
168
|
* Returns success status indicating if mutations completed without conflicts,
|
|
169
169
|
* and internal IDs for create operations (null if database doesn't support RETURNING)
|
|
170
170
|
*/
|
|
171
|
-
executeMutationPhase(mutationBatch: CompiledMutation<TOutput
|
|
171
|
+
executeMutationPhase(mutationBatch: CompiledMutation<TOutput>[]): Promise<MutationResult>;
|
|
172
172
|
}
|
|
173
173
|
/**
|
|
174
174
|
* Decoder interface for Unit of Work retrieval results
|
|
@@ -189,7 +189,7 @@ interface UOWDecoder<TSchema extends AnySchema, TRawInput = unknown> {
|
|
|
189
189
|
/**
|
|
190
190
|
* Builder for find operations in Unit of Work
|
|
191
191
|
*/
|
|
192
|
-
declare class FindBuilder<TTable extends AnyTable, TSelect
|
|
192
|
+
declare class FindBuilder<TTable extends AnyTable, TSelect extends SelectClause<TTable> = true, TJoinOut = {}> {
|
|
193
193
|
#private;
|
|
194
194
|
constructor(tableName: string, table: TTable);
|
|
195
195
|
/**
|
|
@@ -200,7 +200,7 @@ declare class FindBuilder<TTable extends AnyTable, TSelect$1 extends SelectClaus
|
|
|
200
200
|
* Specify columns to select
|
|
201
201
|
* @throws Error if selectCount() has already been called
|
|
202
202
|
*/
|
|
203
|
-
select<const TNewSelect extends SelectClause<TTable>>(columns: TNewSelect): FindBuilder<TTable, TNewSelect, TJoinOut
|
|
203
|
+
select<const TNewSelect extends SelectClause<TTable>>(columns: TNewSelect): FindBuilder<TTable, TNewSelect, TJoinOut>;
|
|
204
204
|
/**
|
|
205
205
|
* Select count instead of records
|
|
206
206
|
* @throws Error if select() has already been called
|
|
@@ -226,14 +226,14 @@ declare class FindBuilder<TTable extends AnyTable, TSelect$1 extends SelectClaus
|
|
|
226
226
|
* Add joins to include related data
|
|
227
227
|
* Join where clauses are restricted to indexed columns only
|
|
228
228
|
*/
|
|
229
|
-
join<TNewJoinOut>(joinFn: (jb: IndexedJoinBuilder<TTable, {}>) => IndexedJoinBuilder<TTable, TNewJoinOut>): FindBuilder<TTable, TSelect
|
|
229
|
+
join<TNewJoinOut>(joinFn: (jb: IndexedJoinBuilder<TTable, {}>) => IndexedJoinBuilder<TTable, TNewJoinOut>): FindBuilder<TTable, TSelect, TNewJoinOut>;
|
|
230
230
|
/**
|
|
231
231
|
* @internal
|
|
232
232
|
*/
|
|
233
233
|
build(): {
|
|
234
234
|
type: "find";
|
|
235
235
|
indexName: string;
|
|
236
|
-
options: FindOptions<TTable, TSelect
|
|
236
|
+
options: FindOptions<TTable, TSelect>;
|
|
237
237
|
} | {
|
|
238
238
|
type: "count";
|
|
239
239
|
indexName: string;
|
|
@@ -287,7 +287,7 @@ declare class DeleteBuilder {
|
|
|
287
287
|
* Builder for join operations in Unit of Work
|
|
288
288
|
* Similar to FindBuilder but tailored for joins (no cursor pagination, no count mode)
|
|
289
289
|
*/
|
|
290
|
-
declare class JoinFindBuilder<TTable extends AnyTable, TSelect
|
|
290
|
+
declare class JoinFindBuilder<TTable extends AnyTable, TSelect extends SelectClause<TTable> = true, TJoinOut = {}> {
|
|
291
291
|
#private;
|
|
292
292
|
constructor(tableName: string, table: TTable);
|
|
293
293
|
/**
|
|
@@ -297,7 +297,7 @@ declare class JoinFindBuilder<TTable extends AnyTable, TSelect$1 extends SelectC
|
|
|
297
297
|
/**
|
|
298
298
|
* Specify columns to select
|
|
299
299
|
*/
|
|
300
|
-
select<const TNewSelect extends SelectClause<TTable>>(columns: TNewSelect): JoinFindBuilder<TTable, TNewSelect, TJoinOut
|
|
300
|
+
select<const TNewSelect extends SelectClause<TTable>>(columns: TNewSelect): JoinFindBuilder<TTable, TNewSelect, TJoinOut>;
|
|
301
301
|
/**
|
|
302
302
|
* Order results by index in ascending or descending order
|
|
303
303
|
*/
|
|
@@ -310,13 +310,13 @@ declare class JoinFindBuilder<TTable extends AnyTable, TSelect$1 extends SelectC
|
|
|
310
310
|
* Add joins to include related data
|
|
311
311
|
* Join where clauses are restricted to indexed columns only
|
|
312
312
|
*/
|
|
313
|
-
join<TNewJoinOut>(joinFn: (jb: IndexedJoinBuilder<TTable, {}>) => IndexedJoinBuilder<TTable, TNewJoinOut>): JoinFindBuilder<TTable, TSelect
|
|
313
|
+
join<TNewJoinOut>(joinFn: (jb: IndexedJoinBuilder<TTable, {}>) => IndexedJoinBuilder<TTable, TNewJoinOut>): JoinFindBuilder<TTable, TSelect, TJoinOut & TNewJoinOut>;
|
|
314
314
|
/**
|
|
315
315
|
* @internal
|
|
316
316
|
*/
|
|
317
317
|
build(): {
|
|
318
318
|
indexName: string | undefined;
|
|
319
|
-
select: TSelect
|
|
319
|
+
select: TSelect | undefined;
|
|
320
320
|
where: ((eb: IndexedConditionBuilder<TTable>) => Condition | boolean) | undefined;
|
|
321
321
|
orderByIndex: {
|
|
322
322
|
indexName: string;
|
|
@@ -334,12 +334,12 @@ interface MapRelationType<T> {
|
|
|
334
334
|
* Join builder with indexed-only where clauses for Unit of Work
|
|
335
335
|
* TJoinOut accumulates the types of all joined relations
|
|
336
336
|
*/
|
|
337
|
-
type IndexedJoinBuilder<TTable extends AnyTable, TJoinOut
|
|
337
|
+
type IndexedJoinBuilder<TTable extends AnyTable, TJoinOut> = { [K in keyof TTable["relations"]]: TTable["relations"][K] extends Relation<infer TRelationType, infer TTargetTable> ? <TSelect extends SelectClause<TTable["relations"][K]["table"]> = true, TNestedJoinOut = {}>(builderFn?: (builder: JoinFindBuilder<TTable["relations"][K]["table"]>) => JoinFindBuilder<TTable["relations"][K]["table"], TSelect, TNestedJoinOut>) => IndexedJoinBuilder<TTable, TJoinOut & { [P in K]: MapRelationType<SelectResult<TTargetTable, TNestedJoinOut, TSelect>>[TRelationType] }> : never };
|
|
338
338
|
/**
|
|
339
339
|
* Build join operations with indexed-only where clauses for Unit of Work
|
|
340
340
|
* This ensures all join conditions can leverage indexes for optimal performance
|
|
341
341
|
*/
|
|
342
|
-
declare function buildJoinIndexed<TTable extends AnyTable, TJoinOut
|
|
342
|
+
declare function buildJoinIndexed<TTable extends AnyTable, TJoinOut>(table: TTable, fn: (builder: IndexedJoinBuilder<TTable, {}>) => IndexedJoinBuilder<TTable, TJoinOut>): CompiledJoin[];
|
|
343
343
|
declare function createUnitOfWork<const TSchema extends AnySchema, const TRetrievalResults extends unknown[] = [], const TRawInput = unknown>(schema: TSchema, compiler: UOWCompiler<TSchema, unknown>, executor: UOWExecutor<unknown, TRawInput>, decoder: UOWDecoder<TSchema, TRawInput>, name?: string): UnitOfWork<TSchema, TRetrievalResults, TRawInput>;
|
|
344
344
|
/**
|
|
345
345
|
* Unit of Work implementation with optimistic concurrency control
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unit-of-work.d.ts","names":[],"sources":["../../src/query/unit-of-work.ts"],"sourcesContent":[],"mappings":";;;;;;;;AAUA;;AAC+C,UAD9B,iBAC8B,CAAA,eADG,QACH,CAAA,CAAA;EAAf,UAAA,CAAA,mBAAA,cAAA,CAAe,MAAf,CAAA,CAAA,CAAA,SAAA,EACjB,UADiB,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,EAEX,6BAFW,CAEmB,MAFnB,EAE2B,UAF3B,CAAA,EAAA,GAE2C,SAF3C,GAAA,OAAA,CAAA,EAAA,IAAA;EACjB,GAAA,CAAA,MAAA,EAGD,mBAHC,CAGmB,MAHnB,CAAA,CAAA,EAAA,IAAA;;;;;AAGmB,KAMtB,YANsB,CAAA,eAMM,KANN,CAAA,GAMe,MANf,CAAA,aAAA,CAAA,CAAA,MAAA,CAAA;KAQ7B,iBARS,CAAA,CAAA,CAAA,GAQc,CARd,SAAA,MAAA,GAAA,CAAA,MAQwC,CARxC,SAAA,KAAA,GAAA,KAAA,GAQkE,CARlE,CAAA,GAAA,KAAA;;AAMd;AAA+E;KAO1E,cALuB,CAAA,iBAKS,MALT,CAAA,MAAA,EAKwB,KALxB,CAAA,CAAA,GAKkC,QALlC,CAAA,MAKiD,QALjD,CAAA,SAKmE,KALnE,GAMxB,YANwB,CAMX,QANW,CAAA,MAMI,QANJ,CAAA,CAAA,GAAA,KAAA;KASvB,SATiD,CAAA,CAAA,CAAA,GAAA,QAA0B,MAS9C,CAT8C,IASzC,CATyC,CASvC,CATuC,CAAA,SAAA,KAAA,GAAA,KAAA,GASZ,CATY,GASR,CATQ,CASN,CATM,CAAA,EAAC;AAAA;;;;AAKJ,KAUjE,iBAViE,CAAA,eAUhC,QAVgC,CAAA,GAAA,MAUd,SAVc,CAAA,QAAkB,MAWjF,MAXiF,CAAA,SAAA,CAAA,GAW7D,MAX6D,CAAA,SAAA,CAAA,CAW3C,CAX2C,CAAA,SAWhC,QAXgC,CAAA,KAAA,EAAA,EAAA,KAAA,GAAA,EAAA,KAAA,IAAA,CAAA,GAgBzF,CAhByF,GAAA,KAAA,EAC9E,CAAA;;;;AAAD;;KAwBX,eArBkC,CAAA,eAsBtB,QAtBsB,EAAA,
|
|
1
|
+
{"version":3,"file":"unit-of-work.d.ts","names":[],"sources":["../../src/query/unit-of-work.ts"],"sourcesContent":[],"mappings":";;;;;;;;AAUA;;AAC+C,UAD9B,iBAC8B,CAAA,eADG,QACH,CAAA,CAAA;EAAf,UAAA,CAAA,mBAAA,cAAA,CAAe,MAAf,CAAA,CAAA,CAAA,SAAA,EACjB,UADiB,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,EAEX,6BAFW,CAEmB,MAFnB,EAE2B,UAF3B,CAAA,EAAA,GAE2C,SAF3C,GAAA,OAAA,CAAA,EAAA,IAAA;EACjB,GAAA,CAAA,MAAA,EAGD,mBAHC,CAGmB,MAHnB,CAAA,CAAA,EAAA,IAAA;;;;;AAGmB,KAMtB,YANsB,CAAA,eAMM,KANN,CAAA,GAMe,MANf,CAAA,aAAA,CAAA,CAAA,MAAA,CAAA;KAQ7B,iBARS,CAAA,CAAA,CAAA,GAQc,CARd,SAAA,MAAA,GAAA,CAAA,MAQwC,CARxC,SAAA,KAAA,GAAA,KAAA,GAQkE,CARlE,CAAA,GAAA,KAAA;;AAMd;AAA+E;KAO1E,cALuB,CAAA,iBAKS,MALT,CAAA,MAAA,EAKwB,KALxB,CAAA,CAAA,GAKkC,QALlC,CAAA,MAKiD,QALjD,CAAA,SAKmE,KALnE,GAMxB,YANwB,CAMX,QANW,CAAA,MAMI,QANJ,CAAA,CAAA,GAAA,KAAA;KASvB,SATiD,CAAA,CAAA,CAAA,GAAA,QAA0B,MAS9C,CAT8C,IASzC,CATyC,CASvC,CATuC,CAAA,SAAA,KAAA,GAAA,KAAA,GASZ,CATY,GASR,CATQ,CASN,CATM,CAAA,EAAC;AAAA;;;;AAKJ,KAUjE,iBAViE,CAAA,eAUhC,QAVgC,CAAA,GAAA,MAUd,SAVc,CAAA,QAAkB,MAWjF,MAXiF,CAAA,SAAA,CAAA,GAW7D,MAX6D,CAAA,SAAA,CAAA,CAW3C,CAX2C,CAAA,SAWhC,QAXgC,CAAA,KAAA,EAAA,EAAA,KAAA,GAAA,EAAA,KAAA,IAAA,CAAA,GAgBzF,CAhByF,GAAA,KAAA,EAC9E,CAAA;;;;AAAD;;KAwBX,eArBkC,CAAA,eAsBtB,QAtBsB,EAAA,mBAuBlB,cAvBkB,CAuBH,MAvBG,CAAA,CAAA,GAwBnC,UAxBmC,SAAA,SAAA,GAyBnC,IAzBmC,CAyB9B,MAzB8B,CAAA,SAAA,CAAA,EAyBX,iBAzBW,CAyBO,MAzBP,CAAA,CAAA,GA0BnC,UA1BmC,SAAA,MA0BV,MA1BU,CAAA,SAAA,CAAA,GA2BjC,IA3BiC,CA2B5B,MA3B4B,CAAA,SAAA,CAAA,EA2BT,YA3BS,CA2BI,MA3BJ,CAAA,SAAA,CAAA,CA2BsB,UA3BtB,CAAA,CAAA,CAAA,GAAA,KAAA;;;;;AAAoC,KAkC/D,uBAlC+D,CAAA,eAkCxB,QAlCwB,CAAA,GAkCZ,gBAlCY,CAmCzE,IAnCyE,CAmCpE,MAnCoE,CAAA,SAAA,CAAA,EAmCjD,cAnCiD,CAmClC,MAnCkC,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;AAM3E;;;KAmCK,6BAlC6B,CAAA,eAmCjB,QAnCiB,EAAA,mBAoCb,cApCa,CAoCE,MApCF,CAAA,CAAA,GAqC9B,gBArC8B,CAqCb,eArCa,CAqCG,MArCH,EAqCW,UArCX,CAAA,CAAA;;;;AAD6B,KA2CnD,cA3CmD,CAAA,eA2CrB,QA3CqB,CAAA,GAAA,SAAA,GAAA,CAAA,MAAA,GAAA,MA6C3C,MA7C2C,CAAA,SAAA,CAAA,CAAA;;AAQ5D;;KA0CE,WAjC+B,CAAA,eAkCnB,QAlCmB,GAkCR,QAlCQ,EAAA,gBAmClB,YAnCkB,CAmCL,MAnCK,CAAA,GAmCK,YAnCL,CAmCkB,MAnClB,CAAA,CAAA,GAAA;EAAf;;;EAEyB,QAAA,EAAA,MAAA;EAAlB;;;EACC,MAAA,CAAA,EAyClB,OAzCkB;EAClB;;;EAAmB,KAAA,CAAA,EAAA,CAAA,EAAA,EA4Cf,uBA5Ce,CA4CS,MA5CT,CAAA,EAAA,GA4CqB,SA5CrB,GAAA,OAAA;EAAxB;;AAON;EAAmD,YAAA,CAAA,EAAA;IAC5C,SAAA,EAAA,MAAA;IAAkC,SAAA,EAAA,KAAA,GAAA,MAAA;EAAf,CAAA;EAAxB;;;EAMG,KAAA,CAAA,EAAA,MAAA;EACY;;;EAEoB,MAAA,CAAA,EAAA,MAAA;EAAQ;;;EAAzB,QAAA,CAAA,EAAA,MAAA;EAKR;AAE2B;;EAMX,KAAA,CAAA,EAqClB,YArCkB,EAAA;CACG;;;;AASpB,KAiCC,QAAA,GAjCD,oBAAA,GAAA,mBAAA,GAAA,UAAA;;;;AA2BD,KAWE,kBAXF,CAAA,gBAYQ,SAZR,EAAA,eAaO,QAbP,GAakB,OAblB,CAAA,QAAA,CAAA,CAAA,MAa0C,OAb1C,CAAA,QAAA,CAAA,CAAA,CAAA,GAAA;EAAY,IAAA,EAAA,MAAA;EAMV,KAAA,EAWC,MAXO;EAKR,SAAA,EAAA,MAAA;EACM,OAAA,EAOH,WAPG,CAOS,MAPT,EAOiB,YAPjB,CAO8B,MAP9B,CAAA,CAAA;CACD,GAAA;EAAW,IAAA,EAAA,OAAA;EAAwB,KAAA,EAUvC,MAVuC;EAIvC,SAAA,EAAA,MAAA;EAEc,OAAA,EAMZ,IANY,CAMP,WANO,CAMK,MANL,CAAA,EAAA,OAAA,GAAA,UAAA,CAAA;CAAqB;;;;AAMhB,KAMpB,iBANoB,CAAA,gBAOd,SAPc,EAAA,eAQf,QARe,GAQJ,OARI,CAAA,QAAA,CAAA,CAAA,MAQoB,OARpB,CAAA,QAAA,CAAA,CAAA,CAAA,GAAA;EAAZ,IAAA,EAAA,QAAA;EAAL,KAAA,EAYF,MAZE,CAAA,MAAA,CAAA;EAAI,EAAA,EAaT,QAbS,GAAA,MAAA;EAMP,YAAA,EAAA,OAAiB;EACX,GAAA,EAQP,mBARO,CAQa,MARb,CAAA;CACD,GAAA;EAAW,IAAA,EAAA,QAAA;EAAwB,KAAA,EAWvC,MAXuC,CAAA,MAAA,CAAA;EAIvC,MAAA,EAQC,mBARD,CAQqB,MARrB,CAAA;EACH,mBAAA,EAAA,MAAA;CAEqB,GAAA;EAApB,IAAA,EAAA,QAAA;EAIE,KAAA,EAMA,MANA,CAAA,MAAA,CAAA;EACqB,EAAA,EAMxB,QANwB,GAAA,MAAA;EAApB,YAAA,EAAA,OAAA;CAKD;;;AAQb;AAaiB,UAbA,gBAaW,CAAA,OAAA,CAAA,CAAA;EAAiB,KAAA,EAZpC,OAYoC;EAIM;;;;;EAK0B,oBAAA,EAAA,MAAA,GAAA,IAAA;;;AAG7E;AAOA;AAIwC,UAvBvB,WAuBuB,CAAA,gBAvBK,SAuBL,EAAA,OAAA,CAAA,CAAA;EAAoB;;;EAOtB,yBAAA,CAAA,EAAA,EA1BN,kBA0BM,CA1Ba,OA0Bb,CAAA,CAAA,EA1BwB,OA0BxB,GAAA,IAAA;EAAsC;;;EAS3D,wBAAU,CAAA,EAAA,EA9BI,iBA8BJ,CA9BsB,OA8BtB,CAAA,CAAA,EA9BiC,gBA8BjC,CA9BkD,OA8BlD,CAAA,GAAA,IAAA;;AAQZ,KAnCH,cAAA,GAmCG;EAA4C,OAAA,EAAA,IAAA;EAAnB,kBAAA,EAAA,CAAA,MAAA,GAAA,IAAA,CAAA,EAAA;CAAkB,GAAA;EAM7C,OAAA,EAAA,KAAW;CACP;;;;AA4B8B,UA/D9B,WA+D8B,CAAA,OAAA,EAAA,aAAA,OAAA,CAAA,CAAA;EAAf;;;EAE2B,qBAAA,CAAA,cAAA,EA7DnB,OA6DmB,EAAA,CAAA,EA7DP,OA6DO,CA7DC,UA6DD,EAAA,CAAA;EAAtC;;;;;EA2BJ,oBAAA,CAAA,aAAA,EAjFqB,gBAiFrB,CAjFsC,OAiFtC,CAAA,EAAA,CAAA,EAjFmD,OAiFnD,CAjF2D,cAiF3D,CAAA;;;;;;;;AA8EA,UAtJA,UAsJA,CAAA,gBAtJ2B,SAsJ3B,EAAA,YAAA,OAAA,CAAA,CAAA;EAAsD;;;;;;;EAUT,CAAA,UAAA,EAxJ/C,SAwJ+C,EAAA,EAAA,UAAA,EAxJtB,kBAwJsB,CAxJH,OAwJG,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA;;;;;AAI7C,cAtJJ,WAsJI,CAAA,eArJA,QAqJA,EAAA,gBApJC,YAoJD,CApJc,MAoJd,CAAA,GAAA,IAAA,EAAA,WAAA,CAAA,CAAA,CAAA,CAAA;EAAI,CAAA,OAAA;EA4CR,WAAA,CAAA,SAAa,EAAA,MAAA,EAAA,KAAA,EA7Kc,MA6Kd;EAAgB;;;EAe5B,UAAA,CAAA,mBApLkB,cAoLlB,CApLiC,MAoLjC,CAAA,CAAA,CAAA,SAAA,EAnLC,UAmLD,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,EAlLO,6BAkLP,CAlLqC,MAkLrC,EAlL6C,UAkL7C,CAAA,EAAA,GAlL6D,SAkL7D,GAAA,OAAA,CAAA,EAAA,IAAA;EAwBN;;;;EAqBK,MAAA,CAAA,yBAtMqB,YAmOjB,CAnO8B,MAmOtB,CAAA,CAAA,CAAA,OAAA,EAlOZ,UAkOY,CAAA,EAjOpB,WAiOoB,CAjOR,MAiOQ,EAjOA,UAiOA,EAjOY,QAiOZ,CAAA;EAYZ;;;;EAkB2B,WAAA,CAAA,CAAA,EAAA,IAAA;EAQO;;;EAEI,YAAA,CAAA,mBA3OjB,cA2OiB,CA3OF,MA2OE,CAAA,CAAA,CAAA,SAAA,EA1OpC,UA0OoC,EAAA,SAAA,EAAA,KAAA,GAAA,MAAA,CAAA,EAAA,IAAA;EAAQ;;;EAwBZ,KAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAb;;;EAEL,MAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAY;;;EASP,QAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EACnB;;;;EA+BgE,IAAA,CAAA,WAAA,CAAA,CAAA,MAAA,EAAA,CAAA,EAAA,EA9P9D,kBA8P8D,CA9P3C,MA8P2C,EAAA,CAAA,CAAA,CAAA,EAAA,GA9P3B,kBA8P2B,CA9PR,MA8PQ,EA9PA,WA8PA,CAAA,CAAA,EA7P1E,WA6P0E,CA7P9D,MA6P8D,EA7PtD,OA6PsD,EA7P7C,WA6P6C,CAAA;EAA3B;;;EACd,KAAA,CAAA,CAAA,EAAA;IAAW,IAAA,EAAA,MAAA;IAA5C,SAAA,EAAA,MAAA;IAUO,OAAA,EA/PsC,WA+PtC,CA/PkD,MA+PlD,EA/P0D,OA+P1D,CAAA;EAC6B,CAAA,GAAA;IAAxB,IAAA,EAAA,OAAA;IAAoC,SAAA,EAAA,MAAA;IAQ1C,OAAA,EApQM,IAoQN,CApQW,WAoQX,CApQuB,MAoQvB,CAAA,EAAA,OAAA,GAAA,UAAA,CAAA;EAAY,CAAA;AAiBtB;;;;AAKO,cA9OK,aA8OL,CAAA,eA9OkC,QA8OlC,CAAA,CAAA;EAAiB,CAAA,OAAA;EAOb,WAAA,CAAA,SAAkB,EAAA,MAAA,EAAA,EAAA,EA9OO,QA8OP,GAAA,MAAA;EAAgB;;;EACU,GAAA,CAAA,MAAA,EAvO1C,mBAuO0C,CAvOtB,MAuOsB,CAAA,CAAA,EAAA,IAAA;EAAW;;;;EAMhC,KAAA,CAAA,CAAA,EAAA,IAAA;EAAoB;;;EACN,KAAA,CAAA,CAAA,EAAA;IAAa,EAAA,EAtNtD,QAsNsD,GAAA,MAAA;IAAS,YAAA,EAAA,OAAA;IAA1D,GAAA,EApNJ,mBAoNI,CApNgB,MAoNhB,CAAA;EAEL,CAAA;;;;;AAG+C,cAtM1C,aAAA,CAsM0C;EAA3C,CAAA,OAAA;EADQ,WAAA,CAAA,SAAA,EAAA,MAAA,EAAA,EAAA,EA/LiB,QA+LjB,GAAA,MAAA;EAER;;;AAUZ;EAAgD,KAAA,CAAA,CAAA,EAAA,IAAA;EACvC;;;EAC6D,KAAA,CAAA,CAAA,EAAA;IAAQ,EAAA,EAtL7D,QAsL6D,GAAA,MAAA;IAA3B,YAAA,EAAA,OAAA;EAChD,CAAA;;AAqEH;;;;AAMY,cAtPC,eAsPD,CAAA,eArPK,QAqPL,EAAA,gBApPM,YAoPN,CApPmB,MAoPnB,CAAA,GAAA,IAAA,EAAA,WAAA,CAAA,CAAA,CAAA,CAAA;EACqB,CAAA,OAAA;EAArB,WAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,EArO4B,MAqO5B;EACU;;;EAER,UAAA,CAAA,mBAhOkB,cAgOlB,CAhOiC,MAgOjC,CAAA,CAAA,CAAA,SAAA,EA/NC,UA+ND,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,EA9NO,6BA8NP,CA9NqC,MA8NrC,EA9N6C,UA8N7C,CAAA,EAAA,GA9N6D,SA8N7D,GAAA,OAAA,CAAA,EAAA,IAAA;EAAS;;;EAAV,MAAA,CAAA,yBAtMqB,YAsMrB,CAtMkC,MAsMlC,CAAA,CAAA,CAAA,OAAA,EArMA,UAqMA,CAAA,EApMR,eAoMQ,CApMQ,MAoMR,EApMgB,UAoMhB,EApM4B,QAoM5B,CAAA;EAoCA;;;EAkBa,YAAA,CAAA,mBAjPQ,cAiPR,CAjPuB,MAiPvB,CAAA,CAAA,CAAA,SAAA,EAhPX,UAgPW,EAAA,SAAA,EAAA,KAAA,GAAA,MAAA,CAAA,EAAA,IAAA;EAAZ;;;EAEU,QAAA,CAAA,IAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAS;;;;EA0BE,IAAA,CAAA,WAAA,CAAA,CAAA,MAAA,EAAA,CAAA,EAAA,EA7OlB,kBA6OkB,CA7OC,MA6OD,EAAA,CAAA,CAAA,CAAA,EAAA,GA7OiB,kBA6OjB,CA7OoC,MA6OpC,EA7O4C,WA6O5C,CAAA,CAAA,EA5O9B,eA4O8B,CA5Od,MA4Oc,EA5ON,OA4OM,EA5OG,QA4OH,GA5Oc,WA4Od,CAAA;EAAR;;;EAqCwB,KAAA,CAAA,CAAA,EAAA;IAA/B,SAAA,EAAA,MAAA,GAAA,SAAA;IAGL,MAAA,EA1QH,OA0QG,GAAA,SAAA;IAGiB,KAAA,EAAA,CAAA,CAAA,EAAA,EA5Qf,uBA4Qe,CA5QS,MA4QT,CAAA,EAAA,GA5QqB,SA4QrB,GAAA,OAAA,CAAA,GAAA,SAAA;IAAkB,YAAA,EAAA;MAA9B,SAAA,EAAA,MAAA;MAAL,SAAA,EAAA,KAAA,GAAA,MAAA;IACW,CAAA,GAAA,SAAA;IAAkB,QAAA,EAAA,MAAA,GAAA,SAAA;IAAa,KAAA,EArQ9C,YAqQ8C,EAAA,GAAA,SAAA;EAAS,CAAA;;UAlPxD,eAkPD,CAAA,CAAA,CAAA,CAAA;EAEL,GAAA,EAlPG,iBAkPH,CAlPqB,CAkPrB,CAAA,GAAA,IAAA;EACI,IAAA,EAlPA,iBAkPA,CAlPkB,CAkPlB,CAAA,EAAA;;;;;;AACJ,KA5OQ,kBA4OR,CAAA,eA5O0C,QA4O1C,EAAA,QAAA,CAAA,GAAA,QAHC,MAxOS,MAwOT,CAAA,WAAA,CAAA,GAxO+B,MAwO/B,CAAA,WAAA,CAAA,CAxOmD,CAwOnD,CAAA,SAxO8D,QAwO9D,CAAA,KAAA,cAAA,EAAA,KAAA,aAAA,CAAA,GAAA,CAAA,gBApOkB,YAoOlB,CApO+B,MAoO/B,CAAA,WAAA,CAAA,CApOmD,CAoOnD,CAAA,CAAA,OAAA,CAAA,CAAA,GAAA,IAAA,EAAA,iBAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,EAAA,CAAA,OAAA,EAlOc,eAkOd,CAlO8B,MAkO9B,CAAA,WAAA,CAAA,CAlOkD,CAkOlD,CAAA,CAAA,OAAA,CAAA,CAAA,EAAA,GAjOQ,eAiOR,CAjOwB,MAiOxB,CAAA,WAAA,CAAA,CAjO4C,CAiO5C,CAAA,CAAA,OAAA,CAAA,EAjOyD,OAiOzD,EAjOkE,cAiOlE,CAAA,EAAA,GAhOM,kBAgON,CA/NG,MA+NH,EA9NG,QA8NH,GAAA,QA7NW,CA2QiB,GA3Qb,eA2Qa,CA1QrB,YA0QqB,CA1QR,YA0QQ,EA1QM,cA0QN,EA1QsB,OA0QtB,CAAA,CAAA,CAzQrB,aAyQqB,CAAA,EACtB,CAAA,GAAA,KAAA,EACqB;;;;;AA6DxB,iBA9TQ,gBA8TR,CAAA,eA9TwC,QA8TxC,EAAA,QAAA,CAAA,CAAA,KAAA,EA7TC,MA6TD,EAAA,EAAA,EAAA,CAAA,OAAA,EA5TQ,kBA4TR,CA5T2B,MA4T3B,EAAA,CAAA,CAAA,CAAA,EAAA,GA5T2C,kBA4T3C,CA5T8D,MA4T9D,EA5TsE,QA4TtE,CAAA,CAAA,EA3TL,YA2TK,EAAA;AAG0B,iBAzPlB,gBAyPkB,CAAA,sBAxPV,SAwPU,EAAA,gCAAA,OAAA,EAAA,GAAA,EAAA,EAAA,kBAAA,OAAA,CAAA,CAAA,MAAA,EApPxB,OAoPwB,EAAA,QAAA,EAnPtB,WAmPsB,CAnPV,OAmPU,EAAA,OAAA,CAAA,EAAA,QAAA,EAlPtB,WAkPsB,CAAA,OAAA,EAlPD,SAkPC,CAAA,EAAA,OAAA,EAjPvB,UAiPuB,CAjPZ,OAiPY,EAjPH,SAiPG,CAAA,EAAA,IAAA,CAAA,EAAA,MAAA,CAAA,EA/O/B,UA+O+B,CA/OpB,OA+OoB,EA/OX,iBA+OW,EA/OQ,SA+OR,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4IC,cAvVtB,UAuVsB,CAAA,sBAtVX,SAsVW,EAAA,gCAAA,OAAA,EAAA,GAAA,EAAA,EAAA,kBAAA,OAAA,CAAA,CAAA;;sBAtUvB,mBACE,YAAY,6BACZ,qBAAqB,qBACtB,WAAW,SAAS;gBAUjB;eAID;;;;;;qBAYY,QAAQ;;;;gCAoCN,4CACT,aAAa,kBAAkB,+CAGpC,kCAGA,KAAK,YAAY,kBAAkB,2BACzC,KAAK,YAAY,kBAAkB,aAAa,SAAS,sBAC7D,WACD,aACI,mBAAmB,aAAa,kBAAkB,aAAa,UAAU,aAC7E;;;;iCA2C6B,mCACtB,mBACC,oBAAoB,kBAAkB;;;;iCA2DjB,mCACtB,eACH,wCAGO,KAAK,cAAc,kBAAkB,0BAC3C,KAAK,cAAc,kBAAkB;;;;iCAyBb,mCACtB,eACH,yCAGO,KAAK,4BACX,KAAK;;;;;sBAyBc;;;;;;4BA8BA,cAAc,mBAAmB;;;;2BAOlC,cAAc,kBAAkB;;;;;;;;;mBAYxC;;;;;6BA+BU,YAAY,SAAS;;oBAE9B;mBACD,iBAAiB"}
|
package/dist/schema/create.d.ts
CHANGED
|
@@ -58,36 +58,36 @@ interface ForeignKey {
|
|
|
58
58
|
referencedTable: AnyTable;
|
|
59
59
|
referencedColumns: AnyColumn[];
|
|
60
60
|
}
|
|
61
|
-
declare class RelationInit<TRelationType
|
|
62
|
-
type: TRelationType
|
|
63
|
-
referencedTable: TTables[TTableName
|
|
61
|
+
declare class RelationInit<TRelationType extends RelationType, TTables extends Record<string, AnyTable>, TTableName extends keyof TTables> {
|
|
62
|
+
type: TRelationType;
|
|
63
|
+
referencedTable: TTables[TTableName];
|
|
64
64
|
referencer: AnyTable;
|
|
65
65
|
on: [string, string][];
|
|
66
|
-
constructor(type: TRelationType
|
|
66
|
+
constructor(type: TRelationType, referencedTable: TTables[TTableName], referencer: AnyTable);
|
|
67
67
|
}
|
|
68
|
-
interface Index<TColumns
|
|
68
|
+
interface Index<TColumns extends AnyColumn[] = AnyColumn[], TColumnNames extends readonly string[] = readonly string[]> {
|
|
69
69
|
name: string;
|
|
70
|
-
columns: TColumns
|
|
71
|
-
columnNames: TColumnNames
|
|
70
|
+
columns: TColumns;
|
|
71
|
+
columnNames: TColumnNames;
|
|
72
72
|
unique: boolean;
|
|
73
73
|
}
|
|
74
|
-
declare class ExplicitRelationInit<TRelationType
|
|
75
|
-
init(ormName: string): Relation<TRelationType
|
|
74
|
+
declare class ExplicitRelationInit<TRelationType extends RelationType, TTables extends Record<string, AnyTable>, TTableName extends keyof TTables> extends RelationInit<TRelationType, TTables, TTableName> {
|
|
75
|
+
init(ormName: string): Relation<TRelationType, TTables[TTableName]>;
|
|
76
76
|
}
|
|
77
|
-
interface Relation<TRelationType
|
|
77
|
+
interface Relation<TRelationType extends RelationType = RelationType, TTable extends AnyTable = AnyTable> {
|
|
78
78
|
id: string;
|
|
79
79
|
name: string;
|
|
80
|
-
type: TRelationType
|
|
80
|
+
type: TRelationType;
|
|
81
81
|
table: TTable;
|
|
82
82
|
referencer: AnyTable;
|
|
83
83
|
on: [string, string][];
|
|
84
84
|
}
|
|
85
|
-
interface Table<TColumns
|
|
85
|
+
interface Table<TColumns extends Record<string, AnyColumn> = Record<string, AnyColumn>, TRelations extends Record<string, AnyRelation> = Record<string, AnyRelation>, TIndexes extends Record<string, Index> = Record<string, Index>> {
|
|
86
86
|
name: string;
|
|
87
87
|
ormName: string;
|
|
88
|
-
columns: TColumns
|
|
89
|
-
relations: TRelations
|
|
90
|
-
indexes: TIndexes
|
|
88
|
+
columns: TColumns;
|
|
89
|
+
relations: TRelations;
|
|
90
|
+
indexes: TIndexes;
|
|
91
91
|
/**
|
|
92
92
|
* Get column by name
|
|
93
93
|
*/
|
|
@@ -144,24 +144,24 @@ type TypeMap = {
|
|
|
144
144
|
date: Date;
|
|
145
145
|
timestamp: Date;
|
|
146
146
|
} & Record<`varchar(${number})`, string>;
|
|
147
|
-
declare class Column<TType
|
|
148
|
-
type: TType
|
|
147
|
+
declare class Column<TType extends keyof TypeMap, TIn = unknown, TOut = unknown> {
|
|
148
|
+
type: TType;
|
|
149
149
|
name: string;
|
|
150
150
|
ormName: string;
|
|
151
151
|
isNullable: boolean;
|
|
152
152
|
role: "external-id" | "internal-id" | "version" | "reference" | "regular";
|
|
153
153
|
isHidden: boolean;
|
|
154
154
|
default?: {
|
|
155
|
-
value: TypeMap[TType
|
|
155
|
+
value: TypeMap[TType];
|
|
156
156
|
} | {
|
|
157
157
|
dbSpecial: "now";
|
|
158
158
|
} | {
|
|
159
|
-
runtime: "cuid" | "now" | (() => TypeMap[TType
|
|
159
|
+
runtime: "cuid" | "now" | (() => TypeMap[TType]);
|
|
160
160
|
};
|
|
161
161
|
tableName: string;
|
|
162
|
-
constructor(type: TType
|
|
163
|
-
nullable<TNullable extends boolean = true>(nullable?: TNullable): Column<TType
|
|
164
|
-
hidden<THidden extends boolean = true>(hidden?: THidden): Column<TType
|
|
162
|
+
constructor(type: TType);
|
|
163
|
+
nullable<TNullable extends boolean = true>(nullable?: TNullable): Column<TType, TNullable extends true ? TIn | null : Exclude<TIn, null>, TNullable extends true ? TOut | null : Exclude<TOut, null>>;
|
|
164
|
+
hidden<THidden extends boolean = true>(hidden?: THidden): Column<TType, null, null>;
|
|
165
165
|
/**
|
|
166
166
|
* Generate default value at runtime in application code (not in the database).
|
|
167
167
|
*
|
|
@@ -184,7 +184,7 @@ declare class Column<TType$1 extends keyof TypeMap, TIn = unknown, TOut = unknow
|
|
|
184
184
|
* column("integer").defaultTo$((b) => Math.floor(Math.random() * 100)) // Custom function
|
|
185
185
|
* ```
|
|
186
186
|
*/
|
|
187
|
-
defaultTo$(value: TypeMap[TType
|
|
187
|
+
defaultTo$(value: TypeMap[TType] | ((builder: RuntimeDefaultBuilder) => RuntimeSpecial | TypeMap[TType])): Column<TType, TIn | null, TOut>;
|
|
188
188
|
/**
|
|
189
189
|
* Set a database-level default value (generated by the database, not application code).
|
|
190
190
|
*
|
|
@@ -207,13 +207,13 @@ declare class Column<TType$1 extends keyof TypeMap, TIn = unknown, TOut = unknow
|
|
|
207
207
|
* column("timestamp").defaultTo((b) => b.now())
|
|
208
208
|
* ```
|
|
209
209
|
*/
|
|
210
|
-
defaultTo(value: TypeMap[TType
|
|
210
|
+
defaultTo(value: TypeMap[TType] | ((builder: DefaultBuilder) => DBSpecial | TypeMap[TType])): Column<TType, TIn | null, TOut>;
|
|
211
211
|
/**
|
|
212
212
|
* Generate default value for the column at runtime.
|
|
213
213
|
* Used for both runtime defaults (defaultTo$) and fallback generation for
|
|
214
214
|
* database defaults (defaultTo) when the database doesn't support them.
|
|
215
215
|
*/
|
|
216
|
-
generateDefaultValue(): TypeMap[TType
|
|
216
|
+
generateDefaultValue(): TypeMap[TType] | undefined;
|
|
217
217
|
/**
|
|
218
218
|
* @description This is used for type inference only. Runtime value will be undefined.
|
|
219
219
|
* @internal
|
|
@@ -225,10 +225,10 @@ declare class Column<TType$1 extends keyof TypeMap, TIn = unknown, TOut = unknow
|
|
|
225
225
|
*/
|
|
226
226
|
get $out(): TOut;
|
|
227
227
|
}
|
|
228
|
-
declare class IdColumn<TType
|
|
228
|
+
declare class IdColumn<TType extends IdColumnType = IdColumnType, TIn = unknown, TOut = unknown> extends Column<TType, TIn, TOut> {
|
|
229
229
|
id: boolean;
|
|
230
|
-
defaultTo$(value: TypeMap[TType
|
|
231
|
-
defaultTo(value: TypeMap[TType
|
|
230
|
+
defaultTo$(value: TypeMap[TType] | ((builder: RuntimeDefaultBuilder) => RuntimeSpecial | TypeMap[TType])): IdColumn<TType, TIn | null, TOut>;
|
|
231
|
+
defaultTo(value: TypeMap[TType] | ((builder: DefaultBuilder) => DBSpecial | TypeMap[TType])): IdColumn<TType, TIn | null, TOut>;
|
|
232
232
|
}
|
|
233
233
|
/**
|
|
234
234
|
* Internal ID column - used for database-native joins and foreign keys.
|
|
@@ -246,7 +246,7 @@ declare class VersionColumn<TIn = unknown, TOut = unknown> extends Column<"integ
|
|
|
246
246
|
role: "version";
|
|
247
247
|
constructor();
|
|
248
248
|
}
|
|
249
|
-
declare function column<TType
|
|
249
|
+
declare function column<TType extends keyof TypeMap>(type: TType): Column<TType, TypeMap[TType], TypeMap[TType]>;
|
|
250
250
|
/**
|
|
251
251
|
* Create a reference column that points to another table's internal ID.
|
|
252
252
|
* This is used for foreign key relationships.
|
|
@@ -329,32 +329,32 @@ declare class FragnoReference {
|
|
|
329
329
|
get internalId(): bigint;
|
|
330
330
|
}
|
|
331
331
|
type RelationType = "one" | "many";
|
|
332
|
-
declare class TableBuilder<TColumns
|
|
332
|
+
declare class TableBuilder<TColumns extends Record<string, AnyColumn> = Record<string, AnyColumn>, TRelations extends Record<string, AnyRelation> = Record<string, AnyRelation>, TIndexes extends Record<string, Index> = Record<string, Index>> {
|
|
333
333
|
#private;
|
|
334
334
|
constructor(name: string);
|
|
335
|
-
setColumns(columns: TColumns
|
|
336
|
-
setRelations(relations: TRelations
|
|
337
|
-
setIndexes(indexes: TIndexes
|
|
335
|
+
setColumns(columns: TColumns): void;
|
|
336
|
+
setRelations(relations: TRelations): void;
|
|
337
|
+
setIndexes(indexes: TIndexes): void;
|
|
338
338
|
getIndexes(): Index[];
|
|
339
339
|
getColumnOrder(): string[];
|
|
340
340
|
/**
|
|
341
341
|
* Add a column to the table.
|
|
342
342
|
*/
|
|
343
|
-
addColumn<TColumnName extends string, TColumn extends AnyColumn>(ormName: TColumnName, col: TColumn): TableBuilder<TColumns
|
|
343
|
+
addColumn<TColumnName extends string, TColumn extends AnyColumn>(ormName: TColumnName, col: TColumn): TableBuilder<TColumns & Record<TColumnName, TColumn>, TRelations, TIndexes>;
|
|
344
344
|
/**
|
|
345
345
|
* Add a column to the table with simplified syntax.
|
|
346
346
|
*/
|
|
347
|
-
addColumn<TColumnName extends string, TType extends keyof TypeMap>(ormName: TColumnName, type: TType): TableBuilder<TColumns
|
|
347
|
+
addColumn<TColumnName extends string, TType extends keyof TypeMap>(ormName: TColumnName, type: TType): TableBuilder<TColumns & Record<TColumnName, Column<TType, TypeMap[TType], TypeMap[TType]>>, TRelations, TIndexes>;
|
|
348
348
|
/**
|
|
349
349
|
* Create an index on the specified columns.
|
|
350
350
|
*/
|
|
351
|
-
createIndex<TIndexName extends string, const TColumnNames extends readonly (string & keyof TColumns
|
|
351
|
+
createIndex<TIndexName extends string, const TColumnNames extends readonly (string & keyof TColumns)[]>(name: TIndexName, columns: TColumnNames, options?: {
|
|
352
352
|
unique?: boolean;
|
|
353
|
-
}): TableBuilder<TColumns
|
|
353
|
+
}): TableBuilder<TColumns, TRelations, TIndexes & Record<TIndexName, Index<ColumnsToTuple<TColumns, TColumnNames>, TColumnNames>>>;
|
|
354
354
|
/**
|
|
355
355
|
* Build the final table. This should be called after all columns are added.
|
|
356
356
|
*/
|
|
357
|
-
build(): Table<TColumns
|
|
357
|
+
build(): Table<TColumns, TRelations, TIndexes>;
|
|
358
358
|
}
|
|
359
359
|
interface Schema<TTables extends Record<string, AnyTable> = Record<string, AnyTable>> {
|
|
360
360
|
/**
|
|
@@ -373,16 +373,16 @@ interface Schema<TTables extends Record<string, AnyTable> = Record<string, AnyTa
|
|
|
373
373
|
* Utility type for updating a single table's relations in a schema.
|
|
374
374
|
* Used to properly type the return value of addReference.
|
|
375
375
|
*/
|
|
376
|
-
type UpdateTableRelations<TTables extends Record<string, AnyTable>, TTableName
|
|
376
|
+
type UpdateTableRelations<TTables extends Record<string, AnyTable>, TTableName extends keyof TTables, TReferenceName extends string, TReferencedTableName extends keyof TTables, TRelationType extends RelationType = RelationType> = { [K in keyof TTables]: K extends TTableName ? Table<TTables[TTableName]["columns"], TTables[TTableName]["relations"] & Record<TReferenceName, Relation<TRelationType, TTables[TReferencedTableName]>>, TTables[TTableName]["indexes"]> : TTables[K] };
|
|
377
377
|
/**
|
|
378
378
|
* Utility type for updating a single table in a schema.
|
|
379
379
|
* Used to properly type the return value of alterTable.
|
|
380
380
|
*/
|
|
381
|
-
type UpdateTable<TTables extends Record<string, AnyTable>, TTableName
|
|
381
|
+
type UpdateTable<TTables extends Record<string, AnyTable>, TTableName extends keyof TTables, TNewColumns extends Record<string, AnyColumn>, TNewRelations extends Record<string, AnyRelation>, TNewIndexes extends Record<string, Index>> = { [K in keyof TTables]: K extends TTableName ? Table<TNewColumns, TNewRelations, TNewIndexes> : TTables[K] };
|
|
382
382
|
/**
|
|
383
383
|
* Map an array of column names to a tuple of their actual column types
|
|
384
384
|
*/
|
|
385
|
-
type ColumnsToTuple<TColumns
|
|
385
|
+
type ColumnsToTuple<TColumns extends Record<string, AnyColumn>, TColumnNames extends readonly (keyof TColumns)[]> = { [K in keyof TColumnNames]: TColumnNames[K] extends keyof TColumns ? TColumns[TColumnNames[K]] : never } & AnyColumn[];
|
|
386
386
|
declare class SchemaBuilder<TTables extends Record<string, AnyTable> = {}> {
|
|
387
387
|
#private;
|
|
388
388
|
constructor(existingSchema?: Schema<TTables>);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","names":[],"sources":["../../src/schema/create.ts"],"sourcesContent":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create.d.ts","names":[],"sources":["../../src/schema/create.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/schema/serialize.js
CHANGED
|
@@ -9,6 +9,9 @@ function schemaToDBType(column, provider) {
|
|
|
9
9
|
if (provider === "sqlite") return "integer";
|
|
10
10
|
if (provider === "mssql") return "bigint";
|
|
11
11
|
}
|
|
12
|
+
if ("role" in column && column.role === "reference") {
|
|
13
|
+
if (provider === "sqlite") return "integer";
|
|
14
|
+
}
|
|
12
15
|
if (provider === "sqlite") switch (type) {
|
|
13
16
|
case "integer":
|
|
14
17
|
case "timestamp":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialize.js","names":["supportJson: SQLProvider[]"],"sources":["../../src/schema/serialize.ts"],"sourcesContent":["import type { SQLProvider } from \"../shared/providers\";\nimport type { AnyColumn } from \"./create\";\nimport { FragnoId, FragnoReference } from \"./create\";\n\nexport interface AdditionalColumnMetadata {\n length?: number;\n precision?: number;\n scale?: number;\n}\n\n/**\n * Get the possible column types that the raw DB type can map to.\n */\nexport function dbToSchemaType(\n dbType: string,\n provider: SQLProvider,\n additional: AdditionalColumnMetadata,\n): (AnyColumn[\"type\"] | \"varchar(n)\")[] {\n dbType = dbType.toLowerCase();\n if (provider === \"sqlite\") {\n switch (dbType) {\n case \"integer\":\n return [\"bool\", \"date\", \"timestamp\", \"bigint\", \"integer\"];\n case \"text\":\n return [\"json\", \"string\", \"bigint\", \"varchar(n)\"];\n case \"real\":\n case \"numeric\":\n return [\"decimal\"];\n case \"blob\":\n return [\"bigint\", \"binary\"];\n default:\n return [dbType as AnyColumn[\"type\"]];\n }\n }\n\n if (provider === \"postgresql\" || provider === \"cockroachdb\") {\n switch (dbType) {\n case \"decimal\":\n case \"real\":\n case \"numeric\":\n case \"double precision\":\n return [\"decimal\"];\n case \"timestamp\":\n case \"timestamptz\":\n return [\"timestamp\"];\n case \"varchar\": {\n const len = additional.length;\n if (len != null) {\n return [`varchar(${len})`];\n }\n return [\"string\"];\n }\n case \"text\":\n return [\"string\"];\n case \"boolean\":\n case \"bool\":\n return [\"bool\"];\n case \"bytea\":\n return [\"binary\"];\n default:\n return [dbType as AnyColumn[\"type\"]];\n }\n }\n\n if (provider === \"mysql\") {\n switch (dbType) {\n case \"bool\":\n case \"boolean\":\n return [\"bool\"];\n case \"integer\":\n case \"int\":\n return [\"integer\"];\n case \"decimal\":\n case \"numeric\":\n case \"float\":\n case \"double\":\n return [\"decimal\"];\n case \"datetime\":\n return [\"timestamp\"];\n case \"varchar\": {\n const len = additional.length;\n if (len != null) {\n return [`varchar(${len})`];\n }\n return [\"string\"];\n }\n case \"text\":\n return [\"string\"];\n case \"longblob\":\n case \"blob\":\n case \"mediumblob\":\n case \"tinyblob\":\n return [\"binary\"];\n default:\n return [dbType as AnyColumn[\"type\"]];\n }\n }\n\n if (provider === \"mssql\") {\n switch (dbType) {\n case \"int\":\n return [\"integer\"];\n case \"decimal\":\n case \"float\":\n case \"real\":\n case \"numeric\":\n return [\"decimal\"];\n case \"bit\":\n return [\"bool\"];\n case \"datetime\":\n case \"datetime2\":\n return [\"timestamp\"];\n case \"nvarchar\":\n case \"varchar\": {\n const len = additional.length;\n if (len != null) {\n return [`varchar(${len})`];\n }\n return [\"string\", \"json\"];\n }\n case \"ntext\":\n case \"text\":\n case \"varchar(max)\":\n case \"nvarchar(max)\":\n return [\"string\", \"json\"];\n case \"binary\":\n case \"varbinary\":\n return [\"binary\"];\n default:\n return [dbType as AnyColumn[\"type\"]];\n }\n }\n\n throw new Error(`unhandled database provider: ${provider}`);\n}\n\n/**\n * Database type literals that can be returned by schemaToDBType\n */\nexport type DBTypeLiteral =\n // PostgreSQL/CockroachDB types\n | \"bigserial\"\n | \"serial\"\n | \"boolean\"\n | \"bool\"\n | \"json\"\n | \"text\"\n | \"bytea\"\n | \"timestamp\"\n | \"timestamptz\"\n | \"bigint\"\n | \"integer\"\n | \"decimal\"\n | \"date\"\n // MySQL types\n | \"longblob\"\n | \"datetime\"\n // SQLite types\n | \"blob\"\n | \"real\"\n // MSSQL types\n | \"bit\"\n | \"int\"\n | \"varbinary(max)\"\n | \"varchar(max)\"\n // varchar with length parameter\n | `varchar(${number})`;\n\nexport function schemaToDBType(\n column: AnyColumn | Pick<AnyColumn, \"type\">,\n provider: SQLProvider,\n): DBTypeLiteral {\n const { type } = column;\n\n // Handle internal ID columns with auto-increment\n if (\"role\" in column && column.role === \"internal-id\") {\n if (provider === \"postgresql\" || provider === \"cockroachdb\") {\n return \"bigserial\";\n }\n if (provider === \"mysql\") {\n return \"bigint\";\n }\n if (provider === \"sqlite\") {\n return \"integer\"; // SQLite uses INTEGER for auto-increment\n }\n if (provider === \"mssql\") {\n return \"bigint\";\n }\n }\n\n if (provider === \"sqlite\") {\n switch (type) {\n case \"integer\":\n case \"timestamp\":\n case \"date\":\n case \"bool\":\n return \"integer\";\n case \"binary\":\n case \"bigint\":\n return \"blob\";\n case \"json\":\n case \"string\":\n return \"text\";\n case \"decimal\":\n return \"real\";\n default:\n // sqlite doesn't support varchar\n if (type.startsWith(\"varchar\")) {\n return \"text\";\n }\n }\n }\n\n if (provider === \"mssql\") {\n switch (type) {\n case \"bool\":\n return \"bit\";\n case \"timestamp\":\n return \"datetime\";\n case \"integer\":\n return \"int\";\n case \"string\":\n return \"varchar(max)\";\n case \"binary\":\n return \"varbinary(max)\";\n // only 2025 preview supports JSON natively\n case \"json\":\n return \"varchar(max)\";\n default:\n if (type.startsWith(\"varchar\")) {\n return type as `varchar(${number})`;\n }\n return type;\n }\n }\n\n if (provider === \"postgresql\" || provider === \"cockroachdb\") {\n switch (type) {\n case \"bool\":\n return \"boolean\";\n case \"json\":\n return \"json\";\n case \"string\":\n return \"text\";\n case \"binary\":\n return \"bytea\";\n default:\n if (type.startsWith(\"varchar\")) {\n return type as `varchar(${number})`;\n }\n return type;\n }\n }\n\n if (provider === \"mysql\") {\n switch (type) {\n case \"bool\":\n return \"boolean\";\n case \"string\":\n return \"text\";\n case \"binary\":\n return \"longblob\";\n default:\n if (type.startsWith(\"varchar\")) {\n return type as `varchar(${number})`;\n }\n return type;\n }\n }\n\n throw new Error(`cannot handle ${provider} ${type}`);\n}\n\nconst supportJson: SQLProvider[] = [\"postgresql\", \"cockroachdb\", \"mysql\"];\n\n/**\n * Parse from driver value\n */\nexport function deserialize(value: unknown, col: AnyColumn, provider: SQLProvider) {\n if (value === null) {\n return null;\n }\n\n if (!supportJson.includes(provider) && col.type === \"json\" && typeof value === \"string\") {\n return JSON.parse(value);\n }\n\n if (\n provider === \"sqlite\" &&\n (col.type === \"timestamp\" || col.type === \"date\") &&\n (typeof value === \"number\" || typeof value === \"string\")\n ) {\n return new Date(value);\n }\n\n if (col.type === \"bool\" && typeof value === \"number\") {\n return value === 1;\n }\n\n if (col.type === \"bigint\" && value instanceof Buffer) {\n return value.readBigInt64BE(0);\n }\n\n if (col.type === \"bigint\" && typeof value === \"string\") {\n return BigInt(value);\n }\n\n if (col.type === \"binary\" && value instanceof Buffer) {\n return new Uint8Array(value.buffer, value.byteOffset, value.byteLength);\n }\n\n return value;\n}\n\n/**\n * Encode to driver value\n */\nexport function serialize(value: unknown, col: AnyColumn, provider: SQLProvider) {\n if (value === null) {\n return null;\n }\n\n // Handle FragnoReference objects (for reference columns)\n if (value instanceof FragnoReference) {\n return value.internalId;\n }\n\n // Handle FragnoId objects\n if (value instanceof FragnoId) {\n // For external ID columns, use the external ID\n if (col.role === \"external-id\") {\n return value.externalId;\n }\n // For internal ID columns, use the internal ID (must be present)\n if (col.role === \"internal-id\") {\n if (!value.internalId) {\n throw new Error(`FragnoId must have internalId for internal-id column ${col.name}`);\n }\n return value.internalId;\n }\n // For reference columns, prefer internal ID if available\n if (col.role === \"reference\") {\n return value.databaseId;\n }\n // Default to external ID for other columns\n return value.externalId;\n }\n\n if (!supportJson.includes(provider) && col.type === \"json\") {\n return JSON.stringify(value);\n }\n\n if (provider === \"sqlite\" && value instanceof Date) {\n return value.getTime();\n }\n\n if (provider === \"sqlite\" && typeof value === \"boolean\") {\n return value ? 1 : 0;\n }\n\n if (provider === \"sqlite\" && typeof value === \"bigint\") {\n const buf = Buffer.alloc(8);\n buf.writeBigInt64BE(value);\n return buf;\n }\n\n // most drivers accept Buffer\n if (col.type === \"binary\" && value instanceof Uint8Array) {\n return Buffer.from(value);\n }\n\n return value;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"serialize.js","names":["supportJson: SQLProvider[]"],"sources":["../../src/schema/serialize.ts"],"sourcesContent":["import type { SQLProvider } from \"../shared/providers\";\nimport type { AnyColumn } from \"./create\";\nimport { FragnoId, FragnoReference } from \"./create\";\n\nexport interface AdditionalColumnMetadata {\n length?: number;\n precision?: number;\n scale?: number;\n}\n\n/**\n * Get the possible column types that the raw DB type can map to.\n */\nexport function dbToSchemaType(\n dbType: string,\n provider: SQLProvider,\n additional: AdditionalColumnMetadata,\n): (AnyColumn[\"type\"] | \"varchar(n)\")[] {\n dbType = dbType.toLowerCase();\n if (provider === \"sqlite\") {\n switch (dbType) {\n case \"integer\":\n return [\"bool\", \"date\", \"timestamp\", \"bigint\", \"integer\"];\n case \"text\":\n return [\"json\", \"string\", \"bigint\", \"varchar(n)\"];\n case \"real\":\n case \"numeric\":\n return [\"decimal\"];\n case \"blob\":\n return [\"bigint\", \"binary\"];\n default:\n return [dbType as AnyColumn[\"type\"]];\n }\n }\n\n if (provider === \"postgresql\" || provider === \"cockroachdb\") {\n switch (dbType) {\n case \"decimal\":\n case \"real\":\n case \"numeric\":\n case \"double precision\":\n return [\"decimal\"];\n case \"timestamp\":\n case \"timestamptz\":\n return [\"timestamp\"];\n case \"varchar\": {\n const len = additional.length;\n if (len != null) {\n return [`varchar(${len})`];\n }\n return [\"string\"];\n }\n case \"text\":\n return [\"string\"];\n case \"boolean\":\n case \"bool\":\n return [\"bool\"];\n case \"bytea\":\n return [\"binary\"];\n default:\n return [dbType as AnyColumn[\"type\"]];\n }\n }\n\n if (provider === \"mysql\") {\n switch (dbType) {\n case \"bool\":\n case \"boolean\":\n return [\"bool\"];\n case \"integer\":\n case \"int\":\n return [\"integer\"];\n case \"decimal\":\n case \"numeric\":\n case \"float\":\n case \"double\":\n return [\"decimal\"];\n case \"datetime\":\n return [\"timestamp\"];\n case \"varchar\": {\n const len = additional.length;\n if (len != null) {\n return [`varchar(${len})`];\n }\n return [\"string\"];\n }\n case \"text\":\n return [\"string\"];\n case \"longblob\":\n case \"blob\":\n case \"mediumblob\":\n case \"tinyblob\":\n return [\"binary\"];\n default:\n return [dbType as AnyColumn[\"type\"]];\n }\n }\n\n if (provider === \"mssql\") {\n switch (dbType) {\n case \"int\":\n return [\"integer\"];\n case \"decimal\":\n case \"float\":\n case \"real\":\n case \"numeric\":\n return [\"decimal\"];\n case \"bit\":\n return [\"bool\"];\n case \"datetime\":\n case \"datetime2\":\n return [\"timestamp\"];\n case \"nvarchar\":\n case \"varchar\": {\n const len = additional.length;\n if (len != null) {\n return [`varchar(${len})`];\n }\n return [\"string\", \"json\"];\n }\n case \"ntext\":\n case \"text\":\n case \"varchar(max)\":\n case \"nvarchar(max)\":\n return [\"string\", \"json\"];\n case \"binary\":\n case \"varbinary\":\n return [\"binary\"];\n default:\n return [dbType as AnyColumn[\"type\"]];\n }\n }\n\n throw new Error(`unhandled database provider: ${provider}`);\n}\n\n/**\n * Database type literals that can be returned by schemaToDBType\n */\nexport type DBTypeLiteral =\n // PostgreSQL/CockroachDB types\n | \"bigserial\"\n | \"serial\"\n | \"boolean\"\n | \"bool\"\n | \"json\"\n | \"text\"\n | \"bytea\"\n | \"timestamp\"\n | \"timestamptz\"\n | \"bigint\"\n | \"integer\"\n | \"decimal\"\n | \"date\"\n // MySQL types\n | \"longblob\"\n | \"datetime\"\n // SQLite types\n | \"blob\"\n | \"real\"\n // MSSQL types\n | \"bit\"\n | \"int\"\n | \"varbinary(max)\"\n | \"varchar(max)\"\n // varchar with length parameter\n | `varchar(${number})`;\n\nexport function schemaToDBType(\n column: AnyColumn | Pick<AnyColumn, \"type\">,\n provider: SQLProvider,\n): DBTypeLiteral {\n const { type } = column;\n\n // Handle internal ID columns with auto-increment\n if (\"role\" in column && column.role === \"internal-id\") {\n if (provider === \"postgresql\" || provider === \"cockroachdb\") {\n return \"bigserial\";\n }\n if (provider === \"mysql\") {\n return \"bigint\";\n }\n if (provider === \"sqlite\") {\n return \"integer\"; // SQLite uses INTEGER for auto-increment\n }\n if (provider === \"mssql\") {\n return \"bigint\";\n }\n }\n\n if (\"role\" in column && column.role === \"reference\") {\n if (provider === \"sqlite\") {\n return \"integer\";\n }\n // Other providers use bigint for references\n }\n\n if (provider === \"sqlite\") {\n switch (type) {\n case \"integer\":\n case \"timestamp\":\n case \"date\":\n case \"bool\":\n return \"integer\";\n case \"binary\":\n case \"bigint\":\n return \"blob\";\n case \"json\":\n case \"string\":\n return \"text\";\n case \"decimal\":\n return \"real\";\n default:\n // sqlite doesn't support varchar\n if (type.startsWith(\"varchar\")) {\n return \"text\";\n }\n }\n }\n\n if (provider === \"mssql\") {\n switch (type) {\n case \"bool\":\n return \"bit\";\n case \"timestamp\":\n return \"datetime\";\n case \"integer\":\n return \"int\";\n case \"string\":\n return \"varchar(max)\";\n case \"binary\":\n return \"varbinary(max)\";\n // only 2025 preview supports JSON natively\n case \"json\":\n return \"varchar(max)\";\n default:\n if (type.startsWith(\"varchar\")) {\n return type as `varchar(${number})`;\n }\n return type;\n }\n }\n\n if (provider === \"postgresql\" || provider === \"cockroachdb\") {\n switch (type) {\n case \"bool\":\n return \"boolean\";\n case \"json\":\n return \"json\";\n case \"string\":\n return \"text\";\n case \"binary\":\n return \"bytea\";\n default:\n if (type.startsWith(\"varchar\")) {\n return type as `varchar(${number})`;\n }\n return type;\n }\n }\n\n if (provider === \"mysql\") {\n switch (type) {\n case \"bool\":\n return \"boolean\";\n case \"string\":\n return \"text\";\n case \"binary\":\n return \"longblob\";\n default:\n if (type.startsWith(\"varchar\")) {\n return type as `varchar(${number})`;\n }\n return type;\n }\n }\n\n throw new Error(`cannot handle ${provider} ${type}`);\n}\n\nconst supportJson: SQLProvider[] = [\"postgresql\", \"cockroachdb\", \"mysql\"];\n\n/**\n * Parse from driver value\n */\nexport function deserialize(value: unknown, col: AnyColumn, provider: SQLProvider) {\n if (value === null) {\n return null;\n }\n\n if (!supportJson.includes(provider) && col.type === \"json\" && typeof value === \"string\") {\n return JSON.parse(value);\n }\n\n if (\n provider === \"sqlite\" &&\n (col.type === \"timestamp\" || col.type === \"date\") &&\n (typeof value === \"number\" || typeof value === \"string\")\n ) {\n return new Date(value);\n }\n\n if (col.type === \"bool\" && typeof value === \"number\") {\n return value === 1;\n }\n\n if (col.type === \"bigint\" && value instanceof Buffer) {\n return value.readBigInt64BE(0);\n }\n\n if (col.type === \"bigint\" && typeof value === \"string\") {\n return BigInt(value);\n }\n\n if (col.type === \"binary\" && value instanceof Buffer) {\n return new Uint8Array(value.buffer, value.byteOffset, value.byteLength);\n }\n\n return value;\n}\n\n/**\n * Encode to driver value\n */\nexport function serialize(value: unknown, col: AnyColumn, provider: SQLProvider) {\n if (value === null) {\n return null;\n }\n\n // Handle FragnoReference objects (for reference columns)\n if (value instanceof FragnoReference) {\n return value.internalId;\n }\n\n // Handle FragnoId objects\n if (value instanceof FragnoId) {\n // For external ID columns, use the external ID\n if (col.role === \"external-id\") {\n return value.externalId;\n }\n // For internal ID columns, use the internal ID (must be present)\n if (col.role === \"internal-id\") {\n if (!value.internalId) {\n throw new Error(`FragnoId must have internalId for internal-id column ${col.name}`);\n }\n return value.internalId;\n }\n // For reference columns, prefer internal ID if available\n if (col.role === \"reference\") {\n return value.databaseId;\n }\n // Default to external ID for other columns\n return value.externalId;\n }\n\n if (!supportJson.includes(provider) && col.type === \"json\") {\n return JSON.stringify(value);\n }\n\n if (provider === \"sqlite\" && value instanceof Date) {\n return value.getTime();\n }\n\n if (provider === \"sqlite\" && typeof value === \"boolean\") {\n return value ? 1 : 0;\n }\n\n if (provider === \"sqlite\" && typeof value === \"bigint\") {\n const buf = Buffer.alloc(8);\n buf.writeBigInt64BE(value);\n return buf;\n }\n\n // most drivers accept Buffer\n if (col.type === \"binary\" && value instanceof Uint8Array) {\n return Buffer.from(value);\n }\n\n return value;\n}\n"],"mappings":"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"}
|