@fragno-dev/db 0.2.2 → 0.4.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/.turbo/turbo-build.log +404 -175
- package/CHANGELOG.md +109 -0
- package/README.md +54 -9
- package/dist/adapters/adapters.d.ts +23 -21
- package/dist/adapters/adapters.d.ts.map +1 -1
- package/dist/adapters/adapters.js.map +1 -1
- package/dist/adapters/generic-sql/driver-config.d.ts +16 -1
- package/dist/adapters/generic-sql/driver-config.d.ts.map +1 -1
- package/dist/adapters/generic-sql/driver-config.js +23 -1
- package/dist/adapters/generic-sql/driver-config.js.map +1 -1
- package/dist/adapters/generic-sql/generic-sql-adapter.d.ts +24 -9
- package/dist/adapters/generic-sql/generic-sql-adapter.d.ts.map +1 -1
- package/dist/adapters/generic-sql/generic-sql-adapter.js +60 -22
- package/dist/adapters/generic-sql/generic-sql-adapter.js.map +1 -1
- package/dist/adapters/generic-sql/generic-sql-uow-executor.js +169 -3
- package/dist/adapters/generic-sql/generic-sql-uow-executor.js.map +1 -1
- package/dist/adapters/generic-sql/migration/cold-kysely.js.map +1 -1
- package/dist/adapters/generic-sql/migration/dialect/mysql.js +25 -6
- package/dist/adapters/generic-sql/migration/dialect/mysql.js.map +1 -1
- package/dist/adapters/generic-sql/migration/dialect/postgres.js +7 -6
- package/dist/adapters/generic-sql/migration/dialect/postgres.js.map +1 -1
- package/dist/adapters/generic-sql/migration/dialect/sqlite.js +193 -16
- package/dist/adapters/generic-sql/migration/dialect/sqlite.js.map +1 -1
- package/dist/adapters/generic-sql/migration/executor.d.ts.map +1 -1
- package/dist/adapters/generic-sql/migration/executor.js +30 -3
- package/dist/adapters/generic-sql/migration/executor.js.map +1 -1
- package/dist/adapters/generic-sql/migration/prepared-migrations.d.ts.map +1 -1
- package/dist/adapters/generic-sql/migration/prepared-migrations.js +9 -9
- package/dist/adapters/generic-sql/migration/prepared-migrations.js.map +1 -1
- package/dist/adapters/generic-sql/migration/sql-generator.js +75 -52
- package/dist/adapters/generic-sql/migration/sql-generator.js.map +1 -1
- package/dist/adapters/generic-sql/query/create-sql-query-compiler.js +7 -6
- package/dist/adapters/generic-sql/query/create-sql-query-compiler.js.map +1 -1
- package/dist/adapters/generic-sql/query/cursor-utils.js +42 -4
- package/dist/adapters/generic-sql/query/cursor-utils.js.map +1 -1
- package/dist/adapters/generic-sql/query/db-now-sql.js +27 -0
- package/dist/adapters/generic-sql/query/db-now-sql.js.map +1 -0
- package/dist/adapters/generic-sql/query/generic-sql-uow-operation-compiler.js +32 -21
- package/dist/adapters/generic-sql/query/generic-sql-uow-operation-compiler.js.map +1 -1
- package/dist/adapters/generic-sql/query/select-builder.js +5 -3
- package/dist/adapters/generic-sql/query/select-builder.js.map +1 -1
- package/dist/adapters/generic-sql/query/sql-query-compiler.js +49 -18
- package/dist/adapters/generic-sql/query/sql-query-compiler.js.map +1 -1
- package/dist/adapters/generic-sql/query/where-builder.js +43 -29
- package/dist/adapters/generic-sql/query/where-builder.js.map +1 -1
- package/dist/adapters/generic-sql/sqlite-storage.d.ts +13 -0
- package/dist/adapters/generic-sql/sqlite-storage.d.ts.map +1 -0
- package/dist/adapters/generic-sql/sqlite-storage.js +15 -0
- package/dist/adapters/generic-sql/sqlite-storage.js.map +1 -0
- package/dist/adapters/generic-sql/uow-decoder.js +6 -2
- package/dist/adapters/generic-sql/uow-decoder.js.map +1 -1
- package/dist/adapters/generic-sql/uow-encoder.js +27 -8
- package/dist/adapters/generic-sql/uow-encoder.js.map +1 -1
- package/dist/adapters/in-memory/condition-evaluator.js +135 -0
- package/dist/adapters/in-memory/condition-evaluator.js.map +1 -0
- package/dist/adapters/in-memory/errors.d.ts +13 -0
- package/dist/adapters/in-memory/errors.d.ts.map +1 -0
- package/dist/adapters/in-memory/errors.js +23 -0
- package/dist/adapters/in-memory/errors.js.map +1 -0
- package/dist/adapters/in-memory/in-memory-adapter.d.ts +27 -0
- package/dist/adapters/in-memory/in-memory-adapter.d.ts.map +1 -0
- package/dist/adapters/in-memory/in-memory-adapter.js +196 -0
- package/dist/adapters/in-memory/in-memory-adapter.js.map +1 -0
- package/dist/adapters/in-memory/in-memory-uow.js +871 -0
- package/dist/adapters/in-memory/in-memory-uow.js.map +1 -0
- package/dist/adapters/in-memory/index.d.ts +4 -0
- package/dist/adapters/in-memory/index.js +4 -0
- package/dist/adapters/in-memory/options.d.ts +30 -0
- package/dist/adapters/in-memory/options.d.ts.map +1 -0
- package/dist/adapters/in-memory/options.js +62 -0
- package/dist/adapters/in-memory/options.js.map +1 -0
- package/dist/adapters/in-memory/reference-resolution.js +26 -0
- package/dist/adapters/in-memory/reference-resolution.js.map +1 -0
- package/dist/adapters/in-memory/sorted-array-index.js +129 -0
- package/dist/adapters/in-memory/sorted-array-index.js.map +1 -0
- package/dist/adapters/in-memory/store.js +71 -0
- package/dist/adapters/in-memory/store.js.map +1 -0
- package/dist/adapters/in-memory/value-comparison.js +28 -0
- package/dist/adapters/in-memory/value-comparison.js.map +1 -0
- package/dist/adapters/shared/from-unit-of-work-compiler.js +51 -24
- package/dist/adapters/shared/from-unit-of-work-compiler.js.map +1 -1
- package/dist/adapters/shared/uow-operation-compiler.js +11 -11
- package/dist/adapters/shared/uow-operation-compiler.js.map +1 -1
- package/dist/adapters/sql/index.d.ts +5 -0
- package/dist/adapters/sql/index.js +4 -0
- package/dist/browser/adapters/adapters.d.ts +61 -0
- package/dist/browser/adapters/adapters.d.ts.map +1 -0
- package/dist/browser/adapters/generic-sql/migration/executor.d.ts +15 -0
- package/dist/browser/adapters/generic-sql/migration/executor.d.ts.map +1 -0
- package/dist/browser/adapters/generic-sql/migration/prepared-migrations.d.ts +66 -0
- package/dist/browser/adapters/generic-sql/migration/prepared-migrations.d.ts.map +1 -0
- package/dist/browser/adapters/generic-sql/sqlite-storage.d.ts +11 -0
- package/dist/browser/adapters/generic-sql/sqlite-storage.d.ts.map +1 -0
- package/dist/browser/adapters/in-memory/in-memory-adapter.d.ts +5 -0
- package/dist/browser/adapters/in-memory/index.d.ts +2 -0
- package/dist/browser/adapters/in-memory/options.d.ts +1 -0
- package/dist/browser/db-fragment-definition-builder.d.ts +237 -0
- package/dist/browser/db-fragment-definition-builder.d.ts.map +1 -0
- package/dist/browser/durable-hooks.d.ts +3 -0
- package/dist/browser/fragments/internal-fragment.d.ts +317 -0
- package/dist/browser/fragments/internal-fragment.d.ts.map +1 -0
- package/dist/browser/fragments/internal-fragment.schema.d.ts +1 -0
- package/dist/browser/hooks/durable-hooks-logger.d.ts +10 -0
- package/dist/browser/hooks/durable-hooks-logger.d.ts.map +1 -0
- package/dist/browser/hooks/hooks.d.ts +146 -0
- package/dist/browser/hooks/hooks.d.ts.map +1 -0
- package/dist/browser/id.js +1 -0
- package/dist/browser/internal/adapter-registry.d.ts +4 -0
- package/dist/browser/internal/outbox-state.d.ts +2 -0
- package/dist/browser/mod.d.ts +15 -0
- package/dist/browser/mod.d.ts.map +1 -0
- package/dist/browser/mod.js +17 -0
- package/dist/browser/mod.js.map +1 -0
- package/dist/browser/mod2.d.ts +48 -0
- package/dist/browser/mod2.d.ts.map +1 -0
- package/dist/browser/naming/sql-naming.d.ts +19 -0
- package/dist/browser/naming/sql-naming.d.ts.map +1 -0
- package/dist/browser/outbox/outbox.d.ts +21 -0
- package/dist/browser/outbox/outbox.d.ts.map +1 -0
- package/dist/browser/query/column-defaults.js +1 -0
- package/dist/browser/query/condition-builder.d.ts +44 -0
- package/dist/browser/query/condition-builder.d.ts.map +1 -0
- package/dist/browser/query/condition-builder.js +97 -0
- package/dist/browser/query/condition-builder.js.map +1 -0
- package/dist/browser/query/cursor.d.ts +105 -0
- package/dist/browser/query/cursor.d.ts.map +1 -0
- package/dist/browser/query/cursor.js +150 -0
- package/dist/browser/query/cursor.js.map +1 -0
- package/dist/browser/query/db-now.d.ts +22 -0
- package/dist/browser/query/db-now.d.ts.map +1 -0
- package/dist/browser/query/db-now.js +33 -0
- package/dist/browser/query/db-now.js.map +1 -0
- package/dist/browser/query/orm/orm.d.ts +18 -0
- package/dist/browser/query/orm/orm.d.ts.map +1 -0
- package/dist/browser/query/simple-query-interface.d.ts +108 -0
- package/dist/browser/query/simple-query-interface.d.ts.map +1 -0
- package/dist/browser/query/unit-of-work/execute-unit-of-work.d.ts +423 -0
- package/dist/browser/query/unit-of-work/execute-unit-of-work.d.ts.map +1 -0
- package/dist/browser/query/unit-of-work/execute-unit-of-work.js +507 -0
- package/dist/browser/query/unit-of-work/execute-unit-of-work.js.map +1 -0
- package/dist/browser/query/unit-of-work/retry-policy.d.ts +23 -0
- package/dist/browser/query/unit-of-work/retry-policy.d.ts.map +1 -0
- package/dist/browser/query/unit-of-work/retry-policy.js +40 -0
- package/dist/browser/query/unit-of-work/retry-policy.js.map +1 -0
- package/dist/browser/query/unit-of-work/unit-of-work.d.ts +703 -0
- package/dist/browser/query/unit-of-work/unit-of-work.d.ts.map +1 -0
- package/dist/browser/query/unit-of-work/unit-of-work.js +1206 -0
- package/dist/browser/query/unit-of-work/unit-of-work.js.map +1 -0
- package/dist/browser/query/value-encoding.js +38 -0
- package/dist/browser/query/value-encoding.js.map +1 -0
- package/dist/browser/schema/create.d.ts +326 -0
- package/dist/browser/schema/create.d.ts.map +1 -0
- package/dist/browser/schema/create.js +89 -0
- package/dist/browser/schema/create.js.map +1 -0
- package/dist/browser/schema/generate-id.js +28 -0
- package/dist/browser/schema/generate-id.js.map +1 -0
- package/dist/browser/shared/providers.d.ts +6 -0
- package/dist/browser/shared/providers.d.ts.map +1 -0
- package/dist/browser/sql-driver/connection/connection-provider.d.ts +13 -0
- package/dist/browser/sql-driver/connection/connection-provider.d.ts.map +1 -0
- package/dist/browser/sql-driver/dialect-adapter/dialect-adapter.d.ts +7 -0
- package/dist/browser/sql-driver/dialect-adapter/dialect-adapter.d.ts.map +1 -0
- package/dist/browser/sql-driver/driver/runtime-driver.d.ts +23 -0
- package/dist/browser/sql-driver/driver/runtime-driver.d.ts.map +1 -0
- package/dist/browser/sql-driver/query-executor/plugin.d.ts +17 -0
- package/dist/browser/sql-driver/query-executor/plugin.d.ts.map +1 -0
- package/dist/browser/sql-driver/query-executor/query-executor.d.ts +36 -0
- package/dist/browser/sql-driver/query-executor/query-executor.d.ts.map +1 -0
- package/dist/browser/sql-driver/sql-driver-adapter.d.ts +29 -0
- package/dist/browser/sql-driver/sql-driver-adapter.d.ts.map +1 -0
- package/dist/browser/sql-driver/sql-driver.d.ts +38 -0
- package/dist/browser/sql-driver/sql-driver.d.ts.map +1 -0
- package/dist/browser/sync/commands.d.ts +15 -0
- package/dist/browser/sync/commands.d.ts.map +1 -0
- package/dist/browser/sync/commands.js +27 -0
- package/dist/browser/sync/commands.js.map +1 -0
- package/dist/browser/sync/types.d.ts +63 -0
- package/dist/browser/sync/types.d.ts.map +1 -0
- package/dist/browser/util/types.d.ts +8 -0
- package/dist/browser/util/types.d.ts.map +1 -0
- package/dist/browser/with-database.d.ts +29 -0
- package/dist/browser/with-database.d.ts.map +1 -0
- package/dist/client.d.ts +4 -0
- package/dist/client.js +5 -0
- package/dist/db-fragment-definition-builder.d.ts +101 -33
- package/dist/db-fragment-definition-builder.d.ts.map +1 -1
- package/dist/db-fragment-definition-builder.js +450 -60
- package/dist/db-fragment-definition-builder.js.map +1 -1
- package/dist/dispatchers/cloudflare-do/dispatcher.d.ts +20 -0
- package/dist/dispatchers/cloudflare-do/dispatcher.d.ts.map +1 -0
- package/dist/dispatchers/cloudflare-do/dispatcher.js +147 -0
- package/dist/dispatchers/cloudflare-do/dispatcher.js.map +1 -0
- package/dist/dispatchers/cloudflare-do/index.d.ts +11 -0
- package/dist/dispatchers/cloudflare-do/index.d.ts.map +1 -0
- package/dist/dispatchers/cloudflare-do/index.js +31 -0
- package/dist/dispatchers/cloudflare-do/index.js.map +1 -0
- package/dist/dispatchers/node/dispatcher.d.ts +14 -0
- package/dist/dispatchers/node/dispatcher.d.ts.map +1 -0
- package/dist/dispatchers/node/dispatcher.js +80 -0
- package/dist/dispatchers/node/dispatcher.js.map +1 -0
- package/dist/dispatchers/node/index.d.ts +12 -0
- package/dist/dispatchers/node/index.d.ts.map +1 -0
- package/dist/dispatchers/node/index.js +27 -0
- package/dist/dispatchers/node/index.js.map +1 -0
- package/dist/durable-hooks.d.ts +31 -0
- package/dist/durable-hooks.d.ts.map +1 -0
- package/dist/durable-hooks.js +23 -0
- package/dist/durable-hooks.js.map +1 -0
- package/dist/fragments/internal-fragment.d.ts +186 -8
- package/dist/fragments/internal-fragment.d.ts.map +1 -1
- package/dist/fragments/internal-fragment.js +203 -38
- package/dist/fragments/internal-fragment.js.map +1 -1
- package/dist/fragments/internal-fragment.routes.js +164 -0
- package/dist/fragments/internal-fragment.routes.js.map +1 -0
- package/dist/fragments/internal-fragment.schema.d.ts +15 -0
- package/dist/fragments/internal-fragment.schema.d.ts.map +1 -0
- package/dist/fragments/internal-fragment.schema.js +39 -0
- package/dist/fragments/internal-fragment.schema.js.map +1 -0
- package/dist/hooks/durable-hooks-logger.d.ts +10 -0
- package/dist/hooks/durable-hooks-logger.d.ts.map +1 -0
- package/dist/hooks/durable-hooks-logger.js +75 -0
- package/dist/hooks/durable-hooks-logger.js.map +1 -0
- package/dist/hooks/durable-hooks-processor.d.ts +1 -0
- package/dist/hooks/durable-hooks-processor.js +80 -0
- package/dist/hooks/durable-hooks-processor.js.map +1 -0
- package/dist/hooks/durable-hooks-runtime.js +44 -0
- package/dist/hooks/durable-hooks-runtime.js.map +1 -0
- package/dist/hooks/hooks.d.ts +100 -1
- package/dist/hooks/hooks.d.ts.map +1 -1
- package/dist/hooks/hooks.js +254 -27
- package/dist/hooks/hooks.js.map +1 -1
- package/dist/id.d.ts +2 -2
- package/dist/id.js +2 -2
- package/dist/internal/adapter-registry.d.ts +11 -0
- package/dist/internal/adapter-registry.d.ts.map +1 -0
- package/dist/internal/adapter-registry.js +135 -0
- package/dist/internal/adapter-registry.js.map +1 -0
- package/dist/internal/outbox-state.d.ts +2 -0
- package/dist/internal/outbox-state.js +26 -0
- package/dist/internal/outbox-state.js.map +1 -0
- package/dist/migration-engine/auto-from-schema.d.ts +33 -0
- package/dist/migration-engine/auto-from-schema.d.ts.map +1 -0
- package/dist/migration-engine/auto-from-schema.js +223 -37
- package/dist/migration-engine/auto-from-schema.js.map +1 -1
- package/dist/migration-engine/generation-engine.d.ts +16 -10
- package/dist/migration-engine/generation-engine.d.ts.map +1 -1
- package/dist/migration-engine/generation-engine.js +86 -35
- package/dist/migration-engine/generation-engine.js.map +1 -1
- package/dist/migration-engine/shared.d.ts +113 -0
- package/dist/migration-engine/shared.d.ts.map +1 -0
- package/dist/migration-engine/shared.js.map +1 -1
- package/dist/mod.d.ts +20 -12
- package/dist/mod.d.ts.map +1 -1
- package/dist/mod.js +18 -12
- package/dist/mod.js.map +1 -1
- package/dist/naming/sql-naming.d.ts +19 -0
- package/dist/naming/sql-naming.d.ts.map +1 -0
- package/dist/naming/sql-naming.js +116 -0
- package/dist/naming/sql-naming.js.map +1 -0
- package/dist/outbox/outbox-builder.js +156 -0
- package/dist/outbox/outbox-builder.js.map +1 -0
- package/dist/outbox/outbox.d.ts +54 -0
- package/dist/outbox/outbox.d.ts.map +1 -0
- package/dist/outbox/outbox.js +37 -0
- package/dist/outbox/outbox.js.map +1 -0
- package/dist/query/column-defaults.js +20 -4
- package/dist/query/column-defaults.js.map +1 -1
- package/dist/query/condition-builder.d.ts +7 -1
- package/dist/query/condition-builder.d.ts.map +1 -1
- package/dist/query/condition-builder.js +5 -1
- package/dist/query/condition-builder.js.map +1 -1
- package/dist/query/cursor-client.d.ts +105 -0
- package/dist/query/cursor-client.d.ts.map +1 -0
- package/dist/query/cursor-client.js +165 -0
- package/dist/query/cursor-client.js.map +1 -0
- package/dist/query/cursor.d.ts +3 -1
- package/dist/query/cursor.d.ts.map +1 -1
- package/dist/query/cursor.js +51 -14
- package/dist/query/cursor.js.map +1 -1
- package/dist/query/db-now.d.ts +22 -0
- package/dist/query/db-now.d.ts.map +1 -0
- package/dist/query/db-now.js +35 -0
- package/dist/query/db-now.js.map +1 -0
- package/dist/query/orm/orm.js.map +1 -1
- package/dist/query/serialize/create-sql-serializer.js +5 -4
- package/dist/query/serialize/create-sql-serializer.js.map +1 -1
- package/dist/query/serialize/dialect/mysql-serializer.js +12 -6
- package/dist/query/serialize/dialect/mysql-serializer.js.map +1 -1
- package/dist/query/serialize/dialect/postgres-serializer.js +25 -7
- package/dist/query/serialize/dialect/postgres-serializer.js.map +1 -1
- package/dist/query/serialize/dialect/sqlite-serializer.js +60 -12
- package/dist/query/serialize/dialect/sqlite-serializer.js.map +1 -1
- package/dist/query/serialize/sql-serializer.js +2 -2
- package/dist/query/serialize/sql-serializer.js.map +1 -1
- package/dist/query/simple-query-interface.d.ts +13 -4
- package/dist/query/simple-query-interface.d.ts.map +1 -1
- package/dist/query/unit-of-work/execute-unit-of-work.d.ts +37 -2
- package/dist/query/unit-of-work/execute-unit-of-work.d.ts.map +1 -1
- package/dist/query/unit-of-work/execute-unit-of-work.js +50 -24
- package/dist/query/unit-of-work/execute-unit-of-work.js.map +1 -1
- package/dist/query/unit-of-work/unit-of-work.d.ts +92 -30
- package/dist/query/unit-of-work/unit-of-work.d.ts.map +1 -1
- package/dist/query/unit-of-work/unit-of-work.js +136 -11
- package/dist/query/unit-of-work/unit-of-work.js.map +1 -1
- package/dist/query/value-decoding.js +16 -6
- package/dist/query/value-decoding.js.map +1 -1
- package/dist/query/value-encoding.js +29 -9
- package/dist/query/value-encoding.js.map +1 -1
- package/dist/schema/create.d.ts +103 -35
- package/dist/schema/create.d.ts.map +1 -1
- package/dist/schema/create.js +172 -58
- package/dist/schema/create.js.map +1 -1
- package/dist/schema/generate-id.js +2 -2
- package/dist/schema/generate-id.js.map +1 -1
- package/dist/schema/type-conversion/create-sql-type-mapper.js +4 -3
- package/dist/schema/type-conversion/create-sql-type-mapper.js.map +1 -1
- package/dist/schema/type-conversion/dialect/sqlite.js +9 -0
- package/dist/schema/type-conversion/dialect/sqlite.js.map +1 -1
- package/dist/schema/validator.d.ts +10 -0
- package/dist/schema/validator.d.ts.map +1 -0
- package/dist/schema/validator.js +123 -0
- package/dist/schema/validator.js.map +1 -0
- package/dist/schema-output/drizzle.d.ts +30 -0
- package/dist/schema-output/drizzle.d.ts.map +1 -0
- package/dist/{adapters/drizzle/generate.js → schema-output/drizzle.js} +88 -60
- package/dist/schema-output/drizzle.js.map +1 -0
- package/dist/schema-output/prisma.d.ts +17 -0
- package/dist/schema-output/prisma.d.ts.map +1 -0
- package/dist/schema-output/prisma.js +307 -0
- package/dist/schema-output/prisma.js.map +1 -0
- package/dist/sql-driver/dialects/durable-object-dialect.js +3 -9
- package/dist/sql-driver/dialects/durable-object-dialect.js.map +1 -1
- package/dist/sql-driver/query-executor/default-query-executor.js.map +1 -1
- package/dist/sql-driver/query-executor/query-executor-base.js.map +1 -1
- package/dist/sql-driver/sql-driver-adapter.js.map +1 -1
- package/dist/sql-driver/sql.js.map +1 -1
- package/dist/sync/commands.d.ts +15 -0
- package/dist/sync/commands.d.ts.map +1 -0
- package/dist/sync/commands.js +27 -0
- package/dist/sync/commands.js.map +1 -0
- package/dist/sync/index.d.ts +4 -0
- package/dist/sync/index.js +4 -0
- package/dist/sync/read-tracking.d.ts +25 -0
- package/dist/sync/read-tracking.d.ts.map +1 -0
- package/dist/sync/read-tracking.js +148 -0
- package/dist/sync/read-tracking.js.map +1 -0
- package/dist/sync/submit.js +213 -0
- package/dist/sync/submit.js.map +1 -0
- package/dist/sync/types.d.ts +63 -0
- package/dist/sync/types.d.ts.map +1 -0
- package/dist/util/default-database-adapter.js +66 -0
- package/dist/util/default-database-adapter.js.map +1 -0
- package/dist/with-database.d.ts +3 -6
- package/dist/with-database.d.ts.map +1 -1
- package/dist/with-database.js +8 -7
- package/dist/with-database.js.map +1 -1
- package/package.json +62 -55
- package/src/adapters/adapters.ts +33 -26
- package/src/adapters/drizzle/migrate-drizzle.test.ts +99 -41
- package/src/adapters/drizzle/migration-parity-drizzle-kit.test.ts +601 -0
- package/src/adapters/drizzle/test-utils.ts +13 -8
- package/src/adapters/generic-sql/driver-config.ts +38 -0
- package/src/adapters/generic-sql/generic-sql-adapter.test.ts +10 -8
- package/src/adapters/generic-sql/generic-sql-adapter.ts +117 -34
- package/src/adapters/generic-sql/generic-sql-uow-executor.test.ts +55 -0
- package/src/adapters/generic-sql/generic-sql-uow-executor.ts +297 -3
- package/src/adapters/generic-sql/migration/adapter-migration-parity.test.ts +120 -0
- package/src/adapters/generic-sql/migration/cold-kysely.ts +1 -0
- package/src/adapters/generic-sql/migration/dialect/mysql.test.ts +27 -8
- package/src/adapters/generic-sql/migration/dialect/mysql.ts +47 -8
- package/src/adapters/generic-sql/migration/dialect/postgres.test.ts +28 -9
- package/src/adapters/generic-sql/migration/dialect/postgres.ts +9 -4
- package/src/adapters/generic-sql/migration/dialect/sqlite.test.ts +839 -8
- package/src/adapters/generic-sql/migration/dialect/sqlite.ts +396 -53
- package/src/adapters/generic-sql/migration/executor.test.ts +52 -0
- package/src/adapters/generic-sql/migration/executor.ts +47 -4
- package/src/adapters/generic-sql/migration/prepared-migrations.test.ts +238 -46
- package/src/adapters/generic-sql/migration/prepared-migrations.ts +21 -13
- package/src/adapters/generic-sql/migration/sql-generator.ts +145 -66
- package/src/adapters/generic-sql/query/create-sql-query-compiler.ts +11 -8
- package/src/adapters/generic-sql/query/cursor-utils.test.ts +272 -0
- package/src/adapters/generic-sql/query/cursor-utils.ts +42 -7
- package/src/adapters/generic-sql/query/db-now-sql.ts +49 -0
- package/src/adapters/generic-sql/query/generic-sql-uow-operation-compiler.test.ts +171 -35
- package/src/adapters/generic-sql/query/generic-sql-uow-operation-compiler.ts +53 -40
- package/src/adapters/generic-sql/query/select-builder.test.ts +16 -11
- package/src/adapters/generic-sql/query/select-builder.ts +7 -3
- package/src/adapters/generic-sql/query/sql-query-compiler.test.ts +75 -6
- package/src/adapters/generic-sql/query/sql-query-compiler.ts +129 -24
- package/src/adapters/generic-sql/query/where-builder.test.ts +96 -20
- package/src/adapters/generic-sql/query/where-builder.ts +112 -41
- package/src/adapters/{kysely/kysely-adapter-pglite.test.ts → generic-sql/sql-adapter-pglite-migrations.test.ts} +11 -20
- package/src/adapters/generic-sql/sql-adapter-pglite-pagination.test.ts +851 -0
- package/src/adapters/{drizzle/drizzle-adapter-pglite.test.ts → generic-sql/sql-adapter-pglite-queries.test.ts} +18 -15
- package/src/adapters/generic-sql/{test/generic-drizzle-adapter-sqlite3.test.ts → sql-adapter-sqlite3-driver.test.ts} +282 -14
- package/src/adapters/{drizzle/drizzle-adapter-sqlite3.test.ts → generic-sql/sql-adapter-sqlite3-uow.test.ts} +129 -12
- package/src/adapters/{kysely/kysely-adapter-sqlocal.test.ts → generic-sql/sql-adapter-sqlocal.test.ts} +9 -7
- package/src/adapters/generic-sql/sqlite-storage.ts +20 -0
- package/src/adapters/generic-sql/uow-decoder.test.ts +5 -4
- package/src/adapters/generic-sql/uow-decoder.ts +23 -5
- package/src/adapters/generic-sql/uow-encoder.test.ts +36 -3
- package/src/adapters/generic-sql/uow-encoder.ts +48 -13
- package/src/adapters/in-memory/condition-evaluator.test.ts +194 -0
- package/src/adapters/in-memory/condition-evaluator.ts +280 -0
- package/src/adapters/in-memory/errors.ts +20 -0
- package/src/adapters/in-memory/in-memory-adapter.ts +388 -0
- package/src/adapters/in-memory/in-memory-uow.mutations.test.ts +344 -0
- package/src/adapters/in-memory/in-memory-uow.retrieval.test.ts +255 -0
- package/src/adapters/in-memory/in-memory-uow.ts +1724 -0
- package/src/adapters/in-memory/index.ts +3 -0
- package/src/adapters/in-memory/options.test.ts +42 -0
- package/src/adapters/in-memory/options.ts +91 -0
- package/src/adapters/in-memory/outbox.test.ts +361 -0
- package/src/adapters/in-memory/reference-resolution.test.ts +51 -0
- package/src/adapters/in-memory/reference-resolution.ts +67 -0
- package/src/adapters/in-memory/sorted-array-index.test.ts +124 -0
- package/src/adapters/in-memory/sorted-array-index.ts +228 -0
- package/src/adapters/in-memory/store.test.ts +69 -0
- package/src/adapters/in-memory/store.ts +145 -0
- package/src/adapters/in-memory/value-comparison.ts +53 -0
- package/src/adapters/in-memory/value-normalization.test.ts +58 -0
- package/src/adapters/prisma/prisma-adapter-sqlite3.test.ts +1207 -0
- package/src/adapters/shared/from-unit-of-work-compiler.ts +159 -47
- package/src/adapters/shared/uow-operation-compiler.ts +28 -18
- package/src/adapters/sql/index.ts +12 -0
- package/src/browser/mod.ts +64 -0
- package/src/client.ts +19 -0
- package/src/db-fragment-definition-builder.test.ts +845 -53
- package/src/db-fragment-definition-builder.ts +911 -95
- package/src/db-fragment-instantiator.test.ts +210 -94
- package/src/db-fragment-integration.test.ts +17 -12
- package/src/dispatchers/cloudflare-do/dispatcher.ts +204 -0
- package/src/dispatchers/cloudflare-do/index.test.ts +206 -0
- package/src/dispatchers/cloudflare-do/index.ts +63 -0
- package/src/dispatchers/node/dispatcher.ts +112 -0
- package/src/dispatchers/node/index.test.ts +120 -0
- package/src/dispatchers/node/index.ts +50 -0
- package/src/durable-hooks.test.ts +80 -0
- package/src/durable-hooks.ts +67 -0
- package/src/fragments/internal-fragment.routes.test.ts +570 -0
- package/src/fragments/internal-fragment.routes.ts +334 -0
- package/src/fragments/internal-fragment.schema.ts +95 -0
- package/src/fragments/internal-fragment.test.ts +505 -83
- package/src/fragments/internal-fragment.ts +453 -70
- package/src/hooks/durable-hooks-logger.ts +126 -0
- package/src/hooks/durable-hooks-processor.pglite.test.ts +87 -0
- package/src/hooks/durable-hooks-processor.test.ts +282 -0
- package/src/hooks/durable-hooks-processor.ts +173 -0
- package/src/hooks/durable-hooks-runtime.test.ts +65 -0
- package/src/hooks/durable-hooks-runtime.ts +81 -0
- package/src/hooks/hooks.test.ts +455 -34
- package/src/hooks/hooks.ts +501 -34
- package/src/id.test.ts +34 -0
- package/src/id.ts +1 -3
- package/src/internal/adapter-registry.test.ts +93 -0
- package/src/internal/adapter-registry.ts +239 -0
- package/src/internal/outbox-state.ts +43 -0
- package/src/migration-engine/auto-from-schema.test.ts +107 -14
- package/src/migration-engine/auto-from-schema.ts +365 -44
- package/src/migration-engine/create.test.ts +4 -3
- package/src/migration-engine/create.ts +1 -1
- package/src/migration-engine/generation-engine.test.ts +292 -110
- package/src/migration-engine/generation-engine.ts +117 -66
- package/src/migration-engine/shared.ts +14 -0
- package/src/mod.ts +95 -39
- package/src/naming/sql-naming.ts +181 -0
- package/src/outbox/outbox-builder.ts +241 -0
- package/src/outbox/outbox.test.ts +424 -0
- package/src/outbox/outbox.ts +139 -0
- package/src/query/column-defaults.ts +42 -4
- package/src/query/condition-builder.test.ts +18 -3
- package/src/query/condition-builder.ts +7 -0
- package/src/query/cursor-client.test.ts +70 -0
- package/src/query/cursor-client.ts +263 -0
- package/src/query/cursor.test.ts +119 -20
- package/src/query/cursor.ts +88 -27
- package/src/query/db-now.ts +73 -0
- package/src/query/orm/orm.ts +2 -2
- package/src/query/query-type.test.ts +4 -3
- package/src/query/serialize/create-sql-serializer.ts +10 -5
- package/src/query/serialize/dialect/mysql-serializer.ts +13 -5
- package/src/query/serialize/dialect/postgres-serializer.ts +35 -5
- package/src/query/serialize/dialect/sqlite-serializer.test.ts +90 -3
- package/src/query/serialize/dialect/sqlite-serializer.ts +108 -12
- package/src/query/serialize/sql-serializer.ts +4 -4
- package/src/query/simple-query-interface.ts +15 -4
- package/src/query/unit-of-work/execute-unit-of-work.test.ts +372 -10
- package/src/query/unit-of-work/execute-unit-of-work.ts +87 -27
- package/src/query/unit-of-work/retry-policy.test.ts +1 -0
- package/src/query/unit-of-work/tx-builder.test.ts +73 -1
- package/src/query/unit-of-work/unit-of-work-coordinator.test.ts +17 -16
- package/src/query/unit-of-work/unit-of-work-types.test.ts +42 -12
- package/src/query/unit-of-work/unit-of-work.test.ts +196 -39
- package/src/query/unit-of-work/unit-of-work.ts +309 -38
- package/src/query/value-decoding.test.ts +63 -4
- package/src/query/value-decoding.ts +32 -6
- package/src/query/value-encoding.test.ts +86 -2
- package/src/query/value-encoding.ts +56 -6
- package/src/schema/create.test.ts +293 -47
- package/src/schema/create.ts +406 -70
- package/src/schema/generate-id.test.ts +3 -2
- package/src/schema/generate-id.ts +2 -2
- package/src/schema/serialize.test.ts +18 -5
- package/src/schema/type-conversion/create-sql-type-mapper.ts +8 -3
- package/src/schema/type-conversion/dialect/sqlite.ts +18 -0
- package/src/schema/type-conversion/type-mapping.test.ts +26 -1
- package/src/schema/validator.test.ts +199 -0
- package/src/schema/validator.ts +232 -0
- package/src/{adapters/drizzle/generate.test.ts → schema-output/drizzle.test.ts} +232 -129
- package/src/{adapters/drizzle/generate.ts → schema-output/drizzle.ts} +155 -99
- package/src/schema-output/prisma.test.ts +694 -0
- package/src/schema-output/prisma.ts +593 -0
- package/src/sql-driver/better-sqlite3.test.ts +5 -3
- package/src/sql-driver/dialects/durable-object-dialect.ts +3 -8
- package/src/sql-driver/query-executor/default-query-executor.ts +1 -1
- package/src/sql-driver/query-executor/query-executor-base.ts +1 -1
- package/src/sql-driver/query-executor/query-executor.ts +1 -1
- package/src/sql-driver/sql-driver-adapter.ts +2 -2
- package/src/sql-driver/sql.ts +2 -1
- package/src/sql-driver/sqlocal.test.ts +4 -2
- package/src/sync/commands.test.ts +39 -0
- package/src/sync/commands.ts +51 -0
- package/src/sync/conflict-checker.test.ts +450 -0
- package/src/sync/conflict-checker.ts +248 -0
- package/src/sync/index.ts +14 -0
- package/src/sync/plan.ts +9 -0
- package/src/sync/read-tracking.test.ts +177 -0
- package/src/sync/read-tracking.ts +287 -0
- package/src/sync/submit.test.ts +205 -0
- package/src/sync/submit.ts +328 -0
- package/src/sync/types.ts +80 -0
- package/src/util/default-database-adapter.ts +119 -0
- package/src/with-database.ts +20 -31
- package/tsconfig.json +1 -1
- package/tsdown.config.ts +38 -24
- package/vitest.config.ts +1 -0
- package/dist/adapters/drizzle/drizzle-adapter.d.ts +0 -20
- package/dist/adapters/drizzle/drizzle-adapter.d.ts.map +0 -1
- package/dist/adapters/drizzle/drizzle-adapter.js +0 -27
- package/dist/adapters/drizzle/drizzle-adapter.js.map +0 -1
- package/dist/adapters/drizzle/generate.d.ts +0 -30
- package/dist/adapters/drizzle/generate.d.ts.map +0 -1
- package/dist/adapters/drizzle/generate.js.map +0 -1
- package/dist/adapters/kysely/kysely-adapter.d.ts +0 -19
- package/dist/adapters/kysely/kysely-adapter.d.ts.map +0 -1
- package/dist/adapters/kysely/kysely-adapter.js +0 -17
- package/dist/adapters/kysely/kysely-adapter.js.map +0 -1
- package/dist/adapters/shared/table-name-mapper.d.ts +0 -12
- package/dist/adapters/shared/table-name-mapper.d.ts.map +0 -1
- package/dist/adapters/shared/table-name-mapper.js +0 -43
- package/dist/adapters/shared/table-name-mapper.js.map +0 -1
- package/dist/node_modules/.pnpm/rou3@0.7.10/node_modules/rou3/dist/index.js +0 -165
- package/dist/node_modules/.pnpm/rou3@0.7.10/node_modules/rou3/dist/index.js.map +0 -1
- package/dist/packages/fragno/dist/api/bind-services.js +0 -20
- package/dist/packages/fragno/dist/api/bind-services.js.map +0 -1
- package/dist/packages/fragno/dist/api/error.js +0 -48
- package/dist/packages/fragno/dist/api/error.js.map +0 -1
- package/dist/packages/fragno/dist/api/fragment-definition-builder.js +0 -320
- package/dist/packages/fragno/dist/api/fragment-definition-builder.js.map +0 -1
- package/dist/packages/fragno/dist/api/fragment-instantiator.js +0 -525
- package/dist/packages/fragno/dist/api/fragment-instantiator.js.map +0 -1
- package/dist/packages/fragno/dist/api/fragno-response.js +0 -73
- package/dist/packages/fragno/dist/api/fragno-response.js.map +0 -1
- package/dist/packages/fragno/dist/api/internal/response-stream.js +0 -81
- package/dist/packages/fragno/dist/api/internal/response-stream.js.map +0 -1
- package/dist/packages/fragno/dist/api/internal/route.js +0 -10
- package/dist/packages/fragno/dist/api/internal/route.js.map +0 -1
- package/dist/packages/fragno/dist/api/mutable-request-state.js +0 -97
- package/dist/packages/fragno/dist/api/mutable-request-state.js.map +0 -1
- package/dist/packages/fragno/dist/api/request-context-storage.js +0 -43
- package/dist/packages/fragno/dist/api/request-context-storage.js.map +0 -1
- package/dist/packages/fragno/dist/api/request-input-context.js +0 -118
- package/dist/packages/fragno/dist/api/request-input-context.js.map +0 -1
- package/dist/packages/fragno/dist/api/request-middleware.js +0 -83
- package/dist/packages/fragno/dist/api/request-middleware.js.map +0 -1
- package/dist/packages/fragno/dist/api/request-output-context.js +0 -119
- package/dist/packages/fragno/dist/api/request-output-context.js.map +0 -1
- package/dist/packages/fragno/dist/api/route.js +0 -17
- package/dist/packages/fragno/dist/api/route.js.map +0 -1
- package/dist/packages/fragno/dist/internal/symbols.js +0 -10
- package/dist/packages/fragno/dist/internal/symbols.js.map +0 -1
- package/dist/schema-generator/schema-generator.d.ts +0 -15
- package/dist/schema-generator/schema-generator.d.ts.map +0 -1
- package/src/adapters/drizzle/drizzle-adapter.ts +0 -39
- package/src/adapters/kysely/kysely-adapter.ts +0 -27
- package/src/adapters/shared/table-name-mapper.ts +0 -50
- package/src/schema-generator/schema-generator.ts +0 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"value-encoding.js","names":["#referencedTable","#externalIdValue","result: Record<string, unknown>","externalIdForSubquery: string | undefined"],"sources":["../../src/query/value-encoding.ts"],"sourcesContent":["import type { AnyTable, AnyColumn } from \"../schema/create\";\nimport { FragnoId, FragnoReference } from \"../schema/create\";\nimport {
|
|
1
|
+
{"version":3,"file":"value-encoding.js","names":["#referencedTable","#externalIdValue","result: Record<string, unknown>","externalIdForSubquery: string | undefined"],"sources":["../../src/query/value-encoding.ts"],"sourcesContent":["import type { NamingResolver } from \"../naming/sql-naming\";\nimport type { AnyTable, AnyColumn } from \"../schema/create\";\nimport { FragnoId, FragnoReference } from \"../schema/create\";\nimport {\n generateDatabaseDefault,\n generateRuntimeDefault,\n type RuntimeDefaultContext,\n} from \"./column-defaults\";\n\n/**\n * Marker class for reference column values that need subquery resolution.\n * When a reference column receives a string (external ID), this marker tells\n * the query builder to generate a subquery to look up the internal ID.\n * @internal\n */\nexport class ReferenceSubquery {\n #referencedTable: AnyTable;\n #externalIdValue: string;\n\n constructor(referencedTable: AnyTable, externalIdValue: string) {\n this.#referencedTable = referencedTable;\n this.#externalIdValue = externalIdValue;\n }\n\n get referencedTable() {\n return this.#referencedTable;\n }\n\n get externalIdValue() {\n return this.#externalIdValue;\n }\n}\n\n/**\n * Resolves FragnoId or FragnoReference objects to their appropriate primitive values.\n *\n * This function handles the Fragno ID system's conversion to database values:\n * - FragnoReference objects are resolved to their internal IDs\n * - FragnoId objects are resolved based on the column role:\n * - external-id: uses the external ID\n * - internal-id: uses the internal ID (must be present)\n * - reference: uses databaseId (internal ID if available, else external ID)\n * - other: uses the external ID by default\n *\n * @param value - The value to resolve (may be FragnoId, FragnoReference, or any other value)\n * @param col - The column schema definition\n * @returns The resolved primitive value, or the original value if not a FragnoId/FragnoReference\n * @throws Error if internal ID is required but not available\n * @internal\n */\nexport function resolveFragnoIdValue(value: unknown, col: AnyColumn): unknown {\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 === undefined) {\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, else external ID\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 return value;\n}\n\n/**\n * Encodes a record of values from the application format to resolved format.\n *\n * This function:\n * - Transforms object keys from ORM names to database column names\n * - Resolves FragnoId/FragnoReference objects to primitive values\n * - Generates default values for undefined columns\n * - Creates ReferenceSubquery markers for external ID lookups\n *\n * Note: This function does NOT serialize values (Date → number, bigint → Buffer, etc.).\n * Use UnitOfWorkEncoder.encode() to apply driver-specific serialization after this step.\n *\n * @param values - The record of values to encode in application format\n * @param table - The table schema definition containing column information\n * @param generateDefault - Whether to generate default values for undefined columns\n * @returns A record with database column names and resolved (but not serialized) values\n *\n * @example\n * ```ts\n * const encoded = encodeValues(\n * { userId: 123, createdAt: new Date() },\n * userTable,\n * true\n * );\n * // Returns: { user_id: 123, created_at: Date } (not yet serialized)\n * ```\n */\nexport function encodeValues(\n values: Record<string, unknown>,\n table: AnyTable,\n generateDefault: boolean,\n runtimeDefaults: RuntimeDefaultContext = {},\n resolver?: NamingResolver,\n): Record<string, unknown> {\n const result: Record<string, unknown> = {};\n\n for (const k in table.columns) {\n const col = table.columns[k];\n\n // Skip internal ID - never provided by user, auto-generated by database\n if (col.role === \"internal-id\") {\n continue;\n }\n let value = values[k];\n\n if (generateDefault && value === undefined) {\n // Only generate runtime defaults (defaultTo$), not static defaults (defaultTo).\n // Static defaults should be handled by the database via DEFAULT constraints.\n value = generateRuntimeDefault(col, runtimeDefaults);\n }\n\n if (value !== undefined) {\n const physicalColumnName = resolver ? resolver.getColumnName(table.name, col.name) : col.name;\n\n // Handle reference columns: strings or FragnoIds without internal IDs need subqueries\n if (col.role === \"reference\") {\n let needsSubquery = false;\n let externalIdForSubquery: string | undefined;\n\n if (typeof value === \"string\") {\n // String external ID - needs subquery\n needsSubquery = true;\n externalIdForSubquery = value;\n } else if (value instanceof FragnoId && value.internalId === undefined) {\n // FragnoId without internal ID - needs subquery\n needsSubquery = true;\n externalIdForSubquery = value.externalId;\n } else if (value instanceof FragnoId && value.internalId !== undefined) {\n // FragnoId with internal ID - use it directly (will be serialized later)\n result[physicalColumnName] = value.internalId;\n continue;\n } else if (value instanceof FragnoReference) {\n // FragnoReference - use internal ID directly (will be serialized later)\n result[physicalColumnName] = value.internalId;\n continue;\n }\n\n if (needsSubquery) {\n const relation = Object.values(table.relations).find((rel) =>\n rel.on.some(([localCol]) => localCol === k),\n );\n if (relation) {\n result[physicalColumnName] = new ReferenceSubquery(\n relation.table,\n externalIdForSubquery!,\n );\n continue;\n }\n throw new Error(`Reference column ${k} not found in table ${table.name}`);\n }\n }\n\n // Resolve FragnoId/FragnoReference to primitive values (serialization happens later)\n const resolvedValue = resolveFragnoIdValue(value, col);\n result[physicalColumnName] = resolvedValue;\n }\n }\n\n return result;\n}\n\n/**\n * Encode values and apply database defaults in-process.\n *\n * This is intended for adapters that cannot rely on database DEFAULT constraints,\n * such as the in-memory adapter.\n *\n * @internal\n */\nexport function encodeValuesWithDbDefaults(\n values: Record<string, unknown>,\n table: AnyTable,\n runtimeDefaults: RuntimeDefaultContext = {},\n resolver?: NamingResolver,\n): Record<string, unknown> {\n const resolved = encodeValues(values, table, true, runtimeDefaults, resolver);\n\n for (const columnKey of Object.keys(table.columns)) {\n const column = table.columns[columnKey];\n if (column.role === \"internal-id\") {\n continue;\n }\n\n const physicalColumnName = resolver\n ? resolver.getColumnName(table.name, column.name)\n : column.name;\n if (Object.prototype.hasOwnProperty.call(resolved, physicalColumnName)) {\n continue;\n }\n\n const fallback = generateDatabaseDefault(column, runtimeDefaults);\n if (fallback !== undefined) {\n resolved[physicalColumnName] = fallback;\n }\n }\n\n return resolved;\n}\n"],"mappings":";;;;;;;;;;AAeA,IAAa,oBAAb,MAA+B;CAC7B;CACA;CAEA,YAAY,iBAA2B,iBAAyB;AAC9D,QAAKA,kBAAmB;AACxB,QAAKC,kBAAmB;;CAG1B,IAAI,kBAAkB;AACpB,SAAO,MAAKD;;CAGd,IAAI,kBAAkB;AACpB,SAAO,MAAKC;;;;;;;;;;;;;;;;;;;;AAqBhB,SAAgB,qBAAqB,OAAgB,KAAyB;AAE5E,KAAI,iBAAiB,gBACnB,QAAO,MAAM;AAIf,KAAI,iBAAiB,UAAU;AAE7B,MAAI,IAAI,SAAS,cACf,QAAO,MAAM;AAGf,MAAI,IAAI,SAAS,eAAe;AAC9B,OAAI,MAAM,eAAe,OACvB,OAAM,IAAI,MAAM,wDAAwD,IAAI,OAAO;AAErF,UAAO,MAAM;;AAGf,MAAI,IAAI,SAAS,YACf,QAAO,MAAM;AAGf,SAAO,MAAM;;AAGf,QAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BT,SAAgB,aACd,QACA,OACA,iBACA,kBAAyC,EAAE,EAC3C,UACyB;CACzB,MAAMC,SAAkC,EAAE;AAE1C,MAAK,MAAM,KAAK,MAAM,SAAS;EAC7B,MAAM,MAAM,MAAM,QAAQ;AAG1B,MAAI,IAAI,SAAS,cACf;EAEF,IAAI,QAAQ,OAAO;AAEnB,MAAI,mBAAmB,UAAU,OAG/B,SAAQ,uBAAuB,KAAK,gBAAgB;AAGtD,MAAI,UAAU,QAAW;GACvB,MAAM,qBAAqB,WAAW,SAAS,cAAc,MAAM,MAAM,IAAI,KAAK,GAAG,IAAI;AAGzF,OAAI,IAAI,SAAS,aAAa;IAC5B,IAAI,gBAAgB;IACpB,IAAIC;AAEJ,QAAI,OAAO,UAAU,UAAU;AAE7B,qBAAgB;AAChB,6BAAwB;eACf,iBAAiB,YAAY,MAAM,eAAe,QAAW;AAEtE,qBAAgB;AAChB,6BAAwB,MAAM;eACrB,iBAAiB,YAAY,MAAM,eAAe,QAAW;AAEtE,YAAO,sBAAsB,MAAM;AACnC;eACS,iBAAiB,iBAAiB;AAE3C,YAAO,sBAAsB,MAAM;AACnC;;AAGF,QAAI,eAAe;KACjB,MAAM,WAAW,OAAO,OAAO,MAAM,UAAU,CAAC,MAAM,QACpD,IAAI,GAAG,MAAM,CAAC,cAAc,aAAa,EAAE,CAC5C;AACD,SAAI,UAAU;AACZ,aAAO,sBAAsB,IAAI,kBAC/B,SAAS,OACT,sBACD;AACD;;AAEF,WAAM,IAAI,MAAM,oBAAoB,EAAE,sBAAsB,MAAM,OAAO;;;AAM7E,UAAO,sBADe,qBAAqB,OAAO,IAAI;;;AAK1D,QAAO;;;;;;;;;;AAWT,SAAgB,2BACd,QACA,OACA,kBAAyC,EAAE,EAC3C,UACyB;CACzB,MAAM,WAAW,aAAa,QAAQ,OAAO,MAAM,iBAAiB,SAAS;AAE7E,MAAK,MAAM,aAAa,OAAO,KAAK,MAAM,QAAQ,EAAE;EAClD,MAAM,SAAS,MAAM,QAAQ;AAC7B,MAAI,OAAO,SAAS,cAClB;EAGF,MAAM,qBAAqB,WACvB,SAAS,cAAc,MAAM,MAAM,OAAO,KAAK,GAC/C,OAAO;AACX,MAAI,OAAO,UAAU,eAAe,KAAK,UAAU,mBAAmB,CACpE;EAGF,MAAM,WAAW,wBAAwB,QAAQ,gBAAgB;AACjE,MAAI,aAAa,OACf,UAAS,sBAAsB;;AAInC,QAAO"}
|
package/dist/schema/create.d.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
|
+
import { DbNow } from "../query/db-now.js";
|
|
2
|
+
import { Prettify } from "../util/types.js";
|
|
1
3
|
import { generateId } from "./generate-id.js";
|
|
4
|
+
import { FragnoDbValidationError } from "./validator.js";
|
|
5
|
+
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
2
6
|
|
|
3
7
|
//#region src/schema/create.d.ts
|
|
4
8
|
type AnySchema = Schema<Record<string, AnyTable>>;
|
|
@@ -18,6 +22,20 @@ type TableSubOperation = {
|
|
|
18
22
|
name: string;
|
|
19
23
|
columns: string[];
|
|
20
24
|
unique: boolean;
|
|
25
|
+
} | {
|
|
26
|
+
type: "rename-column";
|
|
27
|
+
from: string;
|
|
28
|
+
to: string;
|
|
29
|
+
} | {
|
|
30
|
+
type: "drop-column";
|
|
31
|
+
name: string;
|
|
32
|
+
} | {
|
|
33
|
+
type: "update-column";
|
|
34
|
+
columnName: string;
|
|
35
|
+
column: AnyColumn;
|
|
36
|
+
updateNullable: boolean;
|
|
37
|
+
updateDefault: boolean;
|
|
38
|
+
updateDataType: boolean;
|
|
21
39
|
} | {
|
|
22
40
|
type: "add-foreign-key";
|
|
23
41
|
name: string;
|
|
@@ -51,6 +69,7 @@ type SchemaOperation = {
|
|
|
51
69
|
table: string;
|
|
52
70
|
column: string;
|
|
53
71
|
};
|
|
72
|
+
foreignKey?: boolean;
|
|
54
73
|
};
|
|
55
74
|
};
|
|
56
75
|
interface ForeignKey {
|
|
@@ -65,7 +84,10 @@ declare class RelationInit<TRelationType extends RelationType, TTables extends R
|
|
|
65
84
|
referencedTable: TTables[TTableName];
|
|
66
85
|
referencer: AnyTable;
|
|
67
86
|
on: [string, string][];
|
|
68
|
-
|
|
87
|
+
foreignKey: boolean;
|
|
88
|
+
constructor(type: TRelationType, referencedTable: TTables[TTableName], referencer: AnyTable, options?: {
|
|
89
|
+
foreignKey?: boolean;
|
|
90
|
+
});
|
|
69
91
|
}
|
|
70
92
|
interface Index<TColumns extends AnyColumn[] = AnyColumn[], TColumnNames extends readonly string[] = readonly string[]> {
|
|
71
93
|
name: string;
|
|
@@ -74,22 +96,39 @@ interface Index<TColumns extends AnyColumn[] = AnyColumn[], TColumnNames extends
|
|
|
74
96
|
unique: boolean;
|
|
75
97
|
}
|
|
76
98
|
declare class ExplicitRelationInit<TRelationType extends RelationType, TTables extends Record<string, AnyTable>, TTableName extends keyof TTables> extends RelationInit<TRelationType, TTables, TTableName> {
|
|
77
|
-
init(
|
|
99
|
+
init(name: string): Relation<TRelationType, TTables[TTableName]>;
|
|
78
100
|
}
|
|
79
101
|
interface Relation<TRelationType extends RelationType = RelationType, TTable extends AnyTable = AnyTable> {
|
|
80
102
|
id: string;
|
|
81
103
|
name: string;
|
|
82
104
|
type: TRelationType;
|
|
105
|
+
foreignKey?: boolean;
|
|
83
106
|
table: TTable;
|
|
84
107
|
referencer: AnyTable;
|
|
85
108
|
on: [string, string][];
|
|
86
109
|
}
|
|
110
|
+
type PickNullable<T> = { [P in keyof T as null extends T[P] ? P : never]: T[P] };
|
|
111
|
+
type PickNotNullable<T> = { [P in keyof T as null extends T[P] ? never : P]: T[P] };
|
|
112
|
+
type RawInsertValuesFromColumns<TColumns extends Record<string, AnyColumn>> = { [K in keyof TColumns as string extends K ? never : K]: TColumns[K]["$in"] };
|
|
113
|
+
type TableInsertValuesFromColumns<TColumns extends Record<string, AnyColumn>> = Prettify<Partial<PickNullable<RawInsertValuesFromColumns<TColumns>>> & PickNotNullable<RawInsertValuesFromColumns<TColumns>>>;
|
|
114
|
+
type TableInsertValues<T extends AnyTable> = TableInsertValuesFromColumns<T["columns"]>;
|
|
115
|
+
type TableUnknownKeysMode = "strip" | "strict";
|
|
116
|
+
type TableValidationOptions = {
|
|
117
|
+
unknownKeys?: TableUnknownKeysMode;
|
|
118
|
+
};
|
|
87
119
|
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>> {
|
|
120
|
+
/**
|
|
121
|
+
* Standard Schema-compatible validator for insert values.
|
|
122
|
+
*/
|
|
123
|
+
"~standard": StandardSchemaV1.Props<TableInsertValuesFromColumns<TColumns>, TableInsertValuesFromColumns<TColumns>>;
|
|
88
124
|
name: string;
|
|
89
|
-
ormName: string;
|
|
90
125
|
columns: TColumns;
|
|
91
126
|
relations: TRelations;
|
|
92
127
|
indexes: TIndexes;
|
|
128
|
+
/**
|
|
129
|
+
* Validate insert values at runtime.
|
|
130
|
+
*/
|
|
131
|
+
validate: (value: unknown, options?: TableValidationOptions) => TableInsertValuesFromColumns<TColumns>;
|
|
93
132
|
/**
|
|
94
133
|
* Get column by name
|
|
95
134
|
*/
|
|
@@ -146,24 +185,23 @@ type TypeMap = {
|
|
|
146
185
|
date: Date;
|
|
147
186
|
timestamp: Date;
|
|
148
187
|
} & Record<`varchar(${number})`, string>;
|
|
149
|
-
declare class Column<TType extends keyof TypeMap, TIn = unknown, TOut = unknown> {
|
|
150
|
-
type: TType;
|
|
188
|
+
declare class Column<TType$1 extends keyof TypeMap, TIn$1 = unknown, TOut$1 = unknown> {
|
|
189
|
+
type: TType$1;
|
|
151
190
|
name: string;
|
|
152
|
-
ormName: string;
|
|
153
191
|
isNullable: boolean;
|
|
154
192
|
role: "external-id" | "internal-id" | "version" | "reference" | "regular";
|
|
155
193
|
isHidden: boolean;
|
|
156
194
|
default?: {
|
|
157
|
-
value: TypeMap[TType];
|
|
195
|
+
value: TypeMap[TType$1];
|
|
158
196
|
} | {
|
|
159
197
|
dbSpecial: "now";
|
|
160
198
|
} | {
|
|
161
|
-
runtime: "cuid" | "now" | (() => TypeMap[TType]);
|
|
199
|
+
runtime: "cuid" | "now" | (() => TypeMap[TType$1]);
|
|
162
200
|
};
|
|
163
201
|
tableName: string;
|
|
164
|
-
constructor(type: TType);
|
|
165
|
-
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>>;
|
|
166
|
-
hidden<THidden extends boolean = true>(hidden?: THidden): Column<TType, null, null>;
|
|
202
|
+
constructor(type: TType$1);
|
|
203
|
+
nullable<TNullable extends boolean = true>(nullable?: TNullable): Column<TType$1, TNullable extends true ? TIn$1 | null : Exclude<TIn$1, null>, TNullable extends true ? TOut$1 | null : Exclude<TOut$1, null>>;
|
|
204
|
+
hidden<THidden extends boolean = true>(hidden?: THidden): Column<TType$1, null, null>;
|
|
167
205
|
/**
|
|
168
206
|
* Generate default value at runtime in application code (not in the database).
|
|
169
207
|
*
|
|
@@ -186,7 +224,7 @@ declare class Column<TType extends keyof TypeMap, TIn = unknown, TOut = unknown>
|
|
|
186
224
|
* column("integer").defaultTo$((b) => Math.floor(Math.random() * 100)) // Custom function
|
|
187
225
|
* ```
|
|
188
226
|
*/
|
|
189
|
-
defaultTo$(value: TypeMap[TType] | ((builder: RuntimeDefaultBuilder) => RuntimeSpecial | TypeMap[TType])): Column<TType, TIn | null, TOut>;
|
|
227
|
+
defaultTo$(value: TypeMap[TType$1] | ((builder: RuntimeDefaultBuilder) => RuntimeSpecial | TypeMap[TType$1])): Column<TType$1, TIn$1 | null, TOut$1>;
|
|
190
228
|
/**
|
|
191
229
|
* Set a database-level default value (generated by the database, not application code).
|
|
192
230
|
*
|
|
@@ -209,34 +247,34 @@ declare class Column<TType extends keyof TypeMap, TIn = unknown, TOut = unknown>
|
|
|
209
247
|
* column("timestamp").defaultTo((b) => b.now())
|
|
210
248
|
* ```
|
|
211
249
|
*/
|
|
212
|
-
defaultTo(value: TypeMap[TType] | ((builder: DefaultBuilder) => DBSpecial | TypeMap[TType])): Column<TType, TIn | null, TOut>;
|
|
250
|
+
defaultTo(value: TypeMap[TType$1] | ((builder: DefaultBuilder) => DBSpecial | TypeMap[TType$1])): Column<TType$1, TIn$1 | null, TOut$1>;
|
|
213
251
|
/**
|
|
214
252
|
* Generate default value for the column at runtime.
|
|
215
253
|
* Used for both runtime defaults (defaultTo$) and fallback generation for
|
|
216
254
|
* database defaults (defaultTo) when the database doesn't support them.
|
|
217
255
|
*/
|
|
218
|
-
generateDefaultValue(): TypeMap[TType] | undefined;
|
|
256
|
+
generateDefaultValue(): TypeMap[TType$1] | undefined;
|
|
219
257
|
/**
|
|
220
258
|
* @description This is used for type inference only. Runtime value will be undefined.
|
|
221
259
|
* @internal
|
|
222
260
|
*/
|
|
223
|
-
get $in(): TIn;
|
|
261
|
+
get $in(): TIn$1;
|
|
224
262
|
/**
|
|
225
263
|
* @description This is used for type inference only. Runtime value will be undefined.
|
|
226
264
|
* @internal
|
|
227
265
|
*/
|
|
228
|
-
get $out(): TOut;
|
|
266
|
+
get $out(): TOut$1;
|
|
229
267
|
}
|
|
230
|
-
declare class IdColumn<TType extends IdColumnType = IdColumnType, TIn = unknown, TOut = unknown> extends Column<TType, TIn, TOut> {
|
|
268
|
+
declare class IdColumn<TType$1 extends IdColumnType = IdColumnType, TIn$1 = unknown, TOut$1 = unknown> extends Column<TType$1, TIn$1, TOut$1> {
|
|
231
269
|
id: boolean;
|
|
232
|
-
defaultTo$(value: TypeMap[TType] | ((builder: RuntimeDefaultBuilder) => RuntimeSpecial | TypeMap[TType])): IdColumn<TType, TIn | null, TOut>;
|
|
233
|
-
defaultTo(value: TypeMap[TType] | ((builder: DefaultBuilder) => DBSpecial | TypeMap[TType])): IdColumn<TType, TIn | null, TOut>;
|
|
270
|
+
defaultTo$(value: TypeMap[TType$1] | ((builder: RuntimeDefaultBuilder) => RuntimeSpecial | TypeMap[TType$1])): IdColumn<TType$1, TIn$1 | null, TOut$1>;
|
|
271
|
+
defaultTo(value: TypeMap[TType$1] | ((builder: DefaultBuilder) => DBSpecial | TypeMap[TType$1])): IdColumn<TType$1, TIn$1 | null, TOut$1>;
|
|
234
272
|
}
|
|
235
273
|
/**
|
|
236
274
|
* Internal ID column - used for database-native joins and foreign keys.
|
|
237
275
|
* Hidden from user API by default.
|
|
238
276
|
*/
|
|
239
|
-
declare class InternalIdColumn<TIn = unknown, TOut = unknown> extends Column<"bigint", TIn, TOut> {
|
|
277
|
+
declare class InternalIdColumn<TIn$1 = unknown, TOut$1 = unknown> extends Column<"bigint", TIn$1, TOut$1> {
|
|
240
278
|
role: "internal-id";
|
|
241
279
|
constructor();
|
|
242
280
|
}
|
|
@@ -244,11 +282,12 @@ declare class InternalIdColumn<TIn = unknown, TOut = unknown> extends Column<"bi
|
|
|
244
282
|
* Version column - used for optimistic concurrency control.
|
|
245
283
|
* Automatically incremented on each update.
|
|
246
284
|
*/
|
|
247
|
-
declare class VersionColumn<TIn = unknown, TOut = unknown> extends Column<"integer", TIn, TOut> {
|
|
285
|
+
declare class VersionColumn<TIn$1 = unknown, TOut$1 = unknown> extends Column<"integer", TIn$1, TOut$1> {
|
|
248
286
|
role: "version";
|
|
249
287
|
constructor();
|
|
250
288
|
}
|
|
251
|
-
|
|
289
|
+
type ColumnInput<TType$1 extends keyof TypeMap> = TypeMap[TType$1] | (TType$1 extends "timestamp" | "date" ? DbNow : never);
|
|
290
|
+
declare function column<TType$1 extends keyof TypeMap>(type: TType$1): Column<TType$1, ColumnInput<TType$1>, TypeMap[TType$1]>;
|
|
252
291
|
/**
|
|
253
292
|
* Create a reference column that points to another table's internal ID.
|
|
254
293
|
* This is used for foreign key relationships.
|
|
@@ -260,7 +299,7 @@ declare function referenceColumn(): Column<"bigint", string | bigint | FragnoId
|
|
|
260
299
|
* This is a CUID string that can be auto-generated or user-provided.
|
|
261
300
|
* Input accepts string | FragnoId | null, output returns FragnoId.
|
|
262
301
|
*/
|
|
263
|
-
declare function idColumn(): IdColumn<"varchar(
|
|
302
|
+
declare function idColumn(): IdColumn<"varchar(128)", string | FragnoId | null, FragnoId>;
|
|
264
303
|
/**
|
|
265
304
|
* Create an internal ID column (database-native, hidden from user API).
|
|
266
305
|
* Used for joins and foreign keys.
|
|
@@ -342,11 +381,15 @@ declare class TableBuilder<TColumns extends Record<string, AnyColumn> = Record<s
|
|
|
342
381
|
/**
|
|
343
382
|
* Add a column to the table.
|
|
344
383
|
*/
|
|
345
|
-
addColumn<TColumnName extends string, TColumn extends AnyColumn>(
|
|
384
|
+
addColumn<TColumnName extends string, TColumn extends AnyColumn>(name: TColumnName, col: TColumn): TableBuilder<TColumns & Record<TColumnName, TColumn>, TRelations, TIndexes>;
|
|
346
385
|
/**
|
|
347
386
|
* Add a column to the table with simplified syntax.
|
|
348
387
|
*/
|
|
349
|
-
addColumn<TColumnName extends string, TType extends keyof TypeMap>(
|
|
388
|
+
addColumn<TColumnName extends string, TType$1 extends keyof TypeMap>(name: TColumnName, type: TType$1): TableBuilder<TColumns & Record<TColumnName, Column<TType$1, ColumnInput<TType$1>, TypeMap[TType$1]>>, TRelations, TIndexes>;
|
|
389
|
+
/**
|
|
390
|
+
* Alter an existing column.
|
|
391
|
+
*/
|
|
392
|
+
alterColumn<TColumnName extends NonIdColumnName<TColumns>>(name: TColumnName): ColumnAlterer<TColumns, TRelations, TIndexes, TColumnName>;
|
|
350
393
|
/**
|
|
351
394
|
* Create an index on the specified columns.
|
|
352
395
|
*/
|
|
@@ -359,6 +402,10 @@ declare class TableBuilder<TColumns extends Record<string, AnyColumn> = Record<s
|
|
|
359
402
|
build(): Table<TColumns, TRelations, TIndexes>;
|
|
360
403
|
}
|
|
361
404
|
interface Schema<TTables extends Record<string, AnyTable> = Record<string, AnyTable>> {
|
|
405
|
+
/**
|
|
406
|
+
* @description The name of the schema (required).
|
|
407
|
+
*/
|
|
408
|
+
name: string;
|
|
362
409
|
/**
|
|
363
410
|
* @description The version of the schema, automatically incremented on each change.
|
|
364
411
|
*/
|
|
@@ -385,16 +432,22 @@ type UpdateTable<TTables extends Record<string, AnyTable>, TTableName extends ke
|
|
|
385
432
|
* Map an array of column names to a tuple of their actual column types
|
|
386
433
|
*/
|
|
387
434
|
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[];
|
|
435
|
+
type UpdateColumn<TColumns extends Record<string, AnyColumn>, TColumnName extends keyof TColumns, TUpdatedColumn extends AnyColumn> = Prettify<Omit<TColumns, TColumnName> & Record<TColumnName, TUpdatedColumn>>;
|
|
436
|
+
type NonIdColumnName<TColumns extends Record<string, AnyColumn>> = { [K in keyof TColumns]: TColumns[K] extends IdColumn<IdColumnType, unknown, unknown> | InternalIdColumn<unknown, unknown> | VersionColumn<unknown, unknown> ? never : K }[keyof TColumns];
|
|
437
|
+
type NullableColumn<TColumn extends AnyColumn, TNullable extends boolean> = TColumn extends Column<infer TType, infer TIn, infer TOut> ? Column<TType, TNullable extends true ? TIn | null : Exclude<TIn, null>, TNullable extends true ? TOut | null : Exclude<TOut, null>> : TColumn;
|
|
438
|
+
type ColumnAlterer<TColumns extends Record<string, AnyColumn>, TRelations extends Record<string, AnyRelation>, TIndexes extends Record<string, Index>, TColumnName extends keyof TColumns> = {
|
|
439
|
+
nullable<TNullable extends boolean = true>(nullable?: TNullable): TableBuilder<UpdateColumn<TColumns, TColumnName, NullableColumn<TColumns[TColumnName], TNullable>>, TRelations, TIndexes>;
|
|
440
|
+
};
|
|
388
441
|
declare class SchemaBuilder<TTables extends Record<string, AnyTable> = {}> {
|
|
389
442
|
#private;
|
|
390
|
-
constructor(existingSchema?: Schema<TTables>);
|
|
443
|
+
constructor(name: string, existingSchema?: Schema<TTables>);
|
|
391
444
|
/**
|
|
392
445
|
* Add an existing schema to this builder.
|
|
393
446
|
* Merges tables and operations from the provided schema.
|
|
394
447
|
*
|
|
395
448
|
* @example
|
|
396
449
|
* ```ts
|
|
397
|
-
* const builder = new SchemaBuilder()
|
|
450
|
+
* const builder = new SchemaBuilder("combined")
|
|
398
451
|
* .add(userSchema)
|
|
399
452
|
* .add(postSchema)
|
|
400
453
|
* .addTable("comments", ...);
|
|
@@ -404,7 +457,7 @@ declare class SchemaBuilder<TTables extends Record<string, AnyTable> = {}> {
|
|
|
404
457
|
/**
|
|
405
458
|
* Add a table to the schema. Increments the version counter.
|
|
406
459
|
*/
|
|
407
|
-
addTable<TTableName extends string, TColumns extends Record<string, AnyColumn>, TRelations extends Record<string, AnyRelation>, TIndexes extends Record<string, Index> = Record<string, Index>>(
|
|
460
|
+
addTable<TTableName extends string, TColumns extends Record<string, AnyColumn>, TRelations extends Record<string, AnyRelation>, TIndexes extends Record<string, Index> = Record<string, Index>>(name: TTableName, callback: (builder: TableBuilder<{}, Record<string, AnyRelation>, Record<string, Index>>) => TableBuilder<TColumns, TRelations, TIndexes>): SchemaBuilder<TTables & Record<TTableName, Table<TColumns, TRelations, TIndexes>>>;
|
|
408
461
|
/**
|
|
409
462
|
* Add a relation between two tables.
|
|
410
463
|
*
|
|
@@ -414,7 +467,7 @@ declare class SchemaBuilder<TTables extends Record<string, AnyTable> = {}> {
|
|
|
414
467
|
* @example
|
|
415
468
|
* ```ts
|
|
416
469
|
* // One-to-one or many-to-one: post -> user
|
|
417
|
-
* schema(s => s
|
|
470
|
+
* schema("blog", s => s
|
|
418
471
|
* .addTable("users", t => t.addColumn("id", idColumn()))
|
|
419
472
|
* .addTable("posts", t => t
|
|
420
473
|
* .addColumn("id", idColumn())
|
|
@@ -439,6 +492,14 @@ declare class SchemaBuilder<TTables extends Record<string, AnyTable> = {}> {
|
|
|
439
492
|
* from: { table: "users", column: "invitedBy" },
|
|
440
493
|
* to: { table: "users", column: "id" },
|
|
441
494
|
* })
|
|
495
|
+
*
|
|
496
|
+
* // Join-only relation (no foreign key)
|
|
497
|
+
* .addReference("invitedUser", {
|
|
498
|
+
* type: "one",
|
|
499
|
+
* from: { table: "invitations", column: "email" },
|
|
500
|
+
* to: { table: "users", column: "email" },
|
|
501
|
+
* foreignKey: false,
|
|
502
|
+
* })
|
|
442
503
|
* ```
|
|
443
504
|
*/
|
|
444
505
|
addReference<TFromTableName extends string & keyof TTables, TToTableName extends string & keyof TTables, TReferenceName extends string, TRelationType extends RelationType>(referenceName: TReferenceName, config: {
|
|
@@ -451,10 +512,16 @@ declare class SchemaBuilder<TTables extends Record<string, AnyTable> = {}> {
|
|
|
451
512
|
table: TToTableName;
|
|
452
513
|
column: keyof TTables[TToTableName]["columns"];
|
|
453
514
|
};
|
|
515
|
+
/**
|
|
516
|
+
* When false, defines a join-only relation without foreign key migrations.
|
|
517
|
+
* References to external-id columns still coerce to `_internalId`
|
|
518
|
+
* (including left-side external IDs for join-only).
|
|
519
|
+
*/
|
|
520
|
+
foreignKey?: boolean;
|
|
454
521
|
}): SchemaBuilder<UpdateTableRelations<TTables, TFromTableName, TReferenceName, TToTableName, TRelationType>>;
|
|
455
522
|
/**
|
|
456
|
-
* Alter an existing table by adding columns or indexes.
|
|
457
|
-
* This is used for
|
|
523
|
+
* Alter an existing table by adding columns, altering columns, or adding indexes.
|
|
524
|
+
* This is used for forward-only schema modifications.
|
|
458
525
|
*
|
|
459
526
|
* @param tableName - The name of the table to modify
|
|
460
527
|
* @param callback - A callback that receives a table builder for adding columns/indexes
|
|
@@ -462,11 +529,12 @@ declare class SchemaBuilder<TTables extends Record<string, AnyTable> = {}> {
|
|
|
462
529
|
* @example
|
|
463
530
|
* ```ts
|
|
464
531
|
* // Add a new column to an existing table
|
|
465
|
-
* schema(s => s
|
|
532
|
+
* schema("blog", s => s
|
|
466
533
|
* .addTable("users", t => t
|
|
467
534
|
* .addColumn("id", idColumn())
|
|
468
535
|
* .addColumn("name", column("string")))
|
|
469
536
|
* .alterTable("users", t => t
|
|
537
|
+
* .alterColumn("name").nullable()
|
|
470
538
|
* .addColumn("email", column("string"))
|
|
471
539
|
* .addColumn("age", column("integer").nullable())
|
|
472
540
|
* .createIndex("idx_email", ["email"]))
|
|
@@ -486,8 +554,8 @@ declare class SchemaBuilder<TTables extends Record<string, AnyTable> = {}> {
|
|
|
486
554
|
/**
|
|
487
555
|
* Create a new schema with callback pattern.
|
|
488
556
|
*/
|
|
489
|
-
declare function schema<const TTables extends Record<string, AnyTable> = {}>(callback: (builder: SchemaBuilder<{}>) => SchemaBuilder<TTables>): Schema<TTables>;
|
|
490
|
-
declare function compileForeignKey(key: ForeignKey
|
|
557
|
+
declare function schema<const TTables extends Record<string, AnyTable> = {}>(name: string, callback: (builder: SchemaBuilder<{}>) => SchemaBuilder<TTables>): Schema<TTables>;
|
|
558
|
+
declare function compileForeignKey(key: ForeignKey): {
|
|
491
559
|
name: string;
|
|
492
560
|
table: string;
|
|
493
561
|
referencedTable: string;
|
|
@@ -495,5 +563,5 @@ declare function compileForeignKey(key: ForeignKey, nameType?: "sql" | "orm"): {
|
|
|
495
563
|
columns: string[];
|
|
496
564
|
};
|
|
497
565
|
//#endregion
|
|
498
|
-
export { AnyColumn, AnyRelation, AnySchema, AnyTable, Column, DefaultBuilder, ExplicitRelationInit, ForeignKey, FragnoId, FragnoReference, IdColumn, Index, InternalIdColumn, Relation, RuntimeDefaultBuilder, Schema, SchemaBuilder, SchemaOperation, Table, TableBuilder, TableSubOperation, TypeMap, VersionColumn, column, compileForeignKey, generateId, idColumn, internalIdColumn, referenceColumn, schema, versionColumn };
|
|
566
|
+
export { AnyColumn, AnyRelation, AnySchema, AnyTable, Column, DefaultBuilder, ExplicitRelationInit, ForeignKey, FragnoDbValidationError, FragnoId, FragnoReference, IdColumn, Index, InternalIdColumn, Relation, RuntimeDefaultBuilder, Schema, SchemaBuilder, SchemaOperation, Table, TableBuilder, TableInsertValues, TableSubOperation, TableUnknownKeysMode, TableValidationOptions, TypeMap, VersionColumn, column, compileForeignKey, generateId, idColumn, internalIdColumn, referenceColumn, schema, versionColumn };
|
|
499
567
|
//# sourceMappingURL=create.d.ts.map
|
|
@@ -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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"}
|