@punks/backend-core 0.0.3 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -2,6 +2,15 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ exports.LogLevel = void 0;
6
+ (function (LogLevel) {
7
+ LogLevel[LogLevel["Debug"] = 0] = "Debug";
8
+ LogLevel[LogLevel["Info"] = 1] = "Info";
9
+ LogLevel[LogLevel["Warn"] = 2] = "Warn";
10
+ LogLevel[LogLevel["Error"] = 3] = "Error";
11
+ LogLevel[LogLevel["Fatal"] = 4] = "Fatal";
12
+ })(exports.LogLevel || (exports.LogLevel = {}));
13
+
5
14
  class DefaultLogger {
6
15
  constructor(loggerName) {
7
16
  this.loggerName = loggerName;
@@ -18,35 +27,83 @@ class DefaultLogger {
18
27
  error(message, meta) {
19
28
  console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
20
29
  }
30
+ fatal(message, meta) {
31
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
32
+ }
21
33
  exception(message, error, meta) {
22
34
  console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error, meta);
23
35
  }
24
36
  }
25
37
 
26
- const getLogger = (loggerName) => {
27
- return new DefaultLogger(loggerName);
28
- };
29
- const defaultLogger = getLogger();
30
- class Log {
31
- static getLogger(loggerName) {
32
- return getLogger(loggerName);
38
+ class InternalLogger {
39
+ constructor(enabled, level, provider) {
40
+ this.enabled = enabled;
41
+ this.level = level;
42
+ this.provider = provider;
43
+ }
44
+ debug(message, meta) {
45
+ if (this.enabled && this.level === exports.LogLevel.Debug) {
46
+ this.provider.debug(message, meta);
47
+ }
48
+ }
49
+ info(message, meta) {
50
+ if (this.enabled && this.level <= exports.LogLevel.Info) {
51
+ this.provider.info(message, meta);
52
+ }
53
+ }
54
+ warn(message, meta) {
55
+ if (this.enabled && this.level <= exports.LogLevel.Warn) {
56
+ this.provider.warn(message, meta);
57
+ }
33
58
  }
34
- static debug(message, meta) {
35
- defaultLogger.debug(message, meta);
59
+ error(message, meta) {
60
+ if (this.enabled && this.level <= exports.LogLevel.Error) {
61
+ this.provider.error(message, meta);
62
+ }
36
63
  }
37
- static info(message, meta) {
38
- defaultLogger.info(message, meta);
64
+ fatal(message, meta) {
65
+ if (this.enabled && this.level <= exports.LogLevel.Fatal) {
66
+ this.provider.fatal(message, meta);
67
+ }
39
68
  }
40
- static warn(message, meta) {
41
- defaultLogger.warn(message, meta);
69
+ exception(message, error, meta) {
70
+ if (this.enabled && this.level <= exports.LogLevel.Error) {
71
+ this.provider.exception(message, error, meta);
72
+ }
42
73
  }
43
- static error(message, meta) {
44
- defaultLogger.error(message, meta);
74
+ }
75
+ const getLogger = ({ enabled, level, loggerName, }) => {
76
+ return new InternalLogger(enabled, level, new DefaultLogger(loggerName));
77
+ };
78
+ class Log {
79
+ static setLevel(level) {
80
+ this.level = level;
81
+ this.enabled = true;
45
82
  }
46
- static exception(message, error, meta) {
47
- defaultLogger.exception(message, error, meta);
83
+ static enable() {
84
+ this.enabled = true;
85
+ }
86
+ static disable() {
87
+ this.enabled = false;
88
+ }
89
+ static getLogger(loggerName) {
90
+ return getLogger({
91
+ enabled: this.enabled,
92
+ level: this.level,
93
+ loggerName,
94
+ });
48
95
  }
49
96
  }
97
+ Log.enabled = true;
98
+ Log.level = exports.LogLevel.Debug;
99
+
100
+ const newUuid = () => {
101
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) {
102
+ var r = (Math.random() * 16) | 0, v = c == "x" ? r : (r & 0x3) | 0x8;
103
+ return v.toString(16);
104
+ });
105
+ };
50
106
 
51
107
  exports.Log = Log;
108
+ exports.newUuid = newUuid;
52
109
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/logging/concrete/defaultLogger.ts","../../src/logging/index.ts"],"sourcesContent":[null,null],"names":[],"mappings":";;;;MAEa,aAAa,CAAA;AACxB,IAAA,WAAA,CAA6B,UAAmB,EAAA;QAAnB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAS;KAAI;IAEpD,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,OAAO,CAAC,GAAG,CACT,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;QAC9B,OAAO,CAAC,IAAI,CACV,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;QAC9B,OAAO,CAAC,IAAI,CACV,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,OAAO,CAAC,KAAK,CACX,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;AACD,IAAA,SAAS,CAAC,OAAe,EAAE,KAAY,EAAE,IAAU,EAAA;QACjD,OAAO,CAAC,KAAK,CACX,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAA,CAAA,EAAI,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,KAAK,EACL,IAAI,CACL,CAAA;KACF;AACF;;ACjCD,MAAM,SAAS,GAAG,CAAC,UAAmB,KAAa;AACjD,IAAA,OAAO,IAAI,aAAa,CAAC,UAAU,CAAC,CAAA;AACtC,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,SAAS,EAAE,CAAA;MAEpB,GAAG,CAAA;IACd,OAAO,SAAS,CAAC,UAAkB,EAAA;AACjC,QAAA,OAAO,SAAS,CAAC,UAAU,CAAC,CAAA;KAC7B;AAED,IAAA,OAAO,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;AACtC,QAAA,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KACnC;AACD,IAAA,OAAO,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;AACrC,QAAA,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KAClC;AACD,IAAA,OAAO,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;AACrC,QAAA,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KAClC;AACD,IAAA,OAAO,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;AACtC,QAAA,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KACnC;AACD,IAAA,OAAO,SAAS,CAAC,OAAe,EAAE,KAAY,EAAE,IAAU,EAAA;QACxD,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;KAC9C;AACF;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/abstractions/logging.ts","../../src/logging/concrete/defaultLogger.ts","../../src/logging/service.ts","../../src/utils/uid.ts"],"sourcesContent":[null,null,null,null],"names":["LogLevel"],"mappings":"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"}
@@ -1,7 +1,23 @@
1
+ export declare enum LogLevel {
2
+ Debug = 0,
3
+ Info = 1,
4
+ Warn = 2,
5
+ Error = 3,
6
+ Fatal = 4
7
+ }
8
+ export interface ILoggerProvider {
9
+ debug(message: string, meta?: any): void;
10
+ info(message: string, meta?: any): void;
11
+ warn(message: string, meta?: any): void;
12
+ error(message: string, meta?: any): void;
13
+ fatal(message: string, meta?: any): void;
14
+ exception(message: string, error: Error, meta?: any): void;
15
+ }
1
16
  export interface ILogger {
2
17
  debug(message: string, meta?: any): void;
3
18
  info(message: string, meta?: any): void;
4
19
  warn(message: string, meta?: any): void;
5
20
  error(message: string, meta?: any): void;
21
+ fatal(message: string, meta?: any): void;
6
22
  exception(message: string, error: Error, meta?: any): void;
7
23
  }
@@ -1,2 +1,3 @@
1
1
  export * from "./abstractions";
2
- export { Log } from "./logging";
2
+ export * from "./logging";
3
+ export * from "./utils";
@@ -1,10 +1,11 @@
1
- import { ILogger } from "../../abstractions";
2
- export declare class DefaultLogger implements ILogger {
1
+ import { ILoggerProvider } from "../../abstractions";
2
+ export declare class DefaultLogger implements ILoggerProvider {
3
3
  private readonly loggerName?;
4
4
  constructor(loggerName?: string | undefined);
5
5
  debug(message: string, meta?: any): void;
6
6
  info(message: string, meta?: any): void;
7
7
  warn(message: string, meta?: any): void;
8
8
  error(message: string, meta?: any): void;
9
+ fatal(message: string, meta?: any): void;
9
10
  exception(message: string, error: Error, meta?: any): void;
10
11
  }
@@ -1,9 +1 @@
1
- import { ILogger } from "../abstractions";
2
- export declare class Log {
3
- static getLogger(loggerName: string): ILogger;
4
- static debug(message: string, meta?: any): void;
5
- static info(message: string, meta?: any): void;
6
- static warn(message: string, meta?: any): void;
7
- static error(message: string, meta?: any): void;
8
- static exception(message: string, error: Error, meta?: any): void;
9
- }
1
+ export { Log } from "./service";
@@ -0,0 +1,9 @@
1
+ import { ILogger, LogLevel } from "../abstractions";
2
+ export declare class Log {
3
+ private static enabled;
4
+ private static level;
5
+ static setLevel(level: LogLevel): void;
6
+ static enable(): void;
7
+ static disable(): void;
8
+ static getLogger(loggerName: string): ILogger;
9
+ }
@@ -0,0 +1 @@
1
+ export * from "./uid";
@@ -0,0 +1 @@
1
+ export declare const newUuid: () => string;
package/dist/esm/index.js CHANGED
@@ -1,3 +1,12 @@
1
+ var LogLevel;
2
+ (function (LogLevel) {
3
+ LogLevel[LogLevel["Debug"] = 0] = "Debug";
4
+ LogLevel[LogLevel["Info"] = 1] = "Info";
5
+ LogLevel[LogLevel["Warn"] = 2] = "Warn";
6
+ LogLevel[LogLevel["Error"] = 3] = "Error";
7
+ LogLevel[LogLevel["Fatal"] = 4] = "Fatal";
8
+ })(LogLevel || (LogLevel = {}));
9
+
1
10
  class DefaultLogger {
2
11
  constructor(loggerName) {
3
12
  this.loggerName = loggerName;
@@ -14,35 +23,82 @@ class DefaultLogger {
14
23
  error(message, meta) {
15
24
  console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
16
25
  }
26
+ fatal(message, meta) {
27
+ console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, meta);
28
+ }
17
29
  exception(message, error, meta) {
18
30
  console.error(`${this.loggerName ? `[${this.loggerName}] ` : ""}${message}`, error, meta);
19
31
  }
20
32
  }
21
33
 
22
- const getLogger = (loggerName) => {
23
- return new DefaultLogger(loggerName);
24
- };
25
- const defaultLogger = getLogger();
26
- class Log {
27
- static getLogger(loggerName) {
28
- return getLogger(loggerName);
34
+ class InternalLogger {
35
+ constructor(enabled, level, provider) {
36
+ this.enabled = enabled;
37
+ this.level = level;
38
+ this.provider = provider;
39
+ }
40
+ debug(message, meta) {
41
+ if (this.enabled && this.level === LogLevel.Debug) {
42
+ this.provider.debug(message, meta);
43
+ }
44
+ }
45
+ info(message, meta) {
46
+ if (this.enabled && this.level <= LogLevel.Info) {
47
+ this.provider.info(message, meta);
48
+ }
49
+ }
50
+ warn(message, meta) {
51
+ if (this.enabled && this.level <= LogLevel.Warn) {
52
+ this.provider.warn(message, meta);
53
+ }
29
54
  }
30
- static debug(message, meta) {
31
- defaultLogger.debug(message, meta);
55
+ error(message, meta) {
56
+ if (this.enabled && this.level <= LogLevel.Error) {
57
+ this.provider.error(message, meta);
58
+ }
32
59
  }
33
- static info(message, meta) {
34
- defaultLogger.info(message, meta);
60
+ fatal(message, meta) {
61
+ if (this.enabled && this.level <= LogLevel.Fatal) {
62
+ this.provider.fatal(message, meta);
63
+ }
35
64
  }
36
- static warn(message, meta) {
37
- defaultLogger.warn(message, meta);
65
+ exception(message, error, meta) {
66
+ if (this.enabled && this.level <= LogLevel.Error) {
67
+ this.provider.exception(message, error, meta);
68
+ }
38
69
  }
39
- static error(message, meta) {
40
- defaultLogger.error(message, meta);
70
+ }
71
+ const getLogger = ({ enabled, level, loggerName, }) => {
72
+ return new InternalLogger(enabled, level, new DefaultLogger(loggerName));
73
+ };
74
+ class Log {
75
+ static setLevel(level) {
76
+ this.level = level;
77
+ this.enabled = true;
41
78
  }
42
- static exception(message, error, meta) {
43
- defaultLogger.exception(message, error, meta);
79
+ static enable() {
80
+ this.enabled = true;
81
+ }
82
+ static disable() {
83
+ this.enabled = false;
84
+ }
85
+ static getLogger(loggerName) {
86
+ return getLogger({
87
+ enabled: this.enabled,
88
+ level: this.level,
89
+ loggerName,
90
+ });
44
91
  }
45
92
  }
93
+ Log.enabled = true;
94
+ Log.level = LogLevel.Debug;
95
+
96
+ const newUuid = () => {
97
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) {
98
+ var r = (Math.random() * 16) | 0, v = c == "x" ? r : (r & 0x3) | 0x8;
99
+ return v.toString(16);
100
+ });
101
+ };
46
102
 
47
- export { Log };
103
+ export { Log, LogLevel, newUuid };
48
104
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/logging/concrete/defaultLogger.ts","../../src/logging/index.ts"],"sourcesContent":[null,null],"names":[],"mappings":"MAEa,aAAa,CAAA;AACxB,IAAA,WAAA,CAA6B,UAAmB,EAAA;QAAnB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAS;KAAI;IAEpD,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,OAAO,CAAC,GAAG,CACT,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;QAC9B,OAAO,CAAC,IAAI,CACV,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;QAC9B,OAAO,CAAC,IAAI,CACV,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,OAAO,CAAC,KAAK,CACX,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;AACD,IAAA,SAAS,CAAC,OAAe,EAAE,KAAY,EAAE,IAAU,EAAA;QACjD,OAAO,CAAC,KAAK,CACX,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAA,CAAA,EAAI,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,KAAK,EACL,IAAI,CACL,CAAA;KACF;AACF;;ACjCD,MAAM,SAAS,GAAG,CAAC,UAAmB,KAAa;AACjD,IAAA,OAAO,IAAI,aAAa,CAAC,UAAU,CAAC,CAAA;AACtC,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,SAAS,EAAE,CAAA;MAEpB,GAAG,CAAA;IACd,OAAO,SAAS,CAAC,UAAkB,EAAA;AACjC,QAAA,OAAO,SAAS,CAAC,UAAU,CAAC,CAAA;KAC7B;AAED,IAAA,OAAO,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;AACtC,QAAA,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KACnC;AACD,IAAA,OAAO,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;AACrC,QAAA,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KAClC;AACD,IAAA,OAAO,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;AACrC,QAAA,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KAClC;AACD,IAAA,OAAO,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;AACtC,QAAA,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KACnC;AACD,IAAA,OAAO,SAAS,CAAC,OAAe,EAAE,KAAY,EAAE,IAAU,EAAA;QACxD,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;KAC9C;AACF;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/abstractions/logging.ts","../../src/logging/concrete/defaultLogger.ts","../../src/logging/service.ts","../../src/utils/uid.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"IAAY,SAMX;AAND,CAAA,UAAY,QAAQ,EAAA;AAClB,IAAA,QAAA,CAAA,QAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS,CAAA;AACT,IAAA,QAAA,CAAA,QAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACR,IAAA,QAAA,CAAA,QAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACR,IAAA,QAAA,CAAA,QAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS,CAAA;AACT,IAAA,QAAA,CAAA,QAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS,CAAA;AACX,CAAC,EANW,QAAQ,KAAR,QAAQ,GAMnB,EAAA,CAAA,CAAA;;MCJY,aAAa,CAAA;AACxB,IAAA,WAAA,CAA6B,UAAmB,EAAA;QAAnB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAS;KAAI;IAEpD,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,OAAO,CAAC,GAAG,CACT,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;QAC9B,OAAO,CAAC,IAAI,CACV,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;QAC9B,OAAO,CAAC,IAAI,CACV,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,OAAO,CAAC,KAAK,CACX,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;IACD,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,OAAO,CAAC,KAAK,CACX,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAI,CAAA,EAAA,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,IAAI,CACL,CAAA;KACF;AACD,IAAA,SAAS,CAAC,OAAe,EAAE,KAAY,EAAE,IAAU,EAAA;QACjD,OAAO,CAAC,KAAK,CACX,CAAG,EAAA,IAAI,CAAC,UAAU,GAAG,CAAA,CAAA,EAAI,IAAI,CAAC,UAAU,CAAA,EAAA,CAAI,GAAG,EAAE,CAAG,EAAA,OAAO,CAAE,CAAA,EAC7D,KAAK,EACL,IAAI,CACL,CAAA;KACF;AACF;;ACvCD,MAAM,cAAc,CAAA;AAClB,IAAA,WAAA,CACmB,OAAgB,EAChB,KAAe,EACf,QAAyB,EAAA;QAFzB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAS;QAChB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAU;QACf,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAiB;KACxC;IAEJ,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,EAAE;YACjD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AACnC,SAAA;KACF;IAED,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;QAC9B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE;YAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAClC,SAAA;KACF;IAED,IAAI,CAAC,OAAe,EAAE,IAAU,EAAA;QAC9B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE;YAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAClC,SAAA;KACF;IAED,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE;YAChD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AACnC,SAAA;KACF;IAED,KAAK,CAAC,OAAe,EAAE,IAAU,EAAA;QAC/B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE;YAChD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AACnC,SAAA;KACF;AAED,IAAA,SAAS,CAAC,OAAe,EAAE,KAAY,EAAE,IAAU,EAAA;QACjD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE;YAChD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;AAC9C,SAAA;KACF;AACF,CAAA;AAED,MAAM,SAAS,GAAG,CAAC,EACjB,OAAO,EACP,KAAK,EACL,UAAU,GAKX,KAAa;AACZ,IAAA,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;AAC1E,CAAC,CAAA;MAEY,GAAG,CAAA;IAId,OAAO,QAAQ,CAAC,KAAe,EAAA;AAC7B,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;AAClB,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;KACpB;AAED,IAAA,OAAO,MAAM,GAAA;AACX,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;KACpB;AAED,IAAA,OAAO,OAAO,GAAA;AACZ,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;KACrB;IAED,OAAO,SAAS,CAAC,UAAkB,EAAA;AACjC,QAAA,OAAO,SAAS,CAAC;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU;AACX,SAAA,CAAC,CAAA;KACH;;AAtBc,GAAO,CAAA,OAAA,GAAG,IAAI,CAAA;AACd,GAAA,CAAA,KAAK,GAAG,QAAQ,CAAC,KAAK;;AC7DhC,MAAM,OAAO,GAAG,MAAK;AAC1B,IAAA,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,EAAA;AACxE,QAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,EAC9B,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG,CAAA;AACpC,QAAA,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;AACvB,KAAC,CAAC,CAAA;AACJ;;;;"}
@@ -1,7 +1,23 @@
1
+ export declare enum LogLevel {
2
+ Debug = 0,
3
+ Info = 1,
4
+ Warn = 2,
5
+ Error = 3,
6
+ Fatal = 4
7
+ }
8
+ export interface ILoggerProvider {
9
+ debug(message: string, meta?: any): void;
10
+ info(message: string, meta?: any): void;
11
+ warn(message: string, meta?: any): void;
12
+ error(message: string, meta?: any): void;
13
+ fatal(message: string, meta?: any): void;
14
+ exception(message: string, error: Error, meta?: any): void;
15
+ }
1
16
  export interface ILogger {
2
17
  debug(message: string, meta?: any): void;
3
18
  info(message: string, meta?: any): void;
4
19
  warn(message: string, meta?: any): void;
5
20
  error(message: string, meta?: any): void;
21
+ fatal(message: string, meta?: any): void;
6
22
  exception(message: string, error: Error, meta?: any): void;
7
23
  }
@@ -1,2 +1,3 @@
1
1
  export * from "./abstractions";
2
- export { Log } from "./logging";
2
+ export * from "./logging";
3
+ export * from "./utils";
@@ -1,10 +1,11 @@
1
- import { ILogger } from "../../abstractions";
2
- export declare class DefaultLogger implements ILogger {
1
+ import { ILoggerProvider } from "../../abstractions";
2
+ export declare class DefaultLogger implements ILoggerProvider {
3
3
  private readonly loggerName?;
4
4
  constructor(loggerName?: string | undefined);
5
5
  debug(message: string, meta?: any): void;
6
6
  info(message: string, meta?: any): void;
7
7
  warn(message: string, meta?: any): void;
8
8
  error(message: string, meta?: any): void;
9
+ fatal(message: string, meta?: any): void;
9
10
  exception(message: string, error: Error, meta?: any): void;
10
11
  }
@@ -1,9 +1 @@
1
- import { ILogger } from "../abstractions";
2
- export declare class Log {
3
- static getLogger(loggerName: string): ILogger;
4
- static debug(message: string, meta?: any): void;
5
- static info(message: string, meta?: any): void;
6
- static warn(message: string, meta?: any): void;
7
- static error(message: string, meta?: any): void;
8
- static exception(message: string, error: Error, meta?: any): void;
9
- }
1
+ export { Log } from "./service";
@@ -0,0 +1,9 @@
1
+ import { ILogger, LogLevel } from "../abstractions";
2
+ export declare class Log {
3
+ private static enabled;
4
+ private static level;
5
+ static setLevel(level: LogLevel): void;
6
+ static enable(): void;
7
+ static disable(): void;
8
+ static getLogger(loggerName: string): ILogger;
9
+ }
@@ -0,0 +1 @@
1
+ export * from "./uid";
@@ -0,0 +1 @@
1
+ export declare const newUuid: () => string;
package/dist/index.d.ts CHANGED
@@ -6,21 +6,39 @@ interface IServiceLocator {
6
6
  resolve<T>(name: string, options?: IResolveServiceOptions): T;
7
7
  }
8
8
 
9
+ declare enum LogLevel {
10
+ Debug = 0,
11
+ Info = 1,
12
+ Warn = 2,
13
+ Error = 3,
14
+ Fatal = 4
15
+ }
16
+ interface ILoggerProvider {
17
+ debug(message: string, meta?: any): void;
18
+ info(message: string, meta?: any): void;
19
+ warn(message: string, meta?: any): void;
20
+ error(message: string, meta?: any): void;
21
+ fatal(message: string, meta?: any): void;
22
+ exception(message: string, error: Error, meta?: any): void;
23
+ }
9
24
  interface ILogger {
10
25
  debug(message: string, meta?: any): void;
11
26
  info(message: string, meta?: any): void;
12
27
  warn(message: string, meta?: any): void;
13
28
  error(message: string, meta?: any): void;
29
+ fatal(message: string, meta?: any): void;
14
30
  exception(message: string, error: Error, meta?: any): void;
15
31
  }
16
32
 
17
33
  declare class Log {
34
+ private static enabled;
35
+ private static level;
36
+ static setLevel(level: LogLevel): void;
37
+ static enable(): void;
38
+ static disable(): void;
18
39
  static getLogger(loggerName: string): ILogger;
19
- static debug(message: string, meta?: any): void;
20
- static info(message: string, meta?: any): void;
21
- static warn(message: string, meta?: any): void;
22
- static error(message: string, meta?: any): void;
23
- static exception(message: string, error: Error, meta?: any): void;
24
40
  }
25
41
 
26
- export { ILogger, IResolveServiceOptions, IServiceLocator, Log };
42
+ declare const newUuid: () => string;
43
+
44
+ export { ILogger, ILoggerProvider, IResolveServiceOptions, IServiceLocator, Log, LogLevel, newUuid };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@punks/backend-core",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "description": "WebPunks Backend Core",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
package/readme.md ADDED
@@ -0,0 +1,3 @@
1
+ # Punks backend core package
2
+
3
+ This library contains the core functionality of the Punks backend.