typeorm 0.2.25 → 0.2.29

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.
Files changed (1014) hide show
  1. package/README.md +16 -7
  2. package/browser/cache/DbQueryResultCache.js +14 -14
  3. package/browser/cache/DbQueryResultCache.js.map +1 -1
  4. package/browser/cache/RedisQueryResultCache.js +19 -14
  5. package/browser/cache/RedisQueryResultCache.js.map +1 -1
  6. package/browser/common/DeepPartial.d.ts +1 -1
  7. package/browser/common/DeepPartial.js.map +1 -1
  8. package/browser/common/EntityTarget.d.ts +9 -0
  9. package/browser/common/EntityTarget.js +3 -0
  10. package/browser/common/EntityTarget.js.map +1 -0
  11. package/browser/connection/Connection.d.ts +11 -10
  12. package/browser/connection/Connection.js +63 -40
  13. package/browser/connection/Connection.js.map +1 -1
  14. package/browser/connection/ConnectionMetadataBuilder.js +8 -8
  15. package/browser/connection/ConnectionMetadataBuilder.js.map +1 -1
  16. package/browser/connection/ConnectionOptions.d.ts +2 -1
  17. package/browser/connection/ConnectionOptions.js.map +1 -1
  18. package/browser/connection/ConnectionOptionsReader.js +48 -43
  19. package/browser/connection/ConnectionOptionsReader.js.map +1 -1
  20. package/browser/connection/options-reader/ConnectionOptionsEnvReader.d.ts +5 -1
  21. package/browser/connection/options-reader/ConnectionOptionsEnvReader.js +45 -31
  22. package/browser/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
  23. package/browser/connection/options-reader/ConnectionOptionsXmlReader.js +4 -4
  24. package/browser/connection/options-reader/ConnectionOptionsXmlReader.js.map +1 -1
  25. package/browser/connection/options-reader/ConnectionOptionsYmlReader.d.ts +1 -1
  26. package/browser/connection/options-reader/ConnectionOptionsYmlReader.js +15 -4
  27. package/browser/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
  28. package/browser/decorator/Check.d.ts +2 -2
  29. package/browser/decorator/Check.js.map +1 -1
  30. package/browser/decorator/EntityRepository.d.ts +1 -1
  31. package/browser/decorator/EntityRepository.js.map +1 -1
  32. package/browser/decorator/Exclusion.d.ts +2 -2
  33. package/browser/decorator/Exclusion.js.map +1 -1
  34. package/browser/decorator/Generated.d.ts +1 -1
  35. package/browser/decorator/Generated.js.map +1 -1
  36. package/browser/decorator/Index.d.ts +7 -7
  37. package/browser/decorator/Index.js.map +1 -1
  38. package/browser/decorator/Unique.d.ts +4 -4
  39. package/browser/decorator/Unique.js +12 -1
  40. package/browser/decorator/Unique.js.map +1 -1
  41. package/browser/decorator/columns/Column.d.ts +12 -12
  42. package/browser/decorator/columns/Column.js.map +1 -1
  43. package/browser/decorator/columns/CreateDateColumn.d.ts +1 -1
  44. package/browser/decorator/columns/CreateDateColumn.js.map +1 -1
  45. package/browser/decorator/columns/DeleteDateColumn.d.ts +1 -1
  46. package/browser/decorator/columns/DeleteDateColumn.js.map +1 -1
  47. package/browser/decorator/columns/ObjectIdColumn.d.ts +1 -1
  48. package/browser/decorator/columns/ObjectIdColumn.js.map +1 -1
  49. package/browser/decorator/columns/PrimaryColumn.d.ts +2 -2
  50. package/browser/decorator/columns/PrimaryColumn.js.map +1 -1
  51. package/browser/decorator/columns/PrimaryGeneratedColumn.d.ts +5 -5
  52. package/browser/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  53. package/browser/decorator/columns/UpdateDateColumn.d.ts +1 -1
  54. package/browser/decorator/columns/UpdateDateColumn.js.map +1 -1
  55. package/browser/decorator/columns/VersionColumn.d.ts +1 -1
  56. package/browser/decorator/columns/VersionColumn.js.map +1 -1
  57. package/browser/decorator/columns/ViewColumn.d.ts +1 -1
  58. package/browser/decorator/columns/ViewColumn.js.map +1 -1
  59. package/browser/decorator/entity/ChildEntity.d.ts +1 -1
  60. package/browser/decorator/entity/ChildEntity.js +1 -1
  61. package/browser/decorator/entity/ChildEntity.js.map +1 -1
  62. package/browser/decorator/entity/TableInheritance.d.ts +1 -1
  63. package/browser/decorator/entity/TableInheritance.js.map +1 -1
  64. package/browser/decorator/entity-view/ViewEntity.d.ts +2 -2
  65. package/browser/decorator/entity-view/ViewEntity.js.map +1 -1
  66. package/browser/decorator/listeners/AfterInsert.d.ts +1 -1
  67. package/browser/decorator/listeners/AfterInsert.js.map +1 -1
  68. package/browser/decorator/listeners/AfterLoad.d.ts +1 -1
  69. package/browser/decorator/listeners/AfterLoad.js.map +1 -1
  70. package/browser/decorator/listeners/AfterRemove.d.ts +1 -1
  71. package/browser/decorator/listeners/AfterRemove.js.map +1 -1
  72. package/browser/decorator/listeners/AfterUpdate.d.ts +1 -1
  73. package/browser/decorator/listeners/AfterUpdate.js.map +1 -1
  74. package/browser/decorator/listeners/BeforeInsert.d.ts +1 -1
  75. package/browser/decorator/listeners/BeforeInsert.js.map +1 -1
  76. package/browser/decorator/listeners/BeforeRemove.d.ts +1 -1
  77. package/browser/decorator/listeners/BeforeRemove.js.map +1 -1
  78. package/browser/decorator/listeners/BeforeUpdate.d.ts +1 -1
  79. package/browser/decorator/listeners/BeforeUpdate.js.map +1 -1
  80. package/browser/decorator/listeners/EventSubscriber.d.ts +1 -1
  81. package/browser/decorator/listeners/EventSubscriber.js.map +1 -1
  82. package/browser/decorator/options/ColumnOptions.js.map +1 -1
  83. package/browser/decorator/options/TransactionOptions.js.map +1 -1
  84. package/browser/decorator/relations/JoinColumn.d.ts +3 -3
  85. package/browser/decorator/relations/JoinColumn.js.map +1 -1
  86. package/browser/decorator/relations/JoinTable.d.ts +3 -3
  87. package/browser/decorator/relations/JoinTable.js.map +1 -1
  88. package/browser/decorator/relations/ManyToMany.d.ts +2 -2
  89. package/browser/decorator/relations/ManyToMany.js.map +1 -1
  90. package/browser/decorator/relations/ManyToOne.d.ts +2 -2
  91. package/browser/decorator/relations/ManyToOne.js.map +1 -1
  92. package/browser/decorator/relations/OneToMany.d.ts +3 -3
  93. package/browser/decorator/relations/OneToMany.js +2 -2
  94. package/browser/decorator/relations/OneToMany.js.map +1 -1
  95. package/browser/decorator/relations/OneToOne.d.ts +2 -2
  96. package/browser/decorator/relations/OneToOne.js.map +1 -1
  97. package/browser/decorator/relations/RelationCount.d.ts +1 -1
  98. package/browser/decorator/relations/RelationCount.js.map +1 -1
  99. package/browser/decorator/relations/RelationId.d.ts +1 -1
  100. package/browser/decorator/relations/RelationId.js.map +1 -1
  101. package/browser/decorator/transaction/Transaction.js +4 -4
  102. package/browser/decorator/transaction/Transaction.js.map +1 -1
  103. package/browser/decorator/transaction/TransactionManager.d.ts +1 -1
  104. package/browser/decorator/transaction/TransactionManager.js.map +1 -1
  105. package/browser/decorator/tree/Tree.d.ts +1 -1
  106. package/browser/decorator/tree/Tree.js.map +1 -1
  107. package/browser/decorator/tree/TreeChildren.d.ts +1 -1
  108. package/browser/decorator/tree/TreeChildren.js.map +1 -1
  109. package/browser/decorator/tree/TreeLevelColumn.d.ts +1 -1
  110. package/browser/decorator/tree/TreeLevelColumn.js.map +1 -1
  111. package/browser/decorator/tree/TreeParent.d.ts +1 -1
  112. package/browser/decorator/tree/TreeParent.js.map +1 -1
  113. package/browser/driver/Driver.d.ts +7 -2
  114. package/browser/driver/Driver.js.map +1 -1
  115. package/browser/driver/DriverFactory.js +4 -1
  116. package/browser/driver/DriverFactory.js.map +1 -1
  117. package/browser/driver/DriverUtils.d.ts +2 -2
  118. package/browser/driver/DriverUtils.js +27 -15
  119. package/browser/driver/DriverUtils.js.map +1 -1
  120. package/browser/driver/aurora-data-api/AuroraDataApiConnection.d.ts +2 -1
  121. package/browser/driver/aurora-data-api/AuroraDataApiConnection.js +2 -3
  122. package/browser/driver/aurora-data-api/AuroraDataApiConnection.js.map +1 -1
  123. package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.d.ts +3 -0
  124. package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.js.map +1 -1
  125. package/browser/driver/aurora-data-api/AuroraDataApiDriver.d.ts +6 -1
  126. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js +14 -9
  127. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  128. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.d.ts +5 -0
  129. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +283 -149
  130. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  131. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.d.ts +6 -0
  132. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js.map +1 -1
  133. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.d.ts +57 -0
  134. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +99 -0
  135. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -0
  136. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.d.ts +4 -3
  137. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +66 -20
  138. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  139. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +50 -0
  140. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js +3 -0
  141. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -0
  142. package/browser/driver/better-sqlite3/BetterSqlite3Driver.d.ts +46 -0
  143. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +125 -0
  144. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -0
  145. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +22 -0
  146. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +113 -0
  147. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -0
  148. package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -1
  149. package/browser/driver/cockroachdb/CockroachDriver.d.ts +6 -1
  150. package/browser/driver/cockroachdb/CockroachDriver.js +21 -16
  151. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  152. package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +7 -1
  153. package/browser/driver/cockroachdb/CockroachQueryRunner.js +509 -211
  154. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  155. package/browser/driver/cordova/CordovaDriver.d.ts +2 -1
  156. package/browser/driver/cordova/CordovaDriver.js +4 -5
  157. package/browser/driver/cordova/CordovaDriver.js.map +1 -1
  158. package/browser/driver/cordova/CordovaQueryRunner.js +4 -4
  159. package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
  160. package/browser/driver/expo/ExpoDriver.d.ts +2 -1
  161. package/browser/driver/expo/ExpoDriver.js +4 -5
  162. package/browser/driver/expo/ExpoDriver.js.map +1 -1
  163. package/browser/driver/expo/ExpoQueryRunner.js +82 -24
  164. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  165. package/browser/driver/mongodb/MongoConnectionOptions.d.ts +4 -0
  166. package/browser/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  167. package/browser/driver/mongodb/MongoDriver.d.ts +13 -4
  168. package/browser/driver/mongodb/MongoDriver.js +24 -18
  169. package/browser/driver/mongodb/MongoDriver.js.map +1 -1
  170. package/browser/driver/mongodb/MongoQueryRunner.d.ts +4 -3
  171. package/browser/driver/mongodb/MongoQueryRunner.js +175 -175
  172. package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
  173. package/browser/driver/mongodb/typings.js.map +1 -1
  174. package/browser/driver/mysql/MysqlDriver.d.ts +7 -2
  175. package/browser/driver/mysql/MysqlDriver.js +20 -13
  176. package/browser/driver/mysql/MysqlDriver.js.map +1 -1
  177. package/browser/driver/mysql/MysqlQueryRunner.d.ts +11 -1
  178. package/browser/driver/mysql/MysqlQueryRunner.js +351 -185
  179. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  180. package/browser/driver/nativescript/NativescriptDriver.d.ts +2 -1
  181. package/browser/driver/nativescript/NativescriptDriver.js +4 -5
  182. package/browser/driver/nativescript/NativescriptDriver.js.map +1 -1
  183. package/browser/driver/nativescript/NativescriptQueryRunner.js +2 -2
  184. package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  185. package/browser/driver/oracle/OracleDriver.d.ts +6 -1
  186. package/browser/driver/oracle/OracleDriver.js +17 -12
  187. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  188. package/browser/driver/oracle/OracleQueryRunner.d.ts +3 -1
  189. package/browser/driver/oracle/OracleQueryRunner.js +247 -134
  190. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  191. package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
  192. package/browser/driver/postgres/PostgresConnectionOptions.d.ts +9 -0
  193. package/browser/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  194. package/browser/driver/postgres/PostgresDriver.d.ts +18 -55
  195. package/browser/driver/postgres/PostgresDriver.js +196 -206
  196. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  197. package/browser/driver/postgres/PostgresQueryRunner.d.ts +11 -1
  198. package/browser/driver/postgres/PostgresQueryRunner.js +517 -209
  199. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  200. package/browser/driver/react-native/ReactNativeDriver.d.ts +2 -1
  201. package/browser/driver/react-native/ReactNativeDriver.js +4 -5
  202. package/browser/driver/react-native/ReactNativeDriver.js.map +1 -1
  203. package/browser/driver/react-native/ReactNativeQueryRunner.js +4 -4
  204. package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  205. package/browser/driver/sap/SapDriver.d.ts +6 -1
  206. package/browser/driver/sap/SapDriver.js +12 -7
  207. package/browser/driver/sap/SapDriver.js.map +1 -1
  208. package/browser/driver/sap/SapQueryRunner.d.ts +3 -1
  209. package/browser/driver/sap/SapQueryRunner.js +276 -160
  210. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  211. package/browser/driver/sqlite/SqliteConnectionOptions.d.ts +18 -0
  212. package/browser/driver/sqlite/SqliteConnectionOptions.js.map +1 -1
  213. package/browser/driver/sqlite/SqliteDriver.d.ts +2 -1
  214. package/browser/driver/sqlite/SqliteDriver.js +31 -17
  215. package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
  216. package/browser/driver/sqlite/SqliteQueryRunner.js +37 -18
  217. package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  218. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +7 -2
  219. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +36 -9
  220. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  221. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +1 -0
  222. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +189 -127
  223. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  224. package/browser/driver/sqljs/SqljsDriver.d.ts +2 -1
  225. package/browser/driver/sqljs/SqljsDriver.js +14 -15
  226. package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
  227. package/browser/driver/sqljs/SqljsQueryRunner.js +7 -6
  228. package/browser/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  229. package/browser/driver/sqlserver/SqlServerDriver.d.ts +6 -1
  230. package/browser/driver/sqlserver/SqlServerDriver.js +13 -8
  231. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  232. package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +3 -1
  233. package/browser/driver/sqlserver/SqlServerQueryRunner.js +368 -230
  234. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  235. package/browser/driver/types/ColumnTypes.d.ts +1 -1
  236. package/browser/driver/types/ColumnTypes.js.map +1 -1
  237. package/browser/driver/types/DatabaseType.d.ts +1 -1
  238. package/browser/driver/types/DatabaseType.js.map +1 -1
  239. package/browser/driver/types/ReplicationMode.d.ts +1 -0
  240. package/browser/driver/types/ReplicationMode.js +3 -0
  241. package/browser/driver/types/ReplicationMode.js.map +1 -0
  242. package/browser/entity-manager/EntityManager.d.ts +41 -256
  243. package/browser/entity-manager/EntityManager.js +32 -42
  244. package/browser/entity-manager/EntityManager.js.map +1 -1
  245. package/browser/entity-manager/MongoEntityManager.d.ts +46 -46
  246. package/browser/entity-manager/MongoEntityManager.js +31 -20
  247. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  248. package/browser/entity-manager/SqljsEntityManager.js +6 -6
  249. package/browser/entity-manager/SqljsEntityManager.js.map +1 -1
  250. package/browser/entity-schema/EntitySchemaColumnOptions.js.map +1 -1
  251. package/browser/entity-schema/EntitySchemaRelationOptions.d.ts +1 -1
  252. package/browser/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
  253. package/browser/entity-schema/EntitySchemaTransformer.js +22 -7
  254. package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
  255. package/browser/error/AlreadyHasActiveConnectionError.js +2 -2
  256. package/browser/error/AlreadyHasActiveConnectionError.js.map +1 -1
  257. package/browser/error/CannotAttachTreeChildrenEntityError.js +2 -2
  258. package/browser/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
  259. package/browser/error/CannotConnectAlreadyConnectedError.js +2 -2
  260. package/browser/error/CannotConnectAlreadyConnectedError.js.map +1 -1
  261. package/browser/error/CannotCreateEntityIdMapError.js +2 -2
  262. package/browser/error/CannotCreateEntityIdMapError.js.map +1 -1
  263. package/browser/error/CannotDetermineEntityError.js +2 -2
  264. package/browser/error/CannotDetermineEntityError.js.map +1 -1
  265. package/browser/error/CannotExecuteNotConnectedError.js +2 -2
  266. package/browser/error/CannotExecuteNotConnectedError.js.map +1 -1
  267. package/browser/error/CannotGetEntityManagerNotConnectedError.js +2 -2
  268. package/browser/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
  269. package/browser/error/CannotReflectMethodParameterTypeError.js +2 -2
  270. package/browser/error/CannotReflectMethodParameterTypeError.js.map +1 -1
  271. package/browser/error/CircularRelationsError.js +2 -2
  272. package/browser/error/CircularRelationsError.js.map +1 -1
  273. package/browser/error/ColumnTypeUndefinedError.js +2 -2
  274. package/browser/error/ColumnTypeUndefinedError.js.map +1 -1
  275. package/browser/error/ConnectionIsNotSetError.js +2 -2
  276. package/browser/error/ConnectionIsNotSetError.js.map +1 -1
  277. package/browser/error/ConnectionNotFoundError.js +2 -2
  278. package/browser/error/ConnectionNotFoundError.js.map +1 -1
  279. package/browser/error/CustomRepositoryCannotInheritRepositoryError.js +2 -2
  280. package/browser/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
  281. package/browser/error/CustomRepositoryDoesNotHaveEntityError.js +2 -2
  282. package/browser/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
  283. package/browser/error/CustomRepositoryNotFoundError.js +2 -2
  284. package/browser/error/CustomRepositoryNotFoundError.js.map +1 -1
  285. package/browser/error/DataTypeNotSupportedError.js +2 -2
  286. package/browser/error/DataTypeNotSupportedError.js.map +1 -1
  287. package/browser/error/DriverOptionNotSetError.js +2 -2
  288. package/browser/error/DriverOptionNotSetError.js.map +1 -1
  289. package/browser/error/DriverPackageNotInstalledError.js +2 -2
  290. package/browser/error/DriverPackageNotInstalledError.js.map +1 -1
  291. package/browser/error/EntityColumnNotFound.js +2 -2
  292. package/browser/error/EntityColumnNotFound.js.map +1 -1
  293. package/browser/error/EntityMetadataNotFoundError.d.ts +2 -2
  294. package/browser/error/EntityMetadataNotFoundError.js +5 -2
  295. package/browser/error/EntityMetadataNotFoundError.js.map +1 -1
  296. package/browser/error/EntityNotFoundError.d.ts +2 -3
  297. package/browser/error/EntityNotFoundError.js +5 -2
  298. package/browser/error/EntityNotFoundError.js.map +1 -1
  299. package/browser/error/FindRelationsNotFoundError.js +4 -4
  300. package/browser/error/FindRelationsNotFoundError.js.map +1 -1
  301. package/browser/error/InitializedRelationError.js +2 -2
  302. package/browser/error/InitializedRelationError.js.map +1 -1
  303. package/browser/error/InsertValuesMissingError.js +2 -2
  304. package/browser/error/InsertValuesMissingError.js.map +1 -1
  305. package/browser/error/LimitOnUpdateNotSupportedError.js +2 -2
  306. package/browser/error/LimitOnUpdateNotSupportedError.js.map +1 -1
  307. package/browser/error/LockNotSupportedOnGivenDriverError.js +2 -2
  308. package/browser/error/LockNotSupportedOnGivenDriverError.js.map +1 -1
  309. package/browser/error/MetadataAlreadyExistsError.js +2 -2
  310. package/browser/error/MetadataAlreadyExistsError.js.map +1 -1
  311. package/browser/error/MetadataWithSuchNameAlreadyExistsError.js +2 -2
  312. package/browser/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -1
  313. package/browser/error/MissingDeleteDateColumnError.js +2 -2
  314. package/browser/error/MissingDeleteDateColumnError.js.map +1 -1
  315. package/browser/error/MissingDriverError.js +3 -3
  316. package/browser/error/MissingDriverError.js.map +1 -1
  317. package/browser/error/MissingJoinColumnError.js +2 -2
  318. package/browser/error/MissingJoinColumnError.js.map +1 -1
  319. package/browser/error/MissingJoinTableError.js +2 -2
  320. package/browser/error/MissingJoinTableError.js.map +1 -1
  321. package/browser/error/MissingPrimaryColumnError.js +2 -2
  322. package/browser/error/MissingPrimaryColumnError.js.map +1 -1
  323. package/browser/error/MustBeEntityError.js +2 -2
  324. package/browser/error/MustBeEntityError.js.map +1 -1
  325. package/browser/error/NamingStrategyNotFoundError.js +2 -2
  326. package/browser/error/NamingStrategyNotFoundError.js.map +1 -1
  327. package/browser/error/NoConnectionForRepositoryError.js +2 -2
  328. package/browser/error/NoConnectionForRepositoryError.js.map +1 -1
  329. package/browser/error/NoConnectionOptionError.js +2 -2
  330. package/browser/error/NoConnectionOptionError.js.map +1 -1
  331. package/browser/error/NoNeedToReleaseEntityManagerError.js +2 -2
  332. package/browser/error/NoNeedToReleaseEntityManagerError.js.map +1 -1
  333. package/browser/error/NoVersionOrUpdateDateColumnError.js +2 -2
  334. package/browser/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
  335. package/browser/error/OffsetWithoutLimitNotSupportedError.js +2 -2
  336. package/browser/error/OffsetWithoutLimitNotSupportedError.js.map +1 -1
  337. package/browser/error/OptimisticLockCanNotBeUsedError.js +2 -2
  338. package/browser/error/OptimisticLockCanNotBeUsedError.js.map +1 -1
  339. package/browser/error/OptimisticLockVersionMismatchError.js +2 -2
  340. package/browser/error/OptimisticLockVersionMismatchError.js.map +1 -1
  341. package/browser/error/PersistedEntityNotFoundError.js +2 -2
  342. package/browser/error/PersistedEntityNotFoundError.js.map +1 -1
  343. package/browser/error/PessimisticLockTransactionRequiredError.js +2 -2
  344. package/browser/error/PessimisticLockTransactionRequiredError.js.map +1 -1
  345. package/browser/error/PrimaryColumnCannotBeNullableError.js +2 -2
  346. package/browser/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
  347. package/browser/error/QueryFailedError.js +3 -3
  348. package/browser/error/QueryFailedError.js.map +1 -1
  349. package/browser/error/QueryRunnerAlreadyReleasedError.js +2 -2
  350. package/browser/error/QueryRunnerAlreadyReleasedError.js.map +1 -1
  351. package/browser/error/QueryRunnerProviderAlreadyReleasedError.js +2 -2
  352. package/browser/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -1
  353. package/browser/error/RepositoryNotFoundError.d.ts +2 -2
  354. package/browser/error/RepositoryNotFoundError.js +5 -2
  355. package/browser/error/RepositoryNotFoundError.js.map +1 -1
  356. package/browser/error/RepositoryNotTreeError.d.ts +2 -2
  357. package/browser/error/RepositoryNotTreeError.js +11 -8
  358. package/browser/error/RepositoryNotTreeError.js.map +1 -1
  359. package/browser/error/ReturningStatementNotSupportedError.js +2 -2
  360. package/browser/error/ReturningStatementNotSupportedError.js.map +1 -1
  361. package/browser/error/SubjectRemovedAndUpdatedError.js +2 -2
  362. package/browser/error/SubjectRemovedAndUpdatedError.js.map +1 -1
  363. package/browser/error/SubjectWithoutIdentifierError.js +2 -2
  364. package/browser/error/SubjectWithoutIdentifierError.js.map +1 -1
  365. package/browser/error/TransactionAlreadyStartedError.js +2 -2
  366. package/browser/error/TransactionAlreadyStartedError.js.map +1 -1
  367. package/browser/error/TransactionNotStartedError.js +2 -2
  368. package/browser/error/TransactionNotStartedError.js.map +1 -1
  369. package/browser/error/TreeRepositoryNotSupportedError.js +2 -2
  370. package/browser/error/TreeRepositoryNotSupportedError.js.map +1 -1
  371. package/browser/error/UpdateValuesMissingError.js +2 -2
  372. package/browser/error/UpdateValuesMissingError.js.map +1 -1
  373. package/browser/error/UsingJoinColumnIsNotAllowedError.js +2 -2
  374. package/browser/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
  375. package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +2 -2
  376. package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
  377. package/browser/error/UsingJoinTableIsNotAllowedError.js +2 -2
  378. package/browser/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
  379. package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js +2 -2
  380. package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
  381. package/browser/find-options/FindOneOptions.d.ts +4 -0
  382. package/browser/find-options/FindOneOptions.js.map +1 -1
  383. package/browser/find-options/FindOperator.d.ts +26 -4
  384. package/browser/find-options/FindOperator.js +49 -50
  385. package/browser/find-options/FindOperator.js.map +1 -1
  386. package/browser/find-options/FindOperatorType.d.ts +1 -1
  387. package/browser/find-options/FindOperatorType.js.map +1 -1
  388. package/browser/find-options/FindOptionsUtils.d.ts +2 -2
  389. package/browser/find-options/FindOptionsUtils.js +5 -1
  390. package/browser/find-options/FindOptionsUtils.js.map +1 -1
  391. package/browser/find-options/operator/Any.d.ts +1 -1
  392. package/browser/find-options/operator/Any.js.map +1 -1
  393. package/browser/find-options/operator/Between.d.ts +1 -1
  394. package/browser/find-options/operator/Between.js.map +1 -1
  395. package/browser/find-options/operator/ILike.d.ts +6 -0
  396. package/browser/find-options/operator/ILike.js +10 -0
  397. package/browser/find-options/operator/ILike.js.map +1 -0
  398. package/browser/find-options/operator/In.d.ts +1 -1
  399. package/browser/find-options/operator/In.js.map +1 -1
  400. package/browser/find-options/operator/Raw.d.ts +14 -2
  401. package/browser/find-options/operator/Raw.js +5 -6
  402. package/browser/find-options/operator/Raw.js.map +1 -1
  403. package/browser/index.d.ts +10 -11
  404. package/browser/index.js +9 -15
  405. package/browser/index.js.map +1 -1
  406. package/browser/logger/DebugLogger.d.ts +0 -1
  407. package/browser/logger/DebugLogger.js +9 -9
  408. package/browser/logger/DebugLogger.js.map +1 -1
  409. package/browser/logger/FileLogger.d.ts +3 -1
  410. package/browser/logger/FileLogger.js +9 -3
  411. package/browser/logger/FileLogger.js.map +1 -1
  412. package/browser/logger/Logger.d.ts +1 -1
  413. package/browser/logger/Logger.js.map +1 -1
  414. package/browser/logger/LoggerOptions.d.ts +9 -0
  415. package/browser/logger/LoggerOptions.js.map +1 -1
  416. package/browser/metadata/ColumnMetadata.js +29 -19
  417. package/browser/metadata/ColumnMetadata.js.map +1 -1
  418. package/browser/metadata/EmbeddedMetadata.js +2 -2
  419. package/browser/metadata/EmbeddedMetadata.js.map +1 -1
  420. package/browser/metadata/EntityMetadata.d.ts +1 -0
  421. package/browser/metadata/EntityMetadata.js +13 -5
  422. package/browser/metadata/EntityMetadata.js.map +1 -1
  423. package/browser/metadata/RelationMetadata.js +7 -7
  424. package/browser/metadata/RelationMetadata.js.map +1 -1
  425. package/browser/metadata/types/EventListenerTypes.d.ts +7 -7
  426. package/browser/metadata/types/EventListenerTypes.js.map +1 -1
  427. package/browser/metadata-args/EntityRepositoryMetadataArgs.d.ts +2 -2
  428. package/browser/metadata-args/EntityRepositoryMetadataArgs.js.map +1 -1
  429. package/browser/metadata-args/RelationCountMetadataArgs.js.map +1 -1
  430. package/browser/metadata-args/RelationIdMetadataArgs.js.map +1 -1
  431. package/browser/metadata-builder/EntityMetadataBuilder.js +21 -15
  432. package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  433. package/browser/metadata-builder/EntityMetadataValidator.js +8 -5
  434. package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
  435. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +3 -2
  436. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  437. package/browser/migration/MigrationExecutor.js +132 -103
  438. package/browser/migration/MigrationExecutor.js.map +1 -1
  439. package/browser/naming-strategy/DefaultNamingStrategy.js +6 -6
  440. package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  441. package/browser/persistence/EntityPersistExecutor.js +65 -47
  442. package/browser/persistence/EntityPersistExecutor.js.map +1 -1
  443. package/browser/persistence/Subject.js +4 -3
  444. package/browser/persistence/Subject.js.map +1 -1
  445. package/browser/persistence/SubjectDatabaseEntityLoader.js +9 -8
  446. package/browser/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  447. package/browser/persistence/SubjectExecutor.js +263 -206
  448. package/browser/persistence/SubjectExecutor.js.map +1 -1
  449. package/browser/persistence/SubjectTopoligicalSorter.js +6 -6
  450. package/browser/persistence/SubjectTopoligicalSorter.js.map +1 -1
  451. package/browser/persistence/subject-builder/CascadesSubjectBuilder.js +2 -2
  452. package/browser/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
  453. package/browser/persistence/tree/ClosureSubjectExecutor.js +4 -4
  454. package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  455. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js +5 -4
  456. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  457. package/browser/persistence/tree/NestedSetSubjectExecutor.js +3 -3
  458. package/browser/platform/BrowserConnectionOptionsReaderDummy.d.ts +38 -0
  459. package/browser/platform/BrowserConnectionOptionsReaderDummy.js +93 -0
  460. package/browser/platform/BrowserConnectionOptionsReaderDummy.js.map +1 -0
  461. package/browser/platform/BrowserDirectoryExportedClassesLoader.d.ts +15 -0
  462. package/browser/platform/BrowserDirectoryExportedClassesLoader.js +22 -0
  463. package/browser/platform/BrowserDirectoryExportedClassesLoader.js.map +1 -0
  464. package/browser/platform/BrowserDisabledDriversDummy.d.ts +32 -2
  465. package/browser/platform/BrowserDisabledDriversDummy.js +52 -2
  466. package/browser/platform/BrowserDisabledDriversDummy.js.map +1 -1
  467. package/browser/platform/BrowserFileLoggerDummy.d.ts +33 -0
  468. package/browser/platform/BrowserFileLoggerDummy.js +58 -0
  469. package/browser/platform/BrowserFileLoggerDummy.js.map +1 -0
  470. package/browser/platform/BrowserPlatformTools.d.ts +74 -0
  471. package/browser/platform/BrowserPlatformTools.js +157 -0
  472. package/browser/platform/BrowserPlatformTools.js.map +1 -0
  473. package/browser/platform/PlatformTools.d.ts +15 -21
  474. package/browser/platform/PlatformTools.js +142 -81
  475. package/browser/platform/PlatformTools.js.map +1 -1
  476. package/browser/query-builder/Alias.js.map +1 -1
  477. package/browser/query-builder/DeleteQueryBuilder.d.ts +2 -3
  478. package/browser/query-builder/DeleteQueryBuilder.js +12 -6
  479. package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
  480. package/browser/query-builder/InsertQueryBuilder.d.ts +2 -3
  481. package/browser/query-builder/InsertQueryBuilder.js +49 -16
  482. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  483. package/browser/query-builder/JoinAttribute.js +2 -2
  484. package/browser/query-builder/JoinAttribute.js.map +1 -1
  485. package/browser/query-builder/QueryBuilder.d.ts +18 -15
  486. package/browser/query-builder/QueryBuilder.js +205 -55
  487. package/browser/query-builder/QueryBuilder.js.map +1 -1
  488. package/browser/query-builder/QueryBuilderUtils.js +2 -2
  489. package/browser/query-builder/QueryBuilderUtils.js.map +1 -1
  490. package/browser/query-builder/QueryExpressionMap.d.ts +4 -0
  491. package/browser/query-builder/QueryExpressionMap.js +4 -4
  492. package/browser/query-builder/QueryExpressionMap.js.map +1 -1
  493. package/browser/query-builder/QueryPartialEntity.d.ts +1 -1
  494. package/browser/query-builder/QueryPartialEntity.js.map +1 -1
  495. package/browser/query-builder/RelationIdLoader.js +5 -5
  496. package/browser/query-builder/RelationLoader.js +3 -3
  497. package/browser/query-builder/RelationLoader.js.map +1 -1
  498. package/browser/query-builder/RelationQueryBuilder.js +14 -14
  499. package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
  500. package/browser/query-builder/RelationRemover.js +7 -7
  501. package/browser/query-builder/RelationRemover.js.map +1 -1
  502. package/browser/query-builder/RelationUpdater.js +3 -3
  503. package/browser/query-builder/ReturningResultsEntityUpdator.js +30 -31
  504. package/browser/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
  505. package/browser/query-builder/SelectQueryBuilder.d.ts +9 -3
  506. package/browser/query-builder/SelectQueryBuilder.js +116 -68
  507. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  508. package/browser/query-builder/SoftDeleteQueryBuilder.d.ts +2 -3
  509. package/browser/query-builder/SoftDeleteQueryBuilder.js +6 -6
  510. package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  511. package/browser/query-builder/UpdateQueryBuilder.js +13 -7
  512. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  513. package/browser/query-builder/relation-count/RelationCountAttribute.js +3 -3
  514. package/browser/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
  515. package/browser/query-builder/relation-count/RelationCountLoader.js +5 -5
  516. package/browser/query-builder/relation-id/RelationIdAttribute.js +2 -2
  517. package/browser/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
  518. package/browser/query-builder/relation-id/RelationIdLoader.js +6 -6
  519. package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  520. package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +4 -4
  521. package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
  522. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +9 -6
  523. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  524. package/browser/query-runner/BaseQueryRunner.d.ts +2 -5
  525. package/browser/query-runner/BaseQueryRunner.js +106 -56
  526. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  527. package/browser/query-runner/QueryRunner.d.ts +2 -1
  528. package/browser/query-runner/QueryRunner.js.map +1 -1
  529. package/browser/repository/AbstractRepository.js.map +1 -1
  530. package/browser/repository/BaseEntity.js +5 -5
  531. package/browser/repository/BaseEntity.js.map +1 -1
  532. package/browser/repository/MongoRepository.js +2 -2
  533. package/browser/repository/MongoRepository.js.map +1 -1
  534. package/browser/repository/Repository.js +3 -3
  535. package/browser/repository/Repository.js.map +1 -1
  536. package/browser/repository/TreeRepository.js +6 -6
  537. package/browser/repository/TreeRepository.js.map +1 -1
  538. package/browser/schema-builder/MongoSchemaBuilder.js +4 -4
  539. package/browser/schema-builder/MongoSchemaBuilder.js.map +1 -1
  540. package/browser/schema-builder/RdbmsSchemaBuilder.js +924 -368
  541. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  542. package/browser/schema-builder/options/TableIndexOptions.d.ts +1 -1
  543. package/browser/schema-builder/options/TableIndexOptions.js.map +1 -1
  544. package/browser/schema-builder/table/TableCheck.js +2 -2
  545. package/browser/schema-builder/table/TableCheck.js.map +1 -1
  546. package/browser/schema-builder/table/TableForeignKey.js +3 -3
  547. package/browser/schema-builder/table/TableForeignKey.js.map +1 -1
  548. package/browser/schema-builder/table/TableIndex.js +2 -2
  549. package/browser/schema-builder/table/TableIndex.js.map +1 -1
  550. package/browser/schema-builder/table/TableUnique.js +2 -2
  551. package/browser/schema-builder/table/TableUnique.js.map +1 -1
  552. package/browser/schema-builder/view/View.d.ts +1 -2
  553. package/browser/schema-builder/view/View.js.map +1 -1
  554. package/browser/subscriber/Broadcaster.d.ts +24 -0
  555. package/browser/subscriber/Broadcaster.js +120 -0
  556. package/browser/subscriber/Broadcaster.js.map +1 -1
  557. package/browser/subscriber/EntitySubscriberInterface.d.ts +27 -0
  558. package/browser/subscriber/EntitySubscriberInterface.js.map +1 -1
  559. package/browser/subscriber/event/TransactionCommitEvent.d.ts +22 -0
  560. package/browser/subscriber/event/TransactionCommitEvent.js +3 -0
  561. package/browser/subscriber/event/TransactionCommitEvent.js.map +1 -0
  562. package/browser/subscriber/event/TransactionRollbackEvent.d.ts +22 -0
  563. package/browser/subscriber/event/TransactionRollbackEvent.js +3 -0
  564. package/browser/subscriber/event/TransactionRollbackEvent.js.map +1 -0
  565. package/browser/subscriber/event/TransactionStartEvent.d.ts +22 -0
  566. package/browser/subscriber/event/TransactionStartEvent.js +3 -0
  567. package/browser/subscriber/event/TransactionStartEvent.js.map +1 -0
  568. package/browser/util/ApplyValueTransformers.js.map +1 -1
  569. package/browser/util/DateUtils.js +3 -9
  570. package/browser/util/DateUtils.js.map +1 -1
  571. package/browser/util/DirectoryExportedClassesLoader.js +6 -5
  572. package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
  573. package/browser/util/ObjectUtils.js +4 -4
  574. package/browser/util/ObjectUtils.js.map +1 -1
  575. package/browser/util/OrmUtils.js +5 -8
  576. package/browser/util/OrmUtils.js.map +1 -1
  577. package/cache/DbQueryResultCache.js +1 -1
  578. package/cache/DbQueryResultCache.js.map +1 -1
  579. package/cache/RedisQueryResultCache.js +6 -1
  580. package/cache/RedisQueryResultCache.js.map +1 -1
  581. package/commands/CacheClearCommand.js +4 -4
  582. package/commands/CacheClearCommand.js.map +1 -1
  583. package/commands/CommandUtils.d.ts +1 -1
  584. package/commands/CommandUtils.js +2 -2
  585. package/commands/CommandUtils.js.map +1 -1
  586. package/commands/EntityCreateCommand.js +9 -6
  587. package/commands/EntityCreateCommand.js.map +1 -1
  588. package/commands/InitCommand.js +15 -5
  589. package/commands/InitCommand.js.map +1 -1
  590. package/commands/MigrationCreateCommand.js +8 -5
  591. package/commands/MigrationCreateCommand.js.map +1 -1
  592. package/commands/MigrationGenerateCommand.d.ts +7 -1
  593. package/commands/MigrationGenerateCommand.js +53 -32
  594. package/commands/MigrationGenerateCommand.js.map +1 -1
  595. package/commands/MigrationRevertCommand.js +2 -2
  596. package/commands/MigrationRevertCommand.js.map +1 -1
  597. package/commands/MigrationRunCommand.js +2 -2
  598. package/commands/MigrationRunCommand.js.map +1 -1
  599. package/commands/MigrationShowCommand.js +2 -2
  600. package/commands/MigrationShowCommand.js.map +1 -1
  601. package/commands/QueryCommand.d.ts +2 -0
  602. package/commands/QueryCommand.js +16 -7
  603. package/commands/QueryCommand.js.map +1 -1
  604. package/commands/SchemaDropCommand.js +3 -3
  605. package/commands/SchemaDropCommand.js.map +1 -1
  606. package/commands/SchemaLogCommand.js +6 -6
  607. package/commands/SchemaLogCommand.js.map +1 -1
  608. package/commands/SchemaSyncCommand.js +3 -3
  609. package/commands/SchemaSyncCommand.js.map +1 -1
  610. package/commands/SubscriberCreateCommand.js +8 -5
  611. package/commands/SubscriberCreateCommand.js.map +1 -1
  612. package/commands/VersionCommand.js +2 -2
  613. package/commands/VersionCommand.js.map +1 -1
  614. package/common/DeepPartial.d.ts +1 -1
  615. package/common/DeepPartial.js.map +1 -1
  616. package/common/EntityTarget.d.ts +9 -0
  617. package/common/EntityTarget.js +4 -0
  618. package/common/EntityTarget.js.map +1 -0
  619. package/connection/Connection.d.ts +11 -10
  620. package/connection/Connection.js +45 -22
  621. package/connection/Connection.js.map +1 -1
  622. package/connection/ConnectionOptions.d.ts +2 -1
  623. package/connection/ConnectionOptions.js.map +1 -1
  624. package/connection/ConnectionOptionsReader.js +39 -34
  625. package/connection/ConnectionOptionsReader.js.map +1 -1
  626. package/connection/options-reader/ConnectionOptionsEnvReader.d.ts +5 -1
  627. package/connection/options-reader/ConnectionOptionsEnvReader.js +45 -31
  628. package/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
  629. package/connection/options-reader/ConnectionOptionsXmlReader.js +2 -2
  630. package/connection/options-reader/ConnectionOptionsXmlReader.js.map +1 -1
  631. package/connection/options-reader/ConnectionOptionsYmlReader.d.ts +1 -1
  632. package/connection/options-reader/ConnectionOptionsYmlReader.js +15 -4
  633. package/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
  634. package/decorator/Check.d.ts +2 -2
  635. package/decorator/Check.js.map +1 -1
  636. package/decorator/EntityRepository.d.ts +1 -1
  637. package/decorator/EntityRepository.js.map +1 -1
  638. package/decorator/Exclusion.d.ts +2 -2
  639. package/decorator/Exclusion.js.map +1 -1
  640. package/decorator/Generated.d.ts +1 -1
  641. package/decorator/Generated.js.map +1 -1
  642. package/decorator/Index.d.ts +7 -7
  643. package/decorator/Index.js.map +1 -1
  644. package/decorator/Unique.d.ts +4 -4
  645. package/decorator/Unique.js +12 -1
  646. package/decorator/Unique.js.map +1 -1
  647. package/decorator/columns/Column.d.ts +12 -12
  648. package/decorator/columns/Column.js.map +1 -1
  649. package/decorator/columns/CreateDateColumn.d.ts +1 -1
  650. package/decorator/columns/CreateDateColumn.js.map +1 -1
  651. package/decorator/columns/DeleteDateColumn.d.ts +1 -1
  652. package/decorator/columns/DeleteDateColumn.js.map +1 -1
  653. package/decorator/columns/ObjectIdColumn.d.ts +1 -1
  654. package/decorator/columns/ObjectIdColumn.js.map +1 -1
  655. package/decorator/columns/PrimaryColumn.d.ts +2 -2
  656. package/decorator/columns/PrimaryColumn.js.map +1 -1
  657. package/decorator/columns/PrimaryGeneratedColumn.d.ts +5 -5
  658. package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  659. package/decorator/columns/UpdateDateColumn.d.ts +1 -1
  660. package/decorator/columns/UpdateDateColumn.js.map +1 -1
  661. package/decorator/columns/VersionColumn.d.ts +1 -1
  662. package/decorator/columns/VersionColumn.js.map +1 -1
  663. package/decorator/columns/ViewColumn.d.ts +1 -1
  664. package/decorator/columns/ViewColumn.js.map +1 -1
  665. package/decorator/entity/ChildEntity.d.ts +1 -1
  666. package/decorator/entity/ChildEntity.js +1 -1
  667. package/decorator/entity/ChildEntity.js.map +1 -1
  668. package/decorator/entity/TableInheritance.d.ts +1 -1
  669. package/decorator/entity/TableInheritance.js.map +1 -1
  670. package/decorator/entity-view/ViewEntity.d.ts +2 -2
  671. package/decorator/entity-view/ViewEntity.js.map +1 -1
  672. package/decorator/listeners/AfterInsert.d.ts +1 -1
  673. package/decorator/listeners/AfterInsert.js.map +1 -1
  674. package/decorator/listeners/AfterLoad.d.ts +1 -1
  675. package/decorator/listeners/AfterLoad.js.map +1 -1
  676. package/decorator/listeners/AfterRemove.d.ts +1 -1
  677. package/decorator/listeners/AfterRemove.js.map +1 -1
  678. package/decorator/listeners/AfterUpdate.d.ts +1 -1
  679. package/decorator/listeners/AfterUpdate.js.map +1 -1
  680. package/decorator/listeners/BeforeInsert.d.ts +1 -1
  681. package/decorator/listeners/BeforeInsert.js.map +1 -1
  682. package/decorator/listeners/BeforeRemove.d.ts +1 -1
  683. package/decorator/listeners/BeforeRemove.js.map +1 -1
  684. package/decorator/listeners/BeforeUpdate.d.ts +1 -1
  685. package/decorator/listeners/BeforeUpdate.js.map +1 -1
  686. package/decorator/listeners/EventSubscriber.d.ts +1 -1
  687. package/decorator/listeners/EventSubscriber.js.map +1 -1
  688. package/decorator/options/ColumnOptions.js.map +1 -1
  689. package/decorator/options/TransactionOptions.js.map +1 -1
  690. package/decorator/relations/JoinColumn.d.ts +3 -3
  691. package/decorator/relations/JoinColumn.js.map +1 -1
  692. package/decorator/relations/JoinTable.d.ts +3 -3
  693. package/decorator/relations/JoinTable.js.map +1 -1
  694. package/decorator/relations/ManyToMany.d.ts +2 -2
  695. package/decorator/relations/ManyToMany.js.map +1 -1
  696. package/decorator/relations/ManyToOne.d.ts +2 -2
  697. package/decorator/relations/ManyToOne.js.map +1 -1
  698. package/decorator/relations/OneToMany.d.ts +3 -3
  699. package/decorator/relations/OneToMany.js +2 -2
  700. package/decorator/relations/OneToMany.js.map +1 -1
  701. package/decorator/relations/OneToOne.d.ts +2 -2
  702. package/decorator/relations/OneToOne.js.map +1 -1
  703. package/decorator/relations/RelationCount.d.ts +1 -1
  704. package/decorator/relations/RelationCount.js.map +1 -1
  705. package/decorator/relations/RelationId.d.ts +1 -1
  706. package/decorator/relations/RelationId.js.map +1 -1
  707. package/decorator/transaction/TransactionManager.d.ts +1 -1
  708. package/decorator/transaction/TransactionManager.js.map +1 -1
  709. package/decorator/tree/Tree.d.ts +1 -1
  710. package/decorator/tree/Tree.js.map +1 -1
  711. package/decorator/tree/TreeChildren.d.ts +1 -1
  712. package/decorator/tree/TreeChildren.js.map +1 -1
  713. package/decorator/tree/TreeLevelColumn.d.ts +1 -1
  714. package/decorator/tree/TreeLevelColumn.js.map +1 -1
  715. package/decorator/tree/TreeParent.d.ts +1 -1
  716. package/decorator/tree/TreeParent.js.map +1 -1
  717. package/driver/Driver.d.ts +7 -2
  718. package/driver/Driver.js.map +1 -1
  719. package/driver/DriverFactory.js +5 -2
  720. package/driver/DriverFactory.js.map +1 -1
  721. package/driver/DriverUtils.d.ts +2 -2
  722. package/driver/DriverUtils.js +25 -13
  723. package/driver/DriverUtils.js.map +1 -1
  724. package/driver/aurora-data-api/AuroraDataApiConnection.d.ts +2 -1
  725. package/driver/aurora-data-api/AuroraDataApiConnection.js +0 -1
  726. package/driver/aurora-data-api/AuroraDataApiConnection.js.map +1 -1
  727. package/driver/aurora-data-api/AuroraDataApiConnectionOptions.d.ts +3 -0
  728. package/driver/aurora-data-api/AuroraDataApiConnectionOptions.js.map +1 -1
  729. package/driver/aurora-data-api/AuroraDataApiDriver.d.ts +6 -1
  730. package/driver/aurora-data-api/AuroraDataApiDriver.js +7 -2
  731. package/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  732. package/driver/aurora-data-api/AuroraDataApiQueryRunner.d.ts +4 -0
  733. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +159 -25
  734. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  735. package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.d.ts +6 -0
  736. package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js.map +1 -1
  737. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.d.ts +57 -0
  738. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +101 -0
  739. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -0
  740. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.d.ts +4 -3
  741. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +53 -7
  742. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  743. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +50 -0
  744. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js +4 -0
  745. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -0
  746. package/driver/better-sqlite3/BetterSqlite3Driver.d.ts +46 -0
  747. package/driver/better-sqlite3/BetterSqlite3Driver.js +127 -0
  748. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -0
  749. package/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +22 -0
  750. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +115 -0
  751. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -0
  752. package/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -1
  753. package/driver/cockroachdb/CockroachDriver.d.ts +6 -1
  754. package/driver/cockroachdb/CockroachDriver.js +9 -4
  755. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  756. package/driver/cockroachdb/CockroachQueryRunner.d.ts +6 -1
  757. package/driver/cockroachdb/CockroachQueryRunner.js +392 -94
  758. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  759. package/driver/cordova/CordovaDriver.d.ts +2 -1
  760. package/driver/cordova/CordovaDriver.js +0 -1
  761. package/driver/cordova/CordovaDriver.js.map +1 -1
  762. package/driver/expo/ExpoDriver.d.ts +2 -1
  763. package/driver/expo/ExpoDriver.js +0 -1
  764. package/driver/expo/ExpoDriver.js.map +1 -1
  765. package/driver/expo/ExpoQueryRunner.js +72 -14
  766. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  767. package/driver/mongodb/MongoConnectionOptions.d.ts +4 -0
  768. package/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  769. package/driver/mongodb/MongoDriver.d.ts +13 -4
  770. package/driver/mongodb/MongoDriver.js +21 -15
  771. package/driver/mongodb/MongoDriver.js.map +1 -1
  772. package/driver/mongodb/MongoQueryRunner.d.ts +3 -3
  773. package/driver/mongodb/MongoQueryRunner.js.map +1 -1
  774. package/driver/mongodb/typings.js.map +1 -1
  775. package/driver/mysql/MysqlDriver.d.ts +7 -2
  776. package/driver/mysql/MysqlDriver.js +14 -7
  777. package/driver/mysql/MysqlDriver.js.map +1 -1
  778. package/driver/mysql/MysqlQueryRunner.d.ts +10 -1
  779. package/driver/mysql/MysqlQueryRunner.js +227 -61
  780. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  781. package/driver/nativescript/NativescriptDriver.d.ts +2 -1
  782. package/driver/nativescript/NativescriptDriver.js +0 -1
  783. package/driver/nativescript/NativescriptDriver.js.map +1 -1
  784. package/driver/oracle/OracleDriver.d.ts +6 -1
  785. package/driver/oracle/OracleDriver.js +8 -3
  786. package/driver/oracle/OracleDriver.js.map +1 -1
  787. package/driver/oracle/OracleQueryRunner.d.ts +2 -1
  788. package/driver/oracle/OracleQueryRunner.js +139 -26
  789. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  790. package/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
  791. package/driver/postgres/PostgresConnectionOptions.d.ts +9 -0
  792. package/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  793. package/driver/postgres/PostgresDriver.d.ts +18 -55
  794. package/driver/postgres/PostgresDriver.js +181 -191
  795. package/driver/postgres/PostgresDriver.js.map +1 -1
  796. package/driver/postgres/PostgresQueryRunner.d.ts +10 -1
  797. package/driver/postgres/PostgresQueryRunner.js +389 -81
  798. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  799. package/driver/react-native/ReactNativeDriver.d.ts +2 -1
  800. package/driver/react-native/ReactNativeDriver.js +0 -1
  801. package/driver/react-native/ReactNativeDriver.js.map +1 -1
  802. package/driver/sap/SapDriver.d.ts +6 -1
  803. package/driver/sap/SapDriver.js +6 -1
  804. package/driver/sap/SapDriver.js.map +1 -1
  805. package/driver/sap/SapQueryRunner.d.ts +2 -1
  806. package/driver/sap/SapQueryRunner.js +143 -27
  807. package/driver/sap/SapQueryRunner.js.map +1 -1
  808. package/driver/sqlite/SqliteConnectionOptions.d.ts +18 -0
  809. package/driver/sqlite/SqliteConnectionOptions.js.map +1 -1
  810. package/driver/sqlite/SqliteDriver.d.ts +2 -1
  811. package/driver/sqlite/SqliteDriver.js +25 -11
  812. package/driver/sqlite/SqliteDriver.js.map +1 -1
  813. package/driver/sqlite/SqliteQueryRunner.js +33 -14
  814. package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  815. package/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +7 -2
  816. package/driver/sqlite-abstract/AbstractSqliteDriver.js +31 -4
  817. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  818. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +72 -10
  819. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  820. package/driver/sqljs/SqljsDriver.d.ts +2 -1
  821. package/driver/sqljs/SqljsDriver.js +0 -1
  822. package/driver/sqljs/SqljsDriver.js.map +1 -1
  823. package/driver/sqljs/SqljsQueryRunner.js +1 -0
  824. package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  825. package/driver/sqlserver/SqlServerDriver.d.ts +6 -1
  826. package/driver/sqlserver/SqlServerDriver.js +6 -1
  827. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  828. package/driver/sqlserver/SqlServerQueryRunner.d.ts +2 -1
  829. package/driver/sqlserver/SqlServerQueryRunner.js +224 -86
  830. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  831. package/driver/types/ColumnTypes.d.ts +1 -1
  832. package/driver/types/ColumnTypes.js.map +1 -1
  833. package/driver/types/DatabaseType.d.ts +1 -1
  834. package/driver/types/DatabaseType.js.map +1 -1
  835. package/driver/types/ReplicationMode.d.ts +1 -0
  836. package/driver/types/ReplicationMode.js +4 -0
  837. package/driver/types/ReplicationMode.js.map +1 -0
  838. package/entity-manager/EntityManager.d.ts +41 -256
  839. package/entity-manager/EntityManager.js +3 -13
  840. package/entity-manager/EntityManager.js.map +1 -1
  841. package/entity-manager/MongoEntityManager.d.ts +46 -46
  842. package/entity-manager/MongoEntityManager.js +14 -3
  843. package/entity-manager/MongoEntityManager.js.map +1 -1
  844. package/entity-schema/EntitySchemaColumnOptions.js.map +1 -1
  845. package/entity-schema/EntitySchemaRelationOptions.d.ts +1 -1
  846. package/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
  847. package/entity-schema/EntitySchemaTransformer.js +22 -7
  848. package/entity-schema/EntitySchemaTransformer.js.map +1 -1
  849. package/error/EntityMetadataNotFoundError.d.ts +2 -2
  850. package/error/EntityMetadataNotFoundError.js +3 -0
  851. package/error/EntityMetadataNotFoundError.js.map +1 -1
  852. package/error/EntityNotFoundError.d.ts +2 -3
  853. package/error/EntityNotFoundError.js +3 -0
  854. package/error/EntityNotFoundError.js.map +1 -1
  855. package/error/FindRelationsNotFoundError.js +2 -2
  856. package/error/FindRelationsNotFoundError.js.map +1 -1
  857. package/error/MissingDriverError.js +1 -1
  858. package/error/MissingDriverError.js.map +1 -1
  859. package/error/QueryFailedError.js +1 -1
  860. package/error/QueryFailedError.js.map +1 -1
  861. package/error/RepositoryNotFoundError.d.ts +2 -2
  862. package/error/RepositoryNotFoundError.js +3 -0
  863. package/error/RepositoryNotFoundError.js.map +1 -1
  864. package/error/RepositoryNotTreeError.d.ts +2 -2
  865. package/error/RepositoryNotTreeError.js +9 -6
  866. package/error/RepositoryNotTreeError.js.map +1 -1
  867. package/find-options/FindOneOptions.d.ts +4 -0
  868. package/find-options/FindOneOptions.js.map +1 -1
  869. package/find-options/FindOperator.d.ts +26 -4
  870. package/find-options/FindOperator.js +49 -50
  871. package/find-options/FindOperator.js.map +1 -1
  872. package/find-options/FindOperatorType.d.ts +1 -1
  873. package/find-options/FindOperatorType.js.map +1 -1
  874. package/find-options/FindOptionsUtils.d.ts +2 -2
  875. package/find-options/FindOptionsUtils.js +5 -1
  876. package/find-options/FindOptionsUtils.js.map +1 -1
  877. package/find-options/operator/Any.d.ts +1 -1
  878. package/find-options/operator/Any.js.map +1 -1
  879. package/find-options/operator/Between.d.ts +1 -1
  880. package/find-options/operator/Between.js.map +1 -1
  881. package/find-options/operator/ILike.d.ts +6 -0
  882. package/find-options/operator/ILike.js +13 -0
  883. package/find-options/operator/ILike.js.map +1 -0
  884. package/find-options/operator/In.d.ts +1 -1
  885. package/find-options/operator/In.js.map +1 -1
  886. package/find-options/operator/Raw.d.ts +14 -2
  887. package/find-options/operator/Raw.js +5 -6
  888. package/find-options/operator/Raw.js.map +1 -1
  889. package/index.d.ts +10 -11
  890. package/index.js +2 -14
  891. package/index.js.map +1 -1
  892. package/logger/DebugLogger.d.ts +0 -1
  893. package/logger/DebugLogger.js +10 -9
  894. package/logger/DebugLogger.js.map +1 -1
  895. package/logger/FileLogger.d.ts +3 -1
  896. package/logger/FileLogger.js +10 -3
  897. package/logger/FileLogger.js.map +1 -1
  898. package/logger/Logger.d.ts +1 -1
  899. package/logger/Logger.js.map +1 -1
  900. package/logger/LoggerOptions.d.ts +9 -0
  901. package/logger/LoggerOptions.js.map +1 -1
  902. package/metadata/ColumnMetadata.js +24 -14
  903. package/metadata/ColumnMetadata.js.map +1 -1
  904. package/metadata/EntityMetadata.d.ts +1 -0
  905. package/metadata/EntityMetadata.js +11 -3
  906. package/metadata/EntityMetadata.js.map +1 -1
  907. package/metadata/RelationMetadata.js +2 -2
  908. package/metadata/RelationMetadata.js.map +1 -1
  909. package/metadata/types/EventListenerTypes.d.ts +7 -7
  910. package/metadata/types/EventListenerTypes.js.map +1 -1
  911. package/metadata-args/EntityRepositoryMetadataArgs.d.ts +2 -2
  912. package/metadata-args/EntityRepositoryMetadataArgs.js.map +1 -1
  913. package/metadata-args/RelationCountMetadataArgs.js.map +1 -1
  914. package/metadata-args/RelationIdMetadataArgs.js.map +1 -1
  915. package/metadata-builder/EntityMetadataBuilder.js +15 -9
  916. package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  917. package/metadata-builder/EntityMetadataValidator.js +8 -5
  918. package/metadata-builder/EntityMetadataValidator.js.map +1 -1
  919. package/metadata-builder/JunctionEntityMetadataBuilder.js +1 -0
  920. package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  921. package/migration/MigrationExecutor.js +103 -74
  922. package/migration/MigrationExecutor.js.map +1 -1
  923. package/package.json +72 -51
  924. package/persistence/EntityPersistExecutor.js +61 -43
  925. package/persistence/EntityPersistExecutor.js.map +1 -1
  926. package/persistence/Subject.js +2 -1
  927. package/persistence/Subject.js.map +1 -1
  928. package/persistence/SubjectDatabaseEntityLoader.js +2 -1
  929. package/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  930. package/persistence/SubjectExecutor.js +244 -187
  931. package/persistence/SubjectExecutor.js.map +1 -1
  932. package/persistence/tree/MaterializedPathSubjectExecutor.js +2 -1
  933. package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  934. package/platform/PlatformTools.d.ts +7 -1
  935. package/platform/PlatformTools.js +42 -41
  936. package/platform/PlatformTools.js.map +1 -1
  937. package/query-builder/Alias.js.map +1 -1
  938. package/query-builder/DeleteQueryBuilder.d.ts +2 -3
  939. package/query-builder/DeleteQueryBuilder.js +7 -1
  940. package/query-builder/DeleteQueryBuilder.js.map +1 -1
  941. package/query-builder/InsertQueryBuilder.d.ts +2 -3
  942. package/query-builder/InsertQueryBuilder.js +44 -11
  943. package/query-builder/InsertQueryBuilder.js.map +1 -1
  944. package/query-builder/QueryBuilder.d.ts +18 -15
  945. package/query-builder/QueryBuilder.js +198 -48
  946. package/query-builder/QueryBuilder.js.map +1 -1
  947. package/query-builder/QueryExpressionMap.d.ts +4 -0
  948. package/query-builder/QueryExpressionMap.js.map +1 -1
  949. package/query-builder/QueryPartialEntity.d.ts +1 -1
  950. package/query-builder/QueryPartialEntity.js.map +1 -1
  951. package/query-builder/ReturningResultsEntityUpdator.js +23 -24
  952. package/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
  953. package/query-builder/SelectQueryBuilder.d.ts +8 -3
  954. package/query-builder/SelectQueryBuilder.js +80 -32
  955. package/query-builder/SelectQueryBuilder.js.map +1 -1
  956. package/query-builder/SoftDeleteQueryBuilder.d.ts +2 -3
  957. package/query-builder/SoftDeleteQueryBuilder.js +1 -1
  958. package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  959. package/query-builder/UpdateQueryBuilder.js +8 -2
  960. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  961. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +6 -3
  962. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  963. package/query-runner/BaseQueryRunner.d.ts +2 -5
  964. package/query-runner/BaseQueryRunner.js +90 -40
  965. package/query-runner/BaseQueryRunner.js.map +1 -1
  966. package/query-runner/QueryRunner.d.ts +1 -1
  967. package/query-runner/QueryRunner.js.map +1 -1
  968. package/repository/AbstractRepository.js.map +1 -1
  969. package/repository/BaseEntity.js +1 -1
  970. package/repository/BaseEntity.js.map +1 -1
  971. package/repository/MongoRepository.js.map +1 -1
  972. package/repository/Repository.js +1 -1
  973. package/repository/Repository.js.map +1 -1
  974. package/repository/TreeRepository.js +2 -2
  975. package/repository/TreeRepository.js.map +1 -1
  976. package/schema-builder/MongoSchemaBuilder.js +1 -1
  977. package/schema-builder/MongoSchemaBuilder.js.map +1 -1
  978. package/schema-builder/RdbmsSchemaBuilder.js +875 -319
  979. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  980. package/schema-builder/options/TableIndexOptions.d.ts +1 -1
  981. package/schema-builder/options/TableIndexOptions.js.map +1 -1
  982. package/schema-builder/view/View.d.ts +1 -2
  983. package/schema-builder/view/View.js.map +1 -1
  984. package/subscriber/Broadcaster.d.ts +24 -0
  985. package/subscriber/Broadcaster.js +120 -0
  986. package/subscriber/Broadcaster.js.map +1 -1
  987. package/subscriber/EntitySubscriberInterface.d.ts +27 -0
  988. package/subscriber/EntitySubscriberInterface.js.map +1 -1
  989. package/subscriber/event/TransactionCommitEvent.d.ts +22 -0
  990. package/subscriber/event/TransactionCommitEvent.js +4 -0
  991. package/subscriber/event/TransactionCommitEvent.js.map +1 -0
  992. package/subscriber/event/TransactionRollbackEvent.d.ts +22 -0
  993. package/subscriber/event/TransactionRollbackEvent.js +4 -0
  994. package/subscriber/event/TransactionRollbackEvent.js.map +1 -0
  995. package/subscriber/event/TransactionStartEvent.d.ts +22 -0
  996. package/subscriber/event/TransactionStartEvent.js +4 -0
  997. package/subscriber/event/TransactionStartEvent.js.map +1 -0
  998. package/typeorm-class-transformer-shim.js +16 -2
  999. package/typeorm-model-shim.js +146 -111
  1000. package/util/ApplyValueTransformers.js.map +1 -1
  1001. package/util/DateUtils.js +1 -7
  1002. package/util/DateUtils.js.map +1 -1
  1003. package/util/DirectoryExportedClassesLoader.js +7 -5
  1004. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  1005. package/util/ObjectUtils.js +2 -2
  1006. package/util/ObjectUtils.js.map +1 -1
  1007. package/util/OrmUtils.js +3 -6
  1008. package/util/OrmUtils.js.map +1 -1
  1009. package/browser/util/PromiseUtils.d.ts +0 -24
  1010. package/browser/util/PromiseUtils.js +0 -62
  1011. package/browser/util/PromiseUtils.js.map +0 -1
  1012. package/util/PromiseUtils.d.ts +0 -24
  1013. package/util/PromiseUtils.js +0 -64
  1014. package/util/PromiseUtils.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import * as tslib_1 from "tslib";
1
+ import { __awaiter, __generator } from "tslib";
2
2
  import { ConnectionIsNotSetError } from "../../error/ConnectionIsNotSetError";
3
3
  import { DriverPackageNotInstalledError } from "../../error/DriverPackageNotInstalledError";
4
4
  import { MongoQueryRunner } from "./MongoQueryRunner";
@@ -6,6 +6,7 @@ import { PlatformTools } from "../../platform/PlatformTools";
6
6
  import { MongoSchemaBuilder } from "../../schema-builder/MongoSchemaBuilder";
7
7
  import { ObjectUtils } from "../../util/ObjectUtils";
8
8
  import { ApplyValueTransformers } from "../../util/ApplyValueTransformers";
9
+ import { DriverUtils } from "../DriverUtils";
9
10
  /**
10
11
  * Organizes communication with MongoDB.
11
12
  */
@@ -77,7 +78,7 @@ var MongoDriver = /** @class */ (function () {
77
78
  /**
78
79
  * Valid mongo connection options
79
80
  * NOTE: Keep sync with MongoConnectionOptions
80
- * Sync with http://mongodb.github.io/node-mongodb-native/3.1/api/MongoClient.html
81
+ * Sync with http://mongodb.github.io/node-mongodb-native/3.5/api/MongoClient.html
81
82
  */
82
83
  this.validOptionNames = [
83
84
  "poolSize",
@@ -138,7 +139,8 @@ var MongoDriver = /** @class */ (function () {
138
139
  "minSize",
139
140
  "monitorCommands",
140
141
  "useNewUrlParser",
141
- "useUnifiedTopology"
142
+ "useUnifiedTopology",
143
+ "autoEncryption"
142
144
  ];
143
145
  this.options = connection.options;
144
146
  // validate options to make sure everything is correct and driver will be able to establish connection
@@ -155,7 +157,8 @@ var MongoDriver = /** @class */ (function () {
155
157
  MongoDriver.prototype.connect = function () {
156
158
  var _this = this;
157
159
  return new Promise(function (ok, fail) {
158
- _this.mongodb.MongoClient.connect(_this.buildConnectionUrl(), _this.buildConnectionOptions(), function (err, client) {
160
+ var options = DriverUtils.buildDriverOptions(_this.options);
161
+ _this.mongodb.MongoClient.connect(_this.buildConnectionUrl(options), _this.buildConnectionOptions(options), function (err, client) {
159
162
  if (err)
160
163
  return fail(err);
161
164
  _this.queryRunner = new MongoQueryRunner(_this.connection, client);
@@ -171,9 +174,9 @@ var MongoDriver = /** @class */ (function () {
171
174
  * Closes connection with the database.
172
175
  */
173
176
  MongoDriver.prototype.disconnect = function () {
174
- return tslib_1.__awaiter(this, void 0, void 0, function () {
177
+ return __awaiter(this, void 0, void 0, function () {
175
178
  var _this = this;
176
- return tslib_1.__generator(this, function (_a) {
179
+ return __generator(this, function (_a) {
177
180
  return [2 /*return*/, new Promise(function (ok, fail) {
178
181
  if (!_this.queryRunner)
179
182
  return fail(new ConnectionIsNotSetError("mongodb"));
@@ -194,7 +197,6 @@ var MongoDriver = /** @class */ (function () {
194
197
  * Creates a query runner used to execute database queries.
195
198
  */
196
199
  MongoDriver.prototype.createQueryRunner = function (mode) {
197
- if (mode === void 0) { mode = "master"; }
198
200
  return this.queryRunner;
199
201
  };
200
202
  /**
@@ -304,6 +306,12 @@ var MongoDriver = /** @class */ (function () {
304
306
  MongoDriver.prototype.isUUIDGenerationSupported = function () {
305
307
  return false;
306
308
  };
309
+ /**
310
+ * Returns true if driver supports fulltext indices.
311
+ */
312
+ MongoDriver.prototype.isFullTextColumnTypeSupported = function () {
313
+ return false;
314
+ };
307
315
  /**
308
316
  * Creates an escaped parameter.
309
317
  */
@@ -336,26 +344,24 @@ var MongoDriver = /** @class */ (function () {
336
344
  /**
337
345
  * Builds connection url that is passed to underlying driver to perform connection to the mongodb database.
338
346
  */
339
- MongoDriver.prototype.buildConnectionUrl = function () {
340
- if (this.options.url)
341
- return this.options.url;
342
- var credentialsUrlPart = (this.options.username && this.options.password)
343
- ? this.options.username + ":" + this.options.password + "@"
347
+ MongoDriver.prototype.buildConnectionUrl = function (options) {
348
+ var credentialsUrlPart = (options.username && options.password)
349
+ ? options.username + ":" + options.password + "@"
344
350
  : "";
345
- return "mongodb://" + credentialsUrlPart + (this.options.host || "127.0.0.1") + ":" + (this.options.port || "27017") + "/" + this.options.database;
351
+ return "mongodb://" + credentialsUrlPart + (options.host || "127.0.0.1") + ":" + (options.port || "27017") + "/" + (options.database || "");
346
352
  };
347
353
  /**
348
354
  * Build connection options from MongoConnectionOptions
349
355
  */
350
- MongoDriver.prototype.buildConnectionOptions = function () {
356
+ MongoDriver.prototype.buildConnectionOptions = function (options) {
351
357
  var mongoOptions = {};
352
358
  for (var index = 0; index < this.validOptionNames.length; index++) {
353
359
  var optionName = this.validOptionNames[index];
354
- if (this.options.extra && optionName in this.options.extra) {
355
- mongoOptions[optionName] = this.options.extra[optionName];
360
+ if (options.extra && optionName in options.extra) {
361
+ mongoOptions[optionName] = options.extra[optionName];
356
362
  }
357
- else if (optionName in this.options) {
358
- mongoOptions[optionName] = this.options[optionName];
363
+ else if (optionName in options) {
364
+ mongoOptions[optionName] = options[optionName];
359
365
  }
360
366
  }
361
367
  return mongoOptions;
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/driver/mongodb/MongoDriver.ts"],"names":[],"mappings":"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","file":"MongoDriver.js","sourcesContent":["import {Driver} from \"../Driver\";\nimport {ConnectionIsNotSetError} from \"../../error/ConnectionIsNotSetError\";\nimport {DriverPackageNotInstalledError} from \"../../error/DriverPackageNotInstalledError\";\nimport {MongoQueryRunner} from \"./MongoQueryRunner\";\nimport {ObjectLiteral} from \"../../common/ObjectLiteral\";\nimport {ColumnMetadata} from \"../../metadata/ColumnMetadata\";\nimport {PlatformTools} from \"../../platform/PlatformTools\";\nimport {Connection} from \"../../connection/Connection\";\nimport {MongoConnectionOptions} from \"./MongoConnectionOptions\";\nimport {MappedColumnTypes} from \"../types/MappedColumnTypes\";\nimport {ColumnType} from \"../types/ColumnTypes\";\nimport {MongoSchemaBuilder} from \"../../schema-builder/MongoSchemaBuilder\";\nimport {DataTypeDefaults} from \"../types/DataTypeDefaults\";\nimport {TableColumn} from \"../../schema-builder/table/TableColumn\";\nimport {ConnectionOptions} from \"../../connection/ConnectionOptions\";\nimport {EntityMetadata} from \"../../metadata/EntityMetadata\";\nimport {ObjectUtils} from \"../../util/ObjectUtils\";\nimport {ApplyValueTransformers} from \"../../util/ApplyValueTransformers\";\n\n/**\n * Organizes communication with MongoDB.\n */\nexport class MongoDriver implements Driver {\n\n // -------------------------------------------------------------------------\n // Public Properties\n // -------------------------------------------------------------------------\n\n /**\n * Underlying mongodb library.\n */\n mongodb: any;\n\n /**\n * Mongodb does not require to dynamically create query runner each time,\n * because it does not have a regular connection pool as RDBMS systems have.\n */\n queryRunner?: MongoQueryRunner;\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Connection options.\n */\n options: MongoConnectionOptions;\n\n /**\n * Master database used to perform all write queries.\n */\n database?: string;\n\n /**\n * Indicates if replication is enabled.\n */\n isReplicated: boolean = false;\n\n /**\n * Indicates if tree tables are supported by this driver.\n */\n treeSupport = false;\n\n /**\n * Mongodb does not need to have column types because they are not used in schema sync.\n */\n supportedDataTypes: ColumnType[] = [];\n\n /**\n * Gets list of spatial column data types.\n */\n spatialTypes: ColumnType[] = [];\n\n /**\n * Gets list of column data types that support length by a driver.\n */\n withLengthColumnTypes: ColumnType[] = [];\n\n /**\n * Gets list of column data types that support precision by a driver.\n */\n withPrecisionColumnTypes: ColumnType[] = [];\n\n /**\n * Gets list of column data types that support scale by a driver.\n */\n withScaleColumnTypes: ColumnType[] = [];\n\n /**\n * Mongodb does not need to have a strong defined mapped column types because they are not used in schema sync.\n */\n mappedDataTypes: MappedColumnTypes = {\n createDate: \"int\",\n createDateDefault: \"\",\n updateDate: \"int\",\n updateDateDefault: \"\",\n deleteDate: \"int\",\n deleteDateNullable: true,\n version: \"int\",\n treeLevel: \"int\",\n migrationId: \"int\",\n migrationName: \"int\",\n migrationTimestamp: \"int\",\n cacheId: \"int\",\n cacheIdentifier: \"int\",\n cacheTime: \"int\",\n cacheDuration: \"int\",\n cacheQuery: \"int\",\n cacheResult: \"int\",\n metadataType: \"int\",\n metadataDatabase: \"int\",\n metadataSchema: \"int\",\n metadataTable: \"int\",\n metadataName: \"int\",\n metadataValue: \"int\",\n };\n\n /**\n * Default values of length, precision and scale depends on column data type.\n * Used in the cases when length/precision/scale is not specified by user.\n */\n dataTypeDefaults: DataTypeDefaults;\n\n /**\n * No documentation specifying a maximum length for identifiers could be found\n * for MongoDB.\n */\n maxAliasLength?: number;\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Valid mongo connection options\n * NOTE: Keep sync with MongoConnectionOptions\n * Sync with http://mongodb.github.io/node-mongodb-native/3.1/api/MongoClient.html\n */\n protected validOptionNames: string[] = [\n \"poolSize\",\n \"ssl\",\n \"sslValidate\",\n \"sslCA\",\n \"sslCert\",\n \"sslKey\",\n \"sslPass\",\n \"sslCRL\",\n \"autoReconnect\",\n \"noDelay\",\n \"keepAlive\",\n \"keepAliveInitialDelay\",\n \"connectTimeoutMS\",\n \"family\",\n \"socketTimeoutMS\",\n \"reconnectTries\",\n \"reconnectInterval\",\n \"ha\",\n \"haInterval\",\n \"replicaSet\",\n \"secondaryAcceptableLatencyMS\",\n \"acceptableLatencyMS\",\n \"connectWithNoPrimary\",\n \"authSource\",\n \"w\",\n \"wtimeout\",\n \"j\",\n \"forceServerObjectId\",\n \"serializeFunctions\",\n \"ignoreUndefined\",\n \"raw\",\n \"bufferMaxEntries\",\n \"readPreference\",\n \"pkFactory\",\n \"promiseLibrary\",\n \"readConcern\",\n \"maxStalenessSeconds\",\n \"loggerLevel\",\n // Do not overwrite BaseConnectionOptions.logger\n // \"logger\",\n \"promoteValues\",\n \"promoteBuffers\",\n \"promoteLongs\",\n \"domainsEnabled\",\n \"checkServerIdentity\",\n \"validateOptions\",\n \"appname\",\n // omit auth - we are building url from username and password\n // \"auth\"\n \"authMechanism\",\n \"compression\",\n \"fsync\",\n \"readPreferenceTags\",\n \"numberOfRetries\",\n \"auto_reconnect\",\n \"minSize\",\n \"monitorCommands\",\n \"useNewUrlParser\",\n \"useUnifiedTopology\"\n ];\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(protected connection: Connection) {\n this.options = connection.options as MongoConnectionOptions;\n\n // validate options to make sure everything is correct and driver will be able to establish connection\n this.validateOptions(connection.options);\n\n // load mongodb package\n this.loadDependencies();\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Performs connection to the database.\n */\n connect(): Promise<void> {\n return new Promise<void>((ok, fail) => {\n this.mongodb.MongoClient.connect(\n this.buildConnectionUrl(),\n this.buildConnectionOptions(),\n (err: any, client: any) => {\n if (err) return fail(err);\n\n this.queryRunner = new MongoQueryRunner(this.connection, client);\n ObjectUtils.assign(this.queryRunner, { manager: this.connection.manager });\n ok();\n });\n });\n }\n\n afterConnect(): Promise<void> {\n return Promise.resolve();\n }\n\n /**\n * Closes connection with the database.\n */\n async disconnect(): Promise<void> {\n return new Promise<void>((ok, fail) => {\n if (!this.queryRunner)\n return fail(new ConnectionIsNotSetError(\"mongodb\"));\n\n const handler = (err: any) => err ? fail(err) : ok();\n this.queryRunner.databaseConnection.close(handler);\n this.queryRunner = undefined;\n });\n }\n\n /**\n * Creates a schema builder used to build and sync a schema.\n */\n createSchemaBuilder() {\n return new MongoSchemaBuilder(this.connection);\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: \"master\"|\"slave\" = \"master\") {\n return this.queryRunner!;\n }\n\n /**\n * Replaces parameters in the given sql with special escaping character\n * and an array of parameter names to be passed to a query.\n */\n escapeQueryWithParameters(sql: string, parameters: ObjectLiteral, nativeParameters: ObjectLiteral): [string, any[]] {\n throw new Error(`This operation is not supported by Mongodb driver.`);\n }\n\n /**\n * Escapes a column name.\n */\n escape(columnName: string): string {\n return columnName;\n }\n\n /**\n * Build full table name with database name, schema name and table name.\n * E.g. \"myDB\".\"mySchema\".\"myTable\"\n */\n buildTableName(tableName: string, schema?: string, database?: string): string {\n return tableName;\n }\n\n /**\n * Prepares given value to a value to be persisted, based on its column type and metadata.\n */\n preparePersistentValue(value: any, columnMetadata: ColumnMetadata): any {\n if (columnMetadata.transformer)\n value = ApplyValueTransformers.transformTo(columnMetadata.transformer, value);\n return value;\n }\n\n /**\n * Prepares given value to a value to be persisted, based on its column type or metadata.\n */\n prepareHydratedValue(value: any, columnMetadata: ColumnMetadata): any {\n if (columnMetadata.transformer)\n value = ApplyValueTransformers.transformFrom(columnMetadata.transformer, value);\n return value;\n }\n\n /**\n * Creates a database type from a given column metadata.\n */\n normalizeType(column: { type?: ColumnType, length?: number | string, precision?: number|null, scale?: number }): string {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Normalizes \"default\" value of the column.\n */\n normalizeDefault(columnMetadata: ColumnMetadata): string {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Normalizes \"isUnique\" value of the column.\n */\n normalizeIsUnique(column: ColumnMetadata): boolean {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Calculates column length taking into account the default length values.\n */\n getColumnLength(column: ColumnMetadata): string {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Normalizes \"default\" value of the column.\n */\n createFullType(column: TableColumn): string {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Obtains a new database connection to a master server.\n * Used for replication.\n * If replication is not setup then returns default connection's database connection.\n */\n obtainMasterConnection(): Promise<any> {\n return Promise.resolve();\n }\n\n /**\n * Obtains a new database connection to a slave server.\n * Used for replication.\n * If replication is not setup then returns master (default) connection's database connection.\n */\n obtainSlaveConnection(): Promise<any> {\n return Promise.resolve();\n }\n\n /**\n * Creates generated map of values generated or returned by database after INSERT query.\n */\n createGeneratedMap(metadata: EntityMetadata, insertedId: any) {\n return metadata.objectIdColumn!.createValueMap(insertedId);\n }\n\n /**\n * Differentiate columns of this table and columns from the given column metadatas columns\n * and returns only changed.\n */\n findChangedColumns(tableColumns: TableColumn[], columnMetadatas: ColumnMetadata[]): ColumnMetadata[] {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Returns true if driver supports RETURNING / OUTPUT statement.\n */\n isReturningSqlSupported(): boolean {\n return false;\n }\n\n /**\n * Returns true if driver supports uuid values generation on its own.\n */\n isUUIDGenerationSupported(): boolean {\n return false;\n }\n\n /**\n * Creates an escaped parameter.\n */\n createParameter(parameterName: string, index: number): string {\n return \"\";\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Validate driver options to make sure everything is correct and driver will be able to establish connection.\n */\n protected validateOptions(options: ConnectionOptions) { // todo: fix\n // if (!options.url) {\n // if (!options.database)\n // throw new DriverOptionNotSetError(\"database\");\n // }\n }\n\n /**\n * Loads all driver dependencies.\n */\n protected loadDependencies(): any {\n try {\n this.mongodb = PlatformTools.load(\"mongodb\"); // try to load native driver dynamically\n\n } catch (e) {\n throw new DriverPackageNotInstalledError(\"MongoDB\", \"mongodb\");\n }\n }\n\n /**\n * Builds connection url that is passed to underlying driver to perform connection to the mongodb database.\n */\n protected buildConnectionUrl(): string {\n if (this.options.url)\n return this.options.url;\n\n const credentialsUrlPart = (this.options.username && this.options.password)\n ? `${this.options.username}:${this.options.password}@`\n : \"\";\n\n return `mongodb://${credentialsUrlPart}${this.options.host || \"127.0.0.1\"}:${this.options.port || \"27017\"}/${this.options.database}`;\n }\n\n /**\n * Build connection options from MongoConnectionOptions\n */\n protected buildConnectionOptions(): any {\n const mongoOptions: any = {};\n\n for (let index = 0; index < this.validOptionNames.length; index++) {\n const optionName = this.validOptionNames[index];\n\n if (this.options.extra && optionName in this.options.extra) {\n mongoOptions[optionName] = this.options.extra[optionName];\n } else if (optionName in this.options) {\n mongoOptions[optionName] = (this.options as any)[optionName];\n }\n }\n\n return mongoOptions;\n }\n\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../browser/src/driver/mongodb/MongoDriver.ts"],"names":[],"mappings":"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","file":"MongoDriver.js","sourcesContent":["import {Driver} from \"../Driver\";\nimport {ConnectionIsNotSetError} from \"../../error/ConnectionIsNotSetError\";\nimport {DriverPackageNotInstalledError} from \"../../error/DriverPackageNotInstalledError\";\nimport {MongoQueryRunner} from \"./MongoQueryRunner\";\nimport {ObjectLiteral} from \"../../common/ObjectLiteral\";\nimport {ColumnMetadata} from \"../../metadata/ColumnMetadata\";\nimport {PlatformTools} from \"../../platform/PlatformTools\";\nimport {Connection} from \"../../connection/Connection\";\nimport {MongoConnectionOptions} from \"./MongoConnectionOptions\";\nimport {MappedColumnTypes} from \"../types/MappedColumnTypes\";\nimport {ColumnType} from \"../types/ColumnTypes\";\nimport {MongoSchemaBuilder} from \"../../schema-builder/MongoSchemaBuilder\";\nimport {DataTypeDefaults} from \"../types/DataTypeDefaults\";\nimport {TableColumn} from \"../../schema-builder/table/TableColumn\";\nimport {ConnectionOptions} from \"../../connection/ConnectionOptions\";\nimport {EntityMetadata} from \"../../metadata/EntityMetadata\";\nimport {ObjectUtils} from \"../../util/ObjectUtils\";\nimport {ApplyValueTransformers} from \"../../util/ApplyValueTransformers\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport {DriverUtils} from \"../DriverUtils\";\n\n/**\n * Organizes communication with MongoDB.\n */\nexport class MongoDriver implements Driver {\n\n // -------------------------------------------------------------------------\n // Public Properties\n // -------------------------------------------------------------------------\n\n /**\n * Underlying mongodb library.\n */\n mongodb: any;\n\n /**\n * Mongodb does not require to dynamically create query runner each time,\n * because it does not have a regular connection pool as RDBMS systems have.\n */\n queryRunner?: MongoQueryRunner;\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Connection options.\n */\n options: MongoConnectionOptions;\n\n /**\n * Master database used to perform all write queries.\n */\n database?: string;\n\n /**\n * Indicates if replication is enabled.\n */\n isReplicated: boolean = false;\n\n /**\n * Indicates if tree tables are supported by this driver.\n */\n treeSupport = false;\n\n /**\n * Mongodb does not need to have column types because they are not used in schema sync.\n */\n supportedDataTypes: ColumnType[] = [];\n\n /**\n * Gets list of spatial column data types.\n */\n spatialTypes: ColumnType[] = [];\n\n /**\n * Gets list of column data types that support length by a driver.\n */\n withLengthColumnTypes: ColumnType[] = [];\n\n /**\n * Gets list of column data types that support precision by a driver.\n */\n withPrecisionColumnTypes: ColumnType[] = [];\n\n /**\n * Gets list of column data types that support scale by a driver.\n */\n withScaleColumnTypes: ColumnType[] = [];\n\n /**\n * Mongodb does not need to have a strong defined mapped column types because they are not used in schema sync.\n */\n mappedDataTypes: MappedColumnTypes = {\n createDate: \"int\",\n createDateDefault: \"\",\n updateDate: \"int\",\n updateDateDefault: \"\",\n deleteDate: \"int\",\n deleteDateNullable: true,\n version: \"int\",\n treeLevel: \"int\",\n migrationId: \"int\",\n migrationName: \"int\",\n migrationTimestamp: \"int\",\n cacheId: \"int\",\n cacheIdentifier: \"int\",\n cacheTime: \"int\",\n cacheDuration: \"int\",\n cacheQuery: \"int\",\n cacheResult: \"int\",\n metadataType: \"int\",\n metadataDatabase: \"int\",\n metadataSchema: \"int\",\n metadataTable: \"int\",\n metadataName: \"int\",\n metadataValue: \"int\",\n };\n\n /**\n * Default values of length, precision and scale depends on column data type.\n * Used in the cases when length/precision/scale is not specified by user.\n */\n dataTypeDefaults: DataTypeDefaults;\n\n /**\n * No documentation specifying a maximum length for identifiers could be found\n * for MongoDB.\n */\n maxAliasLength?: number;\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Valid mongo connection options\n * NOTE: Keep sync with MongoConnectionOptions\n * Sync with http://mongodb.github.io/node-mongodb-native/3.5/api/MongoClient.html\n */\n protected validOptionNames: string[] = [\n \"poolSize\",\n \"ssl\",\n \"sslValidate\",\n \"sslCA\",\n \"sslCert\",\n \"sslKey\",\n \"sslPass\",\n \"sslCRL\",\n \"autoReconnect\",\n \"noDelay\",\n \"keepAlive\",\n \"keepAliveInitialDelay\",\n \"connectTimeoutMS\",\n \"family\",\n \"socketTimeoutMS\",\n \"reconnectTries\",\n \"reconnectInterval\",\n \"ha\",\n \"haInterval\",\n \"replicaSet\",\n \"secondaryAcceptableLatencyMS\",\n \"acceptableLatencyMS\",\n \"connectWithNoPrimary\",\n \"authSource\",\n \"w\",\n \"wtimeout\",\n \"j\",\n \"forceServerObjectId\",\n \"serializeFunctions\",\n \"ignoreUndefined\",\n \"raw\",\n \"bufferMaxEntries\",\n \"readPreference\",\n \"pkFactory\",\n \"promiseLibrary\",\n \"readConcern\",\n \"maxStalenessSeconds\",\n \"loggerLevel\",\n // Do not overwrite BaseConnectionOptions.logger\n // \"logger\",\n \"promoteValues\",\n \"promoteBuffers\",\n \"promoteLongs\",\n \"domainsEnabled\",\n \"checkServerIdentity\",\n \"validateOptions\",\n \"appname\",\n // omit auth - we are building url from username and password\n // \"auth\"\n \"authMechanism\",\n \"compression\",\n \"fsync\",\n \"readPreferenceTags\",\n \"numberOfRetries\",\n \"auto_reconnect\",\n \"minSize\",\n \"monitorCommands\",\n \"useNewUrlParser\",\n \"useUnifiedTopology\",\n \"autoEncryption\"\n ];\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(protected connection: Connection) {\n this.options = connection.options as MongoConnectionOptions;\n\n // validate options to make sure everything is correct and driver will be able to establish connection\n this.validateOptions(connection.options);\n\n // load mongodb package\n this.loadDependencies();\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Performs connection to the database.\n */\n connect(): Promise<void> {\n return new Promise<void>((ok, fail) => {\n const options = DriverUtils.buildDriverOptions(this.options);\n\n this.mongodb.MongoClient.connect(\n this.buildConnectionUrl(options),\n this.buildConnectionOptions(options),\n (err: any, client: any) => {\n if (err) return fail(err);\n\n this.queryRunner = new MongoQueryRunner(this.connection, client);\n ObjectUtils.assign(this.queryRunner, { manager: this.connection.manager });\n ok();\n });\n });\n }\n\n afterConnect(): Promise<void> {\n return Promise.resolve();\n }\n\n /**\n * Closes connection with the database.\n */\n async disconnect(): Promise<void> {\n return new Promise<void>((ok, fail) => {\n if (!this.queryRunner)\n return fail(new ConnectionIsNotSetError(\"mongodb\"));\n\n const handler = (err: any) => err ? fail(err) : ok();\n this.queryRunner.databaseConnection.close(handler);\n this.queryRunner = undefined;\n });\n }\n\n /**\n * Creates a schema builder used to build and sync a schema.\n */\n createSchemaBuilder() {\n return new MongoSchemaBuilder(this.connection);\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: ReplicationMode) {\n return this.queryRunner!;\n }\n\n /**\n * Replaces parameters in the given sql with special escaping character\n * and an array of parameter names to be passed to a query.\n */\n escapeQueryWithParameters(sql: string, parameters: ObjectLiteral, nativeParameters: ObjectLiteral): [string, any[]] {\n throw new Error(`This operation is not supported by Mongodb driver.`);\n }\n\n /**\n * Escapes a column name.\n */\n escape(columnName: string): string {\n return columnName;\n }\n\n /**\n * Build full table name with database name, schema name and table name.\n * E.g. \"myDB\".\"mySchema\".\"myTable\"\n */\n buildTableName(tableName: string, schema?: string, database?: string): string {\n return tableName;\n }\n\n /**\n * Prepares given value to a value to be persisted, based on its column type and metadata.\n */\n preparePersistentValue(value: any, columnMetadata: ColumnMetadata): any {\n if (columnMetadata.transformer)\n value = ApplyValueTransformers.transformTo(columnMetadata.transformer, value);\n return value;\n }\n\n /**\n * Prepares given value to a value to be persisted, based on its column type or metadata.\n */\n prepareHydratedValue(value: any, columnMetadata: ColumnMetadata): any {\n if (columnMetadata.transformer)\n value = ApplyValueTransformers.transformFrom(columnMetadata.transformer, value);\n return value;\n }\n\n /**\n * Creates a database type from a given column metadata.\n */\n normalizeType(column: { type?: ColumnType, length?: number | string, precision?: number|null, scale?: number }): string {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Normalizes \"default\" value of the column.\n */\n normalizeDefault(columnMetadata: ColumnMetadata): string {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Normalizes \"isUnique\" value of the column.\n */\n normalizeIsUnique(column: ColumnMetadata): boolean {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Calculates column length taking into account the default length values.\n */\n getColumnLength(column: ColumnMetadata): string {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Normalizes \"default\" value of the column.\n */\n createFullType(column: TableColumn): string {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Obtains a new database connection to a master server.\n * Used for replication.\n * If replication is not setup then returns default connection's database connection.\n */\n obtainMasterConnection(): Promise<any> {\n return Promise.resolve();\n }\n\n /**\n * Obtains a new database connection to a slave server.\n * Used for replication.\n * If replication is not setup then returns master (default) connection's database connection.\n */\n obtainSlaveConnection(): Promise<any> {\n return Promise.resolve();\n }\n\n /**\n * Creates generated map of values generated or returned by database after INSERT query.\n */\n createGeneratedMap(metadata: EntityMetadata, insertedId: any) {\n return metadata.objectIdColumn!.createValueMap(insertedId);\n }\n\n /**\n * Differentiate columns of this table and columns from the given column metadatas columns\n * and returns only changed.\n */\n findChangedColumns(tableColumns: TableColumn[], columnMetadatas: ColumnMetadata[]): ColumnMetadata[] {\n throw new Error(`MongoDB is schema-less, not supported by this driver.`);\n }\n\n /**\n * Returns true if driver supports RETURNING / OUTPUT statement.\n */\n isReturningSqlSupported(): boolean {\n return false;\n }\n\n /**\n * Returns true if driver supports uuid values generation on its own.\n */\n isUUIDGenerationSupported(): boolean {\n return false;\n }\n\n /**\n * Returns true if driver supports fulltext indices.\n */\n isFullTextColumnTypeSupported(): boolean {\n return false;\n }\n\n /**\n * Creates an escaped parameter.\n */\n createParameter(parameterName: string, index: number): string {\n return \"\";\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Validate driver options to make sure everything is correct and driver will be able to establish connection.\n */\n protected validateOptions(options: ConnectionOptions) { // todo: fix\n // if (!options.url) {\n // if (!options.database)\n // throw new DriverOptionNotSetError(\"database\");\n // }\n }\n\n /**\n * Loads all driver dependencies.\n */\n protected loadDependencies(): any {\n try {\n this.mongodb = PlatformTools.load(\"mongodb\"); // try to load native driver dynamically\n\n } catch (e) {\n throw new DriverPackageNotInstalledError(\"MongoDB\", \"mongodb\");\n }\n }\n\n /**\n * Builds connection url that is passed to underlying driver to perform connection to the mongodb database.\n */\n protected buildConnectionUrl(options: { [key: string]: any }): string {\n const credentialsUrlPart = (options.username && options.password)\n ? `${options.username}:${options.password}@`\n : \"\";\n\n return `mongodb://${credentialsUrlPart}${options.host || \"127.0.0.1\"}:${options.port || \"27017\"}/${options.database || \"\"}`;\n }\n\n /**\n * Build connection options from MongoConnectionOptions\n */\n protected buildConnectionOptions(options: { [key: string]: any }): any {\n const mongoOptions: any = {};\n\n for (let index = 0; index < this.validOptionNames.length; index++) {\n const optionName = this.validOptionNames[index];\n\n if (options.extra && optionName in options.extra) {\n mongoOptions[optionName] = options.extra[optionName];\n } else if (optionName in options) {\n mongoOptions[optionName] = options[optionName];\n }\n }\n\n return mongoOptions;\n }\n\n}\n"],"sourceRoot":"../.."}
@@ -1,3 +1,4 @@
1
+
1
2
  import { QueryRunner } from "../../query-runner/QueryRunner";
2
3
  import { ObjectLiteral } from "../../common/ObjectLiteral";
3
4
  import { TableColumn } from "../../schema-builder/table/TableColumn";
@@ -5,7 +6,7 @@ import { Table } from "../../schema-builder/table/Table";
5
6
  import { TableForeignKey } from "../../schema-builder/table/TableForeignKey";
6
7
  import { TableIndex } from "../../schema-builder/table/TableIndex";
7
8
  import { View } from "../../schema-builder/view/View";
8
- import { AggregationCursor, BulkWriteOpResultObject, ChangeStream, ChangeStreamOptions, Code, Collection, CollectionAggregationOptions, CollectionBulkWriteOptions, CollectionInsertManyOptions, CollectionInsertOneOptions, CollectionOptions, CollStats, CommandCursor, Cursor, Db, DeleteWriteOpResultObject, FindAndModifyWriteOpResultObject, FindOneAndReplaceOption, GeoHaystackSearchOptions, GeoNearOptions, InsertOneWriteOpResult, InsertWriteOpResult, MapReduceOptions, MongoCountPreferences, MongodbIndexOptions, OrderedBulkOperation, ParallelCollectionScanOptions, ReadPreference, ReplaceOneOptions, UnorderedBulkOperation, UpdateWriteOpResult } from "./typings";
9
+ import { AggregationCursor, BulkWriteOpResultObject, ChangeStream, ChangeStreamOptions, Code, Collection, CollectionAggregationOptions, CollectionBulkWriteOptions, CollectionInsertManyOptions, CollectionInsertOneOptions, CollectionOptions, CollStats, CommandCursor, Cursor, DeleteWriteOpResultObject, FindAndModifyWriteOpResultObject, FindOneAndReplaceOption, GeoHaystackSearchOptions, GeoNearOptions, InsertOneWriteOpResult, InsertWriteOpResult, MapReduceOptions, MongoClient, MongoCountPreferences, MongodbIndexOptions, OrderedBulkOperation, ParallelCollectionScanOptions, ReadPreference, ReplaceOneOptions, UnorderedBulkOperation, UpdateWriteOpResult } from "./typings";
9
10
  import { Connection } from "../../connection/Connection";
10
11
  import { ReadStream } from "../../platform/PlatformTools";
11
12
  import { MongoEntityManager } from "../../entity-manager/MongoEntityManager";
@@ -57,8 +58,8 @@ export declare class MongoQueryRunner implements QueryRunner {
57
58
  /**
58
59
  * Real database connection from a connection pool used to perform queries.
59
60
  */
60
- databaseConnection: Db;
61
- constructor(connection: Connection, databaseConnection: Db);
61
+ databaseConnection: MongoClient;
62
+ constructor(connection: Connection, databaseConnection: MongoClient);
62
63
  /**
63
64
  * Creates a cursor for a query that can be used to iterate over results from MongoDB.
64
65
  */