standard-log 9.0.1 → 9.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/console.d.ts.map +1 -1
- package/cjs/console.js +3 -5
- package/cjs/console.js.map +1 -1
- package/cjs/global.d.ts +13 -0
- package/cjs/global.d.ts.map +1 -0
- package/cjs/global.js +33 -0
- package/cjs/global.js.map +1 -0
- package/cjs/global.spec.d.ts +2 -0
- package/cjs/global.spec.d.ts.map +1 -0
- package/cjs/global.spec.js +32 -0
- package/cjs/global.spec.js.map +1 -0
- package/cjs/index.d.ts +2 -1
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +7 -1
- package/cjs/index.js.map +1 -1
- package/cjs/logStore.d.ts +1 -1
- package/cjs/logStore.d.ts.map +1 -1
- package/cjs/logStore.js.map +1 -1
- package/cjs/logger.d.ts +1 -2
- package/cjs/logger.d.ts.map +1 -1
- package/cjs/logger.js +6 -4
- package/cjs/logger.js.map +1 -1
- package/cjs/platform.browser.d.ts +0 -1
- package/cjs/platform.browser.d.ts.map +1 -1
- package/cjs/platform.browser.js +1 -5
- package/cjs/platform.browser.js.map +1 -1
- package/cjs/platform.d.ts +0 -2
- package/cjs/platform.d.ts.map +1 -1
- package/cjs/platform.js +1 -18
- package/cjs/platform.js.map +1 -1
- package/cjs/standardLog.d.ts +10 -3
- package/cjs/standardLog.d.ts.map +1 -1
- package/cjs/standardLog.js +24 -18
- package/cjs/standardLog.js.map +1 -1
- package/cjs/standardLog.spec.js.map +1 -1
- package/cjs/types.d.ts +3 -3
- package/cjs/types.d.ts.map +1 -1
- package/cjs/types.js.map +1 -1
- package/dist/standard-log.es5.js +84 -46
- 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 +112 -56
- 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/console.d.ts.map +1 -1
- package/esm/console.js +4 -6
- package/esm/console.js.map +1 -1
- package/esm/global.d.ts +13 -0
- package/esm/global.d.ts.map +1 -0
- package/esm/global.js +28 -0
- package/esm/global.js.map +1 -0
- package/esm/global.spec.d.ts +2 -0
- package/esm/global.spec.d.ts.map +1 -0
- package/esm/global.spec.js +30 -0
- package/esm/global.spec.js.map +1 -0
- package/esm/index.d.ts +2 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -1
- package/esm/index.js.map +1 -1
- package/esm/logStore.d.ts +1 -1
- package/esm/logStore.d.ts.map +1 -1
- package/esm/logStore.js.map +1 -1
- package/esm/logger.d.ts +1 -2
- package/esm/logger.d.ts.map +1 -1
- package/esm/logger.js +3 -2
- package/esm/logger.js.map +1 -1
- package/esm/platform.browser.d.ts +0 -1
- package/esm/platform.browser.d.ts.map +1 -1
- package/esm/platform.browser.js +0 -3
- package/esm/platform.browser.js.map +1 -1
- package/esm/platform.d.ts +0 -2
- package/esm/platform.d.ts.map +1 -1
- package/esm/platform.js +0 -15
- package/esm/platform.js.map +1 -1
- package/esm/standardLog.d.ts +10 -3
- package/esm/standardLog.d.ts.map +1 -1
- package/esm/standardLog.js +20 -15
- package/esm/standardLog.js.map +1 -1
- package/esm/standardLog.spec.js.map +1 -1
- package/esm/types.d.ts +3 -3
- package/esm/types.d.ts.map +1 -1
- package/esm/types.js.map +1 -1
- package/package.json +1 -1
- package/ts/console.ts +4 -6
- package/ts/global.ts +34 -0
- package/ts/index.ts +5 -1
- package/ts/logStore.ts +1 -1
- package/ts/logger.ts +3 -3
- package/ts/platform.browser.ts +0 -3
- package/ts/platform.ts +0 -17
- package/ts/standardLog.ts +30 -19
- package/ts/types.ts +3 -3
- package/cjs/platform.spec.d.ts +0 -2
- package/cjs/platform.spec.d.ts.map +0 -1
- package/cjs/platform.spec.js +0 -22
- package/cjs/platform.spec.js.map +0 -1
- package/esm/platform.spec.d.ts +0 -2
- package/esm/platform.spec.d.ts.map +0 -1
- package/esm/platform.spec.js +0 -20
- package/esm/platform.spec.js.map +0 -1
package/cjs/console.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../ts/console.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAY,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEtG,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,uCAS5C;
|
|
1
|
+
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../ts/console.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAY,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEtG,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,uCAS5C;AAiCD,oBAAY,mBAAmB,GAAG,YAAY,CAAC,GAAG,EAAE,CAAC,CAAA;AACrD,oBAAY,kBAAkB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,GAAG;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,CAAA;AAC9E,oBAAY,yBAAyB,GAAG,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAA;AAEjE,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,kBAAkB,CAiBhG"}
|
package/cjs/console.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createConsoleLogReporter = exports.toConsoleMethod = void 0;
|
|
4
4
|
var type_plus_1 = require("type-plus");
|
|
5
|
+
var formatter_js_1 = require("./formatter.js");
|
|
5
6
|
var logLevels_js_1 = require("./logLevels.js");
|
|
6
7
|
var platform_js_1 = require("./platform.js");
|
|
7
|
-
var formatter_js_1 = require("./formatter.js");
|
|
8
8
|
function toConsoleMethod(level) {
|
|
9
9
|
switch (true) {
|
|
10
10
|
// edge case in case none is somehow written
|
|
@@ -23,11 +23,9 @@ function buildPolyfillConsole() {
|
|
|
23
23
|
var hasBind = !!console.log.bind;
|
|
24
24
|
if (hasBind) {
|
|
25
25
|
return {
|
|
26
|
-
// Node@9.3 or below has `console.debug = undefined` or it doesn't log
|
|
27
|
-
// Should use `console.log()` in those case.
|
|
28
|
-
debug: ((0, platform_js_1.isConsoleDebugAvailable)() ? console.debug : console.log).bind(console),
|
|
29
26
|
// the `typeof` guards against IE where `console.log.apply()`
|
|
30
27
|
// results in error `Object doesn't support property or method 'apply'`
|
|
28
|
+
debug: (typeof console.info === 'function' ? console.debug : console.log).bind(console),
|
|
31
29
|
info: (typeof console.info === 'function' ? console.info : console.log).bind(console),
|
|
32
30
|
warn: (typeof console.warn === 'function' ? console.warn : console.log).bind(console),
|
|
33
31
|
error: (typeof console.error === 'function' ? console.error : console.log).bind(console)
|
|
@@ -35,7 +33,7 @@ function buildPolyfillConsole() {
|
|
|
35
33
|
}
|
|
36
34
|
else {
|
|
37
35
|
return {
|
|
38
|
-
debug: buildFn(
|
|
36
|
+
debug: buildFn(typeof console.debug === 'function' ? 'debug' : 'log'),
|
|
39
37
|
info: buildFn(typeof console.info === 'function' ? 'info' : 'log'),
|
|
40
38
|
warn: buildFn(typeof console.warn === 'function' ? 'warn' : 'log'),
|
|
41
39
|
error: buildFn(typeof console.error === 'function' ? 'error' : 'log'),
|
package/cjs/console.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.js","sourceRoot":"","sources":["../ts/console.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AACpC,+CAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../ts/console.ts"],"names":[],"mappings":"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","sourcesContent":["import { required } from 'type-plus'\nimport { plainLogFormatter } from './formatter.js'\nimport { logLevels } from './logLevels.js'\nimport { polyfill } from './platform.js'\nimport type { ConsoleLike, LogEntry, LogFormatter, LogReporter, LogReporterOptions } from './types.js'\n\nexport function toConsoleMethod(level: number) {\n switch (true) {\n // edge case in case none is somehow written\n case (level <= 0): return 'debug'\n case (level <= logLevels.error): return 'error'\n case (level <= logLevels.warn): return 'warn'\n case (level <= logLevels.info): return 'info'\n default: return 'debug'\n }\n}\n\n// istanbul ignore next\n/* eslint-disable no-console */\nfunction buildPolyfillConsole() {\n // old phantomjs does not have bind function\n const hasBind = !!console.log.bind as boolean\n if (hasBind) {\n return {\n // the `typeof` guards against IE where `console.log.apply()`\n // results in error `Object doesn't support property or method 'apply'`\n debug: (typeof console.info === 'function' ? console.debug : console.log).bind(console),\n info: (typeof console.info === 'function' ? console.info : console.log).bind(console),\n warn: (typeof console.warn === 'function' ? console.warn : console.log).bind(console),\n error: (typeof console.error === 'function' ? console.error : console.log).bind(console)\n }\n }\n else {\n return {\n debug: buildFn(typeof console.debug === 'function' ? 'debug' : 'log'),\n info: buildFn(typeof console.info === 'function' ? 'info' : 'log'),\n warn: buildFn(typeof console.warn === 'function' ? 'warn' : 'log'),\n error: buildFn(typeof console.error === 'function' ? 'error' : 'log'),\n }\n }\n}\n\n// istanbul ignore next\nfunction buildFn(name: 'debug' | 'info' | 'warn' | 'error' | 'log') {\n return function (...args: any[]) { console[name](...args) }\n}\n\n\nexport type ConsoleLogFormatter = LogFormatter<any[]>\nexport type ConsoleLogReporter = LogReporter<any[]> & { console: ConsoleLike }\nexport type ConsoleLogReporterOptions = LogReporterOptions<any[]>\n\nexport function createConsoleLogReporter(options?: ConsoleLogReporterOptions): ConsoleLogReporter {\n const { id, formatter, filter } = required({ id: 'console', formatter: plainLogFormatter }, options)\n if (!polyfill.console) polyfill.console = buildPolyfillConsole()\n\n return Object.freeze({\n id,\n isConsoleReporter: true,\n get formatter() { return formatter },\n get filter() { return filter },\n console: polyfill.console,\n write(entry: LogEntry) {\n if (filter && !filter(entry)) return\n const values = formatter(entry)\n const method = toConsoleMethod(entry.level)\n this.console[method](...values)\n }\n })\n}\n"]}
|
package/cjs/global.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { StackTraceMeta } from '@just-func/types';
|
|
2
|
+
import { LogStore } from './logStore.js';
|
|
3
|
+
import { StandardLogInstance } from './standardLog.js';
|
|
4
|
+
import { LoggerOptions, LogMethodNames, StandardLogOptions } from './types.js';
|
|
5
|
+
export declare function getLogger<N extends string = LogMethodNames>(params: [id: string, options?: LoggerOptions], meta?: StackTraceMeta): import("./types.js").Logger<LogMethodNames | N>;
|
|
6
|
+
export declare const ctx: {
|
|
7
|
+
gsl?: {
|
|
8
|
+
store: LogStore;
|
|
9
|
+
standardLog: StandardLogInstance<any>;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export declare function configGlobal<N extends string = LogMethodNames>(options: Omit<StandardLogOptions, 'customLevels'>): void;
|
|
13
|
+
//# sourceMappingURL=global.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../ts/global.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAA4B,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAChF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAE9E,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EACzD,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,EAAE,IAAI,CAAC,EAAE,cAAc,mDAErE;AAED,eAAO,MAAM,GAAG,EAAE;IAAE,GAAG,CAAC,EAAE;QAAE,KAAK,EAAE,QAAQ,CAAC;QAAC,WAAW,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAA;KAAE,CAAA;CAAa,CAAA;AAQjG,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,QAchH"}
|
package/cjs/global.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.configGlobal = exports.ctx = exports.getLogger = void 0;
|
|
4
|
+
var type_plus_1 = require("type-plus");
|
|
5
|
+
var standardLog_js_1 = require("./standardLog.js");
|
|
6
|
+
function getLogger(params, meta) {
|
|
7
|
+
return getGlobalSL().getLogger(params, meta);
|
|
8
|
+
}
|
|
9
|
+
exports.getLogger = getLogger;
|
|
10
|
+
exports.ctx = (0, type_plus_1.record)();
|
|
11
|
+
function getGlobalSL() {
|
|
12
|
+
if (!exports.ctx.gsl)
|
|
13
|
+
configGlobal({});
|
|
14
|
+
return exports.ctx.gsl.standardLog;
|
|
15
|
+
}
|
|
16
|
+
function configGlobal(options) {
|
|
17
|
+
if (exports.ctx.gsl) {
|
|
18
|
+
if (options.logLevel) {
|
|
19
|
+
exports.ctx.gsl.store.logLevel = options.logLevel;
|
|
20
|
+
}
|
|
21
|
+
if (options.reporters) {
|
|
22
|
+
var reporters = exports.ctx.gsl.store.reporters;
|
|
23
|
+
while (reporters.length > 0)
|
|
24
|
+
reporters.pop();
|
|
25
|
+
reporters.push.apply(reporters, options.reporters);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
exports.ctx.gsl = (0, standardLog_js_1.createStandardLogClosure)(options);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.configGlobal = configGlobal;
|
|
33
|
+
//# sourceMappingURL=global.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global.js","sourceRoot":"","sources":["../ts/global.ts"],"names":[],"mappings":";;;AACA,uCAAkC;AAElC,mDAAgF;AAGhF,SAAgB,SAAS,CACvB,MAA6C,EAAE,IAAqB;IACpE,OAAO,WAAW,EAAK,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AACjD,CAAC;AAHD,8BAGC;AAEY,QAAA,GAAG,GAAyE,IAAA,kBAAM,GAAE,CAAA;AAEjG,SAAS,WAAW;IAClB,IAAI,CAAC,WAAG,CAAC,GAAG;QAAE,YAAY,CAAC,EAAE,CAAC,CAAA;IAE9B,OAAO,WAAG,CAAC,GAAI,CAAC,WAAW,CAAA;AAC7B,CAAC;AAED,SAAgB,YAAY,CAAoC,OAAiD;IAC/G,IAAI,WAAG,CAAC,GAAG,EAAE;QACX,IAAI,OAAO,CAAC,QAAQ,EAAE;YACpB,WAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;SAC1C;QACD,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,IAAM,SAAS,GAAG,WAAG,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAA;YACzC,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS,CAAC,GAAG,EAAE,CAAA;YAC5C,SAAS,CAAC,IAAI,OAAd,SAAS,EAAS,OAAO,CAAC,SAAS,EAAC;SACrC;KACF;SACI;QACH,WAAG,CAAC,GAAG,GAAG,IAAA,yCAAwB,EAAI,OAAO,CAAC,CAAA;KAC/C;AACH,CAAC;AAdD,oCAcC","sourcesContent":["import { StackTraceMeta } from '@just-func/types'\nimport { record } from 'type-plus'\nimport { LogStore } from './logStore.js'\nimport { createStandardLogClosure, StandardLogInstance } from './standardLog.js'\nimport { LoggerOptions, LogMethodNames, StandardLogOptions } from './types.js'\n\nexport function getLogger<N extends string = LogMethodNames>(\n params: [id: string, options?: LoggerOptions], meta?: StackTraceMeta) {\n return getGlobalSL<N>().getLogger(params, meta)\n}\n\nexport const ctx: { gsl?: { store: LogStore, standardLog: StandardLogInstance<any> } } = record()\n\nfunction getGlobalSL<N extends string = LogMethodNames>(): StandardLogInstance<N> {\n if (!ctx.gsl) configGlobal({})\n\n return ctx.gsl!.standardLog\n}\n\nexport function configGlobal<N extends string = LogMethodNames>(options: Omit<StandardLogOptions, 'customLevels'>) {\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 while (reporters.length > 0) reporters.pop()\n reporters.push(...options.reporters)\n }\n }\n else {\n ctx.gsl = createStandardLogClosure<N>(options)\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global.spec.d.ts","sourceRoot":"","sources":["../ts/global.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var global_js_1 = require("./global.js");
|
|
4
|
+
var index_js_1 = require("./index.js");
|
|
5
|
+
describe('getLogger()', function () {
|
|
6
|
+
it('gets a logger that logs to console by default', function () {
|
|
7
|
+
var log = (0, index_js_1.getLogger)(['default']);
|
|
8
|
+
log.info('from global log, expected to be printed');
|
|
9
|
+
log.debug('from global log, this should not be printed');
|
|
10
|
+
});
|
|
11
|
+
});
|
|
12
|
+
describe('configGlobal()', function () {
|
|
13
|
+
beforeEach(function () { return global_js_1.ctx.gsl = undefined; });
|
|
14
|
+
it('configure the global instance', function () {
|
|
15
|
+
var mem = (0, index_js_1.createMemoryLogReporter)();
|
|
16
|
+
(0, global_js_1.configGlobal)({ logLevel: index_js_1.logLevels.error, reporters: [mem] });
|
|
17
|
+
var log = (0, index_js_1.getLogger)(['default']);
|
|
18
|
+
log.error('error message');
|
|
19
|
+
log.info('info message');
|
|
20
|
+
expect(mem.logs.length).toBe(1);
|
|
21
|
+
});
|
|
22
|
+
it('can call after getLogger', function () {
|
|
23
|
+
var log = (0, index_js_1.getLogger)(['default']);
|
|
24
|
+
log.info('from global log, expected to be printed');
|
|
25
|
+
var mem = (0, index_js_1.createMemoryLogReporter)();
|
|
26
|
+
(0, global_js_1.configGlobal)({ logLevel: index_js_1.logLevels.error, reporters: [mem] });
|
|
27
|
+
log.error('from global log, expected to be printed');
|
|
28
|
+
log.info('from global log, this should not be printed');
|
|
29
|
+
expect(mem.logs.length).toBe(1);
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=global.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global.spec.js","sourceRoot":"","sources":["../ts/global.spec.ts"],"names":[],"mappings":";;AAAA,yCAA+C;AAC/C,uCAA0E;AAE1E,QAAQ,CAAC,aAAa,EAAE;IACtB,EAAE,CAAC,+CAA+C,EAAE;QAClD,IAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,CAAC,SAAS,CAAC,CAAC,CAAA;QAClC,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAA;QACnD,GAAG,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAC1D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,gBAAgB,EAAE;IACzB,UAAU,CAAC,cAAM,OAAA,eAAG,CAAC,GAAG,GAAG,SAAS,EAAnB,CAAmB,CAAC,CAAA;IACrC,EAAE,CAAC,+BAA+B,EAAE;QAClC,IAAM,GAAG,GAAG,IAAA,kCAAuB,GAAE,CAAA;QACrC,IAAA,wBAAY,EAAC,EAAE,QAAQ,EAAE,oBAAS,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAE7D,IAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,CAAC,SAAS,CAAC,CAAC,CAAA;QAClC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;QAC1B,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QACxB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,0BAA0B,EAAE;QAC7B,IAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,CAAC,SAAS,CAAC,CAAC,CAAA;QAClC,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAA;QAEnD,IAAM,GAAG,GAAG,IAAA,kCAAuB,GAAE,CAAA;QACrC,IAAA,wBAAY,EAAC,EAAE,QAAQ,EAAE,oBAAS,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC7D,GAAG,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;QACpD,GAAG,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAA;QACvD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA","sourcesContent":["import { configGlobal, ctx } from './global.js'\nimport { createMemoryLogReporter, getLogger, logLevels } from './index.js'\n\ndescribe('getLogger()', () => {\n it('gets a logger that logs to console by default', () => {\n const log = getLogger(['default'])\n log.info('from global log, expected to be printed')\n log.debug('from global log, this should not be printed')\n })\n})\n\ndescribe('configGlobal()', () => {\n beforeEach(() => ctx.gsl = undefined)\n it('configure the global instance', () => {\n const mem = createMemoryLogReporter()\n configGlobal({ logLevel: logLevels.error, reporters: [mem] })\n\n const log = getLogger(['default'])\n log.error('error message')\n log.info('info message')\n expect(mem.logs.length).toBe(1)\n })\n it('can call after getLogger', () => {\n const log = getLogger(['default'])\n log.info('from global log, expected to be printed')\n\n const mem = createMemoryLogReporter()\n configGlobal({ logLevel: logLevels.error, reporters: [mem] })\n log.error('from global log, expected to be printed')\n log.info('from global log, this should not be printed')\n expect(mem.logs.length).toBe(1)\n })\n})\n"]}
|
package/cjs/index.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export * from './console.js';
|
|
2
2
|
export * from './errors.js';
|
|
3
3
|
export * from './formatter.js';
|
|
4
|
+
export { configGlobal, getLogger } from './global.js';
|
|
4
5
|
export * from './logLevels.js';
|
|
5
6
|
export * from './memory.js';
|
|
6
|
-
export
|
|
7
|
+
export { createStandardLog, createStandardLogForTest, StandardLog, StandardLogInstance } from './standardLog.js';
|
|
7
8
|
export * from './types.js';
|
|
8
9
|
//# sourceMappingURL=index.d.ts.map
|
package/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACrD,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,OAAO,EACL,iBAAiB,EAAE,wBAAwB,EAAE,WAAW,EAAE,mBAAmB,EAC9E,MAAM,kBAAkB,CAAA;AACzB,cAAc,YAAY,CAAA"}
|
package/cjs/index.js
CHANGED
|
@@ -14,11 +14,17 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.createStandardLogForTest = exports.createStandardLog = exports.getLogger = exports.configGlobal = void 0;
|
|
17
18
|
__exportStar(require("./console.js"), exports);
|
|
18
19
|
__exportStar(require("./errors.js"), exports);
|
|
19
20
|
__exportStar(require("./formatter.js"), exports);
|
|
21
|
+
var global_js_1 = require("./global.js");
|
|
22
|
+
Object.defineProperty(exports, "configGlobal", { enumerable: true, get: function () { return global_js_1.configGlobal; } });
|
|
23
|
+
Object.defineProperty(exports, "getLogger", { enumerable: true, get: function () { return global_js_1.getLogger; } });
|
|
20
24
|
__exportStar(require("./logLevels.js"), exports);
|
|
21
25
|
__exportStar(require("./memory.js"), exports);
|
|
22
|
-
|
|
26
|
+
var standardLog_js_1 = require("./standardLog.js");
|
|
27
|
+
Object.defineProperty(exports, "createStandardLog", { enumerable: true, get: function () { return standardLog_js_1.createStandardLog; } });
|
|
28
|
+
Object.defineProperty(exports, "createStandardLogForTest", { enumerable: true, get: function () { return standardLog_js_1.createStandardLogForTest; } });
|
|
23
29
|
__exportStar(require("./types.js"), exports);
|
|
24
30
|
//# sourceMappingURL=index.js.map
|
package/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,8CAA2B;AAC3B,iDAA8B;AAC9B,yCAAqD;AAA5C,yGAAA,YAAY,OAAA;AAAE,sGAAA,SAAS,OAAA;AAChC,iDAA8B;AAC9B,8CAA2B;AAC3B,mDAEyB;AADvB,mHAAA,iBAAiB,OAAA;AAAE,0HAAA,wBAAwB,OAAA;AAE7C,6CAA0B","sourcesContent":["export * from './console.js'\nexport * from './errors.js'\nexport * from './formatter.js'\nexport { configGlobal, getLogger } from './global.js'\nexport * from './logLevels.js'\nexport * from './memory.js'\nexport {\n createStandardLog, createStandardLogForTest, StandardLog, StandardLogInstance\n} from './standardLog.js'\nexport * from './types.js'\n\n"]}
|
package/cjs/logStore.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Logger, LogLevel, LogReporter, StandardLogOptions } from './types.js';
|
|
2
|
-
export declare function createLogStore(options: StandardLogOptions): LogStore;
|
|
2
|
+
export declare function createLogStore(options: Required<StandardLogOptions>): LogStore;
|
|
3
3
|
export interface LogStore {
|
|
4
4
|
loggers: Record<string, Logger>;
|
|
5
5
|
reporters: LogReporter[];
|
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,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEnF,wBAAgB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"logStore.d.ts","sourceRoot":"","sources":["../ts/logStore.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEnF,wBAAgB,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GAAG,QAAQ,CAO9E;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,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.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logStore.js","sourceRoot":"","sources":["../ts/logStore.ts"],"names":[],"mappings":";;;AACA,uCAA0D;AAC1D,2CAAuD;AACvD,+CAAsE;AAGtE,SAAgB,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"logStore.js","sourceRoot":"","sources":["../ts/logStore.ts"],"names":[],"mappings":";;;AACA,uCAA0D;AAC1D,2CAAuD;AACvD,+CAAsE;AAGtE,SAAgB,cAAc,CAAC,OAAqC;IAClE,OAAO;QACL,OAAO,EAAE,EAAE;QACX,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;AAPD,wCAOC;AAaD,SAAgB,aAAa,CAAC,OAA6B;IACzD,IAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAA;IAE/C,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,EAAP,UAAQ,KAAa;;YACnB,OAAO,MAAA,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,mCAAI,IAAA,6BAAc,EAAC,KAAK,CAAC,CAAA;QAClE,CAAC;QACD,QAAQ,EAAR,UAAS,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, reduceByKey, reduceKey } from 'type-plus'\nimport { createConsoleLogReporter } from './console.js'\nimport { logLevels, toLogLevel, toLogLevelName } from './logLevels.js'\nimport type { Logger, LogLevel, LogReporter, StandardLogOptions } from './types.js'\n\nexport function createLogStore(options: Required<StandardLogOptions>): LogStore {\n return {\n loggers: {},\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 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 || {}\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/logger.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { StackTraceMeta } from '@just-func/types';
|
|
2
|
-
import { RequiredPick } from 'type-plus';
|
|
3
2
|
import { LogStore } from './logStore.js';
|
|
4
3
|
import type { Logger, LoggerOptions, LogMethodNames } from './types.js';
|
|
5
|
-
export declare function createLogger<T extends string = LogMethodNames>([store, id,
|
|
4
|
+
export declare function createLogger<T extends string = LogMethodNames>([store, id, options]: [LogStore, string, LoggerOptions | undefined], meta?: StackTraceMeta): Logger;
|
|
6
5
|
//# sourceMappingURL=logger.d.ts.map
|
package/cjs/logger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../ts/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../ts/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAGtD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,EAAyB,MAAM,EAAE,aAAa,EAAE,cAAc,EAAe,MAAM,YAAY,CAAA;AAG3G,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,GAAG,cAAc,EAC5D,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,GAAG,SAAS,CAAC,EACnE,IAAI,CAAC,EAAE,cAAc,GACpB,MAAM,CAyDR"}
|
package/cjs/logger.js
CHANGED
|
@@ -13,20 +13,22 @@ exports.createLogger = void 0;
|
|
|
13
13
|
var errors_js_1 = require("./errors.js");
|
|
14
14
|
var logLevels_js_1 = require("./logLevels.js");
|
|
15
15
|
function createLogger(_a, meta) {
|
|
16
|
-
var
|
|
16
|
+
var _b;
|
|
17
|
+
var store = _a[0], id = _a[1], options = _a[2];
|
|
17
18
|
validateId(id, meta);
|
|
18
|
-
var
|
|
19
|
+
var writeTo = (_b = options === null || options === void 0 ? void 0 : options.writeTo) !== null && _b !== void 0 ? _b : (function () { return true; });
|
|
20
|
+
var _c = typeof writeTo === 'string'
|
|
19
21
|
? [function (id) { return id === writeTo; }, store.reporters]
|
|
20
22
|
: writeTo instanceof RegExp
|
|
21
23
|
? [function (id) { return writeTo.test(id); }, store.reporters]
|
|
22
24
|
: typeof writeTo === 'function'
|
|
23
25
|
? [writeTo, store.reporters]
|
|
24
|
-
: [function () { return true; }, [writeTo]], filter =
|
|
26
|
+
: [function () { return true; }, [writeTo]], filter = _c[0], reporters = _c[1];
|
|
25
27
|
function write(entry) {
|
|
26
28
|
writeToReporters(reporters, entry, filter);
|
|
27
29
|
}
|
|
28
30
|
var logger = {
|
|
29
|
-
level: level,
|
|
31
|
+
level: options === null || options === void 0 ? void 0 : options.level,
|
|
30
32
|
write: write
|
|
31
33
|
};
|
|
32
34
|
Object.defineProperties(logger, {
|
package/cjs/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../ts/logger.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../ts/logger.ts"],"names":[],"mappings":"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","sourcesContent":["import type { StackTraceMeta } from '@just-func/types'\nimport { InvalidId } from './errors.js'\nimport { logLevels } from './logLevels.js'\nimport { LogStore } from './logStore.js'\nimport type { LogEntry, LogFunction, Logger, LoggerOptions, LogMethodNames, LogReporter } from './types.js'\nimport { LogLevel } from './types.js'\n\nexport function createLogger<T extends string = LogMethodNames>(\n [store, id, options]: [LogStore, string, LoggerOptions | undefined],\n meta?: StackTraceMeta\n): Logger {\n validateId(id, meta)\n const writeTo = options?.writeTo ?? (() => true)\n const [filter, reporters]: [(reporterId: string) => boolean, LogReporter[]] = typeof writeTo === 'string'\n ? [id => id === writeTo, store.reporters]\n : writeTo instanceof RegExp\n ? [id => writeTo.test(id), store.reporters]\n : typeof writeTo === 'function'\n ? [writeTo, store.reporters]\n : [() => true, [writeTo]]\n\n function write(entry: LogEntry) {\n writeToReporters(reporters, entry, filter)\n }\n\n const logger = {\n level: options?.level,\n write\n } as any\n\n Object.defineProperties(logger, {\n id: { value: id, writable: false },\n count: {\n writable: false,\n value: ((counter) => (...args: any[]) => {\n const level = logLevels.debug\n if (shouldLog(store, level, logger.level))\n write({\n id,\n level,\n args: [++counter, ...args],\n timestamp: new Date()\n })\n })(0)\n },\n on: {\n writable: false,\n value: (level: number | T, logFn: LogFunction) => {\n const logLevel = typeof level === 'string' ? store.logLevelStore.getLevel(level)! : level\n if (shouldLog(store, logLevel, logger.level)) {\n const methodName = store.logLevelStore.getName(logLevel)\n const bindedMethod = logger[methodName].bind(logger)\n const result = logFn(bindedMethod)\n if (result) bindedMethod(result)\n }\n }\n }\n })\n store.logLevelStore.getAllLevels().forEach(function addMethod({ name, level }) {\n Object.defineProperty(logger, name, {\n writable: false,\n value: (...args: any[]) => {\n if (shouldLog(store, level, logger.level)) write({ id, level, args, timestamp: new Date() })\n }\n })\n })\n return logger\n}\n\nfunction validateId(id: string, meta?: StackTraceMeta) {\n if (/[`~!#$%^&*()=+[\\]{},|<>?]/.test(id)) throw new InvalidId(id, meta)\n}\n\nfunction writeToReporters(reporters: LogReporter[], logEntry: LogEntry, filter: (reporterId: string) => boolean) {\n reporters.filter(r => filter(r.id)).forEach(r => r.write(logEntry!))\n}\n\n/**\n * Determines should you log.\n * @param loggerLevel Log level of the logger.\n * It can be undefined which the global log level will be used.\n */\nfunction shouldLog(store: LogStore, targetLevel: LogLevel, loggerLevel: LogLevel | undefined) {\n return targetLevel <= (loggerLevel !== undefined ? loggerLevel : store.logLevel)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.browser.d.ts","sourceRoot":"","sources":["../ts/platform.browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAEvD,eAAO,MAAM,iBAAiB,MAAO,QAAQ,aAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"platform.browser.d.ts","sourceRoot":"","sources":["../ts/platform.browser.ts"],"names":[],"mappings":"AAAA,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;CAAO,CAAA"}
|
package/cjs/platform.browser.js
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.polyfill = exports.
|
|
3
|
+
exports.polyfill = exports.toInspectLogEntry = void 0;
|
|
4
4
|
var toInspectLogEntry = function (e) { return e; };
|
|
5
5
|
exports.toInspectLogEntry = toInspectLogEntry;
|
|
6
|
-
function isConsoleDebugAvailable() {
|
|
7
|
-
return true;
|
|
8
|
-
}
|
|
9
|
-
exports.isConsoleDebugAvailable = isConsoleDebugAvailable;
|
|
10
6
|
exports.polyfill = {};
|
|
11
7
|
//# sourceMappingURL=platform.browser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.browser.js","sourceRoot":"","sources":["../ts/platform.browser.ts"],"names":[],"mappings":";;;AAEO,IAAM,iBAAiB,GAAG,UAAC,CAAW,IAAK,OAAA,CAAC,EAAD,CAAC,CAAA;AAAtC,QAAA,iBAAiB,qBAAqB;
|
|
1
|
+
{"version":3,"file":"platform.browser.js","sourceRoot":"","sources":["../ts/platform.browser.ts"],"names":[],"mappings":";;;AAEO,IAAM,iBAAiB,GAAG,UAAC,CAAW,IAAK,OAAA,CAAC,EAAD,CAAC,CAAA;AAAtC,QAAA,iBAAiB,qBAAqB;AAEtC,QAAA,QAAQ,GAA8B,EAAE,CAAA","sourcesContent":["import type { ConsoleLike, LogEntry } from './types.js'\n\nexport const toInspectLogEntry = (e: LogEntry) => e\n\nexport const polyfill: { console?: ConsoleLike } = {}\n"]}
|
package/cjs/platform.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import type { ConsoleLike, LogEntry } from './types.js';
|
|
2
|
-
export declare function semverGt(versionString: string, version: [number, number, number]): boolean;
|
|
3
|
-
export declare function isConsoleDebugAvailable(): boolean;
|
|
4
2
|
export declare const toInspectLogEntry: (e: LogEntry) => LogEntry;
|
|
5
3
|
export declare const polyfill: {
|
|
6
4
|
console?: ConsoleLike;
|
package/cjs/platform.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../ts/platform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAEvD,
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../ts/platform.ts"],"names":[],"mappings":"AACA,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;CAAO,CAAA"}
|
package/cjs/platform.js
CHANGED
|
@@ -1,24 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.polyfill = exports.toInspectLogEntry =
|
|
3
|
+
exports.polyfill = exports.toInspectLogEntry = void 0;
|
|
4
4
|
var util_1 = require("util");
|
|
5
|
-
function semverGt(versionString, version) {
|
|
6
|
-
var actual = versionString.split('.').reverse().reduce(function (p, v, i) {
|
|
7
|
-
p += Number.parseInt(v, 10) * Math.pow(100, i);
|
|
8
|
-
return p;
|
|
9
|
-
}, 0);
|
|
10
|
-
return actual > (version[0] * 10000 + version[1] * 100 + version[2]);
|
|
11
|
-
}
|
|
12
|
-
exports.semverGt = semverGt;
|
|
13
|
-
// istanbul ignore next
|
|
14
|
-
function isConsoleDebugAvailable() {
|
|
15
|
-
// without this, systemJs will complain `process is not defined`
|
|
16
|
-
if (!global.process)
|
|
17
|
-
return true;
|
|
18
|
-
var versionString = process.version.startsWith('v') ? process.version.slice(1) : process.version;
|
|
19
|
-
return semverGt(versionString, [9, 3, 0]);
|
|
20
|
-
}
|
|
21
|
-
exports.isConsoleDebugAvailable = isConsoleDebugAvailable;
|
|
22
5
|
var toInspectLogEntry = function (e) { return (e.args = e.args.map(function (value) { return typeof value === 'object' && value !== null ? (0, util_1.inspect)(value) : value; }),
|
|
23
6
|
e); };
|
|
24
7
|
exports.toInspectLogEntry = toInspectLogEntry;
|
package/cjs/platform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../ts/platform.ts"],"names":[],"mappings":";;;AAAA,6BAA8B;
|
|
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,EAAE,CAAA","sourcesContent":["import { 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 } = {}\n"]}
|
package/cjs/standardLog.d.ts
CHANGED
|
@@ -1,12 +1,19 @@
|
|
|
1
1
|
import { StackTraceMeta } from '@just-func/types';
|
|
2
|
+
import { LogStore } from './logStore.js';
|
|
2
3
|
import type { Logger, LoggerOptions, LogLevel, LogMethodNames, StandardLogOptions } from './types.js';
|
|
3
|
-
export interface
|
|
4
|
-
|
|
4
|
+
export interface StandardLogInstance<N extends string = LogMethodNames> {
|
|
5
|
+
logLevel: number;
|
|
5
6
|
toLogLevelName(level: number): string;
|
|
6
7
|
toLogLevel(name: N): number;
|
|
7
8
|
getLogger(params: [id: string, options?: LoggerOptions], meta?: StackTraceMeta): Logger<N | LogMethodNames>;
|
|
8
9
|
}
|
|
9
|
-
export
|
|
10
|
+
export interface StandardLog<N extends string = LogMethodNames> extends Readonly<StandardLogInstance<N>> {
|
|
11
|
+
}
|
|
12
|
+
export declare function createStandardLog<N extends string = LogMethodNames>(options?: StandardLogOptions<N>): StandardLog<N>;
|
|
13
|
+
export declare function createStandardLogClosure<N extends string = LogMethodNames>(options?: StandardLogOptions<N>): {
|
|
14
|
+
store: LogStore;
|
|
15
|
+
standardLog: StandardLog<N>;
|
|
16
|
+
};
|
|
10
17
|
export declare function createStandardLogForTest(logLevel?: LogLevel): {
|
|
11
18
|
reporter: import("./memory.js").MemoryLogReporter;
|
|
12
19
|
logLevel: number;
|
package/cjs/standardLog.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardLog.d.ts","sourceRoot":"","sources":["../ts/standardLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"standardLog.d.ts","sourceRoot":"","sources":["../ts/standardLog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAIjD,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExD,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,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC,CAAC,GAAG,cAAc,CAAC,CAAA;CAC5G;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,CAEhB;AAED,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,CAoBlD;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,GAAE,QAA0B;;;;;;EAI5E;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"}
|
package/cjs/standardLog.js
CHANGED
|
@@ -11,32 +11,38 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.suppressLogs = exports.createStandardLogForTest = exports.createStandardLog = void 0;
|
|
14
|
+
exports.suppressLogs = exports.createStandardLogForTest = exports.createStandardLogClosure = exports.createStandardLog = void 0;
|
|
15
15
|
var type_plus_1 = require("type-plus");
|
|
16
16
|
var logger_js_1 = require("./logger.js");
|
|
17
17
|
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
|
-
function createStandardLog(options
|
|
20
|
+
function createStandardLog(options) {
|
|
21
|
+
return createStandardLogClosure(options).standardLog;
|
|
22
|
+
}
|
|
23
|
+
exports.createStandardLog = createStandardLog;
|
|
24
|
+
function createStandardLogClosure(options) {
|
|
21
25
|
var store = (0, logStore_js_1.createLogStore)((0, type_plus_1.required)({ logLevel: logLevels_js_1.logLevels.info }, options));
|
|
22
|
-
return
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
return store.
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
26
|
+
return {
|
|
27
|
+
store: store,
|
|
28
|
+
standardLog: {
|
|
29
|
+
get logLevel() { return store.logLevel; },
|
|
30
|
+
toLogLevelName: function (level) {
|
|
31
|
+
return store.logLevelStore.getName(level);
|
|
32
|
+
},
|
|
33
|
+
toLogLevel: function (name) {
|
|
34
|
+
return store.logLevelStore.getLevel(name);
|
|
35
|
+
},
|
|
36
|
+
getLogger: function (_a, meta) {
|
|
37
|
+
var id = _a[0], options = _a[1];
|
|
38
|
+
if (store.loggers[id])
|
|
39
|
+
return store.loggers[id];
|
|
40
|
+
return store.loggers[id] = (0, logger_js_1.createLogger)([store, id, options], __assign({ ssf: this.getLogger }, meta));
|
|
41
|
+
}
|
|
36
42
|
}
|
|
37
|
-
}
|
|
43
|
+
};
|
|
38
44
|
}
|
|
39
|
-
exports.
|
|
45
|
+
exports.createStandardLogClosure = createStandardLogClosure;
|
|
40
46
|
function createStandardLogForTest(logLevel) {
|
|
41
47
|
if (logLevel === void 0) { logLevel = logLevels_js_1.logLevels.debug; }
|
|
42
48
|
var reporter = (0, memory_js_1.createMemoryLogReporter)();
|
package/cjs/standardLog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardLog.js","sourceRoot":"","sources":["../ts/standardLog.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,uCAAoC;AACpC,yCAA0C;AAC1C,+CAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"standardLog.js","sourceRoot":"","sources":["../ts/standardLog.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AACA,uCAAoC;AACpC,yCAA0C;AAC1C,+CAA0C;AAC1C,6CAAwD;AACxD,yCAAqD;AAarD,SAAgB,iBAAiB,CAC/B,OAA+B;IAE/B,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAC,WAAW,CAAA;AACtD,CAAC;AAJD,8CAIC;AAED,SAAgB,wBAAwB,CACtC,OAA+B;IAE/B,IAAM,KAAK,GAAG,IAAA,4BAAc,EAAC,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,wBAAS,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;IAE7E,OAAO;QACL,KAAK,OAAA;QACL,WAAW,EAAE;YACX,IAAI,QAAQ,KAAK,OAAO,KAAK,CAAC,QAAQ,CAAA,CAAC,CAAC;YAExC,cAAc,EAAd,UAAe,KAAa;gBAC1B,OAAO,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YAC3C,CAAC;YACD,UAAU,EAAV,UAAW,IAAY;gBACrB,OAAO,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC3C,CAAC;YACD,SAAS,EAAT,UAAU,EAAoD,EAAE,IAAqB;oBAA1E,EAAE,QAAA,EAAE,OAAO,QAAA;gBACpB,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;oBAAE,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,CAAQ,CAAA;gBACtD,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,IAAA,wBAAY,EAAC,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,aAAI,GAAG,EAAE,IAAI,CAAC,SAAS,IAAK,IAAI,EAAU,CAAA;YACxG,CAAC;SACF;KACF,CAAA;AACH,CAAC;AAtBD,4DAsBC;AAED,SAAgB,wBAAwB,CAAC,QAAoC;IAApC,yBAAA,EAAA,WAAqB,wBAAS,CAAC,KAAK;IAC3E,IAAM,QAAQ,GAAG,IAAA,mCAAuB,GAAE,CAAA;IAC1C,IAAM,WAAW,GAAG,iBAAiB,CAAC,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAA;IAC1E,6BAAY,WAAW,KAAE,QAAQ,UAAA,IAAE;AACrC,CAAC;AAJD,4DAIC;AAMD,SAAgB,YAAY,CAAI,KAAc;IAAE,cAAiB;SAAjB,UAAiB,EAAjB,qBAAiB,EAAjB,IAAiB;QAAjB,6BAAiB;;IAC/D,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,KAAK,EAAP,CAAO,CAAC,CAAA;IACzC,IAAI,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,KAAK,GAAG,wBAAS,CAAC,IAAI,EAAxB,CAAwB,CAAC,CAAA;IAC3C,IAAM,MAAM,GAAG,KAAK,EAAE,CAAA;IACtB,IAAI,CAAC,OAAO,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,EAAvB,CAAuB,CAAC,CAAA;IAC/C,OAAO,MAAM,CAAA;AACf,CAAC;AAND,oCAMC","sourcesContent":["import { StackTraceMeta } from '@just-func/types'\nimport { required } from 'type-plus'\nimport { createLogger } from './logger.js'\nimport { logLevels } from './logLevels.js'\nimport { createLogStore, LogStore } from './logStore.js'\nimport { createMemoryLogReporter } 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(params: [id: string, options?: LoggerOptions], meta?: StackTraceMeta): 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 return createStandardLogClosure(options).standardLog\n}\n\nexport function createStandardLogClosure<N extends string = LogMethodNames>(\n options?: StandardLogOptions<N>\n): { store: LogStore, standardLog: StandardLog<N> } {\n const store = createLogStore(required({ logLevel: logLevels.info }, options))\n\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, options]: [id: string, options?: LoggerOptions], meta?: StackTraceMeta) {\n if (store.loggers[id]) return store.loggers[id] as any\n return store.loggers[id] = createLogger([store, id, options], { ssf: this.getLogger, ...meta }) as any\n }\n }\n }\n}\n\nexport function createStandardLogForTest(logLevel: LogLevel = logLevels.debug) {\n const reporter = createMemoryLogReporter()\n const standardLog = createStandardLog({ reporters: [reporter], logLevel })\n return { ...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"]}
|