typeorm 0.3.12-dev.ef64bfc → 0.3.13-dev.0619aca
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.
- package/browser/cli-ts-node-commonjs.js +0 -0
- package/browser/cli-ts-node-esm.js +0 -0
- package/browser/common/DeepPartial.d.ts +1 -1
- package/browser/common/EntityTarget.d.ts +1 -1
- package/browser/common/MixedList.d.ts +1 -1
- package/browser/common/NonNever.d.ts +1 -1
- package/browser/common/ObjectType.d.ts +1 -1
- package/browser/common/PickKeysByType.d.ts +6 -0
- package/browser/common/PickKeysByType.js +3 -0
- package/browser/common/PickKeysByType.js.map +1 -0
- package/browser/common/RelationType.d.ts +1 -1
- package/browser/connection/BaseConnectionOptions.d.ts +1 -1
- package/browser/connection/ConnectionOptions.d.ts +1 -1
- package/browser/container.d.ts +1 -1
- package/browser/data-source/DataSourceOptions.d.ts +1 -1
- package/browser/decorator/columns/PrimaryColumn.d.ts +1 -1
- package/browser/driver/Driver.d.ts +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +6 -0
- package/browser/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +3 -1
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/browser/driver/mongodb/MongoDriver.d.ts +1 -1
- package/browser/driver/mongodb/MongoDriver.js.map +1 -1
- package/browser/driver/mongodb/typings.d.ts +6 -6
- package/browser/driver/oracle/OracleDriver.d.ts +1 -1
- package/browser/driver/oracle/OracleDriver.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.js +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/react-native/ReactNativeDriver.d.ts +219 -6
- package/browser/driver/react-native/ReactNativeDriver.js +662 -10
- package/browser/driver/react-native/ReactNativeDriver.js.map +1 -1
- package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapDriver.d.ts +1 -1
- package/browser/driver/sap/SapDriver.js.map +1 -1
- package/browser/driver/spanner/SpannerDriver.d.ts +1 -1
- package/browser/driver/spanner/SpannerDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +12 -0
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +1 -1
- package/browser/driver/sqlserver/SqlServerDriver.d.ts +1 -1
- package/browser/driver/sqlserver/SqlServerDriver.js +7 -2
- package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +2 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +31 -9
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/driver/types/ColumnTypes.d.ts +7 -7
- package/browser/driver/types/DatabaseType.d.ts +1 -1
- package/browser/driver/types/GeoJsonTypes.d.ts +12 -12
- package/browser/driver/types/IsolationLevel.d.ts +1 -1
- package/browser/driver/types/ReplicationMode.d.ts +1 -1
- package/browser/driver/types/UpsertType.d.ts +1 -1
- package/browser/entity-manager/EntityManager.d.ts +18 -0
- package/browser/entity-manager/EntityManager.js +32 -0
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.js +4 -4
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/find-options/FindOperator.d.ts +1 -1
- package/browser/find-options/FindOperatorType.d.ts +1 -1
- package/browser/find-options/FindOperatorType.js.map +1 -1
- package/browser/find-options/FindOptionsOrder.d.ts +3 -3
- package/browser/find-options/FindOptionsOrder.js.map +1 -1
- package/browser/find-options/FindOptionsRelations.d.ts +3 -3
- package/browser/find-options/FindOptionsSelect.d.ts +3 -3
- package/browser/find-options/FindOptionsWhere.d.ts +6 -2
- package/browser/find-options/FindOptionsWhere.js.map +1 -1
- package/browser/find-options/OrderByCondition.d.ts +1 -1
- package/browser/find-options/mongodb/MongoFindOneOptions.d.ts +1 -1
- package/browser/find-options/operator/JsonContains.d.ts +6 -0
- package/browser/find-options/operator/JsonContains.js +10 -0
- package/browser/find-options/operator/JsonContains.js.map +1 -0
- package/browser/index.d.ts +3 -0
- package/browser/index.js +3 -0
- package/browser/index.js.map +1 -1
- package/browser/logger/AbstractLogger.d.ts +49 -0
- package/browser/logger/AbstractLogger.js +230 -0
- package/browser/logger/AbstractLogger.js.map +1 -0
- package/browser/logger/AdvancedConsoleLogger.d.ts +5 -33
- package/browser/logger/AdvancedConsoleLogger.js +41 -106
- package/browser/logger/AdvancedConsoleLogger.js.map +1 -1
- package/browser/logger/DebugLogger.d.ts +9 -29
- package/browser/logger/DebugLogger.js +56 -74
- package/browser/logger/DebugLogger.js.map +1 -1
- package/browser/logger/FileLogger.d.ts +6 -32
- package/browser/logger/FileLogger.js +50 -97
- package/browser/logger/FileLogger.js.map +1 -1
- package/browser/logger/Logger.d.ts +31 -0
- package/browser/logger/Logger.js.map +1 -1
- package/browser/logger/LoggerOptions.d.ts +3 -2
- package/browser/logger/LoggerOptions.js.map +1 -1
- package/browser/logger/SimpleConsoleLogger.d.ts +5 -33
- package/browser/logger/SimpleConsoleLogger.js +43 -106
- package/browser/logger/SimpleConsoleLogger.js.map +1 -1
- package/browser/metadata/types/DeferrableType.d.ts +1 -1
- package/browser/metadata/types/EventListenerTypes.d.ts +1 -1
- package/browser/metadata/types/OnDeleteType.d.ts +1 -1
- package/browser/metadata/types/OnUpdateType.d.ts +1 -1
- package/browser/metadata/types/PropertyTypeInFunction.d.ts +1 -1
- package/browser/metadata/types/RelationTypeInFunction.d.ts +1 -1
- package/browser/metadata/types/RelationTypes.d.ts +1 -1
- package/browser/metadata/types/TableTypes.d.ts +1 -1
- package/browser/metadata/types/TreeTypes.d.ts +1 -1
- package/browser/metadata-args/types/ColumnMode.d.ts +1 -1
- package/browser/metadata-builder/RelationJoinColumnBuilder.js +2 -1
- package/browser/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/browser/migration/MigrationExecutor.js +1 -1
- package/browser/migration/MigrationExecutor.js.map +1 -1
- package/browser/naming-strategy/LegacyOracleNamingStrategy.d.ts +21 -0
- package/browser/naming-strategy/LegacyOracleNamingStrategy.js +46 -0
- package/browser/naming-strategy/LegacyOracleNamingStrategy.js.map +1 -0
- package/browser/persistence/SubjectExecutor.js +6 -6
- package/browser/persistence/SubjectExecutor.js.map +1 -1
- package/browser/persistence/SubjectTopoligicalSorter.js +2 -6
- package/browser/persistence/SubjectTopoligicalSorter.js.map +1 -1
- package/browser/platform/BrowserPlatformTools.js +2 -2
- package/browser/platform/BrowserPlatformTools.js.map +1 -1
- package/browser/platform/PlatformTools.d.ts +3 -1
- package/browser/platform/PlatformTools.js +11 -2
- package/browser/platform/PlatformTools.js.map +1 -1
- package/browser/query-builder/InsertOrUpdateOptions.d.ts +1 -1
- package/browser/query-builder/QueryBuilder.js +2 -0
- package/browser/query-builder/QueryBuilder.js.map +1 -1
- package/browser/query-builder/QueryPartialEntity.d.ts +3 -3
- package/browser/query-builder/SelectQueryBuilder.d.ts +1 -1
- package/browser/query-builder/SelectQueryBuilder.js +8 -4
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilderOption.d.ts +1 -1
- package/browser/query-builder/WhereClause.d.ts +3 -3
- package/browser/query-builder/WhereClause.js.map +1 -1
- package/browser/query-runner/BaseQueryRunner.d.ts +2 -1
- package/browser/query-runner/BaseQueryRunner.js +5 -2
- package/browser/query-runner/BaseQueryRunner.js.map +1 -1
- package/browser/repository/BaseEntity.d.ts +25 -0
- package/browser/repository/BaseEntity.js +24 -0
- package/browser/repository/BaseEntity.js.map +1 -1
- package/browser/repository/EntityId.d.ts +1 -1
- package/browser/repository/Repository.d.ts +17 -0
- package/browser/repository/Repository.js +32 -8
- package/browser/repository/Repository.js.map +1 -1
- package/browser/subscriber/Broadcaster.d.ts +6 -6
- package/browser/subscriber/Broadcaster.js +12 -12
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/util/DateUtils.d.ts +12 -0
- package/browser/util/DateUtils.js +20 -16
- package/browser/util/DateUtils.js.map +1 -1
- package/browser/util/VersionUtils.d.ts +1 -1
- package/cli-ts-node-commonjs.js +0 -0
- package/cli-ts-node-esm.js +0 -0
- package/cli.js +0 -0
- package/commands/CommandUtils.d.ts +1 -1
- package/commands/MigrationCreateCommand.d.ts +1 -1
- package/commands/MigrationGenerateCommand.d.ts +1 -1
- package/common/DeepPartial.d.ts +1 -1
- package/common/EntityTarget.d.ts +1 -1
- package/common/MixedList.d.ts +1 -1
- package/common/NonNever.d.ts +1 -1
- package/common/ObjectType.d.ts +1 -1
- package/common/PickKeysByType.d.ts +6 -0
- package/common/PickKeysByType.js +4 -0
- package/common/PickKeysByType.js.map +1 -0
- package/common/RelationType.d.ts +1 -1
- package/connection/BaseConnectionOptions.d.ts +1 -1
- package/connection/ConnectionOptions.d.ts +1 -1
- package/container.d.ts +1 -1
- package/data-source/DataSourceOptions.d.ts +1 -1
- package/decorator/columns/PrimaryColumn.d.ts +1 -1
- package/driver/Driver.d.ts +1 -1
- package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.d.ts +6 -0
- package/driver/better-sqlite3/BetterSqlite3ConnectionOptions.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3Driver.js +3 -1
- package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/driver/mongodb/MongoDriver.d.ts +1 -1
- package/driver/mongodb/MongoDriver.js.map +1 -1
- package/driver/mongodb/typings.d.ts +6 -6
- package/driver/oracle/OracleDriver.d.ts +1 -1
- package/driver/oracle/OracleDriver.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.js +1 -1
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/react-native/ReactNativeDriver.d.ts +219 -6
- package/driver/react-native/ReactNativeDriver.js +663 -11
- package/driver/react-native/ReactNativeDriver.js.map +1 -1
- package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/driver/sap/SapDriver.d.ts +1 -1
- package/driver/sap/SapDriver.js.map +1 -1
- package/driver/spanner/SpannerDriver.d.ts +1 -1
- package/driver/spanner/SpannerDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +1 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.js +12 -0
- package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +1 -1
- package/driver/sqlserver/SqlServerDriver.d.ts +1 -1
- package/driver/sqlserver/SqlServerDriver.js +7 -2
- package/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.d.ts +2 -1
- package/driver/sqlserver/SqlServerQueryRunner.js +31 -9
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/driver/types/ColumnTypes.d.ts +7 -7
- package/driver/types/DatabaseType.d.ts +1 -1
- package/driver/types/GeoJsonTypes.d.ts +12 -12
- package/driver/types/IsolationLevel.d.ts +1 -1
- package/driver/types/ReplicationMode.d.ts +1 -1
- package/driver/types/UpsertType.d.ts +1 -1
- package/entity-manager/EntityManager.d.ts +18 -0
- package/entity-manager/EntityManager.js +32 -0
- package/entity-manager/EntityManager.js.map +1 -1
- package/entity-manager/MongoEntityManager.js +4 -4
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/find-options/FindOperator.d.ts +1 -1
- package/find-options/FindOperatorType.d.ts +1 -1
- package/find-options/FindOperatorType.js.map +1 -1
- package/find-options/FindOptionsOrder.d.ts +3 -3
- package/find-options/FindOptionsOrder.js.map +1 -1
- package/find-options/FindOptionsRelations.d.ts +3 -3
- package/find-options/FindOptionsSelect.d.ts +3 -3
- package/find-options/FindOptionsWhere.d.ts +6 -2
- package/find-options/FindOptionsWhere.js.map +1 -1
- package/find-options/OrderByCondition.d.ts +1 -1
- package/find-options/mongodb/MongoFindOneOptions.d.ts +1 -1
- package/find-options/operator/JsonContains.d.ts +6 -0
- package/find-options/operator/JsonContains.js +14 -0
- package/find-options/operator/JsonContains.js.map +1 -0
- package/index.d.ts +3 -0
- package/index.js +5 -1
- package/index.js.map +1 -1
- package/index.mjs +6 -0
- package/logger/AbstractLogger.d.ts +49 -0
- package/logger/AbstractLogger.js +234 -0
- package/logger/AbstractLogger.js.map +1 -0
- package/logger/AdvancedConsoleLogger.d.ts +5 -33
- package/logger/AdvancedConsoleLogger.js +41 -106
- package/logger/AdvancedConsoleLogger.js.map +1 -1
- package/logger/DebugLogger.d.ts +9 -29
- package/logger/DebugLogger.js +56 -75
- package/logger/DebugLogger.js.map +1 -1
- package/logger/FileLogger.d.ts +6 -32
- package/logger/FileLogger.js +50 -97
- package/logger/FileLogger.js.map +1 -1
- package/logger/Logger.d.ts +31 -0
- package/logger/Logger.js.map +1 -1
- package/logger/LoggerOptions.d.ts +3 -2
- package/logger/LoggerOptions.js.map +1 -1
- package/logger/SimpleConsoleLogger.d.ts +5 -33
- package/logger/SimpleConsoleLogger.js +43 -106
- package/logger/SimpleConsoleLogger.js.map +1 -1
- package/metadata/types/DeferrableType.d.ts +1 -1
- package/metadata/types/EventListenerTypes.d.ts +1 -1
- package/metadata/types/OnDeleteType.d.ts +1 -1
- package/metadata/types/OnUpdateType.d.ts +1 -1
- package/metadata/types/PropertyTypeInFunction.d.ts +1 -1
- package/metadata/types/RelationTypeInFunction.d.ts +1 -1
- package/metadata/types/RelationTypes.d.ts +1 -1
- package/metadata/types/TableTypes.d.ts +1 -1
- package/metadata/types/TreeTypes.d.ts +1 -1
- package/metadata-args/types/ColumnMode.d.ts +1 -1
- package/metadata-builder/RelationJoinColumnBuilder.js +2 -1
- package/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/migration/MigrationExecutor.js +1 -1
- package/migration/MigrationExecutor.js.map +1 -1
- package/naming-strategy/LegacyOracleNamingStrategy.d.ts +21 -0
- package/naming-strategy/LegacyOracleNamingStrategy.js +50 -0
- package/naming-strategy/LegacyOracleNamingStrategy.js.map +1 -0
- package/package.json +1 -1
- package/persistence/SubjectExecutor.js +6 -6
- package/persistence/SubjectExecutor.js.map +1 -1
- package/persistence/SubjectTopoligicalSorter.js +2 -6
- package/persistence/SubjectTopoligicalSorter.js.map +1 -1
- package/platform/PlatformTools.d.ts +3 -1
- package/platform/PlatformTools.js +11 -2
- package/platform/PlatformTools.js.map +1 -1
- package/query-builder/InsertOrUpdateOptions.d.ts +1 -1
- package/query-builder/QueryBuilder.js +2 -0
- package/query-builder/QueryBuilder.js.map +1 -1
- package/query-builder/QueryPartialEntity.d.ts +3 -3
- package/query-builder/SelectQueryBuilder.d.ts +1 -1
- package/query-builder/SelectQueryBuilder.js +8 -4
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/SelectQueryBuilderOption.d.ts +1 -1
- package/query-builder/WhereClause.d.ts +3 -3
- package/query-builder/WhereClause.js.map +1 -1
- package/query-runner/BaseQueryRunner.d.ts +2 -1
- package/query-runner/BaseQueryRunner.js +5 -2
- package/query-runner/BaseQueryRunner.js.map +1 -1
- package/repository/BaseEntity.d.ts +25 -0
- package/repository/BaseEntity.js +24 -0
- package/repository/BaseEntity.js.map +1 -1
- package/repository/EntityId.d.ts +1 -1
- package/repository/Repository.d.ts +17 -0
- package/repository/Repository.js +32 -8
- package/repository/Repository.js.map +1 -1
- package/subscriber/Broadcaster.d.ts +6 -6
- package/subscriber/Broadcaster.js +12 -12
- package/subscriber/Broadcaster.js.map +1 -1
- package/util/DateUtils.d.ts +12 -0
- package/util/DateUtils.js +20 -16
- package/util/DateUtils.js.map +1 -1
- package/util/VersionUtils.d.ts +1 -1
package/logger/FileLogger.js
CHANGED
|
@@ -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
|
-
|
|
17
|
+
super(options);
|
|
17
18
|
this.fileLoggerOptions = fileLoggerOptions;
|
|
18
19
|
}
|
|
19
20
|
// -------------------------------------------------------------------------
|
|
20
|
-
//
|
|
21
|
+
// Protected Methods
|
|
21
22
|
// -------------------------------------------------------------------------
|
|
22
23
|
/**
|
|
23
|
-
*
|
|
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
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
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
|
|
package/logger/FileLogger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/logger/FileLogger.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"sources":["../../src/logger/FileLogger.ts"],"names":[],"mappings":"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","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":".."}
|
package/logger/Logger.d.ts
CHANGED
|
@@ -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
|
+
};
|
package/logger/Logger.js.map
CHANGED
|
@@ -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":".."}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
+
import { LogLevel } from "./Logger";
|
|
1
2
|
/**
|
|
2
3
|
* Logging options.
|
|
3
4
|
*/
|
|
4
|
-
export
|
|
5
|
+
export type LoggerOptions = boolean | "all" | LogLevel[];
|
|
5
6
|
/**
|
|
6
7
|
* File logging option.
|
|
7
8
|
*/
|
|
8
|
-
export
|
|
9
|
+
export type FileLoggerOptions = {
|
|
9
10
|
/**
|
|
10
11
|
* Specify custom path for log file, relative to application root
|
|
11
12
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/logger/LoggerOptions.ts"],"names":[],"mappings":"","file":"LoggerOptions.js","sourcesContent":["/**\n * Logging options.\n */\nexport type LoggerOptions
|
|
1
|
+
{"version":3,"sources":["../../src/logger/LoggerOptions.ts"],"names":[],"mappings":"","file":"LoggerOptions.js","sourcesContent":["import { LogLevel } from \"./Logger\"\n\n/**\n * Logging options.\n */\nexport type LoggerOptions = boolean | \"all\" | LogLevel[]\n\n/**\n * File logging option.\n */\nexport type FileLoggerOptions = {\n /**\n * Specify custom path for log file, relative to application root\n */\n logPath: string\n}\n"],"sourceRoot":".."}
|
|
@@ -1,41 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AbstractLogger } from "./AbstractLogger";
|
|
2
|
+
import { LogLevel, LogMessage } from "./Logger";
|
|
2
3
|
import { QueryRunner } from "../query-runner/QueryRunner";
|
|
3
|
-
import { Logger } from "./Logger";
|
|
4
4
|
/**
|
|
5
5
|
* Performs logging of the events in TypeORM.
|
|
6
6
|
* This version of logger uses console to log events and does not use syntax highlighting.
|
|
7
7
|
*/
|
|
8
|
-
export declare class SimpleConsoleLogger
|
|
9
|
-
private options?;
|
|
10
|
-
constructor(options?: LoggerOptions | undefined);
|
|
8
|
+
export declare class SimpleConsoleLogger extends AbstractLogger {
|
|
11
9
|
/**
|
|
12
|
-
*
|
|
10
|
+
* Write log to specific output.
|
|
13
11
|
*/
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Logs query that is failed.
|
|
17
|
-
*/
|
|
18
|
-
logQueryError(error: string, query: string, parameters?: any[], queryRunner?: QueryRunner): void;
|
|
19
|
-
/**
|
|
20
|
-
* Logs query that is slow.
|
|
21
|
-
*/
|
|
22
|
-
logQuerySlow(time: number, query: string, parameters?: any[], queryRunner?: QueryRunner): void;
|
|
23
|
-
/**
|
|
24
|
-
* Logs events from the schema build process.
|
|
25
|
-
*/
|
|
26
|
-
logSchemaBuild(message: string, queryRunner?: QueryRunner): void;
|
|
27
|
-
/**
|
|
28
|
-
* Logs events from the migrations run process.
|
|
29
|
-
*/
|
|
30
|
-
logMigration(message: string, queryRunner?: QueryRunner): void;
|
|
31
|
-
/**
|
|
32
|
-
* Perform logging using given logger, or by default to the console.
|
|
33
|
-
* Log has its own level and message.
|
|
34
|
-
*/
|
|
35
|
-
log(level: "log" | "info" | "warn", message: any, queryRunner?: QueryRunner): void;
|
|
36
|
-
/**
|
|
37
|
-
* Converts parameters to a string.
|
|
38
|
-
* Sometimes parameters can have circular objects and therefor we are handle this case too.
|
|
39
|
-
*/
|
|
40
|
-
protected stringifyParams(parameters: any[]): string | any[];
|
|
12
|
+
protected writeLog(level: LogLevel, logMessage: LogMessage | LogMessage[], queryRunner?: QueryRunner): void;
|
|
41
13
|
}
|
|
@@ -1,118 +1,55 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SimpleConsoleLogger = void 0;
|
|
4
|
+
const AbstractLogger_1 = require("./AbstractLogger");
|
|
4
5
|
/**
|
|
5
6
|
* Performs logging of the events in TypeORM.
|
|
6
7
|
* This version of logger uses console to log events and does not use syntax highlighting.
|
|
7
8
|
*/
|
|
8
|
-
class SimpleConsoleLogger {
|
|
9
|
-
// -------------------------------------------------------------------------
|
|
10
|
-
// Constructor
|
|
11
|
-
// -------------------------------------------------------------------------
|
|
12
|
-
constructor(options) {
|
|
13
|
-
this.options = options;
|
|
14
|
-
}
|
|
15
|
-
// -------------------------------------------------------------------------
|
|
16
|
-
// Public Methods
|
|
17
|
-
// -------------------------------------------------------------------------
|
|
18
|
-
/**
|
|
19
|
-
* Logs query and parameters used in it.
|
|
20
|
-
*/
|
|
21
|
-
logQuery(query, parameters, queryRunner) {
|
|
22
|
-
if (this.options === "all" ||
|
|
23
|
-
this.options === true ||
|
|
24
|
-
(Array.isArray(this.options) &&
|
|
25
|
-
this.options.indexOf("query") !== -1)) {
|
|
26
|
-
const sql = query +
|
|
27
|
-
(parameters && parameters.length
|
|
28
|
-
? " -- PARAMETERS: " + this.stringifyParams(parameters)
|
|
29
|
-
: "");
|
|
30
|
-
console.log("query" + ": " + sql);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Logs query that is failed.
|
|
35
|
-
*/
|
|
36
|
-
logQueryError(error, query, parameters, queryRunner) {
|
|
37
|
-
if (this.options === "all" ||
|
|
38
|
-
this.options === true ||
|
|
39
|
-
(Array.isArray(this.options) &&
|
|
40
|
-
this.options.indexOf("error") !== -1)) {
|
|
41
|
-
const sql = query +
|
|
42
|
-
(parameters && parameters.length
|
|
43
|
-
? " -- PARAMETERS: " + this.stringifyParams(parameters)
|
|
44
|
-
: "");
|
|
45
|
-
console.log(`query failed: ` + sql);
|
|
46
|
-
console.log(`error:`, error);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Logs query that is slow.
|
|
51
|
-
*/
|
|
52
|
-
logQuerySlow(time, query, parameters, queryRunner) {
|
|
53
|
-
const sql = query +
|
|
54
|
-
(parameters && parameters.length
|
|
55
|
-
? " -- PARAMETERS: " + this.stringifyParams(parameters)
|
|
56
|
-
: "");
|
|
57
|
-
console.log(`query is slow: ` + sql);
|
|
58
|
-
console.log(`execution time: ` + time);
|
|
59
|
-
}
|
|
9
|
+
class SimpleConsoleLogger extends AbstractLogger_1.AbstractLogger {
|
|
60
10
|
/**
|
|
61
|
-
*
|
|
11
|
+
* Write log to specific output.
|
|
62
12
|
*/
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
// Protected Methods
|
|
104
|
-
// -------------------------------------------------------------------------
|
|
105
|
-
/**
|
|
106
|
-
* Converts parameters to a string.
|
|
107
|
-
* Sometimes parameters can have circular objects and therefor we are handle this case too.
|
|
108
|
-
*/
|
|
109
|
-
stringifyParams(parameters) {
|
|
110
|
-
try {
|
|
111
|
-
return JSON.stringify(parameters);
|
|
112
|
-
}
|
|
113
|
-
catch (error) {
|
|
114
|
-
// most probably circular objects in parameters
|
|
115
|
-
return parameters;
|
|
13
|
+
writeLog(level, logMessage, queryRunner) {
|
|
14
|
+
var _a;
|
|
15
|
+
const messages = this.prepareLogMessages(logMessage, {
|
|
16
|
+
highlightSql: false,
|
|
17
|
+
});
|
|
18
|
+
for (let message of messages) {
|
|
19
|
+
switch ((_a = message.type) !== null && _a !== void 0 ? _a : level) {
|
|
20
|
+
case "log":
|
|
21
|
+
case "schema-build":
|
|
22
|
+
case "migration":
|
|
23
|
+
console.log(message.message);
|
|
24
|
+
break;
|
|
25
|
+
case "info":
|
|
26
|
+
case "query":
|
|
27
|
+
if (message.prefix) {
|
|
28
|
+
console.info(message.prefix, message.message);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
console.info(message.message);
|
|
32
|
+
}
|
|
33
|
+
break;
|
|
34
|
+
case "warn":
|
|
35
|
+
case "query-slow":
|
|
36
|
+
if (message.prefix) {
|
|
37
|
+
console.warn(message.prefix, message.message);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
console.warn(message.message);
|
|
41
|
+
}
|
|
42
|
+
break;
|
|
43
|
+
case "error":
|
|
44
|
+
case "query-error":
|
|
45
|
+
if (message.prefix) {
|
|
46
|
+
console.error(message.prefix, message.message);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
console.error(message.message);
|
|
50
|
+
}
|
|
51
|
+
break;
|
|
52
|
+
}
|
|
116
53
|
}
|
|
117
54
|
}
|
|
118
55
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/logger/SimpleConsoleLogger.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"sources":["../../src/logger/SimpleConsoleLogger.ts"],"names":[],"mappings":";;;AAAA,qDAAiD;AAIjD;;;GAGG;AACH,MAAa,mBAAoB,SAAQ,+BAAc;IACnD;;OAEG;IACO,QAAQ,CACd,KAAe,EACf,UAAqC,EACrC,WAAyB;;QAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE;YACjD,YAAY,EAAE,KAAK;SACtB,CAAC,CAAA;QAEF,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,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;oBAC5B,MAAK;gBAET,KAAK,MAAM,CAAC;gBACZ,KAAK,OAAO;oBACR,IAAI,OAAO,CAAC,MAAM,EAAE;wBAChB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;qBAChD;yBAAM;wBACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;qBAChC;oBACD,MAAK;gBAET,KAAK,MAAM,CAAC;gBACZ,KAAK,YAAY;oBACb,IAAI,OAAO,CAAC,MAAM,EAAE;wBAChB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;qBAChD;yBAAM;wBACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;qBAChC;oBACD,MAAK;gBAET,KAAK,OAAO,CAAC;gBACb,KAAK,aAAa;oBACd,IAAI,OAAO,CAAC,MAAM,EAAE;wBAChB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;qBACjD;yBAAM;wBACH,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;qBACjC;oBACD,MAAK;aACZ;SACJ;IACL,CAAC;CACJ;AAlDD,kDAkDC","file":"SimpleConsoleLogger.js","sourcesContent":["import { 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 does not use syntax highlighting.\n */\nexport class SimpleConsoleLogger 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 highlightSql: false,\n })\n\n for (let message of messages) {\n switch (message.type ?? level) {\n case \"log\":\n case \"schema-build\":\n case \"migration\":\n console.log(message.message)\n break\n\n case \"info\":\n case \"query\":\n if (message.prefix) {\n console.info(message.prefix, message.message)\n } else {\n console.info(message.message)\n }\n break\n\n case \"warn\":\n case \"query-slow\":\n if (message.prefix) {\n console.warn(message.prefix, message.message)\n } else {\n console.warn(message.message)\n }\n break\n\n case \"error\":\n case \"query-error\":\n if (message.prefix) {\n console.error(message.prefix, message.message)\n } else {\n console.error(message.message)\n }\n break\n }\n }\n }\n}\n"],"sourceRoot":".."}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* All types that entity listener can be.
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export type EventListenerType = "after-load" | "before-insert" | "after-insert" | "before-update" | "after-update" | "before-remove" | "after-remove" | "before-soft-remove" | "after-soft-remove" | "before-recover" | "after-recover";
|
|
5
5
|
/**
|
|
6
6
|
* Provides a constants for each entity listener type.
|
|
7
7
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* ON_DELETE type to be used to specify delete strategy when some relation is being deleted from the database.
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export type OnDeleteType = "RESTRICT" | "CASCADE" | "SET NULL" | "DEFAULT" | "NO ACTION";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* ON_UPDATE type to be used to specify update strategy when some relation is being updated.
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export type OnUpdateType = "RESTRICT" | "CASCADE" | "SET NULL" | "DEFAULT" | "NO ACTION";
|
|
@@ -2,4 +2,4 @@ import { EntityTarget } from "../../common/EntityTarget";
|
|
|
2
2
|
/**
|
|
3
3
|
* Function that returns a type of the field. Returned value must be a class used on the relation.
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
5
|
+
export type RelationTypeInFunction = ((type?: any) => Function) | EntityTarget<any>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Table type. Tables can be closure, junction,, etc.
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export type TableType = "regular" | "view" | "junction" | "closure" | "closure-junction" | "entity-child";
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* Tree type.
|
|
3
3
|
* Specifies what table pattern will be used for the tree entity.
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
5
|
+
export type TreeType = "adjacency-list" | "closure-table" | "nested-set" | "materialized-path";
|
|
@@ -4,4 +4,4 @@
|
|
|
4
4
|
* For example, "primary" means that it will be a primary column, or "createDate" means that it will create a create
|
|
5
5
|
* date column.
|
|
6
6
|
*/
|
|
7
|
-
export
|
|
7
|
+
export type ColumnMode = "regular" | "virtual" | "virtual-property" | "createDate" | "updateDate" | "deleteDate" | "version" | "treeChildrenCount" | "treeLevel" | "objectId" | "array";
|