@sjts/lib-log 31.1.2 → 31.1.4

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/Logger.d.ts CHANGED
@@ -7,17 +7,17 @@ export declare class Logger {
7
7
  static magenta: string;
8
8
  static cyan: string;
9
9
  static reset: string;
10
- static bold: string;
11
- static dim: string;
12
- static italic: string;
13
- static underline: string;
14
- static strikethrough: string;
15
10
  static bgRed: string;
16
11
  static bgGreen: string;
17
12
  static bgYellow: string;
18
13
  static bgBlue: string;
19
14
  static bgMagenta: string;
20
15
  static bgCyan: string;
16
+ static bold: string;
17
+ static dim: string;
18
+ static italic: string;
19
+ static underline: string;
20
+ static strikethrough: string;
21
21
  static lastLogTimestamp: number;
22
22
  private static _indent;
23
23
  private level;
@@ -1 +1 @@
1
- {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAI9C,qBAAa,MAAM;IAClB,OAAc,GAAG,SAAa;IAC9B,OAAc,KAAK,SAAa;IAChC,OAAc,MAAM,SAAa;IACjC,OAAc,IAAI,SAAa;IAC/B,OAAc,OAAO,SAAa;IAClC,OAAc,IAAI,SAAa;IAC/B,OAAc,KAAK,SAAY;IAE/B,OAAc,IAAI,SAAY;IAC9B,OAAc,GAAG,SAAY;IAC7B,OAAc,MAAM,SAAY;IAChC,OAAc,SAAS,SAAY;IACnC,OAAc,aAAa,SAAY;IAEvC,OAAc,KAAK,SAAa;IAChC,OAAc,OAAO,SAAa;IAClC,OAAc,QAAQ,SAAa;IACnC,OAAc,MAAM,SAAa;IACjC,OAAc,SAAS,SAAa;IACpC,OAAc,MAAM,SAAa;IAEjC,OAAc,gBAAgB,EAAE,MAAM,CAAI;IAC1C,OAAO,CAAC,MAAM,CAAC,OAAO,CAAI;IAC1B,OAAO,CAAC,KAAK,CAAkD;IAC/D,OAAO,CAAC,UAAU,CAAe;IAC1B,CAAC,EAAE,GAAG,CAAU;IAEvB,IAAI,OAAO,CAAC,CAAC,EAAE,GAAG,EAEjB;IACD,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,GAAG,EAExB;IAED,IAAI,QAAQ,CAAC,CAAC,EAAE,WAAW,EAAE,EAE5B;IACD,MAAM,KAAK,QAAQ,CAAC,CAAC,EAAE,WAAW,EAAE,EAEnC;IAED,MAAM,CAAC,MAAM;IAGb,MAAM,CAAC,OAAO;IAId,QAAQ;IAGR,MAAM,CAAC,QAAQ;IAIf,SAAS;IAGT,MAAM,CAAC,SAAS;IAIhB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE;IAG5B,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE;IAI5B,KAAK,GAAI,SAAS,MAAM,EAAE,OAAO,GAAG,UASzC;WACY,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;IAYxC,KAAK,GAAI,SAAS,MAAM,EAAE,OAAO,GAAG,UAAgC;WAC7D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;IAQxC,IAAI,GAAI,SAAS,MAAM,EAAE,OAAO,GAAG,UAA+B;WAC3D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;IAOvC,MAAM,GAAI,KAAK,MAAM,EAAE,SAAS,MAAM,EAAE,OAAO,GAAG,UAA+B;WAC1E,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;IAStD,IAAI,GAAI,SAAS,MAAM,EAAE,OAAO,GAAG,UAA+B;WAC3D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;IASvC,KAAK,GAAI,SAAS,MAAM,EAAE,OAAO,GAAG,UAAgC;WAC7D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;IASxC,KAAK,GAAI,SAAS,MAAM,EAAE,OAAO,GAAG,UAAgC;WAC7D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;IASxC,IAAI,GAAI,SAAS,MAAM,EAAE,OAAO,GAAG,UAA+B;WAC3D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG;IAY9C,OAAc,QAAQ,EAAE,MAAM,CAAe;IAK7C,OAAO,CAAC,MAAM,CAAC,aAAa,CAEtB;IACN,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM;IAGjC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM;IAShC,MAAM,CAAC,YAAY;IAWnB,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM;CAKpC"}
1
+ {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"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"}
package/dist/Logger.js CHANGED
@@ -1,25 +1,43 @@
1
1
  import { DateTime } from 'luxon';
2
2
  import { LoggerLevel } from './LoggerLevel.js';
3
3
  const { DEBUG, INFO, SYSTEM, WARN, ERROR, THROW, KILL } = LoggerLevel;
4
+ const red = '\x1b[31m';
5
+ const green = '\x1b[32m';
6
+ const yellow = '\x1b[33m';
7
+ const blue = '\x1b[34m';
8
+ const magenta = '\x1b[35m';
9
+ const cyan = '\x1b[36m';
10
+ const reset = '\x1b[0m';
11
+ const bold = '\x1b[1m';
12
+ const dim = '\x1b[2m';
13
+ const italic = '\x1b[3m';
14
+ const underline = '\x1b[4m';
15
+ const strikethrough = '\x1b[9m';
16
+ const bgRed = '\x1b[41m';
17
+ const bgGreen = '\x1b[42m';
18
+ const bgYellow = '\x1b[43m';
19
+ const bgBlue = '\x1b[44m';
20
+ const bgMagenta = '\x1b[45m';
21
+ const bgCyan = '\x1b[46m';
4
22
  export class Logger {
5
- static red = '\x1b[31m';
6
- static green = '\x1b[32m';
7
- static yellow = '\x1b[33m';
8
- static blue = '\x1b[34m';
9
- static magenta = '\x1b[35m';
10
- static cyan = '\x1b[36m';
11
- static reset = '\x1b[0m';
12
- static bold = '\x1b[1m';
13
- static dim = '\x1b[2m';
14
- static italic = '\x1b[3m';
15
- static underline = '\x1b[4m';
16
- static strikethrough = '\x1b[9m';
17
- static bgRed = '\x1b[41m';
18
- static bgGreen = '\x1b[42m';
19
- static bgYellow = '\x1b[43m';
20
- static bgBlue = '\x1b[44m';
21
- static bgMagenta = '\x1b[45m';
22
- static bgCyan = '\x1b[46m';
23
+ static red = red;
24
+ static green = green;
25
+ static yellow = yellow;
26
+ static blue = blue;
27
+ static magenta = magenta;
28
+ static cyan = cyan;
29
+ static reset = reset;
30
+ static bgRed = bgRed;
31
+ static bgGreen = bgGreen;
32
+ static bgYellow = bgYellow;
33
+ static bgBlue = bgBlue;
34
+ static bgMagenta = bgMagenta;
35
+ static bgCyan = bgCyan;
36
+ static bold = bold;
37
+ static dim = dim;
38
+ static italic = italic;
39
+ static underline = underline;
40
+ static strikethrough = strikethrough;
23
41
  static lastLogTimestamp = 0;
24
42
  static _indent = 0;
25
43
  level = [INFO, WARN, ERROR, THROW, KILL];
@@ -61,19 +79,9 @@ export class Logger {
61
79
  static setSystemTags(tags) {
62
80
  this.instance.setSystemTags(tags);
63
81
  }
64
- shout = (message, data) => Logger.info(Logger.green +
65
- Logger.bold +
66
- '--------------\n' +
67
- message +
68
- '\n--------------' +
69
- Logger.reset, data);
82
+ shout = (message, data) => Logger.info(green + bold + '--------------\n' + message + '\n--------------' + reset, data);
70
83
  static shout(message, data) {
71
- this.info(Logger.green +
72
- Logger.bold +
73
- '--------------\n' +
74
- message +
75
- '\n--------------' +
76
- Logger.reset, data);
84
+ this.info(green + bold + '--------------\n' + message + '\n--------------' + reset, data);
77
85
  }
78
86
  debug = (message, data) => Logger.debug(message, data);
79
87
  static debug(message, data) {
@@ -94,46 +102,41 @@ export class Logger {
94
102
  system = (tag, message, data) => Logger.info(message, data);
95
103
  static system(tag, message, data) {
96
104
  Logger.initProfiles();
97
- const msg = Logger.indentMessage(message);
98
- const formattedMessage = `${Logger.magenta}${msg}${Logger.reset}`;
105
+ const msg = Logger.indentMessage(`${magenta}${italic}${tag}${reset}: ${message}${reset}`);
99
106
  if (this.instance.level.includes(SYSTEM) && this.instance.systemTags.includes(tag))
100
- this.instance.c.log(...(data ? [formattedMessage, data] : [formattedMessage]));
107
+ this.instance.c.log(...(data ? [msg, data] : [msg]));
101
108
  this.lastLogTimestamp = DateTime.now().toMillis();
102
109
  }
103
110
  warn = (message, data) => Logger.warn(message, data);
104
111
  static warn(message, data) {
105
112
  Logger.initProfiles();
106
- const msg = Logger.indentMessage(message);
107
- const formattedMessage = `${Logger.yellow}WARN: ${msg}${Logger.reset}`;
113
+ const msg = Logger.indentMessage(`${yellow}WARN: ${message}${reset}`);
108
114
  if (this.instance.level.includes(WARN))
109
- this.instance.c.warn(...(data ? [formattedMessage, data] : [formattedMessage]));
115
+ this.instance.c.warn(...(data ? [msg, data] : [msg]));
110
116
  this.lastLogTimestamp = DateTime.now().toMillis();
111
117
  }
112
118
  error = (message, data) => Logger.error(message, data);
113
119
  static error(message, data) {
114
120
  Logger.initProfiles();
115
- const msg = Logger.indentMessage(message);
116
- const formattedMessage = `${Logger.red}ERROR: ${msg}${Logger.reset}`;
121
+ const msg = Logger.indentMessage(`${red}ERROR: ${message}${reset}`);
117
122
  if (this.instance.level.includes(ERROR))
118
- this.instance.c.error(...(data ? [formattedMessage, data] : [formattedMessage]));
123
+ this.instance.c.error(...(data ? [msg, data] : [msg]));
119
124
  this.lastLogTimestamp = DateTime.now().toMillis();
120
125
  }
121
126
  throw = (message, data) => Logger.throw(message, data);
122
127
  static throw(message, data) {
123
128
  Logger.initProfiles();
124
- const msg = Logger.indentMessage(message);
125
- const formattedMessage = `${Logger.red}ERROR: ${msg}${Logger.reset}`;
129
+ const msg = Logger.indentMessage(`${red}ERROR: ${message}${reset}`);
126
130
  if (this.instance.level.includes(THROW))
127
- this.instance.c.error(...(data ? [formattedMessage, data] : [formattedMessage]));
131
+ this.instance.c.error(...(data ? [msg, data] : [msg]));
128
132
  throw new Error(message.toString());
129
133
  }
130
134
  kill = (message, data) => Logger.kill(message, data);
131
135
  static kill(message, data) {
132
136
  Logger.initProfiles();
133
- const msg = Logger.indentMessage(message);
134
- const formattedMessage = `${Logger.red}ERROR: ${msg}${Logger.reset}`;
137
+ const msg = Logger.indentMessage(`${red}ERROR: ${message}${reset}`);
135
138
  if (this.instance.level.includes(KILL))
136
- this.instance.c.error(...(data ? [formattedMessage, data] : [formattedMessage]));
139
+ this.instance.c.error(...(data ? [msg, data] : [msg]));
137
140
  this.lastLogTimestamp = DateTime.now().toMillis();
138
141
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
139
142
  // @ts-ignore
@@ -148,15 +151,21 @@ export class Logger {
148
151
  Logger._openProfiles[key] = { key, start: DateTime.now().toMillis(), initiated: false };
149
152
  }
150
153
  static stopProfiling(key) {
151
- if (!Logger._openProfiles[key])
154
+ const p = Logger._openProfiles[key];
155
+ if (!p) {
156
+ this.instance.c.warn('Cannot STOP profiling. Key "' + key + '" not found');
152
157
  return;
158
+ }
153
159
  const endTime = DateTime.now().toMillis();
154
- const duration = endTime - Logger._openProfiles[key].start;
155
- if (Logger._openProfiles[key].initiated)
160
+ const duration = endTime - p.start;
161
+ const initiated = p.initiated;
162
+ if (initiated)
156
163
  Logger.outdent();
157
164
  delete Logger._openProfiles[key];
158
- const msg = `${Logger.blue}${Logger.italic}${key}${Logger.reset} - ${Logger.green}${duration}ms${Logger.reset}`;
159
- this.instance.c.log(Logger.indentMessage(msg));
165
+ const msg = initiated
166
+ ? Logger.indentMessage(`${green}${duration}ms${reset}`)
167
+ : Logger.indentMessage(`${blue}${italic}${key}${reset} - ${green}${duration}ms${reset}`);
168
+ this.info(msg);
160
169
  }
161
170
  static initProfiles() {
162
171
  Object.values(Logger._openProfiles)
@@ -164,14 +173,14 @@ export class Logger {
164
173
  .sort((a, b) => a.start - b.start)
165
174
  .forEach(profile => {
166
175
  profile.initiated = true;
167
- const msg = `${Logger.blue}${Logger.italic}${profile.key}${Logger.reset}`;
168
- this.instance.c.log(Logger.indentMessage(msg));
176
+ const msg = Logger.indentMessage(`${blue}${italic}${profile.key}${reset}`);
177
+ this.instance.c.log(msg);
169
178
  Logger.indent();
170
179
  });
171
180
  }
172
181
  static indentMessage(message) {
173
182
  return Logger._indent > 0
174
- ? `${Logger.dim}${Logger.blue}${'| '.repeat(Logger._indent)}${Logger.reset}${message}`
183
+ ? `${dim}${blue}${'| '.repeat(Logger._indent)}${reset}${message}`
175
184
  : message;
176
185
  }
177
186
  }
@@ -1,2 +1,2 @@
1
- export declare const test: () => number;
1
+ export declare const test: () => void;
2
2
  //# sourceMappingURL=Logger.test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Logger.test.d.ts","sourceRoot":"","sources":["../../src/_/Logger.test.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,IAAI,cAYhB,CAAA"}
1
+ {"version":3,"file":"Logger.test.d.ts","sourceRoot":"","sources":["../../src/_/Logger.test.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,IAAI,YAmBhB,CAAA"}
@@ -1,15 +1,22 @@
1
1
  import { Logger } from '../Logger';
2
2
  export const test = () => {
3
+ Logger.shout('Testing');
3
4
  Logger.startProfiling('Speed Test');
4
- Logger.info('ABC');
5
- Logger.startProfiling('Something');
5
+ Logger.startProfiling('Something1');
6
6
  Logger.info('DEF');
7
7
  Logger.debug('GHI');
8
- Logger.stopProfiling('Something');
8
+ Logger.startProfiling('Something2');
9
+ Logger.info('DEF');
10
+ Logger.debug('GHI');
11
+ Logger.startProfiling('Something3');
12
+ Logger.info('DEF');
13
+ Logger.debug('GHI');
14
+ Logger.stopProfiling('Something3');
15
+ Logger.stopProfiling('Something2');
16
+ Logger.stopProfiling('Something1');
9
17
  Logger.info('JKL');
10
18
  Logger.startProfiling('Something Else');
11
19
  Logger.stopProfiling('Something Else');
12
20
  Logger.stopProfiling('Speed Test');
13
- return 100;
14
21
  };
15
22
  test();
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sjts/lib-log",
3
3
  "description": "The Steve James Typescript Log package",
4
- "version": "31.1.2",
4
+ "version": "31.1.4",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",