@foxford/logger 1.1.0 → 1.2.1

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.
Files changed (5) hide show
  1. package/browser.js +38 -24
  2. package/browser.mjs +38 -24
  3. package/node.js +35 -21
  4. package/node.mjs +35 -21
  5. package/package.json +8 -8
package/browser.js CHANGED
@@ -37,18 +37,18 @@ function generateHexByString(str) {
37
37
  const DEBUG_LC_KEY = "debug";
38
38
  const colorCache = {};
39
39
  const levelColors = {
40
- TRACE: "#6C757D",
41
- // Серый
42
- LOG: "#17A2B8",
43
- // Голубой
44
40
  DEBUG: "#17A2B8",
45
41
  // Голубой
42
+ ERROR: "#DC3545",
43
+ // Красный
46
44
  INFO: "#28A745",
47
45
  // Зеленый
48
- WARN: "#FFC107",
46
+ LOG: "#17A2B8",
47
+ // Голубой
48
+ TRACE: "#6C757D",
49
+ // Серый
50
+ WARN: "#FFC107"
49
51
  // Желтый
50
- ERROR: "#DC3545"
51
- // Красный
52
52
  };
53
53
  function stringToColorCode(str) {
54
54
  var _a;
@@ -106,9 +106,8 @@ function formatter(level, name, timestamp) {
106
106
  ];
107
107
  }
108
108
  const environment = {
109
- getDebugValue,
110
- setDebugValue,
111
109
  formatter,
110
+ getDebugValue,
112
111
  /**
113
112
  * Устанавливает обработчик изменения значения debug
114
113
  * @param {function} callback - Функция обратного вызова
@@ -124,13 +123,17 @@ const environment = {
124
123
  return () => {
125
124
  window.removeEventListener("storage", changeValue);
126
125
  };
127
- }
126
+ },
127
+ setDebugValue
128
128
  };
129
129
  function generateUUIDv4() {
130
130
  return "10000000-1000-4000-8000-100000000000".replace(
131
131
  /[018]/g,
132
- (char) => (parseInt(char, 10) ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> parseInt(char, 10) / 4).toString(
133
- 16
132
+ (char) => (
133
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
134
+ (parseInt(char, 10) ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> parseInt(char, 10) / 4).toString(
135
+ 16
136
+ )
134
137
  )
135
138
  );
136
139
  }
@@ -143,14 +146,8 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
143
146
  const name = parent ? fullName.slice(parent.getFullName().length + 1) : fullName;
144
147
  const hierarchicalLogger = {
145
148
  ...baseLogger,
146
- id: loggerId,
147
- parent: parent != null ? parent : null,
148
149
  children: /* @__PURE__ */ new Set(),
149
- name,
150
150
  debugEnabled: false,
151
- isDebugEnabled() {
152
- return this.debugEnabled;
153
- },
154
151
  getDebugPattern() {
155
152
  var _a;
156
153
  return (_a = environment.getDebugValue()) != null ? _a : null;
@@ -163,6 +160,22 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
163
160
  const parentFullName = this.parent.getFullName();
164
161
  return parentFullName ? `${parentFullName}:${this.name}` : this.name;
165
162
  },
163
+ getLogger(name2) {
164
+ for (const child of this.children) {
165
+ if (child.name === name2) {
166
+ return child;
167
+ }
168
+ }
169
+ const childLogger = createHierarchicalLogger(originalGetLogger, `${fullName}:${name2}`, this);
170
+ this.children.add(childLogger);
171
+ return childLogger;
172
+ },
173
+ id: loggerId,
174
+ isDebugEnabled() {
175
+ return this.debugEnabled;
176
+ },
177
+ name,
178
+ parent: parent != null ? parent : null,
166
179
  setDebug(enabled) {
167
180
  this.debugEnabled = enabled;
168
181
  const parentLevel = this.parent ? this.parent.getLevel() : void 0;
@@ -200,11 +213,6 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
200
213
  const optimizedPatterns = optimizePatterns(currentPatterns);
201
214
  environment.setDebugValue(optimizedPatterns.join(",") || null);
202
215
  },
203
- getLogger(name2) {
204
- const childLogger = createHierarchicalLogger(originalGetLogger, `${fullName}:${name2}`, this);
205
- this.children.add(childLogger);
206
- return childLogger;
207
- },
208
216
  setLevel(level) {
209
217
  baseLogger.setLevel(level, false);
210
218
  this.children.forEach((child) => child.setLevel(level, false));
@@ -294,8 +302,14 @@ function initializeDebugPatterns() {
294
302
  const hierarchicalPlugin = {
295
303
  apply(rootLogger) {
296
304
  const originalGetLogger = rootLogger.getLogger.bind(rootLogger);
305
+ const rootChildren = /* @__PURE__ */ new Map();
297
306
  rootLogger.getLogger = (name) => {
298
- return createHierarchicalLogger(originalGetLogger, name);
307
+ let logger = rootChildren.get(name);
308
+ if (!logger) {
309
+ logger = createHierarchicalLogger(originalGetLogger, name);
310
+ rootChildren.set(name, logger);
311
+ }
312
+ return logger;
299
313
  };
300
314
  environment.onDebugValueChange(() => {
301
315
  initializeDebugPatterns();
package/browser.mjs CHANGED
@@ -35,18 +35,18 @@ function generateHexByString(str) {
35
35
  const DEBUG_LC_KEY = "debug";
36
36
  const colorCache = {};
37
37
  const levelColors = {
38
- TRACE: "#6C757D",
39
- // Серый
40
- LOG: "#17A2B8",
41
- // Голубой
42
38
  DEBUG: "#17A2B8",
43
39
  // Голубой
40
+ ERROR: "#DC3545",
41
+ // Красный
44
42
  INFO: "#28A745",
45
43
  // Зеленый
46
- WARN: "#FFC107",
44
+ LOG: "#17A2B8",
45
+ // Голубой
46
+ TRACE: "#6C757D",
47
+ // Серый
48
+ WARN: "#FFC107"
47
49
  // Желтый
48
- ERROR: "#DC3545"
49
- // Красный
50
50
  };
51
51
  function stringToColorCode(str) {
52
52
  var _a;
@@ -104,9 +104,8 @@ function formatter(level, name, timestamp) {
104
104
  ];
105
105
  }
106
106
  const environment = {
107
- getDebugValue,
108
- setDebugValue,
109
107
  formatter,
108
+ getDebugValue,
110
109
  /**
111
110
  * Устанавливает обработчик изменения значения debug
112
111
  * @param {function} callback - Функция обратного вызова
@@ -122,13 +121,17 @@ const environment = {
122
121
  return () => {
123
122
  window.removeEventListener("storage", changeValue);
124
123
  };
125
- }
124
+ },
125
+ setDebugValue
126
126
  };
127
127
  function generateUUIDv4() {
128
128
  return "10000000-1000-4000-8000-100000000000".replace(
129
129
  /[018]/g,
130
- (char) => (parseInt(char, 10) ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> parseInt(char, 10) / 4).toString(
131
- 16
130
+ (char) => (
131
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
132
+ (parseInt(char, 10) ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> parseInt(char, 10) / 4).toString(
133
+ 16
134
+ )
132
135
  )
133
136
  );
134
137
  }
@@ -141,14 +144,8 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
141
144
  const name = parent ? fullName.slice(parent.getFullName().length + 1) : fullName;
142
145
  const hierarchicalLogger = {
143
146
  ...baseLogger,
144
- id: loggerId,
145
- parent: parent != null ? parent : null,
146
147
  children: /* @__PURE__ */ new Set(),
147
- name,
148
148
  debugEnabled: false,
149
- isDebugEnabled() {
150
- return this.debugEnabled;
151
- },
152
149
  getDebugPattern() {
153
150
  var _a;
154
151
  return (_a = environment.getDebugValue()) != null ? _a : null;
@@ -161,6 +158,22 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
161
158
  const parentFullName = this.parent.getFullName();
162
159
  return parentFullName ? `${parentFullName}:${this.name}` : this.name;
163
160
  },
161
+ getLogger(name2) {
162
+ for (const child of this.children) {
163
+ if (child.name === name2) {
164
+ return child;
165
+ }
166
+ }
167
+ const childLogger = createHierarchicalLogger(originalGetLogger, `${fullName}:${name2}`, this);
168
+ this.children.add(childLogger);
169
+ return childLogger;
170
+ },
171
+ id: loggerId,
172
+ isDebugEnabled() {
173
+ return this.debugEnabled;
174
+ },
175
+ name,
176
+ parent: parent != null ? parent : null,
164
177
  setDebug(enabled) {
165
178
  this.debugEnabled = enabled;
166
179
  const parentLevel = this.parent ? this.parent.getLevel() : void 0;
@@ -198,11 +211,6 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
198
211
  const optimizedPatterns = optimizePatterns(currentPatterns);
199
212
  environment.setDebugValue(optimizedPatterns.join(",") || null);
200
213
  },
201
- getLogger(name2) {
202
- const childLogger = createHierarchicalLogger(originalGetLogger, `${fullName}:${name2}`, this);
203
- this.children.add(childLogger);
204
- return childLogger;
205
- },
206
214
  setLevel(level) {
207
215
  baseLogger.setLevel(level, false);
208
216
  this.children.forEach((child) => child.setLevel(level, false));
@@ -292,8 +300,14 @@ function initializeDebugPatterns() {
292
300
  const hierarchicalPlugin = {
293
301
  apply(rootLogger) {
294
302
  const originalGetLogger = rootLogger.getLogger.bind(rootLogger);
303
+ const rootChildren = /* @__PURE__ */ new Map();
295
304
  rootLogger.getLogger = (name) => {
296
- return createHierarchicalLogger(originalGetLogger, name);
305
+ let logger = rootChildren.get(name);
306
+ if (!logger) {
307
+ logger = createHierarchicalLogger(originalGetLogger, name);
308
+ rootChildren.set(name, logger);
309
+ }
310
+ return logger;
297
311
  };
298
312
  environment.onDebugValueChange(() => {
299
313
  initializeDebugPatterns();
package/node.js CHANGED
@@ -37,12 +37,12 @@ function generateHexByString(str) {
37
37
  }
38
38
  const colorCache = {};
39
39
  const levelColors = {
40
- TRACE: chalk.gray,
41
- LOG: chalk.cyan,
42
40
  DEBUG: chalk.cyan,
41
+ ERROR: chalk.red,
43
42
  INFO: chalk.green,
44
- WARN: chalk.yellow,
45
- ERROR: chalk.red
43
+ LOG: chalk.cyan,
44
+ TRACE: chalk.gray,
45
+ WARN: chalk.yellow
46
46
  };
47
47
  const debugStorage = /* @__PURE__ */ new Set();
48
48
  function stringToColorCode(str) {
@@ -94,16 +94,19 @@ if (process.env.DEBUG) {
94
94
  setDebugValue(process.env.DEBUG);
95
95
  }
96
96
  const environment = {
97
- getDebugValue,
98
- setDebugValue,
99
97
  formatter,
100
- onDebugValueChange
98
+ getDebugValue,
99
+ onDebugValueChange,
100
+ setDebugValue
101
101
  };
102
102
  function generateUUIDv4() {
103
103
  return "10000000-1000-4000-8000-100000000000".replace(
104
104
  /[018]/g,
105
- (char) => (parseInt(char, 10) ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> parseInt(char, 10) / 4).toString(
106
- 16
105
+ (char) => (
106
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
107
+ (parseInt(char, 10) ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> parseInt(char, 10) / 4).toString(
108
+ 16
109
+ )
107
110
  )
108
111
  );
109
112
  }
@@ -116,14 +119,8 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
116
119
  const name = parent ? fullName.slice(parent.getFullName().length + 1) : fullName;
117
120
  const hierarchicalLogger = {
118
121
  ...baseLogger,
119
- id: loggerId,
120
- parent: parent ?? null,
121
122
  children: /* @__PURE__ */ new Set(),
122
- name,
123
123
  debugEnabled: false,
124
- isDebugEnabled() {
125
- return this.debugEnabled;
126
- },
127
124
  getDebugPattern() {
128
125
  return environment.getDebugValue() ?? null;
129
126
  },
@@ -135,6 +132,22 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
135
132
  const parentFullName = this.parent.getFullName();
136
133
  return parentFullName ? `${parentFullName}:${this.name}` : this.name;
137
134
  },
135
+ getLogger(name2) {
136
+ for (const child of this.children) {
137
+ if (child.name === name2) {
138
+ return child;
139
+ }
140
+ }
141
+ const childLogger = createHierarchicalLogger(originalGetLogger, `${fullName}:${name2}`, this);
142
+ this.children.add(childLogger);
143
+ return childLogger;
144
+ },
145
+ id: loggerId,
146
+ isDebugEnabled() {
147
+ return this.debugEnabled;
148
+ },
149
+ name,
150
+ parent: parent ?? null,
138
151
  setDebug(enabled) {
139
152
  this.debugEnabled = enabled;
140
153
  const parentLevel = this.parent ? this.parent.getLevel() : void 0;
@@ -172,11 +185,6 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
172
185
  const optimizedPatterns = optimizePatterns(currentPatterns);
173
186
  environment.setDebugValue(optimizedPatterns.join(",") || null);
174
187
  },
175
- getLogger(name2) {
176
- const childLogger = createHierarchicalLogger(originalGetLogger, `${fullName}:${name2}`, this);
177
- this.children.add(childLogger);
178
- return childLogger;
179
- },
180
188
  setLevel(level) {
181
189
  baseLogger.setLevel(level, false);
182
190
  this.children.forEach((child) => child.setLevel(level, false));
@@ -265,8 +273,14 @@ function initializeDebugPatterns() {
265
273
  const hierarchicalPlugin = {
266
274
  apply(rootLogger) {
267
275
  const originalGetLogger = rootLogger.getLogger.bind(rootLogger);
276
+ const rootChildren = /* @__PURE__ */ new Map();
268
277
  rootLogger.getLogger = (name) => {
269
- return createHierarchicalLogger(originalGetLogger, name);
278
+ let logger = rootChildren.get(name);
279
+ if (!logger) {
280
+ logger = createHierarchicalLogger(originalGetLogger, name);
281
+ rootChildren.set(name, logger);
282
+ }
283
+ return logger;
270
284
  };
271
285
  }
272
286
  };
package/node.mjs CHANGED
@@ -35,12 +35,12 @@ function generateHexByString(str) {
35
35
  }
36
36
  const colorCache = {};
37
37
  const levelColors = {
38
- TRACE: chalk.gray,
39
- LOG: chalk.cyan,
40
38
  DEBUG: chalk.cyan,
39
+ ERROR: chalk.red,
41
40
  INFO: chalk.green,
42
- WARN: chalk.yellow,
43
- ERROR: chalk.red
41
+ LOG: chalk.cyan,
42
+ TRACE: chalk.gray,
43
+ WARN: chalk.yellow
44
44
  };
45
45
  const debugStorage = /* @__PURE__ */ new Set();
46
46
  function stringToColorCode(str) {
@@ -92,16 +92,19 @@ if (process.env.DEBUG) {
92
92
  setDebugValue(process.env.DEBUG);
93
93
  }
94
94
  const environment = {
95
- getDebugValue,
96
- setDebugValue,
97
95
  formatter,
98
- onDebugValueChange
96
+ getDebugValue,
97
+ onDebugValueChange,
98
+ setDebugValue
99
99
  };
100
100
  function generateUUIDv4() {
101
101
  return "10000000-1000-4000-8000-100000000000".replace(
102
102
  /[018]/g,
103
- (char) => (parseInt(char, 10) ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> parseInt(char, 10) / 4).toString(
104
- 16
103
+ (char) => (
104
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
105
+ (parseInt(char, 10) ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> parseInt(char, 10) / 4).toString(
106
+ 16
107
+ )
105
108
  )
106
109
  );
107
110
  }
@@ -114,14 +117,8 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
114
117
  const name = parent ? fullName.slice(parent.getFullName().length + 1) : fullName;
115
118
  const hierarchicalLogger = {
116
119
  ...baseLogger,
117
- id: loggerId,
118
- parent: parent ?? null,
119
120
  children: /* @__PURE__ */ new Set(),
120
- name,
121
121
  debugEnabled: false,
122
- isDebugEnabled() {
123
- return this.debugEnabled;
124
- },
125
122
  getDebugPattern() {
126
123
  return environment.getDebugValue() ?? null;
127
124
  },
@@ -133,6 +130,22 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
133
130
  const parentFullName = this.parent.getFullName();
134
131
  return parentFullName ? `${parentFullName}:${this.name}` : this.name;
135
132
  },
133
+ getLogger(name2) {
134
+ for (const child of this.children) {
135
+ if (child.name === name2) {
136
+ return child;
137
+ }
138
+ }
139
+ const childLogger = createHierarchicalLogger(originalGetLogger, `${fullName}:${name2}`, this);
140
+ this.children.add(childLogger);
141
+ return childLogger;
142
+ },
143
+ id: loggerId,
144
+ isDebugEnabled() {
145
+ return this.debugEnabled;
146
+ },
147
+ name,
148
+ parent: parent ?? null,
136
149
  setDebug(enabled) {
137
150
  this.debugEnabled = enabled;
138
151
  const parentLevel = this.parent ? this.parent.getLevel() : void 0;
@@ -170,11 +183,6 @@ function createHierarchicalLogger(originalGetLogger, fullName, parent) {
170
183
  const optimizedPatterns = optimizePatterns(currentPatterns);
171
184
  environment.setDebugValue(optimizedPatterns.join(",") || null);
172
185
  },
173
- getLogger(name2) {
174
- const childLogger = createHierarchicalLogger(originalGetLogger, `${fullName}:${name2}`, this);
175
- this.children.add(childLogger);
176
- return childLogger;
177
- },
178
186
  setLevel(level) {
179
187
  baseLogger.setLevel(level, false);
180
188
  this.children.forEach((child) => child.setLevel(level, false));
@@ -263,8 +271,14 @@ function initializeDebugPatterns() {
263
271
  const hierarchicalPlugin = {
264
272
  apply(rootLogger) {
265
273
  const originalGetLogger = rootLogger.getLogger.bind(rootLogger);
274
+ const rootChildren = /* @__PURE__ */ new Map();
266
275
  rootLogger.getLogger = (name) => {
267
- return createHierarchicalLogger(originalGetLogger, name);
276
+ let logger = rootChildren.get(name);
277
+ if (!logger) {
278
+ logger = createHierarchicalLogger(originalGetLogger, name);
279
+ rootChildren.set(name, logger);
280
+ }
281
+ return logger;
268
282
  };
269
283
  }
270
284
  };
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "@foxford/logger",
3
- "version": "1.1.0",
3
+ "version": "1.2.1",
4
4
  "description": "Foxford logger",
5
5
  "keywords": [
6
6
  "foxford",
7
7
  "logger"
8
8
  ],
9
- "homepage": "https://github.com/foxford/stoege",
10
- "bugs": "https://github.com/foxford/stoege/issues",
9
+ "homepage": "https://github.com/foxford/frontend-platform",
10
+ "bugs": "https://github.com/foxford/frontend-platform/issues",
11
11
  "repository": {
12
12
  "type": "git",
13
- "url": "git+https://github.com/foxford/stoege.git"
13
+ "url": "git+https://github.com/foxford/frontend-platform.git"
14
14
  },
15
15
  "license": "MIT",
16
16
  "author": "Foxford Co",
@@ -18,7 +18,7 @@
18
18
  {
19
19
  "name": "Roman Olin",
20
20
  "email": "r.v.olin@foxford.ru",
21
- "team": "@frontend/core"
21
+ "team": "core-frontend"
22
22
  }
23
23
  ],
24
24
  "main": "./node.js",
@@ -42,6 +42,7 @@
42
42
  "chalk": "4.1.0",
43
43
  "loglevel": "1.9.2"
44
44
  },
45
+ "browser": "./browser.js",
45
46
  "files": [
46
47
  "index.d.ts",
47
48
  "browser.js",
@@ -49,9 +50,8 @@
49
50
  "node.js",
50
51
  "node.mjs"
51
52
  ],
52
- "browser": "./browser.js",
53
- "sideEffects": false,
54
53
  "peerDependencies": {},
55
- "sha": "bbab220f",
54
+ "sideEffects": false,
55
+ "sha": "d0aa793",
56
56
  "scripts": {}
57
57
  }