@warlock.js/cascade 4.0.157 → 4.0.161
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/package.json +4 -4
- 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 -324
- package/cjs/drivers/mongodb/mongodb-driver.d.ts.map +0 -1
- package/cjs/drivers/mongodb/mongodb-driver.js +0 -799
- 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 -965
- 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 -864
- 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 -197
- package/cjs/drivers/postgres/postgres-sync-adapter.js.map +0 -1
- package/cjs/drivers/postgres/types.d.ts +0 -142
- 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 -1992
- 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 -161
- 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 -1650
- 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 -201
- 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 -300
- package/cjs/utils/connect-to-database.d.ts.map +0 -1
- package/cjs/utils/connect-to-database.js +0 -128
- 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 -181
- package/cjs/writer/database-writer.d.ts.map +0 -1
- package/cjs/writer/database-writer.js +0 -407
- 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 -324
- package/esm/drivers/mongodb/mongodb-driver.d.ts.map +0 -1
- package/esm/drivers/mongodb/mongodb-driver.js +0 -799
- 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 -965
- 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 -864
- 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 -197
- package/esm/drivers/postgres/postgres-sync-adapter.js.map +0 -1
- package/esm/drivers/postgres/types.d.ts +0 -142
- 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 -1992
- 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 -161
- 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 -1650
- 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 -201
- 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 -300
- package/esm/utils/connect-to-database.d.ts.map +0 -1
- package/esm/utils/connect-to-database.js +0 -128
- 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 -181
- package/esm/writer/database-writer.d.ts.map +0 -1
- package/esm/writer/database-writer.js +0 -407
- package/esm/writer/database-writer.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-query-parser.js","sources":["../../../src/drivers/postgres/postgres-query-parser.ts"],"sourcesContent":[null],"names":["PostgresDialect"],"mappings":"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"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import type { SqlDialectContract } from "../sql/sql-dialect.contract";
|
|
2
|
-
import type { PendingOperation } from "../../migration/migration";
|
|
3
|
-
import { SQLSerializer } from "../../migration/sql-serializer";
|
|
4
|
-
/**
|
|
5
|
-
* PostgreSQL-specific SQL serializer.
|
|
6
|
-
*
|
|
7
|
-
* Converts pending migration operations into valid PostgreSQL DDL statements.
|
|
8
|
-
*/
|
|
9
|
-
export declare class PostgresSQLSerializer extends SQLSerializer {
|
|
10
|
-
private readonly dialect;
|
|
11
|
-
constructor(dialect: SqlDialectContract);
|
|
12
|
-
serialize(operation: PendingOperation, table: string): string | string[] | null;
|
|
13
|
-
private createTable;
|
|
14
|
-
private createTableIfNotExists;
|
|
15
|
-
private dropTable;
|
|
16
|
-
private dropTableIfExists;
|
|
17
|
-
private renameTable;
|
|
18
|
-
private truncateTable;
|
|
19
|
-
private addColumn;
|
|
20
|
-
private dropColumn;
|
|
21
|
-
private dropColumns;
|
|
22
|
-
private renameColumn;
|
|
23
|
-
private modifyColumn;
|
|
24
|
-
private createTimestamps;
|
|
25
|
-
private createIndex;
|
|
26
|
-
private dropIndex;
|
|
27
|
-
private createFullTextIndex;
|
|
28
|
-
private createGeoIndex;
|
|
29
|
-
private createVectorIndex;
|
|
30
|
-
private createTTLIndex;
|
|
31
|
-
private addForeignKey;
|
|
32
|
-
private dropForeignKey;
|
|
33
|
-
private addPrimaryKey;
|
|
34
|
-
private dropPrimaryKey;
|
|
35
|
-
private mapForeignKeyAction;
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=postgres-sql-serializer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-sql-serializer.d.ts","sourceRoot":"","sources":["../../../src/drivers/postgres/postgres-sql-serializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAU/D;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,aAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,kBAAkB;IAIxD,SAAS,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAoGtF,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,SAAS;IAsEjB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,YAAY;IAsCpB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,WAAW;IA8CnB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,mBAAmB;CAW5B"}
|
|
@@ -1,400 +0,0 @@
|
|
|
1
|
-
'use strict';var sqlSerializer=require('../../migration/sql-serializer.js');/**
|
|
2
|
-
* PostgreSQL-specific SQL serializer.
|
|
3
|
-
*
|
|
4
|
-
* Converts pending migration operations into valid PostgreSQL DDL statements.
|
|
5
|
-
*/
|
|
6
|
-
class PostgresSQLSerializer extends sqlSerializer.SQLSerializer {
|
|
7
|
-
dialect;
|
|
8
|
-
constructor(dialect) {
|
|
9
|
-
super();
|
|
10
|
-
this.dialect = dialect;
|
|
11
|
-
}
|
|
12
|
-
serialize(operation, table) {
|
|
13
|
-
switch (operation.type) {
|
|
14
|
-
case "createTable":
|
|
15
|
-
return this.createTable(table);
|
|
16
|
-
case "createTableIfNotExists":
|
|
17
|
-
return this.createTableIfNotExists(table);
|
|
18
|
-
case "dropTable":
|
|
19
|
-
return this.dropTable(table);
|
|
20
|
-
case "dropTableIfExists":
|
|
21
|
-
return this.dropTableIfExists(table);
|
|
22
|
-
case "renameTable":
|
|
23
|
-
return this.renameTable(table, operation.payload);
|
|
24
|
-
case "truncateTable":
|
|
25
|
-
return this.truncateTable(table);
|
|
26
|
-
case "addColumn":
|
|
27
|
-
return this.addColumn(table, operation.payload);
|
|
28
|
-
case "dropColumn":
|
|
29
|
-
return this.dropColumn(table, operation.payload);
|
|
30
|
-
case "dropColumns":
|
|
31
|
-
// This is handled via map in serializeAll or loop, but Postgres supports multiple DROP COLUMN
|
|
32
|
-
// For simplicity, we can serialize multiple statements if we want, or handle it here
|
|
33
|
-
// Actually, dropColumns payload is string[]. We can join them.
|
|
34
|
-
return this.dropColumns(table, operation.payload);
|
|
35
|
-
case "renameColumn": {
|
|
36
|
-
const payload = operation.payload;
|
|
37
|
-
return this.renameColumn(table, payload.from, payload.to);
|
|
38
|
-
}
|
|
39
|
-
case "modifyColumn":
|
|
40
|
-
// Modify column might require multiple statements in Postgres (type, nullability, default).
|
|
41
|
-
// SQLSerializer's serialize return is just a string, so we'll separate them by semicolon
|
|
42
|
-
// Or wait, Postgres allows multiple ALTER COLUMN in one ALTER TABLE statement.
|
|
43
|
-
return this.modifyColumn(table, operation.payload);
|
|
44
|
-
case "createIndex":
|
|
45
|
-
return this.createIndex(table, operation.payload);
|
|
46
|
-
case "dropIndex":
|
|
47
|
-
return this.dropIndex(table, operation.payload);
|
|
48
|
-
case "createUniqueIndex": {
|
|
49
|
-
const payload = operation.payload;
|
|
50
|
-
return this.createIndex(table, { columns: payload.columns, name: payload.name, unique: true });
|
|
51
|
-
}
|
|
52
|
-
case "dropUniqueIndex":
|
|
53
|
-
return this.dropIndex(table, operation.payload);
|
|
54
|
-
case "createFullTextIndex": {
|
|
55
|
-
const payload = operation.payload;
|
|
56
|
-
return this.createFullTextIndex(table, payload.columns, payload.options);
|
|
57
|
-
}
|
|
58
|
-
case "dropFullTextIndex":
|
|
59
|
-
return this.dropIndex(table, operation.payload);
|
|
60
|
-
case "createGeoIndex": {
|
|
61
|
-
const payload = operation.payload;
|
|
62
|
-
return this.createGeoIndex(table, payload.column, payload.options);
|
|
63
|
-
}
|
|
64
|
-
case "dropGeoIndex":
|
|
65
|
-
return this.dropIndex(table, `idx_${table}_geo_${operation.payload}`);
|
|
66
|
-
case "createVectorIndex": {
|
|
67
|
-
const payload = operation.payload;
|
|
68
|
-
return this.createVectorIndex(table, payload.column, payload.options);
|
|
69
|
-
}
|
|
70
|
-
case "dropVectorIndex":
|
|
71
|
-
return this.dropIndex(table, `idx_${table}_vector_${operation.payload}`);
|
|
72
|
-
case "createTTLIndex": {
|
|
73
|
-
const payload = operation.payload;
|
|
74
|
-
return this.createTTLIndex(table, payload.column, payload.expireAfterSeconds);
|
|
75
|
-
}
|
|
76
|
-
case "dropTTLIndex":
|
|
77
|
-
return this.dropIndex(table, `idx_${table}_ttl_${operation.payload}`);
|
|
78
|
-
case "addForeignKey":
|
|
79
|
-
return this.addForeignKey(table, operation.payload);
|
|
80
|
-
case "dropForeignKey":
|
|
81
|
-
return this.dropForeignKey(table, operation.payload);
|
|
82
|
-
case "addPrimaryKey":
|
|
83
|
-
return this.addPrimaryKey(table, operation.payload);
|
|
84
|
-
case "dropPrimaryKey":
|
|
85
|
-
return this.dropPrimaryKey(table);
|
|
86
|
-
case "addCheck":
|
|
87
|
-
// addCheck is not natively implemented in MigrationDriverContract but exists in OperationType
|
|
88
|
-
return null;
|
|
89
|
-
case "dropCheck":
|
|
90
|
-
return null;
|
|
91
|
-
case "createTimestamps":
|
|
92
|
-
// createTimestamps needs to inject two columns. We return two statements.
|
|
93
|
-
return this.createTimestamps(table);
|
|
94
|
-
case "rawStatement": {
|
|
95
|
-
const payload = operation.payload;
|
|
96
|
-
// ensure string doesn't end with a semicolon if it's already one statement
|
|
97
|
-
return payload;
|
|
98
|
-
}
|
|
99
|
-
case "setSchemaValidation":
|
|
100
|
-
case "removeSchemaValidation":
|
|
101
|
-
// Not implemented in PostgreSQL
|
|
102
|
-
return null;
|
|
103
|
-
default:
|
|
104
|
-
return null;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
// ============================================================================
|
|
108
|
-
// TABLE OPERATIONS
|
|
109
|
-
// ============================================================================
|
|
110
|
-
createTable(table) {
|
|
111
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
112
|
-
return `CREATE TABLE ${quotedTable} ()`;
|
|
113
|
-
}
|
|
114
|
-
createTableIfNotExists(table) {
|
|
115
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
116
|
-
return `CREATE TABLE IF NOT EXISTS ${quotedTable} ()`;
|
|
117
|
-
}
|
|
118
|
-
dropTable(table) {
|
|
119
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
120
|
-
return `DROP TABLE ${quotedTable} CASCADE`;
|
|
121
|
-
}
|
|
122
|
-
dropTableIfExists(table) {
|
|
123
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
124
|
-
return `DROP TABLE IF EXISTS ${quotedTable} CASCADE`;
|
|
125
|
-
}
|
|
126
|
-
renameTable(from, to) {
|
|
127
|
-
const quotedFrom = this.dialect.quoteIdentifier(from);
|
|
128
|
-
const quotedTo = this.dialect.quoteIdentifier(to);
|
|
129
|
-
return `ALTER TABLE ${quotedFrom} RENAME TO ${quotedTo}`;
|
|
130
|
-
}
|
|
131
|
-
truncateTable(table) {
|
|
132
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
133
|
-
return `TRUNCATE TABLE ${quotedTable}`;
|
|
134
|
-
}
|
|
135
|
-
// ============================================================================
|
|
136
|
-
// COLUMN OPERATIONS
|
|
137
|
-
// ============================================================================
|
|
138
|
-
addColumn(table, column) {
|
|
139
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
140
|
-
const quotedColumn = this.dialect.quoteIdentifier(column.name);
|
|
141
|
-
let sqlType;
|
|
142
|
-
if (column.autoIncrement) {
|
|
143
|
-
if (column.type === "bigInteger") {
|
|
144
|
-
sqlType = "BIGSERIAL";
|
|
145
|
-
}
|
|
146
|
-
else {
|
|
147
|
-
sqlType = "SERIAL";
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
else {
|
|
151
|
-
sqlType = this.dialect.getSqlType(column.type, {
|
|
152
|
-
length: column.length,
|
|
153
|
-
precision: column.precision,
|
|
154
|
-
scale: column.scale,
|
|
155
|
-
dimensions: column.dimensions,
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
|
-
let sql = `ALTER TABLE ${quotedTable} ADD COLUMN ${quotedColumn} ${sqlType}`;
|
|
159
|
-
if (column.generated) {
|
|
160
|
-
sql += ` GENERATED ALWAYS AS (${column.generated.expression})`;
|
|
161
|
-
if (column.generated.stored) {
|
|
162
|
-
sql += " STORED";
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
else {
|
|
166
|
-
if (!column.autoIncrement && column.nullable === false) {
|
|
167
|
-
sql += " NOT NULL";
|
|
168
|
-
}
|
|
169
|
-
if (column.defaultValue !== undefined) {
|
|
170
|
-
if (typeof column.defaultValue === "object" &&
|
|
171
|
-
column.defaultValue !== null &&
|
|
172
|
-
column.defaultValue.__type === "CURRENT_TIMESTAMP") {
|
|
173
|
-
sql += " DEFAULT NOW()";
|
|
174
|
-
}
|
|
175
|
-
else if (column.isRawDefault === false) {
|
|
176
|
-
const escaped = String(column.defaultValue).replace(/'/g, "''");
|
|
177
|
-
sql += ` DEFAULT '${escaped}'`;
|
|
178
|
-
}
|
|
179
|
-
else if (typeof column.defaultValue === "boolean") {
|
|
180
|
-
sql += ` DEFAULT ${column.defaultValue ? "TRUE" : "FALSE"}`;
|
|
181
|
-
}
|
|
182
|
-
else if (typeof column.defaultValue === "number") {
|
|
183
|
-
sql += ` DEFAULT ${column.defaultValue}`;
|
|
184
|
-
}
|
|
185
|
-
else {
|
|
186
|
-
sql += ` DEFAULT ${column.defaultValue}`; // raw default
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
if (column.primary) {
|
|
190
|
-
sql += " PRIMARY KEY";
|
|
191
|
-
}
|
|
192
|
-
if (column.unique) {
|
|
193
|
-
sql += " UNIQUE";
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
// pgvector: ensure the extension is active before the vector column is created.
|
|
197
|
-
// SQLGrammar classifies CREATE EXTENSION as Phase 1, so this will always
|
|
198
|
-
// run before any CREATE TABLE / ADD COLUMN statement regardless of batch order.
|
|
199
|
-
if (column.type === "vector") {
|
|
200
|
-
return ["CREATE EXTENSION IF NOT EXISTS vector", sql];
|
|
201
|
-
}
|
|
202
|
-
return sql;
|
|
203
|
-
}
|
|
204
|
-
dropColumn(table, column) {
|
|
205
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
206
|
-
const quotedColumn = this.dialect.quoteIdentifier(column);
|
|
207
|
-
return `ALTER TABLE ${quotedTable} DROP COLUMN ${quotedColumn}`;
|
|
208
|
-
}
|
|
209
|
-
dropColumns(table, columns) {
|
|
210
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
211
|
-
const drops = columns.map((col) => `DROP COLUMN ${this.dialect.quoteIdentifier(col)}`).join(", ");
|
|
212
|
-
return `ALTER TABLE ${quotedTable} ${drops}`;
|
|
213
|
-
}
|
|
214
|
-
renameColumn(table, from, to) {
|
|
215
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
216
|
-
const quotedFrom = this.dialect.quoteIdentifier(from);
|
|
217
|
-
const quotedTo = this.dialect.quoteIdentifier(to);
|
|
218
|
-
return `ALTER TABLE ${quotedTable} RENAME COLUMN ${quotedFrom} TO ${quotedTo}`;
|
|
219
|
-
}
|
|
220
|
-
modifyColumn(table, column) {
|
|
221
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
222
|
-
const quotedColumn = this.dialect.quoteIdentifier(column.name);
|
|
223
|
-
const sqlType = this.dialect.getSqlType(column.type, {
|
|
224
|
-
length: column.length,
|
|
225
|
-
precision: column.precision,
|
|
226
|
-
scale: column.scale,
|
|
227
|
-
dimensions: column.dimensions,
|
|
228
|
-
});
|
|
229
|
-
const alters = [];
|
|
230
|
-
alters.push(`ALTER COLUMN ${quotedColumn} TYPE ${sqlType}`);
|
|
231
|
-
if (column.nullable === false) {
|
|
232
|
-
alters.push(`ALTER COLUMN ${quotedColumn} SET NOT NULL`);
|
|
233
|
-
}
|
|
234
|
-
else if (column.nullable === true) {
|
|
235
|
-
alters.push(`ALTER COLUMN ${quotedColumn} DROP NOT NULL`);
|
|
236
|
-
}
|
|
237
|
-
if (column.defaultValue !== undefined) {
|
|
238
|
-
let defaultVal;
|
|
239
|
-
if (typeof column.defaultValue === "object" &&
|
|
240
|
-
column.defaultValue !== null &&
|
|
241
|
-
column.defaultValue.__type === "CURRENT_TIMESTAMP") {
|
|
242
|
-
defaultVal = "NOW()";
|
|
243
|
-
}
|
|
244
|
-
else if (typeof column.defaultValue === "string") {
|
|
245
|
-
defaultVal = `'${column.defaultValue}'`;
|
|
246
|
-
}
|
|
247
|
-
else {
|
|
248
|
-
defaultVal = String(column.defaultValue);
|
|
249
|
-
}
|
|
250
|
-
alters.push(`ALTER COLUMN ${quotedColumn} SET DEFAULT ${defaultVal}`);
|
|
251
|
-
}
|
|
252
|
-
return `ALTER TABLE ${quotedTable} ${alters.join(", ")}`;
|
|
253
|
-
}
|
|
254
|
-
createTimestamps(table) {
|
|
255
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
256
|
-
return [
|
|
257
|
-
`ALTER TABLE ${quotedTable} ADD COLUMN "created_at" TIMESTAMPTZ NOT NULL DEFAULT NOW()`,
|
|
258
|
-
`ALTER TABLE ${quotedTable} ADD COLUMN "updated_at" TIMESTAMPTZ NOT NULL DEFAULT NOW()`,
|
|
259
|
-
];
|
|
260
|
-
}
|
|
261
|
-
// ============================================================================
|
|
262
|
-
// INDEX OPERATIONS
|
|
263
|
-
// ============================================================================
|
|
264
|
-
createIndex(table, index) {
|
|
265
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
266
|
-
let indexName;
|
|
267
|
-
if (index.name) {
|
|
268
|
-
indexName = index.name;
|
|
269
|
-
}
|
|
270
|
-
else {
|
|
271
|
-
const colStr = Array.isArray(index.columns) ? index.columns.join("_") : index.columns;
|
|
272
|
-
indexName = `idx_${table}_${colStr}`;
|
|
273
|
-
}
|
|
274
|
-
const quotedIndexName = this.dialect.quoteIdentifier(indexName);
|
|
275
|
-
const uniqueKeyword = index.unique ? "UNIQUE " : "";
|
|
276
|
-
const concurrentlyKeyword = index.concurrently ? "CONCURRENTLY " : "";
|
|
277
|
-
let columnsPart;
|
|
278
|
-
if (index.expressions && index.expressions.length > 0) {
|
|
279
|
-
columnsPart = index.expressions.map((expr) => `(${expr})`).join(", ");
|
|
280
|
-
}
|
|
281
|
-
else {
|
|
282
|
-
const columns = index.columns.map((col, i) => {
|
|
283
|
-
const quotedCol = this.dialect.quoteIdentifier(col);
|
|
284
|
-
const direction = index.directions?.[i]?.toUpperCase() ?? "";
|
|
285
|
-
return direction ? `${quotedCol} ${direction}` : quotedCol;
|
|
286
|
-
});
|
|
287
|
-
columnsPart = columns.join(", ");
|
|
288
|
-
}
|
|
289
|
-
let sql = `CREATE ${uniqueKeyword}INDEX ${concurrentlyKeyword}${quotedIndexName} ON ${quotedTable} (${columnsPart})`;
|
|
290
|
-
if (index.include && index.include.length > 0) {
|
|
291
|
-
const includeCols = index.include.map((col) => this.dialect.quoteIdentifier(col)).join(", ");
|
|
292
|
-
sql += ` INCLUDE (${includeCols})`;
|
|
293
|
-
}
|
|
294
|
-
if (index.where && Object.keys(index.where).length > 0) {
|
|
295
|
-
const conditions = Object.entries(index.where)
|
|
296
|
-
.map(([key, value]) => {
|
|
297
|
-
const quotedKey = this.dialect.quoteIdentifier(key);
|
|
298
|
-
return typeof value === "string" ? `${quotedKey} = '${value}'` : `${quotedKey} = ${value}`;
|
|
299
|
-
})
|
|
300
|
-
.join(" AND ");
|
|
301
|
-
sql += ` WHERE ${conditions}`;
|
|
302
|
-
}
|
|
303
|
-
return sql;
|
|
304
|
-
}
|
|
305
|
-
dropIndex(table, indexNameOrColumns) {
|
|
306
|
-
let indexName;
|
|
307
|
-
if (typeof indexNameOrColumns === "string") {
|
|
308
|
-
indexName = indexNameOrColumns;
|
|
309
|
-
}
|
|
310
|
-
else {
|
|
311
|
-
indexName = `idx_${table}_${indexNameOrColumns.join("_")}`;
|
|
312
|
-
}
|
|
313
|
-
const quotedIndexName = this.dialect.quoteIdentifier(indexName);
|
|
314
|
-
return `DROP INDEX IF EXISTS ${quotedIndexName}`;
|
|
315
|
-
}
|
|
316
|
-
createFullTextIndex(table, columns, options) {
|
|
317
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
318
|
-
const indexName = options?.name ?? `idx_${table}_fulltext_${columns.join("_")}`;
|
|
319
|
-
const quotedIndexName = this.dialect.quoteIdentifier(indexName);
|
|
320
|
-
const language = options?.language ?? "english";
|
|
321
|
-
const tsvectors = columns.map((col) => {
|
|
322
|
-
const weight = options?.weights?.[col] ?? "A";
|
|
323
|
-
return `setweight(to_tsvector('${language}', COALESCE(${this.dialect.quoteIdentifier(col)}, '')), '${weight}')`;
|
|
324
|
-
});
|
|
325
|
-
return `CREATE INDEX ${quotedIndexName} ON ${quotedTable} USING GIN ((${tsvectors.join(" || ")}))`;
|
|
326
|
-
}
|
|
327
|
-
createGeoIndex(table, column, options) {
|
|
328
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
329
|
-
const quotedColumn = this.dialect.quoteIdentifier(column);
|
|
330
|
-
const indexName = options?.name ?? `idx_${table}_geo_${column}`;
|
|
331
|
-
const quotedIndexName = this.dialect.quoteIdentifier(indexName);
|
|
332
|
-
return `CREATE INDEX ${quotedIndexName} ON ${quotedTable} USING GIST (${quotedColumn})`;
|
|
333
|
-
}
|
|
334
|
-
createVectorIndex(table, column, options) {
|
|
335
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
336
|
-
const quotedColumn = this.dialect.quoteIdentifier(column);
|
|
337
|
-
const indexName = options.name ?? `idx_${table}_vector_${column}`;
|
|
338
|
-
const quotedIndexName = this.dialect.quoteIdentifier(indexName);
|
|
339
|
-
const opClass = options.similarity === "euclidean"
|
|
340
|
-
? "vector_l2_ops"
|
|
341
|
-
: options.similarity === "dotProduct"
|
|
342
|
-
? "vector_ip_ops"
|
|
343
|
-
: "vector_cosine_ops";
|
|
344
|
-
const lists = options.lists ?? 100;
|
|
345
|
-
return `CREATE INDEX ${quotedIndexName} ON ${quotedTable} USING ivfflat (${quotedColumn} ${opClass}) WITH (lists = ${lists})`;
|
|
346
|
-
}
|
|
347
|
-
createTTLIndex(table, column, expireAfterSeconds) {
|
|
348
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
349
|
-
const quotedColumn = this.dialect.quoteIdentifier(column);
|
|
350
|
-
const indexName = `idx_${table}_ttl_${column}`;
|
|
351
|
-
const quotedIndexName = this.dialect.quoteIdentifier(indexName);
|
|
352
|
-
return `CREATE INDEX ${quotedIndexName} ON ${quotedTable} (${quotedColumn}) WHERE ${quotedColumn} < NOW() - INTERVAL '${expireAfterSeconds} seconds'`;
|
|
353
|
-
}
|
|
354
|
-
// ============================================================================
|
|
355
|
-
// CONSTRAINTS
|
|
356
|
-
// ============================================================================
|
|
357
|
-
addForeignKey(table, foreignKey) {
|
|
358
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
359
|
-
const quotedColumn = this.dialect.quoteIdentifier(foreignKey.column);
|
|
360
|
-
const quotedRefTable = this.dialect.quoteIdentifier(foreignKey.referencesTable);
|
|
361
|
-
const quotedRefColumn = this.dialect.quoteIdentifier(foreignKey.referencesColumn);
|
|
362
|
-
const constraintName = foreignKey.name ?? `fk_${table}_${foreignKey.column}_${foreignKey.referencesTable}`;
|
|
363
|
-
const quotedConstraint = this.dialect.quoteIdentifier(constraintName);
|
|
364
|
-
let sql = `ALTER TABLE ${quotedTable} ADD CONSTRAINT ${quotedConstraint} FOREIGN KEY (${quotedColumn}) REFERENCES ${quotedRefTable} (${quotedRefColumn})`;
|
|
365
|
-
if (foreignKey.onDelete) {
|
|
366
|
-
sql += ` ON DELETE ${this.mapForeignKeyAction(foreignKey.onDelete)}`;
|
|
367
|
-
}
|
|
368
|
-
if (foreignKey.onUpdate) {
|
|
369
|
-
sql += ` ON UPDATE ${this.mapForeignKeyAction(foreignKey.onUpdate)}`;
|
|
370
|
-
}
|
|
371
|
-
return sql;
|
|
372
|
-
}
|
|
373
|
-
dropForeignKey(table, name) {
|
|
374
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
375
|
-
const quotedConstraint = this.dialect.quoteIdentifier(name);
|
|
376
|
-
return `ALTER TABLE ${quotedTable} DROP CONSTRAINT ${quotedConstraint}`;
|
|
377
|
-
}
|
|
378
|
-
addPrimaryKey(table, columns) {
|
|
379
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
380
|
-
const quotedColumns = columns.map((c) => this.dialect.quoteIdentifier(c)).join(", ");
|
|
381
|
-
const constraintName = `pk_${table}`;
|
|
382
|
-
const quotedConstraint = this.dialect.quoteIdentifier(constraintName);
|
|
383
|
-
return `ALTER TABLE ${quotedTable} ADD CONSTRAINT ${quotedConstraint} PRIMARY KEY (${quotedColumns})`;
|
|
384
|
-
}
|
|
385
|
-
dropPrimaryKey(table) {
|
|
386
|
-
const quotedTable = this.dialect.quoteIdentifier(table);
|
|
387
|
-
const constraintName = `pk_${table}`;
|
|
388
|
-
const quotedConstraint = this.dialect.quoteIdentifier(constraintName);
|
|
389
|
-
return `ALTER TABLE ${quotedTable} DROP CONSTRAINT ${quotedConstraint}`;
|
|
390
|
-
}
|
|
391
|
-
mapForeignKeyAction(action) {
|
|
392
|
-
switch (action) {
|
|
393
|
-
case "cascade": return "CASCADE";
|
|
394
|
-
case "restrict": return "RESTRICT";
|
|
395
|
-
case "setNull": return "SET NULL";
|
|
396
|
-
case "noAction": return "NO ACTION";
|
|
397
|
-
default: return "NO ACTION";
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
}exports.PostgresSQLSerializer=PostgresSQLSerializer;//# sourceMappingURL=postgres-sql-serializer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-sql-serializer.js","sources":["../../../src/drivers/postgres/postgres-sql-serializer.ts"],"sourcesContent":[null],"names":["SQLSerializer"],"mappings":"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"}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PostgreSQL Sync Adapter
|
|
3
|
-
*
|
|
4
|
-
* Implements the SyncAdapterContract for batch update operations
|
|
5
|
-
* on embedded/denormalized data in PostgreSQL.
|
|
6
|
-
*
|
|
7
|
-
* @module cascade/drivers/postgres
|
|
8
|
-
*/
|
|
9
|
-
import type { SyncAdapterContract, SyncInstruction } from "../../contracts/sync-adapter.contract";
|
|
10
|
-
import type { PostgresDriver } from "./postgres-driver";
|
|
11
|
-
/**
|
|
12
|
-
* PostgreSQL Sync Adapter.
|
|
13
|
-
*
|
|
14
|
-
* Handles batch updates for embedded/denormalized data stored
|
|
15
|
-
* in JSONB columns. In a normalized SQL world, this is less common
|
|
16
|
-
* than in MongoDB, but still useful for JSONB documents.
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```typescript
|
|
20
|
-
* const syncAdapter = driver.syncAdapter();
|
|
21
|
-
*
|
|
22
|
-
* // Update embedded user data in posts
|
|
23
|
-
* await syncAdapter.executeBatch([
|
|
24
|
-
* {
|
|
25
|
-
* targetTable: 'posts',
|
|
26
|
-
* filter: { 'author.id': 123 },
|
|
27
|
-
* update: { 'author.name': 'New Name' },
|
|
28
|
-
* // ... other fields
|
|
29
|
-
* }
|
|
30
|
-
* ]);
|
|
31
|
-
* ```
|
|
32
|
-
*/
|
|
33
|
-
export declare class PostgresSyncAdapter implements SyncAdapterContract {
|
|
34
|
-
private readonly driver;
|
|
35
|
-
/**
|
|
36
|
-
* Create a new sync adapter.
|
|
37
|
-
*
|
|
38
|
-
* @param driver - The PostgreSQL driver instance
|
|
39
|
-
*/
|
|
40
|
-
constructor(driver: PostgresDriver);
|
|
41
|
-
/**
|
|
42
|
-
* Execute a batch of sync instructions.
|
|
43
|
-
*
|
|
44
|
-
* @param instructions - Array of sync instructions
|
|
45
|
-
* @returns Total number of affected rows
|
|
46
|
-
*/
|
|
47
|
-
executeBatch(instructions: SyncInstruction[]): Promise<number>;
|
|
48
|
-
/**
|
|
49
|
-
* Execute a single sync instruction.
|
|
50
|
-
*
|
|
51
|
-
* @param instruction - Sync instruction
|
|
52
|
-
* @returns Number of affected rows
|
|
53
|
-
*/
|
|
54
|
-
executeOne(instruction: SyncInstruction): Promise<number>;
|
|
55
|
-
/**
|
|
56
|
-
* Execute an array update instruction with positional operators.
|
|
57
|
-
*
|
|
58
|
-
* @param instruction - Sync instruction with array update info
|
|
59
|
-
* @returns Number of affected rows
|
|
60
|
-
*/
|
|
61
|
-
executeArrayUpdate(instruction: SyncInstruction): Promise<number>;
|
|
62
|
-
/**
|
|
63
|
-
* Execute an update on JSONB fields.
|
|
64
|
-
*
|
|
65
|
-
* @param table - Table name
|
|
66
|
-
* @param filter - Row filter
|
|
67
|
-
* @param update - Fields to update
|
|
68
|
-
* @returns Number of affected rows
|
|
69
|
-
*/
|
|
70
|
-
private executeJsonbUpdate;
|
|
71
|
-
/**
|
|
72
|
-
* Execute an update on elements within a JSONB array.
|
|
73
|
-
*
|
|
74
|
-
* @param table - Table name
|
|
75
|
-
* @param filter - Row filter
|
|
76
|
-
* @param arrayField - JSONB array column
|
|
77
|
-
* @param arrayFilter - Filter to match array elements
|
|
78
|
-
* @param update - Fields to update on matched elements
|
|
79
|
-
* @returns Number of affected rows
|
|
80
|
-
*/
|
|
81
|
-
private executeArrayElementUpdate;
|
|
82
|
-
}
|
|
83
|
-
//# sourceMappingURL=postgres-sync-adapter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-sync-adapter.d.ts","sourceRoot":"","sources":["../../../src/drivers/postgres/postgres-sync-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,mBAAoB,YAAW,mBAAmB;IAM1C,OAAO,CAAC,QAAQ,CAAC,MAAM;IAL1C;;;;OAIG;gBACiC,MAAM,EAAE,cAAc;IAE1D;;;;;OAKG;IACU,YAAY,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAc3E;;;;;OAKG;IACU,UAAU,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAKtE;;;;;OAKG;IACU,kBAAkB,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAkB9E;;;;;;;OAOG;YACW,kBAAkB;IA4DhC;;;;;;;;;OASG;YACW,yBAAyB;CA6DxC"}
|