typeorm 0.2.28 → 0.2.32
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 +54 -49
- package/browser/cache/QueryResultCache.js +1 -1
- package/browser/cache/QueryResultCacheOptions.js +1 -1
- package/browser/common/DeepPartial.js +1 -1
- package/browser/common/EntityFieldsNames.d.ts +6 -0
- package/browser/common/EntityFieldsNames.js +3 -0
- package/browser/common/EntityFieldsNames.js.map +1 -0
- package/browser/common/EntityTarget.js +1 -1
- package/browser/common/ObjectLiteral.js +1 -1
- package/browser/common/ObjectType.js +1 -1
- package/browser/connection/BaseConnectionOptions.js +1 -1
- package/browser/connection/Connection.d.ts +2 -2
- package/browser/connection/Connection.js +4 -2
- package/browser/connection/Connection.js.map +1 -1
- package/browser/connection/ConnectionMetadataBuilder.js +5 -5
- package/browser/connection/ConnectionMetadataBuilder.js.map +1 -1
- package/browser/connection/ConnectionOptions.js +1 -1
- package/browser/connection/ConnectionOptionsReader.d.ts +3 -3
- package/browser/connection/ConnectionOptionsReader.js +30 -30
- package/browser/connection/ConnectionOptionsReader.js.map +1 -1
- package/browser/connection/options-reader/ConnectionOptionsEnvReader.js +1 -1
- package/browser/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
- package/browser/connection/options-reader/ConnectionOptionsYmlReader.js +1 -1
- package/browser/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
- package/browser/decorator/columns/PrimaryColumn.d.ts +9 -2
- package/browser/decorator/columns/PrimaryColumn.js.map +1 -1
- package/browser/decorator/entity/ChildEntity.js +1 -1
- package/browser/decorator/entity/ChildEntity.js.map +1 -1
- package/browser/decorator/options/ColumnCommonOptions.js +1 -1
- package/browser/decorator/options/ColumnEmbeddedOptions.js +1 -1
- package/browser/decorator/options/ColumnEnumOptions.js +1 -1
- package/browser/decorator/options/ColumnHstoreOptions.js +1 -1
- package/browser/decorator/options/ColumnNumericOptions.js +1 -1
- package/browser/decorator/options/ColumnOptions.js +1 -1
- package/browser/decorator/options/ColumnWithLengthOptions.js +1 -1
- package/browser/decorator/options/ColumnWithWidthOptions.js +1 -1
- package/browser/decorator/options/EntityOptions.js +1 -1
- package/browser/decorator/options/IndexOptions.js +1 -1
- package/browser/decorator/options/JoinColumnOptions.js +1 -1
- package/browser/decorator/options/JoinTableMultipleColumnsOptions.js +1 -1
- package/browser/decorator/options/JoinTableOptions.js +1 -1
- package/browser/decorator/options/PrimaryGeneratedColumnNumericOptions.js +1 -1
- package/browser/decorator/options/PrimaryGeneratedColumnUUIDOptions.js +1 -1
- package/browser/decorator/options/RelationOptions.d.ts +10 -0
- package/browser/decorator/options/RelationOptions.js +1 -1
- package/browser/decorator/options/RelationOptions.js.map +1 -1
- package/browser/decorator/options/SpatialColumnOptions.js +1 -1
- package/browser/decorator/options/TransactionOptions.js +1 -1
- package/browser/decorator/options/ValueTransformer.js +1 -1
- package/browser/decorator/options/ViewColumnOptions.js +1 -1
- package/browser/decorator/options/ViewEntityOptions.js +1 -1
- package/browser/decorator/relations/ManyToOne.d.ts +6 -6
- package/browser/decorator/relations/ManyToOne.js +5 -5
- package/browser/decorator/relations/ManyToOne.js.map +1 -1
- package/browser/decorator/relations/OneToMany.d.ts +3 -2
- package/browser/decorator/relations/OneToMany.js +4 -3
- package/browser/decorator/relations/OneToMany.js.map +1 -1
- package/browser/decorator/transaction/Transaction.d.ts +1 -1
- package/browser/decorator/transaction/Transaction.js +6 -6
- package/browser/decorator/transaction/Transaction.js.map +1 -1
- package/browser/decorator/tree/Tree.d.ts +2 -1
- package/browser/decorator/tree/Tree.js +3 -2
- package/browser/decorator/tree/Tree.js.map +1 -1
- package/browser/driver/Driver.d.ts +1 -1
- package/browser/driver/Driver.js +1 -1
- package/browser/driver/Driver.js.map +1 -1
- package/browser/driver/DriverFactory.js.map +1 -1
- package/browser/driver/DriverUtils.d.ts +10 -0
- package/browser/driver/DriverUtils.js +99 -12
- package/browser/driver/DriverUtils.js.map +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiConnectionCredentialsOptions.js +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.d.ts +1 -0
- package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.js +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.js.map +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiDriver.d.ts +3 -3
- package/browser/driver/aurora-data-api/AuroraDataApiDriver.js +15 -6
- package/browser/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.d.ts +6 -1
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +72 -11
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.d.ts +2 -0
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js +1 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js.map +1 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.d.ts +10 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +26 -2
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.d.ts +2 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +59 -11
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js +1 -1
- package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.js +1 -1
- package/browser/driver/cockroachdb/CockroachConnectionOptions.js +1 -1
- package/browser/driver/cockroachdb/CockroachDriver.d.ts +1 -1
- package/browser/driver/cockroachdb/CockroachDriver.js +6 -9
- package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +4 -0
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +112 -42
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/cordova/CordovaConnectionOptions.js +1 -1
- package/browser/driver/expo/ExpoConnectionOptions.js +1 -1
- package/browser/driver/expo/ExpoQueryRunner.js +72 -14
- package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/MongoConnectionOptions.d.ts +8 -0
- package/browser/driver/mongodb/MongoConnectionOptions.js +1 -1
- package/browser/driver/mongodb/MongoConnectionOptions.js.map +1 -1
- package/browser/driver/mongodb/MongoDriver.d.ts +8 -4
- package/browser/driver/mongodb/MongoDriver.js +26 -14
- package/browser/driver/mongodb/MongoDriver.js.map +1 -1
- package/browser/driver/mongodb/MongoQueryRunner.d.ts +3 -3
- package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/browser/driver/mysql/MysqlConnectionCredentialsOptions.d.ts +4 -0
- package/browser/driver/mysql/MysqlConnectionCredentialsOptions.js +1 -1
- package/browser/driver/mysql/MysqlConnectionCredentialsOptions.js.map +1 -1
- package/browser/driver/mysql/MysqlConnectionOptions.js +1 -1
- package/browser/driver/mysql/MysqlDriver.d.ts +2 -2
- package/browser/driver/mysql/MysqlDriver.js +15 -14
- package/browser/driver/mysql/MysqlDriver.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.d.ts +4 -0
- package/browser/driver/mysql/MysqlQueryRunner.js +118 -43
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/browser/driver/nativescript/NativescriptConnectionOptions.js +1 -1
- package/browser/driver/oracle/OracleConnectionCredentialsOptions.js +1 -1
- package/browser/driver/oracle/OracleConnectionOptions.d.ts +4 -0
- package/browser/driver/oracle/OracleConnectionOptions.js +1 -1
- package/browser/driver/oracle/OracleConnectionOptions.js.map +1 -1
- package/browser/driver/oracle/OracleDriver.d.ts +1 -1
- package/browser/driver/oracle/OracleDriver.js +28 -3
- package/browser/driver/oracle/OracleDriver.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.js +53 -7
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js +1 -1
- package/browser/driver/postgres/PostgresConnectionOptions.d.ts +4 -0
- package/browser/driver/postgres/PostgresConnectionOptions.js +1 -1
- package/browser/driver/postgres/PostgresConnectionOptions.js.map +1 -1
- package/browser/driver/postgres/PostgresDriver.d.ts +2 -2
- package/browser/driver/postgres/PostgresDriver.js +63 -29
- package/browser/driver/postgres/PostgresDriver.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.d.ts +9 -1
- package/browser/driver/postgres/PostgresQueryRunner.js +335 -211
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/react-native/ReactNativeConnectionOptions.js +1 -1
- package/browser/driver/react-native/ReactNativeDriver.js +1 -2
- package/browser/driver/react-native/ReactNativeDriver.js.map +1 -1
- package/browser/driver/sap/SapConnectionCredentialsOptions.js +1 -1
- package/browser/driver/sap/SapConnectionOptions.js +1 -1
- package/browser/driver/sap/SapDriver.d.ts +1 -1
- package/browser/driver/sap/SapDriver.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.js +58 -10
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/sqlite/SqliteConnectionOptions.js +1 -1
- package/browser/driver/sqlite/SqliteQueryRunner.js +4 -0
- package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +55 -8
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqljs/SqljsConnectionOptions.js +1 -1
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +18 -2
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.js +1 -1
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerConnectionOptions.js +1 -1
- package/browser/driver/sqlserver/SqlServerDriver.d.ts +2 -2
- package/browser/driver/sqlserver/SqlServerDriver.js +33 -8
- package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +1 -0
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +166 -86
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.d.ts +10 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js +3 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js.map +1 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.d.ts +20 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js +3 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js.map +1 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.d.ts +16 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js +3 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js.map +1 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.d.ts +17 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js +3 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js.map +1 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.d.ts +17 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js +3 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js.map +1 -0
- package/browser/driver/sqlserver/authentication/DefaultAuthentication.d.ts +13 -0
- package/browser/driver/sqlserver/authentication/DefaultAuthentication.js +3 -0
- package/browser/driver/sqlserver/authentication/DefaultAuthentication.js.map +1 -0
- package/browser/driver/sqlserver/authentication/NtlmAuthentication.d.ts +19 -0
- package/browser/driver/sqlserver/authentication/NtlmAuthentication.js +3 -0
- package/browser/driver/sqlserver/authentication/NtlmAuthentication.js.map +1 -0
- package/browser/driver/types/ColumnTypes.d.ts +1 -1
- package/browser/driver/types/ColumnTypes.js +1 -1
- package/browser/driver/types/ColumnTypes.js.map +1 -1
- package/browser/driver/types/DataTypeDefaults.js +1 -1
- package/browser/driver/types/DatabaseType.js +1 -1
- package/browser/driver/types/IsolationLevel.js +1 -1
- package/browser/driver/types/MappedColumnTypes.js +1 -1
- package/browser/driver/types/ReplicationMode.js +1 -1
- package/browser/entity-manager/EntityManager.d.ts +16 -2
- package/browser/entity-manager/EntityManager.js +5 -16
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.d.ts +1 -4
- package/browser/entity-manager/MongoEntityManager.js +53 -48
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/entity-schema/EntitySchemaCheckOptions.js +1 -1
- package/browser/entity-schema/EntitySchemaColumnOptions.js +1 -1
- package/browser/entity-schema/EntitySchemaExclusionOptions.js +1 -1
- package/browser/entity-schema/EntitySchemaIndexOptions.js +1 -1
- package/browser/entity-schema/EntitySchemaRelationOptions.js +1 -1
- package/browser/entity-schema/EntitySchemaUniqueOptions.js +1 -1
- package/browser/error/index.d.ts +61 -0
- package/browser/error/index.js +63 -0
- package/browser/error/index.js.map +1 -0
- package/browser/find-options/FindConditions.js +1 -1
- package/browser/find-options/FindManyOptions.js +1 -1
- package/browser/find-options/FindOneOptions.d.ts +10 -2
- package/browser/find-options/FindOneOptions.js +1 -1
- package/browser/find-options/FindOneOptions.js.map +1 -1
- package/browser/find-options/FindOperator.d.ts +25 -6
- package/browser/find-options/FindOperator.js +32 -6
- package/browser/find-options/FindOperator.js.map +1 -1
- package/browser/find-options/FindOperatorType.d.ts +1 -1
- package/browser/find-options/FindOperatorType.js +1 -1
- package/browser/find-options/FindOperatorType.js.map +1 -1
- package/browser/find-options/FindOptionsUtils.js +15 -2
- package/browser/find-options/FindOptionsUtils.js.map +1 -1
- package/browser/find-options/JoinOptions.d.ts +16 -4
- package/browser/find-options/JoinOptions.js +1 -1
- package/browser/find-options/JoinOptions.js.map +1 -1
- package/browser/find-options/OrderByCondition.js +1 -1
- package/browser/find-options/operator/ILike.d.ts +6 -0
- package/browser/find-options/operator/ILike.js +10 -0
- package/browser/find-options/operator/ILike.js.map +1 -0
- package/browser/find-options/operator/Raw.d.ts +14 -2
- package/browser/find-options/operator/Raw.js +5 -6
- package/browser/find-options/operator/Raw.js.map +1 -1
- package/browser/index.d.ts +3 -1
- package/browser/index.js +25 -1
- package/browser/index.js.map +1 -1
- package/browser/logger/AdvancedConsoleLogger.d.ts +2 -1
- package/browser/logger/FileLogger.d.ts +2 -2
- package/browser/logger/Logger.d.ts +1 -1
- package/browser/logger/Logger.js +1 -1
- package/browser/logger/Logger.js.map +1 -1
- package/browser/logger/LoggerOptions.js +1 -1
- package/browser/logger/SimpleConsoleLogger.d.ts +2 -1
- package/browser/metadata/ColumnMetadata.d.ts +1 -1
- package/browser/metadata/ColumnMetadata.js +23 -15
- package/browser/metadata/ColumnMetadata.js.map +1 -1
- package/browser/metadata/EmbeddedMetadata.js +2 -2
- package/browser/metadata/EmbeddedMetadata.js.map +1 -1
- package/browser/metadata/EntityMetadata.d.ts +5 -0
- package/browser/metadata/EntityMetadata.js +3 -2
- package/browser/metadata/EntityMetadata.js.map +1 -1
- package/browser/metadata/RelationMetadata.d.ts +15 -0
- package/browser/metadata/RelationMetadata.js +23 -7
- package/browser/metadata/RelationMetadata.js.map +1 -1
- package/browser/metadata/types/ClosureTreeOptions.d.ts +10 -0
- package/browser/metadata/types/ClosureTreeOptions.js +3 -0
- package/browser/metadata/types/ClosureTreeOptions.js.map +1 -0
- package/browser/metadata/types/DeferrableType.js +1 -1
- package/browser/metadata/types/EventListenerTypes.d.ts +7 -7
- package/browser/metadata/types/EventListenerTypes.js.map +1 -1
- package/browser/metadata/types/OnDeleteType.js +1 -1
- package/browser/metadata/types/OnUpdateType.js +1 -1
- package/browser/metadata/types/PropertyTypeInFunction.js +1 -1
- package/browser/metadata/types/RelationTypeInFunction.js +1 -1
- package/browser/metadata/types/RelationTypes.js +1 -1
- package/browser/metadata/types/TableTypes.js +1 -1
- package/browser/metadata/types/TreeTypes.js +1 -1
- package/browser/metadata-args/CheckMetadataArgs.js +1 -1
- package/browser/metadata-args/ColumnMetadataArgs.js +1 -1
- package/browser/metadata-args/DiscriminatorValueMetadataArgs.js +1 -1
- package/browser/metadata-args/EmbeddedMetadataArgs.js +1 -1
- package/browser/metadata-args/EntityListenerMetadataArgs.js +1 -1
- package/browser/metadata-args/EntityRepositoryMetadataArgs.js +1 -1
- package/browser/metadata-args/EntitySubscriberMetadataArgs.js +1 -1
- package/browser/metadata-args/ExclusionMetadataArgs.js +1 -1
- package/browser/metadata-args/GeneratedMetadataArgs.js +1 -1
- package/browser/metadata-args/IndexMetadataArgs.js +1 -1
- package/browser/metadata-args/InheritanceMetadataArgs.js +1 -1
- package/browser/metadata-args/JoinColumnMetadataArgs.js +1 -1
- package/browser/metadata-args/JoinTableMetadataArgs.js +1 -1
- package/browser/metadata-args/NamingStrategyMetadataArgs.js +1 -1
- package/browser/metadata-args/RelationCountMetadataArgs.js +1 -1
- package/browser/metadata-args/RelationIdMetadataArgs.js +1 -1
- package/browser/metadata-args/RelationMetadataArgs.js +1 -1
- package/browser/metadata-args/TableMetadataArgs.js +1 -1
- package/browser/metadata-args/TransactionEntityMetadataArgs.js +1 -1
- package/browser/metadata-args/TransactionRepositoryMetadataArgs.js +1 -1
- package/browser/metadata-args/TreeMetadataArgs.d.ts +5 -0
- package/browser/metadata-args/TreeMetadataArgs.js +1 -1
- package/browser/metadata-args/TreeMetadataArgs.js.map +1 -1
- package/browser/metadata-args/UniqueMetadataArgs.js +1 -1
- package/browser/metadata-args/types/ColumnMode.js +1 -1
- package/browser/metadata-builder/ClosureJunctionEntityMetadataBuilder.js +5 -3
- package/browser/metadata-builder/ClosureJunctionEntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js +26 -16
- package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataValidator.js +10 -5
- package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +8 -4
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/RelationJoinColumnBuilder.d.ts +1 -0
- package/browser/metadata-builder/RelationJoinColumnBuilder.js +8 -6
- package/browser/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/browser/migration/MigrationExecutor.js +5 -5
- package/browser/migration/MigrationInterface.js +1 -1
- package/browser/naming-strategy/DefaultNamingStrategy.d.ts +1 -1
- package/browser/naming-strategy/DefaultNamingStrategy.js +9 -8
- package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/browser/naming-strategy/NamingStrategyInterface.d.ts +6 -1
- package/browser/naming-strategy/NamingStrategyInterface.js +1 -1
- package/browser/naming-strategy/NamingStrategyInterface.js.map +1 -1
- package/browser/persistence/EntityPersistExecutor.js +55 -52
- package/browser/persistence/EntityPersistExecutor.js.map +1 -1
- package/browser/persistence/Subject.d.ts +4 -4
- package/browser/persistence/Subject.js +8 -7
- package/browser/persistence/Subject.js.map +1 -1
- package/browser/persistence/SubjectChangeMap.js +1 -1
- package/browser/persistence/SubjectChangedColumnsComputer.js +3 -1
- package/browser/persistence/SubjectChangedColumnsComputer.js.map +1 -1
- package/browser/persistence/SubjectDatabaseEntityLoader.js +2 -2
- package/browser/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
- package/browser/persistence/SubjectExecutor.js +30 -26
- package/browser/persistence/SubjectExecutor.js.map +1 -1
- package/browser/persistence/SubjectTopoligicalSorter.js +6 -6
- package/browser/persistence/SubjectTopoligicalSorter.js.map +1 -1
- package/browser/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js +2 -0
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
- package/browser/persistence/subject-builder/OneToManySubjectBuilder.js +9 -4
- package/browser/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
- package/browser/persistence/tree/ClosureSubjectExecutor.d.ts +1 -1
- package/browser/persistence/tree/ClosureSubjectExecutor.js +7 -7
- package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/browser/query-builder/Alias.d.ts +4 -3
- package/browser/query-builder/Alias.js +3 -3
- package/browser/query-builder/DeleteQueryBuilder.js +7 -2
- package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/InsertQueryBuilder.d.ts +6 -0
- package/browser/query-builder/InsertQueryBuilder.js +63 -14
- package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
- package/browser/query-builder/JoinAttribute.d.ts +10 -10
- package/browser/query-builder/JoinAttribute.js +10 -10
- package/browser/query-builder/JoinOptions.js +1 -1
- package/browser/query-builder/QueryBuilder.d.ts +8 -1
- package/browser/query-builder/QueryBuilder.js +172 -37
- package/browser/query-builder/QueryBuilder.js.map +1 -1
- package/browser/query-builder/QueryBuilderUtils.js.map +1 -1
- package/browser/query-builder/QueryExpressionMap.d.ts +10 -2
- package/browser/query-builder/QueryExpressionMap.js +4 -2
- package/browser/query-builder/QueryExpressionMap.js.map +1 -1
- package/browser/query-builder/QueryPartialEntity.js +1 -1
- package/browser/query-builder/RelationLoader.js +4 -4
- package/browser/query-builder/RelationLoader.js.map +1 -1
- package/browser/query-builder/RelationQueryBuilder.js +1 -1
- package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
- package/browser/query-builder/RelationRemover.js +11 -11
- package/browser/query-builder/RelationRemover.js.map +1 -1
- package/browser/query-builder/SelectQuery.js +1 -1
- package/browser/query-builder/SelectQueryBuilder.d.ts +7 -6
- package/browser/query-builder/SelectQueryBuilder.js +129 -67
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilderOption.js +1 -1
- package/browser/query-builder/UpdateQueryBuilder.js +6 -1
- package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/browser/query-builder/WhereExpression.js +1 -1
- package/browser/query-builder/relation-count/RelationCountAttribute.d.ts +7 -7
- package/browser/query-builder/relation-count/RelationCountAttribute.js +7 -7
- package/browser/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
- package/browser/query-builder/relation-count/RelationCountLoadResult.js +1 -1
- package/browser/query-builder/relation-count/RelationCountLoader.js +2 -1
- package/browser/query-builder/relation-count/RelationCountLoader.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdAttribute.d.ts +8 -8
- package/browser/query-builder/relation-id/RelationIdAttribute.js +8 -8
- package/browser/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdLoadResult.js +1 -1
- package/browser/query-builder/relation-id/RelationIdLoader.js +62 -12
- package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +3 -3
- package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +10 -7
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/browser/query-runner/BaseQueryRunner.js +3 -3
- package/browser/query-runner/BaseQueryRunner.js.map +1 -1
- package/browser/query-runner/QueryRunner.d.ts +1 -1
- package/browser/query-runner/QueryRunner.js +1 -1
- package/browser/query-runner/QueryRunner.js.map +1 -1
- package/browser/repository/AbstractRepository.d.ts +2 -2
- package/browser/repository/AbstractRepository.js +2 -2
- package/browser/repository/BaseEntity.d.ts +1 -1
- package/browser/repository/BaseEntity.js +3 -3
- package/browser/repository/BaseEntity.js.map +1 -1
- package/browser/repository/EntityId.js +1 -1
- package/browser/repository/RemoveOptions.js +1 -1
- package/browser/repository/Repository.d.ts +4 -4
- package/browser/repository/Repository.js +3 -3
- package/browser/repository/Repository.js.map +1 -1
- package/browser/repository/SaveOptions.js +1 -1
- package/browser/repository/TreeRepository.js +3 -3
- package/browser/repository/TreeRepository.js.map +1 -1
- package/browser/schema-builder/RdbmsSchemaBuilder.d.ts +2 -2
- package/browser/schema-builder/RdbmsSchemaBuilder.js +80 -79
- package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/browser/schema-builder/SchemaBuilder.js +1 -1
- package/browser/schema-builder/options/TableCheckOptions.js +1 -1
- package/browser/schema-builder/options/TableColumnOptions.js +1 -1
- package/browser/schema-builder/options/TableExclusionOptions.js +1 -1
- package/browser/schema-builder/options/TableForeignKeyOptions.js +1 -1
- package/browser/schema-builder/options/TableForeignKeyOptions.js.map +1 -1
- package/browser/schema-builder/options/TableIndexOptions.js +1 -1
- package/browser/schema-builder/options/TableOptions.js +1 -1
- package/browser/schema-builder/options/TableUniqueOptions.js +1 -1
- package/browser/schema-builder/options/ViewOptions.js +1 -1
- package/browser/schema-builder/table/Table.d.ts +1 -1
- package/browser/schema-builder/table/Table.js +1 -1
- package/browser/schema-builder/table/TableCheck.js +2 -2
- package/browser/schema-builder/table/TableCheck.js.map +1 -1
- package/browser/schema-builder/table/TableForeignKey.js +3 -3
- package/browser/schema-builder/table/TableForeignKey.js.map +1 -1
- package/browser/schema-builder/table/TableIndex.js +2 -2
- package/browser/schema-builder/table/TableIndex.js.map +1 -1
- package/browser/schema-builder/table/TableUnique.js +2 -2
- package/browser/schema-builder/table/TableUnique.js.map +1 -1
- package/browser/subscriber/Broadcaster.d.ts +24 -0
- package/browser/subscriber/Broadcaster.js +120 -0
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/subscriber/EntitySubscriberInterface.d.ts +27 -0
- package/browser/subscriber/EntitySubscriberInterface.js +1 -1
- package/browser/subscriber/EntitySubscriberInterface.js.map +1 -1
- package/browser/subscriber/event/InsertEvent.js +1 -1
- package/browser/subscriber/event/LoadEvent.js +1 -1
- package/browser/subscriber/event/RemoveEvent.js +1 -1
- package/browser/subscriber/event/TransactionCommitEvent.d.ts +22 -0
- package/browser/subscriber/event/TransactionCommitEvent.js +3 -0
- package/browser/subscriber/event/TransactionCommitEvent.js.map +1 -0
- package/browser/subscriber/event/TransactionRollbackEvent.d.ts +22 -0
- package/browser/subscriber/event/TransactionRollbackEvent.js +3 -0
- package/browser/subscriber/event/TransactionRollbackEvent.js.map +1 -0
- package/browser/subscriber/event/TransactionStartEvent.d.ts +22 -0
- package/browser/subscriber/event/TransactionStartEvent.js +3 -0
- package/browser/subscriber/event/TransactionStartEvent.js.map +1 -0
- package/browser/subscriber/event/UpdateEvent.js +1 -1
- package/browser/util/DateUtils.d.ts +1 -1
- package/browser/util/DateUtils.js +1 -7
- package/browser/util/DateUtils.js.map +1 -1
- package/browser/util/OrmUtils.d.ts +1 -1
- package/browser/util/OrmUtils.js +2 -2
- package/browser/util/OrmUtils.js.map +1 -1
- package/browser/util/StringUtils.js.map +1 -1
- package/cache/DbQueryResultCache.js +1 -0
- package/cache/DbQueryResultCache.js.map +1 -1
- package/cache/QueryResultCacheFactory.js +1 -0
- package/cache/QueryResultCacheFactory.js.map +1 -1
- package/cache/RedisQueryResultCache.js +1 -0
- package/cache/RedisQueryResultCache.js.map +1 -1
- package/cli.js +2 -2
- package/cli.js.map +1 -1
- package/commands/CacheClearCommand.js +1 -0
- package/commands/CacheClearCommand.js.map +1 -1
- package/commands/CommandUtils.js +1 -0
- package/commands/CommandUtils.js.map +1 -1
- package/commands/EntityCreateCommand.js +6 -2
- package/commands/EntityCreateCommand.js.map +1 -1
- package/commands/InitCommand.d.ts +3 -0
- package/commands/InitCommand.js +37 -6
- package/commands/InitCommand.js.map +1 -1
- package/commands/MigrationCreateCommand.d.ts +6 -0
- package/commands/MigrationCreateCommand.js +23 -4
- package/commands/MigrationCreateCommand.js.map +1 -1
- package/commands/MigrationGenerateCommand.d.ts +10 -0
- package/commands/MigrationGenerateCommand.js +72 -34
- package/commands/MigrationGenerateCommand.js.map +1 -1
- package/commands/MigrationRevertCommand.js +1 -0
- package/commands/MigrationRevertCommand.js.map +1 -1
- package/commands/MigrationRunCommand.js +1 -0
- package/commands/MigrationRunCommand.js.map +1 -1
- package/commands/MigrationShowCommand.js +1 -0
- package/commands/MigrationShowCommand.js.map +1 -1
- package/commands/QueryCommand.d.ts +2 -0
- package/commands/QueryCommand.js +17 -6
- package/commands/QueryCommand.js.map +1 -1
- package/commands/SchemaDropCommand.js +1 -0
- package/commands/SchemaDropCommand.js.map +1 -1
- package/commands/SchemaLogCommand.js +1 -0
- package/commands/SchemaLogCommand.js.map +1 -1
- package/commands/SchemaSyncCommand.js +1 -0
- package/commands/SchemaSyncCommand.js.map +1 -1
- package/commands/SubscriberCreateCommand.js +6 -2
- package/commands/SubscriberCreateCommand.js.map +1 -1
- package/commands/VersionCommand.js +1 -0
- package/commands/VersionCommand.js.map +1 -1
- package/common/EntityFieldsNames.d.ts +6 -0
- package/common/EntityFieldsNames.js +4 -0
- package/common/EntityFieldsNames.js.map +1 -0
- package/connection/Connection.d.ts +2 -2
- package/connection/Connection.js +5 -2
- package/connection/Connection.js.map +1 -1
- package/connection/ConnectionManager.js +1 -0
- package/connection/ConnectionManager.js.map +1 -1
- package/connection/ConnectionMetadataBuilder.js +5 -4
- package/connection/ConnectionMetadataBuilder.js.map +1 -1
- package/connection/ConnectionOptionsReader.d.ts +3 -3
- package/connection/ConnectionOptionsReader.js +31 -30
- package/connection/ConnectionOptionsReader.js.map +1 -1
- package/connection/options-reader/ConnectionOptionsEnvReader.js +2 -1
- package/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
- package/connection/options-reader/ConnectionOptionsXmlReader.js +1 -0
- package/connection/options-reader/ConnectionOptionsXmlReader.js.map +1 -1
- package/connection/options-reader/ConnectionOptionsYmlReader.js +2 -1
- package/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
- package/container.js +1 -0
- package/container.js.map +1 -1
- package/decorator/Check.js +1 -0
- package/decorator/Check.js.map +1 -1
- package/decorator/EntityRepository.js +1 -0
- package/decorator/EntityRepository.js.map +1 -1
- package/decorator/Exclusion.js +1 -0
- package/decorator/Exclusion.js.map +1 -1
- package/decorator/Generated.js +1 -0
- package/decorator/Generated.js.map +1 -1
- package/decorator/Index.js +1 -0
- package/decorator/Index.js.map +1 -1
- package/decorator/Unique.js +1 -0
- package/decorator/Unique.js.map +1 -1
- package/decorator/columns/Column.js +1 -0
- package/decorator/columns/Column.js.map +1 -1
- package/decorator/columns/CreateDateColumn.js +1 -0
- package/decorator/columns/CreateDateColumn.js.map +1 -1
- package/decorator/columns/DeleteDateColumn.js +1 -0
- package/decorator/columns/DeleteDateColumn.js.map +1 -1
- package/decorator/columns/ObjectIdColumn.js +1 -0
- package/decorator/columns/ObjectIdColumn.js.map +1 -1
- package/decorator/columns/PrimaryColumn.d.ts +9 -2
- package/decorator/columns/PrimaryColumn.js +1 -0
- package/decorator/columns/PrimaryColumn.js.map +1 -1
- package/decorator/columns/PrimaryGeneratedColumn.js +1 -0
- package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
- package/decorator/columns/UpdateDateColumn.js +1 -0
- package/decorator/columns/UpdateDateColumn.js.map +1 -1
- package/decorator/columns/VersionColumn.js +1 -0
- package/decorator/columns/VersionColumn.js.map +1 -1
- package/decorator/columns/ViewColumn.js +1 -0
- package/decorator/columns/ViewColumn.js.map +1 -1
- package/decorator/entity/ChildEntity.js +2 -1
- package/decorator/entity/ChildEntity.js.map +1 -1
- package/decorator/entity/Entity.js +1 -0
- package/decorator/entity/Entity.js.map +1 -1
- package/decorator/entity/TableInheritance.js +1 -0
- package/decorator/entity/TableInheritance.js.map +1 -1
- package/decorator/entity-view/ViewEntity.js +1 -0
- package/decorator/entity-view/ViewEntity.js.map +1 -1
- package/decorator/listeners/AfterInsert.js +1 -0
- package/decorator/listeners/AfterInsert.js.map +1 -1
- package/decorator/listeners/AfterLoad.js +1 -0
- package/decorator/listeners/AfterLoad.js.map +1 -1
- package/decorator/listeners/AfterRemove.js +1 -0
- package/decorator/listeners/AfterRemove.js.map +1 -1
- package/decorator/listeners/AfterUpdate.js +1 -0
- package/decorator/listeners/AfterUpdate.js.map +1 -1
- package/decorator/listeners/BeforeInsert.js +1 -0
- package/decorator/listeners/BeforeInsert.js.map +1 -1
- package/decorator/listeners/BeforeRemove.js +1 -0
- package/decorator/listeners/BeforeRemove.js.map +1 -1
- package/decorator/listeners/BeforeUpdate.js +1 -0
- package/decorator/listeners/BeforeUpdate.js.map +1 -1
- package/decorator/listeners/EventSubscriber.js +1 -0
- package/decorator/listeners/EventSubscriber.js.map +1 -1
- package/decorator/options/RelationOptions.d.ts +10 -0
- package/decorator/options/RelationOptions.js.map +1 -1
- package/decorator/relations/JoinColumn.js +1 -0
- package/decorator/relations/JoinColumn.js.map +1 -1
- package/decorator/relations/JoinTable.js +1 -0
- package/decorator/relations/JoinTable.js.map +1 -1
- package/decorator/relations/ManyToMany.js +1 -0
- package/decorator/relations/ManyToMany.js.map +1 -1
- package/decorator/relations/ManyToOne.d.ts +6 -6
- package/decorator/relations/ManyToOne.js +6 -5
- package/decorator/relations/ManyToOne.js.map +1 -1
- package/decorator/relations/OneToMany.d.ts +3 -2
- package/decorator/relations/OneToMany.js +5 -3
- package/decorator/relations/OneToMany.js.map +1 -1
- package/decorator/relations/OneToOne.js +1 -0
- package/decorator/relations/OneToOne.js.map +1 -1
- package/decorator/relations/RelationCount.js +1 -0
- package/decorator/relations/RelationCount.js.map +1 -1
- package/decorator/relations/RelationId.js +1 -0
- package/decorator/relations/RelationId.js.map +1 -1
- package/decorator/transaction/Transaction.d.ts +1 -1
- package/decorator/transaction/Transaction.js +6 -5
- package/decorator/transaction/Transaction.js.map +1 -1
- package/decorator/transaction/TransactionManager.js +1 -0
- package/decorator/transaction/TransactionManager.js.map +1 -1
- package/decorator/transaction/TransactionRepository.js +1 -0
- package/decorator/transaction/TransactionRepository.js.map +1 -1
- package/decorator/tree/Tree.d.ts +2 -1
- package/decorator/tree/Tree.js +4 -2
- package/decorator/tree/Tree.js.map +1 -1
- package/decorator/tree/TreeChildren.js +1 -0
- package/decorator/tree/TreeChildren.js.map +1 -1
- package/decorator/tree/TreeLevelColumn.js +1 -0
- package/decorator/tree/TreeLevelColumn.js.map +1 -1
- package/decorator/tree/TreeParent.js +1 -0
- package/decorator/tree/TreeParent.js.map +1 -1
- package/driver/Driver.d.ts +1 -1
- package/driver/Driver.js.map +1 -1
- package/driver/DriverFactory.js +1 -0
- package/driver/DriverFactory.js.map +1 -1
- package/driver/DriverUtils.d.ts +10 -0
- package/driver/DriverUtils.js +99 -11
- package/driver/DriverUtils.js.map +1 -1
- package/driver/Query.js +1 -0
- package/driver/Query.js.map +1 -1
- package/driver/SqlInMemory.js +1 -0
- package/driver/SqlInMemory.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiConnection.js +1 -0
- package/driver/aurora-data-api/AuroraDataApiConnection.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiConnectionOptions.d.ts +1 -0
- package/driver/aurora-data-api/AuroraDataApiConnectionOptions.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiDriver.d.ts +3 -3
- package/driver/aurora-data-api/AuroraDataApiDriver.js +16 -6
- package/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.d.ts +6 -1
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +73 -11
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.d.ts +2 -0
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js.map +1 -1
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.d.ts +10 -1
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +27 -2
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -1
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.d.ts +2 -1
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +60 -11
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3Driver.js +1 -0
- package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +1 -0
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/driver/cockroachdb/CockroachDriver.d.ts +1 -1
- package/driver/cockroachdb/CockroachDriver.js +6 -8
- package/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.d.ts +4 -0
- package/driver/cockroachdb/CockroachQueryRunner.js +113 -42
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/cordova/CordovaDriver.js +1 -0
- package/driver/cordova/CordovaDriver.js.map +1 -1
- package/driver/cordova/CordovaQueryRunner.js +1 -0
- package/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/driver/expo/ExpoDriver.js +1 -0
- package/driver/expo/ExpoDriver.js.map +1 -1
- package/driver/expo/ExpoQueryRunner.js +73 -14
- package/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/driver/mongodb/MongoConnectionOptions.d.ts +8 -0
- package/driver/mongodb/MongoConnectionOptions.js.map +1 -1
- package/driver/mongodb/MongoDriver.d.ts +8 -4
- package/driver/mongodb/MongoDriver.js +27 -14
- package/driver/mongodb/MongoDriver.js.map +1 -1
- package/driver/mongodb/MongoQueryRunner.d.ts +3 -3
- package/driver/mongodb/MongoQueryRunner.js +1 -0
- package/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/driver/mysql/MysqlConnectionCredentialsOptions.d.ts +4 -0
- package/driver/mysql/MysqlConnectionCredentialsOptions.js.map +1 -1
- package/driver/mysql/MysqlDriver.d.ts +2 -2
- package/driver/mysql/MysqlDriver.js +16 -14
- package/driver/mysql/MysqlDriver.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.d.ts +4 -0
- package/driver/mysql/MysqlQueryRunner.js +119 -43
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/driver/nativescript/NativescriptDriver.js +1 -0
- package/driver/nativescript/NativescriptDriver.js.map +1 -1
- package/driver/nativescript/NativescriptQueryRunner.js +1 -0
- package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/driver/oracle/OracleConnectionOptions.d.ts +4 -0
- package/driver/oracle/OracleConnectionOptions.js.map +1 -1
- package/driver/oracle/OracleDriver.d.ts +1 -1
- package/driver/oracle/OracleDriver.js +29 -3
- package/driver/oracle/OracleDriver.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.js +54 -7
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresConnectionOptions.d.ts +4 -0
- package/driver/postgres/PostgresConnectionOptions.js.map +1 -1
- package/driver/postgres/PostgresDriver.d.ts +2 -2
- package/driver/postgres/PostgresDriver.js +63 -28
- package/driver/postgres/PostgresDriver.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.d.ts +9 -1
- package/driver/postgres/PostgresQueryRunner.js +337 -211
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/react-native/ReactNativeDriver.js +2 -2
- package/driver/react-native/ReactNativeDriver.js.map +1 -1
- package/driver/react-native/ReactNativeQueryRunner.js +1 -0
- package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/driver/sap/SapDriver.d.ts +1 -1
- package/driver/sap/SapDriver.js +1 -0
- package/driver/sap/SapDriver.js.map +1 -1
- package/driver/sap/SapQueryRunner.js +58 -9
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/sqlite/SqliteDriver.js +1 -0
- package/driver/sqlite/SqliteDriver.js.map +1 -1
- package/driver/sqlite/SqliteQueryRunner.js +5 -0
- package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +1 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.js +5 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +56 -8
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/driver/sqljs/SqljsDriver.js +1 -0
- package/driver/sqljs/SqljsDriver.js.map +1 -1
- package/driver/sqljs/SqljsQueryRunner.js +1 -0
- package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
- package/driver/sqlserver/MssqlParameter.js +1 -0
- package/driver/sqlserver/MssqlParameter.js.map +1 -1
- package/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +18 -2
- package/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -1
- package/driver/sqlserver/SqlServerDriver.d.ts +2 -2
- package/driver/sqlserver/SqlServerDriver.js +34 -8
- package/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.d.ts +1 -0
- package/driver/sqlserver/SqlServerQueryRunner.js +166 -85
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.d.ts +10 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js +4 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js.map +1 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.d.ts +20 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js +4 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js.map +1 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.d.ts +16 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js +4 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js.map +1 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.d.ts +17 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js +4 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js.map +1 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.d.ts +17 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js +4 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js.map +1 -0
- package/driver/sqlserver/authentication/DefaultAuthentication.d.ts +13 -0
- package/driver/sqlserver/authentication/DefaultAuthentication.js +4 -0
- package/driver/sqlserver/authentication/DefaultAuthentication.js.map +1 -0
- package/driver/sqlserver/authentication/NtlmAuthentication.d.ts +19 -0
- package/driver/sqlserver/authentication/NtlmAuthentication.js +4 -0
- package/driver/sqlserver/authentication/NtlmAuthentication.js.map +1 -0
- package/driver/types/ColumnTypes.d.ts +1 -1
- package/driver/types/ColumnTypes.js.map +1 -1
- package/entity-manager/EntityManager.d.ts +16 -2
- package/entity-manager/EntityManager.js +6 -16
- package/entity-manager/EntityManager.js.map +1 -1
- package/entity-manager/EntityManagerFactory.js +1 -0
- package/entity-manager/EntityManagerFactory.js.map +1 -1
- package/entity-manager/MongoEntityManager.d.ts +1 -4
- package/entity-manager/MongoEntityManager.js +54 -48
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/entity-manager/SqljsEntityManager.js +1 -0
- package/entity-manager/SqljsEntityManager.js.map +1 -1
- package/entity-schema/EntitySchema.js +1 -0
- package/entity-schema/EntitySchema.js.map +1 -1
- package/entity-schema/EntitySchemaOptions.js +1 -0
- package/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/entity-schema/EntitySchemaTransformer.js +1 -0
- package/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/error/AlreadyHasActiveConnectionError.js +1 -0
- package/error/AlreadyHasActiveConnectionError.js.map +1 -1
- package/error/CannotAttachTreeChildrenEntityError.js +1 -0
- package/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
- package/error/CannotConnectAlreadyConnectedError.js +1 -0
- package/error/CannotConnectAlreadyConnectedError.js.map +1 -1
- package/error/CannotCreateEntityIdMapError.js +1 -0
- package/error/CannotCreateEntityIdMapError.js.map +1 -1
- package/error/CannotDetermineEntityError.js +1 -0
- package/error/CannotDetermineEntityError.js.map +1 -1
- package/error/CannotExecuteNotConnectedError.js +1 -0
- package/error/CannotExecuteNotConnectedError.js.map +1 -1
- package/error/CannotGetEntityManagerNotConnectedError.js +1 -0
- package/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
- package/error/CannotReflectMethodParameterTypeError.js +1 -0
- package/error/CannotReflectMethodParameterTypeError.js.map +1 -1
- package/error/CircularRelationsError.js +1 -0
- package/error/CircularRelationsError.js.map +1 -1
- package/error/ColumnTypeUndefinedError.js +1 -0
- package/error/ColumnTypeUndefinedError.js.map +1 -1
- package/error/ConnectionIsNotSetError.js +1 -0
- package/error/ConnectionIsNotSetError.js.map +1 -1
- package/error/ConnectionNotFoundError.js +1 -0
- package/error/ConnectionNotFoundError.js.map +1 -1
- package/error/CustomRepositoryCannotInheritRepositoryError.js +1 -0
- package/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
- package/error/CustomRepositoryDoesNotHaveEntityError.js +1 -0
- package/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
- package/error/CustomRepositoryNotFoundError.js +1 -0
- package/error/CustomRepositoryNotFoundError.js.map +1 -1
- package/error/DataTypeNotSupportedError.js +1 -0
- package/error/DataTypeNotSupportedError.js.map +1 -1
- package/error/DriverOptionNotSetError.js +1 -0
- package/error/DriverOptionNotSetError.js.map +1 -1
- package/error/DriverPackageNotInstalledError.js +1 -0
- package/error/DriverPackageNotInstalledError.js.map +1 -1
- package/error/EntityColumnNotFound.js +1 -0
- package/error/EntityColumnNotFound.js.map +1 -1
- package/error/EntityMetadataNotFoundError.js +1 -0
- package/error/EntityMetadataNotFoundError.js.map +1 -1
- package/error/EntityNotFoundError.js +1 -0
- package/error/EntityNotFoundError.js.map +1 -1
- package/error/FindRelationsNotFoundError.js +1 -0
- package/error/FindRelationsNotFoundError.js.map +1 -1
- package/error/InitializedRelationError.js +1 -0
- package/error/InitializedRelationError.js.map +1 -1
- package/error/InsertValuesMissingError.js +1 -0
- package/error/InsertValuesMissingError.js.map +1 -1
- package/error/LimitOnUpdateNotSupportedError.js +1 -0
- package/error/LimitOnUpdateNotSupportedError.js.map +1 -1
- package/error/LockNotSupportedOnGivenDriverError.js +1 -0
- package/error/LockNotSupportedOnGivenDriverError.js.map +1 -1
- package/error/MetadataAlreadyExistsError.js +1 -0
- package/error/MetadataAlreadyExistsError.js.map +1 -1
- package/error/MetadataWithSuchNameAlreadyExistsError.js +1 -0
- package/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -1
- package/error/MissingDeleteDateColumnError.js +1 -0
- package/error/MissingDeleteDateColumnError.js.map +1 -1
- package/error/MissingDriverError.js +1 -0
- package/error/MissingDriverError.js.map +1 -1
- package/error/MissingJoinColumnError.js +1 -0
- package/error/MissingJoinColumnError.js.map +1 -1
- package/error/MissingJoinTableError.js +1 -0
- package/error/MissingJoinTableError.js.map +1 -1
- package/error/MissingPrimaryColumnError.js +1 -0
- package/error/MissingPrimaryColumnError.js.map +1 -1
- package/error/MustBeEntityError.js +1 -0
- package/error/MustBeEntityError.js.map +1 -1
- package/error/NamingStrategyNotFoundError.js +1 -0
- package/error/NamingStrategyNotFoundError.js.map +1 -1
- package/error/NoConnectionForRepositoryError.js +1 -0
- package/error/NoConnectionForRepositoryError.js.map +1 -1
- package/error/NoConnectionOptionError.js +1 -0
- package/error/NoConnectionOptionError.js.map +1 -1
- package/error/NoNeedToReleaseEntityManagerError.js +1 -0
- package/error/NoNeedToReleaseEntityManagerError.js.map +1 -1
- package/error/NoVersionOrUpdateDateColumnError.js +1 -0
- package/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
- package/error/OffsetWithoutLimitNotSupportedError.js +1 -0
- package/error/OffsetWithoutLimitNotSupportedError.js.map +1 -1
- package/error/OptimisticLockCanNotBeUsedError.js +1 -0
- package/error/OptimisticLockCanNotBeUsedError.js.map +1 -1
- package/error/OptimisticLockVersionMismatchError.js +1 -0
- package/error/OptimisticLockVersionMismatchError.js.map +1 -1
- package/error/PersistedEntityNotFoundError.js +1 -0
- package/error/PersistedEntityNotFoundError.js.map +1 -1
- package/error/PessimisticLockTransactionRequiredError.js +1 -0
- package/error/PessimisticLockTransactionRequiredError.js.map +1 -1
- package/error/PrimaryColumnCannotBeNullableError.js +1 -0
- package/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
- package/error/QueryFailedError.js +1 -0
- package/error/QueryFailedError.js.map +1 -1
- package/error/QueryRunnerAlreadyReleasedError.js +1 -0
- package/error/QueryRunnerAlreadyReleasedError.js.map +1 -1
- package/error/QueryRunnerProviderAlreadyReleasedError.js +1 -0
- package/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -1
- package/error/RepositoryNotFoundError.js +1 -0
- package/error/RepositoryNotFoundError.js.map +1 -1
- package/error/RepositoryNotTreeError.js +1 -0
- package/error/RepositoryNotTreeError.js.map +1 -1
- package/error/ReturningStatementNotSupportedError.js +1 -0
- package/error/ReturningStatementNotSupportedError.js.map +1 -1
- package/error/SubjectRemovedAndUpdatedError.js +1 -0
- package/error/SubjectRemovedAndUpdatedError.js.map +1 -1
- package/error/SubjectWithoutIdentifierError.js +1 -0
- package/error/SubjectWithoutIdentifierError.js.map +1 -1
- package/error/TransactionAlreadyStartedError.js +1 -0
- package/error/TransactionAlreadyStartedError.js.map +1 -1
- package/error/TransactionNotStartedError.js +1 -0
- package/error/TransactionNotStartedError.js.map +1 -1
- package/error/TreeRepositoryNotSupportedError.js +1 -0
- package/error/TreeRepositoryNotSupportedError.js.map +1 -1
- package/error/UpdateValuesMissingError.js +1 -0
- package/error/UpdateValuesMissingError.js.map +1 -1
- package/error/UsingJoinColumnIsNotAllowedError.js +1 -0
- package/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -0
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
- package/error/UsingJoinTableIsNotAllowedError.js +1 -0
- package/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -0
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
- package/error/index.d.ts +61 -0
- package/error/index.js +66 -0
- package/error/index.js.map +1 -0
- package/find-options/FindOneOptions.d.ts +10 -2
- package/find-options/FindOneOptions.js.map +1 -1
- package/find-options/FindOperator.d.ts +25 -6
- package/find-options/FindOperator.js +33 -6
- package/find-options/FindOperator.js.map +1 -1
- package/find-options/FindOperatorType.d.ts +1 -1
- package/find-options/FindOperatorType.js.map +1 -1
- package/find-options/FindOptionsUtils.js +16 -2
- package/find-options/FindOptionsUtils.js.map +1 -1
- package/find-options/JoinOptions.d.ts +16 -4
- package/find-options/JoinOptions.js.map +1 -1
- package/find-options/operator/Any.js +1 -0
- package/find-options/operator/Any.js.map +1 -1
- package/find-options/operator/Between.js +1 -0
- package/find-options/operator/Between.js.map +1 -1
- package/find-options/operator/Equal.js +1 -0
- package/find-options/operator/Equal.js.map +1 -1
- package/find-options/operator/ILike.d.ts +6 -0
- package/find-options/operator/ILike.js +14 -0
- package/find-options/operator/ILike.js.map +1 -0
- package/find-options/operator/In.js +1 -0
- package/find-options/operator/In.js.map +1 -1
- package/find-options/operator/IsNull.js +1 -0
- package/find-options/operator/IsNull.js.map +1 -1
- package/find-options/operator/LessThan.js +1 -0
- package/find-options/operator/LessThan.js.map +1 -1
- package/find-options/operator/LessThanOrEqual.js +1 -0
- package/find-options/operator/LessThanOrEqual.js.map +1 -1
- package/find-options/operator/Like.js +1 -0
- package/find-options/operator/Like.js.map +1 -1
- package/find-options/operator/MoreThan.js +1 -0
- package/find-options/operator/MoreThan.js.map +1 -1
- package/find-options/operator/MoreThanOrEqual.js +1 -0
- package/find-options/operator/MoreThanOrEqual.js.map +1 -1
- package/find-options/operator/Not.js +1 -0
- package/find-options/operator/Not.js.map +1 -1
- package/find-options/operator/Raw.d.ts +14 -2
- package/find-options/operator/Raw.js +6 -6
- package/find-options/operator/Raw.js.map +1 -1
- package/index.d.ts +3 -1
- package/index.js +44 -19
- package/index.js.map +1 -1
- package/logger/AdvancedConsoleLogger.d.ts +2 -1
- package/logger/AdvancedConsoleLogger.js +1 -0
- package/logger/AdvancedConsoleLogger.js.map +1 -1
- package/logger/DebugLogger.js +1 -0
- package/logger/DebugLogger.js.map +1 -1
- package/logger/FileLogger.d.ts +2 -2
- package/logger/FileLogger.js +1 -0
- package/logger/FileLogger.js.map +1 -1
- package/logger/Logger.d.ts +1 -1
- package/logger/Logger.js.map +1 -1
- package/logger/LoggerFactory.js +1 -0
- package/logger/LoggerFactory.js.map +1 -1
- package/logger/SimpleConsoleLogger.d.ts +2 -1
- package/logger/SimpleConsoleLogger.js +1 -0
- package/logger/SimpleConsoleLogger.js.map +1 -1
- package/metadata/CheckMetadata.js +1 -0
- package/metadata/CheckMetadata.js.map +1 -1
- package/metadata/ColumnMetadata.d.ts +1 -1
- package/metadata/ColumnMetadata.js +23 -14
- package/metadata/ColumnMetadata.js.map +1 -1
- package/metadata/EmbeddedMetadata.js +2 -1
- package/metadata/EmbeddedMetadata.js.map +1 -1
- package/metadata/EntityListenerMetadata.js +1 -0
- package/metadata/EntityListenerMetadata.js.map +1 -1
- package/metadata/EntityMetadata.d.ts +5 -0
- package/metadata/EntityMetadata.js +3 -1
- package/metadata/EntityMetadata.js.map +1 -1
- package/metadata/ExclusionMetadata.js +1 -0
- package/metadata/ExclusionMetadata.js.map +1 -1
- package/metadata/ForeignKeyMetadata.js +1 -0
- package/metadata/ForeignKeyMetadata.js.map +1 -1
- package/metadata/IndexMetadata.js +1 -0
- package/metadata/IndexMetadata.js.map +1 -1
- package/metadata/RelationCountMetadata.js +1 -0
- package/metadata/RelationCountMetadata.js.map +1 -1
- package/metadata/RelationIdMetadata.js +1 -0
- package/metadata/RelationIdMetadata.js.map +1 -1
- package/metadata/RelationMetadata.d.ts +15 -0
- package/metadata/RelationMetadata.js +23 -6
- package/metadata/RelationMetadata.js.map +1 -1
- package/metadata/UniqueMetadata.js +1 -0
- package/metadata/UniqueMetadata.js.map +1 -1
- package/metadata/types/ClosureTreeOptions.d.ts +10 -0
- package/metadata/types/ClosureTreeOptions.js +4 -0
- package/metadata/types/ClosureTreeOptions.js.map +1 -0
- package/metadata/types/EventListenerTypes.d.ts +7 -7
- package/metadata/types/EventListenerTypes.js +1 -0
- package/metadata/types/EventListenerTypes.js.map +1 -1
- package/metadata-args/MetadataArgsStorage.js +1 -0
- package/metadata-args/MetadataArgsStorage.js.map +1 -1
- package/metadata-args/TreeMetadataArgs.d.ts +5 -0
- package/metadata-args/TreeMetadataArgs.js.map +1 -1
- package/metadata-builder/ClosureJunctionEntityMetadataBuilder.js +6 -3
- package/metadata-builder/ClosureJunctionEntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/EntityMetadataBuilder.js +26 -15
- package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/EntityMetadataValidator.js +11 -5
- package/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/metadata-builder/JunctionEntityMetadataBuilder.js +8 -3
- package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/MetadataUtils.js +1 -0
- package/metadata-builder/MetadataUtils.js.map +1 -1
- package/metadata-builder/RelationJoinColumnBuilder.d.ts +1 -0
- package/metadata-builder/RelationJoinColumnBuilder.js +9 -6
- package/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/migration/Migration.js +1 -0
- package/migration/Migration.js.map +1 -1
- package/migration/MigrationExecutor.js +6 -5
- package/migration/MigrationExecutor.js.map +1 -1
- package/naming-strategy/DefaultNamingStrategy.d.ts +1 -1
- package/naming-strategy/DefaultNamingStrategy.js +9 -7
- package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/naming-strategy/NamingStrategyInterface.d.ts +6 -1
- package/naming-strategy/NamingStrategyInterface.js.map +1 -1
- package/package.json +46 -43
- package/persistence/EntityPersistExecutor.js +56 -52
- package/persistence/EntityPersistExecutor.js.map +1 -1
- package/persistence/Subject.d.ts +4 -4
- package/persistence/Subject.js +8 -6
- package/persistence/Subject.js.map +1 -1
- package/persistence/SubjectChangedColumnsComputer.js +4 -1
- package/persistence/SubjectChangedColumnsComputer.js.map +1 -1
- package/persistence/SubjectDatabaseEntityLoader.js +2 -1
- package/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
- package/persistence/SubjectExecutor.js +31 -26
- package/persistence/SubjectExecutor.js.map +1 -1
- package/persistence/SubjectTopoligicalSorter.js +6 -5
- package/persistence/SubjectTopoligicalSorter.js.map +1 -1
- package/persistence/subject-builder/CascadesSubjectBuilder.js +1 -0
- package/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
- package/persistence/subject-builder/ManyToManySubjectBuilder.js +3 -0
- package/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
- package/persistence/subject-builder/OneToManySubjectBuilder.js +10 -4
- package/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
- package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +1 -0
- package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
- package/persistence/tree/ClosureSubjectExecutor.d.ts +1 -1
- package/persistence/tree/ClosureSubjectExecutor.js +7 -6
- package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/persistence/tree/MaterializedPathSubjectExecutor.js +1 -0
- package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/persistence/tree/NestedSetSubjectExecutor.js +1 -0
- package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
- package/platform/PlatformTools.js +5 -4
- package/platform/PlatformTools.js.map +1 -1
- package/query-builder/Alias.d.ts +4 -3
- package/query-builder/Alias.js +4 -3
- package/query-builder/Alias.js.map +1 -1
- package/query-builder/Brackets.js +1 -0
- package/query-builder/Brackets.js.map +1 -1
- package/query-builder/DeleteQueryBuilder.js +8 -2
- package/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/query-builder/InsertQueryBuilder.d.ts +6 -0
- package/query-builder/InsertQueryBuilder.js +64 -14
- package/query-builder/InsertQueryBuilder.js.map +1 -1
- package/query-builder/JoinAttribute.d.ts +10 -10
- package/query-builder/JoinAttribute.js +11 -10
- package/query-builder/JoinAttribute.js.map +1 -1
- package/query-builder/QueryBuilder.d.ts +8 -1
- package/query-builder/QueryBuilder.js +172 -36
- package/query-builder/QueryBuilder.js.map +1 -1
- package/query-builder/QueryBuilderUtils.js +1 -0
- package/query-builder/QueryBuilderUtils.js.map +1 -1
- package/query-builder/QueryExpressionMap.d.ts +10 -2
- package/query-builder/QueryExpressionMap.js +5 -2
- package/query-builder/QueryExpressionMap.js.map +1 -1
- package/query-builder/RelationIdLoader.js +1 -0
- package/query-builder/RelationIdLoader.js.map +1 -1
- package/query-builder/RelationLoader.js +4 -3
- package/query-builder/RelationLoader.js.map +1 -1
- package/query-builder/RelationQueryBuilder.js +2 -1
- package/query-builder/RelationQueryBuilder.js.map +1 -1
- package/query-builder/RelationRemover.js +11 -10
- package/query-builder/RelationRemover.js.map +1 -1
- package/query-builder/RelationUpdater.js +1 -0
- package/query-builder/RelationUpdater.js.map +1 -1
- package/query-builder/ReturningResultsEntityUpdator.js +1 -0
- package/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
- package/query-builder/SelectQueryBuilder.d.ts +7 -6
- package/query-builder/SelectQueryBuilder.js +129 -66
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/SoftDeleteQueryBuilder.js +1 -0
- package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/query-builder/UpdateQueryBuilder.js +7 -1
- package/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/query-builder/relation-count/RelationCountAttribute.d.ts +7 -7
- package/query-builder/relation-count/RelationCountAttribute.js +8 -7
- package/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
- package/query-builder/relation-count/RelationCountLoader.js +3 -1
- package/query-builder/relation-count/RelationCountLoader.js.map +1 -1
- package/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js +1 -0
- package/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js.map +1 -1
- package/query-builder/relation-id/RelationIdAttribute.d.ts +8 -8
- package/query-builder/relation-id/RelationIdAttribute.js +9 -8
- package/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
- package/query-builder/relation-id/RelationIdLoader.js +62 -11
- package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +1 -0
- package/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js.map +1 -1
- package/query-builder/result/DeleteResult.js +1 -0
- package/query-builder/result/DeleteResult.js.map +1 -1
- package/query-builder/result/InsertResult.js +1 -0
- package/query-builder/result/InsertResult.js.map +1 -1
- package/query-builder/result/UpdateResult.js +1 -0
- package/query-builder/result/UpdateResult.js.map +1 -1
- package/query-builder/transformer/DocumentToEntityTransformer.js +1 -0
- package/query-builder/transformer/DocumentToEntityTransformer.js.map +1 -1
- package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +4 -3
- package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
- package/query-builder/transformer/PlainObjectToNewEntityTransformer.js +1 -0
- package/query-builder/transformer/PlainObjectToNewEntityTransformer.js.map +1 -1
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +10 -6
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/query-runner/BaseQueryRunner.js +3 -2
- package/query-runner/BaseQueryRunner.js.map +1 -1
- package/query-runner/QueryRunner.d.ts +1 -1
- package/query-runner/QueryRunner.js.map +1 -1
- package/repository/AbstractRepository.d.ts +2 -2
- package/repository/AbstractRepository.js +3 -2
- package/repository/AbstractRepository.js.map +1 -1
- package/repository/BaseEntity.d.ts +1 -1
- package/repository/BaseEntity.js +3 -2
- package/repository/BaseEntity.js.map +1 -1
- package/repository/MongoRepository.js +1 -0
- package/repository/MongoRepository.js.map +1 -1
- package/repository/Repository.d.ts +4 -4
- package/repository/Repository.js +3 -2
- package/repository/Repository.js.map +1 -1
- package/repository/RepositoryFactory.js +1 -0
- package/repository/RepositoryFactory.js.map +1 -1
- package/repository/TreeRepository.js +4 -3
- package/repository/TreeRepository.js.map +1 -1
- package/schema-builder/MongoSchemaBuilder.js +1 -0
- package/schema-builder/MongoSchemaBuilder.js.map +1 -1
- package/schema-builder/RdbmsSchemaBuilder.d.ts +2 -2
- package/schema-builder/RdbmsSchemaBuilder.js +81 -79
- package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/schema-builder/options/TableForeignKeyOptions.js.map +1 -1
- package/schema-builder/table/Table.d.ts +1 -1
- package/schema-builder/table/Table.js +2 -1
- package/schema-builder/table/Table.js.map +1 -1
- package/schema-builder/table/TableCheck.js +2 -1
- package/schema-builder/table/TableCheck.js.map +1 -1
- package/schema-builder/table/TableColumn.js +1 -0
- package/schema-builder/table/TableColumn.js.map +1 -1
- package/schema-builder/table/TableExclusion.js +1 -0
- package/schema-builder/table/TableExclusion.js.map +1 -1
- package/schema-builder/table/TableForeignKey.js +3 -2
- package/schema-builder/table/TableForeignKey.js.map +1 -1
- package/schema-builder/table/TableIndex.js +2 -1
- package/schema-builder/table/TableIndex.js.map +1 -1
- package/schema-builder/table/TableUnique.js +2 -1
- package/schema-builder/table/TableUnique.js.map +1 -1
- package/schema-builder/util/TableUtils.js +1 -0
- package/schema-builder/util/TableUtils.js.map +1 -1
- package/schema-builder/view/View.js +1 -0
- package/schema-builder/view/View.js.map +1 -1
- package/subscriber/Broadcaster.d.ts +24 -0
- package/subscriber/Broadcaster.js +121 -0
- package/subscriber/Broadcaster.js.map +1 -1
- package/subscriber/BroadcasterResult.js +1 -0
- package/subscriber/BroadcasterResult.js.map +1 -1
- package/subscriber/EntitySubscriberInterface.d.ts +27 -0
- package/subscriber/EntitySubscriberInterface.js.map +1 -1
- package/subscriber/event/TransactionCommitEvent.d.ts +22 -0
- package/subscriber/event/TransactionCommitEvent.js +4 -0
- package/subscriber/event/TransactionCommitEvent.js.map +1 -0
- package/subscriber/event/TransactionRollbackEvent.d.ts +22 -0
- package/subscriber/event/TransactionRollbackEvent.js +4 -0
- package/subscriber/event/TransactionRollbackEvent.js.map +1 -0
- package/subscriber/event/TransactionStartEvent.d.ts +22 -0
- package/subscriber/event/TransactionStartEvent.js +4 -0
- package/subscriber/event/TransactionStartEvent.js.map +1 -0
- package/typeorm-model-shim.js +145 -128
- package/util/ApplyValueTransformers.js +1 -0
- package/util/ApplyValueTransformers.js.map +1 -1
- package/util/DateUtils.d.ts +1 -1
- package/util/DateUtils.js +2 -7
- package/util/DateUtils.js.map +1 -1
- package/util/DepGraph.js +1 -0
- package/util/DepGraph.js.map +1 -1
- package/util/DirectoryExportedClassesLoader.js +1 -0
- package/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/util/ObjectUtils.js +1 -0
- package/util/ObjectUtils.js.map +1 -1
- package/util/OrmUtils.d.ts +1 -1
- package/util/OrmUtils.js +2 -1
- package/util/OrmUtils.js.map +1 -1
- package/util/RandomGenerator.js +1 -0
- package/util/RandomGenerator.js.map +1 -1
- package/util/StringUtils.js +1 -0
- package/util/StringUtils.js.map +1 -1
- package/util/VersionUtils.js +1 -0
- package/util/VersionUtils.js.map +1 -1
|
@@ -15,6 +15,7 @@ import { View } from "../../schema-builder/view/View";
|
|
|
15
15
|
import { Broadcaster } from "../../subscriber/Broadcaster";
|
|
16
16
|
import { OrmUtils } from "../../util/OrmUtils";
|
|
17
17
|
import { Query } from "../Query";
|
|
18
|
+
import { BroadcasterResult } from "../../subscriber/BroadcasterResult";
|
|
18
19
|
/**
|
|
19
20
|
* Runs queries on a single postgres database connection.
|
|
20
21
|
*/
|
|
@@ -95,21 +96,38 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
95
96
|
*/
|
|
96
97
|
PostgresQueryRunner.prototype.startTransaction = function (isolationLevel) {
|
|
97
98
|
return __awaiter(this, void 0, void 0, function () {
|
|
99
|
+
var beforeBroadcastResult, afterBroadcastResult;
|
|
98
100
|
return __generator(this, function (_a) {
|
|
99
101
|
switch (_a.label) {
|
|
100
102
|
case 0:
|
|
101
103
|
if (this.isTransactionActive)
|
|
102
104
|
throw new TransactionAlreadyStartedError();
|
|
105
|
+
beforeBroadcastResult = new BroadcasterResult();
|
|
106
|
+
this.broadcaster.broadcastBeforeTransactionStartEvent(beforeBroadcastResult);
|
|
107
|
+
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
108
|
+
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
109
|
+
case 1:
|
|
110
|
+
_a.sent();
|
|
111
|
+
_a.label = 2;
|
|
112
|
+
case 2:
|
|
103
113
|
this.isTransactionActive = true;
|
|
104
114
|
return [4 /*yield*/, this.query("START TRANSACTION")];
|
|
105
|
-
case
|
|
115
|
+
case 3:
|
|
106
116
|
_a.sent();
|
|
107
|
-
if (!isolationLevel) return [3 /*break*/,
|
|
117
|
+
if (!isolationLevel) return [3 /*break*/, 5];
|
|
108
118
|
return [4 /*yield*/, this.query("SET TRANSACTION ISOLATION LEVEL " + isolationLevel)];
|
|
109
|
-
case
|
|
119
|
+
case 4:
|
|
110
120
|
_a.sent();
|
|
111
|
-
_a.label =
|
|
112
|
-
case
|
|
121
|
+
_a.label = 5;
|
|
122
|
+
case 5:
|
|
123
|
+
afterBroadcastResult = new BroadcasterResult();
|
|
124
|
+
this.broadcaster.broadcastAfterTransactionStartEvent(afterBroadcastResult);
|
|
125
|
+
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 7];
|
|
126
|
+
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
127
|
+
case 6:
|
|
128
|
+
_a.sent();
|
|
129
|
+
_a.label = 7;
|
|
130
|
+
case 7: return [2 /*return*/];
|
|
113
131
|
}
|
|
114
132
|
});
|
|
115
133
|
});
|
|
@@ -120,16 +138,31 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
120
138
|
*/
|
|
121
139
|
PostgresQueryRunner.prototype.commitTransaction = function () {
|
|
122
140
|
return __awaiter(this, void 0, void 0, function () {
|
|
141
|
+
var beforeBroadcastResult, afterBroadcastResult;
|
|
123
142
|
return __generator(this, function (_a) {
|
|
124
143
|
switch (_a.label) {
|
|
125
144
|
case 0:
|
|
126
145
|
if (!this.isTransactionActive)
|
|
127
146
|
throw new TransactionNotStartedError();
|
|
128
|
-
|
|
147
|
+
beforeBroadcastResult = new BroadcasterResult();
|
|
148
|
+
this.broadcaster.broadcastBeforeTransactionCommitEvent(beforeBroadcastResult);
|
|
149
|
+
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
150
|
+
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
129
151
|
case 1:
|
|
152
|
+
_a.sent();
|
|
153
|
+
_a.label = 2;
|
|
154
|
+
case 2: return [4 /*yield*/, this.query("COMMIT")];
|
|
155
|
+
case 3:
|
|
130
156
|
_a.sent();
|
|
131
157
|
this.isTransactionActive = false;
|
|
132
|
-
|
|
158
|
+
afterBroadcastResult = new BroadcasterResult();
|
|
159
|
+
this.broadcaster.broadcastAfterTransactionCommitEvent(afterBroadcastResult);
|
|
160
|
+
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 5];
|
|
161
|
+
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
162
|
+
case 4:
|
|
163
|
+
_a.sent();
|
|
164
|
+
_a.label = 5;
|
|
165
|
+
case 5: return [2 /*return*/];
|
|
133
166
|
}
|
|
134
167
|
});
|
|
135
168
|
});
|
|
@@ -140,16 +173,31 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
140
173
|
*/
|
|
141
174
|
PostgresQueryRunner.prototype.rollbackTransaction = function () {
|
|
142
175
|
return __awaiter(this, void 0, void 0, function () {
|
|
176
|
+
var beforeBroadcastResult, afterBroadcastResult;
|
|
143
177
|
return __generator(this, function (_a) {
|
|
144
178
|
switch (_a.label) {
|
|
145
179
|
case 0:
|
|
146
180
|
if (!this.isTransactionActive)
|
|
147
181
|
throw new TransactionNotStartedError();
|
|
148
|
-
|
|
182
|
+
beforeBroadcastResult = new BroadcasterResult();
|
|
183
|
+
this.broadcaster.broadcastBeforeTransactionRollbackEvent(beforeBroadcastResult);
|
|
184
|
+
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
185
|
+
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
149
186
|
case 1:
|
|
187
|
+
_a.sent();
|
|
188
|
+
_a.label = 2;
|
|
189
|
+
case 2: return [4 /*yield*/, this.query("ROLLBACK")];
|
|
190
|
+
case 3:
|
|
150
191
|
_a.sent();
|
|
151
192
|
this.isTransactionActive = false;
|
|
152
|
-
|
|
193
|
+
afterBroadcastResult = new BroadcasterResult();
|
|
194
|
+
this.broadcaster.broadcastAfterTransactionRollbackEvent(afterBroadcastResult);
|
|
195
|
+
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 5];
|
|
196
|
+
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
197
|
+
case 4:
|
|
198
|
+
_a.sent();
|
|
199
|
+
_a.label = 5;
|
|
200
|
+
case 5: return [2 /*return*/];
|
|
153
201
|
}
|
|
154
202
|
});
|
|
155
203
|
});
|
|
@@ -158,53 +206,47 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
158
206
|
* Executes a given SQL query.
|
|
159
207
|
*/
|
|
160
208
|
PostgresQueryRunner.prototype.query = function (query, parameters) {
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
throw new QueryRunnerAlreadyReleasedError();
|
|
164
|
-
return new Promise(function (ok, fail) { return __awaiter(_this, void 0, void 0, function () {
|
|
165
|
-
var databaseConnection, queryStartTime_1, err_1;
|
|
166
|
-
var _this = this;
|
|
209
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
210
|
+
var databaseConnection, queryStartTime, result, maxQueryExecutionTime, queryEndTime, queryExecutionTime, err_1;
|
|
167
211
|
return __generator(this, function (_a) {
|
|
168
212
|
switch (_a.label) {
|
|
169
213
|
case 0:
|
|
170
|
-
|
|
214
|
+
if (this.isReleased)
|
|
215
|
+
throw new QueryRunnerAlreadyReleasedError();
|
|
171
216
|
return [4 /*yield*/, this.connect()];
|
|
172
217
|
case 1:
|
|
173
218
|
databaseConnection = _a.sent();
|
|
174
219
|
this.driver.connection.logger.logQuery(query, parameters, this);
|
|
175
|
-
|
|
176
|
-
databaseConnection.query(query, parameters, function (err, result) {
|
|
177
|
-
// log slow queries if maxQueryExecution time is set
|
|
178
|
-
var maxQueryExecutionTime = _this.driver.connection.options.maxQueryExecutionTime;
|
|
179
|
-
var queryEndTime = +new Date();
|
|
180
|
-
var queryExecutionTime = queryEndTime - queryStartTime_1;
|
|
181
|
-
if (maxQueryExecutionTime && queryExecutionTime > maxQueryExecutionTime)
|
|
182
|
-
_this.driver.connection.logger.logQuerySlow(queryExecutionTime, query, parameters, _this);
|
|
183
|
-
if (err) {
|
|
184
|
-
_this.driver.connection.logger.logQueryError(err, query, parameters, _this);
|
|
185
|
-
fail(new QueryFailedError(query, parameters, err));
|
|
186
|
-
}
|
|
187
|
-
else {
|
|
188
|
-
switch (result.command) {
|
|
189
|
-
case "DELETE":
|
|
190
|
-
case "UPDATE":
|
|
191
|
-
// for UPDATE and DELETE query additionally return number of affected rows
|
|
192
|
-
ok([result.rows, result.rowCount]);
|
|
193
|
-
break;
|
|
194
|
-
default:
|
|
195
|
-
ok(result.rows);
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
});
|
|
199
|
-
return [3 /*break*/, 3];
|
|
220
|
+
_a.label = 2;
|
|
200
221
|
case 2:
|
|
222
|
+
_a.trys.push([2, 4, , 5]);
|
|
223
|
+
queryStartTime = +new Date();
|
|
224
|
+
return [4 /*yield*/, databaseConnection.query(query, parameters)];
|
|
225
|
+
case 3:
|
|
226
|
+
result = _a.sent();
|
|
227
|
+
maxQueryExecutionTime = this.driver.connection.options.maxQueryExecutionTime;
|
|
228
|
+
queryEndTime = +new Date();
|
|
229
|
+
queryExecutionTime = queryEndTime - queryStartTime;
|
|
230
|
+
if (maxQueryExecutionTime && queryExecutionTime > maxQueryExecutionTime)
|
|
231
|
+
this.driver.connection.logger.logQuerySlow(queryExecutionTime, query, parameters, this);
|
|
232
|
+
switch (result.command) {
|
|
233
|
+
case "DELETE":
|
|
234
|
+
case "UPDATE":
|
|
235
|
+
// for UPDATE and DELETE query additionally return number of affected rows
|
|
236
|
+
return [2 /*return*/, [result.rows, result.rowCount]];
|
|
237
|
+
break;
|
|
238
|
+
default:
|
|
239
|
+
return [2 /*return*/, result.rows];
|
|
240
|
+
}
|
|
241
|
+
return [3 /*break*/, 5];
|
|
242
|
+
case 4:
|
|
201
243
|
err_1 = _a.sent();
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
case
|
|
244
|
+
this.driver.connection.logger.logQueryError(err_1, query, parameters, this);
|
|
245
|
+
throw new QueryFailedError(query, parameters, err_1);
|
|
246
|
+
case 5: return [2 /*return*/];
|
|
205
247
|
}
|
|
206
248
|
});
|
|
207
|
-
});
|
|
249
|
+
});
|
|
208
250
|
};
|
|
209
251
|
/**
|
|
210
252
|
* Returns raw data stream.
|
|
@@ -399,43 +441,58 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
399
441
|
if (createForeignKeys === void 0) { createForeignKeys = true; }
|
|
400
442
|
if (createIndices === void 0) { createIndices = true; }
|
|
401
443
|
return __awaiter(this, void 0, void 0, function () {
|
|
402
|
-
var isTableExist, upQueries, downQueries;
|
|
444
|
+
var isTableExist, upQueries, downQueries, enumColumns, createdEnumTypes, enumColumns_1, enumColumns_1_1, column, hasEnum, enumName, e_1_1;
|
|
445
|
+
var e_1, _a;
|
|
403
446
|
var _this = this;
|
|
404
|
-
return __generator(this, function (
|
|
405
|
-
switch (
|
|
447
|
+
return __generator(this, function (_b) {
|
|
448
|
+
switch (_b.label) {
|
|
406
449
|
case 0:
|
|
407
450
|
if (!ifNotExist) return [3 /*break*/, 2];
|
|
408
451
|
return [4 /*yield*/, this.hasTable(table)];
|
|
409
452
|
case 1:
|
|
410
|
-
isTableExist =
|
|
453
|
+
isTableExist = _b.sent();
|
|
411
454
|
if (isTableExist)
|
|
412
455
|
return [2 /*return*/, Promise.resolve()];
|
|
413
|
-
|
|
456
|
+
_b.label = 2;
|
|
414
457
|
case 2:
|
|
415
458
|
upQueries = [];
|
|
416
459
|
downQueries = [];
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
.map(function (column) { return __awaiter(_this, void 0, void 0, function () {
|
|
421
|
-
var hasEnum;
|
|
422
|
-
return __generator(this, function (_a) {
|
|
423
|
-
switch (_a.label) {
|
|
424
|
-
case 0: return [4 /*yield*/, this.hasEnumType(table, column)];
|
|
425
|
-
case 1:
|
|
426
|
-
hasEnum = _a.sent();
|
|
427
|
-
// TODO: Should also check if values of existing type matches expected ones
|
|
428
|
-
if (!hasEnum) {
|
|
429
|
-
upQueries.push(this.createEnumTypeSql(table, column));
|
|
430
|
-
downQueries.push(this.dropEnumTypeSql(table, column));
|
|
431
|
-
}
|
|
432
|
-
return [2 /*return*/, Promise.resolve()];
|
|
433
|
-
}
|
|
434
|
-
});
|
|
435
|
-
}); }))];
|
|
460
|
+
enumColumns = table.columns.filter(function (column) { return column.type === "enum" || column.type === "simple-enum"; });
|
|
461
|
+
createdEnumTypes = [];
|
|
462
|
+
_b.label = 3;
|
|
436
463
|
case 3:
|
|
437
|
-
|
|
438
|
-
|
|
464
|
+
_b.trys.push([3, 8, 9, 10]);
|
|
465
|
+
enumColumns_1 = __values(enumColumns), enumColumns_1_1 = enumColumns_1.next();
|
|
466
|
+
_b.label = 4;
|
|
467
|
+
case 4:
|
|
468
|
+
if (!!enumColumns_1_1.done) return [3 /*break*/, 7];
|
|
469
|
+
column = enumColumns_1_1.value;
|
|
470
|
+
return [4 /*yield*/, this.hasEnumType(table, column)];
|
|
471
|
+
case 5:
|
|
472
|
+
hasEnum = _b.sent();
|
|
473
|
+
enumName = this.buildEnumName(table, column);
|
|
474
|
+
// if enum with the same "enumName" is defined more then once, me must prevent double creation
|
|
475
|
+
if (!hasEnum && createdEnumTypes.indexOf(enumName) === -1) {
|
|
476
|
+
createdEnumTypes.push(enumName);
|
|
477
|
+
upQueries.push(this.createEnumTypeSql(table, column, enumName));
|
|
478
|
+
downQueries.push(this.dropEnumTypeSql(table, column, enumName));
|
|
479
|
+
}
|
|
480
|
+
_b.label = 6;
|
|
481
|
+
case 6:
|
|
482
|
+
enumColumns_1_1 = enumColumns_1.next();
|
|
483
|
+
return [3 /*break*/, 4];
|
|
484
|
+
case 7: return [3 /*break*/, 10];
|
|
485
|
+
case 8:
|
|
486
|
+
e_1_1 = _b.sent();
|
|
487
|
+
e_1 = { error: e_1_1 };
|
|
488
|
+
return [3 /*break*/, 10];
|
|
489
|
+
case 9:
|
|
490
|
+
try {
|
|
491
|
+
if (enumColumns_1_1 && !enumColumns_1_1.done && (_a = enumColumns_1.return)) _a.call(enumColumns_1);
|
|
492
|
+
}
|
|
493
|
+
finally { if (e_1) throw e_1.error; }
|
|
494
|
+
return [7 /*endfinally*/];
|
|
495
|
+
case 10:
|
|
439
496
|
upQueries.push(this.createTableSql(table, createForeignKeys));
|
|
440
497
|
downQueries.push(this.dropTableSql(table));
|
|
441
498
|
// if createForeignKeys is true, we must drop created foreign keys in down query.
|
|
@@ -452,8 +509,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
452
509
|
});
|
|
453
510
|
}
|
|
454
511
|
return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
455
|
-
case
|
|
456
|
-
|
|
512
|
+
case 11:
|
|
513
|
+
_b.sent();
|
|
457
514
|
return [2 /*return*/];
|
|
458
515
|
}
|
|
459
516
|
});
|
|
@@ -571,8 +628,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
571
628
|
*/
|
|
572
629
|
PostgresQueryRunner.prototype.renameTable = function (oldTableOrName, newTableName) {
|
|
573
630
|
return __awaiter(this, void 0, void 0, function () {
|
|
574
|
-
var upQueries, downQueries, oldTable, _a, newTable, oldTableName, schemaName, columnNames, oldPkName, newPkName, enumColumns,
|
|
575
|
-
var
|
|
631
|
+
var upQueries, downQueries, oldTable, _a, newTable, oldTableName, schemaName, columnNames, oldPkName, newPkName, enumColumns, enumColumns_2, enumColumns_2_1, column, oldEnumType, e_2_1;
|
|
632
|
+
var e_2, _b;
|
|
576
633
|
var _this = this;
|
|
577
634
|
return __generator(this, function (_c) {
|
|
578
635
|
switch (_c.label) {
|
|
@@ -602,6 +659,17 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
602
659
|
upQueries.push(new Query("ALTER TABLE " + this.escapePath(newTable) + " RENAME CONSTRAINT \"" + oldPkName + "\" TO \"" + newPkName + "\""));
|
|
603
660
|
downQueries.push(new Query("ALTER TABLE " + this.escapePath(newTable) + " RENAME CONSTRAINT \"" + newPkName + "\" TO \"" + oldPkName + "\""));
|
|
604
661
|
}
|
|
662
|
+
// rename sequences
|
|
663
|
+
newTable.columns.map(function (col) {
|
|
664
|
+
if (col.isGenerated && col.generationStrategy === "increment") {
|
|
665
|
+
var seqName = _this.buildSequenceName(oldTable, col.name, undefined, true, true);
|
|
666
|
+
var newSeqName = _this.buildSequenceName(newTable, col.name, undefined, true, true);
|
|
667
|
+
var up = schemaName ? "ALTER SEQUENCE \"" + schemaName + "\".\"" + seqName + "\" RENAME TO \"" + newSeqName + "\"" : "ALTER SEQUENCE \"" + seqName + "\" RENAME TO \"" + newSeqName + "\"";
|
|
668
|
+
var down = schemaName ? "ALTER SEQUENCE \"" + schemaName + "\".\"" + newSeqName + "\" RENAME TO \"" + seqName + "\"" : "ALTER SEQUENCE \"" + newSeqName + "\" RENAME TO \"" + seqName + "\"";
|
|
669
|
+
upQueries.push(new Query(up));
|
|
670
|
+
downQueries.push(new Query(down));
|
|
671
|
+
}
|
|
672
|
+
});
|
|
605
673
|
// rename unique constraints
|
|
606
674
|
newTable.uniques.forEach(function (unique) {
|
|
607
675
|
// build new constraint name
|
|
@@ -639,11 +707,11 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
639
707
|
_c.label = 4;
|
|
640
708
|
case 4:
|
|
641
709
|
_c.trys.push([4, 9, 10, 11]);
|
|
642
|
-
|
|
710
|
+
enumColumns_2 = __values(enumColumns), enumColumns_2_1 = enumColumns_2.next();
|
|
643
711
|
_c.label = 5;
|
|
644
712
|
case 5:
|
|
645
|
-
if (!!
|
|
646
|
-
column =
|
|
713
|
+
if (!!enumColumns_2_1.done) return [3 /*break*/, 8];
|
|
714
|
+
column = enumColumns_2_1.value;
|
|
647
715
|
return [4 /*yield*/, this.getEnumTypeName(oldTable, column)];
|
|
648
716
|
case 6:
|
|
649
717
|
oldEnumType = _c.sent();
|
|
@@ -651,18 +719,18 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
651
719
|
downQueries.push(new Query("ALTER TYPE " + this.buildEnumName(newTable, column) + " RENAME TO \"" + oldEnumType.enumTypeName + "\""));
|
|
652
720
|
_c.label = 7;
|
|
653
721
|
case 7:
|
|
654
|
-
|
|
722
|
+
enumColumns_2_1 = enumColumns_2.next();
|
|
655
723
|
return [3 /*break*/, 5];
|
|
656
724
|
case 8: return [3 /*break*/, 11];
|
|
657
725
|
case 9:
|
|
658
|
-
|
|
659
|
-
|
|
726
|
+
e_2_1 = _c.sent();
|
|
727
|
+
e_2 = { error: e_2_1 };
|
|
660
728
|
return [3 /*break*/, 11];
|
|
661
729
|
case 10:
|
|
662
730
|
try {
|
|
663
|
-
if (
|
|
731
|
+
if (enumColumns_2_1 && !enumColumns_2_1.done && (_b = enumColumns_2.return)) _b.call(enumColumns_2);
|
|
664
732
|
}
|
|
665
|
-
finally { if (
|
|
733
|
+
finally { if (e_2) throw e_2.error; }
|
|
666
734
|
return [7 /*endfinally*/];
|
|
667
735
|
case 11: return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
668
736
|
case 12:
|
|
@@ -736,6 +804,11 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
736
804
|
upQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ADD CONSTRAINT \"" + uniqueConstraint.name + "\" UNIQUE (\"" + column.name + "\")"));
|
|
737
805
|
downQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " DROP CONSTRAINT \"" + uniqueConstraint.name + "\""));
|
|
738
806
|
}
|
|
807
|
+
// create column's comment
|
|
808
|
+
if (column.comment) {
|
|
809
|
+
upQueries.push(new Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + column.name + "\" IS " + this.escapeComment(column.comment)));
|
|
810
|
+
downQueries.push(new Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + column.name + "\" IS " + this.escapeComment(column.comment)));
|
|
811
|
+
}
|
|
739
812
|
return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
740
813
|
case 6:
|
|
741
814
|
_b.sent();
|
|
@@ -751,8 +824,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
751
824
|
*/
|
|
752
825
|
PostgresQueryRunner.prototype.addColumns = function (tableOrName, columns) {
|
|
753
826
|
return __awaiter(this, void 0, void 0, function () {
|
|
754
|
-
var columns_1, columns_1_1, column,
|
|
755
|
-
var
|
|
827
|
+
var columns_1, columns_1_1, column, e_3_1;
|
|
828
|
+
var e_3, _a;
|
|
756
829
|
return __generator(this, function (_b) {
|
|
757
830
|
switch (_b.label) {
|
|
758
831
|
case 0:
|
|
@@ -771,14 +844,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
771
844
|
return [3 /*break*/, 1];
|
|
772
845
|
case 4: return [3 /*break*/, 7];
|
|
773
846
|
case 5:
|
|
774
|
-
|
|
775
|
-
|
|
847
|
+
e_3_1 = _b.sent();
|
|
848
|
+
e_3 = { error: e_3_1 };
|
|
776
849
|
return [3 /*break*/, 7];
|
|
777
850
|
case 6:
|
|
778
851
|
try {
|
|
779
852
|
if (columns_1_1 && !columns_1_1.done && (_a = columns_1.return)) _a.call(columns_1);
|
|
780
853
|
}
|
|
781
|
-
finally { if (
|
|
854
|
+
finally { if (e_3) throw e_3.error; }
|
|
782
855
|
return [7 /*endfinally*/];
|
|
783
856
|
case 7: return [2 /*return*/];
|
|
784
857
|
}
|
|
@@ -823,7 +896,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
823
896
|
*/
|
|
824
897
|
PostgresQueryRunner.prototype.changeColumn = function (tableOrName, oldTableColumnOrName, newColumn) {
|
|
825
898
|
return __awaiter(this, void 0, void 0, function () {
|
|
826
|
-
var table, _a, clonedTable, upQueries, downQueries, oldColumn, oldEnumType, primaryColumns, columnNames, oldPkName, newPkName, schema, seqName, newSeqName, up, down, oldTableColumn,
|
|
899
|
+
var table, _a, clonedTable, upQueries, downQueries, defaultValueChanged, oldColumn, oldEnumType, primaryColumns, columnNames, oldPkName, newPkName, schema, seqName, newSeqName, up, down, oldTableColumn, arraySuffix, newEnumName, oldEnumName, oldEnumNameWithoutSchema, oldEnumNameWithSchema_old, oldEnumNameWithoutSchema_old, upType, downType, primaryColumns, pkName, columnNames, column, pkName, columnNames, primaryColumn, column, pkName, columnNames, uniqueConstraint, uniqueConstraint;
|
|
827
900
|
var _this = this;
|
|
828
901
|
return __generator(this, function (_b) {
|
|
829
902
|
switch (_b.label) {
|
|
@@ -840,12 +913,13 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
840
913
|
clonedTable = table.clone();
|
|
841
914
|
upQueries = [];
|
|
842
915
|
downQueries = [];
|
|
916
|
+
defaultValueChanged = false;
|
|
843
917
|
oldColumn = oldTableColumnOrName instanceof TableColumn
|
|
844
918
|
? oldTableColumnOrName
|
|
845
919
|
: table.columns.find(function (column) { return column.name === oldTableColumnOrName; });
|
|
846
920
|
if (!oldColumn)
|
|
847
921
|
throw new Error("Column \"" + oldTableColumnOrName + "\" was not found in the \"" + table.name + "\" table.");
|
|
848
|
-
if (!(oldColumn.type !== newColumn.type || oldColumn.length !== newColumn.length)) return [3 /*break*/, 6];
|
|
922
|
+
if (!(oldColumn.type !== newColumn.type || oldColumn.length !== newColumn.length || newColumn.isArray !== oldColumn.isArray)) return [3 /*break*/, 6];
|
|
849
923
|
// To avoid data conversion, we just recreate column
|
|
850
924
|
return [4 /*yield*/, this.dropColumn(table, oldColumn)];
|
|
851
925
|
case 4:
|
|
@@ -856,7 +930,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
856
930
|
_b.sent();
|
|
857
931
|
// update cloned table
|
|
858
932
|
clonedTable = table.clone();
|
|
859
|
-
return [3 /*break*/,
|
|
933
|
+
return [3 /*break*/, 10];
|
|
860
934
|
case 6:
|
|
861
935
|
if (!(oldColumn.name !== newColumn.name)) return [3 /*break*/, 9];
|
|
862
936
|
// rename column
|
|
@@ -940,42 +1014,42 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
940
1014
|
upQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + this.driver.createFullType(newColumn)));
|
|
941
1015
|
downQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + this.driver.createFullType(oldColumn)));
|
|
942
1016
|
}
|
|
943
|
-
if (
|
|
1017
|
+
if ((newColumn.type === "enum" || newColumn.type === "simple-enum")
|
|
944
1018
|
&& (oldColumn.type === "enum" || oldColumn.type === "simple-enum")
|
|
945
|
-
&& !OrmUtils.isArraysEqual(newColumn.enum, oldColumn.enum)
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
1019
|
+
&& (!OrmUtils.isArraysEqual(newColumn.enum, oldColumn.enum) || newColumn.enumName !== oldColumn.enumName)) {
|
|
1020
|
+
arraySuffix = newColumn.isArray ? "[]" : "";
|
|
1021
|
+
newEnumName = this.buildEnumName(table, newColumn);
|
|
1022
|
+
oldEnumName = this.buildEnumName(table, oldColumn);
|
|
1023
|
+
oldEnumNameWithoutSchema = this.buildEnumName(table, oldColumn, false);
|
|
1024
|
+
oldEnumNameWithSchema_old = this.buildEnumName(table, oldColumn, true, false, true);
|
|
1025
|
+
oldEnumNameWithoutSchema_old = this.buildEnumName(table, oldColumn, false, false, true);
|
|
1026
|
+
// rename old ENUM
|
|
1027
|
+
upQueries.push(new Query("ALTER TYPE " + oldEnumName + " RENAME TO " + oldEnumNameWithoutSchema_old));
|
|
1028
|
+
downQueries.push(new Query("ALTER TYPE " + oldEnumNameWithSchema_old + " RENAME TO " + oldEnumNameWithoutSchema));
|
|
1029
|
+
// create new ENUM
|
|
1030
|
+
upQueries.push(this.createEnumTypeSql(table, newColumn, newEnumName));
|
|
1031
|
+
downQueries.push(this.dropEnumTypeSql(table, newColumn, newEnumName));
|
|
1032
|
+
// if column have default value, we must drop it to avoid issues with type casting
|
|
1033
|
+
if (oldColumn.default !== null && oldColumn.default !== undefined) {
|
|
1034
|
+
// mark default as changed to prevent double update
|
|
1035
|
+
defaultValueChanged = true;
|
|
1036
|
+
upQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + oldColumn.name + "\" DROP DEFAULT"));
|
|
1037
|
+
downQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + oldColumn.name + "\" SET DEFAULT " + oldColumn.default));
|
|
1038
|
+
}
|
|
1039
|
+
upType = "" + newEnumName + arraySuffix + " USING \"" + newColumn.name + "\"::\"text\"::" + newEnumName + arraySuffix;
|
|
1040
|
+
downType = "" + oldEnumNameWithSchema_old + arraySuffix + " USING \"" + newColumn.name + "\"::\"text\"::" + oldEnumNameWithSchema_old + arraySuffix;
|
|
1041
|
+
// update column to use new type
|
|
1042
|
+
upQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + upType));
|
|
1043
|
+
downQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + downType));
|
|
1044
|
+
// restore column default or create new one
|
|
1045
|
+
if (newColumn.default !== null && newColumn.default !== undefined) {
|
|
1046
|
+
upQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" SET DEFAULT " + newColumn.default));
|
|
1047
|
+
downQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" DROP DEFAULT"));
|
|
1048
|
+
}
|
|
1049
|
+
// remove old ENUM
|
|
1050
|
+
upQueries.push(this.dropEnumTypeSql(table, oldColumn, oldEnumNameWithSchema_old));
|
|
1051
|
+
downQueries.push(this.createEnumTypeSql(table, oldColumn, oldEnumNameWithSchema_old));
|
|
973
1052
|
}
|
|
974
|
-
// remove old ENUM
|
|
975
|
-
upQueries.push(this.dropEnumTypeSql(table, newColumn, oldEnumName));
|
|
976
|
-
downQueries.push(this.createEnumTypeSql(table, oldColumn, oldEnumName));
|
|
977
|
-
_b.label = 11;
|
|
978
|
-
case 11:
|
|
979
1053
|
if (oldColumn.isNullable !== newColumn.isNullable) {
|
|
980
1054
|
if (newColumn.isNullable) {
|
|
981
1055
|
upQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + oldColumn.name + "\" DROP NOT NULL"));
|
|
@@ -987,8 +1061,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
987
1061
|
}
|
|
988
1062
|
}
|
|
989
1063
|
if (oldColumn.comment !== newColumn.comment) {
|
|
990
|
-
upQueries.push(new Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + oldColumn.name + "\" IS
|
|
991
|
-
downQueries.push(new Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + newColumn.name + "\" IS
|
|
1064
|
+
upQueries.push(new Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + oldColumn.name + "\" IS " + this.escapeComment(newColumn.comment)));
|
|
1065
|
+
downQueries.push(new Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + newColumn.name + "\" IS " + this.escapeComment(oldColumn.comment)));
|
|
992
1066
|
}
|
|
993
1067
|
if (newColumn.isPrimary !== oldColumn.isPrimary) {
|
|
994
1068
|
primaryColumns = clonedTable.primaryColumns;
|
|
@@ -1055,7 +1129,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1055
1129
|
downQueries.push(new Query("CREATE SEQUENCE " + this.buildSequenceName(table, newColumn) + " OWNED BY " + this.escapePath(table) + ".\"" + newColumn.name + "\""));
|
|
1056
1130
|
}
|
|
1057
1131
|
}
|
|
1058
|
-
|
|
1132
|
+
// the default might have changed when the enum changed
|
|
1133
|
+
if (newColumn.default !== oldColumn.default && !defaultValueChanged) {
|
|
1059
1134
|
if (newColumn.default !== null && newColumn.default !== undefined) {
|
|
1060
1135
|
upQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" SET DEFAULT " + newColumn.default));
|
|
1061
1136
|
if (oldColumn.default !== null && oldColumn.default !== undefined) {
|
|
@@ -1074,9 +1149,9 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1074
1149
|
upQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + this.driver.createFullType(newColumn)));
|
|
1075
1150
|
downQueries.push(new Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + this.driver.createFullType(oldColumn)));
|
|
1076
1151
|
}
|
|
1077
|
-
_b.label =
|
|
1078
|
-
case
|
|
1079
|
-
case
|
|
1152
|
+
_b.label = 10;
|
|
1153
|
+
case 10: return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
1154
|
+
case 11:
|
|
1080
1155
|
_b.sent();
|
|
1081
1156
|
this.replaceCachedTable(table, clonedTable);
|
|
1082
1157
|
return [2 /*return*/];
|
|
@@ -1089,8 +1164,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1089
1164
|
*/
|
|
1090
1165
|
PostgresQueryRunner.prototype.changeColumns = function (tableOrName, changedColumns) {
|
|
1091
1166
|
return __awaiter(this, void 0, void 0, function () {
|
|
1092
|
-
var changedColumns_1, changedColumns_1_1, _a, oldColumn, newColumn,
|
|
1093
|
-
var
|
|
1167
|
+
var changedColumns_1, changedColumns_1_1, _a, oldColumn, newColumn, e_4_1;
|
|
1168
|
+
var e_4, _b;
|
|
1094
1169
|
return __generator(this, function (_c) {
|
|
1095
1170
|
switch (_c.label) {
|
|
1096
1171
|
case 0:
|
|
@@ -1109,14 +1184,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1109
1184
|
return [3 /*break*/, 1];
|
|
1110
1185
|
case 4: return [3 /*break*/, 7];
|
|
1111
1186
|
case 5:
|
|
1112
|
-
|
|
1113
|
-
|
|
1187
|
+
e_4_1 = _c.sent();
|
|
1188
|
+
e_4 = { error: e_4_1 };
|
|
1114
1189
|
return [3 /*break*/, 7];
|
|
1115
1190
|
case 6:
|
|
1116
1191
|
try {
|
|
1117
1192
|
if (changedColumns_1_1 && !changedColumns_1_1.done && (_b = changedColumns_1.return)) _b.call(changedColumns_1);
|
|
1118
1193
|
}
|
|
1119
|
-
finally { if (
|
|
1194
|
+
finally { if (e_4) throw e_4.error; }
|
|
1120
1195
|
return [7 /*endfinally*/];
|
|
1121
1196
|
case 7: return [2 /*return*/];
|
|
1122
1197
|
}
|
|
@@ -1210,8 +1285,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1210
1285
|
*/
|
|
1211
1286
|
PostgresQueryRunner.prototype.dropColumns = function (tableOrName, columns) {
|
|
1212
1287
|
return __awaiter(this, void 0, void 0, function () {
|
|
1213
|
-
var columns_2, columns_2_1, column,
|
|
1214
|
-
var
|
|
1288
|
+
var columns_2, columns_2_1, column, e_5_1;
|
|
1289
|
+
var e_5, _a;
|
|
1215
1290
|
return __generator(this, function (_b) {
|
|
1216
1291
|
switch (_b.label) {
|
|
1217
1292
|
case 0:
|
|
@@ -1230,14 +1305,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1230
1305
|
return [3 /*break*/, 1];
|
|
1231
1306
|
case 4: return [3 /*break*/, 7];
|
|
1232
1307
|
case 5:
|
|
1233
|
-
|
|
1234
|
-
|
|
1308
|
+
e_5_1 = _b.sent();
|
|
1309
|
+
e_5 = { error: e_5_1 };
|
|
1235
1310
|
return [3 /*break*/, 7];
|
|
1236
1311
|
case 6:
|
|
1237
1312
|
try {
|
|
1238
1313
|
if (columns_2_1 && !columns_2_1.done && (_a = columns_2.return)) _a.call(columns_2);
|
|
1239
1314
|
}
|
|
1240
|
-
finally { if (
|
|
1315
|
+
finally { if (e_5) throw e_5.error; }
|
|
1241
1316
|
return [7 /*endfinally*/];
|
|
1242
1317
|
case 7: return [2 /*return*/];
|
|
1243
1318
|
}
|
|
@@ -1393,8 +1468,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1393
1468
|
*/
|
|
1394
1469
|
PostgresQueryRunner.prototype.createUniqueConstraints = function (tableOrName, uniqueConstraints) {
|
|
1395
1470
|
return __awaiter(this, void 0, void 0, function () {
|
|
1396
|
-
var uniqueConstraints_1, uniqueConstraints_1_1, uniqueConstraint,
|
|
1397
|
-
var
|
|
1471
|
+
var uniqueConstraints_1, uniqueConstraints_1_1, uniqueConstraint, e_6_1;
|
|
1472
|
+
var e_6, _a;
|
|
1398
1473
|
return __generator(this, function (_b) {
|
|
1399
1474
|
switch (_b.label) {
|
|
1400
1475
|
case 0:
|
|
@@ -1413,14 +1488,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1413
1488
|
return [3 /*break*/, 1];
|
|
1414
1489
|
case 4: return [3 /*break*/, 7];
|
|
1415
1490
|
case 5:
|
|
1416
|
-
|
|
1417
|
-
|
|
1491
|
+
e_6_1 = _b.sent();
|
|
1492
|
+
e_6 = { error: e_6_1 };
|
|
1418
1493
|
return [3 /*break*/, 7];
|
|
1419
1494
|
case 6:
|
|
1420
1495
|
try {
|
|
1421
1496
|
if (uniqueConstraints_1_1 && !uniqueConstraints_1_1.done && (_a = uniqueConstraints_1.return)) _a.call(uniqueConstraints_1);
|
|
1422
1497
|
}
|
|
1423
|
-
finally { if (
|
|
1498
|
+
finally { if (e_6) throw e_6.error; }
|
|
1424
1499
|
return [7 /*endfinally*/];
|
|
1425
1500
|
case 7: return [2 /*return*/];
|
|
1426
1501
|
}
|
|
@@ -1464,8 +1539,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1464
1539
|
*/
|
|
1465
1540
|
PostgresQueryRunner.prototype.dropUniqueConstraints = function (tableOrName, uniqueConstraints) {
|
|
1466
1541
|
return __awaiter(this, void 0, void 0, function () {
|
|
1467
|
-
var uniqueConstraints_2, uniqueConstraints_2_1, uniqueConstraint,
|
|
1468
|
-
var
|
|
1542
|
+
var uniqueConstraints_2, uniqueConstraints_2_1, uniqueConstraint, e_7_1;
|
|
1543
|
+
var e_7, _a;
|
|
1469
1544
|
return __generator(this, function (_b) {
|
|
1470
1545
|
switch (_b.label) {
|
|
1471
1546
|
case 0:
|
|
@@ -1484,14 +1559,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1484
1559
|
return [3 /*break*/, 1];
|
|
1485
1560
|
case 4: return [3 /*break*/, 7];
|
|
1486
1561
|
case 5:
|
|
1487
|
-
|
|
1488
|
-
|
|
1562
|
+
e_7_1 = _b.sent();
|
|
1563
|
+
e_7 = { error: e_7_1 };
|
|
1489
1564
|
return [3 /*break*/, 7];
|
|
1490
1565
|
case 6:
|
|
1491
1566
|
try {
|
|
1492
1567
|
if (uniqueConstraints_2_1 && !uniqueConstraints_2_1.done && (_a = uniqueConstraints_2.return)) _a.call(uniqueConstraints_2);
|
|
1493
1568
|
}
|
|
1494
|
-
finally { if (
|
|
1569
|
+
finally { if (e_7) throw e_7.error; }
|
|
1495
1570
|
return [7 /*endfinally*/];
|
|
1496
1571
|
case 7: return [2 /*return*/];
|
|
1497
1572
|
}
|
|
@@ -1739,8 +1814,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1739
1814
|
*/
|
|
1740
1815
|
PostgresQueryRunner.prototype.createForeignKeys = function (tableOrName, foreignKeys) {
|
|
1741
1816
|
return __awaiter(this, void 0, void 0, function () {
|
|
1742
|
-
var foreignKeys_1, foreignKeys_1_1, foreignKey,
|
|
1743
|
-
var
|
|
1817
|
+
var foreignKeys_1, foreignKeys_1_1, foreignKey, e_8_1;
|
|
1818
|
+
var e_8, _a;
|
|
1744
1819
|
return __generator(this, function (_b) {
|
|
1745
1820
|
switch (_b.label) {
|
|
1746
1821
|
case 0:
|
|
@@ -1759,14 +1834,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1759
1834
|
return [3 /*break*/, 1];
|
|
1760
1835
|
case 4: return [3 /*break*/, 7];
|
|
1761
1836
|
case 5:
|
|
1762
|
-
|
|
1763
|
-
|
|
1837
|
+
e_8_1 = _b.sent();
|
|
1838
|
+
e_8 = { error: e_8_1 };
|
|
1764
1839
|
return [3 /*break*/, 7];
|
|
1765
1840
|
case 6:
|
|
1766
1841
|
try {
|
|
1767
1842
|
if (foreignKeys_1_1 && !foreignKeys_1_1.done && (_a = foreignKeys_1.return)) _a.call(foreignKeys_1);
|
|
1768
1843
|
}
|
|
1769
|
-
finally { if (
|
|
1844
|
+
finally { if (e_8) throw e_8.error; }
|
|
1770
1845
|
return [7 /*endfinally*/];
|
|
1771
1846
|
case 7: return [2 /*return*/];
|
|
1772
1847
|
}
|
|
@@ -1810,8 +1885,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1810
1885
|
*/
|
|
1811
1886
|
PostgresQueryRunner.prototype.dropForeignKeys = function (tableOrName, foreignKeys) {
|
|
1812
1887
|
return __awaiter(this, void 0, void 0, function () {
|
|
1813
|
-
var foreignKeys_2, foreignKeys_2_1, foreignKey,
|
|
1814
|
-
var
|
|
1888
|
+
var foreignKeys_2, foreignKeys_2_1, foreignKey, e_9_1;
|
|
1889
|
+
var e_9, _a;
|
|
1815
1890
|
return __generator(this, function (_b) {
|
|
1816
1891
|
switch (_b.label) {
|
|
1817
1892
|
case 0:
|
|
@@ -1830,14 +1905,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1830
1905
|
return [3 /*break*/, 1];
|
|
1831
1906
|
case 4: return [3 /*break*/, 7];
|
|
1832
1907
|
case 5:
|
|
1833
|
-
|
|
1834
|
-
|
|
1908
|
+
e_9_1 = _b.sent();
|
|
1909
|
+
e_9 = { error: e_9_1 };
|
|
1835
1910
|
return [3 /*break*/, 7];
|
|
1836
1911
|
case 6:
|
|
1837
1912
|
try {
|
|
1838
1913
|
if (foreignKeys_2_1 && !foreignKeys_2_1.done && (_a = foreignKeys_2.return)) _a.call(foreignKeys_2);
|
|
1839
1914
|
}
|
|
1840
|
-
finally { if (
|
|
1915
|
+
finally { if (e_9) throw e_9.error; }
|
|
1841
1916
|
return [7 /*endfinally*/];
|
|
1842
1917
|
case 7: return [2 /*return*/];
|
|
1843
1918
|
}
|
|
@@ -1881,8 +1956,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1881
1956
|
*/
|
|
1882
1957
|
PostgresQueryRunner.prototype.createIndices = function (tableOrName, indices) {
|
|
1883
1958
|
return __awaiter(this, void 0, void 0, function () {
|
|
1884
|
-
var indices_1, indices_1_1, index,
|
|
1885
|
-
var
|
|
1959
|
+
var indices_1, indices_1_1, index, e_10_1;
|
|
1960
|
+
var e_10, _a;
|
|
1886
1961
|
return __generator(this, function (_b) {
|
|
1887
1962
|
switch (_b.label) {
|
|
1888
1963
|
case 0:
|
|
@@ -1901,14 +1976,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1901
1976
|
return [3 /*break*/, 1];
|
|
1902
1977
|
case 4: return [3 /*break*/, 7];
|
|
1903
1978
|
case 5:
|
|
1904
|
-
|
|
1905
|
-
|
|
1979
|
+
e_10_1 = _b.sent();
|
|
1980
|
+
e_10 = { error: e_10_1 };
|
|
1906
1981
|
return [3 /*break*/, 7];
|
|
1907
1982
|
case 6:
|
|
1908
1983
|
try {
|
|
1909
1984
|
if (indices_1_1 && !indices_1_1.done && (_a = indices_1.return)) _a.call(indices_1);
|
|
1910
1985
|
}
|
|
1911
|
-
finally { if (
|
|
1986
|
+
finally { if (e_10) throw e_10.error; }
|
|
1912
1987
|
return [7 /*endfinally*/];
|
|
1913
1988
|
case 7: return [2 /*return*/];
|
|
1914
1989
|
}
|
|
@@ -1952,8 +2027,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1952
2027
|
*/
|
|
1953
2028
|
PostgresQueryRunner.prototype.dropIndices = function (tableOrName, indices) {
|
|
1954
2029
|
return __awaiter(this, void 0, void 0, function () {
|
|
1955
|
-
var indices_2, indices_2_1, index,
|
|
1956
|
-
var
|
|
2030
|
+
var indices_2, indices_2_1, index, e_11_1;
|
|
2031
|
+
var e_11, _a;
|
|
1957
2032
|
return __generator(this, function (_b) {
|
|
1958
2033
|
switch (_b.label) {
|
|
1959
2034
|
case 0:
|
|
@@ -1972,14 +2047,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1972
2047
|
return [3 /*break*/, 1];
|
|
1973
2048
|
case 4: return [3 /*break*/, 7];
|
|
1974
2049
|
case 5:
|
|
1975
|
-
|
|
1976
|
-
|
|
2050
|
+
e_11_1 = _b.sent();
|
|
2051
|
+
e_11 = { error: e_11_1 };
|
|
1977
2052
|
return [3 /*break*/, 7];
|
|
1978
2053
|
case 6:
|
|
1979
2054
|
try {
|
|
1980
2055
|
if (indices_2_1 && !indices_2_1.done && (_a = indices_2.return)) _a.call(indices_2);
|
|
1981
2056
|
}
|
|
1982
|
-
finally { if (
|
|
2057
|
+
finally { if (e_11) throw e_11.error; }
|
|
1983
2058
|
return [7 /*endfinally*/];
|
|
1984
2059
|
case 7: return [2 /*return*/];
|
|
1985
2060
|
}
|
|
@@ -2117,7 +2192,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2117
2192
|
*/
|
|
2118
2193
|
PostgresQueryRunner.prototype.loadTables = function (tableNames) {
|
|
2119
2194
|
return __awaiter(this, void 0, void 0, function () {
|
|
2120
|
-
var currentSchemaQuery, currentSchema, tablesCondition, tablesSql, columnsSql, constraintsCondition, constraintsSql, indicesSql, foreignKeysCondition, foreignKeysSql, _a, dbTables, dbColumns, dbConstraints, dbIndices, dbForeignKeys;
|
|
2195
|
+
var currentSchemaQuery, currentSchema, tablesCondition, tablesSql, columnsSql, constraintsCondition, constraintsSql, indicesSql, foreignKeysCondition, hasRelispartitionColumn, isPartitionCondition, foreignKeysSql, _a, dbTables, dbColumns, dbConstraints, dbIndices, dbForeignKeys;
|
|
2121
2196
|
var _this = this;
|
|
2122
2197
|
return __generator(this, function (_b) {
|
|
2123
2198
|
switch (_b.label) {
|
|
@@ -2138,7 +2213,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2138
2213
|
return "(\"table_schema\" = '" + schema + "' AND \"table_name\" = '" + name + "')";
|
|
2139
2214
|
}).join(" OR ");
|
|
2140
2215
|
tablesSql = "SELECT * FROM \"information_schema\".\"tables\" WHERE " + tablesCondition;
|
|
2141
|
-
columnsSql = "SELECT
|
|
2216
|
+
columnsSql = "\n SELECT columns.*,\n pg_catalog.col_description(('\"' || table_catalog || '\".\"' || table_schema || '\".\"' || table_name || '\"')::regclass::oid, ordinal_position) AS description,\n ('\"' || \"udt_schema\" || '\".\"' || \"udt_name\" || '\"')::\"regtype\" AS \"regtype\",\n pg_catalog.format_type(\"col_attr\".\"atttypid\", \"col_attr\".\"atttypmod\") AS \"format_type\"\n FROM \"information_schema\".\"columns\"\n LEFT JOIN \"pg_catalog\".\"pg_attribute\" AS \"col_attr\"\n ON \"col_attr\".\"attname\" = \"columns\".\"column_name\"\n AND \"col_attr\".\"attrelid\" = (\n SELECT\n \"cls\".\"oid\" FROM \"pg_catalog\".\"pg_class\" AS \"cls\"\n LEFT JOIN \"pg_catalog\".\"pg_namespace\" AS \"ns\"\n ON \"ns\".\"oid\" = \"cls\".\"relnamespace\"\n WHERE \"cls\".\"relname\" = \"columns\".\"table_name\"\n AND \"ns\".\"nspname\" = \"columns\".\"table_schema\"\n )\n WHERE\n " + tablesCondition;
|
|
2142
2217
|
constraintsCondition = tableNames.map(function (tableName) {
|
|
2143
2218
|
var _a = __read(tableName.split("."), 2), schema = _a[0], name = _a[1];
|
|
2144
2219
|
if (!name) {
|
|
@@ -2154,7 +2229,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2154
2229
|
"INNER JOIN \"pg_class\" \"t\" ON \"t\".\"oid\" = \"cnst\".\"conrelid\" " +
|
|
2155
2230
|
"INNER JOIN \"pg_namespace\" \"ns\" ON \"ns\".\"oid\" = \"cnst\".\"connamespace\" " +
|
|
2156
2231
|
"LEFT JOIN \"pg_attribute\" \"a\" ON \"a\".\"attrelid\" = \"cnst\".\"conrelid\" AND \"a\".\"attnum\" = ANY (\"cnst\".\"conkey\") " +
|
|
2157
|
-
("WHERE \"t\".\"relkind\"
|
|
2232
|
+
("WHERE \"t\".\"relkind\" IN ('r', 'p') AND (" + constraintsCondition + ")");
|
|
2158
2233
|
indicesSql = "SELECT \"ns\".\"nspname\" AS \"table_schema\", \"t\".\"relname\" AS \"table_name\", \"i\".\"relname\" AS \"constraint_name\", \"a\".\"attname\" AS \"column_name\", " +
|
|
2159
2234
|
"CASE \"ix\".\"indisunique\" WHEN 't' THEN 'TRUE' ELSE'FALSE' END AS \"is_unique\", pg_get_expr(\"ix\".\"indpred\", \"ix\".\"indrelid\") AS \"condition\", " +
|
|
2160
2235
|
"\"types\".\"typname\" AS \"type_name\" " +
|
|
@@ -2165,7 +2240,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2165
2240
|
"INNER JOIN \"pg_class\" \"i\" ON \"i\".\"oid\" = \"ix\".\"indexrelid\" " +
|
|
2166
2241
|
"INNER JOIN \"pg_type\" \"types\" ON \"types\".\"oid\" = \"a\".\"atttypid\" " +
|
|
2167
2242
|
"LEFT JOIN \"pg_constraint\" \"cnst\" ON \"cnst\".\"conname\" = \"i\".\"relname\" " +
|
|
2168
|
-
("WHERE \"t\".\"relkind\"
|
|
2243
|
+
("WHERE \"t\".\"relkind\" IN ('r', 'p') AND \"cnst\".\"contype\" IS NULL AND (" + constraintsCondition + ")");
|
|
2169
2244
|
foreignKeysCondition = tableNames.map(function (tableName) {
|
|
2170
2245
|
var _a = __read(tableName.split("."), 2), schema = _a[0], name = _a[1];
|
|
2171
2246
|
if (!name) {
|
|
@@ -2174,6 +2249,10 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2174
2249
|
}
|
|
2175
2250
|
return "(\"ns\".\"nspname\" = '" + schema + "' AND \"cl\".\"relname\" = '" + name + "')";
|
|
2176
2251
|
}).join(" OR ");
|
|
2252
|
+
return [4 /*yield*/, this.hasSupportForPartitionedTables()];
|
|
2253
|
+
case 2:
|
|
2254
|
+
hasRelispartitionColumn = _b.sent();
|
|
2255
|
+
isPartitionCondition = hasRelispartitionColumn ? " AND \"cl\".\"relispartition\" = 'f'" : "";
|
|
2177
2256
|
foreignKeysSql = "SELECT \"con\".\"conname\" AS \"constraint_name\", \"con\".\"nspname\" AS \"table_schema\", \"con\".\"relname\" AS \"table_name\", \"att2\".\"attname\" AS \"column_name\", " +
|
|
2178
2257
|
"\"ns\".\"nspname\" AS \"referenced_table_schema\", \"cl\".\"relname\" AS \"referenced_table_name\", \"att\".\"attname\" AS \"referenced_column_name\", \"con\".\"confdeltype\" AS \"on_delete\", " +
|
|
2179
2258
|
"\"con\".\"confupdtype\" AS \"on_update\", \"con\".\"condeferrable\" AS \"deferrable\", \"con\".\"condeferred\" AS \"deferred\" " +
|
|
@@ -2189,7 +2268,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2189
2268
|
("WHERE \"con1\".\"contype\" = 'f' AND (" + foreignKeysCondition + ") ") +
|
|
2190
2269
|
") \"con\" " +
|
|
2191
2270
|
"INNER JOIN \"pg_attribute\" \"att\" ON \"att\".\"attrelid\" = \"con\".\"confrelid\" AND \"att\".\"attnum\" = \"con\".\"child\" " +
|
|
2192
|
-
"INNER JOIN \"pg_class\" \"cl\" ON \"cl\".\"oid\" = \"con\".\"confrelid\" " +
|
|
2271
|
+
("INNER JOIN \"pg_class\" \"cl\" ON \"cl\".\"oid\" = \"con\".\"confrelid\" " + isPartitionCondition) +
|
|
2193
2272
|
"INNER JOIN \"pg_namespace\" \"ns\" ON \"cl\".\"relnamespace\" = \"ns\".\"oid\" " +
|
|
2194
2273
|
"INNER JOIN \"pg_attribute\" \"att2\" ON \"att2\".\"attrelid\" = \"con\".\"conrelid\" AND \"att2\".\"attnum\" = \"con\".\"parent\"";
|
|
2195
2274
|
return [4 /*yield*/, Promise.all([
|
|
@@ -2199,7 +2278,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2199
2278
|
this.query(indicesSql),
|
|
2200
2279
|
this.query(foreignKeysSql),
|
|
2201
2280
|
])];
|
|
2202
|
-
case
|
|
2281
|
+
case 3:
|
|
2203
2282
|
_a = __read.apply(void 0, [_b.sent(), 5]), dbTables = _a[0], dbColumns = _a[1], dbConstraints = _a[2], dbIndices = _a[3], dbForeignKeys = _a[4];
|
|
2204
2283
|
// if tables were not found in the db, no need to proceed
|
|
2205
2284
|
if (!dbTables.length)
|
|
@@ -2221,7 +2300,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2221
2300
|
return [4 /*yield*/, Promise.all(dbColumns
|
|
2222
2301
|
.filter(function (dbColumn) { return _this.driver.buildTableName(dbColumn["table_name"], dbColumn["table_schema"]) === tableFullName; })
|
|
2223
2302
|
.map(function (dbColumn) { return __awaiter(_this, void 0, void 0, function () {
|
|
2224
|
-
var columnConstraints, tableColumn, type, sql, results, geometryColumnSql, results, geographyColumnSql, results, length_1, uniqueConstraint, isConstraintComposite;
|
|
2303
|
+
var columnConstraints, tableColumn, type, enumTypeName, builtEnumName, sql, results, geometryColumnSql, results, geographyColumnSql, results, length_1, match, uniqueConstraint, isConstraintComposite;
|
|
2225
2304
|
var _this = this;
|
|
2226
2305
|
return __generator(this, function (_a) {
|
|
2227
2306
|
switch (_a.label) {
|
|
@@ -2260,40 +2339,54 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2260
2339
|
|| tableColumn.type === "timestamp with time zone") {
|
|
2261
2340
|
tableColumn.precision = !this.isDefaultColumnPrecision(table, tableColumn, dbColumn["datetime_precision"]) ? dbColumn["datetime_precision"] : undefined;
|
|
2262
2341
|
}
|
|
2263
|
-
if (!(tableColumn.type.indexOf("enum") !== -1)) return [3 /*break*/,
|
|
2342
|
+
if (!(tableColumn.type.indexOf("enum") !== -1)) return [3 /*break*/, 3];
|
|
2343
|
+
return [4 /*yield*/, this.getEnumTypeName(table, tableColumn)];
|
|
2344
|
+
case 1:
|
|
2345
|
+
enumTypeName = (_a.sent()).enumTypeName;
|
|
2346
|
+
builtEnumName = this.buildEnumName(table, tableColumn, false, true);
|
|
2347
|
+
if (builtEnumName !== enumTypeName)
|
|
2348
|
+
tableColumn.enumName = enumTypeName;
|
|
2264
2349
|
tableColumn.type = "enum";
|
|
2265
2350
|
sql = "SELECT \"e\".\"enumlabel\" AS \"value\" FROM \"pg_enum\" \"e\" " +
|
|
2266
2351
|
"INNER JOIN \"pg_type\" \"t\" ON \"t\".\"oid\" = \"e\".\"enumtypid\" " +
|
|
2267
2352
|
"INNER JOIN \"pg_namespace\" \"n\" ON \"n\".\"oid\" = \"t\".\"typnamespace\" " +
|
|
2268
|
-
("WHERE \"n\".\"nspname\" = '" + dbTable["table_schema"] + "' AND \"t\".\"typname\" = '" + this.buildEnumName(table, tableColumn
|
|
2353
|
+
("WHERE \"n\".\"nspname\" = '" + dbTable["table_schema"] + "' AND \"t\".\"typname\" = '" + this.buildEnumName(table, tableColumn, false, true) + "'");
|
|
2269
2354
|
return [4 /*yield*/, this.query(sql)];
|
|
2270
|
-
case
|
|
2355
|
+
case 2:
|
|
2271
2356
|
results = _a.sent();
|
|
2272
2357
|
tableColumn.enum = results.map(function (result) { return result["value"]; });
|
|
2273
|
-
_a.label =
|
|
2274
|
-
case
|
|
2275
|
-
if (!(tableColumn.type === "geometry")) return [3 /*break*/,
|
|
2358
|
+
_a.label = 3;
|
|
2359
|
+
case 3:
|
|
2360
|
+
if (!(tableColumn.type === "geometry")) return [3 /*break*/, 5];
|
|
2276
2361
|
geometryColumnSql = "SELECT * FROM (\n SELECT\n \"f_table_schema\" \"table_schema\",\n \"f_table_name\" \"table_name\",\n \"f_geometry_column\" \"column_name\",\n \"srid\",\n \"type\"\n FROM \"geometry_columns\"\n ) AS _\n WHERE (" + tablesCondition + ") AND \"column_name\" = '" + tableColumn.name + "' AND \"table_name\" = '" + dbTable["table_name"] + "'";
|
|
2277
2362
|
return [4 /*yield*/, this.query(geometryColumnSql)];
|
|
2278
|
-
case
|
|
2363
|
+
case 4:
|
|
2279
2364
|
results = _a.sent();
|
|
2280
2365
|
tableColumn.spatialFeatureType = results[0].type;
|
|
2281
2366
|
tableColumn.srid = results[0].srid;
|
|
2282
|
-
_a.label =
|
|
2283
|
-
case
|
|
2284
|
-
if (!(tableColumn.type === "geography")) return [3 /*break*/,
|
|
2367
|
+
_a.label = 5;
|
|
2368
|
+
case 5:
|
|
2369
|
+
if (!(tableColumn.type === "geography")) return [3 /*break*/, 7];
|
|
2285
2370
|
geographyColumnSql = "SELECT * FROM (\n SELECT\n \"f_table_schema\" \"table_schema\",\n \"f_table_name\" \"table_name\",\n \"f_geography_column\" \"column_name\",\n \"srid\",\n \"type\"\n FROM \"geography_columns\"\n ) AS _\n WHERE (" + tablesCondition + ") AND \"column_name\" = '" + tableColumn.name + "' AND \"table_name\" = '" + dbTable["table_name"] + "'";
|
|
2286
2371
|
return [4 /*yield*/, this.query(geographyColumnSql)];
|
|
2287
|
-
case
|
|
2372
|
+
case 6:
|
|
2288
2373
|
results = _a.sent();
|
|
2289
2374
|
tableColumn.spatialFeatureType = results[0].type;
|
|
2290
2375
|
tableColumn.srid = results[0].srid;
|
|
2291
|
-
_a.label =
|
|
2292
|
-
case
|
|
2376
|
+
_a.label = 7;
|
|
2377
|
+
case 7:
|
|
2293
2378
|
// check only columns that have length property
|
|
2294
|
-
if (this.driver.withLengthColumnTypes.indexOf(tableColumn.type) !== -1
|
|
2295
|
-
|
|
2296
|
-
|
|
2379
|
+
if (this.driver.withLengthColumnTypes.indexOf(tableColumn.type) !== -1) {
|
|
2380
|
+
if (tableColumn.isArray) {
|
|
2381
|
+
match = /\((\d+)\)/.exec(dbColumn["format_type"]);
|
|
2382
|
+
length_1 = match ? match[1] : undefined;
|
|
2383
|
+
}
|
|
2384
|
+
else if (dbColumn["character_maximum_length"]) {
|
|
2385
|
+
length_1 = dbColumn["character_maximum_length"].toString();
|
|
2386
|
+
}
|
|
2387
|
+
if (length_1) {
|
|
2388
|
+
tableColumn.length = !this.isDefaultColumnLength(table, tableColumn, length_1) ? length_1 : "";
|
|
2389
|
+
}
|
|
2297
2390
|
}
|
|
2298
2391
|
tableColumn.isNullable = dbColumn["is_nullable"] === "YES";
|
|
2299
2392
|
tableColumn.isPrimary = !!columnConstraints.find(function (constraint) { return constraint["constraint_type"] === "PRIMARY"; });
|
|
@@ -2315,9 +2408,10 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2315
2408
|
}
|
|
2316
2409
|
else {
|
|
2317
2410
|
tableColumn.default = dbColumn["column_default"].replace(/::.*/, "");
|
|
2411
|
+
tableColumn.default = tableColumn.default.replace(/^(-?\d+)$/, "'$1'");
|
|
2318
2412
|
}
|
|
2319
2413
|
}
|
|
2320
|
-
tableColumn.comment = ""
|
|
2414
|
+
tableColumn.comment = dbColumn["description"] ? dbColumn["description"] : undefined;
|
|
2321
2415
|
if (dbColumn["character_set_name"])
|
|
2322
2416
|
tableColumn.charset = dbColumn["character_set_name"];
|
|
2323
2417
|
if (dbColumn["collation_name"])
|
|
@@ -2470,6 +2564,9 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2470
2564
|
sql += ", CONSTRAINT \"" + primaryKeyName + "\" PRIMARY KEY (" + columnNames + ")";
|
|
2471
2565
|
}
|
|
2472
2566
|
sql += ")";
|
|
2567
|
+
table.columns
|
|
2568
|
+
.filter(function (it) { return it.comment; })
|
|
2569
|
+
.forEach(function (it) { return sql += "; COMMENT ON COLUMN " + _this.escapePath(table) + ".\"" + it.name + "\" IS " + _this.escapeComment(it.comment); });
|
|
2473
2570
|
return new Query(sql);
|
|
2474
2571
|
};
|
|
2475
2572
|
/**
|
|
@@ -2732,31 +2829,26 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2732
2829
|
schema = table.name.split(".")[0];
|
|
2733
2830
|
tableName = table.name.split(".")[1];
|
|
2734
2831
|
}
|
|
2832
|
+
var seqName = tableName + "_" + columnName + "_seq";
|
|
2833
|
+
if (seqName.length > this.connection.driver.maxAliasLength) // note doesn't yet handle corner cases where .length differs from number of UTF-8 bytes
|
|
2834
|
+
seqName = tableName.substring(0, 29) + "_" + columnName.substring(0, Math.max(29, 63 - tableName.length - 5)) + "_seq";
|
|
2735
2835
|
if (schema && schema !== currentSchema && !skipSchema) {
|
|
2736
|
-
return disableEscape ? schema + "." +
|
|
2836
|
+
return disableEscape ? schema + "." + seqName : "\"" + schema + "\".\"" + seqName + "\"";
|
|
2737
2837
|
}
|
|
2738
2838
|
else {
|
|
2739
|
-
return disableEscape ?
|
|
2839
|
+
return disableEscape ? "" + seqName : "\"" + seqName + "\"";
|
|
2740
2840
|
}
|
|
2741
2841
|
};
|
|
2742
2842
|
/**
|
|
2743
2843
|
* Builds ENUM type name from given table and column.
|
|
2744
2844
|
*/
|
|
2745
|
-
PostgresQueryRunner.prototype.buildEnumName = function (table,
|
|
2845
|
+
PostgresQueryRunner.prototype.buildEnumName = function (table, column, withSchema, disableEscape, toOld) {
|
|
2746
2846
|
if (withSchema === void 0) { withSchema = true; }
|
|
2747
|
-
/**
|
|
2748
|
-
* If enumName is specified in column options then use it instead
|
|
2749
|
-
*/
|
|
2750
|
-
if (columnOrName instanceof TableColumn && columnOrName.enumName) {
|
|
2751
|
-
var enumName_1 = columnOrName.enumName;
|
|
2752
|
-
if (toOld)
|
|
2753
|
-
enumName_1 = enumName_1 + "_old";
|
|
2754
|
-
return disableEscape ? enumName_1 : "\"" + enumName_1 + "\"";
|
|
2755
|
-
}
|
|
2756
|
-
var columnName = columnOrName instanceof TableColumn ? columnOrName.name : columnOrName;
|
|
2757
2847
|
var schema = table.name.indexOf(".") === -1 ? this.driver.options.schema : table.name.split(".")[0];
|
|
2758
2848
|
var tableName = table.name.indexOf(".") === -1 ? table.name : table.name.split(".")[1];
|
|
2759
|
-
var enumName =
|
|
2849
|
+
var enumName = column.enumName ? column.enumName : tableName + "_" + column.name.toLowerCase() + "_enum";
|
|
2850
|
+
if (schema && withSchema)
|
|
2851
|
+
enumName = schema + "." + enumName;
|
|
2760
2852
|
if (toOld)
|
|
2761
2853
|
enumName = enumName + "_old";
|
|
2762
2854
|
return enumName.split(".").map(function (i) {
|
|
@@ -2765,7 +2857,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2765
2857
|
};
|
|
2766
2858
|
PostgresQueryRunner.prototype.getEnumTypeName = function (table, column) {
|
|
2767
2859
|
return __awaiter(this, void 0, void 0, function () {
|
|
2768
|
-
var currentSchemaQuery, currentSchema, _a, schema, name, result;
|
|
2860
|
+
var currentSchemaQuery, currentSchema, _a, schema, name, result, udtName;
|
|
2769
2861
|
return __generator(this, function (_b) {
|
|
2770
2862
|
switch (_b.label) {
|
|
2771
2863
|
case 0: return [4 /*yield*/, this.query("SELECT * FROM current_schema()")];
|
|
@@ -2781,14 +2873,30 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2781
2873
|
("FROM \"information_schema\".\"columns\" WHERE \"table_schema\" = '" + schema + "' AND \"table_name\" = '" + name + "' AND \"column_name\"='" + column.name + "'"))];
|
|
2782
2874
|
case 2:
|
|
2783
2875
|
result = _b.sent();
|
|
2876
|
+
udtName = result[0]["udt_name"];
|
|
2877
|
+
if (udtName.indexOf("_") === 0) {
|
|
2878
|
+
udtName = udtName.substr(1, udtName.length);
|
|
2879
|
+
}
|
|
2784
2880
|
return [2 /*return*/, {
|
|
2785
2881
|
enumTypeSchema: result[0]["udt_schema"],
|
|
2786
|
-
enumTypeName:
|
|
2882
|
+
enumTypeName: udtName
|
|
2787
2883
|
}];
|
|
2788
2884
|
}
|
|
2789
2885
|
});
|
|
2790
2886
|
});
|
|
2791
2887
|
};
|
|
2888
|
+
/**
|
|
2889
|
+
* Escapes a given comment so it's safe to include in a query.
|
|
2890
|
+
*/
|
|
2891
|
+
PostgresQueryRunner.prototype.escapeComment = function (comment) {
|
|
2892
|
+
if (!comment || comment.length === 0) {
|
|
2893
|
+
return "NULL";
|
|
2894
|
+
}
|
|
2895
|
+
comment = comment
|
|
2896
|
+
.replace(/'/g, "''")
|
|
2897
|
+
.replace("\0", ""); // Null bytes aren't allowed in comments
|
|
2898
|
+
return "'" + comment + "'";
|
|
2899
|
+
};
|
|
2792
2900
|
/**
|
|
2793
2901
|
* Escapes given table or view path.
|
|
2794
2902
|
*/
|
|
@@ -2850,6 +2958,22 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2850
2958
|
c += " DEFAULT " + this.driver.uuidGenerator;
|
|
2851
2959
|
return c;
|
|
2852
2960
|
};
|
|
2961
|
+
/**
|
|
2962
|
+
* Checks if the PostgreSQL server has support for partitioned tables
|
|
2963
|
+
*/
|
|
2964
|
+
PostgresQueryRunner.prototype.hasSupportForPartitionedTables = function () {
|
|
2965
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
2966
|
+
var result;
|
|
2967
|
+
return __generator(this, function (_a) {
|
|
2968
|
+
switch (_a.label) {
|
|
2969
|
+
case 0: return [4 /*yield*/, this.query("SELECT TRUE FROM information_schema.columns WHERE table_name = 'pg_class' and column_name = 'relispartition'")];
|
|
2970
|
+
case 1:
|
|
2971
|
+
result = _a.sent();
|
|
2972
|
+
return [2 /*return*/, result.length ? true : false];
|
|
2973
|
+
}
|
|
2974
|
+
});
|
|
2975
|
+
});
|
|
2976
|
+
};
|
|
2853
2977
|
return PostgresQueryRunner;
|
|
2854
2978
|
}(BaseQueryRunner));
|
|
2855
2979
|
export { PostgresQueryRunner };
|