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
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PostgresQueryRunner = void 0;
|
|
3
4
|
var tslib_1 = require("tslib");
|
|
4
5
|
var QueryFailedError_1 = require("../../error/QueryFailedError");
|
|
5
6
|
var QueryRunnerAlreadyReleasedError_1 = require("../../error/QueryRunnerAlreadyReleasedError");
|
|
@@ -17,6 +18,7 @@ var View_1 = require("../../schema-builder/view/View");
|
|
|
17
18
|
var Broadcaster_1 = require("../../subscriber/Broadcaster");
|
|
18
19
|
var OrmUtils_1 = require("../../util/OrmUtils");
|
|
19
20
|
var Query_1 = require("../Query");
|
|
21
|
+
var BroadcasterResult_1 = require("../../subscriber/BroadcasterResult");
|
|
20
22
|
/**
|
|
21
23
|
* Runs queries on a single postgres database connection.
|
|
22
24
|
*/
|
|
@@ -97,21 +99,38 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
97
99
|
*/
|
|
98
100
|
PostgresQueryRunner.prototype.startTransaction = function (isolationLevel) {
|
|
99
101
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
102
|
+
var beforeBroadcastResult, afterBroadcastResult;
|
|
100
103
|
return tslib_1.__generator(this, function (_a) {
|
|
101
104
|
switch (_a.label) {
|
|
102
105
|
case 0:
|
|
103
106
|
if (this.isTransactionActive)
|
|
104
107
|
throw new TransactionAlreadyStartedError_1.TransactionAlreadyStartedError();
|
|
108
|
+
beforeBroadcastResult = new BroadcasterResult_1.BroadcasterResult();
|
|
109
|
+
this.broadcaster.broadcastBeforeTransactionStartEvent(beforeBroadcastResult);
|
|
110
|
+
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
111
|
+
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
112
|
+
case 1:
|
|
113
|
+
_a.sent();
|
|
114
|
+
_a.label = 2;
|
|
115
|
+
case 2:
|
|
105
116
|
this.isTransactionActive = true;
|
|
106
117
|
return [4 /*yield*/, this.query("START TRANSACTION")];
|
|
107
|
-
case
|
|
118
|
+
case 3:
|
|
108
119
|
_a.sent();
|
|
109
|
-
if (!isolationLevel) return [3 /*break*/,
|
|
120
|
+
if (!isolationLevel) return [3 /*break*/, 5];
|
|
110
121
|
return [4 /*yield*/, this.query("SET TRANSACTION ISOLATION LEVEL " + isolationLevel)];
|
|
111
|
-
case
|
|
122
|
+
case 4:
|
|
112
123
|
_a.sent();
|
|
113
|
-
_a.label =
|
|
114
|
-
case
|
|
124
|
+
_a.label = 5;
|
|
125
|
+
case 5:
|
|
126
|
+
afterBroadcastResult = new BroadcasterResult_1.BroadcasterResult();
|
|
127
|
+
this.broadcaster.broadcastAfterTransactionStartEvent(afterBroadcastResult);
|
|
128
|
+
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 7];
|
|
129
|
+
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
130
|
+
case 6:
|
|
131
|
+
_a.sent();
|
|
132
|
+
_a.label = 7;
|
|
133
|
+
case 7: return [2 /*return*/];
|
|
115
134
|
}
|
|
116
135
|
});
|
|
117
136
|
});
|
|
@@ -122,16 +141,31 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
122
141
|
*/
|
|
123
142
|
PostgresQueryRunner.prototype.commitTransaction = function () {
|
|
124
143
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
144
|
+
var beforeBroadcastResult, afterBroadcastResult;
|
|
125
145
|
return tslib_1.__generator(this, function (_a) {
|
|
126
146
|
switch (_a.label) {
|
|
127
147
|
case 0:
|
|
128
148
|
if (!this.isTransactionActive)
|
|
129
149
|
throw new TransactionNotStartedError_1.TransactionNotStartedError();
|
|
130
|
-
|
|
150
|
+
beforeBroadcastResult = new BroadcasterResult_1.BroadcasterResult();
|
|
151
|
+
this.broadcaster.broadcastBeforeTransactionCommitEvent(beforeBroadcastResult);
|
|
152
|
+
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
153
|
+
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
131
154
|
case 1:
|
|
155
|
+
_a.sent();
|
|
156
|
+
_a.label = 2;
|
|
157
|
+
case 2: return [4 /*yield*/, this.query("COMMIT")];
|
|
158
|
+
case 3:
|
|
132
159
|
_a.sent();
|
|
133
160
|
this.isTransactionActive = false;
|
|
134
|
-
|
|
161
|
+
afterBroadcastResult = new BroadcasterResult_1.BroadcasterResult();
|
|
162
|
+
this.broadcaster.broadcastAfterTransactionCommitEvent(afterBroadcastResult);
|
|
163
|
+
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 5];
|
|
164
|
+
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
165
|
+
case 4:
|
|
166
|
+
_a.sent();
|
|
167
|
+
_a.label = 5;
|
|
168
|
+
case 5: return [2 /*return*/];
|
|
135
169
|
}
|
|
136
170
|
});
|
|
137
171
|
});
|
|
@@ -142,16 +176,31 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
142
176
|
*/
|
|
143
177
|
PostgresQueryRunner.prototype.rollbackTransaction = function () {
|
|
144
178
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
179
|
+
var beforeBroadcastResult, afterBroadcastResult;
|
|
145
180
|
return tslib_1.__generator(this, function (_a) {
|
|
146
181
|
switch (_a.label) {
|
|
147
182
|
case 0:
|
|
148
183
|
if (!this.isTransactionActive)
|
|
149
184
|
throw new TransactionNotStartedError_1.TransactionNotStartedError();
|
|
150
|
-
|
|
185
|
+
beforeBroadcastResult = new BroadcasterResult_1.BroadcasterResult();
|
|
186
|
+
this.broadcaster.broadcastBeforeTransactionRollbackEvent(beforeBroadcastResult);
|
|
187
|
+
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
188
|
+
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
151
189
|
case 1:
|
|
190
|
+
_a.sent();
|
|
191
|
+
_a.label = 2;
|
|
192
|
+
case 2: return [4 /*yield*/, this.query("ROLLBACK")];
|
|
193
|
+
case 3:
|
|
152
194
|
_a.sent();
|
|
153
195
|
this.isTransactionActive = false;
|
|
154
|
-
|
|
196
|
+
afterBroadcastResult = new BroadcasterResult_1.BroadcasterResult();
|
|
197
|
+
this.broadcaster.broadcastAfterTransactionRollbackEvent(afterBroadcastResult);
|
|
198
|
+
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 5];
|
|
199
|
+
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
200
|
+
case 4:
|
|
201
|
+
_a.sent();
|
|
202
|
+
_a.label = 5;
|
|
203
|
+
case 5: return [2 /*return*/];
|
|
155
204
|
}
|
|
156
205
|
});
|
|
157
206
|
});
|
|
@@ -160,53 +209,47 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
160
209
|
* Executes a given SQL query.
|
|
161
210
|
*/
|
|
162
211
|
PostgresQueryRunner.prototype.query = function (query, parameters) {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
|
|
166
|
-
return new Promise(function (ok, fail) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
167
|
-
var databaseConnection, queryStartTime_1, err_1;
|
|
168
|
-
var _this = this;
|
|
212
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
213
|
+
var databaseConnection, queryStartTime, result, maxQueryExecutionTime, queryEndTime, queryExecutionTime, err_1;
|
|
169
214
|
return tslib_1.__generator(this, function (_a) {
|
|
170
215
|
switch (_a.label) {
|
|
171
216
|
case 0:
|
|
172
|
-
|
|
217
|
+
if (this.isReleased)
|
|
218
|
+
throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
|
|
173
219
|
return [4 /*yield*/, this.connect()];
|
|
174
220
|
case 1:
|
|
175
221
|
databaseConnection = _a.sent();
|
|
176
222
|
this.driver.connection.logger.logQuery(query, parameters, this);
|
|
177
|
-
|
|
178
|
-
databaseConnection.query(query, parameters, function (err, result) {
|
|
179
|
-
// log slow queries if maxQueryExecution time is set
|
|
180
|
-
var maxQueryExecutionTime = _this.driver.connection.options.maxQueryExecutionTime;
|
|
181
|
-
var queryEndTime = +new Date();
|
|
182
|
-
var queryExecutionTime = queryEndTime - queryStartTime_1;
|
|
183
|
-
if (maxQueryExecutionTime && queryExecutionTime > maxQueryExecutionTime)
|
|
184
|
-
_this.driver.connection.logger.logQuerySlow(queryExecutionTime, query, parameters, _this);
|
|
185
|
-
if (err) {
|
|
186
|
-
_this.driver.connection.logger.logQueryError(err, query, parameters, _this);
|
|
187
|
-
fail(new QueryFailedError_1.QueryFailedError(query, parameters, err));
|
|
188
|
-
}
|
|
189
|
-
else {
|
|
190
|
-
switch (result.command) {
|
|
191
|
-
case "DELETE":
|
|
192
|
-
case "UPDATE":
|
|
193
|
-
// for UPDATE and DELETE query additionally return number of affected rows
|
|
194
|
-
ok([result.rows, result.rowCount]);
|
|
195
|
-
break;
|
|
196
|
-
default:
|
|
197
|
-
ok(result.rows);
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
});
|
|
201
|
-
return [3 /*break*/, 3];
|
|
223
|
+
_a.label = 2;
|
|
202
224
|
case 2:
|
|
225
|
+
_a.trys.push([2, 4, , 5]);
|
|
226
|
+
queryStartTime = +new Date();
|
|
227
|
+
return [4 /*yield*/, databaseConnection.query(query, parameters)];
|
|
228
|
+
case 3:
|
|
229
|
+
result = _a.sent();
|
|
230
|
+
maxQueryExecutionTime = this.driver.connection.options.maxQueryExecutionTime;
|
|
231
|
+
queryEndTime = +new Date();
|
|
232
|
+
queryExecutionTime = queryEndTime - queryStartTime;
|
|
233
|
+
if (maxQueryExecutionTime && queryExecutionTime > maxQueryExecutionTime)
|
|
234
|
+
this.driver.connection.logger.logQuerySlow(queryExecutionTime, query, parameters, this);
|
|
235
|
+
switch (result.command) {
|
|
236
|
+
case "DELETE":
|
|
237
|
+
case "UPDATE":
|
|
238
|
+
// for UPDATE and DELETE query additionally return number of affected rows
|
|
239
|
+
return [2 /*return*/, [result.rows, result.rowCount]];
|
|
240
|
+
break;
|
|
241
|
+
default:
|
|
242
|
+
return [2 /*return*/, result.rows];
|
|
243
|
+
}
|
|
244
|
+
return [3 /*break*/, 5];
|
|
245
|
+
case 4:
|
|
203
246
|
err_1 = _a.sent();
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
case
|
|
247
|
+
this.driver.connection.logger.logQueryError(err_1, query, parameters, this);
|
|
248
|
+
throw new QueryFailedError_1.QueryFailedError(query, parameters, err_1);
|
|
249
|
+
case 5: return [2 /*return*/];
|
|
207
250
|
}
|
|
208
251
|
});
|
|
209
|
-
});
|
|
252
|
+
});
|
|
210
253
|
};
|
|
211
254
|
/**
|
|
212
255
|
* Returns raw data stream.
|
|
@@ -401,43 +444,58 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
401
444
|
if (createForeignKeys === void 0) { createForeignKeys = true; }
|
|
402
445
|
if (createIndices === void 0) { createIndices = true; }
|
|
403
446
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
404
|
-
var isTableExist, upQueries, downQueries;
|
|
447
|
+
var isTableExist, upQueries, downQueries, enumColumns, createdEnumTypes, enumColumns_1, enumColumns_1_1, column, hasEnum, enumName, e_1_1;
|
|
448
|
+
var e_1, _a;
|
|
405
449
|
var _this = this;
|
|
406
|
-
return tslib_1.__generator(this, function (
|
|
407
|
-
switch (
|
|
450
|
+
return tslib_1.__generator(this, function (_b) {
|
|
451
|
+
switch (_b.label) {
|
|
408
452
|
case 0:
|
|
409
453
|
if (!ifNotExist) return [3 /*break*/, 2];
|
|
410
454
|
return [4 /*yield*/, this.hasTable(table)];
|
|
411
455
|
case 1:
|
|
412
|
-
isTableExist =
|
|
456
|
+
isTableExist = _b.sent();
|
|
413
457
|
if (isTableExist)
|
|
414
458
|
return [2 /*return*/, Promise.resolve()];
|
|
415
|
-
|
|
459
|
+
_b.label = 2;
|
|
416
460
|
case 2:
|
|
417
461
|
upQueries = [];
|
|
418
462
|
downQueries = [];
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
.map(function (column) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
423
|
-
var hasEnum;
|
|
424
|
-
return tslib_1.__generator(this, function (_a) {
|
|
425
|
-
switch (_a.label) {
|
|
426
|
-
case 0: return [4 /*yield*/, this.hasEnumType(table, column)];
|
|
427
|
-
case 1:
|
|
428
|
-
hasEnum = _a.sent();
|
|
429
|
-
// TODO: Should also check if values of existing type matches expected ones
|
|
430
|
-
if (!hasEnum) {
|
|
431
|
-
upQueries.push(this.createEnumTypeSql(table, column));
|
|
432
|
-
downQueries.push(this.dropEnumTypeSql(table, column));
|
|
433
|
-
}
|
|
434
|
-
return [2 /*return*/, Promise.resolve()];
|
|
435
|
-
}
|
|
436
|
-
});
|
|
437
|
-
}); }))];
|
|
463
|
+
enumColumns = table.columns.filter(function (column) { return column.type === "enum" || column.type === "simple-enum"; });
|
|
464
|
+
createdEnumTypes = [];
|
|
465
|
+
_b.label = 3;
|
|
438
466
|
case 3:
|
|
439
|
-
|
|
440
|
-
|
|
467
|
+
_b.trys.push([3, 8, 9, 10]);
|
|
468
|
+
enumColumns_1 = tslib_1.__values(enumColumns), enumColumns_1_1 = enumColumns_1.next();
|
|
469
|
+
_b.label = 4;
|
|
470
|
+
case 4:
|
|
471
|
+
if (!!enumColumns_1_1.done) return [3 /*break*/, 7];
|
|
472
|
+
column = enumColumns_1_1.value;
|
|
473
|
+
return [4 /*yield*/, this.hasEnumType(table, column)];
|
|
474
|
+
case 5:
|
|
475
|
+
hasEnum = _b.sent();
|
|
476
|
+
enumName = this.buildEnumName(table, column);
|
|
477
|
+
// if enum with the same "enumName" is defined more then once, me must prevent double creation
|
|
478
|
+
if (!hasEnum && createdEnumTypes.indexOf(enumName) === -1) {
|
|
479
|
+
createdEnumTypes.push(enumName);
|
|
480
|
+
upQueries.push(this.createEnumTypeSql(table, column, enumName));
|
|
481
|
+
downQueries.push(this.dropEnumTypeSql(table, column, enumName));
|
|
482
|
+
}
|
|
483
|
+
_b.label = 6;
|
|
484
|
+
case 6:
|
|
485
|
+
enumColumns_1_1 = enumColumns_1.next();
|
|
486
|
+
return [3 /*break*/, 4];
|
|
487
|
+
case 7: return [3 /*break*/, 10];
|
|
488
|
+
case 8:
|
|
489
|
+
e_1_1 = _b.sent();
|
|
490
|
+
e_1 = { error: e_1_1 };
|
|
491
|
+
return [3 /*break*/, 10];
|
|
492
|
+
case 9:
|
|
493
|
+
try {
|
|
494
|
+
if (enumColumns_1_1 && !enumColumns_1_1.done && (_a = enumColumns_1.return)) _a.call(enumColumns_1);
|
|
495
|
+
}
|
|
496
|
+
finally { if (e_1) throw e_1.error; }
|
|
497
|
+
return [7 /*endfinally*/];
|
|
498
|
+
case 10:
|
|
441
499
|
upQueries.push(this.createTableSql(table, createForeignKeys));
|
|
442
500
|
downQueries.push(this.dropTableSql(table));
|
|
443
501
|
// if createForeignKeys is true, we must drop created foreign keys in down query.
|
|
@@ -454,8 +512,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
454
512
|
});
|
|
455
513
|
}
|
|
456
514
|
return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
457
|
-
case
|
|
458
|
-
|
|
515
|
+
case 11:
|
|
516
|
+
_b.sent();
|
|
459
517
|
return [2 /*return*/];
|
|
460
518
|
}
|
|
461
519
|
});
|
|
@@ -573,8 +631,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
573
631
|
*/
|
|
574
632
|
PostgresQueryRunner.prototype.renameTable = function (oldTableOrName, newTableName) {
|
|
575
633
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
576
|
-
var upQueries, downQueries, oldTable, _a, newTable, oldTableName, schemaName, columnNames, oldPkName, newPkName, enumColumns,
|
|
577
|
-
var
|
|
634
|
+
var upQueries, downQueries, oldTable, _a, newTable, oldTableName, schemaName, columnNames, oldPkName, newPkName, enumColumns, enumColumns_2, enumColumns_2_1, column, oldEnumType, e_2_1;
|
|
635
|
+
var e_2, _b;
|
|
578
636
|
var _this = this;
|
|
579
637
|
return tslib_1.__generator(this, function (_c) {
|
|
580
638
|
switch (_c.label) {
|
|
@@ -604,6 +662,17 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
604
662
|
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(newTable) + " RENAME CONSTRAINT \"" + oldPkName + "\" TO \"" + newPkName + "\""));
|
|
605
663
|
downQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(newTable) + " RENAME CONSTRAINT \"" + newPkName + "\" TO \"" + oldPkName + "\""));
|
|
606
664
|
}
|
|
665
|
+
// rename sequences
|
|
666
|
+
newTable.columns.map(function (col) {
|
|
667
|
+
if (col.isGenerated && col.generationStrategy === "increment") {
|
|
668
|
+
var seqName = _this.buildSequenceName(oldTable, col.name, undefined, true, true);
|
|
669
|
+
var newSeqName = _this.buildSequenceName(newTable, col.name, undefined, true, true);
|
|
670
|
+
var up = schemaName ? "ALTER SEQUENCE \"" + schemaName + "\".\"" + seqName + "\" RENAME TO \"" + newSeqName + "\"" : "ALTER SEQUENCE \"" + seqName + "\" RENAME TO \"" + newSeqName + "\"";
|
|
671
|
+
var down = schemaName ? "ALTER SEQUENCE \"" + schemaName + "\".\"" + newSeqName + "\" RENAME TO \"" + seqName + "\"" : "ALTER SEQUENCE \"" + newSeqName + "\" RENAME TO \"" + seqName + "\"";
|
|
672
|
+
upQueries.push(new Query_1.Query(up));
|
|
673
|
+
downQueries.push(new Query_1.Query(down));
|
|
674
|
+
}
|
|
675
|
+
});
|
|
607
676
|
// rename unique constraints
|
|
608
677
|
newTable.uniques.forEach(function (unique) {
|
|
609
678
|
// build new constraint name
|
|
@@ -641,11 +710,11 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
641
710
|
_c.label = 4;
|
|
642
711
|
case 4:
|
|
643
712
|
_c.trys.push([4, 9, 10, 11]);
|
|
644
|
-
|
|
713
|
+
enumColumns_2 = tslib_1.__values(enumColumns), enumColumns_2_1 = enumColumns_2.next();
|
|
645
714
|
_c.label = 5;
|
|
646
715
|
case 5:
|
|
647
|
-
if (!!
|
|
648
|
-
column =
|
|
716
|
+
if (!!enumColumns_2_1.done) return [3 /*break*/, 8];
|
|
717
|
+
column = enumColumns_2_1.value;
|
|
649
718
|
return [4 /*yield*/, this.getEnumTypeName(oldTable, column)];
|
|
650
719
|
case 6:
|
|
651
720
|
oldEnumType = _c.sent();
|
|
@@ -653,18 +722,18 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
653
722
|
downQueries.push(new Query_1.Query("ALTER TYPE " + this.buildEnumName(newTable, column) + " RENAME TO \"" + oldEnumType.enumTypeName + "\""));
|
|
654
723
|
_c.label = 7;
|
|
655
724
|
case 7:
|
|
656
|
-
|
|
725
|
+
enumColumns_2_1 = enumColumns_2.next();
|
|
657
726
|
return [3 /*break*/, 5];
|
|
658
727
|
case 8: return [3 /*break*/, 11];
|
|
659
728
|
case 9:
|
|
660
|
-
|
|
661
|
-
|
|
729
|
+
e_2_1 = _c.sent();
|
|
730
|
+
e_2 = { error: e_2_1 };
|
|
662
731
|
return [3 /*break*/, 11];
|
|
663
732
|
case 10:
|
|
664
733
|
try {
|
|
665
|
-
if (
|
|
734
|
+
if (enumColumns_2_1 && !enumColumns_2_1.done && (_b = enumColumns_2.return)) _b.call(enumColumns_2);
|
|
666
735
|
}
|
|
667
|
-
finally { if (
|
|
736
|
+
finally { if (e_2) throw e_2.error; }
|
|
668
737
|
return [7 /*endfinally*/];
|
|
669
738
|
case 11: return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
670
739
|
case 12:
|
|
@@ -738,6 +807,11 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
738
807
|
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ADD CONSTRAINT \"" + uniqueConstraint.name + "\" UNIQUE (\"" + column.name + "\")"));
|
|
739
808
|
downQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " DROP CONSTRAINT \"" + uniqueConstraint.name + "\""));
|
|
740
809
|
}
|
|
810
|
+
// create column's comment
|
|
811
|
+
if (column.comment) {
|
|
812
|
+
upQueries.push(new Query_1.Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + column.name + "\" IS " + this.escapeComment(column.comment)));
|
|
813
|
+
downQueries.push(new Query_1.Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + column.name + "\" IS " + this.escapeComment(column.comment)));
|
|
814
|
+
}
|
|
741
815
|
return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
742
816
|
case 6:
|
|
743
817
|
_b.sent();
|
|
@@ -753,8 +827,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
753
827
|
*/
|
|
754
828
|
PostgresQueryRunner.prototype.addColumns = function (tableOrName, columns) {
|
|
755
829
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
756
|
-
var columns_1, columns_1_1, column,
|
|
757
|
-
var
|
|
830
|
+
var columns_1, columns_1_1, column, e_3_1;
|
|
831
|
+
var e_3, _a;
|
|
758
832
|
return tslib_1.__generator(this, function (_b) {
|
|
759
833
|
switch (_b.label) {
|
|
760
834
|
case 0:
|
|
@@ -773,14 +847,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
773
847
|
return [3 /*break*/, 1];
|
|
774
848
|
case 4: return [3 /*break*/, 7];
|
|
775
849
|
case 5:
|
|
776
|
-
|
|
777
|
-
|
|
850
|
+
e_3_1 = _b.sent();
|
|
851
|
+
e_3 = { error: e_3_1 };
|
|
778
852
|
return [3 /*break*/, 7];
|
|
779
853
|
case 6:
|
|
780
854
|
try {
|
|
781
855
|
if (columns_1_1 && !columns_1_1.done && (_a = columns_1.return)) _a.call(columns_1);
|
|
782
856
|
}
|
|
783
|
-
finally { if (
|
|
857
|
+
finally { if (e_3) throw e_3.error; }
|
|
784
858
|
return [7 /*endfinally*/];
|
|
785
859
|
case 7: return [2 /*return*/];
|
|
786
860
|
}
|
|
@@ -825,7 +899,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
825
899
|
*/
|
|
826
900
|
PostgresQueryRunner.prototype.changeColumn = function (tableOrName, oldTableColumnOrName, newColumn) {
|
|
827
901
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
828
|
-
var table, _a, clonedTable, upQueries, downQueries, oldColumn, oldEnumType, primaryColumns, columnNames, oldPkName, newPkName, schema, seqName, newSeqName, up, down, oldTableColumn,
|
|
902
|
+
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;
|
|
829
903
|
var _this = this;
|
|
830
904
|
return tslib_1.__generator(this, function (_b) {
|
|
831
905
|
switch (_b.label) {
|
|
@@ -842,12 +916,13 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
842
916
|
clonedTable = table.clone();
|
|
843
917
|
upQueries = [];
|
|
844
918
|
downQueries = [];
|
|
919
|
+
defaultValueChanged = false;
|
|
845
920
|
oldColumn = oldTableColumnOrName instanceof TableColumn_1.TableColumn
|
|
846
921
|
? oldTableColumnOrName
|
|
847
922
|
: table.columns.find(function (column) { return column.name === oldTableColumnOrName; });
|
|
848
923
|
if (!oldColumn)
|
|
849
924
|
throw new Error("Column \"" + oldTableColumnOrName + "\" was not found in the \"" + table.name + "\" table.");
|
|
850
|
-
if (!(oldColumn.type !== newColumn.type || oldColumn.length !== newColumn.length)) return [3 /*break*/, 6];
|
|
925
|
+
if (!(oldColumn.type !== newColumn.type || oldColumn.length !== newColumn.length || newColumn.isArray !== oldColumn.isArray)) return [3 /*break*/, 6];
|
|
851
926
|
// To avoid data conversion, we just recreate column
|
|
852
927
|
return [4 /*yield*/, this.dropColumn(table, oldColumn)];
|
|
853
928
|
case 4:
|
|
@@ -858,7 +933,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
858
933
|
_b.sent();
|
|
859
934
|
// update cloned table
|
|
860
935
|
clonedTable = table.clone();
|
|
861
|
-
return [3 /*break*/,
|
|
936
|
+
return [3 /*break*/, 10];
|
|
862
937
|
case 6:
|
|
863
938
|
if (!(oldColumn.name !== newColumn.name)) return [3 /*break*/, 9];
|
|
864
939
|
// rename column
|
|
@@ -942,42 +1017,42 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
942
1017
|
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + this.driver.createFullType(newColumn)));
|
|
943
1018
|
downQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + this.driver.createFullType(oldColumn)));
|
|
944
1019
|
}
|
|
945
|
-
if (
|
|
1020
|
+
if ((newColumn.type === "enum" || newColumn.type === "simple-enum")
|
|
946
1021
|
&& (oldColumn.type === "enum" || oldColumn.type === "simple-enum")
|
|
947
|
-
&& !OrmUtils_1.OrmUtils.isArraysEqual(newColumn.enum, oldColumn.enum)
|
|
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
|
-
|
|
973
|
-
|
|
974
|
-
|
|
1022
|
+
&& (!OrmUtils_1.OrmUtils.isArraysEqual(newColumn.enum, oldColumn.enum) || newColumn.enumName !== oldColumn.enumName)) {
|
|
1023
|
+
arraySuffix = newColumn.isArray ? "[]" : "";
|
|
1024
|
+
newEnumName = this.buildEnumName(table, newColumn);
|
|
1025
|
+
oldEnumName = this.buildEnumName(table, oldColumn);
|
|
1026
|
+
oldEnumNameWithoutSchema = this.buildEnumName(table, oldColumn, false);
|
|
1027
|
+
oldEnumNameWithSchema_old = this.buildEnumName(table, oldColumn, true, false, true);
|
|
1028
|
+
oldEnumNameWithoutSchema_old = this.buildEnumName(table, oldColumn, false, false, true);
|
|
1029
|
+
// rename old ENUM
|
|
1030
|
+
upQueries.push(new Query_1.Query("ALTER TYPE " + oldEnumName + " RENAME TO " + oldEnumNameWithoutSchema_old));
|
|
1031
|
+
downQueries.push(new Query_1.Query("ALTER TYPE " + oldEnumNameWithSchema_old + " RENAME TO " + oldEnumNameWithoutSchema));
|
|
1032
|
+
// create new ENUM
|
|
1033
|
+
upQueries.push(this.createEnumTypeSql(table, newColumn, newEnumName));
|
|
1034
|
+
downQueries.push(this.dropEnumTypeSql(table, newColumn, newEnumName));
|
|
1035
|
+
// if column have default value, we must drop it to avoid issues with type casting
|
|
1036
|
+
if (oldColumn.default !== null && oldColumn.default !== undefined) {
|
|
1037
|
+
// mark default as changed to prevent double update
|
|
1038
|
+
defaultValueChanged = true;
|
|
1039
|
+
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + oldColumn.name + "\" DROP DEFAULT"));
|
|
1040
|
+
downQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + oldColumn.name + "\" SET DEFAULT " + oldColumn.default));
|
|
1041
|
+
}
|
|
1042
|
+
upType = "" + newEnumName + arraySuffix + " USING \"" + newColumn.name + "\"::\"text\"::" + newEnumName + arraySuffix;
|
|
1043
|
+
downType = "" + oldEnumNameWithSchema_old + arraySuffix + " USING \"" + newColumn.name + "\"::\"text\"::" + oldEnumNameWithSchema_old + arraySuffix;
|
|
1044
|
+
// update column to use new type
|
|
1045
|
+
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + upType));
|
|
1046
|
+
downQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + downType));
|
|
1047
|
+
// restore column default or create new one
|
|
1048
|
+
if (newColumn.default !== null && newColumn.default !== undefined) {
|
|
1049
|
+
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" SET DEFAULT " + newColumn.default));
|
|
1050
|
+
downQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" DROP DEFAULT"));
|
|
1051
|
+
}
|
|
1052
|
+
// remove old ENUM
|
|
1053
|
+
upQueries.push(this.dropEnumTypeSql(table, oldColumn, oldEnumNameWithSchema_old));
|
|
1054
|
+
downQueries.push(this.createEnumTypeSql(table, oldColumn, oldEnumNameWithSchema_old));
|
|
975
1055
|
}
|
|
976
|
-
// remove old ENUM
|
|
977
|
-
upQueries.push(this.dropEnumTypeSql(table, newColumn, oldEnumName));
|
|
978
|
-
downQueries.push(this.createEnumTypeSql(table, oldColumn, oldEnumName));
|
|
979
|
-
_b.label = 11;
|
|
980
|
-
case 11:
|
|
981
1056
|
if (oldColumn.isNullable !== newColumn.isNullable) {
|
|
982
1057
|
if (newColumn.isNullable) {
|
|
983
1058
|
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + oldColumn.name + "\" DROP NOT NULL"));
|
|
@@ -989,8 +1064,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
989
1064
|
}
|
|
990
1065
|
}
|
|
991
1066
|
if (oldColumn.comment !== newColumn.comment) {
|
|
992
|
-
upQueries.push(new Query_1.Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + oldColumn.name + "\" IS
|
|
993
|
-
downQueries.push(new Query_1.Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + newColumn.name + "\" IS
|
|
1067
|
+
upQueries.push(new Query_1.Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + oldColumn.name + "\" IS " + this.escapeComment(newColumn.comment)));
|
|
1068
|
+
downQueries.push(new Query_1.Query("COMMENT ON COLUMN " + this.escapePath(table) + ".\"" + newColumn.name + "\" IS " + this.escapeComment(oldColumn.comment)));
|
|
994
1069
|
}
|
|
995
1070
|
if (newColumn.isPrimary !== oldColumn.isPrimary) {
|
|
996
1071
|
primaryColumns = clonedTable.primaryColumns;
|
|
@@ -1057,7 +1132,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1057
1132
|
downQueries.push(new Query_1.Query("CREATE SEQUENCE " + this.buildSequenceName(table, newColumn) + " OWNED BY " + this.escapePath(table) + ".\"" + newColumn.name + "\""));
|
|
1058
1133
|
}
|
|
1059
1134
|
}
|
|
1060
|
-
|
|
1135
|
+
// the default might have changed when the enum changed
|
|
1136
|
+
if (newColumn.default !== oldColumn.default && !defaultValueChanged) {
|
|
1061
1137
|
if (newColumn.default !== null && newColumn.default !== undefined) {
|
|
1062
1138
|
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" SET DEFAULT " + newColumn.default));
|
|
1063
1139
|
if (oldColumn.default !== null && oldColumn.default !== undefined) {
|
|
@@ -1076,9 +1152,9 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1076
1152
|
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + this.driver.createFullType(newColumn)));
|
|
1077
1153
|
downQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(table) + " ALTER COLUMN \"" + newColumn.name + "\" TYPE " + this.driver.createFullType(oldColumn)));
|
|
1078
1154
|
}
|
|
1079
|
-
_b.label =
|
|
1080
|
-
case
|
|
1081
|
-
case
|
|
1155
|
+
_b.label = 10;
|
|
1156
|
+
case 10: return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
1157
|
+
case 11:
|
|
1082
1158
|
_b.sent();
|
|
1083
1159
|
this.replaceCachedTable(table, clonedTable);
|
|
1084
1160
|
return [2 /*return*/];
|
|
@@ -1091,8 +1167,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1091
1167
|
*/
|
|
1092
1168
|
PostgresQueryRunner.prototype.changeColumns = function (tableOrName, changedColumns) {
|
|
1093
1169
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1094
|
-
var changedColumns_1, changedColumns_1_1, _a, oldColumn, newColumn,
|
|
1095
|
-
var
|
|
1170
|
+
var changedColumns_1, changedColumns_1_1, _a, oldColumn, newColumn, e_4_1;
|
|
1171
|
+
var e_4, _b;
|
|
1096
1172
|
return tslib_1.__generator(this, function (_c) {
|
|
1097
1173
|
switch (_c.label) {
|
|
1098
1174
|
case 0:
|
|
@@ -1111,14 +1187,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1111
1187
|
return [3 /*break*/, 1];
|
|
1112
1188
|
case 4: return [3 /*break*/, 7];
|
|
1113
1189
|
case 5:
|
|
1114
|
-
|
|
1115
|
-
|
|
1190
|
+
e_4_1 = _c.sent();
|
|
1191
|
+
e_4 = { error: e_4_1 };
|
|
1116
1192
|
return [3 /*break*/, 7];
|
|
1117
1193
|
case 6:
|
|
1118
1194
|
try {
|
|
1119
1195
|
if (changedColumns_1_1 && !changedColumns_1_1.done && (_b = changedColumns_1.return)) _b.call(changedColumns_1);
|
|
1120
1196
|
}
|
|
1121
|
-
finally { if (
|
|
1197
|
+
finally { if (e_4) throw e_4.error; }
|
|
1122
1198
|
return [7 /*endfinally*/];
|
|
1123
1199
|
case 7: return [2 /*return*/];
|
|
1124
1200
|
}
|
|
@@ -1212,8 +1288,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1212
1288
|
*/
|
|
1213
1289
|
PostgresQueryRunner.prototype.dropColumns = function (tableOrName, columns) {
|
|
1214
1290
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1215
|
-
var columns_2, columns_2_1, column,
|
|
1216
|
-
var
|
|
1291
|
+
var columns_2, columns_2_1, column, e_5_1;
|
|
1292
|
+
var e_5, _a;
|
|
1217
1293
|
return tslib_1.__generator(this, function (_b) {
|
|
1218
1294
|
switch (_b.label) {
|
|
1219
1295
|
case 0:
|
|
@@ -1232,14 +1308,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1232
1308
|
return [3 /*break*/, 1];
|
|
1233
1309
|
case 4: return [3 /*break*/, 7];
|
|
1234
1310
|
case 5:
|
|
1235
|
-
|
|
1236
|
-
|
|
1311
|
+
e_5_1 = _b.sent();
|
|
1312
|
+
e_5 = { error: e_5_1 };
|
|
1237
1313
|
return [3 /*break*/, 7];
|
|
1238
1314
|
case 6:
|
|
1239
1315
|
try {
|
|
1240
1316
|
if (columns_2_1 && !columns_2_1.done && (_a = columns_2.return)) _a.call(columns_2);
|
|
1241
1317
|
}
|
|
1242
|
-
finally { if (
|
|
1318
|
+
finally { if (e_5) throw e_5.error; }
|
|
1243
1319
|
return [7 /*endfinally*/];
|
|
1244
1320
|
case 7: return [2 /*return*/];
|
|
1245
1321
|
}
|
|
@@ -1395,8 +1471,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1395
1471
|
*/
|
|
1396
1472
|
PostgresQueryRunner.prototype.createUniqueConstraints = function (tableOrName, uniqueConstraints) {
|
|
1397
1473
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1398
|
-
var uniqueConstraints_1, uniqueConstraints_1_1, uniqueConstraint,
|
|
1399
|
-
var
|
|
1474
|
+
var uniqueConstraints_1, uniqueConstraints_1_1, uniqueConstraint, e_6_1;
|
|
1475
|
+
var e_6, _a;
|
|
1400
1476
|
return tslib_1.__generator(this, function (_b) {
|
|
1401
1477
|
switch (_b.label) {
|
|
1402
1478
|
case 0:
|
|
@@ -1415,14 +1491,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1415
1491
|
return [3 /*break*/, 1];
|
|
1416
1492
|
case 4: return [3 /*break*/, 7];
|
|
1417
1493
|
case 5:
|
|
1418
|
-
|
|
1419
|
-
|
|
1494
|
+
e_6_1 = _b.sent();
|
|
1495
|
+
e_6 = { error: e_6_1 };
|
|
1420
1496
|
return [3 /*break*/, 7];
|
|
1421
1497
|
case 6:
|
|
1422
1498
|
try {
|
|
1423
1499
|
if (uniqueConstraints_1_1 && !uniqueConstraints_1_1.done && (_a = uniqueConstraints_1.return)) _a.call(uniqueConstraints_1);
|
|
1424
1500
|
}
|
|
1425
|
-
finally { if (
|
|
1501
|
+
finally { if (e_6) throw e_6.error; }
|
|
1426
1502
|
return [7 /*endfinally*/];
|
|
1427
1503
|
case 7: return [2 /*return*/];
|
|
1428
1504
|
}
|
|
@@ -1466,8 +1542,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1466
1542
|
*/
|
|
1467
1543
|
PostgresQueryRunner.prototype.dropUniqueConstraints = function (tableOrName, uniqueConstraints) {
|
|
1468
1544
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1469
|
-
var uniqueConstraints_2, uniqueConstraints_2_1, uniqueConstraint,
|
|
1470
|
-
var
|
|
1545
|
+
var uniqueConstraints_2, uniqueConstraints_2_1, uniqueConstraint, e_7_1;
|
|
1546
|
+
var e_7, _a;
|
|
1471
1547
|
return tslib_1.__generator(this, function (_b) {
|
|
1472
1548
|
switch (_b.label) {
|
|
1473
1549
|
case 0:
|
|
@@ -1486,14 +1562,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1486
1562
|
return [3 /*break*/, 1];
|
|
1487
1563
|
case 4: return [3 /*break*/, 7];
|
|
1488
1564
|
case 5:
|
|
1489
|
-
|
|
1490
|
-
|
|
1565
|
+
e_7_1 = _b.sent();
|
|
1566
|
+
e_7 = { error: e_7_1 };
|
|
1491
1567
|
return [3 /*break*/, 7];
|
|
1492
1568
|
case 6:
|
|
1493
1569
|
try {
|
|
1494
1570
|
if (uniqueConstraints_2_1 && !uniqueConstraints_2_1.done && (_a = uniqueConstraints_2.return)) _a.call(uniqueConstraints_2);
|
|
1495
1571
|
}
|
|
1496
|
-
finally { if (
|
|
1572
|
+
finally { if (e_7) throw e_7.error; }
|
|
1497
1573
|
return [7 /*endfinally*/];
|
|
1498
1574
|
case 7: return [2 /*return*/];
|
|
1499
1575
|
}
|
|
@@ -1741,8 +1817,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1741
1817
|
*/
|
|
1742
1818
|
PostgresQueryRunner.prototype.createForeignKeys = function (tableOrName, foreignKeys) {
|
|
1743
1819
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1744
|
-
var foreignKeys_1, foreignKeys_1_1, foreignKey,
|
|
1745
|
-
var
|
|
1820
|
+
var foreignKeys_1, foreignKeys_1_1, foreignKey, e_8_1;
|
|
1821
|
+
var e_8, _a;
|
|
1746
1822
|
return tslib_1.__generator(this, function (_b) {
|
|
1747
1823
|
switch (_b.label) {
|
|
1748
1824
|
case 0:
|
|
@@ -1761,14 +1837,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1761
1837
|
return [3 /*break*/, 1];
|
|
1762
1838
|
case 4: return [3 /*break*/, 7];
|
|
1763
1839
|
case 5:
|
|
1764
|
-
|
|
1765
|
-
|
|
1840
|
+
e_8_1 = _b.sent();
|
|
1841
|
+
e_8 = { error: e_8_1 };
|
|
1766
1842
|
return [3 /*break*/, 7];
|
|
1767
1843
|
case 6:
|
|
1768
1844
|
try {
|
|
1769
1845
|
if (foreignKeys_1_1 && !foreignKeys_1_1.done && (_a = foreignKeys_1.return)) _a.call(foreignKeys_1);
|
|
1770
1846
|
}
|
|
1771
|
-
finally { if (
|
|
1847
|
+
finally { if (e_8) throw e_8.error; }
|
|
1772
1848
|
return [7 /*endfinally*/];
|
|
1773
1849
|
case 7: return [2 /*return*/];
|
|
1774
1850
|
}
|
|
@@ -1812,8 +1888,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1812
1888
|
*/
|
|
1813
1889
|
PostgresQueryRunner.prototype.dropForeignKeys = function (tableOrName, foreignKeys) {
|
|
1814
1890
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1815
|
-
var foreignKeys_2, foreignKeys_2_1, foreignKey,
|
|
1816
|
-
var
|
|
1891
|
+
var foreignKeys_2, foreignKeys_2_1, foreignKey, e_9_1;
|
|
1892
|
+
var e_9, _a;
|
|
1817
1893
|
return tslib_1.__generator(this, function (_b) {
|
|
1818
1894
|
switch (_b.label) {
|
|
1819
1895
|
case 0:
|
|
@@ -1832,14 +1908,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1832
1908
|
return [3 /*break*/, 1];
|
|
1833
1909
|
case 4: return [3 /*break*/, 7];
|
|
1834
1910
|
case 5:
|
|
1835
|
-
|
|
1836
|
-
|
|
1911
|
+
e_9_1 = _b.sent();
|
|
1912
|
+
e_9 = { error: e_9_1 };
|
|
1837
1913
|
return [3 /*break*/, 7];
|
|
1838
1914
|
case 6:
|
|
1839
1915
|
try {
|
|
1840
1916
|
if (foreignKeys_2_1 && !foreignKeys_2_1.done && (_a = foreignKeys_2.return)) _a.call(foreignKeys_2);
|
|
1841
1917
|
}
|
|
1842
|
-
finally { if (
|
|
1918
|
+
finally { if (e_9) throw e_9.error; }
|
|
1843
1919
|
return [7 /*endfinally*/];
|
|
1844
1920
|
case 7: return [2 /*return*/];
|
|
1845
1921
|
}
|
|
@@ -1883,8 +1959,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1883
1959
|
*/
|
|
1884
1960
|
PostgresQueryRunner.prototype.createIndices = function (tableOrName, indices) {
|
|
1885
1961
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1886
|
-
var indices_1, indices_1_1, index,
|
|
1887
|
-
var
|
|
1962
|
+
var indices_1, indices_1_1, index, e_10_1;
|
|
1963
|
+
var e_10, _a;
|
|
1888
1964
|
return tslib_1.__generator(this, function (_b) {
|
|
1889
1965
|
switch (_b.label) {
|
|
1890
1966
|
case 0:
|
|
@@ -1903,14 +1979,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1903
1979
|
return [3 /*break*/, 1];
|
|
1904
1980
|
case 4: return [3 /*break*/, 7];
|
|
1905
1981
|
case 5:
|
|
1906
|
-
|
|
1907
|
-
|
|
1982
|
+
e_10_1 = _b.sent();
|
|
1983
|
+
e_10 = { error: e_10_1 };
|
|
1908
1984
|
return [3 /*break*/, 7];
|
|
1909
1985
|
case 6:
|
|
1910
1986
|
try {
|
|
1911
1987
|
if (indices_1_1 && !indices_1_1.done && (_a = indices_1.return)) _a.call(indices_1);
|
|
1912
1988
|
}
|
|
1913
|
-
finally { if (
|
|
1989
|
+
finally { if (e_10) throw e_10.error; }
|
|
1914
1990
|
return [7 /*endfinally*/];
|
|
1915
1991
|
case 7: return [2 /*return*/];
|
|
1916
1992
|
}
|
|
@@ -1954,8 +2030,8 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1954
2030
|
*/
|
|
1955
2031
|
PostgresQueryRunner.prototype.dropIndices = function (tableOrName, indices) {
|
|
1956
2032
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
1957
|
-
var indices_2, indices_2_1, index,
|
|
1958
|
-
var
|
|
2033
|
+
var indices_2, indices_2_1, index, e_11_1;
|
|
2034
|
+
var e_11, _a;
|
|
1959
2035
|
return tslib_1.__generator(this, function (_b) {
|
|
1960
2036
|
switch (_b.label) {
|
|
1961
2037
|
case 0:
|
|
@@ -1974,14 +2050,14 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
1974
2050
|
return [3 /*break*/, 1];
|
|
1975
2051
|
case 4: return [3 /*break*/, 7];
|
|
1976
2052
|
case 5:
|
|
1977
|
-
|
|
1978
|
-
|
|
2053
|
+
e_11_1 = _b.sent();
|
|
2054
|
+
e_11 = { error: e_11_1 };
|
|
1979
2055
|
return [3 /*break*/, 7];
|
|
1980
2056
|
case 6:
|
|
1981
2057
|
try {
|
|
1982
2058
|
if (indices_2_1 && !indices_2_1.done && (_a = indices_2.return)) _a.call(indices_2);
|
|
1983
2059
|
}
|
|
1984
|
-
finally { if (
|
|
2060
|
+
finally { if (e_11) throw e_11.error; }
|
|
1985
2061
|
return [7 /*endfinally*/];
|
|
1986
2062
|
case 7: return [2 /*return*/];
|
|
1987
2063
|
}
|
|
@@ -2119,7 +2195,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2119
2195
|
*/
|
|
2120
2196
|
PostgresQueryRunner.prototype.loadTables = function (tableNames) {
|
|
2121
2197
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
2122
|
-
var currentSchemaQuery, currentSchema, tablesCondition, tablesSql, columnsSql, constraintsCondition, constraintsSql, indicesSql, foreignKeysCondition, foreignKeysSql, _a, dbTables, dbColumns, dbConstraints, dbIndices, dbForeignKeys;
|
|
2198
|
+
var currentSchemaQuery, currentSchema, tablesCondition, tablesSql, columnsSql, constraintsCondition, constraintsSql, indicesSql, foreignKeysCondition, hasRelispartitionColumn, isPartitionCondition, foreignKeysSql, _a, dbTables, dbColumns, dbConstraints, dbIndices, dbForeignKeys;
|
|
2123
2199
|
var _this = this;
|
|
2124
2200
|
return tslib_1.__generator(this, function (_b) {
|
|
2125
2201
|
switch (_b.label) {
|
|
@@ -2140,7 +2216,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2140
2216
|
return "(\"table_schema\" = '" + schema + "' AND \"table_name\" = '" + name + "')";
|
|
2141
2217
|
}).join(" OR ");
|
|
2142
2218
|
tablesSql = "SELECT * FROM \"information_schema\".\"tables\" WHERE " + tablesCondition;
|
|
2143
|
-
columnsSql = "SELECT
|
|
2219
|
+
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;
|
|
2144
2220
|
constraintsCondition = tableNames.map(function (tableName) {
|
|
2145
2221
|
var _a = tslib_1.__read(tableName.split("."), 2), schema = _a[0], name = _a[1];
|
|
2146
2222
|
if (!name) {
|
|
@@ -2156,7 +2232,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2156
2232
|
"INNER JOIN \"pg_class\" \"t\" ON \"t\".\"oid\" = \"cnst\".\"conrelid\" " +
|
|
2157
2233
|
"INNER JOIN \"pg_namespace\" \"ns\" ON \"ns\".\"oid\" = \"cnst\".\"connamespace\" " +
|
|
2158
2234
|
"LEFT JOIN \"pg_attribute\" \"a\" ON \"a\".\"attrelid\" = \"cnst\".\"conrelid\" AND \"a\".\"attnum\" = ANY (\"cnst\".\"conkey\") " +
|
|
2159
|
-
("WHERE \"t\".\"relkind\"
|
|
2235
|
+
("WHERE \"t\".\"relkind\" IN ('r', 'p') AND (" + constraintsCondition + ")");
|
|
2160
2236
|
indicesSql = "SELECT \"ns\".\"nspname\" AS \"table_schema\", \"t\".\"relname\" AS \"table_name\", \"i\".\"relname\" AS \"constraint_name\", \"a\".\"attname\" AS \"column_name\", " +
|
|
2161
2237
|
"CASE \"ix\".\"indisunique\" WHEN 't' THEN 'TRUE' ELSE'FALSE' END AS \"is_unique\", pg_get_expr(\"ix\".\"indpred\", \"ix\".\"indrelid\") AS \"condition\", " +
|
|
2162
2238
|
"\"types\".\"typname\" AS \"type_name\" " +
|
|
@@ -2167,7 +2243,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2167
2243
|
"INNER JOIN \"pg_class\" \"i\" ON \"i\".\"oid\" = \"ix\".\"indexrelid\" " +
|
|
2168
2244
|
"INNER JOIN \"pg_type\" \"types\" ON \"types\".\"oid\" = \"a\".\"atttypid\" " +
|
|
2169
2245
|
"LEFT JOIN \"pg_constraint\" \"cnst\" ON \"cnst\".\"conname\" = \"i\".\"relname\" " +
|
|
2170
|
-
("WHERE \"t\".\"relkind\"
|
|
2246
|
+
("WHERE \"t\".\"relkind\" IN ('r', 'p') AND \"cnst\".\"contype\" IS NULL AND (" + constraintsCondition + ")");
|
|
2171
2247
|
foreignKeysCondition = tableNames.map(function (tableName) {
|
|
2172
2248
|
var _a = tslib_1.__read(tableName.split("."), 2), schema = _a[0], name = _a[1];
|
|
2173
2249
|
if (!name) {
|
|
@@ -2176,6 +2252,10 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2176
2252
|
}
|
|
2177
2253
|
return "(\"ns\".\"nspname\" = '" + schema + "' AND \"cl\".\"relname\" = '" + name + "')";
|
|
2178
2254
|
}).join(" OR ");
|
|
2255
|
+
return [4 /*yield*/, this.hasSupportForPartitionedTables()];
|
|
2256
|
+
case 2:
|
|
2257
|
+
hasRelispartitionColumn = _b.sent();
|
|
2258
|
+
isPartitionCondition = hasRelispartitionColumn ? " AND \"cl\".\"relispartition\" = 'f'" : "";
|
|
2179
2259
|
foreignKeysSql = "SELECT \"con\".\"conname\" AS \"constraint_name\", \"con\".\"nspname\" AS \"table_schema\", \"con\".\"relname\" AS \"table_name\", \"att2\".\"attname\" AS \"column_name\", " +
|
|
2180
2260
|
"\"ns\".\"nspname\" AS \"referenced_table_schema\", \"cl\".\"relname\" AS \"referenced_table_name\", \"att\".\"attname\" AS \"referenced_column_name\", \"con\".\"confdeltype\" AS \"on_delete\", " +
|
|
2181
2261
|
"\"con\".\"confupdtype\" AS \"on_update\", \"con\".\"condeferrable\" AS \"deferrable\", \"con\".\"condeferred\" AS \"deferred\" " +
|
|
@@ -2191,7 +2271,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2191
2271
|
("WHERE \"con1\".\"contype\" = 'f' AND (" + foreignKeysCondition + ") ") +
|
|
2192
2272
|
") \"con\" " +
|
|
2193
2273
|
"INNER JOIN \"pg_attribute\" \"att\" ON \"att\".\"attrelid\" = \"con\".\"confrelid\" AND \"att\".\"attnum\" = \"con\".\"child\" " +
|
|
2194
|
-
"INNER JOIN \"pg_class\" \"cl\" ON \"cl\".\"oid\" = \"con\".\"confrelid\" " +
|
|
2274
|
+
("INNER JOIN \"pg_class\" \"cl\" ON \"cl\".\"oid\" = \"con\".\"confrelid\" " + isPartitionCondition) +
|
|
2195
2275
|
"INNER JOIN \"pg_namespace\" \"ns\" ON \"cl\".\"relnamespace\" = \"ns\".\"oid\" " +
|
|
2196
2276
|
"INNER JOIN \"pg_attribute\" \"att2\" ON \"att2\".\"attrelid\" = \"con\".\"conrelid\" AND \"att2\".\"attnum\" = \"con\".\"parent\"";
|
|
2197
2277
|
return [4 /*yield*/, Promise.all([
|
|
@@ -2201,7 +2281,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2201
2281
|
this.query(indicesSql),
|
|
2202
2282
|
this.query(foreignKeysSql),
|
|
2203
2283
|
])];
|
|
2204
|
-
case
|
|
2284
|
+
case 3:
|
|
2205
2285
|
_a = tslib_1.__read.apply(void 0, [_b.sent(), 5]), dbTables = _a[0], dbColumns = _a[1], dbConstraints = _a[2], dbIndices = _a[3], dbForeignKeys = _a[4];
|
|
2206
2286
|
// if tables were not found in the db, no need to proceed
|
|
2207
2287
|
if (!dbTables.length)
|
|
@@ -2223,7 +2303,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2223
2303
|
return [4 /*yield*/, Promise.all(dbColumns
|
|
2224
2304
|
.filter(function (dbColumn) { return _this.driver.buildTableName(dbColumn["table_name"], dbColumn["table_schema"]) === tableFullName; })
|
|
2225
2305
|
.map(function (dbColumn) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
2226
|
-
var columnConstraints, tableColumn, type, sql, results, geometryColumnSql, results, geographyColumnSql, results, length, uniqueConstraint, isConstraintComposite;
|
|
2306
|
+
var columnConstraints, tableColumn, type, enumTypeName, builtEnumName, sql, results, geometryColumnSql, results, geographyColumnSql, results, length, match, uniqueConstraint, isConstraintComposite;
|
|
2227
2307
|
var _this = this;
|
|
2228
2308
|
return tslib_1.__generator(this, function (_a) {
|
|
2229
2309
|
switch (_a.label) {
|
|
@@ -2262,40 +2342,55 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2262
2342
|
|| tableColumn.type === "timestamp with time zone") {
|
|
2263
2343
|
tableColumn.precision = !this.isDefaultColumnPrecision(table, tableColumn, dbColumn["datetime_precision"]) ? dbColumn["datetime_precision"] : undefined;
|
|
2264
2344
|
}
|
|
2265
|
-
if (!(tableColumn.type.indexOf("enum") !== -1)) return [3 /*break*/,
|
|
2345
|
+
if (!(tableColumn.type.indexOf("enum") !== -1)) return [3 /*break*/, 3];
|
|
2346
|
+
return [4 /*yield*/, this.getEnumTypeName(table, tableColumn)];
|
|
2347
|
+
case 1:
|
|
2348
|
+
enumTypeName = (_a.sent()).enumTypeName;
|
|
2349
|
+
builtEnumName = this.buildEnumName(table, tableColumn, false, true);
|
|
2350
|
+
if (builtEnumName !== enumTypeName)
|
|
2351
|
+
tableColumn.enumName = enumTypeName;
|
|
2266
2352
|
tableColumn.type = "enum";
|
|
2267
2353
|
sql = "SELECT \"e\".\"enumlabel\" AS \"value\" FROM \"pg_enum\" \"e\" " +
|
|
2268
2354
|
"INNER JOIN \"pg_type\" \"t\" ON \"t\".\"oid\" = \"e\".\"enumtypid\" " +
|
|
2269
2355
|
"INNER JOIN \"pg_namespace\" \"n\" ON \"n\".\"oid\" = \"t\".\"typnamespace\" " +
|
|
2270
|
-
("WHERE \"n\".\"nspname\" = '" + dbTable["table_schema"] + "' AND \"t\".\"typname\" = '" + this.buildEnumName(table, tableColumn
|
|
2356
|
+
("WHERE \"n\".\"nspname\" = '" + dbTable["table_schema"] + "' AND \"t\".\"typname\" = '" + this.buildEnumName(table, tableColumn, false, true) + "'");
|
|
2271
2357
|
return [4 /*yield*/, this.query(sql)];
|
|
2272
|
-
case
|
|
2358
|
+
case 2:
|
|
2273
2359
|
results = _a.sent();
|
|
2274
2360
|
tableColumn.enum = results.map(function (result) { return result["value"]; });
|
|
2275
|
-
_a.label =
|
|
2276
|
-
case
|
|
2277
|
-
if (!(tableColumn.type === "geometry")) return [3 /*break*/,
|
|
2361
|
+
_a.label = 3;
|
|
2362
|
+
case 3:
|
|
2363
|
+
if (!(tableColumn.type === "geometry")) return [3 /*break*/, 5];
|
|
2278
2364
|
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"] + "'";
|
|
2279
2365
|
return [4 /*yield*/, this.query(geometryColumnSql)];
|
|
2280
|
-
case
|
|
2366
|
+
case 4:
|
|
2281
2367
|
results = _a.sent();
|
|
2282
2368
|
tableColumn.spatialFeatureType = results[0].type;
|
|
2283
2369
|
tableColumn.srid = results[0].srid;
|
|
2284
|
-
_a.label =
|
|
2285
|
-
case
|
|
2286
|
-
if (!(tableColumn.type === "geography")) return [3 /*break*/,
|
|
2370
|
+
_a.label = 5;
|
|
2371
|
+
case 5:
|
|
2372
|
+
if (!(tableColumn.type === "geography")) return [3 /*break*/, 7];
|
|
2287
2373
|
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"] + "'";
|
|
2288
2374
|
return [4 /*yield*/, this.query(geographyColumnSql)];
|
|
2289
|
-
case
|
|
2375
|
+
case 6:
|
|
2290
2376
|
results = _a.sent();
|
|
2291
2377
|
tableColumn.spatialFeatureType = results[0].type;
|
|
2292
2378
|
tableColumn.srid = results[0].srid;
|
|
2293
|
-
_a.label =
|
|
2294
|
-
case
|
|
2379
|
+
_a.label = 7;
|
|
2380
|
+
case 7:
|
|
2295
2381
|
// check only columns that have length property
|
|
2296
|
-
if (this.driver.withLengthColumnTypes.indexOf(tableColumn.type) !== -1
|
|
2297
|
-
length =
|
|
2298
|
-
|
|
2382
|
+
if (this.driver.withLengthColumnTypes.indexOf(tableColumn.type) !== -1) {
|
|
2383
|
+
length = void 0;
|
|
2384
|
+
if (tableColumn.isArray) {
|
|
2385
|
+
match = /\((\d+)\)/.exec(dbColumn["format_type"]);
|
|
2386
|
+
length = match ? match[1] : undefined;
|
|
2387
|
+
}
|
|
2388
|
+
else if (dbColumn["character_maximum_length"]) {
|
|
2389
|
+
length = dbColumn["character_maximum_length"].toString();
|
|
2390
|
+
}
|
|
2391
|
+
if (length) {
|
|
2392
|
+
tableColumn.length = !this.isDefaultColumnLength(table, tableColumn, length) ? length : "";
|
|
2393
|
+
}
|
|
2299
2394
|
}
|
|
2300
2395
|
tableColumn.isNullable = dbColumn["is_nullable"] === "YES";
|
|
2301
2396
|
tableColumn.isPrimary = !!columnConstraints.find(function (constraint) { return constraint["constraint_type"] === "PRIMARY"; });
|
|
@@ -2317,9 +2412,10 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2317
2412
|
}
|
|
2318
2413
|
else {
|
|
2319
2414
|
tableColumn.default = dbColumn["column_default"].replace(/::.*/, "");
|
|
2415
|
+
tableColumn.default = tableColumn.default.replace(/^(-?\d+)$/, "'$1'");
|
|
2320
2416
|
}
|
|
2321
2417
|
}
|
|
2322
|
-
tableColumn.comment = ""
|
|
2418
|
+
tableColumn.comment = dbColumn["description"] ? dbColumn["description"] : undefined;
|
|
2323
2419
|
if (dbColumn["character_set_name"])
|
|
2324
2420
|
tableColumn.charset = dbColumn["character_set_name"];
|
|
2325
2421
|
if (dbColumn["collation_name"])
|
|
@@ -2472,6 +2568,9 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2472
2568
|
sql += ", CONSTRAINT \"" + primaryKeyName + "\" PRIMARY KEY (" + columnNames + ")";
|
|
2473
2569
|
}
|
|
2474
2570
|
sql += ")";
|
|
2571
|
+
table.columns
|
|
2572
|
+
.filter(function (it) { return it.comment; })
|
|
2573
|
+
.forEach(function (it) { return sql += "; COMMENT ON COLUMN " + _this.escapePath(table) + ".\"" + it.name + "\" IS " + _this.escapeComment(it.comment); });
|
|
2475
2574
|
return new Query_1.Query(sql);
|
|
2476
2575
|
};
|
|
2477
2576
|
/**
|
|
@@ -2734,31 +2833,26 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2734
2833
|
schema = table.name.split(".")[0];
|
|
2735
2834
|
tableName = table.name.split(".")[1];
|
|
2736
2835
|
}
|
|
2836
|
+
var seqName = tableName + "_" + columnName + "_seq";
|
|
2837
|
+
if (seqName.length > this.connection.driver.maxAliasLength) // note doesn't yet handle corner cases where .length differs from number of UTF-8 bytes
|
|
2838
|
+
seqName = tableName.substring(0, 29) + "_" + columnName.substring(0, Math.max(29, 63 - tableName.length - 5)) + "_seq";
|
|
2737
2839
|
if (schema && schema !== currentSchema && !skipSchema) {
|
|
2738
|
-
return disableEscape ? schema + "." +
|
|
2840
|
+
return disableEscape ? schema + "." + seqName : "\"" + schema + "\".\"" + seqName + "\"";
|
|
2739
2841
|
}
|
|
2740
2842
|
else {
|
|
2741
|
-
return disableEscape ?
|
|
2843
|
+
return disableEscape ? "" + seqName : "\"" + seqName + "\"";
|
|
2742
2844
|
}
|
|
2743
2845
|
};
|
|
2744
2846
|
/**
|
|
2745
2847
|
* Builds ENUM type name from given table and column.
|
|
2746
2848
|
*/
|
|
2747
|
-
PostgresQueryRunner.prototype.buildEnumName = function (table,
|
|
2849
|
+
PostgresQueryRunner.prototype.buildEnumName = function (table, column, withSchema, disableEscape, toOld) {
|
|
2748
2850
|
if (withSchema === void 0) { withSchema = true; }
|
|
2749
|
-
/**
|
|
2750
|
-
* If enumName is specified in column options then use it instead
|
|
2751
|
-
*/
|
|
2752
|
-
if (columnOrName instanceof TableColumn_1.TableColumn && columnOrName.enumName) {
|
|
2753
|
-
var enumName_1 = columnOrName.enumName;
|
|
2754
|
-
if (toOld)
|
|
2755
|
-
enumName_1 = enumName_1 + "_old";
|
|
2756
|
-
return disableEscape ? enumName_1 : "\"" + enumName_1 + "\"";
|
|
2757
|
-
}
|
|
2758
|
-
var columnName = columnOrName instanceof TableColumn_1.TableColumn ? columnOrName.name : columnOrName;
|
|
2759
2851
|
var schema = table.name.indexOf(".") === -1 ? this.driver.options.schema : table.name.split(".")[0];
|
|
2760
2852
|
var tableName = table.name.indexOf(".") === -1 ? table.name : table.name.split(".")[1];
|
|
2761
|
-
var enumName =
|
|
2853
|
+
var enumName = column.enumName ? column.enumName : tableName + "_" + column.name.toLowerCase() + "_enum";
|
|
2854
|
+
if (schema && withSchema)
|
|
2855
|
+
enumName = schema + "." + enumName;
|
|
2762
2856
|
if (toOld)
|
|
2763
2857
|
enumName = enumName + "_old";
|
|
2764
2858
|
return enumName.split(".").map(function (i) {
|
|
@@ -2767,7 +2861,7 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2767
2861
|
};
|
|
2768
2862
|
PostgresQueryRunner.prototype.getEnumTypeName = function (table, column) {
|
|
2769
2863
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
2770
|
-
var currentSchemaQuery, currentSchema, _a, schema, name, result;
|
|
2864
|
+
var currentSchemaQuery, currentSchema, _a, schema, name, result, udtName;
|
|
2771
2865
|
return tslib_1.__generator(this, function (_b) {
|
|
2772
2866
|
switch (_b.label) {
|
|
2773
2867
|
case 0: return [4 /*yield*/, this.query("SELECT * FROM current_schema()")];
|
|
@@ -2783,14 +2877,30 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2783
2877
|
("FROM \"information_schema\".\"columns\" WHERE \"table_schema\" = '" + schema + "' AND \"table_name\" = '" + name + "' AND \"column_name\"='" + column.name + "'"))];
|
|
2784
2878
|
case 2:
|
|
2785
2879
|
result = _b.sent();
|
|
2880
|
+
udtName = result[0]["udt_name"];
|
|
2881
|
+
if (udtName.indexOf("_") === 0) {
|
|
2882
|
+
udtName = udtName.substr(1, udtName.length);
|
|
2883
|
+
}
|
|
2786
2884
|
return [2 /*return*/, {
|
|
2787
2885
|
enumTypeSchema: result[0]["udt_schema"],
|
|
2788
|
-
enumTypeName:
|
|
2886
|
+
enumTypeName: udtName
|
|
2789
2887
|
}];
|
|
2790
2888
|
}
|
|
2791
2889
|
});
|
|
2792
2890
|
});
|
|
2793
2891
|
};
|
|
2892
|
+
/**
|
|
2893
|
+
* Escapes a given comment so it's safe to include in a query.
|
|
2894
|
+
*/
|
|
2895
|
+
PostgresQueryRunner.prototype.escapeComment = function (comment) {
|
|
2896
|
+
if (!comment || comment.length === 0) {
|
|
2897
|
+
return "NULL";
|
|
2898
|
+
}
|
|
2899
|
+
comment = comment
|
|
2900
|
+
.replace(/'/g, "''")
|
|
2901
|
+
.replace("\0", ""); // Null bytes aren't allowed in comments
|
|
2902
|
+
return "'" + comment + "'";
|
|
2903
|
+
};
|
|
2794
2904
|
/**
|
|
2795
2905
|
* Escapes given table or view path.
|
|
2796
2906
|
*/
|
|
@@ -2852,6 +2962,22 @@ var PostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
2852
2962
|
c += " DEFAULT " + this.driver.uuidGenerator;
|
|
2853
2963
|
return c;
|
|
2854
2964
|
};
|
|
2965
|
+
/**
|
|
2966
|
+
* Checks if the PostgreSQL server has support for partitioned tables
|
|
2967
|
+
*/
|
|
2968
|
+
PostgresQueryRunner.prototype.hasSupportForPartitionedTables = function () {
|
|
2969
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
2970
|
+
var result;
|
|
2971
|
+
return tslib_1.__generator(this, function (_a) {
|
|
2972
|
+
switch (_a.label) {
|
|
2973
|
+
case 0: return [4 /*yield*/, this.query("SELECT TRUE FROM information_schema.columns WHERE table_name = 'pg_class' and column_name = 'relispartition'")];
|
|
2974
|
+
case 1:
|
|
2975
|
+
result = _a.sent();
|
|
2976
|
+
return [2 /*return*/, result.length ? true : false];
|
|
2977
|
+
}
|
|
2978
|
+
});
|
|
2979
|
+
});
|
|
2980
|
+
};
|
|
2855
2981
|
return PostgresQueryRunner;
|
|
2856
2982
|
}(BaseQueryRunner_1.BaseQueryRunner));
|
|
2857
2983
|
exports.PostgresQueryRunner = PostgresQueryRunner;
|