typeorm 0.3.29-dev.cc07c90 → 1.0.0-beta.1
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 +67 -74
- package/browser/cache/DbQueryResultCache.d.ts +17 -6
- package/browser/cache/DbQueryResultCache.js +46 -32
- package/browser/cache/DbQueryResultCache.js.map +1 -1
- package/browser/cache/QueryResultCache.d.ts +2 -2
- package/browser/cache/QueryResultCache.js +3 -3
- package/browser/cache/QueryResultCache.js.map +1 -1
- package/browser/cache/QueryResultCacheFactory.d.ts +4 -4
- package/browser/cache/QueryResultCacheFactory.js +17 -14
- package/browser/cache/QueryResultCacheFactory.js.map +1 -1
- package/browser/cache/QueryResultCacheOptions.js +3 -3
- package/browser/cache/QueryResultCacheOptions.js.map +1 -1
- package/browser/cache/RedisQueryResultCache.d.ts +18 -19
- package/browser/cache/RedisQueryResultCache.js +54 -130
- package/browser/cache/RedisQueryResultCache.js.map +1 -1
- package/browser/cli-ts-node-commonjs.js +4 -3
- package/browser/cli-ts-node-commonjs.js.map +1 -1
- package/browser/cli-ts-node-esm.js +5 -4
- package/browser/cli-ts-node-esm.js.map +1 -1
- package/browser/common/DeepPartial.js +3 -3
- package/browser/common/DeepPartial.js.map +1 -1
- package/browser/common/EntityTarget.d.ts +2 -2
- package/browser/common/EntityTarget.js +3 -3
- package/browser/common/EntityTarget.js.map +1 -1
- package/browser/common/MixedList.js +3 -3
- package/browser/common/MixedList.js.map +1 -1
- package/browser/common/NonNever.d.ts +1 -1
- package/browser/common/NonNever.js +3 -3
- package/browser/common/NonNever.js.map +1 -1
- package/browser/common/ObjectLiteral.js +3 -3
- package/browser/common/ObjectLiteral.js.map +1 -1
- package/browser/common/ObjectType.js +3 -3
- package/browser/common/ObjectType.js.map +1 -1
- package/browser/common/PickKeysByType.js +3 -3
- package/browser/common/PickKeysByType.js.map +1 -1
- package/browser/common/PrimitiveCriteria.js +3 -3
- package/browser/common/PrimitiveCriteria.js.map +1 -1
- package/browser/common/RelationType.d.ts +5 -5
- package/browser/common/RelationType.js +3 -3
- package/browser/common/RelationType.js.map +1 -1
- package/browser/connection/ConnectionMetadataBuilder.d.ts +10 -7
- package/browser/connection/ConnectionMetadataBuilder.js +32 -27
- package/browser/connection/ConnectionMetadataBuilder.js.map +1 -1
- package/browser/connection/ConnectionOptionsReader.d.ts +3 -11
- package/browser/connection/ConnectionOptionsReader.js +43 -71
- package/browser/connection/ConnectionOptionsReader.js.map +1 -1
- package/browser/data-source/BaseDataSourceOptions.d.ts +13 -20
- package/browser/data-source/BaseDataSourceOptions.js +3 -3
- package/browser/data-source/BaseDataSourceOptions.js.map +1 -1
- package/browser/data-source/DataSource.d.ts +50 -61
- package/browser/data-source/DataSource.js +107 -114
- package/browser/data-source/DataSource.js.map +1 -1
- package/browser/data-source/DataSourceOptions.d.ts +18 -19
- package/browser/data-source/DataSourceOptions.js +3 -3
- package/browser/data-source/DataSourceOptions.js.map +1 -1
- package/browser/data-source/index.d.ts +1 -1
- package/browser/data-source/index.js +5 -4
- package/browser/data-source/index.js.map +1 -1
- package/browser/decorator/Check.d.ts +3 -0
- package/browser/decorator/Check.js +11 -7
- package/browser/decorator/Check.js.map +1 -1
- package/browser/decorator/Exclusion.d.ts +8 -2
- package/browser/decorator/Exclusion.js +17 -9
- package/browser/decorator/Exclusion.js.map +1 -1
- package/browser/decorator/ForeignKey.d.ts +11 -2
- package/browser/decorator/ForeignKey.js +14 -8
- package/browser/decorator/ForeignKey.js.map +1 -1
- package/browser/decorator/Generated.d.ts +1 -0
- package/browser/decorator/Generated.js +8 -5
- package/browser/decorator/Generated.js.map +1 -1
- package/browser/decorator/Index.d.ts +17 -1
- package/browser/decorator/Index.js +14 -8
- package/browser/decorator/Index.js.map +1 -1
- package/browser/decorator/Unique.d.ts +11 -1
- package/browser/decorator/Unique.js +13 -8
- package/browser/decorator/Unique.js.map +1 -1
- package/browser/decorator/columns/Column.d.ts +31 -10
- package/browser/decorator/columns/Column.js +14 -10
- package/browser/decorator/columns/Column.js.map +1 -1
- package/browser/decorator/columns/CreateDateColumn.d.ts +2 -1
- package/browser/decorator/columns/CreateDateColumn.js +8 -5
- package/browser/decorator/columns/CreateDateColumn.js.map +1 -1
- package/browser/decorator/columns/DeleteDateColumn.d.ts +2 -1
- package/browser/decorator/columns/DeleteDateColumn.js +8 -5
- package/browser/decorator/columns/DeleteDateColumn.js.map +1 -1
- package/browser/decorator/columns/ObjectIdColumn.d.ts +2 -1
- package/browser/decorator/columns/ObjectIdColumn.js +8 -5
- package/browser/decorator/columns/ObjectIdColumn.js.map +1 -1
- package/browser/decorator/columns/PrimaryColumn.d.ts +5 -2
- package/browser/decorator/columns/PrimaryColumn.js +14 -10
- package/browser/decorator/columns/PrimaryColumn.js.map +1 -1
- package/browser/decorator/columns/PrimaryGeneratedColumn.d.ts +10 -3
- package/browser/decorator/columns/PrimaryGeneratedColumn.js +13 -9
- package/browser/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
- package/browser/decorator/columns/UpdateDateColumn.d.ts +2 -1
- package/browser/decorator/columns/UpdateDateColumn.js +8 -5
- package/browser/decorator/columns/UpdateDateColumn.js.map +1 -1
- package/browser/decorator/columns/VersionColumn.d.ts +2 -1
- package/browser/decorator/columns/VersionColumn.js +8 -5
- package/browser/decorator/columns/VersionColumn.js.map +1 -1
- package/browser/decorator/columns/ViewColumn.d.ts +2 -1
- package/browser/decorator/columns/ViewColumn.js +8 -5
- package/browser/decorator/columns/ViewColumn.js.map +1 -1
- package/browser/decorator/columns/VirtualColumn.d.ts +5 -2
- package/browser/decorator/columns/VirtualColumn.js +11 -7
- package/browser/decorator/columns/VirtualColumn.js.map +1 -1
- package/browser/decorator/entity/ChildEntity.d.ts +1 -0
- package/browser/decorator/entity/ChildEntity.js +9 -6
- package/browser/decorator/entity/ChildEntity.js.map +1 -1
- package/browser/decorator/entity/Entity.d.ts +4 -1
- package/browser/decorator/entity/Entity.js +11 -7
- package/browser/decorator/entity/Entity.js.map +1 -1
- package/browser/decorator/entity/TableInheritance.d.ts +4 -1
- package/browser/decorator/entity/TableInheritance.js +10 -5
- package/browser/decorator/entity/TableInheritance.js.map +1 -1
- package/browser/decorator/entity-view/ViewEntity.d.ts +4 -1
- package/browser/decorator/entity-view/ViewEntity.js +11 -7
- package/browser/decorator/entity-view/ViewEntity.js.map +1 -1
- package/browser/decorator/listeners/AfterInsert.js +9 -7
- package/browser/decorator/listeners/AfterInsert.js.map +1 -1
- package/browser/decorator/listeners/AfterLoad.js +9 -7
- package/browser/decorator/listeners/AfterLoad.js.map +1 -1
- package/browser/decorator/listeners/AfterRecover.js +9 -7
- package/browser/decorator/listeners/AfterRecover.js.map +1 -1
- package/browser/decorator/listeners/AfterRemove.js +9 -7
- package/browser/decorator/listeners/AfterRemove.js.map +1 -1
- package/browser/decorator/listeners/AfterSoftRemove.js +9 -7
- package/browser/decorator/listeners/AfterSoftRemove.js.map +1 -1
- package/browser/decorator/listeners/AfterUpdate.js +9 -7
- package/browser/decorator/listeners/AfterUpdate.js.map +1 -1
- package/browser/decorator/listeners/BeforeInsert.js +9 -7
- package/browser/decorator/listeners/BeforeInsert.js.map +1 -1
- package/browser/decorator/listeners/BeforeRecover.js +9 -7
- package/browser/decorator/listeners/BeforeRecover.js.map +1 -1
- package/browser/decorator/listeners/BeforeRemove.js +9 -7
- package/browser/decorator/listeners/BeforeRemove.js.map +1 -1
- package/browser/decorator/listeners/BeforeSoftRemove.js +9 -7
- package/browser/decorator/listeners/BeforeSoftRemove.js.map +1 -1
- package/browser/decorator/listeners/BeforeUpdate.js +9 -7
- package/browser/decorator/listeners/BeforeUpdate.js.map +1 -1
- package/browser/decorator/listeners/EventSubscriber.js +7 -5
- package/browser/decorator/listeners/EventSubscriber.js.map +1 -1
- package/browser/decorator/options/ColumnCommonOptions.d.ts +2 -2
- package/browser/decorator/options/ColumnCommonOptions.js +3 -3
- package/browser/decorator/options/ColumnCommonOptions.js.map +1 -1
- package/browser/decorator/options/ColumnEmbeddedOptions.js +3 -3
- package/browser/decorator/options/ColumnEmbeddedOptions.js.map +1 -1
- package/browser/decorator/options/ColumnEnumOptions.js +3 -3
- package/browser/decorator/options/ColumnEnumOptions.js.map +1 -1
- package/browser/decorator/options/ColumnHstoreOptions.js +3 -3
- package/browser/decorator/options/ColumnHstoreOptions.js.map +1 -1
- package/browser/decorator/options/ColumnNumericOptions.d.ts +0 -16
- package/browser/decorator/options/ColumnNumericOptions.js +3 -3
- package/browser/decorator/options/ColumnNumericOptions.js.map +1 -1
- package/browser/decorator/options/ColumnOptions.d.ts +8 -33
- package/browser/decorator/options/ColumnOptions.js +3 -3
- package/browser/decorator/options/ColumnOptions.js.map +1 -1
- package/browser/decorator/options/ColumnUnsignedOptions.d.ts +1 -20
- package/browser/decorator/options/ColumnUnsignedOptions.js +3 -3
- package/browser/decorator/options/ColumnUnsignedOptions.js.map +1 -1
- package/browser/decorator/options/ColumnWithLengthOptions.js +3 -3
- package/browser/decorator/options/ColumnWithLengthOptions.js.map +1 -1
- package/browser/decorator/options/EntityOptions.d.ts +1 -1
- package/browser/decorator/options/EntityOptions.js +3 -3
- package/browser/decorator/options/EntityOptions.js.map +1 -1
- package/browser/decorator/options/ExclusionOptions.d.ts +10 -0
- package/{connection/ConnectionOptions.js → browser/decorator/options/ExclusionOptions.js} +1 -2
- package/browser/decorator/options/ExclusionOptions.js.map +1 -0
- package/browser/decorator/options/ForeignKeyOptions.d.ts +3 -3
- package/browser/decorator/options/ForeignKeyOptions.js +3 -3
- package/browser/decorator/options/ForeignKeyOptions.js.map +1 -1
- package/browser/decorator/options/IndexOptions.d.ts +7 -0
- package/browser/decorator/options/IndexOptions.js +3 -3
- package/browser/decorator/options/IndexOptions.js.map +1 -1
- package/browser/decorator/options/JoinColumnOptions.js +3 -3
- package/browser/decorator/options/JoinColumnOptions.js.map +1 -1
- package/browser/decorator/options/JoinTableMultipleColumnsOptions.d.ts +1 -1
- package/browser/decorator/options/JoinTableMultipleColumnsOptions.js +3 -3
- package/browser/decorator/options/JoinTableMultipleColumnsOptions.js.map +1 -1
- package/browser/decorator/options/JoinTableOptions.d.ts +1 -1
- package/browser/decorator/options/JoinTableOptions.js +3 -3
- package/browser/decorator/options/JoinTableOptions.js.map +1 -1
- package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.d.ts +1 -1
- package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.js +3 -3
- package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.js.map +1 -1
- package/browser/decorator/options/PrimaryGeneratedColumnNumericOptions.d.ts +1 -9
- package/browser/decorator/options/PrimaryGeneratedColumnNumericOptions.js +3 -3
- package/browser/decorator/options/PrimaryGeneratedColumnNumericOptions.js.map +1 -1
- package/browser/decorator/options/PrimaryGeneratedColumnUUIDOptions.js +3 -3
- package/browser/decorator/options/PrimaryGeneratedColumnUUIDOptions.js.map +1 -1
- package/browser/decorator/options/RelationOptions.d.ts +3 -3
- package/browser/decorator/options/RelationOptions.js +3 -3
- package/browser/decorator/options/RelationOptions.js.map +1 -1
- package/browser/decorator/options/SpatialColumnOptions.d.ts +1 -1
- package/browser/decorator/options/SpatialColumnOptions.js +3 -3
- package/browser/decorator/options/SpatialColumnOptions.js.map +1 -1
- package/browser/decorator/options/TransactionOptions.d.ts +1 -1
- package/browser/decorator/options/TransactionOptions.js +3 -3
- package/browser/decorator/options/TransactionOptions.js.map +1 -1
- package/browser/decorator/options/UniqueOptions.d.ts +1 -1
- package/browser/decorator/options/UniqueOptions.js +3 -3
- package/browser/decorator/options/UniqueOptions.js.map +1 -1
- package/browser/decorator/options/ValueTransformer.js +3 -3
- package/browser/decorator/options/ValueTransformer.js.map +1 -1
- package/browser/decorator/options/ViewColumnOptions.d.ts +1 -1
- package/browser/decorator/options/ViewColumnOptions.js +3 -3
- package/browser/decorator/options/ViewColumnOptions.js.map +1 -1
- package/browser/decorator/options/ViewEntityOptions.d.ts +3 -2
- package/browser/decorator/options/ViewEntityOptions.js +3 -3
- package/browser/decorator/options/ViewEntityOptions.js.map +1 -1
- package/browser/decorator/options/VirtualColumnOptions.d.ts +3 -3
- package/browser/decorator/options/VirtualColumnOptions.js +3 -3
- package/browser/decorator/options/VirtualColumnOptions.js.map +1 -1
- package/browser/decorator/relations/JoinColumn.d.ts +3 -1
- package/browser/decorator/relations/JoinColumn.js +8 -5
- package/browser/decorator/relations/JoinColumn.js.map +1 -1
- package/browser/decorator/relations/JoinTable.d.ts +4 -2
- package/browser/decorator/relations/JoinTable.js +8 -5
- package/browser/decorator/relations/JoinTable.js.map +1 -1
- package/browser/decorator/relations/ManyToMany.d.ts +7 -2
- package/browser/decorator/relations/ManyToMany.js +12 -7
- package/browser/decorator/relations/ManyToMany.js.map +1 -1
- package/browser/decorator/relations/ManyToOne.d.ts +7 -2
- package/browser/decorator/relations/ManyToOne.js +12 -7
- package/browser/decorator/relations/ManyToOne.js.map +1 -1
- package/browser/decorator/relations/OneToMany.d.ts +5 -2
- package/browser/decorator/relations/OneToMany.js +10 -5
- package/browser/decorator/relations/OneToMany.js.map +1 -1
- package/browser/decorator/relations/OneToOne.d.ts +7 -2
- package/browser/decorator/relations/OneToOne.js +12 -7
- package/browser/decorator/relations/OneToOne.js.map +1 -1
- package/browser/decorator/relations/RelationId.d.ts +4 -2
- package/browser/decorator/relations/RelationId.js +10 -6
- package/browser/decorator/relations/RelationId.js.map +1 -1
- package/browser/decorator/tree/Tree.d.ts +6 -4
- package/browser/decorator/tree/Tree.js +11 -7
- package/browser/decorator/tree/Tree.js.map +1 -1
- package/browser/decorator/tree/TreeChildren.d.ts +2 -0
- package/browser/decorator/tree/TreeChildren.js +9 -5
- package/browser/decorator/tree/TreeChildren.js.map +1 -1
- package/browser/decorator/tree/TreeLevelColumn.js +7 -5
- package/browser/decorator/tree/TreeLevelColumn.js.map +1 -1
- package/browser/decorator/tree/TreeParent.d.ts +3 -1
- package/browser/decorator/tree/TreeParent.js +9 -5
- package/browser/decorator/tree/TreeParent.js.map +1 -1
- package/browser/driver/Driver.d.ts +32 -21
- package/browser/driver/Driver.js +3 -3
- package/browser/driver/Driver.js.map +1 -1
- package/browser/driver/DriverFactory.d.ts +5 -3
- package/browser/driver/DriverFactory.js +61 -60
- package/browser/driver/DriverFactory.js.map +1 -1
- package/browser/driver/DriverUtils.d.ts +13 -11
- package/browser/driver/DriverUtils.js +28 -30
- package/browser/driver/DriverUtils.js.map +1 -1
- package/browser/driver/Query.js +6 -3
- package/browser/driver/Query.js.map +1 -1
- package/browser/driver/SqlInMemory.d.ts +1 -1
- package/browser/driver/SqlInMemory.js +6 -3
- package/browser/driver/SqlInMemory.js.map +1 -1
- package/browser/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.d.ts +0 -1
- package/browser/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js +3 -3
- package/browser/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js.map +1 -1
- package/{driver/aurora-mysql/AuroraMysqlConnectionOptions.d.ts → browser/driver/aurora-mysql/AuroraMysqlDataSourceOptions.d.ts} +4 -5
- package/{driver/cockroachdb/CockroachConnectionOptions.js → browser/driver/aurora-mysql/AuroraMysqlDataSourceOptions.js} +1 -2
- package/browser/driver/aurora-mysql/AuroraMysqlDataSourceOptions.js.map +1 -0
- package/browser/driver/aurora-mysql/AuroraMysqlDriver.d.ts +66 -28
- package/browser/driver/aurora-mysql/AuroraMysqlDriver.js +113 -97
- package/browser/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -1
- package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +168 -32
- package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js +404 -290
- package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
- package/{driver/aurora-postgres/AuroraPostgresConnectionOptions.d.ts → browser/driver/aurora-postgres/AuroraPostgresDataSourceOptions.d.ts} +2 -2
- package/browser/driver/aurora-postgres/AuroraPostgresDataSourceOptions.js +3 -0
- package/browser/driver/aurora-postgres/AuroraPostgresDataSourceOptions.js.map +1 -0
- package/browser/driver/aurora-postgres/AuroraPostgresDriver.d.ts +15 -13
- package/browser/driver/aurora-postgres/AuroraPostgresDriver.js +30 -20
- package/browser/driver/aurora-postgres/AuroraPostgresDriver.js.map +1 -1
- package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.d.ts +11 -9
- package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js +23 -14
- package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
- package/{driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts → browser/driver/better-sqlite3/BetterSqlite3DataSourceOptions.d.ts} +5 -3
- package/{driver/aurora-mysql/AuroraMysqlConnectionOptions.js → browser/driver/better-sqlite3/BetterSqlite3DataSourceOptions.js} +1 -2
- package/browser/driver/better-sqlite3/BetterSqlite3DataSourceOptions.js.map +1 -0
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.d.ts +13 -12
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +35 -27
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +4 -1
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +35 -24
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/browser/driver/capacitor/{CapacitorConnectionOptions.d.ts → CapacitorDataSourceOptions.d.ts} +2 -2
- package/{driver/cordova/CordovaConnectionOptions.js → browser/driver/capacitor/CapacitorDataSourceOptions.js} +1 -2
- package/browser/driver/capacitor/CapacitorDataSourceOptions.js.map +1 -0
- package/browser/driver/capacitor/CapacitorDriver.d.ts +7 -6
- package/browser/driver/capacitor/CapacitorDriver.js +14 -10
- package/browser/driver/capacitor/CapacitorDriver.js.map +1 -1
- package/browser/driver/capacitor/CapacitorQueryRunner.d.ts +6 -2
- package/browser/driver/capacitor/CapacitorQueryRunner.js +23 -16
- package/browser/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.d.ts +1 -1
- package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.js +3 -3
- package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -1
- package/{driver/cockroachdb/CockroachConnectionOptions.d.ts → browser/driver/cockroachdb/CockroachDataSourceOptions.d.ts} +4 -4
- package/browser/driver/cockroachdb/CockroachDataSourceOptions.js +3 -0
- package/browser/driver/cockroachdb/CockroachDataSourceOptions.js.map +1 -0
- package/browser/driver/cockroachdb/CockroachDriver.d.ts +79 -27
- package/browser/driver/cockroachdb/CockroachDriver.js +168 -88
- package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +203 -31
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +582 -368
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/cordova/{CordovaConnectionOptions.d.ts → CordovaDataSourceOptions.d.ts} +2 -2
- package/{driver/mongodb/MongoConnectionOptions.js → browser/driver/cordova/CordovaDataSourceOptions.js} +1 -2
- package/browser/driver/cordova/CordovaDataSourceOptions.js.map +1 -0
- package/browser/driver/cordova/CordovaDriver.d.ts +7 -6
- package/browser/driver/cordova/CordovaDriver.js +14 -12
- package/browser/driver/cordova/CordovaDriver.js.map +1 -1
- package/browser/driver/cordova/CordovaQueryRunner.d.ts +7 -35
- package/browser/driver/cordova/CordovaQueryRunner.js +31 -55
- package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/browser/driver/expo/{ExpoConnectionOptions.d.ts → ExpoDataSourceOptions.d.ts} +2 -2
- package/{driver/sap/SapConnectionOptions.js → browser/driver/expo/ExpoDataSourceOptions.js} +1 -2
- package/browser/driver/expo/ExpoDataSourceOptions.js.map +1 -0
- package/browser/driver/expo/ExpoDriver.d.ts +6 -5
- package/browser/driver/expo/ExpoDriver.js +18 -8
- package/browser/driver/expo/ExpoDriver.js.map +1 -1
- package/browser/driver/expo/ExpoQueryRunner.d.ts +1 -1
- package/browser/driver/expo/ExpoQueryRunner.js +21 -18
- package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/{driver/mongodb/MongoConnectionOptions.d.ts → browser/driver/mongodb/MongoDataSourceOptions.d.ts} +7 -69
- package/{driver/expo/ExpoConnectionOptions.js → browser/driver/mongodb/MongoDataSourceOptions.js} +1 -2
- package/browser/driver/mongodb/MongoDataSourceOptions.js.map +1 -0
- package/browser/driver/mongodb/MongoDriver.d.ts +51 -23
- package/browser/driver/mongodb/MongoDriver.js +70 -58
- package/browser/driver/mongodb/MongoDriver.js.map +1 -1
- package/browser/driver/mongodb/MongoQueryRunner.d.ts +239 -83
- package/browser/driver/mongodb/MongoQueryRunner.js +303 -133
- package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/bson.typings.d.ts +604 -97
- package/browser/driver/mongodb/bson.typings.js +4 -3
- package/browser/driver/mongodb/bson.typings.js.map +1 -1
- package/browser/driver/mongodb/typings.d.ts +3577 -1025
- package/browser/driver/mongodb/typings.js +24 -24
- package/browser/driver/mongodb/typings.js.map +1 -1
- package/browser/driver/mysql/MysqlConnectionCredentialsOptions.d.ts +0 -1
- package/browser/driver/mysql/MysqlConnectionCredentialsOptions.js +3 -3
- package/browser/driver/mysql/MysqlConnectionCredentialsOptions.js.map +1 -1
- package/{driver/mysql/MysqlConnectionOptions.d.ts → browser/driver/mysql/MysqlDataSourceOptions.d.ts} +6 -13
- package/browser/driver/mysql/MysqlDataSourceOptions.js +3 -0
- package/browser/driver/mysql/MysqlDataSourceOptions.js.map +1 -0
- package/browser/driver/mysql/MysqlDriver.d.ts +69 -37
- package/browser/driver/mysql/MysqlDriver.js +141 -251
- package/browser/driver/mysql/MysqlDriver.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.d.ts +167 -33
- package/browser/driver/mysql/MysqlQueryRunner.js +448 -325
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/{driver/nativescript/NativescriptConnectionOptions.d.ts → browser/driver/nativescript/NativescriptDataSourceOptions.d.ts} +2 -2
- package/browser/driver/nativescript/NativescriptDataSourceOptions.js +3 -0
- package/browser/driver/nativescript/NativescriptDataSourceOptions.js.map +1 -0
- package/browser/driver/nativescript/NativescriptDriver.d.ts +9 -8
- package/browser/driver/nativescript/NativescriptDriver.js +16 -13
- package/browser/driver/nativescript/NativescriptDriver.js.map +1 -1
- package/browser/driver/nativescript/NativescriptQueryRunner.d.ts +7 -2
- package/browser/driver/nativescript/NativescriptQueryRunner.js +22 -14
- package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/browser/driver/oracle/OracleConnectionCredentialsOptions.js +3 -3
- package/browser/driver/oracle/OracleConnectionCredentialsOptions.js.map +1 -1
- package/{driver/oracle/OracleConnectionOptions.d.ts → browser/driver/oracle/OracleDataSourceOptions.d.ts} +3 -3
- package/{connection/BaseConnectionOptions.js → browser/driver/oracle/OracleDataSourceOptions.js} +1 -2
- package/browser/driver/oracle/OracleDataSourceOptions.js.map +1 -0
- package/browser/driver/oracle/OracleDriver.d.ts +65 -28
- package/browser/driver/oracle/OracleDriver.js +96 -55
- package/browser/driver/oracle/OracleDriver.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.d.ts +176 -29
- package/browser/driver/oracle/OracleQueryRunner.js +442 -267
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +1 -1
- package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js +3 -3
- package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
- package/{driver/postgres/PostgresConnectionOptions.d.ts → browser/driver/postgres/PostgresDataSourceOptions.d.ts} +8 -5
- package/browser/driver/postgres/PostgresDataSourceOptions.js +3 -0
- package/browser/driver/postgres/PostgresDataSourceOptions.js.map +1 -0
- package/browser/driver/postgres/PostgresDriver.d.ts +85 -28
- package/browser/driver/postgres/PostgresDriver.js +244 -80
- package/browser/driver/postgres/PostgresDriver.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.d.ts +225 -34
- package/browser/driver/postgres/PostgresQueryRunner.js +729 -447
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/{driver/react-native/ReactNativeConnectionOptions.d.ts → browser/driver/react-native/ReactNativeDataSourceOptions.d.ts} +6 -2
- package/{driver/capacitor/CapacitorConnectionOptions.js → browser/driver/react-native/ReactNativeDataSourceOptions.js} +1 -2
- package/browser/driver/react-native/ReactNativeDataSourceOptions.js.map +1 -0
- package/browser/driver/react-native/ReactNativeDriver.d.ts +64 -24
- package/browser/driver/react-native/ReactNativeDriver.js +92 -50
- package/browser/driver/react-native/ReactNativeDriver.js.map +1 -1
- package/browser/driver/react-native/ReactNativeQueryRunner.d.ts +7 -2
- package/browser/driver/react-native/ReactNativeQueryRunner.js +26 -18
- package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapConnectionCredentialsOptions.js +3 -3
- package/browser/driver/sap/SapConnectionCredentialsOptions.js.map +1 -1
- package/browser/driver/sap/{SapConnectionOptions.d.ts → SapDataSourceOptions.d.ts} +10 -37
- package/browser/driver/sap/SapDataSourceOptions.js +3 -0
- package/browser/driver/sap/SapDataSourceOptions.js.map +1 -0
- package/browser/driver/sap/SapDriver.d.ts +54 -17
- package/browser/driver/sap/SapDriver.js +97 -70
- package/browser/driver/sap/SapDriver.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.d.ts +179 -31
- package/browser/driver/sap/SapQueryRunner.js +488 -286
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/spanner/SpannerConnectionCredentialsOptions.js +3 -3
- package/browser/driver/spanner/SpannerConnectionCredentialsOptions.js.map +1 -1
- package/{driver/spanner/SpannerConnectionOptions.d.ts → browser/driver/spanner/SpannerDataSourceOptions.d.ts} +4 -4
- package/browser/driver/spanner/SpannerDataSourceOptions.js +3 -0
- package/browser/driver/spanner/SpannerDataSourceOptions.js.map +1 -0
- package/browser/driver/spanner/SpannerDriver.d.ts +61 -23
- package/browser/driver/spanner/SpannerDriver.js +82 -42
- package/browser/driver/spanner/SpannerDriver.js.map +1 -1
- package/browser/driver/spanner/SpannerQueryRunner.d.ts +170 -28
- package/browser/driver/spanner/SpannerQueryRunner.js +373 -201
- package/browser/driver/spanner/SpannerQueryRunner.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +74 -23
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +162 -53
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +164 -30
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +357 -193
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/{driver/sqljs/SqljsConnectionOptions.d.ts → browser/driver/sqljs/SqljsDataSourceOptions.d.ts} +2 -2
- package/browser/driver/sqljs/SqljsDataSourceOptions.js +3 -0
- package/browser/driver/sqljs/SqljsDataSourceOptions.js.map +1 -0
- package/browser/driver/sqljs/SqljsDriver.d.ts +15 -8
- package/browser/driver/sqljs/SqljsDriver.js +44 -34
- package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
- package/browser/driver/sqljs/SqljsQueryRunner.d.ts +4 -1
- package/browser/driver/sqljs/SqljsQueryRunner.js +24 -18
- package/browser/driver/sqljs/SqljsQueryRunner.js.map +1 -1
- package/browser/driver/sqlserver/MssqlParameter.d.ts +0 -1
- package/browser/driver/sqlserver/MssqlParameter.js +6 -4
- package/browser/driver/sqlserver/MssqlParameter.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +8 -15
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.js +3 -3
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -1
- package/browser/driver/sqlserver/{SqlServerConnectionOptions.d.ts → SqlServerDataSourceOptions.d.ts} +4 -4
- package/browser/driver/sqlserver/SqlServerDataSourceOptions.js +3 -0
- package/browser/driver/sqlserver/SqlServerDataSourceOptions.js.map +1 -0
- package/browser/driver/sqlserver/SqlServerDriver.d.ts +70 -28
- package/browser/driver/sqlserver/SqlServerDriver.js +115 -79
- package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +190 -30
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +576 -350
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js +3 -3
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js.map +1 -1
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js +3 -3
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js.map +1 -1
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js +3 -3
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js.map +1 -1
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js +3 -3
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js.map +1 -1
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js +3 -3
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js.map +1 -1
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js +3 -3
- package/browser/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js.map +1 -1
- package/browser/driver/sqlserver/authentication/DefaultAuthentication.js +3 -3
- package/browser/driver/sqlserver/authentication/DefaultAuthentication.js.map +1 -1
- package/browser/driver/sqlserver/authentication/NtlmAuthentication.js +3 -3
- package/browser/driver/sqlserver/authentication/NtlmAuthentication.js.map +1 -1
- package/browser/driver/types/ColumnTypes.d.ts +1 -1
- package/browser/driver/types/ColumnTypes.js +3 -3
- package/browser/driver/types/ColumnTypes.js.map +1 -1
- package/browser/driver/types/CteCapabilities.js +3 -3
- package/browser/driver/types/CteCapabilities.js.map +1 -1
- package/browser/driver/types/DataTypeDefaults.d.ts +0 -1
- package/browser/driver/types/DataTypeDefaults.js +3 -3
- package/browser/driver/types/DataTypeDefaults.js.map +1 -1
- package/browser/driver/types/DatabaseType.d.ts +1 -1
- package/browser/driver/types/DatabaseType.js +3 -3
- package/browser/driver/types/DatabaseType.js.map +1 -1
- package/browser/driver/types/GeoJsonTypes.js +3 -3
- package/browser/driver/types/GeoJsonTypes.js.map +1 -1
- package/browser/driver/types/IsolationLevel.js +3 -3
- package/browser/driver/types/IsolationLevel.js.map +1 -1
- package/browser/driver/types/MappedColumnTypes.d.ts +1 -1
- package/browser/driver/types/MappedColumnTypes.js +3 -3
- package/browser/driver/types/MappedColumnTypes.js.map +1 -1
- package/browser/driver/types/MetadataTableType.js +6 -4
- package/browser/driver/types/MetadataTableType.js.map +1 -1
- package/browser/driver/types/ReplicationMode.js +3 -3
- package/browser/driver/types/ReplicationMode.js.map +1 -1
- package/browser/driver/types/ReturningType.d.ts +1 -0
- package/{find-options/JoinOptions.js → browser/driver/types/ReturningType.js} +1 -2
- package/browser/driver/types/ReturningType.js.map +1 -0
- package/browser/driver/types/UpsertType.js +3 -3
- package/browser/driver/types/UpsertType.js.map +1 -1
- package/browser/entity-manager/EntityManager.d.ts +111 -57
- package/browser/entity-manager/EntityManager.js +245 -203
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/entity-manager/EntityManagerFactory.d.ts +6 -3
- package/browser/entity-manager/EntityManagerFactory.js +18 -12
- package/browser/entity-manager/EntityManagerFactory.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.d.ts +156 -30
- package/browser/entity-manager/MongoEntityManager.js +289 -112
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/entity-manager/SqljsEntityManager.d.ts +5 -3
- package/browser/entity-manager/SqljsEntityManager.js +12 -7
- package/browser/entity-manager/SqljsEntityManager.js.map +1 -1
- package/browser/entity-schema/EntitySchema.d.ts +1 -1
- package/browser/entity-schema/EntitySchema.js +6 -3
- package/browser/entity-schema/EntitySchema.js.map +1 -1
- package/browser/entity-schema/EntitySchemaCheckOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaCheckOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaColumnForeignKeyOptions.d.ts +2 -2
- package/browser/entity-schema/EntitySchemaColumnForeignKeyOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaColumnForeignKeyOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaColumnOptions.d.ts +6 -26
- package/browser/entity-schema/EntitySchemaColumnOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaColumnOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaEmbeddedColumnOptions.d.ts +1 -1
- package/browser/entity-schema/EntitySchemaEmbeddedColumnOptions.js +6 -3
- package/browser/entity-schema/EntitySchemaEmbeddedColumnOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaEmbeddedError.js +7 -4
- package/browser/entity-schema/EntitySchemaEmbeddedError.js.map +1 -1
- package/browser/entity-schema/EntitySchemaExclusionOptions.d.ts +5 -0
- package/browser/entity-schema/EntitySchemaExclusionOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaExclusionOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaForeignKeyOptions.d.ts +2 -2
- package/browser/entity-schema/EntitySchemaForeignKeyOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaForeignKeyOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaIndexOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaIndexOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaInheritanceOptions.d.ts +1 -1
- package/browser/entity-schema/EntitySchemaInheritanceOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaInheritanceOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaOptions.d.ts +16 -14
- package/browser/entity-schema/EntitySchemaOptions.js +6 -3
- package/browser/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaRelationIdOptions.d.ts +1 -1
- package/browser/entity-schema/EntitySchemaRelationIdOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaRelationIdOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaRelationOptions.d.ts +8 -8
- package/browser/entity-schema/EntitySchemaRelationOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaTransformer.d.ts +2 -1
- package/browser/entity-schema/EntitySchemaTransformer.js +12 -10
- package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/browser/entity-schema/EntitySchemaUniqueOptions.d.ts +1 -1
- package/browser/entity-schema/EntitySchemaUniqueOptions.js +3 -3
- package/browser/entity-schema/EntitySchemaUniqueOptions.js.map +1 -1
- package/browser/error/AlreadyHasActiveConnectionError.js +7 -4
- package/browser/error/AlreadyHasActiveConnectionError.js.map +1 -1
- package/browser/error/CannotAttachTreeChildrenEntityError.js +7 -4
- package/browser/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
- package/browser/error/CannotConnectAlreadyConnectedError.d.ts +1 -1
- package/browser/error/CannotConnectAlreadyConnectedError.js +9 -6
- package/browser/error/CannotConnectAlreadyConnectedError.js.map +1 -1
- package/browser/error/CannotCreateEntityIdMapError.d.ts +1 -1
- package/browser/error/CannotCreateEntityIdMapError.js +7 -4
- package/browser/error/CannotCreateEntityIdMapError.js.map +1 -1
- package/browser/error/CannotDetermineEntityError.js +7 -4
- package/browser/error/CannotDetermineEntityError.js.map +1 -1
- package/browser/error/CannotExecuteNotConnectedError.d.ts +1 -1
- package/browser/error/CannotExecuteNotConnectedError.js +9 -6
- package/browser/error/CannotExecuteNotConnectedError.js.map +1 -1
- package/browser/error/CannotGetEntityManagerNotConnectedError.js +7 -4
- package/browser/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
- package/browser/error/CannotReflectMethodParameterTypeError.js +7 -4
- package/browser/error/CannotReflectMethodParameterTypeError.js.map +1 -1
- package/browser/error/CircularRelationsError.js +7 -4
- package/browser/error/CircularRelationsError.js.map +1 -1
- package/browser/error/ColumnTypeUndefinedError.js +7 -4
- package/browser/error/ColumnTypeUndefinedError.js.map +1 -1
- package/browser/error/ConnectionIsNotSetError.js +7 -4
- package/browser/error/ConnectionIsNotSetError.js.map +1 -1
- package/browser/error/ConnectionNotFoundError.js +7 -4
- package/browser/error/ConnectionNotFoundError.js.map +1 -1
- package/browser/error/DataTypeNotSupportedError.d.ts +3 -3
- package/browser/error/DataTypeNotSupportedError.js +7 -4
- package/browser/error/DataTypeNotSupportedError.js.map +1 -1
- package/browser/error/DriverOptionNotSetError.js +7 -4
- package/browser/error/DriverOptionNotSetError.js.map +1 -1
- package/browser/error/DriverPackageNotInstalledError.js +7 -4
- package/browser/error/DriverPackageNotInstalledError.js.map +1 -1
- package/browser/error/EntityMetadataNotFoundError.d.ts +1 -1
- package/browser/error/EntityMetadataNotFoundError.js +11 -8
- package/browser/error/EntityMetadataNotFoundError.js.map +1 -1
- package/browser/error/EntityNotFoundError.d.ts +1 -1
- package/browser/error/EntityNotFoundError.js +11 -8
- package/browser/error/EntityNotFoundError.js.map +1 -1
- package/browser/error/EntityPropertyNotFoundError.d.ts +1 -1
- package/browser/error/EntityPropertyNotFoundError.js +7 -4
- package/browser/error/EntityPropertyNotFoundError.js.map +1 -1
- package/browser/error/FindRelationsNotFoundError.js +7 -4
- package/browser/error/FindRelationsNotFoundError.js.map +1 -1
- package/browser/error/ForbiddenTransactionModeOverrideError.d.ts +1 -1
- package/browser/error/ForbiddenTransactionModeOverrideError.js +7 -4
- package/browser/error/ForbiddenTransactionModeOverrideError.js.map +1 -1
- package/browser/error/InitializedRelationError.d.ts +1 -2
- package/browser/error/InitializedRelationError.js +7 -5
- package/browser/error/InitializedRelationError.js.map +1 -1
- package/browser/error/InsertValuesMissingError.js +7 -4
- package/browser/error/InsertValuesMissingError.js.map +1 -1
- package/browser/error/LimitOnUpdateNotSupportedError.js +7 -4
- package/browser/error/LimitOnUpdateNotSupportedError.js.map +1 -1
- package/browser/error/LockNotSupportedOnGivenDriverError.js +7 -4
- package/browser/error/LockNotSupportedOnGivenDriverError.js.map +1 -1
- package/browser/error/MetadataAlreadyExistsError.js +7 -4
- package/browser/error/MetadataAlreadyExistsError.js.map +1 -1
- package/browser/error/MetadataWithSuchNameAlreadyExistsError.js +7 -4
- package/browser/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -1
- package/browser/error/MissingDeleteDateColumnError.d.ts +1 -1
- package/browser/error/MissingDeleteDateColumnError.js +7 -4
- package/browser/error/MissingDeleteDateColumnError.js.map +1 -1
- package/browser/error/MissingDriverError.js +7 -4
- package/browser/error/MissingDriverError.js.map +1 -1
- package/browser/error/MissingJoinColumnError.d.ts +2 -2
- package/browser/error/MissingJoinColumnError.js +7 -4
- package/browser/error/MissingJoinColumnError.js.map +1 -1
- package/browser/error/MissingJoinTableError.d.ts +2 -2
- package/browser/error/MissingJoinTableError.js +7 -4
- package/browser/error/MissingJoinTableError.js.map +1 -1
- package/browser/error/MissingPrimaryColumnError.d.ts +1 -1
- package/browser/error/MissingPrimaryColumnError.js +7 -4
- package/browser/error/MissingPrimaryColumnError.js.map +1 -1
- package/browser/error/MustBeEntityError.js +7 -4
- package/browser/error/MustBeEntityError.js.map +1 -1
- package/browser/error/NestedSetMultipleRootError.js +7 -4
- package/browser/error/NestedSetMultipleRootError.js.map +1 -1
- package/browser/error/NoConnectionForRepositoryError.d.ts +1 -1
- package/browser/error/NoConnectionForRepositoryError.js +10 -7
- package/browser/error/NoConnectionForRepositoryError.js.map +1 -1
- package/browser/error/NoConnectionOptionError.js +7 -4
- package/browser/error/NoConnectionOptionError.js.map +1 -1
- package/browser/error/NoNeedToReleaseEntityManagerError.js +7 -4
- package/browser/error/NoNeedToReleaseEntityManagerError.js.map +1 -1
- package/browser/error/NoVersionOrUpdateDateColumnError.js +7 -4
- package/browser/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
- package/browser/error/OffsetWithoutLimitNotSupportedError.js +7 -4
- package/browser/error/OffsetWithoutLimitNotSupportedError.js.map +1 -1
- package/browser/error/OptimisticLockCanNotBeUsedError.js +7 -4
- package/browser/error/OptimisticLockCanNotBeUsedError.js.map +1 -1
- package/browser/error/OptimisticLockVersionMismatchError.js +7 -4
- package/browser/error/OptimisticLockVersionMismatchError.js.map +1 -1
- package/browser/error/PersistedEntityNotFoundError.js +7 -4
- package/browser/error/PersistedEntityNotFoundError.js.map +1 -1
- package/browser/error/PessimisticLockTransactionRequiredError.js +7 -4
- package/browser/error/PessimisticLockTransactionRequiredError.js.map +1 -1
- package/browser/error/PrimaryColumnCannotBeNullableError.js +7 -4
- package/browser/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
- package/browser/error/QueryFailedError.js +9 -6
- package/browser/error/QueryFailedError.js.map +1 -1
- package/browser/error/QueryRunnerAlreadyReleasedError.js +7 -4
- package/browser/error/QueryRunnerAlreadyReleasedError.js.map +1 -1
- package/browser/error/QueryRunnerProviderAlreadyReleasedError.js +7 -4
- package/browser/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -1
- package/browser/error/RepositoryNotTreeError.d.ts +1 -1
- package/browser/error/RepositoryNotTreeError.js +11 -8
- package/browser/error/RepositoryNotTreeError.js.map +1 -1
- package/browser/error/ReturningStatementNotSupportedError.js +7 -4
- package/browser/error/ReturningStatementNotSupportedError.js.map +1 -1
- package/browser/error/SubjectRemovedAndUpdatedError.d.ts +1 -1
- package/browser/error/SubjectRemovedAndUpdatedError.js +7 -4
- package/browser/error/SubjectRemovedAndUpdatedError.js.map +1 -1
- package/browser/error/SubjectWithoutIdentifierError.d.ts +1 -1
- package/browser/error/SubjectWithoutIdentifierError.js +7 -4
- package/browser/error/SubjectWithoutIdentifierError.js.map +1 -1
- package/browser/error/TransactionAlreadyStartedError.js +7 -4
- package/browser/error/TransactionAlreadyStartedError.js.map +1 -1
- package/browser/error/TransactionNotStartedError.js +7 -4
- package/browser/error/TransactionNotStartedError.js.map +1 -1
- package/browser/error/TreeRepositoryNotSupportedError.d.ts +1 -1
- package/browser/error/TreeRepositoryNotSupportedError.js +7 -4
- package/browser/error/TreeRepositoryNotSupportedError.js.map +1 -1
- package/browser/error/TypeORMError.js +6 -3
- package/browser/error/TypeORMError.js.map +1 -1
- package/browser/error/UpdateValuesMissingError.js +7 -4
- package/browser/error/UpdateValuesMissingError.js.map +1 -1
- package/browser/error/UsingJoinColumnIsNotAllowedError.d.ts +2 -2
- package/browser/error/UsingJoinColumnIsNotAllowedError.js +7 -4
- package/browser/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
- package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.d.ts +2 -2
- package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +7 -4
- package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
- package/browser/error/UsingJoinTableIsNotAllowedError.d.ts +2 -2
- package/browser/error/UsingJoinTableIsNotAllowedError.js +7 -4
- package/browser/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
- package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.d.ts +2 -2
- package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js +7 -4
- package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
- package/browser/error/index.d.ts +0 -3
- package/browser/error/index.js +62 -63
- package/browser/error/index.js.map +1 -1
- package/browser/find-options/EqualOperator.js +7 -4
- package/browser/find-options/EqualOperator.js.map +1 -1
- package/browser/find-options/FindManyOptions.d.ts +1 -1
- package/browser/find-options/FindManyOptions.js +3 -3
- package/browser/find-options/FindManyOptions.js.map +1 -1
- package/browser/find-options/FindOneOptions.d.ts +7 -14
- package/browser/find-options/FindOneOptions.js +3 -3
- package/browser/find-options/FindOneOptions.js.map +1 -1
- package/browser/find-options/FindOperator.d.ts +3 -3
- package/browser/find-options/FindOperator.js +16 -13
- package/browser/find-options/FindOperator.js.map +1 -1
- package/browser/find-options/FindOperatorType.js +3 -3
- package/browser/find-options/FindOperatorType.js.map +1 -1
- package/browser/find-options/FindOptionsOrder.d.ts +2 -2
- package/browser/find-options/FindOptionsOrder.js +3 -3
- package/browser/find-options/FindOptionsOrder.js.map +1 -1
- package/browser/find-options/FindOptionsRelations.d.ts +2 -9
- package/browser/find-options/FindOptionsRelations.js +3 -3
- package/browser/find-options/FindOptionsRelations.js.map +1 -1
- package/browser/find-options/FindOptionsSelect.d.ts +2 -9
- package/browser/find-options/FindOptionsSelect.js +3 -3
- package/browser/find-options/FindOptionsSelect.js.map +1 -1
- package/browser/find-options/FindOptionsUtils.d.ts +46 -11
- package/browser/find-options/FindOptionsUtils.js +114 -28
- package/browser/find-options/FindOptionsUtils.js.map +1 -1
- package/browser/find-options/FindOptionsWhere.d.ts +4 -4
- package/browser/find-options/FindOptionsWhere.js +3 -3
- package/browser/find-options/FindOptionsWhere.js.map +1 -1
- package/browser/find-options/FindTreeOptions.js +3 -3
- package/browser/find-options/FindTreeOptions.js.map +1 -1
- package/browser/find-options/OrderByCondition.d.ts +0 -2
- package/browser/find-options/OrderByCondition.js +3 -3
- package/browser/find-options/OrderByCondition.js.map +1 -1
- package/browser/find-options/mongodb/MongoFindManyOptions.d.ts +1 -1
- package/browser/find-options/mongodb/MongoFindManyOptions.js +3 -3
- package/browser/find-options/mongodb/MongoFindManyOptions.js.map +1 -1
- package/browser/find-options/mongodb/MongoFindOneOptions.d.ts +2 -2
- package/browser/find-options/mongodb/MongoFindOneOptions.js +3 -3
- package/browser/find-options/mongodb/MongoFindOneOptions.js.map +1 -1
- package/browser/find-options/operator/And.d.ts +4 -0
- package/browser/find-options/operator/And.js +11 -5
- package/browser/find-options/operator/And.js.map +1 -1
- package/browser/find-options/operator/Any.d.ts +1 -0
- package/browser/find-options/operator/Any.js +8 -5
- package/browser/find-options/operator/Any.js.map +1 -1
- package/browser/find-options/operator/ArrayContainedBy.d.ts +1 -0
- package/browser/find-options/operator/ArrayContainedBy.js +8 -5
- package/browser/find-options/operator/ArrayContainedBy.js.map +1 -1
- package/browser/find-options/operator/ArrayContains.d.ts +1 -0
- package/browser/find-options/operator/ArrayContains.js +8 -5
- package/browser/find-options/operator/ArrayContains.js.map +1 -1
- package/browser/find-options/operator/ArrayOverlap.d.ts +1 -0
- package/browser/find-options/operator/ArrayOverlap.js +8 -5
- package/browser/find-options/operator/ArrayOverlap.js.map +1 -1
- package/browser/find-options/operator/Between.d.ts +2 -0
- package/browser/find-options/operator/Between.js +9 -5
- package/browser/find-options/operator/Between.js.map +1 -1
- package/browser/find-options/operator/Equal.d.ts +2 -1
- package/browser/find-options/operator/Equal.js +8 -5
- package/browser/find-options/operator/Equal.js.map +1 -1
- package/browser/find-options/operator/ILike.d.ts +1 -0
- package/browser/find-options/operator/ILike.js +8 -5
- package/browser/find-options/operator/ILike.js.map +1 -1
- package/browser/find-options/operator/In.d.ts +1 -0
- package/browser/find-options/operator/In.js +8 -5
- package/browser/find-options/operator/In.js.map +1 -1
- package/browser/find-options/operator/IsNull.js +7 -5
- package/browser/find-options/operator/IsNull.js.map +1 -1
- package/browser/find-options/operator/JsonContains.d.ts +1 -0
- package/browser/find-options/operator/JsonContains.js +8 -5
- package/browser/find-options/operator/JsonContains.js.map +1 -1
- package/browser/find-options/operator/LessThan.d.ts +1 -0
- package/browser/find-options/operator/LessThan.js +8 -5
- package/browser/find-options/operator/LessThan.js.map +1 -1
- package/browser/find-options/operator/LessThanOrEqual.d.ts +1 -0
- package/browser/find-options/operator/LessThanOrEqual.js +8 -5
- package/browser/find-options/operator/LessThanOrEqual.js.map +1 -1
- package/browser/find-options/operator/Like.d.ts +1 -0
- package/browser/find-options/operator/Like.js +8 -5
- package/browser/find-options/operator/Like.js.map +1 -1
- package/browser/find-options/operator/MoreThan.d.ts +1 -0
- package/browser/find-options/operator/MoreThan.js +8 -5
- package/browser/find-options/operator/MoreThan.js.map +1 -1
- package/browser/find-options/operator/MoreThanOrEqual.d.ts +1 -0
- package/browser/find-options/operator/MoreThanOrEqual.js +8 -5
- package/browser/find-options/operator/MoreThanOrEqual.js.map +1 -1
- package/browser/find-options/operator/Not.d.ts +1 -0
- package/browser/find-options/operator/Not.js +8 -5
- package/browser/find-options/operator/Not.js.map +1 -1
- package/browser/find-options/operator/Or.d.ts +4 -0
- package/browser/find-options/operator/Or.js +11 -5
- package/browser/find-options/operator/Or.js.map +1 -1
- package/browser/find-options/operator/Raw.d.ts +5 -1
- package/browser/find-options/operator/Raw.js +8 -6
- package/browser/find-options/operator/Raw.js.map +1 -1
- package/browser/globals.d.ts +2 -114
- package/browser/globals.js +17 -163
- package/browser/globals.js.map +1 -1
- package/browser/index.d.ts +62 -69
- package/browser/index.js +141 -161
- package/browser/index.js.map +1 -1
- package/browser/logger/AbstractLogger.d.ts +26 -3
- package/browser/logger/AbstractLogger.js +32 -6
- package/browser/logger/AbstractLogger.js.map +1 -1
- package/browser/logger/AdvancedConsoleLogger.d.ts +5 -2
- package/browser/logger/AdvancedConsoleLogger.js +18 -12
- package/browser/logger/AdvancedConsoleLogger.js.map +1 -1
- package/browser/logger/DebugLogger.d.ts +6 -2
- package/browser/logger/DebugLogger.js +21 -14
- package/browser/logger/DebugLogger.js.map +1 -1
- package/browser/logger/FileLogger.d.ts +7 -3
- package/browser/logger/FileLogger.js +17 -9
- package/browser/logger/FileLogger.js.map +1 -1
- package/browser/logger/FormattedConsoleLogger.d.ts +5 -2
- package/browser/logger/FormattedConsoleLogger.js +18 -12
- package/browser/logger/FormattedConsoleLogger.js.map +1 -1
- package/browser/logger/Logger.d.ts +1 -1
- package/browser/logger/Logger.js +3 -3
- package/browser/logger/Logger.js.map +1 -1
- package/browser/logger/LoggerFactory.d.ts +4 -2
- package/browser/logger/LoggerFactory.js +21 -16
- package/browser/logger/LoggerFactory.js.map +1 -1
- package/browser/logger/LoggerOptions.d.ts +1 -1
- package/browser/logger/LoggerOptions.js +3 -3
- package/browser/logger/LoggerOptions.js.map +1 -1
- package/browser/logger/SimpleConsoleLogger.d.ts +5 -2
- package/browser/logger/SimpleConsoleLogger.js +10 -4
- package/browser/logger/SimpleConsoleLogger.js.map +1 -1
- package/browser/metadata/CheckMetadata.d.ts +4 -3
- package/browser/metadata/CheckMetadata.js +7 -3
- package/browser/metadata/CheckMetadata.js.map +1 -1
- package/browser/metadata/ColumnMetadata.d.ts +24 -23
- package/browser/metadata/ColumnMetadata.js +85 -74
- package/browser/metadata/ColumnMetadata.js.map +1 -1
- package/browser/metadata/EmbeddedMetadata.d.ts +14 -22
- package/browser/metadata/EmbeddedMetadata.js +11 -18
- package/browser/metadata/EmbeddedMetadata.js.map +1 -1
- package/browser/metadata/EntityListenerMetadata.d.ts +9 -5
- package/browser/metadata/EntityListenerMetadata.js +10 -3
- package/browser/metadata/EntityListenerMetadata.js.map +1 -1
- package/browser/metadata/EntityMetadata.d.ts +60 -35
- package/browser/metadata/EntityMetadata.js +71 -57
- package/browser/metadata/EntityMetadata.js.map +1 -1
- package/browser/metadata/ExclusionMetadata.d.ts +9 -3
- package/browser/metadata/ExclusionMetadata.js +8 -3
- package/browser/metadata/ExclusionMetadata.js.map +1 -1
- package/browser/metadata/ForeignKeyMetadata.d.ts +7 -6
- package/browser/metadata/ForeignKeyMetadata.js +7 -3
- package/browser/metadata/ForeignKeyMetadata.js.map +1 -1
- package/browser/metadata/IndexMetadata.d.ts +13 -5
- package/browser/metadata/IndexMetadata.js +27 -10
- package/browser/metadata/IndexMetadata.js.map +1 -1
- package/browser/metadata/RelationIdMetadata.d.ts +6 -5
- package/browser/metadata/RelationIdMetadata.js +9 -5
- package/browser/metadata/RelationIdMetadata.js.map +1 -1
- package/browser/metadata/RelationMetadata.d.ts +27 -16
- package/browser/metadata/RelationMetadata.js +29 -15
- package/browser/metadata/RelationMetadata.js.map +1 -1
- package/browser/metadata/UniqueMetadata.d.ts +7 -6
- package/browser/metadata/UniqueMetadata.js +19 -9
- package/browser/metadata/UniqueMetadata.js.map +1 -1
- package/browser/metadata/types/ClosureTreeOptions.d.ts +1 -1
- package/browser/metadata/types/ClosureTreeOptions.js +3 -3
- package/browser/metadata/types/ClosureTreeOptions.js.map +1 -1
- package/browser/metadata/types/DeferrableType.js +3 -3
- package/browser/metadata/types/DeferrableType.js.map +1 -1
- package/browser/metadata/types/EventListenerTypes.js +17 -14
- package/browser/metadata/types/EventListenerTypes.js.map +1 -1
- package/browser/metadata/types/OnDeleteType.js +3 -3
- package/browser/metadata/types/OnDeleteType.js.map +1 -1
- package/browser/metadata/types/OnUpdateType.js +3 -3
- package/browser/metadata/types/OnUpdateType.js.map +1 -1
- package/browser/metadata/types/PropertyTypeInFunction.js +3 -3
- package/browser/metadata/types/PropertyTypeInFunction.js.map +1 -1
- package/browser/metadata/types/RelationTypeInFunction.d.ts +1 -1
- package/browser/metadata/types/RelationTypeInFunction.js +3 -3
- package/browser/metadata/types/RelationTypeInFunction.js.map +1 -1
- package/browser/metadata/types/RelationTypes.js +3 -3
- package/browser/metadata/types/RelationTypes.js.map +1 -1
- package/browser/metadata/types/TableTypes.js +3 -3
- package/browser/metadata/types/TableTypes.js.map +1 -1
- package/browser/metadata/types/TreeTypes.js +3 -3
- package/browser/metadata/types/TreeTypes.js.map +1 -1
- package/browser/metadata-args/CheckMetadataArgs.js +3 -3
- package/browser/metadata-args/CheckMetadataArgs.js.map +1 -1
- package/browser/metadata-args/ColumnMetadataArgs.d.ts +2 -2
- package/browser/metadata-args/ColumnMetadataArgs.js +3 -3
- package/browser/metadata-args/ColumnMetadataArgs.js.map +1 -1
- package/browser/metadata-args/DiscriminatorValueMetadataArgs.js +3 -3
- package/browser/metadata-args/DiscriminatorValueMetadataArgs.js.map +1 -1
- package/browser/metadata-args/EmbeddedMetadataArgs.js +3 -3
- package/browser/metadata-args/EmbeddedMetadataArgs.js.map +1 -1
- package/browser/metadata-args/EntityListenerMetadataArgs.d.ts +1 -1
- package/browser/metadata-args/EntityListenerMetadataArgs.js +3 -3
- package/browser/metadata-args/EntityListenerMetadataArgs.js.map +1 -1
- package/browser/metadata-args/EntitySubscriberMetadataArgs.js +3 -3
- package/browser/metadata-args/EntitySubscriberMetadataArgs.js.map +1 -1
- package/browser/metadata-args/ExclusionMetadataArgs.d.ts +5 -0
- package/browser/metadata-args/ExclusionMetadataArgs.js +3 -3
- package/browser/metadata-args/ExclusionMetadataArgs.js.map +1 -1
- package/browser/metadata-args/ForeignKeyMetadataArgs.d.ts +5 -5
- package/browser/metadata-args/ForeignKeyMetadataArgs.js +3 -3
- package/browser/metadata-args/ForeignKeyMetadataArgs.js.map +1 -1
- package/browser/metadata-args/GeneratedMetadataArgs.js +3 -3
- package/browser/metadata-args/GeneratedMetadataArgs.js.map +1 -1
- package/browser/metadata-args/IndexMetadataArgs.d.ts +7 -0
- package/browser/metadata-args/IndexMetadataArgs.js +3 -3
- package/browser/metadata-args/IndexMetadataArgs.js.map +1 -1
- package/browser/metadata-args/InheritanceMetadataArgs.d.ts +1 -1
- package/browser/metadata-args/InheritanceMetadataArgs.js +3 -3
- package/browser/metadata-args/InheritanceMetadataArgs.js.map +1 -1
- package/browser/metadata-args/JoinColumnMetadataArgs.js +3 -3
- package/browser/metadata-args/JoinColumnMetadataArgs.js.map +1 -1
- package/browser/metadata-args/JoinTableMetadataArgs.d.ts +1 -1
- package/browser/metadata-args/JoinTableMetadataArgs.js +3 -3
- package/browser/metadata-args/JoinTableMetadataArgs.js.map +1 -1
- package/browser/metadata-args/MetadataArgsStorage.d.ts +29 -27
- package/browser/metadata-args/MetadataArgsStorage.js +16 -10
- package/browser/metadata-args/MetadataArgsStorage.js.map +1 -1
- package/browser/metadata-args/NamingStrategyMetadataArgs.js +3 -3
- package/browser/metadata-args/NamingStrategyMetadataArgs.js.map +1 -1
- package/browser/metadata-args/RelationIdMetadataArgs.d.ts +1 -1
- package/browser/metadata-args/RelationIdMetadataArgs.js +3 -3
- package/browser/metadata-args/RelationIdMetadataArgs.js.map +1 -1
- package/browser/metadata-args/RelationMetadataArgs.d.ts +4 -4
- package/browser/metadata-args/RelationMetadataArgs.js +3 -3
- package/browser/metadata-args/RelationMetadataArgs.js.map +1 -1
- package/browser/metadata-args/TableMetadataArgs.d.ts +5 -4
- package/browser/metadata-args/TableMetadataArgs.js +3 -3
- package/browser/metadata-args/TableMetadataArgs.js.map +1 -1
- package/browser/metadata-args/TransactionEntityMetadataArgs.d.ts +1 -1
- package/browser/metadata-args/TransactionEntityMetadataArgs.js +3 -3
- package/browser/metadata-args/TransactionEntityMetadataArgs.js.map +1 -1
- package/browser/metadata-args/TransactionRepositoryMetadataArgs.d.ts +1 -1
- package/browser/metadata-args/TransactionRepositoryMetadataArgs.js +3 -3
- package/browser/metadata-args/TransactionRepositoryMetadataArgs.js.map +1 -1
- package/browser/metadata-args/TreeMetadataArgs.d.ts +2 -2
- package/browser/metadata-args/TreeMetadataArgs.js +3 -3
- package/browser/metadata-args/TreeMetadataArgs.js.map +1 -1
- package/browser/metadata-args/UniqueMetadataArgs.d.ts +1 -1
- package/browser/metadata-args/UniqueMetadataArgs.js +3 -3
- package/browser/metadata-args/UniqueMetadataArgs.js.map +1 -1
- package/browser/metadata-args/types/ColumnMode.js +3 -3
- package/browser/metadata-args/types/ColumnMode.js.map +1 -1
- package/browser/metadata-builder/ClosureJunctionEntityMetadataBuilder.d.ts +4 -3
- package/browser/metadata-builder/ClosureJunctionEntityMetadataBuilder.js +27 -28
- package/browser/metadata-builder/ClosureJunctionEntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.d.ts +16 -6
- package/browser/metadata-builder/EntityMetadataBuilder.js +119 -126
- package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataValidator.d.ts +9 -2
- package/browser/metadata-builder/EntityMetadataValidator.js +42 -37
- package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.d.ts +11 -5
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +53 -52
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/MetadataUtils.d.ts +5 -0
- package/browser/metadata-builder/MetadataUtils.js +11 -3
- package/browser/metadata-builder/MetadataUtils.js.map +1 -1
- package/browser/metadata-builder/RelationJoinColumnBuilder.d.ts +24 -12
- package/browser/metadata-builder/RelationJoinColumnBuilder.js +46 -34
- package/browser/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/browser/migration/Migration.d.ts +1 -1
- package/browser/migration/Migration.js +6 -3
- package/browser/migration/Migration.js.map +1 -1
- package/browser/migration/MigrationExecutor.d.ts +16 -9
- package/browser/migration/MigrationExecutor.js +95 -79
- package/browser/migration/MigrationExecutor.js.map +1 -1
- package/browser/migration/MigrationInterface.d.ts +1 -1
- package/browser/migration/MigrationInterface.js +3 -3
- package/browser/migration/MigrationInterface.js.map +1 -1
- package/browser/naming-strategy/DefaultNamingStrategy.d.ts +5 -5
- package/browser/naming-strategy/DefaultNamingStrategy.js +24 -21
- package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/browser/naming-strategy/LegacyOracleNamingStrategy.d.ts +1 -1
- package/browser/naming-strategy/LegacyOracleNamingStrategy.js +12 -9
- package/browser/naming-strategy/LegacyOracleNamingStrategy.js.map +1 -1
- package/browser/naming-strategy/NamingStrategyInterface.d.ts +3 -5
- package/browser/naming-strategy/NamingStrategyInterface.js +3 -3
- package/browser/naming-strategy/NamingStrategyInterface.js.map +1 -1
- package/browser/persistence/EntityPersistExecutor.d.ts +7 -7
- package/browser/persistence/EntityPersistExecutor.js +32 -29
- package/browser/persistence/EntityPersistExecutor.js.map +1 -1
- package/browser/persistence/Subject.d.ts +5 -5
- package/browser/persistence/Subject.js +13 -9
- package/browser/persistence/Subject.js.map +1 -1
- package/browser/persistence/SubjectChangeMap.d.ts +3 -3
- package/browser/persistence/SubjectChangeMap.js +3 -3
- package/browser/persistence/SubjectChangeMap.js.map +1 -1
- package/browser/persistence/SubjectChangedColumnsComputer.d.ts +5 -1
- package/browser/persistence/SubjectChangedColumnsComputer.js +48 -36
- package/browser/persistence/SubjectChangedColumnsComputer.js.map +1 -1
- package/browser/persistence/SubjectDatabaseEntityLoader.d.ts +3 -2
- package/browser/persistence/SubjectDatabaseEntityLoader.js +15 -8
- package/browser/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
- package/browser/persistence/SubjectExecutor.d.ts +7 -4
- package/browser/persistence/SubjectExecutor.js +63 -49
- package/browser/persistence/SubjectExecutor.js.map +1 -1
- package/browser/persistence/SubjectTopologicalSorter.d.ts +6 -2
- package/browser/persistence/SubjectTopologicalSorter.js +23 -6
- package/browser/persistence/SubjectTopologicalSorter.js.map +1 -1
- package/browser/persistence/subject-builder/CascadesSubjectBuilder.d.ts +5 -1
- package/browser/persistence/subject-builder/CascadesSubjectBuilder.js +14 -7
- package/browser/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.d.ts +16 -6
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js +29 -16
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
- package/browser/persistence/subject-builder/OneToManySubjectBuilder.d.ts +14 -7
- package/browser/persistence/subject-builder/OneToManySubjectBuilder.js +26 -16
- package/browser/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
- package/browser/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.d.ts +14 -7
- package/browser/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +24 -14
- package/browser/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
- package/browser/persistence/tree/ClosureSubjectExecutor.d.ts +6 -2
- package/browser/persistence/tree/ClosureSubjectExecutor.js +24 -17
- package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.d.ts +4 -2
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.js +17 -11
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/browser/persistence/tree/NestedSetSubjectExecutor.d.ts +10 -4
- package/browser/persistence/tree/NestedSetSubjectExecutor.js +25 -16
- package/browser/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
- package/browser/platform/BrowserConnectionOptionsReaderDummy.d.ts +0 -11
- package/browser/platform/BrowserConnectionOptionsReaderDummy.js +10 -22
- package/browser/platform/BrowserConnectionOptionsReaderDummy.js.map +1 -1
- package/browser/platform/BrowserDirectoryExportedClassesLoader.d.ts +0 -4
- package/browser/platform/BrowserDirectoryExportedClassesLoader.js +5 -9
- package/browser/platform/BrowserDirectoryExportedClassesLoader.js.map +1 -1
- package/browser/platform/BrowserDisabledDriversDummy.d.ts +0 -6
- package/browser/platform/BrowserDisabledDriversDummy.js +30 -21
- package/browser/platform/BrowserDisabledDriversDummy.js.map +1 -1
- package/browser/platform/BrowserFileLoggerDummy.js +8 -4
- package/browser/platform/BrowserFileLoggerDummy.js.map +1 -1
- package/browser/platform/BrowserPlatformTools.d.ts +7 -5
- package/browser/platform/BrowserPlatformTools.js +16 -33
- package/browser/platform/BrowserPlatformTools.js.map +1 -1
- package/browser/platform/PlatformTools.d.ts +12 -11
- package/browser/platform/PlatformTools.js +62 -65
- package/browser/platform/PlatformTools.js.map +1 -1
- package/browser/query-builder/Alias.d.ts +1 -1
- package/browser/query-builder/Alias.js +10 -7
- package/browser/query-builder/Alias.js.map +1 -1
- package/browser/query-builder/Brackets.d.ts +2 -1
- package/browser/query-builder/Brackets.js +7 -3
- package/browser/query-builder/Brackets.js.map +1 -1
- package/browser/query-builder/DeleteQueryBuilder.d.ts +17 -6
- package/browser/query-builder/DeleteQueryBuilder.js +29 -13
- package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/InsertOrUpdateOptions.d.ts +3 -3
- package/browser/query-builder/InsertOrUpdateOptions.js +3 -3
- package/browser/query-builder/InsertOrUpdateOptions.js.map +1 -1
- package/browser/query-builder/InsertQueryBuilder.d.ts +34 -29
- package/browser/query-builder/InsertQueryBuilder.js +320 -187
- package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
- package/browser/query-builder/JoinAttribute.d.ts +7 -7
- package/browser/query-builder/JoinAttribute.js +25 -33
- package/browser/query-builder/JoinAttribute.js.map +1 -1
- package/browser/query-builder/JoinOptions.js +3 -3
- package/browser/query-builder/JoinOptions.js.map +1 -1
- package/browser/query-builder/NotBrackets.js +7 -4
- package/browser/query-builder/NotBrackets.js.map +1 -1
- package/browser/query-builder/QueryBuilder.d.ts +51 -33
- package/browser/query-builder/QueryBuilder.js +120 -127
- package/browser/query-builder/QueryBuilder.js.map +1 -1
- package/browser/query-builder/QueryBuilderCte.js +3 -3
- package/browser/query-builder/QueryBuilderCte.js.map +1 -1
- package/browser/query-builder/QueryBuilderUtils.d.ts +1 -0
- package/browser/query-builder/QueryBuilderUtils.js +7 -3
- package/browser/query-builder/QueryBuilderUtils.js.map +1 -1
- package/browser/query-builder/QueryExpressionMap.d.ts +29 -30
- package/browser/query-builder/QueryExpressionMap.js +36 -39
- package/browser/query-builder/QueryExpressionMap.js.map +1 -1
- package/browser/query-builder/QueryPartialEntity.d.ts +1 -1
- package/browser/query-builder/QueryPartialEntity.js +3 -3
- package/browser/query-builder/QueryPartialEntity.js.map +1 -1
- package/browser/query-builder/RelationIdLoader.d.ts +39 -11
- package/browser/query-builder/RelationIdLoader.js +106 -65
- package/browser/query-builder/RelationIdLoader.js.map +1 -1
- package/browser/query-builder/RelationLoader.d.ts +49 -14
- package/browser/query-builder/RelationLoader.js +86 -28
- package/browser/query-builder/RelationLoader.js.map +1 -1
- package/browser/query-builder/RelationQueryBuilder.d.ts +7 -11
- package/browser/query-builder/RelationQueryBuilder.js +33 -34
- package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
- package/browser/query-builder/RelationRemover.d.ts +3 -2
- package/browser/query-builder/RelationRemover.js +12 -8
- package/browser/query-builder/RelationRemover.js.map +1 -1
- package/browser/query-builder/RelationUpdater.d.ts +3 -2
- package/browser/query-builder/RelationUpdater.js +17 -13
- package/browser/query-builder/RelationUpdater.js.map +1 -1
- package/browser/query-builder/ReturningOption.d.ts +4 -0
- package/browser/query-builder/ReturningOption.js +3 -0
- package/browser/query-builder/ReturningOption.js.map +1 -0
- package/browser/query-builder/ReturningResultsEntityUpdator.d.ts +10 -6
- package/browser/query-builder/ReturningResultsEntityUpdator.js +21 -14
- package/browser/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
- package/browser/query-builder/SelectQuery.js +3 -3
- package/browser/query-builder/SelectQuery.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilder.d.ts +71 -33
- package/browser/query-builder/SelectQueryBuilder.js +418 -338
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilderOption.js +3 -3
- package/browser/query-builder/SelectQueryBuilderOption.js.map +1 -1
- package/browser/query-builder/SoftDeleteQueryBuilder.d.ts +24 -7
- package/browser/query-builder/SoftDeleteQueryBuilder.js +61 -31
- package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/UpdateQueryBuilder.d.ts +23 -7
- package/browser/query-builder/UpdateQueryBuilder.js +75 -49
- package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/browser/query-builder/WhereClause.js +3 -3
- package/browser/query-builder/WhereClause.js.map +1 -1
- package/browser/query-builder/WhereExpressionBuilder.d.ts +2 -7
- package/browser/query-builder/WhereExpressionBuilder.js +3 -3
- package/browser/query-builder/WhereExpressionBuilder.js.map +1 -1
- package/browser/query-builder/index.d.ts +3 -0
- package/browser/query-builder/index.js +21 -16
- package/browser/query-builder/index.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdAttribute.d.ts +4 -4
- package/browser/query-builder/relation-id/RelationIdAttribute.js +17 -14
- package/browser/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdLoadResult.d.ts +1 -1
- package/browser/query-builder/relation-id/RelationIdLoadResult.js +3 -3
- package/browser/query-builder/relation-id/RelationIdLoadResult.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdLoader.d.ts +6 -6
- package/browser/query-builder/relation-id/RelationIdLoader.js +22 -19
- package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.d.ts +1 -1
- package/browser/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +8 -5
- package/browser/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js.map +1 -1
- package/browser/query-builder/result/DeleteResult.d.ts +1 -1
- package/browser/query-builder/result/DeleteResult.js +6 -3
- package/browser/query-builder/result/DeleteResult.js.map +1 -1
- package/browser/query-builder/result/InsertResult.d.ts +2 -2
- package/browser/query-builder/result/InsertResult.js +6 -3
- package/browser/query-builder/result/InsertResult.js.map +1 -1
- package/browser/query-builder/result/UpdateResult.d.ts +2 -2
- package/browser/query-builder/result/UpdateResult.js +6 -3
- package/browser/query-builder/result/UpdateResult.js.map +1 -1
- package/browser/query-builder/transformer/DocumentToEntityTransformer.d.ts +3 -3
- package/browser/query-builder/transformer/DocumentToEntityTransformer.js +7 -74
- package/browser/query-builder/transformer/DocumentToEntityTransformer.js.map +1 -1
- package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.d.ts +3 -3
- package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +22 -8
- package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
- package/browser/query-builder/transformer/PlainObjectToNewEntityTransformer.d.ts +6 -2
- package/browser/query-builder/transformer/PlainObjectToNewEntityTransformer.js +13 -6
- package/browser/query-builder/transformer/PlainObjectToNewEntityTransformer.js.map +1 -1
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +22 -11
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +57 -59
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/browser/query-runner/BaseQueryRunner.d.ts +79 -16
- package/browser/query-runner/BaseQueryRunner.js +120 -54
- package/browser/query-runner/BaseQueryRunner.js.map +1 -1
- package/browser/query-runner/QueryLock.js +9 -4
- package/browser/query-runner/QueryLock.js.map +1 -1
- package/browser/query-runner/QueryResult.js +6 -3
- package/browser/query-runner/QueryResult.js.map +1 -1
- package/browser/query-runner/QueryRunner.d.ts +52 -56
- package/browser/query-runner/QueryRunner.js +3 -3
- package/browser/query-runner/QueryRunner.js.map +1 -1
- package/browser/repository/BaseEntity.d.ts +64 -44
- package/browser/repository/BaseEntity.js +61 -34
- package/browser/repository/BaseEntity.js.map +1 -1
- package/browser/repository/EntityId.d.ts +1 -1
- package/browser/repository/EntityId.js +3 -3
- package/browser/repository/EntityId.js.map +1 -1
- package/browser/repository/FindTreesOptions.js +3 -3
- package/browser/repository/FindTreesOptions.js.map +1 -1
- package/browser/repository/MongoRepository.d.ts +79 -29
- package/browser/repository/MongoRepository.js +80 -31
- package/browser/repository/MongoRepository.js.map +1 -1
- package/browser/repository/RemoveOptions.js +3 -3
- package/browser/repository/RemoveOptions.js.map +1 -1
- package/browser/repository/Repository.d.ts +75 -52
- package/browser/repository/Repository.js +76 -50
- package/browser/repository/Repository.js.map +1 -1
- package/browser/repository/SaveOptions.js +3 -3
- package/browser/repository/SaveOptions.js.map +1 -1
- package/browser/repository/TreeRepository.d.ts +21 -4
- package/browser/repository/TreeRepository.js +48 -28
- package/browser/repository/TreeRepository.js.map +1 -1
- package/browser/repository/UpdateOptions.d.ts +11 -0
- package/browser/repository/UpdateOptions.js +3 -0
- package/browser/repository/UpdateOptions.js.map +1 -0
- package/browser/repository/UpsertOptions.d.ts +8 -2
- package/browser/repository/UpsertOptions.js +3 -3
- package/browser/repository/UpsertOptions.js.map +1 -1
- package/browser/schema-builder/MongoSchemaBuilder.d.ts +4 -4
- package/browser/schema-builder/MongoSchemaBuilder.js +12 -9
- package/browser/schema-builder/MongoSchemaBuilder.js.map +1 -1
- package/browser/schema-builder/RdbmsSchemaBuilder.d.ts +29 -9
- package/browser/schema-builder/RdbmsSchemaBuilder.js +202 -180
- package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/browser/schema-builder/SchemaBuilder.d.ts +1 -1
- package/browser/schema-builder/SchemaBuilder.js +3 -3
- package/browser/schema-builder/SchemaBuilder.js.map +1 -1
- package/browser/schema-builder/options/TableCheckOptions.js +3 -3
- package/browser/schema-builder/options/TableCheckOptions.js.map +1 -1
- package/browser/schema-builder/options/TableColumnOptions.d.ts +0 -10
- package/browser/schema-builder/options/TableColumnOptions.js +3 -3
- package/browser/schema-builder/options/TableColumnOptions.js.map +1 -1
- package/browser/schema-builder/options/TableExclusionOptions.d.ts +5 -0
- package/browser/schema-builder/options/TableExclusionOptions.js +3 -3
- package/browser/schema-builder/options/TableExclusionOptions.js.map +1 -1
- package/browser/schema-builder/options/TableForeignKeyOptions.js +3 -3
- package/browser/schema-builder/options/TableForeignKeyOptions.js.map +1 -1
- package/browser/schema-builder/options/TableIndexOptions.d.ts +7 -0
- package/browser/schema-builder/options/TableIndexOptions.js +3 -3
- package/browser/schema-builder/options/TableIndexOptions.js.map +1 -1
- package/browser/schema-builder/options/TableIndexTypes.d.ts +1 -0
- package/browser/schema-builder/options/TableIndexTypes.js +3 -0
- package/browser/schema-builder/options/TableIndexTypes.js.map +1 -0
- package/browser/schema-builder/options/TableOptions.d.ts +6 -6
- package/browser/schema-builder/options/TableOptions.js +3 -3
- package/browser/schema-builder/options/TableOptions.js.map +1 -1
- package/browser/schema-builder/options/TableUniqueOptions.js +3 -3
- package/browser/schema-builder/options/TableUniqueOptions.js.map +1 -1
- package/browser/schema-builder/options/ViewOptions.d.ts +3 -2
- package/browser/schema-builder/options/ViewOptions.js +3 -3
- package/browser/schema-builder/options/ViewOptions.js.map +1 -1
- package/browser/schema-builder/table/Table.d.ts +23 -3
- package/browser/schema-builder/table/Table.js +44 -21
- package/browser/schema-builder/table/Table.js.map +1 -1
- package/browser/schema-builder/table/TableCheck.d.ts +3 -2
- package/browser/schema-builder/table/TableCheck.js +7 -3
- package/browser/schema-builder/table/TableCheck.js.map +1 -1
- package/browser/schema-builder/table/TableColumn.d.ts +1 -11
- package/browser/schema-builder/table/TableColumn.js +7 -13
- package/browser/schema-builder/table/TableColumn.js.map +1 -1
- package/browser/schema-builder/table/TableExclusion.d.ts +8 -2
- package/browser/schema-builder/table/TableExclusion.js +10 -3
- package/browser/schema-builder/table/TableExclusion.js.map +1 -1
- package/browser/schema-builder/table/TableForeignKey.d.ts +5 -3
- package/browser/schema-builder/table/TableForeignKey.js +8 -3
- package/browser/schema-builder/table/TableForeignKey.js.map +1 -1
- package/browser/schema-builder/table/TableIndex.d.ts +10 -2
- package/browser/schema-builder/table/TableIndex.js +10 -3
- package/browser/schema-builder/table/TableIndex.js.map +1 -1
- package/browser/schema-builder/table/TableUnique.d.ts +3 -2
- package/browser/schema-builder/table/TableUnique.js +7 -3
- package/browser/schema-builder/table/TableUnique.js.map +1 -1
- package/browser/schema-builder/util/TableUtils.d.ts +3 -3
- package/browser/schema-builder/util/TableUtils.js +6 -5
- package/browser/schema-builder/util/TableUtils.js.map +1 -1
- package/browser/schema-builder/util/ViewUtils.d.ts +3 -1
- package/browser/schema-builder/util/ViewUtils.js +8 -3
- package/browser/schema-builder/util/ViewUtils.js.map +1 -1
- package/browser/schema-builder/view/View.d.ts +11 -3
- package/browser/schema-builder/view/View.js +10 -3
- package/browser/schema-builder/view/View.js.map +1 -1
- package/browser/subscriber/Broadcaster.d.ts +76 -10
- package/browser/subscriber/Broadcaster.js +157 -71
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/subscriber/BroadcasterResult.js +6 -3
- package/browser/subscriber/BroadcasterResult.js.map +1 -1
- package/browser/subscriber/EntitySubscriberInterface.d.ts +12 -12
- package/browser/subscriber/EntitySubscriberInterface.js +3 -3
- package/browser/subscriber/EntitySubscriberInterface.js.map +1 -1
- package/browser/subscriber/event/BaseEvent.d.ts +27 -0
- package/browser/subscriber/event/BaseEvent.js +3 -0
- package/browser/subscriber/event/BaseEvent.js.map +1 -0
- package/browser/subscriber/event/InsertEvent.d.ts +4 -20
- package/browser/subscriber/event/InsertEvent.js +3 -3
- package/browser/subscriber/event/InsertEvent.js.map +1 -1
- package/browser/subscriber/event/LoadEvent.d.ts +3 -19
- package/browser/subscriber/event/LoadEvent.js +3 -3
- package/browser/subscriber/event/LoadEvent.js.map +1 -1
- package/browser/subscriber/event/QueryEvent.d.ts +4 -20
- package/browser/subscriber/event/QueryEvent.js +3 -3
- package/browser/subscriber/event/QueryEvent.js.map +1 -1
- package/browser/subscriber/event/RecoverEvent.d.ts +1 -1
- package/browser/subscriber/event/RecoverEvent.js +3 -3
- package/browser/subscriber/event/RecoverEvent.js.map +1 -1
- package/browser/subscriber/event/RemoveEvent.d.ts +3 -19
- package/browser/subscriber/event/RemoveEvent.js +3 -3
- package/browser/subscriber/event/RemoveEvent.js.map +1 -1
- package/browser/subscriber/event/SoftRemoveEvent.d.ts +1 -1
- package/browser/subscriber/event/SoftRemoveEvent.js +3 -3
- package/browser/subscriber/event/SoftRemoveEvent.js.map +1 -1
- package/browser/subscriber/event/TransactionCommitEvent.d.ts +2 -18
- package/browser/subscriber/event/TransactionCommitEvent.js +3 -3
- package/browser/subscriber/event/TransactionCommitEvent.js.map +1 -1
- package/browser/subscriber/event/TransactionRollbackEvent.d.ts +2 -18
- package/browser/subscriber/event/TransactionRollbackEvent.js +3 -3
- package/browser/subscriber/event/TransactionRollbackEvent.js.map +1 -1
- package/browser/subscriber/event/TransactionStartEvent.d.ts +2 -18
- package/browser/subscriber/event/TransactionStartEvent.js +3 -3
- package/browser/subscriber/event/TransactionStartEvent.js.map +1 -1
- package/browser/subscriber/event/UpdateEvent.d.ts +6 -22
- package/browser/subscriber/event/UpdateEvent.js +3 -3
- package/browser/subscriber/event/UpdateEvent.js.map +1 -1
- package/browser/util/ApplyValueTransformers.d.ts +1 -1
- package/browser/util/ApplyValueTransformers.js +11 -3
- package/browser/util/ApplyValueTransformers.js.map +1 -1
- package/browser/util/DateUtils.d.ts +36 -1
- package/browser/util/DateUtils.js +63 -11
- package/browser/util/DateUtils.js.map +1 -1
- package/browser/util/DepGraph.d.ts +16 -0
- package/browser/util/DepGraph.js +30 -12
- package/browser/util/DepGraph.js.map +1 -1
- package/browser/util/DirectoryExportedClassesLoader.d.ts +4 -5
- package/browser/util/DirectoryExportedClassesLoader.js +23 -24
- package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/browser/util/ImportUtils.d.ts +4 -0
- package/browser/util/ImportUtils.js +28 -12
- package/browser/util/ImportUtils.js.map +1 -1
- package/browser/util/InstanceChecker.d.ts +2 -2
- package/browser/util/InstanceChecker.js +6 -3
- package/browser/util/InstanceChecker.js.map +1 -1
- package/browser/util/ObjectUtils.d.ts +4 -1
- package/browser/util/ObjectUtils.js +9 -3
- package/browser/util/ObjectUtils.js.map +1 -1
- package/browser/util/OrmUtils.d.ts +43 -4
- package/browser/util/OrmUtils.js +119 -20
- package/browser/util/OrmUtils.js.map +1 -1
- package/browser/util/PathUtils.d.ts +6 -0
- package/browser/util/PathUtils.js +17 -7
- package/browser/util/PathUtils.js.map +1 -1
- package/browser/util/RandomGenerator.d.ts +9 -0
- package/browser/util/RandomGenerator.js +107 -69
- package/browser/util/RandomGenerator.js.map +1 -1
- package/browser/util/SqlTagUtils.d.ts +8 -1
- package/browser/util/SqlTagUtils.js +15 -5
- package/browser/util/SqlTagUtils.js.map +1 -1
- package/browser/util/StringUtils.d.ts +13 -8
- package/browser/util/StringUtils.js +50 -22
- package/browser/util/StringUtils.js.map +1 -1
- package/browser/util/TreeRepositoryUtils.d.ts +3 -3
- package/browser/util/TreeRepositoryUtils.js +8 -5
- package/browser/util/TreeRepositoryUtils.js.map +1 -1
- package/browser/util/Uint8ArrayUtils.d.ts +3 -0
- package/browser/util/Uint8ArrayUtils.js +45 -0
- package/browser/util/Uint8ArrayUtils.js.map +1 -0
- package/browser/util/VersionUtils.js +10 -3
- package/browser/util/VersionUtils.js.map +1 -1
- package/browser/util/escapeRegExp.js +6 -3
- package/browser/util/escapeRegExp.js.map +1 -1
- package/cache/DbQueryResultCache.d.ts +17 -6
- package/cache/DbQueryResultCache.js +31 -21
- package/cache/DbQueryResultCache.js.map +1 -1
- package/cache/QueryResultCache.d.ts +2 -2
- package/cache/QueryResultCache.js +1 -2
- package/cache/QueryResultCache.js.map +1 -1
- package/cache/QueryResultCacheFactory.d.ts +4 -4
- package/cache/QueryResultCacheFactory.js +8 -9
- package/cache/QueryResultCacheFactory.js.map +1 -1
- package/cache/QueryResultCacheOptions.js +1 -2
- package/cache/QueryResultCacheOptions.js.map +1 -1
- package/cache/RedisQueryResultCache.d.ts +18 -19
- package/cache/RedisQueryResultCache.js +43 -123
- package/cache/RedisQueryResultCache.js.map +1 -1
- package/cli-ts-node-commonjs.js +1 -2
- package/cli-ts-node-commonjs.js.map +1 -1
- package/cli-ts-node-esm.js +1 -2
- package/cli-ts-node-esm.js.map +1 -1
- package/cli.js +19 -19
- package/cli.js.map +1 -1
- package/commands/CacheClearCommand.d.ts +1 -1
- package/commands/CacheClearCommand.js +1 -2
- package/commands/CacheClearCommand.js.map +1 -1
- package/commands/CommandUtils.d.ts +7 -1
- package/commands/CommandUtils.js +10 -4
- package/commands/CommandUtils.js.map +1 -1
- package/commands/EntityCreateCommand.d.ts +2 -1
- package/commands/EntityCreateCommand.js +2 -2
- package/commands/EntityCreateCommand.js.map +1 -1
- package/commands/InitCommand.d.ts +19 -2
- package/commands/InitCommand.js +115 -85
- package/commands/InitCommand.js.map +1 -1
- package/commands/MigrationCreateCommand.d.ts +6 -1
- package/commands/MigrationCreateCommand.js +6 -2
- package/commands/MigrationCreateCommand.js.map +1 -1
- package/commands/MigrationGenerateCommand.d.ts +12 -1
- package/commands/MigrationGenerateCommand.js +13 -3
- package/commands/MigrationGenerateCommand.js.map +1 -1
- package/commands/MigrationRevertCommand.d.ts +1 -1
- package/commands/MigrationRevertCommand.js +1 -2
- package/commands/MigrationRevertCommand.js.map +1 -1
- package/commands/MigrationRunCommand.d.ts +1 -1
- package/commands/MigrationRunCommand.js +5 -6
- package/commands/MigrationRunCommand.js.map +1 -1
- package/commands/MigrationShowCommand.d.ts +1 -1
- package/commands/MigrationShowCommand.js +1 -2
- package/commands/MigrationShowCommand.js.map +1 -1
- package/commands/QueryCommand.d.ts +1 -1
- package/commands/QueryCommand.js +1 -2
- package/commands/QueryCommand.js.map +1 -1
- package/commands/SchemaDropCommand.d.ts +1 -1
- package/commands/SchemaDropCommand.js +1 -2
- package/commands/SchemaDropCommand.js.map +1 -1
- package/commands/SchemaLogCommand.d.ts +1 -1
- package/commands/SchemaLogCommand.js +1 -2
- package/commands/SchemaLogCommand.js.map +1 -1
- package/commands/SchemaSyncCommand.d.ts +1 -1
- package/commands/SchemaSyncCommand.js +1 -2
- package/commands/SchemaSyncCommand.js.map +1 -1
- package/commands/SubscriberCreateCommand.d.ts +2 -1
- package/commands/SubscriberCreateCommand.js +2 -2
- package/commands/SubscriberCreateCommand.js.map +1 -1
- package/commands/VersionCommand.d.ts +1 -1
- package/commands/VersionCommand.js +1 -2
- package/commands/VersionCommand.js.map +1 -1
- package/common/DeepPartial.js +1 -2
- package/common/DeepPartial.js.map +1 -1
- package/common/EntityTarget.d.ts +2 -2
- package/common/EntityTarget.js +1 -2
- package/common/EntityTarget.js.map +1 -1
- package/common/MixedList.js +1 -2
- package/common/MixedList.js.map +1 -1
- package/common/NonNever.d.ts +1 -1
- package/common/NonNever.js +1 -2
- package/common/NonNever.js.map +1 -1
- package/common/ObjectLiteral.js +1 -2
- package/common/ObjectLiteral.js.map +1 -1
- package/common/ObjectType.js +1 -2
- package/common/ObjectType.js.map +1 -1
- package/common/PickKeysByType.js +1 -2
- package/common/PickKeysByType.js.map +1 -1
- package/common/PrimitiveCriteria.js +1 -2
- package/common/PrimitiveCriteria.js.map +1 -1
- package/common/RelationType.d.ts +5 -5
- package/common/RelationType.js +1 -2
- package/common/RelationType.js.map +1 -1
- package/connection/ConnectionMetadataBuilder.d.ts +10 -7
- package/connection/ConnectionMetadataBuilder.js +13 -12
- package/connection/ConnectionMetadataBuilder.js.map +1 -1
- package/connection/ConnectionOptionsReader.d.ts +3 -11
- package/connection/ConnectionOptionsReader.js +26 -59
- package/connection/ConnectionOptionsReader.js.map +1 -1
- package/data-source/BaseDataSourceOptions.d.ts +13 -20
- package/data-source/BaseDataSourceOptions.js +1 -2
- package/data-source/BaseDataSourceOptions.js.map +1 -1
- package/data-source/DataSource.d.ts +50 -61
- package/data-source/DataSource.js +38 -49
- package/data-source/DataSource.js.map +1 -1
- package/data-source/DataSourceOptions.d.ts +18 -19
- package/data-source/DataSourceOptions.js +1 -2
- package/data-source/DataSourceOptions.js.map +1 -1
- package/data-source/index.d.ts +1 -1
- package/data-source/index.js +1 -3
- package/data-source/index.js.map +1 -1
- package/decorator/Check.d.ts +3 -0
- package/decorator/Check.js +3 -2
- package/decorator/Check.js.map +1 -1
- package/decorator/Exclusion.d.ts +8 -2
- package/decorator/Exclusion.js +10 -5
- package/decorator/Exclusion.js.map +1 -1
- package/decorator/ForeignKey.d.ts +11 -2
- package/decorator/ForeignKey.js +5 -2
- package/decorator/ForeignKey.js.map +1 -1
- package/decorator/Generated.d.ts +1 -0
- package/decorator/Generated.js +2 -2
- package/decorator/Generated.js.map +1 -1
- package/decorator/Index.d.ts +17 -1
- package/decorator/Index.js +5 -2
- package/decorator/Index.js.map +1 -1
- package/decorator/Unique.d.ts +11 -1
- package/decorator/Unique.js +4 -2
- package/decorator/Unique.js.map +1 -1
- package/decorator/columns/Column.d.ts +31 -10
- package/decorator/columns/Column.js +3 -2
- package/decorator/columns/Column.js.map +1 -1
- package/decorator/columns/CreateDateColumn.d.ts +2 -1
- package/decorator/columns/CreateDateColumn.js +2 -2
- package/decorator/columns/CreateDateColumn.js.map +1 -1
- package/decorator/columns/DeleteDateColumn.d.ts +2 -1
- package/decorator/columns/DeleteDateColumn.js +2 -2
- package/decorator/columns/DeleteDateColumn.js.map +1 -1
- package/decorator/columns/ObjectIdColumn.d.ts +2 -1
- package/decorator/columns/ObjectIdColumn.js +2 -2
- package/decorator/columns/ObjectIdColumn.js.map +1 -1
- package/decorator/columns/PrimaryColumn.d.ts +5 -2
- package/decorator/columns/PrimaryColumn.js +3 -2
- package/decorator/columns/PrimaryColumn.js.map +1 -1
- package/decorator/columns/PrimaryGeneratedColumn.d.ts +10 -3
- package/decorator/columns/PrimaryGeneratedColumn.js +3 -2
- package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
- package/decorator/columns/UpdateDateColumn.d.ts +2 -1
- package/decorator/columns/UpdateDateColumn.js +2 -2
- package/decorator/columns/UpdateDateColumn.js.map +1 -1
- package/decorator/columns/VersionColumn.d.ts +2 -1
- package/decorator/columns/VersionColumn.js +2 -2
- package/decorator/columns/VersionColumn.js.map +1 -1
- package/decorator/columns/ViewColumn.d.ts +2 -1
- package/decorator/columns/ViewColumn.js +2 -2
- package/decorator/columns/ViewColumn.js.map +1 -1
- package/decorator/columns/VirtualColumn.d.ts +5 -2
- package/decorator/columns/VirtualColumn.js +3 -2
- package/decorator/columns/VirtualColumn.js.map +1 -1
- package/decorator/entity/ChildEntity.d.ts +1 -0
- package/decorator/entity/ChildEntity.js +2 -2
- package/decorator/entity/ChildEntity.js.map +1 -1
- package/decorator/entity/Entity.d.ts +4 -1
- package/decorator/entity/Entity.js +3 -2
- package/decorator/entity/Entity.js.map +1 -1
- package/decorator/entity/TableInheritance.d.ts +4 -1
- package/decorator/entity/TableInheritance.js +4 -2
- package/decorator/entity/TableInheritance.js.map +1 -1
- package/decorator/entity-view/ViewEntity.d.ts +4 -1
- package/decorator/entity-view/ViewEntity.js +3 -2
- package/decorator/entity-view/ViewEntity.js.map +1 -1
- package/decorator/listeners/AfterInsert.js +1 -2
- package/decorator/listeners/AfterInsert.js.map +1 -1
- package/decorator/listeners/AfterLoad.js +1 -2
- package/decorator/listeners/AfterLoad.js.map +1 -1
- package/decorator/listeners/AfterRecover.js +1 -2
- package/decorator/listeners/AfterRecover.js.map +1 -1
- package/decorator/listeners/AfterRemove.js +1 -2
- package/decorator/listeners/AfterRemove.js.map +1 -1
- package/decorator/listeners/AfterSoftRemove.js +1 -2
- package/decorator/listeners/AfterSoftRemove.js.map +1 -1
- package/decorator/listeners/AfterUpdate.js +1 -2
- package/decorator/listeners/AfterUpdate.js.map +1 -1
- package/decorator/listeners/BeforeInsert.js +1 -2
- package/decorator/listeners/BeforeInsert.js.map +1 -1
- package/decorator/listeners/BeforeRecover.js +1 -2
- package/decorator/listeners/BeforeRecover.js.map +1 -1
- package/decorator/listeners/BeforeRemove.js +1 -2
- package/decorator/listeners/BeforeRemove.js.map +1 -1
- package/decorator/listeners/BeforeSoftRemove.js +1 -2
- package/decorator/listeners/BeforeSoftRemove.js.map +1 -1
- package/decorator/listeners/BeforeUpdate.js +1 -2
- package/decorator/listeners/BeforeUpdate.js.map +1 -1
- package/decorator/listeners/EventSubscriber.js +1 -2
- package/decorator/listeners/EventSubscriber.js.map +1 -1
- package/decorator/options/ColumnCommonOptions.d.ts +2 -2
- package/decorator/options/ColumnCommonOptions.js +1 -2
- package/decorator/options/ColumnCommonOptions.js.map +1 -1
- package/decorator/options/ColumnEmbeddedOptions.js +1 -2
- package/decorator/options/ColumnEmbeddedOptions.js.map +1 -1
- package/decorator/options/ColumnEnumOptions.js +1 -2
- package/decorator/options/ColumnEnumOptions.js.map +1 -1
- package/decorator/options/ColumnHstoreOptions.js +1 -2
- package/decorator/options/ColumnHstoreOptions.js.map +1 -1
- package/decorator/options/ColumnNumericOptions.d.ts +0 -16
- package/decorator/options/ColumnNumericOptions.js +1 -2
- package/decorator/options/ColumnNumericOptions.js.map +1 -1
- package/decorator/options/ColumnOptions.d.ts +8 -33
- package/decorator/options/ColumnOptions.js +1 -2
- package/decorator/options/ColumnOptions.js.map +1 -1
- package/decorator/options/ColumnUnsignedOptions.d.ts +1 -20
- package/decorator/options/ColumnUnsignedOptions.js +1 -2
- package/decorator/options/ColumnUnsignedOptions.js.map +1 -1
- package/decorator/options/ColumnWithLengthOptions.js +1 -2
- package/decorator/options/ColumnWithLengthOptions.js.map +1 -1
- package/decorator/options/EntityOptions.d.ts +1 -1
- package/decorator/options/EntityOptions.js +1 -2
- package/decorator/options/EntityOptions.js.map +1 -1
- package/decorator/options/ExclusionOptions.d.ts +10 -0
- package/decorator/options/ExclusionOptions.js +3 -0
- package/decorator/options/ExclusionOptions.js.map +1 -0
- package/decorator/options/ForeignKeyOptions.d.ts +3 -3
- package/decorator/options/ForeignKeyOptions.js +1 -2
- package/decorator/options/ForeignKeyOptions.js.map +1 -1
- package/decorator/options/IndexOptions.d.ts +7 -0
- package/decorator/options/IndexOptions.js +1 -2
- package/decorator/options/IndexOptions.js.map +1 -1
- package/decorator/options/JoinColumnOptions.js +1 -2
- package/decorator/options/JoinColumnOptions.js.map +1 -1
- package/decorator/options/JoinTableMultipleColumnsOptions.d.ts +1 -1
- package/decorator/options/JoinTableMultipleColumnsOptions.js +1 -2
- package/decorator/options/JoinTableMultipleColumnsOptions.js.map +1 -1
- package/decorator/options/JoinTableOptions.d.ts +1 -1
- package/decorator/options/JoinTableOptions.js +1 -2
- package/decorator/options/JoinTableOptions.js.map +1 -1
- package/decorator/options/PrimaryGeneratedColumnIdentityOptions.d.ts +1 -1
- package/decorator/options/PrimaryGeneratedColumnIdentityOptions.js +1 -2
- package/decorator/options/PrimaryGeneratedColumnIdentityOptions.js.map +1 -1
- package/decorator/options/PrimaryGeneratedColumnNumericOptions.d.ts +1 -9
- package/decorator/options/PrimaryGeneratedColumnNumericOptions.js +1 -2
- package/decorator/options/PrimaryGeneratedColumnNumericOptions.js.map +1 -1
- package/decorator/options/PrimaryGeneratedColumnUUIDOptions.js +1 -2
- package/decorator/options/PrimaryGeneratedColumnUUIDOptions.js.map +1 -1
- package/decorator/options/RelationOptions.d.ts +3 -3
- package/decorator/options/RelationOptions.js +1 -2
- package/decorator/options/RelationOptions.js.map +1 -1
- package/decorator/options/SpatialColumnOptions.d.ts +1 -1
- package/decorator/options/SpatialColumnOptions.js +1 -2
- package/decorator/options/SpatialColumnOptions.js.map +1 -1
- package/decorator/options/TransactionOptions.d.ts +1 -1
- package/decorator/options/TransactionOptions.js +1 -2
- package/decorator/options/TransactionOptions.js.map +1 -1
- package/decorator/options/UniqueOptions.d.ts +1 -1
- package/decorator/options/UniqueOptions.js +1 -2
- package/decorator/options/UniqueOptions.js.map +1 -1
- package/decorator/options/ValueTransformer.js +1 -2
- package/decorator/options/ValueTransformer.js.map +1 -1
- package/decorator/options/ViewColumnOptions.d.ts +1 -1
- package/decorator/options/ViewColumnOptions.js +1 -2
- package/decorator/options/ViewColumnOptions.js.map +1 -1
- package/decorator/options/ViewEntityOptions.d.ts +3 -2
- package/decorator/options/ViewEntityOptions.js +1 -2
- package/decorator/options/ViewEntityOptions.js.map +1 -1
- package/decorator/options/VirtualColumnOptions.d.ts +3 -3
- package/decorator/options/VirtualColumnOptions.js +1 -2
- package/decorator/options/VirtualColumnOptions.js.map +1 -1
- package/decorator/relations/JoinColumn.d.ts +3 -1
- package/decorator/relations/JoinColumn.js +2 -2
- package/decorator/relations/JoinColumn.js.map +1 -1
- package/decorator/relations/JoinTable.d.ts +4 -2
- package/decorator/relations/JoinTable.js +2 -2
- package/decorator/relations/JoinTable.js.map +1 -1
- package/decorator/relations/ManyToMany.d.ts +7 -2
- package/decorator/relations/ManyToMany.js +4 -2
- package/decorator/relations/ManyToMany.js.map +1 -1
- package/decorator/relations/ManyToOne.d.ts +7 -2
- package/decorator/relations/ManyToOne.js +4 -2
- package/decorator/relations/ManyToOne.js.map +1 -1
- package/decorator/relations/OneToMany.d.ts +5 -2
- package/decorator/relations/OneToMany.js +4 -2
- package/decorator/relations/OneToMany.js.map +1 -1
- package/decorator/relations/OneToOne.d.ts +7 -2
- package/decorator/relations/OneToOne.js +4 -2
- package/decorator/relations/OneToOne.js.map +1 -1
- package/decorator/relations/RelationId.d.ts +4 -2
- package/decorator/relations/RelationId.js +4 -3
- package/decorator/relations/RelationId.js.map +1 -1
- package/decorator/tree/Tree.d.ts +6 -4
- package/decorator/tree/Tree.js +5 -4
- package/decorator/tree/Tree.js.map +1 -1
- package/decorator/tree/TreeChildren.d.ts +2 -0
- package/decorator/tree/TreeChildren.js +3 -2
- package/decorator/tree/TreeChildren.js.map +1 -1
- package/decorator/tree/TreeLevelColumn.js +1 -2
- package/decorator/tree/TreeLevelColumn.js.map +1 -1
- package/decorator/tree/TreeParent.d.ts +3 -1
- package/decorator/tree/TreeParent.js +3 -2
- package/decorator/tree/TreeParent.js.map +1 -1
- package/driver/Driver.d.ts +32 -21
- package/driver/Driver.js +1 -2
- package/driver/Driver.js.map +1 -1
- package/driver/DriverFactory.d.ts +5 -3
- package/driver/DriverFactory.js +48 -51
- package/driver/DriverFactory.js.map +1 -1
- package/driver/DriverUtils.d.ts +13 -11
- package/driver/DriverUtils.js +18 -24
- package/driver/DriverUtils.js.map +1 -1
- package/driver/Query.js +1 -2
- package/driver/Query.js.map +1 -1
- package/driver/SqlInMemory.d.ts +1 -1
- package/driver/SqlInMemory.js +1 -2
- package/driver/SqlInMemory.js.map +1 -1
- package/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.d.ts +0 -1
- package/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js +1 -2
- package/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js.map +1 -1
- package/{browser/driver/aurora-mysql/AuroraMysqlConnectionOptions.d.ts → driver/aurora-mysql/AuroraMysqlDataSourceOptions.d.ts} +4 -5
- package/driver/aurora-mysql/AuroraMysqlDataSourceOptions.js +3 -0
- package/driver/aurora-mysql/AuroraMysqlDataSourceOptions.js.map +1 -0
- package/driver/aurora-mysql/AuroraMysqlDriver.d.ts +66 -28
- package/driver/aurora-mysql/AuroraMysqlDriver.js +76 -64
- package/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -1
- package/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +168 -32
- package/driver/aurora-mysql/AuroraMysqlQueryRunner.js +245 -135
- package/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
- package/{browser/driver/aurora-postgres/AuroraPostgresConnectionOptions.d.ts → driver/aurora-postgres/AuroraPostgresDataSourceOptions.d.ts} +2 -2
- package/driver/aurora-postgres/AuroraPostgresDataSourceOptions.js +3 -0
- package/driver/aurora-postgres/AuroraPostgresDataSourceOptions.js.map +1 -0
- package/driver/aurora-postgres/AuroraPostgresDriver.d.ts +15 -13
- package/driver/aurora-postgres/AuroraPostgresDriver.js +17 -11
- package/driver/aurora-postgres/AuroraPostgresDriver.js.map +1 -1
- package/driver/aurora-postgres/AuroraPostgresQueryRunner.d.ts +11 -9
- package/driver/aurora-postgres/AuroraPostgresQueryRunner.js +7 -2
- package/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
- package/{browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts → driver/better-sqlite3/BetterSqlite3DataSourceOptions.d.ts} +5 -3
- package/driver/better-sqlite3/BetterSqlite3DataSourceOptions.js +3 -0
- package/driver/better-sqlite3/BetterSqlite3DataSourceOptions.js.map +1 -0
- package/driver/better-sqlite3/BetterSqlite3Driver.d.ts +13 -12
- package/driver/better-sqlite3/BetterSqlite3Driver.js +19 -16
- package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +4 -1
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +23 -16
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/driver/capacitor/{CapacitorConnectionOptions.d.ts → CapacitorDataSourceOptions.d.ts} +2 -2
- package/driver/capacitor/CapacitorDataSourceOptions.js +3 -0
- package/driver/capacitor/CapacitorDataSourceOptions.js.map +1 -0
- package/driver/capacitor/CapacitorDriver.d.ts +7 -6
- package/driver/capacitor/CapacitorDriver.js +5 -5
- package/driver/capacitor/CapacitorDriver.js.map +1 -1
- package/driver/capacitor/CapacitorQueryRunner.d.ts +6 -2
- package/driver/capacitor/CapacitorQueryRunner.js +11 -8
- package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/driver/cockroachdb/CockroachConnectionCredentialsOptions.d.ts +1 -1
- package/driver/cockroachdb/CockroachConnectionCredentialsOptions.js +1 -2
- package/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -1
- package/{browser/driver/cockroachdb/CockroachConnectionOptions.d.ts → driver/cockroachdb/CockroachDataSourceOptions.d.ts} +4 -4
- package/driver/cockroachdb/CockroachDataSourceOptions.js +3 -0
- package/driver/cockroachdb/CockroachDataSourceOptions.js.map +1 -0
- package/driver/cockroachdb/CockroachDriver.d.ts +79 -27
- package/driver/cockroachdb/CockroachDriver.js +121 -45
- package/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.d.ts +203 -31
- package/driver/cockroachdb/CockroachQueryRunner.js +370 -160
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/cordova/{CordovaConnectionOptions.d.ts → CordovaDataSourceOptions.d.ts} +2 -2
- package/driver/cordova/CordovaDataSourceOptions.js +3 -0
- package/driver/cordova/CordovaDataSourceOptions.js.map +1 -0
- package/driver/cordova/CordovaDriver.d.ts +7 -6
- package/driver/cordova/CordovaDriver.js +5 -7
- package/driver/cordova/CordovaDriver.js.map +1 -1
- package/driver/cordova/CordovaQueryRunner.d.ts +7 -35
- package/driver/cordova/CordovaQueryRunner.js +11 -39
- package/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/driver/expo/{ExpoConnectionOptions.d.ts → ExpoDataSourceOptions.d.ts} +2 -2
- package/driver/expo/ExpoDataSourceOptions.js +3 -0
- package/driver/expo/ExpoDataSourceOptions.js.map +1 -0
- package/driver/expo/ExpoDriver.d.ts +6 -5
- package/driver/expo/ExpoDriver.js +10 -4
- package/driver/expo/ExpoDriver.js.map +1 -1
- package/driver/expo/ExpoQueryRunner.d.ts +1 -1
- package/driver/expo/ExpoQueryRunner.js +5 -6
- package/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/{browser/driver/mongodb/MongoConnectionOptions.d.ts → driver/mongodb/MongoDataSourceOptions.d.ts} +7 -69
- package/driver/mongodb/MongoDataSourceOptions.js +3 -0
- package/driver/mongodb/MongoDataSourceOptions.js.map +1 -0
- package/driver/mongodb/MongoDriver.d.ts +51 -23
- package/driver/mongodb/MongoDriver.js +41 -33
- package/driver/mongodb/MongoDriver.js.map +1 -1
- package/driver/mongodb/MongoQueryRunner.d.ts +239 -83
- package/driver/mongodb/MongoQueryRunner.js +234 -68
- package/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/driver/mongodb/bson.typings.d.ts +604 -97
- package/driver/mongodb/bson.typings.js +2 -2
- package/driver/mongodb/bson.typings.js.map +1 -1
- package/driver/mongodb/typings.d.ts +3577 -1025
- package/driver/mongodb/typings.js +3 -3
- package/driver/mongodb/typings.js.map +1 -1
- package/driver/mysql/MysqlConnectionCredentialsOptions.d.ts +0 -1
- package/driver/mysql/MysqlConnectionCredentialsOptions.js +1 -2
- package/driver/mysql/MysqlConnectionCredentialsOptions.js.map +1 -1
- package/{browser/driver/mysql/MysqlConnectionOptions.d.ts → driver/mysql/MysqlDataSourceOptions.d.ts} +6 -13
- package/driver/mysql/MysqlDataSourceOptions.js +3 -0
- package/driver/mysql/MysqlDataSourceOptions.js.map +1 -0
- package/driver/mysql/MysqlDriver.d.ts +69 -37
- package/driver/mysql/MysqlDriver.js +91 -205
- package/driver/mysql/MysqlDriver.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.d.ts +167 -33
- package/driver/mysql/MysqlQueryRunner.js +265 -146
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/{browser/driver/nativescript/NativescriptConnectionOptions.d.ts → driver/nativescript/NativescriptDataSourceOptions.d.ts} +2 -2
- package/driver/nativescript/NativescriptDataSourceOptions.js +3 -0
- package/driver/nativescript/NativescriptDataSourceOptions.js.map +1 -0
- package/driver/nativescript/NativescriptDriver.d.ts +9 -8
- package/driver/nativescript/NativescriptDriver.js +7 -8
- package/driver/nativescript/NativescriptDriver.js.map +1 -1
- package/driver/nativescript/NativescriptQueryRunner.d.ts +7 -2
- package/driver/nativescript/NativescriptQueryRunner.js +8 -4
- package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/driver/oracle/OracleConnectionCredentialsOptions.js +1 -2
- package/driver/oracle/OracleConnectionCredentialsOptions.js.map +1 -1
- package/{browser/driver/oracle/OracleConnectionOptions.d.ts → driver/oracle/OracleDataSourceOptions.d.ts} +3 -3
- package/driver/oracle/OracleDataSourceOptions.js +3 -0
- package/driver/oracle/OracleDataSourceOptions.js.map +1 -0
- package/driver/oracle/OracleDriver.d.ts +65 -28
- package/driver/oracle/OracleDriver.js +60 -23
- package/driver/oracle/OracleDriver.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.d.ts +176 -29
- package/driver/oracle/OracleQueryRunner.js +271 -100
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +1 -1
- package/driver/postgres/PostgresConnectionCredentialsOptions.js +1 -2
- package/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
- package/{browser/driver/postgres/PostgresConnectionOptions.d.ts → driver/postgres/PostgresDataSourceOptions.d.ts} +8 -5
- package/driver/postgres/PostgresDataSourceOptions.js +3 -0
- package/driver/postgres/PostgresDataSourceOptions.js.map +1 -0
- package/driver/postgres/PostgresDriver.d.ts +85 -28
- package/driver/postgres/PostgresDriver.js +201 -41
- package/driver/postgres/PostgresDriver.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.d.ts +225 -34
- package/driver/postgres/PostgresQueryRunner.js +497 -219
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/{browser/driver/react-native/ReactNativeConnectionOptions.d.ts → driver/react-native/ReactNativeDataSourceOptions.d.ts} +6 -2
- package/driver/react-native/ReactNativeDataSourceOptions.js +3 -0
- package/driver/react-native/ReactNativeDataSourceOptions.js.map +1 -0
- package/driver/react-native/ReactNativeDriver.d.ts +64 -24
- package/driver/react-native/ReactNativeDriver.js +60 -22
- package/driver/react-native/ReactNativeDriver.js.map +1 -1
- package/driver/react-native/ReactNativeQueryRunner.d.ts +7 -2
- package/driver/react-native/ReactNativeQueryRunner.js +10 -6
- package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/driver/sap/SapConnectionCredentialsOptions.js +1 -2
- package/driver/sap/SapConnectionCredentialsOptions.js.map +1 -1
- package/driver/sap/{SapConnectionOptions.d.ts → SapDataSourceOptions.d.ts} +10 -37
- package/driver/sap/SapDataSourceOptions.js +3 -0
- package/driver/sap/SapDataSourceOptions.js.map +1 -0
- package/driver/sap/SapDriver.d.ts +54 -17
- package/driver/sap/SapDriver.js +48 -25
- package/driver/sap/SapDriver.js.map +1 -1
- package/driver/sap/SapQueryRunner.d.ts +179 -31
- package/driver/sap/SapQueryRunner.js +316 -118
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/spanner/SpannerConnectionCredentialsOptions.js +1 -2
- package/driver/spanner/SpannerConnectionCredentialsOptions.js.map +1 -1
- package/{browser/driver/spanner/SpannerConnectionOptions.d.ts → driver/spanner/SpannerDataSourceOptions.d.ts} +4 -4
- package/driver/spanner/SpannerDataSourceOptions.js +3 -0
- package/driver/spanner/SpannerDataSourceOptions.js.map +1 -0
- package/driver/spanner/SpannerDriver.d.ts +61 -23
- package/driver/spanner/SpannerDriver.js +57 -21
- package/driver/spanner/SpannerDriver.js.map +1 -1
- package/driver/spanner/SpannerQueryRunner.d.ts +170 -28
- package/driver/spanner/SpannerQueryRunner.js +243 -75
- package/driver/spanner/SpannerQueryRunner.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +74 -23
- package/driver/sqlite-abstract/AbstractSqliteDriver.js +131 -26
- package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +164 -30
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +242 -82
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/{browser/driver/sqljs/SqljsConnectionOptions.d.ts → driver/sqljs/SqljsDataSourceOptions.d.ts} +2 -2
- package/driver/sqljs/SqljsDataSourceOptions.js +3 -0
- package/driver/sqljs/SqljsDataSourceOptions.js.map +1 -0
- package/driver/sqljs/SqljsDriver.d.ts +15 -8
- package/driver/sqljs/SqljsDriver.js +17 -11
- package/driver/sqljs/SqljsDriver.js.map +1 -1
- package/driver/sqljs/SqljsQueryRunner.d.ts +4 -1
- package/driver/sqljs/SqljsQueryRunner.js +8 -6
- package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
- package/driver/sqlserver/MssqlParameter.d.ts +0 -1
- package/driver/sqlserver/MssqlParameter.js +1 -3
- package/driver/sqlserver/MssqlParameter.js.map +1 -1
- package/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +8 -15
- package/driver/sqlserver/SqlServerConnectionCredentialsOptions.js +1 -2
- package/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -1
- package/driver/sqlserver/{SqlServerConnectionOptions.d.ts → SqlServerDataSourceOptions.d.ts} +4 -4
- package/driver/sqlserver/SqlServerDataSourceOptions.js +3 -0
- package/driver/sqlserver/SqlServerDataSourceOptions.js.map +1 -0
- package/driver/sqlserver/SqlServerDriver.d.ts +70 -28
- package/driver/sqlserver/SqlServerDriver.js +66 -34
- package/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.d.ts +190 -30
- package/driver/sqlserver/SqlServerQueryRunner.js +377 -155
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js +1 -2
- package/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js.map +1 -1
- package/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js +1 -2
- package/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js.map +1 -1
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js +1 -2
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js.map +1 -1
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js +1 -2
- package/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js.map +1 -1
- package/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js +1 -2
- package/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js.map +1 -1
- package/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js +1 -2
- package/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js.map +1 -1
- package/driver/sqlserver/authentication/DefaultAuthentication.js +1 -2
- package/driver/sqlserver/authentication/DefaultAuthentication.js.map +1 -1
- package/driver/sqlserver/authentication/NtlmAuthentication.js +1 -2
- package/driver/sqlserver/authentication/NtlmAuthentication.js.map +1 -1
- package/driver/types/ColumnTypes.d.ts +1 -1
- package/driver/types/ColumnTypes.js +1 -2
- package/driver/types/ColumnTypes.js.map +1 -1
- package/driver/types/CteCapabilities.js +1 -2
- package/driver/types/CteCapabilities.js.map +1 -1
- package/driver/types/DataTypeDefaults.d.ts +0 -1
- package/driver/types/DataTypeDefaults.js +1 -2
- package/driver/types/DataTypeDefaults.js.map +1 -1
- package/driver/types/DatabaseType.d.ts +1 -1
- package/driver/types/DatabaseType.js +1 -2
- package/driver/types/DatabaseType.js.map +1 -1
- package/driver/types/GeoJsonTypes.js +1 -2
- package/driver/types/GeoJsonTypes.js.map +1 -1
- package/driver/types/IsolationLevel.js +1 -2
- package/driver/types/IsolationLevel.js.map +1 -1
- package/driver/types/MappedColumnTypes.d.ts +1 -1
- package/driver/types/MappedColumnTypes.js +1 -2
- package/driver/types/MappedColumnTypes.js.map +1 -1
- package/driver/types/MetadataTableType.js +1 -2
- package/driver/types/MetadataTableType.js.map +1 -1
- package/driver/types/ReplicationMode.js +1 -2
- package/driver/types/ReplicationMode.js.map +1 -1
- package/driver/types/ReturningType.d.ts +1 -0
- package/driver/types/ReturningType.js +3 -0
- package/driver/types/ReturningType.js.map +1 -0
- package/driver/types/UpsertType.js +1 -2
- package/driver/types/UpsertType.js.map +1 -1
- package/entity-manager/EntityManager.d.ts +111 -57
- package/entity-manager/EntityManager.js +191 -153
- package/entity-manager/EntityManager.js.map +1 -1
- package/entity-manager/EntityManagerFactory.d.ts +6 -3
- package/entity-manager/EntityManagerFactory.js +10 -8
- package/entity-manager/EntityManagerFactory.js.map +1 -1
- package/entity-manager/MongoEntityManager.d.ts +156 -30
- package/entity-manager/MongoEntityManager.js +262 -89
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/entity-manager/SqljsEntityManager.d.ts +5 -3
- package/entity-manager/SqljsEntityManager.js +6 -5
- package/entity-manager/SqljsEntityManager.js.map +1 -1
- package/entity-schema/EntitySchema.d.ts +1 -1
- package/entity-schema/EntitySchema.js +1 -2
- package/entity-schema/EntitySchema.js.map +1 -1
- package/entity-schema/EntitySchemaCheckOptions.js +1 -2
- package/entity-schema/EntitySchemaCheckOptions.js.map +1 -1
- package/entity-schema/EntitySchemaColumnForeignKeyOptions.d.ts +2 -2
- package/entity-schema/EntitySchemaColumnForeignKeyOptions.js +1 -2
- package/entity-schema/EntitySchemaColumnForeignKeyOptions.js.map +1 -1
- package/entity-schema/EntitySchemaColumnOptions.d.ts +6 -26
- package/entity-schema/EntitySchemaColumnOptions.js +1 -2
- package/entity-schema/EntitySchemaColumnOptions.js.map +1 -1
- package/entity-schema/EntitySchemaEmbeddedColumnOptions.d.ts +1 -1
- package/entity-schema/EntitySchemaEmbeddedColumnOptions.js +1 -2
- package/entity-schema/EntitySchemaEmbeddedColumnOptions.js.map +1 -1
- package/entity-schema/EntitySchemaEmbeddedError.js +1 -2
- package/entity-schema/EntitySchemaEmbeddedError.js.map +1 -1
- package/entity-schema/EntitySchemaExclusionOptions.d.ts +5 -0
- package/entity-schema/EntitySchemaExclusionOptions.js +1 -2
- package/entity-schema/EntitySchemaExclusionOptions.js.map +1 -1
- package/entity-schema/EntitySchemaForeignKeyOptions.d.ts +2 -2
- package/entity-schema/EntitySchemaForeignKeyOptions.js +1 -2
- package/entity-schema/EntitySchemaForeignKeyOptions.js.map +1 -1
- package/entity-schema/EntitySchemaIndexOptions.js +1 -2
- package/entity-schema/EntitySchemaIndexOptions.js.map +1 -1
- package/entity-schema/EntitySchemaInheritanceOptions.d.ts +1 -1
- package/entity-schema/EntitySchemaInheritanceOptions.js +1 -2
- package/entity-schema/EntitySchemaInheritanceOptions.js.map +1 -1
- package/entity-schema/EntitySchemaOptions.d.ts +16 -14
- package/entity-schema/EntitySchemaOptions.js +1 -2
- package/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/entity-schema/EntitySchemaRelationIdOptions.d.ts +1 -1
- package/entity-schema/EntitySchemaRelationIdOptions.js +1 -2
- package/entity-schema/EntitySchemaRelationIdOptions.js.map +1 -1
- package/entity-schema/EntitySchemaRelationOptions.d.ts +8 -8
- package/entity-schema/EntitySchemaRelationOptions.js +1 -2
- package/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
- package/entity-schema/EntitySchemaTransformer.d.ts +2 -1
- package/entity-schema/EntitySchemaTransformer.js +3 -5
- package/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/entity-schema/EntitySchemaUniqueOptions.d.ts +1 -1
- package/entity-schema/EntitySchemaUniqueOptions.js +1 -2
- package/entity-schema/EntitySchemaUniqueOptions.js.map +1 -1
- package/error/AlreadyHasActiveConnectionError.js +1 -2
- package/error/AlreadyHasActiveConnectionError.js.map +1 -1
- package/error/CannotAttachTreeChildrenEntityError.js +1 -2
- package/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
- package/error/CannotConnectAlreadyConnectedError.d.ts +1 -1
- package/error/CannotConnectAlreadyConnectedError.js +3 -4
- package/error/CannotConnectAlreadyConnectedError.js.map +1 -1
- package/error/CannotCreateEntityIdMapError.d.ts +1 -1
- package/error/CannotCreateEntityIdMapError.js +1 -2
- package/error/CannotCreateEntityIdMapError.js.map +1 -1
- package/error/CannotDetermineEntityError.js +1 -2
- package/error/CannotDetermineEntityError.js.map +1 -1
- package/error/CannotExecuteNotConnectedError.d.ts +1 -1
- package/error/CannotExecuteNotConnectedError.js +3 -4
- package/error/CannotExecuteNotConnectedError.js.map +1 -1
- package/error/CannotGetEntityManagerNotConnectedError.js +1 -2
- package/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
- package/error/CannotReflectMethodParameterTypeError.js +1 -2
- package/error/CannotReflectMethodParameterTypeError.js.map +1 -1
- package/error/CircularRelationsError.js +1 -2
- package/error/CircularRelationsError.js.map +1 -1
- package/error/ColumnTypeUndefinedError.js +1 -2
- package/error/ColumnTypeUndefinedError.js.map +1 -1
- package/error/ConnectionIsNotSetError.js +1 -2
- package/error/ConnectionIsNotSetError.js.map +1 -1
- package/error/ConnectionNotFoundError.js +1 -2
- package/error/ConnectionNotFoundError.js.map +1 -1
- package/error/DataTypeNotSupportedError.d.ts +3 -3
- package/error/DataTypeNotSupportedError.js +1 -2
- package/error/DataTypeNotSupportedError.js.map +1 -1
- package/error/DriverOptionNotSetError.js +1 -2
- package/error/DriverOptionNotSetError.js.map +1 -1
- package/error/DriverPackageNotInstalledError.js +1 -2
- package/error/DriverPackageNotInstalledError.js.map +1 -1
- package/error/EntityMetadataNotFoundError.d.ts +1 -1
- package/error/EntityMetadataNotFoundError.js +1 -2
- package/error/EntityMetadataNotFoundError.js.map +1 -1
- package/error/EntityNotFoundError.d.ts +1 -1
- package/error/EntityNotFoundError.js +1 -2
- package/error/EntityNotFoundError.js.map +1 -1
- package/error/EntityPropertyNotFoundError.d.ts +1 -1
- package/error/EntityPropertyNotFoundError.js +1 -2
- package/error/EntityPropertyNotFoundError.js.map +1 -1
- package/error/FindRelationsNotFoundError.js +1 -2
- package/error/FindRelationsNotFoundError.js.map +1 -1
- package/error/ForbiddenTransactionModeOverrideError.d.ts +1 -1
- package/error/ForbiddenTransactionModeOverrideError.js +1 -2
- package/error/ForbiddenTransactionModeOverrideError.js.map +1 -1
- package/error/InitializedRelationError.d.ts +1 -2
- package/error/InitializedRelationError.js +1 -3
- package/error/InitializedRelationError.js.map +1 -1
- package/error/InsertValuesMissingError.js +1 -2
- package/error/InsertValuesMissingError.js.map +1 -1
- package/error/LimitOnUpdateNotSupportedError.js +1 -2
- package/error/LimitOnUpdateNotSupportedError.js.map +1 -1
- package/error/LockNotSupportedOnGivenDriverError.js +1 -2
- package/error/LockNotSupportedOnGivenDriverError.js.map +1 -1
- package/error/MetadataAlreadyExistsError.js +1 -2
- package/error/MetadataAlreadyExistsError.js.map +1 -1
- package/error/MetadataWithSuchNameAlreadyExistsError.js +1 -2
- package/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -1
- package/error/MissingDeleteDateColumnError.d.ts +1 -1
- package/error/MissingDeleteDateColumnError.js +1 -2
- package/error/MissingDeleteDateColumnError.js.map +1 -1
- package/error/MissingDriverError.js +1 -2
- package/error/MissingDriverError.js.map +1 -1
- package/error/MissingJoinColumnError.d.ts +2 -2
- package/error/MissingJoinColumnError.js +1 -2
- package/error/MissingJoinColumnError.js.map +1 -1
- package/error/MissingJoinTableError.d.ts +2 -2
- package/error/MissingJoinTableError.js +1 -2
- package/error/MissingJoinTableError.js.map +1 -1
- package/error/MissingPrimaryColumnError.d.ts +1 -1
- package/error/MissingPrimaryColumnError.js +1 -2
- package/error/MissingPrimaryColumnError.js.map +1 -1
- package/error/MustBeEntityError.js +1 -2
- package/error/MustBeEntityError.js.map +1 -1
- package/error/NestedSetMultipleRootError.js +1 -2
- package/error/NestedSetMultipleRootError.js.map +1 -1
- package/error/NoConnectionForRepositoryError.d.ts +1 -1
- package/error/NoConnectionForRepositoryError.js +4 -5
- package/error/NoConnectionForRepositoryError.js.map +1 -1
- package/error/NoConnectionOptionError.js +1 -2
- package/error/NoConnectionOptionError.js.map +1 -1
- package/error/NoNeedToReleaseEntityManagerError.js +1 -2
- package/error/NoNeedToReleaseEntityManagerError.js.map +1 -1
- package/error/NoVersionOrUpdateDateColumnError.js +1 -2
- package/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
- package/error/OffsetWithoutLimitNotSupportedError.js +1 -2
- package/error/OffsetWithoutLimitNotSupportedError.js.map +1 -1
- package/error/OptimisticLockCanNotBeUsedError.js +1 -2
- package/error/OptimisticLockCanNotBeUsedError.js.map +1 -1
- package/error/OptimisticLockVersionMismatchError.js +1 -2
- package/error/OptimisticLockVersionMismatchError.js.map +1 -1
- package/error/PersistedEntityNotFoundError.js +1 -2
- package/error/PersistedEntityNotFoundError.js.map +1 -1
- package/error/PessimisticLockTransactionRequiredError.js +1 -2
- package/error/PessimisticLockTransactionRequiredError.js.map +1 -1
- package/error/PrimaryColumnCannotBeNullableError.js +1 -2
- package/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
- package/error/QueryFailedError.js +1 -2
- package/error/QueryFailedError.js.map +1 -1
- package/error/QueryRunnerAlreadyReleasedError.js +1 -2
- package/error/QueryRunnerAlreadyReleasedError.js.map +1 -1
- package/error/QueryRunnerProviderAlreadyReleasedError.js +1 -2
- package/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -1
- package/error/RepositoryNotTreeError.d.ts +1 -1
- package/error/RepositoryNotTreeError.js +1 -2
- package/error/RepositoryNotTreeError.js.map +1 -1
- package/error/ReturningStatementNotSupportedError.js +1 -2
- package/error/ReturningStatementNotSupportedError.js.map +1 -1
- package/error/SubjectRemovedAndUpdatedError.d.ts +1 -1
- package/error/SubjectRemovedAndUpdatedError.js +1 -2
- package/error/SubjectRemovedAndUpdatedError.js.map +1 -1
- package/error/SubjectWithoutIdentifierError.d.ts +1 -1
- package/error/SubjectWithoutIdentifierError.js +1 -2
- package/error/SubjectWithoutIdentifierError.js.map +1 -1
- package/error/TransactionAlreadyStartedError.js +1 -2
- package/error/TransactionAlreadyStartedError.js.map +1 -1
- package/error/TransactionNotStartedError.js +1 -2
- package/error/TransactionNotStartedError.js.map +1 -1
- package/error/TreeRepositoryNotSupportedError.d.ts +1 -1
- package/error/TreeRepositoryNotSupportedError.js +1 -2
- package/error/TreeRepositoryNotSupportedError.js.map +1 -1
- package/error/TypeORMError.js +1 -2
- package/error/TypeORMError.js.map +1 -1
- package/error/UpdateValuesMissingError.js +1 -2
- package/error/UpdateValuesMissingError.js.map +1 -1
- package/error/UsingJoinColumnIsNotAllowedError.d.ts +2 -2
- package/error/UsingJoinColumnIsNotAllowedError.js +1 -2
- package/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.d.ts +2 -2
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -2
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
- package/error/UsingJoinTableIsNotAllowedError.d.ts +2 -2
- package/error/UsingJoinTableIsNotAllowedError.js +1 -2
- package/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.d.ts +2 -2
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -2
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
- package/error/index.d.ts +0 -3
- package/error/index.js +1 -5
- package/error/index.js.map +1 -1
- package/find-options/EqualOperator.js +1 -2
- package/find-options/EqualOperator.js.map +1 -1
- package/find-options/FindManyOptions.d.ts +1 -1
- package/find-options/FindManyOptions.js +1 -2
- package/find-options/FindManyOptions.js.map +1 -1
- package/find-options/FindOneOptions.d.ts +7 -14
- package/find-options/FindOneOptions.js +1 -2
- package/find-options/FindOneOptions.js.map +1 -1
- package/find-options/FindOperator.d.ts +3 -3
- package/find-options/FindOperator.js +1 -2
- package/find-options/FindOperator.js.map +1 -1
- package/find-options/FindOperatorType.js +1 -2
- package/find-options/FindOperatorType.js.map +1 -1
- package/find-options/FindOptionsOrder.d.ts +2 -2
- package/find-options/FindOptionsOrder.js +1 -2
- package/find-options/FindOptionsOrder.js.map +1 -1
- package/find-options/FindOptionsRelations.d.ts +2 -9
- package/find-options/FindOptionsRelations.js +1 -2
- package/find-options/FindOptionsRelations.js.map +1 -1
- package/find-options/FindOptionsSelect.d.ts +2 -9
- package/find-options/FindOptionsSelect.js +1 -2
- package/find-options/FindOptionsSelect.js.map +1 -1
- package/find-options/FindOptionsUtils.d.ts +46 -11
- package/find-options/FindOptionsUtils.js +104 -22
- package/find-options/FindOptionsUtils.js.map +1 -1
- package/find-options/FindOptionsWhere.d.ts +4 -4
- package/find-options/FindOptionsWhere.js +1 -2
- package/find-options/FindOptionsWhere.js.map +1 -1
- package/find-options/FindTreeOptions.js +1 -2
- package/find-options/FindTreeOptions.js.map +1 -1
- package/find-options/OrderByCondition.d.ts +0 -2
- package/find-options/OrderByCondition.js +1 -2
- package/find-options/OrderByCondition.js.map +1 -1
- package/find-options/mongodb/MongoFindManyOptions.d.ts +1 -1
- package/find-options/mongodb/MongoFindManyOptions.js +1 -2
- package/find-options/mongodb/MongoFindManyOptions.js.map +1 -1
- package/find-options/mongodb/MongoFindOneOptions.d.ts +2 -2
- package/find-options/mongodb/MongoFindOneOptions.js +1 -2
- package/find-options/mongodb/MongoFindOneOptions.js.map +1 -1
- package/find-options/operator/And.d.ts +4 -0
- package/find-options/operator/And.js +5 -2
- package/find-options/operator/And.js.map +1 -1
- package/find-options/operator/Any.d.ts +1 -0
- package/find-options/operator/Any.js +2 -2
- package/find-options/operator/Any.js.map +1 -1
- package/find-options/operator/ArrayContainedBy.d.ts +1 -0
- package/find-options/operator/ArrayContainedBy.js +2 -2
- package/find-options/operator/ArrayContainedBy.js.map +1 -1
- package/find-options/operator/ArrayContains.d.ts +1 -0
- package/find-options/operator/ArrayContains.js +2 -2
- package/find-options/operator/ArrayContains.js.map +1 -1
- package/find-options/operator/ArrayOverlap.d.ts +1 -0
- package/find-options/operator/ArrayOverlap.js +2 -2
- package/find-options/operator/ArrayOverlap.js.map +1 -1
- package/find-options/operator/Between.d.ts +2 -0
- package/find-options/operator/Between.js +3 -2
- package/find-options/operator/Between.js.map +1 -1
- package/find-options/operator/Equal.d.ts +2 -1
- package/find-options/operator/Equal.js +2 -2
- package/find-options/operator/Equal.js.map +1 -1
- package/find-options/operator/ILike.d.ts +1 -0
- package/find-options/operator/ILike.js +2 -2
- package/find-options/operator/ILike.js.map +1 -1
- package/find-options/operator/In.d.ts +1 -0
- package/find-options/operator/In.js +2 -2
- package/find-options/operator/In.js.map +1 -1
- package/find-options/operator/IsNull.js +1 -2
- package/find-options/operator/IsNull.js.map +1 -1
- package/find-options/operator/JsonContains.d.ts +1 -0
- package/find-options/operator/JsonContains.js +2 -2
- package/find-options/operator/JsonContains.js.map +1 -1
- package/find-options/operator/LessThan.d.ts +1 -0
- package/find-options/operator/LessThan.js +2 -2
- package/find-options/operator/LessThan.js.map +1 -1
- package/find-options/operator/LessThanOrEqual.d.ts +1 -0
- package/find-options/operator/LessThanOrEqual.js +2 -2
- package/find-options/operator/LessThanOrEqual.js.map +1 -1
- package/find-options/operator/Like.d.ts +1 -0
- package/find-options/operator/Like.js +2 -2
- package/find-options/operator/Like.js.map +1 -1
- package/find-options/operator/MoreThan.d.ts +1 -0
- package/find-options/operator/MoreThan.js +2 -2
- package/find-options/operator/MoreThan.js.map +1 -1
- package/find-options/operator/MoreThanOrEqual.d.ts +1 -0
- package/find-options/operator/MoreThanOrEqual.js +2 -2
- package/find-options/operator/MoreThanOrEqual.js.map +1 -1
- package/find-options/operator/Not.d.ts +1 -0
- package/find-options/operator/Not.js +2 -2
- package/find-options/operator/Not.js.map +1 -1
- package/find-options/operator/Or.d.ts +4 -0
- package/find-options/operator/Or.js +5 -2
- package/find-options/operator/Or.js.map +1 -1
- package/find-options/operator/Raw.d.ts +5 -1
- package/find-options/operator/Raw.js +1 -2
- package/find-options/operator/Raw.js.map +1 -1
- package/globals.d.ts +2 -114
- package/globals.js +7 -169
- package/globals.js.map +1 -1
- package/index.d.ts +62 -69
- package/index.js +2 -52
- package/index.js.map +1 -1
- package/index.mjs +0 -80
- package/logger/AbstractLogger.d.ts +26 -3
- package/logger/AbstractLogger.js +25 -3
- package/logger/AbstractLogger.js.map +1 -1
- package/logger/AdvancedConsoleLogger.d.ts +5 -2
- package/logger/AdvancedConsoleLogger.js +4 -2
- package/logger/AdvancedConsoleLogger.js.map +1 -1
- package/logger/DebugLogger.d.ts +6 -2
- package/logger/DebugLogger.js +5 -2
- package/logger/DebugLogger.js.map +1 -1
- package/logger/FileLogger.d.ts +7 -3
- package/logger/FileLogger.js +5 -2
- package/logger/FileLogger.js.map +1 -1
- package/logger/FormattedConsoleLogger.d.ts +5 -2
- package/logger/FormattedConsoleLogger.js +4 -2
- package/logger/FormattedConsoleLogger.js.map +1 -1
- package/logger/Logger.d.ts +1 -1
- package/logger/Logger.js +1 -2
- package/logger/Logger.js.map +1 -1
- package/logger/LoggerFactory.d.ts +4 -2
- package/logger/LoggerFactory.js +3 -2
- package/logger/LoggerFactory.js.map +1 -1
- package/logger/LoggerOptions.d.ts +1 -1
- package/logger/LoggerOptions.js +1 -2
- package/logger/LoggerOptions.js.map +1 -1
- package/logger/SimpleConsoleLogger.d.ts +5 -2
- package/logger/SimpleConsoleLogger.js +4 -2
- package/logger/SimpleConsoleLogger.js.map +1 -1
- package/metadata/CheckMetadata.d.ts +4 -3
- package/metadata/CheckMetadata.js +2 -2
- package/metadata/CheckMetadata.js.map +1 -1
- package/metadata/ColumnMetadata.d.ts +24 -23
- package/metadata/ColumnMetadata.js +64 -57
- package/metadata/ColumnMetadata.js.map +1 -1
- package/metadata/EmbeddedMetadata.d.ts +14 -22
- package/metadata/EmbeddedMetadata.js +4 -15
- package/metadata/EmbeddedMetadata.js.map +1 -1
- package/metadata/EntityListenerMetadata.d.ts +9 -5
- package/metadata/EntityListenerMetadata.js +5 -2
- package/metadata/EntityListenerMetadata.js.map +1 -1
- package/metadata/EntityMetadata.d.ts +60 -35
- package/metadata/EntityMetadata.js +52 -42
- package/metadata/EntityMetadata.js.map +1 -1
- package/metadata/ExclusionMetadata.d.ts +9 -3
- package/metadata/ExclusionMetadata.js +3 -2
- package/metadata/ExclusionMetadata.js.map +1 -1
- package/metadata/ForeignKeyMetadata.d.ts +7 -6
- package/metadata/ForeignKeyMetadata.js +2 -2
- package/metadata/ForeignKeyMetadata.js.map +1 -1
- package/metadata/IndexMetadata.d.ts +13 -5
- package/metadata/IndexMetadata.js +20 -7
- package/metadata/IndexMetadata.js.map +1 -1
- package/metadata/RelationIdMetadata.d.ts +6 -5
- package/metadata/RelationIdMetadata.js +2 -2
- package/metadata/RelationIdMetadata.js.map +1 -1
- package/metadata/RelationMetadata.d.ts +27 -16
- package/metadata/RelationMetadata.js +12 -2
- package/metadata/RelationMetadata.js.map +1 -1
- package/metadata/UniqueMetadata.d.ts +7 -6
- package/metadata/UniqueMetadata.js +12 -6
- package/metadata/UniqueMetadata.js.map +1 -1
- package/metadata/types/ClosureTreeOptions.d.ts +1 -1
- package/metadata/types/ClosureTreeOptions.js +1 -2
- package/metadata/types/ClosureTreeOptions.js.map +1 -1
- package/metadata/types/DeferrableType.js +1 -2
- package/metadata/types/DeferrableType.js.map +1 -1
- package/metadata/types/EventListenerTypes.js +12 -13
- package/metadata/types/EventListenerTypes.js.map +1 -1
- package/metadata/types/OnDeleteType.js +1 -2
- package/metadata/types/OnDeleteType.js.map +1 -1
- package/metadata/types/OnUpdateType.js +1 -2
- package/metadata/types/OnUpdateType.js.map +1 -1
- package/metadata/types/PropertyTypeInFunction.js +1 -2
- package/metadata/types/PropertyTypeInFunction.js.map +1 -1
- package/metadata/types/RelationTypeInFunction.d.ts +1 -1
- package/metadata/types/RelationTypeInFunction.js +1 -2
- package/metadata/types/RelationTypeInFunction.js.map +1 -1
- package/metadata/types/RelationTypes.js +1 -2
- package/metadata/types/RelationTypes.js.map +1 -1
- package/metadata/types/TableTypes.js +1 -2
- package/metadata/types/TableTypes.js.map +1 -1
- package/metadata/types/TreeTypes.js +1 -2
- package/metadata/types/TreeTypes.js.map +1 -1
- package/metadata-args/CheckMetadataArgs.js +1 -2
- package/metadata-args/CheckMetadataArgs.js.map +1 -1
- package/metadata-args/ColumnMetadataArgs.d.ts +2 -2
- package/metadata-args/ColumnMetadataArgs.js +1 -2
- package/metadata-args/ColumnMetadataArgs.js.map +1 -1
- package/metadata-args/DiscriminatorValueMetadataArgs.js +1 -2
- package/metadata-args/DiscriminatorValueMetadataArgs.js.map +1 -1
- package/metadata-args/EmbeddedMetadataArgs.js +1 -2
- package/metadata-args/EmbeddedMetadataArgs.js.map +1 -1
- package/metadata-args/EntityListenerMetadataArgs.d.ts +1 -1
- package/metadata-args/EntityListenerMetadataArgs.js +1 -2
- package/metadata-args/EntityListenerMetadataArgs.js.map +1 -1
- package/metadata-args/EntitySubscriberMetadataArgs.js +1 -2
- package/metadata-args/EntitySubscriberMetadataArgs.js.map +1 -1
- package/metadata-args/ExclusionMetadataArgs.d.ts +5 -0
- package/metadata-args/ExclusionMetadataArgs.js +1 -2
- package/metadata-args/ExclusionMetadataArgs.js.map +1 -1
- package/metadata-args/ForeignKeyMetadataArgs.d.ts +5 -5
- package/metadata-args/ForeignKeyMetadataArgs.js +1 -2
- package/metadata-args/ForeignKeyMetadataArgs.js.map +1 -1
- package/metadata-args/GeneratedMetadataArgs.js +1 -2
- package/metadata-args/GeneratedMetadataArgs.js.map +1 -1
- package/metadata-args/IndexMetadataArgs.d.ts +7 -0
- package/metadata-args/IndexMetadataArgs.js +1 -2
- package/metadata-args/IndexMetadataArgs.js.map +1 -1
- package/metadata-args/InheritanceMetadataArgs.d.ts +1 -1
- package/metadata-args/InheritanceMetadataArgs.js +1 -2
- package/metadata-args/InheritanceMetadataArgs.js.map +1 -1
- package/metadata-args/JoinColumnMetadataArgs.js +1 -2
- package/metadata-args/JoinColumnMetadataArgs.js.map +1 -1
- package/metadata-args/JoinTableMetadataArgs.d.ts +1 -1
- package/metadata-args/JoinTableMetadataArgs.js +1 -2
- package/metadata-args/JoinTableMetadataArgs.js.map +1 -1
- package/metadata-args/MetadataArgsStorage.d.ts +29 -27
- package/metadata-args/MetadataArgsStorage.js +9 -7
- package/metadata-args/MetadataArgsStorage.js.map +1 -1
- package/metadata-args/NamingStrategyMetadataArgs.js +1 -2
- package/metadata-args/NamingStrategyMetadataArgs.js.map +1 -1
- package/metadata-args/RelationIdMetadataArgs.d.ts +1 -1
- package/metadata-args/RelationIdMetadataArgs.js +1 -2
- package/metadata-args/RelationIdMetadataArgs.js.map +1 -1
- package/metadata-args/RelationMetadataArgs.d.ts +4 -4
- package/metadata-args/RelationMetadataArgs.js +1 -2
- package/metadata-args/RelationMetadataArgs.js.map +1 -1
- package/metadata-args/TableMetadataArgs.d.ts +5 -4
- package/metadata-args/TableMetadataArgs.js +1 -2
- package/metadata-args/TableMetadataArgs.js.map +1 -1
- package/metadata-args/TransactionEntityMetadataArgs.d.ts +1 -1
- package/metadata-args/TransactionEntityMetadataArgs.js +1 -2
- package/metadata-args/TransactionEntityMetadataArgs.js.map +1 -1
- package/metadata-args/TransactionRepositoryMetadataArgs.d.ts +1 -1
- package/metadata-args/TransactionRepositoryMetadataArgs.js +1 -2
- package/metadata-args/TransactionRepositoryMetadataArgs.js.map +1 -1
- package/metadata-args/TreeMetadataArgs.d.ts +2 -2
- package/metadata-args/TreeMetadataArgs.js +1 -2
- package/metadata-args/TreeMetadataArgs.js.map +1 -1
- package/metadata-args/UniqueMetadataArgs.d.ts +1 -1
- package/metadata-args/UniqueMetadataArgs.js +1 -2
- package/metadata-args/UniqueMetadataArgs.js.map +1 -1
- package/metadata-args/types/ColumnMode.js +1 -2
- package/metadata-args/types/ColumnMode.js.map +1 -1
- package/metadata-builder/ClosureJunctionEntityMetadataBuilder.d.ts +4 -3
- package/metadata-builder/ClosureJunctionEntityMetadataBuilder.js +10 -15
- package/metadata-builder/ClosureJunctionEntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/EntityMetadataBuilder.d.ts +16 -6
- package/metadata-builder/EntityMetadataBuilder.js +50 -61
- package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/EntityMetadataValidator.d.ts +9 -2
- package/metadata-builder/EntityMetadataValidator.js +8 -7
- package/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/metadata-builder/JunctionEntityMetadataBuilder.d.ts +11 -5
- package/metadata-builder/JunctionEntityMetadataBuilder.js +33 -36
- package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/MetadataUtils.d.ts +5 -0
- package/metadata-builder/MetadataUtils.js +6 -2
- package/metadata-builder/MetadataUtils.js.map +1 -1
- package/metadata-builder/RelationJoinColumnBuilder.d.ts +24 -12
- package/metadata-builder/RelationJoinColumnBuilder.js +30 -22
- package/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/migration/Migration.d.ts +1 -1
- package/migration/Migration.js +1 -2
- package/migration/Migration.js.map +1 -1
- package/migration/MigrationExecutor.d.ts +16 -9
- package/migration/MigrationExecutor.js +76 -64
- package/migration/MigrationExecutor.js.map +1 -1
- package/migration/MigrationInterface.d.ts +1 -1
- package/migration/MigrationInterface.js +1 -2
- package/migration/MigrationInterface.js.map +1 -1
- package/naming-strategy/DefaultNamingStrategy.d.ts +5 -5
- package/naming-strategy/DefaultNamingStrategy.js +4 -5
- package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/naming-strategy/LegacyOracleNamingStrategy.d.ts +1 -1
- package/naming-strategy/LegacyOracleNamingStrategy.js +1 -2
- package/naming-strategy/LegacyOracleNamingStrategy.js.map +1 -1
- package/naming-strategy/NamingStrategyInterface.d.ts +3 -5
- package/naming-strategy/NamingStrategyInterface.js +1 -2
- package/naming-strategy/NamingStrategyInterface.js.map +1 -1
- package/package.json +181 -1
- package/persistence/EntityPersistExecutor.d.ts +7 -7
- package/persistence/EntityPersistExecutor.js +6 -7
- package/persistence/EntityPersistExecutor.js.map +1 -1
- package/persistence/Subject.d.ts +5 -5
- package/persistence/Subject.js +3 -3
- package/persistence/Subject.js.map +1 -1
- package/persistence/SubjectChangeMap.d.ts +3 -3
- package/persistence/SubjectChangeMap.js +1 -2
- package/persistence/SubjectChangeMap.js.map +1 -1
- package/persistence/SubjectChangedColumnsComputer.d.ts +5 -1
- package/persistence/SubjectChangedColumnsComputer.js +27 -19
- package/persistence/SubjectChangedColumnsComputer.js.map +1 -1
- package/persistence/SubjectDatabaseEntityLoader.d.ts +3 -2
- package/persistence/SubjectDatabaseEntityLoader.js +8 -5
- package/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
- package/persistence/SubjectExecutor.d.ts +7 -4
- package/persistence/SubjectExecutor.js +21 -11
- package/persistence/SubjectExecutor.js.map +1 -1
- package/persistence/SubjectTopologicalSorter.d.ts +6 -2
- package/persistence/SubjectTopologicalSorter.js +15 -2
- package/persistence/SubjectTopologicalSorter.js.map +1 -1
- package/persistence/subject-builder/CascadesSubjectBuilder.d.ts +5 -1
- package/persistence/subject-builder/CascadesSubjectBuilder.js +5 -2
- package/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
- package/persistence/subject-builder/ManyToManySubjectBuilder.d.ts +16 -6
- package/persistence/subject-builder/ManyToManySubjectBuilder.js +15 -6
- package/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
- package/persistence/subject-builder/OneToManySubjectBuilder.d.ts +14 -7
- package/persistence/subject-builder/OneToManySubjectBuilder.js +14 -8
- package/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
- package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.d.ts +14 -7
- package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +14 -8
- package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
- package/persistence/tree/ClosureSubjectExecutor.d.ts +6 -2
- package/persistence/tree/ClosureSubjectExecutor.js +14 -11
- package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/persistence/tree/MaterializedPathSubjectExecutor.d.ts +4 -2
- package/persistence/tree/MaterializedPathSubjectExecutor.js +5 -3
- package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/persistence/tree/NestedSetSubjectExecutor.d.ts +10 -4
- package/persistence/tree/NestedSetSubjectExecutor.js +13 -8
- package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
- package/platform/PlatformTools.d.ts +12 -11
- package/platform/PlatformTools.js +17 -29
- package/platform/PlatformTools.js.map +1 -1
- package/query-builder/Alias.d.ts +1 -1
- package/query-builder/Alias.js +1 -2
- package/query-builder/Alias.js.map +1 -1
- package/query-builder/Brackets.d.ts +2 -1
- package/query-builder/Brackets.js +2 -2
- package/query-builder/Brackets.js.map +1 -1
- package/query-builder/DeleteQueryBuilder.d.ts +17 -6
- package/query-builder/DeleteQueryBuilder.js +17 -5
- package/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/query-builder/InsertOrUpdateOptions.d.ts +3 -3
- package/query-builder/InsertOrUpdateOptions.js +1 -2
- package/query-builder/InsertOrUpdateOptions.js.map +1 -1
- package/query-builder/InsertQueryBuilder.d.ts +34 -29
- package/query-builder/InsertQueryBuilder.js +289 -160
- package/query-builder/InsertQueryBuilder.js.map +1 -1
- package/query-builder/JoinAttribute.d.ts +7 -7
- package/query-builder/JoinAttribute.js +9 -21
- package/query-builder/JoinAttribute.js.map +1 -1
- package/query-builder/JoinOptions.js +1 -2
- package/query-builder/JoinOptions.js.map +1 -1
- package/query-builder/NotBrackets.js +1 -2
- package/query-builder/NotBrackets.js.map +1 -1
- package/query-builder/QueryBuilder.d.ts +51 -33
- package/query-builder/QueryBuilder.js +81 -92
- package/query-builder/QueryBuilder.js.map +1 -1
- package/query-builder/QueryBuilderCte.js +1 -2
- package/query-builder/QueryBuilderCte.js.map +1 -1
- package/query-builder/QueryBuilderUtils.d.ts +1 -0
- package/query-builder/QueryBuilderUtils.js +2 -2
- package/query-builder/QueryBuilderUtils.js.map +1 -1
- package/query-builder/QueryExpressionMap.d.ts +29 -30
- package/query-builder/QueryExpressionMap.js +22 -29
- package/query-builder/QueryExpressionMap.js.map +1 -1
- package/query-builder/QueryPartialEntity.d.ts +1 -1
- package/query-builder/QueryPartialEntity.js +1 -2
- package/query-builder/QueryPartialEntity.js.map +1 -1
- package/query-builder/RelationIdLoader.d.ts +39 -11
- package/query-builder/RelationIdLoader.js +100 -63
- package/query-builder/RelationIdLoader.js.map +1 -1
- package/query-builder/RelationLoader.d.ts +49 -14
- package/query-builder/RelationLoader.js +80 -26
- package/query-builder/RelationLoader.js.map +1 -1
- package/query-builder/RelationQueryBuilder.d.ts +7 -11
- package/query-builder/RelationQueryBuilder.js +8 -13
- package/query-builder/RelationQueryBuilder.js.map +1 -1
- package/query-builder/RelationRemover.d.ts +3 -2
- package/query-builder/RelationRemover.js +2 -2
- package/query-builder/RelationRemover.js.map +1 -1
- package/query-builder/RelationUpdater.d.ts +3 -2
- package/query-builder/RelationUpdater.js +4 -4
- package/query-builder/RelationUpdater.js.map +1 -1
- package/query-builder/ReturningOption.d.ts +4 -0
- package/query-builder/ReturningOption.js +3 -0
- package/query-builder/ReturningOption.js.map +1 -0
- package/query-builder/ReturningResultsEntityUpdator.d.ts +10 -6
- package/query-builder/ReturningResultsEntityUpdator.js +13 -10
- package/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
- package/query-builder/SelectQuery.js +1 -2
- package/query-builder/SelectQuery.js.map +1 -1
- package/query-builder/SelectQueryBuilder.d.ts +71 -33
- package/query-builder/SelectQueryBuilder.js +337 -261
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/SelectQueryBuilderOption.js +1 -2
- package/query-builder/SelectQueryBuilderOption.js.map +1 -1
- package/query-builder/SoftDeleteQueryBuilder.d.ts +24 -7
- package/query-builder/SoftDeleteQueryBuilder.js +35 -9
- package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/query-builder/UpdateQueryBuilder.d.ts +23 -7
- package/query-builder/UpdateQueryBuilder.js +52 -30
- package/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/query-builder/WhereClause.js +1 -2
- package/query-builder/WhereClause.js.map +1 -1
- package/query-builder/WhereExpressionBuilder.d.ts +2 -7
- package/query-builder/WhereExpressionBuilder.js +1 -2
- package/query-builder/WhereExpressionBuilder.js.map +1 -1
- package/query-builder/index.d.ts +3 -0
- package/query-builder/index.js +4 -2
- package/query-builder/index.js.map +1 -1
- package/query-builder/relation-id/RelationIdAttribute.d.ts +4 -4
- package/query-builder/relation-id/RelationIdAttribute.js +1 -2
- package/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
- package/query-builder/relation-id/RelationIdLoadResult.d.ts +1 -1
- package/query-builder/relation-id/RelationIdLoadResult.js +1 -2
- package/query-builder/relation-id/RelationIdLoadResult.js.map +1 -1
- package/query-builder/relation-id/RelationIdLoader.d.ts +6 -6
- package/query-builder/relation-id/RelationIdLoader.js +12 -13
- package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.d.ts +1 -1
- package/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +1 -2
- package/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js.map +1 -1
- package/query-builder/result/DeleteResult.d.ts +1 -1
- package/query-builder/result/DeleteResult.js +1 -2
- package/query-builder/result/DeleteResult.js.map +1 -1
- package/query-builder/result/InsertResult.d.ts +2 -2
- package/query-builder/result/InsertResult.js +1 -2
- package/query-builder/result/InsertResult.js.map +1 -1
- package/query-builder/result/UpdateResult.d.ts +2 -2
- package/query-builder/result/UpdateResult.js +1 -2
- package/query-builder/result/UpdateResult.js.map +1 -1
- package/query-builder/transformer/DocumentToEntityTransformer.d.ts +3 -3
- package/query-builder/transformer/DocumentToEntityTransformer.js +2 -73
- package/query-builder/transformer/DocumentToEntityTransformer.js.map +1 -1
- package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.d.ts +3 -3
- package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +17 -7
- package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
- package/query-builder/transformer/PlainObjectToNewEntityTransformer.d.ts +6 -2
- package/query-builder/transformer/PlainObjectToNewEntityTransformer.js +5 -2
- package/query-builder/transformer/PlainObjectToNewEntityTransformer.js.map +1 -1
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +22 -11
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +47 -53
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/query-runner/BaseQueryRunner.d.ts +79 -16
- package/query-runner/BaseQueryRunner.js +96 -34
- package/query-runner/BaseQueryRunner.js.map +1 -1
- package/query-runner/QueryLock.js +4 -3
- package/query-runner/QueryLock.js.map +1 -1
- package/query-runner/QueryResult.js +1 -2
- package/query-runner/QueryResult.js.map +1 -1
- package/query-runner/QueryRunner.d.ts +52 -56
- package/query-runner/QueryRunner.js +1 -2
- package/query-runner/QueryRunner.js.map +1 -1
- package/repository/BaseEntity.d.ts +64 -44
- package/repository/BaseEntity.js +54 -31
- package/repository/BaseEntity.js.map +1 -1
- package/repository/EntityId.d.ts +1 -1
- package/repository/EntityId.js +1 -2
- package/repository/EntityId.js.map +1 -1
- package/repository/FindTreesOptions.js +1 -2
- package/repository/FindTreesOptions.js.map +1 -1
- package/repository/MongoRepository.d.ts +79 -29
- package/repository/MongoRepository.js +71 -26
- package/repository/MongoRepository.js.map +1 -1
- package/repository/RemoveOptions.js +1 -2
- package/repository/RemoveOptions.js.map +1 -1
- package/repository/Repository.d.ts +75 -52
- package/repository/Repository.js +69 -47
- package/repository/Repository.js.map +1 -1
- package/repository/SaveOptions.js +1 -2
- package/repository/SaveOptions.js.map +1 -1
- package/repository/TreeRepository.d.ts +21 -4
- package/repository/TreeRepository.js +27 -11
- package/repository/TreeRepository.js.map +1 -1
- package/repository/UpdateOptions.d.ts +11 -0
- package/repository/UpdateOptions.js +3 -0
- package/repository/UpdateOptions.js.map +1 -0
- package/repository/UpsertOptions.d.ts +8 -2
- package/repository/UpsertOptions.js +1 -2
- package/repository/UpsertOptions.js.map +1 -1
- package/schema-builder/MongoSchemaBuilder.d.ts +4 -4
- package/schema-builder/MongoSchemaBuilder.js +5 -6
- package/schema-builder/MongoSchemaBuilder.js.map +1 -1
- package/schema-builder/RdbmsSchemaBuilder.d.ts +29 -9
- package/schema-builder/RdbmsSchemaBuilder.js +176 -158
- package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/schema-builder/SchemaBuilder.d.ts +1 -1
- package/schema-builder/SchemaBuilder.js +1 -2
- package/schema-builder/SchemaBuilder.js.map +1 -1
- package/schema-builder/options/TableCheckOptions.js +1 -2
- package/schema-builder/options/TableCheckOptions.js.map +1 -1
- package/schema-builder/options/TableColumnOptions.d.ts +0 -10
- package/schema-builder/options/TableColumnOptions.js +1 -2
- package/schema-builder/options/TableColumnOptions.js.map +1 -1
- package/schema-builder/options/TableExclusionOptions.d.ts +5 -0
- package/schema-builder/options/TableExclusionOptions.js +1 -2
- package/schema-builder/options/TableExclusionOptions.js.map +1 -1
- package/schema-builder/options/TableForeignKeyOptions.js +1 -2
- package/schema-builder/options/TableForeignKeyOptions.js.map +1 -1
- package/schema-builder/options/TableIndexOptions.d.ts +7 -0
- package/schema-builder/options/TableIndexOptions.js +1 -2
- package/schema-builder/options/TableIndexOptions.js.map +1 -1
- package/schema-builder/options/TableIndexTypes.d.ts +1 -0
- package/schema-builder/options/TableIndexTypes.js +3 -0
- package/schema-builder/options/TableIndexTypes.js.map +1 -0
- package/schema-builder/options/TableOptions.d.ts +6 -6
- package/schema-builder/options/TableOptions.js +1 -2
- package/schema-builder/options/TableOptions.js.map +1 -1
- package/schema-builder/options/TableUniqueOptions.js +1 -2
- package/schema-builder/options/TableUniqueOptions.js.map +1 -1
- package/schema-builder/options/ViewOptions.d.ts +3 -2
- package/schema-builder/options/ViewOptions.js +1 -2
- package/schema-builder/options/ViewOptions.js.map +1 -1
- package/schema-builder/table/Table.d.ts +23 -3
- package/schema-builder/table/Table.js +21 -2
- package/schema-builder/table/Table.js.map +1 -1
- package/schema-builder/table/TableCheck.d.ts +3 -2
- package/schema-builder/table/TableCheck.js +2 -2
- package/schema-builder/table/TableCheck.js.map +1 -1
- package/schema-builder/table/TableColumn.d.ts +1 -11
- package/schema-builder/table/TableColumn.js +2 -12
- package/schema-builder/table/TableColumn.js.map +1 -1
- package/schema-builder/table/TableExclusion.d.ts +8 -2
- package/schema-builder/table/TableExclusion.js +5 -2
- package/schema-builder/table/TableExclusion.js.map +1 -1
- package/schema-builder/table/TableForeignKey.d.ts +5 -3
- package/schema-builder/table/TableForeignKey.js +3 -2
- package/schema-builder/table/TableForeignKey.js.map +1 -1
- package/schema-builder/table/TableIndex.d.ts +10 -2
- package/schema-builder/table/TableIndex.js +5 -2
- package/schema-builder/table/TableIndex.js.map +1 -1
- package/schema-builder/table/TableUnique.d.ts +3 -2
- package/schema-builder/table/TableUnique.js +2 -2
- package/schema-builder/table/TableUnique.js.map +1 -1
- package/schema-builder/util/TableUtils.d.ts +3 -3
- package/schema-builder/util/TableUtils.js +1 -4
- package/schema-builder/util/TableUtils.js.map +1 -1
- package/schema-builder/util/ViewUtils.d.ts +3 -1
- package/schema-builder/util/ViewUtils.js +3 -2
- package/schema-builder/util/ViewUtils.js.map +1 -1
- package/schema-builder/view/View.d.ts +11 -3
- package/schema-builder/view/View.js +5 -2
- package/schema-builder/view/View.js.map +1 -1
- package/subscriber/Broadcaster.d.ts +76 -10
- package/subscriber/Broadcaster.js +148 -66
- package/subscriber/Broadcaster.js.map +1 -1
- package/subscriber/BroadcasterResult.js +1 -2
- package/subscriber/BroadcasterResult.js.map +1 -1
- package/subscriber/EntitySubscriberInterface.d.ts +12 -12
- package/subscriber/EntitySubscriberInterface.js +1 -2
- package/subscriber/EntitySubscriberInterface.js.map +1 -1
- package/subscriber/event/BaseEvent.d.ts +27 -0
- package/subscriber/event/BaseEvent.js +3 -0
- package/subscriber/event/BaseEvent.js.map +1 -0
- package/subscriber/event/InsertEvent.d.ts +4 -20
- package/subscriber/event/InsertEvent.js +1 -2
- package/subscriber/event/InsertEvent.js.map +1 -1
- package/subscriber/event/LoadEvent.d.ts +3 -19
- package/subscriber/event/LoadEvent.js +1 -2
- package/subscriber/event/LoadEvent.js.map +1 -1
- package/subscriber/event/QueryEvent.d.ts +4 -20
- package/subscriber/event/QueryEvent.js +1 -2
- package/subscriber/event/QueryEvent.js.map +1 -1
- package/subscriber/event/RecoverEvent.d.ts +1 -1
- package/subscriber/event/RecoverEvent.js +1 -2
- package/subscriber/event/RecoverEvent.js.map +1 -1
- package/subscriber/event/RemoveEvent.d.ts +3 -19
- package/subscriber/event/RemoveEvent.js +1 -2
- package/subscriber/event/RemoveEvent.js.map +1 -1
- package/subscriber/event/SoftRemoveEvent.d.ts +1 -1
- package/subscriber/event/SoftRemoveEvent.js +1 -2
- package/subscriber/event/SoftRemoveEvent.js.map +1 -1
- package/subscriber/event/TransactionCommitEvent.d.ts +2 -18
- package/subscriber/event/TransactionCommitEvent.js +1 -2
- package/subscriber/event/TransactionCommitEvent.js.map +1 -1
- package/subscriber/event/TransactionRollbackEvent.d.ts +2 -18
- package/subscriber/event/TransactionRollbackEvent.js +1 -2
- package/subscriber/event/TransactionRollbackEvent.js.map +1 -1
- package/subscriber/event/TransactionStartEvent.d.ts +2 -18
- package/subscriber/event/TransactionStartEvent.js +1 -2
- package/subscriber/event/TransactionStartEvent.js.map +1 -1
- package/subscriber/event/UpdateEvent.d.ts +6 -22
- package/subscriber/event/UpdateEvent.js +1 -2
- package/subscriber/event/UpdateEvent.js.map +1 -1
- package/typeorm-class-transformer-shim.js +0 -5
- package/typeorm-model-shim.js +0 -10
- package/util/ApplyValueTransformers.d.ts +1 -1
- package/util/ApplyValueTransformers.js +6 -2
- package/util/ApplyValueTransformers.js.map +1 -1
- package/util/DateUtils.d.ts +36 -1
- package/util/DateUtils.js +55 -8
- package/util/DateUtils.js.map +1 -1
- package/util/DepGraph.d.ts +16 -0
- package/util/DepGraph.js +17 -3
- package/util/DepGraph.js.map +1 -1
- package/util/DirectoryExportedClassesLoader.d.ts +4 -5
- package/util/DirectoryExportedClassesLoader.js +12 -18
- package/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/util/ImportUtils.d.ts +4 -0
- package/util/ImportUtils.js +14 -2
- package/util/ImportUtils.js.map +1 -1
- package/util/InstanceChecker.d.ts +2 -2
- package/util/InstanceChecker.js +1 -2
- package/util/InstanceChecker.js.map +1 -1
- package/util/ObjectUtils.d.ts +4 -1
- package/util/ObjectUtils.js +4 -2
- package/util/ObjectUtils.js.map +1 -1
- package/util/OrmUtils.d.ts +43 -4
- package/util/OrmUtils.js +114 -19
- package/util/OrmUtils.js.map +1 -1
- package/util/PathUtils.d.ts +6 -0
- package/util/PathUtils.js +7 -2
- package/util/PathUtils.js.map +1 -1
- package/util/RandomGenerator.d.ts +9 -0
- package/util/RandomGenerator.js +102 -68
- package/util/RandomGenerator.js.map +1 -1
- package/util/SqlTagUtils.d.ts +8 -1
- package/util/SqlTagUtils.js +8 -2
- package/util/SqlTagUtils.js.map +1 -1
- package/util/StringUtils.d.ts +13 -8
- package/util/StringUtils.js +36 -17
- package/util/StringUtils.js.map +1 -1
- package/util/TreeRepositoryUtils.d.ts +3 -3
- package/util/TreeRepositoryUtils.js +3 -4
- package/util/TreeRepositoryUtils.js.map +1 -1
- package/util/Uint8ArrayUtils.d.ts +3 -0
- package/util/Uint8ArrayUtils.js +45 -0
- package/util/Uint8ArrayUtils.js.map +1 -0
- package/util/VersionUtils.js +5 -2
- package/util/VersionUtils.js.map +1 -1
- package/util/escapeRegExp.js +1 -2
- package/util/escapeRegExp.js.map +1 -1
- package/browser/connection/BaseConnectionOptions.d.ts +0 -7
- package/browser/connection/BaseConnectionOptions.js +0 -3
- package/browser/connection/BaseConnectionOptions.js.map +0 -1
- package/browser/connection/Connection.d.ts +0 -10
- package/browser/connection/Connection.js +0 -12
- package/browser/connection/Connection.js.map +0 -1
- package/browser/connection/ConnectionManager.d.ts +0 -33
- package/browser/connection/ConnectionManager.js +0 -62
- package/browser/connection/ConnectionManager.js.map +0 -1
- package/browser/connection/ConnectionOptions.d.ts +0 -9
- package/browser/connection/ConnectionOptions.js +0 -3
- package/browser/connection/ConnectionOptions.js.map +0 -1
- package/browser/connection/options-reader/ConnectionOptionsEnvReader.d.ts +0 -30
- package/browser/connection/options-reader/ConnectionOptionsEnvReader.js +0 -107
- package/browser/connection/options-reader/ConnectionOptionsEnvReader.js.map +0 -1
- package/browser/container.d.ts +0 -39
- package/browser/container.js +0 -56
- package/browser/container.js.map +0 -1
- package/browser/decorator/EntityRepository.d.ts +0 -9
- package/browser/decorator/EntityRepository.js +0 -18
- package/browser/decorator/EntityRepository.js.map +0 -1
- package/browser/decorator/relations/RelationCount.d.ts +0 -8
- package/browser/decorator/relations/RelationCount.js +0 -20
- package/browser/decorator/relations/RelationCount.js.map +0 -1
- package/browser/driver/aurora-mysql/AuroraMysqlConnection.d.ts +0 -13
- package/browser/driver/aurora-mysql/AuroraMysqlConnection.js +0 -15
- package/browser/driver/aurora-mysql/AuroraMysqlConnection.js.map +0 -1
- package/browser/driver/aurora-mysql/AuroraMysqlConnectionOptions.js +0 -3
- package/browser/driver/aurora-mysql/AuroraMysqlConnectionOptions.js.map +0 -1
- package/browser/driver/aurora-postgres/AuroraPostgresConnectionOptions.js +0 -3
- package/browser/driver/aurora-postgres/AuroraPostgresConnectionOptions.js.map +0 -1
- package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js +0 -3
- package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +0 -1
- package/browser/driver/capacitor/CapacitorConnectionOptions.js +0 -3
- package/browser/driver/capacitor/CapacitorConnectionOptions.js.map +0 -1
- package/browser/driver/cockroachdb/CockroachConnectionOptions.js +0 -3
- package/browser/driver/cockroachdb/CockroachConnectionOptions.js.map +0 -1
- package/browser/driver/cordova/CordovaConnectionOptions.js +0 -3
- package/browser/driver/cordova/CordovaConnectionOptions.js.map +0 -1
- package/browser/driver/expo/ExpoConnectionOptions.js +0 -3
- package/browser/driver/expo/ExpoConnectionOptions.js.map +0 -1
- package/browser/driver/expo/ExpoDriverFactory.d.ts +0 -9
- package/browser/driver/expo/ExpoDriverFactory.js +0 -18
- package/browser/driver/expo/ExpoDriverFactory.js.map +0 -1
- package/browser/driver/expo/legacy/ExpoLegacyDriver.d.ts +0 -21
- package/browser/driver/expo/legacy/ExpoLegacyDriver.js +0 -71
- package/browser/driver/expo/legacy/ExpoLegacyDriver.js.map +0 -1
- package/browser/driver/expo/legacy/ExpoLegacyQueryRunner.d.ts +0 -57
- package/browser/driver/expo/legacy/ExpoLegacyQueryRunner.js +0 -165
- package/browser/driver/expo/legacy/ExpoLegacyQueryRunner.js.map +0 -1
- package/browser/driver/mongodb/MongoConnectionOptions.js +0 -3
- package/browser/driver/mongodb/MongoConnectionOptions.js.map +0 -1
- package/browser/driver/mysql/MysqlConnectionOptions.js +0 -3
- package/browser/driver/mysql/MysqlConnectionOptions.js.map +0 -1
- package/browser/driver/nativescript/NativescriptConnectionOptions.js +0 -3
- package/browser/driver/nativescript/NativescriptConnectionOptions.js.map +0 -1
- package/browser/driver/oracle/OracleConnectionOptions.js +0 -3
- package/browser/driver/oracle/OracleConnectionOptions.js.map +0 -1
- package/browser/driver/postgres/PostgresConnectionOptions.js +0 -3
- package/browser/driver/postgres/PostgresConnectionOptions.js.map +0 -1
- package/browser/driver/react-native/ReactNativeConnectionOptions.js +0 -3
- package/browser/driver/react-native/ReactNativeConnectionOptions.js.map +0 -1
- package/browser/driver/sap/SapConnectionOptions.js +0 -3
- package/browser/driver/sap/SapConnectionOptions.js.map +0 -1
- package/browser/driver/spanner/SpannerConnectionOptions.js +0 -3
- package/browser/driver/spanner/SpannerConnectionOptions.js.map +0 -1
- package/browser/driver/sqlite/SqliteConnectionOptions.d.ts +0 -55
- package/browser/driver/sqlite/SqliteConnectionOptions.js +0 -3
- package/browser/driver/sqlite/SqliteConnectionOptions.js.map +0 -1
- package/browser/driver/sqlite/SqliteDriver.d.ts +0 -59
- package/browser/driver/sqlite/SqliteDriver.js +0 -169
- package/browser/driver/sqlite/SqliteDriver.js.map +0 -1
- package/browser/driver/sqlite/SqliteQueryRunner.d.ts +0 -27
- package/browser/driver/sqlite/SqliteQueryRunner.js +0 -120
- package/browser/driver/sqlite/SqliteQueryRunner.js.map +0 -1
- package/browser/driver/sqljs/SqljsConnectionOptions.js +0 -3
- package/browser/driver/sqljs/SqljsConnectionOptions.js.map +0 -1
- package/browser/driver/sqlserver/SqlServerConnectionOptions.js +0 -3
- package/browser/driver/sqlserver/SqlServerConnectionOptions.js.map +0 -1
- package/browser/error/CustomRepositoryCannotInheritRepositoryError.d.ts +0 -7
- package/browser/error/CustomRepositoryCannotInheritRepositoryError.js +0 -14
- package/browser/error/CustomRepositoryCannotInheritRepositoryError.js.map +0 -1
- package/browser/error/CustomRepositoryDoesNotHaveEntityError.d.ts +0 -7
- package/browser/error/CustomRepositoryDoesNotHaveEntityError.js +0 -14
- package/browser/error/CustomRepositoryDoesNotHaveEntityError.js.map +0 -1
- package/browser/error/CustomRepositoryNotFoundError.d.ts +0 -7
- package/browser/error/CustomRepositoryNotFoundError.js +0 -14
- package/browser/error/CustomRepositoryNotFoundError.js.map +0 -1
- package/browser/find-options/JoinOptions.d.ts +0 -76
- package/browser/find-options/JoinOptions.js +0 -3
- package/browser/find-options/JoinOptions.js.map +0 -1
- package/browser/metadata/RelationCountMetadata.d.ts +0 -46
- package/browser/metadata/RelationCountMetadata.js +0 -35
- package/browser/metadata/RelationCountMetadata.js.map +0 -1
- package/browser/metadata-args/EntityRepositoryMetadataArgs.d.ts +0 -14
- package/browser/metadata-args/EntityRepositoryMetadataArgs.js +0 -3
- package/browser/metadata-args/EntityRepositoryMetadataArgs.js.map +0 -1
- package/browser/metadata-args/RelationCountMetadataArgs.d.ts +0 -26
- package/browser/metadata-args/RelationCountMetadataArgs.js +0 -3
- package/browser/metadata-args/RelationCountMetadataArgs.js.map +0 -1
- package/browser/query-builder/relation-count/RelationCountAttribute.d.ts +0 -53
- package/browser/query-builder/relation-count/RelationCountAttribute.js +0 -76
- package/browser/query-builder/relation-count/RelationCountAttribute.js.map +0 -1
- package/browser/query-builder/relation-count/RelationCountLoadResult.d.ts +0 -8
- package/browser/query-builder/relation-count/RelationCountLoadResult.js +0 -3
- package/browser/query-builder/relation-count/RelationCountLoadResult.js.map +0 -1
- package/browser/query-builder/relation-count/RelationCountLoader.d.ts +0 -11
- package/browser/query-builder/relation-count/RelationCountLoader.js +0 -164
- package/browser/query-builder/relation-count/RelationCountLoader.js.map +0 -1
- package/browser/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.d.ts +0 -7
- package/browser/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js +0 -51
- package/browser/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js.map +0 -1
- package/browser/repository/AbstractRepository.d.ts +0 -51
- package/browser/repository/AbstractRepository.js +0 -88
- package/browser/repository/AbstractRepository.js.map +0 -1
- package/connection/BaseConnectionOptions.d.ts +0 -7
- package/connection/BaseConnectionOptions.js.map +0 -1
- package/connection/Connection.d.ts +0 -10
- package/connection/Connection.js +0 -16
- package/connection/Connection.js.map +0 -1
- package/connection/ConnectionManager.d.ts +0 -33
- package/connection/ConnectionManager.js +0 -66
- package/connection/ConnectionManager.js.map +0 -1
- package/connection/ConnectionOptions.d.ts +0 -9
- package/connection/ConnectionOptions.js.map +0 -1
- package/connection/options-reader/ConnectionOptionsEnvReader.d.ts +0 -30
- package/connection/options-reader/ConnectionOptionsEnvReader.js +0 -111
- package/connection/options-reader/ConnectionOptionsEnvReader.js.map +0 -1
- package/container.d.ts +0 -39
- package/container.js +0 -60
- package/container.js.map +0 -1
- package/decorator/EntityRepository.d.ts +0 -9
- package/decorator/EntityRepository.js +0 -21
- package/decorator/EntityRepository.js.map +0 -1
- package/decorator/relations/RelationCount.d.ts +0 -8
- package/decorator/relations/RelationCount.js +0 -23
- package/decorator/relations/RelationCount.js.map +0 -1
- package/driver/aurora-mysql/AuroraMysqlConnection.d.ts +0 -13
- package/driver/aurora-mysql/AuroraMysqlConnection.js +0 -19
- package/driver/aurora-mysql/AuroraMysqlConnection.js.map +0 -1
- package/driver/aurora-mysql/AuroraMysqlConnectionOptions.js.map +0 -1
- package/driver/aurora-postgres/AuroraPostgresConnectionOptions.js +0 -4
- package/driver/aurora-postgres/AuroraPostgresConnectionOptions.js.map +0 -1
- package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js +0 -4
- package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +0 -1
- package/driver/capacitor/CapacitorConnectionOptions.js.map +0 -1
- package/driver/cockroachdb/CockroachConnectionOptions.js.map +0 -1
- package/driver/cordova/CordovaConnectionOptions.js.map +0 -1
- package/driver/expo/ExpoConnectionOptions.js.map +0 -1
- package/driver/expo/ExpoDriverFactory.d.ts +0 -9
- package/driver/expo/ExpoDriverFactory.js +0 -22
- package/driver/expo/ExpoDriverFactory.js.map +0 -1
- package/driver/expo/legacy/ExpoLegacyDriver.d.ts +0 -21
- package/driver/expo/legacy/ExpoLegacyDriver.js +0 -75
- package/driver/expo/legacy/ExpoLegacyDriver.js.map +0 -1
- package/driver/expo/legacy/ExpoLegacyQueryRunner.d.ts +0 -57
- package/driver/expo/legacy/ExpoLegacyQueryRunner.js +0 -169
- package/driver/expo/legacy/ExpoLegacyQueryRunner.js.map +0 -1
- package/driver/mongodb/MongoConnectionOptions.js.map +0 -1
- package/driver/mysql/MysqlConnectionOptions.js +0 -4
- package/driver/mysql/MysqlConnectionOptions.js.map +0 -1
- package/driver/nativescript/NativescriptConnectionOptions.js +0 -4
- package/driver/nativescript/NativescriptConnectionOptions.js.map +0 -1
- package/driver/oracle/OracleConnectionOptions.js +0 -4
- package/driver/oracle/OracleConnectionOptions.js.map +0 -1
- package/driver/postgres/PostgresConnectionOptions.js +0 -4
- package/driver/postgres/PostgresConnectionOptions.js.map +0 -1
- package/driver/react-native/ReactNativeConnectionOptions.js +0 -4
- package/driver/react-native/ReactNativeConnectionOptions.js.map +0 -1
- package/driver/sap/SapConnectionOptions.js.map +0 -1
- package/driver/spanner/SpannerConnectionOptions.js +0 -4
- package/driver/spanner/SpannerConnectionOptions.js.map +0 -1
- package/driver/sqlite/SqliteConnectionOptions.d.ts +0 -55
- package/driver/sqlite/SqliteConnectionOptions.js +0 -4
- package/driver/sqlite/SqliteConnectionOptions.js.map +0 -1
- package/driver/sqlite/SqliteDriver.d.ts +0 -59
- package/driver/sqlite/SqliteDriver.js +0 -174
- package/driver/sqlite/SqliteDriver.js.map +0 -1
- package/driver/sqlite/SqliteQueryRunner.d.ts +0 -27
- package/driver/sqlite/SqliteQueryRunner.js +0 -124
- package/driver/sqlite/SqliteQueryRunner.js.map +0 -1
- package/driver/sqljs/SqljsConnectionOptions.js +0 -4
- package/driver/sqljs/SqljsConnectionOptions.js.map +0 -1
- package/driver/sqlserver/SqlServerConnectionOptions.js +0 -4
- package/driver/sqlserver/SqlServerConnectionOptions.js.map +0 -1
- package/error/CustomRepositoryCannotInheritRepositoryError.d.ts +0 -7
- package/error/CustomRepositoryCannotInheritRepositoryError.js +0 -18
- package/error/CustomRepositoryCannotInheritRepositoryError.js.map +0 -1
- package/error/CustomRepositoryDoesNotHaveEntityError.d.ts +0 -7
- package/error/CustomRepositoryDoesNotHaveEntityError.js +0 -18
- package/error/CustomRepositoryDoesNotHaveEntityError.js.map +0 -1
- package/error/CustomRepositoryNotFoundError.d.ts +0 -7
- package/error/CustomRepositoryNotFoundError.js +0 -18
- package/error/CustomRepositoryNotFoundError.js.map +0 -1
- package/find-options/JoinOptions.d.ts +0 -76
- package/find-options/JoinOptions.js.map +0 -1
- package/metadata/RelationCountMetadata.d.ts +0 -46
- package/metadata/RelationCountMetadata.js +0 -39
- package/metadata/RelationCountMetadata.js.map +0 -1
- package/metadata-args/EntityRepositoryMetadataArgs.d.ts +0 -14
- package/metadata-args/EntityRepositoryMetadataArgs.js +0 -4
- package/metadata-args/EntityRepositoryMetadataArgs.js.map +0 -1
- package/metadata-args/RelationCountMetadataArgs.d.ts +0 -26
- package/metadata-args/RelationCountMetadataArgs.js +0 -4
- package/metadata-args/RelationCountMetadataArgs.js.map +0 -1
- package/query-builder/relation-count/RelationCountAttribute.d.ts +0 -53
- package/query-builder/relation-count/RelationCountAttribute.js +0 -80
- package/query-builder/relation-count/RelationCountAttribute.js.map +0 -1
- package/query-builder/relation-count/RelationCountLoadResult.d.ts +0 -8
- package/query-builder/relation-count/RelationCountLoadResult.js +0 -4
- package/query-builder/relation-count/RelationCountLoadResult.js.map +0 -1
- package/query-builder/relation-count/RelationCountLoader.d.ts +0 -11
- package/query-builder/relation-count/RelationCountLoader.js +0 -168
- package/query-builder/relation-count/RelationCountLoader.js.map +0 -1
- package/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.d.ts +0 -7
- package/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js +0 -55
- package/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js.map +0 -1
- package/repository/AbstractRepository.d.ts +0 -51
- package/repository/AbstractRepository.js +0 -92
- package/repository/AbstractRepository.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.ts"],"names":[],"mappings":"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","file":"OneToOneInverseSideSubjectBuilder.js","sourcesContent":["import { Subject } from \"../Subject\"\nimport { OrmUtils } from \"../../util/OrmUtils\"\nimport { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { RelationMetadata } from \"../../metadata/RelationMetadata\"\n\n/**\n * Builds operations needs to be executed for one-to-one non-owner relations of the given subjects.\n *\n * by example: post contains one-to-one non-owner relation with category in the property called \"category\", e.g.\n * @OneToOne(type => Category, category => category.post) category: Category\n * If user sets a category into the post and saves post we need to bind them.\n * This operation requires updation of category table since its owner of the relation and contains a join column.\n *\n * note: this class shares lot of things with OneToManyUpdateBuilder, so when you change this class\n * make sure to reflect changes there as well.\n */\nexport class OneToOneInverseSideSubjectBuilder {\n // ---------------------------------------------------------------------\n // Constructor\n // ---------------------------------------------------------------------\n\n constructor(protected subjects: Subject[]) {}\n\n // ---------------------------------------------------------------------\n // Public Methods\n // ---------------------------------------------------------------------\n\n /**\n * Builds all required operations.\n */\n build(): void {\n this.subjects.forEach((subject) => {\n subject.metadata.oneToOneRelations.forEach((relation) => {\n // we don't need owning relations, this operation is only for inverse side of one-to-one relations\n // skip relations for which persistence is disabled\n if (relation.isOwning || relation.persistenceEnabled === false)\n return\n\n this.buildForSubjectRelation(subject, relation)\n })\n })\n }\n\n // ---------------------------------------------------------------------\n // Protected Methods\n // ---------------------------------------------------------------------\n\n /**\n * Builds operations for a given subject and relation.\n *\n * by example: subject is \"post\" entity we are saving here and relation is \"category\" inside it here.\n */\n protected buildForSubjectRelation(\n subject: Subject,\n relation: RelationMetadata,\n ) {\n // prepare objects (relation id map) for the database entity\n // note: subject.databaseEntity contains relation with loaded relation id only (id map)\n // by example: since subject is a post, we are expecting to get post's category saved in the database here,\n // particularly its relation id, e.g. category id stored in the database\n let relatedEntityDatabaseRelationId: ObjectLiteral | undefined =\n undefined\n if (subject.databaseEntity)\n // related entity in the database can exist only if this entity (post) is saved\n relatedEntityDatabaseRelationId = relation.getEntityValue(\n subject.databaseEntity,\n )\n\n // get related entities of persisted entity\n // by example: get category from the passed to persist post entity\n const relatedEntity: ObjectLiteral | null = relation.getEntityValue(\n subject.entity!,\n ) // by example: relatedEntity is a category here\n if (relatedEntity === undefined)\n // if relation is undefined then nothing to update\n return\n\n // if related entity is null then we need to check if there a bind in the database and unset it\n // if there is no bind in the entity then we don't need to do anything\n // by example: if post.category = null and category has this post in the database then we unset it\n if (relatedEntity === null) {\n // it makes sense to update database only there is a previously set value in the database\n if (relatedEntityDatabaseRelationId) {\n // todo: probably we can improve this in the future by finding entity with column those values,\n // todo: maybe it was already in persistence process. This is possible due to unique requirements of join columns\n // we create a new subject which operations will be executed in subject operation executor\n\n const removedRelatedEntitySubject = new Subject({\n metadata: relation.inverseEntityMetadata,\n parentSubject: subject,\n canBeUpdated: true,\n identifier: relatedEntityDatabaseRelationId,\n changeMaps: [\n {\n relation: relation.inverseRelation!,\n value: null,\n },\n ],\n })\n this.subjects.push(removedRelatedEntitySubject)\n }\n\n return\n } // else means entity is bind in the database\n\n // extract only relation id from the related entities, since we only need it for comparison\n // by example: extract from category only relation id (category id, or let's say category title, depend on join column options)\n let relationIdMap =\n relation.inverseEntityMetadata!.getEntityIdMap(relatedEntity) // by example: relationIdMap is category.id map here, e.g. { id: ... }\n\n // try to find a subject of this related entity, maybe it was loaded or was marked for persistence\n let relatedEntitySubject = this.subjects.find((operateSubject) => {\n return (\n !!operateSubject.entity &&\n operateSubject.entity === relatedEntity\n )\n })\n\n // if subject with entity was found take subject identifier as relation id map since it may contain extra properties resolved\n if (relatedEntitySubject)\n relationIdMap = relatedEntitySubject.identifier\n\n // if relationIdMap is undefined then it means user binds object which is not saved in the database yet\n // by example: if post contains category which does not have id(s) yet (because its a new category)\n // it means its always newly inserted and relation update operation always must be created for it\n // it does not make sense to perform difference operation for it for both add and remove actions\n if (!relationIdMap) {\n // we decided to remove this error because it brings complications when saving object with non-saved entities\n // if related entity does not have a subject then it means user tries to bind entity which wasn't saved\n // in this persistence because he didn't pass this entity for save or he did not set cascades\n // but without entity being inserted we cannot bind it in the relation operation, so we throw an exception here\n // if (!relatedEntitySubject)\n // throw new TypeORMError(`One-to-one inverse relation \"${relation.entityMetadata.name}.${relation.propertyPath}\" contains ` +\n // `entity which does not exist in the database yet, thus cannot be bind in the database. ` +\n // `Please setup cascade insertion or save entity before binding it.`);\n if (!relatedEntitySubject) return\n\n // okay, so related subject exist and its marked for insertion, then add a new change map\n // by example: this will tell category to insert into its post relation our post we are working with\n // relatedEntitySubject is newly inserted CategorySubject\n // relation.inverseRelation is OneToOne owner relation inside Category\n // subject is Post needs to be inserted into Category\n relatedEntitySubject.changeMaps.push({\n relation: relation.inverseRelation!,\n value: subject,\n })\n }\n\n // check if this binding really exist in the database\n // by example: find our post if its already bind to category in the database and its not equal to what user tries to set\n const areRelatedIdEqualWithDatabase =\n relatedEntityDatabaseRelationId &&\n OrmUtils.compareIds(relationIdMap, relatedEntityDatabaseRelationId)\n\n // if they aren't equal it means its a new relation and we need to \"bind\" them\n // by example: this will tell category to insert into its post relation our post we are working with\n // relatedEntitySubject is newly inserted CategorySubject\n // relation.inverseRelation is ManyToOne relation inside Category\n // subject is Post needs to be inserted into Category\n if (!areRelatedIdEqualWithDatabase) {\n // if there is no relatedEntitySubject then it means \"category\" wasn't persisted,\n // but since we are going to update \"category\" table (since its an owning side of relation with join column)\n // we create a new subject here:\n if (!relatedEntitySubject) {\n relatedEntitySubject = new Subject({\n metadata: relation.inverseEntityMetadata,\n canBeUpdated: true,\n identifier: relationIdMap,\n })\n this.subjects.push(relatedEntitySubject)\n }\n\n relatedEntitySubject.changeMaps.push({\n relation: relation.inverseRelation!,\n value: subject,\n })\n }\n }\n}\n"],"sourceRoot":"../.."}
|
|
1
|
+
{"version":3,"file":"OneToOneInverseSideSubjectBuilder.js","sourceRoot":"","sources":["../../../../src/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.ts"],"names":[],"mappings":"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","sourcesContent":["import { Subject } from \"../Subject\"\nimport { OrmUtils } from \"../../util/OrmUtils\"\nimport type { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport type { RelationMetadata } from \"../../metadata/RelationMetadata\"\n\n/**\n * Builds operations needs to be executed for one-to-one non-owner relations of the given subjects.\n *\n * Example:\n *\n * `Post` contains one-to-one non-owner relation with `Category` in the property called `category`, e.g.:\n *\n * `@OneToOne(type => Category, category => category.post) category: Category`\n *\n * If user sets a category into the post and saves post we need to bind them.\n * This operation requires updating the category table since it's the owner of\n * the relation and contains a join column.\n *\n * Note: this class shares lot of things with `OneToManyUpdateBuilder`, so when\n * you change this class make sure to reflect changes there as well.\n */\nexport class OneToOneInverseSideSubjectBuilder {\n // ---------------------------------------------------------------------\n // Constructor\n // ---------------------------------------------------------------------\n\n constructor(protected subjects: Subject[]) {}\n\n // ---------------------------------------------------------------------\n // Public Methods\n // ---------------------------------------------------------------------\n\n /**\n * Builds all required operations.\n */\n build(): void {\n this.subjects.forEach((subject) => {\n subject.metadata.oneToOneRelations.forEach((relation) => {\n // we don't need owning relations, this operation is only for inverse side of one-to-one relations\n // skip relations for which persistence is disabled\n if (relation.isOwning || relation.persistenceEnabled === false)\n return\n\n this.buildForSubjectRelation(subject, relation)\n })\n })\n }\n\n // ---------------------------------------------------------------------\n // Protected Methods\n // ---------------------------------------------------------------------\n\n /**\n * Builds operations for a given subject and relation.\n *\n * by example: subject is \"post\" entity we are saving here and relation is \"category\" inside it here.\n * @param subject\n * @param relation\n */\n protected buildForSubjectRelation(\n subject: Subject,\n relation: RelationMetadata,\n ) {\n // prepare objects (relation id map) for the database entity\n // note: subject.databaseEntity contains relation with loaded relation id only (id map)\n // by example: since subject is a post, we are expecting to get post's category saved in the database here,\n // particularly its relation id, e.g. category id stored in the database\n let relatedEntityDatabaseRelationId: ObjectLiteral | undefined =\n undefined\n if (subject.databaseEntity)\n // related entity in the database can exist only if this entity (post) is saved\n relatedEntityDatabaseRelationId = relation.getEntityValue(\n subject.databaseEntity,\n )\n\n // get related entities of persisted entity\n // by example: get category from the passed to persist post entity\n const relatedEntity: ObjectLiteral | null = relation.getEntityValue(\n subject.entity!,\n ) // by example: relatedEntity is a category here\n if (relatedEntity === undefined)\n // if relation is undefined then nothing to update\n return\n\n // if related entity is null then we need to check if there a bind in the database and unset it\n // if there is no bind in the entity then we don't need to do anything\n // by example: if post.category = null and category has this post in the database then we unset it\n if (relatedEntity === null) {\n // it makes sense to update database only there is a previously set value in the database\n if (relatedEntityDatabaseRelationId) {\n // todo: probably we can improve this in the future by finding entity with column those values,\n // todo: maybe it was already in persistence process. This is possible due to unique requirements of join columns\n // we create a new subject which operations will be executed in subject operation executor\n\n const removedRelatedEntitySubject = new Subject({\n metadata: relation.inverseEntityMetadata,\n parentSubject: subject,\n canBeUpdated: true,\n identifier: relatedEntityDatabaseRelationId,\n changeMaps: [\n {\n relation: relation.inverseRelation!,\n value: null,\n },\n ],\n })\n this.subjects.push(removedRelatedEntitySubject)\n }\n\n return\n } // else means entity is bind in the database\n\n // extract only relation id from the related entities, since we only need it for comparison\n // by example: extract from category only relation id (category id, or let's say category title, depend on join column options)\n let relationIdMap =\n relation.inverseEntityMetadata!.getEntityIdMap(relatedEntity) // by example: relationIdMap is category.id map here, e.g. { id: ... }\n\n // try to find a subject of this related entity, maybe it was loaded or was marked for persistence\n let relatedEntitySubject = this.subjects.find((operateSubject) => {\n return (\n !!operateSubject.entity &&\n operateSubject.entity === relatedEntity\n )\n })\n\n // if subject with entity was found take subject identifier as relation id map since it may contain extra properties resolved\n if (relatedEntitySubject)\n relationIdMap = relatedEntitySubject.identifier\n\n // if relationIdMap is undefined then it means user binds object which is not saved in the database yet\n // by example: if post contains category which does not have id(s) yet (because its a new category)\n // it means its always newly inserted and relation update operation always must be created for it\n // it does not make sense to perform difference operation for it for both add and remove actions\n if (!relationIdMap) {\n // we decided to remove this error because it brings complications when saving object with non-saved entities\n // if related entity does not have a subject then it means user tries to bind entity which wasn't saved\n // in this persistence because he didn't pass this entity for save or he did not set cascades\n // but without entity being inserted we cannot bind it in the relation operation, so we throw an exception here\n // if (!relatedEntitySubject)\n // throw new TypeORMError(`One-to-one inverse relation \"${relation.entityMetadata.name}.${relation.propertyPath}\" contains ` +\n // `entity which does not exist in the database yet, thus cannot be bind in the database. ` +\n // `Please setup cascade insertion or save entity before binding it.`);\n if (!relatedEntitySubject) return\n\n // okay, so related subject exist and its marked for insertion, then add a new change map\n // by example: this will tell category to insert into its post relation our post we are working with\n // relatedEntitySubject is newly inserted CategorySubject\n // relation.inverseRelation is OneToOne owner relation inside Category\n // subject is Post needs to be inserted into Category\n relatedEntitySubject.changeMaps.push({\n relation: relation.inverseRelation!,\n value: subject,\n })\n }\n\n // check if this binding really exist in the database\n // by example: find our post if its already bind to category in the database and its not equal to what user tries to set\n const areRelatedIdEqualWithDatabase =\n relatedEntityDatabaseRelationId &&\n OrmUtils.compareIds(relationIdMap, relatedEntityDatabaseRelationId)\n\n // if they aren't equal it means its a new relation and we need to \"bind\" them\n // by example: this will tell category to insert into its post relation our post we are working with\n // relatedEntitySubject is newly inserted CategorySubject\n // relation.inverseRelation is ManyToOne relation inside Category\n // subject is Post needs to be inserted into Category\n if (!areRelatedIdEqualWithDatabase) {\n // if there is no relatedEntitySubject then it means \"category\" wasn't persisted,\n // but since we are going to update \"category\" table (since its an owning side of relation with join column)\n // we create a new subject here:\n if (!relatedEntitySubject) {\n relatedEntitySubject = new Subject({\n metadata: relation.inverseEntityMetadata,\n canBeUpdated: true,\n identifier: relationIdMap,\n })\n this.subjects.push(relatedEntitySubject)\n }\n\n relatedEntitySubject.changeMaps.push({\n relation: relation.inverseRelation!,\n value: subject,\n })\n }\n }\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Subject } from "../Subject";
|
|
2
|
-
import { QueryRunner } from "../../query-runner/QueryRunner";
|
|
1
|
+
import type { Subject } from "../Subject";
|
|
2
|
+
import type { QueryRunner } from "../../query-runner/QueryRunner";
|
|
3
3
|
/**
|
|
4
4
|
* Executes subject operations for closure entities.
|
|
5
5
|
*/
|
|
@@ -8,19 +8,23 @@ export declare class ClosureSubjectExecutor {
|
|
|
8
8
|
constructor(queryRunner: QueryRunner);
|
|
9
9
|
/**
|
|
10
10
|
* Executes operations when subject is being inserted.
|
|
11
|
+
* @param subject
|
|
11
12
|
*/
|
|
12
13
|
insert(subject: Subject): Promise<void>;
|
|
13
14
|
/**
|
|
14
15
|
* Executes operations when subject is being updated.
|
|
16
|
+
* @param subject
|
|
15
17
|
*/
|
|
16
18
|
update(subject: Subject): Promise<void>;
|
|
17
19
|
/**
|
|
18
20
|
* Executes operations when subject is being removed.
|
|
21
|
+
* @param subjects
|
|
19
22
|
*/
|
|
20
23
|
remove(subjects: Subject | Subject[]): Promise<void>;
|
|
21
24
|
/**
|
|
22
25
|
* Gets escaped table name with schema name if SqlServer or Postgres driver used with custom
|
|
23
26
|
* schema name, otherwise returns escaped table name.
|
|
27
|
+
* @param tablePath
|
|
24
28
|
*/
|
|
25
29
|
protected getTableName(tablePath: string): string;
|
|
26
30
|
}
|
|
@@ -18,6 +18,7 @@ class ClosureSubjectExecutor {
|
|
|
18
18
|
// -------------------------------------------------------------------------
|
|
19
19
|
/**
|
|
20
20
|
* Executes operations when subject is being inserted.
|
|
21
|
+
* @param subject
|
|
21
22
|
*/
|
|
22
23
|
async insert(subject) {
|
|
23
24
|
// create values to be inserted into the closure junction
|
|
@@ -46,7 +47,7 @@ class ClosureSubjectExecutor {
|
|
|
46
47
|
? subject.parentSubject.insertedValueSet
|
|
47
48
|
: subject.parentSubject.entity;
|
|
48
49
|
if (parent) {
|
|
49
|
-
const escape = (alias) => this.queryRunner.
|
|
50
|
+
const escape = (alias) => this.queryRunner.dataSource.driver.escape(alias);
|
|
50
51
|
const tableName = this.getTableName(subject.metadata.closureJunctionTable.tablePath);
|
|
51
52
|
const queryParams = [];
|
|
52
53
|
const ancestorColumnNames = subject.metadata.closureJunctionTable.ancestorColumns.map((column) => {
|
|
@@ -59,7 +60,7 @@ class ClosureSubjectExecutor {
|
|
|
59
60
|
queryParams.push(column.getEntityValue(subject.insertedValueSet
|
|
60
61
|
? subject.insertedValueSet
|
|
61
62
|
: subject.entity));
|
|
62
|
-
return this.queryRunner.
|
|
63
|
+
return this.queryRunner.dataSource.driver.createParameter("child_entity_" + column.databaseName, queryParams.length - 1);
|
|
63
64
|
});
|
|
64
65
|
const whereCondition = subject.metadata.closureJunctionTable.descendantColumns.map((column) => {
|
|
65
66
|
const columnName = escape(column.databaseName);
|
|
@@ -67,7 +68,7 @@ class ClosureSubjectExecutor {
|
|
|
67
68
|
if (!parentId)
|
|
68
69
|
throw new CannotAttachTreeChildrenEntityError_1.CannotAttachTreeChildrenEntityError(subject.metadata.name);
|
|
69
70
|
queryParams.push(parentId);
|
|
70
|
-
const parameterName = this.queryRunner.
|
|
71
|
+
const parameterName = this.queryRunner.dataSource.driver.createParameter("parent_entity_" +
|
|
71
72
|
column.referencedColumn.databaseName, queryParams.length - 1);
|
|
72
73
|
return `${columnName} = ${parameterName}`;
|
|
73
74
|
});
|
|
@@ -80,6 +81,7 @@ class ClosureSubjectExecutor {
|
|
|
80
81
|
}
|
|
81
82
|
/**
|
|
82
83
|
* Executes operations when subject is being updated.
|
|
84
|
+
* @param subject
|
|
83
85
|
*/
|
|
84
86
|
async update(subject) {
|
|
85
87
|
let parent = subject.metadata.treeParentRelation.getEntityValue(subject.entity); // if entity was attached via parent
|
|
@@ -105,7 +107,7 @@ class ClosureSubjectExecutor {
|
|
|
105
107
|
if (OrmUtils_1.OrmUtils.compareIds(oldParentId, parentId)) {
|
|
106
108
|
return;
|
|
107
109
|
}
|
|
108
|
-
const escape = (alias) => this.queryRunner.
|
|
110
|
+
const escape = (alias) => this.queryRunner.dataSource.driver.escape(alias);
|
|
109
111
|
const closureTable = subject.metadata.closureJunctionTable;
|
|
110
112
|
const ancestorColumnNames = closureTable.ancestorColumns.map((column) => {
|
|
111
113
|
return escape(column.databaseName);
|
|
@@ -163,7 +165,7 @@ class ClosureSubjectExecutor {
|
|
|
163
165
|
const columnName = escape(column.databaseName);
|
|
164
166
|
const entityId = column.referencedColumn.getEntityValue(entity);
|
|
165
167
|
queryParams.push(entityId);
|
|
166
|
-
const parameterName = this.queryRunner.
|
|
168
|
+
const parameterName = this.queryRunner.dataSource.driver.createParameter("entity_" +
|
|
167
169
|
column.referencedColumn.databaseName, queryParams.length - 1);
|
|
168
170
|
return `${subAlias}.${columnName} = ${parameterName}`;
|
|
169
171
|
});
|
|
@@ -173,7 +175,7 @@ class ClosureSubjectExecutor {
|
|
|
173
175
|
if (!parentId)
|
|
174
176
|
throw new CannotAttachTreeChildrenEntityError_1.CannotAttachTreeChildrenEntityError(subject.metadata.name);
|
|
175
177
|
queryParams.push(parentId);
|
|
176
|
-
const parameterName = this.queryRunner.
|
|
178
|
+
const parameterName = this.queryRunner.dataSource.driver.createParameter("parent_entity_" +
|
|
177
179
|
column.referencedColumn.databaseName, queryParams.length - 1);
|
|
178
180
|
return `${superAlias}.${columnName} = ${parameterName}`;
|
|
179
181
|
});
|
|
@@ -191,15 +193,16 @@ class ClosureSubjectExecutor {
|
|
|
191
193
|
}
|
|
192
194
|
/**
|
|
193
195
|
* Executes operations when subject is being removed.
|
|
196
|
+
* @param subjects
|
|
194
197
|
*/
|
|
195
198
|
async remove(subjects) {
|
|
196
199
|
// Only mssql need to execute deletes for the juntion table as it doesn't support multi cascade paths.
|
|
197
|
-
if (!(this.queryRunner.
|
|
200
|
+
if (!(this.queryRunner.dataSource.driver.options.type === "mssql")) {
|
|
198
201
|
return;
|
|
199
202
|
}
|
|
200
203
|
if (!Array.isArray(subjects))
|
|
201
204
|
subjects = [subjects];
|
|
202
|
-
const escape = (alias) => this.queryRunner.
|
|
205
|
+
const escape = (alias) => this.queryRunner.dataSource.driver.escape(alias);
|
|
203
206
|
const identifiers = subjects.map((subject) => subject.identifier);
|
|
204
207
|
const closureTable = subjects[0].metadata.closureJunctionTable;
|
|
205
208
|
const generateWheres = (columns) => {
|
|
@@ -223,6 +226,7 @@ class ClosureSubjectExecutor {
|
|
|
223
226
|
/**
|
|
224
227
|
* Gets escaped table name with schema name if SqlServer or Postgres driver used with custom
|
|
225
228
|
* schema name, otherwise returns escaped table name.
|
|
229
|
+
* @param tablePath
|
|
226
230
|
*/
|
|
227
231
|
getTableName(tablePath) {
|
|
228
232
|
return tablePath
|
|
@@ -231,11 +235,10 @@ class ClosureSubjectExecutor {
|
|
|
231
235
|
// this condition need because in SQL Server driver when custom database name was specified and schema name was not, we got `dbName..tableName` string, and doesn't need to escape middle empty string
|
|
232
236
|
return i === ""
|
|
233
237
|
? i
|
|
234
|
-
: this.queryRunner.
|
|
238
|
+
: this.queryRunner.dataSource.driver.escape(i);
|
|
235
239
|
})
|
|
236
240
|
.join(".");
|
|
237
241
|
}
|
|
238
242
|
}
|
|
239
243
|
exports.ClosureSubjectExecutor = ClosureSubjectExecutor;
|
|
240
|
-
|
|
241
|
-
//# sourceMappingURL=ClosureSubjectExecutor.js.map
|
|
244
|
+
//# sourceMappingURL=ClosureSubjectExecutor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/persistence/tree/ClosureSubjectExecutor.ts"],"names":[],"mappings":"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","file":"ClosureSubjectExecutor.js","sourcesContent":["import { Subject } from \"../Subject\"\nimport { QueryRunner } from \"../../query-runner/QueryRunner\"\nimport { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { CannotAttachTreeChildrenEntityError } from \"../../error/CannotAttachTreeChildrenEntityError\"\nimport { DeleteQueryBuilder } from \"../../query-builder/DeleteQueryBuilder\"\nimport { OrmUtils } from \"../../util/OrmUtils\"\nimport { ColumnMetadata } from \"../../metadata/ColumnMetadata\"\n\n/**\n * Executes subject operations for closure entities.\n */\nexport class ClosureSubjectExecutor {\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(protected queryRunner: QueryRunner) {}\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Executes operations when subject is being inserted.\n */\n async insert(subject: Subject): Promise<void> {\n // create values to be inserted into the closure junction\n const closureJunctionInsertMap: ObjectLiteral = {}\n subject.metadata.closureJunctionTable.ancestorColumns.forEach(\n (column) => {\n closureJunctionInsertMap[column.databaseName] =\n subject.identifier\n },\n )\n subject.metadata.closureJunctionTable.descendantColumns.forEach(\n (column) => {\n closureJunctionInsertMap[column.databaseName] =\n subject.identifier\n },\n )\n\n // insert values into the closure junction table\n await this.queryRunner.manager\n .createQueryBuilder()\n .insert()\n .into(subject.metadata.closureJunctionTable.tablePath)\n .values(closureJunctionInsertMap)\n .updateEntity(false)\n .callListeners(false)\n .execute()\n\n let parent = subject.metadata.treeParentRelation!.getEntityValue(\n subject.entity!,\n ) // if entity was attached via parent\n if (!parent && subject.parentSubject && subject.parentSubject.entity)\n // if entity was attached via children\n parent = subject.parentSubject.insertedValueSet\n ? subject.parentSubject.insertedValueSet\n : subject.parentSubject.entity\n\n if (parent) {\n const escape = (alias: string) =>\n this.queryRunner.connection.driver.escape(alias)\n const tableName = this.getTableName(\n subject.metadata.closureJunctionTable.tablePath,\n )\n const queryParams: any[] = []\n\n const ancestorColumnNames =\n subject.metadata.closureJunctionTable.ancestorColumns.map(\n (column) => {\n return escape(column.databaseName)\n },\n )\n const descendantColumnNames =\n subject.metadata.closureJunctionTable.descendantColumns.map(\n (column) => {\n return escape(column.databaseName)\n },\n )\n const childEntityIds1 = subject.metadata.primaryColumns.map(\n (column) => {\n queryParams.push(\n column.getEntityValue(\n subject.insertedValueSet\n ? subject.insertedValueSet\n : subject.entity!,\n ),\n )\n return this.queryRunner.connection.driver.createParameter(\n \"child_entity_\" + column.databaseName,\n queryParams.length - 1,\n )\n },\n )\n\n const whereCondition =\n subject.metadata.closureJunctionTable.descendantColumns.map(\n (column) => {\n const columnName = escape(column.databaseName)\n const parentId =\n column.referencedColumn!.getEntityValue(parent)\n\n if (!parentId)\n throw new CannotAttachTreeChildrenEntityError(\n subject.metadata.name,\n )\n\n queryParams.push(parentId)\n const parameterName =\n this.queryRunner.connection.driver.createParameter(\n \"parent_entity_\" +\n column.referencedColumn!.databaseName,\n queryParams.length - 1,\n )\n return `${columnName} = ${parameterName}`\n },\n )\n\n await this.queryRunner.query(\n `INSERT INTO ${tableName} (${[\n ...ancestorColumnNames,\n ...descendantColumnNames,\n ].join(\", \")}) ` +\n `SELECT ${ancestorColumnNames.join(\n \", \",\n )}, ${childEntityIds1.join(\n \", \",\n )} FROM ${tableName} WHERE ${whereCondition.join(\" AND \")}`,\n queryParams,\n )\n }\n }\n\n /**\n * Executes operations when subject is being updated.\n */\n async update(subject: Subject): Promise<void> {\n let parent = subject.metadata.treeParentRelation!.getEntityValue(\n subject.entity!,\n ) // if entity was attached via parent\n if (!parent && subject.parentSubject && subject.parentSubject.entity)\n // if entity was attached via children\n parent = subject.parentSubject.entity\n\n let entity = subject.databaseEntity // if entity was attached via parent\n if (!entity && parent)\n // if entity was attached via children\n entity = subject.metadata\n .treeChildrenRelation!.getEntityValue(parent)\n .find((child: any) => {\n return Object.entries(subject.identifier!).every(\n ([key, value]) => child[key] === value,\n )\n })\n\n // Exit if the parent or the entity where never set\n if (entity === undefined || parent === undefined) {\n return\n }\n\n const oldParent = subject.metadata.treeParentRelation!.getEntityValue(\n entity!,\n )\n const oldParentId = subject.metadata.getEntityIdMap(oldParent)\n const parentId = subject.metadata.getEntityIdMap(parent)\n\n // Exit if the new and old parents are the same\n if (OrmUtils.compareIds(oldParentId, parentId)) {\n return\n }\n\n const escape = (alias: string) =>\n this.queryRunner.connection.driver.escape(alias)\n const closureTable = subject.metadata.closureJunctionTable\n\n const ancestorColumnNames = closureTable.ancestorColumns.map(\n (column) => {\n return escape(column.databaseName)\n },\n )\n\n const descendantColumnNames = closureTable.descendantColumns.map(\n (column) => {\n return escape(column.databaseName)\n },\n )\n\n // Delete logic\n const createSubQuery = (qb: DeleteQueryBuilder<any>, alias: string) => {\n const subAlias = `sub${alias}`\n\n const subSelect = qb\n .createQueryBuilder()\n .select(descendantColumnNames.join(\", \"))\n .from(closureTable.tablePath, subAlias)\n\n // Create where conditions e.g. (WHERE \"subdescendant\".\"id_ancestor\" = :value_id)\n for (const column of closureTable.ancestorColumns) {\n subSelect.andWhere(\n `${escape(subAlias)}.${escape(\n column.databaseName,\n )} = :value_${column.referencedColumn!.databaseName}`,\n )\n }\n\n return qb\n .createQueryBuilder()\n .select(descendantColumnNames.join(\", \"))\n .from(`(${subSelect.getQuery()})`, alias)\n .setParameters(subSelect.getParameters())\n .getQuery()\n }\n\n const parameters: ObjectLiteral = {}\n for (const column of subject.metadata.primaryColumns) {\n parameters[`value_${column.databaseName}`] =\n entity![column.databaseName]\n }\n\n await this.queryRunner.manager\n .createQueryBuilder()\n .delete()\n .from(closureTable.tablePath)\n .where(\n (qb) =>\n `(${descendantColumnNames.join(\", \")}) IN (${createSubQuery(\n qb,\n \"descendant\",\n )})`,\n )\n .andWhere(\n (qb) =>\n `(${ancestorColumnNames.join(\n \", \",\n )}) NOT IN (${createSubQuery(qb, \"ancestor\")})`,\n )\n .setParameters(parameters)\n .execute()\n\n /**\n * Only insert new parent if it exits\n *\n * This only happens if the entity doesn't become a root entity\n */\n if (parent) {\n // Insert logic\n const queryParams: any[] = []\n\n const tableName = this.getTableName(closureTable.tablePath)\n const superAlias = escape(\"supertree\")\n const subAlias = escape(\"subtree\")\n\n const select = [\n ...ancestorColumnNames.map(\n (columnName) => `${superAlias}.${columnName}`,\n ),\n ...descendantColumnNames.map(\n (columnName) => `${subAlias}.${columnName}`,\n ),\n ]\n\n const entityWhereCondition =\n subject.metadata.closureJunctionTable.ancestorColumns.map(\n (column) => {\n const columnName = escape(column.databaseName)\n const entityId =\n column.referencedColumn!.getEntityValue(entity!)\n\n queryParams.push(entityId)\n const parameterName =\n this.queryRunner.connection.driver.createParameter(\n \"entity_\" +\n column.referencedColumn!.databaseName,\n queryParams.length - 1,\n )\n return `${subAlias}.${columnName} = ${parameterName}`\n },\n )\n\n const parentWhereCondition =\n subject.metadata.closureJunctionTable.descendantColumns.map(\n (column) => {\n const columnName = escape(column.databaseName)\n const parentId =\n column.referencedColumn!.getEntityValue(parent)\n\n if (!parentId)\n throw new CannotAttachTreeChildrenEntityError(\n subject.metadata.name,\n )\n\n queryParams.push(parentId)\n const parameterName =\n this.queryRunner.connection.driver.createParameter(\n \"parent_entity_\" +\n column.referencedColumn!.databaseName,\n queryParams.length - 1,\n )\n return `${superAlias}.${columnName} = ${parameterName}`\n },\n )\n\n await this.queryRunner.query(\n `INSERT INTO ${tableName} (${[\n ...ancestorColumnNames,\n ...descendantColumnNames,\n ].join(\", \")}) ` +\n `SELECT ${select.join(\", \")} ` +\n `FROM ${tableName} AS ${superAlias}, ${tableName} AS ${subAlias} ` +\n `WHERE ${[\n ...entityWhereCondition,\n ...parentWhereCondition,\n ].join(\" AND \")}`,\n queryParams,\n )\n }\n }\n\n /**\n * Executes operations when subject is being removed.\n */\n async remove(subjects: Subject | Subject[]): Promise<void> {\n // Only mssql need to execute deletes for the juntion table as it doesn't support multi cascade paths.\n if (!(this.queryRunner.connection.driver.options.type === \"mssql\")) {\n return\n }\n\n if (!Array.isArray(subjects)) subjects = [subjects]\n\n const escape = (alias: string) =>\n this.queryRunner.connection.driver.escape(alias)\n const identifiers = subjects.map((subject) => subject.identifier)\n const closureTable = subjects[0].metadata.closureJunctionTable\n\n const generateWheres = (columns: ColumnMetadata[]) => {\n return columns\n .map((column) => {\n const data = identifiers.map(\n (identifier) =>\n identifier![column.referencedColumn!.databaseName],\n )\n return `${escape(column.databaseName)} IN (${data.join(\n \", \",\n )})`\n })\n .join(\" AND \")\n }\n\n const ancestorWhere = generateWheres(closureTable.ancestorColumns)\n const descendantWhere = generateWheres(closureTable.descendantColumns)\n\n await this.queryRunner.manager\n .createQueryBuilder()\n .delete()\n .from(closureTable.tablePath)\n .where(ancestorWhere)\n .orWhere(descendantWhere)\n .execute()\n }\n\n /**\n * Gets escaped table name with schema name if SqlServer or Postgres driver used with custom\n * schema name, otherwise returns escaped table name.\n */\n protected getTableName(tablePath: string): string {\n return tablePath\n .split(\".\")\n .map((i) => {\n // this condition need because in SQL Server driver when custom database name was specified and schema name was not, we got `dbName..tableName` string, and doesn't need to escape middle empty string\n return i === \"\"\n ? i\n : this.queryRunner.connection.driver.escape(i)\n })\n .join(\".\")\n }\n}\n"],"sourceRoot":"../.."}
|
|
1
|
+
{"version":3,"file":"ClosureSubjectExecutor.js","sourceRoot":"","sources":["../../../../src/persistence/tree/ClosureSubjectExecutor.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Subject } from \"../Subject\"\nimport type { QueryRunner } from \"../../query-runner/QueryRunner\"\nimport type { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { CannotAttachTreeChildrenEntityError } from \"../../error/CannotAttachTreeChildrenEntityError\"\nimport type { DeleteQueryBuilder } from \"../../query-builder/DeleteQueryBuilder\"\nimport { OrmUtils } from \"../../util/OrmUtils\"\nimport type { ColumnMetadata } from \"../../metadata/ColumnMetadata\"\n\n/**\n * Executes subject operations for closure entities.\n */\nexport class ClosureSubjectExecutor {\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(protected queryRunner: QueryRunner) {}\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Executes operations when subject is being inserted.\n * @param subject\n */\n async insert(subject: Subject): Promise<void> {\n // create values to be inserted into the closure junction\n const closureJunctionInsertMap: ObjectLiteral = {}\n subject.metadata.closureJunctionTable.ancestorColumns.forEach(\n (column) => {\n closureJunctionInsertMap[column.databaseName] =\n subject.identifier\n },\n )\n subject.metadata.closureJunctionTable.descendantColumns.forEach(\n (column) => {\n closureJunctionInsertMap[column.databaseName] =\n subject.identifier\n },\n )\n\n // insert values into the closure junction table\n await this.queryRunner.manager\n .createQueryBuilder()\n .insert()\n .into(subject.metadata.closureJunctionTable.tablePath)\n .values(closureJunctionInsertMap)\n .updateEntity(false)\n .callListeners(false)\n .execute()\n\n let parent = subject.metadata.treeParentRelation!.getEntityValue(\n subject.entity!,\n ) // if entity was attached via parent\n if (!parent && subject.parentSubject && subject.parentSubject.entity)\n // if entity was attached via children\n parent = subject.parentSubject.insertedValueSet\n ? subject.parentSubject.insertedValueSet\n : subject.parentSubject.entity\n\n if (parent) {\n const escape = (alias: string) =>\n this.queryRunner.dataSource.driver.escape(alias)\n const tableName = this.getTableName(\n subject.metadata.closureJunctionTable.tablePath,\n )\n const queryParams: any[] = []\n\n const ancestorColumnNames =\n subject.metadata.closureJunctionTable.ancestorColumns.map(\n (column) => {\n return escape(column.databaseName)\n },\n )\n const descendantColumnNames =\n subject.metadata.closureJunctionTable.descendantColumns.map(\n (column) => {\n return escape(column.databaseName)\n },\n )\n const childEntityIds1 = subject.metadata.primaryColumns.map(\n (column) => {\n queryParams.push(\n column.getEntityValue(\n subject.insertedValueSet\n ? subject.insertedValueSet\n : subject.entity!,\n ),\n )\n return this.queryRunner.dataSource.driver.createParameter(\n \"child_entity_\" + column.databaseName,\n queryParams.length - 1,\n )\n },\n )\n\n const whereCondition =\n subject.metadata.closureJunctionTable.descendantColumns.map(\n (column) => {\n const columnName = escape(column.databaseName)\n const parentId =\n column.referencedColumn!.getEntityValue(parent)\n\n if (!parentId)\n throw new CannotAttachTreeChildrenEntityError(\n subject.metadata.name,\n )\n\n queryParams.push(parentId)\n const parameterName =\n this.queryRunner.dataSource.driver.createParameter(\n \"parent_entity_\" +\n column.referencedColumn!.databaseName,\n queryParams.length - 1,\n )\n return `${columnName} = ${parameterName}`\n },\n )\n\n await this.queryRunner.query(\n `INSERT INTO ${tableName} (${[\n ...ancestorColumnNames,\n ...descendantColumnNames,\n ].join(\", \")}) ` +\n `SELECT ${ancestorColumnNames.join(\n \", \",\n )}, ${childEntityIds1.join(\n \", \",\n )} FROM ${tableName} WHERE ${whereCondition.join(\" AND \")}`,\n queryParams,\n )\n }\n }\n\n /**\n * Executes operations when subject is being updated.\n * @param subject\n */\n async update(subject: Subject): Promise<void> {\n let parent = subject.metadata.treeParentRelation!.getEntityValue(\n subject.entity!,\n ) // if entity was attached via parent\n if (!parent && subject.parentSubject && subject.parentSubject.entity)\n // if entity was attached via children\n parent = subject.parentSubject.entity\n\n let entity = subject.databaseEntity // if entity was attached via parent\n if (!entity && parent)\n // if entity was attached via children\n entity = subject.metadata\n .treeChildrenRelation!.getEntityValue(parent)\n .find((child: any) => {\n return Object.entries(subject.identifier!).every(\n ([key, value]) => child[key] === value,\n )\n })\n\n // Exit if the parent or the entity where never set\n if (entity === undefined || parent === undefined) {\n return\n }\n\n const oldParent = subject.metadata.treeParentRelation!.getEntityValue(\n entity!,\n )\n const oldParentId = subject.metadata.getEntityIdMap(oldParent)\n const parentId = subject.metadata.getEntityIdMap(parent)\n\n // Exit if the new and old parents are the same\n if (OrmUtils.compareIds(oldParentId, parentId)) {\n return\n }\n\n const escape = (alias: string) =>\n this.queryRunner.dataSource.driver.escape(alias)\n const closureTable = subject.metadata.closureJunctionTable\n\n const ancestorColumnNames = closureTable.ancestorColumns.map(\n (column) => {\n return escape(column.databaseName)\n },\n )\n\n const descendantColumnNames = closureTable.descendantColumns.map(\n (column) => {\n return escape(column.databaseName)\n },\n )\n\n // Delete logic\n const createSubQuery = (qb: DeleteQueryBuilder<any>, alias: string) => {\n const subAlias = `sub${alias}`\n\n const subSelect = qb\n .createQueryBuilder()\n .select(descendantColumnNames.join(\", \"))\n .from(closureTable.tablePath, subAlias)\n\n // Create where conditions e.g. (WHERE \"subdescendant\".\"id_ancestor\" = :value_id)\n for (const column of closureTable.ancestorColumns) {\n subSelect.andWhere(\n `${escape(subAlias)}.${escape(\n column.databaseName,\n )} = :value_${column.referencedColumn!.databaseName}`,\n )\n }\n\n return qb\n .createQueryBuilder()\n .select(descendantColumnNames.join(\", \"))\n .from(`(${subSelect.getQuery()})`, alias)\n .setParameters(subSelect.getParameters())\n .getQuery()\n }\n\n const parameters: ObjectLiteral = {}\n for (const column of subject.metadata.primaryColumns) {\n parameters[`value_${column.databaseName}`] =\n entity![column.databaseName]\n }\n\n await this.queryRunner.manager\n .createQueryBuilder()\n .delete()\n .from(closureTable.tablePath)\n .where(\n (qb) =>\n `(${descendantColumnNames.join(\", \")}) IN (${createSubQuery(\n qb,\n \"descendant\",\n )})`,\n )\n .andWhere(\n (qb) =>\n `(${ancestorColumnNames.join(\n \", \",\n )}) NOT IN (${createSubQuery(qb, \"ancestor\")})`,\n )\n .setParameters(parameters)\n .execute()\n\n /**\n * Only insert new parent if it exits\n *\n * This only happens if the entity doesn't become a root entity\n */\n if (parent) {\n // Insert logic\n const queryParams: any[] = []\n\n const tableName = this.getTableName(closureTable.tablePath)\n const superAlias = escape(\"supertree\")\n const subAlias = escape(\"subtree\")\n\n const select = [\n ...ancestorColumnNames.map(\n (columnName) => `${superAlias}.${columnName}`,\n ),\n ...descendantColumnNames.map(\n (columnName) => `${subAlias}.${columnName}`,\n ),\n ]\n\n const entityWhereCondition =\n subject.metadata.closureJunctionTable.ancestorColumns.map(\n (column) => {\n const columnName = escape(column.databaseName)\n const entityId =\n column.referencedColumn!.getEntityValue(entity!)\n\n queryParams.push(entityId)\n const parameterName =\n this.queryRunner.dataSource.driver.createParameter(\n \"entity_\" +\n column.referencedColumn!.databaseName,\n queryParams.length - 1,\n )\n return `${subAlias}.${columnName} = ${parameterName}`\n },\n )\n\n const parentWhereCondition =\n subject.metadata.closureJunctionTable.descendantColumns.map(\n (column) => {\n const columnName = escape(column.databaseName)\n const parentId =\n column.referencedColumn!.getEntityValue(parent)\n\n if (!parentId)\n throw new CannotAttachTreeChildrenEntityError(\n subject.metadata.name,\n )\n\n queryParams.push(parentId)\n const parameterName =\n this.queryRunner.dataSource.driver.createParameter(\n \"parent_entity_\" +\n column.referencedColumn!.databaseName,\n queryParams.length - 1,\n )\n return `${superAlias}.${columnName} = ${parameterName}`\n },\n )\n\n await this.queryRunner.query(\n `INSERT INTO ${tableName} (${[\n ...ancestorColumnNames,\n ...descendantColumnNames,\n ].join(\", \")}) ` +\n `SELECT ${select.join(\", \")} ` +\n `FROM ${tableName} AS ${superAlias}, ${tableName} AS ${subAlias} ` +\n `WHERE ${[\n ...entityWhereCondition,\n ...parentWhereCondition,\n ].join(\" AND \")}`,\n queryParams,\n )\n }\n }\n\n /**\n * Executes operations when subject is being removed.\n * @param subjects\n */\n async remove(subjects: Subject | Subject[]): Promise<void> {\n // Only mssql need to execute deletes for the juntion table as it doesn't support multi cascade paths.\n if (!(this.queryRunner.dataSource.driver.options.type === \"mssql\")) {\n return\n }\n\n if (!Array.isArray(subjects)) subjects = [subjects]\n\n const escape = (alias: string) =>\n this.queryRunner.dataSource.driver.escape(alias)\n const identifiers = subjects.map((subject) => subject.identifier)\n const closureTable = subjects[0].metadata.closureJunctionTable\n\n const generateWheres = (columns: ColumnMetadata[]) => {\n return columns\n .map((column) => {\n const data = identifiers.map(\n (identifier) =>\n identifier![column.referencedColumn!.databaseName],\n )\n return `${escape(column.databaseName)} IN (${data.join(\n \", \",\n )})`\n })\n .join(\" AND \")\n }\n\n const ancestorWhere = generateWheres(closureTable.ancestorColumns)\n const descendantWhere = generateWheres(closureTable.descendantColumns)\n\n await this.queryRunner.manager\n .createQueryBuilder()\n .delete()\n .from(closureTable.tablePath)\n .where(ancestorWhere)\n .orWhere(descendantWhere)\n .execute()\n }\n\n /**\n * Gets escaped table name with schema name if SqlServer or Postgres driver used with custom\n * schema name, otherwise returns escaped table name.\n * @param tablePath\n */\n protected getTableName(tablePath: string): string {\n return tablePath\n .split(\".\")\n .map((i) => {\n // this condition need because in SQL Server driver when custom database name was specified and schema name was not, we got `dbName..tableName` string, and doesn't need to escape middle empty string\n return i === \"\"\n ? i\n : this.queryRunner.dataSource.driver.escape(i)\n })\n .join(\".\")\n }\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Subject } from "../Subject";
|
|
2
|
-
import { QueryRunner } from "../../query-runner/QueryRunner";
|
|
1
|
+
import type { Subject } from "../Subject";
|
|
2
|
+
import type { QueryRunner } from "../../query-runner/QueryRunner";
|
|
3
3
|
/**
|
|
4
4
|
* Executes subject operations for materialized-path tree entities.
|
|
5
5
|
*/
|
|
@@ -8,10 +8,12 @@ export declare class MaterializedPathSubjectExecutor {
|
|
|
8
8
|
constructor(queryRunner: QueryRunner);
|
|
9
9
|
/**
|
|
10
10
|
* Executes operations when subject is being inserted.
|
|
11
|
+
* @param subject
|
|
11
12
|
*/
|
|
12
13
|
insert(subject: Subject): Promise<void>;
|
|
13
14
|
/**
|
|
14
15
|
* Executes operations when subject is being updated.
|
|
16
|
+
* @param subject
|
|
15
17
|
*/
|
|
16
18
|
update(subject: Subject): Promise<void>;
|
|
17
19
|
private getEntityParentReferencedColumnMap;
|
|
@@ -19,6 +19,7 @@ class MaterializedPathSubjectExecutor {
|
|
|
19
19
|
// -------------------------------------------------------------------------
|
|
20
20
|
/**
|
|
21
21
|
* Executes operations when subject is being inserted.
|
|
22
|
+
* @param subject
|
|
22
23
|
*/
|
|
23
24
|
async insert(subject) {
|
|
24
25
|
let parent = subject.metadata.treeParentRelation.getEntityValue(subject.entity); // if entity was attached via parent
|
|
@@ -48,6 +49,7 @@ class MaterializedPathSubjectExecutor {
|
|
|
48
49
|
}
|
|
49
50
|
/**
|
|
50
51
|
* Executes operations when subject is being updated.
|
|
52
|
+
* @param subject
|
|
51
53
|
*/
|
|
52
54
|
async update(subject) {
|
|
53
55
|
let newParent = subject.metadata.treeParentRelation.getEntityValue(subject.entity); // if entity was attached via parent
|
|
@@ -88,7 +90,7 @@ class MaterializedPathSubjectExecutor {
|
|
|
88
90
|
.createQueryBuilder()
|
|
89
91
|
.update(subject.metadata.target)
|
|
90
92
|
.set({
|
|
91
|
-
[propertyPath]: () => `REPLACE(${this.queryRunner.
|
|
93
|
+
[propertyPath]: () => `REPLACE(${this.queryRunner.dataSource.driver.escape(propertyPath)}, '${oldParentPath}${entityPath}.', '${newParentPath}${entityPath}.')`,
|
|
92
94
|
})
|
|
93
95
|
.where(`${propertyPath} LIKE :path`, {
|
|
94
96
|
path: `${oldParentPath}${entityPath}.%`,
|
|
@@ -116,10 +118,10 @@ class MaterializedPathSubjectExecutor {
|
|
|
116
118
|
qb.orWhere(new Brackets_1.Brackets((qb) => qb.where(data)));
|
|
117
119
|
}
|
|
118
120
|
}))
|
|
121
|
+
.withDeleted()
|
|
119
122
|
.getRawOne()
|
|
120
123
|
.then((result) => (result ? result["path"] : ""));
|
|
121
124
|
}
|
|
122
125
|
}
|
|
123
126
|
exports.MaterializedPathSubjectExecutor = MaterializedPathSubjectExecutor;
|
|
124
|
-
|
|
125
|
-
//# sourceMappingURL=MaterializedPathSubjectExecutor.js.map
|
|
127
|
+
//# sourceMappingURL=MaterializedPathSubjectExecutor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/persistence/tree/MaterializedPathSubjectExecutor.ts"],"names":[],"mappings":"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","file":"MaterializedPathSubjectExecutor.js","sourcesContent":["import { Subject } from \"../Subject\"\nimport { QueryRunner } from \"../../query-runner/QueryRunner\"\nimport { OrmUtils } from \"../../util/OrmUtils\"\nimport { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { ColumnMetadata } from \"../../metadata/ColumnMetadata\"\nimport { EntityMetadata } from \"../../metadata/EntityMetadata\"\nimport { Brackets } from \"../../query-builder/Brackets\"\n\n/**\n * Executes subject operations for materialized-path tree entities.\n */\nexport class MaterializedPathSubjectExecutor {\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(protected queryRunner: QueryRunner) {}\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Executes operations when subject is being inserted.\n */\n async insert(subject: Subject): Promise<void> {\n let parent = subject.metadata.treeParentRelation!.getEntityValue(\n subject.entity!,\n ) // if entity was attached via parent\n if (!parent && subject.parentSubject && subject.parentSubject.entity)\n // if entity was attached via children\n parent = subject.parentSubject.insertedValueSet\n ? subject.parentSubject.insertedValueSet\n : subject.parentSubject.entity\n\n const parentId = subject.metadata.getEntityIdMap(parent)\n\n let parentPath: string = \"\"\n if (parentId) {\n parentPath = await this.getEntityPath(subject, parentId)\n }\n\n const insertedEntityId = subject.metadata\n .treeParentRelation!.joinColumns.map((joinColumn) => {\n return joinColumn.referencedColumn!.getEntityValue(\n subject.insertedValueSet!,\n )\n })\n .join(\"_\")\n\n await this.queryRunner.manager\n .createQueryBuilder()\n .update(subject.metadata.target)\n .set({\n [subject.metadata.materializedPathColumn!.propertyPath]:\n parentPath + insertedEntityId + \".\",\n } as any)\n .where(subject.identifier!)\n .execute()\n }\n\n /**\n * Executes operations when subject is being updated.\n */\n async update(subject: Subject): Promise<void> {\n let newParent = subject.metadata.treeParentRelation!.getEntityValue(\n subject.entity!,\n ) // if entity was attached via parent\n if (!newParent && subject.parentSubject && subject.parentSubject.entity)\n // if entity was attached via children\n newParent = subject.parentSubject.entity\n\n let entity = subject.databaseEntity // if entity was attached via parent\n if (!entity && newParent)\n // if entity was attached via children\n entity = subject.metadata\n .treeChildrenRelation!.getEntityValue(newParent)\n .find((child: any) => {\n return Object.entries(subject.identifier!).every(\n ([key, value]) => child[key] === value,\n )\n })\n\n const oldParent = subject.metadata.treeParentRelation!.getEntityValue(\n entity!,\n )\n const oldParentId = this.getEntityParentReferencedColumnMap(\n subject,\n oldParent,\n )\n const newParentId = this.getEntityParentReferencedColumnMap(\n subject,\n newParent,\n )\n\n // Exit if the new and old parents are the same\n if (OrmUtils.compareIds(oldParentId, newParentId)) {\n return\n }\n\n let newParentPath: string = \"\"\n if (newParentId) {\n newParentPath = await this.getEntityPath(subject, newParentId)\n }\n\n let oldParentPath: string = \"\"\n if (oldParentId) {\n oldParentPath =\n (await this.getEntityPath(subject, oldParentId)) || \"\"\n }\n\n const entityPath = subject.metadata\n .treeParentRelation!.joinColumns.map((joinColumn) => {\n return joinColumn.referencedColumn!.getEntityValue(entity!)\n })\n .join(\"_\")\n\n const propertyPath =\n subject.metadata.materializedPathColumn!.propertyPath\n await this.queryRunner.manager\n .createQueryBuilder()\n .update(subject.metadata.target)\n .set({\n [propertyPath]: () =>\n `REPLACE(${this.queryRunner.connection.driver.escape(\n propertyPath,\n )}, '${oldParentPath}${entityPath}.', '${newParentPath}${entityPath}.')`,\n } as any)\n .where(`${propertyPath} LIKE :path`, {\n path: `${oldParentPath}${entityPath}.%`,\n })\n .execute()\n }\n\n private getEntityParentReferencedColumnMap(\n subject: Subject,\n entity: ObjectLiteral | undefined,\n ): ObjectLiteral | undefined {\n if (!entity) return undefined\n return EntityMetadata.getValueMap(\n entity,\n subject.metadata\n .treeParentRelation!.joinColumns.map(\n (column) => column.referencedColumn,\n )\n .filter((v) => v != null) as ColumnMetadata[],\n { skipNulls: true },\n )\n }\n\n private getEntityPath(\n subject: Subject,\n id: ObjectLiteral,\n ): Promise<string> {\n const metadata = subject.metadata\n const normalized = (Array.isArray(id) ? id : [id]).map((id) =>\n metadata.ensureEntityIdMap(id),\n )\n return this.queryRunner.manager\n .createQueryBuilder()\n .select(\n subject.metadata.targetName +\n \".\" +\n subject.metadata.materializedPathColumn!.propertyPath,\n \"path\",\n )\n .from(subject.metadata.target, subject.metadata.targetName)\n .where(\n new Brackets((qb) => {\n for (const data of normalized) {\n qb.orWhere(new Brackets((qb) => qb.where(data)))\n }\n }),\n )\n .getRawOne()\n .then((result) => (result ? result[\"path\"] : \"\"))\n }\n}\n"],"sourceRoot":"../.."}
|
|
1
|
+
{"version":3,"file":"MaterializedPathSubjectExecutor.js","sourceRoot":"","sources":["../../../../src/persistence/tree/MaterializedPathSubjectExecutor.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Subject } from \"../Subject\"\nimport type { QueryRunner } from \"../../query-runner/QueryRunner\"\nimport { OrmUtils } from \"../../util/OrmUtils\"\nimport type { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport type { ColumnMetadata } from \"../../metadata/ColumnMetadata\"\nimport { EntityMetadata } from \"../../metadata/EntityMetadata\"\nimport { Brackets } from \"../../query-builder/Brackets\"\n\n/**\n * Executes subject operations for materialized-path tree entities.\n */\nexport class MaterializedPathSubjectExecutor {\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(protected queryRunner: QueryRunner) {}\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Executes operations when subject is being inserted.\n * @param subject\n */\n async insert(subject: Subject): Promise<void> {\n let parent = subject.metadata.treeParentRelation!.getEntityValue(\n subject.entity!,\n ) // if entity was attached via parent\n if (!parent && subject.parentSubject && subject.parentSubject.entity)\n // if entity was attached via children\n parent = subject.parentSubject.insertedValueSet\n ? subject.parentSubject.insertedValueSet\n : subject.parentSubject.entity\n\n const parentId = subject.metadata.getEntityIdMap(parent)\n\n let parentPath: string = \"\"\n if (parentId) {\n parentPath = await this.getEntityPath(subject, parentId)\n }\n\n const insertedEntityId = subject.metadata\n .treeParentRelation!.joinColumns.map((joinColumn) => {\n return joinColumn.referencedColumn!.getEntityValue(\n subject.insertedValueSet!,\n )\n })\n .join(\"_\")\n\n await this.queryRunner.manager\n .createQueryBuilder()\n .update(subject.metadata.target)\n .set({\n [subject.metadata.materializedPathColumn!.propertyPath]:\n parentPath + insertedEntityId + \".\",\n } as any)\n .where(subject.identifier!)\n .execute()\n }\n\n /**\n * Executes operations when subject is being updated.\n * @param subject\n */\n async update(subject: Subject): Promise<void> {\n let newParent = subject.metadata.treeParentRelation!.getEntityValue(\n subject.entity!,\n ) // if entity was attached via parent\n if (!newParent && subject.parentSubject && subject.parentSubject.entity)\n // if entity was attached via children\n newParent = subject.parentSubject.entity\n\n let entity = subject.databaseEntity // if entity was attached via parent\n if (!entity && newParent)\n // if entity was attached via children\n entity = subject.metadata\n .treeChildrenRelation!.getEntityValue(newParent)\n .find((child: any) => {\n return Object.entries(subject.identifier!).every(\n ([key, value]) => child[key] === value,\n )\n })\n\n const oldParent = subject.metadata.treeParentRelation!.getEntityValue(\n entity!,\n )\n const oldParentId = this.getEntityParentReferencedColumnMap(\n subject,\n oldParent,\n )\n const newParentId = this.getEntityParentReferencedColumnMap(\n subject,\n newParent,\n )\n\n // Exit if the new and old parents are the same\n if (OrmUtils.compareIds(oldParentId, newParentId)) {\n return\n }\n\n let newParentPath: string = \"\"\n if (newParentId) {\n newParentPath = await this.getEntityPath(subject, newParentId)\n }\n\n let oldParentPath: string = \"\"\n if (oldParentId) {\n oldParentPath =\n (await this.getEntityPath(subject, oldParentId)) || \"\"\n }\n\n const entityPath = subject.metadata\n .treeParentRelation!.joinColumns.map((joinColumn) => {\n return joinColumn.referencedColumn!.getEntityValue(entity!)\n })\n .join(\"_\")\n\n const propertyPath =\n subject.metadata.materializedPathColumn!.propertyPath\n await this.queryRunner.manager\n .createQueryBuilder()\n .update(subject.metadata.target)\n .set({\n [propertyPath]: () =>\n `REPLACE(${this.queryRunner.dataSource.driver.escape(\n propertyPath,\n )}, '${oldParentPath}${entityPath}.', '${newParentPath}${entityPath}.')`,\n } as any)\n .where(`${propertyPath} LIKE :path`, {\n path: `${oldParentPath}${entityPath}.%`,\n })\n .execute()\n }\n\n private getEntityParentReferencedColumnMap(\n subject: Subject,\n entity: ObjectLiteral | undefined,\n ): ObjectLiteral | undefined {\n if (!entity) return undefined\n return EntityMetadata.getValueMap(\n entity,\n subject.metadata\n .treeParentRelation!.joinColumns.map(\n (column) => column.referencedColumn,\n )\n .filter((v) => v != null) as ColumnMetadata[],\n { skipNulls: true },\n )\n }\n\n private getEntityPath(\n subject: Subject,\n id: ObjectLiteral,\n ): Promise<string> {\n const metadata = subject.metadata\n const normalized = (Array.isArray(id) ? id : [id]).map((id) =>\n metadata.ensureEntityIdMap(id),\n )\n return this.queryRunner.manager\n .createQueryBuilder()\n .select(\n subject.metadata.targetName +\n \".\" +\n subject.metadata.materializedPathColumn!.propertyPath,\n \"path\",\n )\n .from(subject.metadata.target, subject.metadata.targetName)\n .where(\n new Brackets((qb) => {\n for (const data of normalized) {\n qb.orWhere(new Brackets((qb) => qb.where(data)))\n }\n }),\n )\n .withDeleted()\n .getRawOne()\n .then((result) => (result ? result[\"path\"] : \"\"))\n }\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Subject } from "../Subject";
|
|
2
|
-
import { QueryRunner } from "../../query-runner/QueryRunner";
|
|
3
|
-
import { ObjectLiteral } from "../../common/ObjectLiteral";
|
|
4
|
-
import { EntityMetadata } from "../../metadata/EntityMetadata";
|
|
1
|
+
import type { Subject } from "../Subject";
|
|
2
|
+
import type { QueryRunner } from "../../query-runner/QueryRunner";
|
|
3
|
+
import type { ObjectLiteral } from "../../common/ObjectLiteral";
|
|
4
|
+
import type { EntityMetadata } from "../../metadata/EntityMetadata";
|
|
5
5
|
declare class NestedSetIds {
|
|
6
6
|
left: number;
|
|
7
7
|
right: number;
|
|
@@ -14,24 +14,30 @@ export declare class NestedSetSubjectExecutor {
|
|
|
14
14
|
constructor(queryRunner: QueryRunner);
|
|
15
15
|
/**
|
|
16
16
|
* Executes operations when subject is being inserted.
|
|
17
|
+
* @param subject
|
|
17
18
|
*/
|
|
18
19
|
insert(subject: Subject): Promise<void>;
|
|
19
20
|
/**
|
|
20
21
|
* Executes operations when subject is being updated.
|
|
22
|
+
* @param subject
|
|
21
23
|
*/
|
|
22
24
|
update(subject: Subject): Promise<void>;
|
|
23
25
|
/**
|
|
24
26
|
* Executes operations when subject is being removed.
|
|
27
|
+
* @param subjects
|
|
25
28
|
*/
|
|
26
29
|
remove(subjects: Subject | Subject[]): Promise<void>;
|
|
27
30
|
/**
|
|
28
31
|
* Get the nested set ids for a given entity
|
|
32
|
+
* @param metadata
|
|
33
|
+
* @param ids
|
|
29
34
|
*/
|
|
30
35
|
protected getNestedSetIds(metadata: EntityMetadata, ids: ObjectLiteral | ObjectLiteral[]): Promise<NestedSetIds[]>;
|
|
31
36
|
private isUniqueRootEntity;
|
|
32
37
|
/**
|
|
33
38
|
* Gets escaped table name with schema name if SqlServer or Postgres driver used with custom
|
|
34
39
|
* schema name, otherwise returns escaped table name.
|
|
40
|
+
* @param tablePath
|
|
35
41
|
*/
|
|
36
42
|
protected getTableName(tablePath: string): string;
|
|
37
43
|
}
|
|
@@ -20,9 +20,10 @@ class NestedSetSubjectExecutor {
|
|
|
20
20
|
// -------------------------------------------------------------------------
|
|
21
21
|
/**
|
|
22
22
|
* Executes operations when subject is being inserted.
|
|
23
|
+
* @param subject
|
|
23
24
|
*/
|
|
24
25
|
async insert(subject) {
|
|
25
|
-
const escape = (alias) => this.queryRunner.
|
|
26
|
+
const escape = (alias) => this.queryRunner.dataSource.driver.escape(alias);
|
|
26
27
|
const tableName = this.getTableName(subject.metadata.tablePath);
|
|
27
28
|
const leftColumnName = escape(subject.metadata.nestedSetLeftColumn.databaseName);
|
|
28
29
|
const rightColumnName = escape(subject.metadata.nestedSetRightColumn.databaseName);
|
|
@@ -66,6 +67,7 @@ class NestedSetSubjectExecutor {
|
|
|
66
67
|
}
|
|
67
68
|
/**
|
|
68
69
|
* Executes operations when subject is being updated.
|
|
70
|
+
* @param subject
|
|
69
71
|
*/
|
|
70
72
|
async update(subject) {
|
|
71
73
|
let parent = subject.metadata.treeParentRelation.getEntityValue(subject.entity); // if entity was attached via parent
|
|
@@ -92,7 +94,7 @@ class NestedSetSubjectExecutor {
|
|
|
92
94
|
return;
|
|
93
95
|
}
|
|
94
96
|
if (parent) {
|
|
95
|
-
const escape = (alias) => this.queryRunner.
|
|
97
|
+
const escape = (alias) => this.queryRunner.dataSource.driver.escape(alias);
|
|
96
98
|
const tableName = this.getTableName(subject.metadata.tablePath);
|
|
97
99
|
const leftColumnName = escape(subject.metadata.nestedSetLeftColumn.databaseName);
|
|
98
100
|
const rightColumnName = escape(subject.metadata.nestedSetRightColumn.databaseName);
|
|
@@ -168,12 +170,13 @@ class NestedSetSubjectExecutor {
|
|
|
168
170
|
}
|
|
169
171
|
/**
|
|
170
172
|
* Executes operations when subject is being removed.
|
|
173
|
+
* @param subjects
|
|
171
174
|
*/
|
|
172
175
|
async remove(subjects) {
|
|
173
176
|
if (!Array.isArray(subjects))
|
|
174
177
|
subjects = [subjects];
|
|
175
178
|
const metadata = subjects[0].metadata;
|
|
176
|
-
const escape = (alias) => this.queryRunner.
|
|
179
|
+
const escape = (alias) => this.queryRunner.dataSource.driver.escape(alias);
|
|
177
180
|
const tableName = this.getTableName(metadata.tablePath);
|
|
178
181
|
const leftColumnName = escape(metadata.nestedSetLeftColumn.databaseName);
|
|
179
182
|
const rightColumnName = escape(metadata.nestedSetRightColumn.databaseName);
|
|
@@ -200,6 +203,8 @@ class NestedSetSubjectExecutor {
|
|
|
200
203
|
}
|
|
201
204
|
/**
|
|
202
205
|
* Get the nested set ids for a given entity
|
|
206
|
+
* @param metadata
|
|
207
|
+
* @param ids
|
|
203
208
|
*/
|
|
204
209
|
getNestedSetIds(metadata, ids) {
|
|
205
210
|
const select = {
|
|
@@ -231,7 +236,7 @@ class NestedSetSubjectExecutor {
|
|
|
231
236
|
});
|
|
232
237
|
}
|
|
233
238
|
async isUniqueRootEntity(subject, parent) {
|
|
234
|
-
const escape = (alias) => this.queryRunner.
|
|
239
|
+
const escape = (alias) => this.queryRunner.dataSource.driver.escape(alias);
|
|
235
240
|
const tableName = this.getTableName(subject.metadata.tablePath);
|
|
236
241
|
const parameters = [];
|
|
237
242
|
const whereCondition = subject.metadata
|
|
@@ -242,7 +247,7 @@ class NestedSetSubjectExecutor {
|
|
|
242
247
|
return `${columnName} IS NULL`;
|
|
243
248
|
}
|
|
244
249
|
parameters.push(parameter);
|
|
245
|
-
const parameterName = this.queryRunner.
|
|
250
|
+
const parameterName = this.queryRunner.dataSource.driver.createParameter("entity_" + column.databaseName, parameters.length - 1);
|
|
246
251
|
return `${columnName} = ${parameterName}`;
|
|
247
252
|
})
|
|
248
253
|
.join(" AND ");
|
|
@@ -253,6 +258,7 @@ class NestedSetSubjectExecutor {
|
|
|
253
258
|
/**
|
|
254
259
|
* Gets escaped table name with schema name if SqlServer or Postgres driver used with custom
|
|
255
260
|
* schema name, otherwise returns escaped table name.
|
|
261
|
+
* @param tablePath
|
|
256
262
|
*/
|
|
257
263
|
getTableName(tablePath) {
|
|
258
264
|
return tablePath
|
|
@@ -261,11 +267,10 @@ class NestedSetSubjectExecutor {
|
|
|
261
267
|
// this condition need because in SQL Server driver when custom database name was specified and schema name was not, we got `dbName..tableName` string, and doesn't need to escape middle empty string
|
|
262
268
|
return i === ""
|
|
263
269
|
? i
|
|
264
|
-
: this.queryRunner.
|
|
270
|
+
: this.queryRunner.dataSource.driver.escape(i);
|
|
265
271
|
})
|
|
266
272
|
.join(".");
|
|
267
273
|
}
|
|
268
274
|
}
|
|
269
275
|
exports.NestedSetSubjectExecutor = NestedSetSubjectExecutor;
|
|
270
|
-
|
|
271
|
-
//# sourceMappingURL=NestedSetSubjectExecutor.js.map
|
|
276
|
+
//# sourceMappingURL=NestedSetSubjectExecutor.js.map
|