typeorm 0.2.42-dev.f3e2b0e → 0.2.43-dev.4590c9b
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 +38 -0
- package/browser/cache/RedisQueryResultCache.js +40 -35
- package/browser/cache/RedisQueryResultCache.js.map +1 -1
- package/browser/common/DeepPartial.d.ts +3 -3
- package/browser/common/DeepPartial.js.map +1 -1
- package/browser/common/RelationType.d.ts +14 -0
- package/browser/common/RelationType.js +3 -0
- package/browser/common/RelationType.js.map +1 -0
- package/browser/connection/BaseConnectionOptions.d.ts +5 -0
- package/browser/connection/BaseConnectionOptions.js.map +1 -1
- package/browser/connection/Connection.d.ts +7 -3
- package/browser/connection/Connection.js +80 -55
- package/browser/connection/Connection.js.map +1 -1
- package/browser/connection/ConnectionMetadataBuilder.d.ts +3 -3
- package/browser/connection/ConnectionMetadataBuilder.js +54 -22
- package/browser/connection/ConnectionMetadataBuilder.js.map +1 -1
- package/browser/connection/ConnectionOptionsReader.js +36 -29
- package/browser/connection/ConnectionOptionsReader.js.map +1 -1
- package/browser/connection/options-reader/ConnectionOptionsEnvReader.js +1 -0
- package/browser/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
- package/browser/decorator/Unique.d.ts +5 -4
- package/browser/decorator/Unique.js +7 -3
- package/browser/decorator/Unique.js.map +1 -1
- package/browser/decorator/columns/PrimaryGeneratedColumn.d.ts +2 -1
- package/browser/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
- package/browser/decorator/listeners/AfterRecover.d.ts +4 -0
- package/browser/decorator/listeners/AfterRecover.js +16 -0
- package/browser/decorator/listeners/AfterRecover.js.map +1 -0
- package/browser/decorator/listeners/AfterSoftRemove.d.ts +4 -0
- package/browser/decorator/listeners/AfterSoftRemove.js +16 -0
- package/browser/decorator/listeners/AfterSoftRemove.js.map +1 -0
- package/browser/decorator/listeners/BeforeRecover.d.ts +4 -0
- package/browser/decorator/listeners/BeforeRecover.js +16 -0
- package/browser/decorator/listeners/BeforeRecover.js.map +1 -0
- package/browser/decorator/listeners/BeforeSoftRemove.d.ts +4 -0
- package/browser/decorator/listeners/BeforeSoftRemove.js +16 -0
- package/browser/decorator/listeners/BeforeSoftRemove.js.map +1 -0
- package/browser/decorator/options/ColumnOptions.d.ts +4 -0
- package/browser/decorator/options/ColumnOptions.js.map +1 -1
- package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.d.ts +22 -0
- package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.js +3 -0
- package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.js.map +1 -0
- package/browser/decorator/options/RelationOptions.d.ts +1 -1
- package/browser/decorator/options/RelationOptions.js.map +1 -1
- package/browser/decorator/options/UniqueOptions.d.ts +10 -0
- package/browser/decorator/options/UniqueOptions.js +3 -0
- package/browser/decorator/options/UniqueOptions.js.map +1 -0
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +2 -2
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.d.ts +14 -1
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +94 -9
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +10 -0
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +64 -1
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/browser/driver/capacitor/CapacitorQueryRunner.d.ts +8 -0
- package/browser/driver/capacitor/CapacitorQueryRunner.js +30 -0
- package/browser/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/cordova/CordovaQueryRunner.d.ts +8 -0
- package/browser/driver/cordova/CordovaQueryRunner.js +30 -0
- package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/browser/driver/expo/ExpoQueryRunner.d.ts +8 -0
- package/browser/driver/expo/ExpoQueryRunner.js +30 -0
- package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/MongoConnectionOptions.d.ts +1 -1
- package/browser/driver/mongodb/MongoConnectionOptions.js.map +1 -1
- package/browser/driver/mongodb/MongoQueryRunner.d.ts +8 -0
- package/browser/driver/mongodb/MongoQueryRunner.js +20 -0
- package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.js +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/browser/driver/nativescript/NativescriptQueryRunner.d.ts +8 -0
- package/browser/driver/nativescript/NativescriptQueryRunner.js +30 -0
- package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.js +1 -1
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.js +52 -19
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/react-native/ReactNativeQueryRunner.d.ts +8 -0
- package/browser/driver/react-native/ReactNativeQueryRunner.js +30 -0
- package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.js +1 -1
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/sqlite/SqliteDriver.d.ts +13 -0
- package/browser/driver/sqlite/SqliteDriver.js +95 -11
- package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
- package/browser/driver/sqlite/SqliteQueryRunner.d.ts +8 -0
- package/browser/driver/sqlite/SqliteQueryRunner.js +30 -0
- package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +13 -0
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +25 -2
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +11 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +119 -58
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqljs/SqljsQueryRunner.d.ts +8 -0
- package/browser/driver/sqljs/SqljsQueryRunner.js +30 -0
- package/browser/driver/sqljs/SqljsQueryRunner.js.map +1 -1
- package/browser/entity-manager/EntityManager.d.ts +2 -2
- package/browser/entity-manager/EntityManager.js +2 -12
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.d.ts +2 -0
- package/browser/entity-manager/MongoEntityManager.js +37 -5
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/entity-schema/EntitySchemaOptions.d.ts +6 -0
- package/browser/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaRelationOptions.d.ts +7 -1
- package/browser/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaTransformer.js +4 -1
- package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/browser/entity-schema/EntitySchemaUniqueOptions.d.ts +5 -0
- package/browser/entity-schema/EntitySchemaUniqueOptions.js.map +1 -1
- package/browser/find-options/FindOneOptions.d.ts +6 -0
- package/browser/find-options/FindOneOptions.js.map +1 -1
- package/browser/find-options/FindOptionsUtils.js +4 -0
- package/browser/find-options/FindOptionsUtils.js.map +1 -1
- package/browser/find-options/operator/Like.d.ts +1 -1
- package/browser/find-options/operator/Like.js +1 -1
- package/browser/find-options/operator/Like.js.map +1 -1
- package/browser/find-options/operator/Not.d.ts +1 -1
- package/browser/find-options/operator/Not.js +1 -1
- package/browser/find-options/operator/Not.js.map +1 -1
- package/browser/globals.js +34 -7
- package/browser/globals.js.map +1 -1
- package/browser/index.d.ts +6 -0
- package/browser/index.js +6 -0
- package/browser/index.js.map +1 -1
- package/browser/metadata/ColumnMetadata.d.ts +4 -0
- package/browser/metadata/ColumnMetadata.js +2 -0
- package/browser/metadata/ColumnMetadata.js.map +1 -1
- package/browser/metadata/EntityMetadata.d.ts +16 -0
- package/browser/metadata/EntityMetadata.js +16 -0
- package/browser/metadata/EntityMetadata.js.map +1 -1
- package/browser/metadata/RelationMetadata.d.ts +1 -1
- package/browser/metadata/RelationMetadata.js.map +1 -1
- package/browser/metadata/UniqueMetadata.d.ts +5 -0
- package/browser/metadata/UniqueMetadata.js +1 -0
- package/browser/metadata/UniqueMetadata.js.map +1 -1
- package/browser/metadata/types/EventListenerTypes.d.ts +5 -1
- package/browser/metadata/types/EventListenerTypes.js +4 -0
- package/browser/metadata/types/EventListenerTypes.js.map +1 -1
- package/browser/metadata-args/UniqueMetadataArgs.d.ts +5 -0
- package/browser/metadata-args/UniqueMetadataArgs.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js +4 -0
- package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataValidator.js +2 -1
- package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/browser/migration/MigrationExecutor.js +38 -26
- package/browser/migration/MigrationExecutor.js.map +1 -1
- package/browser/persistence/SubjectExecutor.d.ts +2 -2
- package/browser/persistence/SubjectExecutor.js +6 -6
- package/browser/persistence/SubjectExecutor.js.map +1 -1
- package/browser/persistence/subject-builder/OneToManySubjectBuilder.js +3 -0
- package/browser/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.js +1 -1
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/browser/platform/PlatformTools.d.ts +1 -0
- package/browser/platform/PlatformTools.js +5 -0
- package/browser/platform/PlatformTools.js.map +1 -1
- package/browser/query-builder/DeleteQueryBuilder.d.ts +4 -2
- package/browser/query-builder/DeleteQueryBuilder.js +4 -2
- package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/InsertQueryBuilder.d.ts +1 -1
- package/browser/query-builder/InsertQueryBuilder.js +12 -3
- package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
- package/browser/query-builder/NotBrackets.d.ts +7 -0
- package/browser/query-builder/NotBrackets.js +16 -0
- package/browser/query-builder/NotBrackets.js.map +1 -0
- package/browser/query-builder/QueryBuilder.d.ts +3 -2
- package/browser/query-builder/QueryBuilder.js +2 -1
- package/browser/query-builder/QueryBuilder.js.map +1 -1
- package/browser/query-builder/RelationLoader.js +11 -6
- package/browser/query-builder/RelationLoader.js.map +1 -1
- package/browser/query-builder/RelationQueryBuilder.d.ts +1 -1
- package/browser/query-builder/RelationQueryBuilder.js +1 -1
- package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilder.d.ts +10 -1
- package/browser/query-builder/SelectQueryBuilder.js +28 -21
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/SoftDeleteQueryBuilder.d.ts +1 -1
- package/browser/query-builder/SoftDeleteQueryBuilder.js +45 -31
- package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/UpdateQueryBuilder.d.ts +4 -2
- package/browser/query-builder/UpdateQueryBuilder.js +11 -6
- package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/browser/query-builder/WhereExpressionBuilder.d.ts +3 -1
- package/browser/query-builder/WhereExpressionBuilder.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdLoader.js +9 -9
- package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +13 -0
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +94 -50
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/browser/query-runner/BaseQueryRunner.d.ts +10 -2
- package/browser/query-runner/BaseQueryRunner.js +23 -3
- package/browser/query-runner/BaseQueryRunner.js.map +1 -1
- package/browser/query-runner/QueryRunner.d.ts +8 -0
- package/browser/query-runner/QueryRunner.js.map +1 -1
- package/browser/repository/AbstractRepository.d.ts +2 -2
- package/browser/repository/AbstractRepository.js +2 -2
- package/browser/repository/AbstractRepository.js.map +1 -1
- package/browser/repository/BaseEntity.d.ts +1 -1
- package/browser/repository/BaseEntity.js +1 -1
- package/browser/repository/BaseEntity.js.map +1 -1
- package/browser/repository/Repository.d.ts +1 -1
- package/browser/repository/Repository.js +1 -1
- package/browser/repository/Repository.js.map +1 -1
- package/browser/repository/TreeRepository.js +3 -2
- package/browser/repository/TreeRepository.js.map +1 -1
- package/browser/schema-builder/RdbmsSchemaBuilder.js +37 -31
- package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/browser/schema-builder/options/TableColumnOptions.d.ts +4 -0
- package/browser/schema-builder/options/TableColumnOptions.js.map +1 -1
- package/browser/schema-builder/options/TableUniqueOptions.d.ts +5 -0
- package/browser/schema-builder/options/TableUniqueOptions.js.map +1 -1
- package/browser/schema-builder/table/TableColumn.d.ts +4 -0
- package/browser/schema-builder/table/TableColumn.js +2 -0
- package/browser/schema-builder/table/TableColumn.js.map +1 -1
- package/browser/schema-builder/table/TableUnique.d.ts +5 -0
- package/browser/schema-builder/table/TableUnique.js +5 -2
- package/browser/schema-builder/table/TableUnique.js.map +1 -1
- package/browser/schema-builder/util/TableUtils.js +1 -0
- package/browser/schema-builder/util/TableUtils.js.map +1 -1
- package/browser/subscriber/Broadcaster.d.ts +40 -0
- package/browser/subscriber/Broadcaster.js +191 -31
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/subscriber/EntitySubscriberInterface.d.ts +18 -0
- package/browser/subscriber/EntitySubscriberInterface.js.map +1 -1
- package/browser/subscriber/event/RecoverEvent.d.ts +6 -0
- package/browser/subscriber/event/RecoverEvent.js +3 -0
- package/browser/subscriber/event/RecoverEvent.js.map +1 -0
- package/browser/subscriber/event/SoftRemoveEvent.d.ts +6 -0
- package/browser/subscriber/event/SoftRemoveEvent.js +3 -0
- package/browser/subscriber/event/SoftRemoveEvent.js.map +1 -0
- package/browser/util/DirectoryExportedClassesLoader.d.ts +1 -1
- package/browser/util/DirectoryExportedClassesLoader.js +55 -31
- package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/browser/util/ImportUtils.d.ts +1 -0
- package/browser/util/ImportUtils.js +90 -0
- package/browser/util/ImportUtils.js.map +1 -0
- package/browser/util/PathUtils.d.ts +10 -0
- package/browser/util/PathUtils.js +28 -0
- package/browser/util/PathUtils.js.map +1 -0
- package/browser/util/RandomGenerator.d.ts +0 -4
- package/browser/util/RandomGenerator.js +0 -9
- package/browser/util/RandomGenerator.js.map +1 -1
- package/cache/RedisQueryResultCache.js +39 -34
- package/cache/RedisQueryResultCache.js.map +1 -1
- package/commands/CacheClearCommand.js +3 -3
- package/commands/CacheClearCommand.js.map +1 -1
- package/commands/CommandUtils.d.ts +4 -0
- package/commands/CommandUtils.js +10 -0
- package/commands/CommandUtils.js.map +1 -1
- package/commands/EntityCreateCommand.js +2 -2
- package/commands/EntityCreateCommand.js.map +1 -1
- package/commands/InitCommand.d.ts +9 -7
- package/commands/InitCommand.js +74 -45
- package/commands/InitCommand.js.map +1 -1
- package/commands/MigrationCreateCommand.d.ts +2 -0
- package/commands/MigrationCreateCommand.js +9 -3
- package/commands/MigrationCreateCommand.js.map +1 -1
- package/commands/MigrationGenerateCommand.d.ts +2 -0
- package/commands/MigrationGenerateCommand.js +9 -3
- package/commands/MigrationGenerateCommand.js.map +1 -1
- package/commands/MigrationRevertCommand.js +2 -3
- package/commands/MigrationRevertCommand.js.map +1 -1
- package/commands/MigrationRunCommand.js +2 -3
- package/commands/MigrationRunCommand.js.map +1 -1
- package/commands/MigrationShowCommand.js +5 -7
- package/commands/MigrationShowCommand.js.map +1 -1
- package/commands/QueryCommand.d.ts +1 -1
- package/commands/QueryCommand.js +2 -3
- package/commands/QueryCommand.js.map +1 -1
- package/commands/SchemaDropCommand.js +2 -2
- package/commands/SchemaDropCommand.js.map +1 -1
- package/commands/SchemaLogCommand.js +2 -2
- package/commands/SchemaLogCommand.js.map +1 -1
- package/commands/SchemaSyncCommand.js +2 -2
- package/commands/SchemaSyncCommand.js.map +1 -1
- package/commands/SubscriberCreateCommand.js +3 -3
- package/commands/SubscriberCreateCommand.js.map +1 -1
- package/common/DeepPartial.d.ts +3 -3
- package/common/DeepPartial.js.map +1 -1
- package/common/RelationType.d.ts +14 -0
- package/common/RelationType.js +4 -0
- package/common/RelationType.js.map +1 -0
- package/connection/BaseConnectionOptions.d.ts +5 -0
- package/connection/BaseConnectionOptions.js.map +1 -1
- package/connection/Connection.d.ts +7 -3
- package/connection/Connection.js +80 -55
- package/connection/Connection.js.map +1 -1
- package/connection/ConnectionMetadataBuilder.d.ts +3 -3
- package/connection/ConnectionMetadataBuilder.js +53 -21
- package/connection/ConnectionMetadataBuilder.js.map +1 -1
- package/connection/ConnectionOptionsReader.js +35 -28
- package/connection/ConnectionOptionsReader.js.map +1 -1
- package/connection/options-reader/ConnectionOptionsEnvReader.js +1 -0
- package/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
- package/decorator/Unique.d.ts +5 -4
- package/decorator/Unique.js +7 -3
- package/decorator/Unique.js.map +1 -1
- package/decorator/columns/PrimaryGeneratedColumn.d.ts +2 -1
- package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
- package/decorator/listeners/AfterRecover.d.ts +4 -0
- package/decorator/listeners/AfterRecover.js +20 -0
- package/decorator/listeners/AfterRecover.js.map +1 -0
- package/decorator/listeners/AfterSoftRemove.d.ts +4 -0
- package/decorator/listeners/AfterSoftRemove.js +20 -0
- package/decorator/listeners/AfterSoftRemove.js.map +1 -0
- package/decorator/listeners/BeforeRecover.d.ts +4 -0
- package/decorator/listeners/BeforeRecover.js +20 -0
- package/decorator/listeners/BeforeRecover.js.map +1 -0
- package/decorator/listeners/BeforeSoftRemove.d.ts +4 -0
- package/decorator/listeners/BeforeSoftRemove.js +20 -0
- package/decorator/listeners/BeforeSoftRemove.js.map +1 -0
- package/decorator/options/ColumnOptions.d.ts +4 -0
- package/decorator/options/ColumnOptions.js.map +1 -1
- package/decorator/options/PrimaryGeneratedColumnIdentityOptions.d.ts +22 -0
- package/decorator/options/PrimaryGeneratedColumnIdentityOptions.js +4 -0
- package/decorator/options/PrimaryGeneratedColumnIdentityOptions.js.map +1 -0
- package/decorator/options/RelationOptions.d.ts +1 -1
- package/decorator/options/RelationOptions.js.map +1 -1
- package/decorator/options/UniqueOptions.d.ts +10 -0
- package/decorator/options/UniqueOptions.js +4 -0
- package/decorator/options/UniqueOptions.js.map +1 -0
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +2 -2
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3Driver.d.ts +14 -1
- package/driver/better-sqlite3/BetterSqlite3Driver.js +93 -8
- package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +10 -0
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +63 -0
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/driver/capacitor/CapacitorQueryRunner.d.ts +8 -0
- package/driver/capacitor/CapacitorQueryRunner.js +30 -0
- package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.js +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/cordova/CordovaQueryRunner.d.ts +8 -0
- package/driver/cordova/CordovaQueryRunner.js +30 -0
- package/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/driver/expo/ExpoQueryRunner.d.ts +8 -0
- package/driver/expo/ExpoQueryRunner.js +30 -0
- package/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/driver/mongodb/MongoConnectionOptions.d.ts +1 -1
- package/driver/mongodb/MongoConnectionOptions.js.map +1 -1
- package/driver/mongodb/MongoQueryRunner.d.ts +8 -0
- package/driver/mongodb/MongoQueryRunner.js +20 -0
- package/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.js +1 -1
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/driver/nativescript/NativescriptQueryRunner.d.ts +8 -0
- package/driver/nativescript/NativescriptQueryRunner.js +30 -0
- package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.js +1 -1
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.js +52 -19
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/react-native/ReactNativeQueryRunner.d.ts +8 -0
- package/driver/react-native/ReactNativeQueryRunner.js +30 -0
- package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/driver/sap/SapQueryRunner.js +1 -1
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/sqlite/SqliteDriver.d.ts +13 -0
- package/driver/sqlite/SqliteDriver.js +94 -10
- package/driver/sqlite/SqliteDriver.js.map +1 -1
- package/driver/sqlite/SqliteQueryRunner.d.ts +8 -0
- package/driver/sqlite/SqliteQueryRunner.js +30 -0
- package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +13 -0
- package/driver/sqlite-abstract/AbstractSqliteDriver.js +25 -2
- package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +11 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +119 -58
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/driver/sqljs/SqljsQueryRunner.d.ts +8 -0
- package/driver/sqljs/SqljsQueryRunner.js +30 -0
- package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
- package/entity-manager/EntityManager.d.ts +2 -2
- package/entity-manager/EntityManager.js +2 -12
- package/entity-manager/EntityManager.js.map +1 -1
- package/entity-manager/MongoEntityManager.d.ts +2 -0
- package/entity-manager/MongoEntityManager.js +37 -5
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/entity-schema/EntitySchemaOptions.d.ts +6 -0
- package/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/entity-schema/EntitySchemaRelationOptions.d.ts +7 -1
- package/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
- package/entity-schema/EntitySchemaTransformer.js +4 -1
- package/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/entity-schema/EntitySchemaUniqueOptions.d.ts +5 -0
- package/entity-schema/EntitySchemaUniqueOptions.js.map +1 -1
- package/find-options/FindOneOptions.d.ts +6 -0
- package/find-options/FindOneOptions.js.map +1 -1
- package/find-options/FindOptionsUtils.js +4 -0
- package/find-options/FindOptionsUtils.js.map +1 -1
- package/find-options/operator/Like.d.ts +1 -1
- package/find-options/operator/Like.js +1 -1
- package/find-options/operator/Like.js.map +1 -1
- package/find-options/operator/Not.d.ts +1 -1
- package/find-options/operator/Not.js +1 -1
- package/find-options/operator/Not.js.map +1 -1
- package/globals.js +33 -6
- package/globals.js.map +1 -1
- package/index.d.ts +6 -0
- package/index.js +8 -1
- package/index.js.map +1 -1
- package/index.mjs +360 -0
- package/metadata/ColumnMetadata.d.ts +4 -0
- package/metadata/ColumnMetadata.js +2 -0
- package/metadata/ColumnMetadata.js.map +1 -1
- package/metadata/EntityMetadata.d.ts +16 -0
- package/metadata/EntityMetadata.js +16 -0
- package/metadata/EntityMetadata.js.map +1 -1
- package/metadata/RelationMetadata.d.ts +1 -1
- package/metadata/RelationMetadata.js.map +1 -1
- package/metadata/UniqueMetadata.d.ts +5 -0
- package/metadata/UniqueMetadata.js +1 -0
- package/metadata/UniqueMetadata.js.map +1 -1
- package/metadata/types/EventListenerTypes.d.ts +5 -1
- package/metadata/types/EventListenerTypes.js +4 -0
- package/metadata/types/EventListenerTypes.js.map +1 -1
- package/metadata-args/UniqueMetadataArgs.d.ts +5 -0
- package/metadata-args/UniqueMetadataArgs.js.map +1 -1
- package/metadata-builder/EntityMetadataBuilder.js +4 -0
- package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/EntityMetadataValidator.js +2 -1
- package/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/migration/MigrationExecutor.js +38 -26
- package/migration/MigrationExecutor.js.map +1 -1
- package/package.json +1 -1
- package/persistence/SubjectExecutor.d.ts +2 -2
- package/persistence/SubjectExecutor.js +6 -6
- package/persistence/SubjectExecutor.js.map +1 -1
- package/persistence/subject-builder/OneToManySubjectBuilder.js +3 -0
- package/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
- package/persistence/tree/MaterializedPathSubjectExecutor.js +1 -1
- package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/platform/PlatformTools.d.ts +1 -0
- package/platform/PlatformTools.js +5 -0
- package/platform/PlatformTools.js.map +1 -1
- package/query-builder/DeleteQueryBuilder.d.ts +4 -2
- package/query-builder/DeleteQueryBuilder.js +4 -2
- package/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/query-builder/InsertQueryBuilder.d.ts +1 -1
- package/query-builder/InsertQueryBuilder.js +12 -3
- package/query-builder/InsertQueryBuilder.js.map +1 -1
- package/query-builder/NotBrackets.d.ts +7 -0
- package/query-builder/NotBrackets.js +19 -0
- package/query-builder/NotBrackets.js.map +1 -0
- package/query-builder/QueryBuilder.d.ts +3 -2
- package/query-builder/QueryBuilder.js +2 -1
- package/query-builder/QueryBuilder.js.map +1 -1
- package/query-builder/RelationLoader.js +11 -6
- package/query-builder/RelationLoader.js.map +1 -1
- package/query-builder/RelationQueryBuilder.d.ts +1 -1
- package/query-builder/RelationQueryBuilder.js +1 -1
- package/query-builder/RelationQueryBuilder.js.map +1 -1
- package/query-builder/SelectQueryBuilder.d.ts +10 -1
- package/query-builder/SelectQueryBuilder.js +28 -21
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/SoftDeleteQueryBuilder.d.ts +1 -1
- package/query-builder/SoftDeleteQueryBuilder.js +45 -31
- package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/query-builder/UpdateQueryBuilder.d.ts +4 -2
- package/query-builder/UpdateQueryBuilder.js +11 -6
- package/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/query-builder/WhereExpressionBuilder.d.ts +3 -1
- package/query-builder/WhereExpressionBuilder.js.map +1 -1
- package/query-builder/relation-id/RelationIdLoader.js +9 -9
- package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +13 -0
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +94 -50
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/query-runner/BaseQueryRunner.d.ts +10 -2
- package/query-runner/BaseQueryRunner.js +23 -3
- package/query-runner/BaseQueryRunner.js.map +1 -1
- package/query-runner/QueryRunner.d.ts +8 -0
- package/query-runner/QueryRunner.js.map +1 -1
- package/repository/AbstractRepository.d.ts +2 -2
- package/repository/AbstractRepository.js +2 -2
- package/repository/AbstractRepository.js.map +1 -1
- package/repository/BaseEntity.d.ts +1 -1
- package/repository/BaseEntity.js +1 -1
- package/repository/BaseEntity.js.map +1 -1
- package/repository/Repository.d.ts +1 -1
- package/repository/Repository.js +1 -1
- package/repository/Repository.js.map +1 -1
- package/repository/TreeRepository.js +3 -2
- package/repository/TreeRepository.js.map +1 -1
- package/schema-builder/RdbmsSchemaBuilder.js +37 -31
- package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/schema-builder/options/TableColumnOptions.d.ts +4 -0
- package/schema-builder/options/TableColumnOptions.js.map +1 -1
- package/schema-builder/options/TableUniqueOptions.d.ts +5 -0
- package/schema-builder/options/TableUniqueOptions.js.map +1 -1
- package/schema-builder/table/TableColumn.d.ts +4 -0
- package/schema-builder/table/TableColumn.js +2 -0
- package/schema-builder/table/TableColumn.js.map +1 -1
- package/schema-builder/table/TableUnique.d.ts +5 -0
- package/schema-builder/table/TableUnique.js +5 -2
- package/schema-builder/table/TableUnique.js.map +1 -1
- package/schema-builder/util/TableUtils.js +1 -0
- package/schema-builder/util/TableUtils.js.map +1 -1
- package/subscriber/Broadcaster.d.ts +40 -0
- package/subscriber/Broadcaster.js +191 -31
- package/subscriber/Broadcaster.js.map +1 -1
- package/subscriber/EntitySubscriberInterface.d.ts +18 -0
- package/subscriber/EntitySubscriberInterface.js.map +1 -1
- package/subscriber/event/RecoverEvent.d.ts +6 -0
- package/subscriber/event/RecoverEvent.js +4 -0
- package/subscriber/event/RecoverEvent.js.map +1 -0
- package/subscriber/event/SoftRemoveEvent.d.ts +6 -0
- package/subscriber/event/SoftRemoveEvent.js +4 -0
- package/subscriber/event/SoftRemoveEvent.js.map +1 -0
- package/typeorm-class-transformer-shim.js +20 -0
- package/typeorm-model-shim.js +20 -0
- package/util/DirectoryExportedClassesLoader.d.ts +1 -1
- package/util/DirectoryExportedClassesLoader.js +54 -31
- package/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/util/ImportUtils.d.ts +1 -0
- package/util/ImportUtils.js +94 -0
- package/util/ImportUtils.js.map +1 -0
- package/util/PathUtils.d.ts +10 -0
- package/util/PathUtils.js +34 -0
- package/util/PathUtils.js.map +1 -0
- package/util/RandomGenerator.d.ts +0 -4
- package/util/RandomGenerator.js +0 -9
- package/util/RandomGenerator.js.map +1 -1
|
@@ -233,7 +233,7 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
233
233
|
switch (_a.label) {
|
|
234
234
|
case 0:
|
|
235
235
|
tableName = tableOrName instanceof Table_1.Table ? tableOrName.name : tableOrName;
|
|
236
|
-
sql = "PRAGMA table_info(
|
|
236
|
+
sql = "PRAGMA table_info(" + this.escapePath(tableName) + ")";
|
|
237
237
|
return [4 /*yield*/, this.query(sql)];
|
|
238
238
|
case 1:
|
|
239
239
|
columns = _a.sent();
|
|
@@ -443,8 +443,8 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
443
443
|
oldTable = _a;
|
|
444
444
|
newTable = oldTable.clone();
|
|
445
445
|
newTable.name = newTableName;
|
|
446
|
-
up = new Query_1.Query("ALTER TABLE
|
|
447
|
-
down = new Query_1.Query("ALTER TABLE
|
|
446
|
+
up = new Query_1.Query("ALTER TABLE " + this.escapePath(oldTable.name) + " RENAME TO " + this.escapePath(newTableName));
|
|
447
|
+
down = new Query_1.Query("ALTER TABLE " + this.escapePath(newTableName) + " RENAME TO " + this.escapePath(oldTable.name));
|
|
448
448
|
return [4 /*yield*/, this.executeQueries(up, down)];
|
|
449
449
|
case 4:
|
|
450
450
|
_b.sent();
|
|
@@ -1198,7 +1198,7 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1198
1198
|
table = _a;
|
|
1199
1199
|
index = indexOrName instanceof TableIndex_1.TableIndex ? indexOrName : table.indices.find(function (i) { return i.name === indexOrName; });
|
|
1200
1200
|
if (!index)
|
|
1201
|
-
throw new error_1.TypeORMError("Supplied index was not found in table " + table.name);
|
|
1201
|
+
throw new error_1.TypeORMError("Supplied index " + indexOrName + " was not found in table " + table.name);
|
|
1202
1202
|
up = this.dropIndexSql(index);
|
|
1203
1203
|
down = this.createIndexSql(table, index);
|
|
1204
1204
|
return [4 /*yield*/, this.executeQueries(up, down)];
|
|
@@ -1237,7 +1237,7 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1237
1237
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1238
1238
|
return (0, tslib_1.__generator)(this, function (_a) {
|
|
1239
1239
|
switch (_a.label) {
|
|
1240
|
-
case 0: return [4 /*yield*/, this.query("DELETE FROM
|
|
1240
|
+
case 0: return [4 /*yield*/, this.query("DELETE FROM " + this.escapePath(tableName))];
|
|
1241
1241
|
case 1:
|
|
1242
1242
|
_a.sent();
|
|
1243
1243
|
return [2 /*return*/];
|
|
@@ -1248,13 +1248,18 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1248
1248
|
/**
|
|
1249
1249
|
* Removes all tables from the currently connected database.
|
|
1250
1250
|
*/
|
|
1251
|
-
AbstractSqliteQueryRunner.prototype.clearDatabase = function () {
|
|
1251
|
+
AbstractSqliteQueryRunner.prototype.clearDatabase = function (database) {
|
|
1252
1252
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1253
|
-
var selectViewDropsQuery, dropViewQueries, selectTableDropsQuery, dropTableQueries, error_2, rollbackError_1;
|
|
1253
|
+
var dbPath, selectViewDropsQuery, dropViewQueries, selectTableDropsQuery, dropTableQueries, error_2, rollbackError_1;
|
|
1254
1254
|
var _this = this;
|
|
1255
1255
|
return (0, tslib_1.__generator)(this, function (_a) {
|
|
1256
1256
|
switch (_a.label) {
|
|
1257
|
-
case 0:
|
|
1257
|
+
case 0:
|
|
1258
|
+
dbPath = undefined;
|
|
1259
|
+
if (database && this.driver.getAttachedDatabaseHandleByRelativePath(database)) {
|
|
1260
|
+
dbPath = this.driver.getAttachedDatabaseHandleByRelativePath(database);
|
|
1261
|
+
}
|
|
1262
|
+
return [4 /*yield*/, this.query("PRAGMA foreign_keys = OFF;")];
|
|
1258
1263
|
case 1:
|
|
1259
1264
|
_a.sent();
|
|
1260
1265
|
return [4 /*yield*/, this.startTransaction()];
|
|
@@ -1263,14 +1268,14 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1263
1268
|
_a.label = 3;
|
|
1264
1269
|
case 3:
|
|
1265
1270
|
_a.trys.push([3, 9, 14, 16]);
|
|
1266
|
-
selectViewDropsQuery = "SELECT 'DROP VIEW \"' || name || '\";' as query FROM \"sqlite_master\" WHERE \"type\" = 'view'";
|
|
1271
|
+
selectViewDropsQuery = dbPath ? "SELECT 'DROP VIEW \"" + dbPath + "\".\"' || name || '\";' as query FROM \"" + dbPath + "\".\"sqlite_master\" WHERE \"type\" = 'view'" : "SELECT 'DROP VIEW \"' || name || '\";' as query FROM \"sqlite_master\" WHERE \"type\" = 'view'";
|
|
1267
1272
|
return [4 /*yield*/, this.query(selectViewDropsQuery)];
|
|
1268
1273
|
case 4:
|
|
1269
1274
|
dropViewQueries = _a.sent();
|
|
1270
1275
|
return [4 /*yield*/, Promise.all(dropViewQueries.map(function (q) { return _this.query(q["query"]); }))];
|
|
1271
1276
|
case 5:
|
|
1272
1277
|
_a.sent();
|
|
1273
|
-
selectTableDropsQuery = "SELECT 'DROP TABLE \"' || name || '\";' as query FROM \"sqlite_master\" WHERE \"type\" = 'table' AND \"name\" != 'sqlite_sequence'";
|
|
1278
|
+
selectTableDropsQuery = dbPath ? "SELECT 'DROP TABLE \"" + dbPath + "\".\"' || name || '\";' as query FROM \"" + dbPath + "\".\"sqlite_master\" WHERE \"type\" = 'table' AND \"name\" != 'sqlite_sequence'" : "SELECT 'DROP TABLE \"' || name || '\";' as query FROM \"sqlite_master\" WHERE \"type\" = 'table' AND \"name\" != 'sqlite_sequence'";
|
|
1274
1279
|
return [4 /*yield*/, this.query(selectTableDropsQuery)];
|
|
1275
1280
|
case 6:
|
|
1276
1281
|
dropTableQueries = _a.sent();
|
|
@@ -1337,66 +1342,97 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1337
1342
|
});
|
|
1338
1343
|
});
|
|
1339
1344
|
};
|
|
1345
|
+
AbstractSqliteQueryRunner.prototype.loadTableRecords = function (tablePath, tableOrIndex) {
|
|
1346
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1347
|
+
var database, _a, schema, tableName, res;
|
|
1348
|
+
return (0, tslib_1.__generator)(this, function (_b) {
|
|
1349
|
+
switch (_b.label) {
|
|
1350
|
+
case 0:
|
|
1351
|
+
database = undefined;
|
|
1352
|
+
_a = (0, tslib_1.__read)(this.splitTablePath(tablePath), 2), schema = _a[0], tableName = _a[1];
|
|
1353
|
+
if (schema && this.driver.getAttachedDatabasePathRelativeByHandle(schema)) {
|
|
1354
|
+
database = this.driver.getAttachedDatabasePathRelativeByHandle(schema);
|
|
1355
|
+
}
|
|
1356
|
+
return [4 /*yield*/, this.query("SELECT " + (database ? "'" + database + "'" : null) + " as database, " + (schema ? "'" + schema + "'" : null) + " as schema, * FROM " + (schema ? "\"" + schema + "\"." : "") + this.escapePath("sqlite_master") + " WHERE \"type\" = '" + tableOrIndex + "' AND \"" + (tableOrIndex === "table" ? "name" : "tbl_name") + "\" IN ('" + tableName + "')")];
|
|
1357
|
+
case 1:
|
|
1358
|
+
res = _b.sent();
|
|
1359
|
+
return [2 /*return*/, res];
|
|
1360
|
+
}
|
|
1361
|
+
});
|
|
1362
|
+
});
|
|
1363
|
+
};
|
|
1364
|
+
AbstractSqliteQueryRunner.prototype.loadPragmaRecords = function (tablePath, pragma) {
|
|
1365
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1366
|
+
var _a, tableName, res;
|
|
1367
|
+
return (0, tslib_1.__generator)(this, function (_b) {
|
|
1368
|
+
switch (_b.label) {
|
|
1369
|
+
case 0:
|
|
1370
|
+
_a = (0, tslib_1.__read)(this.splitTablePath(tablePath), 2), tableName = _a[1];
|
|
1371
|
+
return [4 /*yield*/, this.query("PRAGMA " + pragma + "(\"" + tableName + "\")")];
|
|
1372
|
+
case 1:
|
|
1373
|
+
res = _b.sent();
|
|
1374
|
+
return [2 /*return*/, res];
|
|
1375
|
+
}
|
|
1376
|
+
});
|
|
1377
|
+
});
|
|
1378
|
+
};
|
|
1340
1379
|
/**
|
|
1341
1380
|
* Loads all tables (with given names) from the database and creates a Table from them.
|
|
1342
1381
|
*/
|
|
1343
1382
|
AbstractSqliteQueryRunner.prototype.loadTables = function (tableNames) {
|
|
1344
1383
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1345
|
-
var dbTables, tablesSql, _a, _b, _c, _d,
|
|
1384
|
+
var dbTables, dbIndicesDef, tablesSql, _a, _b, _c, _d, tableNamesString;
|
|
1346
1385
|
var _this = this;
|
|
1347
|
-
return (0, tslib_1.__generator)(this, function (
|
|
1348
|
-
switch (
|
|
1386
|
+
return (0, tslib_1.__generator)(this, function (_e) {
|
|
1387
|
+
switch (_e.label) {
|
|
1349
1388
|
case 0:
|
|
1350
1389
|
// if no tables given then no need to proceed
|
|
1351
1390
|
if (tableNames && tableNames.length === 0) {
|
|
1352
1391
|
return [2 /*return*/, []];
|
|
1353
1392
|
}
|
|
1354
1393
|
dbTables = [];
|
|
1355
|
-
if (!!tableNames) return [3 /*break*/,
|
|
1394
|
+
if (!!tableNames) return [3 /*break*/, 3];
|
|
1356
1395
|
tablesSql = "SELECT * FROM \"sqlite_master\" WHERE \"type\" = 'table'";
|
|
1357
1396
|
_b = (_a = dbTables.push).apply;
|
|
1358
1397
|
_c = [dbTables];
|
|
1359
1398
|
_d = [[]];
|
|
1360
1399
|
return [4 /*yield*/, this.query(tablesSql)];
|
|
1361
1400
|
case 1:
|
|
1362
|
-
_b.apply(_a, _c.concat([tslib_1.__spreadArray.apply(void 0, _d.concat([tslib_1.__read.apply(void 0, [
|
|
1363
|
-
return [3 /*break*/, 4];
|
|
1364
|
-
case 2:
|
|
1365
|
-
tableNamesString_1 = tableNames.map(function (tableName) { return "'" + tableName + "'"; }).join(", ");
|
|
1366
|
-
tablesSql = "SELECT * FROM \"sqlite_master\" WHERE \"type\" = 'table' AND \"name\" IN (" + tableNamesString_1 + ")";
|
|
1367
|
-
_f = (_e = dbTables.push).apply;
|
|
1368
|
-
_g = [dbTables];
|
|
1369
|
-
_h = [[]];
|
|
1370
|
-
return [4 /*yield*/, this.query(tablesSql)];
|
|
1371
|
-
case 3:
|
|
1372
|
-
_f.apply(_e, _g.concat([tslib_1.__spreadArray.apply(void 0, _h.concat([tslib_1.__read.apply(void 0, [_j.sent()]), false]))]));
|
|
1373
|
-
_j.label = 4;
|
|
1374
|
-
case 4:
|
|
1375
|
-
// if tables were not found in the db, no need to proceed
|
|
1376
|
-
if (dbTables.length === 0) {
|
|
1377
|
-
return [2 /*return*/, []];
|
|
1378
|
-
}
|
|
1401
|
+
_b.apply(_a, _c.concat([tslib_1.__spreadArray.apply(void 0, _d.concat([tslib_1.__read.apply(void 0, [_e.sent()]), false]))]));
|
|
1379
1402
|
tableNamesString = dbTables.map(function (_a) {
|
|
1380
1403
|
var name = _a.name;
|
|
1381
1404
|
return "'" + name + "'";
|
|
1382
1405
|
}).join(", ");
|
|
1383
1406
|
return [4 /*yield*/, this.query("SELECT * FROM \"sqlite_master\" WHERE \"type\" = 'index' AND \"tbl_name\" IN (" + tableNamesString + ")")];
|
|
1407
|
+
case 2:
|
|
1408
|
+
dbIndicesDef = _e.sent();
|
|
1409
|
+
return [3 /*break*/, 6];
|
|
1410
|
+
case 3: return [4 /*yield*/, Promise.all(tableNames.map(function (tableName) { return _this.loadTableRecords(tableName, "table"); }))];
|
|
1411
|
+
case 4:
|
|
1412
|
+
dbTables = (_e.sent()).reduce(function (acc, res) { return ((0, tslib_1.__spreadArray)((0, tslib_1.__spreadArray)([], (0, tslib_1.__read)(acc), false), (0, tslib_1.__read)(res), false)); }, []).filter(Boolean);
|
|
1413
|
+
return [4 /*yield*/, Promise.all((tableNames !== null && tableNames !== void 0 ? tableNames : []).map(function (tableName) { return _this.loadTableRecords(tableName, "index"); }))];
|
|
1384
1414
|
case 5:
|
|
1385
|
-
dbIndicesDef =
|
|
1415
|
+
dbIndicesDef = (_e.sent()).reduce(function (acc, res) { return ((0, tslib_1.__spreadArray)((0, tslib_1.__spreadArray)([], (0, tslib_1.__read)(acc), false), (0, tslib_1.__read)(res), false)); }, []).filter(Boolean);
|
|
1416
|
+
_e.label = 6;
|
|
1417
|
+
case 6:
|
|
1418
|
+
// if tables were not found in the db, no need to proceed
|
|
1419
|
+
if (dbTables.length === 0) {
|
|
1420
|
+
return [2 /*return*/, []];
|
|
1421
|
+
}
|
|
1386
1422
|
// create table schemas for loaded tables
|
|
1387
1423
|
return [2 /*return*/, Promise.all(dbTables.map(function (dbTable) { return (0, tslib_1.__awaiter)(_this, void 0, void 0, function () {
|
|
1388
|
-
var table, sql, _a, dbColumns, dbIndices, dbForeignKeys, autoIncrementColumnName, tableSql, autoIncrementIndex, comma, bracket, tableForeignKeyConstraints, uniqueRegexResult, uniqueMappings, uniqueRegex, tableUniquePromises, _b, result, regexp, indicesPromises, indices;
|
|
1424
|
+
var tablePath, table, sql, _a, dbColumns, dbIndices, dbForeignKeys, autoIncrementColumnName, tableSql, autoIncrementIndex, comma, bracket, tableForeignKeyConstraints, uniqueRegexResult, uniqueMappings, uniqueRegex, tableUniquePromises, _b, result, regexp, indicesPromises, indices;
|
|
1389
1425
|
var _this = this;
|
|
1390
1426
|
return (0, tslib_1.__generator)(this, function (_c) {
|
|
1391
1427
|
switch (_c.label) {
|
|
1392
1428
|
case 0:
|
|
1393
|
-
|
|
1394
|
-
table.name
|
|
1429
|
+
tablePath = dbTable['database'] && this.driver.getAttachedDatabaseHandleByRelativePath(dbTable['database']) ? this.driver.getAttachedDatabaseHandleByRelativePath(dbTable['database']) + "." + dbTable['name'] : dbTable['name'];
|
|
1430
|
+
table = new Table_1.Table({ name: tablePath });
|
|
1395
1431
|
sql = dbTable["sql"];
|
|
1396
1432
|
return [4 /*yield*/, Promise.all([
|
|
1397
|
-
this.
|
|
1398
|
-
this.
|
|
1399
|
-
this.
|
|
1433
|
+
this.loadPragmaRecords(tablePath, "table_info"),
|
|
1434
|
+
this.loadPragmaRecords(tablePath, "index_list"),
|
|
1435
|
+
this.loadPragmaRecords(tablePath, "foreign_key_list"),
|
|
1400
1436
|
])];
|
|
1401
1437
|
case 1:
|
|
1402
1438
|
_a = tslib_1.__read.apply(void 0, [_c.sent(), 3]), dbColumns = _a[0], dbIndices = _a[1], dbForeignKeys = _a[2];
|
|
@@ -1434,7 +1470,7 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1434
1470
|
}
|
|
1435
1471
|
if (tableColumn.type === "varchar") {
|
|
1436
1472
|
// Check if this is an enum
|
|
1437
|
-
var enumMatch = sql.match(new RegExp("\"(" + tableColumn.name + ")\" varchar CHECK\\s*\\(\\s
|
|
1473
|
+
var enumMatch = sql.match(new RegExp("\"(" + tableColumn.name + ")\" varchar CHECK\\s*\\(\\s*\"\\1\"\\s+IN\\s*\\(('[^']+'(?:\\s*,\\s*'[^']+')+)\\s*\\)\\s*\\)"));
|
|
1438
1474
|
if (enumMatch) {
|
|
1439
1475
|
// This is an enum
|
|
1440
1476
|
tableColumn.enum = enumMatch[2].substr(1, enumMatch[2].length - 2).split("','");
|
|
@@ -1540,7 +1576,7 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1540
1576
|
.map(function (dbIndex) { return dbIndex["name"]; })
|
|
1541
1577
|
.filter(function (value, index, self) { return self.indexOf(value) === index; }) // unqiue
|
|
1542
1578
|
.map(function (dbIndexName) { return (0, tslib_1.__awaiter)(_this, void 0, void 0, function () {
|
|
1543
|
-
var indexDef, condition, dbIndex, indexInfos, indexColumns, isUnique;
|
|
1579
|
+
var indexDef, condition, dbIndex, indexInfos, indexColumns, dbIndexPath, isUnique;
|
|
1544
1580
|
return (0, tslib_1.__generator)(this, function (_a) {
|
|
1545
1581
|
switch (_a.label) {
|
|
1546
1582
|
case 0:
|
|
@@ -1553,10 +1589,11 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1553
1589
|
indexColumns = indexInfos
|
|
1554
1590
|
.sort(function (indexInfo1, indexInfo2) { return parseInt(indexInfo1["seqno"]) - parseInt(indexInfo2["seqno"]); })
|
|
1555
1591
|
.map(function (indexInfo) { return indexInfo["name"]; });
|
|
1592
|
+
dbIndexPath = "" + (dbTable["database"] ? dbTable["database"] + "." : '') + dbIndex["name"];
|
|
1556
1593
|
isUnique = dbIndex["unique"] === "1" || dbIndex["unique"] === 1;
|
|
1557
1594
|
return [2 /*return*/, new TableIndex_1.TableIndex({
|
|
1558
1595
|
table: table,
|
|
1559
|
-
name:
|
|
1596
|
+
name: dbIndexPath,
|
|
1560
1597
|
columnNames: indexColumns,
|
|
1561
1598
|
isUnique: isUnique,
|
|
1562
1599
|
where: condition ? condition[1] : undefined
|
|
@@ -1587,7 +1624,8 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1587
1624
|
if (skipPrimary && hasAutoIncrement)
|
|
1588
1625
|
throw new error_1.TypeORMError("Sqlite does not support AUTOINCREMENT on composite primary key");
|
|
1589
1626
|
var columnDefinitions = table.columns.map(function (column) { return _this.buildCreateColumnSql(column, skipPrimary); }).join(", ");
|
|
1590
|
-
var
|
|
1627
|
+
var _a = (0, tslib_1.__read)(this.splitTablePath(table.name), 1), database = _a[0];
|
|
1628
|
+
var sql = "CREATE TABLE " + this.escapePath(table.name) + " (" + columnDefinitions;
|
|
1591
1629
|
// need for `addColumn()` method, because it recreates table.
|
|
1592
1630
|
table.columns
|
|
1593
1631
|
.filter(function (column) { return column.isUnique; })
|
|
@@ -1615,12 +1653,20 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1615
1653
|
sql += ", " + checksSql;
|
|
1616
1654
|
}
|
|
1617
1655
|
if (table.foreignKeys.length > 0 && createForeignKeys) {
|
|
1618
|
-
var foreignKeysSql = table.foreignKeys.
|
|
1656
|
+
var foreignKeysSql = table.foreignKeys.filter(function (fk) {
|
|
1657
|
+
var _a = (0, tslib_1.__read)(_this.splitTablePath(fk.referencedTableName), 1), referencedDatabase = _a[0];
|
|
1658
|
+
if (referencedDatabase !== database) {
|
|
1659
|
+
return false;
|
|
1660
|
+
}
|
|
1661
|
+
return true;
|
|
1662
|
+
})
|
|
1663
|
+
.map(function (fk) {
|
|
1664
|
+
var _a = (0, tslib_1.__read)(_this.splitTablePath(fk.referencedTableName), 2), referencedTable = _a[1];
|
|
1619
1665
|
var columnNames = fk.columnNames.map(function (columnName) { return "\"" + columnName + "\""; }).join(", ");
|
|
1620
1666
|
if (!fk.name)
|
|
1621
1667
|
fk.name = _this.connection.namingStrategy.foreignKeyName(table, fk.columnNames, _this.getTablePath(fk), fk.referencedColumnNames);
|
|
1622
1668
|
var referencedColumnNames = fk.referencedColumnNames.map(function (columnName) { return "\"" + columnName + "\""; }).join(", ");
|
|
1623
|
-
var constraint = "CONSTRAINT \"" + fk.name + "\" FOREIGN KEY (" + columnNames + ") REFERENCES \"" +
|
|
1669
|
+
var constraint = "CONSTRAINT \"" + fk.name + "\" FOREIGN KEY (" + columnNames + ") REFERENCES \"" + referencedTable + "\" (" + referencedColumnNames + ")";
|
|
1624
1670
|
if (fk.onDelete)
|
|
1625
1671
|
constraint += " ON DELETE " + fk.onDelete;
|
|
1626
1672
|
if (fk.onUpdate)
|
|
@@ -1645,7 +1691,7 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1645
1691
|
*/
|
|
1646
1692
|
AbstractSqliteQueryRunner.prototype.dropTableSql = function (tableOrName, ifExist) {
|
|
1647
1693
|
var tableName = tableOrName instanceof Table_1.Table ? tableOrName.name : tableOrName;
|
|
1648
|
-
var query = ifExist ? "DROP TABLE IF EXISTS
|
|
1694
|
+
var query = ifExist ? "DROP TABLE IF EXISTS " + this.escapePath(tableName) : "DROP TABLE " + this.escapePath(tableName);
|
|
1649
1695
|
return new Query_1.Query(query);
|
|
1650
1696
|
};
|
|
1651
1697
|
AbstractSqliteQueryRunner.prototype.createViewSql = function (view) {
|
|
@@ -1683,14 +1729,15 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1683
1729
|
*/
|
|
1684
1730
|
AbstractSqliteQueryRunner.prototype.createIndexSql = function (table, index) {
|
|
1685
1731
|
var columns = index.columnNames.map(function (columnName) { return "\"" + columnName + "\""; }).join(", ");
|
|
1686
|
-
|
|
1732
|
+
var _a = (0, tslib_1.__read)(this.splitTablePath(table.name), 2), database = _a[0], tableName = _a[1];
|
|
1733
|
+
return new Query_1.Query("CREATE " + (index.isUnique ? "UNIQUE " : "") + "INDEX " + (database ? "\"" + database + "\"." : "") + this.escapePath(index.name) + " ON \"" + tableName + "\" (" + columns + ") " + (index.where ? "WHERE " + index.where : ""));
|
|
1687
1734
|
};
|
|
1688
1735
|
/**
|
|
1689
1736
|
* Builds drop index sql.
|
|
1690
1737
|
*/
|
|
1691
1738
|
AbstractSqliteQueryRunner.prototype.dropIndexSql = function (indexOrName) {
|
|
1692
1739
|
var indexName = indexOrName instanceof TableIndex_1.TableIndex ? indexOrName.name : indexOrName;
|
|
1693
|
-
return new Query_1.Query("DROP INDEX
|
|
1740
|
+
return new Query_1.Query("DROP INDEX " + this.escapePath(indexName));
|
|
1694
1741
|
};
|
|
1695
1742
|
/**
|
|
1696
1743
|
* Builds a query for create column.
|
|
@@ -1704,7 +1751,7 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1704
1751
|
c += " " + this.connection.driver.createFullType(column);
|
|
1705
1752
|
}
|
|
1706
1753
|
if (column.enum)
|
|
1707
|
-
c += " CHECK( " + column.name + " IN (" + column.enum.map(function (val) { return "'" + val + "'"; }).join(",") + ") )";
|
|
1754
|
+
c += " CHECK( \"" + column.name + "\" IN (" + column.enum.map(function (val) { return "'" + val + "'"; }).join(",") + ") )";
|
|
1708
1755
|
if (column.isPrimary && !skipPrimary)
|
|
1709
1756
|
c += " PRIMARY KEY";
|
|
1710
1757
|
if (column.isGenerated === true && column.generationStrategy === "increment") // don't use skipPrimary here since updates can update already exist primary without auto inc.
|
|
@@ -1720,10 +1767,10 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1720
1767
|
AbstractSqliteQueryRunner.prototype.recreateTable = function (newTable, oldTable, migrateData) {
|
|
1721
1768
|
if (migrateData === void 0) { migrateData = true; }
|
|
1722
1769
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1723
|
-
var upQueries, downQueries, newColumnNames, oldColumnNames;
|
|
1770
|
+
var upQueries, downQueries, _a, databaseNew, tableNameNew, _b, tableNameOld, newColumnNames, oldColumnNames;
|
|
1724
1771
|
var _this = this;
|
|
1725
|
-
return (0, tslib_1.__generator)(this, function (
|
|
1726
|
-
switch (
|
|
1772
|
+
return (0, tslib_1.__generator)(this, function (_c) {
|
|
1773
|
+
switch (_c.label) {
|
|
1727
1774
|
case 0:
|
|
1728
1775
|
upQueries = [];
|
|
1729
1776
|
downQueries = [];
|
|
@@ -1732,8 +1779,9 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1732
1779
|
upQueries.push(_this.dropIndexSql(index));
|
|
1733
1780
|
downQueries.push(_this.createIndexSql(oldTable, index));
|
|
1734
1781
|
});
|
|
1735
|
-
|
|
1736
|
-
|
|
1782
|
+
_a = (0, tslib_1.__read)(this.splitTablePath(newTable.name), 2), databaseNew = _a[0], tableNameNew = _a[1];
|
|
1783
|
+
_b = (0, tslib_1.__read)(this.splitTablePath(oldTable.name), 2), tableNameOld = _b[1];
|
|
1784
|
+
newTable.name = tableNameNew = (databaseNew ? databaseNew + "." : "") + "temporary_" + tableNameNew;
|
|
1737
1785
|
// create new table
|
|
1738
1786
|
upQueries.push(this.createTableSql(newTable, true));
|
|
1739
1787
|
downQueries.push(this.dropTableSql(newTable));
|
|
@@ -1751,15 +1799,15 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1751
1799
|
return newTable.columns.find(function (c) { return c.name === column.name; });
|
|
1752
1800
|
}).map(function (column) { return "\"" + column.name + "\""; }).join(", ");
|
|
1753
1801
|
}
|
|
1754
|
-
upQueries.push(new Query_1.Query("INSERT INTO
|
|
1755
|
-
downQueries.push(new Query_1.Query("INSERT INTO
|
|
1802
|
+
upQueries.push(new Query_1.Query("INSERT INTO " + this.escapePath(newTable.name) + "(" + newColumnNames + ") SELECT " + oldColumnNames + " FROM " + this.escapePath(oldTable.name)));
|
|
1803
|
+
downQueries.push(new Query_1.Query("INSERT INTO " + this.escapePath(oldTable.name) + "(" + oldColumnNames + ") SELECT " + newColumnNames + " FROM " + this.escapePath(newTable.name)));
|
|
1756
1804
|
}
|
|
1757
1805
|
// drop old table
|
|
1758
1806
|
upQueries.push(this.dropTableSql(oldTable));
|
|
1759
1807
|
downQueries.push(this.createTableSql(oldTable, true));
|
|
1760
1808
|
// rename old table
|
|
1761
|
-
upQueries.push(new Query_1.Query("ALTER TABLE
|
|
1762
|
-
downQueries.push(new Query_1.Query("ALTER TABLE
|
|
1809
|
+
upQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(newTable.name) + " RENAME TO " + this.escapePath(tableNameOld)));
|
|
1810
|
+
downQueries.push(new Query_1.Query("ALTER TABLE " + this.escapePath(oldTable.name) + " RENAME TO " + this.escapePath(tableNameNew)));
|
|
1763
1811
|
newTable.name = oldTable.name;
|
|
1764
1812
|
// recreate table indices
|
|
1765
1813
|
newTable.indices.forEach(function (index) {
|
|
@@ -1771,13 +1819,26 @@ var AbstractSqliteQueryRunner = /** @class */ (function (_super) {
|
|
|
1771
1819
|
});
|
|
1772
1820
|
return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
1773
1821
|
case 1:
|
|
1774
|
-
|
|
1822
|
+
_c.sent();
|
|
1775
1823
|
this.replaceCachedTable(oldTable, newTable);
|
|
1776
1824
|
return [2 /*return*/];
|
|
1777
1825
|
}
|
|
1778
1826
|
});
|
|
1779
1827
|
});
|
|
1780
1828
|
};
|
|
1829
|
+
/**
|
|
1830
|
+
* tablePath e.g. "myDB.myTable", "myTable"
|
|
1831
|
+
*/
|
|
1832
|
+
AbstractSqliteQueryRunner.prototype.splitTablePath = function (tablePath) {
|
|
1833
|
+
return ((tablePath.indexOf(".") !== -1) ? tablePath.split(".") : [undefined, tablePath]);
|
|
1834
|
+
};
|
|
1835
|
+
/**
|
|
1836
|
+
* Escapes given table or view path. Tolerates leading/trailing dots
|
|
1837
|
+
*/
|
|
1838
|
+
AbstractSqliteQueryRunner.prototype.escapePath = function (target, disableEscape) {
|
|
1839
|
+
var tableName = target instanceof Table_1.Table || target instanceof View_1.View ? target.name : target;
|
|
1840
|
+
return tableName.replace(/^\.+|\.+$/g, "").split(".").map(function (i) { return disableEscape ? i : "\"" + i + "\""; }).join(".");
|
|
1841
|
+
};
|
|
1781
1842
|
return AbstractSqliteQueryRunner;
|
|
1782
1843
|
}(BaseQueryRunner_1.BaseQueryRunner));
|
|
1783
1844
|
exports.AbstractSqliteQueryRunner = AbstractSqliteQueryRunner;
|