typeorm 0.3.18-dev.ff6e875 → 0.3.19-dev.633c4e3
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 +23 -23
- package/browser/cache/DbQueryResultCache.js +3 -0
- package/browser/cache/DbQueryResultCache.js.map +1 -1
- package/browser/data-source/BaseDataSourceOptions.d.ts +4 -0
- package/browser/data-source/BaseDataSourceOptions.js.map +1 -1
- package/browser/data-source/DataSource.d.ts +4 -0
- package/browser/data-source/DataSource.js +15 -0
- package/browser/data-source/DataSource.js.map +1 -1
- package/browser/decorator/Index.js +1 -0
- package/browser/decorator/Index.js.map +1 -1
- package/browser/decorator/entity/Entity.js +1 -0
- package/browser/decorator/entity/Entity.js.map +1 -1
- package/browser/decorator/options/EntityOptions.d.ts +4 -0
- package/browser/decorator/options/EntityOptions.js.map +1 -1
- package/browser/decorator/options/IndexOptions.d.ts +5 -0
- package/browser/decorator/options/IndexOptions.js.map +1 -1
- package/browser/driver/Driver.d.ts +4 -0
- package/browser/driver/Driver.js.map +1 -1
- package/browser/driver/DriverUtils.js +2 -5
- package/browser/driver/DriverUtils.js.map +1 -1
- package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +4 -0
- package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js +15 -6
- package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
- package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.d.ts +5 -0
- package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js +16 -6
- package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
- package/browser/driver/capacitor/CapacitorDriver.js +2 -2
- package/browser/driver/capacitor/CapacitorDriver.js.map +1 -1
- package/browser/driver/capacitor/CapacitorQueryRunner.js +2 -2
- package/browser/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachConnectionOptions.d.ts +6 -0
- package/browser/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachDriver.d.ts +4 -0
- package/browser/driver/cockroachdb/CockroachDriver.js +30 -11
- package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +10 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +55 -19
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/cordova/CordovaDriver.js +2 -2
- package/browser/driver/cordova/CordovaDriver.js.map +1 -1
- package/browser/driver/cordova/CordovaQueryRunner.js +8 -0
- package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/browser/driver/expo/ExpoQueryRunner.js +9 -2
- package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/MongoQueryRunner.d.ts +7 -3
- package/browser/driver/mongodb/MongoQueryRunner.js +6 -0
- package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/typings.d.ts +3 -3
- package/browser/driver/mongodb/typings.js.map +1 -1
- package/browser/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
- package/browser/driver/mysql/MysqlConnectionOptions.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.d.ts +4 -0
- package/browser/driver/mysql/MysqlQueryRunner.js +47 -10
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/browser/driver/oracle/OracleConnectionOptions.d.ts +14 -0
- package/browser/driver/oracle/OracleConnectionOptions.js.map +1 -1
- package/browser/driver/oracle/OracleDriver.d.ts +4 -0
- package/browser/driver/oracle/OracleDriver.js +17 -2
- package/browser/driver/oracle/OracleDriver.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.d.ts +4 -0
- package/browser/driver/oracle/OracleQueryRunner.js +55 -7
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +5 -0
- package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
- package/browser/driver/postgres/PostgresConnectionOptions.d.ts +6 -5
- package/browser/driver/postgres/PostgresConnectionOptions.js.map +1 -1
- package/browser/driver/postgres/PostgresDriver.d.ts +4 -0
- package/browser/driver/postgres/PostgresDriver.js +14 -8
- package/browser/driver/postgres/PostgresDriver.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.d.ts +4 -0
- package/browser/driver/postgres/PostgresQueryRunner.js +53 -24
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/react-native/ReactNativeQueryRunner.js +10 -2
- package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapDriver.d.ts +8 -0
- package/browser/driver/sap/SapDriver.js +14 -3
- package/browser/driver/sap/SapDriver.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.d.ts +8 -13
- package/browser/driver/sap/SapQueryRunner.js +81 -65
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/spanner/SpannerConnectionOptions.d.ts +6 -0
- package/browser/driver/spanner/SpannerConnectionOptions.js.map +1 -1
- package/browser/driver/spanner/SpannerDriver.d.ts +4 -0
- package/browser/driver/spanner/SpannerDriver.js +10 -1
- package/browser/driver/spanner/SpannerDriver.js.map +1 -1
- package/browser/driver/spanner/SpannerQueryRunner.d.ts +4 -0
- package/browser/driver/spanner/SpannerQueryRunner.js +13 -1
- package/browser/driver/spanner/SpannerQueryRunner.js.map +1 -1
- package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
- package/browser/driver/sqlite/SqliteQueryRunner.js +60 -46
- package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +4 -0
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +17 -17
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqljs/SqljsQueryRunner.js +11 -3
- package/browser/driver/sqljs/SqljsQueryRunner.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +2 -1
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerConnectionOptions.d.ts +11 -5
- package/browser/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerDriver.d.ts +4 -0
- package/browser/driver/sqlserver/SqlServerDriver.js +10 -1
- package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +4 -0
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +32 -6
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.d.ts +12 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js +3 -0
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js.map +1 -0
- package/browser/entity-manager/EntityManager.d.ts +5 -1
- package/browser/entity-manager/EntityManager.js +15 -2
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.d.ts +8 -4
- package/browser/entity-manager/MongoEntityManager.js +12 -10
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/entity-schema/EntitySchemaOptions.d.ts +4 -0
- package/browser/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaTransformer.js +7 -0
- package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/browser/error/EntityNotFoundError.d.ts +2 -0
- package/browser/error/EntityNotFoundError.js +2 -0
- package/browser/error/EntityNotFoundError.js.map +1 -1
- package/browser/error/QueryFailedError.d.ts +3 -3
- package/browser/error/QueryFailedError.js.map +1 -1
- package/browser/find-options/FindOperatorType.d.ts +1 -1
- package/browser/find-options/FindOperatorType.js.map +1 -1
- package/browser/find-options/FindOptionsUtils.js +1 -1
- package/browser/find-options/FindOptionsUtils.js.map +1 -1
- package/browser/find-options/FindOptionsWhere.d.ts +1 -1
- package/browser/find-options/FindOptionsWhere.js.map +1 -1
- package/browser/find-options/operator/Or.d.ts +2 -0
- package/browser/find-options/operator/Or.js +6 -0
- package/browser/find-options/operator/Or.js.map +1 -0
- package/browser/index.d.ts +2 -0
- package/browser/index.js +2 -0
- package/browser/index.js.map +1 -1
- package/browser/logger/AbstractLogger.js +1 -1
- package/browser/logger/AbstractLogger.js.map +1 -1
- package/browser/metadata/ColumnMetadata.js +4 -0
- package/browser/metadata/ColumnMetadata.js.map +1 -1
- package/browser/metadata/EntityMetadata.d.ts +7 -3
- package/browser/metadata/EntityMetadata.js +8 -3
- package/browser/metadata/EntityMetadata.js.map +1 -1
- package/browser/metadata/IndexMetadata.d.ts +5 -0
- package/browser/metadata/IndexMetadata.js +1 -0
- package/browser/metadata/IndexMetadata.js.map +1 -1
- package/browser/metadata-args/IndexMetadataArgs.d.ts +5 -0
- package/browser/metadata-args/IndexMetadataArgs.js.map +1 -1
- package/browser/metadata-args/TableMetadataArgs.d.ts +4 -0
- package/browser/metadata-args/TableMetadataArgs.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js +22 -0
- package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/browser/naming-strategy/DefaultNamingStrategy.d.ts +0 -1
- package/browser/naming-strategy/DefaultNamingStrategy.js +0 -3
- package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/browser/naming-strategy/NamingStrategyInterface.d.ts +0 -4
- package/browser/naming-strategy/NamingStrategyInterface.js.map +1 -1
- package/browser/persistence/Subject.js +2 -1
- package/browser/persistence/Subject.js.map +1 -1
- package/browser/persistence/SubjectExecutor.js +5 -2
- package/browser/persistence/SubjectExecutor.js.map +1 -1
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js +6 -2
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
- package/browser/platform/BrowserPlatformTools.d.ts +0 -7
- package/browser/platform/BrowserPlatformTools.js +3 -2
- package/browser/platform/BrowserPlatformTools.js.map +1 -1
- package/browser/platform/PlatformTools.js +2 -0
- package/browser/platform/PlatformTools.js.map +1 -1
- package/browser/query-builder/InsertQueryBuilder.js +19 -6
- package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
- package/browser/query-builder/QueryBuilder.d.ts +5 -0
- package/browser/query-builder/QueryBuilder.js +36 -24
- package/browser/query-builder/QueryBuilder.js.map +1 -1
- package/browser/query-builder/QueryExpressionMap.d.ts +2 -1
- package/browser/query-builder/QueryExpressionMap.js +0 -4
- package/browser/query-builder/QueryExpressionMap.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilder.js +14 -4
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/WhereClause.d.ts +1 -1
- package/browser/query-builder/WhereClause.js.map +1 -1
- package/browser/query-builder/index.d.ts +1 -0
- package/browser/query-builder/index.js +17 -0
- package/browser/query-builder/index.js.map +1 -0
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +9 -0
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +28 -0
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/browser/query-runner/BaseQueryRunner.js +1 -0
- package/browser/query-runner/BaseQueryRunner.js.map +1 -1
- package/browser/query-runner/QueryRunner.d.ts +4 -0
- package/browser/query-runner/QueryRunner.js.map +1 -1
- package/browser/repository/BaseEntity.d.ts +12 -0
- package/browser/repository/BaseEntity.js +12 -0
- package/browser/repository/BaseEntity.js.map +1 -1
- package/browser/repository/MongoRepository.d.ts +8 -4
- package/browser/repository/MongoRepository.js +6 -0
- package/browser/repository/MongoRepository.js.map +1 -1
- package/browser/repository/Repository.d.ts +14 -2
- package/browser/repository/Repository.js +26 -6
- package/browser/repository/Repository.js.map +1 -1
- package/browser/schema-builder/RdbmsSchemaBuilder.d.ts +4 -0
- package/browser/schema-builder/RdbmsSchemaBuilder.js +15 -0
- package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/browser/schema-builder/options/TableIndexOptions.d.ts +5 -0
- package/browser/schema-builder/options/TableIndexOptions.js.map +1 -1
- package/browser/schema-builder/options/TableOptions.d.ts +4 -0
- package/browser/schema-builder/options/TableOptions.js.map +1 -1
- package/browser/schema-builder/table/Table.d.ts +4 -0
- package/browser/schema-builder/table/Table.js +3 -0
- package/browser/schema-builder/table/Table.js.map +1 -1
- package/browser/schema-builder/table/TableIndex.d.ts +5 -0
- package/browser/schema-builder/table/TableIndex.js +3 -0
- package/browser/schema-builder/table/TableIndex.js.map +1 -1
- package/browser/subscriber/Broadcaster.d.ts +11 -1
- package/browser/subscriber/Broadcaster.js +48 -1
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/subscriber/EntitySubscriberInterface.d.ts +9 -0
- package/browser/subscriber/EntitySubscriberInterface.js.map +1 -1
- package/browser/subscriber/event/InsertEvent.d.ts +5 -0
- package/browser/subscriber/event/InsertEvent.js.map +1 -1
- package/browser/subscriber/event/QueryEvent.d.ts +50 -0
- package/browser/subscriber/event/QueryEvent.js +3 -0
- package/browser/subscriber/event/QueryEvent.js.map +1 -0
- package/browser/util/DateUtils.js +4 -2
- package/browser/util/DateUtils.js.map +1 -1
- package/browser/util/DirectoryExportedClassesLoader.js +1 -1
- package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/browser/util/OrmUtils.d.ts +6 -0
- package/browser/util/OrmUtils.js +66 -0
- package/browser/util/OrmUtils.js.map +1 -1
- package/cache/DbQueryResultCache.js +3 -0
- package/cache/DbQueryResultCache.js.map +1 -1
- package/commands/CommandUtils.js +6 -1
- package/commands/CommandUtils.js.map +1 -1
- package/commands/EntityCreateCommand.d.ts +3 -0
- package/commands/EntityCreateCommand.js +7 -0
- package/commands/EntityCreateCommand.js.map +1 -1
- package/commands/InitCommand.js +1 -1
- package/commands/InitCommand.js.map +1 -1
- package/commands/MigrationCreateCommand.d.ts +5 -1
- package/commands/MigrationCreateCommand.js +6 -1
- package/commands/MigrationCreateCommand.js.map +1 -1
- package/commands/MigrationGenerateCommand.d.ts +5 -1
- package/commands/MigrationGenerateCommand.js +8 -1
- package/commands/MigrationGenerateCommand.js.map +1 -1
- package/commands/SubscriberCreateCommand.d.ts +3 -0
- package/commands/SubscriberCreateCommand.js +7 -0
- package/commands/SubscriberCreateCommand.js.map +1 -1
- package/data-source/BaseDataSourceOptions.d.ts +4 -0
- package/data-source/BaseDataSourceOptions.js.map +1 -1
- package/data-source/DataSource.d.ts +4 -0
- package/data-source/DataSource.js +15 -0
- package/data-source/DataSource.js.map +1 -1
- package/decorator/Index.js +1 -0
- package/decorator/Index.js.map +1 -1
- package/decorator/entity/Entity.js +1 -0
- package/decorator/entity/Entity.js.map +1 -1
- package/decorator/options/EntityOptions.d.ts +4 -0
- package/decorator/options/EntityOptions.js.map +1 -1
- package/decorator/options/IndexOptions.d.ts +5 -0
- package/decorator/options/IndexOptions.js.map +1 -1
- package/driver/Driver.d.ts +4 -0
- package/driver/Driver.js.map +1 -1
- package/driver/DriverUtils.js +2 -5
- package/driver/DriverUtils.js.map +1 -1
- package/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +4 -0
- package/driver/aurora-mysql/AuroraMysqlQueryRunner.js +15 -6
- package/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
- package/driver/aurora-postgres/AuroraPostgresQueryRunner.d.ts +5 -0
- package/driver/aurora-postgres/AuroraPostgresQueryRunner.js +16 -6
- package/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
- package/driver/capacitor/CapacitorDriver.js +2 -2
- package/driver/capacitor/CapacitorDriver.js.map +1 -1
- package/driver/capacitor/CapacitorQueryRunner.js +2 -2
- package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/driver/cockroachdb/CockroachConnectionOptions.d.ts +6 -0
- package/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
- package/driver/cockroachdb/CockroachDriver.d.ts +4 -0
- package/driver/cockroachdb/CockroachDriver.js +30 -11
- package/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.d.ts +10 -1
- package/driver/cockroachdb/CockroachQueryRunner.js +55 -19
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/cordova/CordovaDriver.js +2 -2
- package/driver/cordova/CordovaDriver.js.map +1 -1
- package/driver/cordova/CordovaQueryRunner.js +8 -0
- package/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/driver/expo/ExpoQueryRunner.js +9 -2
- package/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/driver/mongodb/MongoQueryRunner.d.ts +7 -3
- package/driver/mongodb/MongoQueryRunner.js +6 -0
- package/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/driver/mongodb/typings.d.ts +3 -3
- package/driver/mongodb/typings.js.map +1 -1
- package/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
- package/driver/mysql/MysqlConnectionOptions.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.d.ts +4 -0
- package/driver/mysql/MysqlQueryRunner.js +47 -10
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/driver/oracle/OracleConnectionOptions.d.ts +14 -0
- package/driver/oracle/OracleConnectionOptions.js.map +1 -1
- package/driver/oracle/OracleDriver.d.ts +4 -0
- package/driver/oracle/OracleDriver.js +17 -2
- package/driver/oracle/OracleDriver.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.d.ts +4 -0
- package/driver/oracle/OracleQueryRunner.js +55 -7
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +5 -0
- package/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
- package/driver/postgres/PostgresConnectionOptions.d.ts +6 -5
- package/driver/postgres/PostgresConnectionOptions.js.map +1 -1
- package/driver/postgres/PostgresDriver.d.ts +4 -0
- package/driver/postgres/PostgresDriver.js +14 -8
- package/driver/postgres/PostgresDriver.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.d.ts +4 -0
- package/driver/postgres/PostgresQueryRunner.js +53 -24
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/react-native/ReactNativeQueryRunner.js +10 -2
- package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/driver/sap/SapDriver.d.ts +8 -0
- package/driver/sap/SapDriver.js +15 -4
- package/driver/sap/SapDriver.js.map +1 -1
- package/driver/sap/SapQueryRunner.d.ts +8 -13
- package/driver/sap/SapQueryRunner.js +81 -65
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/spanner/SpannerConnectionOptions.d.ts +6 -0
- package/driver/spanner/SpannerConnectionOptions.js.map +1 -1
- package/driver/spanner/SpannerDriver.d.ts +4 -0
- package/driver/spanner/SpannerDriver.js +10 -1
- package/driver/spanner/SpannerDriver.js.map +1 -1
- package/driver/spanner/SpannerQueryRunner.d.ts +4 -0
- package/driver/spanner/SpannerQueryRunner.js +13 -1
- package/driver/spanner/SpannerQueryRunner.js.map +1 -1
- package/driver/sqlite/SqliteDriver.js.map +1 -1
- package/driver/sqlite/SqliteQueryRunner.js +60 -46
- package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +4 -0
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +17 -17
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/driver/sqljs/SqljsQueryRunner.js +11 -3
- package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
- package/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +2 -1
- package/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -1
- package/driver/sqlserver/SqlServerConnectionOptions.d.ts +11 -5
- package/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
- package/driver/sqlserver/SqlServerDriver.d.ts +4 -0
- package/driver/sqlserver/SqlServerDriver.js +10 -1
- package/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.d.ts +4 -0
- package/driver/sqlserver/SqlServerQueryRunner.js +32 -6
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.d.ts +12 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js +4 -0
- package/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js.map +1 -0
- package/entity-manager/EntityManager.d.ts +5 -1
- package/entity-manager/EntityManager.js +15 -2
- package/entity-manager/EntityManager.js.map +1 -1
- package/entity-manager/MongoEntityManager.d.ts +8 -4
- package/entity-manager/MongoEntityManager.js +12 -10
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/entity-schema/EntitySchemaOptions.d.ts +4 -0
- package/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/entity-schema/EntitySchemaTransformer.js +7 -0
- package/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/error/EntityNotFoundError.d.ts +2 -0
- package/error/EntityNotFoundError.js +2 -0
- package/error/EntityNotFoundError.js.map +1 -1
- package/error/QueryFailedError.d.ts +3 -3
- package/error/QueryFailedError.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 +1 -1
- package/find-options/FindOptionsUtils.js.map +1 -1
- package/find-options/FindOptionsWhere.d.ts +1 -1
- package/find-options/FindOptionsWhere.js.map +1 -1
- package/find-options/operator/Or.d.ts +2 -0
- package/find-options/operator/Or.js +10 -0
- package/find-options/operator/Or.js.map +1 -0
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/index.mjs +4 -0
- package/logger/AbstractLogger.js +1 -1
- package/logger/AbstractLogger.js.map +1 -1
- package/metadata/ColumnMetadata.js +4 -0
- package/metadata/ColumnMetadata.js.map +1 -1
- package/metadata/EntityMetadata.d.ts +7 -3
- package/metadata/EntityMetadata.js +8 -3
- package/metadata/EntityMetadata.js.map +1 -1
- package/metadata/IndexMetadata.d.ts +5 -0
- package/metadata/IndexMetadata.js +1 -0
- package/metadata/IndexMetadata.js.map +1 -1
- package/metadata-args/IndexMetadataArgs.d.ts +5 -0
- package/metadata-args/IndexMetadataArgs.js.map +1 -1
- package/metadata-args/TableMetadataArgs.d.ts +4 -0
- package/metadata-args/TableMetadataArgs.js.map +1 -1
- package/metadata-builder/EntityMetadataBuilder.js +22 -0
- package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/naming-strategy/DefaultNamingStrategy.d.ts +0 -1
- package/naming-strategy/DefaultNamingStrategy.js +0 -3
- package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/naming-strategy/NamingStrategyInterface.d.ts +0 -4
- package/naming-strategy/NamingStrategyInterface.js.map +1 -1
- package/package.json +1 -1
- package/persistence/Subject.js +2 -1
- package/persistence/Subject.js.map +1 -1
- package/persistence/SubjectExecutor.js +5 -2
- package/persistence/SubjectExecutor.js.map +1 -1
- package/persistence/subject-builder/ManyToManySubjectBuilder.js +6 -2
- package/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
- package/platform/PlatformTools.js +2 -0
- package/platform/PlatformTools.js.map +1 -1
- package/query-builder/InsertQueryBuilder.js +19 -6
- package/query-builder/InsertQueryBuilder.js.map +1 -1
- package/query-builder/QueryBuilder.d.ts +5 -0
- package/query-builder/QueryBuilder.js +36 -24
- package/query-builder/QueryBuilder.js.map +1 -1
- package/query-builder/QueryExpressionMap.d.ts +2 -1
- package/query-builder/QueryExpressionMap.js +0 -4
- package/query-builder/QueryExpressionMap.js.map +1 -1
- package/query-builder/SelectQueryBuilder.js +14 -4
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/WhereClause.d.ts +1 -1
- package/query-builder/WhereClause.js.map +1 -1
- package/query-builder/index.d.ts +1 -0
- package/query-builder/index.js +21 -0
- package/query-builder/index.js.map +1 -0
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +9 -0
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +28 -0
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/query-runner/BaseQueryRunner.js +1 -0
- package/query-runner/BaseQueryRunner.js.map +1 -1
- package/query-runner/QueryRunner.d.ts +4 -0
- package/query-runner/QueryRunner.js.map +1 -1
- package/repository/BaseEntity.d.ts +12 -0
- package/repository/BaseEntity.js +12 -0
- package/repository/BaseEntity.js.map +1 -1
- package/repository/MongoRepository.d.ts +8 -4
- package/repository/MongoRepository.js +6 -0
- package/repository/MongoRepository.js.map +1 -1
- package/repository/Repository.d.ts +14 -2
- package/repository/Repository.js +26 -6
- package/repository/Repository.js.map +1 -1
- package/schema-builder/RdbmsSchemaBuilder.d.ts +4 -0
- package/schema-builder/RdbmsSchemaBuilder.js +15 -0
- package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/schema-builder/options/TableIndexOptions.d.ts +5 -0
- package/schema-builder/options/TableIndexOptions.js.map +1 -1
- package/schema-builder/options/TableOptions.d.ts +4 -0
- package/schema-builder/options/TableOptions.js.map +1 -1
- package/schema-builder/table/Table.d.ts +4 -0
- package/schema-builder/table/Table.js +3 -0
- package/schema-builder/table/Table.js.map +1 -1
- package/schema-builder/table/TableIndex.d.ts +5 -0
- package/schema-builder/table/TableIndex.js +3 -0
- package/schema-builder/table/TableIndex.js.map +1 -1
- package/subscriber/Broadcaster.d.ts +11 -1
- package/subscriber/Broadcaster.js +48 -1
- package/subscriber/Broadcaster.js.map +1 -1
- package/subscriber/EntitySubscriberInterface.d.ts +9 -0
- package/subscriber/EntitySubscriberInterface.js.map +1 -1
- package/subscriber/event/InsertEvent.d.ts +5 -0
- package/subscriber/event/InsertEvent.js.map +1 -1
- package/subscriber/event/QueryEvent.d.ts +50 -0
- package/subscriber/event/QueryEvent.js +4 -0
- package/subscriber/event/QueryEvent.js.map +1 -0
- package/typeorm-model-shim.js +61 -53
- package/util/DateUtils.js +5 -2
- package/util/DateUtils.js.map +1 -1
- package/util/DirectoryExportedClassesLoader.js +3 -3
- package/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/util/OrmUtils.d.ts +6 -0
- package/util/OrmUtils.js +66 -0
- package/util/OrmUtils.js.map +1 -1
|
@@ -3,6 +3,7 @@ import { IsolationLevel } from "../types/IsolationLevel";
|
|
|
3
3
|
import { AuroraPostgresDriver } from "./AuroraPostgresDriver";
|
|
4
4
|
import { PostgresQueryRunner } from "../postgres/PostgresQueryRunner";
|
|
5
5
|
import { ReplicationMode } from "../types/ReplicationMode";
|
|
6
|
+
import { Table } from "../../schema-builder/table/Table";
|
|
6
7
|
declare class PostgresQueryRunnerWrapper extends PostgresQueryRunner {
|
|
7
8
|
driver: any;
|
|
8
9
|
constructor(driver: any, mode: ReplicationMode);
|
|
@@ -44,5 +45,9 @@ export declare class AuroraPostgresQueryRunner extends PostgresQueryRunnerWrappe
|
|
|
44
45
|
* Executes a given SQL query.
|
|
45
46
|
*/
|
|
46
47
|
query(query: string, parameters?: any[], useStructuredResult?: boolean): Promise<any>;
|
|
48
|
+
/**
|
|
49
|
+
* Change table comment.
|
|
50
|
+
*/
|
|
51
|
+
changeTableComment(tableOrName: Table | string, comment?: string): Promise<void>;
|
|
47
52
|
}
|
|
48
53
|
export {};
|
|
@@ -5,6 +5,7 @@ const QueryRunnerAlreadyReleasedError_1 = require("../../error/QueryRunnerAlread
|
|
|
5
5
|
const TransactionNotStartedError_1 = require("../../error/TransactionNotStartedError");
|
|
6
6
|
const PostgresQueryRunner_1 = require("../postgres/PostgresQueryRunner");
|
|
7
7
|
const QueryResult_1 = require("../../query-runner/QueryResult");
|
|
8
|
+
const error_1 = require("../../error");
|
|
8
9
|
class PostgresQueryRunnerWrapper extends PostgresQueryRunner_1.PostgresQueryRunner {
|
|
9
10
|
constructor(driver, mode) {
|
|
10
11
|
super(driver, mode);
|
|
@@ -69,12 +70,13 @@ class AuroraPostgresQueryRunner extends PostgresQueryRunnerWrapper {
|
|
|
69
70
|
throw err;
|
|
70
71
|
}
|
|
71
72
|
if (this.transactionDepth === 0) {
|
|
73
|
+
this.transactionDepth += 1;
|
|
72
74
|
await this.client.startTransaction();
|
|
73
75
|
}
|
|
74
76
|
else {
|
|
75
|
-
|
|
77
|
+
this.transactionDepth += 1;
|
|
78
|
+
await this.query(`SAVEPOINT typeorm_${this.transactionDepth} - 1`);
|
|
76
79
|
}
|
|
77
|
-
this.transactionDepth += 1;
|
|
78
80
|
await this.broadcaster.broadcast("AfterTransactionStart");
|
|
79
81
|
}
|
|
80
82
|
/**
|
|
@@ -86,13 +88,14 @@ class AuroraPostgresQueryRunner extends PostgresQueryRunnerWrapper {
|
|
|
86
88
|
throw new TransactionNotStartedError_1.TransactionNotStartedError();
|
|
87
89
|
await this.broadcaster.broadcast("BeforeTransactionCommit");
|
|
88
90
|
if (this.transactionDepth > 1) {
|
|
89
|
-
|
|
91
|
+
this.transactionDepth -= 1;
|
|
92
|
+
await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth}`);
|
|
90
93
|
}
|
|
91
94
|
else {
|
|
95
|
+
this.transactionDepth -= 1;
|
|
92
96
|
await this.client.commitTransaction();
|
|
93
97
|
this.isTransactionActive = false;
|
|
94
98
|
}
|
|
95
|
-
this.transactionDepth -= 1;
|
|
96
99
|
await this.broadcaster.broadcast("AfterTransactionCommit");
|
|
97
100
|
}
|
|
98
101
|
/**
|
|
@@ -104,13 +107,14 @@ class AuroraPostgresQueryRunner extends PostgresQueryRunnerWrapper {
|
|
|
104
107
|
throw new TransactionNotStartedError_1.TransactionNotStartedError();
|
|
105
108
|
await this.broadcaster.broadcast("BeforeTransactionRollback");
|
|
106
109
|
if (this.transactionDepth > 1) {
|
|
107
|
-
|
|
110
|
+
this.transactionDepth -= 1;
|
|
111
|
+
await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth}`);
|
|
108
112
|
}
|
|
109
113
|
else {
|
|
114
|
+
this.transactionDepth -= 1;
|
|
110
115
|
await this.client.rollbackTransaction();
|
|
111
116
|
this.isTransactionActive = false;
|
|
112
117
|
}
|
|
113
|
-
this.transactionDepth -= 1;
|
|
114
118
|
await this.broadcaster.broadcast("AfterTransactionRollback");
|
|
115
119
|
}
|
|
116
120
|
/**
|
|
@@ -133,6 +137,12 @@ class AuroraPostgresQueryRunner extends PostgresQueryRunnerWrapper {
|
|
|
133
137
|
}
|
|
134
138
|
return result;
|
|
135
139
|
}
|
|
140
|
+
/**
|
|
141
|
+
* Change table comment.
|
|
142
|
+
*/
|
|
143
|
+
changeTableComment(tableOrName, comment) {
|
|
144
|
+
throw new error_1.TypeORMError(`aurora-postgres driver does not support change comment.`);
|
|
145
|
+
}
|
|
136
146
|
}
|
|
137
147
|
exports.AuroraPostgresQueryRunner = AuroraPostgresQueryRunner;
|
|
138
148
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/aurora-postgres/AuroraPostgresQueryRunner.ts"],"names":[],"mappings":"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","file":"AuroraPostgresQueryRunner.js","sourcesContent":["import { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\"\nimport { TransactionNotStartedError } from \"../../error/TransactionNotStartedError\"\nimport { QueryRunner } from \"../../query-runner/QueryRunner\"\nimport { IsolationLevel } from \"../types/IsolationLevel\"\nimport { AuroraPostgresDriver } from \"./AuroraPostgresDriver\"\nimport { PostgresQueryRunner } from \"../postgres/PostgresQueryRunner\"\nimport { ReplicationMode } from \"../types/ReplicationMode\"\nimport { QueryResult } from \"../../query-runner/QueryResult\"\n\nclass PostgresQueryRunnerWrapper extends PostgresQueryRunner {\n driver: any\n\n constructor(driver: any, mode: ReplicationMode) {\n super(driver, mode)\n }\n}\n\n/**\n * Runs queries on a single postgres database connection.\n */\nexport class AuroraPostgresQueryRunner\n extends PostgresQueryRunnerWrapper\n implements QueryRunner\n{\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: AuroraPostgresDriver\n\n protected client: any\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Promise used to obtain a database connection for a first time.\n */\n protected databaseConnectionPromise: Promise<any>\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(\n driver: AuroraPostgresDriver,\n client: any,\n mode: ReplicationMode,\n ) {\n super(driver, mode)\n\n this.client = client\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates/uses database connection from the connection pool to perform further operations.\n * Returns obtained database connection.\n */\n connect(): Promise<any> {\n if (this.databaseConnection)\n return Promise.resolve(this.databaseConnection)\n\n if (this.databaseConnectionPromise)\n return this.databaseConnectionPromise\n\n if (this.mode === \"slave\" && this.driver.isReplicated) {\n this.databaseConnectionPromise = this.driver\n .obtainSlaveConnection()\n .then(([connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this)\n this.databaseConnection = connection\n this.releaseCallback = release\n return this.databaseConnection\n })\n } else {\n // master\n this.databaseConnectionPromise = this.driver\n .obtainMasterConnection()\n .then(([connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this)\n this.databaseConnection = connection\n this.releaseCallback = release\n return this.databaseConnection\n })\n }\n\n return this.databaseConnectionPromise\n }\n\n /**\n * Starts transaction on the current connection.\n */\n async startTransaction(isolationLevel?: IsolationLevel): Promise<void> {\n this.isTransactionActive = true\n try {\n await this.broadcaster.broadcast(\"BeforeTransactionStart\")\n } catch (err) {\n this.isTransactionActive = false\n throw err\n }\n\n if (this.transactionDepth === 0) {\n await this.client.startTransaction()\n } else {\n await this.query(`SAVEPOINT typeorm_${this.transactionDepth}`)\n }\n this.transactionDepth += 1\n\n await this.broadcaster.broadcast(\"AfterTransactionStart\")\n }\n\n /**\n * Commits transaction.\n * Error will be thrown if transaction was not started.\n */\n async commitTransaction(): Promise<void> {\n if (!this.isTransactionActive) throw new TransactionNotStartedError()\n\n await this.broadcaster.broadcast(\"BeforeTransactionCommit\")\n\n if (this.transactionDepth > 1) {\n await this.query(\n `RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`,\n )\n } else {\n await this.client.commitTransaction()\n this.isTransactionActive = false\n }\n this.transactionDepth -= 1\n\n await this.broadcaster.broadcast(\"AfterTransactionCommit\")\n }\n\n /**\n * Rollbacks transaction.\n * Error will be thrown if transaction was not started.\n */\n async rollbackTransaction(): Promise<void> {\n if (!this.isTransactionActive) throw new TransactionNotStartedError()\n\n await this.broadcaster.broadcast(\"BeforeTransactionRollback\")\n\n if (this.transactionDepth > 1) {\n await this.query(\n `ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`,\n )\n } else {\n await this.client.rollbackTransaction()\n this.isTransactionActive = false\n }\n this.transactionDepth -= 1\n\n await this.broadcaster.broadcast(\"AfterTransactionRollback\")\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(\n query: string,\n parameters?: any[],\n useStructuredResult = false,\n ): Promise<any> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n const raw = await this.client.query(query, parameters)\n\n const result = new QueryResult()\n\n result.raw = raw\n\n if (raw?.hasOwnProperty(\"records\") && Array.isArray(raw.records)) {\n result.records = raw.records\n }\n\n if (raw?.hasOwnProperty(\"numberOfRecordsUpdated\")) {\n result.affected = raw.numberOfRecordsUpdated\n }\n\n if (!useStructuredResult) {\n return result.raw\n }\n\n return result\n }\n}\n"],"sourceRoot":"../.."}
|
|
1
|
+
{"version":3,"sources":["../../src/driver/aurora-postgres/AuroraPostgresQueryRunner.ts"],"names":[],"mappings":"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","file":"AuroraPostgresQueryRunner.js","sourcesContent":["import { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\"\nimport { TransactionNotStartedError } from \"../../error/TransactionNotStartedError\"\nimport { QueryRunner } from \"../../query-runner/QueryRunner\"\nimport { IsolationLevel } from \"../types/IsolationLevel\"\nimport { AuroraPostgresDriver } from \"./AuroraPostgresDriver\"\nimport { PostgresQueryRunner } from \"../postgres/PostgresQueryRunner\"\nimport { ReplicationMode } from \"../types/ReplicationMode\"\nimport { QueryResult } from \"../../query-runner/QueryResult\"\nimport { Table } from \"../../schema-builder/table/Table\"\nimport { TypeORMError } from \"../../error\"\n\nclass PostgresQueryRunnerWrapper extends PostgresQueryRunner {\n driver: any\n\n constructor(driver: any, mode: ReplicationMode) {\n super(driver, mode)\n }\n}\n\n/**\n * Runs queries on a single postgres database connection.\n */\nexport class AuroraPostgresQueryRunner\n extends PostgresQueryRunnerWrapper\n implements QueryRunner\n{\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: AuroraPostgresDriver\n\n protected client: any\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Promise used to obtain a database connection for a first time.\n */\n protected databaseConnectionPromise: Promise<any>\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(\n driver: AuroraPostgresDriver,\n client: any,\n mode: ReplicationMode,\n ) {\n super(driver, mode)\n\n this.client = client\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates/uses database connection from the connection pool to perform further operations.\n * Returns obtained database connection.\n */\n connect(): Promise<any> {\n if (this.databaseConnection)\n return Promise.resolve(this.databaseConnection)\n\n if (this.databaseConnectionPromise)\n return this.databaseConnectionPromise\n\n if (this.mode === \"slave\" && this.driver.isReplicated) {\n this.databaseConnectionPromise = this.driver\n .obtainSlaveConnection()\n .then(([connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this)\n this.databaseConnection = connection\n this.releaseCallback = release\n return this.databaseConnection\n })\n } else {\n // master\n this.databaseConnectionPromise = this.driver\n .obtainMasterConnection()\n .then(([connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this)\n this.databaseConnection = connection\n this.releaseCallback = release\n return this.databaseConnection\n })\n }\n\n return this.databaseConnectionPromise\n }\n\n /**\n * Starts transaction on the current connection.\n */\n async startTransaction(isolationLevel?: IsolationLevel): Promise<void> {\n this.isTransactionActive = true\n try {\n await this.broadcaster.broadcast(\"BeforeTransactionStart\")\n } catch (err) {\n this.isTransactionActive = false\n throw err\n }\n\n if (this.transactionDepth === 0) {\n this.transactionDepth += 1\n await this.client.startTransaction()\n } else {\n this.transactionDepth += 1\n await this.query(`SAVEPOINT typeorm_${this.transactionDepth} - 1`)\n }\n\n await this.broadcaster.broadcast(\"AfterTransactionStart\")\n }\n\n /**\n * Commits transaction.\n * Error will be thrown if transaction was not started.\n */\n async commitTransaction(): Promise<void> {\n if (!this.isTransactionActive) throw new TransactionNotStartedError()\n\n await this.broadcaster.broadcast(\"BeforeTransactionCommit\")\n\n if (this.transactionDepth > 1) {\n this.transactionDepth -= 1\n await this.query(\n `RELEASE SAVEPOINT typeorm_${this.transactionDepth}`,\n )\n } else {\n this.transactionDepth -= 1\n await this.client.commitTransaction()\n this.isTransactionActive = false\n }\n\n await this.broadcaster.broadcast(\"AfterTransactionCommit\")\n }\n\n /**\n * Rollbacks transaction.\n * Error will be thrown if transaction was not started.\n */\n async rollbackTransaction(): Promise<void> {\n if (!this.isTransactionActive) throw new TransactionNotStartedError()\n\n await this.broadcaster.broadcast(\"BeforeTransactionRollback\")\n\n if (this.transactionDepth > 1) {\n this.transactionDepth -= 1\n await this.query(\n `ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth}`,\n )\n } else {\n this.transactionDepth -= 1\n await this.client.rollbackTransaction()\n this.isTransactionActive = false\n }\n\n await this.broadcaster.broadcast(\"AfterTransactionRollback\")\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(\n query: string,\n parameters?: any[],\n useStructuredResult = false,\n ): Promise<any> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n const raw = await this.client.query(query, parameters)\n\n const result = new QueryResult()\n\n result.raw = raw\n\n if (raw?.hasOwnProperty(\"records\") && Array.isArray(raw.records)) {\n result.records = raw.records\n }\n\n if (raw?.hasOwnProperty(\"numberOfRecordsUpdated\")) {\n result.affected = raw.numberOfRecordsUpdated\n }\n\n if (!useStructuredResult) {\n return result.raw\n }\n\n return result\n }\n\n /**\n * Change table comment.\n */\n changeTableComment(\n tableOrName: Table | string,\n comment?: string,\n ): Promise<void> {\n throw new TypeORMError(\n `aurora-postgres driver does not support change comment.`,\n )\n }\n}\n"],"sourceRoot":"../.."}
|
|
@@ -59,10 +59,10 @@ class CapacitorDriver extends AbstractSqliteDriver_1.AbstractSqliteDriver {
|
|
|
59
59
|
await connection.open();
|
|
60
60
|
// we need to enable foreign keys in sqlite to make sure all foreign key related features
|
|
61
61
|
// working properly. this also makes onDelete to work with sqlite.
|
|
62
|
-
await connection.
|
|
62
|
+
await connection.run(`PRAGMA foreign_keys = ON`);
|
|
63
63
|
if (this.options.journalMode &&
|
|
64
64
|
["DELETE", "TRUNCATE", "PERSIST", "MEMORY", "WAL", "OFF"].indexOf(this.options.journalMode) !== -1) {
|
|
65
|
-
await connection.
|
|
65
|
+
await connection.run(`PRAGMA journal_mode = ${this.options.journalMode}`);
|
|
66
66
|
}
|
|
67
67
|
return connection;
|
|
68
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/capacitor/CapacitorDriver.ts"],"names":[],"mappings":";;;AAAA,kFAA8E;AAE9E,iEAA6D;AAG7D,uCAA4D;AAG5D,MAAa,eAAgB,SAAQ,2CAAoB;IAIrD,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,YAAY,UAAsB;QAC9B,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAA;QACrC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;QAEjC,sBAAsB;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;IACrC,CAAC;IAED,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAE5E;;OAEG;IACH,KAAK,CAAC,OAAO;QACT,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACzD,MAAM,IAAI,CAAC,kBAAkB,CAAA;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACZ,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;QAC5B,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAA;QACxD,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACxC,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA;QACvC,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,IAAqB;QACnC,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,2CAAoB,CAAC,IAAI,CAAC,CAAA;QAExE,OAAO,IAAI,CAAC,WAAW,CAAA;IAC3B,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;OAEG;IACO,KAAK,CAAC,wBAAwB;QACpC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,eAAe,CAAA;QACzD,MAAM,kBAAkB,GAAG,YAAY,KAAK,eAAe,CAAA;QAC3D,MAAM,eAAe,GACjB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,WAAW;YACvC,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;QAC9B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CACjD,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,kBAAkB,EAClB,YAAY,EACZ,eAAe,CAClB,CAAA;QACD,MAAM,UAAU,CAAC,IAAI,EAAE,CAAA;QAEvB,yFAAyF;QACzF,kEAAkE;QAClE,MAAM,UAAU,CAAC,
|
|
1
|
+
{"version":3,"sources":["../../src/driver/capacitor/CapacitorDriver.ts"],"names":[],"mappings":";;;AAAA,kFAA8E;AAE9E,iEAA6D;AAG7D,uCAA4D;AAG5D,MAAa,eAAgB,SAAQ,2CAAoB;IAIrD,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,YAAY,UAAsB;QAC9B,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAA;QACrC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;QAEjC,sBAAsB;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;IACrC,CAAC;IAED,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAE5E;;OAEG;IACH,KAAK,CAAC,OAAO;QACT,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACzD,MAAM,IAAI,CAAC,kBAAkB,CAAA;IACjC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACZ,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;QAC5B,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAA;QACxD,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACxC,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAA;QACvC,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,IAAqB;QACnC,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,2CAAoB,CAAC,IAAI,CAAC,CAAA;QAExE,OAAO,IAAI,CAAC,WAAW,CAAA;IAC3B,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;OAEG;IACO,KAAK,CAAC,wBAAwB;QACpC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,eAAe,CAAA;QACzD,MAAM,kBAAkB,GAAG,YAAY,KAAK,eAAe,CAAA;QAC3D,MAAM,eAAe,GACjB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,WAAW;YACvC,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;QAC9B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CACjD,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,kBAAkB,EAClB,YAAY,EACZ,eAAe,CAClB,CAAA;QACD,MAAM,UAAU,CAAC,IAAI,EAAE,CAAA;QAEvB,yFAAyF;QACzF,kEAAkE;QAClE,MAAM,UAAU,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;QAEhD,IACI,IAAI,CAAC,OAAO,CAAC,WAAW;YACxB,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAC7D,IAAI,CAAC,OAAO,CAAC,WAAW,CAC3B,KAAK,CAAC,CAAC,EACV;YACE,MAAM,UAAU,CAAC,GAAG,CAChB,yBAAyB,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CACtD,CAAA;SACJ;QAED,OAAO,UAAU,CAAA;IACrB,CAAC;IAES,gBAAgB;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACd,MAAM,IAAI,sCAA8B,CACpC,WAAW,EACX,6BAA6B,CAChC,CAAA;SACJ;IACL,CAAC;CACJ;AAnGD,0CAmGC","file":"CapacitorDriver.js","sourcesContent":["import { AbstractSqliteDriver } from \"../sqlite-abstract/AbstractSqliteDriver\"\nimport { CapacitorConnectionOptions } from \"./CapacitorConnectionOptions\"\nimport { CapacitorQueryRunner } from \"./CapacitorQueryRunner\"\nimport { QueryRunner } from \"../../query-runner/QueryRunner\"\nimport { DataSource } from \"../../data-source/DataSource\"\nimport { DriverPackageNotInstalledError } from \"../../error\"\nimport { ReplicationMode } from \"../types/ReplicationMode\"\n\nexport class CapacitorDriver extends AbstractSqliteDriver {\n driver: any\n options: CapacitorConnectionOptions\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connection: DataSource) {\n super(connection)\n\n this.database = this.options.database\n this.driver = this.options.driver\n\n // load sqlite package\n this.sqlite = this.options.driver\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Performs connection to the database.\n */\n async connect(): Promise<void> {\n this.databaseConnection = this.createDatabaseConnection()\n await this.databaseConnection\n }\n\n /**\n * Closes connection with database.\n */\n async disconnect(): Promise<void> {\n this.queryRunner = undefined\n const databaseConnection = await this.databaseConnection\n return databaseConnection.close().then(() => {\n this.databaseConnection = undefined\n })\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: ReplicationMode): QueryRunner {\n if (!this.queryRunner) this.queryRunner = new CapacitorQueryRunner(this)\n\n return this.queryRunner\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates connection with the database.\n */\n protected async createDatabaseConnection() {\n const databaseMode = this.options.mode || \"no-encryption\"\n const isDatabaseEncryted = databaseMode !== \"no-encryption\"\n const databaseVersion =\n typeof this.options.version === \"undefined\"\n ? 1\n : this.options.version\n const connection = await this.sqlite.createConnection(\n this.options.database,\n isDatabaseEncryted,\n databaseMode,\n databaseVersion,\n )\n await connection.open()\n\n // we need to enable foreign keys in sqlite to make sure all foreign key related features\n // working properly. this also makes onDelete to work with sqlite.\n await connection.run(`PRAGMA foreign_keys = ON`)\n\n if (\n this.options.journalMode &&\n [\"DELETE\", \"TRUNCATE\", \"PERSIST\", \"MEMORY\", \"WAL\", \"OFF\"].indexOf(\n this.options.journalMode,\n ) !== -1\n ) {\n await connection.run(\n `PRAGMA journal_mode = ${this.options.journalMode}`,\n )\n }\n\n return connection\n }\n\n protected loadDependencies(): void {\n this.sqlite = this.driver\n if (!this.driver) {\n throw new DriverPackageNotInstalledError(\n \"Capacitor\",\n \"@capacitor-community/sqlite\",\n )\n }\n }\n}\n"],"sourceRoot":"../.."}
|
|
@@ -45,7 +45,7 @@ class CapacitorQueryRunner extends AbstractSqliteQueryRunner_1.AbstractSqliteQue
|
|
|
45
45
|
throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
|
|
46
46
|
const databaseConnection = await this.connect();
|
|
47
47
|
this.driver.connection.logger.logQuery(query, parameters, this);
|
|
48
|
-
const command = query.
|
|
48
|
+
const command = query.substring(0, query.indexOf(" ") !== -1 ? query.indexOf(" ") : undefined);
|
|
49
49
|
try {
|
|
50
50
|
let raw;
|
|
51
51
|
if ([
|
|
@@ -58,7 +58,7 @@ class CapacitorQueryRunner extends AbstractSqliteQueryRunner_1.AbstractSqliteQue
|
|
|
58
58
|
].indexOf(command) !== -1) {
|
|
59
59
|
raw = await databaseConnection.execute(query, false);
|
|
60
60
|
}
|
|
61
|
-
else if (["INSERT", "UPDATE", "DELETE"].indexOf(command) !== -1) {
|
|
61
|
+
else if (["INSERT", "UPDATE", "DELETE", "PRAGMA"].indexOf(command) !== -1) {
|
|
62
62
|
raw = await databaseConnection.run(query, parameters, false);
|
|
63
63
|
}
|
|
64
64
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/capacitor/CapacitorQueryRunner.ts"],"names":[],"mappings":";;;AAAA,iGAA6F;AAC7F,mEAA+D;AAC/D,4FAAwF;AAExF,8DAA0D;AAE1D,gEAA4D;AAE5D;;GAEG;AACH,MAAa,oBAAqB,SAAQ,qDAAyB;IAM/D,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,YAAY,MAAuB;QAC/B,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;QACnC,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe;QACjB,MAAM,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc;QAChB,MAAM,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;IAChD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAA4C;QACzD,IAAI,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,iEAA+B,EAAE,CAAA;QAEhE,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;QAE/C,OAAO,kBAAkB,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACpD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CACP,KAAa,EACb,UAAkB,EAClB,mBAAmB,GAAG,KAAK;QAE3B,IAAI,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,iEAA+B,EAAE,CAAA;QAEhE,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;QAE/C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;QAE/D,MAAM,OAAO,GAAG,KAAK,CAAC,
|
|
1
|
+
{"version":3,"sources":["../../src/driver/capacitor/CapacitorQueryRunner.ts"],"names":[],"mappings":"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","file":"CapacitorQueryRunner.js","sourcesContent":["import { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\"\nimport { QueryFailedError } from \"../../error/QueryFailedError\"\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\"\nimport { CapacitorDriver } from \"./CapacitorDriver\"\nimport { Broadcaster } from \"../../subscriber/Broadcaster\"\nimport { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { QueryResult } from \"../../query-runner/QueryResult\"\n\n/**\n * Runs queries on a single sqlite database connection.\n */\nexport class CapacitorQueryRunner extends AbstractSqliteQueryRunner {\n /**\n * Database driver used by connection.\n */\n driver: CapacitorDriver\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: CapacitorDriver) {\n super()\n this.driver = driver\n this.connection = driver.connection\n this.broadcaster = new Broadcaster(this)\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`)\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`)\n }\n\n async executeSet(set: { statement: string; values?: any[] }[]) {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n const databaseConnection = await this.connect()\n\n return databaseConnection.executeSet(set, false)\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(\n query: string,\n parameters?: any[],\n useStructuredResult = false,\n ): Promise<any> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n const databaseConnection = await this.connect()\n\n this.driver.connection.logger.logQuery(query, parameters, this)\n\n const command = query.substring(\n 0,\n query.indexOf(\" \") !== -1 ? query.indexOf(\" \") : undefined,\n )\n\n try {\n let raw: any\n\n if (\n [\n \"BEGIN\",\n \"ROLLBACK\",\n \"COMMIT\",\n \"CREATE\",\n \"ALTER\",\n \"DROP\",\n ].indexOf(command) !== -1\n ) {\n raw = await databaseConnection.execute(query, false)\n } else if (\n [\"INSERT\", \"UPDATE\", \"DELETE\", \"PRAGMA\"].indexOf(command) !== -1\n ) {\n raw = await databaseConnection.run(query, parameters, false)\n } else {\n raw = await databaseConnection.query(query, parameters || [])\n }\n\n const result = new QueryResult()\n\n if (raw?.hasOwnProperty(\"values\")) {\n result.raw = raw.values\n result.records = raw.values\n }\n\n if (raw?.hasOwnProperty(\"changes\")) {\n result.affected = raw.changes.changes\n result.raw = raw.changes.lastId || raw.changes.changes\n }\n\n if (!useStructuredResult) {\n return result.raw\n }\n\n return result\n } catch (err) {\n this.driver.connection.logger.logQueryError(\n err,\n query,\n parameters,\n this,\n )\n\n throw new QueryFailedError(query, parameters, err)\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Parametrizes given object of values. Used to create column=value queries.\n */\n protected parametrize(objectLiteral: ObjectLiteral): string[] {\n return Object.keys(objectLiteral).map((key) => `\"${key}\"` + \"=?\")\n }\n}\n"],"sourceRoot":"../.."}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { BaseDataSourceOptions } from "../../data-source/BaseDataSourceOptions";
|
|
2
|
+
import { ReplicationMode } from "../types/ReplicationMode";
|
|
2
3
|
import { CockroachConnectionCredentialsOptions } from "./CockroachConnectionCredentialsOptions";
|
|
3
4
|
/**
|
|
4
5
|
* Cockroachdb-specific connection options.
|
|
@@ -39,6 +40,11 @@ export interface CockroachConnectionOptions extends BaseDataSourceOptions, Cockr
|
|
|
39
40
|
* List of read-from severs (slaves).
|
|
40
41
|
*/
|
|
41
42
|
readonly slaves: CockroachConnectionCredentialsOptions[];
|
|
43
|
+
/**
|
|
44
|
+
* Default connection pool to use for SELECT queries
|
|
45
|
+
* @default "slave"
|
|
46
|
+
*/
|
|
47
|
+
readonly defaultMode?: ReplicationMode;
|
|
42
48
|
};
|
|
43
49
|
/**
|
|
44
50
|
* sets the application_name var to help db administrators identify
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/cockroachdb/CockroachConnectionOptions.ts"],"names":[],"mappings":"","file":"CockroachConnectionOptions.js","sourcesContent":["import { BaseDataSourceOptions } from \"../../data-source/BaseDataSourceOptions\"\nimport { CockroachConnectionCredentialsOptions } from \"./CockroachConnectionCredentialsOptions\"\n\n/**\n * Cockroachdb-specific connection options.\n */\nexport interface CockroachConnectionOptions\n extends BaseDataSourceOptions,\n CockroachConnectionCredentialsOptions {\n /**\n * Database type.\n */\n readonly type: \"cockroachdb\"\n\n /**\n * Enable time travel queries on cockroachdb.\n * https://www.cockroachlabs.com/docs/stable/as-of-system-time.html\n */\n readonly timeTravelQueries: boolean\n\n /**\n * Schema name.\n */\n readonly schema?: string\n\n /**\n * The driver object\n * This defaults to `require(\"pg\")`.\n */\n readonly driver?: any\n\n /**\n * The driver object\n * This defaults to `require(\"pg-native\")`.\n */\n readonly nativeDriver?: any\n\n /**\n * Replication setup.\n */\n readonly replication?: {\n /**\n * Master server used by orm to perform writes.\n */\n readonly master: CockroachConnectionCredentialsOptions\n\n /**\n * List of read-from severs (slaves).\n */\n readonly slaves: CockroachConnectionCredentialsOptions[]\n }\n\n /**\n * sets the application_name var to help db administrators identify\n * the service using this connection. Defaults to 'undefined'\n */\n readonly applicationName?: string\n\n /**\n * Function handling errors thrown by drivers pool.\n * Defaults to logging error with `warn` level.\n */\n readonly poolErrorHandler?: (err: any) => any\n\n /**\n * Max number of transaction retries in case of 40001 error.\n */\n readonly maxTransactionRetries?: number\n}\n"],"sourceRoot":"../.."}
|
|
1
|
+
{"version":3,"sources":["../../src/driver/cockroachdb/CockroachConnectionOptions.ts"],"names":[],"mappings":"","file":"CockroachConnectionOptions.js","sourcesContent":["import { BaseDataSourceOptions } from \"../../data-source/BaseDataSourceOptions\"\nimport { ReplicationMode } from \"../types/ReplicationMode\"\nimport { CockroachConnectionCredentialsOptions } from \"./CockroachConnectionCredentialsOptions\"\n\n/**\n * Cockroachdb-specific connection options.\n */\nexport interface CockroachConnectionOptions\n extends BaseDataSourceOptions,\n CockroachConnectionCredentialsOptions {\n /**\n * Database type.\n */\n readonly type: \"cockroachdb\"\n\n /**\n * Enable time travel queries on cockroachdb.\n * https://www.cockroachlabs.com/docs/stable/as-of-system-time.html\n */\n readonly timeTravelQueries: boolean\n\n /**\n * Schema name.\n */\n readonly schema?: string\n\n /**\n * The driver object\n * This defaults to `require(\"pg\")`.\n */\n readonly driver?: any\n\n /**\n * The driver object\n * This defaults to `require(\"pg-native\")`.\n */\n readonly nativeDriver?: any\n\n /**\n * Replication setup.\n */\n readonly replication?: {\n /**\n * Master server used by orm to perform writes.\n */\n readonly master: CockroachConnectionCredentialsOptions\n\n /**\n * List of read-from severs (slaves).\n */\n readonly slaves: CockroachConnectionCredentialsOptions[]\n\n /**\n * Default connection pool to use for SELECT queries\n * @default \"slave\"\n */\n readonly defaultMode?: ReplicationMode\n }\n\n /**\n * sets the application_name var to help db administrators identify\n * the service using this connection. Defaults to 'undefined'\n */\n readonly applicationName?: string\n\n /**\n * Function handling errors thrown by drivers pool.\n * Defaults to logging error with `warn` level.\n */\n readonly poolErrorHandler?: (err: any) => any\n\n /**\n * Max number of transaction retries in case of 40001 error.\n */\n readonly maxTransactionRetries?: number\n}\n"],"sourceRoot":"../.."}
|
|
@@ -107,6 +107,10 @@ export declare class CockroachDriver implements Driver {
|
|
|
107
107
|
* Column types are driver dependant.
|
|
108
108
|
*/
|
|
109
109
|
mappedDataTypes: MappedColumnTypes;
|
|
110
|
+
/**
|
|
111
|
+
* The prefix used for the parameters
|
|
112
|
+
*/
|
|
113
|
+
parametersPrefix: string;
|
|
110
114
|
/**
|
|
111
115
|
* Default values of length, precision and scale depends on column data type.
|
|
112
116
|
* Used in the cases when length/precision/scale is not specified by user.
|
|
@@ -152,6 +152,10 @@ class CockroachDriver {
|
|
|
152
152
|
metadataName: "varchar",
|
|
153
153
|
metadataValue: "string",
|
|
154
154
|
};
|
|
155
|
+
/**
|
|
156
|
+
* The prefix used for the parameters
|
|
157
|
+
*/
|
|
158
|
+
this.parametersPrefix = "$";
|
|
155
159
|
/**
|
|
156
160
|
* Default values of length, precision and scale depends on column data type.
|
|
157
161
|
* Used in the cases when length/precision/scale is not specified by user.
|
|
@@ -373,10 +377,14 @@ class CockroachDriver {
|
|
|
373
377
|
const escapedParameters = Object.keys(nativeParameters).map((key) => nativeParameters[key]);
|
|
374
378
|
if (!parameters || !Object.keys(parameters).length)
|
|
375
379
|
return [sql, escapedParameters];
|
|
380
|
+
const parameterIndexMap = new Map();
|
|
376
381
|
sql = sql.replace(/:(\.\.\.)?([A-Za-z0-9_.]+)/g, (full, isArray, key) => {
|
|
377
382
|
if (!parameters.hasOwnProperty(key)) {
|
|
378
383
|
return full;
|
|
379
384
|
}
|
|
385
|
+
if (parameterIndexMap.has(key)) {
|
|
386
|
+
return this.parametersPrefix + parameterIndexMap.get(key);
|
|
387
|
+
}
|
|
380
388
|
let value = parameters[key];
|
|
381
389
|
if (isArray) {
|
|
382
390
|
return value
|
|
@@ -390,6 +398,7 @@ class CockroachDriver {
|
|
|
390
398
|
return value();
|
|
391
399
|
}
|
|
392
400
|
escapedParameters.push(value);
|
|
401
|
+
parameterIndexMap.set(key, escapedParameters.length);
|
|
393
402
|
return this.createParameter(key, escapedParameters.length - 1);
|
|
394
403
|
}); // todo: make replace only in value statements, otherwise problems
|
|
395
404
|
return [sql, escapedParameters];
|
|
@@ -520,11 +529,12 @@ class CockroachDriver {
|
|
|
520
529
|
*/
|
|
521
530
|
normalizeDefault(columnMetadata) {
|
|
522
531
|
const defaultValue = columnMetadata.default;
|
|
532
|
+
if (defaultValue === undefined || defaultValue === null) {
|
|
533
|
+
return undefined;
|
|
534
|
+
}
|
|
523
535
|
if ((columnMetadata.type === "enum" ||
|
|
524
536
|
columnMetadata.type === "simple-enum") &&
|
|
525
537
|
defaultValue !== undefined) {
|
|
526
|
-
if (defaultValue === null)
|
|
527
|
-
return "NULL";
|
|
528
538
|
if (columnMetadata.isArray) {
|
|
529
539
|
const enumName = this.buildEnumName(columnMetadata);
|
|
530
540
|
let arrayValue = defaultValue;
|
|
@@ -572,9 +582,6 @@ class CockroachDriver {
|
|
|
572
582
|
if (ObjectUtils_1.ObjectUtils.isObject(defaultValue) && defaultValue !== null) {
|
|
573
583
|
return `'${JSON.stringify(defaultValue)}'`;
|
|
574
584
|
}
|
|
575
|
-
if (defaultValue === undefined || defaultValue === null) {
|
|
576
|
-
return undefined;
|
|
577
|
-
}
|
|
578
585
|
return `${defaultValue}`;
|
|
579
586
|
}
|
|
580
587
|
/**
|
|
@@ -677,10 +684,19 @@ class CockroachDriver {
|
|
|
677
684
|
const tableColumn = tableColumns.find((c) => c.name === columnMetadata.databaseName);
|
|
678
685
|
if (!tableColumn)
|
|
679
686
|
return false; // we don't need new columns, we only need exist and changed
|
|
680
|
-
// console.log("table:", columnMetadata.entityMetadata.tableName)
|
|
681
|
-
// console.log("name:",
|
|
682
|
-
//
|
|
683
|
-
//
|
|
687
|
+
// console.log("table:", columnMetadata.entityMetadata.tableName)
|
|
688
|
+
// console.log("name:", {
|
|
689
|
+
// tableColumn: tableColumn.name,
|
|
690
|
+
// columnMetadata: columnMetadata.databaseName,
|
|
691
|
+
// })
|
|
692
|
+
// console.log("type:", {
|
|
693
|
+
// tableColumn: tableColumn.type,
|
|
694
|
+
// columnMetadata: this.normalizeType(columnMetadata),
|
|
695
|
+
// })
|
|
696
|
+
// console.log("length:", {
|
|
697
|
+
// tableColumn: tableColumn.length,
|
|
698
|
+
// columnMetadata: columnMetadata.length,
|
|
699
|
+
// })
|
|
684
700
|
// console.log("width:", tableColumn.width, columnMetadata.width);
|
|
685
701
|
// console.log("precision:", tableColumn.precision, columnMetadata.precision);
|
|
686
702
|
// console.log("scale:", tableColumn.scale, columnMetadata.scale);
|
|
@@ -690,7 +706,10 @@ class CockroachDriver {
|
|
|
690
706
|
// console.log("isPrimary:", tableColumn.isPrimary, columnMetadata.isPrimary);
|
|
691
707
|
// console.log("isNullable:", tableColumn.isNullable, columnMetadata.isNullable);
|
|
692
708
|
// console.log("isUnique:", tableColumn.isUnique, this.normalizeIsUnique(columnMetadata));
|
|
693
|
-
// console.log("
|
|
709
|
+
// console.log("asExpression:", {
|
|
710
|
+
// tableColumn: (tableColumn.asExpression || "").trim(),
|
|
711
|
+
// columnMetadata: (columnMetadata.asExpression || "").trim(),
|
|
712
|
+
// })
|
|
694
713
|
// console.log("==========================================");
|
|
695
714
|
return (tableColumn.name !== columnMetadata.databaseName ||
|
|
696
715
|
tableColumn.type !== this.normalizeType(columnMetadata) ||
|
|
@@ -753,7 +772,7 @@ class CockroachDriver {
|
|
|
753
772
|
* Creates an escaped parameter.
|
|
754
773
|
*/
|
|
755
774
|
createParameter(parameterName, index) {
|
|
756
|
-
return
|
|
775
|
+
return this.parametersPrefix + (index + 1);
|
|
757
776
|
}
|
|
758
777
|
// -------------------------------------------------------------------------
|
|
759
778
|
// Public Methods
|