typeorm 0.2.45-dev.f3cfdd2 → 0.2.45
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/browser/cache/DbQueryResultCache.js +6 -6
- package/browser/cache/DbQueryResultCache.js.map +1 -1
- package/browser/cache/RedisQueryResultCache.js +2 -2
- package/browser/cache/RedisQueryResultCache.js.map +1 -1
- package/browser/connection/Connection.js +2 -2
- package/browser/connection/Connection.js.map +1 -1
- package/browser/connection/ConnectionOptionsReader.js +2 -2
- package/browser/connection/ConnectionOptionsReader.js.map +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiDriver.js +10 -10
- package/browser/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +157 -157
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +3 -3
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +4 -4
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +2 -2
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/browser/driver/capacitor/CapacitorDriver.js +1 -1
- package/browser/driver/capacitor/CapacitorDriver.js.map +1 -1
- package/browser/driver/capacitor/CapacitorQueryRunner.js +1 -1
- package/browser/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachDriver.js +6 -6
- package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +153 -153
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/cordova/CordovaQueryRunner.js +1 -1
- package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/browser/driver/expo/ExpoQueryRunner.js +3 -3
- package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/MongoDriver.js +4 -4
- package/browser/driver/mongodb/MongoDriver.js.map +1 -1
- package/browser/driver/mysql/MysqlDriver.js +11 -11
- package/browser/driver/mysql/MysqlDriver.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.js +163 -163
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/browser/driver/nativescript/NativescriptQueryRunner.js +1 -1
- package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/browser/driver/oracle/OracleDriver.js +10 -10
- package/browser/driver/oracle/OracleDriver.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.js +124 -124
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresDriver.js +18 -18
- package/browser/driver/postgres/PostgresDriver.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.js +229 -229
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/react-native/ReactNativeQueryRunner.js +1 -1
- package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapDriver.js +9 -9
- package/browser/driver/sap/SapDriver.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.js +126 -126
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/sqlite/SqliteDriver.js +4 -4
- package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +3 -3
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +61 -61
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqljs/SqljsDriver.js +3 -3
- package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerDriver.js +11 -11
- package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +203 -203
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/entity-manager/EntityManager.js +4 -4
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.js +1 -1
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/entity-schema/EntitySchemaEmbeddedError.js +2 -2
- package/browser/entity-schema/EntitySchemaEmbeddedError.js.map +1 -1
- package/browser/error/AlreadyHasActiveConnectionError.js +1 -1
- package/browser/error/AlreadyHasActiveConnectionError.js.map +1 -1
- package/browser/error/CannotAttachTreeChildrenEntityError.js +1 -1
- package/browser/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
- package/browser/error/CannotConnectAlreadyConnectedError.js +1 -1
- package/browser/error/CannotConnectAlreadyConnectedError.js.map +1 -1
- package/browser/error/CannotCreateEntityIdMapError.js +1 -1
- package/browser/error/CannotCreateEntityIdMapError.js.map +1 -1
- package/browser/error/CannotDetermineEntityError.js +1 -1
- package/browser/error/CannotDetermineEntityError.js.map +1 -1
- package/browser/error/CannotExecuteNotConnectedError.js +1 -1
- package/browser/error/CannotExecuteNotConnectedError.js.map +1 -1
- package/browser/error/CannotGetEntityManagerNotConnectedError.js +1 -1
- package/browser/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
- package/browser/error/CannotReflectMethodParameterTypeError.js +1 -1
- package/browser/error/CannotReflectMethodParameterTypeError.js.map +1 -1
- package/browser/error/CircularRelationsError.js +1 -1
- package/browser/error/CircularRelationsError.js.map +1 -1
- package/browser/error/ColumnTypeUndefinedError.js +1 -1
- package/browser/error/ColumnTypeUndefinedError.js.map +1 -1
- package/browser/error/ConnectionIsNotSetError.js +1 -1
- package/browser/error/ConnectionIsNotSetError.js.map +1 -1
- package/browser/error/ConnectionNotFoundError.js +1 -1
- package/browser/error/ConnectionNotFoundError.js.map +1 -1
- package/browser/error/CustomRepositoryCannotInheritRepositoryError.js +1 -1
- package/browser/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
- package/browser/error/CustomRepositoryDoesNotHaveEntityError.js +1 -1
- package/browser/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
- package/browser/error/CustomRepositoryNotFoundError.js +1 -1
- package/browser/error/CustomRepositoryNotFoundError.js.map +1 -1
- package/browser/error/DataTypeNotSupportedError.js +1 -1
- package/browser/error/DataTypeNotSupportedError.js.map +1 -1
- package/browser/error/DriverOptionNotSetError.js +1 -1
- package/browser/error/DriverOptionNotSetError.js.map +1 -1
- package/browser/error/DriverPackageNotInstalledError.js +2 -2
- package/browser/error/DriverPackageNotInstalledError.js.map +1 -1
- package/browser/error/EntityColumnNotFound.js +1 -1
- package/browser/error/EntityColumnNotFound.js.map +1 -1
- package/browser/error/EntityMetadataNotFoundError.js +1 -1
- package/browser/error/EntityMetadataNotFoundError.js.map +1 -1
- package/browser/error/EntityNotFoundError.js +2 -2
- package/browser/error/EntityNotFoundError.js.map +1 -1
- package/browser/error/FindRelationsNotFoundError.js +2 -2
- package/browser/error/FindRelationsNotFoundError.js.map +1 -1
- package/browser/error/InitializedRelationError.js +1 -1
- package/browser/error/InitializedRelationError.js.map +1 -1
- package/browser/error/MissingDeleteDateColumnError.js +1 -1
- package/browser/error/MissingDeleteDateColumnError.js.map +1 -1
- package/browser/error/MissingDriverError.js +2 -2
- package/browser/error/MissingDriverError.js.map +1 -1
- package/browser/error/MissingJoinColumnError.js +3 -3
- package/browser/error/MissingJoinColumnError.js.map +1 -1
- package/browser/error/MissingJoinTableError.js +3 -3
- package/browser/error/MissingJoinTableError.js.map +1 -1
- package/browser/error/MissingPrimaryColumnError.js +1 -1
- package/browser/error/MissingPrimaryColumnError.js.map +1 -1
- package/browser/error/MustBeEntityError.js +1 -1
- package/browser/error/MustBeEntityError.js.map +1 -1
- package/browser/error/NamingStrategyNotFoundError.js +2 -2
- package/browser/error/NamingStrategyNotFoundError.js.map +1 -1
- package/browser/error/NoConnectionForRepositoryError.js +1 -1
- package/browser/error/NoConnectionForRepositoryError.js.map +1 -1
- package/browser/error/NoConnectionOptionError.js +2 -2
- package/browser/error/NoConnectionOptionError.js.map +1 -1
- package/browser/error/NoVersionOrUpdateDateColumnError.js +1 -1
- package/browser/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
- package/browser/error/OptimisticLockVersionMismatchError.js +1 -1
- package/browser/error/OptimisticLockVersionMismatchError.js.map +1 -1
- package/browser/error/PrimaryColumnCannotBeNullableError.js +1 -1
- package/browser/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
- package/browser/error/RepositoryNotFoundError.js +2 -2
- package/browser/error/RepositoryNotFoundError.js.map +1 -1
- package/browser/error/RepositoryNotTreeError.js +1 -1
- package/browser/error/RepositoryNotTreeError.js.map +1 -1
- package/browser/error/SubjectRemovedAndUpdatedError.js +1 -1
- package/browser/error/SubjectRemovedAndUpdatedError.js.map +1 -1
- package/browser/error/SubjectWithoutIdentifierError.js +1 -1
- package/browser/error/SubjectWithoutIdentifierError.js.map +1 -1
- package/browser/error/TreeRepositoryNotSupportedError.js +1 -1
- package/browser/error/TreeRepositoryNotSupportedError.js.map +1 -1
- package/browser/error/UsingJoinColumnIsNotAllowedError.js +1 -1
- package/browser/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
- package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -1
- package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
- package/browser/error/UsingJoinTableIsNotAllowedError.js +2 -2
- package/browser/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
- package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -1
- package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
- package/browser/find-options/FindOptionsUtils.js +6 -6
- package/browser/find-options/FindOptionsUtils.js.map +1 -1
- package/browser/logger/FileLogger.js +3 -3
- package/browser/logger/FileLogger.js.map +1 -1
- package/browser/metadata/EmbeddedMetadata.js +1 -1
- package/browser/metadata/EmbeddedMetadata.js.map +1 -1
- package/browser/metadata/IndexMetadata.js +1 -1
- package/browser/metadata/IndexMetadata.js.map +1 -1
- package/browser/metadata/RelationCountMetadata.js +1 -1
- package/browser/metadata/RelationCountMetadata.js.map +1 -1
- package/browser/metadata/RelationIdMetadata.js +1 -1
- package/browser/metadata/RelationIdMetadata.js.map +1 -1
- package/browser/metadata/UniqueMetadata.js +1 -1
- package/browser/metadata/UniqueMetadata.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataValidator.js +9 -9
- package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +2 -2
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/RelationJoinColumnBuilder.js +1 -1
- package/browser/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/browser/migration/MigrationExecutor.js +16 -16
- package/browser/migration/MigrationExecutor.js.map +1 -1
- package/browser/naming-strategy/DefaultNamingStrategy.js +11 -11
- package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/browser/persistence/tree/ClosureSubjectExecutor.js +17 -17
- package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.js +2 -2
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/browser/persistence/tree/NestedSetSubjectExecutor.js +44 -44
- package/browser/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
- package/browser/platform/BrowserPlatformTools.js +9 -9
- package/browser/platform/BrowserPlatformTools.js.map +1 -1
- package/browser/platform/PlatformTools.js +1 -1
- package/browser/platform/PlatformTools.js.map +1 -1
- package/browser/query-builder/Alias.js +1 -1
- package/browser/query-builder/Alias.js.map +1 -1
- package/browser/query-builder/DeleteQueryBuilder.js +3 -3
- package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/InsertQueryBuilder.js +22 -22
- package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
- package/browser/query-builder/JoinAttribute.js +1 -1
- package/browser/query-builder/JoinAttribute.js.map +1 -1
- package/browser/query-builder/QueryBuilder.js +39 -39
- package/browser/query-builder/QueryBuilder.js.map +1 -1
- package/browser/query-builder/QueryExpressionMap.js +2 -2
- package/browser/query-builder/QueryExpressionMap.js.map +1 -1
- package/browser/query-builder/RelationLoader.js +7 -7
- package/browser/query-builder/RelationLoader.js.map +1 -1
- package/browser/query-builder/RelationQueryBuilder.js +3 -3
- package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
- package/browser/query-builder/RelationRemover.js +4 -4
- package/browser/query-builder/RelationRemover.js.map +1 -1
- package/browser/query-builder/RelationUpdater.js +1 -1
- package/browser/query-builder/RelationUpdater.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilder.js +23 -23
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/SoftDeleteQueryBuilder.js +4 -4
- package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/UpdateQueryBuilder.js +8 -8
- package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/browser/query-builder/relation-count/RelationCountAttribute.js +1 -1
- package/browser/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdAttribute.js +1 -1
- package/browser/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdLoader.js +4 -4
- package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/browser/query-runner/BaseQueryRunner.js +7 -7
- package/browser/query-runner/BaseQueryRunner.js.map +1 -1
- package/browser/repository/TreeRepository.js +7 -7
- package/browser/repository/TreeRepository.js.map +1 -1
- package/browser/schema-builder/RdbmsSchemaBuilder.js +19 -19
- package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/browser/subscriber/Broadcaster.js +1 -1
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/util/DateUtils.js +1 -1
- package/browser/util/DateUtils.js.map +1 -1
- package/browser/util/DepGraph.js +7 -7
- package/browser/util/DepGraph.js.map +1 -1
- package/browser/util/DirectoryExportedClassesLoader.js +2 -2
- package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/browser/util/PathUtils.js +1 -1
- package/browser/util/PathUtils.js.map +1 -1
- package/cache/DbQueryResultCache.js +6 -6
- package/cache/DbQueryResultCache.js.map +1 -1
- package/cache/RedisQueryResultCache.js +2 -2
- package/cache/RedisQueryResultCache.js.map +1 -1
- package/cli.js +0 -0
- package/commands/CommandUtils.js +1 -1
- package/commands/CommandUtils.js.map +1 -1
- package/commands/EntityCreateCommand.js +3 -3
- package/commands/EntityCreateCommand.js.map +1 -1
- package/commands/InitCommand.js +6 -6
- package/commands/InitCommand.js.map +1 -1
- package/commands/MigrationCreateCommand.js +3 -3
- package/commands/MigrationCreateCommand.js.map +1 -1
- package/commands/MigrationGenerateCommand.js +8 -8
- package/commands/MigrationGenerateCommand.js.map +1 -1
- package/commands/SchemaLogCommand.js +1 -1
- package/commands/SchemaLogCommand.js.map +1 -1
- package/commands/SubscriberCreateCommand.js +2 -2
- package/commands/SubscriberCreateCommand.js.map +1 -1
- package/connection/Connection.js +2 -2
- package/connection/Connection.js.map +1 -1
- package/connection/ConnectionOptionsReader.js +2 -2
- package/connection/ConnectionOptionsReader.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiDriver.js +10 -10
- package/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +157 -157
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +3 -3
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3Driver.js +4 -4
- package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +2 -2
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/driver/capacitor/CapacitorDriver.js +1 -1
- package/driver/capacitor/CapacitorDriver.js.map +1 -1
- package/driver/capacitor/CapacitorQueryRunner.js +1 -1
- package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/driver/cockroachdb/CockroachDriver.js +6 -6
- package/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.js +153 -153
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/cordova/CordovaQueryRunner.js +1 -1
- package/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/driver/expo/ExpoQueryRunner.js +3 -3
- package/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/driver/mongodb/MongoDriver.js +4 -4
- package/driver/mongodb/MongoDriver.js.map +1 -1
- package/driver/mysql/MysqlDriver.js +11 -11
- package/driver/mysql/MysqlDriver.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.js +163 -163
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/driver/nativescript/NativescriptQueryRunner.js +1 -1
- package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/driver/oracle/OracleDriver.js +10 -10
- package/driver/oracle/OracleDriver.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.js +124 -124
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresDriver.js +18 -18
- package/driver/postgres/PostgresDriver.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.js +229 -229
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/react-native/ReactNativeQueryRunner.js +1 -1
- package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/driver/sap/SapDriver.js +9 -9
- package/driver/sap/SapDriver.js.map +1 -1
- package/driver/sap/SapQueryRunner.js +126 -126
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/sqlite/SqliteDriver.js +4 -4
- package/driver/sqlite/SqliteDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.js +3 -3
- package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +61 -61
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/driver/sqljs/SqljsDriver.js +3 -3
- package/driver/sqljs/SqljsDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerDriver.js +11 -11
- package/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.js +203 -203
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/entity-manager/EntityManager.js +4 -4
- package/entity-manager/EntityManager.js.map +1 -1
- package/entity-manager/MongoEntityManager.js +1 -1
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/entity-schema/EntitySchemaEmbeddedError.js +2 -2
- package/entity-schema/EntitySchemaEmbeddedError.js.map +1 -1
- package/error/AlreadyHasActiveConnectionError.js +1 -1
- package/error/AlreadyHasActiveConnectionError.js.map +1 -1
- package/error/CannotAttachTreeChildrenEntityError.js +1 -1
- package/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
- package/error/CannotConnectAlreadyConnectedError.js +1 -1
- package/error/CannotConnectAlreadyConnectedError.js.map +1 -1
- package/error/CannotCreateEntityIdMapError.js +1 -1
- package/error/CannotCreateEntityIdMapError.js.map +1 -1
- package/error/CannotDetermineEntityError.js +1 -1
- package/error/CannotDetermineEntityError.js.map +1 -1
- package/error/CannotExecuteNotConnectedError.js +1 -1
- package/error/CannotExecuteNotConnectedError.js.map +1 -1
- package/error/CannotGetEntityManagerNotConnectedError.js +1 -1
- package/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
- package/error/CannotReflectMethodParameterTypeError.js +1 -1
- package/error/CannotReflectMethodParameterTypeError.js.map +1 -1
- package/error/CircularRelationsError.js +1 -1
- package/error/CircularRelationsError.js.map +1 -1
- package/error/ColumnTypeUndefinedError.js +1 -1
- package/error/ColumnTypeUndefinedError.js.map +1 -1
- package/error/ConnectionIsNotSetError.js +1 -1
- package/error/ConnectionIsNotSetError.js.map +1 -1
- package/error/ConnectionNotFoundError.js +1 -1
- package/error/ConnectionNotFoundError.js.map +1 -1
- package/error/CustomRepositoryCannotInheritRepositoryError.js +1 -1
- package/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
- package/error/CustomRepositoryDoesNotHaveEntityError.js +1 -1
- package/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
- package/error/CustomRepositoryNotFoundError.js +1 -1
- package/error/CustomRepositoryNotFoundError.js.map +1 -1
- package/error/DataTypeNotSupportedError.js +1 -1
- package/error/DataTypeNotSupportedError.js.map +1 -1
- package/error/DriverOptionNotSetError.js +1 -1
- package/error/DriverOptionNotSetError.js.map +1 -1
- package/error/DriverPackageNotInstalledError.js +2 -2
- package/error/DriverPackageNotInstalledError.js.map +1 -1
- package/error/EntityColumnNotFound.js +1 -1
- package/error/EntityColumnNotFound.js.map +1 -1
- package/error/EntityMetadataNotFoundError.js +1 -1
- package/error/EntityMetadataNotFoundError.js.map +1 -1
- package/error/EntityNotFoundError.js +2 -2
- package/error/EntityNotFoundError.js.map +1 -1
- package/error/FindRelationsNotFoundError.js +2 -2
- package/error/FindRelationsNotFoundError.js.map +1 -1
- package/error/InitializedRelationError.js +1 -1
- package/error/InitializedRelationError.js.map +1 -1
- package/error/MissingDeleteDateColumnError.js +1 -1
- package/error/MissingDeleteDateColumnError.js.map +1 -1
- package/error/MissingDriverError.js +2 -2
- package/error/MissingDriverError.js.map +1 -1
- package/error/MissingJoinColumnError.js +3 -3
- package/error/MissingJoinColumnError.js.map +1 -1
- package/error/MissingJoinTableError.js +3 -3
- package/error/MissingJoinTableError.js.map +1 -1
- package/error/MissingPrimaryColumnError.js +1 -1
- package/error/MissingPrimaryColumnError.js.map +1 -1
- package/error/MustBeEntityError.js +1 -1
- package/error/MustBeEntityError.js.map +1 -1
- package/error/NamingStrategyNotFoundError.js +2 -2
- package/error/NamingStrategyNotFoundError.js.map +1 -1
- package/error/NoConnectionForRepositoryError.js +1 -1
- package/error/NoConnectionForRepositoryError.js.map +1 -1
- package/error/NoConnectionOptionError.js +2 -2
- package/error/NoConnectionOptionError.js.map +1 -1
- package/error/NoVersionOrUpdateDateColumnError.js +1 -1
- package/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
- package/error/OptimisticLockVersionMismatchError.js +1 -1
- package/error/OptimisticLockVersionMismatchError.js.map +1 -1
- package/error/PrimaryColumnCannotBeNullableError.js +1 -1
- package/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
- package/error/RepositoryNotFoundError.js +2 -2
- package/error/RepositoryNotFoundError.js.map +1 -1
- package/error/RepositoryNotTreeError.js +1 -1
- package/error/RepositoryNotTreeError.js.map +1 -1
- package/error/SubjectRemovedAndUpdatedError.js +1 -1
- package/error/SubjectRemovedAndUpdatedError.js.map +1 -1
- package/error/SubjectWithoutIdentifierError.js +1 -1
- package/error/SubjectWithoutIdentifierError.js.map +1 -1
- package/error/TreeRepositoryNotSupportedError.js +1 -1
- package/error/TreeRepositoryNotSupportedError.js.map +1 -1
- package/error/UsingJoinColumnIsNotAllowedError.js +1 -1
- package/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -1
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
- package/error/UsingJoinTableIsNotAllowedError.js +2 -2
- package/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -1
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
- package/find-options/FindOptionsUtils.js +6 -6
- package/find-options/FindOptionsUtils.js.map +1 -1
- package/logger/FileLogger.js +3 -3
- package/logger/FileLogger.js.map +1 -1
- package/metadata/EmbeddedMetadata.js +1 -1
- package/metadata/EmbeddedMetadata.js.map +1 -1
- package/metadata/IndexMetadata.js +1 -1
- package/metadata/IndexMetadata.js.map +1 -1
- package/metadata/RelationCountMetadata.js +1 -1
- package/metadata/RelationCountMetadata.js.map +1 -1
- package/metadata/RelationIdMetadata.js +1 -1
- package/metadata/RelationIdMetadata.js.map +1 -1
- package/metadata/UniqueMetadata.js +1 -1
- package/metadata/UniqueMetadata.js.map +1 -1
- package/metadata-builder/EntityMetadataBuilder.js +1 -1
- package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/EntityMetadataValidator.js +9 -9
- package/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/metadata-builder/JunctionEntityMetadataBuilder.js +2 -2
- package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/RelationJoinColumnBuilder.js +1 -1
- package/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/migration/MigrationExecutor.js +16 -16
- package/migration/MigrationExecutor.js.map +1 -1
- package/naming-strategy/DefaultNamingStrategy.js +11 -11
- package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/package.json +260 -1
- package/persistence/tree/ClosureSubjectExecutor.js +17 -17
- package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/persistence/tree/MaterializedPathSubjectExecutor.js +2 -2
- package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/persistence/tree/NestedSetSubjectExecutor.js +44 -44
- package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
- package/platform/PlatformTools.js +1 -1
- package/platform/PlatformTools.js.map +1 -1
- package/query-builder/Alias.js +1 -1
- package/query-builder/Alias.js.map +1 -1
- package/query-builder/DeleteQueryBuilder.js +3 -3
- package/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/query-builder/InsertQueryBuilder.js +22 -22
- package/query-builder/InsertQueryBuilder.js.map +1 -1
- package/query-builder/JoinAttribute.js +1 -1
- package/query-builder/JoinAttribute.js.map +1 -1
- package/query-builder/QueryBuilder.js +39 -39
- package/query-builder/QueryBuilder.js.map +1 -1
- package/query-builder/QueryExpressionMap.js +2 -2
- package/query-builder/QueryExpressionMap.js.map +1 -1
- package/query-builder/RelationLoader.js +7 -7
- package/query-builder/RelationLoader.js.map +1 -1
- package/query-builder/RelationQueryBuilder.js +3 -3
- package/query-builder/RelationQueryBuilder.js.map +1 -1
- package/query-builder/RelationRemover.js +4 -4
- package/query-builder/RelationRemover.js.map +1 -1
- package/query-builder/RelationUpdater.js +1 -1
- package/query-builder/RelationUpdater.js.map +1 -1
- package/query-builder/SelectQueryBuilder.js +23 -23
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/SoftDeleteQueryBuilder.js +4 -4
- package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/query-builder/UpdateQueryBuilder.js +8 -8
- package/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/query-builder/relation-count/RelationCountAttribute.js +1 -1
- package/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
- package/query-builder/relation-id/RelationIdAttribute.js +1 -1
- package/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
- package/query-builder/relation-id/RelationIdLoader.js +4 -4
- package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/query-runner/BaseQueryRunner.js +7 -7
- package/query-runner/BaseQueryRunner.js.map +1 -1
- package/repository/TreeRepository.js +7 -7
- package/repository/TreeRepository.js.map +1 -1
- package/schema-builder/RdbmsSchemaBuilder.js +19 -19
- package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/subscriber/Broadcaster.js +1 -1
- package/subscriber/Broadcaster.js.map +1 -1
- package/util/DateUtils.js +1 -1
- package/util/DateUtils.js.map +1 -1
- package/util/DepGraph.js +7 -7
- package/util/DepGraph.js.map +1 -1
- package/util/DirectoryExportedClassesLoader.js +2 -2
- package/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/util/PathUtils.js +1 -1
- package/util/PathUtils.js.map +1 -1
|
@@ -86,7 +86,7 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
86
86
|
case 5:
|
|
87
87
|
_a.sent();
|
|
88
88
|
return [3 /*break*/, 8];
|
|
89
|
-
case 6: return [4 /*yield*/, this.query("SAVEPOINT typeorm_"
|
|
89
|
+
case 6: return [4 /*yield*/, this.query("SAVEPOINT typeorm_".concat(this.transactionDepth))];
|
|
90
90
|
case 7:
|
|
91
91
|
_a.sent();
|
|
92
92
|
_a.label = 8;
|
|
@@ -115,7 +115,7 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
115
115
|
case 1:
|
|
116
116
|
_a.sent();
|
|
117
117
|
if (!(this.transactionDepth > 1)) return [3 /*break*/, 3];
|
|
118
|
-
return [4 /*yield*/, this.query("RELEASE SAVEPOINT typeorm_"
|
|
118
|
+
return [4 /*yield*/, this.query("RELEASE SAVEPOINT typeorm_".concat(this.transactionDepth - 1))];
|
|
119
119
|
case 2:
|
|
120
120
|
_a.sent();
|
|
121
121
|
return [3 /*break*/, 5];
|
|
@@ -149,7 +149,7 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
149
149
|
case 1:
|
|
150
150
|
_a.sent();
|
|
151
151
|
if (!(this.transactionDepth > 1)) return [3 /*break*/, 3];
|
|
152
|
-
return [4 /*yield*/, this.query("ROLLBACK TO SAVEPOINT typeorm_"
|
|
152
|
+
return [4 /*yield*/, this.query("ROLLBACK TO SAVEPOINT typeorm_".concat(this.transactionDepth - 1))];
|
|
153
153
|
case 2:
|
|
154
154
|
_a.sent();
|
|
155
155
|
return [3 /*break*/, 5];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.ts"],"names":[],"mappings":"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","file":"AuroraDataApiPostgresQueryRunner.js","sourcesContent":["import {QueryRunnerAlreadyReleasedError} from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport {TransactionNotStartedError} from \"../../error/TransactionNotStartedError\";\nimport {QueryRunner} from \"../../query-runner/QueryRunner\";\nimport {IsolationLevel} from \"../types/IsolationLevel\";\nimport {AuroraDataApiPostgresDriver} from \"./AuroraDataApiPostgresDriver\";\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 AuroraDataApiPostgresQueryRunner extends PostgresQueryRunnerWrapper implements QueryRunner {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: AuroraDataApiPostgresDriver;\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(driver: AuroraDataApiPostgresDriver, client: any, mode: ReplicationMode) {\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.obtainSlaveConnection().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 } else { // master\n this.databaseConnectionPromise = this.driver.obtainMasterConnection().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)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionCommit');\n\n if (this.transactionDepth > 1) {\n await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`);\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)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionRollback');\n\n if (this.transactionDepth > 1) {\n await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`);\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(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n 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-data-api-pg/AuroraDataApiPostgresQueryRunner.ts"],"names":[],"mappings":"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","file":"AuroraDataApiPostgresQueryRunner.js","sourcesContent":["import {QueryRunnerAlreadyReleasedError} from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport {TransactionNotStartedError} from \"../../error/TransactionNotStartedError\";\nimport {QueryRunner} from \"../../query-runner/QueryRunner\";\nimport {IsolationLevel} from \"../types/IsolationLevel\";\nimport {AuroraDataApiPostgresDriver} from \"./AuroraDataApiPostgresDriver\";\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 AuroraDataApiPostgresQueryRunner extends PostgresQueryRunnerWrapper implements QueryRunner {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: AuroraDataApiPostgresDriver;\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(driver: AuroraDataApiPostgresDriver, client: any, mode: ReplicationMode) {\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.obtainSlaveConnection().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 } else { // master\n this.databaseConnectionPromise = this.driver.obtainMasterConnection().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)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionCommit');\n\n if (this.transactionDepth > 1) {\n await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`);\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)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionRollback');\n\n if (this.transactionDepth > 1) {\n await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`);\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(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n 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":"../.."}
|
|
@@ -73,7 +73,7 @@ var BetterSqlite3Driver = /** @class */ (function (_super) {
|
|
|
73
73
|
if (!database)
|
|
74
74
|
return tableName;
|
|
75
75
|
if (this.getAttachedDatabaseHandleByRelativePath(database))
|
|
76
|
-
return this.getAttachedDatabaseHandleByRelativePath(database)
|
|
76
|
+
return "".concat(this.getAttachedDatabaseHandleByRelativePath(database), ".").concat(tableName);
|
|
77
77
|
if (database === this.options.database)
|
|
78
78
|
return tableName;
|
|
79
79
|
// we use the decorated name as supplied when deriving attach handle (ideally without non-portable absolute path)
|
|
@@ -85,7 +85,7 @@ var BetterSqlite3Driver = /** @class */ (function (_super) {
|
|
|
85
85
|
attachFilepathRelative: database,
|
|
86
86
|
attachHandle: identifierHash,
|
|
87
87
|
};
|
|
88
|
-
return identifierHash
|
|
88
|
+
return "".concat(identifierHash, ".").concat(tableName);
|
|
89
89
|
};
|
|
90
90
|
// -------------------------------------------------------------------------
|
|
91
91
|
// Protected Methods
|
|
@@ -110,7 +110,7 @@ var BetterSqlite3Driver = /** @class */ (function (_super) {
|
|
|
110
110
|
// in the options, if encryption key for SQLCipher is setted.
|
|
111
111
|
// Must invoke key pragma before trying to do any other interaction with the database.
|
|
112
112
|
if (this.options.key) {
|
|
113
|
-
databaseConnection.exec("PRAGMA key = "
|
|
113
|
+
databaseConnection.exec("PRAGMA key = ".concat(JSON.stringify(this.options.key)));
|
|
114
114
|
}
|
|
115
115
|
// function to run before a database is used in typeorm.
|
|
116
116
|
if (typeof prepareDatabase === "function") {
|
|
@@ -176,7 +176,7 @@ var BetterSqlite3Driver = /** @class */ (function (_super) {
|
|
|
176
176
|
return [4 /*yield*/, this.createDatabaseDirectory(path_1.default.dirname(attachFilepathAbsolute))];
|
|
177
177
|
case 3:
|
|
178
178
|
_e.sent();
|
|
179
|
-
return [4 /*yield*/, this.connection.query("ATTACH \""
|
|
179
|
+
return [4 /*yield*/, this.connection.query("ATTACH \"".concat(attachFilepathAbsolute, "\" AS \"").concat(attachHandle, "\""))];
|
|
180
180
|
case 4:
|
|
181
181
|
_e.sent();
|
|
182
182
|
_e.label = 5;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/better-sqlite3/BetterSqlite3Driver.ts"],"names":[],"mappings":"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","file":"BetterSqlite3Driver.js","sourcesContent":["import mkdirp from \"mkdirp\";\nimport path from \"path\";\nimport { DriverPackageNotInstalledError } from \"../../error/DriverPackageNotInstalledError\";\nimport { DriverOptionNotSetError } from \"../../error/DriverOptionNotSetError\";\nimport { PlatformTools } from \"../../platform/PlatformTools\";\nimport { Connection } from \"../../connection/Connection\";\nimport { ColumnType } from \"../types/ColumnTypes\";\nimport { QueryRunner } from \"../../query-runner/QueryRunner\";\nimport { AbstractSqliteDriver } from \"../sqlite-abstract/AbstractSqliteDriver\";\nimport { BetterSqlite3ConnectionOptions } from \"./BetterSqlite3ConnectionOptions\";\nimport { BetterSqlite3QueryRunner } from \"./BetterSqlite3QueryRunner\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport { filepathToName, isAbsolute } from \"../../util/PathUtils\";\n\n/**\n * Organizes communication with sqlite DBMS.\n */\nexport class BetterSqlite3Driver extends AbstractSqliteDriver {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Connection options.\n */\n options: BetterSqlite3ConnectionOptions;\n\n /**\n * SQLite underlying library.\n */\n sqlite: any;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connection: Connection) {\n super(connection);\n\n this.connection = connection;\n this.options = connection.options as BetterSqlite3ConnectionOptions;\n this.database = this.options.database;\n\n // validate options to make sure everything is set\n if (!this.options.database)\n throw new DriverOptionNotSetError(\"database\");\n\n // load sqlite package\n this.loadDependencies();\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Closes connection with database.\n */\n async disconnect(): Promise<void> {\n this.queryRunner = undefined;\n this.databaseConnection.close();\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: ReplicationMode): QueryRunner {\n if (!this.queryRunner)\n this.queryRunner = new BetterSqlite3QueryRunner(this);\n\n return this.queryRunner;\n }\n\n normalizeType(column: { type?: ColumnType, length?: number | string, precision?: number | null, scale?: number }): string {\n if ((column.type as any) === Buffer) {\n return \"blob\";\n }\n\n return super.normalizeType(column);\n }\n\n async afterConnect(): Promise<void> {\n return this.attachDatabases();\n }\n\n /**\n * For SQLite, the database may be added in the decorator metadata. It will be a filepath to a database file.\n */\n buildTableName(tableName: string, _schema?: string, database?: string): string {\n\n if (!database) return tableName;\n if (this.getAttachedDatabaseHandleByRelativePath(database)) return `${this.getAttachedDatabaseHandleByRelativePath(database)}.${tableName}`;\n\n if (database === this.options.database) return tableName;\n\n // we use the decorated name as supplied when deriving attach handle (ideally without non-portable absolute path)\n const identifierHash = filepathToName(database);\n // decorated name will be assumed relative to main database file when non absolute. Paths supplied as absolute won't be portable\n const absFilepath = isAbsolute(database) ? database : path.join(this.getMainDatabasePath(), database);\n\n this.attachedDatabases[database] = {\n attachFilepathAbsolute: absFilepath,\n attachFilepathRelative: database,\n attachHandle: identifierHash,\n };\n\n return `${identifierHash}.${tableName}`;\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates connection with the database.\n */\n protected async createDatabaseConnection() {\n // not to create database directory if is in memory\n if (this.options.database !== \":memory:\")\n await this.createDatabaseDirectory(path.dirname(this.options.database));\n\n const {\n database,\n readonly = false,\n fileMustExist = false,\n timeout = 5000,\n verbose = null,\n prepareDatabase\n } = this.options;\n const databaseConnection = this.sqlite(database, { readonly, fileMustExist, timeout, verbose });\n // in the options, if encryption key for SQLCipher is setted.\n // Must invoke key pragma before trying to do any other interaction with the database.\n if (this.options.key) {\n databaseConnection.exec(`PRAGMA key = ${JSON.stringify(this.options.key)}`);\n }\n\n // function to run before a database is used in typeorm.\n if (typeof prepareDatabase === \"function\") {\n prepareDatabase(databaseConnection);\n }\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 databaseConnection.exec(`PRAGMA foreign_keys = ON`);\n\n // turn on WAL mode to enhance performance\n databaseConnection.exec(`PRAGMA journal_mode = WAL`);\n\n return databaseConnection;\n }\n\n /**\n * If driver dependency is not given explicitly, then try to load it via \"require\".\n */\n protected loadDependencies(): void {\n try {\n const sqlite = this.options.driver || PlatformTools.load(\"better-sqlite3\");\n this.sqlite = sqlite;\n\n } catch (e) {\n throw new DriverPackageNotInstalledError(\"SQLite\", \"better-sqlite3\");\n }\n }\n\n /**\n * Auto creates database directory if it does not exist.\n */\n protected async createDatabaseDirectory(dbPath: string): Promise<void> {\n await mkdirp(dbPath);\n }\n\n /**\n * Performs the attaching of the database files. The attachedDatabase should have been populated during calls to #buildTableName\n * during EntityMetadata production (see EntityMetadata#buildTablePath)\n *\n * https://sqlite.org/lang_attach.html\n */\n protected async attachDatabases() {\n\n // @todo - possibly check number of databases (but unqueriable at runtime sadly) - https://www.sqlite.org/limits.html#max_attached\n for await (const {attachHandle, attachFilepathAbsolute} of Object.values(this.attachedDatabases)) {\n await this.createDatabaseDirectory(path.dirname(attachFilepathAbsolute));\n await this.connection.query(`ATTACH \"${attachFilepathAbsolute}\" AS \"${attachHandle}\"`);\n }\n }\n\n protected getMainDatabasePath(): string {\n const optionsDb = this.options.database;\n return path.dirname(isAbsolute(optionsDb) ? optionsDb : path.join(this.options.baseDirectory!, optionsDb));\n }\n\n}\n"],"sourceRoot":"../.."}
|
|
1
|
+
{"version":3,"sources":["../../src/driver/better-sqlite3/BetterSqlite3Driver.ts"],"names":[],"mappings":"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","file":"BetterSqlite3Driver.js","sourcesContent":["import mkdirp from \"mkdirp\";\nimport path from \"path\";\nimport { DriverPackageNotInstalledError } from \"../../error/DriverPackageNotInstalledError\";\nimport { DriverOptionNotSetError } from \"../../error/DriverOptionNotSetError\";\nimport { PlatformTools } from \"../../platform/PlatformTools\";\nimport { Connection } from \"../../connection/Connection\";\nimport { ColumnType } from \"../types/ColumnTypes\";\nimport { QueryRunner } from \"../../query-runner/QueryRunner\";\nimport { AbstractSqliteDriver } from \"../sqlite-abstract/AbstractSqliteDriver\";\nimport { BetterSqlite3ConnectionOptions } from \"./BetterSqlite3ConnectionOptions\";\nimport { BetterSqlite3QueryRunner } from \"./BetterSqlite3QueryRunner\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport { filepathToName, isAbsolute } from \"../../util/PathUtils\";\n\n/**\n * Organizes communication with sqlite DBMS.\n */\nexport class BetterSqlite3Driver extends AbstractSqliteDriver {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Connection options.\n */\n options: BetterSqlite3ConnectionOptions;\n\n /**\n * SQLite underlying library.\n */\n sqlite: any;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connection: Connection) {\n super(connection);\n\n this.connection = connection;\n this.options = connection.options as BetterSqlite3ConnectionOptions;\n this.database = this.options.database;\n\n // validate options to make sure everything is set\n if (!this.options.database)\n throw new DriverOptionNotSetError(\"database\");\n\n // load sqlite package\n this.loadDependencies();\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Closes connection with database.\n */\n async disconnect(): Promise<void> {\n this.queryRunner = undefined;\n this.databaseConnection.close();\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: ReplicationMode): QueryRunner {\n if (!this.queryRunner)\n this.queryRunner = new BetterSqlite3QueryRunner(this);\n\n return this.queryRunner;\n }\n\n normalizeType(column: { type?: ColumnType, length?: number | string, precision?: number | null, scale?: number }): string {\n if ((column.type as any) === Buffer) {\n return \"blob\";\n }\n\n return super.normalizeType(column);\n }\n\n async afterConnect(): Promise<void> {\n return this.attachDatabases();\n }\n\n /**\n * For SQLite, the database may be added in the decorator metadata. It will be a filepath to a database file.\n */\n buildTableName(tableName: string, _schema?: string, database?: string): string {\n\n if (!database) return tableName;\n if (this.getAttachedDatabaseHandleByRelativePath(database)) return `${this.getAttachedDatabaseHandleByRelativePath(database)}.${tableName}`;\n\n if (database === this.options.database) return tableName;\n\n // we use the decorated name as supplied when deriving attach handle (ideally without non-portable absolute path)\n const identifierHash = filepathToName(database);\n // decorated name will be assumed relative to main database file when non absolute. Paths supplied as absolute won't be portable\n const absFilepath = isAbsolute(database) ? database : path.join(this.getMainDatabasePath(), database);\n\n this.attachedDatabases[database] = {\n attachFilepathAbsolute: absFilepath,\n attachFilepathRelative: database,\n attachHandle: identifierHash,\n };\n\n return `${identifierHash}.${tableName}`;\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates connection with the database.\n */\n protected async createDatabaseConnection() {\n // not to create database directory if is in memory\n if (this.options.database !== \":memory:\")\n await this.createDatabaseDirectory(path.dirname(this.options.database));\n\n const {\n database,\n readonly = false,\n fileMustExist = false,\n timeout = 5000,\n verbose = null,\n prepareDatabase\n } = this.options;\n const databaseConnection = this.sqlite(database, { readonly, fileMustExist, timeout, verbose });\n // in the options, if encryption key for SQLCipher is setted.\n // Must invoke key pragma before trying to do any other interaction with the database.\n if (this.options.key) {\n databaseConnection.exec(`PRAGMA key = ${JSON.stringify(this.options.key)}`);\n }\n\n // function to run before a database is used in typeorm.\n if (typeof prepareDatabase === \"function\") {\n prepareDatabase(databaseConnection);\n }\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 databaseConnection.exec(`PRAGMA foreign_keys = ON`);\n\n // turn on WAL mode to enhance performance\n databaseConnection.exec(`PRAGMA journal_mode = WAL`);\n\n return databaseConnection;\n }\n\n /**\n * If driver dependency is not given explicitly, then try to load it via \"require\".\n */\n protected loadDependencies(): void {\n try {\n const sqlite = this.options.driver || PlatformTools.load(\"better-sqlite3\");\n this.sqlite = sqlite;\n\n } catch (e) {\n throw new DriverPackageNotInstalledError(\"SQLite\", \"better-sqlite3\");\n }\n }\n\n /**\n * Auto creates database directory if it does not exist.\n */\n protected async createDatabaseDirectory(dbPath: string): Promise<void> {\n await mkdirp(dbPath);\n }\n\n /**\n * Performs the attaching of the database files. The attachedDatabase should have been populated during calls to #buildTableName\n * during EntityMetadata production (see EntityMetadata#buildTablePath)\n *\n * https://sqlite.org/lang_attach.html\n */\n protected async attachDatabases() {\n\n // @todo - possibly check number of databases (but unqueriable at runtime sadly) - https://www.sqlite.org/limits.html#max_attached\n for await (const {attachHandle, attachFilepathAbsolute} of Object.values(this.attachedDatabases)) {\n await this.createDatabaseDirectory(path.dirname(attachFilepathAbsolute));\n await this.connection.query(`ATTACH \"${attachFilepathAbsolute}\" AS \"${attachHandle}\"`);\n }\n }\n\n protected getMainDatabasePath(): string {\n const optionsDb = this.options.database;\n return path.dirname(isAbsolute(optionsDb) ? optionsDb : path.join(this.options.baseDirectory!, optionsDb));\n }\n\n}\n"],"sourceRoot":"../.."}
|
|
@@ -157,7 +157,7 @@ var BetterSqlite3QueryRunner = /** @class */ (function (_super) {
|
|
|
157
157
|
switch (_b.label) {
|
|
158
158
|
case 0:
|
|
159
159
|
_a = (0, tslib_1.__read)(this.splitTablePath(tablePath), 2), database = _a[0], tableName = _a[1];
|
|
160
|
-
return [4 /*yield*/, this.query("SELECT "
|
|
160
|
+
return [4 /*yield*/, this.query("SELECT ".concat(database ? "'".concat(database, "'") : null, " as database, * FROM ").concat(this.escapePath("".concat(database ? "".concat(database, ".") : "", "sqlite_master")), " WHERE \"type\" = '").concat(tableOrIndex, "' AND \"").concat(tableOrIndex === "table" ? "name" : "tbl_name", "\" IN ('").concat(tableName, "')"))];
|
|
161
161
|
case 1:
|
|
162
162
|
res = _b.sent();
|
|
163
163
|
return [2 /*return*/, res];
|
|
@@ -172,7 +172,7 @@ var BetterSqlite3QueryRunner = /** @class */ (function (_super) {
|
|
|
172
172
|
switch (_b.label) {
|
|
173
173
|
case 0:
|
|
174
174
|
_a = (0, tslib_1.__read)(this.splitTablePath(tablePath), 2), database = _a[0], tableName = _a[1];
|
|
175
|
-
return [4 /*yield*/, this.query("PRAGMA "
|
|
175
|
+
return [4 /*yield*/, this.query("PRAGMA ".concat(database ? "\"".concat(database, "\".") : "").concat(pragma, "(\"").concat(tableName, "\")"))];
|
|
176
176
|
case 1:
|
|
177
177
|
res = _b.sent();
|
|
178
178
|
return [2 /*return*/, res];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/better-sqlite3/BetterSqlite3QueryRunner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../../src/driver/better-sqlite3/BetterSqlite3QueryRunner.ts"],"names":[],"mappings":"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","file":"BetterSqlite3QueryRunner.js","sourcesContent":["import { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport { QueryFailedError } from \"../../error/QueryFailedError\";\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\";\nimport { Broadcaster } from \"../../subscriber/Broadcaster\";\nimport { BetterSqlite3Driver } from \"./BetterSqlite3Driver\";\nimport { QueryResult } from \"../../query-runner/QueryResult\";\n\n/**\n * Runs queries on a single sqlite database connection.\n *\n * Does not support compose primary keys with autoincrement field.\n * todo: need to throw exception for this case.\n */\nexport class BetterSqlite3QueryRunner extends AbstractSqliteQueryRunner {\n\n /**\n * Database driver used by connection.\n */\n driver: BetterSqlite3Driver;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: BetterSqlite3Driver) {\n super();\n this.driver = driver;\n this.connection = driver.connection;\n this.broadcaster = new Broadcaster(this);\n if (typeof this.driver.options.statementCacheSize === \"number\") {\n this.cacheSize = this.driver.options.statementCacheSize;\n } else {\n this.cacheSize = 100;\n }\n }\n\n private cacheSize: number;\n private stmtCache = new Map<string, any>();\n\n private async getStmt(query: string) {\n if (this.cacheSize > 0) {\n let stmt = this.stmtCache.get(query);\n if (!stmt) {\n const databaseConnection = await this.connect();\n stmt = databaseConnection.prepare(query);\n this.stmtCache.set(query, stmt);\n while (this.stmtCache.size > this.cacheSize) {\n // since es6 map keeps the insertion order,\n // it comes to be FIFO cache\n const key = this.stmtCache.keys().next().value;\n this.stmtCache.delete(key);\n }\n }\n return stmt;\n } else {\n const databaseConnection = await this.connect();\n return databaseConnection.prepare(query);\n }\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 /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n throw new QueryRunnerAlreadyReleasedError();\n\n const connection = this.driver.connection;\n\n parameters = parameters || [];\n for (let i = 0; i < parameters.length; i++) {\n // in \"where\" clauses the parameters are not escaped by the driver\n if (typeof parameters[i] === \"boolean\")\n parameters[i] = +parameters[i];\n }\n\n this.driver.connection.logger.logQuery(query, parameters, this);\n const queryStartTime = +new Date();\n\n const stmt = await this.getStmt(query);\n\n try {\n const result = new QueryResult();\n\n if (stmt.reader) {\n const raw = stmt.all.apply(stmt, parameters);\n\n result.raw = raw;\n\n if (Array.isArray(raw)) {\n result.records = raw;\n }\n\n } else {\n const raw = stmt.run.apply(stmt, parameters);\n result.affected = raw.changes;\n result.raw = raw.lastInsertRowid;\n }\n\n // log slow queries if maxQueryExecution time is set\n const maxQueryExecutionTime = this.driver.options.maxQueryExecutionTime;\n const queryEndTime = +new Date();\n const queryExecutionTime = queryEndTime - queryStartTime;\n if (maxQueryExecutionTime && queryExecutionTime > maxQueryExecutionTime)\n connection.logger.logQuerySlow(queryExecutionTime, query, parameters, this);\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n } catch (err) {\n connection.logger.logQueryError(err, query, parameters, this);\n throw new QueryFailedError(query, parameters, err);\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n protected async loadTableRecords(tablePath: string, tableOrIndex: \"table\" | \"index\") {\n const [database, tableName] = this.splitTablePath(tablePath);\n const res = await this.query(`SELECT ${database ? `'${database}'` : null} as database, * FROM ${this.escapePath(`${database ? `${database}.` : \"\"}sqlite_master`)} WHERE \"type\" = '${tableOrIndex}' AND \"${tableOrIndex === \"table\" ? \"name\" : \"tbl_name\"}\" IN ('${tableName}')`);\n return res;\n }\n protected async loadPragmaRecords(tablePath: string, pragma: string) {\n const [database, tableName] = this.splitTablePath(tablePath);\n const res = await this.query(`PRAGMA ${database ? `\"${database}\".` : \"\"}${pragma}(\"${tableName}\")`);\n return res;\n }\n}\n"],"sourceRoot":"../.."}
|
|
@@ -104,7 +104,7 @@ var CapacitorDriver = /** @class */ (function (_super) {
|
|
|
104
104
|
_a.sent();
|
|
105
105
|
if (!(this.options.journalMode &&
|
|
106
106
|
["DELETE", "TRUNCATE", "PERSIST", "MEMORY", "WAL", "OFF"].indexOf(this.options.journalMode) !== -1)) return [3 /*break*/, 5];
|
|
107
|
-
return [4 /*yield*/, connection.query("PRAGMA journal_mode = "
|
|
107
|
+
return [4 /*yield*/, connection.query("PRAGMA journal_mode = ".concat(this.options.journalMode))];
|
|
108
108
|
case 4:
|
|
109
109
|
_a.sent();
|
|
110
110
|
_a.label = 5;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/capacitor/CapacitorDriver.ts"],"names":[],"mappings":";;;;AAAA,gFAA+E;AAE/E,+DAA8D;AAG9D,qCAGqB;AAGrB;IAAqC,gDAAoB;IAIrD,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,yBAAY,UAAsB;QAAlC,YACI,kBAAM,UAAU,CAAC,SAapB;QAXG,KAAI,CAAC,QAAQ,GAAG,KAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACtC,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAElC,kDAAkD;QAClD,IAAI,CAAC,KAAI,CAAC,OAAO,CAAC,QAAQ;YACtB,MAAM,IAAI,+BAAuB,CAAC,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC,KAAI,CAAC,OAAO,CAAC,MAAM;YAAE,MAAM,IAAI,+BAAuB,CAAC,QAAQ,CAAC,CAAC;QAEtE,sBAAsB;QACtB,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC;;IACtC,CAAC;IAED,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAE5E;;OAEG;IACG,iCAAO,GAAb;;;;;wBACI,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;wBAC1D,qBAAM,IAAI,CAAC,kBAAkB,EAAA;;wBAA7B,SAA6B,CAAC;;;;;KACjC;IAED;;OAEG;IACG,oCAAU,GAAhB;;;;;;;wBACI,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;wBACF,qBAAM,IAAI,CAAC,kBAAkB,EAAA;;wBAAlD,kBAAkB,GAAG,SAA6B;wBACxD,sBAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC;gCACnC,KAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;4BACxC,CAAC,CAAC,EAAC;;;;KACN;IAED;;OAEG;IACH,2CAAiB,GAAjB,UAAkB,IAAqB;QACnC,IAAI,CAAC,IAAI,CAAC,WAAW;YACjB,IAAI,CAAC,WAAW,GAAG,IAAI,2CAAoB,CAAC,IAAI,CAAC,CAAC;QAEtD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;OAEG;IACa,kDAAwB,GAAxC;;;;;;wBACU,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,eAAe,CAAC;wBACpD,kBAAkB,GAAG,YAAY,KAAK,eAAe,CAAC;wBACtD,eAAe,GACjB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,WAAW;4BACvC,CAAC,CAAC,CAAC;4BACH,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;wBACZ,qBAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CACjD,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,kBAAkB,EAClB,YAAY,EACZ,eAAe,CAClB,EAAA;;wBALK,UAAU,GAAG,SAKlB;wBACD,qBAAM,UAAU,CAAC,IAAI,EAAE,EAAA;;wBAAvB,SAAuB,CAAC;wBAExB,yFAAyF;wBACzF,kEAAkE;wBAClE,qBAAM,UAAU,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAA;;wBAFlD,yFAAyF;wBACzF,kEAAkE;wBAClE,SAAkD,CAAC;6BAG/C,CAAA,IAAI,CAAC,OAAO,CAAC,WAAW;4BACxB,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,CAAA,EAHR,wBAGQ;wBAER,qBAAM,UAAU,CAAC,KAAK,CAClB,
|
|
1
|
+
{"version":3,"sources":["../../src/driver/capacitor/CapacitorDriver.ts"],"names":[],"mappings":"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","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 { Connection } from \"../../connection/Connection\";\nimport {\n DriverOptionNotSetError,\n DriverPackageNotInstalledError,\n} 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: Connection) {\n super(connection);\n\n this.database = this.options.database;\n this.driver = this.options.driver;\n\n // validate options to make sure everything is set\n if (!this.options.database)\n throw new DriverOptionNotSetError(\"database\");\n\n if (!this.options.driver) throw new DriverOptionNotSetError(\"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)\n 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.query(`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.query(\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":"../.."}
|
|
@@ -134,7 +134,7 @@ var CapacitorQueryRunner = /** @class */ (function (_super) {
|
|
|
134
134
|
* Parametrizes given object of values. Used to create column=value queries.
|
|
135
135
|
*/
|
|
136
136
|
CapacitorQueryRunner.prototype.parametrize = function (objectLiteral) {
|
|
137
|
-
return Object.keys(objectLiteral).map(function (key) { return "\""
|
|
137
|
+
return Object.keys(objectLiteral).map(function (key) { return "\"".concat(key, "\"") + "=?"; });
|
|
138
138
|
};
|
|
139
139
|
return CapacitorQueryRunner;
|
|
140
140
|
}(AbstractSqliteQueryRunner_1.AbstractSqliteQueryRunner));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/driver/capacitor/CapacitorQueryRunner.ts"],"names":[],"mappings":"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
|
|
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(query: string, parameters?: any[], useStructuredResult = false): 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.substr(0, query.indexOf(\" \"));\n\n try {\n let raw: any;\n\n if (\n [ \"BEGIN\", \"ROLLBACK\", \"COMMIT\", \"CREATE\", \"ALTER\", \"DROP\" ].indexOf(\n command\n ) !== -1\n ) {\n raw = await databaseConnection.execute(query, false);\n } else if ([ \"INSERT\", \"UPDATE\", \"DELETE\" ].indexOf(command) !== -1) {\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":"../.."}
|
|
@@ -504,9 +504,9 @@ var CockroachDriver = /** @class */ (function () {
|
|
|
504
504
|
*/
|
|
505
505
|
CockroachDriver.prototype.normalizeDefault = function (columnMetadata) {
|
|
506
506
|
var defaultValue = columnMetadata.default;
|
|
507
|
-
var arrayCast = columnMetadata.isArray ? "::"
|
|
507
|
+
var arrayCast = columnMetadata.isArray ? "::".concat(columnMetadata.type, "[]") : "";
|
|
508
508
|
if (typeof defaultValue === "number") {
|
|
509
|
-
return "("
|
|
509
|
+
return "(".concat(defaultValue, ")");
|
|
510
510
|
}
|
|
511
511
|
if (typeof defaultValue === "boolean") {
|
|
512
512
|
return defaultValue ? "true" : "false";
|
|
@@ -522,15 +522,15 @@ var CockroachDriver = /** @class */ (function () {
|
|
|
522
522
|
return value;
|
|
523
523
|
}
|
|
524
524
|
if (typeof defaultValue === "string") {
|
|
525
|
-
return "'"
|
|
525
|
+
return "'".concat(defaultValue, "'").concat(arrayCast);
|
|
526
526
|
}
|
|
527
527
|
if (typeof defaultValue === "object" && defaultValue !== null) {
|
|
528
|
-
return "'"
|
|
528
|
+
return "'".concat(JSON.stringify(defaultValue), "'");
|
|
529
529
|
}
|
|
530
530
|
if (defaultValue === undefined || defaultValue === null) {
|
|
531
531
|
return undefined;
|
|
532
532
|
}
|
|
533
|
-
return ""
|
|
533
|
+
return "".concat(defaultValue);
|
|
534
534
|
};
|
|
535
535
|
/**
|
|
536
536
|
* Normalizes "isUnique" value of the column.
|
|
@@ -743,7 +743,7 @@ var CockroachDriver = /** @class */ (function () {
|
|
|
743
743
|
}, options.extra || {});
|
|
744
744
|
pool = new this.postgres.Pool(connectionOptions);
|
|
745
745
|
logger = this.connection.logger;
|
|
746
|
-
poolErrorHandler = options.poolErrorHandler || (function (error) { return logger.log("warn", "Postgres pool raised an error. "
|
|
746
|
+
poolErrorHandler = options.poolErrorHandler || (function (error) { return logger.log("warn", "Postgres pool raised an error. ".concat(error)); });
|
|
747
747
|
/*
|
|
748
748
|
Attaching an error handler to pool errors is essential, as, otherwise, errors raised will go unhandled and
|
|
749
749
|
cause the hosting app to crash.
|