@niceties/logger 1.0.0-beta.2 → 1.0.3
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/README.md +2 -0
- package/dist/{console-appender.js → console-appender.cjs} +0 -0
- package/dist/{core.js → core.cjs} +1 -1
- package/dist/core.d.ts +1 -1
- package/dist/core.mjs +2 -2
- package/dist/core.umd.js.map +1 -1
- package/dist/{default-formatting.js → default-formatting.cjs} +0 -0
- package/dist/{format-utils.js → format-utils.cjs} +0 -0
- package/dist/{global-appender-f4ab2f94.js → global-appender.cjs} +0 -0
- package/dist/{global-appender-f7a912b2.js → global-appender.mjs} +0 -0
- package/dist/{index.js → index.cjs} +5 -5
- package/dist/index.mjs +2 -2
- package/dist/{simple.js → simple.cjs} +1 -1
- package/dist/simple.mjs +2 -2
- package/package.json +12 -8
package/README.md
CHANGED
|
File without changes
|
package/dist/core.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { combineAppenders, filterMessages } from './appender-utils';
|
|
2
2
|
import { appender } from './details/global-appender';
|
|
3
3
|
import { Appender, LogLevel, LogMessage, Identity } from './types';
|
|
4
|
-
export declare function createLogger<ErrorContext = Error>(...args: [] | [string | Identity] | [string, Identity]): ((message: string, loglevel?: LogLevel, context?: ErrorContext | undefined) => void) & {
|
|
4
|
+
export declare function createLogger<ErrorContext = Error>(...args: [] | [string | Identity | undefined] | [string, Identity]): ((message: string, loglevel?: LogLevel, context?: ErrorContext | undefined) => void) & {
|
|
5
5
|
start(message: string, loglevel?: LogLevel | undefined): void;
|
|
6
6
|
update(message: string, loglevel?: LogLevel | undefined): void;
|
|
7
7
|
finish(message: string, loglevel?: LogLevel | undefined): void;
|
package/dist/core.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { g as globalAppender, f as filterMessages, c as combineAppenders } from './global-appender
|
|
2
|
-
export { a as appender, c as combineAppenders, f as filterMessages } from './global-appender
|
|
1
|
+
import { g as globalAppender, f as filterMessages, c as combineAppenders } from './global-appender.mjs';
|
|
2
|
+
export { a as appender, c as combineAppenders, f as filterMessages } from './global-appender.mjs';
|
|
3
3
|
|
|
4
4
|
let globalInputId = 0;
|
|
5
5
|
function createLogger(...args) {
|
package/dist/core.umd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.umd.js","sources":["../src/appender-utils.ts","../src/details/global-appender.ts","../src/core.ts"],"sourcesContent":["import { Appender, LogMessage } from './types';\n\nexport function filterMessages<ErrorContext = Error>(predicate: (logMessage: LogMessage<ErrorContext>) => boolean, appender: Appender<ErrorContext> ): Appender<ErrorContext> {\n return function(logMessage: LogMessage<ErrorContext>) {\n if (predicate(logMessage)) {\n appender(logMessage);\n }\n };\n}\n\nexport function combineAppenders<ErrorContext = Error>(...appenders: Appender<ErrorContext>[]): Appender<ErrorContext> {\n return (message: LogMessage<ErrorContext>) => {\n for(const appender of appenders) {\n try {\n appender(message);\n } catch(e) { /* eat the error */ }\n }\n };\n}","import { Appender } from '../types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport let globalAppender: Appender<any>;\n\nexport function appender<ErrorContext = Error>(appender?: Appender<ErrorContext>) {\n if (appender !== undefined) {\n globalAppender = appender;\n }\n return globalAppender;\n}\n","import { combineAppenders, filterMessages } from './appender-utils';\nimport { globalAppender, appender } from './details/global-appender';\nimport { Action, Appender, LogLevel, LogMessage, Identity } from './types';\n\nlet globalInputId = 0;\n\nexport function createLogger<ErrorContext = Error>(...args: [] | [string | Identity] | [string, Identity]) {\n let initialLogLevel: number = LogLevel.info;\n \n const inputId = globalInputId++;\n \n const { tag, parentId } = getOptions(args);\n \n let myAppender = (message: LogMessage<ErrorContext>) => { globalAppender && globalAppender(message); };\n\n const loggerInstance = Object.assign(\n function log(message: string, loglevel: LogLevel = LogLevel.info, context?: ErrorContext) {\n append(message, Action.log, loglevel, context);\n }, {\n // Fine to be started multiple times\n start(message: string, loglevel?: LogLevel) {\n if (loglevel !== undefined) {\n initialLogLevel = loglevel;\n }\n append(message, Action.start, initialLogLevel);\n },\n // Fine to be updated multiple times\n update(message: string, loglevel?: LogLevel) {\n append(message, Action.update, loglevel || initialLogLevel);\n },\n // Fine to be finished multiple times\n finish(message: string, loglevel?: LogLevel) {\n append(message, Action.finish, loglevel || initialLogLevel);\n },\n withFilter(predicate: (logMessage: LogMessage<ErrorContext>) => boolean) {\n myAppender = filterMessages(predicate, myAppender);\n return loggerInstance;\n },\n withAppender(appender: Appender<ErrorContext>) {\n myAppender = combineAppenders(myAppender, appender);\n return loggerInstance;\n }\n }\n );\n\n Object.defineProperty(loggerInstance, 'id', {\n value: inputId,\n writable: false\n });\n\n const ref = new WeakRef(loggerInstance);\n\n return loggerInstance;\n\n function append(message: string, action: Action, loglevel: LogLevel, context?: ErrorContext) {\n myAppender({\n action,\n inputId,\n message,\n loglevel,\n tag,\n parentId,\n ref,\n context\n } as LogMessage<ErrorContext>);\n }\n}\n\nfunction getOptions(options: [] | [string | Identity] | [string, Identity]): { tag?: string, parentId?: number } {\n let parentId, tag;\n if (options.length === 1) {\n if (typeof options[0] === 'string') {\n tag = options[0];\n } else {\n parentId = options[0]?.id;\n }\n } else if (options.length === 2) {\n tag = options[0];\n parentId = options[1]?.id;\n }\n return { parentId, tag };\n}\n\nexport { appender, combineAppenders, filterMessages };"],"names":["filterMessages","predicate","appender","logMessage","combineAppenders","appenders","message","e","globalAppender","globalInputId","undefined","args","initialLogLevel","inputId","tag","parentId","options","length","id","getOptions","myAppender","loggerInstance","Object","assign","loglevel","context","append","start","update","finish","withFilter","withAppender","defineProperty","value","writable","ref","WeakRef","action"],"mappings":"mQAEgBA,EAAqCC,EAA8DC,GAC/G,OAAO,SAASC,GACRF,EAAUE,IACVD,EAASC,aAKLC,KAA0CC,GACtD,OAAQC,IACJ,IAAI,MAAMJ,KAAYG,EAClB,IACIH,EAASI,GACX,MAAMC,MCZb,IAAIC,ECCX,IAAIC,EAAgB,sBDC2BP,GAI3C,YAHiBQ,IAAbR,IACAM,EAAiBN,GAEdM,mDCH2CG,GAClD,IAAIC,IAEJ,MAAMC,EAAUJ,KAEVK,IAAEA,EAAGC,SAAEA,GAyDjB,SAAoBC,WAChB,IAAID,EAAUD,EACS,IAAnBE,EAAQC,OACkB,iBAAfD,EAAQ,GACfF,EAAME,EAAQ,GAEdD,YAAWC,EAAQ,yBAAIE,GAED,IAAnBF,EAAQC,SACfH,EAAME,EAAQ,GACdD,YAAWC,EAAQ,yBAAIE,IAE3B,MAAO,CAAEH,SAAAA,EAAUD,IAAAA,GArEOK,CAAWR,GAErC,IAAIS,EAAcd,IAAwCE,GAAkBA,EAAeF,IAE3F,MAAMe,EAAiBC,OAAOC,QAC1B,SAAajB,EAAiBkB,IAAoCC,GAC9DC,EAAOpB,IAAqBkB,EAAUC,KACvC,CAECE,MAAMrB,EAAiBkB,QACFd,IAAbc,IACAZ,EAAkBY,GAEtBE,EAAOpB,IAAuBM,IAGlCgB,OAAOtB,EAAiBkB,GACpBE,EAAOpB,IAAwBkB,GAAYZ,IAG/CiB,OAAOvB,EAAiBkB,GACpBE,EAAOpB,IAAwBkB,GAAYZ,IAE/CkB,WAAW7B,IACPmB,EAAapB,EAAeC,EAAWmB,GAChCC,GAEXU,aAAa7B,IACTkB,EAAahB,EAAiBgB,EAAYlB,GACnCmB,KAKnBC,OAAOU,eAAeX,EAAgB,KAAM,CACxCY,MAAOpB,EACPqB,UAAU,IAGd,MAAMC,EAAM,IAAIC,QAAQf,GAExB,OAAOA,EAEP,SAASK,EAAOpB,EAAiB+B,EAAgBb,EAAoBC,GACjEL,EAAW,CACPiB,OAAAA,EACAxB,QAAAA,EACAP,QAAAA,EACAkB,SAAAA,EACAV,IAAAA,EACAC,SAAAA,EACAoB,IAAAA,EACAV,QAAAA"}
|
|
1
|
+
{"version":3,"file":"core.umd.js","sources":["../src/appender-utils.ts","../src/details/global-appender.ts","../src/core.ts"],"sourcesContent":["import { Appender, LogMessage } from './types';\n\nexport function filterMessages<ErrorContext = Error>(predicate: (logMessage: LogMessage<ErrorContext>) => boolean, appender: Appender<ErrorContext> ): Appender<ErrorContext> {\n return function(logMessage: LogMessage<ErrorContext>) {\n if (predicate(logMessage)) {\n appender(logMessage);\n }\n };\n}\n\nexport function combineAppenders<ErrorContext = Error>(...appenders: Appender<ErrorContext>[]): Appender<ErrorContext> {\n return (message: LogMessage<ErrorContext>) => {\n for(const appender of appenders) {\n try {\n appender(message);\n } catch(e) { /* eat the error */ }\n }\n };\n}","import { Appender } from '../types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport let globalAppender: Appender<any>;\n\nexport function appender<ErrorContext = Error>(appender?: Appender<ErrorContext>) {\n if (appender !== undefined) {\n globalAppender = appender;\n }\n return globalAppender;\n}\n","import { combineAppenders, filterMessages } from './appender-utils';\nimport { globalAppender, appender } from './details/global-appender';\nimport { Action, Appender, LogLevel, LogMessage, Identity } from './types';\n\nlet globalInputId = 0;\n\nexport function createLogger<ErrorContext = Error>(...args: [] | [string | Identity | undefined] | [string, Identity]) {\n let initialLogLevel: number = LogLevel.info;\n \n const inputId = globalInputId++;\n \n const { tag, parentId } = getOptions(args);\n \n let myAppender = (message: LogMessage<ErrorContext>) => { globalAppender && globalAppender(message); };\n\n const loggerInstance = Object.assign(\n function log(message: string, loglevel: LogLevel = LogLevel.info, context?: ErrorContext) {\n append(message, Action.log, loglevel, context);\n }, {\n // Fine to be started multiple times\n start(message: string, loglevel?: LogLevel) {\n if (loglevel !== undefined) {\n initialLogLevel = loglevel;\n }\n append(message, Action.start, initialLogLevel);\n },\n // Fine to be updated multiple times\n update(message: string, loglevel?: LogLevel) {\n append(message, Action.update, loglevel || initialLogLevel);\n },\n // Fine to be finished multiple times\n finish(message: string, loglevel?: LogLevel) {\n append(message, Action.finish, loglevel || initialLogLevel);\n },\n withFilter(predicate: (logMessage: LogMessage<ErrorContext>) => boolean) {\n myAppender = filterMessages(predicate, myAppender);\n return loggerInstance;\n },\n withAppender(appender: Appender<ErrorContext>) {\n myAppender = combineAppenders(myAppender, appender);\n return loggerInstance;\n }\n }\n );\n\n Object.defineProperty(loggerInstance, 'id', {\n value: inputId,\n writable: false\n });\n\n const ref = new WeakRef(loggerInstance);\n\n return loggerInstance;\n\n function append(message: string, action: Action, loglevel: LogLevel, context?: ErrorContext) {\n myAppender({\n action,\n inputId,\n message,\n loglevel,\n tag,\n parentId,\n ref,\n context\n } as LogMessage<ErrorContext>);\n }\n}\n\nfunction getOptions(options: [] | [string | Identity | undefined] | [string, Identity]): { tag?: string, parentId?: number } {\n let parentId, tag;\n if (options.length === 1) {\n if (typeof options[0] === 'string') {\n tag = options[0];\n } else {\n parentId = options[0]?.id;\n }\n } else if (options.length === 2) {\n tag = options[0];\n parentId = options[1]?.id;\n }\n return { parentId, tag };\n}\n\nexport { appender, combineAppenders, filterMessages };"],"names":["filterMessages","predicate","appender","logMessage","combineAppenders","appenders","message","e","globalAppender","globalInputId","undefined","args","initialLogLevel","inputId","tag","parentId","options","length","id","getOptions","myAppender","loggerInstance","Object","assign","loglevel","context","append","start","update","finish","withFilter","withAppender","defineProperty","value","writable","ref","WeakRef","action"],"mappings":"mQAEgBA,EAAqCC,EAA8DC,GAC/G,OAAO,SAASC,GACRF,EAAUE,IACVD,EAASC,aAKLC,KAA0CC,GACtD,OAAQC,IACJ,IAAI,MAAMJ,KAAYG,EAClB,IACIH,EAASI,GACX,MAAMC,MCZb,IAAIC,ECCX,IAAIC,EAAgB,sBDC2BP,GAI3C,YAHiBQ,IAAbR,IACAM,EAAiBN,GAEdM,mDCH2CG,GAClD,IAAIC,IAEJ,MAAMC,EAAUJ,KAEVK,IAAEA,EAAGC,SAAEA,GAyDjB,SAAoBC,WAChB,IAAID,EAAUD,EACS,IAAnBE,EAAQC,OACkB,iBAAfD,EAAQ,GACfF,EAAME,EAAQ,GAEdD,YAAWC,EAAQ,yBAAIE,GAED,IAAnBF,EAAQC,SACfH,EAAME,EAAQ,GACdD,YAAWC,EAAQ,yBAAIE,IAE3B,MAAO,CAAEH,SAAAA,EAAUD,IAAAA,GArEOK,CAAWR,GAErC,IAAIS,EAAcd,IAAwCE,GAAkBA,EAAeF,IAE3F,MAAMe,EAAiBC,OAAOC,QAC1B,SAAajB,EAAiBkB,IAAoCC,GAC9DC,EAAOpB,IAAqBkB,EAAUC,KACvC,CAECE,MAAMrB,EAAiBkB,QACFd,IAAbc,IACAZ,EAAkBY,GAEtBE,EAAOpB,IAAuBM,IAGlCgB,OAAOtB,EAAiBkB,GACpBE,EAAOpB,IAAwBkB,GAAYZ,IAG/CiB,OAAOvB,EAAiBkB,GACpBE,EAAOpB,IAAwBkB,GAAYZ,IAE/CkB,WAAW7B,IACPmB,EAAapB,EAAeC,EAAWmB,GAChCC,GAEXU,aAAa7B,IACTkB,EAAahB,EAAiBgB,EAAYlB,GACnCmB,KAKnBC,OAAOU,eAAeX,EAAgB,KAAM,CACxCY,MAAOpB,EACPqB,UAAU,IAGd,MAAMC,EAAM,IAAIC,QAAQf,GAExB,OAAOA,EAEP,SAASK,EAAOpB,EAAiB+B,EAAgBb,EAAoBC,GACjEL,EAAW,CACPiB,OAAAA,EACAxB,QAAAA,EACAP,QAAAA,EACAkB,SAAAA,EACAV,IAAAA,EACAC,SAAAA,EACAoB,IAAAA,EACAV,QAAAA"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var core = require('./core.
|
|
6
|
-
var globalAppender = require('./global-appender
|
|
5
|
+
var core = require('./core.cjs');
|
|
6
|
+
var globalAppender = require('./global-appender.cjs');
|
|
7
7
|
|
|
8
8
|
if (!globalAppender.appender()) {
|
|
9
|
-
const { asciiPrefixes, colors, unicodePrefixes } = require('./default-formatting');
|
|
10
|
-
const { createConsoleAppender } = require('./console-appender');
|
|
11
|
-
const { createFormatter, terminalSupportsUnicode } = require('./format-utils');
|
|
9
|
+
const { asciiPrefixes, colors, unicodePrefixes } = require('./default-formatting.cjs');
|
|
10
|
+
const { createConsoleAppender } = require('./console-appender.cjs');
|
|
11
|
+
const { createFormatter, terminalSupportsUnicode } = require('./format-utils.cjs');
|
|
12
12
|
const formatter = createFormatter(colors, terminalSupportsUnicode() ? unicodePrefixes : asciiPrefixes);
|
|
13
13
|
globalAppender.appender(globalAppender.filterMessages((message) => message.loglevel > 0 /* verbose */, createConsoleAppender(formatter)));
|
|
14
14
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { createLogger } from './core.mjs';
|
|
2
|
-
import { a as appender, f as filterMessages } from './global-appender
|
|
3
|
-
export { a as appender, c as combineAppenders, f as filterMessages } from './global-appender
|
|
2
|
+
import { a as appender, f as filterMessages } from './global-appender.mjs';
|
|
3
|
+
export { a as appender, c as combineAppenders, f as filterMessages } from './global-appender.mjs';
|
|
4
4
|
|
|
5
5
|
if (!appender()) {
|
|
6
6
|
const [{ asciiPrefixes, colors, unicodePrefixes }, { createConsoleAppender }, { createFormatter, terminalSupportsUnicode }] = await Promise.all([
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var globalAppender = require('./global-appender
|
|
5
|
+
var globalAppender = require('./global-appender.cjs');
|
|
6
6
|
|
|
7
7
|
function createLogger(tag) {
|
|
8
8
|
let myAppender = (message) => { globalAppender.globalAppender && globalAppender.globalAppender(message); };
|
package/dist/simple.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { f as filterMessages, c as combineAppenders, g as globalAppender } from './global-appender
|
|
2
|
-
export { a as appender, c as combineAppenders, f as filterMessages } from './global-appender
|
|
1
|
+
import { f as filterMessages, c as combineAppenders, g as globalAppender } from './global-appender.mjs';
|
|
2
|
+
export { a as appender, c as combineAppenders, f as filterMessages } from './global-appender.mjs';
|
|
3
3
|
|
|
4
4
|
function createLogger(tag) {
|
|
5
5
|
let myAppender = (message) => { globalAppender && globalAppender(message); };
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.0.
|
|
2
|
+
"version": "1.0.3",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"name": "@niceties/logger",
|
|
5
5
|
"author": "Konstantin Shutkin",
|
|
@@ -7,31 +7,31 @@
|
|
|
7
7
|
"type": "module",
|
|
8
8
|
"exports": {
|
|
9
9
|
".": {
|
|
10
|
-
"require": "./dist/index.
|
|
10
|
+
"require": "./dist/index.cjs",
|
|
11
11
|
"default": "./dist/index.mjs"
|
|
12
12
|
},
|
|
13
13
|
"./default-formatting": {
|
|
14
|
-
"require": "./dist/default-formatting.
|
|
14
|
+
"require": "./dist/default-formatting.cjs",
|
|
15
15
|
"default": "./dist/default-formatting.mjs"
|
|
16
16
|
},
|
|
17
17
|
"./core": {
|
|
18
|
-
"require": "./dist/core.
|
|
18
|
+
"require": "./dist/core.cjs",
|
|
19
19
|
"default": "./dist/core.mjs"
|
|
20
20
|
},
|
|
21
21
|
"./simple": {
|
|
22
|
-
"require": "./dist/simple.
|
|
22
|
+
"require": "./dist/simple.cjs",
|
|
23
23
|
"default": "./dist/simple.mjs"
|
|
24
24
|
},
|
|
25
25
|
"./console-appender": {
|
|
26
|
-
"require": "./dist/console-appender.
|
|
26
|
+
"require": "./dist/console-appender.cjs",
|
|
27
27
|
"default": "./dist/console-appender.mjs"
|
|
28
28
|
},
|
|
29
29
|
"./format-utils": {
|
|
30
|
-
"require": "./dist/format-utils.
|
|
30
|
+
"require": "./dist/format-utils.cjs",
|
|
31
31
|
"default": "./dist/format-utils.mjs"
|
|
32
32
|
}
|
|
33
33
|
},
|
|
34
|
-
"main": "./dist/index.
|
|
34
|
+
"main": "./dist/index.cjs",
|
|
35
35
|
"module": "./dist/index.mjs",
|
|
36
36
|
"typings": "./dist/index.d.ts",
|
|
37
37
|
"unpkg": "./dist/simple.umd.js",
|
|
@@ -51,6 +51,10 @@
|
|
|
51
51
|
"type": "git",
|
|
52
52
|
"url": "git+https://github.com/kshutkin/niceties.git"
|
|
53
53
|
},
|
|
54
|
+
"bugs": {
|
|
55
|
+
"url": "https://github.com/kshutkin/niceties/issues"
|
|
56
|
+
},
|
|
57
|
+
"homepage": "https://github.com/kshutkin/niceties/blob/main/logger/README.md",
|
|
54
58
|
"scripts": {
|
|
55
59
|
"build": "rimraf ./dist && rollup -c",
|
|
56
60
|
"dev": "rimraf ./dist && rollup -c -w",
|