typeorm 0.2.38 → 0.2.39-dev.2c861af

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 (677) hide show
  1. package/README.md +60 -59
  2. package/browser/connection/ConnectionMetadataBuilder.js +4 -4
  3. package/browser/connection/ConnectionMetadataBuilder.js.map +1 -1
  4. package/browser/connection/ConnectionOptionsReader.js +2 -1
  5. package/browser/connection/ConnectionOptionsReader.js.map +1 -1
  6. package/browser/connection/options-reader/ConnectionOptionsYmlReader.js +1 -1
  7. package/browser/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
  8. package/browser/decorator/entity-view/ViewEntity.js +1 -0
  9. package/browser/decorator/entity-view/ViewEntity.js.map +1 -1
  10. package/browser/decorator/options/ViewEntityOptions.d.ts +5 -0
  11. package/browser/decorator/options/ViewEntityOptions.js.map +1 -1
  12. package/browser/decorator/transaction/Transaction.js +3 -3
  13. package/browser/decorator/transaction/Transaction.js.map +1 -1
  14. package/browser/driver/DriverUtils.js +1 -1
  15. package/browser/driver/DriverUtils.js.map +1 -1
  16. package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.d.ts +5 -0
  17. package/browser/driver/aurora-data-api/AuroraDataApiConnectionOptions.js.map +1 -1
  18. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js +6 -5
  19. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  20. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +19 -48
  21. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  22. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.d.ts +5 -0
  23. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js.map +1 -1
  24. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +2 -1
  25. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -1
  26. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +17 -46
  27. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  28. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +5 -0
  29. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -1
  30. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +4 -3
  31. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  32. package/browser/driver/cockroachdb/CockroachConnectionOptions.d.ts +10 -0
  33. package/browser/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
  34. package/browser/driver/cockroachdb/CockroachDriver.js +5 -4
  35. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  36. package/browser/driver/cockroachdb/CockroachQueryRunner.js +46 -77
  37. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  38. package/browser/driver/cordova/CordovaConnectionOptions.d.ts +5 -0
  39. package/browser/driver/cordova/CordovaConnectionOptions.js.map +1 -1
  40. package/browser/driver/cordova/CordovaDriver.js +2 -1
  41. package/browser/driver/cordova/CordovaDriver.js.map +1 -1
  42. package/browser/driver/expo/ExpoQueryRunner.js +12 -43
  43. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  44. package/browser/driver/mongodb/MongoConnectionOptions.d.ts +5 -0
  45. package/browser/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  46. package/browser/driver/mongodb/MongoDriver.js +2 -1
  47. package/browser/driver/mongodb/MongoDriver.js.map +1 -1
  48. package/browser/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
  49. package/browser/driver/mysql/MysqlConnectionOptions.js.map +1 -1
  50. package/browser/driver/mysql/MysqlDriver.js +4 -2
  51. package/browser/driver/mysql/MysqlDriver.js.map +1 -1
  52. package/browser/driver/mysql/MysqlQueryRunner.js +24 -54
  53. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  54. package/browser/driver/nativescript/NativescriptQueryRunner.js +45 -37
  55. package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  56. package/browser/driver/oracle/OracleConnectionOptions.d.ts +5 -0
  57. package/browser/driver/oracle/OracleConnectionOptions.js.map +1 -1
  58. package/browser/driver/oracle/OracleDriver.js +5 -4
  59. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  60. package/browser/driver/oracle/OracleQueryRunner.js +20 -48
  61. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  62. package/browser/driver/postgres/PostgresConnectionOptions.d.ts +10 -0
  63. package/browser/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  64. package/browser/driver/postgres/PostgresDriver.js +6 -5
  65. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  66. package/browser/driver/postgres/PostgresQueryRunner.js +21 -51
  67. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  68. package/browser/driver/react-native/ReactNativeConnectionOptions.d.ts +5 -0
  69. package/browser/driver/react-native/ReactNativeConnectionOptions.js.map +1 -1
  70. package/browser/driver/react-native/ReactNativeDriver.js +2 -1
  71. package/browser/driver/react-native/ReactNativeDriver.js.map +1 -1
  72. package/browser/driver/sap/SapConnectionOptions.d.ts +16 -6
  73. package/browser/driver/sap/SapConnectionOptions.js.map +1 -1
  74. package/browser/driver/sap/SapDriver.js +6 -3
  75. package/browser/driver/sap/SapDriver.js.map +1 -1
  76. package/browser/driver/sap/SapQueryRunner.js +20 -50
  77. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  78. package/browser/driver/sqlite/SqliteConnectionOptions.d.ts +5 -0
  79. package/browser/driver/sqlite/SqliteConnectionOptions.js.map +1 -1
  80. package/browser/driver/sqlite/SqliteDriver.js +4 -3
  81. package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
  82. package/browser/driver/sqlite/SqliteQueryRunner.js +16 -8
  83. package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  84. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +19 -49
  85. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  86. package/browser/driver/sqljs/SqljsConnectionOptions.d.ts +5 -0
  87. package/browser/driver/sqljs/SqljsConnectionOptions.js.map +1 -1
  88. package/browser/driver/sqljs/SqljsDriver.js +4 -2
  89. package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
  90. package/browser/driver/sqlserver/SqlServerConnectionOptions.d.ts +5 -0
  91. package/browser/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
  92. package/browser/driver/sqlserver/SqlServerDriver.js +7 -6
  93. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  94. package/browser/driver/sqlserver/SqlServerQueryRunner.js +84 -116
  95. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  96. package/browser/entity-manager/MongoEntityManager.js +8 -13
  97. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  98. package/browser/find-options/FindOptionsUtils.js +1 -1
  99. package/browser/find-options/FindOptionsUtils.js.map +1 -1
  100. package/browser/metadata/ColumnMetadata.js +4 -4
  101. package/browser/metadata/ColumnMetadata.js.map +1 -1
  102. package/browser/metadata/EmbeddedMetadata.js +1 -1
  103. package/browser/metadata/EmbeddedMetadata.js.map +1 -1
  104. package/browser/metadata/EntityMetadata.d.ts +5 -0
  105. package/browser/metadata/EntityMetadata.js +2 -1
  106. package/browser/metadata/EntityMetadata.js.map +1 -1
  107. package/browser/metadata/RelationMetadata.js +4 -4
  108. package/browser/metadata/RelationMetadata.js.map +1 -1
  109. package/browser/metadata-args/TableMetadataArgs.d.ts +4 -0
  110. package/browser/metadata-args/TableMetadataArgs.js.map +1 -1
  111. package/browser/metadata-builder/EntityMetadataBuilder.js +5 -5
  112. package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  113. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +1 -1
  114. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  115. package/browser/naming-strategy/DefaultNamingStrategy.js +5 -5
  116. package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  117. package/browser/persistence/Subject.js +1 -1
  118. package/browser/persistence/Subject.js.map +1 -1
  119. package/browser/persistence/SubjectDatabaseEntityLoader.js +1 -1
  120. package/browser/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  121. package/browser/persistence/SubjectExecutor.js +1 -1
  122. package/browser/persistence/SubjectExecutor.js.map +1 -1
  123. package/browser/persistence/SubjectTopoligicalSorter.js +5 -5
  124. package/browser/persistence/SubjectTopoligicalSorter.js.map +1 -1
  125. package/browser/persistence/tree/ClosureSubjectExecutor.js +4 -4
  126. package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  127. package/browser/query-builder/DeleteQueryBuilder.js +3 -10
  128. package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
  129. package/browser/query-builder/InsertQueryBuilder.js +4 -6
  130. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  131. package/browser/query-builder/QueryBuilder.js +9 -9
  132. package/browser/query-builder/QueryBuilder.js.map +1 -1
  133. package/browser/query-builder/RelationLoader.js +2 -2
  134. package/browser/query-builder/RelationLoader.js.map +1 -1
  135. package/browser/query-builder/RelationRemover.js +6 -6
  136. package/browser/query-builder/RelationRemover.js.map +1 -1
  137. package/browser/query-builder/SelectQueryBuilder.js +14 -14
  138. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  139. package/browser/query-builder/SoftDeleteQueryBuilder.js +3 -10
  140. package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  141. package/browser/query-builder/UpdateQueryBuilder.js +5 -12
  142. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  143. package/browser/query-builder/relation-id/RelationIdLoader.js +1 -1
  144. package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  145. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +2 -2
  146. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  147. package/browser/query-runner/BaseQueryRunner.js +2 -2
  148. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  149. package/browser/query-runner/QueryLock.js +1 -1
  150. package/browser/query-runner/QueryLock.js.map +1 -1
  151. package/browser/repository/BaseEntity.js +1 -1
  152. package/browser/repository/BaseEntity.js.map +1 -1
  153. package/browser/repository/Repository.js +1 -1
  154. package/browser/repository/Repository.js.map +1 -1
  155. package/browser/repository/TreeRepository.js +2 -2
  156. package/browser/repository/TreeRepository.js.map +1 -1
  157. package/browser/schema-builder/RdbmsSchemaBuilder.js +223 -148
  158. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  159. package/browser/schema-builder/table/TableCheck.js +1 -1
  160. package/browser/schema-builder/table/TableCheck.js.map +1 -1
  161. package/browser/schema-builder/table/TableForeignKey.js +2 -2
  162. package/browser/schema-builder/table/TableForeignKey.js.map +1 -1
  163. package/browser/schema-builder/table/TableIndex.js +1 -1
  164. package/browser/schema-builder/table/TableIndex.js.map +1 -1
  165. package/browser/schema-builder/table/TableUnique.js +1 -1
  166. package/browser/schema-builder/table/TableUnique.js.map +1 -1
  167. package/browser/schema-builder/util/ViewUtils.d.ts +7 -0
  168. package/browser/schema-builder/util/ViewUtils.js +25 -0
  169. package/browser/schema-builder/util/ViewUtils.js.map +1 -0
  170. package/browser/subscriber/Broadcaster.d.ts +23 -2
  171. package/browser/subscriber/Broadcaster.js +35 -2
  172. package/browser/subscriber/Broadcaster.js.map +1 -1
  173. package/browser/subscriber/BroadcasterResult.d.ts +4 -0
  174. package/browser/subscriber/BroadcasterResult.js +19 -0
  175. package/browser/subscriber/BroadcasterResult.js.map +1 -1
  176. package/cache/DbQueryResultCache.js +12 -12
  177. package/cache/RedisQueryResultCache.js +12 -12
  178. package/cli.js +1 -6
  179. package/cli.js.map +1 -1
  180. package/commands/CacheClearCommand.js +4 -4
  181. package/commands/CacheClearCommand.js.map +1 -1
  182. package/commands/CommandUtils.js +10 -10
  183. package/commands/CommandUtils.js.map +1 -1
  184. package/commands/EntityCreateCommand.js +3 -3
  185. package/commands/EntityCreateCommand.js.map +1 -1
  186. package/commands/InitCommand.js +5 -5
  187. package/commands/InitCommand.js.map +1 -1
  188. package/commands/MigrationCreateCommand.js +5 -5
  189. package/commands/MigrationCreateCommand.js.map +1 -1
  190. package/commands/MigrationGenerateCommand.js +7 -7
  191. package/commands/MigrationGenerateCommand.js.map +1 -1
  192. package/commands/MigrationRevertCommand.js +4 -4
  193. package/commands/MigrationRevertCommand.js.map +1 -1
  194. package/commands/MigrationRunCommand.js +5 -5
  195. package/commands/MigrationRunCommand.js.map +1 -1
  196. package/commands/MigrationShowCommand.js +5 -5
  197. package/commands/MigrationShowCommand.js.map +1 -1
  198. package/commands/QueryCommand.js +4 -4
  199. package/commands/QueryCommand.js.map +1 -1
  200. package/commands/SchemaDropCommand.js +4 -4
  201. package/commands/SchemaDropCommand.js.map +1 -1
  202. package/commands/SchemaLogCommand.js +5 -5
  203. package/commands/SchemaLogCommand.js.map +1 -1
  204. package/commands/SchemaSyncCommand.js +4 -4
  205. package/commands/SchemaSyncCommand.js.map +1 -1
  206. package/commands/SubscriberCreateCommand.js +3 -3
  207. package/commands/SubscriberCreateCommand.js.map +1 -1
  208. package/commands/VersionCommand.js +3 -3
  209. package/commands/VersionCommand.js.map +1 -1
  210. package/connection/Connection.js +19 -19
  211. package/connection/Connection.js.map +1 -1
  212. package/connection/ConnectionMetadataBuilder.js +11 -11
  213. package/connection/ConnectionMetadataBuilder.js.map +1 -1
  214. package/connection/ConnectionOptionsReader.js +11 -10
  215. package/connection/ConnectionOptionsReader.js.map +1 -1
  216. package/connection/options-reader/ConnectionOptionsEnvReader.js +2 -2
  217. package/connection/options-reader/ConnectionOptionsXmlReader.js +3 -3
  218. package/connection/options-reader/ConnectionOptionsXmlReader.js.map +1 -1
  219. package/connection/options-reader/ConnectionOptionsYmlReader.js +4 -4
  220. package/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
  221. package/decorator/Check.js +1 -1
  222. package/decorator/Check.js.map +1 -1
  223. package/decorator/EntityRepository.js +1 -1
  224. package/decorator/EntityRepository.js.map +1 -1
  225. package/decorator/Exclusion.js +1 -1
  226. package/decorator/Exclusion.js.map +1 -1
  227. package/decorator/Generated.js +1 -1
  228. package/decorator/Generated.js.map +1 -1
  229. package/decorator/Index.js +1 -1
  230. package/decorator/Index.js.map +1 -1
  231. package/decorator/Unique.js +1 -1
  232. package/decorator/Unique.js.map +1 -1
  233. package/decorator/columns/Column.js +4 -4
  234. package/decorator/columns/Column.js.map +1 -1
  235. package/decorator/columns/CreateDateColumn.js +1 -1
  236. package/decorator/columns/CreateDateColumn.js.map +1 -1
  237. package/decorator/columns/DeleteDateColumn.js +1 -1
  238. package/decorator/columns/DeleteDateColumn.js.map +1 -1
  239. package/decorator/columns/ObjectIdColumn.js +1 -1
  240. package/decorator/columns/ObjectIdColumn.js.map +1 -1
  241. package/decorator/columns/PrimaryColumn.js +2 -2
  242. package/decorator/columns/PrimaryColumn.js.map +1 -1
  243. package/decorator/columns/PrimaryGeneratedColumn.js +2 -2
  244. package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  245. package/decorator/columns/UpdateDateColumn.js +1 -1
  246. package/decorator/columns/UpdateDateColumn.js.map +1 -1
  247. package/decorator/columns/VersionColumn.js +1 -1
  248. package/decorator/columns/VersionColumn.js.map +1 -1
  249. package/decorator/columns/ViewColumn.js +1 -1
  250. package/decorator/columns/ViewColumn.js.map +1 -1
  251. package/decorator/entity/ChildEntity.js +2 -2
  252. package/decorator/entity/ChildEntity.js.map +1 -1
  253. package/decorator/entity/Entity.js +1 -1
  254. package/decorator/entity/Entity.js.map +1 -1
  255. package/decorator/entity/TableInheritance.js +1 -1
  256. package/decorator/entity/TableInheritance.js.map +1 -1
  257. package/decorator/entity-view/ViewEntity.js +2 -1
  258. package/decorator/entity-view/ViewEntity.js.map +1 -1
  259. package/decorator/listeners/AfterInsert.js +1 -1
  260. package/decorator/listeners/AfterInsert.js.map +1 -1
  261. package/decorator/listeners/AfterLoad.js +1 -1
  262. package/decorator/listeners/AfterLoad.js.map +1 -1
  263. package/decorator/listeners/AfterRemove.js +1 -1
  264. package/decorator/listeners/AfterRemove.js.map +1 -1
  265. package/decorator/listeners/AfterUpdate.js +1 -1
  266. package/decorator/listeners/AfterUpdate.js.map +1 -1
  267. package/decorator/listeners/BeforeInsert.js +1 -1
  268. package/decorator/listeners/BeforeInsert.js.map +1 -1
  269. package/decorator/listeners/BeforeRemove.js +1 -1
  270. package/decorator/listeners/BeforeRemove.js.map +1 -1
  271. package/decorator/listeners/BeforeUpdate.js +1 -1
  272. package/decorator/listeners/BeforeUpdate.js.map +1 -1
  273. package/decorator/listeners/EventSubscriber.js +1 -1
  274. package/decorator/listeners/EventSubscriber.js.map +1 -1
  275. package/decorator/options/ViewEntityOptions.d.ts +5 -0
  276. package/decorator/options/ViewEntityOptions.js.map +1 -1
  277. package/decorator/relations/JoinColumn.js +1 -1
  278. package/decorator/relations/JoinColumn.js.map +1 -1
  279. package/decorator/relations/JoinTable.js +1 -1
  280. package/decorator/relations/JoinTable.js.map +1 -1
  281. package/decorator/relations/ManyToMany.js +1 -1
  282. package/decorator/relations/ManyToMany.js.map +1 -1
  283. package/decorator/relations/ManyToOne.js +1 -1
  284. package/decorator/relations/ManyToOne.js.map +1 -1
  285. package/decorator/relations/OneToMany.js +1 -1
  286. package/decorator/relations/OneToMany.js.map +1 -1
  287. package/decorator/relations/OneToOne.js +1 -1
  288. package/decorator/relations/OneToOne.js.map +1 -1
  289. package/decorator/relations/RelationCount.js +1 -1
  290. package/decorator/relations/RelationCount.js.map +1 -1
  291. package/decorator/relations/RelationId.js +1 -1
  292. package/decorator/relations/RelationId.js.map +1 -1
  293. package/decorator/transaction/Transaction.js +7 -7
  294. package/decorator/transaction/Transaction.js.map +1 -1
  295. package/decorator/transaction/TransactionManager.js +1 -1
  296. package/decorator/transaction/TransactionManager.js.map +1 -1
  297. package/decorator/transaction/TransactionRepository.js +1 -1
  298. package/decorator/transaction/TransactionRepository.js.map +1 -1
  299. package/decorator/tree/Tree.js +1 -1
  300. package/decorator/tree/Tree.js.map +1 -1
  301. package/decorator/tree/TreeChildren.js +1 -1
  302. package/decorator/tree/TreeChildren.js.map +1 -1
  303. package/decorator/tree/TreeLevelColumn.js +1 -1
  304. package/decorator/tree/TreeLevelColumn.js.map +1 -1
  305. package/decorator/tree/TreeParent.js +1 -1
  306. package/decorator/tree/TreeParent.js.map +1 -1
  307. package/driver/DriverUtils.js +9 -9
  308. package/driver/DriverUtils.js.map +1 -1
  309. package/driver/aurora-data-api/AuroraDataApiConnection.js +1 -1
  310. package/driver/aurora-data-api/AuroraDataApiConnection.js.map +1 -1
  311. package/driver/aurora-data-api/AuroraDataApiConnectionOptions.d.ts +5 -0
  312. package/driver/aurora-data-api/AuroraDataApiConnectionOptions.js.map +1 -1
  313. package/driver/aurora-data-api/AuroraDataApiDriver.js +12 -11
  314. package/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  315. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +146 -175
  316. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  317. package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.d.ts +5 -0
  318. package/driver/aurora-data-api-pg/AuroraDataApiPostgresConnectionOptions.js.map +1 -1
  319. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +10 -9
  320. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -1
  321. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +29 -58
  322. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  323. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +5 -0
  324. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -1
  325. package/driver/better-sqlite3/BetterSqlite3Driver.js +12 -11
  326. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  327. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +5 -5
  328. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  329. package/driver/capacitor/CapacitorDriver.js +7 -7
  330. package/driver/capacitor/CapacitorDriver.js.map +1 -1
  331. package/driver/capacitor/CapacitorQueryRunner.js +5 -5
  332. package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
  333. package/driver/cockroachdb/CockroachConnectionOptions.d.ts +10 -0
  334. package/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
  335. package/driver/cockroachdb/CockroachDriver.js +15 -14
  336. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  337. package/driver/cockroachdb/CockroachQueryRunner.js +180 -211
  338. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  339. package/driver/cordova/CordovaConnectionOptions.d.ts +5 -0
  340. package/driver/cordova/CordovaConnectionOptions.js.map +1 -1
  341. package/driver/cordova/CordovaDriver.js +5 -4
  342. package/driver/cordova/CordovaDriver.js.map +1 -1
  343. package/driver/cordova/CordovaQueryRunner.js +13 -13
  344. package/driver/cordova/CordovaQueryRunner.js.map +1 -1
  345. package/driver/expo/ExpoDriver.js +3 -3
  346. package/driver/expo/ExpoDriver.js.map +1 -1
  347. package/driver/expo/ExpoQueryRunner.js +23 -54
  348. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  349. package/driver/mongodb/MongoConnectionOptions.d.ts +5 -0
  350. package/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  351. package/driver/mongodb/MongoDriver.js +4 -3
  352. package/driver/mongodb/MongoDriver.js.map +1 -1
  353. package/driver/mongodb/MongoQueryRunner.js +178 -178
  354. package/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
  355. package/driver/mysql/MysqlConnectionOptions.js.map +1 -1
  356. package/driver/mysql/MysqlDriver.js +9 -7
  357. package/driver/mysql/MysqlDriver.js.map +1 -1
  358. package/driver/mysql/MysqlQueryRunner.js +152 -182
  359. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  360. package/driver/nativescript/NativescriptDriver.js +3 -3
  361. package/driver/nativescript/NativescriptDriver.js.map +1 -1
  362. package/driver/nativescript/NativescriptQueryRunner.js +48 -40
  363. package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  364. package/driver/oracle/OracleConnectionOptions.d.ts +5 -0
  365. package/driver/oracle/OracleConnectionOptions.js.map +1 -1
  366. package/driver/oracle/OracleDriver.js +13 -12
  367. package/driver/oracle/OracleDriver.js.map +1 -1
  368. package/driver/oracle/OracleQueryRunner.js +143 -171
  369. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  370. package/driver/postgres/PostgresConnectionOptions.d.ts +10 -0
  371. package/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  372. package/driver/postgres/PostgresDriver.js +24 -23
  373. package/driver/postgres/PostgresDriver.js.map +1 -1
  374. package/driver/postgres/PostgresQueryRunner.js +169 -199
  375. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  376. package/driver/react-native/ReactNativeConnectionOptions.d.ts +5 -0
  377. package/driver/react-native/ReactNativeConnectionOptions.js.map +1 -1
  378. package/driver/react-native/ReactNativeDriver.js +5 -4
  379. package/driver/react-native/ReactNativeDriver.js.map +1 -1
  380. package/driver/react-native/ReactNativeQueryRunner.js +3 -3
  381. package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  382. package/driver/sap/SapConnectionOptions.d.ts +16 -6
  383. package/driver/sap/SapConnectionOptions.js.map +1 -1
  384. package/driver/sap/SapDriver.js +11 -8
  385. package/driver/sap/SapDriver.js.map +1 -1
  386. package/driver/sap/SapQueryRunner.js +153 -183
  387. package/driver/sap/SapQueryRunner.js.map +1 -1
  388. package/driver/sqlite/SqliteConnectionOptions.d.ts +5 -0
  389. package/driver/sqlite/SqliteConnectionOptions.js.map +1 -1
  390. package/driver/sqlite/SqliteDriver.js +12 -11
  391. package/driver/sqlite/SqliteDriver.js.map +1 -1
  392. package/driver/sqlite/SqliteQueryRunner.js +21 -13
  393. package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  394. package/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -4
  395. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +138 -168
  396. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  397. package/driver/sqljs/SqljsConnectionOptions.d.ts +5 -0
  398. package/driver/sqljs/SqljsConnectionOptions.js.map +1 -1
  399. package/driver/sqljs/SqljsDriver.js +17 -15
  400. package/driver/sqljs/SqljsDriver.js.map +1 -1
  401. package/driver/sqljs/SqljsQueryRunner.js +9 -9
  402. package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  403. package/driver/sqlserver/SqlServerConnectionOptions.d.ts +5 -0
  404. package/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
  405. package/driver/sqlserver/SqlServerDriver.js +13 -12
  406. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  407. package/driver/sqlserver/SqlServerQueryRunner.js +220 -252
  408. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  409. package/entity-manager/EntityManager.js +30 -30
  410. package/entity-manager/EntityManager.js.map +1 -1
  411. package/entity-manager/MongoEntityManager.js +23 -28
  412. package/entity-manager/MongoEntityManager.js.map +1 -1
  413. package/entity-manager/SqljsEntityManager.js +5 -5
  414. package/entity-manager/SqljsEntityManager.js.map +1 -1
  415. package/entity-schema/EntitySchemaTransformer.js +1 -1
  416. package/entity-schema/EntitySchemaTransformer.js.map +1 -1
  417. package/error/AlreadyHasActiveConnectionError.js +1 -1
  418. package/error/AlreadyHasActiveConnectionError.js.map +1 -1
  419. package/error/CannotAttachTreeChildrenEntityError.js +1 -1
  420. package/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
  421. package/error/CannotConnectAlreadyConnectedError.js +1 -1
  422. package/error/CannotConnectAlreadyConnectedError.js.map +1 -1
  423. package/error/CannotCreateEntityIdMapError.js +1 -1
  424. package/error/CannotCreateEntityIdMapError.js.map +1 -1
  425. package/error/CannotDetermineEntityError.js +1 -1
  426. package/error/CannotDetermineEntityError.js.map +1 -1
  427. package/error/CannotExecuteNotConnectedError.js +1 -1
  428. package/error/CannotExecuteNotConnectedError.js.map +1 -1
  429. package/error/CannotGetEntityManagerNotConnectedError.js +1 -1
  430. package/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
  431. package/error/CannotReflectMethodParameterTypeError.js +1 -1
  432. package/error/CannotReflectMethodParameterTypeError.js.map +1 -1
  433. package/error/CircularRelationsError.js +1 -1
  434. package/error/CircularRelationsError.js.map +1 -1
  435. package/error/ColumnTypeUndefinedError.js +1 -1
  436. package/error/ColumnTypeUndefinedError.js.map +1 -1
  437. package/error/ConnectionIsNotSetError.js +1 -1
  438. package/error/ConnectionIsNotSetError.js.map +1 -1
  439. package/error/ConnectionNotFoundError.js +1 -1
  440. package/error/ConnectionNotFoundError.js.map +1 -1
  441. package/error/CustomRepositoryCannotInheritRepositoryError.js +1 -1
  442. package/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
  443. package/error/CustomRepositoryDoesNotHaveEntityError.js +1 -1
  444. package/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
  445. package/error/CustomRepositoryNotFoundError.js +1 -1
  446. package/error/CustomRepositoryNotFoundError.js.map +1 -1
  447. package/error/DataTypeNotSupportedError.js +1 -1
  448. package/error/DataTypeNotSupportedError.js.map +1 -1
  449. package/error/DriverOptionNotSetError.js +1 -1
  450. package/error/DriverOptionNotSetError.js.map +1 -1
  451. package/error/DriverPackageNotInstalledError.js +1 -1
  452. package/error/DriverPackageNotInstalledError.js.map +1 -1
  453. package/error/EntityColumnNotFound.js +1 -1
  454. package/error/EntityColumnNotFound.js.map +1 -1
  455. package/error/EntityMetadataNotFoundError.js +1 -1
  456. package/error/EntityMetadataNotFoundError.js.map +1 -1
  457. package/error/EntityNotFoundError.js +1 -1
  458. package/error/EntityNotFoundError.js.map +1 -1
  459. package/error/FindRelationsNotFoundError.js +1 -1
  460. package/error/FindRelationsNotFoundError.js.map +1 -1
  461. package/error/InitializedRelationError.js +1 -1
  462. package/error/InitializedRelationError.js.map +1 -1
  463. package/error/InsertValuesMissingError.js +1 -1
  464. package/error/InsertValuesMissingError.js.map +1 -1
  465. package/error/LimitOnUpdateNotSupportedError.js +1 -1
  466. package/error/LimitOnUpdateNotSupportedError.js.map +1 -1
  467. package/error/LockNotSupportedOnGivenDriverError.js +1 -1
  468. package/error/LockNotSupportedOnGivenDriverError.js.map +1 -1
  469. package/error/MetadataAlreadyExistsError.js +1 -1
  470. package/error/MetadataAlreadyExistsError.js.map +1 -1
  471. package/error/MetadataWithSuchNameAlreadyExistsError.js +1 -1
  472. package/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -1
  473. package/error/MissingDeleteDateColumnError.js +1 -1
  474. package/error/MissingDeleteDateColumnError.js.map +1 -1
  475. package/error/MissingDriverError.js +1 -1
  476. package/error/MissingDriverError.js.map +1 -1
  477. package/error/MissingJoinColumnError.js +1 -1
  478. package/error/MissingJoinColumnError.js.map +1 -1
  479. package/error/MissingJoinTableError.js +1 -1
  480. package/error/MissingJoinTableError.js.map +1 -1
  481. package/error/MissingPrimaryColumnError.js +1 -1
  482. package/error/MissingPrimaryColumnError.js.map +1 -1
  483. package/error/MustBeEntityError.js +1 -1
  484. package/error/MustBeEntityError.js.map +1 -1
  485. package/error/NamingStrategyNotFoundError.js +1 -1
  486. package/error/NamingStrategyNotFoundError.js.map +1 -1
  487. package/error/NestedSetMultipleRootError.js +1 -1
  488. package/error/NestedSetMultipleRootError.js.map +1 -1
  489. package/error/NoConnectionForRepositoryError.js +1 -1
  490. package/error/NoConnectionForRepositoryError.js.map +1 -1
  491. package/error/NoConnectionOptionError.js +1 -1
  492. package/error/NoConnectionOptionError.js.map +1 -1
  493. package/error/NoNeedToReleaseEntityManagerError.js +1 -1
  494. package/error/NoNeedToReleaseEntityManagerError.js.map +1 -1
  495. package/error/NoVersionOrUpdateDateColumnError.js +1 -1
  496. package/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
  497. package/error/OffsetWithoutLimitNotSupportedError.js +1 -1
  498. package/error/OffsetWithoutLimitNotSupportedError.js.map +1 -1
  499. package/error/OptimisticLockCanNotBeUsedError.js +1 -1
  500. package/error/OptimisticLockCanNotBeUsedError.js.map +1 -1
  501. package/error/OptimisticLockVersionMismatchError.js +1 -1
  502. package/error/OptimisticLockVersionMismatchError.js.map +1 -1
  503. package/error/PersistedEntityNotFoundError.js +1 -1
  504. package/error/PersistedEntityNotFoundError.js.map +1 -1
  505. package/error/PessimisticLockTransactionRequiredError.js +1 -1
  506. package/error/PessimisticLockTransactionRequiredError.js.map +1 -1
  507. package/error/PrimaryColumnCannotBeNullableError.js +1 -1
  508. package/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
  509. package/error/QueryFailedError.js +3 -3
  510. package/error/QueryFailedError.js.map +1 -1
  511. package/error/QueryRunnerAlreadyReleasedError.js +1 -1
  512. package/error/QueryRunnerAlreadyReleasedError.js.map +1 -1
  513. package/error/QueryRunnerProviderAlreadyReleasedError.js +1 -1
  514. package/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -1
  515. package/error/RepositoryNotFoundError.js +1 -1
  516. package/error/RepositoryNotFoundError.js.map +1 -1
  517. package/error/RepositoryNotTreeError.js +1 -1
  518. package/error/RepositoryNotTreeError.js.map +1 -1
  519. package/error/ReturningStatementNotSupportedError.js +1 -1
  520. package/error/ReturningStatementNotSupportedError.js.map +1 -1
  521. package/error/SubjectRemovedAndUpdatedError.js +1 -1
  522. package/error/SubjectRemovedAndUpdatedError.js.map +1 -1
  523. package/error/SubjectWithoutIdentifierError.js +1 -1
  524. package/error/SubjectWithoutIdentifierError.js.map +1 -1
  525. package/error/TransactionAlreadyStartedError.js +1 -1
  526. package/error/TransactionAlreadyStartedError.js.map +1 -1
  527. package/error/TransactionNotStartedError.js +1 -1
  528. package/error/TransactionNotStartedError.js.map +1 -1
  529. package/error/TreeRepositoryNotSupportedError.js +1 -1
  530. package/error/TreeRepositoryNotSupportedError.js.map +1 -1
  531. package/error/TypeORMError.js +1 -1
  532. package/error/TypeORMError.js.map +1 -1
  533. package/error/UpdateValuesMissingError.js +1 -1
  534. package/error/UpdateValuesMissingError.js.map +1 -1
  535. package/error/UsingJoinColumnIsNotAllowedError.js +1 -1
  536. package/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
  537. package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -1
  538. package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
  539. package/error/UsingJoinTableIsNotAllowedError.js +1 -1
  540. package/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
  541. package/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -1
  542. package/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
  543. package/error/index.js +62 -62
  544. package/error/index.js.map +1 -1
  545. package/find-options/FindOptionsUtils.js +4 -4
  546. package/find-options/FindOptionsUtils.js.map +1 -1
  547. package/globals.js +7 -7
  548. package/globals.js.map +1 -1
  549. package/index.js +102 -102
  550. package/index.js.map +1 -1
  551. package/logger/DebugLogger.js +9 -9
  552. package/logger/DebugLogger.js.map +1 -1
  553. package/logger/FileLogger.js +1 -1
  554. package/logger/FileLogger.js.map +1 -1
  555. package/metadata/ColumnMetadata.js +4 -4
  556. package/metadata/ColumnMetadata.js.map +1 -1
  557. package/metadata/EmbeddedMetadata.js +1 -1
  558. package/metadata/EmbeddedMetadata.js.map +1 -1
  559. package/metadata/EntityMetadata.d.ts +5 -0
  560. package/metadata/EntityMetadata.js +3 -2
  561. package/metadata/EntityMetadata.js.map +1 -1
  562. package/metadata/RelationMetadata.js +4 -4
  563. package/metadata/RelationMetadata.js.map +1 -1
  564. package/metadata-args/TableMetadataArgs.d.ts +4 -0
  565. package/metadata-args/TableMetadataArgs.js.map +1 -1
  566. package/metadata-builder/EntityMetadataBuilder.js +5 -5
  567. package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  568. package/metadata-builder/JunctionEntityMetadataBuilder.js +1 -1
  569. package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  570. package/migration/MigrationExecutor.js +33 -33
  571. package/migration/MigrationExecutor.js.map +1 -1
  572. package/naming-strategy/DefaultNamingStrategy.js +10 -10
  573. package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  574. package/package.json +1 -239
  575. package/persistence/EntityPersistExecutor.js +5 -5
  576. package/persistence/EntityPersistExecutor.js.map +1 -1
  577. package/persistence/Subject.js +1 -1
  578. package/persistence/Subject.js.map +1 -1
  579. package/persistence/SubjectDatabaseEntityLoader.js +6 -6
  580. package/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  581. package/persistence/SubjectExecutor.js +31 -31
  582. package/persistence/SubjectExecutor.js.map +1 -1
  583. package/persistence/SubjectTopoligicalSorter.js +5 -5
  584. package/persistence/SubjectTopoligicalSorter.js.map +1 -1
  585. package/persistence/subject-builder/CascadesSubjectBuilder.js +1 -1
  586. package/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
  587. package/persistence/tree/ClosureSubjectExecutor.js +13 -13
  588. package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  589. package/persistence/tree/MaterializedPathSubjectExecutor.js +5 -5
  590. package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  591. package/persistence/tree/NestedSetSubjectExecutor.js +14 -14
  592. package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
  593. package/platform/PlatformTools.js +8 -8
  594. package/platform/PlatformTools.js.map +1 -1
  595. package/query-builder/DeleteQueryBuilder.js +7 -14
  596. package/query-builder/DeleteQueryBuilder.js.map +1 -1
  597. package/query-builder/InsertQueryBuilder.js +9 -11
  598. package/query-builder/InsertQueryBuilder.js.map +1 -1
  599. package/query-builder/JoinAttribute.js +1 -1
  600. package/query-builder/JoinAttribute.js.map +1 -1
  601. package/query-builder/QueryBuilder.js +37 -37
  602. package/query-builder/QueryBuilder.js.map +1 -1
  603. package/query-builder/QueryBuilderUtils.js +1 -1
  604. package/query-builder/QueryBuilderUtils.js.map +1 -1
  605. package/query-builder/QueryExpressionMap.js +3 -3
  606. package/query-builder/QueryExpressionMap.js.map +1 -1
  607. package/query-builder/RelationLoader.js +2 -2
  608. package/query-builder/RelationLoader.js.map +1 -1
  609. package/query-builder/RelationQueryBuilder.js +13 -13
  610. package/query-builder/RelationQueryBuilder.js.map +1 -1
  611. package/query-builder/RelationRemover.js +12 -12
  612. package/query-builder/RelationRemover.js.map +1 -1
  613. package/query-builder/RelationUpdater.js +2 -2
  614. package/query-builder/ReturningResultsEntityUpdator.js +6 -6
  615. package/query-builder/SelectQueryBuilder.js +43 -43
  616. package/query-builder/SelectQueryBuilder.js.map +1 -1
  617. package/query-builder/SoftDeleteQueryBuilder.js +7 -14
  618. package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  619. package/query-builder/UpdateQueryBuilder.js +10 -17
  620. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  621. package/query-builder/relation-count/RelationCountAttribute.js +2 -2
  622. package/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
  623. package/query-builder/relation-count/RelationCountLoader.js +4 -4
  624. package/query-builder/relation-id/RelationIdAttribute.js +1 -1
  625. package/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
  626. package/query-builder/relation-id/RelationIdLoader.js +5 -5
  627. package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  628. package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +3 -3
  629. package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
  630. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +2 -2
  631. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  632. package/query-runner/BaseQueryRunner.js +25 -25
  633. package/query-runner/BaseQueryRunner.js.map +1 -1
  634. package/query-runner/QueryLock.js +3 -3
  635. package/query-runner/QueryLock.js.map +1 -1
  636. package/repository/AbstractRepository.js +1 -1
  637. package/repository/AbstractRepository.js.map +1 -1
  638. package/repository/BaseEntity.js +4 -4
  639. package/repository/BaseEntity.js.map +1 -1
  640. package/repository/MongoRepository.js +1 -1
  641. package/repository/MongoRepository.js.map +1 -1
  642. package/repository/Repository.js +1 -1
  643. package/repository/Repository.js.map +1 -1
  644. package/repository/TreeRepository.js +7 -7
  645. package/repository/TreeRepository.js.map +1 -1
  646. package/schema-builder/MongoSchemaBuilder.js +2 -2
  647. package/schema-builder/RdbmsSchemaBuilder.js +311 -236
  648. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  649. package/schema-builder/table/Table.js +1 -1
  650. package/schema-builder/table/Table.js.map +1 -1
  651. package/schema-builder/table/TableCheck.js +1 -1
  652. package/schema-builder/table/TableCheck.js.map +1 -1
  653. package/schema-builder/table/TableForeignKey.js +2 -2
  654. package/schema-builder/table/TableForeignKey.js.map +1 -1
  655. package/schema-builder/table/TableIndex.js +1 -1
  656. package/schema-builder/table/TableIndex.js.map +1 -1
  657. package/schema-builder/table/TableUnique.js +1 -1
  658. package/schema-builder/table/TableUnique.js.map +1 -1
  659. package/schema-builder/util/ViewUtils.d.ts +7 -0
  660. package/schema-builder/util/ViewUtils.js +28 -0
  661. package/schema-builder/util/ViewUtils.js.map +1 -0
  662. package/subscriber/Broadcaster.d.ts +23 -2
  663. package/subscriber/Broadcaster.js +35 -2
  664. package/subscriber/Broadcaster.js.map +1 -1
  665. package/subscriber/BroadcasterResult.d.ts +4 -0
  666. package/subscriber/BroadcasterResult.js +19 -0
  667. package/subscriber/BroadcasterResult.js.map +1 -1
  668. package/util/DateUtils.js +1 -1
  669. package/util/DateUtils.js.map +1 -1
  670. package/util/DirectoryExportedClassesLoader.js +1 -1
  671. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  672. package/util/ObjectUtils.js +2 -2
  673. package/util/ObjectUtils.js.map +1 -1
  674. package/util/OrmUtils.js +2 -2
  675. package/util/OrmUtils.js.map +1 -1
  676. package/util/StringUtils.js +2 -2
  677. package/util/StringUtils.js.map +1 -1
@@ -1,3 +1,5 @@
1
+ import { __awaiter, __generator, __read, __spreadArray } from "tslib";
2
+ import { BroadcasterResult } from "./BroadcasterResult";
1
3
  /**
2
4
  * Broadcaster provides a helper methods to broadcast events to the subscribers.
3
5
  */
@@ -11,6 +13,31 @@ var Broadcaster = /** @class */ (function () {
11
13
  // -------------------------------------------------------------------------
12
14
  // Public Methods
13
15
  // -------------------------------------------------------------------------
16
+ Broadcaster.prototype.broadcast = function (event) {
17
+ var args = [];
18
+ for (var _i = 1; _i < arguments.length; _i++) {
19
+ args[_i - 1] = arguments[_i];
20
+ }
21
+ return __awaiter(this, void 0, void 0, function () {
22
+ var result, broadcastFunction;
23
+ var _a;
24
+ return __generator(this, function (_b) {
25
+ switch (_b.label) {
26
+ case 0:
27
+ result = new BroadcasterResult();
28
+ broadcastFunction = this["broadcast" + event + "Event"];
29
+ if (typeof broadcastFunction === "function") {
30
+ (_a = broadcastFunction).call.apply(_a, __spreadArray([this,
31
+ result], __read(args), false));
32
+ }
33
+ return [4 /*yield*/, result.wait()];
34
+ case 1:
35
+ _b.sent();
36
+ return [2 /*return*/];
37
+ }
38
+ });
39
+ });
40
+ };
14
41
  /**
15
42
  * Broadcasts "BEFORE_INSERT" event.
16
43
  * Before insert event is executed before entity is being inserted to the database for the first time.
@@ -363,6 +390,12 @@ var Broadcaster = /** @class */ (function () {
363
390
  });
364
391
  }
365
392
  };
393
+ /**
394
+ * @deprecated Use `broadcastLoadForAllEvent`
395
+ */
396
+ Broadcaster.prototype.broadcastLoadEventsForAll = function (result, metadata, entities) {
397
+ return this.broadcastLoadEvent(result, metadata, entities);
398
+ };
366
399
  /**
367
400
  * Broadcasts "AFTER_LOAD" event for all given entities, and their sub-entities.
368
401
  * After load event is executed after entity has been loaded from the database.
@@ -371,7 +404,7 @@ var Broadcaster = /** @class */ (function () {
371
404
  *
372
405
  * Note: this method has a performance-optimized code organization, do not change code structure.
373
406
  */
374
- Broadcaster.prototype.broadcastLoadEventsForAll = function (result, metadata, entities) {
407
+ Broadcaster.prototype.broadcastLoadEvent = function (result, metadata, entities) {
375
408
  var _this = this;
376
409
  entities.forEach(function (entity) {
377
410
  if (entity instanceof Promise) // todo: check why need this?
@@ -384,7 +417,7 @@ var Broadcaster = /** @class */ (function () {
384
417
  return;
385
418
  var value = relation.getEntityValue(entity);
386
419
  if (value instanceof Object)
387
- _this.broadcastLoadEventsForAll(result, relation.inverseEntityMetadata, Array.isArray(value) ? value : [value]);
420
+ _this.broadcastLoadEvent(result, relation.inverseEntityMetadata, Array.isArray(value) ? value : [value]);
388
421
  });
389
422
  }
390
423
  if (metadata.afterLoadListeners.length) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/subscriber/Broadcaster.ts"],"names":[],"mappings":"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","file":"Broadcaster.js","sourcesContent":["import {EntitySubscriberInterface} from \"./EntitySubscriberInterface\";\nimport {ObjectLiteral} from \"../common/ObjectLiteral\";\nimport {QueryRunner} from \"../query-runner/QueryRunner\";\nimport {EntityMetadata} from \"../metadata/EntityMetadata\";\nimport {BroadcasterResult} from \"./BroadcasterResult\";\nimport {ColumnMetadata} from \"../metadata/ColumnMetadata\";\nimport {RelationMetadata} from \"../metadata/RelationMetadata\";\n\n/**\n * Broadcaster provides a helper methods to broadcast events to the subscribers.\n */\nexport class Broadcaster {\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(private queryRunner: QueryRunner) {\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Broadcasts \"BEFORE_INSERT\" event.\n * Before insert event is executed before entity is being inserted to the database for the first time.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastBeforeInsertEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral): void {\n\n if (entity && metadata.beforeInsertListeners.length) {\n metadata.beforeInsertListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.beforeInsert) {\n const executionResult = subscriber.beforeInsert({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_UPDATE\" event.\n * Before update event is executed before entity is being updated in the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastBeforeUpdateEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral, updatedColumns?: ColumnMetadata[], updatedRelations?: RelationMetadata[]): void { // todo: send relations too?\n if (entity && metadata.beforeUpdateListeners.length) {\n metadata.beforeUpdateListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.beforeUpdate) {\n const executionResult = subscriber.beforeUpdate({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata,\n databaseEntity: databaseEntity,\n updatedColumns: updatedColumns || [],\n updatedRelations: updatedRelations || []\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_REMOVE\" event.\n * Before remove event is executed before entity is being removed from the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastBeforeRemoveEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral): void {\n if (entity && metadata.beforeRemoveListeners.length) {\n metadata.beforeRemoveListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.beforeRemove) {\n const executionResult = subscriber.beforeRemove({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata,\n databaseEntity: databaseEntity,\n entityId: metadata.getEntityIdMixedMap(databaseEntity)\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_INSERT\" event.\n * After insert event is executed after entity is being persisted to the database for the first time.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastAfterInsertEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral): void {\n\n if (entity && metadata.afterInsertListeners.length) {\n metadata.afterInsertListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.afterInsert) {\n const executionResult = subscriber.afterInsert({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_TRANSACTION_START\" event.\n */\n broadcastBeforeTransactionStartEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.beforeTransactionStart) {\n const executionResult = subscriber.beforeTransactionStart({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_TRANSACTION_START\" event.\n */\n broadcastAfterTransactionStartEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.afterTransactionStart) {\n const executionResult = subscriber.afterTransactionStart({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_TRANSACTION_COMMIT\" event.\n */\n broadcastBeforeTransactionCommitEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.beforeTransactionCommit) {\n const executionResult = subscriber.beforeTransactionCommit({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_TRANSACTION_COMMIT\" event.\n */\n broadcastAfterTransactionCommitEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.afterTransactionCommit) {\n const executionResult = subscriber.afterTransactionCommit({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_TRANSACTION_ROLLBACK\" event.\n */\n broadcastBeforeTransactionRollbackEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.beforeTransactionRollback) {\n const executionResult = subscriber.beforeTransactionRollback({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_TRANSACTION_ROLLBACK\" event.\n */\n broadcastAfterTransactionRollbackEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.afterTransactionRollback) {\n const executionResult = subscriber.afterTransactionRollback({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_UPDATE\" event.\n * After update event is executed after entity is being updated in the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastAfterUpdateEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral, updatedColumns?: ColumnMetadata[], updatedRelations?: RelationMetadata[]): void {\n\n if (entity && metadata.afterUpdateListeners.length) {\n metadata.afterUpdateListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.afterUpdate) {\n const executionResult = subscriber.afterUpdate({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata,\n databaseEntity: databaseEntity,\n updatedColumns: updatedColumns || [],\n updatedRelations: updatedRelations || []\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_REMOVE\" event.\n * After remove event is executed after entity is being removed from the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastAfterRemoveEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral): void {\n\n if (entity && metadata.afterRemoveListeners.length) {\n metadata.afterRemoveListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.afterRemove) {\n const executionResult = subscriber.afterRemove({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata,\n databaseEntity: databaseEntity,\n entityId: metadata.getEntityIdMixedMap(databaseEntity)\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_LOAD\" event for all given entities, and their sub-entities.\n * After load event is executed after entity has been loaded from the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastLoadEventsForAll(result: BroadcasterResult, metadata: EntityMetadata, entities: ObjectLiteral[]): void {\n entities.forEach(entity => {\n if (entity instanceof Promise) // todo: check why need this?\n return;\n\n // collect load events for all children entities that were loaded with the main entity\n if (metadata.relations.length) {\n metadata.relations.forEach(relation => {\n\n // in lazy relations we cannot simply access to entity property because it will cause a getter and a database query\n if (relation.isLazy && !entity.hasOwnProperty(relation.propertyName))\n return;\n\n const value = relation.getEntityValue(entity);\n if (value instanceof Object)\n this.broadcastLoadEventsForAll(result, relation.inverseEntityMetadata, Array.isArray(value) ? value : [value]);\n });\n }\n\n if (metadata.afterLoadListeners.length) {\n metadata.afterLoadListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.afterLoad) {\n const executionResult = subscriber.afterLoad!(entity, {\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n });\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Checks if subscriber's methods can be executed by checking if its don't listen to the particular entity,\n * or listens our entity.\n */\n protected isAllowedSubscriber(subscriber: EntitySubscriberInterface<any>, target: Function|string): boolean {\n return !subscriber.listenTo ||\n !subscriber.listenTo() ||\n subscriber.listenTo() === Object ||\n subscriber.listenTo() === target ||\n subscriber.listenTo().isPrototypeOf(target);\n }\n\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../browser/src/subscriber/Broadcaster.ts"],"names":[],"mappings":"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","file":"Broadcaster.js","sourcesContent":["import {EntitySubscriberInterface} from \"./EntitySubscriberInterface\";\nimport {ObjectLiteral} from \"../common/ObjectLiteral\";\nimport {QueryRunner} from \"../query-runner/QueryRunner\";\nimport {EntityMetadata} from \"../metadata/EntityMetadata\";\nimport {BroadcasterResult} from \"./BroadcasterResult\";\nimport {ColumnMetadata} from \"../metadata/ColumnMetadata\";\nimport {RelationMetadata} from \"../metadata/RelationMetadata\";\n\ninterface BroadcasterEvents {\n \"BeforeTransactionCommit\": () => void;\n \"AfterTransactionCommit\": () => void;\n \"BeforeTransactionStart\": () => void;\n \"AfterTransactionStart\": () => void;\n \"BeforeTransactionRollback\": () => void;\n \"AfterTransactionRollback\": () => void;\n\n \"BeforeUpdate\": (metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral, updatedColumns?: ColumnMetadata[], updatedRelations?: RelationMetadata[]) => void;\n \"AfterUpdate\": (metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral, updatedColumns?: ColumnMetadata[], updatedRelations?: RelationMetadata[]) => void;\n\n \"BeforeInsert\": (metadata: EntityMetadata, entity: ObjectLiteral | undefined) => void;\n \"AfterInsert\": (metadata: EntityMetadata, entity: ObjectLiteral | undefined) => void;\n\n \"BeforeRemove\": (metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral) => void;\n \"AfterRemove\": (metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral) => void;\n\n \"Load\": (metadata: EntityMetadata, entities: ObjectLiteral[]) => void;\n}\n\n\n/**\n * Broadcaster provides a helper methods to broadcast events to the subscribers.\n */\nexport class Broadcaster {\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(private queryRunner: QueryRunner) {\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n async broadcast<U extends keyof BroadcasterEvents>(event: U, ...args: Parameters<BroadcasterEvents[U]>): Promise<void> {\n const result = new BroadcasterResult();\n\n const broadcastFunction = this[`broadcast${event}Event` as keyof this];\n\n if (typeof broadcastFunction === \"function\") {\n (broadcastFunction as any).call(\n this,\n result,\n ...args\n );\n }\n\n await result.wait();\n }\n\n /**\n * Broadcasts \"BEFORE_INSERT\" event.\n * Before insert event is executed before entity is being inserted to the database for the first time.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastBeforeInsertEvent(result: BroadcasterResult, metadata: EntityMetadata, entity: undefined | ObjectLiteral): void {\n\n if (entity && metadata.beforeInsertListeners.length) {\n metadata.beforeInsertListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.beforeInsert) {\n const executionResult = subscriber.beforeInsert({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_UPDATE\" event.\n * Before update event is executed before entity is being updated in the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastBeforeUpdateEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral, updatedColumns?: ColumnMetadata[], updatedRelations?: RelationMetadata[]): void { // todo: send relations too?\n if (entity && metadata.beforeUpdateListeners.length) {\n metadata.beforeUpdateListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.beforeUpdate) {\n const executionResult = subscriber.beforeUpdate({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata,\n databaseEntity: databaseEntity,\n updatedColumns: updatedColumns || [],\n updatedRelations: updatedRelations || []\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_REMOVE\" event.\n * Before remove event is executed before entity is being removed from the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastBeforeRemoveEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral): void {\n if (entity && metadata.beforeRemoveListeners.length) {\n metadata.beforeRemoveListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.beforeRemove) {\n const executionResult = subscriber.beforeRemove({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata,\n databaseEntity: databaseEntity,\n entityId: metadata.getEntityIdMixedMap(databaseEntity)\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_INSERT\" event.\n * After insert event is executed after entity is being persisted to the database for the first time.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastAfterInsertEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral): void {\n\n if (entity && metadata.afterInsertListeners.length) {\n metadata.afterInsertListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.afterInsert) {\n const executionResult = subscriber.afterInsert({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_TRANSACTION_START\" event.\n */\n broadcastBeforeTransactionStartEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.beforeTransactionStart) {\n const executionResult = subscriber.beforeTransactionStart({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_TRANSACTION_START\" event.\n */\n broadcastAfterTransactionStartEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.afterTransactionStart) {\n const executionResult = subscriber.afterTransactionStart({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_TRANSACTION_COMMIT\" event.\n */\n broadcastBeforeTransactionCommitEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.beforeTransactionCommit) {\n const executionResult = subscriber.beforeTransactionCommit({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_TRANSACTION_COMMIT\" event.\n */\n broadcastAfterTransactionCommitEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.afterTransactionCommit) {\n const executionResult = subscriber.afterTransactionCommit({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"BEFORE_TRANSACTION_ROLLBACK\" event.\n */\n broadcastBeforeTransactionRollbackEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.beforeTransactionRollback) {\n const executionResult = subscriber.beforeTransactionRollback({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_TRANSACTION_ROLLBACK\" event.\n */\n broadcastAfterTransactionRollbackEvent(result: BroadcasterResult): void {\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (subscriber.afterTransactionRollback) {\n const executionResult = subscriber.afterTransactionRollback({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_UPDATE\" event.\n * After update event is executed after entity is being updated in the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastAfterUpdateEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral, updatedColumns?: ColumnMetadata[], updatedRelations?: RelationMetadata[]): void {\n\n if (entity && metadata.afterUpdateListeners.length) {\n metadata.afterUpdateListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.afterUpdate) {\n const executionResult = subscriber.afterUpdate({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata,\n databaseEntity: databaseEntity,\n updatedColumns: updatedColumns || [],\n updatedRelations: updatedRelations || []\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * Broadcasts \"AFTER_REMOVE\" event.\n * After remove event is executed after entity is being removed from the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastAfterRemoveEvent(result: BroadcasterResult, metadata: EntityMetadata, entity?: ObjectLiteral, databaseEntity?: ObjectLiteral): void {\n\n if (entity && metadata.afterRemoveListeners.length) {\n metadata.afterRemoveListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.afterRemove) {\n const executionResult = subscriber.afterRemove({\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata,\n databaseEntity: databaseEntity,\n entityId: metadata.getEntityIdMixedMap(databaseEntity)\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n }\n\n /**\n * @deprecated Use `broadcastLoadForAllEvent`\n */\n broadcastLoadEventsForAll(result: BroadcasterResult, metadata: EntityMetadata, entities: ObjectLiteral[]): void {\n return this.broadcastLoadEvent(result, metadata, entities);\n }\n\n /**\n * Broadcasts \"AFTER_LOAD\" event for all given entities, and their sub-entities.\n * After load event is executed after entity has been loaded from the database.\n * All subscribers and entity listeners who listened to this event will be executed at this point.\n * Subscribers and entity listeners can return promises, it will wait until they are resolved.\n *\n * Note: this method has a performance-optimized code organization, do not change code structure.\n */\n broadcastLoadEvent(result: BroadcasterResult, metadata: EntityMetadata, entities: ObjectLiteral[]): void {\n entities.forEach(entity => {\n if (entity instanceof Promise) // todo: check why need this?\n return;\n\n // collect load events for all children entities that were loaded with the main entity\n if (metadata.relations.length) {\n metadata.relations.forEach(relation => {\n\n // in lazy relations we cannot simply access to entity property because it will cause a getter and a database query\n if (relation.isLazy && !entity.hasOwnProperty(relation.propertyName))\n return;\n\n const value = relation.getEntityValue(entity);\n if (value instanceof Object)\n this.broadcastLoadEvent(result, relation.inverseEntityMetadata, Array.isArray(value) ? value : [value]);\n });\n }\n\n if (metadata.afterLoadListeners.length) {\n metadata.afterLoadListeners.forEach(listener => {\n if (listener.isAllowed(entity)) {\n const executionResult = listener.execute(entity);\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n\n if (this.queryRunner.connection.subscribers.length) {\n this.queryRunner.connection.subscribers.forEach(subscriber => {\n if (this.isAllowedSubscriber(subscriber, metadata.target) && subscriber.afterLoad) {\n const executionResult = subscriber.afterLoad!(entity, {\n connection: this.queryRunner.connection,\n queryRunner: this.queryRunner,\n manager: this.queryRunner.manager,\n entity: entity,\n metadata: metadata\n });\n if (executionResult instanceof Promise)\n result.promises.push(executionResult);\n result.count++;\n }\n });\n }\n });\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Checks if subscriber's methods can be executed by checking if its don't listen to the particular entity,\n * or listens our entity.\n */\n protected isAllowedSubscriber(subscriber: EntitySubscriberInterface<any>, target: Function|string): boolean {\n return !subscriber.listenTo ||\n !subscriber.listenTo() ||\n subscriber.listenTo() === Object ||\n subscriber.listenTo() === target ||\n subscriber.listenTo().isPrototypeOf(target);\n }\n\n}\n"],"sourceRoot":".."}
@@ -10,4 +10,8 @@ export declare class BroadcasterResult {
10
10
  * Promises returned by listeners and subscribers which needs to be awaited.
11
11
  */
12
12
  promises: Promise<any>[];
13
+ /**
14
+ * Wait for all promises to settle
15
+ */
16
+ wait(): Promise<BroadcasterResult>;
13
17
  }
@@ -1,3 +1,4 @@
1
+ import { __awaiter, __generator } from "tslib";
1
2
  /**
2
3
  * Broadcaster execution result - promises executed by operations and number of executed listeners and subscribers.
3
4
  */
@@ -12,6 +13,24 @@ var BroadcasterResult = /** @class */ (function () {
12
13
  */
13
14
  this.promises = [];
14
15
  }
16
+ /**
17
+ * Wait for all promises to settle
18
+ */
19
+ BroadcasterResult.prototype.wait = function () {
20
+ return __awaiter(this, void 0, void 0, function () {
21
+ return __generator(this, function (_a) {
22
+ switch (_a.label) {
23
+ case 0:
24
+ if (!(this.promises.length > 0)) return [3 /*break*/, 2];
25
+ return [4 /*yield*/, Promise.all(this.promises)];
26
+ case 1:
27
+ _a.sent();
28
+ _a.label = 2;
29
+ case 2: return [2 /*return*/, this];
30
+ }
31
+ });
32
+ });
33
+ };
15
34
  return BroadcasterResult;
16
35
  }());
17
36
  export { BroadcasterResult };
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/subscriber/BroadcasterResult.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;IAAA;QAEI;;WAEG;QACH,UAAK,GAAW,CAAC,CAAC;QAElB;;WAEG;QACH,aAAQ,GAAmB,EAAE,CAAC;IAElC,CAAC;IAAD,wBAAC;AAAD,CAZA,AAYC,IAAA","file":"BroadcasterResult.js","sourcesContent":["/**\n * Broadcaster execution result - promises executed by operations and number of executed listeners and subscribers.\n */\nexport class BroadcasterResult {\n\n /**\n * Number of executed listeners and subscribers.\n */\n count: number = 0;\n\n /**\n * Promises returned by listeners and subscribers which needs to be awaited.\n */\n promises: Promise<any>[] = [];\n\n}"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../browser/src/subscriber/BroadcasterResult.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH;IAAA;QAEI;;WAEG;QACH,UAAK,GAAW,CAAC,CAAC;QAElB;;WAEG;QACH,aAAQ,GAAmB,EAAE,CAAC;IAYlC,CAAC;IAVG;;OAEG;IACG,gCAAI,GAAV;;;;;6BACQ,CAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAA,EAAxB,wBAAwB;wBACxB,qBAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAA;;wBAAhC,SAAgC,CAAC;;4BAGrC,sBAAO,IAAI,EAAC;;;;KACf;IACL,wBAAC;AAAD,CAtBA,AAsBC,IAAA","file":"BroadcasterResult.js","sourcesContent":["/**\n * Broadcaster execution result - promises executed by operations and number of executed listeners and subscribers.\n */\nexport class BroadcasterResult {\n\n /**\n * Number of executed listeners and subscribers.\n */\n count: number = 0;\n\n /**\n * Promises returned by listeners and subscribers which needs to be awaited.\n */\n promises: Promise<any>[] = [];\n\n /**\n * Wait for all promises to settle\n */\n async wait(): Promise<BroadcasterResult> {\n if (this.promises.length > 0) {\n await Promise.all(this.promises);\n }\n\n return this;\n }\n}\n"],"sourceRoot":".."}
@@ -30,8 +30,8 @@ var DbQueryResultCache = /** @class */ (function () {
30
30
  * Creates a connection with given cache provider.
31
31
  */
32
32
  DbQueryResultCache.prototype.connect = function () {
33
- return tslib_1.__awaiter(this, void 0, void 0, function () {
34
- return tslib_1.__generator(this, function (_a) {
33
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
34
+ return (0, tslib_1.__generator)(this, function (_a) {
35
35
  return [2 /*return*/];
36
36
  });
37
37
  });
@@ -40,8 +40,8 @@ var DbQueryResultCache = /** @class */ (function () {
40
40
  * Disconnects with given cache provider.
41
41
  */
42
42
  DbQueryResultCache.prototype.disconnect = function () {
43
- return tslib_1.__awaiter(this, void 0, void 0, function () {
44
- return tslib_1.__generator(this, function (_a) {
43
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
44
+ return (0, tslib_1.__generator)(this, function (_a) {
45
45
  return [2 /*return*/];
46
46
  });
47
47
  });
@@ -50,9 +50,9 @@ var DbQueryResultCache = /** @class */ (function () {
50
50
  * Creates table for storing cache if it does not exist yet.
51
51
  */
52
52
  DbQueryResultCache.prototype.synchronize = function (queryRunner) {
53
- return tslib_1.__awaiter(this, void 0, void 0, function () {
53
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
54
54
  var driver, tableExist;
55
- return tslib_1.__generator(this, function (_a) {
55
+ return (0, tslib_1.__generator)(this, function (_a) {
56
56
  switch (_a.label) {
57
57
  case 0:
58
58
  queryRunner = this.getQueryRunner(queryRunner);
@@ -153,9 +153,9 @@ var DbQueryResultCache = /** @class */ (function () {
153
153
  * Stores given query result in the cache.
154
154
  */
155
155
  DbQueryResultCache.prototype.storeInCache = function (options, savedCache, queryRunner) {
156
- return tslib_1.__awaiter(this, void 0, void 0, function () {
156
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
157
157
  var insertedValues, qb, qb;
158
- return tslib_1.__generator(this, function (_a) {
158
+ return (0, tslib_1.__generator)(this, function (_a) {
159
159
  switch (_a.label) {
160
160
  case 0:
161
161
  queryRunner = this.getQueryRunner(queryRunner);
@@ -214,8 +214,8 @@ var DbQueryResultCache = /** @class */ (function () {
214
214
  * Clears everything stored in the cache.
215
215
  */
216
216
  DbQueryResultCache.prototype.clear = function (queryRunner) {
217
- return tslib_1.__awaiter(this, void 0, void 0, function () {
218
- return tslib_1.__generator(this, function (_a) {
217
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
218
+ return (0, tslib_1.__generator)(this, function (_a) {
219
219
  return [2 /*return*/, this.getQueryRunner(queryRunner).clearTable(this.queryResultCacheTable)];
220
220
  });
221
221
  });
@@ -224,9 +224,9 @@ var DbQueryResultCache = /** @class */ (function () {
224
224
  * Removes all cached results by given identifiers from cache.
225
225
  */
226
226
  DbQueryResultCache.prototype.remove = function (identifiers, queryRunner) {
227
- return tslib_1.__awaiter(this, void 0, void 0, function () {
227
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
228
228
  var _this = this;
229
- return tslib_1.__generator(this, function (_a) {
229
+ return (0, tslib_1.__generator)(this, function (_a) {
230
230
  switch (_a.label) {
231
231
  case 0: return [4 /*yield*/, Promise.all(identifiers.map(function (identifier) {
232
232
  var qb = _this.getQueryRunner(queryRunner).manager.createQueryBuilder();
@@ -23,9 +23,9 @@ var RedisQueryResultCache = /** @class */ (function () {
23
23
  * Creates a connection with given cache provider.
24
24
  */
25
25
  RedisQueryResultCache.prototype.connect = function () {
26
- return tslib_1.__awaiter(this, void 0, void 0, function () {
26
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
27
27
  var cacheOptions;
28
- return tslib_1.__generator(this, function (_a) {
28
+ return (0, tslib_1.__generator)(this, function (_a) {
29
29
  cacheOptions = this.connection.options.cache;
30
30
  if (this.clientType === "redis") {
31
31
  if (cacheOptions && cacheOptions.options) {
@@ -70,9 +70,9 @@ var RedisQueryResultCache = /** @class */ (function () {
70
70
  * Disconnects the connection
71
71
  */
72
72
  RedisQueryResultCache.prototype.disconnect = function () {
73
- return tslib_1.__awaiter(this, void 0, void 0, function () {
73
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
74
74
  var _this = this;
75
- return tslib_1.__generator(this, function (_a) {
75
+ return (0, tslib_1.__generator)(this, function (_a) {
76
76
  return [2 /*return*/, new Promise(function (ok, fail) {
77
77
  _this.client.quit(function (err, result) {
78
78
  if (err)
@@ -88,8 +88,8 @@ var RedisQueryResultCache = /** @class */ (function () {
88
88
  * Creates table for storing cache if it does not exist yet.
89
89
  */
90
90
  RedisQueryResultCache.prototype.synchronize = function (queryRunner) {
91
- return tslib_1.__awaiter(this, void 0, void 0, function () {
92
- return tslib_1.__generator(this, function (_a) {
91
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
92
+ return (0, tslib_1.__generator)(this, function (_a) {
93
93
  return [2 /*return*/];
94
94
  });
95
95
  });
@@ -131,9 +131,9 @@ var RedisQueryResultCache = /** @class */ (function () {
131
131
  * Stores given query result in the cache.
132
132
  */
133
133
  RedisQueryResultCache.prototype.storeInCache = function (options, savedCache, queryRunner) {
134
- return tslib_1.__awaiter(this, void 0, void 0, function () {
134
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
135
135
  var _this = this;
136
- return tslib_1.__generator(this, function (_a) {
136
+ return (0, tslib_1.__generator)(this, function (_a) {
137
137
  return [2 /*return*/, new Promise(function (ok, fail) {
138
138
  if (options.identifier) {
139
139
  _this.client.set(options.identifier, JSON.stringify(options), "PX", options.duration, function (err, result) {
@@ -157,9 +157,9 @@ var RedisQueryResultCache = /** @class */ (function () {
157
157
  * Clears everything stored in the cache.
158
158
  */
159
159
  RedisQueryResultCache.prototype.clear = function (queryRunner) {
160
- return tslib_1.__awaiter(this, void 0, void 0, function () {
160
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
161
161
  var _this = this;
162
- return tslib_1.__generator(this, function (_a) {
162
+ return (0, tslib_1.__generator)(this, function (_a) {
163
163
  return [2 /*return*/, new Promise(function (ok, fail) {
164
164
  _this.client.flushdb(function (err, result) {
165
165
  if (err)
@@ -174,9 +174,9 @@ var RedisQueryResultCache = /** @class */ (function () {
174
174
  * Removes all cached results by given identifiers from cache.
175
175
  */
176
176
  RedisQueryResultCache.prototype.remove = function (identifiers, queryRunner) {
177
- return tslib_1.__awaiter(this, void 0, void 0, function () {
177
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
178
178
  var _this = this;
179
- return tslib_1.__generator(this, function (_a) {
179
+ return (0, tslib_1.__generator)(this, function (_a) {
180
180
  switch (_a.label) {
181
181
  case 0: return [4 /*yield*/, Promise.all(identifiers.map(function (identifier) {
182
182
  return _this.deleteKey(identifier);
package/cli.js CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  var tslib_1 = require("tslib");
5
5
  require("reflect-metadata");
6
- var yargs_1 = tslib_1.__importDefault(require("yargs"));
6
+ var yargs_1 = (0, tslib_1.__importDefault)(require("yargs"));
7
7
  var SchemaSyncCommand_1 = require("./commands/SchemaSyncCommand");
8
8
  var SchemaDropCommand_1 = require("./commands/SchemaDropCommand");
9
9
  var QueryCommand_1 = require("./commands/QueryCommand");
@@ -41,10 +41,5 @@ yargs_1.default
41
41
  .help("h")
42
42
  .alias("h", "help")
43
43
  .argv;
44
- require("yargonaut")
45
- .style("blue")
46
- .style("yellow", "required")
47
- .helpStyle("green")
48
- .errorsStyle("red");
49
44
 
50
45
  //# sourceMappingURL=cli.js.map
package/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/cli.ts"],"names":[],"mappings":";;;;AACA,4BAA0B;AAC1B,wDAA0B;AAC1B,kEAA+D;AAC/D,kEAA+D;AAC/D,wDAAqD;AACrD,sEAAmE;AACnE,4EAAyE;AACzE,sEAAmE;AACnE,4EAAyE;AACzE,wEAAqE;AACrE,8EAA2E;AAC3E,gEAA6D;AAC7D,gFAA6E;AAC7E,4DAAyD;AACzD,sDAAmD;AACnD,kEAA+D;AAE/D,eAAK;KACA,KAAK,CAAC,+BAA+B,CAAC;KACtC,OAAO,CAAC,IAAI,qCAAiB,EAAE,CAAC;KAChC,OAAO,CAAC,IAAI,mCAAgB,EAAE,CAAC;KAC/B,OAAO,CAAC,IAAI,qCAAiB,EAAE,CAAC;KAChC,OAAO,CAAC,IAAI,2BAAY,EAAE,CAAC;KAC3B,OAAO,CAAC,IAAI,yCAAmB,EAAE,CAAC;KAClC,OAAO,CAAC,IAAI,iDAAuB,EAAE,CAAC;KACtC,OAAO,CAAC,IAAI,+CAAsB,EAAE,CAAC;KACrC,OAAO,CAAC,IAAI,mDAAwB,EAAE,CAAC;KACvC,OAAO,CAAC,IAAI,yCAAmB,EAAE,CAAC;KAClC,OAAO,CAAC,IAAI,2CAAoB,EAAE,CAAC;KACnC,OAAO,CAAC,IAAI,+CAAsB,EAAE,CAAC;KACrC,OAAO,CAAC,IAAI,+BAAc,EAAE,CAAC;KAC7B,OAAO,CAAC,IAAI,qCAAiB,EAAE,CAAC;KAChC,OAAO,CAAC,IAAI,yBAAW,EAAE,CAAC;KAC1B,iBAAiB,EAAE;KACnB,aAAa,CAAC,CAAC,CAAC;KAChB,MAAM,EAAE;KACR,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC;KACrB,IAAI,CAAC,GAAG,CAAC;KACT,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC;KAClB,IAAI,CAAC;AAEV,OAAO,CAAC,WAAW,CAAC;KACf,KAAK,CAAC,MAAM,CAAC;KACb,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC;KAC3B,SAAS,CAAC,OAAO,CAAC;KAClB,WAAW,CAAC,KAAK,CAAC,CAAC","file":"cli.js","sourcesContent":["#!/usr/bin/env node\nimport \"reflect-metadata\";\nimport yargs from \"yargs\";\nimport {SchemaSyncCommand} from \"./commands/SchemaSyncCommand\";\nimport {SchemaDropCommand} from \"./commands/SchemaDropCommand\";\nimport {QueryCommand} from \"./commands/QueryCommand\";\nimport {EntityCreateCommand} from \"./commands/EntityCreateCommand\";\nimport {MigrationCreateCommand} from \"./commands/MigrationCreateCommand\";\nimport {MigrationRunCommand} from \"./commands/MigrationRunCommand\";\nimport {MigrationRevertCommand} from \"./commands/MigrationRevertCommand\";\nimport {MigrationShowCommand} from \"./commands/MigrationShowCommand\";\nimport {SubscriberCreateCommand} from \"./commands/SubscriberCreateCommand\";\nimport {SchemaLogCommand} from \"./commands/SchemaLogCommand\";\nimport {MigrationGenerateCommand} from \"./commands/MigrationGenerateCommand\";\nimport {VersionCommand} from \"./commands/VersionCommand\";\nimport {InitCommand} from \"./commands/InitCommand\";\nimport {CacheClearCommand} from \"./commands/CacheClearCommand\";\n\nyargs\n .usage(\"Usage: $0 <command> [options]\")\n .command(new SchemaSyncCommand())\n .command(new SchemaLogCommand())\n .command(new SchemaDropCommand())\n .command(new QueryCommand())\n .command(new EntityCreateCommand())\n .command(new SubscriberCreateCommand())\n .command(new MigrationCreateCommand())\n .command(new MigrationGenerateCommand())\n .command(new MigrationRunCommand())\n .command(new MigrationShowCommand())\n .command(new MigrationRevertCommand())\n .command(new VersionCommand())\n .command(new CacheClearCommand())\n .command(new InitCommand())\n .recommendCommands()\n .demandCommand(1)\n .strict()\n .alias(\"v\", \"version\")\n .help(\"h\")\n .alias(\"h\", \"help\")\n .argv;\n\nrequire(\"yargonaut\")\n .style(\"blue\")\n .style(\"yellow\", \"required\")\n .helpStyle(\"green\")\n .errorsStyle(\"red\");\n"],"sourceRoot":"."}
1
+ {"version":3,"sources":["../../src/cli.ts"],"names":[],"mappings":";;;;AACA,4BAA0B;AAC1B,6DAA0B;AAC1B,kEAA+D;AAC/D,kEAA+D;AAC/D,wDAAqD;AACrD,sEAAmE;AACnE,4EAAyE;AACzE,sEAAmE;AACnE,4EAAyE;AACzE,wEAAqE;AACrE,8EAA2E;AAC3E,gEAA6D;AAC7D,gFAA6E;AAC7E,4DAAyD;AACzD,sDAAmD;AACnD,kEAA+D;AAE/D,eAAK;KACA,KAAK,CAAC,+BAA+B,CAAC;KACtC,OAAO,CAAC,IAAI,qCAAiB,EAAE,CAAC;KAChC,OAAO,CAAC,IAAI,mCAAgB,EAAE,CAAC;KAC/B,OAAO,CAAC,IAAI,qCAAiB,EAAE,CAAC;KAChC,OAAO,CAAC,IAAI,2BAAY,EAAE,CAAC;KAC3B,OAAO,CAAC,IAAI,yCAAmB,EAAE,CAAC;KAClC,OAAO,CAAC,IAAI,iDAAuB,EAAE,CAAC;KACtC,OAAO,CAAC,IAAI,+CAAsB,EAAE,CAAC;KACrC,OAAO,CAAC,IAAI,mDAAwB,EAAE,CAAC;KACvC,OAAO,CAAC,IAAI,yCAAmB,EAAE,CAAC;KAClC,OAAO,CAAC,IAAI,2CAAoB,EAAE,CAAC;KACnC,OAAO,CAAC,IAAI,+CAAsB,EAAE,CAAC;KACrC,OAAO,CAAC,IAAI,+BAAc,EAAE,CAAC;KAC7B,OAAO,CAAC,IAAI,qCAAiB,EAAE,CAAC;KAChC,OAAO,CAAC,IAAI,yBAAW,EAAE,CAAC;KAC1B,iBAAiB,EAAE;KACnB,aAAa,CAAC,CAAC,CAAC;KAChB,MAAM,EAAE;KACR,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC;KACrB,IAAI,CAAC,GAAG,CAAC;KACT,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC;KAClB,IAAI,CAAC","file":"cli.js","sourcesContent":["#!/usr/bin/env node\nimport \"reflect-metadata\";\nimport yargs from \"yargs\";\nimport {SchemaSyncCommand} from \"./commands/SchemaSyncCommand\";\nimport {SchemaDropCommand} from \"./commands/SchemaDropCommand\";\nimport {QueryCommand} from \"./commands/QueryCommand\";\nimport {EntityCreateCommand} from \"./commands/EntityCreateCommand\";\nimport {MigrationCreateCommand} from \"./commands/MigrationCreateCommand\";\nimport {MigrationRunCommand} from \"./commands/MigrationRunCommand\";\nimport {MigrationRevertCommand} from \"./commands/MigrationRevertCommand\";\nimport {MigrationShowCommand} from \"./commands/MigrationShowCommand\";\nimport {SubscriberCreateCommand} from \"./commands/SubscriberCreateCommand\";\nimport {SchemaLogCommand} from \"./commands/SchemaLogCommand\";\nimport {MigrationGenerateCommand} from \"./commands/MigrationGenerateCommand\";\nimport {VersionCommand} from \"./commands/VersionCommand\";\nimport {InitCommand} from \"./commands/InitCommand\";\nimport {CacheClearCommand} from \"./commands/CacheClearCommand\";\n\nyargs\n .usage(\"Usage: $0 <command> [options]\")\n .command(new SchemaSyncCommand())\n .command(new SchemaLogCommand())\n .command(new SchemaDropCommand())\n .command(new QueryCommand())\n .command(new EntityCreateCommand())\n .command(new SubscriberCreateCommand())\n .command(new MigrationCreateCommand())\n .command(new MigrationGenerateCommand())\n .command(new MigrationRunCommand())\n .command(new MigrationShowCommand())\n .command(new MigrationRevertCommand())\n .command(new VersionCommand())\n .command(new CacheClearCommand())\n .command(new InitCommand())\n .recommendCommands()\n .demandCommand(1)\n .strict()\n .alias(\"v\", \"version\")\n .help(\"h\")\n .alias(\"h\", \"help\")\n .argv;\n"],"sourceRoot":"."}
@@ -4,7 +4,7 @@ exports.CacheClearCommand = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var globals_1 = require("../globals");
6
6
  var ConnectionOptionsReader_1 = require("../connection/ConnectionOptionsReader");
7
- var chalk_1 = tslib_1.__importDefault(require("chalk"));
7
+ var chalk_1 = (0, tslib_1.__importDefault)(require("chalk"));
8
8
  /**
9
9
  * Clear cache command.
10
10
  */
@@ -27,9 +27,9 @@ var CacheClearCommand = /** @class */ (function () {
27
27
  });
28
28
  };
29
29
  CacheClearCommand.prototype.handler = function (args) {
30
- return tslib_1.__awaiter(this, void 0, void 0, function () {
30
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
31
31
  var connection, connectionOptionsReader, connectionOptions, err_1;
32
- return tslib_1.__generator(this, function (_a) {
32
+ return (0, tslib_1.__generator)(this, function (_a) {
33
33
  switch (_a.label) {
34
34
  case 0:
35
35
  connection = undefined;
@@ -50,7 +50,7 @@ var CacheClearCommand = /** @class */ (function () {
50
50
  dropSchema: false,
51
51
  logging: ["schema"]
52
52
  });
53
- return [4 /*yield*/, globals_1.createConnection(connectionOptions)];
53
+ return [4 /*yield*/, (0, globals_1.createConnection)(connectionOptions)];
54
54
  case 3:
55
55
  connection = _a.sent();
56
56
  if (!connection.queryResultCache) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commands/CacheClearCommand.ts"],"names":[],"mappings":";;;;AAAA,sCAA4C;AAC5C,iFAA8E;AAG9E,wDAA0B;AAE1B;;GAEG;AACH;IAAA;QAEI,YAAO,GAAG,aAAa,CAAC;QACxB,aAAQ,GAAG,+CAA+C,CAAC;IAqD/D,CAAC;IAnDG,mCAAO,GAAP,UAAQ,IAAgB;QACpB,OAAO,IAAI;aACN,MAAM,CAAC,YAAY,EAAE;YAClB,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,8CAA8C;SAC3D,CAAC;aACD,MAAM,CAAC,QAAQ,EAAE;YACd,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,iDAAiD;SAC9D,CAAC,CAAC;IACX,CAAC;IAEK,mCAAO,GAAb,UAAc,IAAqB;;;;;;wBAE3B,UAAU,GAAyB,SAAS,CAAC;;;;wBAEvC,uBAAuB,GAAG,IAAI,iDAAuB,CAAC;4BACxD,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE;4BACnB,UAAU,EAAE,IAAI,CAAC,MAAa;yBACjC,CAAC,CAAC;wBACuB,qBAAM,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAiB,CAAC,EAAA;;wBAA7E,iBAAiB,GAAG,SAAyD;wBACnF,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE;4BAC7B,WAAW,EAAE,EAAE;4BACf,WAAW,EAAE,KAAK;4BAClB,aAAa,EAAE,KAAK;4BACpB,UAAU,EAAE,KAAK;4BACjB,OAAO,EAAE,CAAC,QAAQ,CAAC;yBACtB,CAAC,CAAC;wBACU,qBAAM,0BAAgB,CAAC,iBAAiB,CAAC,EAAA;;wBAAtD,UAAU,GAAG,SAAyC,CAAC;wBAEvD,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE;4BAC9B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC,CAAC;4BAC5G,sBAAO;yBACV;wBAED,qBAAM,UAAU,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAA;;wBAAzC,SAAyC,CAAC;wBAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;6BAEvD,UAAU,EAAV,wBAAU;wBAAE,qBAAM,UAAU,CAAC,KAAK,EAAE,EAAA;;wBAAxB,SAAwB,CAAC;;;;;6BAGrC,UAAU,EAAV,wBAAU;wBAAE,qBAAO,UAAyB,CAAC,KAAK,EAAE,EAAA;;wBAAxC,SAAwC,CAAC;;;wBAEzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;wBAC5D,OAAO,CAAC,KAAK,CAAC,KAAG,CAAC,CAAC;wBACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;;;;;KAEvB;IAEL,wBAAC;AAAD,CAxDA,AAwDC,IAAA;AAxDY,8CAAiB","file":"CacheClearCommand.js","sourcesContent":["import {createConnection} from \"../globals\";\nimport {ConnectionOptionsReader} from \"../connection/ConnectionOptionsReader\";\nimport {Connection} from \"../connection/Connection\";\nimport * as yargs from \"yargs\";\nimport chalk from \"chalk\";\n\n/**\n * Clear cache command.\n */\nexport class CacheClearCommand implements yargs.CommandModule {\n\n command = \"cache:clear\";\n describe = \"Clears all data stored in query runner cache.\";\n\n builder(args: yargs.Argv) {\n return args\n .option(\"connection\", {\n alias: \"c\",\n default: \"default\",\n describe: \"Name of the connection on which run a query.\"\n })\n .option(\"config\", {\n alias: \"f\",\n default: \"ormconfig\",\n describe: \"Name of the file with connection configuration.\"\n });\n }\n\n async handler(args: yargs.Arguments) {\n\n let connection: Connection|undefined = undefined;\n try {\n const connectionOptionsReader = new ConnectionOptionsReader({\n root: process.cwd(),\n configName: args.config as any\n });\n const connectionOptions = await connectionOptionsReader.get(args.connection as any);\n Object.assign(connectionOptions, {\n subscribers: [],\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: [\"schema\"]\n });\n connection = await createConnection(connectionOptions);\n\n if (!connection.queryResultCache) {\n console.log(chalk.black.bgRed(\"Cache is not enabled. To use cache enable it in connection configuration.\"));\n return;\n }\n\n await connection.queryResultCache.clear();\n console.log(chalk.green(\"Cache was successfully cleared\"));\n\n if (connection) await connection.close();\n\n } catch (err) {\n if (connection) await (connection as Connection).close();\n\n console.log(chalk.black.bgRed(\"Error during cache clear:\"));\n console.error(err);\n process.exit(1);\n }\n }\n\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/commands/CacheClearCommand.ts"],"names":[],"mappings":";;;;AAAA,sCAA4C;AAC5C,iFAA8E;AAG9E,6DAA0B;AAE1B;;GAEG;AACH;IAAA;QAEI,YAAO,GAAG,aAAa,CAAC;QACxB,aAAQ,GAAG,+CAA+C,CAAC;IAqD/D,CAAC;IAnDG,mCAAO,GAAP,UAAQ,IAAgB;QACpB,OAAO,IAAI;aACN,MAAM,CAAC,YAAY,EAAE;YAClB,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,8CAA8C;SAC3D,CAAC;aACD,MAAM,CAAC,QAAQ,EAAE;YACd,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,iDAAiD;SAC9D,CAAC,CAAC;IACX,CAAC;IAEK,mCAAO,GAAb,UAAc,IAAqB;;;;;;wBAE3B,UAAU,GAAyB,SAAS,CAAC;;;;wBAEvC,uBAAuB,GAAG,IAAI,iDAAuB,CAAC;4BACxD,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE;4BACnB,UAAU,EAAE,IAAI,CAAC,MAAa;yBACjC,CAAC,CAAC;wBACuB,qBAAM,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,UAAiB,CAAC,EAAA;;wBAA7E,iBAAiB,GAAG,SAAyD;wBACnF,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE;4BAC7B,WAAW,EAAE,EAAE;4BACf,WAAW,EAAE,KAAK;4BAClB,aAAa,EAAE,KAAK;4BACpB,UAAU,EAAE,KAAK;4BACjB,OAAO,EAAE,CAAC,QAAQ,CAAC;yBACtB,CAAC,CAAC;wBACU,qBAAM,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,EAAA;;wBAAtD,UAAU,GAAG,SAAyC,CAAC;wBAEvD,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE;4BAC9B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC,CAAC;4BAC5G,sBAAO;yBACV;wBAED,qBAAM,UAAU,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAA;;wBAAzC,SAAyC,CAAC;wBAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;6BAEvD,UAAU,EAAV,wBAAU;wBAAE,qBAAM,UAAU,CAAC,KAAK,EAAE,EAAA;;wBAAxB,SAAwB,CAAC;;;;;6BAGrC,UAAU,EAAV,wBAAU;wBAAE,qBAAO,UAAyB,CAAC,KAAK,EAAE,EAAA;;wBAAxC,SAAwC,CAAC;;;wBAEzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;wBAC5D,OAAO,CAAC,KAAK,CAAC,KAAG,CAAC,CAAC;wBACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;;;;;KAEvB;IAEL,wBAAC;AAAD,CAxDA,AAwDC,IAAA;AAxDY,8CAAiB","file":"CacheClearCommand.js","sourcesContent":["import {createConnection} from \"../globals\";\nimport {ConnectionOptionsReader} from \"../connection/ConnectionOptionsReader\";\nimport {Connection} from \"../connection/Connection\";\nimport * as yargs from \"yargs\";\nimport chalk from \"chalk\";\n\n/**\n * Clear cache command.\n */\nexport class CacheClearCommand implements yargs.CommandModule {\n\n command = \"cache:clear\";\n describe = \"Clears all data stored in query runner cache.\";\n\n builder(args: yargs.Argv) {\n return args\n .option(\"connection\", {\n alias: \"c\",\n default: \"default\",\n describe: \"Name of the connection on which run a query.\"\n })\n .option(\"config\", {\n alias: \"f\",\n default: \"ormconfig\",\n describe: \"Name of the file with connection configuration.\"\n });\n }\n\n async handler(args: yargs.Arguments) {\n\n let connection: Connection|undefined = undefined;\n try {\n const connectionOptionsReader = new ConnectionOptionsReader({\n root: process.cwd(),\n configName: args.config as any\n });\n const connectionOptions = await connectionOptionsReader.get(args.connection as any);\n Object.assign(connectionOptions, {\n subscribers: [],\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: [\"schema\"]\n });\n connection = await createConnection(connectionOptions);\n\n if (!connection.queryResultCache) {\n console.log(chalk.black.bgRed(\"Cache is not enabled. To use cache enable it in connection configuration.\"));\n return;\n }\n\n await connection.queryResultCache.clear();\n console.log(chalk.green(\"Cache was successfully cleared\"));\n\n if (connection) await connection.close();\n\n } catch (err) {\n if (connection) await (connection as Connection).close();\n\n console.log(chalk.black.bgRed(\"Error during cache clear:\"));\n console.error(err);\n process.exit(1);\n }\n }\n\n}\n"],"sourceRoot":".."}
@@ -2,9 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CommandUtils = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var fs = tslib_1.__importStar(require("fs"));
6
- var path = tslib_1.__importStar(require("path"));
7
- var mkdirp_1 = tslib_1.__importDefault(require("mkdirp"));
5
+ var fs = (0, tslib_1.__importStar)(require("fs"));
6
+ var path = (0, tslib_1.__importStar)(require("path"));
7
+ var mkdirp_1 = (0, tslib_1.__importDefault)(require("mkdirp"));
8
8
  /**
9
9
  * Command line utils functions.
10
10
  */
@@ -15,15 +15,15 @@ var CommandUtils = /** @class */ (function () {
15
15
  * Creates directories recursively.
16
16
  */
17
17
  CommandUtils.createDirectories = function (directory) {
18
- return mkdirp_1.default(directory);
18
+ return (0, mkdirp_1.default)(directory);
19
19
  };
20
20
  /**
21
21
  * Creates a file with the given content in the given path.
22
22
  */
23
23
  CommandUtils.createFile = function (filePath, content, override) {
24
24
  if (override === void 0) { override = true; }
25
- return tslib_1.__awaiter(this, void 0, void 0, function () {
26
- return tslib_1.__generator(this, function (_a) {
25
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
26
+ return (0, tslib_1.__generator)(this, function (_a) {
27
27
  switch (_a.label) {
28
28
  case 0: return [4 /*yield*/, CommandUtils.createDirectories(path.dirname(filePath))];
29
29
  case 1:
@@ -41,8 +41,8 @@ var CommandUtils = /** @class */ (function () {
41
41
  * Reads everything from a given file and returns its content as a string.
42
42
  */
43
43
  CommandUtils.readFile = function (filePath) {
44
- return tslib_1.__awaiter(this, void 0, void 0, function () {
45
- return tslib_1.__generator(this, function (_a) {
44
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
45
+ return (0, tslib_1.__generator)(this, function (_a) {
46
46
  return [2 /*return*/, new Promise(function (ok, fail) {
47
47
  fs.readFile(filePath, function (err, data) { return err ? fail(err) : ok(data.toString()); });
48
48
  })];
@@ -50,8 +50,8 @@ var CommandUtils = /** @class */ (function () {
50
50
  });
51
51
  };
52
52
  CommandUtils.fileExists = function (filePath) {
53
- return tslib_1.__awaiter(this, void 0, void 0, function () {
54
- return tslib_1.__generator(this, function (_a) {
53
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
54
+ return (0, tslib_1.__generator)(this, function (_a) {
55
55
  return [2 /*return*/, fs.existsSync(filePath)];
56
56
  });
57
57
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commands/CommandUtils.ts"],"names":[],"mappings":";;;;AAAA,6CAAyB;AACzB,iDAA6B;AAC7B,0DAA4B;AAE5B;;GAEG;AACH;IAAA;IAmCA,CAAC;IAjCG;;OAEG;IACI,8BAAiB,GAAxB,UAAyB,SAAiB;QACtC,OAAO,gBAAM,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACU,uBAAU,GAAvB,UAAwB,QAAgB,EAAE,OAAe,EAAE,QAAwB;QAAxB,yBAAA,EAAA,eAAwB;;;;4BAC/E,qBAAM,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAA;;wBAA5D,SAA4D,CAAC;wBAC7D,sBAAO,IAAI,OAAO,CAAO,UAAC,EAAE,EAAE,IAAI;gCAC9B,IAAI,QAAQ,KAAK,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;oCAC7C,OAAO,EAAE,EAAE,CAAC;gCAEhB,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAtB,CAAsB,CAAC,CAAC;4BACnE,CAAC,CAAC,EAAC;;;;KACN;IAED;;OAEG;IACU,qBAAQ,GAArB,UAAsB,QAAgB;;;gBAClC,sBAAO,IAAI,OAAO,CAAS,UAAC,EAAE,EAAE,IAAI;wBAChC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAC,GAAG,EAAE,IAAI,IAAK,OAAA,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAArC,CAAqC,CAAC,CAAC;oBAChF,CAAC,CAAC,EAAC;;;KACN;IAGY,uBAAU,GAAvB,UAAwB,QAAgB;;;gBACpC,sBAAO,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC;;;KAClC;IACL,mBAAC;AAAD,CAnCA,AAmCC,IAAA;AAnCY,oCAAY","file":"CommandUtils.js","sourcesContent":["import * as fs from \"fs\";\nimport * as path from \"path\";\nimport mkdirp from \"mkdirp\";\n\n/**\n * Command line utils functions.\n */\nexport class CommandUtils {\n\n /**\n * Creates directories recursively.\n */\n static createDirectories(directory: string) {\n return mkdirp(directory);\n }\n\n /**\n * Creates a file with the given content in the given path.\n */\n static async createFile(filePath: string, content: string, override: boolean = true): Promise<void> {\n await CommandUtils.createDirectories(path.dirname(filePath));\n return new Promise<void>((ok, fail) => {\n if (override === false && fs.existsSync(filePath))\n return ok();\n\n fs.writeFile(filePath, content, err => err ? fail(err) : ok());\n });\n }\n\n /**\n * Reads everything from a given file and returns its content as a string.\n */\n static async readFile(filePath: string): Promise<string> {\n return new Promise<string>((ok, fail) => {\n fs.readFile(filePath, (err, data) => err ? fail(err) : ok(data.toString()));\n });\n }\n\n\n static async fileExists(filePath: string) {\n return fs.existsSync(filePath);\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/commands/CommandUtils.ts"],"names":[],"mappings":";;;;AAAA,kDAAyB;AACzB,sDAA6B;AAC7B,+DAA4B;AAE5B;;GAEG;AACH;IAAA;IAmCA,CAAC;IAjCG;;OAEG;IACI,8BAAiB,GAAxB,UAAyB,SAAiB;QACtC,OAAO,IAAA,gBAAM,EAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACU,uBAAU,GAAvB,UAAwB,QAAgB,EAAE,OAAe,EAAE,QAAwB;QAAxB,yBAAA,EAAA,eAAwB;;;;4BAC/E,qBAAM,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAA;;wBAA5D,SAA4D,CAAC;wBAC7D,sBAAO,IAAI,OAAO,CAAO,UAAC,EAAE,EAAE,IAAI;gCAC9B,IAAI,QAAQ,KAAK,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;oCAC7C,OAAO,EAAE,EAAE,CAAC;gCAEhB,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAtB,CAAsB,CAAC,CAAC;4BACnE,CAAC,CAAC,EAAC;;;;KACN;IAED;;OAEG;IACU,qBAAQ,GAArB,UAAsB,QAAgB;;;gBAClC,sBAAO,IAAI,OAAO,CAAS,UAAC,EAAE,EAAE,IAAI;wBAChC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAC,GAAG,EAAE,IAAI,IAAK,OAAA,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAArC,CAAqC,CAAC,CAAC;oBAChF,CAAC,CAAC,EAAC;;;KACN;IAGY,uBAAU,GAAvB,UAAwB,QAAgB;;;gBACpC,sBAAO,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC;;;KAClC;IACL,mBAAC;AAAD,CAnCA,AAmCC,IAAA;AAnCY,oCAAY","file":"CommandUtils.js","sourcesContent":["import * as fs from \"fs\";\nimport * as path from \"path\";\nimport mkdirp from \"mkdirp\";\n\n/**\n * Command line utils functions.\n */\nexport class CommandUtils {\n\n /**\n * Creates directories recursively.\n */\n static createDirectories(directory: string) {\n return mkdirp(directory);\n }\n\n /**\n * Creates a file with the given content in the given path.\n */\n static async createFile(filePath: string, content: string, override: boolean = true): Promise<void> {\n await CommandUtils.createDirectories(path.dirname(filePath));\n return new Promise<void>((ok, fail) => {\n if (override === false && fs.existsSync(filePath))\n return ok();\n\n fs.writeFile(filePath, content, err => err ? fail(err) : ok());\n });\n }\n\n /**\n * Reads everything from a given file and returns its content as a string.\n */\n static async readFile(filePath: string): Promise<string> {\n return new Promise<string>((ok, fail) => {\n fs.readFile(filePath, (err, data) => err ? fail(err) : ok(data.toString()));\n });\n }\n\n\n static async fileExists(filePath: string) {\n return fs.existsSync(filePath);\n }\n}\n"],"sourceRoot":".."}
@@ -4,7 +4,7 @@ exports.EntityCreateCommand = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var ConnectionOptionsReader_1 = require("../connection/ConnectionOptionsReader");
6
6
  var CommandUtils_1 = require("./CommandUtils");
7
- var chalk_1 = tslib_1.__importDefault(require("chalk"));
7
+ var chalk_1 = (0, tslib_1.__importDefault)(require("chalk"));
8
8
  /**
9
9
  * Generates a new entity.
10
10
  */
@@ -36,9 +36,9 @@ var EntityCreateCommand = /** @class */ (function () {
36
36
  });
37
37
  };
38
38
  EntityCreateCommand.prototype.handler = function (args) {
39
- return tslib_1.__awaiter(this, void 0, void 0, function () {
39
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
40
40
  var fileContent, filename, directory, connectionOptionsReader, connectionOptions, err_1, path, fileExists, err_2;
41
- return tslib_1.__generator(this, function (_a) {
41
+ return (0, tslib_1.__generator)(this, function (_a) {
42
42
  switch (_a.label) {
43
43
  case 0:
44
44
  _a.trys.push([0, 7, , 8]);