standard-log 11.0.0 → 11.1.0
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/cjs/logLevels.d.ts +30 -10
- package/cjs/logLevels.d.ts.map +1 -1
- package/cjs/logLevels.js +20 -0
- package/cjs/logLevels.js.map +1 -1
- package/cjs/logStore.d.ts +1 -0
- package/cjs/logStore.d.ts.map +1 -1
- package/cjs/logStore.js +3 -2
- package/cjs/logStore.js.map +1 -1
- package/cjs/memory.d.ts +1 -0
- package/cjs/memory.d.ts.map +1 -1
- package/cjs/memory.js +13 -4
- package/cjs/memory.js.map +1 -1
- package/cjs/platform.browser.d.ts.map +1 -1
- package/cjs/platform.browser.js +2 -1
- package/cjs/platform.browser.js.map +1 -1
- package/cjs/platform.d.ts.map +1 -1
- package/cjs/platform.js +2 -1
- package/cjs/platform.js.map +1 -1
- package/cjs/standardLog.d.ts +1 -0
- package/cjs/standardLog.d.ts.map +1 -1
- package/cjs/standardLog.js +37 -6
- package/cjs/standardLog.js.map +1 -1
- package/cjs/standardLog.spec.js +58 -1
- package/cjs/standardLog.spec.js.map +1 -1
- package/dist/standard-log.es5.js +76 -14
- package/dist/standard-log.es5.js.gz +0 -0
- package/dist/standard-log.es5.js.map +1 -1
- package/dist/standard-log.es5.js.map.gz +0 -0
- package/dist/standard-log.esm.js +94 -26
- package/dist/standard-log.esm.js.gz +0 -0
- package/dist/standard-log.esm.js.map +1 -1
- package/dist/standard-log.esm.js.map.gz +0 -0
- package/esm/logLevels.d.ts +30 -10
- package/esm/logLevels.d.ts.map +1 -1
- package/esm/logLevels.js +20 -0
- package/esm/logLevels.js.map +1 -1
- package/esm/logStore.d.ts +1 -0
- package/esm/logStore.d.ts.map +1 -1
- package/esm/logStore.js +4 -3
- package/esm/logStore.js.map +1 -1
- package/esm/memory.d.ts +1 -0
- package/esm/memory.d.ts.map +1 -1
- package/esm/memory.js +11 -3
- package/esm/memory.js.map +1 -1
- package/esm/platform.browser.d.ts.map +1 -1
- package/esm/platform.browser.js +2 -1
- package/esm/platform.browser.js.map +1 -1
- package/esm/platform.d.ts.map +1 -1
- package/esm/platform.js +2 -1
- package/esm/platform.js.map +1 -1
- package/esm/standardLog.d.ts +1 -0
- package/esm/standardLog.d.ts.map +1 -1
- package/esm/standardLog.js +42 -7
- package/esm/standardLog.js.map +1 -1
- package/esm/standardLog.spec.js +59 -2
- package/esm/standardLog.spec.js.map +1 -1
- package/package.json +1 -1
- package/ts/logLevels.ts +30 -10
- package/ts/logStore.ts +5 -3
- package/ts/memory.ts +14 -3
- package/ts/platform.browser.ts +2 -1
- package/ts/platform.ts +2 -1
- package/ts/standardLog.ts +46 -8
package/cjs/logLevels.d.ts
CHANGED
|
@@ -2,46 +2,66 @@ export declare const logLevels: {
|
|
|
2
2
|
/**
|
|
3
3
|
* none: 0
|
|
4
4
|
*/
|
|
5
|
-
none:
|
|
5
|
+
none: 0;
|
|
6
6
|
/**
|
|
7
7
|
* emergency: 100
|
|
8
|
+
*
|
|
9
|
+
* emergency -> alert
|
|
8
10
|
*/
|
|
9
|
-
emergency:
|
|
11
|
+
emergency: 100;
|
|
10
12
|
/**
|
|
11
13
|
* alert: 200
|
|
14
|
+
*
|
|
15
|
+
* emergency -> alert -> critical
|
|
12
16
|
*/
|
|
13
|
-
alert:
|
|
17
|
+
alert: 200;
|
|
14
18
|
/**
|
|
15
19
|
* critical: 300
|
|
20
|
+
*
|
|
21
|
+
* alert -> critical -> error
|
|
16
22
|
*/
|
|
17
|
-
critical:
|
|
23
|
+
critical: 300;
|
|
18
24
|
/**
|
|
19
25
|
* error: 400
|
|
26
|
+
*
|
|
27
|
+
* critical -> error -> warn
|
|
20
28
|
*/
|
|
21
|
-
error:
|
|
29
|
+
error: 400;
|
|
22
30
|
/**
|
|
23
31
|
* warn: 500
|
|
32
|
+
*
|
|
33
|
+
* error -> warn -> notice
|
|
24
34
|
*/
|
|
25
|
-
warn:
|
|
35
|
+
warn: 500;
|
|
26
36
|
/**
|
|
27
37
|
* notice: 600
|
|
38
|
+
*
|
|
39
|
+
* warn -> notice -> info
|
|
28
40
|
*/
|
|
29
|
-
notice:
|
|
41
|
+
notice: 600;
|
|
30
42
|
/**
|
|
31
43
|
* info: 700
|
|
44
|
+
*
|
|
45
|
+
* notice -> info -> debug
|
|
32
46
|
*/
|
|
33
|
-
info:
|
|
47
|
+
info: 700;
|
|
34
48
|
/**
|
|
35
49
|
* debug: 800
|
|
50
|
+
*
|
|
51
|
+
* info -> debug -> trace
|
|
36
52
|
*/
|
|
37
|
-
debug:
|
|
53
|
+
debug: 800;
|
|
38
54
|
/**
|
|
39
55
|
* trace: 900
|
|
56
|
+
*
|
|
57
|
+
* debug -> trace -> planck
|
|
40
58
|
*/
|
|
41
|
-
trace:
|
|
59
|
+
trace: 900;
|
|
42
60
|
/**
|
|
43
61
|
* planck: Infinity
|
|
44
62
|
* `planck unit` is a very small unit <https://en.wikipedia.org/wiki/Planck_units>.
|
|
63
|
+
*
|
|
64
|
+
* trace -> planck
|
|
45
65
|
*/
|
|
46
66
|
planck: number;
|
|
47
67
|
/**
|
package/cjs/logLevels.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logLevels.d.ts","sourceRoot":"","sources":["../ts/logLevels.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS;IACpB;;OAEG;;IAEH;;
|
|
1
|
+
{"version":3,"file":"logLevels.d.ts","sourceRoot":"","sources":["../ts/logLevels.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS;IACpB;;OAEG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;;IAEH;;OAEG;;CAEJ,CAAA;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,4GAW3C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,OAEtC;AAED,eAAO,MAAM,wBAAwB,EAAE,MAAM,EAW5C,CAAA"}
|
package/cjs/logLevels.js
CHANGED
|
@@ -8,43 +8,63 @@ exports.logLevels = {
|
|
|
8
8
|
none: 0,
|
|
9
9
|
/**
|
|
10
10
|
* emergency: 100
|
|
11
|
+
*
|
|
12
|
+
* emergency -> alert
|
|
11
13
|
*/
|
|
12
14
|
emergency: 100,
|
|
13
15
|
/**
|
|
14
16
|
* alert: 200
|
|
17
|
+
*
|
|
18
|
+
* emergency -> alert -> critical
|
|
15
19
|
*/
|
|
16
20
|
alert: 200,
|
|
17
21
|
/**
|
|
18
22
|
* critical: 300
|
|
23
|
+
*
|
|
24
|
+
* alert -> critical -> error
|
|
19
25
|
*/
|
|
20
26
|
critical: 300,
|
|
21
27
|
/**
|
|
22
28
|
* error: 400
|
|
29
|
+
*
|
|
30
|
+
* critical -> error -> warn
|
|
23
31
|
*/
|
|
24
32
|
error: 400,
|
|
25
33
|
/**
|
|
26
34
|
* warn: 500
|
|
35
|
+
*
|
|
36
|
+
* error -> warn -> notice
|
|
27
37
|
*/
|
|
28
38
|
warn: 500,
|
|
29
39
|
/**
|
|
30
40
|
* notice: 600
|
|
41
|
+
*
|
|
42
|
+
* warn -> notice -> info
|
|
31
43
|
*/
|
|
32
44
|
notice: 600,
|
|
33
45
|
/**
|
|
34
46
|
* info: 700
|
|
47
|
+
*
|
|
48
|
+
* notice -> info -> debug
|
|
35
49
|
*/
|
|
36
50
|
info: 700,
|
|
37
51
|
/**
|
|
38
52
|
* debug: 800
|
|
53
|
+
*
|
|
54
|
+
* info -> debug -> trace
|
|
39
55
|
*/
|
|
40
56
|
debug: 800,
|
|
41
57
|
/**
|
|
42
58
|
* trace: 900
|
|
59
|
+
*
|
|
60
|
+
* debug -> trace -> planck
|
|
43
61
|
*/
|
|
44
62
|
trace: 900,
|
|
45
63
|
/**
|
|
46
64
|
* planck: Infinity
|
|
47
65
|
* `planck unit` is a very small unit <https://en.wikipedia.org/wiki/Planck_units>.
|
|
66
|
+
*
|
|
67
|
+
* trace -> planck
|
|
48
68
|
*/
|
|
49
69
|
planck: Infinity,
|
|
50
70
|
/**
|
package/cjs/logLevels.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logLevels.js","sourceRoot":"","sources":["../ts/logLevels.ts"],"names":[],"mappings":";;;AACa,QAAA,SAAS,GAAG;IACvB;;OAEG;IACH,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"logLevels.js","sourceRoot":"","sources":["../ts/logLevels.ts"],"names":[],"mappings":";;;AACa,QAAA,SAAS,GAAG;IACvB;;OAEG;IACH,IAAI,EAAE,CAAU;IAChB;;;;OAIG;IACH,SAAS,EAAE,GAAY;IACvB;;;;OAIG;IACH,KAAK,EAAE,GAAY;IACnB;;;;OAIG;IACH,QAAQ,EAAE,GAAY;IACtB;;;;OAIG;IACH,KAAK,EAAE,GAAY;IACnB;;;;OAIG;IACH,IAAI,EAAE,GAAY;IAClB;;;;OAIG;IACH,MAAM,EAAE,GAAY;IACpB;;;;OAIG;IACH,IAAI,EAAE,GAAY;IAClB;;;;OAIG;IACH,KAAK,EAAE,GAAY;IACnB;;;;OAIG;IACH,KAAK,EAAE,GAAY;IACnB;;;;;OAKG;IACH,MAAM,EAAE,QAAQ;IAChB;;OAEG;IACH,GAAG,EAAE,QAAQ;CACd,CAAA;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,KAAa;IAC1C,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,WAAW,CAAA;IACpC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,OAAO,CAAA;IAChC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,UAAU,CAAA;IACnC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,OAAO,CAAA;IAChC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,MAAM,CAAA;IAC/B,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,QAAQ,CAAA;IACjC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,MAAM,CAAA;IAC/B,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,OAAO,CAAA;IAChC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,OAAO,CAAA;IAChC,OAAO,QAAQ,CAAA;AACjB,CAAC;AAXD,wCAWC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,IAAY;IACrC,OAAQ,iBAAiB,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAA;AACrD,CAAC;AAFD,gCAEC;AAEY,QAAA,wBAAwB,GAAa;IAChD,WAAW;IACX,OAAO;IACP,UAAU;IACV,OAAO;IACP,MAAM;IACN,QAAQ;IACR,MAAM;IACN,OAAO;IACP,OAAO;IACP,QAAQ;CACT,CAAA","sourcesContent":["\nexport const logLevels = {\n /**\n * none: 0\n */\n none: 0 as const,\n /**\n * emergency: 100\n *\n * emergency -> alert\n */\n emergency: 100 as const,\n /**\n * alert: 200\n *\n * emergency -> alert -> critical\n */\n alert: 200 as const,\n /**\n * critical: 300\n *\n * alert -> critical -> error\n */\n critical: 300 as const,\n /**\n * error: 400\n *\n * critical -> error -> warn\n */\n error: 400 as const,\n /**\n * warn: 500\n *\n * error -> warn -> notice\n */\n warn: 500 as const,\n /**\n * notice: 600\n *\n * warn -> notice -> info\n */\n notice: 600 as const,\n /**\n * info: 700\n *\n * notice -> info -> debug\n */\n info: 700 as const,\n /**\n * debug: 800\n *\n * info -> debug -> trace\n */\n debug: 800 as const,\n /**\n * trace: 900\n *\n * debug -> trace -> planck\n */\n trace: 900 as const,\n /**\n * planck: Infinity\n * `planck unit` is a very small unit <https://en.wikipedia.org/wiki/Planck_units>.\n *\n * trace -> planck\n */\n planck: Infinity,\n /**\n * all: Infinity\n */\n all: Infinity\n}\n\n/**\n * Convert default log level value to log level name.\n */\nexport function toLogLevelName(level: number) {\n if (level <= 100) return 'emergency'\n if (level <= 200) return 'alert'\n if (level <= 300) return 'critical'\n if (level <= 400) return 'error'\n if (level <= 500) return 'warn'\n if (level <= 600) return 'notice'\n if (level <= 700) return 'info'\n if (level <= 800) return 'debug'\n if (level <= 900) return 'trace'\n return 'planck'\n}\n\n/**\n * Convert default log level name to log level value.\n */\nexport function toLogLevel(name: string) {\n return (logLevels as any)[name.toLocaleLowerCase()]\n}\n\nexport const DEFAULT_LOG_METHOD_NAMES: string[] = [\n 'emergency',\n 'alert',\n 'critical',\n 'error',\n 'warn',\n 'notice',\n 'info',\n 'debug',\n 'trace',\n 'planck'\n]\n"]}
|
package/cjs/logStore.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { Logger, LogLevel, LogMethodNames, LogReporter, StandardLogOptions
|
|
|
2
2
|
export declare function createLogStore<N extends string = LogMethodNames>(options: Required<StandardLogOptions<N>>): LogStore;
|
|
3
3
|
export interface LogStore {
|
|
4
4
|
loggers: Record<string, Logger>;
|
|
5
|
+
nonConsoleLoggers: Record<string, Logger>;
|
|
5
6
|
reporters: LogReporter[];
|
|
6
7
|
logLevel: LogLevel;
|
|
7
8
|
logLevelStore: ReturnType<typeof logLevelStore>;
|
package/cjs/logStore.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logStore.d.ts","sourceRoot":"","sources":["../ts/logStore.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEnG,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EAAE,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"logStore.d.ts","sourceRoot":"","sources":["../ts/logStore.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEnG,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EAAE,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAQpH;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA;CAChD;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACtC;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB;mBAWxC,MAAM;mBAGN,MAAM;;;;;EAWxB"}
|
package/cjs/logStore.js
CHANGED
|
@@ -6,7 +6,8 @@ var console_js_1 = require("./console.js");
|
|
|
6
6
|
var logLevels_js_1 = require("./logLevels.js");
|
|
7
7
|
function createLogStore(options) {
|
|
8
8
|
return {
|
|
9
|
-
loggers:
|
|
9
|
+
loggers: (0, type_plus_1.record)(),
|
|
10
|
+
nonConsoleLoggers: (0, type_plus_1.record)(),
|
|
10
11
|
reporters: options.reporters || [(0, console_js_1.createConsoleLogReporter)()],
|
|
11
12
|
logLevel: options.logLevel,
|
|
12
13
|
logLevelStore: logLevelStore(options)
|
|
@@ -14,7 +15,7 @@ function createLogStore(options) {
|
|
|
14
15
|
}
|
|
15
16
|
exports.createLogStore = createLogStore;
|
|
16
17
|
function logLevelStore(options) {
|
|
17
|
-
var customLevels = options.customLevels ||
|
|
18
|
+
var customLevels = options.customLevels || (0, type_plus_1.record)();
|
|
18
19
|
var store = {
|
|
19
20
|
customLevels: customLevels,
|
|
20
21
|
customLevelsReverse: (0, type_plus_1.reduceByKey)(customLevels, function (p, k) {
|
package/cjs/logStore.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logStore.js","sourceRoot":"","sources":["../ts/logStore.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"logStore.js","sourceRoot":"","sources":["../ts/logStore.ts"],"names":[],"mappings":";;;AACA,uCAAkE;AAClE,2CAAuD;AACvD,+CAAsE;AAGtE,SAAgB,cAAc,CAAoC,OAAwC;IACxG,OAAO;QACL,OAAO,EAAE,IAAA,kBAAM,GAAE;QACjB,iBAAiB,EAAE,IAAA,kBAAM,GAAE;QAC3B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC,IAAA,qCAAwB,GAAE,CAAC;QAC5D,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC;KACtC,CAAA;AACH,CAAC;AARD,wCAQC;AAcD,SAAgB,aAAa,CAAC,OAA6B;IACzD,IAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,IAAA,kBAAM,GAAE,CAAA;IAErD,IAAM,KAAK,GAAG;QACZ,YAAY,cAAA;QACZ,mBAAmB,EAAE,IAAA,uBAAW,EAAC,YAAY,EAAE,UAAC,CAAC,EAAE,CAAC;YAClD,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACtB,OAAO,CAAC,CAAA;QACV,CAAC,EAAE,EAA4B,CAAC;KACjC,CAAA;IACD,OAAO;QACL,OAAO,YAAC,KAAa;;YACnB,OAAO,MAAA,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,mCAAI,IAAA,6BAAc,EAAC,KAAK,CAAC,CAAA;QAClE,CAAC;QACD,QAAQ,YAAC,IAAY;;YACnB,OAAO,MAAA,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,mCAAI,IAAA,yBAAU,EAAC,IAAI,CAAC,CAAA;QACrD,CAAC;QACD,YAAY;YACV,OAAO,IAAA,qBAAS,EAAC,wBAAS,EAAE,UAAC,MAAM,EAAE,IAAI;gBACvC,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,KAAK;oBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,MAAA,EAAE,KAAK,EAAE,wBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAEpF,OAAO,MAAM,CAAA;YACf,CAAC,EAAE,IAAA,kBAAM,EAAC,KAAK,CAAC,YAAY,EAAE,UAAA,IAAI,IAAI,OAAA,CAAC,EAAE,IAAI,MAAA,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAA3C,CAA2C,CAAC,CAAC,CAAA;QACrF,CAAC;KACF,CAAA;AACH,CAAC;AAzBD,sCAyBC","sourcesContent":["\nimport { mapKey, record, reduceByKey, reduceKey } from 'type-plus'\nimport { createConsoleLogReporter } from './console.js'\nimport { logLevels, toLogLevel, toLogLevelName } from './logLevels.js'\nimport type { Logger, LogLevel, LogMethodNames, LogReporter, StandardLogOptions } from './types.js'\n\nexport function createLogStore<N extends string = LogMethodNames>(options: Required<StandardLogOptions<N>>): LogStore {\n return {\n loggers: record(),\n nonConsoleLoggers: record(),\n reporters: options.reporters || [createConsoleLogReporter()],\n logLevel: options.logLevel,\n logLevelStore: logLevelStore(options)\n }\n}\n\nexport interface LogStore {\n loggers: Record<string, Logger>,\n nonConsoleLoggers: Record<string, Logger>,\n reporters: LogReporter[],\n logLevel: LogLevel,\n logLevelStore: ReturnType<typeof logLevelStore>\n}\n\nexport interface LogLevelStoreOptions {\n customLevels?: Record<string, number>\n}\n\nexport function logLevelStore(options: LogLevelStoreOptions) {\n const customLevels = options.customLevels || record()\n\n const store = {\n customLevels,\n customLevelsReverse: reduceByKey(customLevels, (p, k) => {\n p[customLevels[k]] = k\n return p\n }, {} as Record<number, string>)\n }\n return {\n getName(level: number) {\n return store.customLevelsReverse[level] ?? toLogLevelName(level)\n },\n getLevel(name: string) {\n return store.customLevels[name] ?? toLogLevel(name)\n },\n getAllLevels() {\n return reduceKey(logLevels, (result, name) => {\n if (name !== 'none' && name !== 'all') result.push({ name, level: logLevels[name] })\n\n return result\n }, mapKey(store.customLevels, name => ({ name, level: store.customLevels[name] })))\n }\n }\n}\n"]}
|
package/cjs/memory.d.ts
CHANGED
|
@@ -14,4 +14,5 @@ export declare type MemoryLogReporter = LogReporter<LogEntry> & {
|
|
|
14
14
|
export declare type MemoryLogFormatter = LogFormatter<LogEntry>;
|
|
15
15
|
export declare function toMessageWithLevel(logs: LogEntry[]): string;
|
|
16
16
|
export declare function createMemoryLogReporter(options?: LogReporterOptions<LogEntry>): MemoryLogReporter;
|
|
17
|
+
export declare function createMemoryWithConsoleLogReporter(options?: LogReporterOptions<LogEntry>): MemoryLogReporter;
|
|
17
18
|
//# sourceMappingURL=memory.d.ts.map
|
package/cjs/memory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../ts/memory.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAGzF,oBAAY,iBAAiB,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG;IACtD,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB;;;OAGG;IACH,aAAa,IAAI,MAAM,CAAC;IACxB,cAAc,IAAI,MAAM,EAAE,CAAC;IAC3B,sBAAsB,IAAI,MAAM,CAAC;IACjC,4BAA4B,IAAI,MAAM,EAAE,CAAC;IACzC,IAAI,IAAI,IAAI,CAAA;CACb,CAAA;AAED,oBAAY,kBAAkB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;AAEvD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAQlD;AAED,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,iBAAiB,
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../ts/memory.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAGzF,oBAAY,iBAAiB,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG;IACtD,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB;;;OAGG;IACH,aAAa,IAAI,MAAM,CAAC;IACxB,cAAc,IAAI,MAAM,EAAE,CAAC;IAC3B,sBAAsB,IAAI,MAAM,CAAC;IACjC,4BAA4B,IAAI,MAAM,EAAE,CAAC;IACzC,IAAI,IAAI,IAAI,CAAA;CACb,CAAA;AAED,oBAAY,kBAAkB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;AAEvD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAQlD;AAED,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,iBAAiB,CAEjG;AAoCD,wBAAgB,kCAAkC,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,iBAAiB,CAK5G"}
|
package/cjs/memory.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createMemoryLogReporter = exports.toMessageWithLevel = void 0;
|
|
3
|
+
exports.createMemoryWithConsoleLogReporter = exports.createMemoryLogReporter = exports.toMessageWithLevel = void 0;
|
|
4
4
|
var type_plus_1 = require("type-plus");
|
|
5
5
|
var platform_js_1 = require("./platform.js");
|
|
6
6
|
var formatter_js_1 = require("./formatter.js");
|
|
@@ -16,9 +16,13 @@ function toMessageWithLevel(logs) {
|
|
|
16
16
|
}
|
|
17
17
|
exports.toMessageWithLevel = toMessageWithLevel;
|
|
18
18
|
function createMemoryLogReporter(options) {
|
|
19
|
+
return Object.freeze(buildMemoryReporter((0, type_plus_1.unpartial)({ id: 'memory' }, options)));
|
|
20
|
+
}
|
|
21
|
+
exports.createMemoryLogReporter = createMemoryLogReporter;
|
|
22
|
+
function buildMemoryReporter(options) {
|
|
19
23
|
var _a = (0, type_plus_1.required)({ id: 'memory', formatter: function (e) { return e; } }, options), id = _a.id, formatter = _a.formatter, filter = _a.filter;
|
|
20
24
|
var logs = [];
|
|
21
|
-
return
|
|
25
|
+
return {
|
|
22
26
|
id: id,
|
|
23
27
|
get formatter() { return formatter; },
|
|
24
28
|
get filter() { return filter; },
|
|
@@ -47,7 +51,12 @@ function createMemoryLogReporter(options) {
|
|
|
47
51
|
var reporter = (0, console_js_1.createConsoleLogReporter)();
|
|
48
52
|
logs.forEach(function (l) { return reporter.write(l); });
|
|
49
53
|
}
|
|
50
|
-
}
|
|
54
|
+
};
|
|
51
55
|
}
|
|
52
|
-
|
|
56
|
+
function createMemoryWithConsoleLogReporter(options) {
|
|
57
|
+
return Object.freeze(Object.assign(buildMemoryReporter((0, type_plus_1.unpartial)({ id: 'memory-with-console' }, options)), {
|
|
58
|
+
isConsoleReporter: true
|
|
59
|
+
}));
|
|
60
|
+
}
|
|
61
|
+
exports.createMemoryWithConsoleLogReporter = createMemoryWithConsoleLogReporter;
|
|
53
62
|
//# sourceMappingURL=memory.js.map
|
package/cjs/memory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../ts/memory.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../ts/memory.ts"],"names":[],"mappings":"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","sourcesContent":["import { required, unpartial } from 'type-plus'\nimport { toInspectLogEntry } from './platform.js'\nimport { formatLogLevel } from './formatter.js'\nimport type { LogEntry, LogFormatter, LogReporter, LogReporterOptions } from './types.js'\nimport { createConsoleLogReporter } from './console.js'\n\nexport type MemoryLogReporter = LogReporter<LogEntry> & {\n logs: LogEntry[],\n /**\n * Gets a simple log message for testing.\n * The message only contains arguments for each log entry.\n */\n getLogMessage(): string,\n getLogMessages(): string[],\n getLogMessageWithLevel(): string,\n getLogMessagesWithIdAndLevel(): string[],\n emit(): void\n}\n\nexport type MemoryLogFormatter = LogFormatter<LogEntry>\n\nexport function toMessageWithLevel(logs: LogEntry[]) {\n return logs.map(toInspectLogEntry)\n .map(log => `${formatLogLevel(log.level)} ${log.args.join(' ')}`)\n .join('\\n')\n // if it has more than this log,\n // we assume it is running under tests,\n // and remove this log to simplify testing.\n .replace(/^\\(WARN\\) already configured for test, ignoring config\\(\\) call\\n/, '')\n}\n\nexport function createMemoryLogReporter(options?: LogReporterOptions<LogEntry>): MemoryLogReporter {\n return Object.freeze(buildMemoryReporter(unpartial({ id: 'memory' }, options)))\n}\n\nfunction buildMemoryReporter(options?: LogReporterOptions<LogEntry>) {\n const { id, formatter, filter } = required({ id: 'memory', formatter: (e: LogEntry) => e }, options)\n const logs: LogEntry[] = []\n return {\n id,\n get formatter() { return formatter },\n get filter() { return filter },\n logs,\n write(entry: LogEntry) {\n if (filter && !filter(entry)) return\n logs.push(formatter(entry))\n },\n getLogMessage() {\n return this.getLogMessages().join('\\n')\n },\n getLogMessages() {\n return logs.map(toInspectLogEntry)\n .map(log => log.args.join(' '))\n },\n getLogMessagesWithIdAndLevel() {\n return logs.map(toInspectLogEntry)\n .map(log => `${log.id} ${formatLogLevel(log.level)} ${log.args.join(' ')}`)\n },\n getLogMessageWithLevel() { return toMessageWithLevel(logs) },\n /**\n * emit the saved log to console for easy debugging\n */\n emit() {\n const reporter = createConsoleLogReporter()\n logs.forEach(l => reporter.write(l))\n }\n }\n}\n\nexport function createMemoryWithConsoleLogReporter(options?: LogReporterOptions<LogEntry>): MemoryLogReporter {\n return Object.freeze(\n Object.assign(buildMemoryReporter(unpartial({ id: 'memory-with-console' }, options)), {\n isConsoleReporter: true\n }))\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.browser.d.ts","sourceRoot":"","sources":["../ts/platform.browser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"platform.browser.d.ts","sourceRoot":"","sources":["../ts/platform.browser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAEvD,eAAO,MAAM,iBAAiB,MAAO,QAAQ,aAAM,CAAA;AAEnD,eAAO,MAAM,QAAQ,EAAE;IAAE,OAAO,CAAC,EAAE,WAAW,CAAA;CAAa,CAAA"}
|
package/cjs/platform.browser.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.polyfill = exports.toInspectLogEntry = void 0;
|
|
4
|
+
var type_plus_1 = require("type-plus");
|
|
4
5
|
var toInspectLogEntry = function (e) { return e; };
|
|
5
6
|
exports.toInspectLogEntry = toInspectLogEntry;
|
|
6
|
-
exports.polyfill =
|
|
7
|
+
exports.polyfill = (0, type_plus_1.record)();
|
|
7
8
|
//# sourceMappingURL=platform.browser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.browser.js","sourceRoot":"","sources":["../ts/platform.browser.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"platform.browser.js","sourceRoot":"","sources":["../ts/platform.browser.ts"],"names":[],"mappings":";;;AAAA,uCAAkC;AAG3B,IAAM,iBAAiB,GAAG,UAAC,CAAW,IAAK,OAAA,CAAC,EAAD,CAAC,CAAA;AAAtC,QAAA,iBAAiB,qBAAqB;AAEtC,QAAA,QAAQ,GAA8B,IAAA,kBAAM,GAAE,CAAA","sourcesContent":["import { record } from 'type-plus'\nimport type { ConsoleLike, LogEntry } from './types.js'\n\nexport const toInspectLogEntry = (e: LogEntry) => e\n\nexport const polyfill: { console?: ConsoleLike } = record()\n"]}
|
package/cjs/platform.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../ts/platform.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../ts/platform.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAEvD,eAAO,MAAM,iBAAiB,MAAO,QAAQ,aAEzC,CAAA;AAEJ,eAAO,MAAM,QAAQ,EAAE;IAAE,OAAO,CAAC,EAAE,WAAW,CAAA;CAAa,CAAA"}
|
package/cjs/platform.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.polyfill = exports.toInspectLogEntry = void 0;
|
|
4
|
+
var type_plus_1 = require("type-plus");
|
|
4
5
|
var util_1 = require("util");
|
|
5
6
|
var toInspectLogEntry = function (e) { return (e.args = e.args.map(function (value) { return typeof value === 'object' && value !== null ? (0, util_1.inspect)(value) : value; }),
|
|
6
7
|
e); };
|
|
7
8
|
exports.toInspectLogEntry = toInspectLogEntry;
|
|
8
|
-
exports.polyfill =
|
|
9
|
+
exports.polyfill = (0, type_plus_1.record)();
|
|
9
10
|
//# sourceMappingURL=platform.js.map
|
package/cjs/platform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../ts/platform.ts"],"names":[],"mappings":";;;AAAA,6BAA8B;AAGvB,IAAM,iBAAiB,GAAG,UAAC,CAAW,IAAK,OAAA,CAChD,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAA,cAAO,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAApE,CAAoE,CAAC;IAClG,CAAC,CAAC,EAF8C,CAE9C,CAAA;AAFS,QAAA,iBAAiB,qBAE1B;AAES,QAAA,QAAQ,GAA8B,
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../ts/platform.ts"],"names":[],"mappings":";;;AAAA,uCAAkC;AAClC,6BAA8B;AAGvB,IAAM,iBAAiB,GAAG,UAAC,CAAW,IAAK,OAAA,CAChD,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAA,cAAO,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAApE,CAAoE,CAAC;IAClG,CAAC,CAAC,EAF8C,CAE9C,CAAA;AAFS,QAAA,iBAAiB,qBAE1B;AAES,QAAA,QAAQ,GAA8B,IAAA,kBAAM,GAAE,CAAA","sourcesContent":["import { record } from 'type-plus'\nimport { inspect } from 'util'\nimport type { ConsoleLike, LogEntry } from './types.js'\n\nexport const toInspectLogEntry = (e: LogEntry) => (\n e.args = e.args.map(value => typeof value === 'object' && value !== null ? inspect(value) : value),\n e)\n\nexport const polyfill: { console?: ConsoleLike } = record()\n"]}
|
package/cjs/standardLog.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export interface StandardLogInstance<N extends string = LogMethodNames> {
|
|
|
6
6
|
toLogLevelName(level: number): string;
|
|
7
7
|
toLogLevel(name: N): number;
|
|
8
8
|
getLogger(id: string, options?: LoggerOptions): Logger<N | LogMethodNames>;
|
|
9
|
+
getNonConsoleLogger(id: string, options?: LoggerOptions): Logger<N | LogMethodNames>;
|
|
9
10
|
}
|
|
10
11
|
export interface StandardLog<N extends string = LogMethodNames> extends Readonly<StandardLogInstance<N>> {
|
|
11
12
|
}
|
package/cjs/standardLog.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardLog.d.ts","sourceRoot":"","sources":["../ts/standardLog.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,EAA2B,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAErG,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc;IACpE,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACtC,UAAU,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC,GAAG,cAAc,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"standardLog.d.ts","sourceRoot":"","sources":["../ts/standardLog.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,EAA2B,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAErG,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc;IACpE,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACtC,UAAU,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC;IAC3E,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC,GAAG,cAAc,CAAC,CAAA;CACrF;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,CAAE,SAAQ,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;CACvG;AAED,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EACjE,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,WAAW,CAAC,CAAC,CAAC,CAShB;AAID,wBAAgB,wBAAwB,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EACxE,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B;IAAE,KAAK,EAAE,QAAQ,CAAC;IAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;CAAE,CA2ClD;AASD,oBAAY,kBAAkB,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,iBAAiB,CAAA;CAAE,CAAA;AAEpH,wBAAgB,wBAAwB,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EACxE,QAAQ,GAAE,QAA0B,GACnC,kBAAkB,CAAC,CAAC,CAAC,CAIvB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;AASlF,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,8BAE/F;AAED,eAAO,MAAM,GAAG,EAAE;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE;QAAE,KAAK,EAAE,QAAQ,CAAC;QAAC,WAAW,EAAE,mBAAmB,CAAC,cAAc,CAAC,CAAA;KAAE,CAAA;CACjE,CAAA;AAQZ,wBAAgB,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,QAoB7E"}
|
package/cjs/standardLog.js
CHANGED
|
@@ -18,14 +18,26 @@ var logLevels_js_1 = require("./logLevels.js");
|
|
|
18
18
|
var logStore_js_1 = require("./logStore.js");
|
|
19
19
|
var memory_js_1 = require("./memory.js");
|
|
20
20
|
function createStandardLog(options) {
|
|
21
|
+
var _a;
|
|
21
22
|
var closure = createStandardLogClosure(options);
|
|
23
|
+
if ((_a = options === null || options === void 0 ? void 0 : options.reporters) === null || _a === void 0 ? void 0 : _a.some(function (r) { return !r.id; })) {
|
|
24
|
+
var log = closure.standardLog.getLogger('standard-log');
|
|
25
|
+
log.critical("Detected reporter with empty id. This is not allowed as it will create problems with feature like 'getNonConsoleLogger()'. Please add an id to your reporter.");
|
|
26
|
+
}
|
|
22
27
|
if (!exports.ctx.gsl)
|
|
23
28
|
exports.ctx.gsl = closure;
|
|
24
29
|
return closure.standardLog;
|
|
25
30
|
}
|
|
26
31
|
exports.createStandardLog = createStandardLog;
|
|
32
|
+
function noop() { }
|
|
27
33
|
function createStandardLogClosure(options) {
|
|
34
|
+
var _a, _b, _c;
|
|
35
|
+
// TODO reporter.id must not be empty
|
|
28
36
|
var store = (0, logStore_js_1.createLogStore)((0, type_plus_1.required)({ logLevel: logLevels_js_1.logLevels.info }, options));
|
|
37
|
+
var nonConsoleReporters = (_b = (_a = options === null || options === void 0 ? void 0 : options.reporters) === null || _a === void 0 ? void 0 : _a.filter(function (r) { return !r.isConsoleReporter; }).map(function (r) { return r.id; })) !== null && _b !== void 0 ? _b : [];
|
|
38
|
+
var logMethods = logLevels_js_1.DEFAULT_LOG_METHOD_NAMES
|
|
39
|
+
.concat(Object.keys((_c = options === null || options === void 0 ? void 0 : options.customLevels) !== null && _c !== void 0 ? _c : {}))
|
|
40
|
+
.concat(['on', 'count', 'write']);
|
|
29
41
|
return {
|
|
30
42
|
store: store,
|
|
31
43
|
standardLog: {
|
|
@@ -40,16 +52,36 @@ function createStandardLogClosure(options) {
|
|
|
40
52
|
if (store.loggers[id])
|
|
41
53
|
return store.loggers[id];
|
|
42
54
|
return store.loggers[id] = (0, logger_js_1.createLogger)(store, id, __assign({ ssf: this.getLogger }, options));
|
|
43
|
-
}
|
|
55
|
+
},
|
|
56
|
+
getNonConsoleLogger: function (id, options) {
|
|
57
|
+
if (store.nonConsoleLoggers[id])
|
|
58
|
+
return store.nonConsoleLoggers[id];
|
|
59
|
+
if (store.loggers[id]) {
|
|
60
|
+
var log = this.getLogger('standard-log');
|
|
61
|
+
log.warn("attempt to create a non-console logger with existing id ('".concat(id, "'), ignoring"));
|
|
62
|
+
return store.nonConsoleLoggers[id] = createDummyLogger(logMethods);
|
|
63
|
+
}
|
|
64
|
+
return store.nonConsoleLoggers[id] = nonConsoleReporters.length === 0
|
|
65
|
+
? createDummyLogger(logMethods)
|
|
66
|
+
: (0, logger_js_1.createLogger)(store, id, __assign(__assign({ ssf: this.getNonConsoleLogger }, options), { writeTo: function (reporterId) {
|
|
67
|
+
return nonConsoleReporters.indexOf(reporterId) >= 0;
|
|
68
|
+
} }));
|
|
69
|
+
},
|
|
44
70
|
}
|
|
45
71
|
};
|
|
46
72
|
}
|
|
47
73
|
exports.createStandardLogClosure = createStandardLogClosure;
|
|
74
|
+
function createDummyLogger(logMethods) {
|
|
75
|
+
return logMethods.reduce(function (p, m) {
|
|
76
|
+
p[m] = noop;
|
|
77
|
+
return p;
|
|
78
|
+
}, (0, type_plus_1.record)());
|
|
79
|
+
}
|
|
48
80
|
function createStandardLogForTest(logLevel) {
|
|
49
81
|
if (logLevel === void 0) { logLevel = logLevels_js_1.logLevels.debug; }
|
|
50
82
|
var reporter = (0, memory_js_1.createMemoryLogReporter)();
|
|
51
|
-
var
|
|
52
|
-
return __assign(__assign({}, standardLog), { reporter: reporter });
|
|
83
|
+
var closure = createStandardLogClosure({ reporters: [reporter], logLevel: logLevel });
|
|
84
|
+
return __assign(__assign({}, closure.standardLog), { reporter: reporter });
|
|
53
85
|
}
|
|
54
86
|
exports.createStandardLogForTest = createStandardLogForTest;
|
|
55
87
|
function suppressLogs(block) {
|
|
@@ -75,10 +107,9 @@ function getGlobalSL() {
|
|
|
75
107
|
return exports.ctx.gsl.standardLog;
|
|
76
108
|
}
|
|
77
109
|
function configGlobal(options) {
|
|
78
|
-
var _a;
|
|
79
110
|
if (exports.ctx.configured) {
|
|
80
|
-
var log =
|
|
81
|
-
log
|
|
111
|
+
var log = exports.ctx.gsl.standardLog.getLogger('standard-log');
|
|
112
|
+
log.warn('configGlobal() is being called more than once. Please make sure this is expected. Application should use `createStandardLog()` most of the time.');
|
|
82
113
|
}
|
|
83
114
|
if (exports.ctx.gsl) {
|
|
84
115
|
if (options.logLevel) {
|
package/cjs/standardLog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardLog.js","sourceRoot":"","sources":["../ts/standardLog.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uCAA4C;AAC5C,yCAA0C;AAC1C,+
|
|
1
|
+
{"version":3,"file":"standardLog.js","sourceRoot":"","sources":["../ts/standardLog.ts"],"names":[],"mappings":"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","sourcesContent":["import { record, required } from 'type-plus'\nimport { createLogger } from './logger.js'\nimport { DEFAULT_LOG_METHOD_NAMES, logLevels } from './logLevels.js'\nimport { createLogStore, LogStore } from './logStore.js'\nimport { createMemoryLogReporter, MemoryLogReporter } from './memory.js'\nimport type { Logger, LoggerOptions, LogLevel, LogMethodNames, StandardLogOptions } from './types.js'\n\nexport interface StandardLogInstance<N extends string = LogMethodNames> {\n logLevel: number,\n toLogLevelName(level: number): string,\n toLogLevel(name: N): number,\n getLogger(id: string, options?: LoggerOptions): Logger<N | LogMethodNames>,\n getNonConsoleLogger(id: string, options?: LoggerOptions): Logger<N | LogMethodNames>\n}\n\nexport interface StandardLog<N extends string = LogMethodNames> extends Readonly<StandardLogInstance<N>> {\n}\n\nexport function createStandardLog<N extends string = LogMethodNames>(\n options?: StandardLogOptions<N>\n): StandardLog<N> {\n const closure = createStandardLogClosure(options)\n if (options?.reporters?.some(r => !r.id)) {\n const log = closure.standardLog.getLogger('standard-log')\n log.critical(`Detected reporter with empty id. This is not allowed as it will create problems with feature like 'getNonConsoleLogger()'. Please add an id to your reporter.`)\n }\n\n if (!ctx.gsl) ctx.gsl = closure as any\n return closure.standardLog\n}\n\nfunction noop() { }\n\nexport function createStandardLogClosure<N extends string = LogMethodNames>(\n options?: StandardLogOptions<N>\n): { store: LogStore, standardLog: StandardLog<N> } {\n // TODO reporter.id must not be empty\n const store = createLogStore(required({ logLevel: logLevels.info }, options))\n const nonConsoleReporters = options?.reporters?.filter(r => !r.isConsoleReporter).map(r => r.id) ?? []\n const logMethods = DEFAULT_LOG_METHOD_NAMES\n .concat(Object.keys(options?.customLevels ?? {}))\n .concat(['on', 'count', 'write'])\n return {\n store,\n standardLog: {\n get logLevel() { return store.logLevel },\n\n toLogLevelName(level: number) {\n return store.logLevelStore.getName(level)\n },\n toLogLevel(name: string) {\n return store.logLevelStore.getLevel(name)\n },\n getLogger(id: string, options?: LoggerOptions) {\n if (store.loggers[id]) return store.loggers[id] as any\n return store.loggers[id] = createLogger(store, id, { ssf: this.getLogger, ...options }) as any\n },\n getNonConsoleLogger(id, options?) {\n if (store.nonConsoleLoggers[id]) return store.nonConsoleLoggers[id] as any\n\n if (store.loggers[id]) {\n const log = this.getLogger('standard-log')\n log.warn(`attempt to create a non-console logger with existing id ('${id}'), ignoring`)\n return store.nonConsoleLoggers[id] = createDummyLogger(logMethods)\n }\n\n return store.nonConsoleLoggers[id] = nonConsoleReporters.length === 0\n ? createDummyLogger(logMethods)\n : createLogger(store, id, {\n ssf: this.getNonConsoleLogger,\n ...options,\n writeTo(reporterId) {\n return nonConsoleReporters.indexOf(reporterId) >= 0\n }\n })\n },\n }\n }\n}\n\nfunction createDummyLogger(logMethods: string[]) {\n return logMethods.reduce((p, m) => {\n p[m] = noop\n return p\n }, record()) as Logger\n}\n\nexport type StandardLogForTest<N extends string = LogMethodNames> = StandardLog<N> & { reporter: MemoryLogReporter }\n\nexport function createStandardLogForTest<N extends string = LogMethodNames>(\n logLevel: LogLevel = logLevels.debug\n): StandardLogForTest<N> {\n const reporter = createMemoryLogReporter()\n const closure = createStandardLogClosure<N>({ reporters: [reporter], logLevel })\n return { ...closure.standardLog, reporter }\n}\n\n/**\n * Suppress logging within the code block.\n */\nexport function suppressLogs<R>(block: () => R, log: Logger, ...logs: Logger[]): R\nexport function suppressLogs<R>(block: () => R, ...logs: Logger[]): R {\n const origLevels = logs.map(l => l.level)\n logs.forEach(l => l.level = logLevels.none)\n const result = block()\n logs.forEach((l, i) => l.level = origLevels[i])\n return result\n}\n\nexport function getLogger<N extends string = LogMethodNames>(id: string, options?: LoggerOptions) {\n return getGlobalSL<N>().getLogger(id, options)\n}\n\nexport const ctx: {\n configured?: boolean,\n gsl?: { store: LogStore, standardLog: StandardLogInstance<LogMethodNames> }\n} = record()\n\nfunction getGlobalSL<N extends string = LogMethodNames>(): StandardLogInstance<N> {\n if (!ctx.gsl) ctx.gsl = createStandardLogClosure()\n\n return ctx.gsl!.standardLog as StandardLogInstance<N>\n}\n\nexport function configGlobal(options: Omit<StandardLogOptions, 'customLevels'>) {\n if (ctx.configured) {\n const log = ctx.gsl!.standardLog.getLogger('standard-log')\n log.warn('configGlobal() is being called more than once. Please make sure this is expected. Application should use `createStandardLog()` most of the time.')\n }\n\n if (ctx.gsl) {\n if (options.logLevel) {\n ctx.gsl.store.logLevel = options.logLevel\n }\n if (options.reporters) {\n const reporters = ctx.gsl.store.reporters\n reporters.length = 0\n reporters.push(...options.reporters)\n }\n }\n else {\n ctx.gsl = createStandardLogClosure(options)\n }\n ctx.configured = true\n}\n"]}
|
package/cjs/standardLog.spec.js
CHANGED
|
@@ -69,9 +69,18 @@ describe('createStandardLog()', function () {
|
|
|
69
69
|
var mem = (0, memory_js_1.createMemoryLogReporter)();
|
|
70
70
|
var sl = (0, index_js_1.createStandardLog)({ reporters: [mem] });
|
|
71
71
|
var log = sl.getLogger('x');
|
|
72
|
-
log.
|
|
72
|
+
log.notice('abc');
|
|
73
73
|
expect(mem.logs.length).toBe(1);
|
|
74
74
|
});
|
|
75
|
+
it('all reporters must have an id', function () {
|
|
76
|
+
var reporter = (0, memory_js_1.createMemoryLogReporter)({ id: '' });
|
|
77
|
+
(0, index_js_1.createStandardLog)({ reporters: [reporter] });
|
|
78
|
+
assertron_1.assertron.satisfies(reporter.logs, [{
|
|
79
|
+
id: 'standard-log',
|
|
80
|
+
level: logLevels_js_1.logLevels.critical,
|
|
81
|
+
args: ["Detected reporter with empty id. This is not allowed as it will create problems with feature like 'getNonConsoleLogger()'. Please add an id to your reporter."]
|
|
82
|
+
}]);
|
|
83
|
+
});
|
|
75
84
|
});
|
|
76
85
|
describe('related to global', function () {
|
|
77
86
|
beforeEach(function () {
|
|
@@ -618,4 +627,52 @@ describe('configGlobal()', function () {
|
|
|
618
627
|
expect(reporters).toEqual([mem]);
|
|
619
628
|
});
|
|
620
629
|
});
|
|
630
|
+
describe('getNonConsoleLogger()', function () {
|
|
631
|
+
it('will not write to console', function () {
|
|
632
|
+
var memory = (0, memory_js_1.createMemoryLogReporter)();
|
|
633
|
+
var c = (0, memory_js_1.createMemoryWithConsoleLogReporter)();
|
|
634
|
+
var sl = (0, index_js_1.createStandardLog)({ reporters: [memory, c] });
|
|
635
|
+
var log = sl.getNonConsoleLogger('non-console');
|
|
636
|
+
log.info('should not see this');
|
|
637
|
+
expect(c.logs).toEqual([]);
|
|
638
|
+
});
|
|
639
|
+
it('no non-console reporter should get logger with noop', function () {
|
|
640
|
+
var reporter = (0, memory_js_1.createMemoryWithConsoleLogReporter)();
|
|
641
|
+
var sl = (0, index_js_1.createStandardLog)({ reporters: [reporter] });
|
|
642
|
+
var log = sl.getNonConsoleLogger('non-console');
|
|
643
|
+
log.emergency('should not see this');
|
|
644
|
+
log.alert('should not see this');
|
|
645
|
+
log.critical('should not see this');
|
|
646
|
+
log.error('should not see this');
|
|
647
|
+
log.warn('should not see this');
|
|
648
|
+
log.notice('should not see this');
|
|
649
|
+
log.info('should not see this');
|
|
650
|
+
log.debug('should not see this');
|
|
651
|
+
log.trace('should not see this');
|
|
652
|
+
log.planck('should not see this');
|
|
653
|
+
log.count('should not see this');
|
|
654
|
+
log.write({ id: 'x', args: ['y'], level: logLevels_js_1.logLevels.alert, timestamp: new Date() });
|
|
655
|
+
log.on(logLevels_js_1.logLevels.emergency, function () { return 'should not see this'; });
|
|
656
|
+
expect(reporter.logs).toEqual([]);
|
|
657
|
+
});
|
|
658
|
+
it('with existing id should fail', function () {
|
|
659
|
+
var memory = (0, memory_js_1.createMemoryLogReporter)();
|
|
660
|
+
var c = (0, memory_js_1.createMemoryWithConsoleLogReporter)();
|
|
661
|
+
var sl = (0, index_js_1.createStandardLog)({ reporters: [memory, c] });
|
|
662
|
+
sl.getLogger('exist-expected to see');
|
|
663
|
+
var log = sl.getNonConsoleLogger('exist-expected to see');
|
|
664
|
+
log.error('should not see this');
|
|
665
|
+
assertron_1.assertron.satisfies(memory.logs, [{
|
|
666
|
+
id: 'standard-log',
|
|
667
|
+
args: ["attempt to create a non-console logger with existing id ('exist-expected to see'), ignoring"],
|
|
668
|
+
level: logLevels_js_1.logLevels.warn
|
|
669
|
+
}]);
|
|
670
|
+
});
|
|
671
|
+
it('will get the same non-console logger if spplies with the same name', function () {
|
|
672
|
+
var sl = (0, index_js_1.createStandardLogForTest)();
|
|
673
|
+
var logA = sl.getNonConsoleLogger('non-console');
|
|
674
|
+
var logB = sl.getNonConsoleLogger('non-console');
|
|
675
|
+
expect(logA).toStrictEqual(logB);
|
|
676
|
+
});
|
|
677
|
+
});
|
|
621
678
|
//# sourceMappingURL=standardLog.spec.js.map
|