typeorm 0.3.12-dev.ef64bfc → 0.3.12

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 (256) hide show
  1. package/browser/cli-ts-node-commonjs.js +0 -0
  2. package/browser/cli-ts-node-esm.js +0 -0
  3. package/browser/common/DeepPartial.d.ts +1 -1
  4. package/browser/common/EntityTarget.d.ts +1 -1
  5. package/browser/common/MixedList.d.ts +1 -1
  6. package/browser/common/NonNever.d.ts +1 -1
  7. package/browser/common/ObjectType.d.ts +1 -1
  8. package/browser/common/PickKeysByType.d.ts +6 -0
  9. package/browser/common/PickKeysByType.js +3 -0
  10. package/browser/common/PickKeysByType.js.map +1 -0
  11. package/browser/common/RelationType.d.ts +1 -1
  12. package/browser/connection/BaseConnectionOptions.d.ts +1 -1
  13. package/browser/connection/ConnectionOptions.d.ts +1 -1
  14. package/browser/container.d.ts +1 -1
  15. package/browser/data-source/DataSourceOptions.d.ts +1 -1
  16. package/browser/decorator/columns/PrimaryColumn.d.ts +1 -1
  17. package/browser/driver/Driver.d.ts +1 -1
  18. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +6 -0
  19. package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -1
  20. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +3 -1
  21. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  22. package/browser/driver/mongodb/MongoDriver.d.ts +1 -1
  23. package/browser/driver/mongodb/MongoDriver.js.map +1 -1
  24. package/browser/driver/mongodb/typings.d.ts +6 -6
  25. package/browser/driver/oracle/OracleDriver.d.ts +1 -1
  26. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  27. package/browser/driver/postgres/PostgresQueryRunner.js +1 -1
  28. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  29. package/browser/driver/sap/SapDriver.d.ts +1 -1
  30. package/browser/driver/sap/SapDriver.js.map +1 -1
  31. package/browser/driver/spanner/SpannerDriver.d.ts +1 -1
  32. package/browser/driver/spanner/SpannerDriver.js.map +1 -1
  33. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +1 -1
  34. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +12 -0
  35. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  36. package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +1 -1
  37. package/browser/driver/sqlserver/SqlServerDriver.d.ts +1 -1
  38. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  39. package/browser/driver/types/ColumnTypes.d.ts +7 -7
  40. package/browser/driver/types/DatabaseType.d.ts +1 -1
  41. package/browser/driver/types/GeoJsonTypes.d.ts +12 -12
  42. package/browser/driver/types/IsolationLevel.d.ts +1 -1
  43. package/browser/driver/types/ReplicationMode.d.ts +1 -1
  44. package/browser/driver/types/UpsertType.d.ts +1 -1
  45. package/browser/entity-manager/EntityManager.d.ts +18 -0
  46. package/browser/entity-manager/EntityManager.js +32 -0
  47. package/browser/entity-manager/EntityManager.js.map +1 -1
  48. package/browser/entity-manager/MongoEntityManager.js +4 -4
  49. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  50. package/browser/find-options/FindOperator.d.ts +1 -1
  51. package/browser/find-options/FindOperatorType.d.ts +1 -1
  52. package/browser/find-options/FindOperatorType.js.map +1 -1
  53. package/browser/find-options/FindOptionsOrder.d.ts +3 -3
  54. package/browser/find-options/FindOptionsRelations.d.ts +3 -3
  55. package/browser/find-options/FindOptionsSelect.d.ts +3 -3
  56. package/browser/find-options/FindOptionsWhere.d.ts +6 -2
  57. package/browser/find-options/FindOptionsWhere.js.map +1 -1
  58. package/browser/find-options/OrderByCondition.d.ts +1 -1
  59. package/browser/find-options/mongodb/MongoFindOneOptions.d.ts +1 -1
  60. package/browser/find-options/operator/JsonContains.d.ts +6 -0
  61. package/browser/find-options/operator/JsonContains.js +10 -0
  62. package/browser/find-options/operator/JsonContains.js.map +1 -0
  63. package/browser/index.d.ts +3 -0
  64. package/browser/index.js +3 -0
  65. package/browser/index.js.map +1 -1
  66. package/browser/logger/AbstractLogger.d.ts +49 -0
  67. package/browser/logger/AbstractLogger.js +230 -0
  68. package/browser/logger/AbstractLogger.js.map +1 -0
  69. package/browser/logger/AdvancedConsoleLogger.d.ts +5 -33
  70. package/browser/logger/AdvancedConsoleLogger.js +41 -106
  71. package/browser/logger/AdvancedConsoleLogger.js.map +1 -1
  72. package/browser/logger/DebugLogger.d.ts +9 -29
  73. package/browser/logger/DebugLogger.js +56 -74
  74. package/browser/logger/DebugLogger.js.map +1 -1
  75. package/browser/logger/FileLogger.d.ts +6 -32
  76. package/browser/logger/FileLogger.js +50 -97
  77. package/browser/logger/FileLogger.js.map +1 -1
  78. package/browser/logger/Logger.d.ts +31 -0
  79. package/browser/logger/Logger.js.map +1 -1
  80. package/browser/logger/LoggerOptions.d.ts +3 -2
  81. package/browser/logger/LoggerOptions.js.map +1 -1
  82. package/browser/logger/SimpleConsoleLogger.d.ts +5 -33
  83. package/browser/logger/SimpleConsoleLogger.js +43 -106
  84. package/browser/logger/SimpleConsoleLogger.js.map +1 -1
  85. package/browser/metadata/types/DeferrableType.d.ts +1 -1
  86. package/browser/metadata/types/EventListenerTypes.d.ts +1 -1
  87. package/browser/metadata/types/OnDeleteType.d.ts +1 -1
  88. package/browser/metadata/types/OnUpdateType.d.ts +1 -1
  89. package/browser/metadata/types/PropertyTypeInFunction.d.ts +1 -1
  90. package/browser/metadata/types/RelationTypeInFunction.d.ts +1 -1
  91. package/browser/metadata/types/RelationTypes.d.ts +1 -1
  92. package/browser/metadata/types/TableTypes.d.ts +1 -1
  93. package/browser/metadata/types/TreeTypes.d.ts +1 -1
  94. package/browser/metadata-args/types/ColumnMode.d.ts +1 -1
  95. package/browser/metadata-builder/RelationJoinColumnBuilder.js +2 -1
  96. package/browser/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
  97. package/browser/migration/MigrationExecutor.js +1 -1
  98. package/browser/migration/MigrationExecutor.js.map +1 -1
  99. package/browser/naming-strategy/LegacyOracleNamingStrategy.d.ts +21 -0
  100. package/browser/naming-strategy/LegacyOracleNamingStrategy.js +46 -0
  101. package/browser/naming-strategy/LegacyOracleNamingStrategy.js.map +1 -0
  102. package/browser/persistence/SubjectTopoligicalSorter.js +2 -6
  103. package/browser/persistence/SubjectTopoligicalSorter.js.map +1 -1
  104. package/browser/platform/BrowserPlatformTools.js +2 -2
  105. package/browser/platform/BrowserPlatformTools.js.map +1 -1
  106. package/browser/platform/PlatformTools.d.ts +2 -0
  107. package/browser/platform/PlatformTools.js +6 -0
  108. package/browser/platform/PlatformTools.js.map +1 -1
  109. package/browser/query-builder/InsertOrUpdateOptions.d.ts +1 -1
  110. package/browser/query-builder/QueryBuilder.js +2 -0
  111. package/browser/query-builder/QueryBuilder.js.map +1 -1
  112. package/browser/query-builder/QueryPartialEntity.d.ts +3 -3
  113. package/browser/query-builder/SelectQueryBuilder.d.ts +1 -1
  114. package/browser/query-builder/SelectQueryBuilder.js +8 -4
  115. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  116. package/browser/query-builder/SelectQueryBuilderOption.d.ts +1 -1
  117. package/browser/query-builder/WhereClause.d.ts +3 -3
  118. package/browser/query-builder/WhereClause.js.map +1 -1
  119. package/browser/repository/BaseEntity.d.ts +25 -0
  120. package/browser/repository/BaseEntity.js +24 -0
  121. package/browser/repository/BaseEntity.js.map +1 -1
  122. package/browser/repository/EntityId.d.ts +1 -1
  123. package/browser/repository/Repository.d.ts +17 -0
  124. package/browser/repository/Repository.js +32 -8
  125. package/browser/repository/Repository.js.map +1 -1
  126. package/browser/util/VersionUtils.d.ts +1 -1
  127. package/cli-ts-node-commonjs.js +0 -0
  128. package/cli-ts-node-esm.js +0 -0
  129. package/cli.js +0 -0
  130. package/commands/CommandUtils.d.ts +1 -1
  131. package/commands/MigrationCreateCommand.d.ts +1 -1
  132. package/commands/MigrationGenerateCommand.d.ts +1 -1
  133. package/common/DeepPartial.d.ts +1 -1
  134. package/common/EntityTarget.d.ts +1 -1
  135. package/common/MixedList.d.ts +1 -1
  136. package/common/NonNever.d.ts +1 -1
  137. package/common/ObjectType.d.ts +1 -1
  138. package/common/PickKeysByType.d.ts +6 -0
  139. package/common/PickKeysByType.js +4 -0
  140. package/common/PickKeysByType.js.map +1 -0
  141. package/common/RelationType.d.ts +1 -1
  142. package/connection/BaseConnectionOptions.d.ts +1 -1
  143. package/connection/ConnectionOptions.d.ts +1 -1
  144. package/container.d.ts +1 -1
  145. package/data-source/DataSourceOptions.d.ts +1 -1
  146. package/decorator/columns/PrimaryColumn.d.ts +1 -1
  147. package/driver/Driver.d.ts +1 -1
  148. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +6 -0
  149. package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -1
  150. package/driver/better-sqlite3/BetterSqlite3Driver.js +3 -1
  151. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  152. package/driver/mongodb/MongoDriver.d.ts +1 -1
  153. package/driver/mongodb/MongoDriver.js.map +1 -1
  154. package/driver/mongodb/typings.d.ts +6 -6
  155. package/driver/oracle/OracleDriver.d.ts +1 -1
  156. package/driver/oracle/OracleDriver.js.map +1 -1
  157. package/driver/postgres/PostgresQueryRunner.js +1 -1
  158. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  159. package/driver/sap/SapDriver.d.ts +1 -1
  160. package/driver/sap/SapDriver.js.map +1 -1
  161. package/driver/spanner/SpannerDriver.d.ts +1 -1
  162. package/driver/spanner/SpannerDriver.js.map +1 -1
  163. package/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +1 -1
  164. package/driver/sqlite-abstract/AbstractSqliteDriver.js +12 -0
  165. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  166. package/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +1 -1
  167. package/driver/sqlserver/SqlServerDriver.d.ts +1 -1
  168. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  169. package/driver/types/ColumnTypes.d.ts +7 -7
  170. package/driver/types/DatabaseType.d.ts +1 -1
  171. package/driver/types/GeoJsonTypes.d.ts +12 -12
  172. package/driver/types/IsolationLevel.d.ts +1 -1
  173. package/driver/types/ReplicationMode.d.ts +1 -1
  174. package/driver/types/UpsertType.d.ts +1 -1
  175. package/entity-manager/EntityManager.d.ts +18 -0
  176. package/entity-manager/EntityManager.js +32 -0
  177. package/entity-manager/EntityManager.js.map +1 -1
  178. package/entity-manager/MongoEntityManager.js +4 -4
  179. package/entity-manager/MongoEntityManager.js.map +1 -1
  180. package/find-options/FindOperator.d.ts +1 -1
  181. package/find-options/FindOperatorType.d.ts +1 -1
  182. package/find-options/FindOperatorType.js.map +1 -1
  183. package/find-options/FindOptionsOrder.d.ts +3 -3
  184. package/find-options/FindOptionsRelations.d.ts +3 -3
  185. package/find-options/FindOptionsSelect.d.ts +3 -3
  186. package/find-options/FindOptionsWhere.d.ts +6 -2
  187. package/find-options/FindOptionsWhere.js.map +1 -1
  188. package/find-options/OrderByCondition.d.ts +1 -1
  189. package/find-options/mongodb/MongoFindOneOptions.d.ts +1 -1
  190. package/find-options/operator/JsonContains.d.ts +6 -0
  191. package/find-options/operator/JsonContains.js +14 -0
  192. package/find-options/operator/JsonContains.js.map +1 -0
  193. package/index.d.ts +3 -0
  194. package/index.js +5 -1
  195. package/index.js.map +1 -1
  196. package/index.mjs +6 -0
  197. package/logger/AbstractLogger.d.ts +49 -0
  198. package/logger/AbstractLogger.js +234 -0
  199. package/logger/AbstractLogger.js.map +1 -0
  200. package/logger/AdvancedConsoleLogger.d.ts +5 -33
  201. package/logger/AdvancedConsoleLogger.js +41 -106
  202. package/logger/AdvancedConsoleLogger.js.map +1 -1
  203. package/logger/DebugLogger.d.ts +9 -29
  204. package/logger/DebugLogger.js +56 -75
  205. package/logger/DebugLogger.js.map +1 -1
  206. package/logger/FileLogger.d.ts +6 -32
  207. package/logger/FileLogger.js +50 -97
  208. package/logger/FileLogger.js.map +1 -1
  209. package/logger/Logger.d.ts +31 -0
  210. package/logger/Logger.js.map +1 -1
  211. package/logger/LoggerOptions.d.ts +3 -2
  212. package/logger/LoggerOptions.js.map +1 -1
  213. package/logger/SimpleConsoleLogger.d.ts +5 -33
  214. package/logger/SimpleConsoleLogger.js +43 -106
  215. package/logger/SimpleConsoleLogger.js.map +1 -1
  216. package/metadata/types/DeferrableType.d.ts +1 -1
  217. package/metadata/types/EventListenerTypes.d.ts +1 -1
  218. package/metadata/types/OnDeleteType.d.ts +1 -1
  219. package/metadata/types/OnUpdateType.d.ts +1 -1
  220. package/metadata/types/PropertyTypeInFunction.d.ts +1 -1
  221. package/metadata/types/RelationTypeInFunction.d.ts +1 -1
  222. package/metadata/types/RelationTypes.d.ts +1 -1
  223. package/metadata/types/TableTypes.d.ts +1 -1
  224. package/metadata/types/TreeTypes.d.ts +1 -1
  225. package/metadata-args/types/ColumnMode.d.ts +1 -1
  226. package/metadata-builder/RelationJoinColumnBuilder.js +2 -1
  227. package/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
  228. package/migration/MigrationExecutor.js +1 -1
  229. package/migration/MigrationExecutor.js.map +1 -1
  230. package/naming-strategy/LegacyOracleNamingStrategy.d.ts +21 -0
  231. package/naming-strategy/LegacyOracleNamingStrategy.js +50 -0
  232. package/naming-strategy/LegacyOracleNamingStrategy.js.map +1 -0
  233. package/package.json +273 -1
  234. package/persistence/SubjectTopoligicalSorter.js +2 -6
  235. package/persistence/SubjectTopoligicalSorter.js.map +1 -1
  236. package/platform/PlatformTools.d.ts +2 -0
  237. package/platform/PlatformTools.js +6 -0
  238. package/platform/PlatformTools.js.map +1 -1
  239. package/query-builder/InsertOrUpdateOptions.d.ts +1 -1
  240. package/query-builder/QueryBuilder.js +2 -0
  241. package/query-builder/QueryBuilder.js.map +1 -1
  242. package/query-builder/QueryPartialEntity.d.ts +3 -3
  243. package/query-builder/SelectQueryBuilder.d.ts +1 -1
  244. package/query-builder/SelectQueryBuilder.js +8 -4
  245. package/query-builder/SelectQueryBuilder.js.map +1 -1
  246. package/query-builder/SelectQueryBuilderOption.d.ts +1 -1
  247. package/query-builder/WhereClause.d.ts +3 -3
  248. package/query-builder/WhereClause.js.map +1 -1
  249. package/repository/BaseEntity.d.ts +25 -0
  250. package/repository/BaseEntity.js +24 -0
  251. package/repository/BaseEntity.js.map +1 -1
  252. package/repository/EntityId.d.ts +1 -1
  253. package/repository/Repository.d.ts +17 -0
  254. package/repository/Repository.js +32 -8
  255. package/repository/Repository.js.map +1 -1
  256. package/util/VersionUtils.d.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/logger/AdvancedConsoleLogger.ts"],"names":[],"mappings":"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","file":"AdvancedConsoleLogger.js","sourcesContent":["import { LoggerOptions } from \"./LoggerOptions\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { QueryRunner } from \"../query-runner/QueryRunner\"\nimport { Logger } from \"./Logger\"\n\n/**\n * Performs logging of the events in TypeORM.\n * This version of logger uses console to log events and use syntax highlighting.\n */\nexport class AdvancedConsoleLogger implements Logger {\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(private options?: LoggerOptions) {}\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Logs query and parameters used in it.\n */\n logQuery(query: string, parameters?: any[], queryRunner?: QueryRunner) {\n if (\n this.options === \"all\" ||\n this.options === true ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"query\") !== -1)\n ) {\n const sql =\n query +\n (parameters && parameters.length\n ? \" -- PARAMETERS: \" + this.stringifyParams(parameters)\n : \"\")\n PlatformTools.logInfo(\"query:\", PlatformTools.highlightSql(sql))\n }\n }\n\n /**\n * Logs query that is failed.\n */\n logQueryError(\n error: string,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ) {\n if (\n this.options === \"all\" ||\n this.options === true ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"error\") !== -1)\n ) {\n const sql =\n query +\n (parameters && parameters.length\n ? \" -- PARAMETERS: \" + this.stringifyParams(parameters)\n : \"\")\n PlatformTools.logError(\n `query failed:`,\n PlatformTools.highlightSql(sql),\n )\n PlatformTools.logError(`error:`, error)\n }\n }\n\n /**\n * Logs query that is slow.\n */\n logQuerySlow(\n time: number,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ) {\n const sql =\n query +\n (parameters && parameters.length\n ? \" -- PARAMETERS: \" + this.stringifyParams(parameters)\n : \"\")\n PlatformTools.logWarn(`query is slow:`, PlatformTools.highlightSql(sql))\n PlatformTools.logWarn(`execution time:`, time)\n }\n\n /**\n * Logs events from the schema build process.\n */\n logSchemaBuild(message: string, queryRunner?: QueryRunner) {\n if (\n this.options === \"all\" ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"schema\") !== -1)\n ) {\n PlatformTools.log(message)\n }\n }\n\n /**\n * Logs events from the migration run process.\n */\n logMigration(message: string, queryRunner?: QueryRunner) {\n PlatformTools.log(message)\n }\n\n /**\n * Perform logging using given logger, or by default to the console.\n * Log has its own level and message.\n */\n log(\n level: \"log\" | \"info\" | \"warn\",\n message: any,\n queryRunner?: QueryRunner,\n ) {\n switch (level) {\n case \"log\":\n if (\n this.options === \"all\" ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"log\") !== -1)\n )\n PlatformTools.log(message)\n break\n case \"info\":\n if (\n this.options === \"all\" ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"info\") !== -1)\n )\n PlatformTools.logInfo(\"INFO:\", message)\n break\n case \"warn\":\n if (\n this.options === \"all\" ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"warn\") !== -1)\n )\n console.warn(PlatformTools.warn(message))\n break\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Converts parameters to a string.\n * Sometimes parameters can have circular objects and therefore we are handle this case too.\n */\n protected stringifyParams(parameters: any[]) {\n try {\n return JSON.stringify(parameters)\n } catch (error) {\n // most probably circular objects in parameters\n return parameters\n }\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/logger/AdvancedConsoleLogger.ts"],"names":[],"mappings":";;;AAAA,6DAAyD;AACzD,qDAAiD;AAIjD;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,+BAAc;IACrD;;OAEG;IACO,QAAQ,CACd,KAAe,EACf,UAAqC,EACrC,WAAyB;;QAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAA;QAEpD,KAAK,IAAI,OAAO,IAAI,QAAQ,EAAE;YAC1B,QAAQ,MAAA,OAAO,CAAC,IAAI,mCAAI,KAAK,EAAE;gBAC3B,KAAK,KAAK,CAAC;gBACX,KAAK,cAAc,CAAC;gBACpB,KAAK,WAAW;oBACZ,6BAAa,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;oBAC1C,MAAK;gBAET,KAAK,MAAM,CAAC;gBACZ,KAAK,OAAO;oBACR,IAAI,OAAO,CAAC,MAAM,EAAE;wBAChB,6BAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;qBACzD;yBAAM;wBACH,6BAAa,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;qBAC7C;oBACD,MAAK;gBAET,KAAK,MAAM,CAAC;gBACZ,KAAK,YAAY;oBACb,IAAI,OAAO,CAAC,MAAM,EAAE;wBAChB,6BAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;qBACzD;yBAAM;wBACH,OAAO,CAAC,IAAI,CACR,6BAAa,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAC9C,CAAA;qBACJ;oBACD,MAAK;gBAET,KAAK,OAAO,CAAC;gBACb,KAAK,aAAa;oBACd,IAAI,OAAO,CAAC,MAAM,EAAE;wBAChB,6BAAa,CAAC,QAAQ,CAClB,OAAO,CAAC,MAAM,EACd,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAC1B,CAAA;qBACJ;yBAAM;wBACH,OAAO,CAAC,KAAK,CACT,6BAAa,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAC/C,CAAA;qBACJ;oBACD,MAAK;aACZ;SACJ;IACL,CAAC;CACJ;AAvDD,sDAuDC","file":"AdvancedConsoleLogger.js","sourcesContent":["import { PlatformTools } from \"../platform/PlatformTools\"\nimport { AbstractLogger } from \"./AbstractLogger\"\nimport { LogLevel, LogMessage } from \"./Logger\"\nimport { QueryRunner } from \"../query-runner/QueryRunner\"\n\n/**\n * Performs logging of the events in TypeORM.\n * This version of logger uses console to log events and use syntax highlighting.\n */\nexport class AdvancedConsoleLogger extends AbstractLogger {\n /**\n * Write log to specific output.\n */\n protected writeLog(\n level: LogLevel,\n logMessage: LogMessage | LogMessage[],\n queryRunner?: QueryRunner,\n ) {\n const messages = this.prepareLogMessages(logMessage)\n\n for (let message of messages) {\n switch (message.type ?? level) {\n case \"log\":\n case \"schema-build\":\n case \"migration\":\n PlatformTools.log(String(message.message))\n break\n\n case \"info\":\n case \"query\":\n if (message.prefix) {\n PlatformTools.logInfo(message.prefix, message.message)\n } else {\n PlatformTools.log(String(message.message))\n }\n break\n\n case \"warn\":\n case \"query-slow\":\n if (message.prefix) {\n PlatformTools.logWarn(message.prefix, message.message)\n } else {\n console.warn(\n PlatformTools.warn(String(message.message)),\n )\n }\n break\n\n case \"error\":\n case \"query-error\":\n if (message.prefix) {\n PlatformTools.logError(\n message.prefix,\n String(message.message),\n )\n } else {\n console.error(\n PlatformTools.error(String(message.message)),\n )\n }\n break\n }\n }\n }\n}\n"],"sourceRoot":".."}
@@ -1,40 +1,20 @@
1
- import { Logger } from "./Logger";
1
+ import { AbstractLogger } from "./AbstractLogger";
2
+ import { LogLevel, LogMessage, LogMessageType } from "./Logger";
2
3
  import { QueryRunner } from "../query-runner/QueryRunner";
3
4
  /**
4
5
  * Performs logging of the events in TypeORM via debug library.
5
6
  */
6
- export declare class DebugLogger implements Logger {
7
- private debugQueryLog;
8
- private debugQueryError;
9
- private debugQuerySlow;
10
- private debugSchemaBuild;
11
- private debugMigration;
12
- private debugLog;
13
- private debugInfo;
14
- private debugWarn;
7
+ export declare class DebugLogger extends AbstractLogger {
15
8
  /**
16
- * Logs query and parameters used in it.
9
+ * Object with all debug logger.
17
10
  */
18
- logQuery(query: string, parameters?: any[], queryRunner?: QueryRunner): void;
11
+ private logger;
19
12
  /**
20
- * Logs query that failed.
13
+ * Check is logging for level or message type is enabled.
21
14
  */
22
- logQueryError(error: string, query: string, parameters?: any[], queryRunner?: QueryRunner): void;
15
+ protected isLogEnabledFor(type?: LogLevel | LogMessageType): boolean;
23
16
  /**
24
- * Logs query that is slow.
17
+ * Write log to specific output.
25
18
  */
26
- logQuerySlow(time: number, query: string, parameters?: any[], queryRunner?: QueryRunner): void;
27
- /**
28
- * Logs events from the schema build process.
29
- */
30
- logSchemaBuild(message: string, queryRunner?: QueryRunner): void;
31
- /**
32
- * Logs events from the migration run process.
33
- */
34
- logMigration(message: string, queryRunner?: QueryRunner): void;
35
- /**
36
- * Perform logging using given logger.
37
- * Log has its own level and message.
38
- */
39
- log(level: "log" | "info" | "warn", message: any, queryRunner?: QueryRunner): void;
19
+ protected writeLog(level: LogLevel, logMessage: LogMessage | LogMessage[], queryRunner?: QueryRunner): void;
40
20
  }
@@ -1,95 +1,76 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DebugLogger = void 0;
4
- const tslib_1 = require("tslib");
5
- const debug_1 = tslib_1.__importDefault(require("debug"));
6
- const PlatformTools_1 = require("../platform/PlatformTools");
4
+ const AbstractLogger_1 = require("./AbstractLogger");
5
+ const debug_1 = require("debug");
7
6
  /**
8
7
  * Performs logging of the events in TypeORM via debug library.
9
8
  */
10
- class DebugLogger {
9
+ class DebugLogger extends AbstractLogger_1.AbstractLogger {
11
10
  constructor() {
12
- this.debugQueryLog = (0, debug_1.default)("typeorm:query:log");
13
- this.debugQueryError = (0, debug_1.default)("typeorm:query:error");
14
- this.debugQuerySlow = (0, debug_1.default)("typeorm:query:slow");
15
- this.debugSchemaBuild = (0, debug_1.default)("typeorm:schema");
16
- this.debugMigration = (0, debug_1.default)("typeorm:migration");
17
- this.debugLog = (0, debug_1.default)("typeorm:log");
18
- this.debugInfo = (0, debug_1.default)("typeorm:info");
19
- this.debugWarn = (0, debug_1.default)("typeorm:warn");
11
+ super(...arguments);
12
+ /**
13
+ * Object with all debug logger.
14
+ */
15
+ this.logger = {
16
+ log: (0, debug_1.debug)("typeorm:log"),
17
+ info: (0, debug_1.debug)("typeorm:info"),
18
+ warn: (0, debug_1.debug)("typeorm:warn"),
19
+ error: (0, debug_1.debug)("typeorm:error"),
20
+ query: (0, debug_1.debug)("typeorm:query:log"),
21
+ "query-error": (0, debug_1.debug)("typeorm:query:error"),
22
+ "query-slow": (0, debug_1.debug)("typeorm:query:slow"),
23
+ "schema-build": (0, debug_1.debug)("typeorm:schema"),
24
+ migration: (0, debug_1.debug)("typeorm:migration"),
25
+ };
20
26
  }
21
27
  /**
22
- * Logs query and parameters used in it.
28
+ * Check is logging for level or message type is enabled.
23
29
  */
24
- logQuery(query, parameters, queryRunner) {
25
- if (this.debugQueryLog.enabled) {
26
- this.debugQueryLog(PlatformTools_1.PlatformTools.highlightSql(query) + ";");
27
- if (parameters && parameters.length) {
28
- this.debugQueryLog("parameters:", parameters);
29
- }
30
- }
31
- }
32
- /**
33
- * Logs query that failed.
34
- */
35
- logQueryError(error, query, parameters, queryRunner) {
36
- if (this.debugQueryError.enabled) {
37
- this.debugQueryError(PlatformTools_1.PlatformTools.highlightSql(query) + ";");
38
- if (parameters && parameters.length) {
39
- this.debugQueryError("parameters:", parameters);
40
- }
41
- this.debugQueryError("error: ", error);
42
- }
43
- }
44
- /**
45
- * Logs query that is slow.
46
- */
47
- logQuerySlow(time, query, parameters, queryRunner) {
48
- if (this.debugQuerySlow.enabled) {
49
- this.debugQuerySlow(PlatformTools_1.PlatformTools.highlightSql(query) + ";");
50
- if (parameters && parameters.length) {
51
- this.debugQuerySlow("parameters:", parameters);
52
- }
53
- this.debugQuerySlow("execution time:", time);
54
- }
55
- }
56
- /**
57
- * Logs events from the schema build process.
58
- */
59
- logSchemaBuild(message, queryRunner) {
60
- if (this.debugSchemaBuild.enabled) {
61
- this.debugSchemaBuild(message);
62
- }
63
- }
64
- /**
65
- * Logs events from the migration run process.
66
- */
67
- logMigration(message, queryRunner) {
68
- if (this.debugMigration.enabled) {
69
- this.debugMigration(message);
30
+ isLogEnabledFor(type) {
31
+ switch (type) {
32
+ case "query":
33
+ return this.logger["query"].enabled;
34
+ case "query-error":
35
+ return this.logger["query-error"].enabled;
36
+ case "query-slow":
37
+ return true;
38
+ case "schema":
39
+ case "schema-build":
40
+ return this.logger["schema-build"].enabled;
41
+ case "migration":
42
+ return this.logger["migration"].enabled;
43
+ case "log":
44
+ return this.logger["log"].enabled;
45
+ case "info":
46
+ return this.logger["info"].enabled;
47
+ case "warn":
48
+ return this.logger["warn"].enabled;
49
+ default:
50
+ return false;
70
51
  }
71
52
  }
72
53
  /**
73
- * Perform logging using given logger.
74
- * Log has its own level and message.
54
+ * Write log to specific output.
75
55
  */
76
- log(level, message, queryRunner) {
77
- switch (level) {
78
- case "log":
79
- if (this.debugLog.enabled) {
80
- this.debugLog(message);
56
+ writeLog(level, logMessage, queryRunner) {
57
+ var _a;
58
+ const messages = this.prepareLogMessages(logMessage, {
59
+ appendParameterAsComment: false,
60
+ });
61
+ for (let message of messages) {
62
+ const messageTypeOrLevel = (_a = message.type) !== null && _a !== void 0 ? _a : level;
63
+ if (messageTypeOrLevel in this.logger) {
64
+ if (message.prefix) {
65
+ this.logger[messageTypeOrLevel](message.prefix, message.message);
81
66
  }
82
- break;
83
- case "info":
84
- if (this.debugInfo.enabled) {
85
- this.debugInfo(message);
67
+ else {
68
+ this.logger[messageTypeOrLevel](message.message);
86
69
  }
87
- break;
88
- case "warn":
89
- if (this.debugWarn.enabled) {
90
- this.debugWarn(message);
70
+ if (message.parameters && message.parameters.length) {
71
+ this.logger[messageTypeOrLevel]("parameters:", message.parameters);
91
72
  }
92
- break;
73
+ }
93
74
  }
94
75
  }
95
76
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/logger/DebugLogger.ts"],"names":[],"mappings":"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","file":"DebugLogger.js","sourcesContent":["import debug from \"debug\"\nimport { Logger } from \"./Logger\"\nimport { QueryRunner } from \"../query-runner/QueryRunner\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\n\n/**\n * Performs logging of the events in TypeORM via debug library.\n */\nexport class DebugLogger implements Logger {\n private debugQueryLog = debug(\"typeorm:query:log\")\n private debugQueryError = debug(\"typeorm:query:error\")\n private debugQuerySlow = debug(\"typeorm:query:slow\")\n private debugSchemaBuild = debug(\"typeorm:schema\")\n private debugMigration = debug(\"typeorm:migration\")\n\n private debugLog = debug(\"typeorm:log\")\n private debugInfo = debug(\"typeorm:info\")\n private debugWarn = debug(\"typeorm:warn\")\n\n /**\n * Logs query and parameters used in it.\n */\n logQuery(query: string, parameters?: any[], queryRunner?: QueryRunner) {\n if (this.debugQueryLog.enabled) {\n this.debugQueryLog(PlatformTools.highlightSql(query) + \";\")\n if (parameters && parameters.length) {\n this.debugQueryLog(\"parameters:\", parameters)\n }\n }\n }\n\n /**\n * Logs query that failed.\n */\n logQueryError(\n error: string,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ) {\n if (this.debugQueryError.enabled) {\n this.debugQueryError(PlatformTools.highlightSql(query) + \";\")\n if (parameters && parameters.length) {\n this.debugQueryError(\"parameters:\", parameters)\n }\n this.debugQueryError(\"error: \", error)\n }\n }\n\n /**\n * Logs query that is slow.\n */\n logQuerySlow(\n time: number,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ) {\n if (this.debugQuerySlow.enabled) {\n this.debugQuerySlow(PlatformTools.highlightSql(query) + \";\")\n if (parameters && parameters.length) {\n this.debugQuerySlow(\"parameters:\", parameters)\n }\n this.debugQuerySlow(\"execution time:\", time)\n }\n }\n\n /**\n * Logs events from the schema build process.\n */\n logSchemaBuild(message: string, queryRunner?: QueryRunner) {\n if (this.debugSchemaBuild.enabled) {\n this.debugSchemaBuild(message)\n }\n }\n\n /**\n * Logs events from the migration run process.\n */\n logMigration(message: string, queryRunner?: QueryRunner) {\n if (this.debugMigration.enabled) {\n this.debugMigration(message)\n }\n }\n\n /**\n * Perform logging using given logger.\n * Log has its own level and message.\n */\n log(\n level: \"log\" | \"info\" | \"warn\",\n message: any,\n queryRunner?: QueryRunner,\n ) {\n switch (level) {\n case \"log\":\n if (this.debugLog.enabled) {\n this.debugLog(message)\n }\n break\n case \"info\":\n if (this.debugInfo.enabled) {\n this.debugInfo(message)\n }\n break\n case \"warn\":\n if (this.debugWarn.enabled) {\n this.debugWarn(message)\n }\n break\n }\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/logger/DebugLogger.ts"],"names":[],"mappings":";;;AAAA,qDAAiD;AACjD,iCAAuC;AAIvC;;GAEG;AACH,MAAa,WAAY,SAAQ,+BAAc;IAA/C;;QACI;;WAEG;QACK,WAAM,GAA6B;YACvC,GAAG,EAAE,IAAA,aAAK,EAAC,aAAa,CAAC;YACzB,IAAI,EAAE,IAAA,aAAK,EAAC,cAAc,CAAC;YAC3B,IAAI,EAAE,IAAA,aAAK,EAAC,cAAc,CAAC;YAC3B,KAAK,EAAE,IAAA,aAAK,EAAC,eAAe,CAAC;YAC7B,KAAK,EAAE,IAAA,aAAK,EAAC,mBAAmB,CAAC;YACjC,aAAa,EAAE,IAAA,aAAK,EAAC,qBAAqB,CAAC;YAC3C,YAAY,EAAE,IAAA,aAAK,EAAC,oBAAoB,CAAC;YACzC,cAAc,EAAE,IAAA,aAAK,EAAC,gBAAgB,CAAC;YACvC,SAAS,EAAE,IAAA,aAAK,EAAC,mBAAmB,CAAC;SACxC,CAAA;IAuEL,CAAC;IArEG;;OAEG;IACO,eAAe,CAAC,IAAgC;QACtD,QAAQ,IAAI,EAAE;YACV,KAAK,OAAO;gBACR,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAA;YAEvC,KAAK,aAAa;gBACd,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAA;YAE7C,KAAK,YAAY;gBACb,OAAO,IAAI,CAAA;YAEf,KAAK,QAAQ,CAAC;YACd,KAAK,cAAc;gBACf,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,OAAO,CAAA;YAE9C,KAAK,WAAW;gBACZ,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAA;YAE3C,KAAK,KAAK;gBACN,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAA;YAErC,KAAK,MAAM;gBACP,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAA;YAEtC,KAAK,MAAM;gBACP,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAA;YAEtC;gBACI,OAAO,KAAK,CAAA;SACnB;IACL,CAAC;IAED;;OAEG;IACO,QAAQ,CACd,KAAe,EACf,UAAqC,EACrC,WAAyB;;QAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE;YACjD,wBAAwB,EAAE,KAAK;SAClC,CAAC,CAAA;QAEF,KAAK,IAAI,OAAO,IAAI,QAAQ,EAAE;YAC1B,MAAM,kBAAkB,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,KAAK,CAAA;YAEhD,IAAI,kBAAkB,IAAI,IAAI,CAAC,MAAM,EAAE;gBACnC,IAAI,OAAO,CAAC,MAAM,EAAE;oBAChB,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAC3B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAClB,CAAA;iBACJ;qBAAM;oBACH,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;iBACnD;gBAED,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE;oBACjD,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAC3B,aAAa,EACb,OAAO,CAAC,UAAU,CACrB,CAAA;iBACJ;aACJ;SACJ;IACL,CAAC;CACJ;AArFD,kCAqFC","file":"DebugLogger.js","sourcesContent":["import { AbstractLogger } from \"./AbstractLogger\"\nimport { debug, Debugger } from \"debug\"\nimport { LogLevel, LogMessage, LogMessageType } from \"./Logger\"\nimport { QueryRunner } from \"../query-runner/QueryRunner\"\n\n/**\n * Performs logging of the events in TypeORM via debug library.\n */\nexport class DebugLogger extends AbstractLogger {\n /**\n * Object with all debug logger.\n */\n private logger: Record<string, Debugger> = {\n log: debug(\"typeorm:log\"),\n info: debug(\"typeorm:info\"),\n warn: debug(\"typeorm:warn\"),\n error: debug(\"typeorm:error\"),\n query: debug(\"typeorm:query:log\"),\n \"query-error\": debug(\"typeorm:query:error\"),\n \"query-slow\": debug(\"typeorm:query:slow\"),\n \"schema-build\": debug(\"typeorm:schema\"),\n migration: debug(\"typeorm:migration\"),\n }\n\n /**\n * Check is logging for level or message type is enabled.\n */\n protected isLogEnabledFor(type?: LogLevel | LogMessageType) {\n switch (type) {\n case \"query\":\n return this.logger[\"query\"].enabled\n\n case \"query-error\":\n return this.logger[\"query-error\"].enabled\n\n case \"query-slow\":\n return true\n\n case \"schema\":\n case \"schema-build\":\n return this.logger[\"schema-build\"].enabled\n\n case \"migration\":\n return this.logger[\"migration\"].enabled\n\n case \"log\":\n return this.logger[\"log\"].enabled\n\n case \"info\":\n return this.logger[\"info\"].enabled\n\n case \"warn\":\n return this.logger[\"warn\"].enabled\n\n default:\n return false\n }\n }\n\n /**\n * Write log to specific output.\n */\n protected writeLog(\n level: LogLevel,\n logMessage: LogMessage | LogMessage[],\n queryRunner?: QueryRunner,\n ) {\n const messages = this.prepareLogMessages(logMessage, {\n appendParameterAsComment: false,\n })\n\n for (let message of messages) {\n const messageTypeOrLevel = message.type ?? level\n\n if (messageTypeOrLevel in this.logger) {\n if (message.prefix) {\n this.logger[messageTypeOrLevel](\n message.prefix,\n message.message,\n )\n } else {\n this.logger[messageTypeOrLevel](message.message)\n }\n\n if (message.parameters && message.parameters.length) {\n this.logger[messageTypeOrLevel](\n \"parameters:\",\n message.parameters,\n )\n }\n }\n }\n }\n}\n"],"sourceRoot":".."}
@@ -1,46 +1,20 @@
1
1
  import { FileLoggerOptions, LoggerOptions } from "./LoggerOptions";
2
+ import { LogLevel, LogMessage } from "./Logger";
2
3
  import { QueryRunner } from "../query-runner/QueryRunner";
3
- import { Logger } from "./Logger";
4
+ import { AbstractLogger } from "./AbstractLogger";
4
5
  /**
5
6
  * Performs logging of the events in TypeORM.
6
7
  * This version of logger logs everything into ormlogs.log file.
7
8
  */
8
- export declare class FileLogger implements Logger {
9
- private options?;
9
+ export declare class FileLogger extends AbstractLogger {
10
10
  private fileLoggerOptions?;
11
- constructor(options?: LoggerOptions | undefined, fileLoggerOptions?: FileLoggerOptions | undefined);
11
+ constructor(options?: LoggerOptions, fileLoggerOptions?: FileLoggerOptions | undefined);
12
12
  /**
13
- * Logs query and parameters used in it.
13
+ * Write log to specific output.
14
14
  */
15
- logQuery(query: string, parameters?: any[], queryRunner?: QueryRunner): void;
16
- /**
17
- * Logs query that is failed.
18
- */
19
- logQueryError(error: string, query: string, parameters?: any[], queryRunner?: QueryRunner): void;
20
- /**
21
- * Logs query that is slow.
22
- */
23
- logQuerySlow(time: number, query: string, parameters?: any[], queryRunner?: QueryRunner): void;
24
- /**
25
- * Logs events from the schema build process.
26
- */
27
- logSchemaBuild(message: string, queryRunner?: QueryRunner): void;
28
- /**
29
- * Logs events from the migrations run process.
30
- */
31
- logMigration(message: string, queryRunner?: QueryRunner): void;
32
- /**
33
- * Perform logging using given logger, or by default to the console.
34
- * Log has its own level and message.
35
- */
36
- log(level: "log" | "info" | "warn", message: any, queryRunner?: QueryRunner): void;
15
+ protected writeLog(level: LogLevel, logMessage: LogMessage | LogMessage[], queryRunner?: QueryRunner): void;
37
16
  /**
38
17
  * Writes given strings into the log file.
39
18
  */
40
19
  protected write(strings: string | string[]): void;
41
- /**
42
- * Converts parameters to a string.
43
- * Sometimes parameters can have circular objects and therefor we are handle this case too.
44
- */
45
- protected stringifyParams(parameters: any[]): string | any[];
46
20
  }
@@ -4,106 +4,72 @@ exports.FileLogger = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const app_root_path_1 = tslib_1.__importDefault(require("app-root-path"));
6
6
  const PlatformTools_1 = require("../platform/PlatformTools");
7
+ const AbstractLogger_1 = require("./AbstractLogger");
7
8
  /**
8
9
  * Performs logging of the events in TypeORM.
9
10
  * This version of logger logs everything into ormlogs.log file.
10
11
  */
11
- class FileLogger {
12
+ class FileLogger extends AbstractLogger_1.AbstractLogger {
12
13
  // -------------------------------------------------------------------------
13
14
  // Constructor
14
15
  // -------------------------------------------------------------------------
15
16
  constructor(options, fileLoggerOptions) {
16
- this.options = options;
17
+ super(options);
17
18
  this.fileLoggerOptions = fileLoggerOptions;
18
19
  }
19
20
  // -------------------------------------------------------------------------
20
- // Public Methods
21
+ // Protected Methods
21
22
  // -------------------------------------------------------------------------
22
23
  /**
23
- * Logs query and parameters used in it.
24
- */
25
- logQuery(query, parameters, queryRunner) {
26
- if (this.options === "all" ||
27
- this.options === true ||
28
- (Array.isArray(this.options) &&
29
- this.options.indexOf("query") !== -1)) {
30
- const sql = query +
31
- (parameters && parameters.length
32
- ? " -- PARAMETERS: " + this.stringifyParams(parameters)
33
- : "");
34
- this.write("[QUERY]: " + sql);
35
- }
36
- }
37
- /**
38
- * Logs query that is failed.
39
- */
40
- logQueryError(error, query, parameters, queryRunner) {
41
- if (this.options === "all" ||
42
- this.options === true ||
43
- (Array.isArray(this.options) &&
44
- this.options.indexOf("error") !== -1)) {
45
- const sql = query +
46
- (parameters && parameters.length
47
- ? " -- PARAMETERS: " + this.stringifyParams(parameters)
48
- : "");
49
- this.write([`[FAILED QUERY]: ${sql}`, `[QUERY ERROR]: ${error}`]);
50
- }
51
- }
52
- /**
53
- * Logs query that is slow.
24
+ * Write log to specific output.
54
25
  */
55
- logQuerySlow(time, query, parameters, queryRunner) {
56
- const sql = query +
57
- (parameters && parameters.length
58
- ? " -- PARAMETERS: " + this.stringifyParams(parameters)
59
- : "");
60
- this.write(`[SLOW QUERY: ${time} ms]: ` + sql);
61
- }
62
- /**
63
- * Logs events from the schema build process.
64
- */
65
- logSchemaBuild(message, queryRunner) {
66
- if (this.options === "all" ||
67
- (Array.isArray(this.options) &&
68
- this.options.indexOf("schema") !== -1)) {
69
- this.write(message);
26
+ writeLog(level, logMessage, queryRunner) {
27
+ var _a, _b;
28
+ const messages = this.prepareLogMessages(logMessage, {
29
+ highlightSql: false,
30
+ addColonToPrefix: false,
31
+ });
32
+ const strings = [];
33
+ for (let message of messages) {
34
+ switch ((_a = message.type) !== null && _a !== void 0 ? _a : level) {
35
+ case "log":
36
+ strings.push(`[LOG]: ${message.message}`);
37
+ break;
38
+ case "schema-build":
39
+ case "migration":
40
+ strings.push(String(message.message));
41
+ break;
42
+ case "info":
43
+ strings.push(`[INFO]: ${message.message}`);
44
+ break;
45
+ case "query":
46
+ strings.push(`[QUERY]: ${message.message}`);
47
+ break;
48
+ case "warn":
49
+ strings.push(`[WARN]: ${message.message}`);
50
+ break;
51
+ case "query-slow":
52
+ if (message.prefix === "execution time") {
53
+ continue;
54
+ }
55
+ this.write(`[SLOW QUERY: ${(_b = message.additionalInfo) === null || _b === void 0 ? void 0 : _b.time} ms]: ${message.message}`);
56
+ break;
57
+ case "error":
58
+ case "query-error":
59
+ if (message.prefix === "query failed") {
60
+ strings.push(`[FAILED QUERY]: ${message.message}`);
61
+ }
62
+ else if (message.type === "query-error") {
63
+ strings.push(`[QUERY ERROR]: ${message.message}`);
64
+ }
65
+ else {
66
+ strings.push(`[ERROR]: ${message.message}`);
67
+ }
68
+ break;
69
+ }
70
70
  }
71
+ this.write(strings);
71
72
  }
72
- /**
73
- * Logs events from the migrations run process.
74
- */
75
- logMigration(message, queryRunner) {
76
- this.write(message);
77
- }
78
- /**
79
- * Perform logging using given logger, or by default to the console.
80
- * Log has its own level and message.
81
- */
82
- log(level, message, queryRunner) {
83
- switch (level) {
84
- case "log":
85
- if (this.options === "all" ||
86
- (Array.isArray(this.options) &&
87
- this.options.indexOf("log") !== -1))
88
- this.write("[LOG]: " + message);
89
- break;
90
- case "info":
91
- if (this.options === "all" ||
92
- (Array.isArray(this.options) &&
93
- this.options.indexOf("info") !== -1))
94
- this.write("[INFO]: " + message);
95
- break;
96
- case "warn":
97
- if (this.options === "all" ||
98
- (Array.isArray(this.options) &&
99
- this.options.indexOf("warn") !== -1))
100
- this.write("[WARN]: " + message);
101
- break;
102
- }
103
- }
104
- // -------------------------------------------------------------------------
105
- // Protected Methods
106
- // -------------------------------------------------------------------------
107
73
  /**
108
74
  * Writes given strings into the log file.
109
75
  */
@@ -117,19 +83,6 @@ class FileLogger {
117
83
  strings = strings.map((str) => "[" + new Date().toISOString() + "]" + str);
118
84
  PlatformTools_1.PlatformTools.appendFileSync(basePath + logPath, strings.join("\r\n") + "\r\n"); // todo: use async or implement promises?
119
85
  }
120
- /**
121
- * Converts parameters to a string.
122
- * Sometimes parameters can have circular objects and therefor we are handle this case too.
123
- */
124
- stringifyParams(parameters) {
125
- try {
126
- return JSON.stringify(parameters);
127
- }
128
- catch (error) {
129
- // most probably circular objects in parameters
130
- return parameters;
131
- }
132
- }
133
86
  }
134
87
  exports.FileLogger = FileLogger;
135
88
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/logger/FileLogger.ts"],"names":[],"mappings":"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","file":"FileLogger.js","sourcesContent":["import { FileLoggerOptions, LoggerOptions } from \"./LoggerOptions\"\nimport appRootPath from \"app-root-path\"\nimport { QueryRunner } from \"../query-runner/QueryRunner\"\nimport { Logger } from \"./Logger\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\n\n/**\n * Performs logging of the events in TypeORM.\n * This version of logger logs everything into ormlogs.log file.\n */\nexport class FileLogger implements Logger {\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(\n private options?: LoggerOptions,\n private fileLoggerOptions?: FileLoggerOptions,\n ) {}\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Logs query and parameters used in it.\n */\n logQuery(query: string, parameters?: any[], queryRunner?: QueryRunner) {\n if (\n this.options === \"all\" ||\n this.options === true ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"query\") !== -1)\n ) {\n const sql =\n query +\n (parameters && parameters.length\n ? \" -- PARAMETERS: \" + this.stringifyParams(parameters)\n : \"\")\n this.write(\"[QUERY]: \" + sql)\n }\n }\n\n /**\n * Logs query that is failed.\n */\n logQueryError(\n error: string,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ) {\n if (\n this.options === \"all\" ||\n this.options === true ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"error\") !== -1)\n ) {\n const sql =\n query +\n (parameters && parameters.length\n ? \" -- PARAMETERS: \" + this.stringifyParams(parameters)\n : \"\")\n this.write([`[FAILED QUERY]: ${sql}`, `[QUERY ERROR]: ${error}`])\n }\n }\n\n /**\n * Logs query that is slow.\n */\n logQuerySlow(\n time: number,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ) {\n const sql =\n query +\n (parameters && parameters.length\n ? \" -- PARAMETERS: \" + this.stringifyParams(parameters)\n : \"\")\n this.write(`[SLOW QUERY: ${time} ms]: ` + sql)\n }\n\n /**\n * Logs events from the schema build process.\n */\n logSchemaBuild(message: string, queryRunner?: QueryRunner) {\n if (\n this.options === \"all\" ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"schema\") !== -1)\n ) {\n this.write(message)\n }\n }\n\n /**\n * Logs events from the migrations run process.\n */\n logMigration(message: string, queryRunner?: QueryRunner) {\n this.write(message)\n }\n\n /**\n * Perform logging using given logger, or by default to the console.\n * Log has its own level and message.\n */\n log(\n level: \"log\" | \"info\" | \"warn\",\n message: any,\n queryRunner?: QueryRunner,\n ) {\n switch (level) {\n case \"log\":\n if (\n this.options === \"all\" ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"log\") !== -1)\n )\n this.write(\"[LOG]: \" + message)\n break\n case \"info\":\n if (\n this.options === \"all\" ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"info\") !== -1)\n )\n this.write(\"[INFO]: \" + message)\n break\n case \"warn\":\n if (\n this.options === \"all\" ||\n (Array.isArray(this.options) &&\n this.options.indexOf(\"warn\") !== -1)\n )\n this.write(\"[WARN]: \" + message)\n break\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Writes given strings into the log file.\n */\n protected write(strings: string | string[]) {\n strings = Array.isArray(strings) ? strings : [strings]\n const basePath = appRootPath.path + \"/\"\n let logPath = \"ormlogs.log\"\n if (this.fileLoggerOptions && this.fileLoggerOptions.logPath) {\n logPath = PlatformTools.pathNormalize(\n this.fileLoggerOptions.logPath,\n )\n }\n strings = (strings as string[]).map(\n (str) => \"[\" + new Date().toISOString() + \"]\" + str,\n )\n PlatformTools.appendFileSync(\n basePath + logPath,\n strings.join(\"\\r\\n\") + \"\\r\\n\",\n ) // todo: use async or implement promises?\n }\n\n /**\n * Converts parameters to a string.\n * Sometimes parameters can have circular objects and therefor we are handle this case too.\n */\n protected stringifyParams(parameters: any[]) {\n try {\n return JSON.stringify(parameters)\n } catch (error) {\n // most probably circular objects in parameters\n return parameters\n }\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/logger/FileLogger.ts"],"names":[],"mappings":";;;;AAEA,0EAAuC;AAEvC,6DAAyD;AACzD,qDAAiD;AAEjD;;;GAGG;AACH,MAAa,UAAW,SAAQ,+BAAc;IAC1C,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,YACI,OAAuB,EACf,iBAAqC;QAE7C,KAAK,CAAC,OAAO,CAAC,CAAA;QAFN,sBAAiB,GAAjB,iBAAiB,CAAoB;IAGjD,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;OAEG;IACO,QAAQ,CACd,KAAe,EACf,UAAqC,EACrC,WAAyB;;QAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE;YACjD,YAAY,EAAE,KAAK;YACnB,gBAAgB,EAAE,KAAK;SAC1B,CAAC,CAAA;QAEF,MAAM,OAAO,GAAa,EAAE,CAAA;QAE5B,KAAK,IAAI,OAAO,IAAI,QAAQ,EAAE;YAC1B,QAAQ,MAAA,OAAO,CAAC,IAAI,mCAAI,KAAK,EAAE;gBAC3B,KAAK,KAAK;oBACN,OAAO,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;oBACzC,MAAK;gBAET,KAAK,cAAc,CAAC;gBACpB,KAAK,WAAW;oBACZ,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;oBACrC,MAAK;gBAET,KAAK,MAAM;oBACP,OAAO,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;oBAC1C,MAAK;gBAET,KAAK,OAAO;oBACR,OAAO,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;oBAC3C,MAAK;gBAET,KAAK,MAAM;oBACP,OAAO,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;oBAC1C,MAAK;gBAET,KAAK,YAAY;oBACb,IAAI,OAAO,CAAC,MAAM,KAAK,gBAAgB,EAAE;wBACrC,SAAQ;qBACX;oBAED,IAAI,CAAC,KAAK,CACN,gBAAgB,MAAA,OAAO,CAAC,cAAc,0CAAE,IAAI,SAAS,OAAO,CAAC,OAAO,EAAE,CACzE,CAAA;oBACD,MAAK;gBAET,KAAK,OAAO,CAAC;gBACb,KAAK,aAAa;oBACd,IAAI,OAAO,CAAC,MAAM,KAAK,cAAc,EAAE;wBACnC,OAAO,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;qBACrD;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE;wBACvC,OAAO,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;qBACpD;yBAAM;wBACH,OAAO,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;qBAC9C;oBACD,MAAK;aACZ;SACJ;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,OAA0B;QACtC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QACtD,MAAM,QAAQ,GAAG,uBAAW,CAAC,IAAI,GAAG,GAAG,CAAA;QACvC,IAAI,OAAO,GAAG,aAAa,CAAA;QAC3B,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE;YAC1D,OAAO,GAAG,6BAAa,CAAC,aAAa,CACjC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CACjC,CAAA;SACJ;QACD,OAAO,GAAI,OAAoB,CAAC,GAAG,CAC/B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG,GAAG,CACtD,CAAA;QACD,6BAAa,CAAC,cAAc,CACxB,QAAQ,GAAG,OAAO,EAClB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAChC,CAAA,CAAC,yCAAyC;IAC/C,CAAC;CACJ;AApGD,gCAoGC","file":"FileLogger.js","sourcesContent":["import { FileLoggerOptions, LoggerOptions } from \"./LoggerOptions\"\nimport { LogLevel, LogMessage } from \"./Logger\"\nimport appRootPath from \"app-root-path\"\nimport { QueryRunner } from \"../query-runner/QueryRunner\"\nimport { PlatformTools } from \"../platform/PlatformTools\"\nimport { AbstractLogger } from \"./AbstractLogger\"\n\n/**\n * Performs logging of the events in TypeORM.\n * This version of logger logs everything into ormlogs.log file.\n */\nexport class FileLogger extends AbstractLogger {\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(\n options?: LoggerOptions,\n private fileLoggerOptions?: FileLoggerOptions,\n ) {\n super(options)\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Write log to specific output.\n */\n protected writeLog(\n level: LogLevel,\n logMessage: LogMessage | LogMessage[],\n queryRunner?: QueryRunner,\n ) {\n const messages = this.prepareLogMessages(logMessage, {\n highlightSql: false,\n addColonToPrefix: false,\n })\n\n const strings: string[] = []\n\n for (let message of messages) {\n switch (message.type ?? level) {\n case \"log\":\n strings.push(`[LOG]: ${message.message}`)\n break\n\n case \"schema-build\":\n case \"migration\":\n strings.push(String(message.message))\n break\n\n case \"info\":\n strings.push(`[INFO]: ${message.message}`)\n break\n\n case \"query\":\n strings.push(`[QUERY]: ${message.message}`)\n break\n\n case \"warn\":\n strings.push(`[WARN]: ${message.message}`)\n break\n\n case \"query-slow\":\n if (message.prefix === \"execution time\") {\n continue\n }\n\n this.write(\n `[SLOW QUERY: ${message.additionalInfo?.time} ms]: ${message.message}`,\n )\n break\n\n case \"error\":\n case \"query-error\":\n if (message.prefix === \"query failed\") {\n strings.push(`[FAILED QUERY]: ${message.message}`)\n } else if (message.type === \"query-error\") {\n strings.push(`[QUERY ERROR]: ${message.message}`)\n } else {\n strings.push(`[ERROR]: ${message.message}`)\n }\n break\n }\n }\n\n this.write(strings)\n }\n\n /**\n * Writes given strings into the log file.\n */\n protected write(strings: string | string[]) {\n strings = Array.isArray(strings) ? strings : [strings]\n const basePath = appRootPath.path + \"/\"\n let logPath = \"ormlogs.log\"\n if (this.fileLoggerOptions && this.fileLoggerOptions.logPath) {\n logPath = PlatformTools.pathNormalize(\n this.fileLoggerOptions.logPath,\n )\n }\n strings = (strings as string[]).map(\n (str) => \"[\" + new Date().toISOString() + \"]\" + str,\n )\n PlatformTools.appendFileSync(\n basePath + logPath,\n strings.join(\"\\r\\n\") + \"\\r\\n\",\n ) // todo: use async or implement promises?\n }\n}\n"],"sourceRoot":".."}
@@ -29,3 +29,34 @@ export interface Logger {
29
29
  */
30
30
  log(level: "log" | "info" | "warn", message: any, queryRunner?: QueryRunner): any;
31
31
  }
32
+ /**
33
+ * Log level.
34
+ */
35
+ export type LogLevel = "query" | "schema" | "error" | "warn" | "info" | "log" | "migration";
36
+ /**
37
+ * Log message.
38
+ */
39
+ export type LogMessage = {
40
+ type?: LogMessageType;
41
+ prefix?: string;
42
+ message: string | number;
43
+ format?: LogMessageFormat;
44
+ parameters?: any[];
45
+ additionalInfo?: Record<string, any>;
46
+ };
47
+ /**
48
+ * Log message format.
49
+ */
50
+ export type LogMessageFormat = "sql";
51
+ /**
52
+ * Log message type.
53
+ */
54
+ export type LogMessageType = "log" | "info" | "warn" | "error" | "query" | "query-error" | "query-slow" | "schema-build" | "migration";
55
+ /**
56
+ * Options for prepare log messages
57
+ */
58
+ export type PrepareLogMessagesOptions = {
59
+ highlightSql: boolean;
60
+ appendParameterAsComment: boolean;
61
+ addColonToPrefix: boolean;
62
+ };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/logger/Logger.ts"],"names":[],"mappings":"","file":"Logger.js","sourcesContent":["import { QueryRunner } from \"../query-runner/QueryRunner\"\n\n/**\n * Performs logging of the events in TypeORM.\n */\nexport interface Logger {\n /**\n * Logs query and parameters used in it.\n */\n logQuery(query: string, parameters?: any[], queryRunner?: QueryRunner): any\n\n /**\n * Logs query that is failed.\n */\n logQueryError(\n error: string | Error,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ): any\n\n /**\n * Logs query that is slow.\n */\n logQuerySlow(\n time: number,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ): any\n\n /**\n * Logs events from the schema build process.\n */\n logSchemaBuild(message: string, queryRunner?: QueryRunner): any\n\n /**\n * Logs events from the migrations run process.\n */\n logMigration(message: string, queryRunner?: QueryRunner): any\n\n /**\n * Perform logging using given logger, or by default to the console.\n * Log has its own level and message.\n */\n log(\n level: \"log\" | \"info\" | \"warn\",\n message: any,\n queryRunner?: QueryRunner,\n ): any\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/logger/Logger.ts"],"names":[],"mappings":"","file":"Logger.js","sourcesContent":["import { QueryRunner } from \"../query-runner/QueryRunner\"\n\n/**\n * Performs logging of the events in TypeORM.\n */\nexport interface Logger {\n /**\n * Logs query and parameters used in it.\n */\n logQuery(query: string, parameters?: any[], queryRunner?: QueryRunner): any\n\n /**\n * Logs query that is failed.\n */\n logQueryError(\n error: string | Error,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ): any\n\n /**\n * Logs query that is slow.\n */\n logQuerySlow(\n time: number,\n query: string,\n parameters?: any[],\n queryRunner?: QueryRunner,\n ): any\n\n /**\n * Logs events from the schema build process.\n */\n logSchemaBuild(message: string, queryRunner?: QueryRunner): any\n\n /**\n * Logs events from the migrations run process.\n */\n logMigration(message: string, queryRunner?: QueryRunner): any\n\n /**\n * Perform logging using given logger, or by default to the console.\n * Log has its own level and message.\n */\n log(\n level: \"log\" | \"info\" | \"warn\",\n message: any,\n queryRunner?: QueryRunner,\n ): any\n}\n\n/**\n * Log level.\n */\nexport type LogLevel =\n | \"query\"\n | \"schema\"\n | \"error\"\n | \"warn\"\n | \"info\"\n | \"log\"\n | \"migration\"\n\n/**\n * Log message.\n */\nexport type LogMessage = {\n type?: LogMessageType\n prefix?: string\n message: string | number\n format?: LogMessageFormat\n parameters?: any[]\n additionalInfo?: Record<string, any>\n}\n\n/**\n * Log message format.\n */\nexport type LogMessageFormat = \"sql\"\n\n/**\n * Log message type.\n */\nexport type LogMessageType =\n | \"log\"\n | \"info\"\n | \"warn\"\n | \"error\"\n | \"query\"\n | \"query-error\"\n | \"query-slow\"\n | \"schema-build\"\n | \"migration\"\n\n/**\n * Options for prepare log messages\n */\nexport type PrepareLogMessagesOptions = {\n highlightSql: boolean\n appendParameterAsComment: boolean\n addColonToPrefix: boolean\n}\n"],"sourceRoot":".."}