@fgv/ts-utils 5.0.1-1 → 5.0.1-2
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/dist/ts-utils.d.ts
CHANGED
|
@@ -1114,7 +1114,7 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
1114
1114
|
/**
|
|
1115
1115
|
* {@inheritdoc IResult.report}
|
|
1116
1116
|
*/
|
|
1117
|
-
report(reporter?: IResultReporter<T,
|
|
1117
|
+
report(reporter?: IResultReporter<T, unknown>, options?: IResultReportOptions<unknown>): DetailedFailure<T, TD>;
|
|
1118
1118
|
orThrow(logOrFormat?: IResultLogger<TD> | ErrorFormatter<TD>): never;
|
|
1119
1119
|
orThrow(cb: ErrorFormatter): never;
|
|
1120
1120
|
/**
|
|
@@ -1206,7 +1206,7 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
1206
1206
|
/**
|
|
1207
1207
|
* {@inheritdoc IResult.report}
|
|
1208
1208
|
*/
|
|
1209
|
-
report(reporter?: IResultReporter<T,
|
|
1209
|
+
report(reporter?: IResultReporter<T, unknown>, options?: IResultReportOptions<unknown>): DetailedSuccess<T, TD>;
|
|
1210
1210
|
/**
|
|
1211
1211
|
* Creates a {@link DetailedSuccess | DetailedSuccess<T, TD>} with the supplied value and
|
|
1212
1212
|
* optional detail.
|
|
@@ -1406,7 +1406,7 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
1406
1406
|
/**
|
|
1407
1407
|
* {@inheritdoc IResult.report}
|
|
1408
1408
|
*/
|
|
1409
|
-
report(reporter?: IResultReporter<T>, options?: IResultReportOptions):
|
|
1409
|
+
report(reporter?: IResultReporter<T>, options?: IResultReportOptions<unknown>): Failure<T>;
|
|
1410
1410
|
/**
|
|
1411
1411
|
* Get a 'friendly' string representation of this object.
|
|
1412
1412
|
* @remarks
|
|
@@ -1967,6 +1967,16 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
1967
1967
|
toString(separator?: string): string;
|
|
1968
1968
|
}
|
|
1969
1969
|
|
|
1970
|
+
/**
|
|
1971
|
+
* Details for reporting a message.
|
|
1972
|
+
* @public
|
|
1973
|
+
*/
|
|
1974
|
+
export declare interface IMessageReportDetail<TD = unknown> {
|
|
1975
|
+
level?: MessageLogLevel;
|
|
1976
|
+
message?: ErrorFormatter<TD>;
|
|
1977
|
+
detail?: TD;
|
|
1978
|
+
}
|
|
1979
|
+
|
|
1970
1980
|
/**
|
|
1971
1981
|
* Infers the type that will be returned by an instantiated converter. Works
|
|
1972
1982
|
* for complex as well as simple types.
|
|
@@ -2345,7 +2355,7 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
2345
2355
|
* @param reporter - The {@link IResultReporter | reporter} to which the result will be reported.
|
|
2346
2356
|
* @param options - The {@link IResultReportOptions | options} for reporting the result.
|
|
2347
2357
|
*/
|
|
2348
|
-
report(reporter?: IResultReporter<T>, options?: IResultReportOptions):
|
|
2358
|
+
report(reporter?: IResultReporter<T>, options?: IResultReportOptions<unknown>): Result<T>;
|
|
2349
2359
|
}
|
|
2350
2360
|
|
|
2351
2361
|
/**
|
|
@@ -2382,7 +2392,7 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
2382
2392
|
* @public
|
|
2383
2393
|
*/
|
|
2384
2394
|
export declare interface IResultReporter<T, TD = unknown> {
|
|
2385
|
-
reportSuccess(level: MessageLogLevel, value: T, detail?: TD): void;
|
|
2395
|
+
reportSuccess(level: MessageLogLevel, value: T, detail?: TD, message?: ErrorFormatter<TD>): void;
|
|
2386
2396
|
reportFailure(level: MessageLogLevel, message: string, detail?: TD): void;
|
|
2387
2397
|
}
|
|
2388
2398
|
|
|
@@ -2394,15 +2404,11 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
2394
2404
|
/**
|
|
2395
2405
|
* The level of reporting to be used for failure results. Default is 'error'.
|
|
2396
2406
|
*/
|
|
2397
|
-
failure?: MessageLogLevel
|
|
2407
|
+
failure?: MessageLogLevel | IMessageReportDetail<TD>;
|
|
2398
2408
|
/**
|
|
2399
2409
|
* The level of reporting to be used for success results. Default is 'quiet'.
|
|
2400
2410
|
*/
|
|
2401
|
-
success?: MessageLogLevel
|
|
2402
|
-
/**
|
|
2403
|
-
* The error formatter to be used for reporting an error result.
|
|
2404
|
-
*/
|
|
2405
|
-
message?: ErrorFormatter<TD>;
|
|
2411
|
+
success?: MessageLogLevel | IMessageReportDetail<TD>;
|
|
2406
2412
|
}
|
|
2407
2413
|
|
|
2408
2414
|
/**
|
|
@@ -2681,10 +2687,10 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
2681
2687
|
*/
|
|
2682
2688
|
declare class LogReporter<T, TD = unknown> implements ILogger, IResultReporter<T, TD> {
|
|
2683
2689
|
/**
|
|
2684
|
-
*
|
|
2685
|
-
* @
|
|
2690
|
+
* Base logger used to by this reporter.
|
|
2691
|
+
* @public
|
|
2686
2692
|
*/
|
|
2687
|
-
|
|
2693
|
+
readonly logger: ILogger;
|
|
2688
2694
|
/**
|
|
2689
2695
|
* The formatter to use for values.
|
|
2690
2696
|
* @internal
|
|
@@ -2727,11 +2733,17 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
2727
2733
|
/**
|
|
2728
2734
|
* {@inheritDoc IResultReporter.reportSuccess}
|
|
2729
2735
|
*/
|
|
2730
|
-
reportSuccess(level: MessageLogLevel, value: T, detail?: TD): void;
|
|
2736
|
+
reportSuccess(level: MessageLogLevel, value: T, detail?: TD, message?: ErrorFormatter<TD>): void;
|
|
2731
2737
|
/**
|
|
2732
2738
|
* {@inheritDoc IResultReporter.reportFailure}
|
|
2733
2739
|
*/
|
|
2734
2740
|
reportFailure(level: MessageLogLevel, message: string, detail?: TD): void;
|
|
2741
|
+
/**
|
|
2742
|
+
* Creates a new {@link Logging.LogReporter | LogReporter} with the same logger but a different value formatter.
|
|
2743
|
+
* @param valueFormatter - The value formatter to use.
|
|
2744
|
+
* @returns A new {@link Logging.LogReporter | LogReporter} with the same logger but a different value formatter.
|
|
2745
|
+
*/
|
|
2746
|
+
withValueFormatter<TN>(valueFormatter: LogValueFormatter<TN, TD>): LogReporter<TN, TD>;
|
|
2735
2747
|
/**
|
|
2736
2748
|
* Generic method to try to format an object for logging.
|
|
2737
2749
|
* @param value - The value to format.
|
|
@@ -4232,7 +4244,7 @@ declare class Collectible<TKEY extends string = string, TINDEX extends number =
|
|
|
4232
4244
|
/**
|
|
4233
4245
|
* {@inheritdoc IResult.report}
|
|
4234
4246
|
*/
|
|
4235
|
-
report(reporter?: IResultReporter<T>, options?: IResultReportOptions):
|
|
4247
|
+
report(reporter?: IResultReporter<T>, options?: IResultReportOptions<unknown>): Success<T>;
|
|
4236
4248
|
/**
|
|
4237
4249
|
* Creates a {@link Success | Success<T>} with the supplied value.
|
|
4238
4250
|
* @param value - The value to be returned.
|
|
@@ -58,6 +58,15 @@ export interface IResultLogger<TD = unknown> {
|
|
|
58
58
|
* @public
|
|
59
59
|
*/
|
|
60
60
|
export type MessageLogLevel = 'quiet' | 'detail' | 'info' | 'warning' | 'error';
|
|
61
|
+
/**
|
|
62
|
+
* Details for reporting a message.
|
|
63
|
+
* @public
|
|
64
|
+
*/
|
|
65
|
+
export interface IMessageReportDetail<TD = unknown> {
|
|
66
|
+
level?: MessageLogLevel;
|
|
67
|
+
message?: ErrorFormatter<TD>;
|
|
68
|
+
detail?: TD;
|
|
69
|
+
}
|
|
61
70
|
/**
|
|
62
71
|
* Options for reporting a result.
|
|
63
72
|
* @public
|
|
@@ -66,22 +75,18 @@ export interface IResultReportOptions<TD = unknown> {
|
|
|
66
75
|
/**
|
|
67
76
|
* The level of reporting to be used for failure results. Default is 'error'.
|
|
68
77
|
*/
|
|
69
|
-
failure?: MessageLogLevel
|
|
78
|
+
failure?: MessageLogLevel | IMessageReportDetail<TD>;
|
|
70
79
|
/**
|
|
71
80
|
* The level of reporting to be used for success results. Default is 'quiet'.
|
|
72
81
|
*/
|
|
73
|
-
success?: MessageLogLevel
|
|
74
|
-
/**
|
|
75
|
-
* The error formatter to be used for reporting an error result.
|
|
76
|
-
*/
|
|
77
|
-
message?: ErrorFormatter<TD>;
|
|
82
|
+
success?: MessageLogLevel | IMessageReportDetail<TD>;
|
|
78
83
|
}
|
|
79
84
|
/**
|
|
80
85
|
* Interface for reporting a result.
|
|
81
86
|
* @public
|
|
82
87
|
*/
|
|
83
88
|
export interface IResultReporter<T, TD = unknown> {
|
|
84
|
-
reportSuccess(level: MessageLogLevel, value: T, detail?: TD): void;
|
|
89
|
+
reportSuccess(level: MessageLogLevel, value: T, detail?: TD, message?: ErrorFormatter<TD>): void;
|
|
85
90
|
reportFailure(level: MessageLogLevel, message: string, detail?: TD): void;
|
|
86
91
|
}
|
|
87
92
|
/**
|
|
@@ -286,7 +291,7 @@ export interface IResult<T> {
|
|
|
286
291
|
* @param reporter - The {@link IResultReporter | reporter} to which the result will be reported.
|
|
287
292
|
* @param options - The {@link IResultReportOptions | options} for reporting the result.
|
|
288
293
|
*/
|
|
289
|
-
report(reporter?: IResultReporter<T>, options?: IResultReportOptions):
|
|
294
|
+
report(reporter?: IResultReporter<T>, options?: IResultReportOptions<unknown>): Result<T>;
|
|
290
295
|
}
|
|
291
296
|
/**
|
|
292
297
|
* Reports a successful {@link IResult | result} from some operation and the
|
|
@@ -376,7 +381,7 @@ export declare class Success<T> implements IResult<T> {
|
|
|
376
381
|
/**
|
|
377
382
|
* {@inheritdoc IResult.report}
|
|
378
383
|
*/
|
|
379
|
-
report(reporter?: IResultReporter<T>, options?: IResultReportOptions):
|
|
384
|
+
report(reporter?: IResultReporter<T>, options?: IResultReportOptions<unknown>): Success<T>;
|
|
380
385
|
/**
|
|
381
386
|
* Creates a {@link Success | Success<T>} with the supplied value.
|
|
382
387
|
* @param value - The value to be returned.
|
|
@@ -472,7 +477,7 @@ export declare class Failure<T> implements IResult<T> {
|
|
|
472
477
|
/**
|
|
473
478
|
* {@inheritdoc IResult.report}
|
|
474
479
|
*/
|
|
475
|
-
report(reporter?: IResultReporter<T>, options?: IResultReportOptions):
|
|
480
|
+
report(reporter?: IResultReporter<T>, options?: IResultReportOptions<unknown>): Failure<T>;
|
|
476
481
|
/**
|
|
477
482
|
* Get a 'friendly' string representation of this object.
|
|
478
483
|
* @remarks
|
|
@@ -598,7 +603,7 @@ export declare class DetailedSuccess<T, TD> extends Success<T> {
|
|
|
598
603
|
/**
|
|
599
604
|
* {@inheritdoc IResult.report}
|
|
600
605
|
*/
|
|
601
|
-
report(reporter?: IResultReporter<T,
|
|
606
|
+
report(reporter?: IResultReporter<T, unknown>, options?: IResultReportOptions<unknown>): DetailedSuccess<T, TD>;
|
|
602
607
|
/**
|
|
603
608
|
* Creates a {@link DetailedSuccess | DetailedSuccess<T, TD>} with the supplied value and
|
|
604
609
|
* optional detail.
|
|
@@ -668,7 +673,7 @@ export declare class DetailedFailure<T, TD> extends Failure<T> {
|
|
|
668
673
|
/**
|
|
669
674
|
* {@inheritdoc IResult.report}
|
|
670
675
|
*/
|
|
671
|
-
report(reporter?: IResultReporter<T,
|
|
676
|
+
report(reporter?: IResultReporter<T, unknown>, options?: IResultReportOptions<unknown>): DetailedFailure<T, TD>;
|
|
672
677
|
orThrow(logOrFormat?: IResultLogger<TD> | ErrorFormatter<TD>): never;
|
|
673
678
|
orThrow(cb: ErrorFormatter): never;
|
|
674
679
|
/**
|
|
@@ -145,8 +145,9 @@ class Success {
|
|
|
145
145
|
*/
|
|
146
146
|
report(reporter, options) {
|
|
147
147
|
var _a;
|
|
148
|
-
const
|
|
149
|
-
|
|
148
|
+
const successOptions = typeof (options === null || options === void 0 ? void 0 : options.success) === 'object' ? options.success : { level: options === null || options === void 0 ? void 0 : options.success };
|
|
149
|
+
const level = (_a = successOptions.level) !== null && _a !== void 0 ? _a : 'quiet';
|
|
150
|
+
reporter === null || reporter === void 0 ? void 0 : reporter.reportSuccess(level, this._value, undefined, successOptions.message);
|
|
150
151
|
return this;
|
|
151
152
|
}
|
|
152
153
|
/**
|
|
@@ -272,8 +273,9 @@ class Failure {
|
|
|
272
273
|
*/
|
|
273
274
|
report(reporter, options) {
|
|
274
275
|
var _a, _b, _c;
|
|
275
|
-
const
|
|
276
|
-
const
|
|
276
|
+
const failureOptions = typeof (options === null || options === void 0 ? void 0 : options.failure) === 'object' ? options.failure : { level: options === null || options === void 0 ? void 0 : options.failure };
|
|
277
|
+
const level = (_a = failureOptions.level) !== null && _a !== void 0 ? _a : 'error';
|
|
278
|
+
const message = (_c = (_b = failureOptions.message) === null || _b === void 0 ? void 0 : _b.call(failureOptions, this._message)) !== null && _c !== void 0 ? _c : this._message;
|
|
277
279
|
reporter === null || reporter === void 0 ? void 0 : reporter.reportFailure(level, message);
|
|
278
280
|
return this;
|
|
279
281
|
}
|
|
@@ -411,8 +413,11 @@ class DetailedSuccess extends Success {
|
|
|
411
413
|
*/
|
|
412
414
|
report(reporter, options) {
|
|
413
415
|
var _a;
|
|
414
|
-
const
|
|
415
|
-
|
|
416
|
+
const successOptions = typeof (options === null || options === void 0 ? void 0 : options.success) === 'object' ? options.success : { level: options === null || options === void 0 ? void 0 : options.success };
|
|
417
|
+
const level = (_a = successOptions.level) !== null && _a !== void 0 ? _a : 'quiet';
|
|
418
|
+
// Cast reporter to preserve detail type when calling reportSuccess
|
|
419
|
+
const detailedReporter = reporter;
|
|
420
|
+
detailedReporter === null || detailedReporter === void 0 ? void 0 : detailedReporter.reportSuccess(level, this._value, this._detail, successOptions.message);
|
|
416
421
|
return this;
|
|
417
422
|
}
|
|
418
423
|
/**
|
|
@@ -503,10 +508,15 @@ class DetailedFailure extends Failure {
|
|
|
503
508
|
* {@inheritdoc IResult.report}
|
|
504
509
|
*/
|
|
505
510
|
report(reporter, options) {
|
|
506
|
-
var _a, _b
|
|
507
|
-
const
|
|
508
|
-
const
|
|
509
|
-
|
|
511
|
+
var _a, _b;
|
|
512
|
+
const failureOptions = typeof (options === null || options === void 0 ? void 0 : options.failure) === 'object' ? options.failure : { level: options === null || options === void 0 ? void 0 : options.failure };
|
|
513
|
+
const level = (_a = failureOptions.level) !== null && _a !== void 0 ? _a : 'error';
|
|
514
|
+
// Cast formatter to handle detail type properly
|
|
515
|
+
const formatter = failureOptions.message;
|
|
516
|
+
const message = (_b = formatter === null || formatter === void 0 ? void 0 : formatter(this._message, this._detail)) !== null && _b !== void 0 ? _b : this._message;
|
|
517
|
+
// Cast reporter to preserve detail type when calling reportFailure
|
|
518
|
+
const detailedReporter = reporter;
|
|
519
|
+
detailedReporter === null || detailedReporter === void 0 ? void 0 : detailedReporter.reportFailure(level, message, this._detail);
|
|
510
520
|
return this;
|
|
511
521
|
}
|
|
512
522
|
orThrow(logOrFormat) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ILogger, ReporterLogLevel } from './logger';
|
|
2
|
-
import { IResultReporter, MessageLogLevel, Success } from '../base';
|
|
2
|
+
import { ErrorFormatter, IResultReporter, MessageLogLevel, Success } from '../base';
|
|
3
3
|
/**
|
|
4
4
|
* A function that formats a value for logging.
|
|
5
5
|
* @public
|
|
@@ -26,10 +26,10 @@ export interface ILogReporterCreateParams<T, TD = unknown> {
|
|
|
26
26
|
*/
|
|
27
27
|
export declare class LogReporter<T, TD = unknown> implements ILogger, IResultReporter<T, TD> {
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
30
|
-
* @
|
|
29
|
+
* Base logger used to by this reporter.
|
|
30
|
+
* @public
|
|
31
31
|
*/
|
|
32
|
-
|
|
32
|
+
readonly logger: ILogger;
|
|
33
33
|
/**
|
|
34
34
|
* The formatter to use for values.
|
|
35
35
|
* @internal
|
|
@@ -72,11 +72,17 @@ export declare class LogReporter<T, TD = unknown> implements ILogger, IResultRep
|
|
|
72
72
|
/**
|
|
73
73
|
* {@inheritDoc IResultReporter.reportSuccess}
|
|
74
74
|
*/
|
|
75
|
-
reportSuccess(level: MessageLogLevel, value: T, detail?: TD): void;
|
|
75
|
+
reportSuccess(level: MessageLogLevel, value: T, detail?: TD, message?: ErrorFormatter<TD>): void;
|
|
76
76
|
/**
|
|
77
77
|
* {@inheritDoc IResultReporter.reportFailure}
|
|
78
78
|
*/
|
|
79
79
|
reportFailure(level: MessageLogLevel, message: string, detail?: TD): void;
|
|
80
|
+
/**
|
|
81
|
+
* Creates a new {@link Logging.LogReporter | LogReporter} with the same logger but a different value formatter.
|
|
82
|
+
* @param valueFormatter - The value formatter to use.
|
|
83
|
+
* @returns A new {@link Logging.LogReporter | LogReporter} with the same logger but a different value formatter.
|
|
84
|
+
*/
|
|
85
|
+
withValueFormatter<TN>(valueFormatter: LogValueFormatter<TN, TD>): LogReporter<TN, TD>;
|
|
80
86
|
/**
|
|
81
87
|
* Generic method to try to format an object for logging.
|
|
82
88
|
* @param value - The value to format.
|
|
@@ -37,7 +37,7 @@ class LogReporter {
|
|
|
37
37
|
var _a, _b, _c;
|
|
38
38
|
/* c8 ignore next 1 */
|
|
39
39
|
params = params !== null && params !== void 0 ? params : {};
|
|
40
|
-
this.
|
|
40
|
+
this.logger = (_a = params.logger) !== null && _a !== void 0 ? _a : new logger_1.NoOpLogger();
|
|
41
41
|
this._valueFormatter = (_b = params.valueFormatter) !== null && _b !== void 0 ? _b : LogReporter.tryFormatObject;
|
|
42
42
|
this._messageFormatter = (_c = params.messageFormatter) !== null && _c !== void 0 ? _c : ((message, __detail) => message);
|
|
43
43
|
}
|
|
@@ -45,43 +45,44 @@ class LogReporter {
|
|
|
45
45
|
* {@inheritDoc Logging.ILogger.logLevel}
|
|
46
46
|
*/
|
|
47
47
|
get logLevel() {
|
|
48
|
-
return this.
|
|
48
|
+
return this.logger.logLevel;
|
|
49
49
|
}
|
|
50
50
|
/**
|
|
51
51
|
* {@inheritDoc Logging.ILogger.detail}
|
|
52
52
|
*/
|
|
53
53
|
detail(message, ...parameters) {
|
|
54
|
-
return this.
|
|
54
|
+
return this.logger.detail(message, ...parameters);
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
57
|
* {@inheritDoc Logging.ILogger.info}
|
|
58
58
|
*/
|
|
59
59
|
info(message, ...parameters) {
|
|
60
|
-
return this.
|
|
60
|
+
return this.logger.info(message, ...parameters);
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
63
|
* {@inheritDoc Logging.ILogger.warn}
|
|
64
64
|
*/
|
|
65
65
|
warn(message, ...parameters) {
|
|
66
|
-
return this.
|
|
66
|
+
return this.logger.warn(message, ...parameters);
|
|
67
67
|
}
|
|
68
68
|
/**
|
|
69
69
|
* {@inheritDoc Logging.ILogger.error}
|
|
70
70
|
*/
|
|
71
71
|
error(message, ...parameters) {
|
|
72
|
-
return this.
|
|
72
|
+
return this.logger.error(message, ...parameters);
|
|
73
73
|
}
|
|
74
74
|
/**
|
|
75
75
|
* {@inheritDoc Logging.ILogger.log}
|
|
76
76
|
*/
|
|
77
77
|
log(level, message, ...parameters) {
|
|
78
|
-
return this.
|
|
78
|
+
return this.logger.log(level, message, ...parameters);
|
|
79
79
|
}
|
|
80
80
|
/**
|
|
81
81
|
* {@inheritDoc IResultReporter.reportSuccess}
|
|
82
82
|
*/
|
|
83
|
-
reportSuccess(level, value, detail) {
|
|
84
|
-
const
|
|
83
|
+
reportSuccess(level, value, detail, message) {
|
|
84
|
+
const formattedValue = this._valueFormatter(value, detail);
|
|
85
|
+
const formatted = message ? message(formattedValue, detail) : formattedValue;
|
|
85
86
|
this.log(level, formatted);
|
|
86
87
|
}
|
|
87
88
|
/**
|
|
@@ -91,6 +92,18 @@ class LogReporter {
|
|
|
91
92
|
const formatted = this._messageFormatter(message, detail);
|
|
92
93
|
this.log(level, formatted);
|
|
93
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* Creates a new {@link Logging.LogReporter | LogReporter} with the same logger but a different value formatter.
|
|
97
|
+
* @param valueFormatter - The value formatter to use.
|
|
98
|
+
* @returns A new {@link Logging.LogReporter | LogReporter} with the same logger but a different value formatter.
|
|
99
|
+
*/
|
|
100
|
+
withValueFormatter(valueFormatter) {
|
|
101
|
+
return new LogReporter({
|
|
102
|
+
logger: this.logger,
|
|
103
|
+
valueFormatter,
|
|
104
|
+
messageFormatter: this._messageFormatter
|
|
105
|
+
});
|
|
106
|
+
}
|
|
94
107
|
/**
|
|
95
108
|
* Generic method to try to format an object for logging.
|
|
96
109
|
* @param value - The value to format.
|