ng2-logger 13.0.26 → 13.1.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 (107) hide show
  1. package/README.md +206 -206
  2. package/app/index.d.ts +4 -4
  3. package/app/index.js +19 -19
  4. package/app/index.js.map +1 -1
  5. package/app/ng2-logger.component.d.ts +5 -5
  6. package/app/ng2-logger.component.js +33 -33
  7. package/app/ng2-logger.component.js.map +1 -1
  8. package/app/ng2-logger.module.d.ts +2 -2
  9. package/app/ng2-logger.module.js +30 -30
  10. package/app/ng2-logger.module.js.map +1 -1
  11. package/browser/README.md +24 -24
  12. package/browser/esm2020/lib/backend-logging.mjs +92 -88
  13. package/browser/esm2020/lib/display.mjs +97 -93
  14. package/browser/esm2020/lib/helpers.mjs +1 -1
  15. package/browser/esm2020/lib/index.mjs +5 -5
  16. package/browser/esm2020/lib/level.mjs +31 -22
  17. package/browser/esm2020/lib/log.mjs +164 -165
  18. package/browser/esm2020/lib/logger.mjs +235 -157
  19. package/browser/esm2020/ng2-logger.mjs +4 -4
  20. package/browser/esm2020/public-api.mjs +1 -1
  21. package/browser/fesm2015/ng2-logger.mjs +512 -422
  22. package/browser/fesm2015/ng2-logger.mjs.map +1 -1
  23. package/browser/fesm2020/ng2-logger.mjs +512 -422
  24. package/browser/fesm2020/ng2-logger.mjs.map +1 -1
  25. package/browser/lib/backend-logging.d.ts +4 -4
  26. package/browser/lib/display.d.ts +4 -4
  27. package/browser/lib/helpers.d.ts +1 -1
  28. package/browser/lib/index.d.ts +5 -5
  29. package/browser/lib/level.d.ts +21 -15
  30. package/browser/lib/log.d.ts +25 -25
  31. package/browser/lib/logger.d.ts +81 -60
  32. package/browser/ng2-logger.d.ts +5 -5
  33. package/browser/public-api.d.ts +1 -1
  34. package/client/README.md +24 -24
  35. package/client/esm2020/lib/backend-logging.mjs +92 -88
  36. package/client/esm2020/lib/display.mjs +97 -93
  37. package/client/esm2020/lib/helpers.mjs +1 -1
  38. package/client/esm2020/lib/index.mjs +5 -5
  39. package/client/esm2020/lib/level.mjs +31 -22
  40. package/client/esm2020/lib/log.mjs +164 -165
  41. package/client/esm2020/lib/logger.mjs +235 -157
  42. package/client/esm2020/ng2-logger.mjs +4 -4
  43. package/client/esm2020/public-api.mjs +1 -1
  44. package/client/fesm2015/ng2-logger.mjs +512 -422
  45. package/client/fesm2015/ng2-logger.mjs.map +1 -1
  46. package/client/fesm2020/ng2-logger.mjs +512 -422
  47. package/client/fesm2020/ng2-logger.mjs.map +1 -1
  48. package/client/lib/backend-logging.d.ts +4 -4
  49. package/client/lib/display.d.ts +4 -4
  50. package/client/lib/helpers.d.ts +1 -1
  51. package/client/lib/index.d.ts +5 -5
  52. package/client/lib/level.d.ts +21 -15
  53. package/client/lib/log.d.ts +25 -25
  54. package/client/lib/logger.d.ts +81 -60
  55. package/client/ng2-logger.d.ts +5 -5
  56. package/client/public-api.d.ts +1 -1
  57. package/index.d.ts +1 -1
  58. package/index.js +5 -5
  59. package/index.js.map +1 -1
  60. package/lib/backend-logging.d.ts +4 -4
  61. package/lib/backend-logging.js +115 -108
  62. package/lib/backend-logging.js.map +1 -1
  63. package/lib/display.d.ts +4 -4
  64. package/lib/display.js +104 -104
  65. package/lib/display.js.map +1 -1
  66. package/lib/helpers.d.ts +1 -1
  67. package/lib/helpers.js +6 -6
  68. package/lib/helpers.js.map +1 -1
  69. package/lib/index.d.ts +5 -5
  70. package/lib/index.js +9 -9
  71. package/lib/index.js.map +1 -1
  72. package/lib/level.d.ts +21 -15
  73. package/lib/level.js +35 -26
  74. package/lib/level.js.map +1 -1
  75. package/lib/log.d.ts +25 -25
  76. package/lib/log.js +197 -199
  77. package/lib/log.js.map +1 -1
  78. package/lib/logger.d.ts +81 -60
  79. package/lib/logger.js +340 -232
  80. package/lib/logger.js.map +1 -1
  81. package/package.json +2 -2
  82. package/package.json_devDependencies.json +184 -184
  83. package/package.json_tnp.json5 +47 -47
  84. package/tmp-environment.json +13 -13
  85. package/websql/README.md +24 -24
  86. package/websql/esm2020/lib/backend-logging.mjs +92 -88
  87. package/websql/esm2020/lib/display.mjs +97 -93
  88. package/websql/esm2020/lib/helpers.mjs +1 -1
  89. package/websql/esm2020/lib/index.mjs +5 -5
  90. package/websql/esm2020/lib/level.mjs +31 -22
  91. package/websql/esm2020/lib/log.mjs +164 -165
  92. package/websql/esm2020/lib/logger.mjs +235 -157
  93. package/websql/esm2020/ng2-logger.mjs +4 -4
  94. package/websql/esm2020/public-api.mjs +1 -1
  95. package/websql/fesm2015/ng2-logger.mjs +512 -422
  96. package/websql/fesm2015/ng2-logger.mjs.map +1 -1
  97. package/websql/fesm2020/ng2-logger.mjs +512 -422
  98. package/websql/fesm2020/ng2-logger.mjs.map +1 -1
  99. package/websql/lib/backend-logging.d.ts +4 -4
  100. package/websql/lib/display.d.ts +4 -4
  101. package/websql/lib/helpers.d.ts +1 -1
  102. package/websql/lib/index.d.ts +5 -5
  103. package/websql/lib/level.d.ts +21 -15
  104. package/websql/lib/log.d.ts +25 -25
  105. package/websql/lib/logger.d.ts +81 -60
  106. package/websql/ng2-logger.d.ts +5 -5
  107. package/websql/public-api.d.ts +1 -1
package/lib/level.js CHANGED
@@ -1,26 +1,35 @@
1
- "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.LevelOrder = exports.LevelKey = exports.Level = void 0;
5
- var Level;
6
- (function (Level) {
7
- Level[Level["DATA"] = 0] = "DATA";
8
- Level[Level["INFO"] = 1] = "INFO";
9
- Level[Level["WARN"] = 2] = "WARN";
10
- Level[Level["ERROR"] = 3] = "ERROR";
11
- Level[Level["__NOTHING"] = 4] = "__NOTHING";
12
- })(Level = exports.Level || (exports.Level = {}));
13
- exports.LevelKey = (_a = {},
14
- _a[Level.DATA] = 'log',
15
- _a[Level.INFO] = 'info',
16
- _a[Level.WARN] = 'warn',
17
- _a[Level.ERROR] = 'error',
18
- _a[Level.__NOTHING] = '',
19
- _a);
20
- exports.LevelOrder = [
21
- exports.LevelKey[Level.DATA],
22
- exports.LevelKey[Level.INFO],
23
- exports.LevelKey[Level.WARN],
24
- exports.LevelKey[Level.ERROR],
25
- ];
26
- //# sourceMappingURL=/Users/dariusz/projects/npm/ng2-logger/tmp-bundle-release/bundle/project/ng2-logger/bundle-nocutsrc/lib/level.js.map
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.LevelOrder = exports.LevelKey = exports.Level = void 0;
5
+ var Level;
6
+ (function (Level) {
7
+ Level[Level["DATA"] = 0] = "DATA";
8
+ Level[Level["INFO"] = 1] = "INFO";
9
+ Level[Level["WARN"] = 2] = "WARN";
10
+ Level[Level["ERROR"] = 3] = "ERROR";
11
+ Level[Level["SUCCESS"] = 4] = "SUCCESS";
12
+ Level[Level["TASK_STARTED"] = 5] = "TASK_STARTED";
13
+ Level[Level["TASK_DONE"] = 6] = "TASK_DONE";
14
+ Level[Level["__NOTHING"] = 7] = "__NOTHING";
15
+ })(Level = exports.Level || (exports.Level = {}));
16
+ exports.LevelKey = (_a = {},
17
+ _a[Level.DATA] = 'log',
18
+ _a[Level.INFO] = 'info',
19
+ _a[Level.WARN] = 'warn',
20
+ _a[Level.ERROR] = 'error',
21
+ _a[Level.SUCCESS] = 'success',
22
+ _a[Level.TASK_STARTED] = 'taskstarted',
23
+ _a[Level.TASK_DONE] = 'taskdone',
24
+ _a[Level.__NOTHING] = '',
25
+ _a);
26
+ exports.LevelOrder = [
27
+ exports.LevelKey[Level.DATA],
28
+ exports.LevelKey[Level.TASK_STARTED],
29
+ exports.LevelKey[Level.TASK_DONE],
30
+ exports.LevelKey[Level.INFO],
31
+ exports.LevelKey[Level.SUCCESS],
32
+ exports.LevelKey[Level.WARN],
33
+ exports.LevelKey[Level.ERROR],
34
+ ];
35
+ //# sourceMappingURL=C:/Users/darek/projects/npm/ng2-logger/tmp-bundle-release/bundle/project/ng2-logger/bundle-nocutsrc/lib/level.js.map
package/lib/level.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"level.js","sourceRoot":"","sources":["../../tmp-source-bundle/lib/level.ts"],"names":[],"mappings":";;;;AAAA,IAAY,KAMX;AAND,WAAY,KAAK;IACb,iCAAI,CAAA;IACJ,iCAAI,CAAA;IACJ,iCAAI,CAAA;IACJ,mCAAK,CAAA;IACL,2CAAS,CAAA;AACb,CAAC,EANW,KAAK,GAAL,aAAK,KAAL,aAAK,QAMhB;AAEY,QAAA,QAAQ;IACnB,GAAC,KAAK,CAAC,IAAI,IAAI,KAAK;IACpB,GAAC,KAAK,CAAC,IAAI,IAAI,MAAM;IACrB,GAAC,KAAK,CAAC,IAAI,IAAI,MAAM;IACrB,GAAC,KAAK,CAAC,KAAK,IAAI,OAAO;IACvB,GAAC,KAAK,CAAC,SAAS,IAAI,EAAE;QACvB;AAEY,QAAA,UAAU,GAAG;IACxB,gBAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;IACpB,gBAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;IACpB,gBAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;IACpB,gBAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;CACtB,CAAC"}
1
+ {"version":3,"file":"level.js","sourceRoot":"","sources":["../../src/lib/level.ts"],"names":[],"mappings":";;;;AAAA,IAAY,KASX;AATD,WAAY,KAAK;IACb,iCAAI,CAAA;IACJ,iCAAI,CAAA;IACJ,iCAAI,CAAA;IACJ,mCAAK,CAAA;IACL,uCAAO,CAAA;IACP,iDAAY,CAAA;IACZ,2CAAS,CAAA;IACT,2CAAS,CAAA;AACb,CAAC,EATW,KAAK,GAAL,aAAK,KAAL,aAAK,QAShB;AAEY,QAAA,QAAQ;IACnB,GAAC,KAAK,CAAC,IAAI,IAAI,KAAK;IACpB,GAAC,KAAK,CAAC,IAAI,IAAI,MAAM;IACrB,GAAC,KAAK,CAAC,IAAI,IAAI,MAAM;IACrB,GAAC,KAAK,CAAC,KAAK,IAAI,OAAO;IACvB,GAAC,KAAK,CAAC,OAAO,IAAI,SAAS;IAC3B,GAAC,KAAK,CAAC,YAAY,IAAI,aAAa;IACpC,GAAC,KAAK,CAAC,SAAS,IAAI,UAAU;IAC9B,GAAC,KAAK,CAAC,SAAS,IAAI,EAAE;QACvB;AAEY,QAAA,UAAU,GAAG;IACxB,gBAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;IACpB,gBAAQ,CAAC,KAAK,CAAC,YAAY,CAAC;IAC5B,gBAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;IACzB,gBAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;IACpB,gBAAQ,CAAC,KAAK,CAAC,OAAO,CAAC;IACvB,gBAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;IACpB,gBAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;CACtB,CAAC"}
package/lib/log.d.ts CHANGED
@@ -1,25 +1,25 @@
1
- import { Logger } from './logger';
2
- import { Level } from './level';
3
- export declare class Log {
4
- private constructor();
5
- private static get instance();
6
- static Logger: (typeof Logger);
7
- static create(name: string, ...level: Level[]): Logger;
8
- private static readonly consolelogfn;
9
- static disableLogs(level?: Level): void;
10
- static enableLogs(): void;
11
- private _logOnly;
12
- private _logModules;
13
- private isDevelopmentMode;
14
- private modeIsSet;
15
- private fixedWidth;
16
- private instances;
17
- private levels;
18
- private modules;
19
- setProductionMode(): void;
20
- onlyModules(...modules: (string | RegExp)[]): void;
21
- onlyLevel(...level: Level[]): void;
22
- private create;
23
- private isMutedModule;
24
- private muteAllOtherModules;
25
- }
1
+ import { Logger } from './logger';
2
+ import { Level } from './level';
3
+ export declare class Log {
4
+ private constructor();
5
+ private static get instance();
6
+ static Logger: (typeof Logger);
7
+ static create(name: string, ...level: Level[]): Logger;
8
+ private static readonly consolelogfn;
9
+ static disableLogs(level?: Level): void;
10
+ static enableLogs(): void;
11
+ private _logOnly;
12
+ private _logModules;
13
+ private isDevelopmentMode;
14
+ private modeIsSet;
15
+ private fixedWidth;
16
+ private instances;
17
+ private levels;
18
+ private modules;
19
+ setProductionMode(): void;
20
+ onlyModules(...modules: (string | RegExp)[]): void;
21
+ onlyLevel(...level: Level[]): void;
22
+ private create;
23
+ private isMutedModule;
24
+ private muteAllOtherModules;
25
+ }
package/lib/log.js CHANGED
@@ -1,199 +1,197 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Log = void 0;
4
- var tslib_1 = require("tslib");
5
- var logger_1 = require("./logger");
6
- var level_1 = require("./level");
7
- var tnp_core_1 = require("tnp-core");
8
- //#endregion
9
- //#region @backend
10
- var randomcolor = require("randomcolor");
11
- var PROCESS_STDOUT_WRITE = 'process.stdout.write';
12
- var PROCESS_STDER_WRITE = 'process.stder.write';
13
- //#endregion
14
- var Log = /** @class */ (function () {
15
- //#region singleton
16
- function Log() {
17
- this._logOnly = false;
18
- this._logModules = false;
19
- this.isDevelopmentMode = true;
20
- this.modeIsSet = false;
21
- this.fixedWidth = 0;
22
- this.instances = {};
23
- this.levels = [];
24
- this.modules = [];
25
- }
26
- Object.defineProperty(Log, "instance", {
27
- // @ts-ignore
28
- get: function () {
29
- // @ts-ignore
30
- if (!Log['_instance']) {
31
- // @ts-ignore
32
- Log['_instance'] = new Log();
33
- }
34
- // @ts-ignore
35
- return Log['_instance'];
36
- },
37
- enumerable: false,
38
- configurable: true
39
- });
40
- Log.create = function (name) {
41
- var _a;
42
- var level = [];
43
- for (var _i = 1; _i < arguments.length; _i++) {
44
- level[_i - 1] = arguments[_i];
45
- }
46
- return (_a = Log.instance).create.apply(_a, (0, tslib_1.__spreadArray)([name], (0, tslib_1.__read)(level), false));
47
- };
48
- Log.disableLogs = function (level) {
49
- var _this = this;
50
- if (level === void 0) { level = level_1.Level.__NOTHING; }
51
- //#region @backend
52
- // if (Helpers.isNode && (level === Level.__NOTHING)) {
53
- // if (!this.consolelogfn[PROCESS_STDOUT_WRITE]) {
54
- // this.consolelogfn[PROCESS_STDOUT_WRITE] = process.stdout.write; // TOOD not working
55
- // }
56
- // process.stdout.write = (() => { }) as any;
57
- // }
58
- //#endregion
59
- level_1.LevelOrder.reverse().find(function (a) {
60
- // @ts-ignore
61
- if (!_this.consolelogfn[a]) {
62
- // @ts-ignore
63
- _this.consolelogfn[a] = console[a];
64
- }
65
- // @ts-ignore
66
- console[a] = function () { };
67
- if (a === level_1.LevelKey[level]) {
68
- return true;
69
- }
70
- return false;
71
- });
72
- };
73
- Log.enableLogs = function () {
74
- var _this = this;
75
- //#region @backend
76
- // if (Helpers.isNode) {
77
- // process.stdout.write = this.consolelogfn[PROCESS_STDOUT_WRITE];
78
- // }
79
- //#endregion
80
- level_1.LevelOrder.forEach(function (a) {
81
- // @ts-ignore
82
- console[a] = _this.consolelogfn[a];
83
- });
84
- };
85
- //#region public api
86
- Log.prototype.setProductionMode = function () {
87
- var _this = this;
88
- if (this.modeIsSet) {
89
- this.modeIsSet = false;
90
- throw '[ng2-logger] Production mode is already set';
91
- }
92
- else {
93
- this.modeIsSet = true;
94
- setTimeout(function () {
95
- if (_this.modeIsSet && console !== void 0 && console.clear !== void 0) {
96
- console.clear();
97
- console.log = function () { };
98
- console.error = function () { };
99
- console.warn = function () { };
100
- console.info = function () { };
101
- }
102
- });
103
- this.isDevelopmentMode = false;
104
- }
105
- };
106
- Log.prototype.onlyModules = function () {
107
- var modules = [];
108
- for (var _i = 0; _i < arguments.length; _i++) {
109
- modules[_i] = arguments[_i];
110
- }
111
- if (this._logModules) {
112
- throw '[ng2-logger] You should use funcion onlyModules only once';
113
- }
114
- if (!this._logModules) {
115
- this._logModules = true;
116
- }
117
- if (modules.length === 0)
118
- return;
119
- this.modules = modules;
120
- // console.log('only log this', Log.modules)
121
- this.muteAllOtherModules();
122
- };
123
- Log.prototype.onlyLevel = function () {
124
- var level = [];
125
- for (var _i = 0; _i < arguments.length; _i++) {
126
- level[_i] = arguments[_i];
127
- }
128
- if (this._logOnly) {
129
- throw '[ng2-logger] You should use funcion onlyLevel only once';
130
- }
131
- if (!this._logOnly) {
132
- this._logOnly = true;
133
- }
134
- this.levels = Array.isArray(level) ? level : [level];
135
- for (var logName in this.instances) {
136
- if (this.instances.hasOwnProperty(logName)) {
137
- var element = this.instances[logName];
138
- element['allowed'] = this.levels;
139
- }
140
- }
141
- };
142
- //#endregion
143
- Log.prototype.create = function (name) {
144
- var level = [];
145
- for (var _i = 1; _i < arguments.length; _i++) {
146
- level[_i - 1] = arguments[_i];
147
- }
148
- var i;
149
- if (Array.isArray(this.levels) && this.levels.length > 0) {
150
- level = this.levels;
151
- }
152
- if (this.instances[name] === void 0) {
153
- i = new (Log.Logger)(name, getRandomColor(), this.isDevelopmentMode, level, this.isMutedModule(name), this.levels.length > 0 ? this.fixedWidth : void 0);
154
- this.instances[name] = i;
155
- }
156
- else {
157
- i = this.instances[name];
158
- }
159
- return i;
160
- };
161
- Log.prototype.isMutedModule = function (moduleName) {
162
- if (this.modules.length == 0)
163
- return false;
164
- if (!tnp_core_1.Helpers.contain(this.modules, moduleName))
165
- return true;
166
- return false;
167
- };
168
- Log.prototype.muteAllOtherModules = function () {
169
- for (var moduleName in this.instances) {
170
- if (!tnp_core_1.Helpers.contain(this.modules, moduleName))
171
- this.instances[moduleName].mute();
172
- }
173
- };
174
- //#endregion
175
- Log.Logger = logger_1.Logger;
176
- Log.consolelogfn = {};
177
- return Log;
178
- }());
179
- exports.Log = Log;
180
- function getRandomColor() {
181
- //#region @backend
182
- if (tnp_core_1.Helpers.isNode) {
183
- return randomcolor({ luminosity: 'light', count: 10 });
184
- }
185
- //#endregion
186
- var letters = '012345'.split('');
187
- var color = '#';
188
- color += letters[Math.round(Math.random() * 5)];
189
- letters = '0123456789ABCDEF'.split('');
190
- for (var i = 0; i < 5; i++) {
191
- color += letters[Math.round(Math.random() * 15)];
192
- }
193
- if (color === void 0) {
194
- return getRandomColor();
195
- }
196
- ;
197
- return color;
198
- }
199
- //# sourceMappingURL=/Users/dariusz/projects/npm/ng2-logger/tmp-bundle-release/bundle/project/ng2-logger/bundle-nocutsrc/lib/log.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Log = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var logger_1 = require("./logger");
6
+ var level_1 = require("./level");
7
+ var tnp_core_1 = require("tnp-core");
8
+ //#endregion
9
+ //#region @backend
10
+ var randomcolor = require("randomcolor");
11
+ //#endregion
12
+ var Log = /** @class */ (function () {
13
+ //#region singleton
14
+ function Log() {
15
+ this._logOnly = false;
16
+ this._logModules = false;
17
+ this.isDevelopmentMode = true;
18
+ this.modeIsSet = false;
19
+ this.fixedWidth = 0;
20
+ this.instances = {};
21
+ this.levels = [];
22
+ this.modules = [];
23
+ }
24
+ Object.defineProperty(Log, "instance", {
25
+ // @ts-ignore
26
+ get: function () {
27
+ // @ts-ignore
28
+ if (!Log['_instance']) {
29
+ // @ts-ignore
30
+ Log['_instance'] = new Log();
31
+ }
32
+ // @ts-ignore
33
+ return Log['_instance'];
34
+ },
35
+ enumerable: false,
36
+ configurable: true
37
+ });
38
+ Log.create = function (name) {
39
+ var _a;
40
+ var level = [];
41
+ for (var _i = 1; _i < arguments.length; _i++) {
42
+ level[_i - 1] = arguments[_i];
43
+ }
44
+ return (_a = Log.instance).create.apply(_a, tslib_1.__spreadArray([name], tslib_1.__read(level), false));
45
+ };
46
+ Log.disableLogs = function (level) {
47
+ var _this = this;
48
+ if (level === void 0) { level = level_1.Level.__NOTHING; }
49
+ //#region @backend
50
+ // if (Helpers.isNode && (level === Level.__NOTHING)) {
51
+ // if (!this.consolelogfn[PROCESS_STDOUT_WRITE]) {
52
+ // this.consolelogfn[PROCESS_STDOUT_WRITE] = process.stdout.write; // TOOD not working
53
+ // }
54
+ // process.stdout.write = (() => { }) as any;
55
+ // }
56
+ //#endregion
57
+ level_1.LevelOrder.reverse().find(function (a) {
58
+ // @ts-ignore
59
+ if (!_this.consolelogfn[a]) {
60
+ // @ts-ignore
61
+ _this.consolelogfn[a] = console[a];
62
+ }
63
+ // @ts-ignore
64
+ console[a] = function () { };
65
+ if (a === level_1.LevelKey[level]) {
66
+ return true;
67
+ }
68
+ return false;
69
+ });
70
+ };
71
+ Log.enableLogs = function () {
72
+ var _this = this;
73
+ //#region @backend
74
+ // if (Helpers.isNode) {
75
+ // process.stdout.write = this.consolelogfn[PROCESS_STDOUT_WRITE];
76
+ // }
77
+ //#endregion
78
+ level_1.LevelOrder.forEach(function (a) {
79
+ // @ts-ignore
80
+ console[a] = _this.consolelogfn[a];
81
+ });
82
+ };
83
+ //#region public api
84
+ Log.prototype.setProductionMode = function () {
85
+ var _this = this;
86
+ if (this.modeIsSet) {
87
+ this.modeIsSet = false;
88
+ throw '[ng2-logger] Production mode is already set';
89
+ }
90
+ else {
91
+ this.modeIsSet = true;
92
+ setTimeout(function () {
93
+ if (_this.modeIsSet && console !== void 0 && console.clear !== void 0) {
94
+ console.clear();
95
+ console.log = function () { };
96
+ console.error = function () { };
97
+ console.warn = function () { };
98
+ console.info = function () { };
99
+ }
100
+ });
101
+ this.isDevelopmentMode = false;
102
+ }
103
+ };
104
+ Log.prototype.onlyModules = function () {
105
+ var modules = [];
106
+ for (var _i = 0; _i < arguments.length; _i++) {
107
+ modules[_i] = arguments[_i];
108
+ }
109
+ if (this._logModules) {
110
+ throw '[ng2-logger] You should use funcion onlyModules only once';
111
+ }
112
+ if (!this._logModules) {
113
+ this._logModules = true;
114
+ }
115
+ if (modules.length === 0)
116
+ return;
117
+ this.modules = modules;
118
+ // console.log('only log this', Log.modules)
119
+ this.muteAllOtherModules();
120
+ };
121
+ Log.prototype.onlyLevel = function () {
122
+ var level = [];
123
+ for (var _i = 0; _i < arguments.length; _i++) {
124
+ level[_i] = arguments[_i];
125
+ }
126
+ if (this._logOnly) {
127
+ throw '[ng2-logger] You should use funcion onlyLevel only once';
128
+ }
129
+ if (!this._logOnly) {
130
+ this._logOnly = true;
131
+ }
132
+ this.levels = Array.isArray(level) ? level : [level];
133
+ for (var logName in this.instances) {
134
+ if (this.instances.hasOwnProperty(logName)) {
135
+ var element = this.instances[logName];
136
+ element['allowed'] = this.levels;
137
+ }
138
+ }
139
+ };
140
+ //#endregion
141
+ Log.prototype.create = function (name) {
142
+ var level = [];
143
+ for (var _i = 1; _i < arguments.length; _i++) {
144
+ level[_i - 1] = arguments[_i];
145
+ }
146
+ var i;
147
+ if (Array.isArray(this.levels) && this.levels.length > 0) {
148
+ level = this.levels;
149
+ }
150
+ if (this.instances[name] === void 0) {
151
+ i = new (Log.Logger)(name, getRandomColor(), this.isDevelopmentMode, level, this.isMutedModule(name), this.levels.length > 0 ? this.fixedWidth : void 0);
152
+ this.instances[name] = i;
153
+ }
154
+ else {
155
+ i = this.instances[name];
156
+ }
157
+ return i;
158
+ };
159
+ Log.prototype.isMutedModule = function (moduleName) {
160
+ if (this.modules.length == 0)
161
+ return false;
162
+ if (!tnp_core_1.Helpers.contain(this.modules, moduleName))
163
+ return true;
164
+ return false;
165
+ };
166
+ Log.prototype.muteAllOtherModules = function () {
167
+ for (var moduleName in this.instances) {
168
+ if (!tnp_core_1.Helpers.contain(this.modules, moduleName))
169
+ this.instances[moduleName].mute();
170
+ }
171
+ };
172
+ //#endregion
173
+ Log.Logger = logger_1.Logger;
174
+ Log.consolelogfn = {};
175
+ return Log;
176
+ }());
177
+ exports.Log = Log;
178
+ function getRandomColor() {
179
+ //#region @backend
180
+ if (tnp_core_1.Helpers.isNode) {
181
+ return randomcolor({ luminosity: 'light', count: 10 });
182
+ }
183
+ //#endregion
184
+ var letters = '012345'.split('');
185
+ var color = '#';
186
+ color += letters[Math.round(Math.random() * 5)];
187
+ letters = '0123456789ABCDEF'.split('');
188
+ for (var i = 0; i < 5; i++) {
189
+ color += letters[Math.round(Math.random() * 15)];
190
+ }
191
+ if (color === void 0) {
192
+ return getRandomColor();
193
+ }
194
+ ;
195
+ return color;
196
+ }
197
+ //# sourceMappingURL=C:/Users/darek/projects/npm/ng2-logger/tmp-bundle-release/bundle/project/ng2-logger/bundle-nocutsrc/lib/log.js.map
package/lib/log.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"log.js","sourceRoot":"","sources":["../../tmp-source-bundle/lib/log.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/lib/log.ts"],"names":[],"mappings":"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"}