typeorm 0.3.23-dev.6ebae3b → 0.3.23-dev.9464e65

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 (146) hide show
  1. package/browser/cache/DbQueryResultCache.js +1 -1
  2. package/browser/cache/DbQueryResultCache.js.map +1 -1
  3. package/browser/cache/RedisQueryResultCache.js +1 -1
  4. package/browser/cache/RedisQueryResultCache.js.map +1 -1
  5. package/browser/data-source/BaseDataSourceOptions.d.ts +1 -1
  6. package/browser/data-source/BaseDataSourceOptions.js.map +1 -1
  7. package/browser/data-source/DataSource.js +2 -1
  8. package/browser/data-source/DataSource.js.map +1 -1
  9. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +2 -2
  10. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  11. package/browser/driver/cockroachdb/CockroachQueryRunner.js +2 -2
  12. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  13. package/browser/driver/cordova/CordovaQueryRunner.js +2 -2
  14. package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
  15. package/browser/driver/expo/ExpoQueryRunner.js +2 -2
  16. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  17. package/browser/driver/expo/legacy/ExpoLegacyQueryRunner.js +2 -2
  18. package/browser/driver/expo/legacy/ExpoLegacyQueryRunner.js.map +1 -1
  19. package/browser/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
  20. package/browser/driver/mysql/MysqlConnectionOptions.js.map +1 -1
  21. package/browser/driver/mysql/MysqlQueryRunner.js +8 -3
  22. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  23. package/browser/driver/nativescript/NativescriptQueryRunner.js +2 -2
  24. package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  25. package/browser/driver/oracle/OracleQueryRunner.js +2 -2
  26. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  27. package/browser/driver/postgres/PostgresQueryRunner.js +2 -2
  28. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  29. package/browser/driver/react-native/ReactNativeQueryRunner.js +2 -2
  30. package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  31. package/browser/driver/sap/SapQueryRunner.js +2 -2
  32. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  33. package/browser/driver/spanner/SpannerQueryRunner.js +4 -4
  34. package/browser/driver/spanner/SpannerQueryRunner.js.map +1 -1
  35. package/browser/driver/sqlite/SqliteQueryRunner.js +2 -2
  36. package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  37. package/browser/driver/sqljs/SqljsQueryRunner.js +2 -2
  38. package/browser/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  39. package/browser/driver/sqlserver/SqlServerQueryRunner.js +2 -2
  40. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  41. package/browser/driver/types/GeoJsonTypes.d.ts +20 -15
  42. package/browser/driver/types/GeoJsonTypes.js.map +1 -1
  43. package/browser/index.d.ts +1 -0
  44. package/browser/index.js +1 -0
  45. package/browser/index.js.map +1 -1
  46. package/browser/logger/AbstractLogger.d.ts +1 -1
  47. package/browser/logger/AbstractLogger.js +5 -1
  48. package/browser/logger/AbstractLogger.js.map +1 -1
  49. package/browser/logger/FormattedConsoleLogger.d.ts +13 -0
  50. package/browser/logger/FormattedConsoleLogger.js +55 -0
  51. package/browser/logger/FormattedConsoleLogger.js.map +1 -0
  52. package/browser/logger/Logger.d.ts +1 -0
  53. package/browser/logger/Logger.js.map +1 -1
  54. package/browser/logger/LoggerFactory.d.ts +1 -1
  55. package/browser/logger/LoggerFactory.js +3 -0
  56. package/browser/logger/LoggerFactory.js.map +1 -1
  57. package/browser/metadata/EntityListenerMetadata.js +14 -2
  58. package/browser/metadata/EntityListenerMetadata.js.map +1 -1
  59. package/browser/persistence/SubjectChangedColumnsComputer.js +23 -9
  60. package/browser/persistence/SubjectChangedColumnsComputer.js.map +1 -1
  61. package/browser/platform/PlatformTools.d.ts +5 -0
  62. package/browser/platform/PlatformTools.js +16 -0
  63. package/browser/platform/PlatformTools.js.map +1 -1
  64. package/browser/query-builder/SelectQueryBuilder.js +1 -1
  65. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  66. package/browser/repository/MongoRepository.d.ts +1 -1
  67. package/browser/repository/MongoRepository.js.map +1 -1
  68. package/browser/subscriber/event/UpdateEvent.d.ts +4 -0
  69. package/browser/subscriber/event/UpdateEvent.js.map +1 -1
  70. package/cache/DbQueryResultCache.js +1 -1
  71. package/cache/DbQueryResultCache.js.map +1 -1
  72. package/cache/RedisQueryResultCache.js +1 -1
  73. package/cache/RedisQueryResultCache.js.map +1 -1
  74. package/commands/MigrationCreateCommand.d.ts +3 -1
  75. package/commands/MigrationCreateCommand.js +17 -3
  76. package/commands/MigrationCreateCommand.js.map +1 -1
  77. package/commands/MigrationGenerateCommand.d.ts +3 -1
  78. package/commands/MigrationGenerateCommand.js +17 -3
  79. package/commands/MigrationGenerateCommand.js.map +1 -1
  80. package/data-source/BaseDataSourceOptions.d.ts +1 -1
  81. package/data-source/BaseDataSourceOptions.js.map +1 -1
  82. package/data-source/DataSource.js +2 -1
  83. package/data-source/DataSource.js.map +1 -1
  84. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +2 -2
  85. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  86. package/driver/cockroachdb/CockroachQueryRunner.js +2 -2
  87. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  88. package/driver/cordova/CordovaQueryRunner.js +2 -2
  89. package/driver/cordova/CordovaQueryRunner.js.map +1 -1
  90. package/driver/expo/ExpoQueryRunner.js +2 -2
  91. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  92. package/driver/expo/legacy/ExpoLegacyQueryRunner.js +2 -2
  93. package/driver/expo/legacy/ExpoLegacyQueryRunner.js.map +1 -1
  94. package/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
  95. package/driver/mysql/MysqlConnectionOptions.js.map +1 -1
  96. package/driver/mysql/MysqlQueryRunner.js +8 -3
  97. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  98. package/driver/nativescript/NativescriptQueryRunner.js +2 -2
  99. package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  100. package/driver/oracle/OracleQueryRunner.js +2 -2
  101. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  102. package/driver/postgres/PostgresQueryRunner.js +2 -2
  103. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  104. package/driver/react-native/ReactNativeQueryRunner.js +2 -2
  105. package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  106. package/driver/sap/SapQueryRunner.js +2 -2
  107. package/driver/sap/SapQueryRunner.js.map +1 -1
  108. package/driver/spanner/SpannerQueryRunner.js +4 -4
  109. package/driver/spanner/SpannerQueryRunner.js.map +1 -1
  110. package/driver/sqlite/SqliteQueryRunner.js +2 -2
  111. package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  112. package/driver/sqljs/SqljsQueryRunner.js +2 -2
  113. package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  114. package/driver/sqlserver/SqlServerQueryRunner.js +2 -2
  115. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  116. package/driver/types/GeoJsonTypes.d.ts +20 -15
  117. package/driver/types/GeoJsonTypes.js.map +1 -1
  118. package/index.d.ts +1 -0
  119. package/index.js +1 -0
  120. package/index.js.map +1 -1
  121. package/index.mjs +2 -0
  122. package/logger/AbstractLogger.d.ts +1 -1
  123. package/logger/AbstractLogger.js +5 -1
  124. package/logger/AbstractLogger.js.map +1 -1
  125. package/logger/FormattedConsoleLogger.d.ts +13 -0
  126. package/logger/FormattedConsoleLogger.js +59 -0
  127. package/logger/FormattedConsoleLogger.js.map +1 -0
  128. package/logger/Logger.d.ts +1 -0
  129. package/logger/Logger.js.map +1 -1
  130. package/logger/LoggerFactory.d.ts +1 -1
  131. package/logger/LoggerFactory.js +3 -0
  132. package/logger/LoggerFactory.js.map +1 -1
  133. package/metadata/EntityListenerMetadata.js +14 -2
  134. package/metadata/EntityListenerMetadata.js.map +1 -1
  135. package/package.json +1 -1
  136. package/persistence/SubjectChangedColumnsComputer.js +23 -9
  137. package/persistence/SubjectChangedColumnsComputer.js.map +1 -1
  138. package/platform/PlatformTools.d.ts +5 -0
  139. package/platform/PlatformTools.js +16 -0
  140. package/platform/PlatformTools.js.map +1 -1
  141. package/query-builder/SelectQueryBuilder.js +1 -1
  142. package/query-builder/SelectQueryBuilder.js.map +1 -1
  143. package/repository/MongoRepository.d.ts +1 -1
  144. package/repository/MongoRepository.js.map +1 -1
  145. package/subscriber/event/UpdateEvent.d.ts +4 -0
  146. package/subscriber/event/UpdateEvent.js.map +1 -1
@@ -40,11 +40,11 @@ export class ReactNativeQueryRunner extends AbstractSqliteQueryRunner {
40
40
  const broadcasterResult = new BroadcasterResult();
41
41
  this.driver.connection.logger.logQuery(query, parameters, this);
42
42
  this.broadcaster.broadcastBeforeQueryEvent(broadcasterResult, query, parameters);
43
- const queryStartTime = +new Date();
43
+ const queryStartTime = Date.now();
44
44
  databaseConnection.executeSql(query, parameters, async (raw) => {
45
45
  // log slow queries if maxQueryExecution time is set
46
46
  const maxQueryExecutionTime = this.driver.options.maxQueryExecutionTime;
47
- const queryEndTime = +new Date();
47
+ const queryEndTime = Date.now();
48
48
  const queryExecutionTime = queryEndTime - queryStartTime;
49
49
  this.broadcaster.broadcastAfterQueryEvent(broadcasterResult, query, parameters, true, queryExecutionTime, raw, undefined);
50
50
  if (maxQueryExecutionTime &&
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/driver/react-native/ReactNativeQueryRunner.ts"],"names":[],"mappings":"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","file":"ReactNativeQueryRunner.js","sourcesContent":["import { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\"\nimport { QueryFailedError } from \"../../error/QueryFailedError\"\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\"\nimport { ReactNativeDriver } from \"./ReactNativeDriver\"\nimport { Broadcaster } from \"../../subscriber/Broadcaster\"\nimport { QueryResult } from \"../../query-runner/QueryResult\"\nimport { BroadcasterResult } from \"../../subscriber/BroadcasterResult\"\n\n/**\n * Runs queries on a single sqlite database connection.\n */\nexport class ReactNativeQueryRunner extends AbstractSqliteQueryRunner {\n /**\n * Database driver used by connection.\n */\n // @ts-ignore temporary, we need to fix the issue with the AbstractSqliteDriver and circular errors\n driver: ReactNativeDriver\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: ReactNativeDriver) {\n super()\n this.driver = driver\n this.connection = driver.connection\n this.broadcaster = new Broadcaster(this)\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`)\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`)\n }\n\n /**\n * Executes a given SQL query.\n */\n query(\n query: string,\n parameters?: any[],\n useStructuredResult = false,\n ): Promise<any> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n return new Promise(async (ok, fail) => {\n const databaseConnection = await this.connect()\n const broadcasterResult = new BroadcasterResult()\n\n this.driver.connection.logger.logQuery(query, parameters, this)\n this.broadcaster.broadcastBeforeQueryEvent(\n broadcasterResult,\n query,\n parameters,\n )\n\n const queryStartTime = +new Date()\n databaseConnection.executeSql(\n query,\n parameters,\n async (raw: any) => {\n // log slow queries if maxQueryExecution time is set\n const maxQueryExecutionTime =\n this.driver.options.maxQueryExecutionTime\n const queryEndTime = +new Date()\n const queryExecutionTime = queryEndTime - queryStartTime\n\n this.broadcaster.broadcastAfterQueryEvent(\n broadcasterResult,\n query,\n parameters,\n true,\n queryExecutionTime,\n raw,\n undefined,\n )\n\n if (\n maxQueryExecutionTime &&\n queryExecutionTime > maxQueryExecutionTime\n )\n this.driver.connection.logger.logQuerySlow(\n queryExecutionTime,\n query,\n parameters,\n this,\n )\n\n if (broadcasterResult.promises.length > 0)\n await Promise.all(broadcasterResult.promises)\n\n const result = new QueryResult()\n\n if (raw?.hasOwnProperty(\"rowsAffected\")) {\n result.affected = raw.rowsAffected\n }\n\n if (raw?.hasOwnProperty(\"rows\")) {\n const records = []\n for (let i = 0; i < raw.rows.length; i++) {\n records.push(raw.rows.item(i))\n }\n\n result.raw = records\n result.records = records\n }\n\n // return id of inserted row, if query was insert statement.\n if (query.substr(0, 11) === \"INSERT INTO\") {\n result.raw = raw.insertId\n }\n\n if (useStructuredResult) {\n ok(result)\n } else {\n ok(result.raw)\n }\n },\n async (err: any) => {\n this.driver.connection.logger.logQueryError(\n err,\n query,\n parameters,\n this,\n )\n this.broadcaster.broadcastAfterQueryEvent(\n broadcasterResult,\n query,\n parameters,\n false,\n undefined,\n undefined,\n err,\n )\n await broadcasterResult.wait()\n\n fail(new QueryFailedError(query, parameters, err))\n },\n )\n })\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Parametrizes given object of values. Used to create column=value queries.\n */\n protected parametrize(\n objectLiteral: ObjectLiteral,\n startIndex: number = 0,\n ): string[] {\n return Object.keys(objectLiteral).map((key, index) => `\"${key}\"` + \"=?\")\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../browser/src/driver/react-native/ReactNativeQueryRunner.ts"],"names":[],"mappings":"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","file":"ReactNativeQueryRunner.js","sourcesContent":["import { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\"\nimport { QueryFailedError } from \"../../error/QueryFailedError\"\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\"\nimport { ReactNativeDriver } from \"./ReactNativeDriver\"\nimport { Broadcaster } from \"../../subscriber/Broadcaster\"\nimport { QueryResult } from \"../../query-runner/QueryResult\"\nimport { BroadcasterResult } from \"../../subscriber/BroadcasterResult\"\n\n/**\n * Runs queries on a single sqlite database connection.\n */\nexport class ReactNativeQueryRunner extends AbstractSqliteQueryRunner {\n /**\n * Database driver used by connection.\n */\n // @ts-ignore temporary, we need to fix the issue with the AbstractSqliteDriver and circular errors\n driver: ReactNativeDriver\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: ReactNativeDriver) {\n super()\n this.driver = driver\n this.connection = driver.connection\n this.broadcaster = new Broadcaster(this)\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`)\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`)\n }\n\n /**\n * Executes a given SQL query.\n */\n query(\n query: string,\n parameters?: any[],\n useStructuredResult = false,\n ): Promise<any> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n return new Promise(async (ok, fail) => {\n const databaseConnection = await this.connect()\n const broadcasterResult = new BroadcasterResult()\n\n this.driver.connection.logger.logQuery(query, parameters, this)\n this.broadcaster.broadcastBeforeQueryEvent(\n broadcasterResult,\n query,\n parameters,\n )\n\n const queryStartTime = Date.now()\n databaseConnection.executeSql(\n query,\n parameters,\n async (raw: any) => {\n // log slow queries if maxQueryExecution time is set\n const maxQueryExecutionTime =\n this.driver.options.maxQueryExecutionTime\n const queryEndTime = Date.now()\n const queryExecutionTime = queryEndTime - queryStartTime\n\n this.broadcaster.broadcastAfterQueryEvent(\n broadcasterResult,\n query,\n parameters,\n true,\n queryExecutionTime,\n raw,\n undefined,\n )\n\n if (\n maxQueryExecutionTime &&\n queryExecutionTime > maxQueryExecutionTime\n )\n this.driver.connection.logger.logQuerySlow(\n queryExecutionTime,\n query,\n parameters,\n this,\n )\n\n if (broadcasterResult.promises.length > 0)\n await Promise.all(broadcasterResult.promises)\n\n const result = new QueryResult()\n\n if (raw?.hasOwnProperty(\"rowsAffected\")) {\n result.affected = raw.rowsAffected\n }\n\n if (raw?.hasOwnProperty(\"rows\")) {\n const records = []\n for (let i = 0; i < raw.rows.length; i++) {\n records.push(raw.rows.item(i))\n }\n\n result.raw = records\n result.records = records\n }\n\n // return id of inserted row, if query was insert statement.\n if (query.substr(0, 11) === \"INSERT INTO\") {\n result.raw = raw.insertId\n }\n\n if (useStructuredResult) {\n ok(result)\n } else {\n ok(result.raw)\n }\n },\n async (err: any) => {\n this.driver.connection.logger.logQueryError(\n err,\n query,\n parameters,\n this,\n )\n this.broadcaster.broadcastAfterQueryEvent(\n broadcasterResult,\n query,\n parameters,\n false,\n undefined,\n undefined,\n err,\n )\n await broadcasterResult.wait()\n\n fail(new QueryFailedError(query, parameters, err))\n },\n )\n })\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Parametrizes given object of values. Used to create column=value queries.\n */\n protected parametrize(\n objectLiteral: ObjectLiteral,\n startIndex: number = 0,\n ): string[] {\n return Object.keys(objectLiteral).map((key, index) => `\"${key}\"` + \"=?\")\n }\n}\n"],"sourceRoot":"../.."}
@@ -139,7 +139,7 @@ export class SapQueryRunner extends BaseQueryRunner {
139
139
  const databaseConnection = await this.connect();
140
140
  this.driver.connection.logger.logQuery(query, parameters, this);
141
141
  this.broadcaster.broadcastBeforeQueryEvent(broadcasterResult, query, parameters);
142
- const queryStartTime = +new Date();
142
+ const queryStartTime = Date.now();
143
143
  const isInsertQuery = query.substr(0, 11) === "INSERT INTO";
144
144
  if (parameters?.some(Array.isArray)) {
145
145
  statement = await promisify(databaseConnection.prepare.bind(databaseConnection))(query);
@@ -155,7 +155,7 @@ export class SapQueryRunner extends BaseQueryRunner {
155
155
  }
156
156
  // log slow queries if maxQueryExecution time is set
157
157
  const maxQueryExecutionTime = this.driver.connection.options.maxQueryExecutionTime;
158
- const queryEndTime = +new Date();
158
+ const queryEndTime = Date.now();
159
159
  const queryExecutionTime = queryEndTime - queryStartTime;
160
160
  this.broadcaster.broadcastAfterQueryEvent(broadcasterResult, query, parameters, true, queryExecutionTime, raw, undefined);
161
161
  if (maxQueryExecutionTime &&