typeorm 0.2.24 → 0.2.28

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 (1002) hide show
  1. package/README.md +12 -8
  2. package/browser/cache/DbQueryResultCache.js +14 -14
  3. package/browser/cache/DbQueryResultCache.js.map +1 -1
  4. package/browser/cache/RedisQueryResultCache.js +20 -15
  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 +66 -42
  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 +3 -1
  17. package/browser/connection/ConnectionOptions.js.map +1 -1
  18. package/browser/connection/ConnectionOptionsReader.js +47 -42
  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 +2 -1
  58. package/browser/decorator/columns/ViewColumn.js +2 -2
  59. package/browser/decorator/columns/ViewColumn.js.map +1 -1
  60. package/browser/decorator/entity/ChildEntity.d.ts +1 -1
  61. package/browser/decorator/entity/ChildEntity.js.map +1 -1
  62. package/browser/decorator/entity/Entity.d.ts +2 -2
  63. package/browser/decorator/entity/Entity.js.map +1 -1
  64. package/browser/decorator/entity/TableInheritance.d.ts +1 -1
  65. package/browser/decorator/entity/TableInheritance.js.map +1 -1
  66. package/browser/decorator/entity-view/ViewEntity.d.ts +2 -2
  67. package/browser/decorator/entity-view/ViewEntity.js.map +1 -1
  68. package/browser/decorator/listeners/AfterInsert.d.ts +1 -1
  69. package/browser/decorator/listeners/AfterInsert.js.map +1 -1
  70. package/browser/decorator/listeners/AfterLoad.d.ts +1 -1
  71. package/browser/decorator/listeners/AfterLoad.js.map +1 -1
  72. package/browser/decorator/listeners/AfterRemove.d.ts +1 -1
  73. package/browser/decorator/listeners/AfterRemove.js.map +1 -1
  74. package/browser/decorator/listeners/AfterUpdate.d.ts +1 -1
  75. package/browser/decorator/listeners/AfterUpdate.js.map +1 -1
  76. package/browser/decorator/listeners/BeforeInsert.d.ts +1 -1
  77. package/browser/decorator/listeners/BeforeInsert.js.map +1 -1
  78. package/browser/decorator/listeners/BeforeRemove.d.ts +1 -1
  79. package/browser/decorator/listeners/BeforeRemove.js.map +1 -1
  80. package/browser/decorator/listeners/BeforeUpdate.d.ts +1 -1
  81. package/browser/decorator/listeners/BeforeUpdate.js.map +1 -1
  82. package/browser/decorator/listeners/EventSubscriber.d.ts +1 -1
  83. package/browser/decorator/listeners/EventSubscriber.js.map +1 -1
  84. package/browser/decorator/options/ColumnOptions.js.map +1 -1
  85. package/browser/decorator/options/TransactionOptions.js.map +1 -1
  86. package/browser/decorator/options/ViewColumnOptions.d.ts +9 -0
  87. package/browser/decorator/options/ViewColumnOptions.js +3 -0
  88. package/browser/decorator/options/ViewColumnOptions.js.map +1 -0
  89. package/browser/decorator/relations/JoinColumn.d.ts +3 -3
  90. package/browser/decorator/relations/JoinColumn.js.map +1 -1
  91. package/browser/decorator/relations/JoinTable.d.ts +3 -3
  92. package/browser/decorator/relations/JoinTable.js.map +1 -1
  93. package/browser/decorator/relations/ManyToMany.d.ts +2 -2
  94. package/browser/decorator/relations/ManyToMany.js.map +1 -1
  95. package/browser/decorator/relations/ManyToOne.d.ts +2 -2
  96. package/browser/decorator/relations/ManyToOne.js.map +1 -1
  97. package/browser/decorator/relations/OneToMany.d.ts +3 -3
  98. package/browser/decorator/relations/OneToMany.js +2 -2
  99. package/browser/decorator/relations/OneToMany.js.map +1 -1
  100. package/browser/decorator/relations/OneToOne.d.ts +2 -2
  101. package/browser/decorator/relations/OneToOne.js.map +1 -1
  102. package/browser/decorator/relations/RelationCount.d.ts +1 -1
  103. package/browser/decorator/relations/RelationCount.js.map +1 -1
  104. package/browser/decorator/relations/RelationId.d.ts +1 -1
  105. package/browser/decorator/relations/RelationId.js.map +1 -1
  106. package/browser/decorator/transaction/Transaction.js +4 -4
  107. package/browser/decorator/transaction/Transaction.js.map +1 -1
  108. package/browser/decorator/transaction/TransactionManager.d.ts +1 -1
  109. package/browser/decorator/transaction/TransactionManager.js.map +1 -1
  110. package/browser/decorator/tree/Tree.d.ts +1 -1
  111. package/browser/decorator/tree/Tree.js.map +1 -1
  112. package/browser/decorator/tree/TreeChildren.d.ts +1 -1
  113. package/browser/decorator/tree/TreeChildren.js.map +1 -1
  114. package/browser/decorator/tree/TreeLevelColumn.d.ts +1 -1
  115. package/browser/decorator/tree/TreeLevelColumn.js.map +1 -1
  116. package/browser/decorator/tree/TreeParent.d.ts +1 -1
  117. package/browser/decorator/tree/TreeParent.js.map +1 -1
  118. package/browser/driver/Driver.d.ts +7 -2
  119. package/browser/driver/Driver.js.map +1 -1
  120. package/browser/driver/DriverFactory.js +6 -0
  121. package/browser/driver/DriverFactory.js.map +1 -1
  122. package/browser/driver/DriverUtils.d.ts +2 -2
  123. package/browser/driver/DriverUtils.js +8 -4
  124. package/browser/driver/DriverUtils.js.map +1 -1
  125. package/browser/driver/aurora-data-api/AuroraDataApiConnection.d.ts +2 -1
  126. package/browser/driver/aurora-data-api/AuroraDataApiConnection.js +2 -3
  127. package/browser/driver/aurora-data-api/AuroraDataApiConnection.js.map +1 -1
  128. package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.d.ts +6 -0
  129. package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.js.map +1 -1
  130. package/browser/driver/aurora-data-api/AuroraDataApiDriver.d.ts +6 -1
  131. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js +14 -9
  132. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  133. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.d.ts +5 -0
  134. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +230 -143
  135. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  136. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.d.ts +27 -0
  137. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js +3 -0
  138. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js.map +1 -0
  139. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.d.ts +57 -0
  140. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +99 -0
  141. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -0
  142. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.d.ts +51 -0
  143. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +142 -0
  144. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -0
  145. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +50 -0
  146. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js +3 -0
  147. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -0
  148. package/browser/driver/better-sqlite3/BetterSqlite3Driver.d.ts +46 -0
  149. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +125 -0
  150. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -0
  151. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +22 -0
  152. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +113 -0
  153. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -0
  154. package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -1
  155. package/browser/driver/cockroachdb/CockroachDriver.d.ts +6 -1
  156. package/browser/driver/cockroachdb/CockroachDriver.js +18 -13
  157. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  158. package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +3 -1
  159. package/browser/driver/cockroachdb/CockroachQueryRunner.js +420 -192
  160. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  161. package/browser/driver/cordova/CordovaDriver.d.ts +2 -1
  162. package/browser/driver/cordova/CordovaDriver.js +4 -5
  163. package/browser/driver/cordova/CordovaDriver.js.map +1 -1
  164. package/browser/driver/cordova/CordovaQueryRunner.js +4 -4
  165. package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
  166. package/browser/driver/expo/ExpoDriver.d.ts +2 -1
  167. package/browser/driver/expo/ExpoDriver.js +5 -5
  168. package/browser/driver/expo/ExpoDriver.js.map +1 -1
  169. package/browser/driver/expo/ExpoQueryRunner.js +10 -10
  170. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  171. package/browser/driver/mongodb/MongoDriver.d.ts +6 -1
  172. package/browser/driver/mongodb/MongoDriver.js +9 -4
  173. package/browser/driver/mongodb/MongoDriver.js.map +1 -1
  174. package/browser/driver/mongodb/MongoQueryRunner.d.ts +1 -0
  175. package/browser/driver/mongodb/MongoQueryRunner.js +175 -175
  176. package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
  177. package/browser/driver/mongodb/typings.d.ts +4 -1
  178. package/browser/driver/mongodb/typings.js.map +1 -1
  179. package/browser/driver/mysql/MysqlDriver.d.ts +7 -2
  180. package/browser/driver/mysql/MysqlDriver.js +16 -9
  181. package/browser/driver/mysql/MysqlDriver.js.map +1 -1
  182. package/browser/driver/mysql/MysqlQueryRunner.d.ts +7 -1
  183. package/browser/driver/mysql/MysqlQueryRunner.js +246 -149
  184. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  185. package/browser/driver/nativescript/NativescriptDriver.d.ts +2 -1
  186. package/browser/driver/nativescript/NativescriptDriver.js +4 -5
  187. package/browser/driver/nativescript/NativescriptDriver.js.map +1 -1
  188. package/browser/driver/nativescript/NativescriptQueryRunner.js +2 -2
  189. package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  190. package/browser/driver/oracle/OracleDriver.d.ts +6 -1
  191. package/browser/driver/oracle/OracleDriver.js +17 -12
  192. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  193. package/browser/driver/oracle/OracleQueryRunner.d.ts +3 -1
  194. package/browser/driver/oracle/OracleQueryRunner.js +195 -128
  195. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  196. package/browser/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +1 -1
  197. package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
  198. package/browser/driver/postgres/PostgresConnectionOptions.d.ts +9 -0
  199. package/browser/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  200. package/browser/driver/postgres/PostgresDriver.d.ts +19 -4
  201. package/browser/driver/postgres/PostgresDriver.js +194 -124
  202. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  203. package/browser/driver/postgres/PostgresQueryRunner.d.ts +3 -1
  204. package/browser/driver/postgres/PostgresQueryRunner.js +416 -196
  205. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  206. package/browser/driver/react-native/ReactNativeDriver.d.ts +2 -1
  207. package/browser/driver/react-native/ReactNativeDriver.js +6 -6
  208. package/browser/driver/react-native/ReactNativeDriver.js.map +1 -1
  209. package/browser/driver/react-native/ReactNativeQueryRunner.js +4 -4
  210. package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  211. package/browser/driver/sap/SapConnectionCredentialsOptions.d.ts +1 -1
  212. package/browser/driver/sap/SapConnectionCredentialsOptions.js.map +1 -1
  213. package/browser/driver/sap/SapDriver.d.ts +6 -1
  214. package/browser/driver/sap/SapDriver.js +25 -15
  215. package/browser/driver/sap/SapDriver.js.map +1 -1
  216. package/browser/driver/sap/SapQueryRunner.d.ts +3 -1
  217. package/browser/driver/sap/SapQueryRunner.js +224 -156
  218. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  219. package/browser/driver/sqlite/SqliteConnectionOptions.d.ts +18 -0
  220. package/browser/driver/sqlite/SqliteConnectionOptions.js.map +1 -1
  221. package/browser/driver/sqlite/SqliteDriver.d.ts +2 -1
  222. package/browser/driver/sqlite/SqliteDriver.js +30 -18
  223. package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
  224. package/browser/driver/sqlite/SqliteQueryRunner.js +33 -18
  225. package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  226. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +7 -2
  227. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +36 -9
  228. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  229. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +1 -0
  230. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +134 -120
  231. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  232. package/browser/driver/sqljs/SqljsDriver.d.ts +2 -1
  233. package/browser/driver/sqljs/SqljsDriver.js +15 -16
  234. package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
  235. package/browser/driver/sqljs/SqljsQueryRunner.js +11 -7
  236. package/browser/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  237. package/browser/driver/sqlserver/SqlServerDriver.d.ts +6 -1
  238. package/browser/driver/sqlserver/SqlServerDriver.js +13 -8
  239. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  240. package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +3 -1
  241. package/browser/driver/sqlserver/SqlServerQueryRunner.js +237 -170
  242. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  243. package/browser/driver/types/ColumnTypes.d.ts +1 -1
  244. package/browser/driver/types/ColumnTypes.js.map +1 -1
  245. package/browser/driver/types/DatabaseType.d.ts +1 -1
  246. package/browser/driver/types/DatabaseType.js.map +1 -1
  247. package/browser/driver/types/ReplicationMode.d.ts +1 -0
  248. package/browser/driver/types/ReplicationMode.js +3 -0
  249. package/browser/driver/types/ReplicationMode.js.map +1 -0
  250. package/browser/entity-manager/EntityManager.d.ts +42 -257
  251. package/browser/entity-manager/EntityManager.js +39 -39
  252. package/browser/entity-manager/EntityManager.js.map +1 -1
  253. package/browser/entity-manager/MongoEntityManager.d.ts +46 -46
  254. package/browser/entity-manager/MongoEntityManager.js +17 -17
  255. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  256. package/browser/entity-manager/SqljsEntityManager.js +6 -6
  257. package/browser/entity-manager/SqljsEntityManager.js.map +1 -1
  258. package/browser/entity-schema/EntitySchemaColumnOptions.js.map +1 -1
  259. package/browser/entity-schema/EntitySchemaRelationOptions.d.ts +1 -1
  260. package/browser/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
  261. package/browser/entity-schema/EntitySchemaTransformer.js +22 -7
  262. package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
  263. package/browser/error/AlreadyHasActiveConnectionError.js +2 -2
  264. package/browser/error/AlreadyHasActiveConnectionError.js.map +1 -1
  265. package/browser/error/CannotAttachTreeChildrenEntityError.js +2 -2
  266. package/browser/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
  267. package/browser/error/CannotConnectAlreadyConnectedError.js +2 -2
  268. package/browser/error/CannotConnectAlreadyConnectedError.js.map +1 -1
  269. package/browser/error/CannotCreateEntityIdMapError.js +2 -2
  270. package/browser/error/CannotCreateEntityIdMapError.js.map +1 -1
  271. package/browser/error/CannotDetermineEntityError.js +2 -2
  272. package/browser/error/CannotDetermineEntityError.js.map +1 -1
  273. package/browser/error/CannotExecuteNotConnectedError.js +2 -2
  274. package/browser/error/CannotExecuteNotConnectedError.js.map +1 -1
  275. package/browser/error/CannotGetEntityManagerNotConnectedError.js +2 -2
  276. package/browser/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
  277. package/browser/error/CannotReflectMethodParameterTypeError.js +2 -2
  278. package/browser/error/CannotReflectMethodParameterTypeError.js.map +1 -1
  279. package/browser/error/CircularRelationsError.js +2 -2
  280. package/browser/error/CircularRelationsError.js.map +1 -1
  281. package/browser/error/ColumnTypeUndefinedError.js +2 -2
  282. package/browser/error/ColumnTypeUndefinedError.js.map +1 -1
  283. package/browser/error/ConnectionIsNotSetError.js +2 -2
  284. package/browser/error/ConnectionIsNotSetError.js.map +1 -1
  285. package/browser/error/ConnectionNotFoundError.js +2 -2
  286. package/browser/error/ConnectionNotFoundError.js.map +1 -1
  287. package/browser/error/CustomRepositoryCannotInheritRepositoryError.js +2 -2
  288. package/browser/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
  289. package/browser/error/CustomRepositoryDoesNotHaveEntityError.js +2 -2
  290. package/browser/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
  291. package/browser/error/CustomRepositoryNotFoundError.js +2 -2
  292. package/browser/error/CustomRepositoryNotFoundError.js.map +1 -1
  293. package/browser/error/DataTypeNotSupportedError.js +2 -2
  294. package/browser/error/DataTypeNotSupportedError.js.map +1 -1
  295. package/browser/error/DriverOptionNotSetError.js +2 -2
  296. package/browser/error/DriverOptionNotSetError.js.map +1 -1
  297. package/browser/error/DriverPackageNotInstalledError.js +2 -2
  298. package/browser/error/DriverPackageNotInstalledError.js.map +1 -1
  299. package/browser/error/EntityColumnNotFound.js +2 -2
  300. package/browser/error/EntityColumnNotFound.js.map +1 -1
  301. package/browser/error/EntityMetadataNotFoundError.d.ts +2 -2
  302. package/browser/error/EntityMetadataNotFoundError.js +5 -2
  303. package/browser/error/EntityMetadataNotFoundError.js.map +1 -1
  304. package/browser/error/EntityNotFoundError.d.ts +2 -3
  305. package/browser/error/EntityNotFoundError.js +5 -2
  306. package/browser/error/EntityNotFoundError.js.map +1 -1
  307. package/browser/error/FindRelationsNotFoundError.js +4 -4
  308. package/browser/error/FindRelationsNotFoundError.js.map +1 -1
  309. package/browser/error/InitializedRelationError.js +2 -2
  310. package/browser/error/InitializedRelationError.js.map +1 -1
  311. package/browser/error/InsertValuesMissingError.js +2 -2
  312. package/browser/error/InsertValuesMissingError.js.map +1 -1
  313. package/browser/error/LimitOnUpdateNotSupportedError.js +2 -2
  314. package/browser/error/LimitOnUpdateNotSupportedError.js.map +1 -1
  315. package/browser/error/LockNotSupportedOnGivenDriverError.js +2 -2
  316. package/browser/error/LockNotSupportedOnGivenDriverError.js.map +1 -1
  317. package/browser/error/MetadataAlreadyExistsError.js +2 -2
  318. package/browser/error/MetadataAlreadyExistsError.js.map +1 -1
  319. package/browser/error/MetadataWithSuchNameAlreadyExistsError.js +2 -2
  320. package/browser/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -1
  321. package/browser/error/MissingDeleteDateColumnError.js +2 -2
  322. package/browser/error/MissingDeleteDateColumnError.js.map +1 -1
  323. package/browser/error/MissingDriverError.js +3 -3
  324. package/browser/error/MissingDriverError.js.map +1 -1
  325. package/browser/error/MissingJoinColumnError.js +2 -2
  326. package/browser/error/MissingJoinColumnError.js.map +1 -1
  327. package/browser/error/MissingJoinTableError.js +2 -2
  328. package/browser/error/MissingJoinTableError.js.map +1 -1
  329. package/browser/error/MissingPrimaryColumnError.js +2 -2
  330. package/browser/error/MissingPrimaryColumnError.js.map +1 -1
  331. package/browser/error/MustBeEntityError.js +2 -2
  332. package/browser/error/MustBeEntityError.js.map +1 -1
  333. package/browser/error/NamingStrategyNotFoundError.js +2 -2
  334. package/browser/error/NamingStrategyNotFoundError.js.map +1 -1
  335. package/browser/error/NoConnectionForRepositoryError.js +2 -2
  336. package/browser/error/NoConnectionForRepositoryError.js.map +1 -1
  337. package/browser/error/NoConnectionOptionError.js +2 -2
  338. package/browser/error/NoConnectionOptionError.js.map +1 -1
  339. package/browser/error/NoNeedToReleaseEntityManagerError.js +2 -2
  340. package/browser/error/NoNeedToReleaseEntityManagerError.js.map +1 -1
  341. package/browser/error/NoVersionOrUpdateDateColumnError.js +2 -2
  342. package/browser/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
  343. package/browser/error/OffsetWithoutLimitNotSupportedError.js +2 -2
  344. package/browser/error/OffsetWithoutLimitNotSupportedError.js.map +1 -1
  345. package/browser/error/OptimisticLockCanNotBeUsedError.js +2 -2
  346. package/browser/error/OptimisticLockCanNotBeUsedError.js.map +1 -1
  347. package/browser/error/OptimisticLockVersionMismatchError.js +2 -2
  348. package/browser/error/OptimisticLockVersionMismatchError.js.map +1 -1
  349. package/browser/error/PersistedEntityNotFoundError.js +2 -2
  350. package/browser/error/PersistedEntityNotFoundError.js.map +1 -1
  351. package/browser/error/PessimisticLockTransactionRequiredError.js +2 -2
  352. package/browser/error/PessimisticLockTransactionRequiredError.js.map +1 -1
  353. package/browser/error/PrimaryColumnCannotBeNullableError.js +2 -2
  354. package/browser/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
  355. package/browser/error/QueryFailedError.js +3 -3
  356. package/browser/error/QueryFailedError.js.map +1 -1
  357. package/browser/error/QueryRunnerAlreadyReleasedError.js +2 -2
  358. package/browser/error/QueryRunnerAlreadyReleasedError.js.map +1 -1
  359. package/browser/error/QueryRunnerProviderAlreadyReleasedError.js +2 -2
  360. package/browser/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -1
  361. package/browser/error/RepositoryNotFoundError.d.ts +2 -2
  362. package/browser/error/RepositoryNotFoundError.js +5 -2
  363. package/browser/error/RepositoryNotFoundError.js.map +1 -1
  364. package/browser/error/RepositoryNotTreeError.d.ts +2 -2
  365. package/browser/error/RepositoryNotTreeError.js +11 -8
  366. package/browser/error/RepositoryNotTreeError.js.map +1 -1
  367. package/browser/error/ReturningStatementNotSupportedError.js +2 -2
  368. package/browser/error/ReturningStatementNotSupportedError.js.map +1 -1
  369. package/browser/error/SubjectRemovedAndUpdatedError.js +2 -2
  370. package/browser/error/SubjectRemovedAndUpdatedError.js.map +1 -1
  371. package/browser/error/SubjectWithoutIdentifierError.js +2 -2
  372. package/browser/error/SubjectWithoutIdentifierError.js.map +1 -1
  373. package/browser/error/TransactionAlreadyStartedError.js +2 -2
  374. package/browser/error/TransactionAlreadyStartedError.js.map +1 -1
  375. package/browser/error/TransactionNotStartedError.js +2 -2
  376. package/browser/error/TransactionNotStartedError.js.map +1 -1
  377. package/browser/error/TreeRepositoryNotSupportedError.js +2 -2
  378. package/browser/error/TreeRepositoryNotSupportedError.js.map +1 -1
  379. package/browser/error/UpdateValuesMissingError.js +2 -2
  380. package/browser/error/UpdateValuesMissingError.js.map +1 -1
  381. package/browser/error/UsingJoinColumnIsNotAllowedError.js +2 -2
  382. package/browser/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
  383. package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +2 -2
  384. package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
  385. package/browser/error/UsingJoinTableIsNotAllowedError.js +2 -2
  386. package/browser/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
  387. package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js +2 -2
  388. package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
  389. package/browser/find-options/FindOneOptions.d.ts +2 -2
  390. package/browser/find-options/FindOneOptions.js.map +1 -1
  391. package/browser/find-options/FindOperator.d.ts +6 -3
  392. package/browser/find-options/FindOperator.js +22 -45
  393. package/browser/find-options/FindOperator.js.map +1 -1
  394. package/browser/find-options/FindOptionsUtils.d.ts +2 -2
  395. package/browser/find-options/FindOptionsUtils.js +1 -1
  396. package/browser/find-options/FindOptionsUtils.js.map +1 -1
  397. package/browser/find-options/operator/Any.d.ts +1 -1
  398. package/browser/find-options/operator/Any.js.map +1 -1
  399. package/browser/find-options/operator/Between.d.ts +1 -1
  400. package/browser/find-options/operator/Between.js.map +1 -1
  401. package/browser/find-options/operator/In.d.ts +1 -1
  402. package/browser/find-options/operator/In.js.map +1 -1
  403. package/browser/find-options/operator/Raw.d.ts +1 -1
  404. package/browser/find-options/operator/Raw.js.map +1 -1
  405. package/browser/index.d.ts +8 -11
  406. package/browser/index.js +8 -15
  407. package/browser/index.js.map +1 -1
  408. package/browser/logger/DebugLogger.d.ts +0 -1
  409. package/browser/logger/DebugLogger.js +9 -9
  410. package/browser/logger/DebugLogger.js.map +1 -1
  411. package/browser/logger/FileLogger.d.ts +3 -1
  412. package/browser/logger/FileLogger.js +9 -3
  413. package/browser/logger/FileLogger.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 +15 -16
  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 -5
  421. package/browser/metadata/EntityMetadata.js +15 -16
  422. package/browser/metadata/EntityMetadata.js.map +1 -1
  423. package/browser/metadata/RelationMetadata.js +12 -12
  424. package/browser/metadata/RelationMetadata.js.map +1 -1
  425. package/browser/metadata-args/EntityRepositoryMetadataArgs.d.ts +2 -2
  426. package/browser/metadata-args/EntityRepositoryMetadataArgs.js.map +1 -1
  427. package/browser/metadata-args/RelationCountMetadataArgs.js.map +1 -1
  428. package/browser/metadata-args/RelationIdMetadataArgs.js.map +1 -1
  429. package/browser/metadata-builder/EntityMetadataBuilder.js +14 -12
  430. package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  431. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +3 -2
  432. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  433. package/browser/migration/MigrationExecutor.js +132 -103
  434. package/browser/migration/MigrationExecutor.js.map +1 -1
  435. package/browser/naming-strategy/DefaultNamingStrategy.d.ts +5 -0
  436. package/browser/naming-strategy/DefaultNamingStrategy.js +8 -6
  437. package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  438. package/browser/naming-strategy/NamingStrategyInterface.d.ts +11 -0
  439. package/browser/naming-strategy/NamingStrategyInterface.js.map +1 -1
  440. package/browser/persistence/EntityPersistExecutor.js +64 -46
  441. package/browser/persistence/EntityPersistExecutor.js.map +1 -1
  442. package/browser/persistence/Subject.js +2 -2
  443. package/browser/persistence/Subject.js.map +1 -1
  444. package/browser/persistence/SubjectChangedColumnsComputer.js +11 -7
  445. package/browser/persistence/SubjectChangedColumnsComputer.js.map +1 -1
  446. package/browser/persistence/SubjectDatabaseEntityLoader.js +9 -8
  447. package/browser/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  448. package/browser/persistence/SubjectExecutor.js +263 -206
  449. package/browser/persistence/SubjectExecutor.js.map +1 -1
  450. package/browser/persistence/SubjectTopoligicalSorter.js +6 -6
  451. package/browser/persistence/SubjectTopoligicalSorter.js.map +1 -1
  452. package/browser/persistence/subject-builder/CascadesSubjectBuilder.js +2 -2
  453. package/browser/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
  454. package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js +2 -3
  455. package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
  456. package/browser/persistence/subject-builder/OneToManySubjectBuilder.js +1 -1
  457. package/browser/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
  458. package/browser/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +1 -1
  459. package/browser/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
  460. package/browser/persistence/tree/ClosureSubjectExecutor.js +4 -4
  461. package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  462. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js +5 -4
  463. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  464. package/browser/persistence/tree/NestedSetSubjectExecutor.js +3 -3
  465. package/browser/platform/BrowserConnectionOptionsReaderDummy.d.ts +38 -0
  466. package/browser/platform/BrowserConnectionOptionsReaderDummy.js +93 -0
  467. package/browser/platform/BrowserConnectionOptionsReaderDummy.js.map +1 -0
  468. package/browser/platform/BrowserDirectoryExportedClassesLoader.d.ts +15 -0
  469. package/browser/platform/BrowserDirectoryExportedClassesLoader.js +22 -0
  470. package/browser/platform/BrowserDirectoryExportedClassesLoader.js.map +1 -0
  471. package/browser/platform/BrowserDisabledDriversDummy.d.ts +32 -2
  472. package/browser/platform/BrowserDisabledDriversDummy.js +52 -2
  473. package/browser/platform/BrowserDisabledDriversDummy.js.map +1 -1
  474. package/browser/platform/BrowserFileLoggerDummy.d.ts +33 -0
  475. package/browser/platform/BrowserFileLoggerDummy.js +58 -0
  476. package/browser/platform/BrowserFileLoggerDummy.js.map +1 -0
  477. package/browser/platform/BrowserPlatformTools.d.ts +74 -0
  478. package/browser/platform/BrowserPlatformTools.js +157 -0
  479. package/browser/platform/BrowserPlatformTools.js.map +1 -0
  480. package/browser/platform/PlatformTools.d.ts +15 -21
  481. package/browser/platform/PlatformTools.js +142 -81
  482. package/browser/platform/PlatformTools.js.map +1 -1
  483. package/browser/query-builder/Alias.js.map +1 -1
  484. package/browser/query-builder/DeleteQueryBuilder.d.ts +2 -3
  485. package/browser/query-builder/DeleteQueryBuilder.js +10 -5
  486. package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
  487. package/browser/query-builder/InsertQueryBuilder.d.ts +2 -3
  488. package/browser/query-builder/InsertQueryBuilder.js +23 -9
  489. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  490. package/browser/query-builder/JoinAttribute.js +2 -2
  491. package/browser/query-builder/JoinAttribute.js.map +1 -1
  492. package/browser/query-builder/QueryBuilder.d.ts +11 -15
  493. package/browser/query-builder/QueryBuilder.js +92 -31
  494. package/browser/query-builder/QueryBuilder.js.map +1 -1
  495. package/browser/query-builder/QueryBuilderUtils.js +2 -2
  496. package/browser/query-builder/QueryBuilderUtils.js.map +1 -1
  497. package/browser/query-builder/QueryExpressionMap.d.ts +1 -1
  498. package/browser/query-builder/QueryExpressionMap.js +4 -4
  499. package/browser/query-builder/QueryExpressionMap.js.map +1 -1
  500. package/browser/query-builder/QueryPartialEntity.d.ts +1 -1
  501. package/browser/query-builder/QueryPartialEntity.js.map +1 -1
  502. package/browser/query-builder/RelationIdLoader.js +5 -5
  503. package/browser/query-builder/RelationLoader.js +3 -3
  504. package/browser/query-builder/RelationLoader.js.map +1 -1
  505. package/browser/query-builder/RelationQueryBuilder.js +14 -14
  506. package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
  507. package/browser/query-builder/RelationRemover.js +7 -7
  508. package/browser/query-builder/RelationRemover.js.map +1 -1
  509. package/browser/query-builder/RelationUpdater.js +3 -3
  510. package/browser/query-builder/ReturningResultsEntityUpdator.js +30 -31
  511. package/browser/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
  512. package/browser/query-builder/SelectQueryBuilder.d.ts +5 -4
  513. package/browser/query-builder/SelectQueryBuilder.js +77 -41
  514. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  515. package/browser/query-builder/SoftDeleteQueryBuilder.d.ts +2 -3
  516. package/browser/query-builder/SoftDeleteQueryBuilder.js +7 -7
  517. package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  518. package/browser/query-builder/UpdateQueryBuilder.js +22 -8
  519. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  520. package/browser/query-builder/relation-count/RelationCountAttribute.js +3 -3
  521. package/browser/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
  522. package/browser/query-builder/relation-count/RelationCountLoader.js +5 -5
  523. package/browser/query-builder/relation-id/RelationIdAttribute.js +2 -2
  524. package/browser/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
  525. package/browser/query-builder/relation-id/RelationIdLoader.js +6 -6
  526. package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  527. package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +4 -4
  528. package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
  529. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +4 -7
  530. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  531. package/browser/query-runner/BaseQueryRunner.d.ts +2 -5
  532. package/browser/query-runner/BaseQueryRunner.js +106 -56
  533. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  534. package/browser/query-runner/QueryRunner.d.ts +1 -0
  535. package/browser/repository/AbstractRepository.js.map +1 -1
  536. package/browser/repository/BaseEntity.d.ts +17 -1
  537. package/browser/repository/BaseEntity.js +24 -6
  538. package/browser/repository/BaseEntity.js.map +1 -1
  539. package/browser/repository/MongoRepository.js +2 -2
  540. package/browser/repository/MongoRepository.js.map +1 -1
  541. package/browser/repository/Repository.d.ts +1 -1
  542. package/browser/repository/Repository.js +4 -4
  543. package/browser/repository/Repository.js.map +1 -1
  544. package/browser/repository/TreeRepository.js +4 -4
  545. package/browser/repository/TreeRepository.js.map +1 -1
  546. package/browser/schema-builder/MongoSchemaBuilder.js +4 -4
  547. package/browser/schema-builder/MongoSchemaBuilder.js.map +1 -1
  548. package/browser/schema-builder/RdbmsSchemaBuilder.js +924 -368
  549. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  550. package/browser/schema-builder/options/TableIndexOptions.d.ts +1 -1
  551. package/browser/schema-builder/options/TableIndexOptions.js.map +1 -1
  552. package/browser/schema-builder/table/TableCheck.js +2 -2
  553. package/browser/schema-builder/table/TableCheck.js.map +1 -1
  554. package/browser/schema-builder/table/TableForeignKey.js +3 -3
  555. package/browser/schema-builder/table/TableForeignKey.js.map +1 -1
  556. package/browser/schema-builder/table/TableIndex.js +2 -2
  557. package/browser/schema-builder/table/TableIndex.js.map +1 -1
  558. package/browser/schema-builder/table/TableUnique.js +2 -2
  559. package/browser/schema-builder/table/TableUnique.js.map +1 -1
  560. package/browser/schema-builder/view/View.d.ts +1 -2
  561. package/browser/schema-builder/view/View.js.map +1 -1
  562. package/browser/util/ApplyValueTransformers.js.map +1 -1
  563. package/browser/util/DateUtils.js +3 -3
  564. package/browser/util/DateUtils.js.map +1 -1
  565. package/browser/util/DirectoryExportedClassesLoader.js +6 -5
  566. package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
  567. package/browser/util/ObjectUtils.js +4 -4
  568. package/browser/util/ObjectUtils.js.map +1 -1
  569. package/browser/util/OrmUtils.d.ts +4 -0
  570. package/browser/util/OrmUtils.js +19 -4
  571. package/browser/util/OrmUtils.js.map +1 -1
  572. package/browser/util/StringUtils.js +1 -1
  573. package/browser/util/StringUtils.js.map +1 -1
  574. package/cache/DbQueryResultCache.js +1 -1
  575. package/cache/DbQueryResultCache.js.map +1 -1
  576. package/cache/RedisQueryResultCache.js +7 -2
  577. package/cache/RedisQueryResultCache.js.map +1 -1
  578. package/cli.js +2 -1
  579. package/cli.js.map +1 -1
  580. package/commands/CacheClearCommand.js +4 -4
  581. package/commands/CacheClearCommand.js.map +1 -1
  582. package/commands/CommandUtils.d.ts +1 -1
  583. package/commands/CommandUtils.js +4 -4
  584. package/commands/CommandUtils.js.map +1 -1
  585. package/commands/EntityCreateCommand.js +4 -4
  586. package/commands/EntityCreateCommand.js.map +1 -1
  587. package/commands/InitCommand.js +15 -5
  588. package/commands/InitCommand.js.map +1 -1
  589. package/commands/MigrationCreateCommand.js +6 -6
  590. package/commands/MigrationCreateCommand.js.map +1 -1
  591. package/commands/MigrationGenerateCommand.d.ts +11 -1
  592. package/commands/MigrationGenerateCommand.js +42 -10
  593. package/commands/MigrationGenerateCommand.js.map +1 -1
  594. package/commands/MigrationRevertCommand.js +2 -2
  595. package/commands/MigrationRevertCommand.js.map +1 -1
  596. package/commands/MigrationRunCommand.js +3 -3
  597. package/commands/MigrationRunCommand.js.map +1 -1
  598. package/commands/MigrationShowCommand.js +3 -3
  599. package/commands/MigrationShowCommand.js.map +1 -1
  600. package/commands/QueryCommand.js +5 -5
  601. package/commands/QueryCommand.js.map +1 -1
  602. package/commands/SchemaDropCommand.js +3 -3
  603. package/commands/SchemaDropCommand.js.map +1 -1
  604. package/commands/SchemaLogCommand.js +6 -6
  605. package/commands/SchemaLogCommand.js.map +1 -1
  606. package/commands/SchemaSyncCommand.js +3 -3
  607. package/commands/SchemaSyncCommand.js.map +1 -1
  608. package/commands/SubscriberCreateCommand.js +3 -3
  609. package/commands/SubscriberCreateCommand.js.map +1 -1
  610. package/commands/VersionCommand.js +2 -2
  611. package/commands/VersionCommand.js.map +1 -1
  612. package/common/DeepPartial.d.ts +1 -1
  613. package/common/DeepPartial.js.map +1 -1
  614. package/common/EntityTarget.d.ts +9 -0
  615. package/common/EntityTarget.js +4 -0
  616. package/common/EntityTarget.js.map +1 -0
  617. package/connection/Connection.d.ts +11 -10
  618. package/connection/Connection.js +48 -24
  619. package/connection/Connection.js.map +1 -1
  620. package/connection/ConnectionOptions.d.ts +3 -1
  621. package/connection/ConnectionOptions.js.map +1 -1
  622. package/connection/ConnectionOptionsReader.js +38 -33
  623. package/connection/ConnectionOptionsReader.js.map +1 -1
  624. package/connection/options-reader/ConnectionOptionsEnvReader.d.ts +5 -1
  625. package/connection/options-reader/ConnectionOptionsEnvReader.js +45 -31
  626. package/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
  627. package/connection/options-reader/ConnectionOptionsXmlReader.js +2 -2
  628. package/connection/options-reader/ConnectionOptionsXmlReader.js.map +1 -1
  629. package/connection/options-reader/ConnectionOptionsYmlReader.d.ts +1 -1
  630. package/connection/options-reader/ConnectionOptionsYmlReader.js +15 -4
  631. package/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
  632. package/decorator/Check.d.ts +2 -2
  633. package/decorator/Check.js.map +1 -1
  634. package/decorator/EntityRepository.d.ts +1 -1
  635. package/decorator/EntityRepository.js.map +1 -1
  636. package/decorator/Exclusion.d.ts +2 -2
  637. package/decorator/Exclusion.js.map +1 -1
  638. package/decorator/Generated.d.ts +1 -1
  639. package/decorator/Generated.js.map +1 -1
  640. package/decorator/Index.d.ts +7 -7
  641. package/decorator/Index.js.map +1 -1
  642. package/decorator/Unique.d.ts +4 -4
  643. package/decorator/Unique.js +12 -1
  644. package/decorator/Unique.js.map +1 -1
  645. package/decorator/columns/Column.d.ts +12 -12
  646. package/decorator/columns/Column.js.map +1 -1
  647. package/decorator/columns/CreateDateColumn.d.ts +1 -1
  648. package/decorator/columns/CreateDateColumn.js.map +1 -1
  649. package/decorator/columns/DeleteDateColumn.d.ts +1 -1
  650. package/decorator/columns/DeleteDateColumn.js.map +1 -1
  651. package/decorator/columns/ObjectIdColumn.d.ts +1 -1
  652. package/decorator/columns/ObjectIdColumn.js.map +1 -1
  653. package/decorator/columns/PrimaryColumn.d.ts +2 -2
  654. package/decorator/columns/PrimaryColumn.js.map +1 -1
  655. package/decorator/columns/PrimaryGeneratedColumn.d.ts +5 -5
  656. package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  657. package/decorator/columns/UpdateDateColumn.d.ts +1 -1
  658. package/decorator/columns/UpdateDateColumn.js.map +1 -1
  659. package/decorator/columns/VersionColumn.d.ts +1 -1
  660. package/decorator/columns/VersionColumn.js.map +1 -1
  661. package/decorator/columns/ViewColumn.d.ts +2 -1
  662. package/decorator/columns/ViewColumn.js +2 -2
  663. package/decorator/columns/ViewColumn.js.map +1 -1
  664. package/decorator/entity/ChildEntity.d.ts +1 -1
  665. package/decorator/entity/ChildEntity.js.map +1 -1
  666. package/decorator/entity/Entity.d.ts +2 -2
  667. package/decorator/entity/Entity.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/options/ViewColumnOptions.d.ts +9 -0
  691. package/decorator/options/ViewColumnOptions.js +4 -0
  692. package/decorator/options/ViewColumnOptions.js.map +1 -0
  693. package/decorator/relations/JoinColumn.d.ts +3 -3
  694. package/decorator/relations/JoinColumn.js.map +1 -1
  695. package/decorator/relations/JoinTable.d.ts +3 -3
  696. package/decorator/relations/JoinTable.js.map +1 -1
  697. package/decorator/relations/ManyToMany.d.ts +2 -2
  698. package/decorator/relations/ManyToMany.js.map +1 -1
  699. package/decorator/relations/ManyToOne.d.ts +2 -2
  700. package/decorator/relations/ManyToOne.js.map +1 -1
  701. package/decorator/relations/OneToMany.d.ts +3 -3
  702. package/decorator/relations/OneToMany.js +2 -2
  703. package/decorator/relations/OneToMany.js.map +1 -1
  704. package/decorator/relations/OneToOne.d.ts +2 -2
  705. package/decorator/relations/OneToOne.js.map +1 -1
  706. package/decorator/relations/RelationCount.d.ts +1 -1
  707. package/decorator/relations/RelationCount.js.map +1 -1
  708. package/decorator/relations/RelationId.d.ts +1 -1
  709. package/decorator/relations/RelationId.js.map +1 -1
  710. package/decorator/transaction/TransactionManager.d.ts +1 -1
  711. package/decorator/transaction/TransactionManager.js.map +1 -1
  712. package/decorator/tree/Tree.d.ts +1 -1
  713. package/decorator/tree/Tree.js.map +1 -1
  714. package/decorator/tree/TreeChildren.d.ts +1 -1
  715. package/decorator/tree/TreeChildren.js.map +1 -1
  716. package/decorator/tree/TreeLevelColumn.d.ts +1 -1
  717. package/decorator/tree/TreeLevelColumn.js.map +1 -1
  718. package/decorator/tree/TreeParent.d.ts +1 -1
  719. package/decorator/tree/TreeParent.js.map +1 -1
  720. package/driver/Driver.d.ts +7 -2
  721. package/driver/Driver.js.map +1 -1
  722. package/driver/DriverFactory.js +6 -0
  723. package/driver/DriverFactory.js.map +1 -1
  724. package/driver/DriverUtils.d.ts +2 -2
  725. package/driver/DriverUtils.js +6 -2
  726. package/driver/DriverUtils.js.map +1 -1
  727. package/driver/aurora-data-api/AuroraDataApiConnection.d.ts +2 -1
  728. package/driver/aurora-data-api/AuroraDataApiConnection.js +0 -1
  729. package/driver/aurora-data-api/AuroraDataApiConnection.js.map +1 -1
  730. package/driver/aurora-data-api/AuroraDataApiConnectionOptions.d.ts +6 -0
  731. package/driver/aurora-data-api/AuroraDataApiConnectionOptions.js.map +1 -1
  732. package/driver/aurora-data-api/AuroraDataApiDriver.d.ts +6 -1
  733. package/driver/aurora-data-api/AuroraDataApiDriver.js +7 -2
  734. package/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  735. package/driver/aurora-data-api/AuroraDataApiQueryRunner.d.ts +4 -0
  736. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +106 -19
  737. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  738. package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.d.ts +27 -0
  739. package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js +4 -0
  740. package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js.map +1 -0
  741. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.d.ts +57 -0
  742. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +101 -0
  743. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -0
  744. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.d.ts +51 -0
  745. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +144 -0
  746. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -0
  747. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +50 -0
  748. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js +4 -0
  749. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -0
  750. package/driver/better-sqlite3/BetterSqlite3Driver.d.ts +46 -0
  751. package/driver/better-sqlite3/BetterSqlite3Driver.js +127 -0
  752. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -0
  753. package/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +22 -0
  754. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +115 -0
  755. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -0
  756. package/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -1
  757. package/driver/cockroachdb/CockroachDriver.d.ts +6 -1
  758. package/driver/cockroachdb/CockroachDriver.js +6 -1
  759. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  760. package/driver/cockroachdb/CockroachQueryRunner.d.ts +2 -1
  761. package/driver/cockroachdb/CockroachQueryRunner.js +303 -75
  762. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  763. package/driver/cordova/CordovaDriver.d.ts +2 -1
  764. package/driver/cordova/CordovaDriver.js +0 -1
  765. package/driver/cordova/CordovaDriver.js.map +1 -1
  766. package/driver/expo/ExpoDriver.d.ts +2 -1
  767. package/driver/expo/ExpoDriver.js +1 -1
  768. package/driver/expo/ExpoDriver.js.map +1 -1
  769. package/driver/mongodb/MongoDriver.d.ts +6 -1
  770. package/driver/mongodb/MongoDriver.js +6 -1
  771. package/driver/mongodb/MongoDriver.js.map +1 -1
  772. package/driver/mongodb/MongoQueryRunner.js.map +1 -1
  773. package/driver/mongodb/typings.d.ts +4 -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 +10 -3
  777. package/driver/mysql/MysqlDriver.js.map +1 -1
  778. package/driver/mysql/MysqlQueryRunner.d.ts +6 -1
  779. package/driver/mysql/MysqlQueryRunner.js +122 -25
  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 +87 -20
  789. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  790. package/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +1 -1
  791. package/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
  792. package/driver/postgres/PostgresConnectionOptions.d.ts +9 -0
  793. package/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  794. package/driver/postgres/PostgresDriver.d.ts +19 -4
  795. package/driver/postgres/PostgresDriver.js +179 -109
  796. package/driver/postgres/PostgresDriver.js.map +1 -1
  797. package/driver/postgres/PostgresQueryRunner.d.ts +2 -1
  798. package/driver/postgres/PostgresQueryRunner.js +288 -68
  799. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  800. package/driver/react-native/ReactNativeDriver.d.ts +2 -1
  801. package/driver/react-native/ReactNativeDriver.js +2 -2
  802. package/driver/react-native/ReactNativeDriver.js.map +1 -1
  803. package/driver/sap/SapConnectionCredentialsOptions.d.ts +1 -1
  804. package/driver/sap/SapConnectionCredentialsOptions.js.map +1 -1
  805. package/driver/sap/SapDriver.d.ts +6 -1
  806. package/driver/sap/SapDriver.js +19 -9
  807. package/driver/sap/SapDriver.js.map +1 -1
  808. package/driver/sap/SapQueryRunner.d.ts +2 -1
  809. package/driver/sap/SapQueryRunner.js +91 -23
  810. package/driver/sap/SapQueryRunner.js.map +1 -1
  811. package/driver/sqlite/SqliteConnectionOptions.d.ts +18 -0
  812. package/driver/sqlite/SqliteConnectionOptions.js.map +1 -1
  813. package/driver/sqlite/SqliteDriver.d.ts +2 -1
  814. package/driver/sqlite/SqliteDriver.js +24 -12
  815. package/driver/sqlite/SqliteDriver.js.map +1 -1
  816. package/driver/sqlite/SqliteQueryRunner.js +29 -14
  817. package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  818. package/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +7 -2
  819. package/driver/sqlite-abstract/AbstractSqliteDriver.js +31 -4
  820. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  821. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +17 -3
  822. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  823. package/driver/sqljs/SqljsDriver.d.ts +2 -1
  824. package/driver/sqljs/SqljsDriver.js +1 -2
  825. package/driver/sqljs/SqljsDriver.js.map +1 -1
  826. package/driver/sqljs/SqljsQueryRunner.js +5 -1
  827. package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  828. package/driver/sqlserver/SqlServerDriver.d.ts +6 -1
  829. package/driver/sqlserver/SqlServerDriver.js +6 -1
  830. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  831. package/driver/sqlserver/SqlServerQueryRunner.d.ts +2 -1
  832. package/driver/sqlserver/SqlServerQueryRunner.js +91 -24
  833. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  834. package/driver/types/ColumnTypes.d.ts +1 -1
  835. package/driver/types/ColumnTypes.js.map +1 -1
  836. package/driver/types/DatabaseType.d.ts +1 -1
  837. package/driver/types/DatabaseType.js.map +1 -1
  838. package/driver/types/ReplicationMode.d.ts +1 -0
  839. package/driver/types/ReplicationMode.js +4 -0
  840. package/driver/types/ReplicationMode.js.map +1 -0
  841. package/entity-manager/EntityManager.d.ts +42 -257
  842. package/entity-manager/EntityManager.js +10 -10
  843. package/entity-manager/EntityManager.js.map +1 -1
  844. package/entity-manager/MongoEntityManager.d.ts +46 -46
  845. package/entity-manager/MongoEntityManager.js.map +1 -1
  846. package/entity-schema/EntitySchemaColumnOptions.js.map +1 -1
  847. package/entity-schema/EntitySchemaRelationOptions.d.ts +1 -1
  848. package/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
  849. package/entity-schema/EntitySchemaTransformer.js +22 -7
  850. package/entity-schema/EntitySchemaTransformer.js.map +1 -1
  851. package/error/EntityMetadataNotFoundError.d.ts +2 -2
  852. package/error/EntityMetadataNotFoundError.js +3 -0
  853. package/error/EntityMetadataNotFoundError.js.map +1 -1
  854. package/error/EntityNotFoundError.d.ts +2 -3
  855. package/error/EntityNotFoundError.js +3 -0
  856. package/error/EntityNotFoundError.js.map +1 -1
  857. package/error/FindRelationsNotFoundError.js +2 -2
  858. package/error/FindRelationsNotFoundError.js.map +1 -1
  859. package/error/MissingDriverError.js +1 -1
  860. package/error/MissingDriverError.js.map +1 -1
  861. package/error/QueryFailedError.js +1 -1
  862. package/error/QueryFailedError.js.map +1 -1
  863. package/error/RepositoryNotFoundError.d.ts +2 -2
  864. package/error/RepositoryNotFoundError.js +3 -0
  865. package/error/RepositoryNotFoundError.js.map +1 -1
  866. package/error/RepositoryNotTreeError.d.ts +2 -2
  867. package/error/RepositoryNotTreeError.js +9 -6
  868. package/error/RepositoryNotTreeError.js.map +1 -1
  869. package/find-options/FindOneOptions.d.ts +2 -2
  870. package/find-options/FindOneOptions.js.map +1 -1
  871. package/find-options/FindOperator.d.ts +6 -3
  872. package/find-options/FindOperator.js +22 -45
  873. package/find-options/FindOperator.js.map +1 -1
  874. package/find-options/FindOptionsUtils.d.ts +2 -2
  875. package/find-options/FindOptionsUtils.js +1 -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/In.d.ts +1 -1
  882. package/find-options/operator/In.js.map +1 -1
  883. package/find-options/operator/Raw.d.ts +1 -1
  884. package/find-options/operator/Raw.js.map +1 -1
  885. package/index.d.ts +8 -11
  886. package/index.js +1 -14
  887. package/index.js.map +1 -1
  888. package/logger/DebugLogger.d.ts +0 -1
  889. package/logger/DebugLogger.js +10 -9
  890. package/logger/DebugLogger.js.map +1 -1
  891. package/logger/FileLogger.d.ts +3 -1
  892. package/logger/FileLogger.js +10 -3
  893. package/logger/FileLogger.js.map +1 -1
  894. package/logger/LoggerOptions.d.ts +9 -0
  895. package/logger/LoggerOptions.js.map +1 -1
  896. package/metadata/ColumnMetadata.js +10 -11
  897. package/metadata/ColumnMetadata.js.map +1 -1
  898. package/metadata/EntityMetadata.d.ts +1 -5
  899. package/metadata/EntityMetadata.js +13 -14
  900. package/metadata/EntityMetadata.js.map +1 -1
  901. package/metadata/RelationMetadata.js +7 -7
  902. package/metadata/RelationMetadata.js.map +1 -1
  903. package/metadata-args/EntityRepositoryMetadataArgs.d.ts +2 -2
  904. package/metadata-args/EntityRepositoryMetadataArgs.js.map +1 -1
  905. package/metadata-args/RelationCountMetadataArgs.js.map +1 -1
  906. package/metadata-args/RelationIdMetadataArgs.js.map +1 -1
  907. package/metadata-builder/EntityMetadataBuilder.js +8 -6
  908. package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  909. package/metadata-builder/JunctionEntityMetadataBuilder.js +1 -0
  910. package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  911. package/migration/MigrationExecutor.js +103 -74
  912. package/migration/MigrationExecutor.js.map +1 -1
  913. package/naming-strategy/DefaultNamingStrategy.d.ts +5 -0
  914. package/naming-strategy/DefaultNamingStrategy.js +2 -0
  915. package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  916. package/naming-strategy/NamingStrategyInterface.d.ts +11 -0
  917. package/naming-strategy/NamingStrategyInterface.js.map +1 -1
  918. package/package.json +72 -51
  919. package/persistence/EntityPersistExecutor.js +60 -42
  920. package/persistence/EntityPersistExecutor.js.map +1 -1
  921. package/persistence/SubjectChangedColumnsComputer.js +11 -7
  922. package/persistence/SubjectChangedColumnsComputer.js.map +1 -1
  923. package/persistence/SubjectDatabaseEntityLoader.js +2 -1
  924. package/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  925. package/persistence/SubjectExecutor.js +244 -187
  926. package/persistence/SubjectExecutor.js.map +1 -1
  927. package/persistence/subject-builder/ManyToManySubjectBuilder.js +2 -3
  928. package/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
  929. package/persistence/subject-builder/OneToManySubjectBuilder.js +1 -1
  930. package/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
  931. package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +1 -1
  932. package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
  933. package/persistence/tree/MaterializedPathSubjectExecutor.js +2 -1
  934. package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  935. package/platform/PlatformTools.d.ts +7 -1
  936. package/platform/PlatformTools.js +44 -43
  937. package/platform/PlatformTools.js.map +1 -1
  938. package/query-builder/Alias.js.map +1 -1
  939. package/query-builder/DeleteQueryBuilder.d.ts +2 -3
  940. package/query-builder/DeleteQueryBuilder.js +5 -0
  941. package/query-builder/DeleteQueryBuilder.js.map +1 -1
  942. package/query-builder/InsertQueryBuilder.d.ts +2 -3
  943. package/query-builder/InsertQueryBuilder.js +18 -4
  944. package/query-builder/InsertQueryBuilder.js.map +1 -1
  945. package/query-builder/QueryBuilder.d.ts +11 -15
  946. package/query-builder/QueryBuilder.js +84 -23
  947. package/query-builder/QueryBuilder.js.map +1 -1
  948. package/query-builder/QueryExpressionMap.d.ts +1 -1
  949. package/query-builder/QueryExpressionMap.js.map +1 -1
  950. package/query-builder/QueryPartialEntity.d.ts +1 -1
  951. package/query-builder/QueryPartialEntity.js.map +1 -1
  952. package/query-builder/ReturningResultsEntityUpdator.js +23 -24
  953. package/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
  954. package/query-builder/SelectQueryBuilder.d.ts +4 -4
  955. package/query-builder/SelectQueryBuilder.js +41 -5
  956. package/query-builder/SelectQueryBuilder.js.map +1 -1
  957. package/query-builder/SoftDeleteQueryBuilder.d.ts +2 -3
  958. package/query-builder/SoftDeleteQueryBuilder.js +2 -2
  959. package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  960. package/query-builder/UpdateQueryBuilder.js +17 -3
  961. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  962. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +1 -4
  963. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  964. package/query-runner/BaseQueryRunner.d.ts +2 -5
  965. package/query-runner/BaseQueryRunner.js +90 -40
  966. package/query-runner/BaseQueryRunner.js.map +1 -1
  967. package/repository/AbstractRepository.js.map +1 -1
  968. package/repository/BaseEntity.d.ts +17 -1
  969. package/repository/BaseEntity.js +20 -2
  970. package/repository/BaseEntity.js.map +1 -1
  971. package/repository/MongoRepository.js.map +1 -1
  972. package/repository/Repository.d.ts +1 -1
  973. package/repository/Repository.js +2 -2
  974. package/repository/Repository.js.map +1 -1
  975. package/schema-builder/MongoSchemaBuilder.js +1 -1
  976. package/schema-builder/MongoSchemaBuilder.js.map +1 -1
  977. package/schema-builder/RdbmsSchemaBuilder.js +875 -319
  978. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  979. package/schema-builder/options/TableIndexOptions.d.ts +1 -1
  980. package/schema-builder/options/TableIndexOptions.js.map +1 -1
  981. package/schema-builder/view/View.d.ts +1 -2
  982. package/schema-builder/view/View.js.map +1 -1
  983. package/typeorm-class-transformer-shim.js +16 -2
  984. package/typeorm-model-shim.js +18 -0
  985. package/util/ApplyValueTransformers.js.map +1 -1
  986. package/util/DateUtils.js +1 -1
  987. package/util/DateUtils.js.map +1 -1
  988. package/util/DirectoryExportedClassesLoader.js +7 -5
  989. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  990. package/util/ObjectUtils.js +2 -2
  991. package/util/ObjectUtils.js.map +1 -1
  992. package/util/OrmUtils.d.ts +4 -0
  993. package/util/OrmUtils.js +17 -2
  994. package/util/OrmUtils.js.map +1 -1
  995. package/util/StringUtils.js +3 -2
  996. package/util/StringUtils.js.map +1 -1
  997. package/browser/util/PromiseUtils.d.ts +0 -24
  998. package/browser/util/PromiseUtils.js +0 -62
  999. package/browser/util/PromiseUtils.js.map +0 -1
  1000. package/util/PromiseUtils.d.ts +0 -24
  1001. package/util/PromiseUtils.js +0 -64
  1002. package/util/PromiseUtils.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/persistence/tree/MaterializedPathSubjectExecutor.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACH;IAEI,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,yCAAsB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAC9C,CAAC;IAED,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAE5E;;OAEG;IACG,gDAAM,GAAZ,UAAa,OAAgB;;;;;;wBAErB,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,kBAAmB,CAAC,cAAc,CAAC,OAAO,CAAC,MAAO,CAAC,CAAC;wBAClF,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,sCAAsC;4BACxG,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;wBAEtH,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;wBAErD,UAAU,GAAW,EAAE,CAAC;6BACxB,QAAQ,EAAR,wBAAQ;wBACK,qBAAM,IAAI,CAAC,WAAW,CAAC,OAAO;iCACtC,kBAAkB,EAAE;iCACpB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,GAAG,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAuB,CAAC,YAAY,EAAE,MAAM,CAAC;iCACzG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;iCAC1D,UAAU,CAAC,QAAQ,CAAC;iCACpB,SAAS,EAAE;iCACX,IAAI,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAnC,CAAmC,CAAC,EAAA;;wBANxD,UAAU,GAAG,SAM2C,CAAC;;;wBAGvD,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,kBAAmB,CAAC,WAAW,CAAC,GAAG,CAAC,UAAA,UAAU;4BACpF,OAAO,UAAU,CAAC,gBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,gBAAiB,CAAC,CAAC;wBAClF,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAEb,qBAAM,IAAI,CAAC,WAAW,CAAC,OAAO;iCACzB,kBAAkB,EAAE;iCACpB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;iCAC/B,GAAG,CAAC,CAAA;gCACD,GAAC,OAAO,CAAC,QAAQ,CAAC,sBAAuB,CAAC,YAAY,IAAG,UAAU,GAAG,gBAAgB,GAAG,GAAG;kCACxF,CAAA,CAAC;iCACR,KAAK,CAAC,OAAO,CAAC,UAAW,CAAC;iCAC1B,OAAO,EAAE,EAAA;;wBAPd,SAOc,CAAC;;;;;KAClB;IAEL,sCAAC;AAAD,CAjDA,AAiDC,IAAA;AAjDY,0EAA+B","file":"MaterializedPathSubjectExecutor.js","sourcesContent":["import {Subject} from \"../Subject\";\nimport {QueryRunner} from \"../../query-runner/QueryRunner\";\n\n/**\n * Executes subject operations for materialized-path tree entities.\n */\nexport class MaterializedPathSubjectExecutor {\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(protected queryRunner: QueryRunner) {\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Executes operations when subject is being inserted.\n */\n async insert(subject: Subject): Promise<void> {\n\n let parent = subject.metadata.treeParentRelation!.getEntityValue(subject.entity!); // if entity was attached via parent\n if (!parent && subject.parentSubject && subject.parentSubject.entity) // if entity was attached via children\n parent = subject.parentSubject.insertedValueSet ? subject.parentSubject.insertedValueSet : subject.parentSubject.entity;\n\n const parentId = subject.metadata.getEntityIdMap(parent);\n\n let parentPath: string = \"\";\n if (parentId) {\n parentPath = await this.queryRunner.manager\n .createQueryBuilder()\n .select(subject.metadata.targetName + \".\" + subject.metadata.materializedPathColumn!.propertyPath, \"path\")\n .from(subject.metadata.target, subject.metadata.targetName)\n .whereInIds(parentId)\n .getRawOne()\n .then(result => result ? result[\"path\"] : undefined);\n }\n\n const insertedEntityId = subject.metadata.treeParentRelation!.joinColumns.map(joinColumn => {\n return joinColumn.referencedColumn!.getEntityValue(subject.insertedValueSet!);\n }).join(\"_\");\n\n await this.queryRunner.manager\n .createQueryBuilder()\n .update(subject.metadata.target)\n .set({\n [subject.metadata.materializedPathColumn!.propertyPath]: parentPath + insertedEntityId + \".\"\n } as any)\n .where(subject.identifier!)\n .execute();\n }\n\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/persistence/tree/MaterializedPathSubjectExecutor.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACH;IAEI,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,yCAAsB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAC9C,CAAC;IAED,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAE5E;;OAEG;IACG,gDAAM,GAAZ,UAAa,OAAgB;;;;;;;wBAErB,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,kBAAmB,CAAC,cAAc,CAAC,OAAO,CAAC,MAAO,CAAC,CAAC;wBAClF,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,sCAAsC;4BACxG,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;wBAEtH,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;wBAErD,UAAU,GAAW,EAAE,CAAC;6BACxB,QAAQ,EAAR,wBAAQ;wBACK,qBAAM,IAAI,CAAC,WAAW,CAAC,OAAO;iCACtC,kBAAkB,EAAE;iCACpB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,GAAG,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAuB,CAAC,YAAY,EAAE,MAAM,CAAC;iCACzG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;iCAC1D,UAAU,CAAC,QAAQ,CAAC;iCACpB,SAAS,EAAE;iCACX,IAAI,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAnC,CAAmC,CAAC,EAAA;;wBANxD,UAAU,GAAG,SAM2C,CAAC;;;wBAGvD,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,kBAAmB,CAAC,WAAW,CAAC,GAAG,CAAC,UAAA,UAAU;4BACpF,OAAO,UAAU,CAAC,gBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,gBAAiB,CAAC,CAAC;wBAClF,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAEb,qBAAM,IAAI,CAAC,WAAW,CAAC,OAAO;iCACzB,kBAAkB,EAAE;iCACpB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;iCAC/B,GAAG,CAAC,CAAA;gCACD,GAAC,OAAO,CAAC,QAAQ,CAAC,sBAAuB,CAAC,YAAY,IAAG,UAAU,GAAG,gBAAgB,GAAG,GAAG;kCACxF,CAAA,CAAC;iCACR,KAAK,CAAC,OAAO,CAAC,UAAW,CAAC;iCAC1B,OAAO,EAAE,EAAA;;wBAPd,SAOc,CAAC;;;;;KAClB;IAEL,sCAAC;AAAD,CAjDA,AAiDC,IAAA;AAjDY,0EAA+B","file":"MaterializedPathSubjectExecutor.js","sourcesContent":["import {Subject} from \"../Subject\";\nimport {QueryRunner} from \"../../query-runner/QueryRunner\";\n\n/**\n * Executes subject operations for materialized-path tree entities.\n */\nexport class MaterializedPathSubjectExecutor {\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(protected queryRunner: QueryRunner) {\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Executes operations when subject is being inserted.\n */\n async insert(subject: Subject): Promise<void> {\n\n let parent = subject.metadata.treeParentRelation!.getEntityValue(subject.entity!); // if entity was attached via parent\n if (!parent && subject.parentSubject && subject.parentSubject.entity) // if entity was attached via children\n parent = subject.parentSubject.insertedValueSet ? subject.parentSubject.insertedValueSet : subject.parentSubject.entity;\n\n const parentId = subject.metadata.getEntityIdMap(parent);\n\n let parentPath: string = \"\";\n if (parentId) {\n parentPath = await this.queryRunner.manager\n .createQueryBuilder()\n .select(subject.metadata.targetName + \".\" + subject.metadata.materializedPathColumn!.propertyPath, \"path\")\n .from(subject.metadata.target, subject.metadata.targetName)\n .whereInIds(parentId)\n .getRawOne()\n .then(result => result ? result[\"path\"] : undefined);\n }\n\n const insertedEntityId = subject.metadata.treeParentRelation!.joinColumns.map(joinColumn => {\n return joinColumn.referencedColumn!.getEntityValue(subject.insertedValueSet!);\n }).join(\"_\");\n\n await this.queryRunner.manager\n .createQueryBuilder()\n .update(subject.metadata.target)\n .set({\n [subject.metadata.materializedPathColumn!.propertyPath]: parentPath + insertedEntityId + \".\"\n } as any)\n .where(subject.identifier!)\n .execute();\n }\n\n}\n"],"sourceRoot":"../.."}
@@ -38,6 +38,12 @@ export declare class PlatformTools {
38
38
  static readFileSync(filename: string): Buffer;
39
39
  static appendFileSync(filename: string, data: any): void;
40
40
  static writeFile(path: string, data: any): Promise<void>;
41
+ /**
42
+ * Loads a dotenv file into the environment variables.
43
+ *
44
+ * @param path The file to load as a dotenv configuration
45
+ */
46
+ static dotenv(pathStr: string): void;
41
47
  /**
42
48
  * Gets environment variable.
43
49
  */
@@ -57,5 +63,5 @@ export declare class PlatformTools {
57
63
  static logError(prefix: string, error: any): void;
58
64
  static logWarn(prefix: string, warning: any): void;
59
65
  static log(message: string): void;
60
- static warn(message: string): any;
66
+ static warn(message: string): string;
61
67
  }
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var tslib_1 = require("tslib");
4
- var path = require("path");
5
- var fs = require("fs");
4
+ var path = tslib_1.__importStar(require("path"));
5
+ var fs = tslib_1.__importStar(require("fs"));
6
+ var dotenv_1 = tslib_1.__importDefault(require("dotenv"));
7
+ var chalk_1 = tslib_1.__importDefault(require("chalk"));
6
8
  var cli_highlight_1 = require("cli-highlight");
7
9
  var fs_1 = require("fs");
8
10
  exports.ReadStream = fs_1.ReadStream;
@@ -11,7 +13,6 @@ exports.EventEmitter = events_1.EventEmitter;
11
13
  var stream_1 = require("stream");
12
14
  exports.Readable = stream_1.Readable;
13
15
  exports.Writable = stream_1.Writable;
14
- var chalk = require("chalk");
15
16
  /**
16
17
  * Platform-specific tools.
17
18
  */
@@ -43,8 +44,10 @@ var PlatformTools = /** @class */ (function () {
43
44
  /**
44
45
  * hana
45
46
  */
46
- case "@sap/hdbext":
47
- return require("@sap/hdbext");
47
+ case "@sap/hana-client":
48
+ return require("@sap/hana-client");
49
+ case "hdb-pool":
50
+ return require("hdb-pool");
48
51
  /**
49
52
  * mysql
50
53
  */
@@ -66,17 +69,20 @@ var PlatformTools = /** @class */ (function () {
66
69
  return require("pg-native");
67
70
  case "pg-query-stream":
68
71
  return require("pg-query-stream");
72
+ case "typeorm-aurora-data-api-driver":
73
+ return require("typeorm-aurora-data-api-driver");
69
74
  /**
70
75
  * redis
71
76
  */
72
77
  case "redis":
73
78
  return require("redis");
74
- /**
75
- * ioredis
76
- */
77
79
  case "ioredis":
78
- case "ioredis/cluster":
79
80
  return require("ioredis");
81
+ /**
82
+ * better-sqlite3
83
+ */
84
+ case "better-sqlite3":
85
+ return require("better-sqlite3");
80
86
  /**
81
87
  * sqlite
82
88
  */
@@ -93,33 +99,20 @@ var PlatformTools = /** @class */ (function () {
93
99
  case "mssql":
94
100
  return require("mssql");
95
101
  /**
96
- * other modules
97
- */
98
- case "mkdirp":
99
- return require("mkdirp");
100
- case "path":
101
- return require("path");
102
- case "debug":
103
- return require("debug");
104
- case "app-root-path":
105
- return require("app-root-path");
106
- case "glob":
107
- return require("glob");
108
- case "typeorm-aurora-data-api-driver":
109
- return require("typeorm-aurora-data-api-driver");
110
- /**
111
- * default
112
- */
113
- default:
114
- return require(name);
102
+ * react-native-sqlite
103
+ */
104
+ case "react-native-sqlite-storage":
105
+ return require("react-native-sqlite-storage");
115
106
  }
116
107
  }
117
108
  catch (err) {
118
- if (!path.isAbsolute(name) && name.substr(0, 2) !== "./" && name.substr(0, 3) !== "../") {
119
- return require(path.resolve(process.cwd() + "/node_modules/" + name));
120
- }
121
- throw err;
109
+ return require(path.resolve(process.cwd() + "/node_modules/" + name));
122
110
  }
111
+ // If nothing above matched and we get here, the package was not listed within PlatformTools
112
+ // and is an Invalid Package. To make it explicit that this is NOT the intended use case for
113
+ // PlatformTools.load - it's not just a way to replace `require` all willy-nilly - let's throw
114
+ // an error.
115
+ throw new TypeError("Invalid Package for PlatformTools.load: " + name);
123
116
  };
124
117
  /**
125
118
  * Normalizes given path. Does "path.normalize".
@@ -164,6 +157,14 @@ var PlatformTools = /** @class */ (function () {
164
157
  });
165
158
  });
166
159
  };
160
+ /**
161
+ * Loads a dotenv file into the environment variables.
162
+ *
163
+ * @param path The file to load as a dotenv configuration
164
+ */
165
+ PlatformTools.dotenv = function (pathStr) {
166
+ dotenv_1.default.config({ path: pathStr });
167
+ };
167
168
  /**
168
169
  * Gets environment variable.
169
170
  */
@@ -175,12 +176,12 @@ var PlatformTools = /** @class */ (function () {
175
176
  */
176
177
  PlatformTools.highlightSql = function (sql) {
177
178
  var theme = {
178
- "keyword": chalk.blueBright,
179
- "literal": chalk.blueBright,
180
- "string": chalk.white,
181
- "type": chalk.magentaBright,
182
- "built_in": chalk.magentaBright,
183
- "comment": chalk.gray,
179
+ "keyword": chalk_1.default.blueBright,
180
+ "literal": chalk_1.default.blueBright,
181
+ "string": chalk_1.default.white,
182
+ "type": chalk_1.default.magentaBright,
183
+ "built_in": chalk_1.default.magentaBright,
184
+ "comment": chalk_1.default.gray,
184
185
  };
185
186
  return cli_highlight_1.highlight(sql, { theme: theme, language: "sql" });
186
187
  };
@@ -194,19 +195,19 @@ var PlatformTools = /** @class */ (function () {
194
195
  * Logging functions needed by AdvancedConsoleLogger
195
196
  */
196
197
  PlatformTools.logInfo = function (prefix, info) {
197
- console.log(chalk.gray.underline(prefix), info);
198
+ console.log(chalk_1.default.gray.underline(prefix), info);
198
199
  };
199
200
  PlatformTools.logError = function (prefix, error) {
200
- console.log(chalk.underline.red(prefix), error);
201
+ console.log(chalk_1.default.underline.red(prefix), error);
201
202
  };
202
203
  PlatformTools.logWarn = function (prefix, warning) {
203
- console.log(chalk.underline.yellow(prefix), warning);
204
+ console.log(chalk_1.default.underline.yellow(prefix), warning);
204
205
  };
205
206
  PlatformTools.log = function (message) {
206
- console.log(chalk.underline(message));
207
+ console.log(chalk_1.default.underline(message));
207
208
  };
208
209
  PlatformTools.warn = function (message) {
209
- return chalk.yellow(message);
210
+ return chalk_1.default.yellow(message);
210
211
  };
211
212
  /**
212
213
  * Type of the currently running platform.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/platform/PlatformTools.ts"],"names":[],"mappings":"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","file":"PlatformTools.js","sourcesContent":["import * as path from \"path\";\nimport * as fs from \"fs\";\nimport {highlight, Theme} from \"cli-highlight\";\nexport {ReadStream} from \"fs\";\nexport {EventEmitter} from \"events\";\nexport {Readable, Writable} from \"stream\";\n\nconst chalk = require(\"chalk\");\n\n/**\n * Platform-specific tools.\n */\nexport class PlatformTools {\n\n /**\n * Type of the currently running platform.\n */\n static type: \"browser\"|\"node\" = \"node\";\n\n /**\n * Gets global variable where global stuff can be stored.\n */\n static getGlobalVariable(): any {\n return global;\n }\n\n /**\n * Loads (\"require\"-s) given file or package.\n * This operation only supports on node platform\n */\n static load(name: string): any {\n\n // if name is not absolute or relative, then try to load package from the node_modules of the directory we are currently in\n // this is useful when we are using typeorm package globally installed and it accesses drivers\n // that are not installed globally\n\n try {\n\n // switch case to explicit require statements for webpack compatibility.\n\n switch (name) {\n\n /**\n * mongodb\n */\n case \"mongodb\":\n return require(\"mongodb\");\n\n /**\n * hana\n */\n case \"@sap/hdbext\":\n return require(\"@sap/hdbext\");\n\n /**\n * mysql\n */\n case \"mysql\":\n return require(\"mysql\");\n\n case \"mysql2\":\n return require(\"mysql2\");\n\n /**\n * oracle\n */\n case \"oracledb\":\n return require(\"oracledb\");\n\n /**\n * postgres\n */\n case \"pg\":\n return require(\"pg\");\n\n case \"pg-native\":\n return require(\"pg-native\");\n\n case \"pg-query-stream\":\n return require(\"pg-query-stream\");\n\n /**\n * redis\n */\n case \"redis\":\n return require(\"redis\");\n\n /**\n * ioredis\n */\n case \"ioredis\":\n case \"ioredis/cluster\":\n return require(\"ioredis\");\n\n /**\n * sqlite\n */\n case \"sqlite3\":\n return require(\"sqlite3\");\n\n /**\n * sql.js\n */\n case \"sql.js\":\n return require(\"sql.js\");\n\n /**\n * sqlserver\n */\n case \"mssql\":\n return require(\"mssql\");\n\n /**\n * other modules\n */\n case \"mkdirp\":\n return require(\"mkdirp\");\n\n case \"path\":\n return require(\"path\");\n\n case \"debug\":\n return require(\"debug\");\n\n case \"app-root-path\":\n return require(\"app-root-path\");\n\n case \"glob\":\n return require(\"glob\");\n\n case \"typeorm-aurora-data-api-driver\":\n return require(\"typeorm-aurora-data-api-driver\");\n /**\n * default\n */\n default:\n return require(name);\n\n }\n\n } catch (err) {\n if (!path.isAbsolute(name) && name.substr(0, 2) !== \"./\" && name.substr(0, 3) !== \"../\") {\n return require(path.resolve(process.cwd() + \"/node_modules/\" + name));\n }\n\n throw err;\n }\n }\n\n /**\n * Normalizes given path. Does \"path.normalize\".\n */\n static pathNormalize(pathStr: string): string {\n return path.normalize(pathStr);\n }\n\n /**\n * Gets file extension. Does \"path.extname\".\n */\n static pathExtname(pathStr: string): string {\n return path.extname(pathStr);\n }\n\n /**\n * Resolved given path. Does \"path.resolve\".\n */\n static pathResolve(pathStr: string): string {\n return path.resolve(pathStr);\n }\n\n /**\n * Synchronously checks if file exist. Does \"fs.existsSync\".\n */\n static fileExist(pathStr: string): boolean {\n return fs.existsSync(pathStr);\n }\n\n static readFileSync(filename: string): Buffer {\n return fs.readFileSync(filename);\n }\n\n static appendFileSync(filename: string, data: any): void {\n fs.appendFileSync(filename, data);\n }\n\n static async writeFile(path: string, data: any): Promise<void> {\n return new Promise<void>((ok, fail) => {\n fs.writeFile(path, data, (err) => {\n if (err) fail(err);\n ok();\n });\n });\n }\n\n /**\n * Gets environment variable.\n */\n static getEnvVariable(name: string): any {\n return process.env[name];\n }\n\n /**\n * Highlights sql string to be print in the console.\n */\n static highlightSql(sql: string) {\n const theme: Theme = {\n \"keyword\": chalk.blueBright,\n \"literal\": chalk.blueBright,\n \"string\": chalk.white,\n \"type\": chalk.magentaBright,\n \"built_in\": chalk.magentaBright,\n \"comment\": chalk.gray,\n };\n return highlight(sql, { theme: theme, language: \"sql\" });\n }\n\n /**\n * Highlights json string to be print in the console.\n */\n static highlightJson(json: string) {\n return highlight(json, { language: \"json\" });\n }\n\n /**\n * Logging functions needed by AdvancedConsoleLogger\n */\n static logInfo(prefix: string, info: any) {\n console.log(chalk.gray.underline(prefix), info);\n }\n\n static logError(prefix: string, error: any) {\n console.log(chalk.underline.red(prefix), error);\n }\n\n static logWarn(prefix: string, warning: any) {\n console.log(chalk.underline.yellow(prefix), warning);\n }\n\n static log(message: string) {\n console.log(chalk.underline(message));\n }\n\n static warn(message: string) {\n return chalk.yellow(message);\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/platform/PlatformTools.ts"],"names":[],"mappings":"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","file":"PlatformTools.js","sourcesContent":["import * as path from \"path\";\nimport * as fs from \"fs\";\nimport dotenv from \"dotenv\";\nimport chalk from \"chalk\";\nimport {highlight, Theme} from \"cli-highlight\";\n\nexport {ReadStream} from \"fs\";\nexport {EventEmitter} from \"events\";\nexport {Readable, Writable} from \"stream\";\n\n/**\n * Platform-specific tools.\n */\nexport class PlatformTools {\n\n /**\n * Type of the currently running platform.\n */\n static type: \"browser\"|\"node\" = \"node\";\n\n /**\n * Gets global variable where global stuff can be stored.\n */\n static getGlobalVariable(): any {\n return global;\n }\n\n /**\n * Loads (\"require\"-s) given file or package.\n * This operation only supports on node platform\n */\n static load(name: string): any {\n\n // if name is not absolute or relative, then try to load package from the node_modules of the directory we are currently in\n // this is useful when we are using typeorm package globally installed and it accesses drivers\n // that are not installed globally\n\n try {\n\n // switch case to explicit require statements for webpack compatibility.\n\n switch (name) {\n\n /**\n * mongodb\n */\n case \"mongodb\":\n return require(\"mongodb\");\n\n /**\n * hana\n */\n case \"@sap/hana-client\":\n return require(\"@sap/hana-client\");\n\n case \"hdb-pool\":\n return require(\"hdb-pool\");\n\n /**\n * mysql\n */\n case \"mysql\":\n return require(\"mysql\");\n\n case \"mysql2\":\n return require(\"mysql2\");\n\n /**\n * oracle\n */\n case \"oracledb\":\n return require(\"oracledb\");\n\n /**\n * postgres\n */\n case \"pg\":\n return require(\"pg\");\n\n case \"pg-native\":\n return require(\"pg-native\");\n\n case \"pg-query-stream\":\n return require(\"pg-query-stream\");\n\n case \"typeorm-aurora-data-api-driver\":\n return require(\"typeorm-aurora-data-api-driver\");\n\n /**\n * redis\n */\n case \"redis\":\n return require(\"redis\");\n\n case \"ioredis\":\n return require(\"ioredis\");\n\n /**\n * better-sqlite3\n */\n case \"better-sqlite3\":\n return require(\"better-sqlite3\");\n\n /**\n * sqlite\n */\n case \"sqlite3\":\n return require(\"sqlite3\");\n\n /**\n * sql.js\n */\n case \"sql.js\":\n return require(\"sql.js\");\n\n /**\n * sqlserver\n */\n case \"mssql\":\n return require(\"mssql\");\n\n /**\n * react-native-sqlite\n */\n case \"react-native-sqlite-storage\":\n return require(\"react-native-sqlite-storage\");\n }\n\n } catch (err) {\n return require(path.resolve(process.cwd() + \"/node_modules/\" + name));\n }\n\n // If nothing above matched and we get here, the package was not listed within PlatformTools\n // and is an Invalid Package. To make it explicit that this is NOT the intended use case for\n // PlatformTools.load - it's not just a way to replace `require` all willy-nilly - let's throw\n // an error.\n throw new TypeError(`Invalid Package for PlatformTools.load: ${name}`);\n }\n\n /**\n * Normalizes given path. Does \"path.normalize\".\n */\n static pathNormalize(pathStr: string): string {\n return path.normalize(pathStr);\n }\n\n /**\n * Gets file extension. Does \"path.extname\".\n */\n static pathExtname(pathStr: string): string {\n return path.extname(pathStr);\n }\n\n /**\n * Resolved given path. Does \"path.resolve\".\n */\n static pathResolve(pathStr: string): string {\n return path.resolve(pathStr);\n }\n\n /**\n * Synchronously checks if file exist. Does \"fs.existsSync\".\n */\n static fileExist(pathStr: string): boolean {\n return fs.existsSync(pathStr);\n }\n\n static readFileSync(filename: string): Buffer {\n return fs.readFileSync(filename);\n }\n\n static appendFileSync(filename: string, data: any): void {\n fs.appendFileSync(filename, data);\n }\n\n static async writeFile(path: string, data: any): Promise<void> {\n return new Promise<void>((ok, fail) => {\n fs.writeFile(path, data, (err) => {\n if (err) fail(err);\n ok();\n });\n });\n }\n\n /**\n * Loads a dotenv file into the environment variables.\n *\n * @param path The file to load as a dotenv configuration\n */\n static dotenv(pathStr: string): void {\n dotenv.config({ path: pathStr });\n }\n\n /**\n * Gets environment variable.\n */\n static getEnvVariable(name: string): any {\n return process.env[name];\n }\n\n /**\n * Highlights sql string to be print in the console.\n */\n static highlightSql(sql: string) {\n const theme: Theme = {\n \"keyword\": chalk.blueBright,\n \"literal\": chalk.blueBright,\n \"string\": chalk.white,\n \"type\": chalk.magentaBright,\n \"built_in\": chalk.magentaBright,\n \"comment\": chalk.gray,\n };\n return highlight(sql, { theme: theme, language: \"sql\" });\n }\n\n /**\n * Highlights json string to be print in the console.\n */\n static highlightJson(json: string) {\n return highlight(json, { language: \"json\" });\n }\n\n /**\n * Logging functions needed by AdvancedConsoleLogger\n */\n static logInfo(prefix: string, info: any) {\n console.log(chalk.gray.underline(prefix), info);\n }\n\n static logError(prefix: string, error: any) {\n console.log(chalk.underline.red(prefix), error);\n }\n\n static logWarn(prefix: string, warning: any) {\n console.log(chalk.underline.yellow(prefix), warning);\n }\n\n static log(message: string) {\n console.log(chalk.underline(message));\n }\n\n static warn(message: string) {\n return chalk.yellow(message);\n }\n}\n"],"sourceRoot":".."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/query-builder/Alias.ts"],"names":[],"mappings":";;AACA,mDAAkD;AAElD;GACG;AACH;IAiBI,eAAY,KAAa;QACrB,yBAAW,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAID,sBAAI,yBAAM;aAAV;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAChC,CAAC;;;OAAA;IAED,sBAAI,8BAAW;aAAf;YACI,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAC5B,CAAC;;;OAAA;IAED,sBAAI,2BAAQ;aAIZ;YACI,IAAI,CAAC,IAAI,CAAC,SAAS;gBACf,MAAM,IAAI,KAAK,CAAC,sDAAmD,IAAI,CAAC,IAAI,OAAG,CAAC,CAAC;YAErF,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1B,CAAC;aATD,UAAa,QAAwB;YACjC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC9B,CAAC;;;OAAA;IASL,YAAC;AAAD,CA1CA,AA0CC,IAAA;AA1CY,sBAAK","file":"Alias.js","sourcesContent":["import {EntityMetadata} from \"../metadata/EntityMetadata\";\nimport { ObjectUtils } from \"../util/ObjectUtils\";\n\n/**\n */\nexport class Alias {\n\n type: \"from\"|\"select\"|\"join\"|\"other\"; // todo: make something with \"other\"\n\n name: string;\n\n /**\n * Table on which this alias is applied.\n * Used only for aliases which select custom tables.\n */\n tablePath?: string;\n\n /**\n * If this alias is for sub query.\n */\n subQuery?: string;\n\n constructor(alias?: Alias) {\n ObjectUtils.assign(this, alias || {});\n }\n\n private _metadata?: EntityMetadata;\n\n get target(): Function|string {\n return this.metadata.target;\n }\n\n get hasMetadata(): boolean {\n return !!this._metadata;\n }\n\n set metadata(metadata: EntityMetadata) {\n this._metadata = metadata;\n }\n\n get metadata(): EntityMetadata {\n if (!this._metadata)\n throw new Error(`Cannot get entity metadata for the given alias \"${this.name}\"`);\n\n return this._metadata;\n }\n\n}"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/query-builder/Alias.ts"],"names":[],"mappings":";;AACA,mDAAgD;AAEhD;GACG;AACH;IAiBI,eAAY,KAAa;QACrB,yBAAW,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAID,sBAAI,yBAAM;aAAV;YACI,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAChC,CAAC;;;OAAA;IAED,sBAAI,8BAAW;aAAf;YACI,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAC5B,CAAC;;;OAAA;IAED,sBAAI,2BAAQ;aAIZ;YACI,IAAI,CAAC,IAAI,CAAC,SAAS;gBACf,MAAM,IAAI,KAAK,CAAC,sDAAmD,IAAI,CAAC,IAAI,OAAG,CAAC,CAAC;YAErF,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1B,CAAC;aATD,UAAa,QAAwB;YACjC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC9B,CAAC;;;OAAA;IASL,YAAC;AAAD,CA1CA,AA0CC,IAAA;AA1CY,sBAAK","file":"Alias.js","sourcesContent":["import {EntityMetadata} from \"../metadata/EntityMetadata\";\nimport {ObjectUtils} from \"../util/ObjectUtils\";\n\n/**\n */\nexport class Alias {\n\n type: \"from\"|\"select\"|\"join\"|\"other\"; // todo: make something with \"other\"\n\n name: string;\n\n /**\n * Table on which this alias is applied.\n * Used only for aliases which select custom tables.\n */\n tablePath?: string;\n\n /**\n * If this alias is for sub query.\n */\n subQuery?: string;\n\n constructor(alias?: Alias) {\n ObjectUtils.assign(this, alias || {});\n }\n\n private _metadata?: EntityMetadata;\n\n get target(): Function|string {\n return this.metadata.target;\n }\n\n get hasMetadata(): boolean {\n return !!this._metadata;\n }\n\n set metadata(metadata: EntityMetadata) {\n this._metadata = metadata;\n }\n\n get metadata(): EntityMetadata {\n if (!this._metadata)\n throw new Error(`Cannot get entity metadata for the given alias \"${this.name}\"`);\n\n return this._metadata;\n }\n\n}\n"],"sourceRoot":".."}
@@ -1,12 +1,11 @@
1
1
  import { QueryBuilder } from "./QueryBuilder";
2
2
  import { ObjectLiteral } from "../common/ObjectLiteral";
3
- import { ObjectType } from "../common/ObjectType";
3
+ import { EntityTarget } from "../common/EntityTarget";
4
4
  import { Connection } from "../connection/Connection";
5
5
  import { QueryRunner } from "../query-runner/QueryRunner";
6
6
  import { WhereExpression } from "./WhereExpression";
7
7
  import { Brackets } from "./Brackets";
8
8
  import { DeleteResult } from "./result/DeleteResult";
9
- import { EntitySchema } from "../index";
10
9
  /**
11
10
  * Allows to build complex sql queries in a fashion way and execute those queries.
12
11
  */
@@ -24,7 +23,7 @@ export declare class DeleteQueryBuilder<Entity> extends QueryBuilder<Entity> imp
24
23
  * Specifies FROM which entity's table select/update/delete will be executed.
25
24
  * Also sets a main string alias of the selection data.
26
25
  */
27
- from<T>(entityTarget: ObjectType<T> | EntitySchema<T> | string, aliasName?: string): DeleteQueryBuilder<T>;
26
+ from<T>(entityTarget: EntityTarget<T>, aliasName?: string): DeleteQueryBuilder<T>;
28
27
  /**
29
28
  * Sets WHERE condition in the query builder.
30
29
  * If you had previously WHERE expression defined,
@@ -13,6 +13,7 @@ var MysqlDriver_1 = require("../driver/mysql/MysqlDriver");
13
13
  var BroadcasterResult_1 = require("../subscriber/BroadcasterResult");
14
14
  var index_1 = require("../index");
15
15
  var AuroraDataApiDriver_1 = require("../driver/aurora-data-api/AuroraDataApiDriver");
16
+ var BetterSqlite3Driver_1 = require("../driver/better-sqlite3/BetterSqlite3Driver");
16
17
  /**
17
18
  * Allows to build complex sql queries in a fashion way and execute those queries.
18
19
  */
@@ -84,6 +85,10 @@ var DeleteQueryBuilder = /** @class */ (function (_super) {
84
85
  else if (driver instanceof OracleDriver_1.OracleDriver) {
85
86
  deleteResult.affected = result;
86
87
  }
88
+ else if (driver instanceof BetterSqlite3Driver_1.BetterSqlite3Driver) { // only works for better-sqlite3
89
+ deleteResult.raw = result;
90
+ deleteResult.affected = result.changes;
91
+ }
87
92
  else {
88
93
  deleteResult.raw = result;
89
94
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/query-builder/DeleteQueryBuilder.ts"],"names":[],"mappings":"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","file":"DeleteQueryBuilder.js","sourcesContent":["import {CockroachDriver} from \"../driver/cockroachdb/CockroachDriver\";\nimport {OracleDriver} from \"../driver/oracle/OracleDriver\";\nimport {QueryBuilder} from \"./QueryBuilder\";\nimport {ObjectLiteral} from \"../common/ObjectLiteral\";\nimport {ObjectType} from \"../common/ObjectType\";\nimport {Connection} from \"../connection/Connection\";\nimport {QueryRunner} from \"../query-runner/QueryRunner\";\nimport {SqlServerDriver} from \"../driver/sqlserver/SqlServerDriver\";\nimport {PostgresDriver} from \"../driver/postgres/PostgresDriver\";\nimport {WhereExpression} from \"./WhereExpression\";\nimport {Brackets} from \"./Brackets\";\nimport {DeleteResult} from \"./result/DeleteResult\";\nimport {ReturningStatementNotSupportedError} from \"../error/ReturningStatementNotSupportedError\";\nimport {SqljsDriver} from \"../driver/sqljs/SqljsDriver\";\nimport {MysqlDriver} from \"../driver/mysql/MysqlDriver\";\nimport {BroadcasterResult} from \"../subscriber/BroadcasterResult\";\nimport {EntitySchema} from \"../index\";\nimport {AuroraDataApiDriver} from \"../driver/aurora-data-api/AuroraDataApiDriver\";\n\n/**\n * Allows to build complex sql queries in a fashion way and execute those queries.\n */\nexport class DeleteQueryBuilder<Entity> extends QueryBuilder<Entity> implements WhereExpression {\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connectionOrQueryBuilder: Connection|QueryBuilder<any>, queryRunner?: QueryRunner) {\n super(connectionOrQueryBuilder as any, queryRunner);\n this.expressionMap.aliasNamePrefixingEnabled = false;\n }\n\n // -------------------------------------------------------------------------\n // Public Implemented Methods\n // -------------------------------------------------------------------------\n\n /**\n * Gets generated sql query without parameters being replaced.\n */\n getQuery(): string {\n let sql = this.createDeleteExpression();\n return sql.trim();\n }\n\n /**\n * Executes sql generated by query builder and returns raw database results.\n */\n async execute(): Promise<DeleteResult> {\n const [sql, parameters] = this.getQueryAndParameters();\n const queryRunner = this.obtainQueryRunner();\n let transactionStartedByUs: boolean = false;\n\n try {\n\n // start transaction if it was enabled\n if (this.expressionMap.useTransaction === true && queryRunner.isTransactionActive === false) {\n await queryRunner.startTransaction();\n transactionStartedByUs = true;\n }\n\n // call before deletion methods in listeners and subscribers\n if (this.expressionMap.callListeners === true && this.expressionMap.mainAlias!.hasMetadata) {\n const broadcastResult = new BroadcasterResult();\n queryRunner.broadcaster.broadcastBeforeRemoveEvent(broadcastResult, this.expressionMap.mainAlias!.metadata);\n if (broadcastResult.promises.length > 0) await Promise.all(broadcastResult.promises);\n }\n\n // execute query\n const deleteResult = new DeleteResult();\n const result = await queryRunner.query(sql, parameters);\n\n const driver = queryRunner.connection.driver;\n if (driver instanceof MysqlDriver || driver instanceof AuroraDataApiDriver) {\n deleteResult.raw = result;\n deleteResult.affected = result.affectedRows;\n\n } else if (driver instanceof SqlServerDriver || driver instanceof PostgresDriver || driver instanceof CockroachDriver) {\n deleteResult.raw = result[0] ? result[0] : null;\n // don't return 0 because it could confuse. null means that we did not receive this value\n deleteResult.affected = typeof result[1] === \"number\" ? result[1] : null;\n\n } else if (driver instanceof OracleDriver) {\n deleteResult.affected = result;\n\n } else {\n deleteResult.raw = result;\n }\n\n // call after deletion methods in listeners and subscribers\n if (this.expressionMap.callListeners === true && this.expressionMap.mainAlias!.hasMetadata) {\n const broadcastResult = new BroadcasterResult();\n queryRunner.broadcaster.broadcastAfterRemoveEvent(broadcastResult, this.expressionMap.mainAlias!.metadata);\n if (broadcastResult.promises.length > 0) await Promise.all(broadcastResult.promises);\n }\n\n // close transaction if we started it\n if (transactionStartedByUs)\n await queryRunner.commitTransaction();\n\n return deleteResult;\n\n } catch (error) {\n\n // rollback transaction if we started it\n if (transactionStartedByUs) {\n try {\n await queryRunner.rollbackTransaction();\n } catch (rollbackError) { }\n }\n throw error;\n\n } finally {\n if (queryRunner !== this.queryRunner) { // means we created our own query runner\n await queryRunner.release();\n }\n if (this.connection.driver instanceof SqljsDriver && !queryRunner.isTransactionActive) {\n await this.connection.driver.autoSave();\n }\n }\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Specifies FROM which entity's table select/update/delete will be executed.\n * Also sets a main string alias of the selection data.\n */\n from<T>(entityTarget: ObjectType<T>|EntitySchema<T>|string, aliasName?: string): DeleteQueryBuilder<T> {\n entityTarget = entityTarget instanceof EntitySchema ? entityTarget.options.name : entityTarget;\n const mainAlias = this.createFromAlias(entityTarget, aliasName);\n this.expressionMap.setMainAlias(mainAlias);\n return (this as any) as DeleteQueryBuilder<T>;\n }\n\n /**\n * Sets WHERE condition in the query builder.\n * If you had previously WHERE expression defined,\n * calling this function will override previously set WHERE conditions.\n * Additionally you can add parameters used in where expression.\n */\n where(where: Brackets|string|((qb: this) => string)|ObjectLiteral|ObjectLiteral[], parameters?: ObjectLiteral): this {\n this.expressionMap.wheres = []; // don't move this block below since computeWhereParameter can add where expressions\n const condition = this.computeWhereParameter(where);\n if (condition)\n this.expressionMap.wheres = [{ type: \"simple\", condition: condition }];\n if (parameters)\n this.setParameters(parameters);\n return this;\n }\n\n /**\n * Adds new AND WHERE condition in the query builder.\n * Additionally you can add parameters used in where expression.\n */\n andWhere(where: Brackets|string|((qb: this) => string), parameters?: ObjectLiteral): this {\n this.expressionMap.wheres.push({ type: \"and\", condition: this.computeWhereParameter(where) });\n if (parameters) this.setParameters(parameters);\n return this;\n }\n\n /**\n * Adds new OR WHERE condition in the query builder.\n * Additionally you can add parameters used in where expression.\n */\n orWhere(where: Brackets|string|((qb: this) => string), parameters?: ObjectLiteral): this {\n this.expressionMap.wheres.push({ type: \"or\", condition: this.computeWhereParameter(where) });\n if (parameters) this.setParameters(parameters);\n return this;\n }\n\n /**\n * Adds new AND WHERE with conditions for the given ids.\n */\n whereInIds(ids: any|any[]): this {\n return this.where(this.createWhereIdsExpression(ids));\n }\n\n /**\n * Adds new AND WHERE with conditions for the given ids.\n */\n andWhereInIds(ids: any|any[]): this {\n return this.andWhere(this.createWhereIdsExpression(ids));\n }\n\n /**\n * Adds new OR WHERE with conditions for the given ids.\n */\n orWhereInIds(ids: any|any[]): this {\n return this.orWhere(this.createWhereIdsExpression(ids));\n }\n /**\n * Optional returning/output clause.\n * This will return given column values.\n */\n output(columns: string[]): this;\n\n /**\n * Optional returning/output clause.\n * Returning is a SQL string containing returning statement.\n */\n output(output: string): this;\n\n /**\n * Optional returning/output clause.\n */\n output(output: string|string[]): this;\n\n /**\n * Optional returning/output clause.\n */\n output(output: string|string[]): this {\n return this.returning(output);\n }\n\n /**\n * Optional returning/output clause.\n * This will return given column values.\n */\n returning(columns: string[]): this;\n\n /**\n * Optional returning/output clause.\n * Returning is a SQL string containing returning statement.\n */\n returning(returning: string): this;\n\n /**\n * Optional returning/output clause.\n */\n returning(returning: string|string[]): this;\n\n /**\n * Optional returning/output clause.\n */\n returning(returning: string|string[]): this {\n\n // not all databases support returning/output cause\n if (!this.connection.driver.isReturningSqlSupported())\n throw new ReturningStatementNotSupportedError();\n\n this.expressionMap.returning = returning;\n return this;\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates DELETE express used to perform query.\n */\n protected createDeleteExpression() {\n const tableName = this.getTableName(this.getMainTableName());\n const whereExpression = this.createWhereExpression();\n const returningExpression = this.createReturningExpression();\n\n if (returningExpression && (this.connection.driver instanceof PostgresDriver || this.connection.driver instanceof CockroachDriver)) {\n return `DELETE FROM ${tableName}${whereExpression} RETURNING ${returningExpression}`;\n\n } else if (returningExpression !== \"\" && this.connection.driver instanceof SqlServerDriver) {\n return `DELETE FROM ${tableName} OUTPUT ${returningExpression}${whereExpression}`;\n\n } else {\n return `DELETE FROM ${tableName}${whereExpression}`;\n }\n }\n\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/query-builder/DeleteQueryBuilder.ts"],"names":[],"mappings":"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","file":"DeleteQueryBuilder.js","sourcesContent":["import {CockroachDriver} from \"../driver/cockroachdb/CockroachDriver\";\nimport {OracleDriver} from \"../driver/oracle/OracleDriver\";\nimport {QueryBuilder} from \"./QueryBuilder\";\nimport {ObjectLiteral} from \"../common/ObjectLiteral\";\nimport {EntityTarget} from \"../common/EntityTarget\";\nimport {Connection} from \"../connection/Connection\";\nimport {QueryRunner} from \"../query-runner/QueryRunner\";\nimport {SqlServerDriver} from \"../driver/sqlserver/SqlServerDriver\";\nimport {PostgresDriver} from \"../driver/postgres/PostgresDriver\";\nimport {WhereExpression} from \"./WhereExpression\";\nimport {Brackets} from \"./Brackets\";\nimport {DeleteResult} from \"./result/DeleteResult\";\nimport {ReturningStatementNotSupportedError} from \"../error/ReturningStatementNotSupportedError\";\nimport {SqljsDriver} from \"../driver/sqljs/SqljsDriver\";\nimport {MysqlDriver} from \"../driver/mysql/MysqlDriver\";\nimport {BroadcasterResult} from \"../subscriber/BroadcasterResult\";\nimport {EntitySchema} from \"../index\";\nimport {AuroraDataApiDriver} from \"../driver/aurora-data-api/AuroraDataApiDriver\";\nimport {BetterSqlite3Driver} from \"../driver/better-sqlite3/BetterSqlite3Driver\";\n\n/**\n * Allows to build complex sql queries in a fashion way and execute those queries.\n */\nexport class DeleteQueryBuilder<Entity> extends QueryBuilder<Entity> implements WhereExpression {\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connectionOrQueryBuilder: Connection|QueryBuilder<any>, queryRunner?: QueryRunner) {\n super(connectionOrQueryBuilder as any, queryRunner);\n this.expressionMap.aliasNamePrefixingEnabled = false;\n }\n\n // -------------------------------------------------------------------------\n // Public Implemented Methods\n // -------------------------------------------------------------------------\n\n /**\n * Gets generated sql query without parameters being replaced.\n */\n getQuery(): string {\n let sql = this.createDeleteExpression();\n return sql.trim();\n }\n\n /**\n * Executes sql generated by query builder and returns raw database results.\n */\n async execute(): Promise<DeleteResult> {\n const [sql, parameters] = this.getQueryAndParameters();\n const queryRunner = this.obtainQueryRunner();\n let transactionStartedByUs: boolean = false;\n\n try {\n\n // start transaction if it was enabled\n if (this.expressionMap.useTransaction === true && queryRunner.isTransactionActive === false) {\n await queryRunner.startTransaction();\n transactionStartedByUs = true;\n }\n\n // call before deletion methods in listeners and subscribers\n if (this.expressionMap.callListeners === true && this.expressionMap.mainAlias!.hasMetadata) {\n const broadcastResult = new BroadcasterResult();\n queryRunner.broadcaster.broadcastBeforeRemoveEvent(broadcastResult, this.expressionMap.mainAlias!.metadata);\n if (broadcastResult.promises.length > 0) await Promise.all(broadcastResult.promises);\n }\n\n // execute query\n const deleteResult = new DeleteResult();\n const result = await queryRunner.query(sql, parameters);\n\n const driver = queryRunner.connection.driver;\n if (driver instanceof MysqlDriver || driver instanceof AuroraDataApiDriver) {\n deleteResult.raw = result;\n deleteResult.affected = result.affectedRows;\n\n } else if (driver instanceof SqlServerDriver || driver instanceof PostgresDriver || driver instanceof CockroachDriver) {\n deleteResult.raw = result[0] ? result[0] : null;\n // don't return 0 because it could confuse. null means that we did not receive this value\n deleteResult.affected = typeof result[1] === \"number\" ? result[1] : null;\n\n } else if (driver instanceof OracleDriver) {\n deleteResult.affected = result;\n\n } else if (driver instanceof BetterSqlite3Driver) { // only works for better-sqlite3\n deleteResult.raw = result;\n deleteResult.affected = result.changes;\n\n } else {\n deleteResult.raw = result;\n }\n\n // call after deletion methods in listeners and subscribers\n if (this.expressionMap.callListeners === true && this.expressionMap.mainAlias!.hasMetadata) {\n const broadcastResult = new BroadcasterResult();\n queryRunner.broadcaster.broadcastAfterRemoveEvent(broadcastResult, this.expressionMap.mainAlias!.metadata);\n if (broadcastResult.promises.length > 0) await Promise.all(broadcastResult.promises);\n }\n\n // close transaction if we started it\n if (transactionStartedByUs)\n await queryRunner.commitTransaction();\n\n return deleteResult;\n\n } catch (error) {\n\n // rollback transaction if we started it\n if (transactionStartedByUs) {\n try {\n await queryRunner.rollbackTransaction();\n } catch (rollbackError) { }\n }\n throw error;\n\n } finally {\n if (queryRunner !== this.queryRunner) { // means we created our own query runner\n await queryRunner.release();\n }\n if (this.connection.driver instanceof SqljsDriver && !queryRunner.isTransactionActive) {\n await this.connection.driver.autoSave();\n }\n }\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Specifies FROM which entity's table select/update/delete will be executed.\n * Also sets a main string alias of the selection data.\n */\n from<T>(entityTarget: EntityTarget<T>, aliasName?: string): DeleteQueryBuilder<T> {\n entityTarget = entityTarget instanceof EntitySchema ? entityTarget.options.name : entityTarget;\n const mainAlias = this.createFromAlias(entityTarget, aliasName);\n this.expressionMap.setMainAlias(mainAlias);\n return (this as any) as DeleteQueryBuilder<T>;\n }\n\n /**\n * Sets WHERE condition in the query builder.\n * If you had previously WHERE expression defined,\n * calling this function will override previously set WHERE conditions.\n * Additionally you can add parameters used in where expression.\n */\n where(where: Brackets|string|((qb: this) => string)|ObjectLiteral|ObjectLiteral[], parameters?: ObjectLiteral): this {\n this.expressionMap.wheres = []; // don't move this block below since computeWhereParameter can add where expressions\n const condition = this.computeWhereParameter(where);\n if (condition)\n this.expressionMap.wheres = [{ type: \"simple\", condition: condition }];\n if (parameters)\n this.setParameters(parameters);\n return this;\n }\n\n /**\n * Adds new AND WHERE condition in the query builder.\n * Additionally you can add parameters used in where expression.\n */\n andWhere(where: Brackets|string|((qb: this) => string), parameters?: ObjectLiteral): this {\n this.expressionMap.wheres.push({ type: \"and\", condition: this.computeWhereParameter(where) });\n if (parameters) this.setParameters(parameters);\n return this;\n }\n\n /**\n * Adds new OR WHERE condition in the query builder.\n * Additionally you can add parameters used in where expression.\n */\n orWhere(where: Brackets|string|((qb: this) => string), parameters?: ObjectLiteral): this {\n this.expressionMap.wheres.push({ type: \"or\", condition: this.computeWhereParameter(where) });\n if (parameters) this.setParameters(parameters);\n return this;\n }\n\n /**\n * Adds new AND WHERE with conditions for the given ids.\n */\n whereInIds(ids: any|any[]): this {\n return this.where(this.createWhereIdsExpression(ids));\n }\n\n /**\n * Adds new AND WHERE with conditions for the given ids.\n */\n andWhereInIds(ids: any|any[]): this {\n return this.andWhere(this.createWhereIdsExpression(ids));\n }\n\n /**\n * Adds new OR WHERE with conditions for the given ids.\n */\n orWhereInIds(ids: any|any[]): this {\n return this.orWhere(this.createWhereIdsExpression(ids));\n }\n /**\n * Optional returning/output clause.\n * This will return given column values.\n */\n output(columns: string[]): this;\n\n /**\n * Optional returning/output clause.\n * Returning is a SQL string containing returning statement.\n */\n output(output: string): this;\n\n /**\n * Optional returning/output clause.\n */\n output(output: string|string[]): this;\n\n /**\n * Optional returning/output clause.\n */\n output(output: string|string[]): this {\n return this.returning(output);\n }\n\n /**\n * Optional returning/output clause.\n * This will return given column values.\n */\n returning(columns: string[]): this;\n\n /**\n * Optional returning/output clause.\n * Returning is a SQL string containing returning statement.\n */\n returning(returning: string): this;\n\n /**\n * Optional returning/output clause.\n */\n returning(returning: string|string[]): this;\n\n /**\n * Optional returning/output clause.\n */\n returning(returning: string|string[]): this {\n\n // not all databases support returning/output cause\n if (!this.connection.driver.isReturningSqlSupported())\n throw new ReturningStatementNotSupportedError();\n\n this.expressionMap.returning = returning;\n return this;\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates DELETE express used to perform query.\n */\n protected createDeleteExpression() {\n const tableName = this.getTableName(this.getMainTableName());\n const whereExpression = this.createWhereExpression();\n const returningExpression = this.createReturningExpression();\n\n if (returningExpression && (this.connection.driver instanceof PostgresDriver || this.connection.driver instanceof CockroachDriver)) {\n return `DELETE FROM ${tableName}${whereExpression} RETURNING ${returningExpression}`;\n\n } else if (returningExpression !== \"\" && this.connection.driver instanceof SqlServerDriver) {\n return `DELETE FROM ${tableName} OUTPUT ${returningExpression}${whereExpression}`;\n\n } else {\n return `DELETE FROM ${tableName}${whereExpression}`;\n }\n }\n\n}\n"],"sourceRoot":".."}
@@ -1,10 +1,9 @@
1
1
  import { QueryBuilder } from "./QueryBuilder";
2
2
  import { ObjectLiteral } from "../common/ObjectLiteral";
3
- import { ObjectType } from "../common/ObjectType";
3
+ import { EntityTarget } from "../common/EntityTarget";
4
4
  import { QueryDeepPartialEntity } from "./QueryPartialEntity";
5
5
  import { InsertResult } from "./result/InsertResult";
6
6
  import { ColumnMetadata } from "../metadata/ColumnMetadata";
7
- import { EntitySchema } from "../entity-schema/EntitySchema";
8
7
  /**
9
8
  * Allows to build complex sql queries in a fashion way and execute those queries.
10
9
  */
@@ -20,7 +19,7 @@ export declare class InsertQueryBuilder<Entity> extends QueryBuilder<Entity> {
20
19
  /**
21
20
  * Specifies INTO which entity's table insertion will be executed.
22
21
  */
23
- into<T>(entityTarget: ObjectType<T> | EntitySchema<T> | string, columns?: string[]): InsertQueryBuilder<T>;
22
+ into<T>(entityTarget: EntityTarget<T>, columns?: string[]): InsertQueryBuilder<T>;
24
23
  /**
25
24
  * Values needs to be inserted into table.
26
25
  */
@@ -41,11 +41,22 @@ var InsertQueryBuilder = /** @class */ (function (_super) {
41
41
  */
42
42
  InsertQueryBuilder.prototype.execute = function () {
43
43
  return tslib_1.__awaiter(this, void 0, void 0, function () {
44
- var queryRunner, transactionStartedByUs, valueSets, broadcastResult_1, declareSql, selectOutputSql, returningResultsEntityUpdator, _a, insertSql, parameters, insertResult, statements, _b, broadcastResult_2, error_1, rollbackError_1;
44
+ var valueSets, queryRunner, transactionStartedByUs, broadcastResult_1, declareSql, selectOutputSql, returningResultsEntityUpdator, _a, insertSql, parameters, insertResult, statements, _b, broadcastResult_2, error_1, rollbackError_1;
45
45
  var _this = this;
46
46
  return tslib_1.__generator(this, function (_c) {
47
47
  switch (_c.label) {
48
48
  case 0:
49
+ valueSets = this.getValueSets();
50
+ // console.timeEnd(".value sets");
51
+ // If user passed empty array of entities then we don't need to do
52
+ // anything.
53
+ //
54
+ // Fixes GitHub issues #3111 and #5734. If we were to let this through
55
+ // we would run into problems downstream, like subscribers getting
56
+ // invoked with the empty array where they expect an entity, and SQL
57
+ // queries with an empty VALUES clause.
58
+ if (valueSets.length === 0)
59
+ return [2 /*return*/, new InsertResult_1.InsertResult()];
49
60
  queryRunner = this.obtainQueryRunner();
50
61
  transactionStartedByUs = false;
51
62
  _c.label = 1;
@@ -58,7 +69,6 @@ var InsertQueryBuilder = /** @class */ (function (_super) {
58
69
  transactionStartedByUs = true;
59
70
  _c.label = 3;
60
71
  case 3:
61
- valueSets = this.getValueSets();
62
72
  if (!(this.expressionMap.callListeners === true && this.expressionMap.mainAlias.hasMetadata)) return [3 /*break*/, 5];
63
73
  broadcastResult_1 = new BroadcasterResult_1.BroadcasterResult();
64
74
  valueSets.forEach(function (valueSet) {
@@ -363,7 +373,8 @@ var InsertQueryBuilder = /** @class */ (function (_super) {
363
373
  value = _this.connection.driver.preparePersistentValue(value, column);
364
374
  }
365
375
  // newly inserted entities always have a version equal to 1 (first version)
366
- if (column.isVersion) {
376
+ // also, user-specified version must be empty
377
+ if (column.isVersion && value === undefined) {
367
378
  expression_1 += "1";
368
379
  // } else if (column.isNestedSetLeft) {
369
380
  // const tableName = this.connection.driver.escape(column.entityMetadata.tablePath);
@@ -440,6 +451,9 @@ var InsertQueryBuilder = /** @class */ (function (_super) {
440
451
  expression_1 += "ST_GeomFromGeoJSON(" + _this.connection.driver.createParameter(paramName, parametersCount_1) + ")::" + column.type;
441
452
  }
442
453
  }
454
+ else if (_this.connection.driver instanceof SqlServerDriver_1.SqlServerDriver && _this.connection.driver.spatialTypes.indexOf(column.type) !== -1) {
455
+ expression_1 += column.type + "::STGeomFromText(" + _this.connection.driver.createParameter(paramName, parametersCount_1) + ", " + (column.srid || "0") + ")";
456
+ }
443
457
  else {
444
458
  expression_1 += _this.connection.driver.createParameter(paramName, parametersCount_1);
445
459
  }
@@ -515,7 +529,7 @@ var InsertQueryBuilder = /** @class */ (function (_super) {
515
529
  * Gets array of values need to be inserted into the target table.
516
530
  */
517
531
  InsertQueryBuilder.prototype.getValueSets = function () {
518
- if (Array.isArray(this.expressionMap.valuesSet) && this.expressionMap.valuesSet.length > 0)
532
+ if (Array.isArray(this.expressionMap.valuesSet))
519
533
  return this.expressionMap.valuesSet;
520
534
  if (this.expressionMap.valuesSet instanceof Object)
521
535
  return [this.expressionMap.valuesSet];