@warlock.js/cascade 4.0.174 → 4.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -5
- package/bin/cascadejs +3 -0
- package/esm/cli/commands/migrate-export-sql.mjs +48 -0
- package/esm/cli/commands/migrate-export-sql.mjs.map +1 -0
- package/esm/cli/commands/migrate-list.mjs +26 -0
- package/esm/cli/commands/migrate-list.mjs.map +1 -0
- package/esm/cli/commands/migrate-rollback.mjs +50 -0
- package/esm/cli/commands/migrate-rollback.mjs.map +1 -0
- package/esm/cli/commands/migrate.mjs +65 -0
- package/esm/cli/commands/migrate.mjs.map +1 -0
- package/esm/cli/connection-from-env.mjs +181 -0
- package/esm/cli/connection-from-env.mjs.map +1 -0
- package/esm/cli/index.mjs +31 -0
- package/esm/cli/index.mjs.map +1 -0
- package/esm/cli/load-migrations.mjs +78 -0
- package/esm/cli/load-migrations.mjs.map +1 -0
- package/esm/cli/printers.mjs +57 -0
- package/esm/cli/printers.mjs.map +1 -0
- package/esm/cli/setup-logger.mjs +30 -0
- package/esm/cli/setup-logger.mjs.map +1 -0
- package/esm/cli/with-cli-connection.mjs +39 -0
- package/esm/cli/with-cli-connection.mjs.map +1 -0
- package/esm/cli.d.mts +1 -0
- package/esm/cli.mjs +26 -0
- package/esm/cli.mjs.map +1 -0
- package/esm/context/database-data-source-context.d.mts +32 -0
- package/esm/context/database-data-source-context.d.mts.map +1 -0
- package/esm/context/database-data-source-context.mjs +35 -0
- package/esm/context/database-data-source-context.mjs.map +1 -0
- package/esm/context/database-transaction-context.d.mts +38 -0
- package/esm/context/database-transaction-context.d.mts.map +1 -0
- package/esm/context/database-transaction-context.mjs +47 -0
- package/esm/context/database-transaction-context.mjs.map +1 -0
- package/esm/contracts/database-driver.contract.d.mts +443 -0
- package/esm/contracts/database-driver.contract.d.mts.map +1 -0
- package/esm/contracts/database-id-generator.contract.d.mts +109 -0
- package/esm/contracts/database-id-generator.contract.d.mts.map +1 -0
- package/esm/contracts/database-remover.contract.d.mts +108 -0
- package/esm/contracts/database-remover.contract.d.mts.map +1 -0
- package/esm/contracts/database-restorer.contract.d.mts +145 -0
- package/esm/contracts/database-restorer.contract.d.mts.map +1 -0
- package/esm/contracts/database-writer.contract.d.mts +123 -0
- package/esm/contracts/database-writer.contract.d.mts.map +1 -0
- package/esm/contracts/driver-blueprint.contract.d.mts +52 -0
- package/esm/contracts/driver-blueprint.contract.d.mts.map +1 -0
- package/esm/contracts/index.d.mts +9 -0
- package/esm/contracts/migration-driver.contract.d.mts +476 -0
- package/esm/contracts/migration-driver.contract.d.mts.map +1 -0
- package/esm/contracts/query-builder.contract.d.mts +1663 -0
- package/esm/contracts/query-builder.contract.d.mts.map +1 -0
- package/esm/contracts/sync-adapter.contract.d.mts +49 -0
- package/esm/contracts/sync-adapter.contract.d.mts.map +1 -0
- package/esm/data-source/data-source-registry.d.mts +111 -0
- package/esm/data-source/data-source-registry.d.mts.map +1 -0
- package/esm/data-source/data-source-registry.mjs +142 -0
- package/esm/data-source/data-source-registry.mjs.map +1 -0
- package/esm/data-source/data-source.d.mts +160 -0
- package/esm/data-source/data-source.d.mts.map +1 -0
- package/esm/data-source/data-source.mjs +87 -0
- package/esm/data-source/data-source.mjs.map +1 -0
- package/esm/database-dirty-tracker.d.mts +254 -0
- package/esm/database-dirty-tracker.d.mts.map +1 -0
- package/esm/database-dirty-tracker.mjs +356 -0
- package/esm/database-dirty-tracker.mjs.map +1 -0
- package/esm/drivers/mongodb/mongodb-blueprint.mjs +54 -0
- package/esm/drivers/mongodb/mongodb-blueprint.mjs.map +1 -0
- package/esm/drivers/mongodb/mongodb-driver.d.mts +334 -0
- package/esm/drivers/mongodb/mongodb-driver.d.mts.map +1 -0
- package/esm/drivers/mongodb/mongodb-driver.mjs +716 -0
- package/esm/drivers/mongodb/mongodb-driver.mjs.map +1 -0
- package/esm/drivers/mongodb/mongodb-id-generator.d.mts +120 -0
- package/esm/drivers/mongodb/mongodb-id-generator.d.mts.map +1 -0
- package/esm/drivers/mongodb/mongodb-id-generator.mjs +141 -0
- package/esm/drivers/mongodb/mongodb-id-generator.mjs.map +1 -0
- package/esm/drivers/mongodb/mongodb-migration-driver.d.mts +322 -0
- package/esm/drivers/mongodb/mongodb-migration-driver.d.mts.map +1 -0
- package/esm/drivers/mongodb/mongodb-migration-driver.mjs +531 -0
- package/esm/drivers/mongodb/mongodb-migration-driver.mjs.map +1 -0
- package/esm/drivers/mongodb/mongodb-query-builder.d.mts +1117 -0
- package/esm/drivers/mongodb/mongodb-query-builder.d.mts.map +1 -0
- package/esm/drivers/mongodb/mongodb-query-builder.mjs +1828 -0
- package/esm/drivers/mongodb/mongodb-query-builder.mjs.map +1 -0
- package/esm/drivers/mongodb/mongodb-query-operations.d.mts +230 -0
- package/esm/drivers/mongodb/mongodb-query-operations.d.mts.map +1 -0
- package/esm/drivers/mongodb/mongodb-query-operations.mjs +275 -0
- package/esm/drivers/mongodb/mongodb-query-operations.mjs.map +1 -0
- package/esm/drivers/mongodb/mongodb-query-parser.d.mts +263 -0
- package/esm/drivers/mongodb/mongodb-query-parser.d.mts.map +1 -0
- package/esm/drivers/mongodb/mongodb-query-parser.mjs +965 -0
- package/esm/drivers/mongodb/mongodb-query-parser.mjs.map +1 -0
- package/esm/drivers/mongodb/mongodb-sync-adapter.d.mts +78 -0
- package/esm/drivers/mongodb/mongodb-sync-adapter.d.mts.map +1 -0
- package/esm/drivers/mongodb/mongodb-sync-adapter.mjs +118 -0
- package/esm/drivers/mongodb/mongodb-sync-adapter.mjs.map +1 -0
- package/esm/drivers/mongodb/types.d.mts +43 -0
- package/esm/drivers/mongodb/types.d.mts.map +1 -0
- package/esm/drivers/postgres/index.d.mts +8 -0
- package/esm/drivers/postgres/index.mjs +9 -0
- package/esm/drivers/postgres/postgres-blueprint.d.mts +60 -0
- package/esm/drivers/postgres/postgres-blueprint.d.mts.map +1 -0
- package/esm/drivers/postgres/postgres-blueprint.mjs +105 -0
- package/esm/drivers/postgres/postgres-blueprint.mjs.map +1 -0
- package/esm/drivers/postgres/postgres-dialect.d.mts +144 -0
- package/esm/drivers/postgres/postgres-dialect.d.mts.map +1 -0
- package/esm/drivers/postgres/postgres-dialect.mjs +227 -0
- package/esm/drivers/postgres/postgres-dialect.mjs.map +1 -0
- package/esm/drivers/postgres/postgres-driver.d.mts +424 -0
- package/esm/drivers/postgres/postgres-driver.d.mts.map +1 -0
- package/esm/drivers/postgres/postgres-driver.mjs +845 -0
- package/esm/drivers/postgres/postgres-driver.mjs.map +1 -0
- package/esm/drivers/postgres/postgres-migration-driver.d.mts +393 -0
- package/esm/drivers/postgres/postgres-migration-driver.d.mts.map +1 -0
- package/esm/drivers/postgres/postgres-migration-driver.mjs +760 -0
- package/esm/drivers/postgres/postgres-migration-driver.mjs.map +1 -0
- package/esm/drivers/postgres/postgres-query-builder.d.mts +399 -0
- package/esm/drivers/postgres/postgres-query-builder.d.mts.map +1 -0
- package/esm/drivers/postgres/postgres-query-builder.mjs +1105 -0
- package/esm/drivers/postgres/postgres-query-builder.mjs.map +1 -0
- package/esm/drivers/postgres/postgres-query-parser.d.mts +351 -0
- package/esm/drivers/postgres/postgres-query-parser.d.mts.map +1 -0
- package/esm/drivers/postgres/postgres-query-parser.mjs +796 -0
- package/esm/drivers/postgres/postgres-query-parser.mjs.map +1 -0
- package/esm/drivers/postgres/postgres-sql-serializer.mjs +260 -0
- package/esm/drivers/postgres/postgres-sql-serializer.mjs.map +1 -0
- package/esm/drivers/postgres/postgres-sync-adapter.d.mts +79 -0
- package/esm/drivers/postgres/postgres-sync-adapter.d.mts.map +1 -0
- package/esm/drivers/postgres/postgres-sync-adapter.mjs +162 -0
- package/esm/drivers/postgres/postgres-sync-adapter.mjs.map +1 -0
- package/esm/drivers/postgres/types.d.mts +105 -0
- package/esm/drivers/postgres/types.d.mts.map +1 -0
- package/esm/drivers/sql/sql-dialect.contract.d.mts +221 -0
- package/esm/drivers/sql/sql-dialect.contract.d.mts.map +1 -0
- package/esm/drivers/sql/sql-types.d.mts +150 -0
- package/esm/drivers/sql/sql-types.d.mts.map +1 -0
- package/esm/errors/missing-data-source.error.d.mts +25 -0
- package/esm/errors/missing-data-source.error.d.mts.map +1 -0
- package/esm/errors/missing-data-source.error.mjs +31 -0
- package/esm/errors/missing-data-source.error.mjs.map +1 -0
- package/esm/errors/transaction-rollback.error.d.mts +23 -0
- package/esm/errors/transaction-rollback.error.d.mts.map +1 -0
- package/esm/errors/transaction-rollback.error.mjs +29 -0
- package/esm/errors/transaction-rollback.error.mjs.map +1 -0
- package/esm/events/model-events.d.mts +234 -0
- package/esm/events/model-events.d.mts.map +1 -0
- package/esm/events/model-events.mjs +254 -0
- package/esm/events/model-events.mjs.map +1 -0
- package/esm/expressions/aggregate-expressions.d.mts +224 -0
- package/esm/expressions/aggregate-expressions.d.mts.map +1 -0
- package/esm/expressions/aggregate-expressions.mjs +232 -0
- package/esm/expressions/aggregate-expressions.mjs.map +1 -0
- package/esm/index.d.mts +67 -0
- package/esm/index.mjs +53 -0
- package/esm/migration/column-builder.d.mts +420 -0
- package/esm/migration/column-builder.d.mts.map +1 -0
- package/esm/migration/column-builder.mjs +532 -0
- package/esm/migration/column-builder.mjs.map +1 -0
- package/esm/migration/column-helpers.d.mts +280 -0
- package/esm/migration/column-helpers.d.mts.map +1 -0
- package/esm/migration/column-helpers.mjs +376 -0
- package/esm/migration/column-helpers.mjs.map +1 -0
- package/esm/migration/foreign-key-builder.d.mts +106 -0
- package/esm/migration/foreign-key-builder.d.mts.map +1 -0
- package/esm/migration/foreign-key-builder.mjs +126 -0
- package/esm/migration/foreign-key-builder.mjs.map +1 -0
- package/esm/migration/index.d.mts +6 -0
- package/esm/migration/index.mjs +7 -0
- package/esm/migration/migration-runner.d.mts +279 -0
- package/esm/migration/migration-runner.d.mts.map +1 -0
- package/esm/migration/migration-runner.mjs +662 -0
- package/esm/migration/migration-runner.mjs.map +1 -0
- package/esm/migration/migration.d.mts +2035 -0
- package/esm/migration/migration.d.mts.map +1 -0
- package/esm/migration/migration.mjs +2083 -0
- package/esm/migration/migration.mjs.map +1 -0
- package/esm/migration/sql-grammar.mjs +115 -0
- package/esm/migration/sql-grammar.mjs.map +1 -0
- package/esm/migration/sql-serializer.d.mts +26 -0
- package/esm/migration/sql-serializer.d.mts.map +1 -0
- package/esm/migration/sql-serializer.mjs +26 -0
- package/esm/migration/sql-serializer.mjs.map +1 -0
- package/esm/migration/types.d.mts +136 -0
- package/esm/migration/types.d.mts.map +1 -0
- package/esm/model/methods/accessor-methods.mjs +54 -0
- package/esm/model/methods/accessor-methods.mjs.map +1 -0
- package/esm/model/methods/delete-methods.mjs +16 -0
- package/esm/model/methods/delete-methods.mjs.map +1 -0
- package/esm/model/methods/dirty-methods.mjs +20 -0
- package/esm/model/methods/dirty-methods.mjs.map +1 -0
- package/esm/model/methods/hydration-methods.mjs +51 -0
- package/esm/model/methods/hydration-methods.mjs.map +1 -0
- package/esm/model/methods/instance-event-methods.mjs +22 -0
- package/esm/model/methods/instance-event-methods.mjs.map +1 -0
- package/esm/model/methods/meta-methods.mjs +36 -0
- package/esm/model/methods/meta-methods.mjs.map +1 -0
- package/esm/model/methods/pivot-methods.mjs +48 -0
- package/esm/model/methods/pivot-methods.mjs.map +1 -0
- package/esm/model/methods/query-methods.mjs +121 -0
- package/esm/model/methods/query-methods.mjs.map +1 -0
- package/esm/model/methods/restore-methods.mjs +16 -0
- package/esm/model/methods/restore-methods.mjs.map +1 -0
- package/esm/model/methods/scope-methods.mjs +20 -0
- package/esm/model/methods/scope-methods.mjs.map +1 -0
- package/esm/model/methods/serialization-methods.mjs +20 -0
- package/esm/model/methods/serialization-methods.mjs.map +1 -0
- package/esm/model/methods/static-event-methods.mjs +37 -0
- package/esm/model/methods/static-event-methods.mjs.map +1 -0
- package/esm/model/methods/write-methods.mjs +69 -0
- package/esm/model/methods/write-methods.mjs.map +1 -0
- package/esm/model/model.d.mts +1778 -0
- package/esm/model/model.d.mts.map +1 -0
- package/esm/model/model.mjs +1762 -0
- package/esm/model/model.mjs.map +1 -0
- package/esm/model/model.types.d.mts +47 -0
- package/esm/model/model.types.d.mts.map +1 -0
- package/esm/model/register-model.d.mts +140 -0
- package/esm/model/register-model.d.mts.map +1 -0
- package/esm/model/register-model.mjs +175 -0
- package/esm/model/register-model.mjs.map +1 -0
- package/esm/model/relation-decorators.d.mts +88 -0
- package/esm/model/relation-decorators.d.mts.map +1 -0
- package/esm/model/relation-decorators.mjs +191 -0
- package/esm/model/relation-decorators.mjs.map +1 -0
- package/esm/operations/database.d.mts +46 -0
- package/esm/operations/database.d.mts.map +1 -0
- package/esm/operations/database.mjs +40 -0
- package/esm/operations/database.mjs.map +1 -0
- package/esm/operations/index.d.mts +2 -0
- package/esm/operations/index.mjs +4 -0
- package/esm/operations/migrations.d.mts +71 -0
- package/esm/operations/migrations.d.mts.map +1 -0
- package/esm/operations/migrations.mjs +70 -0
- package/esm/operations/migrations.mjs.map +1 -0
- package/esm/query-builder/query-builder.d.mts +564 -0
- package/esm/query-builder/query-builder.d.mts.map +1 -0
- package/esm/query-builder/query-builder.mjs +1097 -0
- package/esm/query-builder/query-builder.mjs.map +1 -0
- package/esm/relations/index.d.mts +4 -0
- package/esm/relations/index.mjs +5 -0
- package/esm/relations/key-conventions.mjs +119 -0
- package/esm/relations/key-conventions.mjs.map +1 -0
- package/esm/relations/pivot-operations.d.mts +155 -0
- package/esm/relations/pivot-operations.d.mts.map +1 -0
- package/esm/relations/pivot-operations.mjs +232 -0
- package/esm/relations/pivot-operations.mjs.map +1 -0
- package/esm/relations/relation-hydrator.d.mts +55 -0
- package/esm/relations/relation-hydrator.d.mts.map +1 -0
- package/esm/relations/relation-hydrator.mjs +52 -0
- package/esm/relations/relation-hydrator.mjs.map +1 -0
- package/esm/relations/relation-loader.d.mts +190 -0
- package/esm/relations/relation-loader.d.mts.map +1 -0
- package/esm/relations/relation-loader.mjs +416 -0
- package/esm/relations/relation-loader.mjs.map +1 -0
- package/esm/relations/types.d.mts +317 -0
- package/esm/relations/types.d.mts.map +1 -0
- package/esm/remover/database-remover.d.mts +104 -0
- package/esm/remover/database-remover.d.mts.map +1 -0
- package/esm/remover/database-remover.mjs +174 -0
- package/esm/remover/database-remover.mjs.map +1 -0
- package/esm/restorer/database-restorer.d.mts +135 -0
- package/esm/restorer/database-restorer.d.mts.map +1 -0
- package/esm/restorer/database-restorer.mjs +316 -0
- package/esm/restorer/database-restorer.mjs.map +1 -0
- package/esm/sql-database-dirty-tracker.d.mts +17 -0
- package/esm/sql-database-dirty-tracker.d.mts.map +1 -0
- package/esm/sql-database-dirty-tracker.mjs +20 -0
- package/esm/sql-database-dirty-tracker.mjs.map +1 -0
- package/esm/sync/model-events.mjs +46 -0
- package/esm/sync/model-events.mjs.map +1 -0
- package/esm/sync/model-sync-operation.d.mts +159 -0
- package/esm/sync/model-sync-operation.d.mts.map +1 -0
- package/esm/sync/model-sync-operation.mjs +257 -0
- package/esm/sync/model-sync-operation.mjs.map +1 -0
- package/esm/sync/model-sync.d.mts +126 -0
- package/esm/sync/model-sync.d.mts.map +1 -0
- package/esm/sync/model-sync.mjs +157 -0
- package/esm/sync/model-sync.mjs.map +1 -0
- package/esm/sync/sync-context.d.mts +69 -0
- package/esm/sync/sync-context.d.mts.map +1 -0
- package/esm/sync/sync-context.mjs +95 -0
- package/esm/sync/sync-context.mjs.map +1 -0
- package/esm/sync/sync-manager.d.mts +213 -0
- package/esm/sync/sync-manager.d.mts.map +1 -0
- package/esm/sync/sync-manager.mjs +597 -0
- package/esm/sync/sync-manager.mjs.map +1 -0
- package/esm/sync/types.d.mts +215 -0
- package/esm/sync/types.d.mts.map +1 -0
- package/esm/types.d.mts +423 -0
- package/esm/types.d.mts.map +1 -0
- package/esm/utils/connect-to-database.d.mts +328 -0
- package/esm/utils/connect-to-database.d.mts.map +1 -0
- package/esm/utils/connect-to-database.mjs +130 -0
- package/esm/utils/connect-to-database.mjs.map +1 -0
- package/esm/utils/database-writer.utils.d.mts +18 -0
- package/esm/utils/database-writer.utils.d.mts.map +1 -0
- package/esm/utils/database-writer.utils.mjs +25 -0
- package/esm/utils/database-writer.utils.mjs.map +1 -0
- package/esm/utils/define-model.d.mts +185 -0
- package/esm/utils/define-model.d.mts.map +1 -0
- package/esm/utils/define-model.mjs +105 -0
- package/esm/utils/define-model.mjs.map +1 -0
- package/esm/utils/is-valid-date-value.mjs +22 -0
- package/esm/utils/is-valid-date-value.mjs.map +1 -0
- package/esm/utils/once-connected.d.mts +150 -0
- package/esm/utils/once-connected.d.mts.map +1 -0
- package/esm/utils/once-connected.mjs +203 -0
- package/esm/utils/once-connected.mjs.map +1 -0
- package/esm/validation/database-seal-plugins.d.mts +1 -0
- package/esm/validation/database-seal-plugins.mjs +11 -0
- package/esm/validation/database-seal-plugins.mjs.map +1 -0
- package/esm/validation/database-writer-validation-error.d.mts +101 -0
- package/esm/validation/database-writer-validation-error.d.mts.map +1 -0
- package/esm/validation/database-writer-validation-error.mjs +153 -0
- package/esm/validation/database-writer-validation-error.mjs.map +1 -0
- package/esm/validation/index.d.mts +2 -0
- package/esm/validation/index.mjs +4 -0
- package/esm/validation/mutators/embed-mutator.mjs +26 -0
- package/esm/validation/mutators/embed-mutator.mjs.map +1 -0
- package/esm/validation/plugins/database-rules-plugin.d.mts +28 -0
- package/esm/validation/plugins/database-rules-plugin.d.mts.map +1 -0
- package/esm/validation/plugins/database-rules-plugin.mjs +43 -0
- package/esm/validation/plugins/database-rules-plugin.mjs.map +1 -0
- package/esm/validation/plugins/embed-validator-plugin.d.mts +17 -0
- package/esm/validation/plugins/embed-validator-plugin.d.mts.map +1 -0
- package/esm/validation/plugins/embed-validator-plugin.mjs +20 -0
- package/esm/validation/plugins/embed-validator-plugin.mjs.map +1 -0
- package/esm/validation/rules/database-model-rule.mjs +32 -0
- package/esm/validation/rules/database-model-rule.mjs.map +1 -0
- package/esm/validation/rules/exists-rule.mjs +29 -0
- package/esm/validation/rules/exists-rule.mjs.map +1 -0
- package/esm/validation/rules/unique-rule.mjs +43 -0
- package/esm/validation/rules/unique-rule.mjs.map +1 -0
- package/esm/validation/transformers/embed-model-transformer.mjs +17 -0
- package/esm/validation/transformers/embed-model-transformer.mjs.map +1 -0
- package/esm/validation/types.d.mts +43 -0
- package/esm/validation/types.d.mts.map +1 -0
- package/esm/validation/validators/embed-validator.d.mts +25 -0
- package/esm/validation/validators/embed-validator.d.mts.map +1 -0
- package/esm/validation/validators/embed-validator.mjs +42 -0
- package/esm/validation/validators/embed-validator.mjs.map +1 -0
- package/esm/writer/database-writer.d.mts +178 -0
- package/esm/writer/database-writer.d.mts.map +1 -0
- package/esm/writer/database-writer.mjs +317 -0
- package/esm/writer/database-writer.mjs.map +1 -0
- package/llms-full.txt +2027 -0
- package/llms.txt +23 -0
- package/package.json +60 -51
- package/skills/README.md +65 -0
- package/skills/aggregate-data/SKILL.md +102 -0
- package/skills/cascade-basics/SKILL.md +93 -0
- package/skills/configure-delete-strategy/SKILL.md +126 -0
- package/skills/define-model/SKILL.md +170 -0
- package/skills/define-relations/SKILL.md +171 -0
- package/skills/manage-data-sources/SKILL.md +140 -0
- package/skills/manage-transactions/SKILL.md +118 -0
- package/skills/paginate-results/SKILL.md +122 -0
- package/skills/perform-atomic-ops/SKILL.md +98 -0
- package/skills/query-data/SKILL.md +168 -0
- package/skills/run-cascade-cli/SKILL.md +125 -0
- package/skills/search-by-vector/SKILL.md +127 -0
- package/skills/subscribe-to-model-events/SKILL.md +148 -0
- package/skills/track-changes/SKILL.md +109 -0
- package/skills/write-migration/SKILL.md +144 -0
- package/cjs/context/database-data-source-context.d.ts +0 -29
- package/cjs/context/database-data-source-context.d.ts.map +0 -1
- package/cjs/context/database-data-source-context.js +0 -28
- package/cjs/context/database-data-source-context.js.map +0 -1
- package/cjs/context/database-transaction-context.d.ts +0 -35
- package/cjs/context/database-transaction-context.d.ts.map +0 -1
- package/cjs/context/database-transaction-context.js +0 -40
- package/cjs/context/database-transaction-context.js.map +0 -1
- package/cjs/contracts/database-driver.contract.d.ts +0 -450
- package/cjs/contracts/database-driver.contract.d.ts.map +0 -1
- package/cjs/contracts/database-id-generator.contract.d.ts +0 -109
- package/cjs/contracts/database-id-generator.contract.d.ts.map +0 -1
- package/cjs/contracts/database-remover.contract.d.ts +0 -104
- package/cjs/contracts/database-remover.contract.d.ts.map +0 -1
- package/cjs/contracts/database-restorer.contract.d.ts +0 -143
- package/cjs/contracts/database-restorer.contract.d.ts.map +0 -1
- package/cjs/contracts/database-writer.contract.d.ts +0 -119
- package/cjs/contracts/database-writer.contract.d.ts.map +0 -1
- package/cjs/contracts/driver-blueprint.contract.d.ts +0 -49
- package/cjs/contracts/driver-blueprint.contract.d.ts.map +0 -1
- package/cjs/contracts/index.d.ts +0 -10
- package/cjs/contracts/index.d.ts.map +0 -1
- package/cjs/contracts/migration-driver.contract.d.ts +0 -522
- package/cjs/contracts/migration-driver.contract.d.ts.map +0 -1
- package/cjs/contracts/query-builder.contract.d.ts +0 -1609
- package/cjs/contracts/query-builder.contract.d.ts.map +0 -1
- package/cjs/contracts/sync-adapter.contract.d.ts +0 -58
- package/cjs/contracts/sync-adapter.contract.d.ts.map +0 -1
- package/cjs/data-source/data-source-registry.d.ts +0 -108
- package/cjs/data-source/data-source-registry.d.ts.map +0 -1
- package/cjs/data-source/data-source-registry.js +0 -145
- package/cjs/data-source/data-source-registry.js.map +0 -1
- package/cjs/data-source/data-source.d.ts +0 -147
- package/cjs/data-source/data-source.d.ts.map +0 -1
- package/cjs/data-source/data-source.js +0 -83
- package/cjs/data-source/data-source.js.map +0 -1
- package/cjs/database-dirty-tracker.d.ts +0 -252
- package/cjs/database-dirty-tracker.d.ts.map +0 -1
- package/cjs/database-dirty-tracker.js +0 -386
- package/cjs/database-dirty-tracker.js.map +0 -1
- package/cjs/drivers/mongodb/mongodb-blueprint.d.ts +0 -30
- package/cjs/drivers/mongodb/mongodb-blueprint.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-blueprint.js +0 -51
- package/cjs/drivers/mongodb/mongodb-blueprint.js.map +0 -1
- package/cjs/drivers/mongodb/mongodb-driver.d.ts +0 -325
- package/cjs/drivers/mongodb/mongodb-driver.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-driver.js +0 -845
- package/cjs/drivers/mongodb/mongodb-driver.js.map +0 -1
- package/cjs/drivers/mongodb/mongodb-id-generator.d.ts +0 -116
- package/cjs/drivers/mongodb/mongodb-id-generator.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-id-generator.js +0 -149
- package/cjs/drivers/mongodb/mongodb-id-generator.js.map +0 -1
- package/cjs/drivers/mongodb/mongodb-migration-driver.d.ts +0 -317
- package/cjs/drivers/mongodb/mongodb-migration-driver.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-migration-driver.js +0 -666
- package/cjs/drivers/mongodb/mongodb-migration-driver.js.map +0 -1
- package/cjs/drivers/mongodb/mongodb-query-builder.d.ts +0 -1122
- package/cjs/drivers/mongodb/mongodb-query-builder.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-query-builder.js +0 -1988
- package/cjs/drivers/mongodb/mongodb-query-builder.js.map +0 -1
- package/cjs/drivers/mongodb/mongodb-query-operations.d.ts +0 -226
- package/cjs/drivers/mongodb/mongodb-query-operations.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-query-operations.js +0 -270
- package/cjs/drivers/mongodb/mongodb-query-operations.js.map +0 -1
- package/cjs/drivers/mongodb/mongodb-query-parser.d.ts +0 -262
- package/cjs/drivers/mongodb/mongodb-query-parser.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-query-parser.js +0 -1351
- package/cjs/drivers/mongodb/mongodb-query-parser.js.map +0 -1
- package/cjs/drivers/mongodb/mongodb-sync-adapter.d.ts +0 -79
- package/cjs/drivers/mongodb/mongodb-sync-adapter.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-sync-adapter.js +0 -146
- package/cjs/drivers/mongodb/mongodb-sync-adapter.js.map +0 -1
- package/cjs/drivers/mongodb/types.d.ts +0 -43
- package/cjs/drivers/mongodb/types.d.ts.map +0 -1
- package/cjs/drivers/postgres/index.d.ts +0 -16
- package/cjs/drivers/postgres/index.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-blueprint.d.ts +0 -64
- package/cjs/drivers/postgres/postgres-blueprint.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-blueprint.js +0 -121
- package/cjs/drivers/postgres/postgres-blueprint.js.map +0 -1
- package/cjs/drivers/postgres/postgres-dialect.d.ts +0 -136
- package/cjs/drivers/postgres/postgres-dialect.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-dialect.js +0 -268
- package/cjs/drivers/postgres/postgres-dialect.js.map +0 -1
- package/cjs/drivers/postgres/postgres-driver.d.ts +0 -432
- package/cjs/drivers/postgres/postgres-driver.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-driver.js +0 -1008
- package/cjs/drivers/postgres/postgres-driver.js.map +0 -1
- package/cjs/drivers/postgres/postgres-migration-driver.d.ts +0 -397
- package/cjs/drivers/postgres/postgres-migration-driver.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-migration-driver.js +0 -900
- package/cjs/drivers/postgres/postgres-migration-driver.js.map +0 -1
- package/cjs/drivers/postgres/postgres-query-builder.d.ts +0 -254
- package/cjs/drivers/postgres/postgres-query-builder.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-query-builder.js +0 -933
- package/cjs/drivers/postgres/postgres-query-builder.js.map +0 -1
- package/cjs/drivers/postgres/postgres-query-parser.d.ts +0 -328
- package/cjs/drivers/postgres/postgres-query-parser.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-query-parser.js +0 -868
- package/cjs/drivers/postgres/postgres-query-parser.js.map +0 -1
- package/cjs/drivers/postgres/postgres-sql-serializer.d.ts +0 -37
- package/cjs/drivers/postgres/postgres-sql-serializer.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-sql-serializer.js +0 -400
- package/cjs/drivers/postgres/postgres-sql-serializer.js.map +0 -1
- package/cjs/drivers/postgres/postgres-sync-adapter.d.ts +0 -83
- package/cjs/drivers/postgres/postgres-sync-adapter.d.ts.map +0 -1
- package/cjs/drivers/postgres/postgres-sync-adapter.js +0 -204
- package/cjs/drivers/postgres/postgres-sync-adapter.js.map +0 -1
- package/cjs/drivers/postgres/types.d.ts +0 -144
- package/cjs/drivers/postgres/types.d.ts.map +0 -1
- package/cjs/drivers/sql/index.d.ts +0 -10
- package/cjs/drivers/sql/index.d.ts.map +0 -1
- package/cjs/drivers/sql/sql-dialect.contract.d.ts +0 -204
- package/cjs/drivers/sql/sql-dialect.contract.d.ts.map +0 -1
- package/cjs/drivers/sql/sql-types.d.ts +0 -202
- package/cjs/drivers/sql/sql-types.d.ts.map +0 -1
- package/cjs/errors/missing-data-source.error.d.ts +0 -22
- package/cjs/errors/missing-data-source.error.d.ts.map +0 -1
- package/cjs/errors/missing-data-source.error.js +0 -29
- package/cjs/errors/missing-data-source.error.js.map +0 -1
- package/cjs/errors/transaction-rollback.error.d.ts +0 -20
- package/cjs/errors/transaction-rollback.error.d.ts.map +0 -1
- package/cjs/errors/transaction-rollback.error.js +0 -27
- package/cjs/errors/transaction-rollback.error.js.map +0 -1
- package/cjs/events/model-events.d.ts +0 -231
- package/cjs/events/model-events.d.ts.map +0 -1
- package/cjs/events/model-events.js +0 -259
- package/cjs/events/model-events.js.map +0 -1
- package/cjs/expressions/aggregate-expressions.d.ts +0 -215
- package/cjs/expressions/aggregate-expressions.d.ts.map +0 -1
- package/cjs/expressions/aggregate-expressions.js +0 -221
- package/cjs/expressions/aggregate-expressions.js.map +0 -1
- package/cjs/expressions/index.d.ts +0 -2
- package/cjs/expressions/index.d.ts.map +0 -1
- package/cjs/index.d.ts +0 -45
- package/cjs/index.d.ts.map +0 -1
- package/cjs/index.js +0 -1
- package/cjs/index.js.map +0 -1
- package/cjs/migration/column-builder.d.ts +0 -417
- package/cjs/migration/column-builder.d.ts.map +0 -1
- package/cjs/migration/column-builder.js +0 -586
- package/cjs/migration/column-builder.js.map +0 -1
- package/cjs/migration/column-helpers.d.ts +0 -275
- package/cjs/migration/column-helpers.d.ts.map +0 -1
- package/cjs/migration/column-helpers.js +0 -389
- package/cjs/migration/column-helpers.js.map +0 -1
- package/cjs/migration/foreign-key-builder.d.ts +0 -103
- package/cjs/migration/foreign-key-builder.d.ts.map +0 -1
- package/cjs/migration/foreign-key-builder.js +0 -121
- package/cjs/migration/foreign-key-builder.js.map +0 -1
- package/cjs/migration/index.d.ts +0 -7
- package/cjs/migration/index.d.ts.map +0 -1
- package/cjs/migration/migration-runner.d.ts +0 -278
- package/cjs/migration/migration-runner.d.ts.map +0 -1
- package/cjs/migration/migration-runner.js +0 -815
- package/cjs/migration/migration-runner.js.map +0 -1
- package/cjs/migration/migration.d.ts +0 -1988
- package/cjs/migration/migration.d.ts.map +0 -1
- package/cjs/migration/migration.js +0 -2162
- package/cjs/migration/migration.js.map +0 -1
- package/cjs/migration/sql-grammar.d.ts +0 -61
- package/cjs/migration/sql-grammar.d.ts.map +0 -1
- package/cjs/migration/sql-grammar.js +0 -164
- package/cjs/migration/sql-grammar.js.map +0 -1
- package/cjs/migration/sql-serializer.d.ts +0 -22
- package/cjs/migration/sql-serializer.d.ts.map +0 -1
- package/cjs/migration/sql-serializer.js +0 -26
- package/cjs/migration/sql-serializer.js.map +0 -1
- package/cjs/migration/types.d.ts +0 -155
- package/cjs/migration/types.d.ts.map +0 -1
- package/cjs/model/methods/accessor-methods.d.ts +0 -13
- package/cjs/model/methods/accessor-methods.d.ts.map +0 -1
- package/cjs/model/methods/accessor-methods.js +0 -51
- package/cjs/model/methods/accessor-methods.js.map +0 -1
- package/cjs/model/methods/delete-methods.d.ts +0 -10
- package/cjs/model/methods/delete-methods.d.ts.map +0 -1
- package/cjs/model/methods/delete-methods.js +0 -10
- package/cjs/model/methods/delete-methods.js.map +0 -1
- package/cjs/model/methods/dirty-methods.d.ts +0 -10
- package/cjs/model/methods/dirty-methods.d.ts.map +0 -1
- package/cjs/model/methods/dirty-methods.js +0 -15
- package/cjs/model/methods/dirty-methods.js.map +0 -1
- package/cjs/model/methods/hydration-methods.d.ts +0 -10
- package/cjs/model/methods/hydration-methods.d.ts.map +0 -1
- package/cjs/model/methods/hydration-methods.js +0 -57
- package/cjs/model/methods/hydration-methods.js.map +0 -1
- package/cjs/model/methods/instance-event-methods.d.ts +0 -7
- package/cjs/model/methods/instance-event-methods.d.ts.map +0 -1
- package/cjs/model/methods/instance-event-methods.js +0 -15
- package/cjs/model/methods/instance-event-methods.js.map +0 -1
- package/cjs/model/methods/meta-methods.d.ts +0 -7
- package/cjs/model/methods/meta-methods.d.ts.map +0 -1
- package/cjs/model/methods/meta-methods.js +0 -78
- package/cjs/model/methods/meta-methods.js.map +0 -1
- package/cjs/model/methods/query-methods.d.ts +0 -24
- package/cjs/model/methods/query-methods.d.ts.map +0 -1
- package/cjs/model/methods/query-methods.js +0 -164
- package/cjs/model/methods/query-methods.js.map +0 -1
- package/cjs/model/methods/restore-methods.d.ts +0 -10
- package/cjs/model/methods/restore-methods.d.ts.map +0 -1
- package/cjs/model/methods/restore-methods.js +0 -13
- package/cjs/model/methods/restore-methods.js.map +0 -1
- package/cjs/model/methods/scope-methods.d.ts +0 -7
- package/cjs/model/methods/scope-methods.d.ts.map +0 -1
- package/cjs/model/methods/scope-methods.js +0 -15
- package/cjs/model/methods/scope-methods.js.map +0 -1
- package/cjs/model/methods/serialization-methods.d.ts +0 -3
- package/cjs/model/methods/serialization-methods.d.ts.map +0 -1
- package/cjs/model/methods/serialization-methods.js +0 -27
- package/cjs/model/methods/serialization-methods.js.map +0 -1
- package/cjs/model/methods/static-event-methods.d.ts +0 -9
- package/cjs/model/methods/static-event-methods.d.ts.map +0 -1
- package/cjs/model/methods/static-event-methods.js +0 -29
- package/cjs/model/methods/static-event-methods.js.map +0 -1
- package/cjs/model/methods/write-methods.d.ts +0 -10
- package/cjs/model/methods/write-methods.d.ts.map +0 -1
- package/cjs/model/methods/write-methods.js +0 -52
- package/cjs/model/methods/write-methods.js.map +0 -1
- package/cjs/model/model.d.ts +0 -1647
- package/cjs/model/model.d.ts.map +0 -1
- package/cjs/model/model.js +0 -1657
- package/cjs/model/model.js.map +0 -1
- package/cjs/model/model.types.d.ts +0 -44
- package/cjs/model/model.types.d.ts.map +0 -1
- package/cjs/model/register-model.d.ts +0 -81
- package/cjs/model/register-model.d.ts.map +0 -1
- package/cjs/model/register-model.js +0 -94
- package/cjs/model/register-model.js.map +0 -1
- package/cjs/query-builder/query-builder.d.ts +0 -556
- package/cjs/query-builder/query-builder.d.ts.map +0 -1
- package/cjs/query-builder/query-builder.js +0 -1070
- package/cjs/query-builder/query-builder.js.map +0 -1
- package/cjs/relations/helpers.d.ts +0 -156
- package/cjs/relations/helpers.d.ts.map +0 -1
- package/cjs/relations/helpers.js +0 -202
- package/cjs/relations/helpers.js.map +0 -1
- package/cjs/relations/index.d.ts +0 -35
- package/cjs/relations/index.d.ts.map +0 -1
- package/cjs/relations/pivot-operations.d.ts +0 -160
- package/cjs/relations/pivot-operations.d.ts.map +0 -1
- package/cjs/relations/pivot-operations.js +0 -293
- package/cjs/relations/pivot-operations.js.map +0 -1
- package/cjs/relations/relation-hydrator.d.ts +0 -68
- package/cjs/relations/relation-hydrator.d.ts.map +0 -1
- package/cjs/relations/relation-hydrator.js +0 -81
- package/cjs/relations/relation-hydrator.js.map +0 -1
- package/cjs/relations/relation-loader.d.ts +0 -194
- package/cjs/relations/relation-loader.d.ts.map +0 -1
- package/cjs/relations/relation-loader.js +0 -466
- package/cjs/relations/relation-loader.js.map +0 -1
- package/cjs/relations/types.d.ts +0 -306
- package/cjs/relations/types.d.ts.map +0 -1
- package/cjs/remover/database-remover.d.ts +0 -100
- package/cjs/remover/database-remover.d.ts.map +0 -1
- package/cjs/remover/database-remover.js +0 -214
- package/cjs/remover/database-remover.js.map +0 -1
- package/cjs/restorer/database-restorer.d.ts +0 -131
- package/cjs/restorer/database-restorer.d.ts.map +0 -1
- package/cjs/restorer/database-restorer.js +0 -434
- package/cjs/restorer/database-restorer.js.map +0 -1
- package/cjs/sql-database-dirty-tracker.d.ts +0 -13
- package/cjs/sql-database-dirty-tracker.d.ts.map +0 -1
- package/cjs/sql-database-dirty-tracker.js +0 -14
- package/cjs/sql-database-dirty-tracker.js.map +0 -1
- package/cjs/sync/index.d.ts +0 -12
- package/cjs/sync/index.d.ts.map +0 -1
- package/cjs/sync/model-events.d.ts +0 -62
- package/cjs/sync/model-events.d.ts.map +0 -1
- package/cjs/sync/model-events.js +0 -49
- package/cjs/sync/model-events.js.map +0 -1
- package/cjs/sync/model-sync-operation.d.ts +0 -163
- package/cjs/sync/model-sync-operation.d.ts.map +0 -1
- package/cjs/sync/model-sync-operation.js +0 -292
- package/cjs/sync/model-sync-operation.js.map +0 -1
- package/cjs/sync/model-sync.d.ts +0 -130
- package/cjs/sync/model-sync.d.ts.map +0 -1
- package/cjs/sync/model-sync.js +0 -178
- package/cjs/sync/model-sync.js.map +0 -1
- package/cjs/sync/sync-context.d.ts +0 -70
- package/cjs/sync/sync-context.d.ts.map +0 -1
- package/cjs/sync/sync-context.js +0 -101
- package/cjs/sync/sync-context.js.map +0 -1
- package/cjs/sync/sync-manager.d.ts +0 -213
- package/cjs/sync/sync-manager.d.ts.map +0 -1
- package/cjs/sync/sync-manager.js +0 -689
- package/cjs/sync/sync-manager.js.map +0 -1
- package/cjs/sync/types.d.ts +0 -289
- package/cjs/sync/types.d.ts.map +0 -1
- package/cjs/test-migrations/test-enhanced-features.migration.d.ts +0 -15
- package/cjs/test-migrations/test-enhanced-features.migration.d.ts.map +0 -1
- package/cjs/types.d.ts +0 -371
- package/cjs/types.d.ts.map +0 -1
- package/cjs/utils/connect-to-database.d.ts +0 -307
- package/cjs/utils/connect-to-database.d.ts.map +0 -1
- package/cjs/utils/connect-to-database.js +0 -130
- package/cjs/utils/connect-to-database.js.map +0 -1
- package/cjs/utils/database-writer.utils.d.ts +0 -15
- package/cjs/utils/database-writer.utils.d.ts.map +0 -1
- package/cjs/utils/database-writer.utils.js +0 -14
- package/cjs/utils/database-writer.utils.js.map +0 -1
- package/cjs/utils/define-model.js +0 -100
- package/cjs/utils/define-model.js.map +0 -1
- package/cjs/utils/is-valid-date-value.d.ts +0 -5
- package/cjs/utils/is-valid-date-value.d.ts.map +0 -1
- package/cjs/utils/is-valid-date-value.js +0 -25
- package/cjs/utils/is-valid-date-value.js.map +0 -1
- package/cjs/utils/once-connected.d.ts +0 -146
- package/cjs/utils/once-connected.d.ts.map +0 -1
- package/cjs/utils/once-connected.js +0 -251
- package/cjs/utils/once-connected.js.map +0 -1
- package/cjs/validation/database-seal-plugins.d.ts +0 -12
- package/cjs/validation/database-seal-plugins.d.ts.map +0 -1
- package/cjs/validation/database-seal-plugins.js +0 -1
- package/cjs/validation/database-seal-plugins.js.map +0 -1
- package/cjs/validation/database-writer-validation-error.d.ts +0 -97
- package/cjs/validation/database-writer-validation-error.d.ts.map +0 -1
- package/cjs/validation/database-writer-validation-error.js +0 -160
- package/cjs/validation/database-writer-validation-error.js.map +0 -1
- package/cjs/validation/index.d.ts +0 -3
- package/cjs/validation/index.d.ts.map +0 -1
- package/cjs/validation/mutators/embed-mutator.d.ts +0 -9
- package/cjs/validation/mutators/embed-mutator.d.ts.map +0 -1
- package/cjs/validation/mutators/embed-mutator.js +0 -33
- package/cjs/validation/mutators/embed-mutator.js.map +0 -1
- package/cjs/validation/plugins/embed-validator-plugin.d.ts +0 -24
- package/cjs/validation/plugins/embed-validator-plugin.d.ts.map +0 -1
- package/cjs/validation/plugins/embed-validator-plugin.js +0 -18
- package/cjs/validation/plugins/embed-validator-plugin.js.map +0 -1
- package/cjs/validation/rules/database-model-rule.d.ts +0 -7
- package/cjs/validation/rules/database-model-rule.d.ts.map +0 -1
- package/cjs/validation/rules/database-model-rule.js +0 -27
- package/cjs/validation/rules/database-model-rule.js.map +0 -1
- package/cjs/validation/transformers/embed-model-transformer.d.ts +0 -3
- package/cjs/validation/transformers/embed-model-transformer.d.ts.map +0 -1
- package/cjs/validation/transformers/embed-model-transformer.js +0 -18
- package/cjs/validation/transformers/embed-model-transformer.js.map +0 -1
- package/cjs/validation/validators/embed-validator.d.ts +0 -21
- package/cjs/validation/validators/embed-validator.d.ts.map +0 -1
- package/cjs/validation/validators/embed-validator.js +0 -43
- package/cjs/validation/validators/embed-validator.js.map +0 -1
- package/cjs/writer/database-writer.d.ts +0 -174
- package/cjs/writer/database-writer.d.ts.map +0 -1
- package/cjs/writer/database-writer.js +0 -400
- package/cjs/writer/database-writer.js.map +0 -1
- package/esm/context/database-data-source-context.d.ts +0 -29
- package/esm/context/database-data-source-context.d.ts.map +0 -1
- package/esm/context/database-data-source-context.js +0 -28
- package/esm/context/database-data-source-context.js.map +0 -1
- package/esm/context/database-transaction-context.d.ts +0 -35
- package/esm/context/database-transaction-context.d.ts.map +0 -1
- package/esm/context/database-transaction-context.js +0 -40
- package/esm/context/database-transaction-context.js.map +0 -1
- package/esm/contracts/database-driver.contract.d.ts +0 -450
- package/esm/contracts/database-driver.contract.d.ts.map +0 -1
- package/esm/contracts/database-id-generator.contract.d.ts +0 -109
- package/esm/contracts/database-id-generator.contract.d.ts.map +0 -1
- package/esm/contracts/database-remover.contract.d.ts +0 -104
- package/esm/contracts/database-remover.contract.d.ts.map +0 -1
- package/esm/contracts/database-restorer.contract.d.ts +0 -143
- package/esm/contracts/database-restorer.contract.d.ts.map +0 -1
- package/esm/contracts/database-writer.contract.d.ts +0 -119
- package/esm/contracts/database-writer.contract.d.ts.map +0 -1
- package/esm/contracts/driver-blueprint.contract.d.ts +0 -49
- package/esm/contracts/driver-blueprint.contract.d.ts.map +0 -1
- package/esm/contracts/index.d.ts +0 -10
- package/esm/contracts/index.d.ts.map +0 -1
- package/esm/contracts/migration-driver.contract.d.ts +0 -522
- package/esm/contracts/migration-driver.contract.d.ts.map +0 -1
- package/esm/contracts/query-builder.contract.d.ts +0 -1609
- package/esm/contracts/query-builder.contract.d.ts.map +0 -1
- package/esm/contracts/sync-adapter.contract.d.ts +0 -58
- package/esm/contracts/sync-adapter.contract.d.ts.map +0 -1
- package/esm/data-source/data-source-registry.d.ts +0 -108
- package/esm/data-source/data-source-registry.d.ts.map +0 -1
- package/esm/data-source/data-source-registry.js +0 -145
- package/esm/data-source/data-source-registry.js.map +0 -1
- package/esm/data-source/data-source.d.ts +0 -147
- package/esm/data-source/data-source.d.ts.map +0 -1
- package/esm/data-source/data-source.js +0 -83
- package/esm/data-source/data-source.js.map +0 -1
- package/esm/database-dirty-tracker.d.ts +0 -252
- package/esm/database-dirty-tracker.d.ts.map +0 -1
- package/esm/database-dirty-tracker.js +0 -386
- package/esm/database-dirty-tracker.js.map +0 -1
- package/esm/drivers/mongodb/mongodb-blueprint.d.ts +0 -30
- package/esm/drivers/mongodb/mongodb-blueprint.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-blueprint.js +0 -51
- package/esm/drivers/mongodb/mongodb-blueprint.js.map +0 -1
- package/esm/drivers/mongodb/mongodb-driver.d.ts +0 -325
- package/esm/drivers/mongodb/mongodb-driver.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-driver.js +0 -845
- package/esm/drivers/mongodb/mongodb-driver.js.map +0 -1
- package/esm/drivers/mongodb/mongodb-id-generator.d.ts +0 -116
- package/esm/drivers/mongodb/mongodb-id-generator.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-id-generator.js +0 -149
- package/esm/drivers/mongodb/mongodb-id-generator.js.map +0 -1
- package/esm/drivers/mongodb/mongodb-migration-driver.d.ts +0 -317
- package/esm/drivers/mongodb/mongodb-migration-driver.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-migration-driver.js +0 -666
- package/esm/drivers/mongodb/mongodb-migration-driver.js.map +0 -1
- package/esm/drivers/mongodb/mongodb-query-builder.d.ts +0 -1122
- package/esm/drivers/mongodb/mongodb-query-builder.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-query-builder.js +0 -1988
- package/esm/drivers/mongodb/mongodb-query-builder.js.map +0 -1
- package/esm/drivers/mongodb/mongodb-query-operations.d.ts +0 -226
- package/esm/drivers/mongodb/mongodb-query-operations.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-query-operations.js +0 -270
- package/esm/drivers/mongodb/mongodb-query-operations.js.map +0 -1
- package/esm/drivers/mongodb/mongodb-query-parser.d.ts +0 -262
- package/esm/drivers/mongodb/mongodb-query-parser.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-query-parser.js +0 -1351
- package/esm/drivers/mongodb/mongodb-query-parser.js.map +0 -1
- package/esm/drivers/mongodb/mongodb-sync-adapter.d.ts +0 -79
- package/esm/drivers/mongodb/mongodb-sync-adapter.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-sync-adapter.js +0 -146
- package/esm/drivers/mongodb/mongodb-sync-adapter.js.map +0 -1
- package/esm/drivers/mongodb/types.d.ts +0 -43
- package/esm/drivers/mongodb/types.d.ts.map +0 -1
- package/esm/drivers/postgres/index.d.ts +0 -16
- package/esm/drivers/postgres/index.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-blueprint.d.ts +0 -64
- package/esm/drivers/postgres/postgres-blueprint.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-blueprint.js +0 -121
- package/esm/drivers/postgres/postgres-blueprint.js.map +0 -1
- package/esm/drivers/postgres/postgres-dialect.d.ts +0 -136
- package/esm/drivers/postgres/postgres-dialect.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-dialect.js +0 -268
- package/esm/drivers/postgres/postgres-dialect.js.map +0 -1
- package/esm/drivers/postgres/postgres-driver.d.ts +0 -432
- package/esm/drivers/postgres/postgres-driver.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-driver.js +0 -1008
- package/esm/drivers/postgres/postgres-driver.js.map +0 -1
- package/esm/drivers/postgres/postgres-migration-driver.d.ts +0 -397
- package/esm/drivers/postgres/postgres-migration-driver.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-migration-driver.js +0 -900
- package/esm/drivers/postgres/postgres-migration-driver.js.map +0 -1
- package/esm/drivers/postgres/postgres-query-builder.d.ts +0 -254
- package/esm/drivers/postgres/postgres-query-builder.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-query-builder.js +0 -933
- package/esm/drivers/postgres/postgres-query-builder.js.map +0 -1
- package/esm/drivers/postgres/postgres-query-parser.d.ts +0 -328
- package/esm/drivers/postgres/postgres-query-parser.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-query-parser.js +0 -868
- package/esm/drivers/postgres/postgres-query-parser.js.map +0 -1
- package/esm/drivers/postgres/postgres-sql-serializer.d.ts +0 -37
- package/esm/drivers/postgres/postgres-sql-serializer.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-sql-serializer.js +0 -400
- package/esm/drivers/postgres/postgres-sql-serializer.js.map +0 -1
- package/esm/drivers/postgres/postgres-sync-adapter.d.ts +0 -83
- package/esm/drivers/postgres/postgres-sync-adapter.d.ts.map +0 -1
- package/esm/drivers/postgres/postgres-sync-adapter.js +0 -204
- package/esm/drivers/postgres/postgres-sync-adapter.js.map +0 -1
- package/esm/drivers/postgres/types.d.ts +0 -144
- package/esm/drivers/postgres/types.d.ts.map +0 -1
- package/esm/drivers/sql/index.d.ts +0 -10
- package/esm/drivers/sql/index.d.ts.map +0 -1
- package/esm/drivers/sql/sql-dialect.contract.d.ts +0 -204
- package/esm/drivers/sql/sql-dialect.contract.d.ts.map +0 -1
- package/esm/drivers/sql/sql-types.d.ts +0 -202
- package/esm/drivers/sql/sql-types.d.ts.map +0 -1
- package/esm/errors/missing-data-source.error.d.ts +0 -22
- package/esm/errors/missing-data-source.error.d.ts.map +0 -1
- package/esm/errors/missing-data-source.error.js +0 -29
- package/esm/errors/missing-data-source.error.js.map +0 -1
- package/esm/errors/transaction-rollback.error.d.ts +0 -20
- package/esm/errors/transaction-rollback.error.d.ts.map +0 -1
- package/esm/errors/transaction-rollback.error.js +0 -27
- package/esm/errors/transaction-rollback.error.js.map +0 -1
- package/esm/events/model-events.d.ts +0 -231
- package/esm/events/model-events.d.ts.map +0 -1
- package/esm/events/model-events.js +0 -259
- package/esm/events/model-events.js.map +0 -1
- package/esm/expressions/aggregate-expressions.d.ts +0 -215
- package/esm/expressions/aggregate-expressions.d.ts.map +0 -1
- package/esm/expressions/aggregate-expressions.js +0 -221
- package/esm/expressions/aggregate-expressions.js.map +0 -1
- package/esm/expressions/index.d.ts +0 -2
- package/esm/expressions/index.d.ts.map +0 -1
- package/esm/index.d.ts +0 -45
- package/esm/index.d.ts.map +0 -1
- package/esm/index.js +0 -1
- package/esm/index.js.map +0 -1
- package/esm/migration/column-builder.d.ts +0 -417
- package/esm/migration/column-builder.d.ts.map +0 -1
- package/esm/migration/column-builder.js +0 -586
- package/esm/migration/column-builder.js.map +0 -1
- package/esm/migration/column-helpers.d.ts +0 -275
- package/esm/migration/column-helpers.d.ts.map +0 -1
- package/esm/migration/column-helpers.js +0 -389
- package/esm/migration/column-helpers.js.map +0 -1
- package/esm/migration/foreign-key-builder.d.ts +0 -103
- package/esm/migration/foreign-key-builder.d.ts.map +0 -1
- package/esm/migration/foreign-key-builder.js +0 -121
- package/esm/migration/foreign-key-builder.js.map +0 -1
- package/esm/migration/index.d.ts +0 -7
- package/esm/migration/index.d.ts.map +0 -1
- package/esm/migration/migration-runner.d.ts +0 -278
- package/esm/migration/migration-runner.d.ts.map +0 -1
- package/esm/migration/migration-runner.js +0 -815
- package/esm/migration/migration-runner.js.map +0 -1
- package/esm/migration/migration.d.ts +0 -1988
- package/esm/migration/migration.d.ts.map +0 -1
- package/esm/migration/migration.js +0 -2162
- package/esm/migration/migration.js.map +0 -1
- package/esm/migration/sql-grammar.d.ts +0 -61
- package/esm/migration/sql-grammar.d.ts.map +0 -1
- package/esm/migration/sql-grammar.js +0 -164
- package/esm/migration/sql-grammar.js.map +0 -1
- package/esm/migration/sql-serializer.d.ts +0 -22
- package/esm/migration/sql-serializer.d.ts.map +0 -1
- package/esm/migration/sql-serializer.js +0 -26
- package/esm/migration/sql-serializer.js.map +0 -1
- package/esm/migration/types.d.ts +0 -155
- package/esm/migration/types.d.ts.map +0 -1
- package/esm/model/methods/accessor-methods.d.ts +0 -13
- package/esm/model/methods/accessor-methods.d.ts.map +0 -1
- package/esm/model/methods/accessor-methods.js +0 -51
- package/esm/model/methods/accessor-methods.js.map +0 -1
- package/esm/model/methods/delete-methods.d.ts +0 -10
- package/esm/model/methods/delete-methods.d.ts.map +0 -1
- package/esm/model/methods/delete-methods.js +0 -10
- package/esm/model/methods/delete-methods.js.map +0 -1
- package/esm/model/methods/dirty-methods.d.ts +0 -10
- package/esm/model/methods/dirty-methods.d.ts.map +0 -1
- package/esm/model/methods/dirty-methods.js +0 -15
- package/esm/model/methods/dirty-methods.js.map +0 -1
- package/esm/model/methods/hydration-methods.d.ts +0 -10
- package/esm/model/methods/hydration-methods.d.ts.map +0 -1
- package/esm/model/methods/hydration-methods.js +0 -57
- package/esm/model/methods/hydration-methods.js.map +0 -1
- package/esm/model/methods/instance-event-methods.d.ts +0 -7
- package/esm/model/methods/instance-event-methods.d.ts.map +0 -1
- package/esm/model/methods/instance-event-methods.js +0 -15
- package/esm/model/methods/instance-event-methods.js.map +0 -1
- package/esm/model/methods/meta-methods.d.ts +0 -7
- package/esm/model/methods/meta-methods.d.ts.map +0 -1
- package/esm/model/methods/meta-methods.js +0 -78
- package/esm/model/methods/meta-methods.js.map +0 -1
- package/esm/model/methods/query-methods.d.ts +0 -24
- package/esm/model/methods/query-methods.d.ts.map +0 -1
- package/esm/model/methods/query-methods.js +0 -164
- package/esm/model/methods/query-methods.js.map +0 -1
- package/esm/model/methods/restore-methods.d.ts +0 -10
- package/esm/model/methods/restore-methods.d.ts.map +0 -1
- package/esm/model/methods/restore-methods.js +0 -13
- package/esm/model/methods/restore-methods.js.map +0 -1
- package/esm/model/methods/scope-methods.d.ts +0 -7
- package/esm/model/methods/scope-methods.d.ts.map +0 -1
- package/esm/model/methods/scope-methods.js +0 -15
- package/esm/model/methods/scope-methods.js.map +0 -1
- package/esm/model/methods/serialization-methods.d.ts +0 -3
- package/esm/model/methods/serialization-methods.d.ts.map +0 -1
- package/esm/model/methods/serialization-methods.js +0 -27
- package/esm/model/methods/serialization-methods.js.map +0 -1
- package/esm/model/methods/static-event-methods.d.ts +0 -9
- package/esm/model/methods/static-event-methods.d.ts.map +0 -1
- package/esm/model/methods/static-event-methods.js +0 -29
- package/esm/model/methods/static-event-methods.js.map +0 -1
- package/esm/model/methods/write-methods.d.ts +0 -10
- package/esm/model/methods/write-methods.d.ts.map +0 -1
- package/esm/model/methods/write-methods.js +0 -52
- package/esm/model/methods/write-methods.js.map +0 -1
- package/esm/model/model.d.ts +0 -1647
- package/esm/model/model.d.ts.map +0 -1
- package/esm/model/model.js +0 -1657
- package/esm/model/model.js.map +0 -1
- package/esm/model/model.types.d.ts +0 -44
- package/esm/model/model.types.d.ts.map +0 -1
- package/esm/model/register-model.d.ts +0 -81
- package/esm/model/register-model.d.ts.map +0 -1
- package/esm/model/register-model.js +0 -94
- package/esm/model/register-model.js.map +0 -1
- package/esm/query-builder/query-builder.d.ts +0 -556
- package/esm/query-builder/query-builder.d.ts.map +0 -1
- package/esm/query-builder/query-builder.js +0 -1070
- package/esm/query-builder/query-builder.js.map +0 -1
- package/esm/relations/helpers.d.ts +0 -156
- package/esm/relations/helpers.d.ts.map +0 -1
- package/esm/relations/helpers.js +0 -202
- package/esm/relations/helpers.js.map +0 -1
- package/esm/relations/index.d.ts +0 -35
- package/esm/relations/index.d.ts.map +0 -1
- package/esm/relations/pivot-operations.d.ts +0 -160
- package/esm/relations/pivot-operations.d.ts.map +0 -1
- package/esm/relations/pivot-operations.js +0 -293
- package/esm/relations/pivot-operations.js.map +0 -1
- package/esm/relations/relation-hydrator.d.ts +0 -68
- package/esm/relations/relation-hydrator.d.ts.map +0 -1
- package/esm/relations/relation-hydrator.js +0 -81
- package/esm/relations/relation-hydrator.js.map +0 -1
- package/esm/relations/relation-loader.d.ts +0 -194
- package/esm/relations/relation-loader.d.ts.map +0 -1
- package/esm/relations/relation-loader.js +0 -466
- package/esm/relations/relation-loader.js.map +0 -1
- package/esm/relations/types.d.ts +0 -306
- package/esm/relations/types.d.ts.map +0 -1
- package/esm/remover/database-remover.d.ts +0 -100
- package/esm/remover/database-remover.d.ts.map +0 -1
- package/esm/remover/database-remover.js +0 -214
- package/esm/remover/database-remover.js.map +0 -1
- package/esm/restorer/database-restorer.d.ts +0 -131
- package/esm/restorer/database-restorer.d.ts.map +0 -1
- package/esm/restorer/database-restorer.js +0 -434
- package/esm/restorer/database-restorer.js.map +0 -1
- package/esm/sql-database-dirty-tracker.d.ts +0 -13
- package/esm/sql-database-dirty-tracker.d.ts.map +0 -1
- package/esm/sql-database-dirty-tracker.js +0 -14
- package/esm/sql-database-dirty-tracker.js.map +0 -1
- package/esm/sync/index.d.ts +0 -12
- package/esm/sync/index.d.ts.map +0 -1
- package/esm/sync/model-events.d.ts +0 -62
- package/esm/sync/model-events.d.ts.map +0 -1
- package/esm/sync/model-events.js +0 -49
- package/esm/sync/model-events.js.map +0 -1
- package/esm/sync/model-sync-operation.d.ts +0 -163
- package/esm/sync/model-sync-operation.d.ts.map +0 -1
- package/esm/sync/model-sync-operation.js +0 -292
- package/esm/sync/model-sync-operation.js.map +0 -1
- package/esm/sync/model-sync.d.ts +0 -130
- package/esm/sync/model-sync.d.ts.map +0 -1
- package/esm/sync/model-sync.js +0 -178
- package/esm/sync/model-sync.js.map +0 -1
- package/esm/sync/sync-context.d.ts +0 -70
- package/esm/sync/sync-context.d.ts.map +0 -1
- package/esm/sync/sync-context.js +0 -101
- package/esm/sync/sync-context.js.map +0 -1
- package/esm/sync/sync-manager.d.ts +0 -213
- package/esm/sync/sync-manager.d.ts.map +0 -1
- package/esm/sync/sync-manager.js +0 -689
- package/esm/sync/sync-manager.js.map +0 -1
- package/esm/sync/types.d.ts +0 -289
- package/esm/sync/types.d.ts.map +0 -1
- package/esm/test-migrations/test-enhanced-features.migration.d.ts +0 -15
- package/esm/test-migrations/test-enhanced-features.migration.d.ts.map +0 -1
- package/esm/types.d.ts +0 -371
- package/esm/types.d.ts.map +0 -1
- package/esm/utils/connect-to-database.d.ts +0 -307
- package/esm/utils/connect-to-database.d.ts.map +0 -1
- package/esm/utils/connect-to-database.js +0 -130
- package/esm/utils/connect-to-database.js.map +0 -1
- package/esm/utils/database-writer.utils.d.ts +0 -15
- package/esm/utils/database-writer.utils.d.ts.map +0 -1
- package/esm/utils/database-writer.utils.js +0 -14
- package/esm/utils/database-writer.utils.js.map +0 -1
- package/esm/utils/define-model.js +0 -100
- package/esm/utils/define-model.js.map +0 -1
- package/esm/utils/is-valid-date-value.d.ts +0 -5
- package/esm/utils/is-valid-date-value.d.ts.map +0 -1
- package/esm/utils/is-valid-date-value.js +0 -25
- package/esm/utils/is-valid-date-value.js.map +0 -1
- package/esm/utils/once-connected.d.ts +0 -146
- package/esm/utils/once-connected.d.ts.map +0 -1
- package/esm/utils/once-connected.js +0 -251
- package/esm/utils/once-connected.js.map +0 -1
- package/esm/validation/database-seal-plugins.d.ts +0 -12
- package/esm/validation/database-seal-plugins.d.ts.map +0 -1
- package/esm/validation/database-seal-plugins.js +0 -1
- package/esm/validation/database-seal-plugins.js.map +0 -1
- package/esm/validation/database-writer-validation-error.d.ts +0 -97
- package/esm/validation/database-writer-validation-error.d.ts.map +0 -1
- package/esm/validation/database-writer-validation-error.js +0 -160
- package/esm/validation/database-writer-validation-error.js.map +0 -1
- package/esm/validation/index.d.ts +0 -3
- package/esm/validation/index.d.ts.map +0 -1
- package/esm/validation/mutators/embed-mutator.d.ts +0 -9
- package/esm/validation/mutators/embed-mutator.d.ts.map +0 -1
- package/esm/validation/mutators/embed-mutator.js +0 -33
- package/esm/validation/mutators/embed-mutator.js.map +0 -1
- package/esm/validation/plugins/embed-validator-plugin.d.ts +0 -24
- package/esm/validation/plugins/embed-validator-plugin.d.ts.map +0 -1
- package/esm/validation/plugins/embed-validator-plugin.js +0 -18
- package/esm/validation/plugins/embed-validator-plugin.js.map +0 -1
- package/esm/validation/rules/database-model-rule.d.ts +0 -7
- package/esm/validation/rules/database-model-rule.d.ts.map +0 -1
- package/esm/validation/rules/database-model-rule.js +0 -27
- package/esm/validation/rules/database-model-rule.js.map +0 -1
- package/esm/validation/transformers/embed-model-transformer.d.ts +0 -3
- package/esm/validation/transformers/embed-model-transformer.d.ts.map +0 -1
- package/esm/validation/transformers/embed-model-transformer.js +0 -18
- package/esm/validation/transformers/embed-model-transformer.js.map +0 -1
- package/esm/validation/validators/embed-validator.d.ts +0 -21
- package/esm/validation/validators/embed-validator.d.ts.map +0 -1
- package/esm/validation/validators/embed-validator.js +0 -43
- package/esm/validation/validators/embed-validator.js.map +0 -1
- package/esm/writer/database-writer.d.ts +0 -174
- package/esm/writer/database-writer.d.ts.map +0 -1
- package/esm/writer/database-writer.js +0 -400
- package/esm/writer/database-writer.js.map +0 -1
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { ChildModel } from "./model.types.mjs";
|
|
2
|
+
import { BelongsToManyOptions, BelongsToOptions, HasManyOptions, HasOneOptions } from "../relations/types.mjs";
|
|
3
|
+
import { Model } from "./model.mjs";
|
|
4
|
+
import { Lazy } from "@mongez/reinforcements";
|
|
5
|
+
|
|
6
|
+
//#region ../../@warlock.js/cascade/src/model/relation-decorators.d.ts
|
|
7
|
+
/**
|
|
8
|
+
* Key used to stash relation definitions on the decorator metadata object.
|
|
9
|
+
* Exported so `@RegisterModel` (in `register-model.ts`) can read it back.
|
|
10
|
+
*/
|
|
11
|
+
declare const RELATION_METADATA_KEY: unique symbol;
|
|
12
|
+
/**
|
|
13
|
+
* Declares a `belongsTo` relation on a model field.
|
|
14
|
+
*
|
|
15
|
+
* The foreign key lives on **this** model and points at the related
|
|
16
|
+
* model's primary key. Defaults: FK column inferred as `{relationName}_id`
|
|
17
|
+
* (snake-cased) — e.g. `organization_id` for `organization?: Organization`.
|
|
18
|
+
*
|
|
19
|
+
* @param model - The related model, in any of three forms:
|
|
20
|
+
* - `"User"` — registered name (requires `@RegisterModel()` on target).
|
|
21
|
+
* - `User` — direct class reference (cleanest for non-cycle relations).
|
|
22
|
+
* - `lazy(() => User)` — typed but cycle-safe (use when the two model
|
|
23
|
+
* files import each other).
|
|
24
|
+
* @param options - Inline overrides for FK / owner key / column select
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```ts
|
|
28
|
+
* import { lazy } from "@mongez/reinforcements";
|
|
29
|
+
*
|
|
30
|
+
* class User extends Model {
|
|
31
|
+
* @BelongsTo(Organization) public organization?: Organization;
|
|
32
|
+
* @BelongsTo("User", { foreignKey: "manager_id" }) public manager?: User;
|
|
33
|
+
* @BelongsTo(lazy(() => Team)) public team?: Team; // cycle case
|
|
34
|
+
* }
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
declare const BelongsTo: (modelRelation: string | ChildModel<Model> | Lazy<unknown>, options?: string | BelongsToOptions | undefined) => <This>(_value: undefined, context: ClassFieldDecoratorContext<This>) => void;
|
|
38
|
+
/**
|
|
39
|
+
* Declares a `hasOne` relation on a model field.
|
|
40
|
+
*
|
|
41
|
+
* The foreign key lives on the **related** model and points back at this
|
|
42
|
+
* model's primary key. Defaults: FK column inferred as
|
|
43
|
+
* `{thisModelSnakeName}_id` (e.g. `user_id` on the `Profile` table).
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```ts
|
|
47
|
+
* class User extends Model {
|
|
48
|
+
* @HasOne("Profile") profile?: Profile;
|
|
49
|
+
* @HasOne("UserSettings", { foreignKey: "owner_id" }) settings?: UserSettings;
|
|
50
|
+
* }
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
declare const HasOne: (modelRelation: string | ChildModel<Model> | Lazy<unknown>, options?: string | HasOneOptions | undefined) => <This>(_value: undefined, context: ClassFieldDecoratorContext<This>) => void;
|
|
54
|
+
/**
|
|
55
|
+
* Declares a `hasMany` relation on a model field.
|
|
56
|
+
*
|
|
57
|
+
* Same shape as `@HasOne` but loads an array. The foreign key lives on
|
|
58
|
+
* the related model. Defaults: FK column inferred as
|
|
59
|
+
* `{thisModelSnakeName}_id`.
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```ts
|
|
63
|
+
* class User extends Model {
|
|
64
|
+
* @HasMany("Post") posts?: Post[];
|
|
65
|
+
* @HasMany("Comment", { foreignKey: "author_id" }) comments?: Comment[];
|
|
66
|
+
* }
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
declare const HasMany: (modelRelation: string | ChildModel<Model> | Lazy<unknown>, options?: string | HasManyOptions | undefined) => <This>(_value: undefined, context: ClassFieldDecoratorContext<This>) => void;
|
|
70
|
+
/**
|
|
71
|
+
* Declares a `belongsToMany` relation on a model field.
|
|
72
|
+
*
|
|
73
|
+
* Defaults: pivot table inferred as the alphabetical snake-case join of
|
|
74
|
+
* the two model names (`Post` + `Tag` → `post_tag`); pivot columns
|
|
75
|
+
* inferred as `{modelSnakeName}_id` on each side.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```ts
|
|
79
|
+
* class Post extends Model {
|
|
80
|
+
* @BelongsToMany("Tag") tags?: Tag[];
|
|
81
|
+
* @BelongsToMany("User", { pivot: "post_collaborators" }) collaborators?: User[];
|
|
82
|
+
* }
|
|
83
|
+
* ```
|
|
84
|
+
*/
|
|
85
|
+
declare const BelongsToMany: (modelRelation: string | ChildModel<Model> | Lazy<unknown>, options?: string | BelongsToManyOptions | undefined) => <This>(_value: undefined, context: ClassFieldDecoratorContext<This>) => void;
|
|
86
|
+
//#endregion
|
|
87
|
+
export { BelongsTo, BelongsToMany, HasMany, HasOne, RELATION_METADATA_KEY };
|
|
88
|
+
//# sourceMappingURL=relation-decorators.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relation-decorators.d.mts","names":[],"sources":["../../../../../../@warlock.js/cascade/src/model/relation-decorators.ts"],"mappings":";;;;;;;;;;cA2Ha,qBAAA;;;AAgB0E;AAqFvF;;;;;;;;;;;;;;;;;;;;;;cAjBa,SAAA,GAAS,aAAA,WAvEM,UAAA,CAAW,KAAA,IAAS,IAAA,WAAa,OAAA,YAAA,gBAAA,wBAGlC,MAAA,aAAmB,OAAA,EAAS,0BAAA,CAA2B,IAAA;AAAK;AAsGvF;;;;;;;;;;;;;;AAtGuF,cAqF1E,MAAA,GAAM,aAAA,WAxFS,UAAA,CAAW,KAAA,IAAS,IAAA,WAAa,OAAA,YAAA,aAAA,wBAGlC,MAAA,aAAmB,OAAA,EAAS,0BAAA,CAA2B,IAAA;;;;;;;;;AAAK;AAuHvF;;;;;;cAjBa,OAAA,GAAO,aAAA,WAzGQ,UAAA,CAAW,KAAA,IAAS,IAAA,WAAa,OAAA,YAAA,cAAA,wBAGlC,MAAA,aAAmB,OAAA,EAAS,0BAAA,CAA2B,IAAA;;;;;;;;;;;;;;;;cAuHrE,aAAA,GAAa,aAAA,WA1HE,UAAA,CAAW,KAAA,IAAS,IAAA,WAAa,OAAA,YAAA,oBAAA,wBAGlC,MAAA,aAAmB,OAAA,EAAS,0BAAA,CAA2B,IAAA"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { capitalize } from "@mongez/reinforcements";
|
|
2
|
+
|
|
3
|
+
//#region ../../@warlock.js/cascade/src/model/relation-decorators.ts
|
|
4
|
+
/**
|
|
5
|
+
* @fileoverview TC39 Stage 3 class field decorators for declaring model
|
|
6
|
+
* relations directly on the field.
|
|
7
|
+
*
|
|
8
|
+
* Replaces the legacy `static relations = { name: hasMany("Foo") }` shape
|
|
9
|
+
* with co-located, single-declaration syntax:
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* @RegisterModel()
|
|
14
|
+
* class User extends Model {
|
|
15
|
+
* @BelongsTo("Organization") organization?: Organization;
|
|
16
|
+
* @HasOne("Profile") profile?: Profile;
|
|
17
|
+
* @HasMany("Post") posts?: Post[];
|
|
18
|
+
* @BelongsToMany("Group") groups?: Group[];
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* Foreign keys, local keys, and pivot tables are inferred from model names
|
|
23
|
+
* via the convention helpers in `relations/key-conventions.ts`. Inline
|
|
24
|
+
* options on the decorator override the conventions per relation.
|
|
25
|
+
*
|
|
26
|
+
* @module @warlock.js/cascade/model/relation-decorators
|
|
27
|
+
*/
|
|
28
|
+
/**
|
|
29
|
+
* Map raw decorator inputs into a `RelationDefinition` of the canonical
|
|
30
|
+
* shape consumed by the relation loader, pivot operations, etc.
|
|
31
|
+
*
|
|
32
|
+
* Note: foreign-key / pivot-table defaults are NOT resolved here — they
|
|
33
|
+
* live on each runtime resolution path (`RelationLoader`, `PivotOperations`,
|
|
34
|
+
* the postgres query builder) and read from `key-conventions.ts`. Recording
|
|
35
|
+
* `undefined` here keeps a single source of truth for the inference logic.
|
|
36
|
+
*/
|
|
37
|
+
function buildRelationDefinition(type, model, options) {
|
|
38
|
+
const localKey = type === "belongsTo" ? options?.ownerKey : options?.localKey;
|
|
39
|
+
return {
|
|
40
|
+
type,
|
|
41
|
+
model,
|
|
42
|
+
foreignKey: options?.foreignKey,
|
|
43
|
+
localKey,
|
|
44
|
+
pivot: options?.pivot,
|
|
45
|
+
pivotLocalKey: options?.pivotLocalKey,
|
|
46
|
+
pivotForeignKey: options?.pivotForeignKey,
|
|
47
|
+
select: options?.select
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Stash a relation definition into the class-level decorator metadata bag.
|
|
52
|
+
*
|
|
53
|
+
* **Why metadata, not addInitializer?** `context.addInitializer` on a
|
|
54
|
+
* *field* decorator fires per-instance, not per-class — so it only runs
|
|
55
|
+
* when `new ModelClass(...)` is called. Class-level operations like
|
|
56
|
+
* `Organization.withCount("users")` never construct instances, which means
|
|
57
|
+
* an initializer-based registration would leave `Organization.relations`
|
|
58
|
+
* permanently empty.
|
|
59
|
+
*
|
|
60
|
+
* TC39 stage 3 `context.metadata` is the right tool: a shared object across
|
|
61
|
+
* every decorator on the same class declaration. Field decorators write
|
|
62
|
+
* into it during decoration; `@RegisterModel` (a class decorator that runs
|
|
63
|
+
* AFTER all field decorators) reads it back and copies the relations onto
|
|
64
|
+
* the class's static `relations` map.
|
|
65
|
+
*
|
|
66
|
+
* The metadata object also prototype-chains to the parent class's metadata
|
|
67
|
+
* (per spec), so a subclass naturally inherits its parent's relations.
|
|
68
|
+
*/
|
|
69
|
+
function stashRelationInMetadata(metadata, relationName, definition) {
|
|
70
|
+
let relations = metadata[RELATION_METADATA_KEY];
|
|
71
|
+
if (!Object.prototype.hasOwnProperty.call(metadata, RELATION_METADATA_KEY)) {
|
|
72
|
+
relations = { ...relations ?? {} };
|
|
73
|
+
metadata[RELATION_METADATA_KEY] = relations;
|
|
74
|
+
}
|
|
75
|
+
relations[relationName] = definition;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Key used to stash relation definitions on the decorator metadata object.
|
|
79
|
+
* Exported so `@RegisterModel` (in `register-model.ts`) can read it back.
|
|
80
|
+
*/
|
|
81
|
+
const RELATION_METADATA_KEY = Symbol.for("@warlock.js/cascade:relations");
|
|
82
|
+
/**
|
|
83
|
+
* Builds a TC39 stage 3 class-field decorator that registers a relation
|
|
84
|
+
* of the given `type`. Each public decorator (`@BelongsTo`, `@HasMany`,
|
|
85
|
+
* etc.) is a thin specialisation of this factory.
|
|
86
|
+
*/
|
|
87
|
+
function makeRelationDecorator(type) {
|
|
88
|
+
return function(modelRelation, options) {
|
|
89
|
+
return function(_value, context) {
|
|
90
|
+
if (context.kind !== "field") throw new Error(`@${capitalize(type)} can only be applied to class fields — got "${context.kind}".`);
|
|
91
|
+
const relationName = String(context.name);
|
|
92
|
+
const definition = buildRelationDefinition(type, modelRelation, resolveOptions(options));
|
|
93
|
+
stashRelationInMetadata(context.metadata, relationName, definition);
|
|
94
|
+
};
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Normalise the decorator's second argument.
|
|
99
|
+
*
|
|
100
|
+
* Accepts three shapes:
|
|
101
|
+
* - Omitted (`undefined`): all defaults come from the runtime convention
|
|
102
|
+
* helpers (`inferBelongsToForeignKey`, `inferHasForeignKey`, …) per
|
|
103
|
+
* relation type. We must NOT pre-fill `foreignKey` here — the right
|
|
104
|
+
* convention depends on the relation type AND the *owner* model name,
|
|
105
|
+
* which the decorator doesn't know.
|
|
106
|
+
* - String: shorthand for `{ foreignKey: <string> }`, matching the legacy
|
|
107
|
+
* `belongsTo("Foo", "fk_col")` helper.
|
|
108
|
+
* - Object: passed through as-is.
|
|
109
|
+
*/
|
|
110
|
+
function resolveOptions(options) {
|
|
111
|
+
if (typeof options === "string") return { foreignKey: options };
|
|
112
|
+
return options;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Declares a `belongsTo` relation on a model field.
|
|
116
|
+
*
|
|
117
|
+
* The foreign key lives on **this** model and points at the related
|
|
118
|
+
* model's primary key. Defaults: FK column inferred as `{relationName}_id`
|
|
119
|
+
* (snake-cased) — e.g. `organization_id` for `organization?: Organization`.
|
|
120
|
+
*
|
|
121
|
+
* @param model - The related model, in any of three forms:
|
|
122
|
+
* - `"User"` — registered name (requires `@RegisterModel()` on target).
|
|
123
|
+
* - `User` — direct class reference (cleanest for non-cycle relations).
|
|
124
|
+
* - `lazy(() => User)` — typed but cycle-safe (use when the two model
|
|
125
|
+
* files import each other).
|
|
126
|
+
* @param options - Inline overrides for FK / owner key / column select
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```ts
|
|
130
|
+
* import { lazy } from "@mongez/reinforcements";
|
|
131
|
+
*
|
|
132
|
+
* class User extends Model {
|
|
133
|
+
* @BelongsTo(Organization) public organization?: Organization;
|
|
134
|
+
* @BelongsTo("User", { foreignKey: "manager_id" }) public manager?: User;
|
|
135
|
+
* @BelongsTo(lazy(() => Team)) public team?: Team; // cycle case
|
|
136
|
+
* }
|
|
137
|
+
* ```
|
|
138
|
+
*/
|
|
139
|
+
const BelongsTo = makeRelationDecorator("belongsTo");
|
|
140
|
+
/**
|
|
141
|
+
* Declares a `hasOne` relation on a model field.
|
|
142
|
+
*
|
|
143
|
+
* The foreign key lives on the **related** model and points back at this
|
|
144
|
+
* model's primary key. Defaults: FK column inferred as
|
|
145
|
+
* `{thisModelSnakeName}_id` (e.g. `user_id` on the `Profile` table).
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* ```ts
|
|
149
|
+
* class User extends Model {
|
|
150
|
+
* @HasOne("Profile") profile?: Profile;
|
|
151
|
+
* @HasOne("UserSettings", { foreignKey: "owner_id" }) settings?: UserSettings;
|
|
152
|
+
* }
|
|
153
|
+
* ```
|
|
154
|
+
*/
|
|
155
|
+
const HasOne = makeRelationDecorator("hasOne");
|
|
156
|
+
/**
|
|
157
|
+
* Declares a `hasMany` relation on a model field.
|
|
158
|
+
*
|
|
159
|
+
* Same shape as `@HasOne` but loads an array. The foreign key lives on
|
|
160
|
+
* the related model. Defaults: FK column inferred as
|
|
161
|
+
* `{thisModelSnakeName}_id`.
|
|
162
|
+
*
|
|
163
|
+
* @example
|
|
164
|
+
* ```ts
|
|
165
|
+
* class User extends Model {
|
|
166
|
+
* @HasMany("Post") posts?: Post[];
|
|
167
|
+
* @HasMany("Comment", { foreignKey: "author_id" }) comments?: Comment[];
|
|
168
|
+
* }
|
|
169
|
+
* ```
|
|
170
|
+
*/
|
|
171
|
+
const HasMany = makeRelationDecorator("hasMany");
|
|
172
|
+
/**
|
|
173
|
+
* Declares a `belongsToMany` relation on a model field.
|
|
174
|
+
*
|
|
175
|
+
* Defaults: pivot table inferred as the alphabetical snake-case join of
|
|
176
|
+
* the two model names (`Post` + `Tag` → `post_tag`); pivot columns
|
|
177
|
+
* inferred as `{modelSnakeName}_id` on each side.
|
|
178
|
+
*
|
|
179
|
+
* @example
|
|
180
|
+
* ```ts
|
|
181
|
+
* class Post extends Model {
|
|
182
|
+
* @BelongsToMany("Tag") tags?: Tag[];
|
|
183
|
+
* @BelongsToMany("User", { pivot: "post_collaborators" }) collaborators?: User[];
|
|
184
|
+
* }
|
|
185
|
+
* ```
|
|
186
|
+
*/
|
|
187
|
+
const BelongsToMany = makeRelationDecorator("belongsToMany");
|
|
188
|
+
|
|
189
|
+
//#endregion
|
|
190
|
+
export { BelongsTo, BelongsToMany, HasMany, HasOne, RELATION_METADATA_KEY };
|
|
191
|
+
//# sourceMappingURL=relation-decorators.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relation-decorators.mjs","names":[],"sources":["../../../../../../@warlock.js/cascade/src/model/relation-decorators.ts"],"sourcesContent":["/**\n * @fileoverview TC39 Stage 3 class field decorators for declaring model\n * relations directly on the field.\n *\n * Replaces the legacy `static relations = { name: hasMany(\"Foo\") }` shape\n * with co-located, single-declaration syntax:\n *\n * @example\n * ```ts\n * @RegisterModel()\n * class User extends Model {\n * @BelongsTo(\"Organization\") organization?: Organization;\n * @HasOne(\"Profile\") profile?: Profile;\n * @HasMany(\"Post\") posts?: Post[];\n * @BelongsToMany(\"Group\") groups?: Group[];\n * }\n * ```\n *\n * Foreign keys, local keys, and pivot tables are inferred from model names\n * via the convention helpers in `relations/key-conventions.ts`. Inline\n * options on the decorator override the conventions per relation.\n *\n * @module @warlock.js/cascade/model/relation-decorators\n */\n\nimport { capitalize, type Lazy } from \"@mongez/reinforcements\";\nimport type {\n BelongsToManyOptions,\n BelongsToOptions,\n HasManyOptions,\n HasOneOptions,\n RelationDefinition,\n RelationType,\n} from \"../relations/types\";\nimport type { ChildModel, Model } from \"./model\";\n\n// ============================================================================\n// INTERNAL — REGISTRATION\n// ============================================================================\n\n/**\n * Type-erased options bag — each relation type accepts a different subset\n * but the registration helper treats them uniformly.\n */\ntype AnyRelationOptions =\n | (BelongsToOptions & { localKey?: string; pivot?: string })\n | HasManyOptions\n | HasOneOptions\n | BelongsToManyOptions;\n\n/**\n * Map raw decorator inputs into a `RelationDefinition` of the canonical\n * shape consumed by the relation loader, pivot operations, etc.\n *\n * Note: foreign-key / pivot-table defaults are NOT resolved here — they\n * live on each runtime resolution path (`RelationLoader`, `PivotOperations`,\n * the postgres query builder) and read from `key-conventions.ts`. Recording\n * `undefined` here keeps a single source of truth for the inference logic.\n */\nfunction buildRelationDefinition(\n type: RelationType,\n model: string | ChildModel<Model> | Lazy<unknown>,\n options?: AnyRelationOptions,\n): RelationDefinition {\n // BelongsTo stores its \"owner key\" in the shared `localKey` slot. Other\n // types just pass `localKey` through.\n const localKey =\n type === \"belongsTo\"\n ? (options as BelongsToOptions)?.ownerKey\n : (options as HasManyOptions)?.localKey;\n\n return {\n type,\n model,\n foreignKey: options?.foreignKey,\n localKey,\n pivot: (options as BelongsToManyOptions)?.pivot,\n pivotLocalKey: (options as BelongsToManyOptions)?.pivotLocalKey,\n pivotForeignKey: (options as BelongsToManyOptions)?.pivotForeignKey,\n select: options?.select,\n };\n}\n\n/**\n * Stash a relation definition into the class-level decorator metadata bag.\n *\n * **Why metadata, not addInitializer?** `context.addInitializer` on a\n * *field* decorator fires per-instance, not per-class — so it only runs\n * when `new ModelClass(...)` is called. Class-level operations like\n * `Organization.withCount(\"users\")` never construct instances, which means\n * an initializer-based registration would leave `Organization.relations`\n * permanently empty.\n *\n * TC39 stage 3 `context.metadata` is the right tool: a shared object across\n * every decorator on the same class declaration. Field decorators write\n * into it during decoration; `@RegisterModel` (a class decorator that runs\n * AFTER all field decorators) reads it back and copies the relations onto\n * the class's static `relations` map.\n *\n * The metadata object also prototype-chains to the parent class's metadata\n * (per spec), so a subclass naturally inherits its parent's relations.\n */\nfunction stashRelationInMetadata(\n metadata: DecoratorMetadataObject,\n relationName: string,\n definition: RelationDefinition,\n): void {\n let relations = metadata[RELATION_METADATA_KEY] as Record<string, RelationDefinition> | undefined;\n\n // Promote inherited relations to an own property before mutating, so\n // writing on the subclass doesn't leak into the parent's bag.\n if (!Object.prototype.hasOwnProperty.call(metadata, RELATION_METADATA_KEY)) {\n relations = { ...(relations ?? {}) };\n metadata[RELATION_METADATA_KEY] = relations;\n }\n\n relations![relationName] = definition;\n}\n\n/**\n * Key used to stash relation definitions on the decorator metadata object.\n * Exported so `@RegisterModel` (in `register-model.ts`) can read it back.\n */\nexport const RELATION_METADATA_KEY = Symbol.for(\"@warlock.js/cascade:relations\");\n\n// ============================================================================\n// INTERNAL — DECORATOR FACTORY\n// ============================================================================\n\n/**\n * Builds a TC39 stage 3 class-field decorator that registers a relation\n * of the given `type`. Each public decorator (`@BelongsTo`, `@HasMany`,\n * etc.) is a thin specialisation of this factory.\n */\nfunction makeRelationDecorator<Options extends AnyRelationOptions | undefined>(type: RelationType) {\n return function (\n modelRelation: string | ChildModel<Model> | Lazy<unknown>,\n options?: Options | string,\n ) {\n return function <This>(_value: undefined, context: ClassFieldDecoratorContext<This>): void {\n if (context.kind !== \"field\") {\n throw new Error(\n `@${capitalize(type)} can only be applied to class fields — got \"${context.kind}\".`,\n );\n }\n\n const relationName = String(context.name);\n const resolvedOptions = resolveOptions(options);\n const definition = buildRelationDefinition(type, modelRelation, resolvedOptions);\n\n stashRelationInMetadata(context.metadata, relationName, definition);\n };\n };\n}\n\n/**\n * Normalise the decorator's second argument.\n *\n * Accepts three shapes:\n * - Omitted (`undefined`): all defaults come from the runtime convention\n * helpers (`inferBelongsToForeignKey`, `inferHasForeignKey`, …) per\n * relation type. We must NOT pre-fill `foreignKey` here — the right\n * convention depends on the relation type AND the *owner* model name,\n * which the decorator doesn't know.\n * - String: shorthand for `{ foreignKey: <string> }`, matching the legacy\n * `belongsTo(\"Foo\", \"fk_col\")` helper.\n * - Object: passed through as-is.\n */\nfunction resolveOptions(\n options: AnyRelationOptions | string | undefined,\n): AnyRelationOptions | undefined {\n if (typeof options === \"string\") {\n return { foreignKey: options } as AnyRelationOptions;\n }\n\n return options;\n}\n\n// ============================================================================\n// PUBLIC — RELATION DECORATORS\n// ============================================================================\n\n/**\n * Declares a `belongsTo` relation on a model field.\n *\n * The foreign key lives on **this** model and points at the related\n * model's primary key. Defaults: FK column inferred as `{relationName}_id`\n * (snake-cased) — e.g. `organization_id` for `organization?: Organization`.\n *\n * @param model - The related model, in any of three forms:\n * - `\"User\"` — registered name (requires `@RegisterModel()` on target).\n * - `User` — direct class reference (cleanest for non-cycle relations).\n * - `lazy(() => User)` — typed but cycle-safe (use when the two model\n * files import each other).\n * @param options - Inline overrides for FK / owner key / column select\n *\n * @example\n * ```ts\n * import { lazy } from \"@mongez/reinforcements\";\n *\n * class User extends Model {\n * @BelongsTo(Organization) public organization?: Organization;\n * @BelongsTo(\"User\", { foreignKey: \"manager_id\" }) public manager?: User;\n * @BelongsTo(lazy(() => Team)) public team?: Team; // cycle case\n * }\n * ```\n */\nexport const BelongsTo = makeRelationDecorator<BelongsToOptions>(\"belongsTo\");\n\n/**\n * Declares a `hasOne` relation on a model field.\n *\n * The foreign key lives on the **related** model and points back at this\n * model's primary key. Defaults: FK column inferred as\n * `{thisModelSnakeName}_id` (e.g. `user_id` on the `Profile` table).\n *\n * @example\n * ```ts\n * class User extends Model {\n * @HasOne(\"Profile\") profile?: Profile;\n * @HasOne(\"UserSettings\", { foreignKey: \"owner_id\" }) settings?: UserSettings;\n * }\n * ```\n */\nexport const HasOne = makeRelationDecorator<HasOneOptions>(\"hasOne\");\n\n/**\n * Declares a `hasMany` relation on a model field.\n *\n * Same shape as `@HasOne` but loads an array. The foreign key lives on\n * the related model. Defaults: FK column inferred as\n * `{thisModelSnakeName}_id`.\n *\n * @example\n * ```ts\n * class User extends Model {\n * @HasMany(\"Post\") posts?: Post[];\n * @HasMany(\"Comment\", { foreignKey: \"author_id\" }) comments?: Comment[];\n * }\n * ```\n */\nexport const HasMany = makeRelationDecorator<HasManyOptions>(\"hasMany\");\n\n/**\n * Declares a `belongsToMany` relation on a model field.\n *\n * Defaults: pivot table inferred as the alphabetical snake-case join of\n * the two model names (`Post` + `Tag` → `post_tag`); pivot columns\n * inferred as `{modelSnakeName}_id` on each side.\n *\n * @example\n * ```ts\n * class Post extends Model {\n * @BelongsToMany(\"Tag\") tags?: Tag[];\n * @BelongsToMany(\"User\", { pivot: \"post_collaborators\" }) collaborators?: User[];\n * }\n * ```\n */\nexport const BelongsToMany = makeRelationDecorator<BelongsToManyOptions>(\"belongsToMany\");\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DA,SAAS,wBACP,MACA,OACA,SACoB;CAGpB,MAAM,WACJ,SAAS,cACJ,SAA8B,WAC9B,SAA4B;CAEnC,OAAO;EACL;EACA;EACA,YAAY,SAAS;EACrB;EACA,OAAQ,SAAkC;EAC1C,eAAgB,SAAkC;EAClD,iBAAkB,SAAkC;EACpD,QAAQ,SAAS;CACnB;AACF;;;;;;;;;;;;;;;;;;;;AAqBA,SAAS,wBACP,UACA,cACA,YACM;CACN,IAAI,YAAY,SAAS;CAIzB,IAAI,CAAC,OAAO,UAAU,eAAe,KAAK,UAAU,qBAAqB,GAAG;EAC1E,YAAY,EAAE,GAAI,aAAa,CAAC,EAAG;EACnC,SAAS,yBAAyB;CACpC;CAEA,UAAW,gBAAgB;AAC7B;;;;;AAMA,MAAa,wBAAwB,OAAO,IAAI,+BAA+B;;;;;;AAW/E,SAAS,sBAAsE,MAAoB;CACjG,OAAO,SACL,eACA,SACA;EACA,OAAO,SAAgB,QAAmB,SAAiD;GACzF,IAAI,QAAQ,SAAS,SACnB,MAAM,IAAI,MACR,IAAI,WAAW,IAAI,EAAE,8CAA8C,QAAQ,KAAK,GAClF;GAGF,MAAM,eAAe,OAAO,QAAQ,IAAI;GAExC,MAAM,aAAa,wBAAwB,MAAM,eADzB,eAAe,OACuC,CAAC;GAE/E,wBAAwB,QAAQ,UAAU,cAAc,UAAU;EACpE;CACF;AACF;;;;;;;;;;;;;;AAeA,SAAS,eACP,SACgC;CAChC,IAAI,OAAO,YAAY,UACrB,OAAO,EAAE,YAAY,QAAQ;CAG/B,OAAO;AACT;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,MAAa,YAAY,sBAAwC,WAAW;;;;;;;;;;;;;;;;AAiB5E,MAAa,SAAS,sBAAqC,QAAQ;;;;;;;;;;;;;;;;AAiBnE,MAAa,UAAU,sBAAsC,SAAS;;;;;;;;;;;;;;;;AAiBtE,MAAa,gBAAgB,sBAA4C,eAAe"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
//#region ../../@warlock.js/cascade/src/operations/database.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Selects which data source the operation runs against. Shared between every
|
|
4
|
+
* function in this module — kept internal because it carries no semantic
|
|
5
|
+
* beyond "look up by registry name".
|
|
6
|
+
*/
|
|
7
|
+
type DataSourceSelector = {
|
|
8
|
+
/** Data source name from the registry. Omit to use the default source. */readonly connection?: string;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Result of {@link createDatabase}.
|
|
12
|
+
*/
|
|
13
|
+
type CreateDatabaseResult = {
|
|
14
|
+
/** True if a new database was created; false if it already existed. */readonly created: boolean; /** The database name that was passed to the operation. */
|
|
15
|
+
readonly name: string;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Result of {@link dropAllTables}.
|
|
19
|
+
*/
|
|
20
|
+
type DropAllTablesResult = {
|
|
21
|
+
/** Names of tables that were dropped, in the order returned by the driver. */readonly tables: string[]; /** Count of dropped tables (equal to `tables.length`). */
|
|
22
|
+
readonly dropped: number;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Create a database on the configured data source. Returns `created: false`
|
|
26
|
+
* when the database already exists — drivers are responsible for the
|
|
27
|
+
* idempotency check.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* await createDatabase("analytics");
|
|
31
|
+
* await createDatabase("analytics", { connection: "warehouse" });
|
|
32
|
+
*/
|
|
33
|
+
declare function createDatabase(name: string, options?: DataSourceSelector): Promise<CreateDatabaseResult>;
|
|
34
|
+
/**
|
|
35
|
+
* Drop every table on the configured data source. Lists tables first so the
|
|
36
|
+
* caller receives the names that were affected — useful for printing,
|
|
37
|
+
* confirmation prompts, or audit logging at the call site.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* const { tables, dropped } = await dropAllTables();
|
|
41
|
+
* console.log(`Dropped ${dropped} tables: ${tables.join(", ")}`);
|
|
42
|
+
*/
|
|
43
|
+
declare function dropAllTables(options?: DataSourceSelector): Promise<DropAllTablesResult>;
|
|
44
|
+
//#endregion
|
|
45
|
+
export { CreateDatabaseResult, DropAllTablesResult, createDatabase, dropAllTables };
|
|
46
|
+
//# sourceMappingURL=database.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.d.mts","names":[],"sources":["../../../../../../@warlock.js/cascade/src/operations/database.ts"],"mappings":";;;;;;KAOK,kBAAA;EAQO,mFAND,UAAU;AAAA;;AAUN;AAMf;KAVY,oBAAA;kFAED,OAAA,WAYO;EAAA,SAVP,IAAI;AAAA;;;;KAMH,mBAAA;EAmBF,uFAjBC,MAAA,YAeT;EAAA,SAbS,OAAO;AAAA;;;;AAea;AAgB/B;;;;;iBAnBsB,cAAA,CACpB,IAAA,UACA,OAAA,GAAS,kBAAA,GACR,OAAA,CAAQ,oBAAA;;;;;;;;AAkBmB;;iBAFR,aAAA,CACpB,OAAA,GAAS,kBAAA,GACR,OAAA,CAAQ,mBAAA"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { dataSourceRegistry } from "../data-source/data-source-registry.mjs";
|
|
2
|
+
|
|
3
|
+
//#region ../../@warlock.js/cascade/src/operations/database.ts
|
|
4
|
+
/**
|
|
5
|
+
* Create a database on the configured data source. Returns `created: false`
|
|
6
|
+
* when the database already exists — drivers are responsible for the
|
|
7
|
+
* idempotency check.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* await createDatabase("analytics");
|
|
11
|
+
* await createDatabase("analytics", { connection: "warehouse" });
|
|
12
|
+
*/
|
|
13
|
+
async function createDatabase(name, options = {}) {
|
|
14
|
+
return {
|
|
15
|
+
created: await dataSourceRegistry.get(options.connection).driver.createDatabase(name),
|
|
16
|
+
name
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Drop every table on the configured data source. Lists tables first so the
|
|
21
|
+
* caller receives the names that were affected — useful for printing,
|
|
22
|
+
* confirmation prompts, or audit logging at the call site.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* const { tables, dropped } = await dropAllTables();
|
|
26
|
+
* console.log(`Dropped ${dropped} tables: ${tables.join(", ")}`);
|
|
27
|
+
*/
|
|
28
|
+
async function dropAllTables(options = {}) {
|
|
29
|
+
const driver = dataSourceRegistry.get(options.connection).driver;
|
|
30
|
+
const tables = await driver.blueprint.listTables();
|
|
31
|
+
await driver.dropAllTables();
|
|
32
|
+
return {
|
|
33
|
+
tables,
|
|
34
|
+
dropped: tables.length
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
//#endregion
|
|
39
|
+
export { createDatabase, dropAllTables };
|
|
40
|
+
//# sourceMappingURL=database.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.mjs","names":[],"sources":["../../../../../../@warlock.js/cascade/src/operations/database.ts"],"sourcesContent":["import { dataSourceRegistry } from \"../data-source/data-source-registry\";\n\n/**\n * Selects which data source the operation runs against. Shared between every\n * function in this module — kept internal because it carries no semantic\n * beyond \"look up by registry name\".\n */\ntype DataSourceSelector = {\n /** Data source name from the registry. Omit to use the default source. */\n readonly connection?: string;\n};\n\n/**\n * Result of {@link createDatabase}.\n */\nexport type CreateDatabaseResult = {\n /** True if a new database was created; false if it already existed. */\n readonly created: boolean;\n /** The database name that was passed to the operation. */\n readonly name: string;\n};\n\n/**\n * Result of {@link dropAllTables}.\n */\nexport type DropAllTablesResult = {\n /** Names of tables that were dropped, in the order returned by the driver. */\n readonly tables: string[];\n /** Count of dropped tables (equal to `tables.length`). */\n readonly dropped: number;\n};\n\n/**\n * Create a database on the configured data source. Returns `created: false`\n * when the database already exists — drivers are responsible for the\n * idempotency check.\n *\n * @example\n * await createDatabase(\"analytics\");\n * await createDatabase(\"analytics\", { connection: \"warehouse\" });\n */\nexport async function createDatabase(\n name: string,\n options: DataSourceSelector = {},\n): Promise<CreateDatabaseResult> {\n const dataSource = dataSourceRegistry.get(options.connection);\n const created = await dataSource.driver.createDatabase(name);\n\n return { created, name };\n}\n\n/**\n * Drop every table on the configured data source. Lists tables first so the\n * caller receives the names that were affected — useful for printing,\n * confirmation prompts, or audit logging at the call site.\n *\n * @example\n * const { tables, dropped } = await dropAllTables();\n * console.log(`Dropped ${dropped} tables: ${tables.join(\", \")}`);\n */\nexport async function dropAllTables(\n options: DataSourceSelector = {},\n): Promise<DropAllTablesResult> {\n const dataSource = dataSourceRegistry.get(options.connection);\n const driver = dataSource.driver;\n\n const tables = await driver.blueprint.listTables();\n await driver.dropAllTables();\n\n return { tables, dropped: tables.length };\n}\n"],"mappings":";;;;;;;;;;;;AAyCA,eAAsB,eACpB,MACA,UAA8B,CAAC,GACA;CAI/B,OAAO;EAAE,eAHU,mBAAmB,IAAI,QAAQ,UACnB,EAAE,OAAO,eAAe,IAAI;EAEzC;CAAK;AACzB;;;;;;;;;;AAWA,eAAsB,cACpB,UAA8B,CAAC,GACD;CAE9B,MAAM,SADa,mBAAmB,IAAI,QAAQ,UAC1B,EAAE;CAE1B,MAAM,SAAS,MAAM,OAAO,UAAU,WAAW;CACjD,MAAM,OAAO,cAAc;CAE3B,OAAO;EAAE;EAAQ,SAAS,OAAO;CAAO;AAC1C"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { CreateDatabaseResult, DropAllTablesResult, createDatabase, dropAllTables } from "./database.mjs";
|
|
2
|
+
import { ExportMigrationsSQLOptions, RollbackMigrationsOptions, exportMigrationsSQL, freshMigrate, listExecutedMigrations, rollbackMigrations, runMigrations } from "./migrations.mjs";
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { MigrationRecord, MigrationResult } from "../migration/types.mjs";
|
|
2
|
+
|
|
3
|
+
//#region ../../@warlock.js/cascade/src/operations/migrations.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Options for exporting migrations as SQL files.
|
|
6
|
+
*/
|
|
7
|
+
type ExportMigrationsSQLOptions = {
|
|
8
|
+
/** Export only pending migrations. Default: false (exports all registered). */readonly pendingOnly?: boolean; /** Strip generated block comments and blank lines from the output. */
|
|
9
|
+
readonly compact?: boolean;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Options for rolling back migrations.
|
|
13
|
+
*/
|
|
14
|
+
type RollbackMigrationsOptions = {
|
|
15
|
+
/** Roll back every executed migration. Overrides `batches` when true. */readonly all?: boolean; /** Number of batches to roll back when `all` is not set. Default: 1. */
|
|
16
|
+
readonly batches?: number;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Run every pending migration registered on the migration runner.
|
|
20
|
+
*
|
|
21
|
+
* Caller is responsible for registering migration classes first via
|
|
22
|
+
* `migrationRunner.register()` / `migrationRunner.registerMany()`. Returns one
|
|
23
|
+
* result entry per executed migration.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* migrationRunner.registerMany([CreateUsersTable, AddEmailIndex]);
|
|
27
|
+
* const results = await runMigrations();
|
|
28
|
+
*/
|
|
29
|
+
declare function runMigrations(): Promise<MigrationResult[]>;
|
|
30
|
+
/**
|
|
31
|
+
* Roll back executed migrations. By default rolls back the most recent batch;
|
|
32
|
+
* pass `all: true` to undo every executed migration, or `batches: N` to undo
|
|
33
|
+
* the last N batches.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* await rollbackMigrations(); // last batch
|
|
37
|
+
* await rollbackMigrations({ batches: 3 }); // last three batches
|
|
38
|
+
* await rollbackMigrations({ all: true }); // everything
|
|
39
|
+
*/
|
|
40
|
+
declare function rollbackMigrations(options?: RollbackMigrationsOptions): Promise<MigrationResult[]>;
|
|
41
|
+
/**
|
|
42
|
+
* Roll back every executed migration, then run every registered migration.
|
|
43
|
+
* Equivalent to `rollbackMigrations({ all: true })` followed by
|
|
44
|
+
* `runMigrations()`.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* await freshMigrate();
|
|
48
|
+
*/
|
|
49
|
+
declare function freshMigrate(): Promise<MigrationResult[]>;
|
|
50
|
+
/**
|
|
51
|
+
* Export registered migrations as phase-ordered `.up.sql` and `.down.sql`
|
|
52
|
+
* files under `<cwd>/database/sql/`.
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* await exportMigrationsSQL();
|
|
56
|
+
* await exportMigrationsSQL({ pendingOnly: true, compact: true });
|
|
57
|
+
*/
|
|
58
|
+
declare function exportMigrationsSQL(options?: ExportMigrationsSQLOptions): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* Return the migration records persisted in the migrations table — one entry
|
|
61
|
+
* per migration that has ever been executed against the configured data
|
|
62
|
+
* source.
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* const executed = await listExecutedMigrations();
|
|
66
|
+
* console.log(executed.map((record) => record.name));
|
|
67
|
+
*/
|
|
68
|
+
declare function listExecutedMigrations(): Promise<MigrationRecord[]>;
|
|
69
|
+
//#endregion
|
|
70
|
+
export { ExportMigrationsSQLOptions, RollbackMigrationsOptions, exportMigrationsSQL, freshMigrate, listExecutedMigrations, rollbackMigrations, runMigrations };
|
|
71
|
+
//# sourceMappingURL=migrations.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.d.mts","names":[],"sources":["../../../../../../@warlock.js/cascade/src/operations/migrations.ts"],"mappings":";;;;;AAMA;KAAY,0BAAA;0FAED,WAAA,YAEO;EAAA,SAAP,OAAO;AAAA;;;AAUA;KAJN,yBAAA;EAkBuB,kFAhBxB,GAAA,YAgB4B;EAAA,SAd5B,OAAO;AAAA;;;;;;;;;;;;iBAcI,aAAA,CAAA,GAAiB,OAAO,CAAC,eAAA;AAgBrB;AAkB1B;;;;AAA6D;AAY7D;;;;AA9B0B,iBAFJ,kBAAA,CACpB,OAAA,GAAS,yBAAA,GACR,OAAA,CAAQ,eAAA;;;;AAgCD;AAaV;;;;iBA3BsB,YAAA,CAAA,GAAgB,OAAO,CAAC,eAAA;;;;;;;;;iBAYxB,mBAAA,CACpB,OAAA,GAAS,0BAAA,GACR,OAAO;;;;;;;;;;iBAaY,sBAAA,CAAA,GAA0B,OAAO,CAAC,eAAA"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { migrationRunner } from "../migration/migration-runner.mjs";
|
|
2
|
+
|
|
3
|
+
//#region ../../@warlock.js/cascade/src/operations/migrations.ts
|
|
4
|
+
/**
|
|
5
|
+
* Run every pending migration registered on the migration runner.
|
|
6
|
+
*
|
|
7
|
+
* Caller is responsible for registering migration classes first via
|
|
8
|
+
* `migrationRunner.register()` / `migrationRunner.registerMany()`. Returns one
|
|
9
|
+
* result entry per executed migration.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* migrationRunner.registerMany([CreateUsersTable, AddEmailIndex]);
|
|
13
|
+
* const results = await runMigrations();
|
|
14
|
+
*/
|
|
15
|
+
async function runMigrations() {
|
|
16
|
+
return migrationRunner.runAll();
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Roll back executed migrations. By default rolls back the most recent batch;
|
|
20
|
+
* pass `all: true` to undo every executed migration, or `batches: N` to undo
|
|
21
|
+
* the last N batches.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* await rollbackMigrations(); // last batch
|
|
25
|
+
* await rollbackMigrations({ batches: 3 }); // last three batches
|
|
26
|
+
* await rollbackMigrations({ all: true }); // everything
|
|
27
|
+
*/
|
|
28
|
+
async function rollbackMigrations(options = {}) {
|
|
29
|
+
if (options.all) return migrationRunner.rollbackAll();
|
|
30
|
+
const batches = options.batches ?? 1;
|
|
31
|
+
return migrationRunner.rollbackBatches(batches);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Roll back every executed migration, then run every registered migration.
|
|
35
|
+
* Equivalent to `rollbackMigrations({ all: true })` followed by
|
|
36
|
+
* `runMigrations()`.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* await freshMigrate();
|
|
40
|
+
*/
|
|
41
|
+
async function freshMigrate() {
|
|
42
|
+
return migrationRunner.fresh();
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Export registered migrations as phase-ordered `.up.sql` and `.down.sql`
|
|
46
|
+
* files under `<cwd>/database/sql/`.
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* await exportMigrationsSQL();
|
|
50
|
+
* await exportMigrationsSQL({ pendingOnly: true, compact: true });
|
|
51
|
+
*/
|
|
52
|
+
async function exportMigrationsSQL(options = {}) {
|
|
53
|
+
return migrationRunner.exportSQL(options);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Return the migration records persisted in the migrations table — one entry
|
|
57
|
+
* per migration that has ever been executed against the configured data
|
|
58
|
+
* source.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* const executed = await listExecutedMigrations();
|
|
62
|
+
* console.log(executed.map((record) => record.name));
|
|
63
|
+
*/
|
|
64
|
+
async function listExecutedMigrations() {
|
|
65
|
+
return migrationRunner.getExecutedMigrations();
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
//#endregion
|
|
69
|
+
export { exportMigrationsSQL, freshMigrate, listExecutedMigrations, rollbackMigrations, runMigrations };
|
|
70
|
+
//# sourceMappingURL=migrations.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.mjs","names":[],"sources":["../../../../../../@warlock.js/cascade/src/operations/migrations.ts"],"sourcesContent":["import { migrationRunner } from \"../migration/migration-runner\";\nimport type { MigrationRecord, MigrationResult } from \"../migration/types\";\n\n/**\n * Options for exporting migrations as SQL files.\n */\nexport type ExportMigrationsSQLOptions = {\n /** Export only pending migrations. Default: false (exports all registered). */\n readonly pendingOnly?: boolean;\n /** Strip generated block comments and blank lines from the output. */\n readonly compact?: boolean;\n};\n\n/**\n * Options for rolling back migrations.\n */\nexport type RollbackMigrationsOptions = {\n /** Roll back every executed migration. Overrides `batches` when true. */\n readonly all?: boolean;\n /** Number of batches to roll back when `all` is not set. Default: 1. */\n readonly batches?: number;\n};\n\n/**\n * Run every pending migration registered on the migration runner.\n *\n * Caller is responsible for registering migration classes first via\n * `migrationRunner.register()` / `migrationRunner.registerMany()`. Returns one\n * result entry per executed migration.\n *\n * @example\n * migrationRunner.registerMany([CreateUsersTable, AddEmailIndex]);\n * const results = await runMigrations();\n */\nexport async function runMigrations(): Promise<MigrationResult[]> {\n return migrationRunner.runAll();\n}\n\n/**\n * Roll back executed migrations. By default rolls back the most recent batch;\n * pass `all: true` to undo every executed migration, or `batches: N` to undo\n * the last N batches.\n *\n * @example\n * await rollbackMigrations(); // last batch\n * await rollbackMigrations({ batches: 3 }); // last three batches\n * await rollbackMigrations({ all: true }); // everything\n */\nexport async function rollbackMigrations(\n options: RollbackMigrationsOptions = {},\n): Promise<MigrationResult[]> {\n if (options.all) {\n return migrationRunner.rollbackAll();\n }\n\n const batches = options.batches ?? 1;\n\n return migrationRunner.rollbackBatches(batches);\n}\n\n/**\n * Roll back every executed migration, then run every registered migration.\n * Equivalent to `rollbackMigrations({ all: true })` followed by\n * `runMigrations()`.\n *\n * @example\n * await freshMigrate();\n */\nexport async function freshMigrate(): Promise<MigrationResult[]> {\n return migrationRunner.fresh();\n}\n\n/**\n * Export registered migrations as phase-ordered `.up.sql` and `.down.sql`\n * files under `<cwd>/database/sql/`.\n *\n * @example\n * await exportMigrationsSQL();\n * await exportMigrationsSQL({ pendingOnly: true, compact: true });\n */\nexport async function exportMigrationsSQL(\n options: ExportMigrationsSQLOptions = {},\n): Promise<void> {\n return migrationRunner.exportSQL(options);\n}\n\n/**\n * Return the migration records persisted in the migrations table — one entry\n * per migration that has ever been executed against the configured data\n * source.\n *\n * @example\n * const executed = await listExecutedMigrations();\n * console.log(executed.map((record) => record.name));\n */\nexport async function listExecutedMigrations(): Promise<MigrationRecord[]> {\n return migrationRunner.getExecutedMigrations();\n}\n"],"mappings":";;;;;;;;;;;;;;AAkCA,eAAsB,gBAA4C;CAChE,OAAO,gBAAgB,OAAO;AAChC;;;;;;;;;;;AAYA,eAAsB,mBACpB,UAAqC,CAAC,GACV;CAC5B,IAAI,QAAQ,KACV,OAAO,gBAAgB,YAAY;CAGrC,MAAM,UAAU,QAAQ,WAAW;CAEnC,OAAO,gBAAgB,gBAAgB,OAAO;AAChD;;;;;;;;;AAUA,eAAsB,eAA2C;CAC/D,OAAO,gBAAgB,MAAM;AAC/B;;;;;;;;;AAUA,eAAsB,oBACpB,UAAsC,CAAC,GACxB;CACf,OAAO,gBAAgB,UAAU,OAAO;AAC1C;;;;;;;;;;AAWA,eAAsB,yBAAqD;CACzE,OAAO,gBAAgB,sBAAsB;AAC/C"}
|