typeorm 0.3.21-dev.d106eed → 0.3.21-dev.d52ecf6

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 (354) hide show
  1. package/README.md +10 -20
  2. package/browser/cache/QueryResultCache.d.ts +4 -2
  3. package/browser/cache/QueryResultCache.js.map +1 -1
  4. package/browser/connection/ConnectionOptionsReader.d.ts +4 -4
  5. package/browser/data-source/DataSource.d.ts +2 -0
  6. package/browser/data-source/DataSource.js +2 -0
  7. package/browser/data-source/DataSource.js.map +1 -1
  8. package/browser/decorator/relations/OneToOne.d.ts +4 -4
  9. package/browser/decorator/relations/OneToOne.js +2 -2
  10. package/browser/decorator/relations/OneToOne.js.map +1 -1
  11. package/browser/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.d.ts +1 -1
  12. package/browser/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js.map +1 -1
  13. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +0 -1
  14. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +2 -2
  15. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  16. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +4 -0
  17. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  18. package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.d.ts +1 -2
  19. package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -1
  20. package/browser/driver/cockroachdb/CockroachConnectionOptions.d.ts +1 -1
  21. package/browser/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
  22. package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +0 -1
  23. package/browser/driver/cockroachdb/CockroachQueryRunner.js +5 -3
  24. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  25. package/browser/driver/mongodb/MongoConnectionOptions.d.ts +1 -2
  26. package/browser/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  27. package/browser/driver/mongodb/MongoQueryRunner.d.ts +0 -1
  28. package/browser/driver/mongodb/typings.d.ts +0 -8
  29. package/browser/driver/mongodb/typings.js +0 -1
  30. package/browser/driver/mongodb/typings.js.map +1 -1
  31. package/browser/driver/mysql/MysqlConnectionCredentialsOptions.d.ts +1 -1
  32. package/browser/driver/mysql/MysqlConnectionCredentialsOptions.js.map +1 -1
  33. package/browser/driver/mysql/MysqlConnectionOptions.d.ts +1 -1
  34. package/browser/driver/mysql/MysqlConnectionOptions.js.map +1 -1
  35. package/browser/driver/mysql/MysqlQueryRunner.d.ts +0 -1
  36. package/browser/driver/oracle/OracleConnectionCredentialsOptions.d.ts +1 -1
  37. package/browser/driver/oracle/OracleConnectionCredentialsOptions.js.map +1 -1
  38. package/browser/driver/oracle/OracleConnectionOptions.d.ts +1 -1
  39. package/browser/driver/oracle/OracleConnectionOptions.js.map +1 -1
  40. package/browser/driver/oracle/OracleQueryRunner.d.ts +0 -1
  41. package/browser/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +1 -2
  42. package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
  43. package/browser/driver/postgres/PostgresConnectionOptions.d.ts +1 -1
  44. package/browser/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  45. package/browser/driver/postgres/PostgresQueryRunner.d.ts +0 -1
  46. package/browser/driver/postgres/PostgresQueryRunner.js +5 -1
  47. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  48. package/browser/driver/sap/SapQueryRunner.d.ts +0 -1
  49. package/browser/driver/spanner/SpannerConnectionCredentialsOptions.d.ts +1 -1
  50. package/browser/driver/spanner/SpannerConnectionCredentialsOptions.js.map +1 -1
  51. package/browser/driver/spanner/SpannerConnectionOptions.d.ts +1 -1
  52. package/browser/driver/spanner/SpannerConnectionOptions.js.map +1 -1
  53. package/browser/driver/spanner/SpannerQueryRunner.d.ts +0 -1
  54. package/browser/driver/sqlite/SqliteDriver.js +2 -2
  55. package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
  56. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +0 -1
  57. package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +1 -1
  58. package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -1
  59. package/browser/driver/sqlserver/SqlServerConnectionOptions.d.ts +1 -1
  60. package/browser/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
  61. package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +0 -1
  62. package/browser/entity-manager/EntityManager.d.ts +2 -0
  63. package/browser/entity-manager/EntityManager.js +4 -2
  64. package/browser/entity-manager/EntityManager.js.map +1 -1
  65. package/browser/find-options/FindOptionsOrder.d.ts +0 -1
  66. package/browser/find-options/FindOptionsRelations.d.ts +0 -1
  67. package/browser/find-options/FindOptionsSelect.d.ts +0 -1
  68. package/browser/find-options/FindOptionsWhere.d.ts +0 -1
  69. package/browser/persistence/SubjectExecutor.js +3 -3
  70. package/browser/persistence/SubjectExecutor.js.map +1 -1
  71. package/browser/persistence/{SubjectTopoligicalSorter.d.ts → SubjectTopologicalSorter.d.ts} +1 -1
  72. package/browser/persistence/{SubjectTopoligicalSorter.js → SubjectTopologicalSorter.js} +2 -2
  73. package/browser/persistence/{SubjectTopoligicalSorter.js.map → SubjectTopologicalSorter.js.map} +1 -1
  74. package/browser/platform/BrowserPlatformTools.d.ts +2 -6
  75. package/browser/platform/BrowserPlatformTools.js +2 -8
  76. package/browser/platform/BrowserPlatformTools.js.map +1 -1
  77. package/browser/platform/PlatformTools.d.ts +2 -10
  78. package/browser/platform/PlatformTools.js +28 -36
  79. package/browser/platform/PlatformTools.js.map +1 -1
  80. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  81. package/browser/query-builder/QueryBuilder.js +2 -3
  82. package/browser/query-builder/QueryBuilder.js.map +1 -1
  83. package/browser/query-builder/SelectQueryBuilder.d.ts +0 -1
  84. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +9 -0
  85. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +95 -61
  86. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  87. package/browser/query-runner/QueryRunner.d.ts +0 -1
  88. package/browser/repository/Repository.d.ts +2 -0
  89. package/browser/repository/Repository.js +2 -0
  90. package/browser/repository/Repository.js.map +1 -1
  91. package/browser/schema-builder/RdbmsSchemaBuilder.js +1 -1
  92. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  93. package/browser/util/ImportUtils.js +22 -34
  94. package/browser/util/ImportUtils.js.map +1 -1
  95. package/cache/QueryResultCache.d.ts +4 -2
  96. package/cache/QueryResultCache.js.map +1 -1
  97. package/commands/CacheClearCommand.d.ts +1 -1
  98. package/commands/CacheClearCommand.js +3 -3
  99. package/commands/CacheClearCommand.js.map +1 -1
  100. package/commands/CommandUtils.d.ts +1 -1
  101. package/commands/CommandUtils.js +18 -16
  102. package/commands/CommandUtils.js.map +1 -1
  103. package/commands/EntityCreateCommand.d.ts +1 -1
  104. package/commands/EntityCreateCommand.js +7 -7
  105. package/commands/EntityCreateCommand.js.map +1 -1
  106. package/commands/InitCommand.d.ts +1 -1
  107. package/commands/InitCommand.js +9 -9
  108. package/commands/InitCommand.js.map +1 -1
  109. package/commands/MigrationCreateCommand.d.ts +1 -1
  110. package/commands/MigrationCreateCommand.js +5 -5
  111. package/commands/MigrationCreateCommand.js.map +1 -1
  112. package/commands/MigrationGenerateCommand.d.ts +1 -1
  113. package/commands/MigrationGenerateCommand.js +17 -17
  114. package/commands/MigrationGenerateCommand.js.map +1 -1
  115. package/commands/QueryCommand.d.ts +1 -1
  116. package/commands/QueryCommand.js +10 -7
  117. package/commands/QueryCommand.js.map +1 -1
  118. package/commands/SchemaDropCommand.d.ts +1 -1
  119. package/commands/SchemaDropCommand.js +3 -3
  120. package/commands/SchemaDropCommand.js.map +1 -1
  121. package/commands/SchemaLogCommand.d.ts +1 -1
  122. package/commands/SchemaLogCommand.js +12 -18
  123. package/commands/SchemaLogCommand.js.map +1 -1
  124. package/commands/SchemaSyncCommand.d.ts +1 -1
  125. package/commands/SchemaSyncCommand.js +3 -3
  126. package/commands/SchemaSyncCommand.js.map +1 -1
  127. package/commands/SubscriberCreateCommand.d.ts +1 -1
  128. package/commands/SubscriberCreateCommand.js +5 -5
  129. package/commands/SubscriberCreateCommand.js.map +1 -1
  130. package/connection/ConnectionOptionsReader.d.ts +4 -4
  131. package/container.js +2 -3
  132. package/container.js.map +1 -1
  133. package/data-source/DataSource.d.ts +2 -0
  134. package/data-source/DataSource.js +2 -0
  135. package/data-source/DataSource.js.map +1 -1
  136. package/decorator/Check.js +1 -2
  137. package/decorator/Check.js.map +1 -1
  138. package/decorator/EntityRepository.js +1 -2
  139. package/decorator/EntityRepository.js.map +1 -1
  140. package/decorator/Exclusion.js +1 -2
  141. package/decorator/Exclusion.js.map +1 -1
  142. package/decorator/Generated.js +1 -2
  143. package/decorator/Generated.js.map +1 -1
  144. package/decorator/Index.js +1 -2
  145. package/decorator/Index.js.map +1 -1
  146. package/decorator/Unique.js +1 -2
  147. package/decorator/Unique.js.map +1 -1
  148. package/decorator/columns/Column.js +1 -2
  149. package/decorator/columns/Column.js.map +1 -1
  150. package/decorator/columns/CreateDateColumn.js +1 -2
  151. package/decorator/columns/CreateDateColumn.js.map +1 -1
  152. package/decorator/columns/DeleteDateColumn.js +1 -2
  153. package/decorator/columns/DeleteDateColumn.js.map +1 -1
  154. package/decorator/columns/ObjectIdColumn.js +1 -2
  155. package/decorator/columns/ObjectIdColumn.js.map +1 -1
  156. package/decorator/columns/PrimaryColumn.js +1 -2
  157. package/decorator/columns/PrimaryColumn.js.map +1 -1
  158. package/decorator/columns/PrimaryGeneratedColumn.js +1 -2
  159. package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  160. package/decorator/columns/UpdateDateColumn.js +1 -2
  161. package/decorator/columns/UpdateDateColumn.js.map +1 -1
  162. package/decorator/columns/VersionColumn.js +1 -2
  163. package/decorator/columns/VersionColumn.js.map +1 -1
  164. package/decorator/columns/ViewColumn.js +1 -2
  165. package/decorator/columns/ViewColumn.js.map +1 -1
  166. package/decorator/columns/VirtualColumn.js +1 -2
  167. package/decorator/columns/VirtualColumn.js.map +1 -1
  168. package/decorator/entity/ChildEntity.js +1 -2
  169. package/decorator/entity/ChildEntity.js.map +1 -1
  170. package/decorator/entity/Entity.js +1 -2
  171. package/decorator/entity/Entity.js.map +1 -1
  172. package/decorator/entity/TableInheritance.js +1 -2
  173. package/decorator/entity/TableInheritance.js.map +1 -1
  174. package/decorator/entity-view/ViewEntity.js +1 -2
  175. package/decorator/entity-view/ViewEntity.js.map +1 -1
  176. package/decorator/listeners/AfterInsert.js +1 -2
  177. package/decorator/listeners/AfterInsert.js.map +1 -1
  178. package/decorator/listeners/AfterLoad.js +1 -2
  179. package/decorator/listeners/AfterLoad.js.map +1 -1
  180. package/decorator/listeners/AfterRecover.js +1 -2
  181. package/decorator/listeners/AfterRecover.js.map +1 -1
  182. package/decorator/listeners/AfterRemove.js +1 -2
  183. package/decorator/listeners/AfterRemove.js.map +1 -1
  184. package/decorator/listeners/AfterSoftRemove.js +1 -2
  185. package/decorator/listeners/AfterSoftRemove.js.map +1 -1
  186. package/decorator/listeners/AfterUpdate.js +1 -2
  187. package/decorator/listeners/AfterUpdate.js.map +1 -1
  188. package/decorator/listeners/BeforeInsert.js +1 -2
  189. package/decorator/listeners/BeforeInsert.js.map +1 -1
  190. package/decorator/listeners/BeforeRecover.js +1 -2
  191. package/decorator/listeners/BeforeRecover.js.map +1 -1
  192. package/decorator/listeners/BeforeRemove.js +1 -2
  193. package/decorator/listeners/BeforeRemove.js.map +1 -1
  194. package/decorator/listeners/BeforeSoftRemove.js +1 -2
  195. package/decorator/listeners/BeforeSoftRemove.js.map +1 -1
  196. package/decorator/listeners/BeforeUpdate.js +1 -2
  197. package/decorator/listeners/BeforeUpdate.js.map +1 -1
  198. package/decorator/listeners/EventSubscriber.js +1 -2
  199. package/decorator/listeners/EventSubscriber.js.map +1 -1
  200. package/decorator/relations/JoinColumn.js +1 -2
  201. package/decorator/relations/JoinColumn.js.map +1 -1
  202. package/decorator/relations/JoinTable.js +1 -2
  203. package/decorator/relations/JoinTable.js.map +1 -1
  204. package/decorator/relations/ManyToMany.js +1 -2
  205. package/decorator/relations/ManyToMany.js.map +1 -1
  206. package/decorator/relations/ManyToOne.js +1 -2
  207. package/decorator/relations/ManyToOne.js.map +1 -1
  208. package/decorator/relations/OneToMany.js +1 -2
  209. package/decorator/relations/OneToMany.js.map +1 -1
  210. package/decorator/relations/OneToOne.d.ts +4 -4
  211. package/decorator/relations/OneToOne.js +3 -4
  212. package/decorator/relations/OneToOne.js.map +1 -1
  213. package/decorator/relations/RelationCount.js +1 -2
  214. package/decorator/relations/RelationCount.js.map +1 -1
  215. package/decorator/relations/RelationId.js +1 -2
  216. package/decorator/relations/RelationId.js.map +1 -1
  217. package/decorator/tree/Tree.js +1 -2
  218. package/decorator/tree/Tree.js.map +1 -1
  219. package/decorator/tree/TreeChildren.js +1 -2
  220. package/decorator/tree/TreeChildren.js.map +1 -1
  221. package/decorator/tree/TreeLevelColumn.js +1 -2
  222. package/decorator/tree/TreeLevelColumn.js.map +1 -1
  223. package/decorator/tree/TreeParent.js +1 -2
  224. package/decorator/tree/TreeParent.js.map +1 -1
  225. package/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.d.ts +1 -1
  226. package/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js.map +1 -1
  227. package/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +0 -1
  228. package/driver/better-sqlite3/BetterSqlite3Driver.js +2 -2
  229. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  230. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +4 -0
  231. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  232. package/driver/cockroachdb/CockroachConnectionCredentialsOptions.d.ts +1 -2
  233. package/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -1
  234. package/driver/cockroachdb/CockroachConnectionOptions.d.ts +1 -1
  235. package/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
  236. package/driver/cockroachdb/CockroachQueryRunner.d.ts +0 -1
  237. package/driver/cockroachdb/CockroachQueryRunner.js +5 -3
  238. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  239. package/driver/mongodb/MongoConnectionOptions.d.ts +1 -2
  240. package/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  241. package/driver/mongodb/MongoQueryRunner.d.ts +0 -1
  242. package/driver/mongodb/typings.d.ts +0 -8
  243. package/driver/mongodb/typings.js +0 -1
  244. package/driver/mongodb/typings.js.map +1 -1
  245. package/driver/mysql/MysqlConnectionCredentialsOptions.d.ts +1 -1
  246. package/driver/mysql/MysqlConnectionCredentialsOptions.js.map +1 -1
  247. package/driver/mysql/MysqlConnectionOptions.d.ts +1 -1
  248. package/driver/mysql/MysqlConnectionOptions.js.map +1 -1
  249. package/driver/mysql/MysqlQueryRunner.d.ts +0 -1
  250. package/driver/oracle/OracleConnectionCredentialsOptions.d.ts +1 -1
  251. package/driver/oracle/OracleConnectionCredentialsOptions.js.map +1 -1
  252. package/driver/oracle/OracleConnectionOptions.d.ts +1 -1
  253. package/driver/oracle/OracleConnectionOptions.js.map +1 -1
  254. package/driver/oracle/OracleQueryRunner.d.ts +0 -1
  255. package/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +1 -2
  256. package/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
  257. package/driver/postgres/PostgresConnectionOptions.d.ts +1 -1
  258. package/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  259. package/driver/postgres/PostgresQueryRunner.d.ts +0 -1
  260. package/driver/postgres/PostgresQueryRunner.js +5 -1
  261. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  262. package/driver/sap/SapQueryRunner.d.ts +0 -1
  263. package/driver/spanner/SpannerConnectionCredentialsOptions.d.ts +1 -1
  264. package/driver/spanner/SpannerConnectionCredentialsOptions.js.map +1 -1
  265. package/driver/spanner/SpannerConnectionOptions.d.ts +1 -1
  266. package/driver/spanner/SpannerConnectionOptions.js.map +1 -1
  267. package/driver/spanner/SpannerQueryRunner.d.ts +0 -1
  268. package/driver/sqlite/SqliteDriver.js +2 -2
  269. package/driver/sqlite/SqliteDriver.js.map +1 -1
  270. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +0 -1
  271. package/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +1 -1
  272. package/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -1
  273. package/driver/sqlserver/SqlServerConnectionOptions.d.ts +1 -1
  274. package/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
  275. package/driver/sqlserver/SqlServerQueryRunner.d.ts +0 -1
  276. package/entity-manager/EntityManager.d.ts +2 -0
  277. package/entity-manager/EntityManager.js +4 -2
  278. package/entity-manager/EntityManager.js.map +1 -1
  279. package/find-options/FindOptionsOrder.d.ts +0 -1
  280. package/find-options/FindOptionsRelations.d.ts +0 -1
  281. package/find-options/FindOptionsSelect.d.ts +0 -1
  282. package/find-options/FindOptionsWhere.d.ts +0 -1
  283. package/find-options/operator/And.js +1 -2
  284. package/find-options/operator/And.js.map +1 -1
  285. package/find-options/operator/Any.js +1 -2
  286. package/find-options/operator/Any.js.map +1 -1
  287. package/find-options/operator/ArrayContainedBy.js +1 -2
  288. package/find-options/operator/ArrayContainedBy.js.map +1 -1
  289. package/find-options/operator/ArrayContains.js +1 -2
  290. package/find-options/operator/ArrayContains.js.map +1 -1
  291. package/find-options/operator/ArrayOverlap.js +1 -2
  292. package/find-options/operator/ArrayOverlap.js.map +1 -1
  293. package/find-options/operator/Between.js +1 -2
  294. package/find-options/operator/Between.js.map +1 -1
  295. package/find-options/operator/Equal.js +1 -2
  296. package/find-options/operator/Equal.js.map +1 -1
  297. package/find-options/operator/ILike.js +1 -2
  298. package/find-options/operator/ILike.js.map +1 -1
  299. package/find-options/operator/In.js +1 -2
  300. package/find-options/operator/In.js.map +1 -1
  301. package/find-options/operator/IsNull.js +1 -2
  302. package/find-options/operator/IsNull.js.map +1 -1
  303. package/find-options/operator/JsonContains.js +1 -2
  304. package/find-options/operator/JsonContains.js.map +1 -1
  305. package/find-options/operator/LessThan.js +1 -2
  306. package/find-options/operator/LessThan.js.map +1 -1
  307. package/find-options/operator/LessThanOrEqual.js +1 -2
  308. package/find-options/operator/LessThanOrEqual.js.map +1 -1
  309. package/find-options/operator/Like.js +1 -2
  310. package/find-options/operator/Like.js.map +1 -1
  311. package/find-options/operator/MoreThan.js +1 -2
  312. package/find-options/operator/MoreThan.js.map +1 -1
  313. package/find-options/operator/MoreThanOrEqual.js +1 -2
  314. package/find-options/operator/MoreThanOrEqual.js.map +1 -1
  315. package/find-options/operator/Not.js +1 -2
  316. package/find-options/operator/Not.js.map +1 -1
  317. package/find-options/operator/Or.js +1 -2
  318. package/find-options/operator/Or.js.map +1 -1
  319. package/find-options/operator/Raw.js +1 -2
  320. package/find-options/operator/Raw.js.map +1 -1
  321. package/globals.js +14 -15
  322. package/globals.js.map +1 -1
  323. package/package.json +1 -1
  324. package/persistence/SubjectExecutor.js +3 -3
  325. package/persistence/SubjectExecutor.js.map +1 -1
  326. package/persistence/{SubjectTopoligicalSorter.d.ts → SubjectTopologicalSorter.d.ts} +1 -1
  327. package/persistence/{SubjectTopoligicalSorter.js → SubjectTopologicalSorter.js} +4 -4
  328. package/persistence/{SubjectTopoligicalSorter.js.map → SubjectTopologicalSorter.js.map} +1 -1
  329. package/platform/PlatformTools.d.ts +2 -10
  330. package/platform/PlatformTools.js +37 -45
  331. package/platform/PlatformTools.js.map +1 -1
  332. package/query-builder/InsertQueryBuilder.js.map +1 -1
  333. package/query-builder/QueryBuilder.js +2 -3
  334. package/query-builder/QueryBuilder.js.map +1 -1
  335. package/query-builder/SelectQueryBuilder.d.ts +0 -1
  336. package/query-builder/index.js +1 -2
  337. package/query-builder/index.js.map +1 -1
  338. package/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +9 -0
  339. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +95 -61
  340. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  341. package/query-runner/QueryRunner.d.ts +0 -1
  342. package/repository/Repository.d.ts +2 -0
  343. package/repository/Repository.js +2 -0
  344. package/repository/Repository.js.map +1 -1
  345. package/schema-builder/RdbmsSchemaBuilder.js +1 -1
  346. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  347. package/util/DirectoryExportedClassesLoader.js +2 -3
  348. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  349. package/util/ImportUtils.js +23 -36
  350. package/util/ImportUtils.js.map +1 -1
  351. package/util/PathUtils.js +3 -4
  352. package/util/PathUtils.js.map +1 -1
  353. package/util/StringUtils.js +6 -7
  354. package/util/StringUtils.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commands/MigrationGenerateCommand.ts"],"names":[],"mappings":"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","file":"MigrationGenerateCommand.js","sourcesContent":["import { CommandUtils } from \"./CommandUtils\"\nimport { camelCase } from \"../util/StringUtils\"\nimport * as yargs from \"yargs\"\nimport chalk from \"chalk\"\nimport { format } from \"@sqltools/formatter/lib/sqlFormatter\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { DataSource } from \"../data-source\"\nimport * as path from \"path\"\nimport process from \"process\"\n\n/**\n * Generates a new migration file with sql needs to be executed to update schema.\n */\nexport class MigrationGenerateCommand implements yargs.CommandModule {\n command = \"migration:generate <path>\"\n describe =\n \"Generates a new migration file with sql needs to be executed to update schema.\"\n\n builder(args: yargs.Argv) {\n return args\n .positional(\"path\", {\n type: \"string\",\n describe: \"Path of the migration file\",\n demandOption: true,\n })\n .option(\"dataSource\", {\n alias: \"d\",\n type: \"string\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n .option(\"p\", {\n alias: \"pretty\",\n type: \"boolean\",\n default: false,\n describe: \"Pretty-print generated SQL\",\n })\n .option(\"o\", {\n alias: \"outputJs\",\n type: \"boolean\",\n default: false,\n describe:\n \"Generate a migration file on Javascript instead of Typescript\",\n })\n .option(\"dr\", {\n alias: \"dryrun\",\n type: \"boolean\",\n default: false,\n describe:\n \"Prints out the contents of the migration instead of writing it to a file\",\n })\n .option(\"ch\", {\n alias: \"check\",\n type: \"boolean\",\n default: false,\n describe:\n \"Verifies that the current database is up to date and that no migrations are needed. Otherwise exits with code 1.\",\n })\n .option(\"t\", {\n alias: \"timestamp\",\n type: \"number\",\n default: false,\n describe: \"Custom timestamp for the migration name\",\n })\n }\n\n async handler(args: yargs.Arguments<any & { path: string }>) {\n const timestamp = CommandUtils.getTimestamp(args.timestamp)\n const extension = args.outputJs ? \".js\" : \".ts\"\n const fullPath = args.path.startsWith(\"/\")\n ? args.path\n : path.resolve(process.cwd(), args.path)\n const filename = timestamp + \"-\" + path.basename(fullPath) + extension\n\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: false,\n })\n await dataSource.initialize()\n\n const upSqls: string[] = [],\n downSqls: string[] = []\n\n try {\n const sqlInMemory = await dataSource.driver\n .createSchemaBuilder()\n .log()\n\n if (args.pretty) {\n sqlInMemory.upQueries.forEach((upQuery) => {\n upQuery.query = MigrationGenerateCommand.prettifyQuery(\n upQuery.query,\n )\n })\n sqlInMemory.downQueries.forEach((downQuery) => {\n downQuery.query =\n MigrationGenerateCommand.prettifyQuery(\n downQuery.query,\n )\n })\n }\n\n sqlInMemory.upQueries.forEach((upQuery) => {\n upSqls.push(\n \" await queryRunner.query(`\" +\n upQuery.query.replace(new RegExp(\"`\", \"g\"), \"\\\\`\") +\n \"`\" +\n MigrationGenerateCommand.queryParams(\n upQuery.parameters,\n ) +\n \");\",\n )\n })\n sqlInMemory.downQueries.forEach((downQuery) => {\n downSqls.push(\n \" await queryRunner.query(`\" +\n downQuery.query.replace(\n new RegExp(\"`\", \"g\"),\n \"\\\\`\",\n ) +\n \"`\" +\n MigrationGenerateCommand.queryParams(\n downQuery.parameters,\n ) +\n \");\",\n )\n })\n } finally {\n await dataSource.destroy()\n }\n\n if (!upSqls.length) {\n if (args.check) {\n console.log(\n chalk.green(`No changes in database schema were found`),\n )\n process.exit(0)\n } else {\n console.log(\n chalk.yellow(\n `No changes in database schema were found - cannot generate a migration. To create a new empty migration use \"typeorm migration:create\" command`,\n ),\n )\n process.exit(1)\n }\n } else if (!args.path) {\n console.log(chalk.yellow(\"Please specify a migration path\"))\n process.exit(1)\n }\n\n const fileContent = args.outputJs\n ? MigrationGenerateCommand.getJavascriptTemplate(\n path.basename(fullPath),\n timestamp,\n upSqls,\n downSqls.reverse(),\n )\n : MigrationGenerateCommand.getTemplate(\n path.basename(fullPath),\n timestamp,\n upSqls,\n downSqls.reverse(),\n )\n\n if (args.check) {\n console.log(\n chalk.yellow(\n `Unexpected changes in database schema were found in check mode:\\n\\n${chalk.white(\n fileContent,\n )}`,\n ),\n )\n process.exit(1)\n }\n\n if (args.dryrun) {\n console.log(\n chalk.green(\n `Migration ${chalk.blue(\n fullPath + extension,\n )} has content:\\n\\n${chalk.white(fileContent)}`,\n ),\n )\n } else {\n const migrationFileName =\n path.dirname(fullPath) + \"/\" + filename\n await CommandUtils.createFile(migrationFileName, fileContent)\n\n console.log(\n chalk.green(\n `Migration ${chalk.blue(\n migrationFileName,\n )} has been generated successfully.`,\n ),\n )\n if (args.exitProcess !== false) {\n process.exit(0)\n }\n }\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during migration generation:\", err)\n process.exit(1)\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Formats query parameters for migration queries if parameters actually exist\n */\n protected static queryParams(parameters: any[] | undefined): string {\n if (!parameters || !parameters.length) {\n return \"\"\n }\n\n return `, ${JSON.stringify(parameters)}`\n }\n\n /**\n * Gets contents of the migration file.\n */\n protected static getTemplate(\n name: string,\n timestamp: number,\n upSqls: string[],\n downSqls: string[],\n ): string {\n const migrationName = `${camelCase(name, true)}${timestamp}`\n\n return `import { MigrationInterface, QueryRunner } from \"typeorm\";\n\nexport class ${migrationName} implements MigrationInterface {\n name = '${migrationName}'\n\n public async up(queryRunner: QueryRunner): Promise<void> {\n${upSqls.join(`\n`)}\n }\n\n public async down(queryRunner: QueryRunner): Promise<void> {\n${downSqls.join(`\n`)}\n }\n\n}\n`\n }\n\n /**\n * Gets contents of the migration file in Javascript.\n */\n protected static getJavascriptTemplate(\n name: string,\n timestamp: number,\n upSqls: string[],\n downSqls: string[],\n ): string {\n const migrationName = `${camelCase(name, true)}${timestamp}`\n\n return `const { MigrationInterface, QueryRunner } = require(\"typeorm\");\n\nmodule.exports = class ${migrationName} {\n name = '${migrationName}'\n\n async up(queryRunner) {\n${upSqls.join(`\n`)}\n }\n\n async down(queryRunner) {\n${downSqls.join(`\n`)}\n }\n}\n`\n }\n\n /**\n *\n */\n protected static prettifyQuery(query: string) {\n const formattedQuery = format(query, { indent: \" \" })\n return (\n \"\\n\" + formattedQuery.replace(/^/gm, \" \") + \"\\n \"\n )\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/commands/MigrationGenerateCommand.ts"],"names":[],"mappings":"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","file":"MigrationGenerateCommand.js","sourcesContent":["import { format } from \"@sqltools/formatter/lib/sqlFormatter\"\nimport ansi from \"ansis\"\nimport path from \"path\"\nimport process from \"process\"\nimport yargs from \"yargs\"\nimport { DataSource } from \"../data-source\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { camelCase } from \"../util/StringUtils\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Generates a new migration file with sql needs to be executed to update schema.\n */\nexport class MigrationGenerateCommand implements yargs.CommandModule {\n command = \"migration:generate <path>\"\n describe =\n \"Generates a new migration file with sql needs to be executed to update schema.\"\n\n builder(args: yargs.Argv) {\n return args\n .positional(\"path\", {\n type: \"string\",\n describe: \"Path of the migration file\",\n demandOption: true,\n })\n .option(\"dataSource\", {\n alias: \"d\",\n type: \"string\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n .option(\"p\", {\n alias: \"pretty\",\n type: \"boolean\",\n default: false,\n describe: \"Pretty-print generated SQL\",\n })\n .option(\"o\", {\n alias: \"outputJs\",\n type: \"boolean\",\n default: false,\n describe:\n \"Generate a migration file on Javascript instead of Typescript\",\n })\n .option(\"dr\", {\n alias: \"dryrun\",\n type: \"boolean\",\n default: false,\n describe:\n \"Prints out the contents of the migration instead of writing it to a file\",\n })\n .option(\"ch\", {\n alias: \"check\",\n type: \"boolean\",\n default: false,\n describe:\n \"Verifies that the current database is up to date and that no migrations are needed. Otherwise exits with code 1.\",\n })\n .option(\"t\", {\n alias: \"timestamp\",\n type: \"number\",\n default: false,\n describe: \"Custom timestamp for the migration name\",\n })\n }\n\n async handler(args: yargs.Arguments<any & { path: string }>) {\n const timestamp = CommandUtils.getTimestamp(args.timestamp)\n const extension = args.outputJs ? \".js\" : \".ts\"\n const fullPath = args.path.startsWith(\"/\")\n ? args.path\n : path.resolve(process.cwd(), args.path)\n const filename = timestamp + \"-\" + path.basename(fullPath) + extension\n\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: false,\n })\n await dataSource.initialize()\n\n const upSqls: string[] = [],\n downSqls: string[] = []\n\n try {\n const sqlInMemory = await dataSource.driver\n .createSchemaBuilder()\n .log()\n\n if (args.pretty) {\n sqlInMemory.upQueries.forEach((upQuery) => {\n upQuery.query = MigrationGenerateCommand.prettifyQuery(\n upQuery.query,\n )\n })\n sqlInMemory.downQueries.forEach((downQuery) => {\n downQuery.query =\n MigrationGenerateCommand.prettifyQuery(\n downQuery.query,\n )\n })\n }\n\n sqlInMemory.upQueries.forEach((upQuery) => {\n upSqls.push(\n \" await queryRunner.query(`\" +\n upQuery.query.replace(new RegExp(\"`\", \"g\"), \"\\\\`\") +\n \"`\" +\n MigrationGenerateCommand.queryParams(\n upQuery.parameters,\n ) +\n \");\",\n )\n })\n sqlInMemory.downQueries.forEach((downQuery) => {\n downSqls.push(\n \" await queryRunner.query(`\" +\n downQuery.query.replace(\n new RegExp(\"`\", \"g\"),\n \"\\\\`\",\n ) +\n \"`\" +\n MigrationGenerateCommand.queryParams(\n downQuery.parameters,\n ) +\n \");\",\n )\n })\n } finally {\n await dataSource.destroy()\n }\n\n if (!upSqls.length) {\n if (args.check) {\n console.log(\n ansi.green`No changes in database schema were found`,\n )\n process.exit(0)\n } else {\n console.log(\n ansi.yellow`No changes in database schema were found - cannot generate a migration. To create a new empty migration use \"typeorm migration:create\" command`,\n )\n process.exit(1)\n }\n } else if (!args.path) {\n console.log(ansi.yellow`Please specify a migration path`)\n process.exit(1)\n }\n\n const fileContent = args.outputJs\n ? MigrationGenerateCommand.getJavascriptTemplate(\n path.basename(fullPath),\n timestamp,\n upSqls,\n downSqls.reverse(),\n )\n : MigrationGenerateCommand.getTemplate(\n path.basename(fullPath),\n timestamp,\n upSqls,\n downSqls.reverse(),\n )\n\n if (args.check) {\n console.log(\n ansi.yellow`Unexpected changes in database schema were found in check mode:\\n\\n${ansi.white(\n fileContent,\n )}`,\n )\n process.exit(1)\n }\n\n if (args.dryrun) {\n console.log(\n ansi.green(\n `Migration ${ansi.blue(\n fullPath + extension,\n )} has content:\\n\\n${ansi.white(fileContent)}`,\n ),\n )\n } else {\n const migrationFileName =\n path.dirname(fullPath) + \"/\" + filename\n await CommandUtils.createFile(migrationFileName, fileContent)\n\n console.log(\n ansi.green`Migration ${ansi.blue(\n migrationFileName,\n )} has been generated successfully.`,\n )\n if (args.exitProcess !== false) {\n process.exit(0)\n }\n }\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during migration generation:\", err)\n process.exit(1)\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Formats query parameters for migration queries if parameters actually exist\n */\n protected static queryParams(parameters: any[] | undefined): string {\n if (!parameters || !parameters.length) {\n return \"\"\n }\n\n return `, ${JSON.stringify(parameters)}`\n }\n\n /**\n * Gets contents of the migration file.\n */\n protected static getTemplate(\n name: string,\n timestamp: number,\n upSqls: string[],\n downSqls: string[],\n ): string {\n const migrationName = `${camelCase(name, true)}${timestamp}`\n\n return `import { MigrationInterface, QueryRunner } from \"typeorm\";\n\nexport class ${migrationName} implements MigrationInterface {\n name = '${migrationName}'\n\n public async up(queryRunner: QueryRunner): Promise<void> {\n${upSqls.join(`\n`)}\n }\n\n public async down(queryRunner: QueryRunner): Promise<void> {\n${downSqls.join(`\n`)}\n }\n\n}\n`\n }\n\n /**\n * Gets contents of the migration file in Javascript.\n */\n protected static getJavascriptTemplate(\n name: string,\n timestamp: number,\n upSqls: string[],\n downSqls: string[],\n ): string {\n const migrationName = `${camelCase(name, true)}${timestamp}`\n\n return `const { MigrationInterface, QueryRunner } = require(\"typeorm\");\n\nmodule.exports = class ${migrationName} {\n name = '${migrationName}'\n\n async up(queryRunner) {\n${upSqls.join(`\n`)}\n }\n\n async down(queryRunner) {\n${downSqls.join(`\n`)}\n }\n}\n`\n }\n\n /**\n *\n */\n protected static prettifyQuery(query: string) {\n const formattedQuery = format(query, { indent: \" \" })\n return (\n \"\\n\" + formattedQuery.replace(/^/gm, \" \") + \"\\n \"\n )\n }\n}\n"],"sourceRoot":".."}
@@ -1,4 +1,4 @@
1
- import * as yargs from "yargs";
1
+ import yargs from "yargs";
2
2
  /**
3
3
  * Executes an SQL query on the given dataSource.
4
4
  */
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.QueryCommand = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const PlatformTools_1 = require("../platform/PlatformTools");
6
- const chalk_1 = tslib_1.__importDefault(require("chalk"));
5
+ const ansis_1 = tslib_1.__importDefault(require("ansis"));
7
6
  const path_1 = tslib_1.__importDefault(require("path"));
8
7
  const process_1 = tslib_1.__importDefault(require("process"));
8
+ const PlatformTools_1 = require("../platform/PlatformTools");
9
9
  const CommandUtils_1 = require("./CommandUtils");
10
10
  /**
11
11
  * Executes an SQL query on the given dataSource.
@@ -42,15 +42,18 @@ class QueryCommand {
42
42
  // create a query runner and execute query using it
43
43
  queryRunner = dataSource.createQueryRunner();
44
44
  const query = args.query;
45
- console.log(chalk_1.default.green("Running query: ") +
46
- PlatformTools_1.PlatformTools.highlightSql(query));
45
+ console.log(ansis_1.default.green `Running query: ` + PlatformTools_1.PlatformTools.highlightSql(query));
47
46
  const queryResult = await queryRunner.query(query);
48
47
  if (typeof queryResult === "undefined") {
49
- console.log(chalk_1.default.green("Query has been executed. No result was returned."));
48
+ console.log(ansis_1.default.green `Query has been executed. No result was returned.`);
50
49
  }
51
50
  else {
52
- console.log(chalk_1.default.green("Query has been executed. Result: "));
53
- console.log(PlatformTools_1.PlatformTools.highlightJson(JSON.stringify(queryResult, undefined, 2)));
51
+ console.log(ansis_1.default.green `Query has been executed. Result: `);
52
+ console.dir(queryResult, {
53
+ breakLength: Infinity,
54
+ compact: false,
55
+ depth: null,
56
+ });
54
57
  }
55
58
  await queryRunner.release();
56
59
  await dataSource.destroy();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commands/QueryCommand.ts"],"names":[],"mappings":";;;;AAEA,6DAAyD;AAEzD,0DAAyB;AACzB,wDAAuB;AACvB,8DAA6B;AAC7B,iDAA6C;AAE7C;;GAEG;AACH,MAAa,YAAY;IAAzB;QACI,YAAO,GAAG,eAAe,CAAA;QACzB,aAAQ,GACJ,kHAAkH,CAAA;IAmE1H,CAAC;IAjEG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI;aACN,UAAU,CAAC,OAAO,EAAE;YACjB,QAAQ,EAAE,sBAAsB;YAChC,IAAI,EAAE,QAAQ;SACjB,CAAC;aACD,MAAM,CAAC,YAAY,EAAE;YAClB,KAAK,EAAE,GAAG;YACV,QAAQ,EACJ,6DAA6D;YACjE,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACV,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,WAAW,GAA4B,SAAS,CAAA;QACpD,IAAI,UAAU,GAA2B,SAAS,CAAA;QAClD,IAAI,CAAC;YACD,UAAU,GAAG,MAAM,2BAAY,CAAC,cAAc,CAC1C,cAAI,CAAC,OAAO,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,UAAoB,CAAC,CACzD,CAAA;YACD,UAAU,CAAC,UAAU,CAAC;gBAClB,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,KAAK;aACjB,CAAC,CAAA;YACF,MAAM,UAAU,CAAC,UAAU,EAAE,CAAA;YAE7B,mDAAmD;YACnD,WAAW,GAAG,UAAU,CAAC,iBAAiB,EAAE,CAAA;YAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAA;YAClC,OAAO,CAAC,GAAG,CACP,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC;gBAC1B,6BAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CACxC,CAAA;YACD,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAElD,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE,CAAC;gBACrC,OAAO,CAAC,GAAG,CACP,eAAK,CAAC,KAAK,CACP,kDAAkD,CACrD,CACJ,CAAA;YACL,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA;gBAC7D,OAAO,CAAC,GAAG,CACP,6BAAa,CAAC,aAAa,CACvB,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,CAC5C,CACJ,CAAA;YACL,CAAC;YAED,MAAM,WAAW,CAAC,OAAO,EAAE,CAAA;YAC3B,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,6BAAa,CAAC,SAAS,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAA;YAE7D,IAAI,WAAW;gBAAE,MAAO,WAA2B,CAAC,OAAO,EAAE,CAAA;YAC7D,IAAI,UAAU,IAAI,UAAU,CAAC,aAAa;gBACtC,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE9B,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;CACJ;AAtED,oCAsEC","file":"QueryCommand.js","sourcesContent":["import { QueryRunner } from \"../query-runner/QueryRunner\"\nimport { DataSource } from \"../data-source/DataSource\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport * as yargs from \"yargs\"\nimport chalk from \"chalk\"\nimport path from \"path\"\nimport process from \"process\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Executes an SQL query on the given dataSource.\n */\nexport class QueryCommand implements yargs.CommandModule {\n command = \"query [query]\"\n describe =\n \"Executes given SQL query on a default dataSource. Specify connection name to run query on a specific dataSource.\"\n\n builder(args: yargs.Argv) {\n return args\n .positional(\"query\", {\n describe: \"The SQL Query to run\",\n type: \"string\",\n })\n .option(\"dataSource\", {\n alias: \"d\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n let queryRunner: QueryRunner | undefined = undefined\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: false,\n })\n await dataSource.initialize()\n\n // create a query runner and execute query using it\n queryRunner = dataSource.createQueryRunner()\n const query = args.query as string\n console.log(\n chalk.green(\"Running query: \") +\n PlatformTools.highlightSql(query),\n )\n const queryResult = await queryRunner.query(query)\n\n if (typeof queryResult === \"undefined\") {\n console.log(\n chalk.green(\n \"Query has been executed. No result was returned.\",\n ),\n )\n } else {\n console.log(chalk.green(\"Query has been executed. Result: \"))\n console.log(\n PlatformTools.highlightJson(\n JSON.stringify(queryResult, undefined, 2),\n ),\n )\n }\n\n await queryRunner.release()\n await dataSource.destroy()\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during query execution:\", err)\n\n if (queryRunner) await (queryRunner as QueryRunner).release()\n if (dataSource && dataSource.isInitialized)\n await dataSource.destroy()\n\n process.exit(1)\n }\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/commands/QueryCommand.ts"],"names":[],"mappings":";;;;AAAA,0DAAwB;AACxB,wDAAuB;AACvB,8DAA6B;AAG7B,6DAAyD;AAEzD,iDAA6C;AAE7C;;GAEG;AACH,MAAa,YAAY;IAAzB;QACI,YAAO,GAAG,eAAe,CAAA;QACzB,aAAQ,GACJ,kHAAkH,CAAA;IAgE1H,CAAC;IA9DG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI;aACN,UAAU,CAAC,OAAO,EAAE;YACjB,QAAQ,EAAE,sBAAsB;YAChC,IAAI,EAAE,QAAQ;SACjB,CAAC;aACD,MAAM,CAAC,YAAY,EAAE;YAClB,KAAK,EAAE,GAAG;YACV,QAAQ,EACJ,6DAA6D;YACjE,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACV,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,WAAW,GAA4B,SAAS,CAAA;QACpD,IAAI,UAAU,GAA2B,SAAS,CAAA;QAClD,IAAI,CAAC;YACD,UAAU,GAAG,MAAM,2BAAY,CAAC,cAAc,CAC1C,cAAI,CAAC,OAAO,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,UAAoB,CAAC,CACzD,CAAA;YACD,UAAU,CAAC,UAAU,CAAC;gBAClB,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,KAAK;aACjB,CAAC,CAAA;YACF,MAAM,UAAU,CAAC,UAAU,EAAE,CAAA;YAE7B,mDAAmD;YACnD,WAAW,GAAG,UAAU,CAAC,iBAAiB,EAAE,CAAA;YAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAA;YAClC,OAAO,CAAC,GAAG,CACP,eAAI,CAAC,KAAK,CAAA,iBAAiB,GAAG,6BAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAClE,CAAA;YACD,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAElD,IAAI,OAAO,WAAW,KAAK,WAAW,EAAE,CAAC;gBACrC,OAAO,CAAC,GAAG,CACP,eAAI,CAAC,KAAK,CAAA,kDAAkD,CAC/D,CAAA;YACL,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,eAAI,CAAC,KAAK,CAAA,mCAAmC,CAAC,CAAA;gBAC1D,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE;oBACrB,WAAW,EAAE,QAAQ;oBACrB,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,IAAI;iBACd,CAAC,CAAA;YACN,CAAC;YAED,MAAM,WAAW,CAAC,OAAO,EAAE,CAAA;YAC3B,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,6BAAa,CAAC,SAAS,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAA;YAE7D,IAAI,WAAW;gBAAE,MAAO,WAA2B,CAAC,OAAO,EAAE,CAAA;YAC7D,IAAI,UAAU,IAAI,UAAU,CAAC,aAAa;gBACtC,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE9B,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;CACJ;AAnED,oCAmEC","file":"QueryCommand.js","sourcesContent":["import ansi from \"ansis\"\nimport path from \"path\"\nimport process from \"process\"\nimport yargs from \"yargs\"\nimport { DataSource } from \"../data-source/DataSource\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { QueryRunner } from \"../query-runner/QueryRunner\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Executes an SQL query on the given dataSource.\n */\nexport class QueryCommand implements yargs.CommandModule {\n command = \"query [query]\"\n describe =\n \"Executes given SQL query on a default dataSource. Specify connection name to run query on a specific dataSource.\"\n\n builder(args: yargs.Argv) {\n return args\n .positional(\"query\", {\n describe: \"The SQL Query to run\",\n type: \"string\",\n })\n .option(\"dataSource\", {\n alias: \"d\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n let queryRunner: QueryRunner | undefined = undefined\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: false,\n })\n await dataSource.initialize()\n\n // create a query runner and execute query using it\n queryRunner = dataSource.createQueryRunner()\n const query = args.query as string\n console.log(\n ansi.green`Running query: ` + PlatformTools.highlightSql(query),\n )\n const queryResult = await queryRunner.query(query)\n\n if (typeof queryResult === \"undefined\") {\n console.log(\n ansi.green`Query has been executed. No result was returned.`,\n )\n } else {\n console.log(ansi.green`Query has been executed. Result: `)\n console.dir(queryResult, {\n breakLength: Infinity,\n compact: false,\n depth: null,\n })\n }\n\n await queryRunner.release()\n await dataSource.destroy()\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during query execution:\", err)\n\n if (queryRunner) await (queryRunner as QueryRunner).release()\n if (dataSource && dataSource.isInitialized)\n await dataSource.destroy()\n\n process.exit(1)\n }\n }\n}\n"],"sourceRoot":".."}
@@ -1,4 +1,4 @@
1
- import * as yargs from "yargs";
1
+ import yargs from "yargs";
2
2
  /**
3
3
  * Drops all tables of the database from the given dataSource.
4
4
  */
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SchemaDropCommand = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const chalk_1 = tslib_1.__importDefault(require("chalk"));
6
- const PlatformTools_1 = require("../platform/PlatformTools");
5
+ const ansis_1 = tslib_1.__importDefault(require("ansis"));
7
6
  const path_1 = tslib_1.__importDefault(require("path"));
8
7
  const process_1 = tslib_1.__importDefault(require("process"));
8
+ const PlatformTools_1 = require("../platform/PlatformTools");
9
9
  const CommandUtils_1 = require("./CommandUtils");
10
10
  /**
11
11
  * Drops all tables of the database from the given dataSource.
@@ -36,7 +36,7 @@ class SchemaDropCommand {
36
36
  await dataSource.initialize();
37
37
  await dataSource.dropDatabase();
38
38
  await dataSource.destroy();
39
- console.log(chalk_1.default.green("Database schema has been successfully dropped."));
39
+ console.log(ansis_1.default.green `Database schema has been successfully dropped.`);
40
40
  }
41
41
  catch (err) {
42
42
  PlatformTools_1.PlatformTools.logCmdErr("Error during schema drop:", err);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commands/SchemaDropCommand.ts"],"names":[],"mappings":";;;;AAEA,0DAAyB;AACzB,6DAAyD;AACzD,wDAAuB;AACvB,8DAA6B;AAC7B,iDAA6C;AAE7C;;GAEG;AACH,MAAa,iBAAiB;IAA9B;QACI,YAAO,GAAG,aAAa,CAAA;QACvB,aAAQ,GACJ,+DAA+D;YAC/D,kEAAkE,CAAA;IAuC1E,CAAC;IArCG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YAC7B,KAAK,EAAE,GAAG;YACV,QAAQ,EACJ,6DAA6D;YACjE,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,UAAU,GAA2B,SAAS,CAAA;QAClD,IAAI,CAAC;YACD,UAAU,GAAG,MAAM,2BAAY,CAAC,cAAc,CAC1C,cAAI,CAAC,OAAO,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,UAAoB,CAAC,CACzD,CAAA;YACD,UAAU,CAAC,UAAU,CAAC;gBAClB,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC/B,CAAC,CAAA;YACF,MAAM,UAAU,CAAC,UAAU,EAAE,CAAA;YAC7B,MAAM,UAAU,CAAC,YAAY,EAAE,CAAA;YAC/B,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE1B,OAAO,CAAC,GAAG,CACP,eAAK,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAChE,CAAA;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,6BAAa,CAAC,SAAS,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAA;YAEzD,IAAI,UAAU,IAAI,UAAU,CAAC,aAAa;gBACtC,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE9B,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;CACJ;AA3CD,8CA2CC","file":"SchemaDropCommand.js","sourcesContent":["import { DataSource } from \"../data-source/DataSource\"\nimport * as yargs from \"yargs\"\nimport chalk from \"chalk\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport path from \"path\"\nimport process from \"process\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Drops all tables of the database from the given dataSource.\n */\nexport class SchemaDropCommand implements yargs.CommandModule {\n command = \"schema:drop\"\n describe =\n \"Drops all tables in the database on your default dataSource. \" +\n \"To drop table of a concrete connection's database use -c option.\"\n\n builder(args: yargs.Argv) {\n return args.option(\"dataSource\", {\n alias: \"d\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: [\"query\", \"schema\"],\n })\n await dataSource.initialize()\n await dataSource.dropDatabase()\n await dataSource.destroy()\n\n console.log(\n chalk.green(\"Database schema has been successfully dropped.\"),\n )\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during schema drop:\", err)\n\n if (dataSource && dataSource.isInitialized)\n await dataSource.destroy()\n\n process.exit(1)\n }\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/commands/SchemaDropCommand.ts"],"names":[],"mappings":";;;;AAAA,0DAAwB;AACxB,wDAAuB;AACvB,8DAA6B;AAG7B,6DAAyD;AACzD,iDAA6C;AAE7C;;GAEG;AACH,MAAa,iBAAiB;IAA9B;QACI,YAAO,GAAG,aAAa,CAAA;QACvB,aAAQ,GACJ,+DAA+D;YAC/D,kEAAkE,CAAA;IAuC1E,CAAC;IArCG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YAC7B,KAAK,EAAE,GAAG;YACV,QAAQ,EACJ,6DAA6D;YACjE,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,UAAU,GAA2B,SAAS,CAAA;QAClD,IAAI,CAAC;YACD,UAAU,GAAG,MAAM,2BAAY,CAAC,cAAc,CAC1C,cAAI,CAAC,OAAO,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,UAAoB,CAAC,CACzD,CAAA;YACD,UAAU,CAAC,UAAU,CAAC;gBAClB,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC/B,CAAC,CAAA;YACF,MAAM,UAAU,CAAC,UAAU,EAAE,CAAA;YAC7B,MAAM,UAAU,CAAC,YAAY,EAAE,CAAA;YAC/B,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE1B,OAAO,CAAC,GAAG,CACP,eAAI,CAAC,KAAK,CAAA,gDAAgD,CAC7D,CAAA;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,6BAAa,CAAC,SAAS,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAA;YAEzD,IAAI,UAAU,IAAI,UAAU,CAAC,aAAa;gBACtC,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE9B,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;CACJ;AA3CD,8CA2CC","file":"SchemaDropCommand.js","sourcesContent":["import ansi from \"ansis\"\nimport path from \"path\"\nimport process from \"process\"\nimport yargs from \"yargs\"\nimport { DataSource } from \"../data-source/DataSource\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Drops all tables of the database from the given dataSource.\n */\nexport class SchemaDropCommand implements yargs.CommandModule {\n command = \"schema:drop\"\n describe =\n \"Drops all tables in the database on your default dataSource. \" +\n \"To drop table of a concrete connection's database use -c option.\"\n\n builder(args: yargs.Argv) {\n return args.option(\"dataSource\", {\n alias: \"d\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: [\"query\", \"schema\"],\n })\n await dataSource.initialize()\n await dataSource.dropDatabase()\n await dataSource.destroy()\n\n console.log(\n ansi.green`Database schema has been successfully dropped.`,\n )\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during schema drop:\", err)\n\n if (dataSource && dataSource.isInitialized)\n await dataSource.destroy()\n\n process.exit(1)\n }\n }\n}\n"],"sourceRoot":".."}
@@ -1,4 +1,4 @@
1
- import * as yargs from "yargs";
1
+ import yargs from "yargs";
2
2
  /**
3
3
  * Shows sql to be executed by schema:sync command.
4
4
  */
@@ -2,11 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SchemaLogCommand = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const cli_highlight_1 = require("cli-highlight");
6
- const chalk_1 = tslib_1.__importDefault(require("chalk"));
7
- const PlatformTools_1 = require("../platform/PlatformTools");
5
+ const ansis_1 = tslib_1.__importDefault(require("ansis"));
8
6
  const path_1 = tslib_1.__importDefault(require("path"));
9
7
  const process_1 = tslib_1.__importDefault(require("process"));
8
+ const PlatformTools_1 = require("../platform/PlatformTools");
10
9
  const CommandUtils_1 = require("./CommandUtils");
11
10
  /**
12
11
  * Shows sql to be executed by schema:sync command.
@@ -39,26 +38,21 @@ class SchemaLogCommand {
39
38
  .createSchemaBuilder()
40
39
  .log();
41
40
  if (sqlInMemory.upQueries.length === 0) {
42
- console.log(chalk_1.default.yellow("Your schema is up to date - there are no queries to be executed by schema synchronization."));
41
+ console.log(ansis_1.default.yellow `Your schema is up to date - there are no queries to be executed by schema synchronization.`);
43
42
  }
44
43
  else {
45
- const lengthSeparators = String(sqlInMemory.upQueries.length)
46
- .split("")
47
- .map((char) => "-")
48
- .join("");
49
- console.log(chalk_1.default.yellow("---------------------------------------------------------------" +
50
- lengthSeparators));
51
- console.log(chalk_1.default.yellow.bold(`-- Schema synchronization will execute following sql queries (${chalk_1.default.white(sqlInMemory.upQueries.length.toString())}):`));
52
- console.log(chalk_1.default.yellow("---------------------------------------------------------------" +
53
- lengthSeparators));
44
+ const lineSeparator = "".padStart(63 + String(sqlInMemory.upQueries.length).length, "-");
45
+ console.log(ansis_1.default.yellow(lineSeparator));
46
+ console.log(ansis_1.default.yellow
47
+ .bold `-- Schema synchronization will execute following sql queries (${ansis_1.default.white(sqlInMemory.upQueries.length.toString())}):`);
48
+ console.log(ansis_1.default.yellow(lineSeparator));
54
49
  sqlInMemory.upQueries.forEach((upQuery) => {
55
50
  let sqlString = upQuery.query;
56
51
  sqlString = sqlString.trim();
57
- sqlString =
58
- sqlString.substr(-1) === ";"
59
- ? sqlString
60
- : sqlString + ";";
61
- console.log((0, cli_highlight_1.highlight)(sqlString));
52
+ sqlString = sqlString.endsWith(";")
53
+ ? sqlString
54
+ : sqlString + ";";
55
+ console.log(PlatformTools_1.PlatformTools.highlightSql(sqlString));
62
56
  });
63
57
  }
64
58
  await dataSource.destroy();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commands/SchemaLogCommand.ts"],"names":[],"mappings":"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","file":"SchemaLogCommand.js","sourcesContent":["import { DataSource } from \"../data-source/DataSource\"\nimport { highlight } from \"cli-highlight\"\nimport * as yargs from \"yargs\"\nimport chalk from \"chalk\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport path from \"path\"\nimport process from \"process\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Shows sql to be executed by schema:sync command.\n */\nexport class SchemaLogCommand implements yargs.CommandModule {\n command = \"schema:log\"\n describe =\n \"Shows sql to be executed by schema:sync command. It shows sql log only for your default dataSource. \" +\n \"To run update queries on a concrete connection use -c option.\"\n\n builder(args: yargs.Argv) {\n return args.option(\"dataSource\", {\n alias: \"d\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: false,\n })\n await dataSource.initialize()\n\n const sqlInMemory = await dataSource.driver\n .createSchemaBuilder()\n .log()\n\n if (sqlInMemory.upQueries.length === 0) {\n console.log(\n chalk.yellow(\n \"Your schema is up to date - there are no queries to be executed by schema synchronization.\",\n ),\n )\n } else {\n const lengthSeparators = String(sqlInMemory.upQueries.length)\n .split(\"\")\n .map((char) => \"-\")\n .join(\"\")\n console.log(\n chalk.yellow(\n \"---------------------------------------------------------------\" +\n lengthSeparators,\n ),\n )\n console.log(\n chalk.yellow.bold(\n `-- Schema synchronization will execute following sql queries (${chalk.white(\n sqlInMemory.upQueries.length.toString(),\n )}):`,\n ),\n )\n console.log(\n chalk.yellow(\n \"---------------------------------------------------------------\" +\n lengthSeparators,\n ),\n )\n\n sqlInMemory.upQueries.forEach((upQuery) => {\n let sqlString = upQuery.query\n sqlString = sqlString.trim()\n sqlString =\n sqlString.substr(-1) === \";\"\n ? sqlString\n : sqlString + \";\"\n console.log(highlight(sqlString))\n })\n }\n await dataSource.destroy()\n } catch (err) {\n if (dataSource)\n PlatformTools.logCmdErr(\n \"Error during schema synchronization:\",\n err,\n )\n process.exit(1)\n }\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/commands/SchemaLogCommand.ts"],"names":[],"mappings":";;;;AAAA,0DAAwB;AACxB,wDAAuB;AACvB,8DAA6B;AAG7B,6DAAyD;AACzD,iDAA6C;AAE7C;;GAEG;AACH,MAAa,gBAAgB;IAA7B;QACI,YAAO,GAAG,YAAY,CAAA;QACtB,aAAQ,GACJ,sGAAsG;YACtG,+DAA+D,CAAA;IAkEvE,CAAC;IAhEG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YAC7B,KAAK,EAAE,GAAG;YACV,QAAQ,EACJ,6DAA6D;YACjE,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,UAAU,GAA2B,SAAS,CAAA;QAClD,IAAI,CAAC;YACD,UAAU,GAAG,MAAM,2BAAY,CAAC,cAAc,CAC1C,cAAI,CAAC,OAAO,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,UAAoB,CAAC,CACzD,CAAA;YACD,UAAU,CAAC,UAAU,CAAC;gBAClB,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,KAAK;aACjB,CAAC,CAAA;YACF,MAAM,UAAU,CAAC,UAAU,EAAE,CAAA;YAE7B,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,MAAM;iBACtC,mBAAmB,EAAE;iBACrB,GAAG,EAAE,CAAA;YAEV,IAAI,WAAW,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,GAAG,CACP,eAAI,CAAC,MAAM,CAAA,4FAA4F,CAC1G,CAAA;YACL,CAAC;iBAAM,CAAC;gBACJ,MAAM,aAAa,GAAG,EAAE,CAAC,QAAQ,CAC7B,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,EAChD,GAAG,CACN,CAAA;gBACD,OAAO,CAAC,GAAG,CAAC,eAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAA;gBACvC,OAAO,CAAC,GAAG,CACP,eAAI,CAAC,MAAM;qBACN,IAAI,CAAA,iEAAiE,eAAI,CAAC,KAAK,CAChF,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,CAC1C,IAAI,CACR,CAAA;gBACD,OAAO,CAAC,GAAG,CAAC,eAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAA;gBAEvC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBACtC,IAAI,SAAS,GAAG,OAAO,CAAC,KAAK,CAAA;oBAC7B,SAAS,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;oBAC5B,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;wBAC/B,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,SAAS,GAAG,GAAG,CAAA;oBACrB,OAAO,CAAC,GAAG,CAAC,6BAAa,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAA;gBACtD,CAAC,CAAC,CAAA;YACN,CAAC;YACD,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,UAAU;gBACV,6BAAa,CAAC,SAAS,CACnB,sCAAsC,EACtC,GAAG,CACN,CAAA;YACL,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;CACJ;AAtED,4CAsEC","file":"SchemaLogCommand.js","sourcesContent":["import ansi from \"ansis\"\nimport path from \"path\"\nimport process from \"process\"\nimport yargs from \"yargs\"\nimport { DataSource } from \"../data-source/DataSource\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Shows sql to be executed by schema:sync command.\n */\nexport class SchemaLogCommand implements yargs.CommandModule {\n command = \"schema:log\"\n describe =\n \"Shows sql to be executed by schema:sync command. It shows sql log only for your default dataSource. \" +\n \"To run update queries on a concrete connection use -c option.\"\n\n builder(args: yargs.Argv) {\n return args.option(\"dataSource\", {\n alias: \"d\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: false,\n })\n await dataSource.initialize()\n\n const sqlInMemory = await dataSource.driver\n .createSchemaBuilder()\n .log()\n\n if (sqlInMemory.upQueries.length === 0) {\n console.log(\n ansi.yellow`Your schema is up to date - there are no queries to be executed by schema synchronization.`,\n )\n } else {\n const lineSeparator = \"\".padStart(\n 63 + String(sqlInMemory.upQueries.length).length,\n \"-\",\n )\n console.log(ansi.yellow(lineSeparator))\n console.log(\n ansi.yellow\n .bold`-- Schema synchronization will execute following sql queries (${ansi.white(\n sqlInMemory.upQueries.length.toString(),\n )}):`,\n )\n console.log(ansi.yellow(lineSeparator))\n\n sqlInMemory.upQueries.forEach((upQuery) => {\n let sqlString = upQuery.query\n sqlString = sqlString.trim()\n sqlString = sqlString.endsWith(\";\")\n ? sqlString\n : sqlString + \";\"\n console.log(PlatformTools.highlightSql(sqlString))\n })\n }\n await dataSource.destroy()\n } catch (err) {\n if (dataSource)\n PlatformTools.logCmdErr(\n \"Error during schema synchronization:\",\n err,\n )\n process.exit(1)\n }\n }\n}\n"],"sourceRoot":".."}
@@ -1,4 +1,4 @@
1
- import * as yargs from "yargs";
1
+ import yargs from "yargs";
2
2
  /**
3
3
  * Synchronizes database schema with entities.
4
4
  */
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SchemaSyncCommand = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const chalk_1 = tslib_1.__importDefault(require("chalk"));
6
- const PlatformTools_1 = require("../platform/PlatformTools");
5
+ const ansis_1 = tslib_1.__importDefault(require("ansis"));
7
6
  const path_1 = tslib_1.__importDefault(require("path"));
8
7
  const process_1 = tslib_1.__importDefault(require("process"));
8
+ const PlatformTools_1 = require("../platform/PlatformTools");
9
9
  const CommandUtils_1 = require("./CommandUtils");
10
10
  /**
11
11
  * Synchronizes database schema with entities.
@@ -36,7 +36,7 @@ class SchemaSyncCommand {
36
36
  await dataSource.initialize();
37
37
  await dataSource.synchronize();
38
38
  await dataSource.destroy();
39
- console.log(chalk_1.default.green("Schema synchronization finished successfully."));
39
+ console.log(ansis_1.default.green `Schema synchronization finished successfully.`);
40
40
  }
41
41
  catch (err) {
42
42
  PlatformTools_1.PlatformTools.logCmdErr("Error during schema synchronization:", err);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commands/SchemaSyncCommand.ts"],"names":[],"mappings":";;;;AAEA,0DAAyB;AACzB,6DAAyD;AACzD,wDAAuB;AACvB,8DAA6B;AAC7B,iDAA6C;AAE7C;;GAEG;AACH,MAAa,iBAAiB;IAA9B;QACI,YAAO,GAAG,aAAa,CAAA;QACvB,aAAQ,GACJ,8GAA8G;YAC9G,+DAA+D,CAAA;IAuCvE,CAAC;IArCG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YAC7B,KAAK,EAAE,GAAG;YACV,QAAQ,EACJ,6DAA6D;YACjE,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,UAAU,GAA2B,SAAS,CAAA;QAClD,IAAI,CAAC;YACD,UAAU,GAAG,MAAM,2BAAY,CAAC,cAAc,CAC1C,cAAI,CAAC,OAAO,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,UAAoB,CAAC,CACzD,CAAA;YACD,UAAU,CAAC,UAAU,CAAC;gBAClB,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC/B,CAAC,CAAA;YACF,MAAM,UAAU,CAAC,UAAU,EAAE,CAAA;YAC7B,MAAM,UAAU,CAAC,WAAW,EAAE,CAAA;YAC9B,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE1B,OAAO,CAAC,GAAG,CACP,eAAK,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAC/D,CAAA;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,6BAAa,CAAC,SAAS,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAA;YAEpE,IAAI,UAAU,IAAI,UAAU,CAAC,aAAa;gBACtC,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE9B,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;CACJ;AA3CD,8CA2CC","file":"SchemaSyncCommand.js","sourcesContent":["import { DataSource } from \"../data-source/DataSource\"\nimport * as yargs from \"yargs\"\nimport chalk from \"chalk\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport path from \"path\"\nimport process from \"process\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Synchronizes database schema with entities.\n */\nexport class SchemaSyncCommand implements yargs.CommandModule {\n command = \"schema:sync\"\n describe =\n \"Synchronizes your entities with database schema. It runs schema update queries on all connections you have. \" +\n \"To run update queries on a concrete connection use -c option.\"\n\n builder(args: yargs.Argv) {\n return args.option(\"dataSource\", {\n alias: \"d\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: [\"query\", \"schema\"],\n })\n await dataSource.initialize()\n await dataSource.synchronize()\n await dataSource.destroy()\n\n console.log(\n chalk.green(\"Schema synchronization finished successfully.\"),\n )\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during schema synchronization:\", err)\n\n if (dataSource && dataSource.isInitialized)\n await dataSource.destroy()\n\n process.exit(1)\n }\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/commands/SchemaSyncCommand.ts"],"names":[],"mappings":";;;;AAAA,0DAAwB;AACxB,wDAAuB;AACvB,8DAA6B;AAG7B,6DAAyD;AACzD,iDAA6C;AAE7C;;GAEG;AACH,MAAa,iBAAiB;IAA9B;QACI,YAAO,GAAG,aAAa,CAAA;QACvB,aAAQ,GACJ,8GAA8G;YAC9G,+DAA+D,CAAA;IAuCvE,CAAC;IArCG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YAC7B,KAAK,EAAE,GAAG;YACV,QAAQ,EACJ,6DAA6D;YACjE,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,UAAU,GAA2B,SAAS,CAAA;QAClD,IAAI,CAAC;YACD,UAAU,GAAG,MAAM,2BAAY,CAAC,cAAc,CAC1C,cAAI,CAAC,OAAO,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,UAAoB,CAAC,CACzD,CAAA;YACD,UAAU,CAAC,UAAU,CAAC;gBAClB,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC/B,CAAC,CAAA;YACF,MAAM,UAAU,CAAC,UAAU,EAAE,CAAA;YAC7B,MAAM,UAAU,CAAC,WAAW,EAAE,CAAA;YAC9B,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE1B,OAAO,CAAC,GAAG,CACP,eAAI,CAAC,KAAK,CAAA,+CAA+C,CAC5D,CAAA;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,6BAAa,CAAC,SAAS,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAA;YAEpE,IAAI,UAAU,IAAI,UAAU,CAAC,aAAa;gBACtC,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA;YAE9B,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;CACJ;AA3CD,8CA2CC","file":"SchemaSyncCommand.js","sourcesContent":["import ansi from \"ansis\"\nimport path from \"path\"\nimport process from \"process\"\nimport yargs from \"yargs\"\nimport { DataSource } from \"../data-source/DataSource\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Synchronizes database schema with entities.\n */\nexport class SchemaSyncCommand implements yargs.CommandModule {\n command = \"schema:sync\"\n describe =\n \"Synchronizes your entities with database schema. It runs schema update queries on all connections you have. \" +\n \"To run update queries on a concrete connection use -c option.\"\n\n builder(args: yargs.Argv) {\n return args.option(\"dataSource\", {\n alias: \"d\",\n describe:\n \"Path to the file where your DataSource instance is defined.\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n let dataSource: DataSource | undefined = undefined\n try {\n dataSource = await CommandUtils.loadDataSource(\n path.resolve(process.cwd(), args.dataSource as string),\n )\n dataSource.setOptions({\n synchronize: false,\n migrationsRun: false,\n dropSchema: false,\n logging: [\"query\", \"schema\"],\n })\n await dataSource.initialize()\n await dataSource.synchronize()\n await dataSource.destroy()\n\n console.log(\n ansi.green`Schema synchronization finished successfully.`,\n )\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during schema synchronization:\", err)\n\n if (dataSource && dataSource.isInitialized)\n await dataSource.destroy()\n\n process.exit(1)\n }\n }\n}\n"],"sourceRoot":".."}
@@ -1,4 +1,4 @@
1
- import * as yargs from "yargs";
1
+ import yargs from "yargs";
2
2
  /**
3
3
  * Generates a new subscriber.
4
4
  */
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SubscriberCreateCommand = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const chalk_1 = tslib_1.__importDefault(require("chalk"));
5
+ const ansis_1 = tslib_1.__importDefault(require("ansis"));
6
6
  const path_1 = tslib_1.__importDefault(require("path"));
7
7
  const PlatformTools_1 = require("../platform/PlatformTools");
8
8
  const CommandUtils_1 = require("./CommandUtils");
@@ -30,13 +30,13 @@ class SubscriberCreateCommand {
30
30
  const fileContent = SubscriberCreateCommand.getTemplate(filename);
31
31
  const fileExists = await CommandUtils_1.CommandUtils.fileExists(fullPath + ".ts");
32
32
  if (fileExists) {
33
- throw `File ${chalk_1.default.blue(fullPath + ".ts")} already exists`;
33
+ throw new Error(`File "${fullPath}.ts" already exists`);
34
34
  }
35
35
  await CommandUtils_1.CommandUtils.createFile(fullPath + ".ts", fileContent);
36
- console.log(chalk_1.default.green(`Subscriber ${chalk_1.default.blue(fullPath)} has been created successfully.`));
36
+ console.log(ansis_1.default.green(`Subscriber ${ansis_1.default.blue `${fullPath}.ts`} has been created successfully.`));
37
37
  }
38
- catch (err) {
39
- PlatformTools_1.PlatformTools.logCmdErr("Error during subscriber creation:");
38
+ catch (error) {
39
+ PlatformTools_1.PlatformTools.logCmdErr("Error during subscriber creation:", error);
40
40
  process.exit(1);
41
41
  }
42
42
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/commands/SubscriberCreateCommand.ts"],"names":[],"mappings":";;;;AACA,0DAAyB;AACzB,wDAAuB;AACvB,6DAAyD;AACzD,iDAA6C;AAE7C;;GAEG;AACH,MAAa,uBAAuB;IAApC;QACI,YAAO,GAAG,0BAA0B,CAAA;QACpC,aAAQ,GAAG,6BAA6B,CAAA;IAmD5C,CAAC;IAjDG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC3B,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,6BAA6B;YACvC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,CAAC;YACD,MAAM,QAAQ,GAAI,IAAI,CAAC,IAAe,CAAC,UAAU,CAAC,GAAG,CAAC;gBAClD,CAAC,CAAE,IAAI,CAAC,IAAe;gBACvB,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,IAAc,CAAC,CAAA;YACtD,MAAM,QAAQ,GAAG,cAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACxC,MAAM,WAAW,GAAG,uBAAuB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;YACjE,MAAM,UAAU,GAAG,MAAM,2BAAY,CAAC,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAA;YAClE,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,QAAQ,eAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAA;YAC/D,CAAC;YACD,MAAM,2BAAY,CAAC,UAAU,CAAC,QAAQ,GAAG,KAAK,EAAE,WAAW,CAAC,CAAA;YAC5D,OAAO,CAAC,GAAG,CACP,eAAK,CAAC,KAAK,CACP,cAAc,eAAK,CAAC,IAAI,CACpB,QAAQ,CACX,iCAAiC,CACrC,CACJ,CAAA;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,6BAAa,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAA;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,2BAA2B;IAC3B,4EAA4E;IAE5E;;OAEG;IACO,MAAM,CAAC,WAAW,CAAC,IAAY;QACrC,OAAO;;;eAGA,IAAI;;;CAGlB,CAAA;IACG,CAAC;CACJ;AArDD,0DAqDC","file":"SubscriberCreateCommand.js","sourcesContent":["import * as yargs from \"yargs\"\nimport chalk from \"chalk\"\nimport path from \"path\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Generates a new subscriber.\n */\nexport class SubscriberCreateCommand implements yargs.CommandModule {\n command = \"subscriber:create <path>\"\n describe = \"Generates a new subscriber.\"\n\n builder(args: yargs.Argv) {\n return args.positional(\"path\", {\n type: \"string\",\n describe: \"Path of the subscriber file\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n try {\n const fullPath = (args.path as string).startsWith(\"/\")\n ? (args.path as string)\n : path.resolve(process.cwd(), args.path as string)\n const filename = path.basename(fullPath)\n const fileContent = SubscriberCreateCommand.getTemplate(filename)\n const fileExists = await CommandUtils.fileExists(fullPath + \".ts\")\n if (fileExists) {\n throw `File ${chalk.blue(fullPath + \".ts\")} already exists`\n }\n await CommandUtils.createFile(fullPath + \".ts\", fileContent)\n console.log(\n chalk.green(\n `Subscriber ${chalk.blue(\n fullPath,\n )} has been created successfully.`,\n ),\n )\n } catch (err) {\n PlatformTools.logCmdErr(\"Error during subscriber creation:\")\n process.exit(1)\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Gets contents of the entity file.\n */\n protected static getTemplate(name: string): string {\n return `import { EventSubscriber, EntitySubscriberInterface } from \"typeorm\"\n\n@EventSubscriber()\nexport class ${name} implements EntitySubscriberInterface {\n\n}\n`\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/commands/SubscriberCreateCommand.ts"],"names":[],"mappings":";;;;AAAA,0DAAwB;AACxB,wDAAuB;AAEvB,6DAAyD;AACzD,iDAA6C;AAE7C;;GAEG;AACH,MAAa,uBAAuB;IAApC;QACI,YAAO,GAAG,0BAA0B,CAAA;QACpC,aAAQ,GAAG,6BAA6B,CAAA;IAiD5C,CAAC;IA/CG,OAAO,CAAC,IAAgB;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC3B,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,6BAA6B;YACvC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QAC/B,IAAI,CAAC;YACD,MAAM,QAAQ,GAAI,IAAI,CAAC,IAAe,CAAC,UAAU,CAAC,GAAG,CAAC;gBAClD,CAAC,CAAE,IAAI,CAAC,IAAe;gBACvB,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,IAAc,CAAC,CAAA;YACtD,MAAM,QAAQ,GAAG,cAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACxC,MAAM,WAAW,GAAG,uBAAuB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;YACjE,MAAM,UAAU,GAAG,MAAM,2BAAY,CAAC,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAA;YAClE,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,SAAS,QAAQ,qBAAqB,CAAC,CAAA;YAC3D,CAAC;YACD,MAAM,2BAAY,CAAC,UAAU,CAAC,QAAQ,GAAG,KAAK,EAAE,WAAW,CAAC,CAAA;YAC5D,OAAO,CAAC,GAAG,CACP,eAAI,CAAC,KAAK,CACN,cAAc,eAAI,CAAC,IAAI,CAAA,GAAG,QAAQ,KAAK,iCAAiC,CAC3E,CACJ,CAAA;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,6BAAa,CAAC,SAAS,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAA;YACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,2BAA2B;IAC3B,4EAA4E;IAE5E;;OAEG;IACO,MAAM,CAAC,WAAW,CAAC,IAAY;QACrC,OAAO;;;eAGA,IAAI;;;CAGlB,CAAA;IACG,CAAC;CACJ;AAnDD,0DAmDC","file":"SubscriberCreateCommand.js","sourcesContent":["import ansi from \"ansis\"\nimport path from \"path\"\nimport yargs from \"yargs\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { CommandUtils } from \"./CommandUtils\"\n\n/**\n * Generates a new subscriber.\n */\nexport class SubscriberCreateCommand implements yargs.CommandModule {\n command = \"subscriber:create <path>\"\n describe = \"Generates a new subscriber.\"\n\n builder(args: yargs.Argv) {\n return args.positional(\"path\", {\n type: \"string\",\n describe: \"Path of the subscriber file\",\n demandOption: true,\n })\n }\n\n async handler(args: yargs.Arguments) {\n try {\n const fullPath = (args.path as string).startsWith(\"/\")\n ? (args.path as string)\n : path.resolve(process.cwd(), args.path as string)\n const filename = path.basename(fullPath)\n const fileContent = SubscriberCreateCommand.getTemplate(filename)\n const fileExists = await CommandUtils.fileExists(fullPath + \".ts\")\n if (fileExists) {\n throw new Error(`File \"${fullPath}.ts\" already exists`)\n }\n await CommandUtils.createFile(fullPath + \".ts\", fileContent)\n console.log(\n ansi.green(\n `Subscriber ${ansi.blue`${fullPath}.ts`} has been created successfully.`,\n ),\n )\n } catch (error) {\n PlatformTools.logCmdErr(\"Error during subscriber creation:\", error)\n process.exit(1)\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Gets contents of the entity file.\n */\n protected static getTemplate(name: string): string {\n return `import { EventSubscriber, EntitySubscriberInterface } from \"typeorm\"\n\n@EventSubscriber()\nexport class ${name} implements EntitySubscriberInterface {\n\n}\n`\n }\n}\n"],"sourceRoot":".."}
@@ -8,22 +8,22 @@ export declare class ConnectionOptionsReader {
8
8
  * Directory where ormconfig should be read from.
9
9
  * By default its your application root (where your app package.json is located).
10
10
  */
11
- root?: string | undefined;
11
+ root?: string;
12
12
  /**
13
13
  * Filename of the ormconfig configuration. By default its equal to "ormconfig".
14
14
  */
15
- configName?: string | undefined;
15
+ configName?: string;
16
16
  } | undefined;
17
17
  constructor(options?: {
18
18
  /**
19
19
  * Directory where ormconfig should be read from.
20
20
  * By default its your application root (where your app package.json is located).
21
21
  */
22
- root?: string | undefined;
22
+ root?: string;
23
23
  /**
24
24
  * Filename of the ormconfig configuration. By default its equal to "ormconfig".
25
25
  */
26
- configName?: string | undefined;
26
+ configName?: string;
27
27
  } | undefined);
28
28
  /**
29
29
  * Returns all connection options read from the ormconfig.
package/container.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFromContainer = exports.useContainer = void 0;
3
+ exports.useContainer = useContainer;
4
+ exports.getFromContainer = getFromContainer;
4
5
  /**
5
6
  * Container to be used by this library for inversion control. If container was not implicitly set then by default
6
7
  * container simply creates a new instance of the given class.
@@ -34,7 +35,6 @@ function useContainer(iocContainer, options) {
34
35
  userContainer = iocContainer;
35
36
  userContainerOptions = options;
36
37
  }
37
- exports.useContainer = useContainer;
38
38
  /**
39
39
  * Gets the IOC container used by this library.
40
40
  *
@@ -56,6 +56,5 @@ function getFromContainer(someClass) {
56
56
  }
57
57
  return defaultContainer.get(someClass);
58
58
  }
59
- exports.getFromContainer = getFromContainer;
60
59
 
61
60
  //# sourceMappingURL=container.js.map
package/container.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/container.ts"],"names":[],"mappings":";;;AA6BA;;;;;GAKG;AACH,MAAM,gBAAgB,GAAuB,IAAI,CAAC;IAAA;QAGtC,cAAS,GAAsC,EAAE,CAAA;IAc7D,CAAC;IAZG,GAAG,CAAI,SAA2B;QAC9B,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAA;QAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,GAAG;gBACP,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,IAAK,SAAyB,EAAE;aAC3C,CAAA;YACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACjC,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,CAAA;IAC1B,CAAC;CACJ,CAAC,EAAE,CAAA;AAEJ,IAAI,aAAiC,CAAA;AACrC,IAAI,oBAAqD,CAAA;AAEzD;;;;GAIG;AACH,SAAgB,YAAY,CACxB,YAAgC,EAChC,OAA6B;IAE7B,aAAa,GAAG,YAAY,CAAA;IAC5B,oBAAoB,GAAG,OAAO,CAAA;AAClC,CAAC;AAND,oCAMC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAI,SAA2B;IAC3D,IAAI,aAAa,EAAE,CAAC;QAChB,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAC7C,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAA;YAE7B,IAAI,CAAC,oBAAoB,IAAI,CAAC,oBAAoB,CAAC,QAAQ;gBACvD,OAAO,QAAQ,CAAA;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,oBAAoB,IAAI,CAAC,oBAAoB,CAAC,gBAAgB;gBAC/D,MAAM,KAAK,CAAA;QACnB,CAAC;IACL,CAAC;IACD,OAAO,gBAAgB,CAAC,GAAG,CAAI,SAAS,CAAC,CAAA;AAC7C,CAAC;AAdD,4CAcC","file":"container.js","sourcesContent":["/**\n * Container options.\n *\n * @deprecated\n */\nexport interface UseContainerOptions {\n /**\n * If set to true, then default container will be used in the case if given container haven't returned anything.\n */\n fallback?: boolean\n\n /**\n * If set to true, then default container will be used in the case if given container thrown an exception.\n */\n fallbackOnErrors?: boolean\n}\n\n/**\n * @deprecated\n */\nexport type ContainedType<T> = { new (...args: any[]): T } | Function\n\n/**\n * @deprecated\n */\nexport interface ContainerInterface {\n get<T>(someClass: ContainedType<T>): T\n}\n\n/**\n * Container to be used by this library for inversion control. If container was not implicitly set then by default\n * container simply creates a new instance of the given class.\n *\n * @deprecated\n */\nconst defaultContainer: ContainerInterface = new (class\n implements ContainerInterface\n{\n private instances: { type: Function; object: any }[] = []\n\n get<T>(someClass: ContainedType<T>): T {\n let instance = this.instances.find((i) => i.type === someClass)\n if (!instance) {\n instance = {\n type: someClass,\n object: new (someClass as new () => T)(),\n }\n this.instances.push(instance)\n }\n\n return instance.object\n }\n})()\n\nlet userContainer: ContainerInterface\nlet userContainerOptions: UseContainerOptions | undefined\n\n/**\n * Sets container to be used by this library.\n *\n * @deprecated\n */\nexport function useContainer(\n iocContainer: ContainerInterface,\n options?: UseContainerOptions,\n) {\n userContainer = iocContainer\n userContainerOptions = options\n}\n\n/**\n * Gets the IOC container used by this library.\n *\n * @deprecated\n */\nexport function getFromContainer<T>(someClass: ContainedType<T>): T {\n if (userContainer) {\n try {\n const instance = userContainer.get(someClass)\n if (instance) return instance\n\n if (!userContainerOptions || !userContainerOptions.fallback)\n return instance\n } catch (error) {\n if (!userContainerOptions || !userContainerOptions.fallbackOnErrors)\n throw error\n }\n }\n return defaultContainer.get<T>(someClass)\n}\n"],"sourceRoot":"."}
1
+ {"version":3,"sources":["../../src/container.ts"],"names":[],"mappings":";;AA8DA,oCAMC;AAOD,4CAcC;AA5DD;;;;;GAKG;AACH,MAAM,gBAAgB,GAAuB,IAAI,CAAC;IAAA;QAGtC,cAAS,GAAsC,EAAE,CAAA;IAc7D,CAAC;IAZG,GAAG,CAAI,SAA2B;QAC9B,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAA;QAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,GAAG;gBACP,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,IAAK,SAAyB,EAAE;aAC3C,CAAA;YACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACjC,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,CAAA;IAC1B,CAAC;CACJ,CAAC,EAAE,CAAA;AAEJ,IAAI,aAAiC,CAAA;AACrC,IAAI,oBAAqD,CAAA;AAEzD;;;;GAIG;AACH,SAAgB,YAAY,CACxB,YAAgC,EAChC,OAA6B;IAE7B,aAAa,GAAG,YAAY,CAAA;IAC5B,oBAAoB,GAAG,OAAO,CAAA;AAClC,CAAC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAI,SAA2B;IAC3D,IAAI,aAAa,EAAE,CAAC;QAChB,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAC7C,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAA;YAE7B,IAAI,CAAC,oBAAoB,IAAI,CAAC,oBAAoB,CAAC,QAAQ;gBACvD,OAAO,QAAQ,CAAA;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,oBAAoB,IAAI,CAAC,oBAAoB,CAAC,gBAAgB;gBAC/D,MAAM,KAAK,CAAA;QACnB,CAAC;IACL,CAAC;IACD,OAAO,gBAAgB,CAAC,GAAG,CAAI,SAAS,CAAC,CAAA;AAC7C,CAAC","file":"container.js","sourcesContent":["/**\n * Container options.\n *\n * @deprecated\n */\nexport interface UseContainerOptions {\n /**\n * If set to true, then default container will be used in the case if given container haven't returned anything.\n */\n fallback?: boolean\n\n /**\n * If set to true, then default container will be used in the case if given container thrown an exception.\n */\n fallbackOnErrors?: boolean\n}\n\n/**\n * @deprecated\n */\nexport type ContainedType<T> = { new (...args: any[]): T } | Function\n\n/**\n * @deprecated\n */\nexport interface ContainerInterface {\n get<T>(someClass: ContainedType<T>): T\n}\n\n/**\n * Container to be used by this library for inversion control. If container was not implicitly set then by default\n * container simply creates a new instance of the given class.\n *\n * @deprecated\n */\nconst defaultContainer: ContainerInterface = new (class\n implements ContainerInterface\n{\n private instances: { type: Function; object: any }[] = []\n\n get<T>(someClass: ContainedType<T>): T {\n let instance = this.instances.find((i) => i.type === someClass)\n if (!instance) {\n instance = {\n type: someClass,\n object: new (someClass as new () => T)(),\n }\n this.instances.push(instance)\n }\n\n return instance.object\n }\n})()\n\nlet userContainer: ContainerInterface\nlet userContainerOptions: UseContainerOptions | undefined\n\n/**\n * Sets container to be used by this library.\n *\n * @deprecated\n */\nexport function useContainer(\n iocContainer: ContainerInterface,\n options?: UseContainerOptions,\n) {\n userContainer = iocContainer\n userContainerOptions = options\n}\n\n/**\n * Gets the IOC container used by this library.\n *\n * @deprecated\n */\nexport function getFromContainer<T>(someClass: ContainedType<T>): T {\n if (userContainer) {\n try {\n const instance = userContainer.get(someClass)\n if (instance) return instance\n\n if (!userContainerOptions || !userContainerOptions.fallback)\n return instance\n } catch (error) {\n if (!userContainerOptions || !userContainerOptions.fallbackOnErrors)\n throw error\n }\n }\n return defaultContainer.get<T>(someClass)\n}\n"],"sourceRoot":"."}
@@ -214,6 +214,8 @@ export declare class DataSource {
214
214
  transaction<T>(isolationLevel: IsolationLevel, runInTransaction: (entityManager: EntityManager) => Promise<T>): Promise<T>;
215
215
  /**
216
216
  * Executes raw SQL query and returns raw database results.
217
+ *
218
+ * @see [Official docs](https://typeorm.io/data-source-api) for examples.
217
219
  */
218
220
  query<T = any>(query: string, parameters?: any[], queryRunner?: QueryRunner): Promise<T>;
219
221
  /**
@@ -339,6 +339,8 @@ class DataSource {
339
339
  }
340
340
  /**
341
341
  * Executes raw SQL query and returns raw database results.
342
+ *
343
+ * @see [Official docs](https://typeorm.io/data-source-api) for examples.
342
344
  */
343
345
  async query(query, parameters, queryRunner) {
344
346
  if (InstanceChecker_1.InstanceChecker.isMongoEntityManager(this.manager))